oota-llvm.git
14 years agoswitch liblto to use the new getNameWithPrefix() method instead of getMangledName.
Chris Lattner [Sat, 16 Jan 2010 18:12:14 +0000 (18:12 +0000)]
switch liblto to use the new getNameWithPrefix() method instead of getMangledName.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93643 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd an inefficient version of getNameWithPrefix that returns an std::string.
Chris Lattner [Sat, 16 Jan 2010 18:06:34 +0000 (18:06 +0000)]
add an inefficient version of getNameWithPrefix that returns an std::string.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93641 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRevive dead assert.
Benjamin Kramer [Sat, 16 Jan 2010 16:14:55 +0000 (16:14 +0000)]
Revive dead assert.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93638 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoProvide magic define on mingw to not generate inline variants of ctyper functions.
Anton Korobeynikov [Sat, 16 Jan 2010 14:06:58 +0000 (14:06 +0000)]
Provide magic define on mingw to not generate inline variants of ctyper functions.
Otherwise we'll end with random cyclic deps between libraries due to this.
Proposed by Gianluigi Tiesi!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93635 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix PR6047
Tobias Grosser [Sat, 16 Jan 2010 13:38:07 +0000 (13:38 +0000)]
Fix PR6047

Nodes that had children outside of the post dominator tree (infinite loops)
where removed from the post dominator tree. This seems to be wrong. Leave them
in the tree.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93633 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCreate Generic DOTGraphTraits Printer/Viewer
Tobias Grosser [Sat, 16 Jan 2010 10:56:41 +0000 (10:56 +0000)]
Create Generic DOTGraphTraits Printer/Viewer

Move the DOTGraphTraits dotty printer/viewer templates, that were developed for
the dominance tree into their own header file. This will allow reuse in future
passes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93632 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoNo need to use WeakVH here.
Devang Patel [Sat, 16 Jan 2010 06:17:40 +0000 (06:17 +0000)]
No need to use WeakVH here.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93631 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoReplace DebugLocTuple with DILocation.
Devang Patel [Sat, 16 Jan 2010 06:09:35 +0000 (06:09 +0000)]
Replace DebugLocTuple with DILocation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93630 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofix build failure.
Chris Lattner [Sat, 16 Jan 2010 03:38:27 +0000 (03:38 +0000)]
fix build failure.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93628 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoremove a couple of actively incorrect uses of getMangledName.
Chris Lattner [Sat, 16 Jan 2010 02:16:09 +0000 (02:16 +0000)]
remove a couple of actively incorrect uses of getMangledName.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93627 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agothis doesn't need the mangler.
Chris Lattner [Sat, 16 Jan 2010 02:15:38 +0000 (02:15 +0000)]
this doesn't need the mangler.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93626 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agomore string -> sym, getMangledName is now gone from this file.
Chris Lattner [Sat, 16 Jan 2010 02:09:06 +0000 (02:09 +0000)]
more string -> sym, getMangledName is now gone from this file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93624 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agouse symbols instead of strings, eliminating a bunch of getMangledName
Chris Lattner [Sat, 16 Jan 2010 02:00:23 +0000 (02:00 +0000)]
use symbols instead of strings, eliminating a bunch of getMangledName
calls.  Add FIXMEs about a bunch of nondeterminism in stub output.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93621 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agosimplify some code.
Chris Lattner [Sat, 16 Jan 2010 01:45:47 +0000 (01:45 +0000)]
simplify some code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93619 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRetrying r91337:
Bill Wendling [Sat, 16 Jan 2010 01:40:55 +0000 (01:40 +0000)]
Retrying r91337:

