llvm-project/llvm/test/CodeGen/Generic
Chandler Carruth 6b0e34c445 Manually upgrade the test suite to specify the flag to cttz and ctlz.
I followed three heuristics for deciding whether to set 'true' or
'false':

- Everything target independent got 'true' as that is the expected
  common output of the GCC builtins.
- If the target arch only has one way of implementing this operation,
  set the flag in the way that exercises the most of codegen. For most
  architectures this is also the likely path from a GCC builtin, with
  'true' being set. It will (eventually) require lowering away that
  difference, and then lowering to the architecture's operation.
- Otherwise, set the flag differently dependending on which target
  operation should be tested.

Let me know if anyone has any issue with this pattern or would like
specific tests of another form. This should allow the x86 codegen to
just iteratively improve as I teach the backend how to differentiate
between the two forms, and everything else should remain exactly the
same.

llvm-svn: 146370
2011-12-12 11:59:10 +00:00
..
2002-04-14-UnexpectedUnsignedType.ll Convert more tests to avoid llvm-as. 2009-09-11 18:36:27 +00:00
2002-04-16-StackFrameSizeAlignment.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2003-05-27-phifcmpd.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2003-05-27-useboolinotherbb.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2003-05-27-usefsubasbool.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2003-05-28-ManyArgs.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2003-05-30-BadFoldGEP.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2003-05-30-BadPreselectPhi.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2003-07-06-BadIntCmp.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2003-07-07-BadLongConst.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2003-07-08-BadCastToBool.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2003-07-29-BadConstSbyte.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2004-05-09-LiveVarPartialRegister.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2005-01-18-SetUO-InfLoop.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2005-04-09-GlobalInPHI.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2005-10-18-ZeroSizeStackObject.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2005-10-21-longlonggtu.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2005-12-01-Crash.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2005-12-12-ExpandSextInreg.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-01-12-BadSetCCFold.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-01-18-InvalidBranchOpcodeAssert.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-02-12-InsertLibcall.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-03-01-dagcombineinfloop.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-04-26-SetCCAnd.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-04-28-Sign-extend-bool.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-05-06-GEP-Cast-Sink-Crash.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-06-12-LowerSwitchCrash.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-06-13-ComputeMaskedBitsCrash.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-06-28-SimplifySetCCCrash.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-07-03-schedulers.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-08-30-CoalescerCrash.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-09-02-LocalAllocCrash.ll Remove the local register allocator. 2010-06-15 21:58:33 +00:00
2006-09-06-SwitchLowering.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-10-27-CondFolding.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-10-29-Crash.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2006-11-20-DAGCombineCrash.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2007-01-15-LoadSelectCycle.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2007-02-25-invoke.ll Update to the new EH scheme. 2011-08-25 23:48:37 +00:00
2007-04-08-MultipleFrameIndices.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2007-04-13-SwitchLowerBadPhi.ll don't have i386-specific tests in CodeGen/Generic, PR6601. 2010-03-14 18:51:18 +00:00
2007-04-17-lsr-crash.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2007-04-27-InlineAsm-X-Dest.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2007-04-27-LargeMemObject.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2007-04-30-LandingPadBranchFolding.ll Update to the new EH scheme. 2011-08-25 23:48:37 +00:00
2007-05-03-EHTypeInfo.ll Remove the -enable-sjlj-eh option, which doesn't do anything. 2010-05-02 15:36:26 +00:00
2007-05-15-InfiniteRecursion.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2007-12-17-InvokeAsm.ll Try to eliminate the use of the 'unwind' instruction. 2011-09-02 22:41:11 +00:00
2007-12-31-UnusedSelector.ll Update to the new EH scheme. 2011-08-25 23:48:37 +00:00
2008-01-25-dag-combine-mul.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2008-01-30-LoadCrash.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2008-02-04-Ctlz.ll Manually upgrade the test suite to specify the flag to cttz and ctlz. 2011-12-12 11:59:10 +00:00
2008-02-04-ExtractSubvector.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2008-02-20-MatchingMem.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2008-02-25-NegateZero.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2008-02-26-NegatableCrash.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2008-08-07-PtrToInt-SmallerInt.ll don't have i386-specific tests in CodeGen/Generic, PR6601. 2010-03-14 18:51:18 +00:00
2009-03-17-LSR-APInt.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2009-03-29-SoftFloatVectorExtract.ll Delete useless trailing semicolons. 2010-01-05 17:55:26 +00:00
2009-04-10-SinkCrash.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2009-04-28-i128-cmp-crash.ll APInt'fy TargetLowering::SimplifySetCC to fix PR5963. 2010-01-07 20:58:44 +00:00
2009-06-03-UnreachableSplitPad.ll Update to the new EH scheme. 2011-08-25 23:48:37 +00:00
2009-11-16-BadKillsCrash.ll Update to the new EH scheme. 2011-08-25 23:48:37 +00:00
2010-07-27-DAGCombineCrash.ll Fix a crash in the dag combiner caused by ConstantFoldBIT_CONVERTofBUILD_VECTOR calling itself 2010-07-27 18:02:18 +00:00
2010-11-04-BigByval.ll PR11004: Inline memcpy to avoid generating nested call sequence. Un-XFAIL 2011-06-09-TailCallByVal and 2010-11-04-BigByval 2011-09-26 06:13:20 +00:00
2010-ZeroSizedArg.ll Remove arm_apcscc from the test files. It is the default and doing this 2010-06-17 15:18:27 +00:00
2011-01-06-BigNumberCrash.ll Add a testcase for PR8582, which mysteriously fixed itself, in case the problem 2011-01-06 23:04:29 +00:00
2011-07-07-ScheduleDAGCrash.ll XFAIL this test on arm until the backend is fixed. 2011-09-01 18:40:03 +00:00
APIntLoadStore.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
APIntParam.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
APIntSextParam.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
APIntZextParam.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
BasicInstrs.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
ConstantExprLowering.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
Makefile Remove obsolete -f flags. 2009-08-25 15:38:29 +00:00
add-with-overflow-24.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
add-with-overflow-128.ll Fixes PR8823: add-with-overflow-128.ll 2010-12-23 03:15:51 +00:00
add-with-overflow.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
addr-label.ll Fix PR6673: updating the callback should not clear the map. 2010-03-22 23:15:57 +00:00
asm-large-immediate.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
badCallArgLRLLVM.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
badFoldGEP.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
badarg6.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
bool-to-double.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
builtin-expect.ll Introduce "expect" intrinsic instructions. 2011-07-06 18:22:43 +00:00
call-ret0.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
call-ret42.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
call-void.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
call2-ret0.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
cast-fp.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
constindices.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
crash.ll Land the long talked about "type system rewrite" patch. This 2011-07-09 17:41:24 +00:00
dbg_value.ll Fix liveintervals handling of dbg_value instructions. 2010-03-16 21:51:27 +00:00
dg.exp sabre brings to my attention that the 'tr' suffix is also obsolete 2008-05-20 21:00:03 +00:00
div-neg-power-2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
edge-bundles-blockIDs.ll Rename the test. Thanks Cameron! Use shorter/generic names. 2011-06-16 00:34:10 +00:00
empty-load-store.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
exception-handling.ll LSR wants to split the landing pad's critical edge. Let it do it, but use the 2011-08-25 05:55:40 +00:00
externally_available.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
fastcall.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
fneg-fabs.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
fp-to-int-invalid.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
fp_to_int.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
fpowi-promote.ll make target independent. 2010-02-09 06:36:30 +00:00
fwdtwice.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
global-ret0.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
hello.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
i128-addsub.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
i128-arith.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
inline-asm-special-strings.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
intrinsics.ll Declare sin & cos as readonly so they match the code in SelectionDAGBuild 2009-11-03 02:19:31 +00:00
invalid-memcpy.ll rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is 2011-06-18 06:05:24 +00:00
isunord.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
llvm-ct-intrinsics.ll Manually upgrade the test suite to specify the flag to cttz and ctlz. 2011-12-12 11:59:10 +00:00
multiple-return-values-cross-block-with-invoke.ll Update to the new EH scheme. 2011-08-25 23:48:37 +00:00
negintconst.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
nested-select.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
overflow.ll add a general coverage test for overflow intrinsics. 2010-12-19 20:01:13 +00:00
pr2625.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
pr3288.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
print-add.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
print-arith-fp.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
print-arith-int.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
print-int.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
print-mul-exp.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
print-mul.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
print-shift.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
ret0.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
ret42.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
select-cc.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
select.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
shift-int64.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
stacksave-restore.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
storetrunc-fp.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
switch-lower-feature.ll merge two tests, make target independent. 2010-02-09 06:19:20 +00:00
switch-lower.ll Fix PR5421 by APInt'izing switch lowering. 2009-11-07 07:50:34 +00:00
trap.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
v-split.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
vector-casts.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
vector-constantexpr.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
vector-identity-shuffle.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
vector.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
zero-sized-array.ll Make codegen able to handle values of empty types. This is one way 2011-05-13 15:18:06 +00:00