summaryrefslogtreecommitdiffstats
path: root/llvm/test
Commit message (Collapse)AuthorAgeFilesLines
* Testcase for llvm-gcc patch 85284.Dale Johannesen2009-10-271-0/+42
| | | | llvm-svn: 85287
* add enough support for indirect branch for the feature test to passChris Lattner2009-10-271-0/+11
| | | | | | | (assembler,asmprinter, bc reader+writer) and document it. Codegen currently aborts on it. llvm-svn: 85274
* Add missing testcase.Rafael Espindola2009-10-271-0/+14
| | | | llvm-svn: 85266
* change of mind :)Chris Lattner2009-10-271-0/+0
| | | | llvm-svn: 85258
* rename test.Chris Lattner2009-10-271-0/+0
| | | | llvm-svn: 85256
* Convert Analysis tests to FileCheck in regards to PR5307.Edward O'Callaghan2009-10-275-7/+17
| | | | llvm-svn: 85241
* Fix Thumb2 failures by converting them to FileCheck.Bob Wilson2009-10-275-8/+36
| | | | llvm-svn: 85210
* Fix the rest of the ARM failures by converting them to FileCheck.Bob Wilson2009-10-277-39/+74
| | | | llvm-svn: 85208
* Fix some more failures by converting to FileCheck.Bob Wilson2009-10-277-23/+44
| | | | llvm-svn: 85207
* Fix a pretty serious misfeature of the inliner: if it inlines a functionChris Lattner2009-10-271-1/+32
| | | | | | | | | | with multiple return values it inserts a PHI to merge them all together. However, if the return values are all the same, it ends up with a pointless PHI and this pointless PHI happens to really block SRoA from happening in at least a silly C++ example written by Doug, but probably others. This fixes rdar://7339069. llvm-svn: 85206
* convert to filecheck.Chris Lattner2009-10-271-5/+8
| | | | llvm-svn: 85205
* Convert to FileCheck, fixing failure due to tab change in the process.Bob Wilson2009-10-271-4/+3
| | | | llvm-svn: 85204
* Convert a few tests to FileCheck for PR5307.Edward O'Callaghan2009-10-263-4/+33
| | | | llvm-svn: 85171
* Code that checks WillNotOverflowSignedAdd before creating an AddDan Gohman2009-10-262-2/+2
| | | | | | can safely use the NSW bit on the Add. llvm-svn: 85164
* Teach BasicAA how to analyze Select instructions, and make it moreDan Gohman2009-10-261-0/+73
| | | | | | aggressive on PHI instructions. llvm-svn: 85158
* Break anti-dependence breaking out into its own class.David Goodwin2009-10-261-2/+2
| | | | llvm-svn: 85127
* reapply r85085 with a bugfix to avoid infinite looping.Chris Lattner2009-10-261-1/+0
| | | | | | | All of the 'demorgan' related xforms need to use dyn_castNotVal, not m_Not. llvm-svn: 85119
* Make LSR's OptimizeShadowIV ignore induction variables with negativeDan Gohman2009-10-261-0/+25
| | | | | | | | | | strides for now, because it doesn't handle them correctly. This fixes a miscompile of SingleSource/Benchmarks/Misc-C++/ray. This problem was usually hidden because indvars transforms such induction variables into negations of canonical induction variables. llvm-svn: 85118
* - Revert some changes from 85044, 85045, and 85047 that broke x86_64 tests andEvan Cheng2009-10-261-0/+171
| | | | | | | | | | | | | | | | | | | | | | | | | | bootstrapping. It's not safe to leave identity subreg_to_reg and insert_subreg around. - Relax register scavenging to allow use of partially "not-live" registers. It's common for targets to operate on registers where the top bits are undef. e.g. s0 = d0 = insert_subreg d0<undef>, s0, 1 ... = d0 When the insert_subreg is eliminated by the coalescer, the scavenger used to complain. The previous fix was to keep to insert_subreg around. But that's brittle and it's overly conservative when we want to use the scavenger to allocate registers. It's actually legal and desirable for other instructions to use the "undef" part of d0. e.g. s0 = d0 = insert_subreg d0<undef>, s0, 1 ... s1 = = s1 = d0 We probably need add a "partial-undef" marker on machine operand so the machine verifier would not complain. llvm-svn: 85091
* Revert 85085. It causes infinite looping during llvm-gcc build.Evan Cheng2009-10-261-0/+1
| | | | llvm-svn: 85090
* Fix gmake check for AuroraUX triple.Edward O'Callaghan2009-10-261-2/+6
| | | | llvm-svn: 85088
* Implement PR3266 & PR5276, folding:Chris Lattner2009-10-262-13/+16
| | | | | | not (or (icmp, icmp)) -> and(icmp, icmp) llvm-svn: 85085
* convert or.ll to filecheck and merge or2 into it.Chris Lattner2009-10-252-71/+128
| | | | llvm-svn: 85083
* fix PR5295 where the .ll parser didn't reject a function after a globalChris Lattner2009-10-252-2/+2
| | | | | | | or global after a function with conflicting names. Update some testcases that were accidentally depending on this behavior. llvm-svn: 85081
* Add a couple of ARM cross-rc coalescing tests.Evan Cheng2009-10-252-0/+119
| | | | llvm-svn: 85051
* Update tests.Evan Cheng2009-10-252-6/+11
| | | | llvm-svn: 85050
* Add a test for OptionPreprocessor.Mikhail Glushenkov2009-10-251-0/+42
| | | | llvm-svn: 85029
* Update these tests to match what Loop::print now prints.Dan Gohman2009-10-242-2/+2
| | | | llvm-svn: 85021
* Make these tests more interesting by usingDan Gohman2009-10-2414-14/+14
| | | | | | | -verify-dom-info and -verify-loop-info, which enable additional (expensive) consistency checks. llvm-svn: 85017
* Teach macho-dump to dump UUIDs.Daniel Dunbar2009-10-241-0/+3
| | | | llvm-svn: 85012
* fix PR5287, a serious regression from my previous patches. Thanks toChris Lattner2009-10-241-24/+38
| | | | | | Duncan for the nice tiny testcase. llvm-svn: 84992
* Auto-upgrade free instructions to calls to the builtin free function.Victor Hernandez2009-10-245-43/+4
| | | | | | | Update all analysis passes and transforms to treat free calls just like FreeInst. Remove RaiseAllocations and all its tests since FreeInst no longer needs to be raised. llvm-svn: 84987
* APInt-ify the gep scaling code, so that it correctly handles the case whereDan Gohman2009-10-231-0/+12
| | | | | | the scale overflows pointer-sized arithmetic. This fixes PR5281. llvm-svn: 84954
* Make LoopDeletion check the maximum backedge taken count, rather than theDan Gohman2009-10-231-0/+27
| | | | | | | exact backedge taken count, when checking for infinite loops. This allows it to delete loops with multiple exit conditions. llvm-svn: 84952
* teach libanalysis to simplify vector loads with bitcast sources. ThisChris Lattner2009-10-231-0/+10
| | | | | | | | | | | | | | | | | | | | | | implements something out of Target/README.txt producing: _foo: ## @foo movl 4(%esp), %eax movapd LCPI1_0, %xmm0 movapd %xmm0, (%eax) ret $4 instead of: _foo: ## @foo movl 4(%esp), %eax movapd _b, %xmm0 mulpd LCPI1_0, %xmm0 addpd _a, %xmm0 movapd %xmm0, (%eax) ret $4 llvm-svn: 84942
* enhance FoldReinterpretLoadFromConstPtr to handle loads of up to 32 Chris Lattner2009-10-231-0/+11
| | | | | | bytes (i256). llvm-svn: 84941
* teach libanalysis to fold int and fp loads from almost arbitraryChris Lattner2009-10-231-0/+68
| | | | | | | | | | | | | | | | | | | non-type-safe constant initializers. This sort of thing happens quite a bit for 4-byte loads out of string constants, unions, bitfields, and an interesting endianness check from sqlite, which is something like this: const int sqlite3one = 1; # define SQLITE_BIGENDIAN (*(char *)(&sqlite3one)==0) # define SQLITE_LITTLEENDIAN (*(char *)(&sqlite3one)==1) # define SQLITE_UTF16NATIVE (SQLITE_BIGENDIAN?SQLITE_UTF16BE:SQLITE_UTF16LE) all of these macros now constant fold away. This implements PR3152 and is based on a patch started by Eli, but heavily modified and extended. llvm-svn: 84936
* Update tests for 84931.Evan Cheng2009-10-237-14/+14
| | | | llvm-svn: 84932
* This is passing on Darwin PPC.Bill Wendling2009-10-231-1/+1
| | | | llvm-svn: 84921
* Allow the target to select the level of anti-dependence breaking that should ↵David Goodwin2009-10-227-14/+14
| | | | | | be performed by the post-RA scheduler. The default is none. llvm-svn: 84911
* Revert 84843. Evan, this was breaking some of the if-conversion tests.Bob Wilson2009-10-221-2/+1
| | | | llvm-svn: 84868
* Check that accessing a struct field that occurs before the startDuncan Sands2009-10-221-0/+6
| | | | | | of the struct (!) works correctly. llvm-svn: 84853
* Test handling of record fields with negative offsets.Duncan Sands2009-10-221-0/+10
| | | | llvm-svn: 84851
* Move if-conversion before post-regalloc scheduling so the predicated ↵Evan Cheng2009-10-221-1/+2
| | | | | | instruction get scheduled properly. llvm-svn: 84843
* testcase for PR4678 & rdar://7309675Chris Lattner2009-10-222-5/+19
| | | | llvm-svn: 84830
* Don't generate sbfx / ubfx with negative lsb field. Patch by David Conrad.Evan Cheng2009-10-221-0/+10
| | | | llvm-svn: 84813
* fix PR5262.Chris Lattner2009-10-221-1/+27
| | | | llvm-svn: 84810
* Use special DAG-to-DAG preprocessing to allow mem-mem instructions to be ↵Anton Korobeynikov2009-10-222-2/+0
| | | | | | | | selected. Yay for ASCII graphics! llvm-svn: 84808
* Revert the main portion of r31856. It was causing BranchFoldingDan Gohman2009-10-223-9/+9
| | | | | | | | | | | | to break up CFG diamonds by banishing one of the blocks to the end of the function, which is bad for code density and branch size. This does pessimize MultiSource/Benchmarks/Ptrdist/yacr2, the benchmark cited as the reason for the change, however I've examined the code and it looks more like a case of gaming a particular branch than of being generally applicable. llvm-svn: 84803
* revert r84754, it isn't the right approach. Edwin, please propose Chris Lattner2009-10-211-54/+0
| | | | | | patches for fixes like this instead of committing them directly. llvm-svn: 84799
OpenPOWER on IntegriCloud