The CIE says that the LSDA point in the FDE section is an "sdata4". That's fine,
but we need it to actually be 4-bytes in the FDE for some platforms. Allow
individual platforms to decide for themselves.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93616 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoeliminate uses of mangler and simplify code.
Chris Lattner [Sat, 16 Jan 2010 01:40:07 +0000 (01:40 +0000)]
eliminate uses of mangler and simplify code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93615 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofix inverted conditional
Chris Lattner [Sat, 16 Jan 2010 01:37:14 +0000 (01:37 +0000)]
fix inverted conditional

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93614 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCurrentFnName is now dead, remove it.
Chris Lattner [Sat, 16 Jan 2010 01:24:10 +0000 (01:24 +0000)]
CurrentFnName is now dead, remove it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93612 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoget pic16 off CurrentFnName
Chris Lattner [Sat, 16 Jan 2010 01:21:04 +0000 (01:21 +0000)]
get pic16 off CurrentFnName

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93610 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoremove the string form of printVisibility.
Chris Lattner [Sat, 16 Jan 2010 01:17:26 +0000 (01:17 +0000)]
remove the string form of printVisibility.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93609 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoswitch more stuff onto MCSymbols
Chris Lattner [Sat, 16 Jan 2010 01:12:01 +0000 (01:12 +0000)]
switch more stuff onto MCSymbols

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93608 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTemporarily revert r93581. It was causing failures in the ExecutionEngine tests
Bill Wendling [Sat, 16 Jan 2010 01:06:58 +0000 (01:06 +0000)]
Temporarily revert r93581. It was causing failures in the ExecutionEngine tests
on the build bots.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93606 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoeliminate uses of deprecated mangler apis
Chris Lattner [Sat, 16 Jan 2010 01:00:27 +0000 (01:00 +0000)]
eliminate uses of deprecated mangler apis

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93605 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agothis teestcase takes a long time to crash, remove it. If someone cares about this...
Chris Lattner [Sat, 16 Jan 2010 00:53:22 +0000 (00:53 +0000)]
this teestcase takes a long time to crash, remove it.  If someone cares about this, they should file a bug, it's not doing any good as an xfail.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93604 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoswitch X86 target off CurFunctionName and MCIze more.
Chris Lattner [Sat, 16 Jan 2010 00:51:39 +0000 (00:51 +0000)]
switch X86 target off CurFunctionName and MCIze more.
Note that the code wasn't calling DecorateCygMingName
when emitting the ".ascii -export" stuff at the end of
file for DLLExported functions.  I don't know if it should
or not, but I'm preserving behavior.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93603 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTreat indirect branches specially only during pre-regalloc tail duplication,
Bob Wilson [Sat, 16 Jan 2010 00:42:25 +0000 (00:42 +0000)]
Treat indirect branches specially only during pre-regalloc tail duplication,
not during the later post-alloc tail duplication.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93600 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMCize tis, and make it keep CurrentFnSym up to date with CurrentFnName.
Chris Lattner [Sat, 16 Jan 2010 00:32:38 +0000 (00:32 +0000)]
MCize tis, and make it keep CurrentFnSym up to date with CurrentFnName.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93598 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRun the pre-register allocation tail duplication pass by default. Remove
Bob Wilson [Sat, 16 Jan 2010 00:29:50 +0000 (00:29 +0000)]
Run the pre-register allocation tail duplication pass by default.  Remove
the -pre-regalloc-taildup command-line option, and add a new
-disable-early-taildup option.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93597 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agorevert the x86 part of my last patch, cygwin is mutating CurrentFnName!
Chris Lattner [Sat, 16 Jan 2010 00:24:20 +0000 (00:24 +0000)]
revert the x86 part of my last patch, cygwin is mutating CurrentFnName!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93595 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMCize a bunch more stuff, eliminating a lot of uses of the mangler
Chris Lattner [Sat, 16 Jan 2010 00:21:18 +0000 (00:21 +0000)]
MCize a bunch more stuff, eliminating a lot of uses of the mangler
and CurrentFnName.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93594 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix llvm_supports_binding for lit, problem noticed by Bob!
Daniel Dunbar [Sat, 16 Jan 2010 00:00:20 +0000 (00:00 +0000)]
Fix llvm_supports_binding for lit, problem noticed by Bob!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93591 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoremove two write-only sets.
Chris Lattner [Fri, 15 Jan 2010 23:56:03 +0000 (23:56 +0000)]
remove two write-only sets.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93590 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agosupplement CurrentFnName with CurrentFnSym, which will eventually
Chris Lattner [Fri, 15 Jan 2010 23:55:16 +0000 (23:55 +0000)]
supplement CurrentFnName with CurrentFnSym, which will eventually
replace it.  Upgrade Alpha, Blackfin, and part of CellSPU to not
use mangler anymore.  CellSPU needs more invasive surgery.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93589 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix bug 5992: O'Caml's llvm_create_module was treating the context as a string.
Erick Tryzelaar [Fri, 15 Jan 2010 23:49:16 +0000 (23:49 +0000)]
Fix bug 5992: O'Caml's llvm_create_module was treating the context as a string.

