llvm-6502/test/CodeGen/X86
Evan Cheng ab26227c8c - Fix a x86 vector isel bug: illegal transformation of a vector_shuffle into a
shift.
- Add a readme entry for a missing vector_shuffle optimization that results in
  awful codegen.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52740 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-25 20:52:59 +00:00
..
2002-12-23-LocalRAProblem.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
2002-12-23-SubProblem.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
2003-08-03-CallArgLiveRanges.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
2003-08-23-DeadBlockTest.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
2003-11-03-GlobalBool.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
2004-02-12-Memcpy.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
2004-02-13-FrameReturnAddress.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
2004-02-14-InefficientStackPointer.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
2004-02-22-Casts.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
2004-03-30-Select-Max.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
2004-04-09-SameValueCoalescing.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
2004-04-13-FPCMOV-Crash.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
2004-06-10-StackifierCrash.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
2004-10-08-SelectSetCCFold.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
2005-01-17-CycleInDAG.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2005-02-14-IllegalAssembler.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2005-05-08-FPStackifierPHI.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-01-19-ISelFoldingBug.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-03-01-InstrSchedBug.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-03-02-InstrSchedBug.ll Remove -unwind-tables-optional everywhere, since 2008-04-14 17:56:54 +00:00
2006-04-04-CrossBlockCrash.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-04-27-ISelFoldingBug.ll Convert several tests to use temporary files instead of redundantly 2008-06-10 00:36:41 +00:00
2006-05-01-SchedCausingSpills.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-05-02-InstrSched1.ll Remove -unwind-tables-optional everywhere, since 2008-04-14 17:56:54 +00:00
2006-05-02-InstrSched2.ll Remove -unwind-tables-optional everywhere, since 2008-04-14 17:56:54 +00:00
2006-05-08-CoalesceSubRegClass.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-05-08-InstrSched.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-05-11-InstrSched.ll Undo spill weight tweak. Need to investigate the performance regressions. 2008-06-21 06:45:54 +00:00
2006-05-17-VectorArg.ll Add nounwind. 2008-05-07 22:59:08 +00:00
2006-05-22-FPSetEQ.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-05-25-CycleInDAG.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-07-10-InlineAsmAConstraint.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-07-12-InlineAsmQConstraint.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-07-19-ATTAsm.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-07-20-InlineAsm.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-07-28-AsmPrint-Long-As-Pointer.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-07-31-SingleRegClass.ll Convert several tests to use temporary files instead of redundantly 2008-06-10 00:36:41 +00:00
2006-08-07-CycleInDAG.ll
2006-08-16-CycleInDAG.ll
2006-08-21-ExtraMovInst.ll
2006-09-01-CycleInDAG.ll
2006-10-02-BoolRetCrash.ll
2006-10-07-ScalarSSEMiscompile.ll
2006-10-09-CycleInDAG.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-10-10-FindModifiedNodeSlotBug.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-10-12-CycleInDAG.ll
2006-10-13-CycleInDAG.ll
2006-10-19-SwitchUnnecessaryBranching.ll
2006-11-12-CSRetCC.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
2006-11-17-IllegalMove.ll Convert several tests to use temporary files instead of redundantly 2008-06-10 00:36:41 +00:00
2006-11-27-SelectLegalize.ll
2006-11-28-Memcpy.ll
2006-12-19-IntelSyntax.ll
2007-01-08-InstrSched.ll
2007-01-13-StackPtrIndex.ll Convert several tests to use temporary files instead of redundantly 2008-06-10 00:36:41 +00:00
2007-01-29-InlineAsm-ir.ll
2007-02-04-OrAddrMode.ll
2007-02-19-LiveIntervalAssert.ll
2007-02-25-FastCCStack.ll
2007-03-01-SpillerCrash.ll
2007-03-15-GEP-Idx-Sink.ll
2007-03-16-InlineAsm.ll
2007-03-18-LiveIntervalAssert.ll
2007-03-24-InlineAsmMultiRegConstraint.ll
2007-03-24-InlineAsmPModifier.ll
2007-03-24-InlineAsmVectorOp.ll
2007-03-24-InlineAsmXConstraint.ll
2007-03-26-CoalescerBug.ll Avoid commuting a def MI in order to coalesce a copy instruction away if any use of the same val# is a copy instruction that has already been coalesced. 2008-03-26 19:03:01 +00:00
2007-04-08-InlineAsmCrash.ll
2007-04-11-InlineAsmVectorResult.ll
2007-04-17-LiveIntervalAssert.ll
2007-04-24-Huge-Stack.ll
2007-04-24-VectorCrash.ll
2007-04-25-MMX-PADDQ.ll
2007-04-27-InlineAsm-IntMemInput.ll
2007-05-05-VecCastExpand.ll
2007-05-07-InvokeSRet.ll
2007-05-14-LiveIntervalAssert.ll
2007-05-15-maskmovq.ll
2007-05-17-ShuffleISelBug.ll
2007-06-04-tailmerge4.ll
2007-06-04-X86-64-CtorAsmBugs.ll
2007-06-05-LSR-Dominator.ll
2007-06-14-branchfold.ll Teach branch folding pass about implicit_def instructions. Unfortunately we can't just eliminate them since register scavenger expects every register use to be defined. However, we can delete them when there are no intra-block uses. Carefully removing some implicit def's which enable more blocks to be optimized away. 2008-04-10 02:32:10 +00:00
2007-06-15-IntToMMX.ll
2007-06-28-X86-64-isel.ll Remove double pipes in RUN commandlines. 2008-06-10 15:11:36 +00:00
2007-06-29-DAGCombinerBug.ll Remove double pipes in RUN commandlines. 2008-06-10 15:11:36 +00:00
2007-06-29-VecFPConstantCSEBug.ll Remove double pipes in RUN commandlines. 2008-06-10 15:11:36 +00:00
2007-07-03-GR64ToVR64.ll Fix PR2287. Darwin passes mmx values in register in 64-mode, not Linux. 2008-05-06 07:23:50 +00:00
2007-07-10-StackerAssert.ll
2007-07-18-Vector-Extract.ll
2007-07-25-EpilogueBug.ll Don't emit FP_REG_KILL into a block that just returns. Nothing 2008-03-10 23:34:12 +00:00
2007-08-01-LiveVariablesBug.ll
2007-08-09-IllegalX86-64Asm.ll
2007-08-10-SignExtSubreg.ll
2007-08-13-AppendingLinkage.ll
2007-08-13-SpillerReuse.ll
2007-09-03-X86-64-EhSelector.ll
2007-09-05-InvalidAsm.ll
2007-09-06-ExtWeakAliasee.ll
2007-09-17-ObjcFrameEH.ll Remove -unwind-tables-optional everywhere, since 2008-04-14 17:56:54 +00:00
2007-09-18-ShuffleXformBug.ll Favors pshufd over shufps when shuffling elements from one vector. pshufd is faster than shufps. 2008-04-05 00:30:36 +00:00
2007-09-27-LDIntrinsics.ll
2007-10-04-AvoidEFLAGSCopy.ll Specify a target so that this tests tests what it's intended to test. 2008-05-27 17:55:57 +00:00
2007-10-05-3AddrConvert.ll
2007-10-12-CoalesceExtSubReg.ll
2007-10-12-SpillerUnfold1.ll
2007-10-12-SpillerUnfold2.ll
2007-10-14-CoalescerCrash.ll
2007-10-15-CoalescerCrash.ll
2007-10-16-CoalescerCrash.ll
2007-10-16-fp80_select.ll
2007-10-16-IllegalAsm.ll
2007-10-17-IllegalAsm.ll
2007-10-19-SpillerUnfold.ll
2007-10-28-inlineasm-q-modifier.ll
2007-10-29-ExtendSetCC.ll
2007-10-30-LSRCrash.ll
2007-10-31-extractelement-i64.ll
2007-11-01-ISelCrash.ll
2007-11-02-BadAsm.ll
2007-11-03-x86-64-q-constraint.ll
2007-11-04-LiveIntervalCrash.ll
2007-11-04-LiveVariablesBug.ll
2007-11-04-rip-immediate-constant.ll
2007-11-06-InstrSched.ll
2007-11-07-MulBy4.ll
2007-11-14-Coalescer-Bug.ll Undo spill weight tweak. Need to investigate the performance regressions. 2008-06-21 06:45:54 +00:00
2007-11-30-LoadFolding-Bug.ll Enable two-address remat by default. 2008-06-25 01:16:38 +00:00
2007-11-30-TestLoadFolding.ll
2007-12-11-FoldImpDefSpill.ll
2007-12-16-BURRSchedCrash.ll
2007-12-18-LoadCSEBug.ll
2008-01-08-IllegalCMP.ll
2008-01-08-SchedulerCrash.ll Add CMP32mr and friends to the load-unfolding table. Among 2008-03-25 16:53:19 +00:00
2008-01-09-LongDoubleSin.ll
2008-01-16-FPStackifierAssert.ll
2008-01-16-InvalidDAGCombineXform.ll
2008-01-16-Trampoline.ll
2008-01-25-EmptyFunction.ll
2008-02-05-ISelCrash.ll
2008-02-06-LoadFoldingBug.ll
2008-02-08-LoadFoldingBug.ll
2008-02-14-BitMiscompile.ll
2008-02-18-TailMergingBug.ll
2008-02-20-InlineAsmClobber.ll
2008-02-22-LocalRegAllocBug.ll
2008-02-22-ReMatBug.ll
2008-02-25-InlineAsmBug.ll
2008-02-25-X86-64-CoalescerBug.ll
2008-02-26-AsmDirectMemOp.ll
2008-02-27-DeadSlotElimBug.ll Fix a bug in dead spill slot elimination. 2008-02-27 19:57:11 +00:00
2008-02-27-PEICrash.ll Don't track max alignment during stack object allocations since they can be deleted later. Let PEI compute it. 2008-02-27 10:04:56 +00:00
2008-03-06-frem-fpstack.ll mark frem as expand for all legal fp types on x86, regardless of whether 2008-03-07 06:36:32 +00:00
2008-03-07-APIntBug.ll A test case I forgot to check in. 2008-03-13 06:42:46 +00:00
2008-03-10-RegAllocInfLoop.ll Experimental scheduler change to schedule / coalesce the copies added for function livein's. Take 2008-03-10-RegAllocInfLoop.ll, the schedule looks like this after these copies are inserted: 2008-03-12 22:19:41 +00:00
2008-03-12-ThreadLocalAlias.ll Testcase for PR2137 2008-03-11 22:43:42 +00:00
2008-03-13-TwoAddrPassCrash.ll New test case. 2008-03-13 08:05:02 +00:00
2008-03-14-SpillerCrash.ll Fix PR2138. Apparently any modification to a std::multimap (including remove entries for a different key) can invalidate multimap iterators. 2008-03-14 20:44:01 +00:00
2008-03-18-CoalescerBug.ll Undo spill weight tweak. Need to investigate the performance regressions. 2008-06-21 06:45:54 +00:00
2008-03-19-DAGCombinerBug.ll Fix this xform: (sra (shl X, m), result_size) -> (sign_extend (trunc (shl X, result_size - n - m))) 2008-03-20 02:18:41 +00:00
2008-03-23-DarwinAsmComments.ll Use ## for comment delimiter on darwin x86-32, so 2008-03-25 23:29:30 +00:00
2008-03-25-TwoAddrPassBug.ll Fix a memory bug: increment an iterator of a deleted machine instr. 2008-03-27 01:27:25 +00:00
2008-03-31-SpillerFoldingBug.ll It's not safe to fold a load from GV stub or constantpool into a two-address use. 2008-03-31 23:19:51 +00:00
2008-04-02-unnamedEH.ll Testcase for EH with functions whose names are stripped. 2008-04-02 20:16:41 +00:00
2008-04-08-CoalescerCrash.ll Missed a hasInterval check. 2008-04-09 01:30:15 +00:00
2008-04-09-BranchFolding.ll Teach branch folding pass about implicit_def instructions. Unfortunately we can't just eliminate them since register scavenger expects every register use to be defined. However, we can delete them when there are no intra-block uses. Carefully removing some implicit def's which enable more blocks to be optimized away. 2008-04-10 02:32:10 +00:00
2008-04-15-LiveVariableBug.ll Really test what's intended. 2008-04-16 18:21:55 +00:00
2008-04-16-CoalescerBug.ll Fix a sub-register indice propagation bug. 2008-04-17 00:06:42 +00:00
2008-04-16-ReMatBug.ll Don't forget about sub-register indices when rematting instructions. 2008-04-16 23:44:44 +00:00
2008-04-17-CoalescerBug.ll Be more careful with insert_subreg and extract_subreg where either source or destination operand has already been coalesced with another register that's defined by a insert_subreg or extract_subreg. 2008-04-17 07:58:04 +00:00
2008-04-24-MemCpyBug.ll Fix bug in x86 memcpy / memset lowering. If there are trailing bytes not handled by rep instructions, a new memcpy / memset is introduced for them. However, since source / destination addresses are already adjusted, their offsets should be zero. 2008-04-25 00:26:43 +00:00
2008-04-24-pblendw-fold-crash.ll Loosen up an assertion to allow intrinsics. I really have no 2008-04-25 05:13:01 +00:00
2008-04-26-Asm-Optimize-Imm.ll Implement a signficant optimization for inline asm: 2008-04-27 00:37:18 +00:00
2008-04-28-CoalescerBug.ll Convert several tests to use temporary files instead of redundantly 2008-06-10 00:36:41 +00:00
2008-04-28-CyclicSchedUnit.ll Add -march=x86. 2008-04-28 23:31:41 +00:00
2008-05-01-InvalidOrdCompare.ll specify an arch for non-x86 hosts. 2008-05-02 15:11:58 +00:00
2008-05-06-SpillerBug.ll Yet another nasty spiller bug. 2008-05-07 00:49:28 +00:00
2008-05-09-PHIElimBug.ll If all sources of a PHI node are defined by an implicit_def, just emit an implicit_def instead of a copy. 2008-05-10 00:17:50 +00:00
2008-05-09-ShuffleLoweringBug.ll When transforming a vector_shuffle to a load, the base address must not be an undef. 2008-05-10 06:46:49 +00:00
2008-05-12-tailmerge-5.ll New test for tail merging 2008-05-12 22:59:44 +00:00
2008-05-21-CoalescerBug.ll Fix PR2343. An *interesting* coalescer bug. 2008-05-21 22:34:12 +00:00
2008-05-22-FoldUnalignedLoad.ll Bug: rcpps can only folds a load if the address is 16-byte aligned. Fixed many 'ps' load folding patterns in X86InstrSSE.td which are missing the proper alignment checks. 2008-05-23 00:37:07 +00:00
2008-05-28-CoalescerBug.ll Fix PR2289: vr defined by multiple implicit_def as result of coalescing. 2008-05-28 17:40:10 +00:00
2008-05-28-LocalRegAllocBug.ll Teach local register allocator to deal with landing pad MBB's. 2008-05-28 17:22:32 +00:00
2008-06-04-MemCpyLoweringBug.ll Fix a memcpy lowering bug. Even though the memcpy alignment is smaller than the desired alignment, the frame destination alignment may still be larger than the desired alignment. Don't change its alignment to something smaller. 2008-06-04 23:37:54 +00:00
2008-06-13-NotVolatileLoadStore.ll Disable some DAG combiner optimizations that may be 2008-06-13 19:07:40 +00:00
2008-06-13-SpillerCommuting.ll Teach the spiller to commute instructions in order to fold a reload. This hits 410 times on 444.namd and 122 times on 252.eon. 2008-06-13 23:58:02 +00:00
2008-06-13-VolatileLoadStore.ll Make test work on non-x86 machines (like my G4 PPC). 2008-06-23 06:16:31 +00:00
2008-06-16-SubregsBug.ll Do not issue identity copies. 2008-06-16 22:52:53 +00:00
2008-06-18-BadShuffle.ll Fix a bug with <8 x i16> shuffle lowering on X86 where parts of the 2008-06-19 06:09:51 +00:00
2008-06-25-VecISelBug.ll - Fix a x86 vector isel bug: illegal transformation of a vector_shuffle into a 2008-06-25 20:52:59 +00:00
aliases.ll Update testcase for recent aliases change 2008-03-11 21:42:20 +00:00
aligned-comm.ll Use common where we mean common, not weak. 2008-05-16 00:52:30 +00:00
all-ones-vector.ll Fix this test on hosts that don't have sse2. 2008-03-12 20:40:51 +00:00
alloca-align-rounding.ll
and-or-fold.ll
arg-cast.ll
asm-block-labels.ll
asm-global-imm.ll
asm-indirect-mem.ll testcase for PR2267 2008-05-22 04:45:22 +00:00
atomic_op.ll Added MemOperands to Atomic operations since Atomics touches memory. 2008-06-25 08:15:39 +00:00
bitcast2.ll
bitcast-int-to-vector.ll
bitcast.ll
bswap.ll
byval2.ll Drop ISD::MEMSET, ISD::MEMMOVE, and ISD::MEMCPY, which are not Legal 2008-04-12 04:36:06 +00:00
byval3.ll Drop ISD::MEMSET, ISD::MEMMOVE, and ISD::MEMCPY, which are not Legal 2008-04-12 04:36:06 +00:00
byval4.ll Drop ISD::MEMSET, ISD::MEMMOVE, and ISD::MEMCPY, which are not Legal 2008-04-12 04:36:06 +00:00
byval5.ll Drop ISD::MEMSET, ISD::MEMMOVE, and ISD::MEMCPY, which are not Legal 2008-04-12 04:36:06 +00:00
byval6.ll
byval7.ll Drop ISD::MEMSET, ISD::MEMMOVE, and ISD::MEMCPY, which are not Legal 2008-04-12 04:36:06 +00:00
byval.ll
call-push.ll
clz.ll
cmp0.ll
cmp1.ll
cmp-test.ll
coalescer-commute1.ll
coalescer-commute2.ll Evan implemented these. 2008-03-02 18:05:14 +00:00
coalescer-commute3.ll
coalescer-commute4.ll Really fix the test. 2008-03-04 08:01:56 +00:00
coalescer-commute5.ll - Fix a subtle bug in RemoveCopyByCommutingDef. ALR is the live range where the source is defined; BLR is the live range which is defined by the copy. 2008-03-10 08:11:32 +00:00
combine-lds.ll Xform bitconvert(build_pair(load a, load b)) to a single load if the load locations are at the right offset from each other. 2008-05-12 23:04:07 +00:00
commute-intrinsic.ll - Add "Commutative" property to intrinsics. This allows tblgen to generate the commuted variants for dagisel matching code. 2008-06-16 20:29:38 +00:00
commute-two-addr.ll
compare_folding.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
compare-add.ll
constant-pool-remat-0.ll Remove -unwind-tables-optional everywhere, since 2008-04-14 17:56:54 +00:00
copysign-zero.ll
dagcombine-cse.ll Use target triple in tests, not 'realign-stack=0' option. Per request. 2008-05-06 23:09:29 +00:00
darwin-bzero.ll Speculatively micro-optimize memory-zeroing calls on Darwin 10. 2008-04-01 20:38:36 +00:00
darwin-no-dead-strip.ll
dg.exp sabre brings to my attention that the 'tr' suffix is also obsolete 2008-05-20 21:00:03 +00:00
div_const.ll
divrem.ll
dollar-name.ll Fix some tests. 2008-06-12 21:23:38 +00:00
dyn-stackalloc.ll
epilogue.ll
extend.ll
extern_weak.ll
extmul64.ll
extmul128.ll
extractelement-from-arg.ll Instead of a vector load, shuffle and then extract an element. Load the element from address with an offset. 2008-05-13 08:35:03 +00:00
extractelement-load.ll Instead of a vector load, shuffle and then extract an element. Load the element from address with an offset. 2008-05-13 08:35:03 +00:00
fabs.ll
fast-cc-callee-pops.ll
fast-cc-merge-stack-adj.ll
fast-cc-pass-in-regs.ll
fastcall-correct-mangling.ll
field-extract-use-trunc.ll Fix X86's isTruncateFree to not claim that truncate to i1 is free. This fixes Bill's testcase that failed for r48491. 2008-03-19 08:30:06 +00:00
fildll.ll
fold-and-shift.ll
fold-call.ll Add patterns for CALL32m and CALL64m. They aren't matched in most 2008-05-29 21:50:34 +00:00
fold-load.ll
fold-mul-lohi.ll
fp2sint.ll
fp_constant_op.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
fp_load_cast_fold.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
fp_load_fold.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
fp-immediate-shorten.ll
fp-in-intregs.ll
fp-stack-2results.ll Add support for calls that return two FP values in 2008-03-21 06:38:26 +00:00
fp-stack-compare.ll
fp-stack-direct-ret.ll
fp-stack-ret-conv.ll
fp-stack-ret-store.ll
fp-stack-ret.ll
fp-stack-retcopy.ll
fsxor-alignment.ll
hidden-vis.ll
i128-immediate.ll APIntify SelectionDAG's EXTRACT_ELEMENT code. 2008-03-24 16:38:05 +00:00
i128-mul.ll
i128-ret.ll
iabs.ll Remove -unwind-tables-optional everywhere, since 2008-04-14 17:56:54 +00:00
illegal-insert.ll
illegal-vector-args-return.ll
imp-def-copies.ll New test case. 2008-04-03 21:25:03 +00:00
imul-lea.ll
inline-asm-fpstack.ll Implement basic support for the 'f' register class constraint. This basically 2008-03-11 19:50:13 +00:00
inline-asm-mrv.ll make the vector conversion magic handle multiple results. 2008-04-29 04:48:56 +00:00
inline-asm-x-scalar.ll
inline-asm.ll
ins_subreg_coalesce-1.ll - More aggressively coalescing away copies whose source is defined by an implicit_def. 2008-04-09 20:57:25 +00:00
ins_subreg_coalesce-2.ll - More aggressively coalescing away copies whose source is defined by an implicit_def. 2008-04-09 20:57:25 +00:00
ins_subreg_coalesce-3.ll - More aggressively coalescing away copies whose source is defined by an implicit_def. 2008-04-09 20:57:25 +00:00
insertelement-copytoregs.ll
invalid-shift-immediate.ll
isel-sink.ll
isnan2.ll Rename the last test with .llx extension to .ll, resolve duplicate test by renaming to isnan2. Now that no test has llx ending there is no need to search for them from dg.exp too. 2008-05-20 19:52:04 +00:00
isnan.ll Rename the last test with .llx extension to .ll, resolve duplicate test by renaming to isnan2. Now that no test has llx ending there is no need to search for them from dg.exp too. 2008-05-20 19:52:04 +00:00
ispositive.ll
jump_sign.ll
ldzero.ll
lea-2.ll
lea-3.ll
lea-recursion.ll
lea.ll
lfence.ll
long-setcc.ll
longlong-deadload.ll
loop-hoist.ll Treat EntryToken nodes as "passive" so that they aren't added to the 2008-04-15 01:22:18 +00:00
loop-strength-reduce2.ll Fix some more quoting issues in RUN lines, this time regarding unintended 2008-06-10 16:10:32 +00:00
loop-strength-reduce3.ll
loop-strength-reduce4.ll
loop-strength-reduce5.ll
loop-strength-reduce6.ll
loop-strength-reduce.ll
lsr-negative-stride.ll
memcpy-2.ll The Linux ABI emits an extra "movl %esp, %ebp" in function prologue and 2008-05-26 20:18:56 +00:00
memcpy.ll
memmove-0.ll
memmove-1.ll
memmove-2.ll
memmove-3.ll
memmove-4.ll Expand small memmovs using inline code. Set the X86 threshold for expanding 2008-05-29 19:42:22 +00:00
memset64-on-x86-32.ll Recreate the size SDNode instead of reusing the old one in the x86 2008-04-16 01:32:32 +00:00
memset.ll The Linux ABI emits an extra "movl %esp, %ebp" in function prologue and 2008-05-26 20:18:56 +00:00
mfence.ll
mingw-alloca.ll Fix test becase ABI stack alignment dropped to 'normal' value 2008-04-23 18:25:16 +00:00
mmx-arg-passing2.ll Update tests. 2008-04-25 20:13:47 +00:00
mmx-arg-passing.ll Update tests. 2008-04-25 20:13:47 +00:00
mmx-arith.ll
mmx-bitcast-to-i64.ll Add movd instructions to move from MMX registers 2008-04-15 23:55:07 +00:00
mmx-copy-gprs.ll
mmx-emms.ll
mmx-insert-element.ll Implement vector shift up / down and insert zero with ps{rl}lq / ps{rl}ldq. 2008-05-29 08:22:04 +00:00
mmx-punpckhdq.ll
mmx-shift.ll Select vector shift with non-immediate i32 shift amount operand by first moving the operand into the right register. 2008-05-04 09:15:50 +00:00
mmx-shuffle.ll
mul64.ll
mul128.ll
mul-legalize.ll Fix mul expansion to check the correct number of bits for 2008-03-10 20:42:19 +00:00
mul-remat.ll
mul-shift-reassoc.ll
multiple-return-values-cross-block.ll Handle getresult instructions in different basic blocks 2008-03-21 21:01:32 +00:00
multiple-return-values.ll Make this test x86-specific for now; targets that don't use 2008-03-12 00:25:14 +00:00
nancvt.ll Convert several tests to use temporary files instead of redundantly 2008-06-10 00:36:41 +00:00
negative_zero.ll
negative-sin.ll
nofence.ll
opt-ext-uses.ll
or-branch.ll Remove -unwind-tables-optional everywhere, since 2008-04-14 17:56:54 +00:00
overlap-shift.ll
packed_struct.ll Convert several tests to use temporary files instead of redundantly 2008-06-10 00:36:41 +00:00
peep-vector-extract-concat.ll Favors pshufd over shufps when shuffling elements from one vector. pshufd is faster than shufps. 2008-04-05 00:30:36 +00:00
peep-vector-extract-insert.ll
pic_jumptable.ll
pic-1.ll
pic-2.ll
pic-3.ll
pic-4.ll
pic-5.ll
pic-6.ll
pic-cpool.ll
pic-jtbl.ll
pic-load-remat.ll
pmul.ll Make this test independent of the target-triple; the stack alignment 2008-05-27 17:44:23 +00:00
postalloc-coalescing.ll
pr1462.ll APIntify SelectionDAG's EXTRACT_ELEMENT code. 2008-03-24 16:38:05 +00:00
pr1489.ll
pr1505.ll
pr1505b.ll reduce this testcase more 2008-03-09 06:57:21 +00:00
pr2177.ll Fix a tokenfactor node to use the load chain rather than the 2008-03-28 23:45:16 +00:00
pr2182.ll Fix a DAGCombiner optimization to respect volatile qualification. 2008-03-31 20:32:52 +00:00
pr2326.ll When bit-twiddling CondCode values for integer comparisons produces 2008-05-14 18:17:09 +00:00
prefetch.ll Convert several tests to use temporary files instead of redundantly 2008-06-10 00:36:41 +00:00
rdtsc.ll
regpressure.ll
rem.ll
remat-mov0.ll If it's determined safe, remat MOV32r0 (i.e. xor r, r) and others as it is instead of using the longer MOV32ri instruction. 2008-06-24 07:10:51 +00:00
rotate2.ll ensure we continue matching x86-64 rotates. 2008-03-17 01:35:03 +00:00
rotate.ll
scalar_sse_minmax.ll Fix parameter spelling: sse not sse1 2008-06-10 17:57:58 +00:00
scalar-min-max-fill-operand.ll
select-zero-one.ll
select.ll Remove -unwind-tables-optional everywhere, since 2008-04-14 17:56:54 +00:00
setuge.ll Remove -unwind-tables-optional everywhere, since 2008-04-14 17:56:54 +00:00
sext-load.ll
sext-select.ll Use the correct value for InSignBit. 2008-03-11 21:29:43 +00:00
sfence.ll
shift-coalesce.ll
shift-codegen.ll
shift-combine.ll
shift-double.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
shift-folding.ll
shift-one.ll
shl_elim.ll
shrink-fp-const1.ll Add a target lowering hook to control whether it's worthwhile to compress fp constant. 2008-03-05 01:30:59 +00:00
shrink-fp-const2.ll Generalize FP constant shrinking optimization to apply to any vt 2008-03-05 06:48:13 +00:00
sincos.ll
small-byval-memcpy.ll Drop ISD::MEMSET, ISD::MEMMOVE, and ISD::MEMCPY, which are not Legal 2008-04-12 04:36:06 +00:00
split-select.ll v2f32 is now a valid (MMX) type which breaks this 2008-06-24 22:03:36 +00:00
split-vector-rem.ll
sse41-extractps-bitcast-0.ll Add support for the form of the SSE41 extractps instruction that 2008-04-16 02:32:24 +00:00
sse41-extractps-bitcast-1.ll Add support for the form of the SSE41 extractps instruction that 2008-04-16 02:32:24 +00:00
sse_reload_fold.ll
sse-align-0.ll Add nounwind. 2008-05-07 22:59:08 +00:00
sse-align-1.ll Add nounwind. 2008-05-07 22:59:08 +00:00
sse-align-2.ll Add nounwind. 2008-05-07 22:59:08 +00:00
sse-align-3.ll Add nounwind. 2008-05-07 22:59:08 +00:00
sse-align-4.ll Add nounwind. 2008-05-07 22:59:08 +00:00
sse-align-5.ll Add nounwind. 2008-05-07 22:59:08 +00:00
sse-align-6.ll Add nounwind. 2008-05-07 22:59:08 +00:00
sse-align-7.ll Add nounwind. 2008-05-07 22:59:08 +00:00
sse-align-8.ll Add nounwind. 2008-05-07 22:59:08 +00:00
sse-align-9.ll Add nounwind. 2008-05-07 22:59:08 +00:00
sse-align-10.ll Add nounwind. 2008-05-07 22:59:08 +00:00
sse-align-11.ll Add nounwind. 2008-05-07 22:59:08 +00:00
sse-align-12.ll Convert several tests to use temporary files instead of redundantly 2008-06-10 00:36:41 +00:00
sse-fcopysign.ll
sse-load-ret.ll
sse-varargs.ll
stack-align.ll
store_op_load_fold2.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
store_op_load_fold.ll
store-fp-constant.ll
store-global-address.ll
storetrunc-fp.ll
stride-nine-with-base-reg.ll
stride-reuse.ll
subclass-coalesce.ll New test case. 2008-06-19 01:50:24 +00:00
tailcall1.ll
tailcallbyval64.ll This patch corrects the handling of byval arguments for tailcall 2008-04-12 18:11:06 +00:00
tailcallbyval.ll This patch corrects the handling of byval arguments for tailcall 2008-04-12 18:11:06 +00:00
tailcallpic1.ll
tailcallpic2.ll
tailcallstack64.ll Really commit the test checking the argument lowering behaviour on x86-64 :). 2008-04-30 09:19:47 +00:00
test-nofold.ll Set to default: x86 no longer fold and into test if it has more than one use. 2008-02-28 07:46:38 +00:00
tls1.ll
tls2.ll
trap.ll
trunc-to-bool.ll
twoaddr-pass-sink.ll TwoAddressInstructionPass enhancement. After it converts a two address instruction into a 3-address one, sink it past the instruction that kills the read-mod-write register if its definition is used past the kill. This reduces the number of live register by one. 2008-03-13 06:37:55 +00:00
twoaddr-remat.ll Enable two-address remat by default. 2008-06-25 01:16:38 +00:00
urem-i8-constant.ll
v4f32-immediate.ll
variable-sized-darwin-bzero.ll Drop ISD::MEMSET, ISD::MEMMOVE, and ISD::MEMCPY, which are not Legal 2008-04-12 04:36:06 +00:00
variadic-node-pic.ll Fix the position of MemOperands in nodes that use variadic_ops 2008-06-02 17:40:38 +00:00
vec_add.ll Remove double pipes in RUN commandlines. 2008-06-10 15:11:36 +00:00
vec_align.ll Add nounwind. 2008-05-07 22:59:08 +00:00
vec_call.ll
vec_clear.ll Implement vector shift up / down and insert zero with ps{rl}lq / ps{rl}ldq. 2008-05-29 08:22:04 +00:00
vec_ctbits.ll Add nounwind. 2008-05-29 07:09:24 +00:00
vec_extract-sse4.ll Instead of a vector load, shuffle and then extract an element. Load the element from address with an offset. 2008-05-13 08:35:03 +00:00
vec_extract.ll
vec_fneg.ll Remove double pipes in RUN commandlines. 2008-06-10 15:11:36 +00:00
vec_ins_extract.ll
vec_insert_4.ll Feedback from chris 2008-04-25 21:47:35 +00:00
vec_insert-2.ll Fix some more quoting issues in RUN lines, this time regarding unintended 2008-06-10 16:10:32 +00:00
vec_insert-3.ll Implement vector shift up / down and insert zero with ps{rl}lq / ps{rl}ldq. 2008-05-29 08:22:04 +00:00
vec_insert-5.ll Convert several tests to use temporary files instead of redundantly 2008-06-10 00:36:41 +00:00
vec_insert-6.ll Implement vector shift up / down and insert zero with ps{rl}lq / ps{rl}ldq. 2008-05-29 08:22:04 +00:00
vec_insert.ll
vec_loadhl.ll New loadl_pd and loadh_pd tests. 2008-05-24 00:10:02 +00:00
vec_logical.ll Convert several tests to use temporary files instead of redundantly 2008-06-10 00:36:41 +00:00
vec_return.ll Convert several tests to use temporary files instead of redundantly 2008-06-10 00:36:41 +00:00
vec_select.ll
vec_set-2.ll Add nounwind. 2008-05-07 22:59:08 +00:00
vec_set-3.ll Favors pshufd over shufps when shuffling elements from one vector. pshufd is faster than shufps. 2008-04-05 00:30:36 +00:00
vec_set-4.ll Add nounwind. 2008-05-07 22:59:08 +00:00
vec_set-5.ll Handle vector move / load which zero the destination register top bits (i.e. movd, movq, movss (addr), movsd (addr)) with X86 specific dag combine. 2008-05-08 00:57:18 +00:00
vec_set-6.ll Handle vector move / load which zero the destination register top bits (i.e. movd, movq, movss (addr), movsd (addr)) with X86 specific dag combine. 2008-05-08 00:57:18 +00:00
vec_set-7.ll Add nounwind. 2008-05-07 22:59:08 +00:00
vec_set-8.ll
vec_set-9.ll Add nounwind. 2008-05-07 22:59:08 +00:00
vec_set-A.ll Add nounwind. 2008-05-07 22:59:08 +00:00
vec_set-B.ll Add nounwind. 2008-05-07 22:59:08 +00:00
vec_set-C.ll Handle a few more cases of folding load i64 into xmm and zero top bits. 2008-05-09 21:53:03 +00:00
vec_set-D.ll Handle vector move / load which zero the destination register top bits (i.e. movd, movq, movss (addr), movsd (addr)) with X86 specific dag combine. 2008-05-08 00:57:18 +00:00
vec_set-E.ll Simplify test. 2008-05-09 19:56:32 +00:00
vec_set-F.ll Handle a few more cases of folding load i64 into xmm and zero top bits. 2008-05-09 21:53:03 +00:00
vec_set-G.ll Add a pattern to do move the low element of a v4f32 and zero extend the rest. 2008-05-09 23:37:55 +00:00
vec_set-H.ll On x86, it's safe to treat i32 load anyext as a normal i32 load. Ditto for i8 anyext load to i16. 2008-05-13 00:54:02 +00:00
vec_set-I.ll Add missing patterns. 2008-05-22 18:56:56 +00:00
vec_set.ll Add nounwind. 2008-05-07 22:59:08 +00:00
vec_shift2.ll
vec_shift3.ll Select vector shift with non-immediate i32 shift amount operand by first moving the operand into the right register. 2008-05-04 09:15:50 +00:00
vec_shift.ll
vec_shuffle-2.ll Add nounwind. 2008-05-10 02:22:25 +00:00
vec_shuffle-3.ll
vec_shuffle-4.ll
vec_shuffle-5.ll Favors pshufd over shufps when shuffling elements from one vector. pshufd is faster than shufps. 2008-04-05 00:30:36 +00:00
vec_shuffle-6.ll
vec_shuffle-7.ll
vec_shuffle-8.ll
vec_shuffle-9.ll
vec_shuffle-10.ll
vec_shuffle-11.ll Use target triple in tests, not 'realign-stack=0' option. Per request. 2008-05-06 23:09:29 +00:00
vec_shuffle-12.ll Convert several tests to use temporary files instead of redundantly 2008-06-10 00:36:41 +00:00
vec_shuffle-13.ll Convert several tests to use temporary files instead of redundantly 2008-06-10 00:36:41 +00:00
vec_shuffle-14.ll
vec_shuffle-15.ll
vec_shuffle-16.ll Use target triple in tests, not 'realign-stack=0' option. Per request. 2008-05-06 23:09:29 +00:00
vec_shuffle-17.ll A better fix for my previous patch, MOVZQI2PQIrr just requires SSE2. 2008-04-20 05:52:46 +00:00
vec_shuffle-18.ll The Linux ABI emits an extra "movl %esp, %ebp" in function prologue and 2008-05-26 20:18:56 +00:00
vec_shuffle.ll Favors pshufd over shufps when shuffling elements from one vector. pshufd is faster than shufps. 2008-04-05 00:30:36 +00:00
vec_splat-2.ll Favors pshufd over shufps when shuffling elements from one vector. pshufd is faster than shufps. 2008-04-05 00:30:36 +00:00
vec_splat.ll Favors pshufd over shufps when shuffling elements from one vector. pshufd is faster than shufps. 2008-04-05 00:30:36 +00:00
vec_ss_load_fold.ll Add nounwind. 2008-05-07 22:59:08 +00:00
vec_zero_cse.ll
vec_zero-2.ll Avoid creating BUILD_VECTOR of all zero elements of "non-normalized" type (e.g. v8i16 on x86) after legalizer. Instruction selection does not expect to see them. In all likelihood this can only be an issue in a bugpoint reduced test case. 2008-03-10 07:19:13 +00:00
vec_zero.ll
vector-intrinsics.ll
vector-rem.ll
vector.ll
vortex-bug.ll Run vortex-bug as x86-64, which is what the original bug was triggered on. 2008-05-20 00:54:39 +00:00
weak.ll
x86-64-and-mask.ll Compile x86-64-and-mask.ll into: 2008-02-27 05:47:54 +00:00
x86-64-arg.ll
x86-64-asm.ll
x86-64-dead-stack-adjust.ll actually run llc, thanks Dan :) 2008-02-27 17:46:54 +00:00
x86-64-gv-offset.ll
x86-64-mem.ll Add -disable-required-unwind-tables to tests 2008-04-08 00:14:17 +00:00
x86-64-pic-1.ll add support for PIC on linux x86-64 2008-06-09 09:52:31 +00:00
x86-64-pic-2.ll add support for PIC on linux x86-64 2008-06-09 09:52:31 +00:00
x86-64-pic-3.ll add support for PIC on linux x86-64 2008-06-09 09:52:31 +00:00
x86-64-pic-4.ll add support for PIC on linux x86-64 2008-06-09 09:52:31 +00:00
x86-64-pic-5.ll add support for PIC on linux x86-64 2008-06-09 09:52:31 +00:00
x86-64-pic-6.ll add support for PIC on linux x86-64 2008-06-09 09:52:31 +00:00
x86-64-pic-7.ll add support for PIC on linux x86-64 2008-06-09 09:52:31 +00:00
x86-64-pic-8.ll add support for PIC on linux x86-64 2008-06-09 09:52:31 +00:00
x86-64-pic-9.ll add support for PIC on linux x86-64 2008-06-09 09:52:31 +00:00
x86-64-pic-10.ll add support for PIC on linux x86-64 2008-06-09 09:52:31 +00:00
x86-64-pic-11.ll add support for PIC on linux x86-64 2008-06-09 09:52:31 +00:00
x86-64-ret0.ll Fix live variables issues: 2008-03-19 00:52:20 +00:00
x86-64-shortint.ll
x86-64-sret-return.ll Implement an x86-64 ABI detail of passing structs by hidden first 2008-04-21 23:59:07 +00:00
x86-64-varargs.ll Fix a x86-64 isel lowering bug that's been around forever. A x86-64 varargs function implicitly reads X86::AL, don't clobber it! 2008-03-18 23:36:35 +00:00
xmm-r64.ll
xor_not.ll Add AsmPrinter support for emitting a directive to declare that 2008-05-05 00:28:39 +00:00
xor-undef.ll Handle a special case xor undef, undef -> 0. Technically this should be transformed to undef. But this is such a common idiom (misuse) we are going to handle it. 2008-03-25 20:08:07 +00:00
xorl.ll It might be nice to have this run as x86 on non-x86 platforms... 2008-03-18 22:38:22 +00:00
zero-remat.ll Remove -unwind-tables-optional everywhere, since 2008-04-14 17:56:54 +00:00