summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Put the assignment back at the top of this method.Bill Wendling2009-03-111-2/+2
| | | | llvm-svn: 66611
* Two coalescer fixes in one.Evan Cheng2009-03-112-8/+61
| | | | | | | 1. Use the same value# to represent unknown values being merged into sub-registers. 2. When coalescer commute an instruction and the destination is a physical register, update its sub-registers by merging in the extended ranges. llvm-svn: 66610
* Make ivars private. Other cleanup. No functionality change.Bill Wendling2009-03-101-59/+27
| | | | llvm-svn: 66607
* Just make the Dwarf timer group static inside of the getter function. No ↵Bill Wendling2009-03-101-7/+5
| | | | | | need to alloc/dealloc. llvm-svn: 66591
* Don't put static functions in anonymous namespace.Bill Wendling2009-03-101-4/+0
| | | | llvm-svn: 66589
* Don't consider debug intrinsics when checkingDale Johannesen2009-03-101-2/+2
| | | | | | whether a callee to be inlined is a leaf. llvm-svn: 66588
* These should *stop* the timer, not start it again.Bill Wendling2009-03-101-2/+2
| | | | llvm-svn: 66586
* - Fix misspelled method name.Bill Wendling2009-03-101-11/+5
| | | | | | - Remove unused method. llvm-svn: 66585
* - Create GetOrCreateSourceID from getOrCreateSourceID. GetOrCreateSourceID isBill Wendling2009-03-101-79/+82
| | | | | | | | | | | the untimed version of getOrCreateSourceID. getOrCreateSourceID calls GetOrCreateSourceID, of course. - Move some methods into the "private" section. Constify at least one method. - General clean-ups. llvm-svn: 66582
* Refine the Dwarf writer timers so that they measure exception writing and debugBill Wendling2009-03-101-143/+169
| | | | | | writing individually. llvm-svn: 66577
* Removing a dead debug intrinsic shouldn't triggerDale Johannesen2009-03-101-3/+6
| | | | | | | another instcombine pass if we weren't going to make one without debug info. llvm-svn: 66576
* Revert 66358 for now. It's breaking povray, 450.soplex, and 456.hmmer on x86 ↵Evan Cheng2009-03-101-53/+2
| | | | | | / Darwin. llvm-svn: 66574
* Add a timer to the DwarfWriter pass that measures the total time it takes toBill Wendling2009-03-101-8/+110
| | | | | | emit exception and debug Dwarf info. llvm-svn: 66571
* Use WriteAsOperand instead of manually decorating the name for thisDan Gohman2009-03-101-11/+8
| | | | | | debug output. This improves the printing of anonymous values. llvm-svn: 66561
* Fix a post-RA scheduling liveness bug. When a basic block is beingDan Gohman2009-03-101-9/+22
| | | | | | | | | | | | | scheduled in multiple regions, liveness data used by the anti-dependence breaker is carried from one region to the next, however the information reflects the state of the instructions before scheduling. After scheduling, there may be new live range overlaps. Handle this by pessimizing the liveness data carried between regions to the point where it will be conservatively correct now matter how the earlier region is scheduled. This fixes a miscompilation in 176.gcc with the post-RA scheduler enabled. llvm-svn: 66558
* Ignore dbg info, while estimating size of jump through block.Devang Patel2009-03-101-1/+3
| | | | llvm-svn: 66554
* PR3478: raw_ostream should not buffer stderrDaniel Dunbar2009-03-101-1/+5
| | | | | | | - Add unbuffered flag to raw_ostream, forwarded by raw_fd_ostream and used by raw_stderr_ostream. llvm-svn: 66545
* Do not attempt to do parial redundancy elimination on void values.John Criswell2009-03-101-3/+4
| | | | | | | Also fixed a punctuation error in the header comment. This fixes PR3775. llvm-svn: 66542
* Global variables don't have a corresponding llvm.dbg.declare, yet it is possibleTorok Edwin2009-03-102-6/+75
| | | | | | | | to obtain debug info about them. Introduce helpers to access debug info for global variables. Also introduce a helper that works for both local and global variables. llvm-svn: 66541
* Mark the Defs and Uses of STATUS register correctly, plus some reformatting.Sanjiv Gupta2009-03-101-41/+61
| | | | llvm-svn: 66540
* If a function is marked alwaysinline, it must be inlined (possibly for ↵Evan Cheng2009-03-101-7/+7
| | | | | | correctness). Do so even if the callee has dynamic alloca and the caller doesn't. llvm-svn: 66539
* wire up support for emitting "special" values from inline asmChris Lattner2009-03-101-1/+20
| | | | | | format strings with the standard ${:foo} syntax. llvm-svn: 66527
* Add more information to the EFLAGS note.Dan Gohman2009-03-101-4/+12
| | | | llvm-svn: 66515
* Add a note about EFLAGS optimization.Dan Gohman2009-03-091-0/+15
| | | | llvm-svn: 66508
* Ignore debug info while evaluating function.Devang Patel2009-03-091-1/+7
| | | | llvm-svn: 66490
* Don't record the increment instruction; just recompute it from the PhiDan Gohman2009-03-091-33/+15
| | | | | | | if needed. This simplifies the code a little, and is needed for an upcoming refactoring. llvm-svn: 66479
* Fix PR3724 by searching for the largest free block when Chris Lattner2009-03-091-2/+19
| | | | | | | | | allocating memory in the JIT. This is insanely inefficient, but hey, most people implement their own memory managers anyway. Patch by Eric Yew! llvm-svn: 66472
* Remove llvm.dbg.global_variables also.Devang Patel2009-03-091-0/+10
| | | | llvm-svn: 66471
* Fix a few more places where induction variable types were usedDan Gohman2009-03-091-2/+2
| | | | | | where memory access types are needed. llvm-svn: 66470
* Use ReplacedTy instead of recomputing the same value.Dan Gohman2009-03-091-1/+1
| | | | llvm-svn: 66469
* Use LoopInfo's getLoopLatch() instead of doing what it does manualy.Dan Gohman2009-03-091-12/+4
| | | | llvm-svn: 66467
* Don't use an induction variable type as a memory access type.Dan Gohman2009-03-091-3/+5
| | | | | | Use VoidTy instead, to be properly conservative. llvm-svn: 66463
* Factor out the code that determines the memory access typeDan Gohman2009-03-091-18/+29
| | | | | | of an instruction into a helper function. llvm-svn: 66460
* Add helper pass to remove llvm.dbg.declare intrinsics.Devang Patel2009-03-091-0/+62
| | | | llvm-svn: 66454
* Move the sorting of the StrideOrder array earlier so that it doesn'tDan Gohman2009-03-091-4/+3
| | | | | | have to be done twice. llvm-svn: 66449
* Delete the isOnlyStride argument, which is unused.Dan Gohman2009-03-091-9/+4
| | | | llvm-svn: 66446
* Tidy some LSR debug output: announce the loop it's about to processDan Gohman2009-03-091-6/+6
| | | | | | before it does any processing. llvm-svn: 66443
* ARM target now also recognize triplets like thumbv6-apple-darwin and set ↵Evan Cheng2009-03-092-14/+24
| | | | | | thumb mode and arch subversion. Eventually thumb triplets will go way and replaced with function notes. llvm-svn: 66435
* Fix PR3763 by using proper APInt methods instead of uint64_t's.Chris Lattner2009-03-091-3/+4
| | | | llvm-svn: 66434
* ARM isLegalAddressImmediate should check if type is a simple type now that ↵Evan Cheng2009-03-091-0/+3
| | | | | | optimizer can create values of funky scalar types. llvm-svn: 66429
* Yet another case where the spiller marked two uses of the same register on ↵Evan Cheng2009-03-091-19/+10
| | | | | | the same instruction as kill. This fixes PR3706. llvm-svn: 66428
* This debug info special case should no longerDuncan Sands2009-03-091-4/+0
| | | | | | | be needed now that these intrinsics are marked as not accessing memory. llvm-svn: 66420
* just remove the use_empty() check entirely, the only reason itChris Lattner2009-03-091-14/+8
| | | | | | | existed was for llvm-gcc 3.4 (which used the __main hack) which is really really long dead. llvm-svn: 66417
* Make the code generator rip of dead constant expr uses before decidingChris Lattner2009-03-091-10/+16
| | | | | | | | whether a global is dead or not. This should fix PR3749 - linker adds spurious use to appending globals. I can't reasonably add a testcase for this, because the bc writer/reader strip dead constant users. llvm-svn: 66404
* make GlobalValue::removeDeadConstantUsers() const.Chris Lattner2009-03-091-7/+7
| | | | llvm-svn: 66403
* Ignore debug intrinsics when computing dependences.Owen Anderson2009-03-091-0/+6
| | | | llvm-svn: 66399
* reimplement AliasSetTracker in terms of DenseMap instead of hash_map,Chris Lattner2009-03-092-43/+59
| | | | | | hopefully no functionality change. llvm-svn: 66398
* Pass in a std::string when getting the names of debugging things. This cuts downBill Wendling2009-03-097-53/+101
| | | | | | on the number of times a std::string is created and copied. llvm-svn: 66396
* fix Analysis/BasicAA/2004-12-08-BasicAACrash.ll by allowing opaque types.Chris Lattner2009-03-091-2/+4
| | | | llvm-svn: 66395
* Fix two classes of bugs. First:Chris Lattner2009-03-092-18/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | validate an invariant so that the asmparser rejects a bad construct instead of the verifier. Before: llvm-as: assembly parsed, but does not verify as correct! Invalid struct return type! i64 (%struct.Type*, %struct.Type*)* @foo after: llvm-as: t.ll:5:8: functions with 'sret' argument must return void define i64 @foo(%struct.Type* noalias nocapture sret %agg.result, %struct.Type* nocapture byval %t) nounwind { ^ Second, check that void is only used where allowed (in function return types) not in arbitrary places, fixing PR3747 - Crash in llvm-as with void field in struct. We now reject that example with: $ llvm-as t.ll llvm-as: t.ll:1:12: struct element can not have void type %x = type {void} ^ llvm-svn: 66394
OpenPOWER on IntegriCloud