Thanks Andy Ray for catching this!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93588 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd a version of AsmPrinter::printVisibility that takes an MCSymbol.
Chris Lattner [Fri, 15 Jan 2010 23:38:51 +0000 (23:38 +0000)]
add a version of AsmPrinter::printVisibility that takes an MCSymbol.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93587 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agouse MCSymbol instead of getMangledName() in all cases except one.
Chris Lattner [Fri, 15 Jan 2010 23:31:55 +0000 (23:31 +0000)]
use MCSymbol instead of getMangledName() in all cases except one.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93582 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoBumpPtrAllocator: Have the DefaultSlabAllocator created at runtime, not initializatio...
Ted Kremenek [Fri, 15 Jan 2010 23:29:34 +0000 (23:29 +0000)]
BumpPtrAllocator: Have the DefaultSlabAllocator created at runtime, not initialization time.  This removes one of the 'init_constructors' reported in <rdar://problem/7545356>.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93581 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdjust some comments per review.
Dale Johannesen [Fri, 15 Jan 2010 23:29:29 +0000 (23:29 +0000)]
Adjust some comments per review.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93580 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove unneeded argument per review.
Dale Johannesen [Fri, 15 Jan 2010 23:28:49 +0000 (23:28 +0000)]
Remove unneeded argument per review.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93579 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agomc'ize a bunch of symbol stuff, eliminating std::strings.
Chris Lattner [Fri, 15 Jan 2010 23:26:49 +0000 (23:26 +0000)]
mc'ize a bunch of symbol stuff, eliminating std::strings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93578 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd another helper
Chris Lattner [Fri, 15 Jan 2010 23:25:11 +0000 (23:25 +0000)]
add another helper

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93577 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix PR6019. A load has more than one use if it feeds a bitconvert that
David Greene [Fri, 15 Jan 2010 23:23:41 +0000 (23:23 +0000)]
Fix PR6019.  A load has more than one use if it feeds a bitconvert that
has more than one use.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93576 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd a AsmPrinter::GetGlobalValueSymbol and GetExternalSymbolSymbol
Chris Lattner [Fri, 15 Jan 2010 23:18:17 +0000 (23:18 +0000)]
add a AsmPrinter::GetGlobalValueSymbol and GetExternalSymbolSymbol
helper method, use it to simplify some code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93575 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate CMake build.
Ted Kremenek [Fri, 15 Jan 2010 22:59:46 +0000 (22:59 +0000)]
Update CMake build.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93571 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate CMake build.
Ted Kremenek [Fri, 15 Jan 2010 22:59:11 +0000 (22:59 +0000)]
Update CMake build.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93570 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd testcase for r93564
Jim Grosbach [Fri, 15 Jan 2010 22:27:37 +0000 (22:27 +0000)]
add testcase for r93564

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93567 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd comments to the dump() and dumpr() routines.
Dan Gohman [Fri, 15 Jan 2010 22:22:58 +0000 (22:22 +0000)]
Add comments to the dump() and dumpr() routines.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93566 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDEBUG_VALUE is now variable sized, as it has a
Dale Johannesen [Fri, 15 Jan 2010 22:22:35 +0000 (22:22 +0000)]
DEBUG_VALUE is now variable sized, as it has a
target-dependent memory address representation in it.
Restore X86 printing of DEBUG_VALUE; lowering is
done in X86RegisterInfo using the normal algorithm.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93565 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate Thumb1 storeRegToStackSlot() and loadRegFromStackSlot() to properly
Jim Grosbach [Fri, 15 Jan 2010 22:21:03 +0000 (22:21 +0000)]
Update Thumb1 storeRegToStackSlot() and loadRegFromStackSlot() to properly
handle physical registers R0-R7 when described as having a non-tGPR register
class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93564 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix a typo that Anton noticed.
Dan Gohman [Fri, 15 Jan 2010 22:18:15 +0000 (22:18 +0000)]
Fix a typo that Anton noticed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93563 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd FIXME.
Devang Patel [Fri, 15 Jan 2010 22:08:16 +0000 (22:08 +0000)]
Add FIXME.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93562 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix a comment typo.
Bob Wilson [Fri, 15 Jan 2010 21:55:02 +0000 (21:55 +0000)]
Fix a comment typo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93560 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agomove "Metadata Nodes and Metadata Strings" section to the right place in the
Chris Lattner [Fri, 15 Jan 2010 21:50:19 +0000 (21:50 +0000)]
move "Metadata Nodes and Metadata Strings" section to the right place in the
document and edit it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93559 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove the InlineHint attribute. There are no current or planned
Eric Christopher [Fri, 15 Jan 2010 21:36:30 +0000 (21:36 +0000)]
Remove the InlineHint attribute. There are no current or planned
users.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93558 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agozext / truncate is free on msp430. Inform codegen about this.
Anton Korobeynikov [Fri, 15 Jan 2010 21:19:43 +0000 (21:19 +0000)]
zext / truncate is free on msp430. Inform codegen about this.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93556 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoReenable tests
Anton Korobeynikov [Fri, 15 Jan 2010 21:19:26 +0000 (21:19 +0000)]
Reenable tests

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93555 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd branch relaxation pass (shamelessly stolen from PPC).
Anton Korobeynikov [Fri, 15 Jan 2010 21:19:05 +0000 (21:19 +0000)]
Add branch relaxation pass (shamelessly stolen from PPC).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93554 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoProvide instruction sizes & encoding. No opcodes yet (but not needed so far).
Anton Korobeynikov [Fri, 15 Jan 2010 21:18:39 +0000 (21:18 +0000)]
Provide instruction sizes & encoding. No opcodes yet (but not needed so far).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93553 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoEnable bit tests and setcc stuff.
Anton Korobeynikov [Fri, 15 Jan 2010 21:18:18 +0000 (21:18 +0000)]
Enable bit tests and setcc stuff.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93552 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd micro-optimization which allows us to fold imm into cmp. This allows us to save...
Anton Korobeynikov [Fri, 15 Jan 2010 21:18:02 +0000 (21:18 +0000)]
Add micro-optimization which allows us to fold imm into cmp. This allows us to save 1 word (sometimes) and reduce register pressure.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93551 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd instruction formats & support stuff
Anton Korobeynikov [Fri, 15 Jan 2010 21:17:13 +0000 (21:17 +0000)]
Add instruction formats & support stuff

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93550 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDon't make changes to the MBB in MachineBasicBlock::canFallThrough().
Jakob Stoklund Olesen [Fri, 15 Jan 2010 20:00:12 +0000 (20:00 +0000)]
Don't make changes to the MBB in MachineBasicBlock::canFallThrough().

