summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
...
* Teach AsmWriter to write inline (not via a global metadata slot) metadata ↵Victor Hernandez2009-12-041-1/+25
| | | | | | that contains an instruction llvm-svn: 90512
* Fix a comment typo.Bob Wilson2009-12-041-1/+1
| | | | llvm-svn: 90511
* Add some helpers for Invoke to mirror CreateCall helpers.Mike Stump2009-12-041-0/+13
| | | | llvm-svn: 90508
* add an assert to make it really clear what this is doing. Return singularval asChris Lattner2009-12-041-1/+5
| | | | | | a compile time perf optimization to avoid a load. llvm-svn: 90507
* Also attempt trivial coalescing for live intervals that end in a copy.Jakob Stoklund Olesen2009-12-045-53/+103
| | | | | | | | | | | | | The coalescer is supposed to clean these up, but when setting up parameters for a function call, there may be copies to physregs. If the defining instruction has been LICM'ed far away, the coalescer won't touch it. The register allocation hint does not always work - when the register allocator is backtracking, it clears the hints. This patch takes care of a few more cases that r90163 missed. llvm-svn: 90502
* - If the reaching definition is an undef and the use is a PHI, add the ↵Evan Cheng2009-12-041-11/+15
| | | | | | | | implicit_def to the end of the source block. - When reaching value is replaced with another, update the cache as well. llvm-svn: 90501
* Insert composite type DIE into the map before processing type fields. This ↵Devang Patel2009-12-031-1/+1
| | | | | | allows fields to find their context DIE from the map. llvm-svn: 90498
* Add ParseInlineMetadata() which can parses metadata that refers to an ↵Victor Hernandez2009-12-032-8/+49
| | | | | | instruction. Extend ParseParameterList() to use this new function so that calls to llvm.dbg.declare can pass inline metadata llvm-svn: 90497
* remove out of date FIXME.Jim Grosbach2009-12-031-1/+0
| | | | llvm-svn: 90490
* Handle undef values properly.Evan Cheng2009-12-031-15/+38
| | | | llvm-svn: 90489
* Watch out for PHI instruction with no source operands.Evan Cheng2009-12-031-0/+2
| | | | llvm-svn: 90488
* Fix a comment typo.Bob Wilson2009-12-031-1/+1
| | | | llvm-svn: 90487
* Fix ExpandShiftWithUnknownAmountBit, which was completely bogus.Duncan Sands2009-12-031-37/+38
| | | | | | | | | | | | Pointed out by Javier Martinez (who also provided a patch). Since this logic is not used on (for example) x86, I guess nobody noticed. Tested by generating SHL, SRL, SRA on various choices of i64 for all possible shift amounts, and comparing with gcc. Since I did this on x86-32, I had to force the use of ExpandShiftWithUnknownAmountBit. What I'm saying here is that I don't have a testcase I can add to the repository. llvm-svn: 90482
* Clean up some loop logic.Jakob Stoklund Olesen2009-12-031-14/+6
| | | | llvm-svn: 90481
* Add support to emit debug info for virtual functions and virtual base classes.Devang Patel2009-12-034-10/+73
| | | | llvm-svn: 90474
* Print a newline after the Args: line so that unrelated errs() output doesn'tDan Gohman2009-12-031-1/+2
| | | | | | end up on the same line. llvm-svn: 90473
* Fix MSVC build.Benjamin Kramer2009-12-031-1/+1
| | | | llvm-svn: 90454
* Convert ProfileVerifier to template so it can be used for different types of ↵Andreas Neustifter2009-12-031-243/+276
| | | | | | ProfileInfo. llvm-svn: 90451
* Do not create negative edge weights in ProfileEstimator.Andreas Neustifter2009-12-031-21/+125
| | | | | | | Use integer values for weights to prevent rounding errors. Make ProfileEstimator more robust in general CFGs. llvm-svn: 90449
* Add an implementation of the delta debugging algorithm.Daniel Dunbar2009-12-034-0/+296
| | | | | | | - This is a pretty slow / memory intensive implementation, and I will likely change it to an iterative model, but it works. llvm-svn: 90447
* Use ProfileInfo-API in ProfileInfo Loader and do more assertions.Andreas Neustifter2009-12-032-46/+11
| | | | llvm-svn: 90446
* Converted ProfileInfo to template, added more API for ProfileInfo-preserving.Andreas Neustifter2009-12-032-74/+1071
| | | | llvm-svn: 90445
* Teach tail duplication to update SSA form. Work in progress.Evan Cheng2009-12-031-3/+134
| | | | llvm-svn: 90432
* expand note.Chris Lattner2009-12-031-0/+15
| | | | llvm-svn: 90429
* add a noteChris Lattner2009-12-031-0/+32
| | | | llvm-svn: 90428
* Don't pull vector sext through both hands of a logical operation, since ↵Nate Begeman2009-12-032-2/+37
| | | | | | | | | doing so prevents the fusion of vector sext and setcc into vsetcc. Add a testcase for the above transformation. Fix a bogus use of APInt noticed while tracking this down. llvm-svn: 90423
* fix a build problem with VC++, PR5664, patch by Alp Toker!Chris Lattner2009-12-031-2/+4
| | | | llvm-svn: 90419
* Recognize canonical forms of vector shuffles where the same vector is used forBob Wilson2009-12-032-1/+106
| | | | | | | | both source operands. In the canonical form, the 2nd operand is changed to an undef and the shuffle mask is adjusted to only reference elements from the 1st operand. Radar 7434842. llvm-svn: 90417
* Don't call getValueType() on a null SDValueJakob Stoklund Olesen2009-12-031-1/+2
| | | | llvm-svn: 90415
* Fix this crasher, and add a FIXME for a missed optimization.Owen Anderson2009-12-032-1/+10
| | | | llvm-svn: 90408
* Fill out codegen SSA updater. It's not yet tested.Evan Cheng2009-12-034-15/+270
| | | | llvm-svn: 90395
* Revert r90371. It was causing build failures.Bill Wendling2009-12-031-23/+42
| | | | llvm-svn: 90383
* Don't hang on to pointers or references after vector::push_back.Jakob Stoklund Olesen2009-12-031-6/+3
| | | | | | | The MO reference to a MachineOperand can be invalidated by MachineInstr::addOperand. Don't even use it for debugging. llvm-svn: 90381
* add a failing testcase.Chris Lattner2009-12-031-0/+44
| | | | llvm-svn: 90380
* Emit method definition DIE at module level (even for methods with inlined ↵Devang Patel2009-12-032-28/+90
| | | | | | functino body at soure level) so that the debugger can invoke it. This fixes many test failures in gdb test suite. llvm-svn: 90375
* Further improvements: refactoring code that does the same thing into oneBill Wendling2009-12-031-42/+23
| | | | | | | function, converting "dyn_cast" to "cast", asserting the correct things, and other general cleanups. llvm-svn: 90371
* yay for case insensitive file systems (?)Chris Lattner2009-12-031-1/+1
| | | | llvm-svn: 90370
* fix PR5673 by being more careful about pointers to functions.Chris Lattner2009-12-032-3/+21
| | | | llvm-svn: 90369
* remove some dead std::ostream using code.Chris Lattner2009-12-032-11/+0
| | | | llvm-svn: 90366
* improve portability to avoid conflicting with std::next in c++'0x.Chris Lattner2009-12-0345-106/+116
| | | | | | Patch by Howard Hinnant! llvm-svn: 90365
* This initial code is meant to convert TargetData to use an AbstractTypesUser soBill Wendling2009-12-032-61/+39
| | | | | | | | | that it doesn't have dangling pointers when abstract types are resolved. This modifies it somewhat to address comments: making the "StructLayoutMap" an anonymous structure, calling "removeAbstractTypeUser" when appropriate, and adding asserts where helpful. llvm-svn: 90362
* Fix CMake makefilesDouglas Gregor2009-12-021-0/+1
| | | | llvm-svn: 90354
* Skeleton for MachineInstr level SSA updater.Evan Cheng2009-12-022-0/+207
| | | | llvm-svn: 90353
* Remove unnecessary check.Bill Wendling2009-12-021-1/+0
| | | | llvm-svn: 90352
* Add MaxStackAlignment.cpp to CMakeJim Grosbach2009-12-021-0/+1
| | | | llvm-svn: 90337
* Factor the stack alignment calculations out into a target independent pass.Jim Grosbach2009-12-029-133/+93
| | | | | | No functionality change. llvm-svn: 90336
* Don't count PHI instructions toward the limit for tail duplicating a block.Bob Wilson2009-12-021-4/+6
| | | | llvm-svn: 90326
* Move EliminateDuplicatePHINodes() from SimplifyCFG.cpp to Local.cppJim Grosbach2009-12-022-63/+62
| | | | llvm-svn: 90324
* Cheap, mostly strict, stable sorting.Andreas Neustifter2009-12-021-0/+13
| | | | | | This is necessary for tests so the results are comparable. llvm-svn: 90320
* Silence compiler warnings.Benjamin Kramer2009-12-021-2/+2
| | | | llvm-svn: 90319
OpenPOWER on IntegriCloud