llvm-6502/test/CodeGen/X86
Elena Demikhovsky ce58a03587 Fixed a bug in SelectionDAG.cpp.
The failure seen on win32, when i64 type is illegal.
It happens on stage of conversion VECTOR_SHUFFLE to BUILD_VECTOR.

The failure message is:
llc: SelectionDAG.cpp:784: void VerifyNodeCommon(llvm::SDNode*): Assertion `(I->getValueType() == EltVT || (EltVT.isInteger() && I->getValueType().isInteger() && EltVT.bitsLE(I->getValueType()))) && "Wrong operand type!"' failed.

I added a special test that checks vector shuffle on win32.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147445 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-03 11:59:04 +00:00
..
GC
3addr-16bit.ll
3addr-or.ll
3dnow-intrinsics.ll
4char-promote.ll
2003-08-03-CallArgLiveRanges.ll
2003-08-23-DeadBlockTest.ll
2003-11-03-GlobalBool.ll
2004-02-13-FrameReturnAddress.ll
2004-02-14-InefficientStackPointer.ll
2004-02-22-Casts.ll
2004-03-30-Select-Max.ll
2004-04-13-FPCMOV-Crash.ll
2004-06-10-StackifierCrash.ll
2004-10-08-SelectSetCCFold.ll
2005-01-17-CycleInDAG.ll
2005-02-14-IllegalAssembler.ll
2005-05-08-FPStackifierPHI.ll
2006-01-19-ISelFoldingBug.ll
2006-03-01-InstrSchedBug.ll
2006-03-02-InstrSchedBug.ll
2006-04-04-CrossBlockCrash.ll
2006-04-27-ISelFoldingBug.ll
2006-05-01-SchedCausingSpills.ll
2006-05-02-InstrSched1.ll
2006-05-02-InstrSched2.ll
2006-05-08-CoalesceSubRegClass.ll
2006-05-08-InstrSched.ll
2006-05-11-InstrSched.ll Use a bigger hammer to fix PR11314 by disabling the "forcing two-address 2011-11-10 07:43:16 +00:00
2006-05-17-VectorArg.ll
2006-05-22-FPSetEQ.ll
2006-05-25-CycleInDAG.ll
2006-07-10-InlineAsmAConstraint.ll
2006-07-12-InlineAsmQConstraint.ll
2006-07-20-InlineAsm.ll
2006-07-28-AsmPrint-Long-As-Pointer.ll
2006-07-31-SingleRegClass.ll
2006-08-07-CycleInDAG.ll
2006-08-16-CycleInDAG.ll
2006-08-21-ExtraMovInst.ll
2006-09-01-CycleInDAG.ll
2006-10-02-BoolRetCrash.ll
2006-10-07-ScalarSSEMiscompile.ll
2006-10-09-CycleInDAG.ll
2006-10-10-FindModifiedNodeSlotBug.ll
2006-10-12-CycleInDAG.ll
2006-10-13-CycleInDAG.ll
2006-10-19-SwitchUnnecessaryBranching.ll
2006-11-12-CSRetCC.ll
2006-11-17-IllegalMove.ll
2006-11-27-SelectLegalize.ll
2006-12-16-InlineAsmCrash.ll
2006-12-19-IntelSyntax.ll
2007-01-08-InstrSched.ll
2007-01-08-X86-64-Pointer.ll
2007-01-13-StackPtrIndex.ll
2007-01-29-InlineAsm-ir.ll
2007-02-04-OrAddrMode.ll
2007-02-16-BranchFold.ll
2007-02-19-LiveIntervalAssert.ll
2007-02-23-DAGCombine-Miscompile.ll
2007-02-25-FastCCStack.ll
2007-03-01-SpillerCrash.ll
2007-03-15-GEP-Idx-Sink.ll
2007-03-16-InlineAsm.ll
2007-03-18-LiveIntervalAssert.ll
2007-03-24-InlineAsmMultiRegConstraint.ll
2007-03-24-InlineAsmPModifier.ll
2007-03-24-InlineAsmVectorOp.ll
2007-03-24-InlineAsmXConstraint.ll
2007-03-26-CoalescerBug.ll
2007-04-08-InlineAsmCrash.ll
2007-04-11-InlineAsmVectorResult.ll
2007-04-17-LiveIntervalAssert.ll
2007-04-24-Huge-Stack.ll
2007-04-24-VectorCrash.ll
2007-04-25-MMX-PADDQ.ll
2007-04-27-InlineAsm-IntMemInput.ll
2007-05-05-Personality.ll
2007-05-05-VecCastExpand.ll
2007-05-07-InvokeSRet.ll
2007-05-14-LiveIntervalAssert.ll
2007-05-15-maskmovq.ll
2007-05-17-ShuffleISelBug.ll
2007-06-04-X86-64-CtorAsmBugs.ll
2007-06-15-IntToMMX.ll
2007-06-28-X86-64-isel.ll
2007-06-29-DAGCombinerBug.ll
2007-06-29-VecFPConstantCSEBug.ll
2007-07-03-GR64ToVR64.ll
2007-07-10-StackerAssert.ll
2007-07-18-Vector-Extract.ll
2007-08-01-LiveVariablesBug.ll
2007-08-09-IllegalX86-64Asm.ll
2007-08-10-SignExtSubreg.ll
2007-08-13-AppendingLinkage.ll
2007-09-05-InvalidAsm.ll
2007-09-06-ExtWeakAliasee.ll
2007-09-17-ObjcFrameEH.ll
2007-09-18-ShuffleXformBug.ll
2007-09-27-LDIntrinsics.ll
2007-10-04-AvoidEFLAGSCopy.ll
2007-10-12-CoalesceExtSubReg.ll
2007-10-12-SpillerUnfold1.ll
2007-10-12-SpillerUnfold2.ll
2007-10-14-CoalescerCrash.ll
2007-10-15-CoalescerCrash.ll
2007-10-16-CoalescerCrash.ll
2007-10-17-IllegalAsm.ll
2007-10-19-SpillerUnfold.ll
2007-10-28-inlineasm-q-modifier.ll
2007-10-29-ExtendSetCC.ll
2007-10-30-LSRCrash.ll
2007-10-31-extractelement-i64.ll
2007-11-01-ISelCrash.ll
2007-11-03-x86-64-q-constraint.ll
2007-11-04-LiveIntervalCrash.ll
2007-11-04-LiveVariablesBug.ll
2007-11-04-rip-immediate-constant.ll
2007-11-06-InstrSched.ll
2007-11-07-MulBy4.ll
2007-11-30-LoadFolding-Bug.ll
2007-12-16-BURRSchedCrash.ll
2007-12-18-LoadCSEBug.ll
2008-01-08-IllegalCMP.ll
2008-01-08-SchedulerCrash.ll
2008-01-09-LongDoubleSin.ll
2008-01-16-FPStackifierAssert.ll
2008-01-16-InvalidDAGCombineXform.ll
2008-02-05-ISelCrash.ll
2008-02-06-LoadFoldingBug.ll
2008-02-08-LoadFoldingBug.ll
2008-02-14-BitMiscompile.ll
2008-02-18-TailMergingBug.ll
2008-02-20-InlineAsmClobber.ll
2008-02-22-LocalRegAllocBug.ll
2008-02-25-InlineAsmBug.ll
2008-02-25-X86-64-CoalescerBug.ll
2008-02-26-AsmDirectMemOp.ll
2008-02-27-DeadSlotElimBug.ll
2008-02-27-PEICrash.ll
2008-03-06-frem-fpstack.ll
2008-03-07-APIntBug.ll
2008-03-10-RegAllocInfLoop.ll
2008-03-12-ThreadLocalAlias.ll
2008-03-13-TwoAddrPassCrash.ll
2008-03-14-SpillerCrash.ll
2008-03-19-DAGCombinerBug.ll
2008-03-23-DarwinAsmComments.ll
2008-03-25-TwoAddrPassBug.ll
2008-03-31-SpillerFoldingBug.ll
2008-04-02-unnamedEH.ll
2008-04-08-CoalescerCrash.ll
2008-04-09-BranchFolding.ll
2008-04-15-LiveVariableBug.ll
2008-04-16-CoalescerBug.ll
2008-04-16-ReMatBug.ll
2008-04-17-CoalescerBug.ll
2008-04-24-MemCpyBug.ll
2008-04-24-pblendw-fold-crash.ll
2008-04-26-Asm-Optimize-Imm.ll
2008-04-28-CoalescerBug.ll
2008-04-28-CyclicSchedUnit.ll
2008-05-01-InvalidOrdCompare.ll
2008-05-09-PHIElimBug.ll
2008-05-09-ShuffleLoweringBug.ll
2008-05-12-tailmerge-5.ll
2008-05-21-CoalescerBug.ll Switch a couple -O0 tests to RABasic. 2011-11-12 20:11:04 +00:00
2008-05-22-FoldUnalignedLoad.ll
2008-05-28-CoalescerBug.ll
2008-05-28-LocalRegAllocBug.ll
2008-06-13-NotVolatileLoadStore.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
2008-06-13-VolatileLoadStore.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
2008-06-16-SubregsBug.ll
2008-06-18-BadShuffle.ll
2008-06-25-VecISelBug.ll
2008-07-07-DanglingDeadInsts.ll
2008-07-09-ELFSectionAttributes.ll
2008-07-11-SHLBy1.ll
2008-07-16-CoalescerCrash.ll
2008-07-19-movups-spills.ll
2008-07-22-CombinerCrash.ll
2008-07-23-VSetCC.ll
2008-08-06-CmpStride.ll
2008-08-06-RewriterBug.ll
2008-08-17-UComiCodeGenBug.ll
2008-08-19-SubAndFetch.ll
2008-08-23-64Bit-maskmovq.ll
2008-08-25-AsmRegTypeMismatch.ll Make X86::FsFLD0SS / FsFLD0SD real pseudo-instructions. 2011-11-29 22:27:25 +00:00
2008-08-31-EH_RETURN32.ll
2008-08-31-EH_RETURN64.ll
2008-09-05-sinttofp-2xi32.ll
2008-09-09-LinearScanBug.ll
2008-09-11-CoalescerBug2.ll
2008-09-11-CoalescerBug.ll
2008-09-17-inline-asm-1.ll
2008-09-18-inline-asm-2.ll Linear scan is going away. 2011-11-12 22:39:34 +00:00
2008-09-19-RegAllocBug.ll
2008-09-25-sseregparm-1.ll
2008-09-26-FrameAddrBug.ll
2008-09-29-ReMatBug.ll
2008-09-29-VolatileBug.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
2008-10-06-MMXISelBug.ll
2008-10-06-x87ld-nan-1.ll
2008-10-06-x87ld-nan-2.ll
2008-10-07-SSEISelBug.ll
2008-10-11-CallCrash.ll
2008-10-13-CoalescerBug.ll
2008-10-16-VecUnaryOp.ll
2008-10-17-Asm64bitRConstraint.ll
2008-10-20-AsmDoubleInI32.ll
2008-10-24-FlippedCompare.ll
2008-10-27-CoalescerBug.ll
2008-10-27-StackRealignment.ll
2008-10-29-ExpandVAARG.ll
2008-11-03-F80VAARG.ll
2008-11-06-testb.ll
2008-11-13-inlineasm-3.ll
2008-11-29-ULT-Sign.ll
2008-12-01-loop-iv-used-outside-loop.ll
2008-12-01-SpillerAssert.ll
2008-12-02-dagcombine-1.ll
2008-12-02-dagcombine-2.ll
2008-12-02-dagcombine-3.ll
2008-12-02-IllegalResultType.ll
2008-12-12-PrivateEHSymbol.ll
2008-12-16-BadShift.ll
2008-12-16-dagcombine-4.ll
2008-12-19-EarlyClobberBug.ll
2008-12-22-dagcombine-5.ll
2008-12-23-crazy-address.ll
2008-12-23-dagcombine-6.ll
2009-01-13-DoubleUpdate.ll
2009-01-16-SchedulerBug.ll
2009-01-16-UIntToFP.ll
2009-01-18-ConstantExprCrash.ll
2009-01-25-NoSSE.ll
2009-01-26-WrongCheck.ll
2009-01-27-NullStrings.ll
2009-01-31-BigShift2.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
2009-01-31-BigShift3.ll
2009-01-31-BigShift.ll
2009-02-01-LargeMask.ll
2009-02-03-AnalyzedTwice.ll
2009-02-04-sext-i64-gep.ll
2009-02-08-CoalescerBug.ll
2009-02-09-ivs-different-sizes.ll
2009-02-11-codegenprepare-reuse.ll
2009-02-12-DebugInfoVLA.ll
2009-02-12-InlineAsm-nieZ-constraints.ll
2009-02-12-SpillerBug.ll
2009-02-21-ExtWeakInitializer.ll
2009-02-25-CommuteBug.ll
2009-02-26-MachineLICMBug.ll
2009-03-03-BitcastLongDouble.ll
2009-03-03-BTHang.ll
2009-03-05-burr-list-crash.ll
2009-03-07-FPConstSelect.ll
2009-03-09-APIntCrash.ll
2009-03-09-SpillerBug.ll
2009-03-10-CoalescerBug.ll
2009-03-12-CPAlignBug.ll
2009-03-13-PHIElimBug.ll
2009-03-16-PHIElimInLPad.ll
2009-03-23-i80-fp80.ll
2009-03-23-LinearScanBug.ll
2009-03-23-MultiUseSched.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
2009-03-25-TestBug.ll
2009-03-26-NoImplicitFPBug.ll
2009-04-12-FastIselOverflowCrash.ll
2009-04-12-picrel.ll
2009-04-13-2AddrAssert-2.ll
2009-04-13-2AddrAssert.ll
2009-04-14-IllegalRegs.ll
2009-04-16-SpillerUnfold.ll
2009-04-21-NoReloadImpDef.ll Linear scan is going away. 2011-11-12 22:39:34 +00:00
2009-04-24.ll
2009-04-25-CoalescerBug.ll
2009-04-27-CoalescerAssert.ll
2009-04-27-LiveIntervalsAssert2.ll
2009-04-27-LiveIntervalsAssert.ll
2009-04-29-IndirectDestOperands.ll
2009-04-29-LinearScanBug.ll
2009-04-29-RegAllocAssert.ll
2009-04-scale.ll
2009-05-08-InlineAsmIOffset.ll
2009-05-11-tailmerge-crash.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
2009-05-19-SingleElementExtractElement.ll
2009-05-23-available_externally.ll
2009-05-23-dagcombine-shifts.ll
2009-05-28-DAGCombineCrash.ll
2009-05-30-ISelBug.ll
2009-06-02-RewriterBug.ll
2009-06-03-Win64DisableRedZone.ll
2009-06-03-Win64SpillXMM.ll
2009-06-04-VirtualLiveIn.ll
2009-06-05-ScalarToVectorByteMMX.ll
2009-06-05-sitofpCrash.ll
2009-06-05-VariableIndexInsert.ll
2009-06-05-VZextByteShort.ll
2009-06-06-ConcatVectors.ll
2009-06-07-ExpandMMXBitcast.ll
2009-06-12-x86_64-tail-call-conv-out-of-sync-bug.ll
2009-06-15-not-a-tail-call.ll
2009-06-18-movlp-shuffle-register.ll
2009-07-06-TwoAddrAssert.ll
2009-07-07-SplitICmp.ll
2009-07-09-ExtractBoolFromVector.ll
2009-07-15-CoalescerBug.ll
2009-07-16-CoalescerBug.ll
2009-07-19-AsmExtraOperands.ll
2009-07-20-CoalescerBug.ll
2009-07-20-DAGCombineBug.ll
2009-08-02-mmx-scalar-to-vector.ll
2009-08-06-branchfolder-crash.ll
2009-08-06-inlineasm.ll
2009-08-08-CastError.ll
2009-08-12-badswitch.ll
2009-08-14-Win64MemoryIndirectArg.ll
2009-08-19-LoadNarrowingMiscompile.ll
2009-08-23-linkerprivate.ll
2009-08-23-SubRegReuseUndo.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
2009-09-10-LoadFoldingBug.ll
2009-09-10-SpillComments.ll
2009-09-16-CoalescerBug.ll
2009-09-19-earlyclobber.ll
2009-09-21-NoSpillLoopCount.ll
2009-09-22-CoalescerBug.ll
2009-09-23-LiveVariablesBug.ll
2009-10-14-LiveVariablesBug.ll
2009-10-16-Scope.ll
2009-10-19-atomic-cmp-eflags.ll
2009-10-19-EmergencySpill.ll
2009-10-25-RewriterBug.ll
2009-11-04-SubregCoalescingBug.ll
2009-11-13-VirtRegRewriterBug.ll
2009-11-16-MachineLICM.ll
2009-11-16-UnfoldMemOpBug.ll
2009-11-17-UpdateTerminator.ll
2009-11-18-TwoAddrKill.ll
2009-11-25-ImpDefBug.ll
2009-12-01-EarlyClobberBug.ll
2009-12-11-TLSNoRedZone.ll
2010-01-05-ZExt-Shl.ll
2010-01-07-ISelBug.ll
2010-01-07-UAMemFeature.ll
2010-01-08-Atomic64Bug.ll
2010-01-11-ExtraPHIArg.ll
2010-01-13-OptExtBug.ll
2010-01-15-SelectionDAGCycle.ll
2010-01-18-DbgValue.ll
2010-01-19-OptExtBug.ll
2010-02-01-DbgValueCrash.ll
2010-02-01-TaillCallCrash.ll
2010-02-03-DualUndef.ll
2010-02-04-SchedulerBug.ll
2010-02-11-NonTemporal.ll
2010-02-12-CoalescerBug-Impdef.ll
2010-02-15-ImplicitDefBug.ll
2010-02-19-TailCallRetAddrBug.ll
2010-02-23-DAGCombineBug.ll
2010-02-23-DIV8rDefinesAX.ll
2010-02-23-RematImplicitSubreg.ll
2010-02-23-SingleDefPhiJoin.ll
2010-03-04-Mul8Bug.ll
2010-03-05-ConstantFoldCFG.ll
2010-03-05-EFLAGS-Redef.ll
2010-03-17-ISelBug.ll
2010-04-06-SSEDomainFixCrash.ll
2010-04-07-DbgValueOtherTargets.ll
2010-04-08-CoalescerBug.ll
2010-04-13-AnalyzeBranchCrash.ll
2010-04-21-CoalescerBug.ll
2010-04-23-mmx-movdq2q.ll
2010-04-29-CoalescerCrash.ll
2010-04-30-LocalAlloc-LandingPad.ll
2010-05-03-CoalescerSubRegClobber.ll
2010-05-05-LocalAllocEarlyClobber.ll
2010-05-06-LocalInlineAsmClobber.ll
2010-05-07-ldconvert.ll
2010-05-10-DAGCombinerBug.ll
2010-05-12-FastAllocKills.ll
2010-05-16-nosseconversion.ll
2010-05-25-DotDebugLoc.ll
2010-05-26-DotDebugLoc.ll
2010-05-26-FP_TO_INT-crash.ll
2010-05-28-Crash.ll
2010-06-01-DeadArg-DbgInfo.ll
2010-06-09-FastAllocRegisters.ll
2010-06-14-fast-isel-fs-load.ll
2010-06-15-FastAllocEarlyCLobber.ll
2010-06-24-g-constraint-crash.ll
2010-06-25-asm-RA-crash.ll
2010-06-25-CoalescerSubRegDefDead.ll
2010-06-28-DbgEntryPC.ll
2010-06-28-FastAllocTiedOperand.ll
2010-06-28-matched-g-constraint.ll
2010-07-02-asm-alignstack.ll
2010-07-02-UnfoldBug.ll
2010-07-06-asm-RIP.ll
2010-07-06-DbgCrash.ll
2010-07-11-FPStackLoneUse.ll
2010-07-13-indirectXconstraint.ll
2010-07-15-Crash.ll
2010-07-29-SetccSimplify.ll
2010-08-04-MaskedSignedCompare.ll
2010-08-04-MingWCrash.ll
2010-08-04-StackVariable.ll
2010-08-10-DbgConstant.ll
2010-09-01-RemoveCopyByCommutingDef.ll
2010-09-16-asmcrash.ll
2010-09-16-EmptyFilename.ll
2010-09-17-SideEffectsInChain.ll
2010-09-30-CMOV-JumpTable-PHI.ll
2010-10-08-cmpxchg8b.ll
2010-11-02-DbgParameter.ll
2010-11-09-MOVLPS.ll
2010-11-18-SelectOfExtload.ll
2010-12-02-MC-Set.ll
2011-01-07-LegalizeTypesCrash.ll
2011-01-10-DagCombineHang.ll
2011-01-24-DbgValue-Before-Use.ll
2011-02-04-FastRegallocNoFP.ll
2011-02-12-shuffle.ll
2011-02-21-VirtRegRewriter-KillSubReg.ll
2011-02-23-UnfoldBug.ll
2011-02-27-Fpextend.ll
2011-03-02-DAGCombiner.ll
2011-03-08-Sched-crash.ll
2011-03-09-Physreg-Coalescing.ll
2011-03-30-CreateFixedObjCrash.ll
2011-04-13-SchedCmpJmp.ll
2011-05-09-loaduse.ll
2011-05-26-UnreachableBlockElim.ll
2011-05-27-CrossClassCoalescing.ll
2011-06-01-fildll.ll
2011-06-03-x87chain.ll
2011-06-06-fgetsign80bit.ll
2011-06-12-FastAllocSpill.ll
2011-06-14-mmx-inlineasm.ll
2011-06-14-PreschedRegalias.ll
2011-06-19-QuicksortCoalescerBug.ll
2011-07-13-BadFrameIndexDisplacement.ll
2011-08-23-PerformSubCombine128.ll
2011-08-23-Trampoline.ll
2011-08-29-BlockConstant.ll
2011-08-29-InitOrder.ll
2011-09-14-valcoalesce.ll
2011-09-18-sse2cmp.ll
2011-09-21-setcc-bug.ll
2011-10-11-SpillDead.ll
2011-10-11-srl.ll
2011-10-12-MachineCSE.ll
2011-10-18-FastISel-VectorParams.ll
2011-10-19-LegelizeLoad.ll
2011-10-19-widen_vselect.ll
2011-10-21-widen-cmp.ll
2011-10-27-tstore.ll
2011-10-30-padd.ll
2011-11-07-LegalizeBuildVector.ll
2011-11-09-FoldImpDefs.ll Strip old implicit operands after foldMemoryOperand. 2011-11-10 00:17:03 +00:00
2011-11-22-AVX2-Domains.ll Fix PR11422. 2011-11-23 04:03:08 +00:00
2011-11-30-or.ll Add test arch to make it pass on non x86 targets 2011-11-30 17:34:28 +00:00
2011-12-8-bitcastintprom.ll Fix a bug in the integer-promotion of bitcast operations on vector types. 2011-12-08 13:10:01 +00:00
2011-12-06-AVXVectorExtractCombine.ll Fix an optimization involving EXTRACT_SUBVECTOR in DAGCombine so it behaves correctly. PR11494. 2011-12-07 00:11:56 +00:00
2011-12-06-BitcastVectorGlobal.ll Support vector bitcasts in the AsmPrinter. PR11495. 2011-12-07 00:50:54 +00:00
2011-12-08-AVXISelBugs.ll This is the second fix related to VZEXT_MOVL node. 2011-12-20 13:34:28 +00:00
2011-12-15-vec_shift.ll Make sure that the lower bits on the VSELECT condition are properly set. 2011-12-17 01:08:46 +00:00
2011-12-26-extractelement-duplicate-load.ll Make sure DAGCombiner doesn't introduce multiple loads from the same memory location. PR10747, part 2. 2011-12-26 22:49:32 +00:00
2011-12-28-vselecti8.ll Optimize the sequence blend(sign_extend(x)) to blend(shl(x)) since SSE blend instructions only look at the highest bit. 2012-01-02 08:05:46 +00:00
2011-20-21-zext-ui2fp.ll
9601.ll
20090313-signext.ll
abi-isel.ll
add-of-carry.ll
add.ll
adde-carry.ll
addr-label-difference.ll
aliases.ll
aligned-comm.ll
alignment-2.ll
alignment.ll
all-ones-vector.ll
alldiv-divdi3.ll
alloca-align-rounding-32.ll
alloca-align-rounding.ll
allrem-moddi3.ll
and-or-fold.ll
and-su.ll
andimm8.ll
anyext.ll
apm.ll Fix sfence, lfence, mfence, and clflush to be able to be selected when AVX is enabled. Fix monitor and mwait to require SSE3 or AVX, previously they worked even if SSE3 was disabled. Make prefetch instructions not set the execution domain since they don't use XMM registers. 2012-01-01 19:40:22 +00:00
arg-cast.ll
asm-block-labels.ll
asm-global-imm.ll
asm-indirect-mem.ll
asm-label2.ll
asm-label.ll
asm-modifier-P.ll
asm-modifier.ll
atomic_add.ll
atomic_op.ll
atomic-load-store-wide.ll
atomic-load-store.ll
atomic-or.ll
Atomics-64.ll
attribute-sections.ll
avoid-lea-scale2.ll
avoid-loop-align-2.ll
avoid-loop-align.ll
avx2-arith.ll Add AVX2 instruction lowering for add, sub, and mul. 2011-11-09 07:28:55 +00:00
avx2-cmp.ll Add instruction selection for AVX2 integer comparisons. 2011-11-09 08:06:13 +00:00
avx2-intrinsics-x86.ll Fix VINSERTF128/VEXTRACTF128 to be marked as FP instructions. Allow execution dependency fix pass to convert them to their integer equivalents when AVX2 is enabled. 2011-11-29 05:37:58 +00:00
avx2-logic.ll Use 256-bit vcmpeqd for creating an all ones vector when AVX2 is enabled. 2011-11-19 22:34:59 +00:00
avx2-phaddsub.ll Add instruction selection support for horizontal add/sub of 256-bit floating point vectors. Also add the test case for 256-bit integer vectors. 2011-12-02 07:16:01 +00:00
avx2-shift.ll Make LowerSIGN_EXTEND_INREG split 256-bit vectors when AVX1 is enabled and use AVX2 shifts when AVX2 is enabled. 2011-11-21 01:12:36 +00:00
avx2-unpack.ll Don't try to match 'unpackl/h v, v' for 32xi8 and 16xi16 when only AVX1 is supported. Fix 'unpackh v, v' for 256-bit types to understand 128-bit lanes. 2011-12-16 08:06:31 +00:00
avx2-vbroadcast.ll Add AVX2 vpbroadcast support 2011-11-18 02:49:55 +00:00
avx2-vperm2i128.ll Merge isSHUFPMask and isCommutedSHUFPMask into single function that can do both. Do the same for the 256-bit version. Use loops to reduce size of isVSHUFPYMask. Fix test cases that were incorrectly passing due to isCommutedSHUFPMask not checking for the vector being 128-bit. This caused some 256-bit shuffles to be incorrectly commuted. 2011-12-06 04:59:07 +00:00
avx-arith.ll Fixed vsqrt.ss intrinsic usage - order of input operands was wrong. 2011-11-29 15:00:45 +00:00
avx-basic.ll Fix assert in LowerBUILD_VECTOR for v16i16 type on AVX. 2011-12-15 21:34:44 +00:00
avx-bitcast.ll
avx-blend.ll
avx-cast.ll Fix VINSERTF128/VEXTRACTF128 to be marked as FP instructions. Allow execution dependency fix pass to convert them to their integer equivalents when AVX2 is enabled. 2011-11-29 05:37:58 +00:00
avx-cmp.ll
avx-cvt.ll
avx-intrinsics-x86_64.ll
avx-intrinsics-x86.ll Allow CRC32 instructions to be selected when AVX is enabled. 2012-01-01 19:51:58 +00:00
avx-load-store.ll
avx-logic.ll Properly qualify AVX2 specific parts of execution dependency table. Also enable converting between 256-bit PS/PD operations when AVX1 is enabled. Fixes PR11370. 2011-11-15 05:55:35 +00:00
avx-minmax.ll
avx-movdup.ll
avx-select.ll
avx-shift.ll Make LowerSIGN_EXTEND_INREG split 256-bit vectors when AVX1 is enabled and use AVX2 shifts when AVX2 is enabled. 2011-11-21 01:12:36 +00:00
avx-shuffle-x86_32.ll Fixed a bug in SelectionDAG.cpp. 2012-01-03 11:59:04 +00:00
avx-shuffle.ll Fixed a bug in LowerVECTOR_SHUFFLE and LowerBUILD_VECTOR. 2011-12-28 08:14:01 +00:00
avx-splat.ll Fix VINSERTF128/VEXTRACTF128 to be marked as FP instructions. Allow execution dependency fix pass to convert them to their integer equivalents when AVX2 is enabled. 2011-11-29 05:37:58 +00:00
avx-unpack.ll Don't try to match 'unpackl/h v, v' for 32xi8 and 16xi16 when only AVX1 is supported. Fix 'unpackh v, v' for 256-bit types to understand 128-bit lanes. 2011-12-16 08:06:31 +00:00
avx-varargs-x86_64.ll Pass AVX vectors which are arguments to varargs functions on the stack. <rdar://problem/10463281>. 2011-12-01 04:49:21 +00:00
avx-vbroadcast.ll AVX: Add support for vbroadcast from BUILD_VECTOR and refactor some of the vbroadcast code. 2011-11-15 22:50:37 +00:00
avx-vextractf128.ll
avx-vinsertf128.ll
avx-vmovddup.ll
avx-vperm2f128.ll Merge isSHUFPMask and isCommutedSHUFPMask into single function that can do both. Do the same for the 256-bit version. Use loops to reduce size of isVSHUFPYMask. Fix test cases that were incorrectly passing due to isCommutedSHUFPMask not checking for the vector being 128-bit. This caused some 256-bit shuffles to be incorrectly commuted. 2011-12-06 04:59:07 +00:00
avx-vpermil.ll Fix issues in shuffle decoding around VPERM* instructions. Fix shuffle decoding for VSHUFPS/D for 256-bit types. Add pattern matching for memory forms of VPERMILPS/VPERMILPD. 2011-11-29 07:49:05 +00:00
avx-vshufp.ll Add patterns for integer forms of SHUFPD/VSHUFPD with a memory load. 2011-12-31 23:24:49 +00:00
avx-vzeroupper.ll
barrier-sse.ll
barrier.ll
basic-promote-integers.ll
bc-extract.ll Make X86::FsFLD0SS / FsFLD0SD real pseudo-instructions. 2011-11-29 22:27:25 +00:00
bigstructret2.ll
bigstructret.ll
bit-test-shift.ll
bitcast2.ll
bitcast-int-to-vector.ll
bitcast.ll
block-placement.ll Take two on rotating the block ordering of loops. My previous attempt 2011-11-27 13:34:33 +00:00
bmi.ll Use standard promotion for i8 CTTZ nodes and i8 CTLZ nodes when the 2011-12-24 12:12:34 +00:00
bool-zext.ll
br-fold.ll
brcond.ll
break-anti-dependencies.ll
break-sse-dep.ll
bss_pagealigned.ll
bswap-inline-asm.ll
bswap.ll
bt.ll
btq.ll X86: Use btq for bit tests if the immediate can't be encoded in 32 bits. 2011-11-23 13:54:17 +00:00
byval2.ll
byval3.ll
byval4.ll
byval5.ll
byval6.ll
byval7.ll
byval-align.ll
byval.ll
call-imm.ll
call-push.ll
change-compare-stride-0.ll
change-compare-stride-1.ll Use a bigger hammer to fix PR11314 by disabling the "forcing two-address 2011-11-10 07:43:16 +00:00
change-compare-stride-trickiness-0.ll
change-compare-stride-trickiness-1.ll
change-compare-stride-trickiness-2.ll
clz.ll Use standard promotion for i8 CTTZ nodes and i8 CTLZ nodes when the 2011-12-24 12:12:34 +00:00
cmov.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
cmp.ll
cmpxchg16b.ll
coalesce-esp.ll
coalescer-commute1.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
coalescer-commute2.ll
coalescer-commute3.ll
coalescer-commute4.ll
coalescer-commute5.ll
coalescer-cross.ll
coalescer-dce.ll
coalescer-remat.ll
code_placement_eh.ll
code_placement.ll
codegen-prepare-cast.ll
codegen-prepare-extload.ll
codemodel.ll
combine-lds.ll
combiner-aa-0.ll
combiner-aa-1.ll
commute-intrinsic.ll
commute-two-addr.ll
compare_folding.ll
compare-add.ll
compare-inf.ll
compiler_used.ll
complex-asm.ll
complex-fca.ll
conditional-indecrement.ll
constant-pool-remat-0.ll
constant-pool-sharing.ll
constpool.ll
convert-2-addr-3-addr-inc64.ll
copysign-zero.ll
crash-nosse.ll
crash-O0.ll
crash.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
critical-edge-split-2.ll
cstring.ll
ctpop-combine.ll
dag-rauw-cse.ll
dagcombine-buildvector.ll
dagcombine-cse.ll
darwin-bzero.ll
darwin-no-dead-strip.ll
darwin-quote.ll
darwin-stub.ll
dbg-at-specficiation.ll
dbg-byval-parameter.ll
dbg-const-int.ll
dbg-const.ll
dbg-declare-arg.ll
dbg-file-name.ll
dbg-i128-const.ll
dbg-large-unsigned-const.ll
dbg-merge-loc-entry.ll
dbg-prolog-end.ll
dbg-subrange.ll DISubrange supports unsigned lower/upper array bounds, so let's not fake it in the end while emitting DWARF. If a FE needs to encode signed lower/upper array bounds then we need to extend DISubrange or ad DISignedSubrange. 2011-11-17 23:43:15 +00:00
dbg-value-dag-combine.ll
dbg-value-inlined-parameter.ll
dbg-value-isel.ll
dbg-value-location.ll
dbg-value-range.ll
dec-eflags-lower.ll test/CodeGen/X86/dec-eflags-lower.ll: Relax expression for win32 x64. 2011-11-15 22:30:37 +00:00
dg.exp
discontiguous-loops.ll
div8.ll
divide-by-constant.ll
divrem.ll
dll-linkage.ll
dllexport.ll
dollar-name.ll
dwarf-comp-dir.ll
dyn-stackalloc.ll
eh_frame.ll
empty-functions.ll
empty-struct-return-type.ll
epilogue.ll
extend.ll
extern_weak.ll
extmul64.ll
extmul128.ll
extract-combine.ll
extract-extract.ll
extractelement-from-arg.ll
extractelement-load.ll
extractelement-shuffle.ll
extractps.ll
f16c-intrinsics.ll
fabs.ll
fast-cc-callee-pops.ll
fast-cc-merge-stack-adj.ll
fast-cc-pass-in-regs.ll
fast-isel-agg-constant.ll
fast-isel-atomic.ll
fast-isel-avoid-unnecessary-pic-base.ll
fast-isel-bail.ll
fast-isel-bc.ll Eliminate more linear scan tests. 2011-11-12 20:35:26 +00:00
fast-isel-call.ll
fast-isel-cmp-branch.ll
fast-isel-constpool.ll
fast-isel-extract.ll
fast-isel-fneg.ll
fast-isel-gep.ll Disable expensive two-address optimizations at -O0. rdar://10453055 2011-11-16 18:44:48 +00:00
fast-isel-gv.ll
fast-isel-i1.ll
fast-isel-mem.ll
fast-isel-ret-ext.ll
fast-isel-tailcall.ll
fast-isel-tls.ll
fast-isel-x86-64.ll Make X86::FsFLD0SS / FsFLD0SD real pseudo-instructions. 2011-11-29 22:27:25 +00:00
fast-isel-x86.ll
fast-isel.ll
fastcall-correct-mangling.ll
fastcc3struct.ll
fastcc-2.ll
fastcc-byval.ll
fastcc-sret.ll
fastcc.ll
field-extract-use-trunc.ll
fildll.ll
fltused.ll
fma4-intrinsics-x86_64.ll Change FMA4 memory forms to use memopv* instead of alignedloadv*. No need to force alignment on these instructions. Add a couple testcases for memory forms. 2011-12-30 02:18:36 +00:00
fma.ll
fmul-zero.ll
fold-add.ll
fold-and-shift.ll
fold-call-2.ll
fold-call-3.ll
fold-call.ll
fold-imm.ll
fold-load.ll
fold-mul-lohi.ll
fold-pcmpeqd-0.ll Use a bigger hammer to fix PR11314 by disabling the "forcing two-address 2011-11-10 07:43:16 +00:00
fold-pcmpeqd-1.ll
fold-pcmpeqd-2.ll Eliminate more linear scan tests. 2011-11-12 20:35:26 +00:00
fold-sext-trunc.ll
fold-xmm-zero.ll
fold-zext-trunc.ll
force-align-stack.ll
fp2sint.ll
fp_constant_op.ll
fp_load_cast_fold.ll
fp_load_fold.ll
fp-elim.ll
fp-immediate-shorten.ll
fp-in-intregs.ll
fp-stack-2results.ll
fp-stack-compare.ll
fp-stack-direct-ret.ll
fp-stack-O0-crash.ll
fp-stack-O0.ll Fix APFloat::convert so that it handles narrowing conversions correctly; it 2011-11-26 03:38:02 +00:00
fp-stack-ret-conv.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
fp-stack-ret-store.ll
fp-stack-ret.ll
fp-stack-retcopy.ll
fp-stack-set-st1.ll
fp-stack.ll
fp-trunc.ll
fsgsbase.ll
fsxor-alignment.ll
full-lsr.ll
ga-offset.ll
gather-addresses.ll
ghc-cc64.ll
ghc-cc.ll
global-sections-tls.ll
global-sections.ll
h-register-addressing-32.ll
h-register-addressing-64.ll
h-register-store.ll
h-registers-0.ll
h-registers-1.ll
h-registers-2.ll
h-registers-3.ll
haddsub.ll Add instruction selection support for horizontal add/sub of 256-bit floating point vectors. Also add the test case for 256-bit integer vectors. 2011-12-02 07:16:01 +00:00
hidden-vis-2.ll
hidden-vis-3.ll
hidden-vis-4.ll
hidden-vis-pic.ll
hidden-vis.ll
hoist-common.ll
hoist-invariant-load.ll
i2k.ll
i64-mem-copy.ll
i128-and-beyond.ll
i128-immediate.ll
i128-mul.ll
i128-ret.ll
i128-sdiv.ll
i256-add.ll
iabs.ll
illegal-insert.ll
illegal-vector-args-return.ll
imul-lea-2.ll
imul-lea.ll
inline-asm-2addr.ll
inline-asm-error.ll
inline-asm-flag-clobber.ll
inline-asm-fpstack.ll
inline-asm-h.ll
inline-asm-modifier-n.ll
inline-asm-mrv.ll
inline-asm-out-regs.ll
inline-asm-pic.ll
inline-asm-ptr-cast.ll
inline-asm-q-regs.ll For 64-bit the rest of the general regs are ok for the q constraint. Make 2011-12-01 08:12:41 +00:00
inline-asm-R-constraint.ll
inline-asm-tied.ll Switch a couple -O0 tests to RABasic. 2011-11-12 20:11:04 +00:00
inline-asm-x-scalar.ll
inline-asm.ll
ins_subreg_coalesce-1.ll
ins_subreg_coalesce-2.ll
ins_subreg_coalesce-3.ll
insert-positions.ll
insertelement-copytoregs.ll
insertelement-legalize.ll
int-intrinsic.ll
invalid-shift-immediate.ll
isel-sink2.ll
isel-sink3.ll
isel-sink.ll
isint.ll Revert r144611 and r144613. 2011-11-15 07:13:03 +00:00
isnan2.ll
isnan.ll
ispositive.ll
iv-users-in-other-loops.ll Teach two-address pass to re-schedule two-address instructions (or the kill 2011-11-14 19:48:55 +00:00
jump_sign.ll
label-redefinition.ll
large-gep-scale.ll
ldzero.ll
lea-2.ll
lea-3.ll
lea-4.ll
lea-recursion.ll
lea.ll
leaf-fp-elim.ll
legalize-fmp-oeq-vector-select.ll
legalize-libcalls.ll
legalize-sub-zero-2.ll
legalize-sub-zero.ll
legalizedag_vec.ll
lfence.ll
licm-dominance.ll
licm-nested.ll
licm-symbol.ll
limited-prec.ll
live-out-reg-info.ll
liveness-local-regalloc.ll
lock-inst-encoding.ll
long-setcc.ll
longlong-deadload.ll
loop-blocks.ll
loop-hoist.ll
loop-strength-reduce2.ll
loop-strength-reduce3.ll
loop-strength-reduce4.ll
loop-strength-reduce5.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
loop-strength-reduce6.ll
loop-strength-reduce7.ll
loop-strength-reduce8.ll
loop-strength-reduce-2.ll
loop-strength-reduce-3.ll
loop-strength-reduce.ll
lsr-delayed-fold.ll
lsr-i386.ll
lsr-interesting-step.ll
lsr-loop-exit-cond.ll test/CodeGen/X86/lsr-loop-exit-cond.ll: Try to appease linux and freebsd bots to specify explicit -mtriple=x86_64-darwin. 2011-11-10 14:18:59 +00:00
lsr-negative-stride.ll
lsr-nonaffine.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
lsr-normalization.ll
lsr-overflow.ll
lsr-quadratic-expand.ll
lsr-redundant-addressing.ll
lsr-reuse-trunc.ll Teach two-address pass to re-schedule two-address instructions (or the kill 2011-11-14 19:48:55 +00:00
lsr-reuse.ll
lsr-sort.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
lsr-static-addr.ll
lsr-wrap.ll
lzcnt.ll Use standard promotion for i8 CTTZ nodes and i8 CTLZ nodes when the 2011-12-24 12:12:34 +00:00
machine-cse.ll
MachineSink-CritEdge.ll
MachineSink-DbgValue.ll
MachineSink-eflags.ll
MachineSink-PHIUse.ll
masked-iv-safe.ll Use a bigger hammer to fix PR11314 by disabling the "forcing two-address 2011-11-10 07:43:16 +00:00
masked-iv-unsafe.ll
maskmovdqu.ll
mcinst-lowering.ll
mem-promote-integers.ll
membarrier.ll
memcmp.ll
memcpy-2.ll
memcpy.ll
memset64-on-x86-32.ll
memset-2.ll
memset-3.ll
memset.ll
mfence.ll
mingw-alloca.ll
misaligned-memset.ll
mmx-arg-passing2.ll
mmx-arg-passing.ll
mmx-arith.ll
mmx-bitcast-to-i64.ll
mmx-builtins.ll
mmx-copy-gprs.ll
mmx-emms.ll
mmx-insert-element.ll
mmx-pinsrw.ll
mmx-punpckhdq.ll
mmx-s2v.ll
mmx-shift.ll
mmx-shuffle.ll
movbe.ll
movfs.ll
movgs.ll
movmsk.ll Don't try to form FGETSIGN after legalization; it is possible in some cases, but the existing code can't do it correctly. PR11570. 2011-12-15 02:07:20 +00:00
movntdq-no-avx.ll
mul64.ll
mul128.ll
mul-legalize.ll
mul-remat.ll
mul-shift-reassoc.ll
muloti.ll
mult-alt-generic-i686.ll
mult-alt-generic-x86_64.ll
mult-alt-x86.ll
multiple-loop-post-inc.ll Use a bigger hammer to fix PR11314 by disabling the "forcing two-address 2011-11-10 07:43:16 +00:00
multiple-return-values-cross-block.ll
nancvt.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
narrow_op-1.ll
narrow-shl-cst.ll
narrow-shl-load.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
neg_fp.ll
neg-shl-add.ll
negate-add-zero.ll
negative_zero.ll
negative-sin.ll
negative-stride-fptosi-user.ll
negative-subscript.ll
no-cfi.ll
nobt.ll
non-lazy-bind.ll
nontemporal.ll
norex-subreg.ll
nosse-error1.ll
nosse-error2.ll
nosse-varargs.ll
object-size.ll Switch a couple -O0 tests to RABasic. 2011-11-12 20:11:04 +00:00
opt-ext-uses.ll
opt-shuff-tstore.ll
optimize-max-0.ll
optimize-max-1.ll
optimize-max-2.ll
optimize-max-3.ll
or-address.ll
or-branch.ll
overlap-shift.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
packed_struct.ll
palignr-2.ll
palignr.ll
peep-setb.ll
peep-test-0.ll
peep-test-1.ll
peep-test-2.ll
peep-test-3.ll
peep-vector-extract-concat.ll
peep-vector-extract-insert.ll Make X86::FsFLD0SS / FsFLD0SD real pseudo-instructions. 2011-11-29 22:27:25 +00:00
personality.ll
phaddsub.ll Test cases for SSSE3/AVX integer horizontal add/sub. 2011-11-19 09:03:33 +00:00
phi-bit-propagation.ll
phi-immediate-factoring.ll
phys_subreg_coalesce-2.ll
phys_subreg_coalesce-3.ll
phys_subreg_coalesce.ll
phys-reg-local-regalloc.ll
pic_jumptable.ll
pic-load-remat.ll
pic.ll
pmul.ll
pmulld.ll
pointer-vector.ll test/CodeGen/X86/pointer-vector.ll: Add explicit -mtriple=i686-linux. 2011-12-05 07:54:57 +00:00
popcnt.ll
postalloc-coalescing.ll
postra-licm.ll
powi.ll
pr1462.ll
pr1489.ll
pr1505.ll
pr1505b.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
pr2177.ll
pr2182.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
pr2326.ll
pr2656.ll
pr2659.ll
pr2849.ll
pr2924.ll
pr2982.ll
pr3154.ll
pr3216.ll
pr3241.ll
pr3243.ll
pr3244.ll
pr3250.ll
pr3317.ll
pr3366.ll
pr3457.ll
pr3495.ll Eliminate more linear scan tests. 2011-11-12 20:35:26 +00:00
pr3522.ll
pr7882.ll
pr9127.ll
pr9743.ll
pr10068.ll
pr10420.ll
pr11202.ll We currently use a callback to handle an IL pass deleting a BB that still 2011-11-15 19:08:46 +00:00
pr11415.ll Add triple to the test. 2011-11-22 06:36:25 +00:00
prefetch.ll Add test for r146163. 2011-12-08 19:21:39 +00:00
private-2.ll
private.ll
promote-assert-zext.ll
promote-i16.ll
promote-trunc.ll
promote.ll
ptr-rotate.ll
ptrtoint-constexpr.ll
rdtsc.ll
red-zone2.ll
red-zone.ll
reghinting.ll
regpressure.ll
rem-2.ll
rem.ll
remat-constant.ll
remat-mov-0.ll
remat-scalar-zero.ll
ret-addr.ll
ret-i64-0.ll
ret-mmx.ll
rip-rel-address.ll
rodata-relocs.ll
rot16.ll
rot32.ll
rot64.ll
rotate2.ll
rotate.ll
rounding-ops.ll X86: Add patterns for the various rounding ops for SSE4.1 and AVX. 2011-12-09 15:44:03 +00:00
scalar_sse_minmax.ll
scalar_widen_div.ll
scalar-extract.ll
scalar-min-max-fill-operand.ll
scalarize-bitcast.ll
scev-interchange.ll
sdiv-exact.ll
segmented-stacks.ll Check for stack space more intelligently. 2011-12-03 09:32:07 +00:00
select.ll
setcc.ll
setoeq.ll
setuge.ll
sext-blend.ll Optimize the sequence blend(sign_extend(x)) to blend(shl(x)) since SSE blend instructions only look at the highest bit. 2012-01-02 08:05:46 +00:00
sext-i1.ll
sext-load.ll
sext-ret-val.ll
sext-subreg.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
sext-trunc.ll
sfence.ll
shift-and.ll
shift-coalesce.ll
shift-codegen.ll
shift-combine.ll
shift-double.ll
shift-folding.ll
shift-i128.ll
shift-i256.ll
shift-one.ll
shift-pair.ll
shift-parts.ll
shl_elim.ll
shl_undef.ll
shl-anyext.ll
shrink-compare.ll
shrink-fp-const1.ll
shrink-fp-const2.ll
sibcall-2.ll
sibcall-3.ll
sibcall-4.ll
sibcall-5.ll
sibcall-byval.ll
sibcall.ll
sincos.ll
sink-hoist.ll
small-byval-memcpy.ll
smul-with-overflow.ll
soft-fp.ll
splat-scalar-load.ll Enable stack protectors for all arrays, not just char arrays. rdar://5875909 2011-11-23 07:13:56 +00:00
split-eh-lpad-edges.ll
split-vector-bitcast.ll
split-vector-rem.ll
sret.ll
sse1.ll
sse2-blend.ll Optimize the sequence blend(sign_extend(x)) to blend(shl(x)) since SSE blend instructions only look at the highest bit. 2012-01-02 08:05:46 +00:00
sse2.ll Use a bigger hammer to fix PR11314 by disabling the "forcing two-address 2011-11-10 07:43:16 +00:00
sse3.ll Teach two-address pass to re-schedule two-address instructions (or the kill 2011-11-14 19:48:55 +00:00
sse41-blend.ll Optimize the sequence blend(sign_extend(x)) to blend(shl(x)) since SSE blend instructions only look at the highest bit. 2012-01-02 08:05:46 +00:00
sse41.ll
sse42_64.ll
sse42.ll
sse_reload_fold.ll
sse-align-0.ll
sse-align-1.ll
sse-align-2.ll
sse-align-3.ll
sse-align-4.ll
sse-align-5.ll
sse-align-6.ll
sse-align-7.ll
sse-align-8.ll
sse-align-9.ll
sse-align-10.ll
sse-align-11.ll
sse-align-12.ll
sse-commute.ll
sse-domains.ll Make X86::FsFLD0SS / FsFLD0SD real pseudo-instructions. 2011-11-29 22:27:25 +00:00
sse-fcopysign.ll
sse-load-ret.ll
sse-minmax.ll Make X86::FsFLD0SS / FsFLD0SD real pseudo-instructions. 2011-11-29 22:27:25 +00:00
sse-varargs.ll
stack-align.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
stack-protector-linux.ll
stdarg.ll
stdcall-notailcall.ll
stdcall.ll
store_op_load_fold2.ll
store_op_load_fold.ll
store-empty-member.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
store-fp-constant.ll
store-global-address.ll
store-narrow.ll
storetrunc-fp.ll
stride-nine-with-base-reg.ll
stride-reuse.ll
sub-with-overflow.ll
sub.ll
subreg-to-reg-0.ll
subreg-to-reg-1.ll
subreg-to-reg-2.ll
subreg-to-reg-3.ll
subreg-to-reg-4.ll
subreg-to-reg-6.ll
switch-bt.ll
switch-crit-edge-constant.ll
switch-or.ll
switch-zextload.ll
SwitchLowering.ll
swizzle.ll
tail-call-got.ll
tail-dup-addr.ll
tail-opts.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
tail-threshold.ll
tailcall1.ll
tailcall-fastisel.ll
tailcall-i1.ll
tailcall-largecode.ll
tailcall-returndup-void.ll
tailcall-ri64.ll
tailcall-stackalign.ll
tailcall-structret.ll
tailcall-void.ll
tailcallbyval64.ll
tailcallbyval.ll
tailcallfp2.ll
tailcallfp.ll
tailcallpic1.ll
tailcallpic2.ll
tailcallstack64.ll
test-nofold.ll
test-shrink-bug.ll
test-shrink.ll
testl-commute.ll
tls1.ll
tls2.ll
tls3.ll
tls4.ll
tls5.ll
tls6.ll
tls7.ll
tls8.ll
tls9.ll
tls10.ll
tls11.ll
tls12.ll
tls13.ll
tls14.ll
tls15.ll
tls-pic.ll
tlv-1.ll
tlv-2.ll
trap.ll
trunc-ext-ld-st.ll
trunc-to-bool.ll
twoaddr-coalesce-2.ll
twoaddr-coalesce.ll
twoaddr-lea.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
twoaddr-pass-sink.ll
twoaddr-sink-terminator.ll
uint64-to-float.ll Revert r144611 and r144613. 2011-11-15 07:13:03 +00:00
uint_to_fp-2.ll
uint_to_fp.ll
umul-with-carry.ll
umul-with-overflow.ll
unaligned-load.ll
undef-label.ll
unknown-location.ll
unreachable-loop-sinking.ll
unreachable-stack-protector.ll
urem-i8-constant.ll
use-add-flags.ll
v2f32.ll
v4f32-immediate.ll
v-binop-widen2.ll
v-binop-widen.ll
vararg_tailcall.ll
variable-sized-darwin-bzero.ll
variadic-node-pic.ll
vec_add.ll
vec_align.ll
vec_anyext.ll
vec_call.ll
vec_cast.ll
vec_clear.ll
vec_compare-2.ll test/CodeGen/X86/vec_compare-2.ll: Add explicit -mtriple=i686-linux. 2011-12-08 15:24:09 +00:00
vec_compare-sse4.ll
vec_compare.ll
vec_ctbits.ll Manually upgrade the test suite to specify the flag to cttz and ctlz. 2011-12-12 11:59:10 +00:00
vec_ext_inreg.ll
vec_extract-sse4.ll Make sure to replace the chain properly when DAGCombining a LOAD+EXTRACT_VECTOR_ELT into a single LOAD. Fixes PR10747/PR11393. 2011-11-16 23:50:22 +00:00
vec_extract.ll
vec_fneg.ll
vec_fpext.ll Fix type-checking for load transformation which is not legal on floating-point types. PR11674. 2011-12-28 21:24:44 +00:00
vec_i64.ll
vec_ins_extract-1.ll
vec_ins_extract.ll
vec_insert-2.ll
vec_insert-3.ll
vec_insert-4.ll
vec_insert-5.ll
vec_insert-6.ll
vec_insert-7.ll
vec_insert-8.ll
vec_insert-9.ll
vec_insert.ll
vec_loadsingles.ll
vec_logical.ll
vec_return.ll
vec_set-2.ll
vec_set-3.ll
vec_set-4.ll
vec_set-5.ll
vec_set-6.ll
vec_set-7.ll
vec_set-8.ll
vec_set-9.ll
vec_set-A.ll
vec_set-B.ll
vec_set-C.ll
vec_set-D.ll
vec_set-E.ll
vec_set-F.ll
vec_set-G.ll
vec_set-H.ll
vec_set-I.ll
vec_set-J.ll
vec_set.ll
vec_sext.ll
vec_shift2.ll
vec_shift3.ll
vec_shift4.ll
vec_shift.ll
vec_shuffle-11.ll
vec_shuffle-14.ll
vec_shuffle-15.ll
vec_shuffle-16.ll
vec_shuffle-17.ll
vec_shuffle-18.ll
vec_shuffle-19.ll
vec_shuffle-20.ll
vec_shuffle-22.ll
vec_shuffle-23.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
vec_shuffle-24.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
vec_shuffle-25.ll
vec_shuffle-26.ll
vec_shuffle-27.ll
vec_shuffle-28.ll
vec_shuffle-30.ll
vec_shuffle-31.ll
vec_shuffle-34.ll
vec_shuffle-35.ll
vec_shuffle-36.ll
vec_shuffle-37.ll
vec_shuffle-38.ll Add another missing pattern. llvm-gcc likes f64 but clang likes i64 so it was generating poor code for some SSE builtins. 2011-11-29 22:48:34 +00:00
vec_shuffle-39.ll Another missing X86ISD::MOVLPD pattern. rdar://10450317 2011-11-16 22:24:44 +00:00
vec_shuffle.ll
vec_splat-2.ll
vec_splat-3.ll
vec_splat-4.ll
vec_splat.ll
vec_ss_load_fold.ll
vec_udiv_to_shift.ll
vec_uint_to_fp.ll
vec_zero_cse.ll
vec_zero-2.ll
vec_zero.ll
vec_zext.ll
vec-sign.ll
vec-trunc-store.ll
vector-gep.ll Add support for vectors of pointers. 2011-12-05 06:29:09 +00:00
vector-intrinsics.ll
vector-rem.ll
vector-variable-idx2.ll Changed SSE4/AVX <2 x i64> extract and insert ops to be Custom lowered 2011-11-14 19:38:42 +00:00
vector-variable-idx.ll
vector.ll
vfcmp.ll
visibility2.ll
visibility.ll
volatile.ll Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
vortex-bug.ll
vshift_scalar.ll
vshift_split2.ll
vshift_split.ll
vshift-1.ll
vshift-2.ll
vshift-3.ll
vshift-4.ll
vshift-5.ll
vsplit-and.ll
weak.ll
wide-integer-fold.ll
widen_arith-1.ll
widen_arith-2.ll
widen_arith-3.ll Fix a bug in the integer-promotion of bitcast operations on vector types. 2011-12-08 13:10:01 +00:00
widen_arith-4.ll
widen_arith-5.ll
widen_arith-6.ll
widen_cast-1.ll
widen_cast-2.ll
widen_cast-3.ll
widen_cast-4.ll
widen_cast-5.ll
widen_cast-6.ll
widen_conv-1.ll
widen_conv-2.ll
widen_conv-3.ll
widen_conv-4.ll
widen_extract-1.ll
widen_load-0.ll
widen_load-1.ll Revert r145273 and fix in SelectionDAG::InferPtrAlignment() instead. 2011-11-28 22:37:34 +00:00
widen_load-2.ll
widen_shuffle-1.ll Fix testcase. 2011-11-16 03:03:52 +00:00
win64_alloca_dynalloca.ll
win64_params.ll
win64_vararg.ll
win_chkstk.ll
x86_64-mul-by-const.ll
x86-64-and-mask.ll
x86-64-arg.ll
x86-64-asm.ll
x86-64-dead-stack-adjust.ll
x86-64-disp.ll
x86-64-extend-shift.ll
x86-64-frameaddr.ll
x86-64-gv-offset.ll
x86-64-jumps.ll
x86-64-mem.ll
x86-64-pic-1.ll
x86-64-pic-2.ll
x86-64-pic-3.ll
x86-64-pic-4.ll
x86-64-pic-5.ll
x86-64-pic-6.ll
x86-64-pic-7.ll
x86-64-pic-8.ll
x86-64-pic-9.ll
x86-64-pic-10.ll
x86-64-pic-11.ll
x86-64-ret0.ll
x86-64-shortint.ll
x86-64-sret-return.ll
x86-64-tls-1.ll
x86-64-varargs.ll
x86-frameaddr2.ll
x86-frameaddr.ll
x86-shifts.ll
x86-store-gv-addr.ll
xmm-r64.ll
xor-icmp.ll
xor.ll
zero-remat.ll Make X86::FsFLD0SS / FsFLD0SD real pseudo-instructions. 2011-11-29 22:27:25 +00:00
zext-extract_subreg.ll
zext-fold.ll
zext-inreg-0.ll
zext-inreg-1.ll
zext-sext.ll
zext-shl.ll
zext-trunc.ll