summaryrefslogtreecommitdiffstats
path: root/llvm/test
Commit message (Collapse)AuthorAgeFilesLines
* Relax expressions and add explicit triplets -linux and -win32.NAKAMURA Takumi2011-02-221-11/+12
| | | | llvm-svn: 126203
* Relax expressions and add explicit triplets -linux and -win32.NAKAMURA Takumi2011-02-221-8/+9
| | | | llvm-svn: 126202
* Relax expressions and add explicit triplets -linux and -win32.NAKAMURA Takumi2011-02-221-3/+4
| | | | llvm-svn: 126201
* Relax expressions and add explicit triplets -linux and -win32.NAKAMURA Takumi2011-02-221-2/+2
| | | | llvm-svn: 126200
* Relax expressions and add explicit triplets -linux and -win32.NAKAMURA Takumi2011-02-221-3/+4
| | | | llvm-svn: 126199
* Relax expressions and add explicit triplets -linux and -win32.NAKAMURA Takumi2011-02-221-2/+3
| | | | llvm-svn: 126198
* Relax expressions and add explicit triplets -linux and -win32.NAKAMURA Takumi2011-02-221-7/+8
| | | | llvm-svn: 126197
* Relax expressions and add explicit triplets -linux and -win32.NAKAMURA Takumi2011-02-221-6/+7
| | | | llvm-svn: 126196
* test/CodeGen/X86/vec_cast.ll: Mark as XFAIL: migw,win32 for workaround of ↵NAKAMURA Takumi2011-02-221-1/+2
| | | | | | PR8311. llvm-svn: 126195
* test/CodeGen/X86/red-zone.ll: Add explicit -mtriple=x86_64-linux.NAKAMURA Takumi2011-02-221-1/+1
| | | | | | Redzone is not applicable on Win64. llvm-svn: 126194
* available_externally (hidden or not) GVs are always accessed via stubs. ↵Evan Cheng2011-02-221-0/+16
| | | | | | rdar://9027648. llvm-svn: 126191
* VirtRegRewriter assertion fix.Andrew Trick2011-02-221-0/+50
| | | | | | | Apparently it's ok for multiple operands to "kill" the same register. Fixes PR9237. llvm-svn: 126190
* Roll out r126169 and r126170 in an attempt to fix the selfhost bot.Cameron Zwarich2011-02-221-35/+0
| | | | llvm-svn: 126185
* Added a testcase for the enhanced disassembly bugSean Callanan2011-02-221-0/+4
| | | | | | | fixed in r126147, where a field in the X86 decode structure was being read as bits, not bytes. llvm-svn: 126182
* Fixed lit.cfg to no longer recognize the oldSean Callanan2011-02-221-1/+1
| | | | | | | edis name as needing expansion. This tool was been replaced by llvm-mc long ago. llvm-svn: 126180
* Merge information about the number of zero, one, and sign bits of live-out ↵Cameron Zwarich2011-02-221-0/+35
| | | | | | | | | registers at phis. This enables us to eliminate a lot of pointless zexts during the DAGCombine phase. This fixes <rdar://problem/8760114>. llvm-svn: 126170
* Recognize loopz and loopnz as aliases for loope and loopne.Joerg Sonnenberger2011-02-222-0/+16
| | | | | | From Dimitry Andric. llvm-svn: 126168
* Implement xgetbv and xsetbv.Rafael Espindola2011-02-221-0/+4
| | | | | | Patch by Jai Menon. llvm-svn: 126165
* Revert r125960, it's breaking darwin10 bootstrap.Eric Christopher2011-02-211-24/+0
| | | | llvm-svn: 126163
* Handle FK_PCRel_1 and add a test case for this and FK_PCRel_4.Joerg Sonnenberger2011-02-211-0/+33
| | | | llvm-svn: 126157
* Revert r124611 - "Keep track of incoming argument's location while emitting ↵Devang Patel2011-02-211-84/+0
| | | | | | | | | | | LiveIns." In other words, do not keep track of argument's location. The debugger (gdb) is not prepared to see line table entries for arguments. For the debugger, "second" line table entry marks beginning of function body. This requires some coordination with debugger to get this working. - The debugger needs to be aware of prolog_end attribute attached with line table entries. - The compiler needs to accurately mark prolog_end in line table entries (at -O0 and at -O1+) llvm-svn: 126155
* Add XCore intrinsics for various instructions on ports.Richard Osborne2011-02-211-0/+40
| | | | llvm-svn: 126132
* Test case for r126127. Radar 9012638.Stuart Hastings2011-02-211-0/+5
| | | | llvm-svn: 126131
* Target/X86/X86FastISel: [PR6275] Fix Win32's dllimport function with fastisel.NAKAMURA Takumi2011-02-211-0/+5
| | | | | | | "dllimport" function must not be GlobalVariable, but Function. It is enough to check with GlobalValue. test/CodeGen/X86/dll-linkage.ll is updated to check llc -O0. llvm-svn: 126110
* Generate correct Sparc32 ABI compliant code for functions that return a struct.Venkatraman Govindaraju2011-02-212-4/+5
| | | | llvm-svn: 126108
* The signed version of our "magic number" computation for the integer ↵Cameron Zwarich2011-02-211-1/+1
| | | | | | | | | | | | | approximation of a constant had a minor typo introduced when copying it from the book, which caused it to favor negative approximations over positive approximations in many cases. Positive approximations require fewer operations beyond the multiplication. In the case of division by 3, we still generate code that is a single instruction larger than GCC's code. llvm-svn: 126097
* Put targets on folders, if the IDE supports the feature.Oscar Fuentes2011-02-201-0/+2
| | | | | | Requires CMake 2.8.3 or newer. llvm-svn: 126092
* Add some limited support for labels in org directives. Hopefully enough to fixRafael Espindola2011-02-201-0/+13
| | | | | | PR9245. llvm-svn: 126091
* Make RecursivelyDeleteDeadPHINode delete a phi node that has no users and add aNick Lewycky2011-02-201-43/+0
| | | | | | | | | test for that. With this change, test/CodeGen/X86/codegen-dce.ll no longer finds any instructions to DCE, so delete the test. Also renamed J and JP to I and IP in RecursivelyDeleteDeadPHINode. llvm-svn: 126088
* InstCombine: Add a bunch of combines of the form x | (y ^ z).Benjamin Kramer2011-02-201-0/+94
| | | | | | | | | We usually catch this kind of optimization through InstSimplify's distributive magic, but or doesn't distribute over xor in general. "A | ~(A | B) -> A | ~B" hits 24 times on gcc.c. llvm-svn: 126081
* Fix 9267; Add vector zext support.Nadav Rotem2011-02-201-0/+69
| | | | | | | | The DAGCombiner folds the zext into complex load instructions. This patch prevents this optimization on vectors since none of the supported targets knows how to perform load+vector_zext in one instruction. llvm-svn: 126080
* Teach RecursivelyDeleteDeadPHINodes to handle multiple self-references. PatchNick Lewycky2011-02-201-1/+1
| | | | | | by Andrew Clinton! llvm-svn: 126077
* PR9218: SimplifyDemandedVectorElts can return a non-null value that is notEli Friedman2011-02-191-0/+11
| | | | | | | the instruction passed in. Make sure to account for this correctly, instead of looping infinitely. llvm-svn: 126058
* implement PR9264: disambiguating 'bt mem, imm' as a btl.Chris Lattner2011-02-191-0/+4
| | | | | | | This is reasonable to do since all bt-mem forms do the same thing. llvm-svn: 126047
* rewrite the memset_pattern pattern generation stuff to accept any 2/4/8/16-byteChris Lattner2011-02-191-2/+27
| | | | | | | | | | | | | | | | | | constant, including globals. This makes us generate much more "pretty" pattern globals as well because it doesn't break it down to an array of bytes all the time. This enables us to handle stores of relocatable globals. This kicks in about 48 times in 254.gap, giving us stuff like this: @.memset_pattern40 = internal constant [2 x %struct.TypHeader* (%struct.TypHeader*, %struct.TypHeader*)*] [%struct.TypHeader* (%struct.TypHeader*, %struct .TypHeader*)* @IsFalse, %struct.TypHeader* (%struct.TypHeader*, %struct.TypHeader*)* @IsFalse], align 16 ... call void @memset_pattern16(i8* %scevgep5859, i8* bitcast ([2 x %struct.TypHeader* (%struct.TypHeader*, %struct.TypHeader*)*]* @.memset_pattern40 to i8* ), i64 %tmp75) nounwind llvm-svn: 126044
* Stores of null pointers should turn into memset, we weren't recognizingChris Lattner2011-02-191-0/+22
| | | | | | them as splat values. llvm-svn: 126041
* Implement rdar://9009151, transforming strided loop stores ofChris Lattner2011-02-191-0/+27
| | | | | | | | | | | unsplatable values into memset_pattern16 when it is available (recent darwins). This transforms lots of strided loop stores of ints for example, like 5 in vpr: Formed memset: call void @memset_pattern16(i8* %4, i8* getelementptr inbounds ([16 x i8]* @.memset_pattern9, i32 0, i32 0), i64 %tmp25) from store to: {%3,+,4}<%11> at: store i32 3, i32* %scevgep, align 4, !tbaa !4 llvm-svn: 126040
* DIE numbers do not add any value in this test. Devang Patel2011-02-191-5/+5
| | | | llvm-svn: 126008
* Do not lose debug info of an inlined function argument even if the argument ↵Devang Patel2011-02-181-0/+86
| | | | | | | | is only used through GEPs. This time with a fix that avoids using invalidated DenseMap iterator. llvm-svn: 125984
* Reapply r114997 now that the buildbots have been updated.Bill Wendling2011-02-181-0/+24
| | | | llvm-svn: 125960
* Add assembly parsing support for "msr" and also fix its encoding. Also addBruno Cardoso Lopes2011-02-184-0/+67
| | | | | | testcases for the disassembler to make sure it still works for "msr". llvm-svn: 125948
* Add some transforms of the kind X-Y>X -> 0>Y which are valid when there is noDuncan Sands2011-02-182-2/+126
| | | | | | overflow. These subsume some existing equality transforms, so zap those. llvm-svn: 125843
* add a testcase for r125827Chris Lattner2011-02-181-0/+24
| | | | llvm-svn: 125831
* Roll out r125794 to help diagnose the llvm-gcc-i386-linux-selfhost failure.Cameron Zwarich2011-02-181-86/+0
| | | | llvm-svn: 125830
* prevent jump threading from merging blocks when their address isChris Lattner2011-02-181-1/+34
| | | | | | | | | | | | | | | | | taken (and used!). This prevents merging the blocks (invalidating the block addresses) in a case like this: #define _THIS_IP_ ({ __label__ __here; __here: (unsigned long)&&__here; }) void foo() { printf("%p\n", _THIS_IP_); printf("%p\n", _THIS_IP_); printf("%p\n", _THIS_IP_); } which fixes PR4151. llvm-svn: 125829
* Recognize monitor/mwait with explicit register argumentsJoerg Sonnenberger2011-02-182-0/+18
| | | | llvm-svn: 125805
* Recognize leavel and leaveq aliases for leave.Joerg Sonnenberger2011-02-172-0/+14
| | | | | | Validate encoding of leave in 64bit mode. llvm-svn: 125795
* Do not lose debug info of an inlined function argument even if the argument ↵Devang Patel2011-02-171-0/+86
| | | | | | is only used through GEPs. llvm-svn: 125794
* have instcombine preserve nsw/nuw/exact when sinkingChris Lattner2011-02-171-0/+18
| | | | | | common operations through a phi. llvm-svn: 125790
* fix instcombine merging GEPs through a PHI to only make theChris Lattner2011-02-171-2/+3
| | | | | | result inbounds if all of the inputs are inbounds. llvm-svn: 125785
OpenPOWER on IntegriCloud