llvm-6502/test/CodeGen/X86
Chandler Carruth a8fb39af83 [x86,sdag] Two interrelated changes to the x86 and sdag code.
First, don't combine bit masking into vector shuffles (even ones the
target can handle) once operation legalization has taken place. Custom
legalization of vector shuffles may exist for these patterns (making the
predicate return true) but that custom legalization may in some cases
produce the exact bit math this matches. We only really want to handle
this prior to operation legalization.

However, the x86 backend, in a fit of awesome, relied on this. What it
would do is mark VSELECTs as expand, which would turn them into
arithmetic, which this would then match back into vector shuffles, which
we would then lower properly. Amazing.

Instead, the second change is to teach the x86 backend to directly form
vector shuffles from VSELECT nodes with constant conditions, and to mark
all of the vector types we support lowering blends as shuffles as custom
VSELECT lowering. We still mark the forms which actually support
variable blends as *legal* so that the custom lowering is bypassed, and
the legal lowering can even be used by the vector shuffle legalization
(yes, i know, this is confusing. but that's how the patterns are
written).

This makes the VSELECT lowering much more sensible, and in fact should
fix a bunch of bugs with it. However, as you'll see in the test cases,
right now what it does is point out the *hilarious* deficiency of the
new vector shuffle lowering when it comes to blends. Fortunately, my
very next patch fixes that. I can't submit it yet, because that patch,
somewhat obviously, forms the exact and/or pattern that the DAG combine
is matching here! Without this patch, teaching the vector shuffle
lowering to produce the right code infloops in the DAG combiner. With
this patch alone, we produce terrible code but at least lower through
the right paths. With both patches, all the regressions here should be
fixed, and a bunch of the improvements (like using 2 shufps with no
memory loads instead of 2 andps with memory loads and an orps) will
stay. Win!

