..
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
Fix a number of byval / memcpy / memset related codegen issues.
2008-08-21 21:00:15 +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
I missed this file in r54223. movzbl is now used instead
2008-07-30 18:23:34 +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
Change the x86 assembly output to use tab characters to separate the
2007-07-31 20:11:57 +00:00
2007-02-19-LiveIntervalAssert.ll
Doh. .cpp -> .ll
2007-05-14 20:43:28 +00:00
2007-02-25-FastCCStack.ll
new testcase
2007-02-25 22:23:15 +00:00
2007-03-01-SpillerCrash.ll
For PR1258:
2007-03-19 18:27:35 +00:00
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
Remove use of implementation keyword.
2007-03-28 02:38:26 +00:00
2007-03-18-LiveIntervalAssert.ll
Add test for PR1259.
2007-05-21 23:30:33 +00:00
2007-03-24-InlineAsmMultiRegConstraint.ll
new testcase
2007-03-25 02:17:58 +00:00
2007-03-24-InlineAsmPModifier.ll
For PR1319: Upgrade to new test harness.
2007-04-15 22:20:47 +00:00
2007-03-24-InlineAsmVectorOp.ll
For PR1319: Upgrade to new test harness.
2007-04-15 22:20:47 +00:00
2007-03-24-InlineAsmXConstraint.ll
For PR1319: Upgrade to new test harness.
2007-04-15 22:20:47 +00:00
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
update for new inline asm syntax
2007-04-28 05:20:26 +00:00
2007-04-11-InlineAsmVectorResult.ll
new testcase
2007-04-12 05:58:21 +00:00
2007-04-17-LiveIntervalAssert.ll
New crasher test case.
2007-04-18 02:35:10 +00:00
2007-04-24-Huge-Stack.ll
PR1348 test case.
2007-04-26 01:14:14 +00:00
2007-04-24-VectorCrash.ll
new testcase that crashes llc
2007-04-25 00:00:12 +00:00
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
new testcase for PR1356
2007-04-28 06:41:13 +00:00
2007-05-05-VecCastExpand.ll
Remove llvm-upgrade and update tests.
2008-02-21 07:42:26 +00:00
2007-05-07-InvokeSRet.ll
Try fixing it again.
2007-07-19 23:53:29 +00:00
2007-05-14-LiveIntervalAssert.ll
For PR1553:
2007-07-19 23:13:04 +00:00
2007-05-15-maskmovq.ll
testcase for maskmovq
2007-05-16 06:14:10 +00:00
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
For PR1553:
2007-07-19 23:13:04 +00:00
2007-06-04-X86-64-CtorAsmBugs.ll
New test.
2007-06-05 01:45:08 +00:00
2007-06-05-LSR-Dominator.ll
new testcase for PR1495
2007-06-06 01:21:46 +00:00
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
Allow a GR64 to be moved into an MMX register via the "movd" instruction.
2007-07-04 00:19:54 +00:00
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
Add test case for PR1545.
2007-07-11 19:29:05 +00:00
2007-07-18-Vector-Extract.ll
Change the x86 assembly output to use tab characters to separate the
2007-07-31 20:11:57 +00:00
2007-08-01-LiveVariablesBug.ll
New test. Bogus implicit-def prevented a copy from being coalesced.
2007-08-01 20:26:40 +00:00
2007-08-09-IllegalX86-64Asm.ll
Now capable of rematerializing coalesced live intervals.
2007-08-13 23:54:16 +00:00
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
Fix PR1607
2007-08-13 18:42:37 +00:00
2007-08-13-SpillerReuse.ll
For whatever the reason, x86 CallingConv::Fast (i.e. fastcc) was not passing scalar arguments in registers. This patch defines a new fastcc CC which is slightly different from the FastCall CC. In addition to passing integer arguments in ECX and EDX, it also specify doubles are passed in 8-byte slots which are 8-byte aligned (instead of 4-byte aligned). This avoids a potential performance hazard where doubles span cacheline boundaries.
2008-09-04 22:59:58 +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
Update these tests to work by disabling the new correct CFG generation. This flag should ONLY be used to for tests like these.
2008-08-04 23:55:29 +00:00
2007-11-30-LoadFolding-Bug.ll
Eliminate another use of -disable-correct-folding.
2008-08-05 18:03:01 +00:00
2007-11-30-TestLoadFolding.ll
Remove another -disable-correct-folding use.
2008-08-05 18:05:58 +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
For whatever the reason, x86 CallingConv::Fast (i.e. fastcc) was not passing scalar arguments in registers. This patch defines a new fastcc CC which is slightly different from the FastCall CC. In addition to passing integer arguments in ECX and EDX, it also specify doubles are passed in 8-byte slots which are 8-byte aligned (instead of 4-byte aligned). This avoids a potential performance hazard where doubles span cacheline boundaries.
2008-09-04 22:59:58 +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
Update the remaining tests not to use -disable-correct-folding, and remove two
2008-08-05 18:19:14 +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
Update the remaining tests not to use -disable-correct-folding, and remove two
2008-08-05 18:19:14 +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
Remove -disable-fast-isel. Use cl::boolOrDefault with -fast-isel
2008-10-07 23:00:56 +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-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
2008-07-16-CoalescerCrash.ll
Subreg live interval valno may not have a corresponding def machineinstr since it's less precise.
2008-07-17 19:48:53 +00:00
2008-07-19-movups-spills.ll
Make sse2 explicit, for non-x86 hosts.
2008-07-31 20:16:33 +00:00
2008-07-22-CombinerCrash.ll
Fix pr2566: incorrect assumption about bit_convert. It doesn't not have to output a vector value. Patch by Nicolas Capens!
2008-07-22 20:42:56 +00:00
2008-07-23-VSetCC.ll
LegalizeTypes support for VSETCC. Fixes PR2575.
2008-07-22 23:54:03 +00:00
2008-08-05-SpillerBug.ll
Fix PR2568: Fix bug that cause redudant kill marker after its live interval has been extended due to coalescing.
2008-08-05 07:10:38 +00:00
2008-08-06-RewriterBug.ll
Fix PR2596: out of bound reference.
2008-08-05 21:51:46 +00:00
2008-08-17-UComiCodeGenBug.ll
Fix a (u)comiss intrinsic lowering bug. It was using anyext which can return junk in higher bits. Patch by Nate Begeman.
2008-08-17 19:22:34 +00:00
2008-08-19-SubAndFetch.ll
Add support for the __sync_sub_and_fetch atomics and friends for X86. The code
2008-08-19 23:09:18 +00:00
2008-08-23-64Bit-maskmovq.ll
Testcase for 64bit maskmovq
2008-08-23 15:53:47 +00:00
2008-08-23-X86-64AsmBug.ll
Re-apply 55467 with fix. If copy is being replaced by remat'ed def, transfer the implicit defs onto the remat'ed instruction.
2008-08-30 09:09:33 +00:00
2008-08-25-AsmRegTypeMismatch.ll
Re-apply 55467 with fix. If copy is being replaced by remat'ed def, transfer the implicit defs onto the remat'ed instruction.
2008-08-30 09:09:33 +00:00
2008-08-31-EH_RETURN32.ll
Revert r56675 - it breaks unwinding runtime everywhere.
2008-10-04 11:09:36 +00:00
2008-08-31-EH_RETURN64.ll
Revert r56675 - it breaks unwinding runtime everywhere.
2008-10-04 11:09:36 +00:00
2008-09-05-sinttofp-2xi32.ll
Fix for PR2687: Add patterns to match sint_to_fp and fp_to_sint for <2 x
2008-09-05 23:07:03 +00:00
2008-09-09-LinearScanBug.ll
Fix PR2757. Ignore liveinterval register allocation preference if the preference register is not in the right register class. This can happen due to sub-register coalescing.
2008-09-09 20:22:01 +00:00
2008-09-10-SpillerBug2.ll
Propagate subreg index when promoting a load to a copy.
2008-09-11 01:02:12 +00:00
2008-09-11-CoalescerBug2.ll
Fix PR2748. Avoid coalescing physical register with virtual register which would create illegal extract_subreg. e.g.
2008-09-11 20:07:10 +00:00
2008-09-11-CoalescerBug.ll
Fix PR2783 - coalescer bug. Missing a TargetRegisterInfo::isVirtualRegister check.
2008-09-11 18:40:32 +00:00
2008-09-17-inline-asm-1.ll
Remove SelectionDag early allocation of registers
2008-09-24 23:13:09 +00:00
2008-09-18-inline-asm-2.ll
Remove SelectionDag early allocation of registers
2008-09-24 23:13:09 +00:00
2008-09-19-RegAllocBug.ll
Fix PR2808. When regalloc runs out of register, it spill a physical register around the live interval being allocated. Do not continue to try to spill another register, just grab the physical register and move on.
2008-09-20 01:28:05 +00:00
2008-09-25-sseregparm-1.ll
Accept 'inreg' attribute on x86 functions as
2008-09-25 20:47:45 +00:00
2008-09-26-FrameAddrBug.ll
Re-apply 56683 with fixes.
2008-09-27 01:56:22 +00:00
2008-09-29-ReMatBug.ll
Re-apply 56835 along with header file changes.
2008-09-30 15:44:16 +00:00
2008-09-29-VolatileBug.ll
Fix PR2835. Do not change the width of a volatile load.
2008-09-29 17:26:18 +00:00
2008-10-02-Atomics32-2.ll
Handle some 64-bit atomics on x86-32, some of the time.
2008-10-02 18:53:47 +00:00
2008-10-06-MMXISelBug.ll
Fix PR2850 and PR2863. Only generate movddup for 128-bit SSE vector shuffles.
2008-10-06 21:13:08 +00:00
2008-10-06-x87ld-nan-1.ll
Be more precise about which conversions of NaNs
2008-10-06 22:59:10 +00:00
2008-10-06-x87ld-nan-2.ll
Be more precise about which conversions of NaNs
2008-10-06 22:59:10 +00:00
2008-10-07-SSEISelBug.ll
Certain patterns involving the "movss" instruction were marked as requiring SSE2, when in reality movss is an SSE1 instruction.
2008-10-07 16:14:11 +00:00
2008-10-11-CallCrash.ll
Change CALLSEQ_BEGIN and CALLSEQ_END to take TargetConstant's as
2008-10-11 22:08:30 +00:00
2008-10-13-CoalescerBug.ll
Also update sub-register intervals after a trivial computation is rematt'ed for a copy instruction. PR2775.
2008-10-13 18:35:52 +00:00
2008-10-16-SpillerBug.ll
Teach CodeGenPrepare to look through Bitcast instructions when attempting to
2008-11-26 00:26:16 +00:00
2008-10-16-VecUnaryOp.ll
Turn on LegalizeTypes, the new type legalization
2008-10-27 08:42:46 +00:00
2008-10-17-Asm64bitRConstraint.ll
Fix a bug where the x86 backend would reject 64-bit r constraints when
2008-10-17 17:59:52 +00:00
2008-10-20-AsmDoubleInI32.ll
Fix gcc.c-torture/compile/920520-1.c by inserting bitconverts
2008-10-21 00:45:36 +00:00
2008-10-24-FlippedCompare.ll
Turn on LegalizeTypes, the new type legalization
2008-10-27 08:42:46 +00:00
2008-10-27-CoalescerBug.ll
Remove val# defined by a remat'ed def that is now dead.
2008-10-27 23:21:01 +00:00
2008-10-27-StackRealignment.ll
Fix a nasty miscompilation of 176.gcc on linux/x86 where we synthesized
2008-10-28 05:49:35 +00:00
2008-10-29-ExpandVAARG.ll
Fix PR2977: LegalizeTypes support for expanding
2008-10-29 14:25:28 +00:00
2008-11-03-F80VAARG.ll
Make VAARG work with x86 long double (which is
2008-11-03 11:51:11 +00:00
2008-11-06-testb.ll
Fix the testb optimization so x86 also bootstraps.
2008-11-12 02:00:35 +00:00
2008-11-13-inlineasm-3.ll
testcase for PR 1779.
2008-11-13 22:17:10 +00:00
2008-11-29-DivideConstant16bit.ll
Fix for PR2164: allow transforming arbitrary-width unsigned divides into
2008-11-30 06:02:26 +00:00
2008-11-29-DivideConstant16bitSigned.ll
Followup to r60283: optimize arbitrary width signed divisions as well
2008-11-30 06:35:39 +00:00
2008-11-29-ULT-Sign.ll
APIntify a test which is potentially unsafe otherwise, and fix the
2008-11-30 04:59:26 +00:00
2008-12-01-loop-iv-used-outside-loop.ll
Add rdar reference, make this actually fail when the patch isn't applied.
2008-12-01 22:35:31 +00:00
2008-12-01-SpillerAssert.ll
Fix PR3124: overly strict assert.
2008-12-02 02:15:36 +00:00
2008-12-02-dagcombine-1.ll
testcases for recent dag combiner changes
2008-12-03 00:52:41 +00:00
2008-12-02-dagcombine-2.ll
testcases for recent dag combiner changes
2008-12-03 00:52:41 +00:00
2008-12-02-dagcombine-3.ll
testcases for recent dag combiner changes
2008-12-03 00:52:41 +00:00
2008-12-02-IllegalResultType.ll
Fix PR3117: not all nodes being legalized. The
2008-12-09 21:33:20 +00:00
2008-12-05-SpillerCrash.ll
This test also requires -mattr=+sse41.
2008-12-05 19:26:37 +00:00
2008-12-16-BadShift.ll
Fix for PR3225: disable a broken optimization in
2008-12-17 03:35:17 +00:00
2008-12-16-dagcombine-4.ll
A new dag combine; several permutations of this
2008-12-16 22:13:49 +00:00
2008-12-19-EarlyClobberBug.ll
Fix PR3149. If an early clobber def is a physical register and it is tied to an input operand, it effectively extends the live range of the physical register. Currently we do not have a good way to represent this.
2008-12-19 20:58:01 +00:00
20081212.ll
Fix bug 3202.
2008-12-19 10:55:56 +00:00
add-trick32.ll
Fun x86 encoding tricks: when adding an immediate value of 128,
2008-10-17 01:33:43 +00:00
add-trick64.ll
Fun x86 encoding tricks: when adding an immediate value of 128,
2008-10-17 01:33:43 +00:00
add-with-overflow.ll
If ADD, SUB, or MUL have an overflow bit that's used, don't do transformation on
2008-12-10 22:36:00 +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
nounwind-ify this test.
2008-10-01 15:07:14 +00:00
alloca-align-rounding.ll
xfail this.
2008-08-29 22:59:13 +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
Add support for 8 and 16 bit forms of __sync
2008-08-19 18:47:28 +00:00
Atomics-32.ll
Test all currently supported atomic builtins on x86-{32,64}.
2008-08-22 22:39:21 +00:00
Atomics-64.ll
Test all currently supported atomic builtins on x86-{32,64}.
2008-08-22 22:39:21 +00:00
avoid-loop-align.ll
Avoid inserting noop's in the middle of a loop.
2008-11-27 01:16:00 +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
break-anti-dependencies.ll
Enable anti-dependence breaking by default when post-RA scheduling is enabled.
2008-12-16 06:21:45 +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
Fix a number of byval / memcpy / memset related codegen issues.
2008-08-21 21:00:15 +00:00
byval4.ll
Fix a number of byval / memcpy / memset related codegen issues.
2008-08-21 21:00:15 +00:00
byval5.ll
Fix a number of byval / memcpy / memset related codegen issues.
2008-08-21 21:00:15 +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
cmp2.ll
Swap fp comparison operands and change predicate to allow load folding (safely this time).
2008-08-29 23:22:12 +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
For whatever the reason, x86 CallingConv::Fast (i.e. fastcc) was not passing scalar arguments in registers. This patch defines a new fastcc CC which is slightly different from the FastCall CC. In addition to passing integer arguments in ECX and EDX, it also specify doubles are passed in 8-byte slots which are 8-byte aligned (instead of 4-byte aligned). This avoids a potential performance hazard where doubles span cacheline boundaries.
2008-09-04 22:59:58 +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
coalescer-remat.ll
Re-materalized definition instructions may be dead. Whack them.
2008-09-19 17:38:47 +00:00
combine-lds.ll
For whatever the reason, x86 CallingConv::Fast (i.e. fastcc) was not passing scalar arguments in registers. This patch defines a new fastcc CC which is slightly different from the FastCall CC. In addition to passing integer arguments in ECX and EDX, it also specify doubles are passed in 8-byte slots which are 8-byte aligned (instead of 4-byte aligned). This avoids a potential performance hazard where doubles span cacheline boundaries.
2008-09-04 22:59:58 +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
complex-fca.ll
Add a test case for _Complex passed as a FCA.
2008-10-13 18:13:07 +00:00
constant-pool-remat-0.ll
If SSE2 is available, x86 should pass first 3 f32/f64 arguments in XMM registers for fastcc calls.
2008-09-05 17:24:07 +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
critical-edge-split.ll
- CodeGenPrepare does not split loop back edges but it only knows about back edges of single block loops. It now does a DFS walk to find loop back edges.
2008-12-19 18:03:11 +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
Moved this option to the front-end.
2008-10-01 01:02:18 +00:00
darwin-no-dead-strip.ll
Remove llvm-upgrade and update tests.
2008-02-21 07:42:26 +00:00
darwin-stub.ll
No need to print function stubs for Mac OS X 10.5 and up. Linker will handle it.
2008-09-20 00:13:45 +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
Change the x86 assembly output to use tab characters to separate the
2007-07-31 20:11:57 +00:00
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
extractelement-shuffle.ll
Fixed a bug when trying to optimize a extract vector element of a
2008-12-10 03:59:02 +00:00
extractps.ll
Use MOVSSmr instead of EXTRACTPSmr in the case of extracting
2008-10-31 00:57:24 +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 code that pad number of bytes to pop for X86_FastCall CC. The code doesn't do the "aligning" for Cygwin, Mingw, and Windows. But aligning it on Darwin and Linux breaks gcc compatibility. That ruled out all the platforms we support!
2008-09-04 01:04:15 +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
fast-isel-call.ll
Handle calls which produce i1 results: promote to i8 but and it with 1 to get the low bit.
2008-09-08 17:15:42 +00:00
fast-isel-gep-sext.ll
Factor out the code for sign-extending/truncating gep indices
2008-12-08 07:57:47 +00:00
fast-isel-mem.ll
Refactor X86SelectConstAddr, folding it into X86SelectAddress. This
2008-09-19 22:16:54 +00:00
fast-isel-phys.ll
Correctly handle physical register inputs. They are not explicit input operands in the resulting machine instrs.
2008-09-08 08:39:33 +00:00
fast-isel-trunc.ll
Handle x86 truncate to i8 with target hook for now.
2008-09-07 08:47:42 +00:00
fast-isel.ll
Load from GV stub should be locally CSE'd.
2008-09-04 06:18:33 +00:00
fastcall-correct-mangling.ll
Remove llvm-upgrade and update tests.
2008-02-21 07:42:26 +00:00
fastcc-2.ll
If SSE2 is available, x86 should pass first 3 f32/f64 arguments in XMM registers for fastcc calls.
2008-09-05 17:24:07 +00:00
fastcc-byval.ll
Fix byval arguments in the fastcc calling convention. The fastcc convention
2008-12-03 01:28:04 +00:00
fastcc-sret.ll
Fix a fastcc + sret bug. If fastcc and sret, callee doesn't need to pop the hidden struct ptr; Re-enable fastcc.
2008-09-10 18:25:29 +00:00
fastcc.ll
Fix test.
2008-09-05 20:04:37 +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-2.ll
Try approach to moving call address load inside of callseq_start. Now it's done during the preprocess of x86 isel. callseq_start's chain is changed to load's chain node; while load's chain is the last of callseq_start or the loads or copytoreg nodes inserted to move arguments to the right spot.
2008-08-25 21:27:18 +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-imm.ll
On x86 favors folding short immediate into some arithmetic operations (e.g. add, and, xor, etc.) because materializing an immediate in a register is expensive in turns of code size.
2008-11-27 00:49:46 +00:00
fold-load.ll
Add -march=x86.
2008-11-27 00:37:06 +00:00
fold-mul-lohi.ll
Don't mask the isel bug.
2008-02-12 19:11:29 +00:00
fold-pcmpeqd-0.ll
Fix some register-alias-related bugs in the post-RA scheduler liveness
2008-12-16 03:25:46 +00:00
fold-pcmpeqd-1.ll
Mark x86's V_SET0 and V_SETALLONES with isSimpleLoad, and teach X86's
2008-12-03 05:21:24 +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
ga-offset.ll
Teach DAGCombine to fold constant offsets into GlobalAddress nodes,
2008-10-18 02:06:02 +00:00
hidden-vis-2.ll
Re-did 60519. It turns out Darwin's handling of hidden visibility symbols are a bit more complicate than I expected. Both declarations and weak definitions still need a stub indirection. However, the stubs are in data section and they contain the addresses of the actual symbols.
2008-12-05 01:06:39 +00:00
hidden-vis-3.ll
Re-did 60519. It turns out Darwin's handling of hidden visibility symbols are a bit more complicate than I expected. Both declarations and weak definitions still need a stub indirection. However, the stubs are in data section and they contain the addresses of the actual symbols.
2008-12-05 01:06:39 +00:00
hidden-vis-4.ll
Re-did 60519. It turns out Darwin's handling of hidden visibility symbols are a bit more complicate than I expected. Both declarations and weak definitions still need a stub indirection. However, the stubs are in data section and they contain the addresses of the actual symbols.
2008-12-05 01:06:39 +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
i2k.ll
Change how extended types are represented in MVTs. Instead of fiddling
2008-11-03 17:56:27 +00:00
i128-and-beyond.ll
Split this test and move it into target-specific directories.
2008-10-01 19:46:30 +00:00
i128-immediate.ll
APIntify SelectionDAG's EXTRACT_ELEMENT code.
2008-03-24 16:38:05 +00:00
i128-mul.ll
new testcase, by Dan Gohman
2007-02-13 23:41:24 +00:00
i128-ret.ll
Change the x86 assembly output to use tab characters to separate the
2007-07-31 20:11:57 +00:00
i256-add.ll
Add a testcase for i256 add. i256 isn't fully supported in
2008-10-07 20:39:12 +00:00
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
Change the x86 assembly output to use tab characters to separate the
2007-07-31 20:11:57 +00:00
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-pic.ll
Properly handle 'm' inline asm constraints. If a GV is being selected for the addressing mode, it requires the same logic for PIC relative addressing, etc.
2008-09-24 00:05:32 +00:00
inline-asm-x-scalar.ll
make this test harder, include a tied register.
2007-06-15 19:09:53 +00:00
inline-asm.ll
Support x86 specific inline asm modifier 'J'.
2008-09-22 23:57:37 +00:00
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
Update the remaining tests not to use -disable-correct-folding, and remove two
2008-08-05 18:19:14 +00:00
insertelement-copytoregs.ll
Fix EXTRACT_ELEMENT, EXTRACT_SUBVECTOR, and EXTRACT_VECTOR_ELT to
2007-08-10 14:59:38 +00:00
insertelement-legalize.ll
Added support to LegalizeType for expanding the operands of scalar to vector
2008-12-15 06:57:02 +00:00
invalid-shift-immediate.ll
Avoid aborting on invalid shift counts.
2008-02-26 18:50:50 +00:00
isel-sink2.ll
Teach CodeGenPrepare to look through Bitcast instructions when attempting to
2008-11-26 00:26:16 +00:00
isel-sink3.ll
On x86 favors folding short immediate into some arithmetic operations (e.g. add, and, xor, etc.) because materializing an immediate in a register is expensive in turns of code size.
2008-11-27 00:49:46 +00:00
isel-sink.ll
Change the x86 assembly output to use tab characters to separate the
2007-07-31 20:11:57 +00:00
isint.ll
Be kind to non-x86 hosts.
2008-10-24 21:20:25 +00:00
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
For PR1370:
2007-04-30 05:11:58 +00:00
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
Change the x86 assembly output to use tab characters to separate the
2007-07-31 20:11:57 +00:00
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
local-liveness.ll
Remove the FlaggedNodes member from SUnit. Instead of requiring each SUnit
2008-11-13 23:24:17 +00:00
long-setcc.ll
Swap fp comparison operands and change predicate to allow load folding.
2008-08-28 23:48:31 +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-2.ll
Fix test to pass on Linux.
2008-12-05 22:38:21 +00:00
loop-strength-reduce-3.ll
Make LoopStrengthReduce smarter about hoisting things out of
2008-12-05 21:47:27 +00:00
loop-strength-reduce.ll
Make LoopStrengthReduce smarter about hoisting things out of
2008-12-05 21:47:27 +00:00
lsr-negative-stride.ll
add source
2007-05-19 01:22:52 +00:00
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
Fix a number of byval / memcpy / memset related codegen issues.
2008-08-21 21:00:15 +00:00
memset-2.ll
Fix a number of byval / memcpy / memset related codegen issues.
2008-08-21 21:00:15 +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
And now support for MMX logical operations.
2007-03-16 09:44:46 +00:00
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
Add the emms intrinsic for MMX support.
2007-03-05 23:09:45 +00:00
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-pinsrw.ll
Fix for first part of PR2562. Generate the "pinsrw" instruction for inserts
2008-07-20 02:32:23 +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-s2v.ll
Fix PR2574: implement v2f32 scalar_to_vector.
2008-07-22 18:39:19 +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
testcase for PR1427
2007-05-17 03:29:17 +00:00
mmx-vzmovl-2.ll
Use mmx (punpckldq VR64, (mmx_v_set0)) to clear high 32-bits of a VR64 register.
2008-12-03 19:38:05 +00:00
mmx-vzmovl.ll
Add more vector move low and zero-extend patterns.
2008-11-05 06:04:51 +00:00
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
New test case. DAGCombiner should be able to fold -sin(-x)
2007-07-02 15:43:20 +00:00
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
optimize-smax.ll
Teach LSR to optimize away SMAX operations for tripcounts in common
2008-09-15 21:22:06 +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
Fix test to account for generating some vector code for mul v2i64 instead
2008-12-18 23:42:37 +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
pr2623.ll
Fix SDISel lowering of PHI nodes to use ComputeValueVTs.
2008-08-04 23:42:46 +00:00
pr2656.ll
Make x86 and sse2 explicit for non-x86 hosts.
2008-08-21 21:26:06 +00:00
pr2849.ll
When doing the very-late shift-and address-mode optimization,
2008-10-13 20:52:04 +00:00
pr2924.ll
Fix SelectionDAGBuild lowering of Select instructions to
2008-10-21 20:00:42 +00:00
pr2982.ll
The ANDMask node folds to a constant, and isn't the node that needs to
2008-11-03 23:43:55 +00:00
pre-split1.ll
Avoid splitting an interval multiple times; avoid splitting re-materializable val# (for now).
2008-10-24 02:05:00 +00:00
pre-split2.ll
Add support for rematerialization in pre-alloc-splitting.
2008-11-19 04:28:29 +00:00
pre-split3.ll
- More pre-split fixes: spill slot live interval computation bug; restore point bug.
2008-10-29 08:39:34 +00:00
pre-split4.ll
If val# def is ~0U, meaning it's defined by a PHI, and it's previously split, spill before the barrier because it's impossible to determine if all the defs are spilled in the same spill slot.
2008-10-25 00:52:41 +00:00
pre-split5.ll
Handle cases where there aren't uses in the barrier mbb.
2008-10-25 23:49:39 +00:00
pre-split6.ll
Do not shrink wrap live interval in a mbb if it's livein any of its successor blocks. The mbb can be revisited again after all of the successors are processed.
2008-10-26 07:49:03 +00:00
pre-split7.ll
For now, don't split live intervals around x87 stack register barriers. FpGET_ST0_80 must be right after a call instruction (and ADJCALLSTACKUP) so we need to find a way to prevent reload of x87 registers between them.
2008-10-27 07:14:50 +00:00
pre-split8.ll
Avoid putting a split past the end of the live range; always shrink wrap live interval in the barrier mbb.
2008-10-28 00:47:49 +00:00
pre-split9.ll
Avoid putting a split past the end of the live range; always shrink wrap live interval in the barrier mbb.
2008-10-28 00:47:49 +00:00
pre-split10.ll
- More pre-split fixes: spill slot live interval computation bug; restore point bug.
2008-10-29 08:39:34 +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-constant.ll
This test needs -aggressive-remat enabled.
2008-07-25 15:25:32 +00:00
remat-mov0.ll
- CodeGenPrepare does not split loop back edges but it only knows about back edges of single block loops. It now does a DFS walk to find loop back edges.
2008-12-19 18:03:11 +00:00
ret-i64-0.ll
remove some unneeded eh generation
2008-10-21 03:49:19 +00:00
rot16.ll
Define patterns for shld and shrd that match immediate
2008-10-17 01:23:35 +00:00
rot32.ll
Define patterns for shld and shrd that match immediate
2008-10-17 01:23:35 +00:00
rot64.ll
Define patterns for shld and shrd that match immediate
2008-10-17 01:23:35 +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
setoeq.ll
- Add target lowering hooks that specify which setcc conditions are illegal,
2008-10-15 02:05:31 +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
sext-trunc.ll
Improve dagcombining for sext-loads and sext-in-reg nodes.
2008-07-31 00:50:31 +00:00
sfence.ll
llvm.memory.barrier, and impl for x86 and alpha
2008-02-16 01:24:58 +00:00
shift-and.ll
Transform (x << (y&31)) -> (x << y). This takes advantage of the fact x86 shift instructions 2nd operand (shift count) is limited to 0 to 31 (or 63 in the x86-64 case).
2008-08-30 02:03: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
Increase efficiency of sign_extend_inreg by using subregisters for truncation. As the README suggests sign_extend_subreg is selected to (sext(trunc)).
2007-08-10 21:48:46 +00:00
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
smul-with-overflow.ll
- Use patterns instead of creating completely new instruction matching patterns,
2008-12-12 21:15:41 +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
sret.ll
Fix a fastcc + sret bug. If fastcc and sret, callee doesn't need to pop the hidden struct ptr; Re-enable fastcc.
2008-09-10 18:25:29 +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
sse41-pmovx.ll
Use explicit target-triples to unbreak this test on non-darwin systems.
2008-10-01 00:25:38 +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
For PR1336:
2007-04-16 14:23:07 +00:00
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
sub-with-overflow.ll
Add sub/mul overflow intrinsics. This currently doesn't have a
2008-12-09 22:08:41 +00:00
subclass-coalesce.ll
New test case.
2008-06-19 01:50:24 +00:00
subreg-to-reg-0.ll
Re-enable elimination of unnecessary SUBREG_TO_REG instructions in
2008-08-07 02:54:50 +00:00
subreg-to-reg-1.ll
Re-enable elimination of unnecessary SUBREG_TO_REG instructions in
2008-08-07 02:54:50 +00:00
tailcall1.ll
Added missing -march=x86 flag.
2007-10-12 07:49:48 +00:00
tailcall-stackalign.ll
Change the calling convention used when tail call optimization is enabled from CC_X86_32_TailCall to CC_X86_32_FastCC.
2008-09-22 14:50:07 +00:00
tailcallbyval64.ll
This patch corrects the handling of byval arguments for tailcall
2008-04-12 18:11:06 +00:00
tailcallbyval.ll
Fix byval arguments in the fastcc calling convention. The fastcc convention
2008-12-03 01:28:04 +00:00
tailcallfp2.ll
Change the calling convention used when tail call optimization is enabled from CC_X86_32_TailCall to CC_X86_32_FastCC.
2008-09-22 14:50:07 +00:00
tailcallfp.ll
Add indirect tail call (function pointer) examples.
2008-09-11 22:24:28 +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
Change the x86 assembly output to use tab characters to separate the
2007-07-31 20:11:57 +00:00
tls2.ll
Change the x86 assembly output to use tab characters to separate the
2007-07-31 20:11:57 +00:00
trap.ll
verify x86 generates ud2 for llvm.trap
2008-01-15 22:22:02 +00:00
trunc-to-bool.ll
When promoting the result of fp_to_uint/fp_to_sint,
2008-11-10 17:28:30 +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
umul-with-carry.ll
- Use patterns instead of creating completely new instruction matching patterns,
2008-12-12 21:15:41 +00:00
urem-i8-constant.ll
Fix for PR2164: allow transforming arbitrary-width unsigned divides into
2008-11-30 06:02:26 +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
Implement "punpckldq %xmm0, $xmm0" as "pshufd $0x50, %xmm0, %xmm" unless optimizing for code size.
2008-09-26 23:41:32 +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 PR2485: do all 4-element SSE shuffles in max. of 2 shuffle instructions.
2008-07-23 00:22:17 +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
Add target triples so these tests behave as expected on non-darwin hosts.
2008-07-24 18:08:01 +00:00
vec_insert-7.ll
Fix test RUN line
2008-07-25 19:08:59 +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
Prefer movlhps over punpcklqdq, etc. in more cases.
2008-09-25 23:35:16 +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
Add nounwind.
2008-07-17 19:48:04 +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-19.ll
Add target triples so these tests behave as expected on non-darwin hosts.
2008-07-24 18:08:01 +00:00
vec_shuffle-20.ll
Add target triples so these tests behave as expected on non-darwin hosts.
2008-07-24 18:08:01 +00:00
vec_shuffle-21.ll
Testcase for PR2585.
2008-08-21 23:04:49 +00:00
vec_shuffle-22.ll
With sse3 and when the source is a load or has multiple uses, favors movddup over shuffp*, pshufd, etc. Without sse3 or when the source is from a register, make use of movlhps
2008-09-25 20:50:48 +00:00
vec_shuffle-23.ll
Remove OptimizeForSize global. Use function attribute optsize.
2008-10-01 23:18:38 +00:00
vec_shuffle-24.ll
Remove OptimizeForSize global. Use function attribute optsize.
2008-10-01 23:18:38 +00:00
vec_shuffle-25.ll
Improved shuffle normalization to avoid using extract/build when we
2008-11-16 05:06:27 +00:00
vec_shuffle-26.ll
Improved shuffle normalization to avoid using extract/build when we
2008-11-16 05:06:27 +00:00
vec_shuffle-27.ll
Improved shuffle normalization to avoid using extract/build when we
2008-11-16 05:06:27 +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-variable-idx.ll
Allow SelectionDAG to create EXTRACT_VECTOR_ELT nodes with
2008-08-13 21:51:37 +00:00
vector.ll
Remove llvm-upgrade and update tests.
2008-02-21 07:42:26 +00:00
vfcmp.ll
Fix PR2620: Fix X86cmppd selection code so it expects operands to be v2f64.
2008-08-05 22:19:15 +00:00
volatile.ll
Fix a think-o in isSafeToMove. This fixes it from thinking that
2008-10-02 15:04:30 +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
vshift_scalar.ll
Added support for splitting and scalarizing vector shifts.
2008-12-15 21:44:00 +00:00
vshift_split2.ll
Added support for splitting and scalarizing vector shifts.
2008-12-15 21:44:00 +00:00
vshift_split.ll
Fix getNode to allow a vector for the shift amount for shifts of vectors.
2008-12-09 05:46:39 +00:00
weak.ll
Remove llvm-upgrade and update tests.
2008-02-21 07:42:26 +00:00
widen_arith-1.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_arith-2.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_arith-3.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_arith-4.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_arith-5.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_arith-6.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_cast-1.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_cast-2.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_cast-3.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_cast-4.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_cast-5.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_conv-1.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_conv-2.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_conv-3.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_conv-4.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_select-1.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_shuffle-1.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +00:00
widen_shuffle-2.ll
Added some basic test cases for r61209
2008-12-18 20:05:58 +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
Change the x86 assembly output to use tab characters to separate the
2007-07-31 20:11:57 +00:00
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-disp.ll
Don't create TargetGlobalAddress nodes with offsets that don't fit
2008-10-21 03:38:42 +00:00
x86-64-frameaddr.ll
Re-apply 56683 with fixes.
2008-09-27 01:56:22 +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
For PR1553:
2007-07-19 23:13:04 +00:00
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
x86-frameaddr2.ll
Re-apply 56683 with fixes.
2008-09-27 01:56:22 +00:00
x86-frameaddr.ll
Re-apply 56683 with fixes.
2008-09-27 01:56:22 +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
zext-inreg-0.ll
Re-introduce the 8-bit subreg zext-inreg patterns for x86-32,
2008-08-06 18:27:21 +00:00
zext-inreg-1.ll
Add an extra example that shouldn't get an and instruction.
2008-08-07 02:23:06 +00:00