This fixes the regression for -pre-regalloc-taildup in
MultiSource/Applications/lambda-0.1.3.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93541 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSimplify logic. Any functional change is unintended.
Jakob Stoklund Olesen [Fri, 15 Jan 2010 19:59:57 +0000 (19:59 +0000)]
Simplify logic. Any functional change is unintended.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93540 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agounbreak the build, grr symlinks.
Chris Lattner [Fri, 15 Jan 2010 19:51:05 +0000 (19:51 +0000)]
unbreak the build, grr symlinks.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93539 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd some debug routines to SelectionDAG to dump full DAGs.
David Greene [Fri, 15 Jan 2010 19:43:23 +0000 (19:43 +0000)]
Add some debug routines to SelectionDAG to dump full DAGs.
print/dumpWithDepth allows one to dump a DAG up to N levels deep.
dump/printWithFullDepth prints the whole DAG, subject to a depth limit
on 100 in the default case (to prevent infinite recursion).

Have CannotYetSelect to a dumpWithFullDepth so it is clearer exactly
what the non-matching DAG looks like.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93538 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofix a bug in range information for $42, eliminate an
Chris Lattner [Fri, 15 Jan 2010 19:39:23 +0000 (19:39 +0000)]
fix a bug in range information for $42, eliminate an
unneeded argument from ParseExpression.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93536 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd range information for mem X86Operand's, now all
Chris Lattner [Fri, 15 Jan 2010 19:33:43 +0000 (19:33 +0000)]
add range information for mem X86Operand's, now all
X86Operand's have range info.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93535 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoextend MCAsmParser::ParseExpression and ParseParenExpression
Chris Lattner [Fri, 15 Jan 2010 19:28:38 +0000 (19:28 +0000)]
extend MCAsmParser::ParseExpression and ParseParenExpression
to return range information for subexpressions.  Use this to
provide range info for several new X86Operands.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93534 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agogive X86Operand a ctor and start passing SMLoc's into it.
Chris Lattner [Fri, 15 Jan 2010 19:06:59 +0000 (19:06 +0000)]
give X86Operand a ctor and start passing SMLoc's into it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93532 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImprove llvm.dbg.declare intrinsic by referring directly to the storage in its first...
Victor Hernandez [Fri, 15 Jan 2010 19:04:09 +0000 (19:04 +0000)]
Improve llvm.dbg.declare intrinsic by referring directly to the storage in its first argument, via function-local metadata (instead of via a bitcast).
This patch also cleans up code that expects there to be a bitcast in the first argument and testcases that call llvm.dbg.declare.
It also strips old llvm.dbg.declare intrinsics that did not pass metadata as the first argument.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93531 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRevert 93499. After discussion with Chris we agreed
Dale Johannesen [Fri, 15 Jan 2010 18:58:14 +0000 (18:58 +0000)]
Revert 93499.  After discussion with Chris we agreed
FrameIndexes should be lowered, but the same way as
everything else (target dependent) rather than in a
special hacked way.  The lowering needs to be done
for eventual purposes of Dwarf generation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93530 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd range location info for registers, change
Chris Lattner [Fri, 15 Jan 2010 18:51:29 +0000 (18:51 +0000)]
add range location info for registers, change
X86Operand::Create* implementations to avoid
copy ctor use.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93528 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoHook up llc's -filetype=obj to use MCStreamer if an MCCodeEmitter is available.
Nate Begeman [Fri, 15 Jan 2010 18:51:18 +0000 (18:51 +0000)]
Hook up llc's -filetype=obj to use MCStreamer if an MCCodeEmitter is available.
Remove most of old Mach-O Writer support, it has been replaced by MCMachOStreamer

