summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* 1. In Thumb mode, select tBx instead of ARM variants.Evan Cheng2009-07-142-20/+16
| | | | | | | 2. BX does not "use" the link register, it defines it. 3. Fix a couple more places in thumb td file that still uses pre-UAL syntax. llvm-svn: 75585
* Update LoopSimplify and LoopUnswitch to use the new makeLoopInvariantDan Gohman2009-07-142-15/+15
| | | | | | function. llvm-svn: 75584
* Remove hack now that Evan fixed it so that the frame pointer isn't saved twice.Bill Wendling2009-07-141-23/+0
| | | | llvm-svn: 75581
* Fix indvars to not assume that a loop with a single unique exitDan Gohman2009-07-141-7/+5
| | | | | | block has a single unique exiting block. llvm-svn: 75579
* Introduce a new LoopInfo utility function makeLoopInvariant, whichDan Gohman2009-07-141-1/+62
| | | | | | | | | | | works similar to isLoopInvariant, except that it will do trivial hoisting to try to make the value loop invariant if it isn't already. This makes it easier for transformation passes to clear trivial instructions out of the way (the regular LICM pass doesn't run until relatively late). This is code factored out of LoopSimplify and other places. llvm-svn: 75578
* use getValueName instead of makeNameProper.Chris Lattner2009-07-141-2/+2
| | | | llvm-svn: 75577
* Fix detection of valid BFC immediates.David Goodwin2009-07-141-10/+10
| | | | llvm-svn: 75576
* Do not use Mangler to remove '1' from linkage name.Devang Patel2009-07-141-13/+4
| | | | llvm-svn: 75574
* Fix pr4544. When remating, make sure the destination register fits the ↵Evan Cheng2009-07-141-0/+11
| | | | | | | | instruction definition. It may be mismatched due to sub-register coalescing. No test case yet because the code doesn't trigger until 75408 is re-applied. llvm-svn: 75572
* Don't delete asm's just because their inputs are undefined;Dale Johannesen2009-07-141-8/+17
| | | | | | xor R, R is a common and valid idiom for zeroing a register, for example. llvm-svn: 75571
* Add a newline, now that Value's operator<< doesn't print one.Dan Gohman2009-07-141-0/+1
| | | | llvm-svn: 75568
* FreeInst is trapping.Dan Gohman2009-07-141-0/+1
| | | | llvm-svn: 75567
* Fix an obvious copy-and-paste error.Bob Wilson2009-07-141-8/+8
| | | | llvm-svn: 75566
* Revert 75308.Bob Wilson2009-07-141-33/+3
| | | | llvm-svn: 75565
* the mangler can never mangle intrinsics, don't allow this.Chris Lattner2009-07-141-4/+2
| | | | llvm-svn: 75564
* Revert 75309.Bob Wilson2009-07-141-106/+8
| | | | llvm-svn: 75562
* rename Memo/Count to AnonGlobalIDs/NextAnonGlobalID to be more Chris Lattner2009-07-141-20/+17
| | | | | | | | | | descriptive. Thange them to keep track of the ID of a global that is assigned, not the first mangled name returned for it. Without doing this, we are required to always use the same suffix for a global that gets mangled. This means that we can mangle the same global once with $stub and another time with $non_lazy_ptr or whatever. llvm-svn: 75561
* Move more functionality over to LLVMContext.Owen Anderson2009-07-133-73/+19
| | | | llvm-svn: 75559
* remove Mangler::getTypeID and related data, it was only used for manglingChris Lattner2009-07-131-9/+1
| | | | | | local symbols and we haven't had type planes since llvm 1.9. llvm-svn: 75558
* remove mangler support for mangling local names. Mangler should only be Chris Lattner2009-07-131-14/+0
| | | | | | used with globals. llvm-svn: 75557
* fix CBE & MSIL backends to not use the mangler for non-global symbols.Chris Lattner2009-07-133-27/+54
| | | | llvm-svn: 75556
* don't print redundant @PLT suffixesChris Lattner2009-07-131-4/+0
| | | | llvm-svn: 75554
* Revert an accidental commit.Evan Cheng2009-07-131-1/+1
| | | | llvm-svn: 75553
* the mangler should put suffixes on unnamed global's mangled names as well Chris Lattner2009-07-131-1/+1
| | | | | | if present. llvm-svn: 75547
* Move a bit more functionality to LLVMContext, which apparently wasn't being ↵Owen Anderson2009-07-132-19/+29
| | | | | | used anyways. llvm-svn: 75546
* Added llvm-mc support for parsing the .abort directive.Kevin Enderby2009-07-131-0/+10
| | | | llvm-svn: 75545
* Print a newline after printing a Value, now that Value's operator<<Dan Gohman2009-07-131-1/+1
| | | | | | doesn't print a newline. llvm-svn: 75543
* Two changes:Chris Lattner2009-07-131-9/+2
| | | | | | | | | | | 1) unique globals with the existing "Count" local in Mangler, not with atomic nonsense. Using atomics will give us nondeterminstic output from the compiler when using multiple threads, which is bad. 2) Do not mangle an unknown global name with a type suffix. We don't need this anymore now that llvm ir doesn't have type planes. llvm-svn: 75541
* Use assertion.Devang Patel2009-07-131-2/+4
| | | | llvm-svn: 75540
* PR4548: optimize zext+udiv+trunc to udiv.Eli Friedman2009-07-131-1/+20
| | | | llvm-svn: 75539
* Inline EvalVectorOp in order to get rid of passing-pointer-to-static-methods ↵Owen Anderson2009-07-131-38/+132
| | | | | | behavior. llvm-svn: 75538
* Cleanup the global emission and refactor some codeBruno Cardoso Lopes2009-07-134-104/+110
| | | | llvm-svn: 75537
* clean up some syntax.Chris Lattner2009-07-131-12/+11
| | | | llvm-svn: 75532
* Canonicalize boolean +/- a constant to a select.Eli Friedman2009-07-131-6/+8
| | | | | | | | (I think it's reasonably clear that we want to have a canonical form for constructs like this; if anyone thinks that a select is not the best canonical form, please tell me.) llvm-svn: 75531
* Fix a few assertion strings.Dan Gohman2009-07-131-2/+2
| | | | llvm-svn: 75530
* Forward-declare Loop and LoopInfo instead of #including LoopInfo.h.Dan Gohman2009-07-131-0/+7
| | | | llvm-svn: 75529
* These don't really need contexts either.Owen Anderson2009-07-134-18/+18
| | | | llvm-svn: 75528
* eliminate a bunch of code in print_pcrel_imm for printing symbols, usingChris Lattner2009-07-131-73/+26
| | | | | | printSymbolOperand instead. llvm-svn: 75526
* Whitespace cleanups.Dan Gohman2009-07-131-5/+5
| | | | llvm-svn: 75525
* Fix an 80-column violation.Dan Gohman2009-07-131-4/+4
| | | | llvm-svn: 75524
* Move isLCSSAForm, isLoopInvariant, getCanonicalInductionVariable,Dan Gohman2009-07-132-0/+179
| | | | | | | | and related functions out of LoopBase and into Loop, since they are specific to BasicBlock-based loops. This also allows the code to be moved out-of-line. llvm-svn: 75523
* move a method and add a comment, no functionality change.Chris Lattner2009-07-131-86/+89
| | | | llvm-svn: 75520
* Make Loop and MachineLoop be subclasses of LoopBase, rather than typedefs,Dan Gohman2009-07-133-4/+8
| | | | | | | | | | using the Curiously Recurring Template Pattern with LoopBase. This will help further refactoring, and future functionality for Loop. Also, Headers can now foward-declare Loop, instead of pulling in LoopInfo.h or doing tricks. llvm-svn: 75519
* refactor operand printing to remove hte last of the "mem" modifier hack. TheChris Lattner2009-07-131-13/+13
| | | | | | only remaining modifier is "subreg". llvm-svn: 75516
* Use AsmPrinter's Mangler to remove leading '1' from linkage names.Devang Patel2009-07-131-4/+9
| | | | llvm-svn: 75515
* Misc simplifications to InstCombiner::commonIntCastTransforms. Most of Eli Friedman2009-07-131-60/+17
| | | | | | | | the changes are allowed by not calling this function for bitcasts. The Instruction::AShr case is dead because SimplifyDemandedInstructionBits handles that case. llvm-svn: 75514
* Fix FP elimination code to work for Thumb-2 addrmode AddrModeT2_so. This ↵David Goodwin2009-07-131-3/+7
| | | | | | fixes SingleSource/Benchmarks/Stanford/Queens (among others). llvm-svn: 75513
* refactor symbol printing so the whole "mem" thing is handled in fewer places.Chris Lattner2009-07-132-40/+49
| | | | llvm-svn: 75512
* Reapply 75252, with a fix to avoid the infinite recursion case. TheDan Gohman2009-07-131-114/+527
| | | | | | | check for avoiding re-analyzing a widening cast needed to happen earlier, as getSCEV itself may result in a isLoopGuardedByCond query. llvm-svn: 75511
* As Chris pointed out, this doesn't actually need an LLVMContext to operate.Owen Anderson2009-07-135-10/+10
| | | | llvm-svn: 75508
OpenPOWER on IntegriCloud