llvm-6502/test/CodeGen/X86
Evan Cheng 79a796c2b1 Fix PR2536: a nasty spiller bug. If a two-address instruction uses a register but the use portion of its live range is not part of its liveinterval, it must be defined by an implicit_def. In that case, do not spill the use. e.g.
8   %reg1024<def> = IMPLICIT_DEF
12  %reg1024<def> = INSERT_SUBREG %reg1024<kill>, %reg1025, 2

The live range [12, 14) are not part of the r1024 live interval since it's defined by an implicit def. It will not conflicts with live interval of r1025. Now suppose both registers are spilled, you can easily see a situation where both registers are reloaded before the INSERT_SUBREG and both target registers that would overlap.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53503 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-12 01:56:02 +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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
2006-08-16-CycleInDAG.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
2006-08-21-ExtraMovInst.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
2006-09-01-CycleInDAG.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
2006-10-02-BoolRetCrash.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
2006-10-07-ScalarSSEMiscompile.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
2006-10-13-CycleInDAG.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
2006-10-19-SwitchUnnecessaryBranching.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
2006-11-28-Memcpy.ll test doesn't need eh info 2008-06-27 03:14:20 +00:00
2006-12-19-IntelSyntax.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
2007-01-08-InstrSched.ll Revert 42908 for now. 2007-10-14 05:57:21 +00:00
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 Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
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 Enable -coalescer-commute-instrs by default. 2008-02-26 20:40:22 +00:00
2007-04-27-InlineAsm-IntMemInput.ll
2007-05-05-VecCastExpand.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
2007-05-07-InvokeSRet.ll
2007-05-14-LiveIntervalAssert.ll
2007-05-15-maskmovq.ll
2007-05-17-ShuffleISelBug.ll Fix sse2.psrl.w and sse2.psrl.q definitions. 2008-01-09 02:16:44 +00:00
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 Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
2007-08-13-AppendingLinkage.ll
2007-08-13-SpillerReuse.ll Turning simple splitting on. Start testing new coalescer heuristics as new llcbeta. 2007-12-06 08:54:31 +00:00
2007-09-03-X86-64-EhSelector.ll Split eh.select / eh.typeid.for intrinsics into i32/i64 versions. This is needed, because they just "mark" register 2007-09-07 11:39:35 +00:00
2007-09-05-InvalidAsm.ll Fix a bug in X86InstrInfo::convertToThreeAddress that caused it to codegen: 2007-09-06 00:14:41 +00:00
2007-09-06-ExtWeakAliasee.ll Proper handle case, when aliasee is external weak symbol referenced only by alias itself. 2007-09-06 17:21:48 +00:00
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 Add sqrt and powi intrinsics for long double. 2007-09-28 01:08:20 +00:00
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 Make test work on non-x86 hosts. 2007-10-06 01:22:39 +00:00
2007-10-12-CoalesceExtSubReg.ll Doh. 2007-10-12 09:10:27 +00:00
2007-10-12-SpillerUnfold1.ll New tests. 2007-10-13 03:10:54 +00:00
2007-10-12-SpillerUnfold2.ll New tests. 2007-10-13 03:10:54 +00:00
2007-10-14-CoalescerCrash.ll Fix run line. 2007-10-15 16:35:13 +00:00
2007-10-15-CoalescerCrash.ll Fix PR1729: watch out for val# with no def. 2007-10-15 18:33:50 +00:00
2007-10-16-CoalescerCrash.ll Yet another test case for extract_subreg coalescing crash. 2007-10-17 02:15:06 +00:00
2007-10-16-fp80_select.ll New test for svn rev 43033, radar 5538745. 2007-10-16 18:10:14 +00:00
2007-10-16-IllegalAsm.ll Fix PR1734. 2007-10-16 19:29:47 +00:00
2007-10-17-IllegalAsm.ll Really fix PR1734. Carefully track which register uses are sub-register uses by 2007-10-18 07:49:59 +00:00
2007-10-19-SpillerUnfold.ll New test case. 2007-10-19 22:05:00 +00:00
2007-10-28-inlineasm-q-modifier.ll Add support for the x86-64 'q' regigster modifier, and add support for the 2007-10-29 03:09:07 +00:00
2007-10-29-ExtendSetCC.ll Enable more fold (sext (load x)) -> (sext (truncate (sextload x))) 2007-10-29 19:58:20 +00:00
2007-10-30-LSRCrash.ll It's not safe to tell SplitCriticalEdge to merge identical edges. It may delete the phi instruction that's being processed. 2007-10-30 22:27:26 +00:00
2007-10-31-extractelement-i64.ll Test that expand_vector_elt(v2i64) works in 32-bit mode. 2007-11-01 02:38:24 +00:00
2007-11-01-ISelCrash.ll Add run line. 2007-11-02 17:36:58 +00:00
2007-11-02-BadAsm.ll One more extract_subreg coalescing bug. 2007-11-02 17:35:08 +00:00
2007-11-03-x86-64-q-constraint.ll Fix PR1763 by allowing the 'q' constraint to work with 64-bit 2007-11-04 06:51:12 +00:00
2007-11-04-LiveIntervalCrash.ll Doh. PR1187 -> PR1766. 2007-11-05 01:00:44 +00:00
2007-11-04-LiveVariablesBug.ll Handle cases where a register and one of its super-register are both marked as 2007-11-05 03:11:55 +00:00
2007-11-04-rip-immediate-constant.ll Fix PR1761 by not printing (rip) suffix when in -static mode. 2007-11-04 19:23:28 +00:00
2007-11-06-InstrSched.ll Add pseudo dependency to force two-address instruction to be scheduled after 2007-11-06 08:44:59 +00:00
2007-11-07-MulBy4.ll If both parts of smul_lohi, etc. are used, don't simplify. If only one part is used, try simplify it. 2007-11-08 09:25:29 +00:00
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 Turning simple splitting on. Start testing new coalescer heuristics as new llcbeta. 2007-12-06 08:54:31 +00:00
2007-12-11-FoldImpDefSpill.ll Implicit def instructions, e.g. X86::IMPLICIT_DEF_GR32, are always re-materializable and they should not be spilled. 2007-12-12 23:12:09 +00:00
2007-12-16-BURRSchedCrash.ll FIX for PR1799: When a load is unfolded from an instruction, check if it is a new node. If not, do not create a new SUnit. 2007-12-18 08:42:10 +00:00
2007-12-18-LoadCSEBug.ll Fix PR1872: SrcValue and SrcValueOffset should not be used to compute load / store node id. 2007-12-18 19:38:14 +00:00
2008-01-08-IllegalCMP.ll Crashes llc when using Chris's new legalization logic. 2008-01-08 21:51:53 +00:00
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 Output sinl for a long double FSIN node, not sin. 2008-01-10 10:28:30 +00:00
2008-01-16-FPStackifierAssert.ll When a live virtual register is being clobbered by an implicit def, it is spilled 2008-01-17 02:08:17 +00:00
2008-01-16-InvalidDAGCombineXform.ll Fixes a nasty dag combiner bug that causes a bunch of tests to fail at -O0. 2008-01-16 23:11:54 +00:00
2008-01-16-Trampoline.ll Trampoline support for x86-64. This looks like 2008-01-16 22:55:25 +00:00
2008-01-25-EmptyFunction.ll Add target triples to these so they don't fail on linux. 2008-01-29 06:26:07 +00:00
2008-02-05-ISelCrash.ll Fix PR1975: dag isel emitter produces patterns that isel wrong flag result. 2008-02-05 22:50:29 +00:00
2008-02-06-LoadFoldingBug.ll Added missing entries in X86 load / store folding tables. 2008-02-08 00:12:56 +00:00
2008-02-08-LoadFoldingBug.ll It's not always safe to fold movsd into xorpd, etc. Check the alignment of the load address first to make sure it's 16 byte aligned. 2008-02-08 21:20:40 +00:00
2008-02-14-BitMiscompile.ll Fix a miscompilation from Dan's recent apintification. 2008-02-14 18:48:56 +00:00
2008-02-18-TailMergingBug.ll Considering predecessors of exit blocks gets 2008-07-01 21:50:49 +00:00
2008-02-20-InlineAsmClobber.ll Treat clobber operands like early clobbers: if we have 2008-02-21 19:43:13 +00:00
2008-02-22-LocalRegAllocBug.ll Really. Why doesn't every arch support MMX? 2008-02-23 00:56:14 +00:00
2008-02-22-ReMatBug.ll Spiller now remove unused spill slots. 2008-02-27 03:04:06 +00:00
2008-02-25-InlineAsmBug.ll Fix PR2076. CodeGenPrepare now sinks address computation for inline asm memory 2008-02-26 02:42:37 +00:00
2008-02-25-X86-64-CoalescerBug.ll This is possible: 2008-02-26 08:03:41 +00:00
2008-02-26-AsmDirectMemOp.ll Fix for pr2093: direct operands aren't necessarily addresses, so don't 2008-02-26 18:37:49 +00:00
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
2008-07-07-DanglingDeadInsts.ll Fix two serious LSR bugs. 2008-07-07 19:51:32 +00:00
2008-07-09-ELFSectionAttributes.ll Testcase for PR2024 2008-07-09 14:09:41 +00:00
2008-07-11-SHLBy1.ll Port a shift-by-1 optimization from LegalizeDAG: it 2008-07-11 16:54:57 +00:00
2008-07-11-SpillerBug.ll Fix PR2536: a nasty spiller bug. If a two-address instruction uses a register but the use portion of its live range is not part of its liveinterval, it must be defined by an implicit_def. In that case, do not spill the use. e.g. 2008-07-12 01:56:02 +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 Update test: dynamic_stackalloc size *must* be rounded to ensure stack ptr be left in a valid state. 2007-08-16 23:51:28 +00:00
and-or-fold.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
arg-cast.ll Fix test. 2008-02-14 01:32:53 +00:00
asm-block-labels.ll Make labels work in asm blocks; allow labels as 2007-11-05 21:20:28 +00:00
asm-global-imm.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
bitcast-int-to-vector.ll Fix a DAGCombiner abort on a bitcast from a scalar to a vector. 2007-10-29 20:44:42 +00:00
bitcast.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
bswap.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Let each target decide byval alignment. For X86, it's 4-byte unless the aggregare contains SSE vector(s). For x86-64, it's max of 8 or alignment of the type. 2008-01-23 23:17:41 +00:00
byval7.ll Drop ISD::MEMSET, ISD::MEMMOVE, and ISD::MEMCPY, which are not Legal 2008-04-12 04:36:06 +00:00
byval.ll Add support for functions with byval arguments on x86 2007-09-14 15:48:13 +00:00
call-push.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
clz.ll Fix ctlz and cttz. llvm definition requires them to return number of bits in of the src type when value is zero. 2007-12-14 08:30:15 +00:00
cmp0.ll Use "test reg,reg" in place of "cmp reg,0" for 64-bit operands. This was 2007-09-17 14:35:24 +00:00
cmp1.ll Emit integer x<1 as x<=0, as comparisons with zero (now includeing 2007-09-17 14:49:27 +00:00
cmp-test.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
coalescer-commute1.ll Enable -coalescer-commute-instrs by default. 2008-02-26 20:40:22 +00:00
coalescer-commute2.ll Evan implemented these. 2008-03-02 18:05:14 +00:00
coalescer-commute3.ll Enable -coalescer-commute-instrs by default. 2008-02-26 20:40:22 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
compare_folding.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
compare-add.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
constant-pool-remat-0.ll Remove -unwind-tables-optional everywhere, since 2008-04-14 17:56:54 +00:00
copysign-zero.ll Add target-specific dag combines for FAND(x,0) and FOR(x,0). This allows 2008-01-25 05:46:26 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
divrem.ll When both x/y and x%y are needed (x and y both scalar integer), compute 2007-09-25 18:23:27 +00:00
dollar-name.ll Fix some tests. 2008-06-12 21:23:38 +00:00
dyn-stackalloc.ll New test. Make sure dynamic_stackalloc size is rounded up. 2007-08-16 23:52:23 +00:00
epilogue.ll
extend.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
extern_weak.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
extmul64.ll These two tests now require only two multiply instructions, 2007-10-09 15:39:37 +00:00
extmul128.ll These two tests now require only two multiply instructions, 2007-10-09 15:39:37 +00:00
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 Modernize fabs.ll, add long double. Add tests 2007-09-26 21:12:10 +00:00
fast-cc-callee-pops.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
fast-cc-merge-stack-adj.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
fast-cc-pass-in-regs.ll fix bogus test that the more strict lexer is finding. 2007-11-18 18:26:45 +00:00
fastcall-correct-mangling.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
fold-and-shift.ll Fold some and + shift in x86 addressing mode. 2007-12-13 00:43:27 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
fold-mul-lohi.ll Don't mask the isel bug. 2008-02-12 19:11:29 +00:00
fp2sint.ll LowerFP_TO_SINT must not create a stack object if it's not needed. 2007-10-15 20:11:21 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
fp-in-intregs.ll Implement some dag combines that allow doing fneg/fabs/fcopysign in integer 2008-01-27 17:42:27 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
fp-stack-direct-ret.ll Significantly simplify and improve handling of FP function results on x86-32. 2008-01-24 08:07:48 +00:00
fp-stack-ret-conv.ll Significantly simplify and improve handling of FP function results on x86-32. 2008-01-24 08:07:48 +00:00
fp-stack-ret-store.ll make sure to use a cpu that has sse. 2008-01-16 06:32:02 +00:00
fp-stack-ret.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
fp-stack-retcopy.ll My previous commit had an incomplete message, it should have been: 2008-01-16 05:56:59 +00:00
fsxor-alignment.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
hidden-vis.ll rename tests to avoid a test- prefix when they aren't related to the test instruction. 2008-02-19 17:33:52 +00:00
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 Teach SplitVectorOp how to split INSERT_VECTOR_ELT. 2007-09-28 23:53:40 +00:00
illegal-vector-args-return.ll
imp-def-copies.ll New test case. 2008-04-03 21:25:03 +00:00
imul-lea.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Avoid aborting on invalid shift counts. 2008-02-26 18:50:50 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
ldzero.ll Some tests for APFloat conversions. 2007-09-25 17:50:55 +00:00
lea-2.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
lea-3.ll
lea-recursion.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
lea.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
lfence.ll llvm.memory.barrier, and impl for x86 and alpha 2008-02-16 01:24:58 +00:00
long-setcc.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
longlong-deadload.ll Make load->store deletion a bit smarter. This allows us to compile this: 2008-01-08 23:08:06 +00:00
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 If a loop termination compare instruction is the only use of its stride, 2007-10-25 09:11:16 +00:00
loop-strength-reduce4.ll If a loop termination compare instruction is the only use of its stride, 2007-10-25 09:11:16 +00:00
loop-strength-reduce5.ll Loosen up iv reuse to allow reuse of the same stride but a larger type when truncating from the larger type to smaller type is free. 2007-10-26 01:56:11 +00:00
loop-strength-reduce6.ll - Bug fixes. 2007-10-29 22:07:18 +00:00
loop-strength-reduce.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Refactor the memcpy lowering for the x86 target. 2007-09-28 12:53:01 +00:00
memmove-0.ll Add explicit triples to avoid default behavior that varies by host. 2007-08-27 20:54:48 +00:00
memmove-1.ll Add explicit triples to avoid default behavior that varies by host. 2007-08-27 20:54:48 +00:00
memmove-2.ll Add explicit triples to avoid default behavior that varies by host. 2007-08-27 20:54:48 +00:00
memmove-3.ll Add explicit triples to avoid default behavior that varies by host. 2007-08-27 20:54:48 +00:00
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 llvm.memory.barrier, and impl for x86 and alpha 2008-02-16 01:24:58 +00:00
mingw-alloca.ll Allow for rounding up of stack frame. 2008-06-26 01:55:32 +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 copy mmx values from/to memory with GPRs on x86-32 2008-02-22 05:18:04 +00:00
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 Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
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 These two tests now require only three multiply instructions, 2007-10-08 20:48:12 +00:00
mul128.ll These two tests now require only three multiply instructions, 2007-10-08 20:48:12 +00:00
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 Don't mark scalar integer multiplication as Expand on x86, since x86 2008-02-18 17:55:26 +00:00
mul-shift-reassoc.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
negative-sin.ll
nofence.ll llvm.memory.barrier, and impl for x86 and alpha 2008-02-16 01:24:58 +00:00
opt-ext-uses.ll Be extra careful with extension use optimation. Now turned on by default. 2007-12-13 03:32:53 +00:00
or-branch.ll Remove -unwind-tables-optional everywhere, since 2008-04-14 17:56:54 +00:00
overlap-shift.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Change all floating constants that are not exactly 2007-09-05 17:50:36 +00:00
pic_jumptable.ll Fix a x86-64 codegen deficiency. Allow gv + offset when using rip addressing mode. 2008-02-07 08:53:49 +00:00
pic-1.ll rename tests to avoid a test- prefix when they aren't related to the test instruction. 2008-02-19 17:33:52 +00:00
pic-2.ll rename tests to avoid a test- prefix when they aren't related to the test instruction. 2008-02-19 17:33:52 +00:00
pic-3.ll rename tests to avoid a test- prefix when they aren't related to the test instruction. 2008-02-19 17:33:52 +00:00
pic-4.ll rename tests to avoid a test- prefix when they aren't related to the test instruction. 2008-02-19 17:33:52 +00:00
pic-5.ll rename tests to avoid a test- prefix when they aren't related to the test instruction. 2008-02-19 17:33:52 +00:00
pic-6.ll rename tests to avoid a test- prefix when they aren't related to the test instruction. 2008-02-19 17:33:52 +00:00
pic-cpool.ll rename tests to avoid a test- prefix when they aren't related to the test instruction. 2008-02-19 17:33:52 +00:00
pic-jtbl.ll rename tests to avoid a test- prefix when they aren't related to the test instruction. 2008-02-19 17:33:52 +00:00
pic-load-remat.ll Update test. 2008-02-23 02:57:25 +00:00
pmul.ll Make this test independent of the target-triple; the stack alignment 2008-05-27 17:44:23 +00:00
postalloc-coalescing.ll There are times when the coalescer would not coalesce away a copy but the copy 2007-11-03 07:20:12 +00:00
pr1462.ll APIntify SelectionDAG's EXTRACT_ELEMENT code. 2008-03-24 16:38:05 +00:00
pr1489.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
pr1505.ll take these with a pr # 2008-01-24 06:35:44 +00:00
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 upgrade this test 2007-11-24 05:39:29 +00:00
regpressure.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
rem.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
scalar_sse_minmax.ll Fix parameter spelling: sse not sse1 2008-06-10 17:57:58 +00:00
scalar-min-max-fill-operand.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
select-zero-one.ll Test dag xform: Fold C ? 0 : 1 to ~C or zext(~C) or trunc(~C) 2007-08-18 06:11:57 +00:00
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 this xform is implemented. 2007-12-29 08:19:39 +00:00
sext-select.ll Use the correct value for InSignBit. 2008-03-11 21:29:43 +00:00
sfence.ll llvm.memory.barrier, and impl for x86 and alpha 2008-02-16 01:24:58 +00:00
shift-coalesce.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
shift-codegen.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
shift-combine.ll third time around: instead of disabling this completely, 2007-12-06 07:47:55 +00:00
shift-double.ll rename *.llx -> *.ll 2008-04-19 22:29:10 +00:00
shift-folding.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
shift-one.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Modernize fabs.ll, add long double. Add tests 2007-09-26 21:12:10 +00:00
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 Add support in SplitVectorOp for remainder operators. 2007-11-19 15:15:03 +00:00
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 Fix several more entries in the x86 reload/remat folding tables. 2007-09-20 14:17:21 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
sse-varargs.ll SSE varargs arguments are passed in memory. 2008-01-22 23:26:53 +00:00
stack-align.ll Infer alignment of loads and increase their alignment when we can tell they are 2008-01-26 19:45:50 +00:00
store_op_load_fold2.ll Byebye llvm-upgrade! 2008-03-25 04:26:08 +00:00
store_op_load_fold.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
store-fp-constant.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
store-global-address.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
storetrunc-fp.ll This commit changes: 2008-01-17 19:59:44 +00:00
stride-nine-with-base-reg.ll Don't mask the isel bug. 2008-02-12 19:11:29 +00:00
stride-reuse.ll Don't mask the isel bug. 2008-02-12 19:11:29 +00:00
subclass-coalesce.ll New test case. 2008-06-19 01:50:24 +00:00
tailcall1.ll Added missing -march=x86 flag. 2007-10-12 07:49:48 +00:00
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 Added tail call optimization to the x86 back end. It can be 2007-10-11 19:40:01 +00:00
tailcallpic2.ll Added tail call optimization to the x86 back end. It can be 2007-10-11 19:40:01 +00:00
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 verify x86 generates ud2 for llvm.trap 2008-01-15 22:22:02 +00:00
trunc-to-bool.ll Convert another test to use the count script. This one didn't fit the 2007-08-15 13:42:36 +00:00
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
uint_to_fp.ll when we know the signbit of an input to uint_to_fp is zero, 2008-06-26 00:16:49 +00:00
urem-i8-constant.ll Don't lower srem/urem X%C to X-X/C*C unless the division is actually 2007-11-26 23:46:11 +00:00
v4f32-immediate.ll Change all floating constants that are not exactly 2007-09-05 17:50:36 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
vec_fneg.ll Remove double pipes in RUN commandlines. 2008-06-10 15:11:36 +00:00
vec_ins_extract.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Use shuffles to implement insert_vector_elt for i32, i64, f32, and f64. 2007-12-12 07:55:34 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 One readme entry is done, one is really easy (Evan, want to investigate 2007-12-29 19:31:47 +00:00
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-J.ll Fix for PR2472. Use movss to set lower 32-bits of a zero XMM vector. 2008-07-10 01:08:23 +00:00
vec_set.ll Add nounwind. 2008-05-07 22:59:08 +00:00
vec_shift2.ll - When DAG combiner is folding a bit convert into a BUILD_VECTOR, it should check if it's essentially a SCALAR_TO_VECTOR. Avoid turning (v8i16) <10, u, u, u> to <10, 0, u, u, u, u, u, u>. Instead, simply convert it to a SCALAR_TO_VECTOR of the proper type. 2008-02-18 23:04:32 +00:00
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 Fix sse2.psrl.w and sse2.psrl.q definitions. 2008-01-09 02:16:44 +00:00
vec_shuffle-2.ll Add nounwind. 2008-05-10 02:22:25 +00:00
vec_shuffle-3.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
vec_shuffle-4.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
vec_shuffle-7.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
vec_shuffle-8.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
vec_shuffle-9.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
vec_shuffle-10.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Make better use of instructions that clear high bits; fix various 2-wide shuffle bugs. 2007-12-15 03:00:47 +00:00
vec_shuffle-15.ll Make better use of instructions that clear high bits; fix various 2-wide shuffle bugs. 2007-12-15 03:00:47 +00:00
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 fix this when run on non x86 hosts. 2007-12-06 01:05:52 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
vector-intrinsics.ll Add intrinsics for sin, cos, and pow. These use llvm_anyfloat_ty, and so 2007-10-12 00:01:22 +00:00
vector-rem.ll Add support for vector remainder operations. 2007-11-05 23:35:22 +00:00
vector.ll Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
x86-64-dead-stack-adjust.ll actually run llc, thanks Dan :) 2008-02-27 17:46:54 +00:00
x86-64-frameaddr.ll The frame address on an x86-64 box needs to be offset by -8, not -4. 2008-07-11 07:18:52 +00:00
x86-64-gv-offset.ll Fix a x86-64 codegen deficiency. Allow gv + offset when using rip addressing mode. 2008-02-07 08:53:49 +00:00
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 Remove llvm-upgrade and update tests. 2008-02-21 07:42:26 +00:00
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