Further refactoring to completely remove MachOWriter and drive the object file
writer with the AsmPrinter MCInst/MCSection logic is forthcoming.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93527 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoclean up the memory management of the operands.
Chris Lattner [Fri, 15 Jan 2010 18:44:13 +0000 (18:44 +0000)]
clean up the memory management of the operands.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93526 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agorefactor ParseRegister to avoid using X86Operand as a temporary
Chris Lattner [Fri, 15 Jan 2010 18:27:19 +0000 (18:27 +0000)]
refactor ParseRegister to avoid using X86Operand as a temporary
datastructure when parsing a mem operand.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93521 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agomention that unwind isn't to be trusted, patch by Dustin Laurence
Chris Lattner [Fri, 15 Jan 2010 18:08:37 +0000 (18:08 +0000)]
mention that unwind isn't to be trusted, patch by Dustin Laurence

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93518 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRevert r93504 because older uses of llvm.dbg.declare intrinsics need to be auto-upgraded
Victor Hernandez [Fri, 15 Jan 2010 17:36:47 +0000 (17:36 +0000)]
Revert r93504 because older uses of llvm.dbg.declare intrinsics need to be auto-upgraded

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93515 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTest case for http://llvm.org/PR6028.
Jay Foad [Fri, 15 Jan 2010 11:29:26 +0000 (11:29 +0000)]
Test case for http://llvm.org/PR6028.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93511 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix http://llvm.org/PR6028, an assertion failure when an UndefValue of
Jay Foad [Fri, 15 Jan 2010 08:32:58 +0000 (08:32 +0000)]
Fix llvm.org/PR6028, an assertion failure when an UndefValue of
integer type is used.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93509 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoChange pre-regalloc tail duplication to only duplicate indirect branch blocks.
Bob Wilson [Fri, 15 Jan 2010 06:29:17 +0000 (06:29 +0000)]
Change pre-regalloc tail duplication to only duplicate indirect branch blocks.
The pre-regalloc pass caused some regressions in both compile time and
performance of the generated code, and it did not improve performance, except
for indirect branches.  I also moved the check for single-block loops to speed
up the common case when running the taildup pass before reg allocation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93505 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImprove llvm.dbg.declare intrinsic by referring directly to the storage in its first...
Victor Hernandez [Fri, 15 Jan 2010 03:37:48 +0000 (03:37 +0000)]
Improve llvm.dbg.declare intrinsic by referring directly to the storage in its first argument, via function-local metadata (instead of via a bitcast).
This patch also cleans up code that expects there to be a bitcast in the first argument and testcases that call llvm.dbg.declare.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93504 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTemporary disable tests
Anton Korobeynikov [Fri, 15 Jan 2010 02:09:27 +0000 (02:09 +0000)]
Temporary disable tests

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93501 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoLower FrameIndex operand of DEBUG_VALUE (specially) and
Dale Johannesen [Fri, 15 Jan 2010 01:54:55 +0000 (01:54 +0000)]
Lower FrameIndex operand of DEBUG_VALUE (specially) and
print it as a comment on X86.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93499 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove DEBUG_DECLARE, looks like we don't need it.
Dale Johannesen [Fri, 15 Jan 2010 01:50:44 +0000 (01:50 +0000)]
Remove DEBUG_DECLARE, looks like we don't need it.
Also, DEBUG_VALUE has side effects.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93498 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix cmp emission on msp430: we definitely should turn stuff like
Anton Korobeynikov [Fri, 15 Jan 2010 01:29:49 +0000 (01:29 +0000)]
Fix cmp emission on msp430: we definitely should turn stuff like
"icmp lhs, rhs" into "cmp rhs, lhs". This should fix PR5979.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93496 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDo not use AT_specification die for static variables. It confuses gdb.
Devang Patel [Fri, 15 Jan 2010 01:12:22 +0000 (01:12 +0000)]
Do not use AT_specification die for static variables. It confuses gdb.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93494 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake sure include/llvm/MC/MCParsedAsmOperand.h can be compiled alone.
Jeffrey Yasskin [Fri, 15 Jan 2010 00:41:53 +0000 (00:41 +0000)]
Make sure include/llvm/MC/MCParsedAsmOperand.h can be compiled alone.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93492 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofix 80-column violations
Jim Grosbach [Fri, 15 Jan 2010 00:36:15 +0000 (00:36 +0000)]
fix 80-column violations

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93487 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agonew test case for r93485.
Devang Patel [Fri, 15 Jan 2010 00:34:26 +0000 (00:34 +0000)]
new test case for r93485.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93486 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix 80 column violations and clean up whitespace
Jim Grosbach [Fri, 15 Jan 2010 00:32:47 +0000 (00:32 +0000)]
Fix 80 column violations and clean up whitespace

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93484 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDo not emit multiple AT_container_type attributes.
Devang Patel [Fri, 15 Jan 2010 00:26:31 +0000 (00:26 +0000)]
Do not emit multiple AT_container_type attributes.
We need to find a better way to emit this info.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93481 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoName change for consistency. No functional change.
Jim Grosbach [Fri, 15 Jan 2010 00:22:18 +0000 (00:22 +0000)]
Name change for consistency. No functional change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93480 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoEmitAtomicCmpSwap() custome inserter needs to delete the MI passed in. EmitAtomicBina...
Jim Grosbach [Fri, 15 Jan 2010 00:18:34 +0000 (00:18 +0000)]
EmitAtomicCmpSwap() custome inserter needs to delete the MI passed in. EmitAtomicBinary() already does this.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93479 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTeach PPC how to replaceMachineCodeForFunction correctly. (Fixes
Jeffrey Yasskin [Thu, 14 Jan 2010 23:15:26 +0000 (23:15 +0000)]
Teach PPC how to replaceMachineCodeForFunction correctly.  (Fixes
JITTest.FunctionIsRecompiledAndRelinked.)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93475 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPad my commit stats by reducing indentation in this now separate
Eric Christopher [Thu, 14 Jan 2010 23:00:10 +0000 (23:00 +0000)]
Pad my commit stats by reducing indentation in this now separate
commit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93473 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdded 16-bit Thumb Load/Store immediate instructions with encoding bits so that
Johnny Chen [Thu, 14 Jan 2010 22:42:17 +0000 (22:42 +0000)]
Added 16-bit Thumb Load/Store immediate instructions with encoding bits so that
the disassembler can properly decode Load/Store register/immediate instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93471 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd virtual methods to get the start/end of a MCParsedAsmOperand,
Chris Lattner [Thu, 14 Jan 2010 22:29:57 +0000 (22:29 +0000)]
add virtual methods to get the start/end of a MCParsedAsmOperand,
the default implementation returns "unknown".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93470 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSplit the TargetAsmParser "ParseInstruction" interface in half:
Chris Lattner [Thu, 14 Jan 2010 22:21:20 +0000 (22:21 +0000)]
Split the TargetAsmParser "ParseInstruction" interface in half:
the new ParseInstruction method just parses and returns a list of
target operands.  A new MatchInstruction interface is used to
turn the operand list into an MCInst.

This requires new/deleting all the operands, but it also gives
targets the ability to use polymorphic operands if they want to.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93469 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd variable-width shifts for MSP430
Anton Korobeynikov [Thu, 14 Jan 2010 22:09:38 +0000 (22:09 +0000)]
Add variable-width shifts for MSP430

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93468 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove pseudo-MI in custom inserter.
Anton Korobeynikov [Thu, 14 Jan 2010 22:09:11 +0000 (22:09 +0000)]
Remove pseudo-MI in custom inserter.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93467 91177308-0d34-0410-b5e6-96231b3b80d8