summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Add comment that MDNode::getFunction() is not to be used by ↵Victor Hernandez2010-01-181-1/+2
| | | | | | performance-critical code (currently only used by AsmWriter) llvm-svn: 93802
* Add some potentially interesting transformations to README.Eli Friedman2010-01-181-0/+51
| | | | llvm-svn: 93797
* - Add getLSDAEncoding to the PowerPC backend.Bill Wendling2010-01-184-2/+46
| | | | | | - Greatly improve the comments to the getLSDAEncoding method. llvm-svn: 93796
* my instcombine transformations to make extension elimination moreChris Lattner2010-01-182-5/+32
| | | | | | | | aggressive changed the canonical form from sext(trunc(x)) to ashr(lshr(x)), make sure to transform a couple more things into that canonical form, and catch a case where we missed turning zext/shl/ashr into a single sext. llvm-svn: 93787
* Have FastISel handle llvm.trap().Eric Christopher2010-01-181-0/+4
| | | | llvm-svn: 93781
* Minor cleanup for jump table printing. Need a reference, not a pointer, forJim Grosbach2010-01-181-1/+1
| | | | | | printing via <<. Otherwise we just print the pointer value. llvm-svn: 93777
* Canonicalize -1 - x to ~x.Evan Cheng2010-01-181-0/+3
| | | | | | | | | | Instcombine does this but apparently there are situations where this pattern will escape the optimizer and / or created by isel. Here is a case that's seen in JavaScriptCore: %t1 = sub i32 0, %a %t2 = add i32 %t1, -1 The dag combiner pattern: ((c1-A)+c2) -> (c1+c2)-A will fold it to -1 - %a. llvm-svn: 93773
* Make findDbgDeclare/findDbgGlobalDeclare local static functions; avoid Elts ↵Victor Hernandez2010-01-181-6/+7
| | | | | | array llvm-svn: 93764
* Simplify MDNode::getFunction() and assertLocalFunction() by avoiding extra ↵Victor Hernandez2010-01-181-46/+39
| | | | | | Function* variable and smallptrset since function-local metadata cannot be cyclic llvm-svn: 93762
* The most significant encoding bit of GPR:$src or GPR:$dst was over-specified inJohnny Chen2010-01-181-5/+5
| | | | | | | | the various MOV (register) instructions (16-bit Thumb), including tBRIND (the indirect branch). Instead of '1', it should be specified as '?', because GPR only specifies the register class, which includes both hi-and-lo registers. llvm-svn: 93759
* Patch by David Conrad:Jim Grosbach2010-01-185-1/+34
| | | | | | | "On ARMv6T2 this turns cttz into rbit, clz instead of the 4 instruction sequence it is now." llvm-svn: 93758
* While mapping llvm.dbg.declare intrinsic manually map its operand, if possible,Devang Patel2010-01-181-0/+18
| | | | | | because it points to an alloca instruction through metadata. llvm-svn: 93757
* reject some invalid IR. We already assert and reject this from theChris Lattner2010-01-181-0/+2
| | | | | | .ll parser, but PR6070 wants it in the verifier too. llvm-svn: 93756
* Add FIXME comment.Bill Wendling2010-01-181-0/+3
| | | | llvm-svn: 93755
* - Add a comment to the callback indicating that it's *extremely* not a goodBill Wendling2010-01-182-3/+3
| | | | | | | | idea, but unfortunately necessary. - Default to using 4-bytes for the LSDA pointer encoding to agree with the encoded value in the CIE. llvm-svn: 93753
* Make printing of metadata more robust when function is not found (which is ↵Victor Hernandez2010-01-181-1/+1
| | | | | | the normal situation for non function-local metadata) llvm-svn: 93748
* Fix refacto reported by Nicolas Geoffray.Benjamin Kramer2010-01-181-3/+1
| | | | llvm-svn: 93723
* Emit spaces after commas in Neon register lists. This is more consistentBob Wilson2010-01-181-30/+33
| | | | | | | with the rest of the assembly output, is easier to read, and matches the expected output for gcc's Neon tests. llvm-svn: 93703
* switch x86 zerofill emission over to use MCStreamer.Chris Lattner2010-01-181-3/+12
| | | | llvm-svn: 93702
* Change CurrentFnSym to be a non-const pointer since asmprinter mutates it Chris Lattner2010-01-183-16/+16
| | | | | | | as it emits code. Switch .globl directives to use OutStreamer instead of doing it textually (in x86) llvm-svn: 93700
* remove the MAI argument to MCExpr::print and switch overthing to use << when ↵Chris Lattner2010-01-188-38/+22
| | | | | | printing them. llvm-svn: 93699
* unbreak x86 jump tables with my previous patch.Chris Lattner2010-01-181-1/+1
| | | | llvm-svn: 93698
* now that MCSymbol::print doesn't use it's MAI argument, we can Chris Lattner2010-01-1719-865/+371
| | | | | | | remove it and change all the code that prints MCSymbols to use << instead, which is much simpler and cleaner. llvm-svn: 93695
* rename NameNeedsEscaping -> NameNeedsQuoting, eliminate the checkChris Lattner2010-01-171-9/+4
| | | | | | | for first character which is a digit, mangler would have taken care of this already. llvm-svn: 93694
* Convert some of the dynamic opcode lookups into static ones.Owen Anderson2010-01-171-59/+40
| | | | llvm-svn: 93693
* stop the CBE from using Mangler::appendMangledName, which is a private ↵Chris Lattner2010-01-172-8/+17
| | | | | | function, it is mangling types, which don't matter how they are done. llvm-svn: 93692
* Get MCSymbol out of the mangling business, and move all the logicChris Lattner2010-01-174-76/+106
| | | | | | | | | | | to Mangler. Now MCSymbol just decides whether to slap quotes around a symbol when printing it. This also fixes some weirdness where two MCSymbols could be created for the same symbol, if one needed to be mangled and got mangled to the other one. llvm-svn: 93690
* factor this code better how that the string version of getNameWithPrefixChris Lattner2010-01-171-28/+8
| | | | | | takes a twine. llvm-svn: 93687
* now that mangler is in libtarget, it can use MCAsmInfo instead of clientsChris Lattner2010-01-174-41/+61
| | | | | | having to pass various fields from it in. Simplify. llvm-svn: 93686
* Switch some functions to take Twines, eliminate uses of StringExtras.h.Benjamin Kramer2010-01-174-36/+16
| | | | llvm-svn: 93680
* Fix comment.Owen Anderson2010-01-171-1/+1
| | | | llvm-svn: 93679
* The Neon "vtst" instruction takes a suffix that is the element size alone --Bob Wilson2010-01-171-1/+1
| | | | | | | | adding an "i" to the suffix, indicating that the elements are integers, is accepted but not part of the standard syntax. This helps us pass a few more of the Neon tests from gcc. llvm-svn: 93677
* Fix an off-by-one error that caused the chain operand to be dropped from NeonBob Wilson2010-01-171-2/+2
| | | | | | vector load-lane and store-lane instructions. llvm-svn: 93673
* Add a note for the macho streamer and remove a used of the mangler from the ↵Nate Begeman2010-01-172-6/+2
| | | | | | soon to be defunct machowriter pass. llvm-svn: 93670
* When checking for sret-demotion, it needs to use legal types. When using ↵Kenneth Uildriks2010-01-161-11/+41
| | | | | | the return value of an sret-demoted call, it needs to use possibly illegal types that match the declared Type of the callee. llvm-svn: 93667
* Update CMake files for Mangler move.Benjamin Kramer2010-01-162-1/+1
| | | | llvm-svn: 93665
* move the mangler into libtarget from vmcore.Chris Lattner2010-01-1611-16/+16
| | | | llvm-svn: 93664
* reapply the mangler gutting patch.Chris Lattner2010-01-162-189/+4
| | | | llvm-svn: 93656
* unbreak the build.Chris Lattner2010-01-161-6/+0
| | | | llvm-svn: 93654
* Revert 93648.Rafael Espindola2010-01-162-4/+189
| | | | | | | | Mangler::getMangledName is used from lto Mangler::setUseQuotes is used in the AsmPrinter Mangler::setSymbolsCanStartWithDigit is used in the AsmPrinter llvm-svn: 93652
* Mangler::getMangledName is now dead, remove it and all the other stuff in ↵Chris Lattner2010-01-162-189/+4
| | | | | | Mangler that is now transitively dead. woo. llvm-svn: 93648
* Change DIEObjectLabel to take an MCSymbol instead of std::string.Chris Lattner2010-01-166-10/+23
| | | | llvm-svn: 93647
* rename GetPrivateGlobalValueSymbolStub -> GetSymbolWithGlobalValueBase,Chris Lattner2010-01-167-39/+58
| | | | | | | | and add an explicit ForcePrivate argument. Switch FunctionEHFrameInfo to be MCSymbol based instead of string based. llvm-svn: 93646
* eliminate uses of getMangledName from AsmPrinter.cpp, last up is Chris Lattner2010-01-161-5/+9
| | | | | | dwarf emission which is going to be more invasive. llvm-svn: 93645
* add an inefficient version of getNameWithPrefix that returns an std::string.Chris Lattner2010-01-161-0/+10
| | | | llvm-svn: 93641
* Create Generic DOTGraphTraits Printer/ViewerTobias Grosser2010-01-161-56/+18
| | | | | | | | 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. llvm-svn: 93632
* No need to use WeakVH here.Devang Patel2010-01-161-2/+1
| | | | llvm-svn: 93631
* Replace DebugLocTuple with DILocation.Devang Patel2010-01-167-50/+50
| | | | llvm-svn: 93630
* fix build failure.Chris Lattner2010-01-161-1/+1
| | | | llvm-svn: 93628
* remove a couple of actively incorrect uses of getMangledName.Chris Lattner2010-01-162-5/+8
| | | | llvm-svn: 93627
OpenPOWER on IntegriCloud