summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
...
* Teach SCEVExpander to expand arithmetic involving pointers into GEPDan Gohman2009-05-199-72/+270
| | | | | | | | | | | | | | | | instructions. It attempts to create high-level multi-operand GEPs, though in cases where this isn't possible it falls back to casting the pointer to i8* and emitting a GEP with that. Using GEP instructions instead of ptrtoint+arithmetic+inttoptr helps pointer analyses that don't use ScalarEvolution, such as BasicAliasAnalysis. Also, make the AddrModeMatcher more aggressive in handling GEPs. Previously it assumed that operand 0 of a GEP would require a register in almost all cases. It now does extra checking and can do more matching if operand 0 of the GEP is foldable. This fixes a problem that was exposed by SCEVExpander using GEPs. llvm-svn: 72093
* Test commit.Cristian Cadar2009-05-191-1/+1
| | | | llvm-svn: 72092
* Add some comments noting how IndVarSimplify facilitatesDan Gohman2009-05-191-0/+6
| | | | | | LoopInfo functionality. llvm-svn: 72091
* Make using an unsupported CAS size a hard error on Windows.Owen Anderson2009-05-191-1/+3
| | | | llvm-svn: 72088
* Fix up the Windows portion of Atomic.h. This is untested, but it is my best ↵Owen Anderson2009-05-191-1/+14
| | | | | | | | understanding of what should work. I'd be much obliged if someone on MSVC++ could try this out and let me know if it works. llvm-svn: 72087
* Template CompareAndSwap function.Owen Anderson2009-05-191-9/+12
| | | | llvm-svn: 72086
* Spacing fix.Dale Johannesen2009-05-191-1/+1
| | | | llvm-svn: 72083
* Fix cmake builds.Mike Stump2009-05-192-0/+6
| | | | llvm-svn: 72078
* Now that we have atomics support properly detected by configure,Owen Anderson2009-05-192-157/+23
| | | | | | | | use it to implement Atomic.h. This expunges the code previously imported from libatomic_ops. llvm-svn: 72077
* Test for the presence of GCC atomic builtins at configure time. If not found,Owen Anderson2009-05-182-30/+119
| | | | | | | | disable building LLVM in thread-safe mode and print a nice warning. Regenerate configure for these changes. llvm-svn: 72075
* Add -submit-aux option to NewNightlyTest.plDaniel Dunbar2009-05-181-0/+8
| | | | | | | - If given, the argument will be run using system with the path to the sent data. Useful for testing nightlytest server replacements. llvm-svn: 72070
* Don't set the "location" information for inlined functions' variables.Bill Wendling2009-05-181-7/+16
| | | | llvm-svn: 72064
* Small code cleanup.Bill Wendling2009-05-181-9/+4
| | | | llvm-svn: 72057
* Update a comment to reflect changes in the surrounding code.Dan Gohman2009-05-181-1/+1
| | | | llvm-svn: 72051
* Add short descriptions of 'implicit' and 'parallel'.Evan Cheng2009-05-181-0/+7
| | | | llvm-svn: 72050
* RecordVariable is called each time a DECLARE node is encountered. For an inlinedBill Wendling2009-05-182-9/+39
| | | | | | | | function, this could be many, many times. We don't want to re-add variables to that DIE for each time. We just want to add them once. Check to make sure that we haven't added them already. llvm-svn: 72047
* Add OpSize to 16-bit ADC and SBB.Dale Johannesen2009-05-181-14/+24
| | | | llvm-svn: 72045
* Add missing file.Argyrios Kyrtzidis2009-05-181-0/+51
| | | | llvm-svn: 72042
* Allow the JIT ExecutionEngine to report details about the generated machine ↵Argyrios Kyrtzidis2009-05-184-6/+42
| | | | | | | | | | code. Introduce a new class (MachineCodeInfo) that the JIT can fill in with details. Right now, just the address and the size of the machine code are reported. Patch by Evan Phoenix! llvm-svn: 72040
* Fix CodePlacementOpt::OptimizeIntraLoopEdges so that its return valueBob Wilson2009-05-181-0/+2
| | | | | | correctly indicates whether it changed the code. llvm-svn: 72038
* Fix pr4202: Disable CodePlacementOpt for ARM. The ARMConstantIslandPass hasBob Wilson2009-05-181-1/+4
| | | | | | | | | to run last because it needs to know the exact size and position of every basic block. Currently CodePlacementOpt is set up to run last. It might be worthwhile to investigate reordering these passes, but for now, let's just make it work. llvm-svn: 72037
* New Spiller interface and trivial implementation.Lang Hames2009-05-183-2/+262
| | | | llvm-svn: 72030
* Revert r72025. It is possible for clients to convert between signed typesDan Gohman2009-05-181-3/+0
| | | | | | | and pointer types safely if they only do so when the sizes are the same. llvm-gcc is such a client. llvm-svn: 72029
* Remove getType() overrides for ExtractValueInst and InsertValueInst.Eric Christopher2009-05-181-10/+0
| | | | | | Patch by John McCall. llvm-svn: 72028
* Revert last commit. It was wrong.Bill Wendling2009-05-181-2/+1
| | | | llvm-svn: 72026
* Add assertions to CastInst::getCastOpcode to catch attempted conversionsDan Gohman2009-05-181-0/+3
| | | | | | | | between integers and pointers when the source type is marked signed, since inttoptr and ptrtoint always use zero-extension when the destination is larger than the source. llvm-svn: 72025
* Don't call RegionInlinedFnEnd if our optimization level isn't -O0.Bill Wendling2009-05-181-1/+2
| | | | llvm-svn: 72024
* Commands beginning with '--' are converted to '-f' by gcc. Blech!Bill Wendling2009-05-181-1/+1
| | | | llvm-svn: 72023
* Fill in the missing patterns for ADC and SBB.Dale Johannesen2009-05-181-14/+97
| | | | | | Some comment cleanup. llvm-svn: 72022
* termios.h contains the winsize structure we need to determine theDouglas Gregor2009-05-186-5/+16
| | | | | | | width of a terminal. Don't try to get the width of a terminal if we don't have this header. llvm-svn: 72018
* Rename UseTy to AccessTy, for consistency with getAccessType, and toDan Gohman2009-05-181-24/+25
| | | | | | avoid ambiguity with the word "use" in IVStrideUse. llvm-svn: 72012
* Silence Release-Asserts warnings.Daniel Dunbar2009-05-183-6/+11
| | | | llvm-svn: 72011
* Teach ScalarEvolution to recognize x^-1 in the case where non-demandedDan Gohman2009-05-182-0/+21
| | | | | | bits have been stripped out by instcombine. llvm-svn: 72010
* Delete a redundant 'else'.Dan Gohman2009-05-181-1/+1
| | | | llvm-svn: 72009
* Fix ScalarEvolution::isLoopGuardedByCond to accept a null Loop*, forDan Gohman2009-05-181-0/+4
| | | | | | | consistency with other routines that use a null Loop* to mean code not contained by any loop. llvm-svn: 72008
* Minor code cleanups. Do more of the work before the if statementsDan Gohman2009-05-181-16/+21
| | | | | | instead of within their controlling expressions. llvm-svn: 72007
* Add assertion checks to the SCEV operator creation methods to catchDan Gohman2009-05-181-0/+34
| | | | | | type mismatches. llvm-svn: 72006
* Make ScalarEvolution::isLoopGuardedByCond work even when the edgeDan Gohman2009-05-183-14/+32
| | | | | | entering a loop is a non-split critical edge. llvm-svn: 72004
* Add an isOne() utility function to ScalarEvolution, similar to isZero()Dan Gohman2009-05-182-1/+10
| | | | | | and similar to ConstantInt's isOne(). llvm-svn: 72003
* Add nounwind to a few tests.Dan Gohman2009-05-186-6/+6
| | | | llvm-svn: 72002
* Tweak MemoryBuffer::getSTDIN so that it returns after the first EOF. Eli Friedman2009-05-181-3/+6
| | | | | | | It doesn't matter for piped input, but it's annoying when typing at the console. llvm-svn: 71998
* Fix a compile warning.Daniel Dunbar2009-05-181-1/+1
| | | | llvm-svn: 71993
* Prevented reg0 from being added to MBB live-in set, which was causing issuesLang Hames2009-05-171-0/+5
| | | | | | for PostRAScheduler. llvm-svn: 71991
* Rename MachineVerifier pass to avoid command line collision.Jakob Stoklund Olesen2009-05-171-1/+1
| | | | llvm-svn: 71987
* Check that the gcc front-end is not doing inliningDuncan Sands2009-05-171-0/+17
| | | | | | when not doing unit-at-a-time. llvm-svn: 71986
* Mark rotl/rotr as expand. This generates pretty ugly code, but this is ↵Anton Korobeynikov2009-05-172-0/+21
| | | | | | better than nothing. llvm-svn: 71976
* TypoAnton Korobeynikov2009-05-173-3/+18
| | | | llvm-svn: 71975
* Formatting. Some updating of data structures. More work needs to be done to ↵Bill Wendling2009-05-171-499/+613
| | | | | | update the examples. llvm-svn: 71974
* Significantly improve Atomic.h by pulling in code from libatomic_ops by HP. ↵Owen Anderson2009-05-172-40/+159
| | | | | | This is a little outdated, but reasonably complete. llvm-svn: 71973
* Remove the volatile marker from the cas_flag typedef, fixing some warnings. Owen Anderson2009-05-161-2/+2
| | | | | | It's now the client's resposibility to add it in when needed llvm-svn: 71959
OpenPOWER on IntegriCloud