OSDN Git Service
Nate Begeman [Sun, 17 Jan 2010 03:49:01 +0000 (03:49 +0000)]
Add a note for the macho streamer and remove a used of the mangler from the soon to be defunct machowriter pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93670
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sun, 17 Jan 2010 00:21:21 +0000 (00:21 +0000)]
Reduce fsub-fadd.ll and merge it into fsub-fsub.ll. Rename fsub-fsub.ll to
fsub.ll and FileCheckify it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93669
91177308-0d34-0410-b5e6-
96231b3b80d8
Kenneth Uildriks [Sat, 16 Jan 2010 23:37:33 +0000 (23:37 +0000)]
When checking for sret-demotion, it needs to use legal types. When using the return value of an sret-demoted call, it needs to use possibly illegal types that match the declared Type of the callee.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93667
91177308-0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Sat, 16 Jan 2010 22:23:09 +0000 (22:23 +0000)]
Update CMake files for Mangler move.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93665
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 16 Jan 2010 21:57:06 +0000 (21:57 +0000)]
move the mangler into libtarget from vmcore.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93664
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 16 Jan 2010 21:55:24 +0000 (21:55 +0000)]
fix a warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93663
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 16 Jan 2010 21:35:09 +0000 (21:35 +0000)]
this doesn't need to suck in Mangler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93662
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 16 Jan 2010 21:34:51 +0000 (21:34 +0000)]
remove obsolete comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93661
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 16 Jan 2010 21:34:01 +0000 (21:34 +0000)]
bugpoint doesn't need the mangler at all. DisambiguateGlobalSymbols
dates to a time when two different LLVM values could have the same
name but different types. Simplify it to just assign names to unnamed
things and let the core symtab resolve duplicates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93660
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 16 Jan 2010 21:25:13 +0000 (21:25 +0000)]
add a thing to investigate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93659
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 16 Jan 2010 21:20:34 +0000 (21:20 +0000)]
remove calls to dead methods.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93657
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 16 Jan 2010 21:08:46 +0000 (21:08 +0000)]
reapply the mangler gutting patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93656
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 16 Jan 2010 20:56:05 +0000 (20:56 +0000)]
remove use of getMangledName.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93655
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 16 Jan 2010 20:53:11 +0000 (20:53 +0000)]
unbreak the build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93654
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Sat, 16 Jan 2010 20:27:59 +0000 (20:27 +0000)]
Revert 93648.
Mangler::getMangledName is used from lto
Mangler::setUseQuotes is used in the AsmPrinter
Mangler::setSymbolsCanStartWithDigit is used in the AsmPrinter
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93652
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 16 Jan 2010 19:08:51 +0000 (19:08 +0000)]
Mangler::getMangledName is now dead, remove it and all the other stuff in Mangler that is now transitively dead. woo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93648
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 16 Jan 2010 18:50:28 +0000 (18:50 +0000)]
Change DIEObjectLabel to take an MCSymbol instead of std::string.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93647
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 16 Jan 2010 18:37:32 +0000 (18:37 +0000)]
rename GetPrivateGlobalValueSymbolStub -> GetSymbolWithGlobalValueBase,
and add an explicit ForcePrivate argument.
Switch FunctionEHFrameInfo to be MCSymbol based instead of string based.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93646
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 16 Jan 2010 18:17:26 +0000 (18:17 +0000)]
eliminate uses of getMangledName from AsmPrinter.cpp, last up is
dwarf emission which is going to be more invasive.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93645
91177308-0d34-0410-b5e6-
96231b3b80d8
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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