There is one other change worth noting here. We had hilariously wrong
vectorization cost estimates for vselect because we fell through to the
code path that assumed all "expand" vector operations are scalarized.
However, the "expand" lowering of VSELECT is vector bit math, most
definitely not scalarized. So now we go back to the correct if horribly
naive cost of "1" for "not scalarized". If anyone wants to add actual
modeling of shuffle costs, that would be cool, but this seems an
improvement on its own. Note the removal of 16 and 32 "costs" for doing
a blend. Even in SSE2 we can blend in fewer than 16 instructions. ;] Of
course, we don't right now because of OMG bad code, but I'm going to fix
that. Next patch. I promise.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229835 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-19 10:36:19 +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
2006-05-17-VectorArg.ll
2006-05-22-FPSetEQ.ll Cleanup a few tests on sse4a machines and FileCheckize along the way. 2015-01-29 13:31:32 +00:00
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-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-27-InlineAsm-IntMemInput.ll
2007-05-05-Personality.ll
2007-05-05-VecCastExpand.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-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-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-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-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
2008-05-22-FoldUnalignedLoad.ll
2008-05-28-CoalescerBug.ll
2008-05-28-LocalRegAllocBug.ll
2008-06-13-NotVolatileLoadStore.ll
2008-06-13-VolatileLoadStore.ll
2008-06-16-SubregsBug.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-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
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
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-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-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 Revert part of r227437 as it was unnecessary. Thanks to echristo for 2015-02-02 23:58:54 +00:00
2009-01-26-WrongCheck.ll
2009-01-27-NullStrings.ll
2009-01-31-BigShift2.ll
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 Revert "r226086 - Revert "r226071 - [RegisterCoalescer] Remove copies to reserved registers"" 2015-01-15 20:32:09 +00:00
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
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-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
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-sitofpCrash.ll
2009-06-05-VariableIndexInsert.ll
2009-06-05-VZextByteShort.ll
2009-06-06-ConcatVectors.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 Revert part of r227437 as it was unnecessary. Thanks to echristo for 2015-02-02 23:58:54 +00:00
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-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-SubRegReuseUndo.ll
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 IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
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-08-Atomic64Bug.ll
2010-01-11-ExtraPHIArg.ll
2010-01-13-OptExtBug.ll
2010-01-15-SelectionDAGCycle.ll
2010-01-18-DbgValue.ll IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
2010-01-19-OptExtBug.ll
2010-02-01-DbgValueCrash.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
2010-02-01-TaillCallCrash.ll
2010-02-03-DualUndef.ll
2010-02-04-SchedulerBug.ll
2010-02-11-NonTemporal.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
2010-02-12-CoalescerBug-Impdef.ll
2010-02-15-ImplicitDefBug.ll
2010-02-19-TailCallRetAddrBug.ll Remove typedef of a pointer type used in a gep to simplify migration of geps to a typeless-pointer future. 2015-02-12 22:45:25 +00:00
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-08-CoalescerBug.ll
2010-04-13-AnalyzeBranchCrash.ll
2010-04-21-CoalescerBug.ll
2010-04-29-CoalescerCrash.ll
2010-04-30-LocalAlloc-LandingPad.ll
2010-05-03-CoalescerSubRegClobber.ll
2010-05-05-LocalAllocEarlyClobber.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
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 IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
2010-05-26-DotDebugLoc.ll IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
2010-05-26-FP_TO_INT-crash.ll
2010-05-28-Crash.ll IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
2010-06-01-DeadArg-DbgInfo.ll IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
2010-06-09-FastAllocRegisters.ll
2010-06-14-fast-isel-fs-load.ll
2010-06-15-FastAllocEarlyCLobber.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
2010-06-24-g-constraint-crash.ll
2010-06-25-asm-RA-crash.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
2010-06-25-CoalescerSubRegDefDead.ll
2010-06-28-FastAllocTiedOperand.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
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 IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
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 IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
2010-09-01-RemoveCopyByCommutingDef.ll
2010-09-16-asmcrash.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
2010-09-16-EmptyFilename.ll IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
2010-09-17-SideEffectsInChain.ll
2010-09-30-CMOV-JumpTable-PHI.ll
2010-10-08-cmpxchg8b.ll
2010-11-02-DbgParameter.ll IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
2010-11-09-MOVLPS.ll
2010-11-18-SelectOfExtload.ll
2011-01-07-LegalizeTypesCrash.ll
2011-01-10-DagCombineHang.ll
2011-01-24-DbgValue-Before-Use.ll IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
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-04-19-sclr-bb.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 IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
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 [X86][SSE] Add SSE MOVQ instructions to SSEPackedInt domain 2015-02-16 21:50:56 +00:00
2011-10-21-widen-cmp.ll
2011-10-27-tstore.ll
2011-10-30-padd.ll
2011-11-07-LegalizeBuildVector.ll
2011-11-22-AVX2-Domains.ll
2011-11-30-or.ll [X86][SSE] Missing SSE/AVX1 memory folding integer instructions 2015-01-21 23:43:30 +00:00
2011-12-8-bitcastintprom.ll
2011-12-06-AVXVectorExtractCombine.ll
2011-12-06-BitcastVectorGlobal.ll
2011-12-08-AVXISelBugs.ll
2011-12-15-vec_shift.ll
2011-12-26-extractelement-duplicate-load.ll
2011-12-28-vselecti8.ll
2011-20-21-zext-ui2fp.ll
2012-1-10-buildvector.ll
2012-01-10-UndefExceptionEdge.ll
2012-01-11-split-cv.ll
2012-01-12-extract-sv.ll
2012-01-16-mfence-nosse-flags.ll x86-32: PUSHF/POPF use/def EFLAGS 2014-12-16 20:15:45 +00:00
2012-01-18-vbitcast.ll Revert "[x86] Combine x86mmx/i64 to v2i64 conversion to use scalar_to_vector" 2015-01-27 21:34:11 +00:00
2012-02-12-dagco.ll
2012-02-14-scalar.ll
2012-02-23-mmx-inlineasm.ll
2012-02-29-CoalescerBug.ll
2012-03-15-build_vector_wl.ll
2012-03-20-LargeConstantExpr.ll
2012-03-26-PostRALICMBug.ll
2012-04-09-TwoAddrPassBug.ll
2012-04-26-sdglue.ll
2012-05-17-TwoAddressBug.ll
2012-05-19-CoalescerCrash.ll
2012-07-10-extload64.ll
2012-07-10-shufnorm.ll
2012-07-15-broadcastfold.ll [x86] Remove the now-default-on flag for the new vector shuffle lowering 2015-02-15 06:20:51 +00:00
2012-07-15-BuildVectorPromote.ll
2012-07-15-tconst_shl.ll
2012-07-15-vshl.ll
2012-07-16-fp2ui-i1.ll
2012-07-16-LeaUndef.ll
2012-07-17-vtrunc.ll
2012-07-23-select_cc.ll
2012-08-07-CmpISelBug.ll
2012-08-16-setcc.ll
2012-08-17-legalizer-crash.ll
2012-08-28-UnsafeMathCrash.ll
2012-09-13-dagco-fneg.ll
2012-09-28-CGPBug.ll
2012-10-02-DAGCycle.ll
2012-10-03-DAGCycle.ll
2012-10-18-crash-dagco.ll
2012-11-28-merge-store-alias.ll
2012-11-30-handlemove-dbg.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
2012-11-30-misched-dbg.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
2012-11-30-regpres-dbg.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
2012-12-1-merge-multiple.ll
2012-12-06-python27-miscompile.ll
2012-12-12-DAGCombineCrash.ll
2012-12-14-v8fp80-crash.ll
2012-12-19-NoImplicitFloat.ll
2013-01-09-DAGCombineBug.ll
2013-02-12-ShuffleToZext.ll
2013-03-13-VEX-DestReg.ll
2013-05-06-ConactVectorCrash.ll
2013-10-14-FastISel-incorrect-vreg.ll SelectionDAG switch lowering: Replace unreachable default with most popular case. 2014-12-06 01:28:50 +00:00
2014-05-29-factorial.ll
2014-05-30-CombineAddNSW.ll
2014-08-29-CompactUnwind.ll
9601.ll
20090313-signext.ll
abi-isel.ll
add_shl_constant.ll
add-of-carry.ll
add.ll
adde-carry.ll
addr-label-difference.ll
addr-mode-matcher.ll
address-type-promotion-constantexpr.ll
adx-intrinsics.ll
aes_intrinsics.ll
aliases.ll
aligned-comm.ll
aligned-variadic.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
anyregcc-crash.ll
anyregcc.ll
apm.ll
arg-cast.ll
asm-block-labels.ll
asm-global-imm.ll
asm-indirect-mem.ll
asm-invalid-register-class-crasher.ll
asm-label2.ll
asm-label.ll SelectionDAG switch lowering: Replace unreachable default with most popular case. 2014-12-06 01:28:50 +00:00
asm-modifier-P.ll
asm-modifier.ll
asm-reg-type-mismatch.ll
atom-bypass-slow-division-64.ll
atom-bypass-slow-division.ll
atom-call-reg-indirect-foldedreload32.ll
atom-call-reg-indirect-foldedreload64.ll
atom-call-reg-indirect.ll
atom-cmpb.ll
atom-fixup-lea1.ll
atom-fixup-lea2.ll
atom-fixup-lea3.ll
atom-fixup-lea4.ll
atom-lea-addw-bug.ll
atom-lea-sp.ll
atom-pad-short-functions.ll
atom-sched.ll
atom-shuf.ll
atomic8.ll
atomic16.ll x86: Emit LOCK prefix after DATA16 2014-12-15 22:34:58 +00:00
atomic32.ll
atomic64.ll
atomic128.ll
atomic6432.ll
atomic_add.ll
atomic_idempotent.ll
atomic_mi.ll
atomic_op.ll
atomic-dagsched.ll
atomic-load-store-wide.ll
atomic-load-store.ll
atomic-minmax-i6432.ll
atomic-ops-ancient-64.ll
atomic-or.ll
atomic-pointer.ll
Atomics-64.ll
attribute-sections.ll
avoid_complex_am.ll Fix PR22179. 2015-01-10 23:41:24 +00:00
avoid-lea-scale2.ll
avoid-loop-align-2.ll
avoid-loop-align.ll
avx1-logical-load-folding.ll
avx2-arith.ll
avx2-cmp.ll
avx2-conversions.ll
avx2-gather.ll AVX2: Added 2 more tests for gather intrinsics. 2015-02-01 08:52:15 +00:00
avx2-intrinsics-x86-upgrade.ll [X86] Remove AVX2 and SSE2 pslldq and psrldq intrinsics. We can represent them in IR with vector shuffles now. All their uses have been removed from clang in favor of shuffles. 2015-02-18 06:24:44 +00:00
avx2-intrinsics-x86.ll [X86] Remove AVX2 and SSE2 pslldq and psrldq intrinsics. We can represent them in IR with vector shuffles now. All their uses have been removed from clang in favor of shuffles. 2015-02-18 06:24:44 +00:00
avx2-logic.ll
avx2-nontemporal.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
avx2-phaddsub.ll
avx2-pmovx-256-old-shuffle.ll [X86] Declare SSE4.1/AVX2 vector extloads covered by PMOV[SZ]X legal. 2015-01-21 17:07:06 +00:00
avx2-pmovxrm-intrinsics.ll [X86] Refactor PMOV[SZ]Xrm to add missing AVX2 patterns. 2014-12-06 01:31:07 +00:00
avx2-shift.ll
avx2-vbroadcast.ll Line endings fix. NFC. 2015-01-26 21:28:32 +00:00
avx2-vector-shifts.ll
avx2-vperm.ll
avx512-arith.ll [AVX512] Enable FP arithmetic lowering for AVX512VL subsets. 2014-12-18 12:28:22 +00:00
avx512-build-vector.ll
avx512-cmp.ll
avx512-cvt.ll
avx512-fma-intrinsics.ll AVX-512: Added FMA intrinsics with rounding mode 2015-01-28 10:21:27 +00:00
avx512-fma.ll
avx512-gather-scatter-intrin.ll
avx512-i1test.ll AVX-512: Fixed the "test" operation for i1 type 2015-02-12 08:40:34 +00:00
avx512-inc-dec.ll
avx512-insert-extract.ll AVX-512: Fixed the "test" operation for i1 type 2015-02-12 08:40:34 +00:00
avx512-intel-ocl.ll AVX-512: changes in intel_ocl_bi calling conventions 2015-02-17 09:20:12 +00:00
avx512-intrinsics.ll AVX-512: Added support for FP instructions with embedded rounding mode. 2015-02-18 07:59:20 +00:00
avx512-logic.ll [AVX512] Enabling bit logic lowering 2014-12-12 17:02:18 +00:00
avx512-mask-op.ll AVX-512: Changes in operations on masks registers for KNL and SKX 2015-01-25 12:47:15 +00:00
avx512-mov.ll
avx512-nontemporal.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
avx512-round.ll [AVX512] Make 512b vector floating point rounds legal on AVX512. 2015-02-16 22:15:42 +00:00
avx512-select.ll
avx512-shift.ll
avx512-trunc-ext.ll
avx512-vbroadcast.ll [AVX512] Added lowering for VBROADCASTSS/SD instructions. 2014-12-09 18:45:30 +00:00
avx512-vec-cmp.ll [AVX512] Enabling MIN/MAX lowering. 2014-12-12 15:10:43 +00:00
avx512-vselect-crash.ll
avx512bw-arith.ll [AVX512] Enable integer arithmetic lowering for AVX512BW/VL subsets. 2014-12-16 18:24:07 +00:00
avx512bw-intrinsics.ll [X86] Use i8 immediate for comparison type on AVX512 packed integer instructions. This matches floating point equivalents. Includes autoupgrade support to convert old code. 2015-01-25 23:26:02 +00:00
avx512bw-mask-op.ll
avx512bw-mov.ll
avx512bw-vec-cmp.ll [AVX512] Enabling MIN/MAX lowering. 2014-12-12 15:10:43 +00:00
avx512bwvl-arith.ll [AVX512] Enable integer arithmetic lowering for AVX512BW/VL subsets. 2014-12-16 18:24:07 +00:00
avx512bwvl-intrinsics.ll [X86] Use i8 immediate for comparison type on AVX512 packed integer instructions. This matches floating point equivalents. Includes autoupgrade support to convert old code. 2015-01-25 23:26:02 +00:00
avx512bwvl-mov.ll
avx512bwvl-vec-cmp.ll
avx512dq-mask-op.ll
avx512er-intrinsics.ll AVX-512: Scalar ERI intrinsics 2014-11-26 10:46:49 +00:00
avx512vl-arith.ll [AVX512] Enable FP arithmetic lowering for AVX512VL subsets. 2014-12-18 12:28:22 +00:00
avx512vl-intrinsics.ll [X86] Use i8 immediate for comparison type on AVX512 packed integer instructions. This matches floating point equivalents. Includes autoupgrade support to convert old code. 2015-01-25 23:26:02 +00:00
avx512vl-logic.ll [AVX512] Enabling bit logic lowering 2014-12-12 17:02:18 +00:00
avx512vl-mov.ll
avx512vl-nontemporal.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
avx512vl-vec-cmp.ll [AVX512] Enabling MIN/MAX lowering. 2014-12-12 15:10:43 +00:00
avx-arith.ll
avx-basic.ll
avx-bitcast.ll
avx-brcond.ll
avx-cast.ll
avx-cmp.ll
avx-cvt-2.ll
avx-cvt.ll
avx-fp2int.ll
avx-intel-ocl.ll
avx-intrinsics-x86_64.ll
avx-intrinsics-x86-upgrade.ll [X86] Remove AVX2 and SSE2 pslldq and psrldq intrinsics. We can represent them in IR with vector shuffles now. All their uses have been removed from clang in favor of shuffles. 2015-02-18 06:24:44 +00:00
avx-intrinsics-x86.ll [X86] Remove AVX2 and SSE2 pslldq and psrldq intrinsics. We can represent them in IR with vector shuffles now. All their uses have been removed from clang in favor of shuffles. 2015-02-18 06:24:44 +00:00
avx-load-store.ll
avx-logic.ll
avx-minmax.ll
avx-select.ll
avx-shift.ll
avx-shuffle-x86_32.ll
avx-splat.ll Line endings fix. NFC. 2015-01-26 21:28:32 +00:00
avx-trunc.ll [x86] Teach the 128-bit vector shuffle lowering routines to take 2015-02-16 01:52:02 +00:00
avx-unpack.ll
avx-varargs-x86_64.ll
avx-vbroadcast.ll
avx-vextractf128.ll
avx-vinsertf128.ll
avx-vperm2x128.ll [x86] Teach the x86 vector shuffle lowering to detect mergable 128-bit 2014-11-21 13:56:05 +00:00
avx-vzeroupper.ll
avx-win64-args.ll
avx-win64.ll
avx.ll [x86] Change u8imm operands to always print as unsigned. This makes shuffle masks and the like make way more sense. 2015-01-23 08:00:59 +00:00
barrier-sse.ll
barrier.ll Revert part of r227437 as it was unnecessary. Thanks to echristo for 2015-02-02 23:58:54 +00:00
basic-promote-integers.ll
bc-extract.ll
bigstructret2.ll
bigstructret.ll
bit-test-shift.ll
bitcast2.ll
bitcast-i256.ll
bitcast-int-to-vector.ll
bitcast-mmx.ll [X86][MMX] Handle i32->mmx conversion using movd 2015-02-05 13:23:07 +00:00
bitcast.ll
block-placement.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
bmi.ll
bool-simplify.ll
bool-zext.ll
br-fold.ll
brcond.ll
break-anti-dependencies.ll
break-false-dep.ll [X86] Add missing memory variants to AVX false dependency breaking 2014-12-28 13:15:05 +00:00
bss_pagealigned.ll
bswap-inline-asm.ll
bswap-vector.ll
bswap.ll
bt.ll
btq.ll
buildvec-insertvec.ll
byval2.ll
byval3.ll
byval4.ll
byval5.ll
byval6.ll
byval7.ll
byval-align.ll
byval-callee-cleanup.ll
byval.ll
cache-intrinsic.ll
call-imm.ll
call-push.ll
cas.ll
catch.ll
cfi_enforcing.ll
cfi_invoke.ll
cfi_non_default_function.ll
cfi_simple_indirect_call.ll
cfi.ll
cfstring.ll
chain_order.ll merge consecutive loads that are offset from a base address 2014-12-16 21:57:18 +00:00
change-compare-stride-1.ll
change-compare-stride-trickiness-0.ll
change-compare-stride-trickiness-1.ll
change-compare-stride-trickiness-2.ll
clobber-fi0.ll x86-32: PUSHF/POPF use/def EFLAGS 2014-12-16 20:15:45 +00:00
clz.ll
cmov-fp.ll
cmov-into-branch.ll
cmov.ll x86-32: PUSHF/POPF use/def EFLAGS 2014-12-16 20:15:45 +00:00
cmp.ll
cmpxchg16b.ll
cmpxchg-clobber-flags.ll x86-32: PUSHF/POPF use/def EFLAGS 2014-12-16 20:15:45 +00:00
cmpxchg-i1.ll
cmpxchg-i128-i1.ll
coalesce_commute_subreg.ll RegisterCoalescer: Fix removeCopyByCommutingDef with subreg liveness 2015-01-09 03:01:31 +00:00
coalesce-esp.ll
coalesce-implicitdef.ll
coalescer-commute1.ll
coalescer-commute2.ll
coalescer-commute3.ll
coalescer-commute4.ll
coalescer-commute5.ll
coalescer-cross.ll
coalescer-dce2.ll
coalescer-dce.ll x86-32: PUSHF/POPF use/def EFLAGS 2014-12-16 20:15:45 +00:00
coalescer-identity.ll
coalescer-remat.ll
code_placement_align_all.ll
code_placement_eh.ll
code_placement.ll
codegen-prepare-addrmode-sext.ll
codegen-prepare-cast.ll
codegen-prepare-crash.ll
codegen-prepare-extload.ll [CodeGenPrepare] Handle properly the promotion of operands when this does not 2014-12-22 18:11:52 +00:00
codegen-prepare.ll
codemodel.ll
coff-comdat2.ll Change the .ll syntax for comdats and add a syntactic sugar. 2015-01-06 22:55:16 +00:00
coff-comdat3.ll Change the .ll syntax for comdats and add a syntactic sugar. 2015-01-06 22:55:16 +00:00
coff-comdat.ll MC: Emit COFF section flags in the "proper" order 2015-02-07 08:26:40 +00:00
coff-feat00.ll
coldcc64.ll
combine-64bit-vec-binop.ll
combine-and.ll [x86] Port this test to use utils/update_llc_test_checks.py. 2015-02-04 00:58:37 +00:00
combine-avx2-intrinsics.ll
combine-avx-intrinsics.ll
combine-lds.ll
combine-or.ll [X86][SSE] Add SSE MOVQ instructions to SSEPackedInt domain 2015-02-16 21:50:56 +00:00
combine-sse2-intrinsics.ll
combine-sse41-intrinsics.ll
combiner-aa-0.ll
combiner-aa-1.ll
commute-blend-avx2.ll
commute-blend-sse41.ll
commute-clmul.ll [X86][PCLMUL] Enable commutation for PCLMUL instructions 2015-01-26 22:00:18 +00:00
commute-fcmp.ll [X86][SSE] Float comparisons can sometimes be safely commuted 2015-01-26 22:29:24 +00:00
commute-intrinsic.ll
commute-two-addr.ll
commute-xop.ll [X86][XOP] Enable commutation for XOP instructions 2015-02-14 22:40:46 +00:00
commuted-blend-mask.ll
compact-unwind.ll [CompactUnwind] Fix register encoding logic 2014-12-08 18:18:32 +00:00
compare_folding.ll
compare-add.ll
compare-inf.ll
compiler_used.ll
complex-asm.ll
complex-fca.ll
computeKnownBits_urem.ll
conditional-indecrement.ll
const-base-addr.ll
constant-combines.ll [x86] Fix PR22524: the DAG combiner was incorrectly handling illegal 2015-02-10 02:25:56 +00:00
constant-hoisting-optnone.ll [optnone] Skip pass Constant Hoisting on optnone functions. 2015-02-14 15:11:48 +00:00
constant-hoisting-shift-immediate.ll
constant-pool-remat-0.ll
constant-pool-sharing.ll
constpool.ll
constructor.ll
convert-2-addr-3-addr-inc64.ll
copysign-constant-magnitude.ll [X86] Teach FCOPYSIGN lowering to recognize constant magnitudes. 2015-01-07 17:33:03 +00:00
cppeh-catch-all.ll dos2unix the WinEH file and tests 2015-02-18 19:52:46 +00:00
cppeh-catch-scalar.ll dos2unix the WinEH file and tests 2015-02-18 19:52:46 +00:00
cpus.ll [x86] Change the test added in r223774 to first check the spelling of 2014-12-20 02:19:22 +00:00
crash-nosse.ll
crash-O0.ll [RegAllocFast] Handle implicit definitions conservatively. 2014-12-03 23:38:08 +00:00
crash.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
critical-anti-dep-breaker.ll
critical-edge-split-2.ll
cse-add-with-overflow.ll
cstring.ll
ctpop-combine.ll
cvt16.ll
cvtv2f32.ll
dag-rauw-cse.ll
dagcombine-and-setcc.ll
dagcombine-buildvector.ll
dagcombine-cse.ll
dagcombine-shifts.ll
dagcombine-unsafe-math.ll
darwin-bzero.ll
darwin-no-dead-strip.ll
darwin-quote.ll
darwin-stub.ll
dbg-changes-codegen-branch-folding.ll IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
dbg-changes-codegen.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
DbgValueOtherTargets.test
discontiguous-loops.ll
div8.ll
divide-by-constant.ll
divrem8_ext.ll
divrem.ll
dllexport-x86_64.ll MC: Emit COFF section flags in the "proper" order 2015-02-07 08:26:40 +00:00
dllexport.ll MC: Emit COFF section flags in the "proper" order 2015-02-07 08:26:40 +00:00
dllimport-x86_64.ll
dllimport.ll
dollar-name.ll
dont-trunc-store-double-to-float.ll
dwarf-comp-dir.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
dwarf-eh-prepare.ll Add an IR-to-IR test for dwarf EH preparation using opt 2015-02-18 23:17:41 +00:00
dyn_alloca_aligned.ll
dyn-stackalloc.ll
dynamic-alloca-in-entry.ll
dynamic-alloca-lifetime.ll
dynamic-allocas-VLAs.ll
early-ifcvt-crash.ll
early-ifcvt.ll
eh_frame.ll
elf-comdat2.ll Change the .ll syntax for comdats and add a syntactic sugar. 2015-01-06 22:55:16 +00:00
elf-comdat.ll Change the .ll syntax for comdats and add a syntactic sugar. 2015-01-06 22:55:16 +00:00
emit-big-cst.ll
empty-functions.ll
empty-struct-return-type.ll
epilogue.ll
equiv_with_fndef.ll CodeGen: Error on redefinitions instead of asserting 2014-12-24 23:06:55 +00:00
equiv_with_vardef.ll CodeGen: Error on redefinitions instead of asserting 2014-12-24 23:06:55 +00:00
exedepsfix-broadcast.ll
expand-opaque-const.ll
extend.ll
extended-fma-contraction.ll
extern_weak.ll
extmul64.ll
extmul128.ll
extract-combine.ll
extract-concat.ll
extract-extract.ll
extract-store.ll
extractelement-from-arg.ll
extractelement-load.ll Match new shuffle codegen for MOVHPD patterns 2014-12-10 16:58:54 +00:00
extractelement-shuffle.ll
extractps.ll
f16c-intrinsics.ll Make the test actually test what it's supposed to test. Add a test for the from memory variant of vcvtph2ps for 256-bit. 2015-01-29 15:19:54 +00:00
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-args-fail2.ll
fast-isel-args-fail.ll
fast-isel-args.ll
fast-isel-atomic.ll
fast-isel-avoid-unnecessary-pic-base.ll
fast-isel-bail.ll
fast-isel-bc.ll
fast-isel-branch_weights.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
fast-isel-call-bool.ll llvm/test/CodeGen/X86/fast-isel-call-bool.ll: Add explicit -mtriple=x86_64-unknown to satisfy x64. 2014-12-28 23:37:11 +00:00
fast-isel-call.ll
fast-isel-cmp-branch2.ll
fast-isel-cmp-branch3.ll
fast-isel-cmp-branch.ll Add the ExceptionHandling::MSVC enumeration 2014-12-19 22:19:48 +00:00
fast-isel-cmp.ll
fast-isel-constant.ll
fast-isel-constpool.ll
fast-isel-divrem-x86-64.ll
fast-isel-divrem.ll
fast-isel-expect.ll
fast-isel-extract.ll
fast-isel-fneg.ll
fast-isel-fold-mem.ll
fast-isel-fptrunc-fpext.ll [X86][FastISel] Add missing flag -fast-isel-abort to run lines in test fast-isel-fptrunc-fpext.ll. 2015-02-17 12:25:49 +00:00
fast-isel-gep.ll Add the ExceptionHandling::MSVC enumeration 2014-12-19 22:19:48 +00:00
fast-isel-gv.ll
fast-isel-i1.ll
fast-isel-int-float-conversion.ll [X86][FastIsel] Teach how to select scalar integer to float/double conversions. 2015-02-17 23:40:58 +00:00
fast-isel-mem.ll
fast-isel-ret-ext.ll
fast-isel-select-cmov2.ll
fast-isel-select-cmov.ll
fast-isel-select-cmp.ll
fast-isel-select-pseudo-cmov.ll
fast-isel-select-sse.ll
fast-isel-select.ll
fast-isel-sse12-fptoint.ll
fast-isel-store.ll
fast-isel-tailcall.ll
fast-isel-tls.ll
fast-isel-x32.ll
fast-isel-x86-64.ll
fast-isel-x86.ll
fast-isel.ll
fastcall-correct-mangling.ll
fastcc3struct.ll
fastcc-2.ll
fastcc-byval.ll
fastcc-sret.ll
fastcc.ll
fastisel-gep-promote-before-add.ll
fastmath-optnone.ll
fdiv.ll
field-extract-use-trunc.ll
fildll.ll
float-asmprint.ll
float-conv-elim.ll Specify arch in test/CodeGen/X86/float-conv-elim.ll 2015-02-17 00:11:19 +00:00
floor-soft-float.ll
fltused_function_pointer.ll
fltused.ll
fma3-intrinsics.ll
fma4-intrinsics-x86_64-folded-load.ll
fma_patterns_wide.ll
fma_patterns.ll
fma-do-not-commute.ll
fma-intrinsics-x86_64.ll
fma-phi-213-to-231.ll
fma.ll
fmaxnum.ll
fminnum.ll
fmul-combines.ll
fmul-zero.ll
fnabs.ll
fold-add.ll
fold-and-shift.ll
fold-call-2.ll
fold-call-3.ll
fold-call-oper.ll
fold-call.ll
fold-imm.ll
fold-load-vec.ll
fold-load.ll
fold-mul-lohi.ll
fold-pcmpeqd-1.ll
fold-pcmpeqd-2.ll
fold-sext-trunc.ll
fold-tied-op.ll [x86] Remove some windows line endings that snuck into the tests here. 2015-01-11 01:36:20 +00:00
fold-vector-sext-crash.ll
fold-vector-sext-zext.ll
fold-vex.ll Fix program crashes due to alignment exceptions generated for SSE memop instructions (PR22371). 2015-02-03 17:13:04 +00:00
fold-xmm-zero.ll
fold-zext-trunc.ll
force-align-stack-alloca.ll [X86] Convert esp-relative movs of function arguments into pushes, step 1 2014-12-09 06:10:44 +00:00
force-align-stack.ll
fp2sint.ll
fp_constant_op.ll
fp_load_cast_fold.ll
fp_load_fold.ll
fp-double-rounding.ll [CodeGen] Don't blindly combine (fp_round (fp_round x)) to (fp_round x). 2015-02-12 06:15:29 +00:00
fp-elim-and-no-fp-elim.ll
fp-elim.ll
fp-fast.ll
fp-immediate-shorten.ll
fp-in-intregs.ll
fp-load-trunc.ll
fp-select-cmp-and.ll
fp-stack-2results.ll
fp-stack-compare-cmov.ll
fp-stack-compare.ll
fp-stack-direct-ret.ll
fp-stack-O0-crash.ll
fp-stack-O0.ll
fp-stack-ret-conv.ll
fp-stack-ret-store.ll
fp-stack-ret.ll
fp-stack-retcopy.ll
fp-stack-set-st1.ll
fp-stack.ll
fp-trunc.ll
fp-une-cmp.ll
fpstack-debuginstr-kill.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
frame-base.ll
frameaddr.ll X86: @llvm.frameaddress should defer to SelectionDAG for Win CFI 2015-02-10 22:00:34 +00:00
frameallocate.ll X86: Make @llvm.frameaddress work correctly with Windows unwind codes 2015-02-10 21:22:05 +00:00
fsgsbase.ll
fsxor-alignment.ll
full-lsr.ll
ga-offset.ll
gather-addresses.ll [X86] Improve a dag-combine that handles a vector extract -> zext sequence. 2014-12-04 13:49:51 +00:00
gcc_except_table_functions.ll
gcc_except_table.ll X86: Emit an ABI compliant prologue and epilogue for Win64 2015-02-10 00:57:42 +00:00
ghc-cc64.ll Parse 'ghccc' in .ll files as the GHC convention (cc 10) 2014-12-01 21:04:44 +00:00
ghc-cc.ll Parse 'ghccc' in .ll files as the GHC convention (cc 10) 2014-12-01 21:04:44 +00:00
global-sections-comdat.ll Put each jump table in an independent section if the function is too. 2015-02-12 17:16:46 +00:00
global-sections-tls.ll
global-sections.ll Add r228939 back with a fix. 2015-02-17 23:34:51 +00:00
gs-fold.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-2.ll
haddsub-undef.ll
haddsub.ll
half.ll
handle-move.ll
hidden-vis-2.ll
hidden-vis-3.ll
hidden-vis-4.ll
hidden-vis-pic.ll
hidden-vis.ll
hipe-cc64.ll
hipe-cc.ll
hipe-prologue.ll
hoist-common.ll
hoist-invariant-load.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
huge-stack-offset.ll [X86] Use single add/sub for large stack offsets 2015-01-29 16:18:29 +00:00
i1narrowfail.ll Fixed a bug in narrowing store operation. 2015-01-22 09:39:08 +00:00
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
i486-fence-loop.ll
iabs.ll
ident-metadata.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
illegal-insert.ll
illegal-vector-args-return.ll
imul-lea-2.ll
imul-lea.ll
imul.ll [X86] Reduce some 32-bit imuls into lea + shl 2015-01-28 14:08:22 +00:00
inalloca-ctor.ll [X86] Convert esp-relative movs of function arguments into pushes, step 1 2014-12-09 06:10:44 +00:00
inalloca-invoke.ll [X86] Convert esp-relative movs of function arguments to pushes, step 2 2015-02-01 16:56:04 +00:00
inalloca-regparm.ll
inalloca-stdcall.ll x86: Fix large model calls to __chkstk for dynamic allocas 2015-01-29 23:58:04 +00:00
inalloca.ll
indirect-hidden.ll
init-priority.ll Explicitly initialize a flag in a default constructor. 2015-02-10 15:30:02 +00:00
inline-asm-2addr.ll
inline-asm-error.ll
inline-asm-flag-clobber.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
inline-asm-fpstack.ll
inline-asm-h.ll
inline-asm-modifier-n.ll
inline-asm-modifier-q.ll
inline-asm-mrv.ll
inline-asm-out-regs.ll
inline-asm-pic.ll
inline-asm-ptr-cast.ll
inline-asm-q-regs.ll
inline-asm-R-constraint.ll
inline-asm-sp-clobber-memcpy.ll
inline-asm-stack-realign2.ll
inline-asm-stack-realign3.ll
inline-asm-stack-realign.ll
inline-asm-tied.ll
inline-asm-x-scalar.ll
inline-asm.ll
inlineasm-sched-bug.ll
inreg.ll
ins_split_regalloc.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
insertps-O0-bug.ll [X86][DAG] Disable target specific combine on INSERTPS dag nodes at -O0. 2015-01-16 14:55:26 +00:00
int-intrinsic.ll
invalid-shift-immediate.ll
isel-optnone.ll
isel-sink2.ll
isel-sink3.ll
isel-sink.ll
isint.ll
isnan2.ll
isnan.ll
ispositive.ll
jump_sign.ll
jump_table_alias.ll
jump_table_align.ll
jump_table_bitcast.ll
jump_tables.ll
label-redefinition.ll
large-code-model-isel.ll [X86][ISel] Fix a regression I introduced in r224884 2014-12-28 15:20:57 +00:00
large-constants.ll
large-gep-chain.ll
large-gep-scale.ll
large-global.ll
ldzero.ll
lea-2.ll Fix test case I missed in r225432. 2015-01-08 07:57:27 +00:00
lea-3.ll
lea-4.ll
lea-5.ll
lea-recursion.ll
lea.ll
leaf-fp-elim.ll
legalize-fmp-oeq-vector-select.ll
legalize-libcalls.ll
legalize-shift-64.ll
legalize-sub-zero-2.ll
legalize-sub-zero.ll
legalizedag_vec.ll
lfence.ll
libcall-sret.ll
licm-dominance.ll
licm-nested.ll
licm-symbol.ll
limited-prec.ll
lit.local.cfg
live-out-reg-info.ll
liveness-local-regalloc.ll
load-slice.ll
lock-inst-encoding.ll
log2_not_readnone.ll
logical-load-fold.ll use a triple instead of a cpu; less builbot sadness 2015-02-17 21:59:54 +00:00
long-setcc.ll
longlong-deadload.ll
loop-blocks.ll
loop-hoist.ll
loop-strength-reduce2.ll
loop-strength-reduce4.ll
loop-strength-reduce5.ll
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
lower-bitcast.ll Revert "[x86] Combine x86mmx/i64 to v2i64 conversion to use scalar_to_vector" 2015-01-27 21:34:11 +00:00
lower-vec-shift-2.ll [x86] Switch to using the long '--check-prefix' form which the 2015-02-04 00:58:40 +00:00
lower-vec-shift.ll
lsr-delayed-fold.ll
lsr-i386.ll
lsr-interesting-step.ll
lsr-loop-exit-cond.ll
lsr-negative-stride.ll
lsr-nonaffine.ll
lsr-normalization.ll
lsr-overflow.ll
lsr-quadratic-expand.ll Don't re-use existing addrec expansions if they contain casts. 2011-03-02 01:34:10 +00:00
lsr-redundant-addressing.ll
lsr-reuse-trunc.ll
lsr-reuse.ll
lsr-sort.ll
lsr-static-addr.ll
lsr-wrap.ll
lzcnt-tzcnt.ll [X86] Improved tablegen patters for matching TZCNT/LZCNT. 2014-12-08 17:47:18 +00:00
lzcnt.ll
machine-cp.ll
machine-cse.ll
MachineBranchProb.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
MachineSink-CritEdge.ll
MachineSink-DbgValue.ll IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
MachineSink-eflags.ll
MachineSink-PHIUse.ll
macho-comdat.ll Change the .ll syntax for comdats and add a syntactic sugar. 2015-01-06 22:55:16 +00:00
masked_memop.ll [x86] Teach the 128-bit vector shuffle lowering routines to take 2015-02-16 01:52:02 +00:00
masked-iv-safe.ll
masked-iv-unsafe.ll
maskmovdqu.ll
mature-mc-support.ll
mcinst-avx-lowering.ll
mcinst-lowering.ll
mem-intrin-base-reg.ll [X86] Convert esp-relative movs of function arguments into pushes, step 1 2014-12-09 06:10:44 +00:00
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-sse-stack-realignment.ll
memset.ll
merge_store.ll
MergeConsecutiveStores.ll Revert r227242 - Merge vector stores into wider vector stores (PR21711). 2015-01-27 23:58:01 +00:00
mfence.ll
mingw-alloca.ll
misaligned-memset.ll
misched-aa-colored.ll
misched-aa-mmos.ll
misched-balance.ll
misched-code-difference-with-debug.ll IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
misched-copy.ll x86-32: PUSHF/POPF use/def EFLAGS 2014-12-16 20:15:45 +00:00
misched-crash.ll x86-32: PUSHF/POPF use/def EFLAGS 2014-12-16 20:15:45 +00:00
misched-fusion.ll
misched-ilp.ll
misched-matmul.ll
misched-matrix.ll
misched-new.ll
mmx-arg-passing.ll [X86][MMX] Cleanup shuffle, bitcast and insert element tests 2015-02-02 21:56:11 +00:00
mmx-arith.ll [x86][MMX] Rename and cleanup tests: arith, intrinsics and shuffle 2015-01-26 20:06:51 +00:00
mmx-bitcast.ll [X86][MMX] Cleanup shuffle, bitcast and insert element tests 2015-02-02 21:56:11 +00:00
mmx-copy-gprs.ll
mmx-intrinsics.ll [X86][MMX] Cleanup shuffle, bitcast and insert element tests 2015-02-02 21:56:11 +00:00
mod128.ll
movbe.ll
movfs.ll
movgs.ll
movmsk.ll
movntdq-no-avx.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
movtopush.ll [X86] Call frame optimization - allow stack-relative movs to be folded into a push 2015-02-12 14:17:35 +00:00
ms-inline-asm.ll
mul64.ll
mul128_sext_loop.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
multiple-return-values-cross-block.ll
mulx32.ll
mulx64.ll
musttail-fastcall.ll Make musttail more robust for vector types on x86 2014-12-22 23:58:37 +00:00
musttail-indirect.ll
musttail-thiscall.ll
musttail-varargs.ll musttail: Only set the inreg flag for fastcall and vectorcall 2015-01-12 23:28:23 +00:00
musttail.ll
named-reg-alloc.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
named-reg-notareg.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
nancvt.ll
narrow_op-1.ll
narrow-shl-cst.ll
narrow-shl-load.ll
neg_cmp.ll
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
newline-and-quote.ll
no-cmov.ll
nobt.ll
nocx16.ll
non-lazy-bind.ll
non-unique-sections.ll Add testcases I missed in r229541. 2015-02-17 20:50:39 +00:00
nonconst-static-ev.ll
nonconst-static-iv.ll
nontemporal-2.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
nontemporal.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
norex-subreg.ll x86-32: PUSHF/POPF use/def EFLAGS 2014-12-16 20:15:45 +00:00
nosse-error1.ll
nosse-error2.ll
nosse-varargs.ll Cleanup a few tests on sse4a machines and FileCheckize along the way. 2015-01-29 13:31:32 +00:00
null-streamer.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
objc-gc-module-flags.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
object-size.ll
opaque-constant-asm.ll
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
osx-private-labels.ll
overlap-shift.ll
packed_struct.ll
palignr-2.ll
palignr.ll [x86] Teach the unpack lowering to try wider element unpacks. 2015-02-17 02:12:24 +00:00
pass-three.ll
patchpoint-invoke.ll
patchpoint-webkit_jscc.ll
patchpoint.ll
peep-setb.ll
peep-test-0.ll
peep-test-1.ll
peep-test-2.ll x86-32: PUSHF/POPF use/def EFLAGS 2014-12-16 20:15:45 +00:00
peep-test-3.ll
peep-test-4.ll
peephole-fold-movsd.ll
peephole-multiple-folds.ll
personality_size.ll
personality.ll
phaddsub.ll
phi-bit-propagation.ll
phi-immediate-factoring.ll
phielim-split.ll
phys_subreg_coalesce-2.ll
phys_subreg_coalesce-3.ll x86-32: PUSHF/POPF use/def EFLAGS 2014-12-16 20:15:45 +00:00
phys_subreg_coalesce.ll
phys-reg-local-regalloc.ll
pic_jumptable.ll Bring r226038 back. 2015-01-19 15:16:06 +00:00
pic-load-remat.ll
pic.ll
pmovext.ll
pmovsx-inreg.ll
pmul.ll [x86] Add a generic unpack-targeted lowering technique. This can be used 2015-02-16 12:28:18 +00:00
pmulld.ll
pointer-vector.ll [X86] Declare SSE4.1/AVX2 vector extloads covered by PMOV[SZ]X legal. 2015-01-21 17:07:06 +00:00
popcnt.ll
postalloc-coalescing.ll
postra-licm.ll
powi.ll
pr1462.ll
pr1489.ll
pr1505.ll
pr1505b.ll
pr2177.ll
pr2182.ll
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
pr3522.ll
pr5145.ll
pr7882.ll
pr9127.ll
pr9743.ll
pr10068.ll
pr10475.ll
pr10499.ll
pr10523.ll
pr10524.ll
pr10525.ll
pr10526.ll
pr11202.ll
pr11334.ll
pr11415.ll
pr11468.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
pr11985.ll
pr11998.ll
pr12312.ll
pr12360.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
pr12889.ll
pr13209.ll
pr13220.ll
pr13458.ll
pr13577.ll
pr13859.ll
pr13899.ll
pr14088.ll
pr14098.ll
pr14161.ll
pr14204.ll
pr14314.ll
pr14333.ll
pr14562.ll
pr15267.ll Fixes a bug in vector load legalization that confused bits and bytes. 2015-02-04 18:54:01 +00:00
pr15296.ll
pr15309.ll
pr16031.ll
pr16360.ll
pr16807.ll
pr17546.ll
pr17631.ll
pr17764.ll
pr18014.ll
pr18023.ll
pr18054.ll
pr18162.ll
pr18846.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
pr19049.ll
pr20020.ll
pr20088.ll
pr21099.ll
pr21529.ll
pr21792.ll [MIScheduler] Slightly better handling of constrainLocalCopy when both source and dest are local 2015-01-19 07:30:47 +00:00
pr22019.ll CodeGen: Allow aliases to be overridden by variables 2014-12-24 22:44:29 +00:00
pr22103.ll [x86] Remove some windows line endings that snuck into the tests here. 2015-01-11 01:36:20 +00:00
pre-ra-sched.ll x86-32: PUSHF/POPF use/def EFLAGS 2014-12-16 20:15:45 +00:00
prefetch.ll
prefixdata.ll Prologue support 2014-12-03 02:08:38 +00:00
preserve_allcc64.ll
preserve_mostcc64.ll
private-2.ll
private.ll
prologuedata.ll Prologue support 2014-12-03 02:08:38 +00:00
promote-assert-zext.ll
promote-i16.ll
promote-trunc.ll
promote.ll
pshufb-mask-comments.ll X86: Don't crash if we can't decode the pshufb mask 2015-02-12 23:26:26 +00:00
pshufd-combine-crash.ll
psubus.ll [X86][SSE] Simplified PSUBUS tests 2015-01-22 22:19:58 +00:00
ptr-rotate.ll
ptrtoint-constexpr.ll
ragreedy-bug.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
ragreedy-hoist-spill.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
ragreedy-last-chance-recoloring.ll
rd-mod-wr-eflags.ll
rdpmc.ll
rdrand.ll
rdseed.ll
rdtsc.ll
recip-fastmath.ll
red-zone2.ll
red-zone.ll
regalloc-reconcile-broken-hints.ll [RegAllocGreedy] Introduce a late pass to repair broken hints. 2015-01-08 01:16:39 +00:00
reghinting.ll
regpressure.ll
rem.ll
remat-constant.ll
remat-fold-load.ll
remat-invalid-liveness.ll
remat-mov-0.ll
remat-phys-dead.ll x86-32: PUSHF/POPF use/def EFLAGS 2014-12-16 20:15:45 +00:00
remat-scalar-zero.ll
ret-addr.ll
ret-i64-0.ll
ret-mmx.ll
return_zeroext_i2.ll
returned-trunc-tail-calls.ll
reverse_branches.ll
rip-rel-address.ll
rip-rel-lea.ll
rodata-relocs.ll
rot16.ll
rot32.ll
rot64.ll
rotate2.ll
rotate4.ll
rotate.ll
rounding-ops.ll
rtm.ll
saddo-redundant-add.ll
sandybridge-loads.ll
scalar_sse_minmax.ll X86: Test cleanup 2015-02-05 23:52:12 +00:00
scalar_widen_div.ll
scalar-extract.ll
scalar-min-max-fill-operand.ll
scalarize-bitcast.ll
scev-interchange.ll Add the ExceptionHandling::MSVC enumeration 2014-12-19 22:19:48 +00:00
sdiv-exact.ll
segmented-stacks-dynamic.ll
segmented-stacks.ll x86_64: Fix calls to __morestack under the large code model. 2014-12-30 20:05:19 +00:00
seh-basic.ll CodeGen support for x86_64 SEH catch handlers in LLVM 2015-01-14 01:05:27 +00:00
seh-catch-all.ll SEH: Finish writing the catch-all test case 2015-01-22 02:31:09 +00:00
seh-filter.ll Fix assertion when C++ EH filters are present in functions using SEH 2015-01-23 23:51:25 +00:00
seh-finally.ll Classify functions by EH personality type rather than using the triple 2015-01-23 18:49:01 +00:00
seh-safe-div.ll Add a Windows EH preparation pass that zaps resumes 2015-01-29 00:41:44 +00:00
select_const.ll
select-with-and-or.ll
select.ll
selectiondag-crash.ll [DAG] Fix wrong canonicalization performed on shuffle nodes. 2015-01-24 11:54:29 +00:00
selectiondag-cse.ll
setcc-narrowing.ll
setcc-sentinals.ll
setcc.ll
setjmp-spills.ll
setoeq.ll
setuge.ll
sext-i1.ll
sext-load.ll
sext-ret-val.ll
sext-setcc-self.ll
sext-subreg.ll
sext-trunc.ll
sfence.ll
sha.ll
shift-and.ll
shift-bmi2.ll
shift-coalesce.ll
shift-codegen.ll
shift-combine-crash.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
shift-pcmp.ll
shl_elim.ll
shl_undef.ll
shl-anyext.ll
shl-i64.ll
shrink-compare.ll Enable (sext x) == C --> x == (trunc C) combine 2014-12-21 16:48:42 +00:00
shrink-fp-const1.ll
shrink-fp-const2.ll
shuffle-combine-crash.ll
sibcall-2.ll
sibcall-3.ll
sibcall-4.ll Parse 'ghccc' in .ll files as the GHC convention (cc 10) 2014-12-01 21:04:44 +00:00
sibcall-5.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
sibcall-6.ll
sibcall-byval.ll
sibcall.ll Fix typo in test/CodeGen/X86/sibcall.ll (pr22331). 2015-02-03 19:20:26 +00:00
simple-zext.ll
sincos-opt.ll Line endings fix. NFC. 2015-01-26 21:28:32 +00:00
sincos.ll
sink-blockfreq.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
sink-hoist.ll x86-32: PUSHF/POPF use/def EFLAGS 2014-12-16 20:15:45 +00:00
sink-out-of-loop.ll
sjlj-baseptr.ll [X86] Restore X86 base pointer after call to llvm.eh.sjlj.setjmp 2014-12-04 00:56:38 +00:00
sjlj.ll
slow-div.ll [X86] For Silvermont CPU use 16-bit division instead of 64-bit for small positive numbers 2014-11-21 11:19:34 +00:00
slow-incdec.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
small-byval-memcpy.ll Enable FeatureFastUAMem for btver2 2014-11-28 18:40:18 +00:00
smul-with-overflow.ll
soft-fp.ll
splat-const.ll [DAGCombine] Produce better code for constant splats 2015-01-22 13:07:28 +00:00
splat-for-size.ll
split-eh-lpad-edges.ll
split-vector-bitcast.ll
split-vector-rem.ll
sqrt-fastmath.ll
sqrt.ll
sret-implicit.ll X86 ABI fix for return values > 24 bytes. 2015-02-05 18:09:05 +00:00
sse1.ll
sse2-intrinsics-x86-upgrade.ll [X86] Remove AVX2 and SSE2 pslldq and psrldq intrinsics. We can represent them in IR with vector shuffles now. All their uses have been removed from clang in favor of shuffles. 2015-02-18 06:24:44 +00:00
sse2-intrinsics-x86.ll [X86] Remove AVX2 and SSE2 pslldq and psrldq intrinsics. We can represent them in IR with vector shuffles now. All their uses have been removed from clang in favor of shuffles. 2015-02-18 06:24:44 +00:00
sse2-vector-shifts.ll
sse2.ll [x86] Add a generic unpack-targeted lowering technique. This can be used 2015-02-16 12:28:18 +00:00
sse3-avx-addsub-2.ll
sse3-avx-addsub.ll
sse3-intrinsics-x86.ll
sse3.ll [X86][SSE] pslldq/psrldq byte shifts/rotation for SSE2 2014-11-19 10:06:49 +00:00
sse4a.ll Cleanup a few tests on sse4a machines and FileCheckize along the way. 2015-01-29 13:31:32 +00:00
sse41-intrinsics-x86-upgrade.ll
sse41-intrinsics-x86.ll
sse41-pmovxrm-intrinsics.ll [X86] Refactor PMOV[SZ]Xrm to add missing AVX2 patterns. 2014-12-06 01:31:07 +00:00
sse41.ll [x86] Teach the 128-bit vector shuffle lowering routines to take 2015-02-16 01:52:02 +00:00
sse42_64.ll
sse42-intrinsics-x86.ll
sse42.ll
sse_partial_update.ll Model sqrtsd as a binary operation with one source operand tied to the destination (PR14221) 2015-01-26 18:42:16 +00:00
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 [X86] Break false dependencies before partial register updates when the source operand is in memory 2014-12-15 13:18:21 +00:00
sse-fcopysign.ll
sse-intel-ocl.ll
sse-intrinsics-x86.ll
sse-load-ret.ll
sse-minmax.ll [X86] Also create+widen FMIN/FMAX nodes for v2f32. 2015-01-12 20:31:30 +00:00
sse-scalar-fp-arith.ll [SSE/AVX] Use multiclasses to reduce the mass of scalar math patterns; NFCI 2015-02-13 21:52:42 +00:00
sse-unaligned-mem-feature.ll improved CHECK 2015-02-04 00:24:06 +00:00
sse-varargs.ll
ssp-data-layout.ll
ssse3-intrinsics-x86.ll
stack_guard_remat.ll
stack-align2.ll
stack-align-memcpy.ll
stack-align.ll prevent folding a scalar FP load into a packed logical FP instruction (PR22371) 2015-02-17 20:08:21 +00:00
stack-folding-fp-avx1.ll [X86] Force fp stack folding tests to keep to specific domain. 2015-02-07 16:14:55 +00:00
stack-folding-fp-sse42.ll [X86] Force fp stack folding tests to keep to specific domain. 2015-02-07 16:14:55 +00:00
stack-folding-int-avx1.ll [X86] Ensure integer domain on scalar load/store stack folding tests. NFC 2015-02-14 14:10:44 +00:00
stack-folding-int-avx2.ll Ensure integer domain on general shuffle stack folding tests 2015-02-12 22:47:45 +00:00
stack-folding-int-sse42.ll [X86] Ensure integer domain on scalar load/store stack folding tests. NFC 2015-02-14 14:10:44 +00:00
stack-folding-xop.ll [X86] Add support for parsing and printing the mnemonic aliases for the XOP VPCOM instructions. 2015-02-13 07:42:25 +00:00
stack-probe-size.ll X86: Allow the stack probe size to be configurable per function 2015-01-07 18:14:07 +00:00
stack-protector-dbginfo.ll IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
stack-protector-vreg-to-vreg-copy.ll
stack-protector-weight.ll [stack protector] Set edge weights for newly created basic blocks. 2014-12-01 04:27:03 +00:00
stack-protector.ll
stack-update-frame-opcode.ll
StackColoring-dbg.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
StackColoring.ll
stackmap-fast-isel.ll
stackmap-large-constants.ll
stackmap-liveness.ll
stackmap-nops.ll
stackmap-shadow-optimization.ll
stackmap.ll
stackpointer.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
statepoint-call-lowering.ll Intrinsics: introduce llvm_any_ty aka ValueType Any 2015-01-22 20:14:38 +00:00
statepoint-forward.ll Introduce an example statepoint GC strategy 2015-01-07 19:07:50 +00:00
statepoint-stack-usage.ll statepoint tests: use statepoint-example gc 2015-01-15 18:10:44 +00:00
statepoint-stackmap-format.ll Intrinsics: introduce llvm_any_ty aka ValueType Any 2015-01-22 20:14:38 +00:00
stdarg.ll
stdcall-notailcall.ll
stdcall.ll
store_op_load_fold2.ll
store_op_load_fold.ll
store-empty-member.ll
store-fp-constant.ll
store-global-address.ll
store-narrow.ll
stores-merging.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
sunkaddr-ext.ll
switch-bt.ll Prevent binary-tree deterioration in sparse switch statements. 2015-01-20 19:43:33 +00:00
switch-crit-edge-constant.ll
switch-default-only.ll Switch lowering: Fix broken 'Figure out which block is next' code 2014-11-29 21:17:05 +00:00
switch-jump-table.ll SelectionDAG switch lowering: use 'unsigned' to count destination popularity 2014-12-16 23:41:59 +00:00
switch-or.ll
switch-order-weight.ll
switch-zextload.ll
SwitchLowering.ll
swizzle-2.ll
swizzle-avx2.ll
SwizzleShuff.ll [x86] Teach the 128-bit vector shuffle lowering routines to take 2015-02-16 01:52:02 +00:00
tail-call-attrs.ll
tail-call-got.ll
tail-call-legality.ll
tail-call-win64.ll Win64: Put a REX_W prefix on all TAILJMP* instructions 2015-01-30 21:03:31 +00:00
tail-dup-addr.ll
tail-opts.ll
tail-threshold.ll
tailcall-64.ll Win64: Put a REX_W prefix on all TAILJMP* instructions 2015-01-30 21:03:31 +00:00
tailcall-calleesave.ll
tailcall-cgp-dup.ll
tailcall-disable.ll
tailcall-fastisel.ll
tailcall-largecode.ll
tailcall-multiret.ll
tailcall-returndup-void.ll Parse 'ghccc' in .ll files as the GHC convention (cc 10) 2014-12-01 21:04:44 +00:00
tailcall-ri64.ll
tailcall-stackalign.ll
tailcall-structret.ll
tailcall.ll
tailcallbyval64.ll
tailcallbyval.ll
tailcallfp2.ll
tailcallfp.ll
tailcallpic1.ll
tailcallpic2.ll
tailcallstack64.ll
targetLoweringGeneric.ll
tbm_patterns.ll
tbm-intrinsics-x86_64.ll
test-nofold.ll
test-shrink-bug.ll
test-shrink.ll
testb-je-fusion.ll
testl-commute.ll
this-return-64.ll
tls-addr-non-leaf-function.ll
tls-local-dynamic.ll
tls-models.ll X86: Don't make illegal GOTTPOFF relocations 2015-01-06 07:12:52 +00:00
tls-pic.ll
tls-pie.ll
tls.ll
tlv-1.ll
tlv-2.ll
tlv-3.ll
trap.ll Use a different encoding for debugtrap on PS4. 2015-01-26 19:09:27 +00:00
trunc-ext-ld-st.ll
trunc-to-bool.ll
TruncAssertZext.ll
twoaddr-coalesce-2.ll
twoaddr-coalesce.ll
twoaddr-lea.ll
twoaddr-pass-sink.ll
twoaddr-sink-terminator.ll
uint64-to-float.ll
uint_to_fp-2.ll [x86] Give movss and movsd execution domains in the x86 backend. 2015-02-04 10:58:53 +00:00
uint_to_fp.ll
umul-with-carry.ll
umul-with-overflow.ll
unaligned-32-byte-memops.ll Merge consecutive 16-byte loads into one 32-byte load (PR22329) 2015-02-03 18:54:00 +00:00
unaligned-load.ll
unaligned-spill-folding.ll
undef-label.ll
unknown-location.ll IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
unreachable-loop-sinking.ll
unwind-init.ll
unwindraise.ll
urem-i8-constant.ll
use-add-flags.ll
utf8.ll
utf16-cfstrings.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
v2f32.ll Line endings fix. NFC. 2015-01-26 21:28:32 +00:00
v4f32-immediate.ll
v4i32load-crash.ll
v8i1-masks.ll
vaargs.ll x86-32: PUSHF/POPF use/def EFLAGS 2014-12-16 20:15:45 +00:00
vararg_no_start.ll
vararg_tailcall.ll
vararg-callee-cleanup.ll
variable-sized-darwin-bzero.ll
variadic-node-pic.ll
vastart-defs-eflags.ll
vbinop-simplify-bug.ll
vec_add.ll
vec_align_i256.ll
vec_align.ll
vec_anyext.ll
vec_call.ll
vec_cast2.ll [x86] When splitting 256-bit vectors into 128-bit vectors, don't extract 2015-02-15 10:12:02 +00:00
vec_cast.ll
vec_compare-sse4.ll
vec_compare.ll [x86] Change u8imm operands to always print as unsigned. This makes shuffle masks and the like make way more sense. 2015-01-23 08:00:59 +00:00
vec_ctbits.ll
vec_ext_inreg.ll
vec_extract-avx.ll [x86] Remove some windows line endings that snuck into the tests here. 2015-01-11 01:36:20 +00:00
vec_extract-mmx.ll [X86][MMX] Handle i32->mmx conversion using movd 2015-02-05 13:23:07 +00:00
vec_extract-sse4.ll
vec_extract.ll
vec_fabs.ll fixed to test features, not CPUs 2015-02-11 15:00:41 +00:00
vec_floor.ll
vec_fneg.ll fixed to test features, not CPUs 2015-02-11 15:00:19 +00:00
vec_fpext.ll
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 [SDAG] Teach the SelectionDAG to canonicalize vector shuffles of splats 2015-02-15 12:18:12 +00:00
vec_insert-7.ll
vec_insert-8.ll
vec_insert-9.ll
vec_insert-mmx.ll [X86][MMX] Cleanup shuffle, bitcast and insert element tests 2015-02-02 21:56:11 +00:00
vec_loadsingles.ll merge consecutive loads that are offset from a base address 2014-12-16 21:57:18 +00:00
vec_logical.ll
vec_return.ll
vec_round.ll
vec_sdiv_to_shift.ll
vec_set-2.ll
vec_set-3.ll
vec_set-4.ll
vec_set-6.ll
vec_set-7.ll
vec_set-8.ll
vec_set-A.ll
vec_set-B.ll
vec_set-C.ll
vec_set-D.ll
vec_set-F.ll
vec_set-H.ll
vec_set.ll
vec_setcc-2.ll
vec_setcc.ll
vec_shift2.ll
vec_shift3.ll
vec_shift4.ll
vec_shift5.ll
vec_shift6.ll
vec_shift.ll
vec_shuf-insert.ll
vec_split.ll fixed to test features, not CPUs 2015-02-11 14:58:25 +00:00
vec_ss_load_fold.ll
vec_trunc_sext.ll
vec_udiv_to_shift.ll
vec_uint_to_fp.ll [X86] Do not custom lower UINT_TO_FP when the target type does not 2014-11-21 00:47:19 +00:00
vec_unsafe-fp-math.ll
vec_zero_cse.ll
vec_zero-2.ll
vec_zero.ll
vec-loadsingles-alignment.ll X86: Don't over-align combined loads. 2014-12-23 00:35:23 +00:00
vec-sign.ll
vec-trunc-store.ll
vector-blend.ll [x86,sdag] Two interrelated changes to the x86 and sdag code. 2015-02-19 10:36:19 +00:00
vector-ctpop.ll fixed to test features, not CPUs 2015-02-09 17:17:09 +00:00
vector-gep.ll
vector-idiv.ll [x86] Add a generic unpack-targeted lowering technique. This can be used 2015-02-16 12:28:18 +00:00
vector-intrinsics.ll
vector-rem.ll
vector-sext.ll [CodeGen] Add hook/combine to form vector extloads, enabled on X86. 2015-02-05 18:31:02 +00:00
vector-shuffle-128-v2.ll [x86] Switch a collection of tests explicitly to the new vector shuffle 2015-02-15 06:37:21 +00:00
vector-shuffle-128-v4.ll [x86] Merge checks for a recently added test case that is the same on 2015-02-18 23:20:49 +00:00
vector-shuffle-128-v8.ll [X86] Add another test case for the bug fixed in r229642. With the bug a vpsrldq was emitted instead of pslldq. 2015-02-18 07:45:43 +00:00
vector-shuffle-128-v16.ll [x86] Refactor the bit shift code the same as I just did the byte shift 2015-02-18 09:19:58 +00:00
vector-shuffle-256-v4.ll [X86][SSE] Generalised unpckl/unpckh shuffle matching 2015-02-17 22:24:32 +00:00
vector-shuffle-256-v8.ll [X86][SSE] Generalised unpckl/unpckh shuffle matching 2015-02-17 22:24:32 +00:00
vector-shuffle-256-v16.ll [X86] Add support for lowering shuffles to 256-bit PALIGNR instruction. 2015-02-16 06:29:06 +00:00
vector-shuffle-256-v32.ll [x86] Add initial basic support for forming blends of v16i8 vectors. 2015-02-16 10:58:23 +00:00
vector-shuffle-512-v8.ll [x86] Teach the decomposed shuffle/blend lowering to use an early blend 2015-02-15 12:42:15 +00:00
vector-shuffle-512-v16.ll [x86] Switch a collection of tests explicitly to the new vector shuffle 2015-02-15 06:37:21 +00:00
vector-shuffle-combining.ll [x86] Teach the unpack lowering to try wider element unpacks. 2015-02-17 02:12:24 +00:00
vector-shuffle-mmx.ll [X86][SSE] Add SSE MOVQ instructions to SSEPackedInt domain 2015-02-16 21:50:56 +00:00
vector-shuffle-sse1.ll [SDAG] Teach the SelectionDAG to canonicalize vector shuffles of splats 2015-02-15 12:18:12 +00:00
vector-trunc.ll [x86] Teach the unpack lowering to try wider element unpacks. 2015-02-17 02:12:24 +00:00
vector-variable-idx2.ll
vector-variable-idx.ll
vector-zext.ll [X86] Combine vector anyext + and into a vector zext 2015-02-17 08:22:51 +00:00
vector-zmov.ll Added missing tests for X86vzmovl folding. NFC. 2014-12-15 22:45:48 +00:00
vector.ll
vectorcall.ll
vfcmp.ll
viabs.ll fixed to test features, not CPUs 2015-02-09 17:17:09 +00:00
visibility2.ll
visibility.ll
volatile.ll
vortex-bug.ll
vselect-2.ll [x86] Give movss and movsd execution domains in the x86 backend. 2015-02-04 10:58:53 +00:00
vselect-avx.ll Fixes two issue in SimplifyDemandedBits of sext_in_reg: 2015-02-18 09:43:40 +00:00
vselect-minmax.ll [AVX512] Enabling MIN/MAX lowering. 2014-12-12 15:10:43 +00:00
vselect.ll [x86,sdag] Two interrelated changes to the x86 and sdag code. 2015-02-19 10:36:19 +00:00
vshift_scalar.ll
vshift_split2.ll
vshift_split.ll
vshift-1.ll [DAGCombiner] insert_vector_elt: Avoid building a vector twice. 2013-07-30 00:24:09 +00:00
vshift-2.ll
vshift-3.ll
vshift-4.ll [X86] Avoid introducing extra shuffles when lowering packed vector shifts. 2014-12-05 12:13:30 +00:00
vshift-5.ll
vshift-6.ll fix test attributes; this is an SSE2 test, not a Nehalem test 2015-02-08 21:14:27 +00:00
vsplit-and.ll
warn-stack.ll
weak_def_can_be_hidden.ll
weak.ll
wide-fma-contraction.ll
wide-integer-fold.ll
widen_arith-1.ll
widen_arith-2.ll
widen_arith-3.ll
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_conversions.ll [x86] Remove the now-default-on flag for the new vector shuffle lowering 2015-02-15 06:20:51 +00:00
widen_extract-1.ll
widen_load-0.ll fix test attributes; this is an x86-64 test, not a Nehalem test 2015-02-08 21:10:40 +00:00
widen_load-1.ll [X86][SSE] Add SSE MOVQ instructions to SSEPackedInt domain 2015-02-16 21:50:56 +00:00
widen_load-2.ll Revert "[x86] Combine x86mmx/i64 to v2i64 conversion to use scalar_to_vector" 2015-01-27 21:34:11 +00:00
widen_shuffle-1.ll [x86] Teach the 128-bit vector shuffle lowering routines to take 2015-02-16 01:52:02 +00:00
WidenArith.ll
win32_sret.ll
win32-pic-jumptable.ll
win64_alloca_dynalloca.ll X86: Emit an ABI compliant prologue and epilogue for Win64 2015-02-10 00:57:42 +00:00
win64_call_epi.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
win64_eh.ll X86: Emit Win64 SaveXMM opcodes at the right offset in the right order 2015-02-10 19:01:47 +00:00
win64_frame.ll X86: Emit an ABI compliant prologue and epilogue for Win64 2015-02-10 00:57:42 +00:00
win64_params.ll
win64_vararg.ll
win_chkstk.ll Update comments to use unreachable instead of llvm.trap, as implemented now 2015-01-29 22:33:00 +00:00
win_cst_pool.ll fix test attributes; these are SSE2 tests, not Nehalem tests 2015-02-08 20:50:58 +00:00
win_eh_prepare.ll Add a Windows EH preparation pass that zaps resumes 2015-01-29 00:41:44 +00:00
win_ftol2.ll
windows-itanium-alloca.ll X86: use the correct alloca symbol for Windows Itanium 2014-11-20 18:01:26 +00:00
x32-function_pointer-1.ll
x32-function_pointer-2.ll
x32-function_pointer-3.ll
x32-lea-1.ll [x32] Fast ISel should use LEA64_32r instead of LEA32r to adjust addresses in x32 mode. 2015-01-21 14:44:05 +00:00
x86_64-mul-by-const.ll
x86-64-and-mask.ll fix test attributes; these are x86-64 tests, not Nehalem tests 2015-02-08 20:05:53 +00:00
x86-64-arg.ll
x86-64-asm.ll
x86-64-call.ll
x86-64-dead-stack-adjust.ll
x86-64-disp.ll
x86-64-double-precision-shift-left.ll
x86-64-double-precision-shift-right.ll
x86-64-double-shifts-Oz-Os-O2.ll
x86-64-double-shifts-var.ll
x86-64-extend-shift.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-psub.ll fix test attributes; these are MMX tests, not Nehalem tests 2015-02-08 20:01:12 +00:00
x86-64-ptr-arg-simple.ll
x86-64-ret0.ll
x86-64-shortint.ll
x86-64-sret-return-2.ll
x86-64-sret-return.ll
x86-64-stack-and-frame-ptr.ll
x86-64-static-relo-movl.ll
x86-64-tls-1.ll
x86-64-varargs.ll
x86-inline-asm-validation.ll X86: teach X86TargetLowering about L,M,O constraints 2015-01-11 04:39:24 +00:00
x86-mixed-alignment-dagcombine.ll
x86-setcc-int-to-fp-combine.ll
x86-shifts.ll fix test attributes; these are SSE2 tests, not Nehalem tests 2015-02-08 19:50:55 +00:00
x86-store-gv-addr.ll
x86-upgrade-avx-vbroadcast.ll
xaluo.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
xmm-r64.ll
xmulo.ll
xop-intrinsics-x86_64.ll [X86] Add support for parsing and printing the mnemonic aliases for the XOP VPCOM instructions. 2015-02-13 07:42:25 +00:00
xor-icmp.ll
xor.ll generalize test; nothing Nehalem-specific here 2015-02-08 19:38:25 +00:00
xtest.ll
zero-remat.ll
zext-extract_subreg.ll
zext-fold.ll
zext-inreg-0.ll
zext-inreg-1.ll
zext-sext.ll
zext-shl.ll
zext-trunc.ll
zlib-longest-match.ll