Browse Source

Disable LLVM LIT suites and tests (#4827)

Disable LLVM LIT suites and tests

This patch is a little more selective than the clang counterpart. Most
of the LLVM tests are expected to pass in DXC.

In cases where very few tests are failing for obvious reasons I've
disabled individual tests using `REQUIRES` lines. In most places I've
disabled whole suites. Any suite that is expected to pass, I've also
included a comment of the failing test cases so that we can investigate
further.

IR Verifier and Integer tests are disabled only on Windows. These tests
pass on *nix platforms but fail on Windows due to the MS filesystem
modifications causing llvm-as to crash.
Chris B 2 năm trước cách đây
mục cha
commit
ea3c096960

+ 29 - 0
test/Analysis/lit.local.cfg

@@ -0,0 +1,29 @@
+config.unsupported = True # HLSL Change - Disable lit suites.
+
+# Failing Tests (26):
+#     LLVM :: Analysis/BasicAA/2008-04-15-Byval.ll
+#     LLVM :: Analysis/BasicAA/cs-cs.ll
+#     LLVM :: Analysis/BasicAA/intrinsics.ll
+#     LLVM :: Analysis/BasicAA/modref.ll
+#     LLVM :: Analysis/BasicAA/pr18573.ll
+#     LLVM :: Analysis/CallGraph/non-leaf-intrinsics.ll
+#     LLVM :: Analysis/Delinearization/multidim_two_accesses_different_delinearization.ll
+#     LLVM :: Analysis/DependenceAnalysis/Banerjee.ll
+#     LLVM :: Analysis/DependenceAnalysis/GCD.ll
+#     LLVM :: Analysis/DependenceAnalysis/NonCanonicalizedSubscript.ll
+#     LLVM :: Analysis/LazyCallGraph/non-leaf-intrinsics.ll
+#     LLVM :: Analysis/RegionInfo/multiple_exiting_edge.ll
+#     LLVM :: Analysis/ScalarEvolution/2007-07-15-NegativeStride.ll
+#     LLVM :: Analysis/ScalarEvolution/2007-09-27-LargeStepping.ll
+#     LLVM :: Analysis/ScalarEvolution/2008-05-25-NegativeStepToZero.ll
+#     LLVM :: Analysis/ScalarEvolution/2008-07-19-InfiniteLoop.ll
+#     LLVM :: Analysis/ScalarEvolution/2008-07-19-WrappingIV.ll
+#     LLVM :: Analysis/ScalarEvolution/2008-07-29-SGTTripCount.ll
+#     LLVM :: Analysis/ScalarEvolution/2008-07-29-SMinExpr.ll
+#     LLVM :: Analysis/ScalarEvolution/2008-08-04-IVOverflow.ll
+#     LLVM :: Analysis/ScalarEvolution/2008-08-04-LongAddRec.ll
+#     LLVM :: Analysis/ScalarEvolution/SolveQuadraticEquation.ll
+#     LLVM :: Analysis/ScalarEvolution/trip-count.ll
+#     LLVM :: Analysis/TypeBasedAliasAnalysis/argument-promotion.ll
+#     LLVM :: Analysis/ValueTracking/dom-cond.ll
+#     LLVM :: Analysis/ValueTracking/memory-dereferenceable.ll

+ 8 - 0
test/Assembler/lit.local.cfg

@@ -0,0 +1,8 @@
+config.unsupported = True # HLSL Change - Disable lit suites.
+
+# Failing Tests (5):
+#     LLVM :: Assembler/2007-09-29-GC.ll
+#     LLVM :: Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll
+#     LLVM :: Assembler/bcwrap.ll
+#     LLVM :: Assembler/half-constprop.ll
+#     LLVM :: Assembler/half-conv.ll

+ 6 - 0
test/Bitcode/lit.local.cfg

@@ -0,0 +1,6 @@
+config.unsupported = True # HLSL Change - Disable lit suites.
+
+# Failing Tests (3):
+#     LLVM :: Bitcode/highLevelStructure.3.2.ll
+#     LLVM :: Bitcode/invalid.test
+#     LLVM :: Bitcode/ptest-old.ll

+ 1 - 0
test/CodeGen/lit.local.cfg

@@ -0,0 +1 @@
+config.unsupported = True # HLSL Change - Disable lit suites.

+ 9 - 0
test/Feature/lit.local.cfg

@@ -0,0 +1,9 @@
+config.unsupported = True # HLSL Change - Disable lit suites.
+
+# Failing Tests (6):
+#     LLVM :: Feature/intrinsic-noduplicate.ll
+#     LLVM :: Feature/load_module.ll
+#     LLVM :: Feature/prefixdata.ll
+#     LLVM :: Feature/prologuedata.ll
+#     LLVM :: Feature/seh-nounwind.ll
+#     LLVM :: Feature/weak_constant.ll

+ 89 - 0
test/Instrumentation/lit.local.cfg

@@ -0,0 +1,89 @@
+config.unsupported = True # HLSL Change - Disable lit suites.
+
+# Failing Tests (86):
+#     LLVM :: Instrumentation/AddressSanitizer/adaptive_global_redzones.ll
+#     LLVM :: Instrumentation/AddressSanitizer/asan-vs-gvn.ll
+#     LLVM :: Instrumentation/AddressSanitizer/basic.ll
+#     LLVM :: Instrumentation/AddressSanitizer/debug_info.ll
+#     LLVM :: Instrumentation/AddressSanitizer/do-not-instrument-cstring.ll
+#     LLVM :: Instrumentation/AddressSanitizer/do-not-instrument-internal-globals.ll
+#     LLVM :: Instrumentation/AddressSanitizer/do-not-instrument-llvm-metadata-darwin.ll
+#     LLVM :: Instrumentation/AddressSanitizer/do-not-instrument-llvm-metadata.ll
+#     LLVM :: Instrumentation/AddressSanitizer/do-not-instrument-promotable-allocas.ll
+#     LLVM :: Instrumentation/AddressSanitizer/do-not-touch-comdat-global.ll
+#     LLVM :: Instrumentation/AddressSanitizer/do-not-touch-odr-global.ll
+#     LLVM :: Instrumentation/AddressSanitizer/do-not-touch-threadlocal.ll
+#     LLVM :: Instrumentation/AddressSanitizer/experiment-call.ll
+#     LLVM :: Instrumentation/AddressSanitizer/experiment.ll
+#     LLVM :: Instrumentation/AddressSanitizer/freebsd.ll
+#     LLVM :: Instrumentation/AddressSanitizer/global_metadata.ll
+#     LLVM :: Instrumentation/AddressSanitizer/instrument-dynamic-allocas.ll
+#     LLVM :: Instrumentation/AddressSanitizer/instrument-no-return.ll
+#     LLVM :: Instrumentation/AddressSanitizer/instrument-stack.ll
+#     LLVM :: Instrumentation/AddressSanitizer/instrument_global.ll
+#     LLVM :: Instrumentation/AddressSanitizer/instrument_initializer_metadata.ll
+#     LLVM :: Instrumentation/AddressSanitizer/instrument_load_then_store.ll
+#     LLVM :: Instrumentation/AddressSanitizer/instrumentation-with-call-threshold.ll
+#     LLVM :: Instrumentation/AddressSanitizer/lifetime-uar.ll
+#     LLVM :: Instrumentation/AddressSanitizer/lifetime.ll
+#     LLVM :: Instrumentation/AddressSanitizer/stack-poisoning.ll
+#     LLVM :: Instrumentation/AddressSanitizer/stack_dynamic_alloca.ll
+#     LLVM :: Instrumentation/AddressSanitizer/stack_layout.ll
+#     LLVM :: Instrumentation/AddressSanitizer/test64.ll
+#     LLVM :: Instrumentation/AddressSanitizer/ubsan.ll
+#     LLVM :: Instrumentation/BoundsChecking/many-trap.ll
+#     LLVM :: Instrumentation/BoundsChecking/phi.ll
+#     LLVM :: Instrumentation/BoundsChecking/simple-32.ll
+#     LLVM :: Instrumentation/BoundsChecking/simple.ll
+#     LLVM :: Instrumentation/DataFlowSanitizer/abilist.ll
+#     LLVM :: Instrumentation/DataFlowSanitizer/args-unreachable-bb.ll
+#     LLVM :: Instrumentation/DataFlowSanitizer/arith.ll
+#     LLVM :: Instrumentation/DataFlowSanitizer/call.ll
+#     LLVM :: Instrumentation/DataFlowSanitizer/debug-nonzero-labels.ll
+#     LLVM :: Instrumentation/DataFlowSanitizer/debug.ll
+#     LLVM :: Instrumentation/DataFlowSanitizer/load.ll
+#     LLVM :: Instrumentation/DataFlowSanitizer/memset.ll
+#     LLVM :: Instrumentation/DataFlowSanitizer/prefix-rename.ll
+#     LLVM :: Instrumentation/DataFlowSanitizer/store.ll
+#     LLVM :: Instrumentation/DataFlowSanitizer/union-large.ll
+#     LLVM :: Instrumentation/DataFlowSanitizer/union.ll
+#     LLVM :: Instrumentation/InstrProfiling/PR23499.ll
+#     LLVM :: Instrumentation/InstrProfiling/linkage.ll
+#     LLVM :: Instrumentation/InstrProfiling/no-counters.ll
+#     LLVM :: Instrumentation/InstrProfiling/noruntime.ll
+#     LLVM :: Instrumentation/InstrProfiling/platform.ll
+#     LLVM :: Instrumentation/InstrProfiling/profiling.ll
+#     LLVM :: Instrumentation/MemorySanitizer/X86/vararg.ll
+#     LLVM :: Instrumentation/MemorySanitizer/array_types.ll
+#     LLVM :: Instrumentation/MemorySanitizer/atomics.ll
+#     LLVM :: Instrumentation/MemorySanitizer/byval-alignment.ll
+#     LLVM :: Instrumentation/MemorySanitizer/check-constant-shadow.ll
+#     LLVM :: Instrumentation/MemorySanitizer/check_access_address.ll
+#     LLVM :: Instrumentation/MemorySanitizer/instrumentation-with-call-threshold.ll
+#     LLVM :: Instrumentation/MemorySanitizer/missing_origin.ll
+#     LLVM :: Instrumentation/MemorySanitizer/msan_basic.ll
+#     LLVM :: Instrumentation/MemorySanitizer/mul_by_constant.ll
+#     LLVM :: Instrumentation/MemorySanitizer/origin-alignment.ll
+#     LLVM :: Instrumentation/MemorySanitizer/return_from_main.ll
+#     LLVM :: Instrumentation/MemorySanitizer/store-long-origin.ll
+#     LLVM :: Instrumentation/MemorySanitizer/store-origin.ll
+#     LLVM :: Instrumentation/MemorySanitizer/unreachable.ll
+#     LLVM :: Instrumentation/MemorySanitizer/vector_arith.ll
+#     LLVM :: Instrumentation/MemorySanitizer/vector_cvt.ll
+#     LLVM :: Instrumentation/MemorySanitizer/vector_pack.ll
+#     LLVM :: Instrumentation/MemorySanitizer/vector_shift.ll
+#     LLVM :: Instrumentation/SanitizerCoverage/cmp-tracing.ll
+#     LLVM :: Instrumentation/SanitizerCoverage/coverage-dbg.ll
+#     LLVM :: Instrumentation/SanitizerCoverage/coverage.ll
+#     LLVM :: Instrumentation/SanitizerCoverage/coverage2-dbg.ll
+#     LLVM :: Instrumentation/SanitizerCoverage/tracing.ll
+#     LLVM :: Instrumentation/ThreadSanitizer/atomic.ll
+#     LLVM :: Instrumentation/ThreadSanitizer/capture.ll
+#     LLVM :: Instrumentation/ThreadSanitizer/no_sanitize_thread.ll
+#     LLVM :: Instrumentation/ThreadSanitizer/read_before_write.ll
+#     LLVM :: Instrumentation/ThreadSanitizer/read_from_global.ll
+#     LLVM :: Instrumentation/ThreadSanitizer/tsan-vs-gvn.ll
+#     LLVM :: Instrumentation/ThreadSanitizer/tsan_basic.ll
+#     LLVM :: Instrumentation/ThreadSanitizer/unaligned.ll
+#     LLVM :: Instrumentation/ThreadSanitizer/vptr_read.ll
+#     LLVM :: Instrumentation/ThreadSanitizer/vptr_update.ll

+ 3 - 0
test/Integer/2007-01-19-TruncSext.ll

@@ -4,6 +4,9 @@
 ; RUN: llvm-as < %s | lli --force-interpreter=true | FileCheck %s
 ; RUN: llvm-as < %s | lli --force-interpreter=true | FileCheck %s
 ; CHECK: -255
 ; CHECK: -255
 
 
+; HLSL Change: lli doesn't work in DXC
+; REQUIRES: hlsl-lli
+
 @ARRAY   = global [ 20 x i17 ] zeroinitializer
 @ARRAY   = global [ 20 x i17 ] zeroinitializer
 @FORMAT  = constant [ 4 x i8 ] c"%d\0A\00"
 @FORMAT  = constant [ 4 x i8 ] c"%d\0A\00"
 
 

+ 6 - 0
test/Integer/lit.local.cfg

@@ -0,0 +1,6 @@
+# HLSL Change
+# Disable verifier tests on Windows. These fail due to issues with the MS
+# filesystem code causing llvm-as to crash.
+import sys
+if sys.platform in ['win32']:
+  config.unsupported = True

+ 11 - 0
test/Linker/lit.local.cfg

@@ -0,0 +1,11 @@
+config.unsupported = True # HLSL Change - Disable lit suites.
+
+# Failing Tests (8):
+#     LLVM :: Linker/pr21374.ll
+#     LLVM :: Linker/subprogram-linkonce-weak-odr.ll
+#     LLVM :: Linker/subprogram-linkonce-weak.ll
+#     LLVM :: Linker/type-unique-odr-a.ll
+#     LLVM :: Linker/type-unique-simple-a.ll
+#     LLVM :: Linker/type-unique-simple2-a.ll
+#     LLVM :: Linker/type-unique-simple2.ll
+#     LLVM :: Linker/type-unique-type-array-a.ll

+ 1 - 0
test/MC/lit.local.cfg

@@ -0,0 +1 @@
+config.unsupported = True # HLSL Change - Disable lit suites.

+ 1 - 0
test/Object/lit.local.cfg

@@ -1 +1,2 @@
+config.unsupported = True # HLSL Change - Disable lit suites.
 config.suffixes = ['.test', '.ll', '.s', '.yaml']
 config.suffixes = ['.test', '.ll', '.s', '.yaml']

+ 11 - 0
test/Other/lit.local.cfg

@@ -0,0 +1,11 @@
+config.unsupported = True # HLSL Change - Disable lit suites.
+
+# Failing Tests (8):
+#     LLVM :: Other/2007-04-24-eliminate-mostly-empty-blocks.ll
+#     LLVM :: Other/2010-05-06-Printer.ll
+#     LLVM :: Other/ResponseFile.ll
+#     LLVM :: Other/can-execute.txt
+#     LLVM :: Other/llvm-nm-without-aliases.ll
+#     LLVM :: Other/opt-override-mcpu-mattr.ll
+#     LLVM :: Other/optimization-remarks-inline.ll
+#     LLVM :: Other/optimize-options.ll

+ 1 - 0
test/SymbolRewriter/lit.local.cfg

@@ -0,0 +1 @@
+config.unsupported = True # HLSL Change - Disable lit suites.

+ 362 - 0
test/Transforms/lit.local.cfg

@@ -0,0 +1,362 @@
+config.unsupported = True # HLSL Change - Disable lit suites.
+
+# Failing Tests (359):
+#     LLVM :: Transforms/ArgumentPromotion/2008-02-01-ReturnAttrs.ll
+#     LLVM :: Transforms/ArgumentPromotion/2008-07-02-array-indexing.ll
+#     LLVM :: Transforms/ArgumentPromotion/2008-09-07-CGUpdate.ll
+#     LLVM :: Transforms/ArgumentPromotion/2008-09-08-CGUpdateSelfEdge.ll
+#     LLVM :: Transforms/ArgumentPromotion/aggregate-promote.ll
+#     LLVM :: Transforms/ArgumentPromotion/attrs.ll
+#     LLVM :: Transforms/ArgumentPromotion/basictest.ll
+#     LLVM :: Transforms/ArgumentPromotion/byval-2.ll
+#     LLVM :: Transforms/ArgumentPromotion/byval.ll
+#     LLVM :: Transforms/ArgumentPromotion/callgraph-update.ll
+#     LLVM :: Transforms/ArgumentPromotion/chained.ll
+#     LLVM :: Transforms/ArgumentPromotion/control-flow.ll
+#     LLVM :: Transforms/ArgumentPromotion/control-flow2.ll
+#     LLVM :: Transforms/ArgumentPromotion/crash.ll
+#     LLVM :: Transforms/ArgumentPromotion/dbg.ll
+#     LLVM :: Transforms/ArgumentPromotion/fp80.ll
+#     LLVM :: Transforms/ArgumentPromotion/inalloca.ll
+#     LLVM :: Transforms/ArgumentPromotion/pr3085.ll
+#     LLVM :: Transforms/ArgumentPromotion/reserve-tbaa.ll
+#     LLVM :: Transforms/ArgumentPromotion/sret.ll
+#     LLVM :: Transforms/ArgumentPromotion/tail.ll
+#     LLVM :: Transforms/ArgumentPromotion/variadic.ll
+#     LLVM :: Transforms/BranchFolding/2007-10-19-InlineAsmDirectives.ll
+#     LLVM :: Transforms/CodeGenPrepare/2008-11-24-RAUW-Self.ll
+#     LLVM :: Transforms/CodeGenPrepare/basic.ll
+#     LLVM :: Transforms/CodeGenPrepare/overflow-intrinsics.ll
+#     LLVM :: Transforms/CodeGenPrepare/statepoint-relocate.ll
+#     LLVM :: Transforms/ConstProp/calls.ll
+#     LLVM :: Transforms/ConstProp/shift.ll
+#     LLVM :: Transforms/DeadStoreElimination/inst-limits.ll
+#     LLVM :: Transforms/Float2Int/toolarge.ll
+#     LLVM :: Transforms/FunctionAttrs/optnone-simple.ll
+#     LLVM :: Transforms/GCOVProfiling/function-numbering.ll
+#     LLVM :: Transforms/GCOVProfiling/global-ctor.ll
+#     LLVM :: Transforms/GCOVProfiling/linezero.ll
+#     LLVM :: Transforms/GCOVProfiling/linkagename.ll
+#     LLVM :: Transforms/GCOVProfiling/return-block.ll
+#     LLVM :: Transforms/GCOVProfiling/version.ll
+#     LLVM :: Transforms/GVN/2009-02-17-LoadPRECrash.ll
+#     LLVM :: Transforms/GVN/2009-06-17-InvalidPRE.ll
+#     LLVM :: Transforms/GVN/load-pre-align.ll
+#     LLVM :: Transforms/GVN/load-pre-nonlocal.ll
+#     LLVM :: Transforms/GVN/local-pre.ll
+#     LLVM :: Transforms/GVN/pr14166.ll
+#     LLVM :: Transforms/GVN/pr17732.ll
+#     LLVM :: Transforms/GVN/pre-basic-add.ll
+#     LLVM :: Transforms/GVN/pre-gep-load.ll
+#     LLVM :: Transforms/GVN/pre-load.ll
+#     LLVM :: Transforms/GVN/pre-single-pred.ll
+#     LLVM :: Transforms/GVN/readattrs.ll
+#     LLVM :: Transforms/GVN/rle-phi-translate.ll
+#     LLVM :: Transforms/GVN/rle.ll
+#     LLVM :: Transforms/GlobalDCE/complex-constantexpr.ll
+#     LLVM :: Transforms/GlobalDCE/global_ctors_integration.ll
+#     LLVM :: Transforms/IRCE/not-likely-taken.ll
+#     LLVM :: Transforms/IRCE/with-parent-loops.ll
+#     LLVM :: Transforms/IndVarSimplify/2008-09-02-IVType.ll
+#     LLVM :: Transforms/IndVarSimplify/2009-04-14-shorten_iv_vars.ll
+#     LLVM :: Transforms/IndVarSimplify/2009-04-15-shorten-iv-vars-2.ll
+#     LLVM :: Transforms/IndVarSimplify/2011-09-10-widen-nsw.ll
+#     LLVM :: Transforms/IndVarSimplify/2011-09-27-hoistsext.ll
+#     LLVM :: Transforms/IndVarSimplify/2011-10-27-lftrnull.ll
+#     LLVM :: Transforms/IndVarSimplify/2014-06-21-congruent-constant.ll
+#     LLVM :: Transforms/IndVarSimplify/ada-loops.ll
+#     LLVM :: Transforms/IndVarSimplify/ashr-tripcount.ll
+#     LLVM :: Transforms/IndVarSimplify/elim-extend.ll
+#     LLVM :: Transforms/IndVarSimplify/iv-sext.ll
+#     LLVM :: Transforms/IndVarSimplify/iv-widen.ll
+#     LLVM :: Transforms/IndVarSimplify/lcssa-preservation.ll
+#     LLVM :: Transforms/IndVarSimplify/lftr-extend-const.ll
+#     LLVM :: Transforms/IndVarSimplify/lftr-reuse.ll
+#     LLVM :: Transforms/IndVarSimplify/no-iv-rewrite.ll
+#     LLVM :: Transforms/IndVarSimplify/overflowcheck.ll
+#     LLVM :: Transforms/IndVarSimplify/pr20680.ll
+#     LLVM :: Transforms/IndVarSimplify/preserve-signed-wrap.ll
+#     LLVM :: Transforms/IndVarSimplify/promote-iv-to-eliminate-casts.ll
+#     LLVM :: Transforms/IndVarSimplify/signed-trip-count.ll
+#     LLVM :: Transforms/IndVarSimplify/verify-scev.ll
+#     LLVM :: Transforms/IndVarSimplify/widen-loop-comp.ll
+#     LLVM :: Transforms/IndVarSimplify/widen-nsw.ll
+#     LLVM :: Transforms/Inline/2009-01-13-RecursiveInlineCrash.ll
+#     LLVM :: Transforms/Inline/align.ll
+#     LLVM :: Transforms/Inline/alloca-bonus.ll
+#     LLVM :: Transforms/Inline/alloca-merge-align.ll
+#     LLVM :: Transforms/Inline/always-inline.ll
+#     LLVM :: Transforms/Inline/array_merge.ll
+#     LLVM :: Transforms/Inline/callgraph-update.ll
+#     LLVM :: Transforms/Inline/crash.ll
+#     LLVM :: Transforms/Inline/crash2.ll
+#     LLVM :: Transforms/Inline/debug-invoke.ll
+#     LLVM :: Transforms/Inline/devirtualize.ll
+#     LLVM :: Transforms/Inline/ephemeral.ll
+#     LLVM :: Transforms/Inline/gvn-inline-iteration.ll
+#     LLVM :: Transforms/Inline/ignore-debug-info.ll
+#     LLVM :: Transforms/Inline/inline-byval-bonus.ll
+#     LLVM :: Transforms/Inline/inline-cold.ll
+#     LLVM :: Transforms/Inline/inline-fast-math-flags.ll
+#     LLVM :: Transforms/Inline/inline-optsize.ll
+#     LLVM :: Transforms/Inline/inline_constprop.ll
+#     LLVM :: Transforms/Inline/inline_minisize.ll
+#     LLVM :: Transforms/Inline/invoke-cost.ll
+#     LLVM :: Transforms/Inline/noalias-calls.ll
+#     LLVM :: Transforms/Inline/noalias-cs.ll
+#     LLVM :: Transforms/Inline/noalias.ll
+#     LLVM :: Transforms/Inline/noalias2.ll
+#     LLVM :: Transforms/Inline/null-function.ll
+#     LLVM :: Transforms/Inline/optimization-remarks.ll
+#     LLVM :: Transforms/Inline/ptr-diff.ll
+#     LLVM :: Transforms/Inline/store-sroa.ll
+#     LLVM :: Transforms/Inline/switch.ll
+#     LLVM :: Transforms/Inline/vector-bonus.ll
+#     LLVM :: Transforms/InstCombine/2007-10-10-EliminateMemCpy.ll
+#     LLVM :: Transforms/InstCombine/2012-04-23-Neon-Intrinsics.ll
+#     LLVM :: Transforms/InstCombine/align-addr.ll
+#     LLVM :: Transforms/InstCombine/aligned-altivec.ll
+#     LLVM :: Transforms/InstCombine/aligned-qpx.ll
+#     LLVM :: Transforms/InstCombine/alloca.ll
+#     LLVM :: Transforms/InstCombine/bitcast-alias-function.ll
+#     LLVM :: Transforms/InstCombine/blend_x86.ll
+#     LLVM :: Transforms/InstCombine/constant-fold-address-space-pointer.ll
+#     LLVM :: Transforms/InstCombine/cos-1.ll
+#     LLVM :: Transforms/InstCombine/dom-conditions.ll
+#     LLVM :: Transforms/InstCombine/gc.relocate.ll
+#     LLVM :: Transforms/InstCombine/getelementptr.ll
+#     LLVM :: Transforms/InstCombine/icmp.ll
+#     LLVM :: Transforms/InstCombine/load-bitcast32.ll
+#     LLVM :: Transforms/InstCombine/load-bitcast64.ll
+#     LLVM :: Transforms/InstCombine/load.ll
+#     LLVM :: Transforms/InstCombine/loadstore-alignment.ll
+#     LLVM :: Transforms/InstCombine/loadstore-metadata.ll
+#     LLVM :: Transforms/InstCombine/memcpy-from-global.ll
+#     LLVM :: Transforms/InstCombine/neon-intrinsics.ll
+#     LLVM :: Transforms/InstCombine/phi.ll
+#     LLVM :: Transforms/InstCombine/r600-intrinsics.ll
+#     LLVM :: Transforms/InstCombine/statepoint.ll
+#     LLVM :: Transforms/InstCombine/struct-assign-tbaa.ll
+#     LLVM :: Transforms/InstCombine/unpack-fca.ll
+#     LLVM :: Transforms/InstCombine/vec_demanded_elts.ll
+#     LLVM :: Transforms/InstCombine/vsx-unaligned.ll
+#     LLVM :: Transforms/InstCombine/win-math.ll
+#     LLVM :: Transforms/InstCombine/x86-crc32-demanded.ll
+#     LLVM :: Transforms/InstCombine/x86-insertps.ll
+#     LLVM :: Transforms/InstCombine/x86-vperm2.ll
+#     LLVM :: Transforms/InstMerge/st_sink_bugfix_22613.ll
+#     LLVM :: Transforms/JumpThreading/no-irreducible-loops.ll
+#     LLVM :: Transforms/LCSSA/2006-10-31-UnreachableBlock-2.ll
+#     LLVM :: Transforms/LCSSA/indirectbr.ll
+#     LLVM :: Transforms/LCSSA/unreachable-use.ll
+#     LLVM :: Transforms/LICM/2003-12-11-SinkingToPHI.ll
+#     LLVM :: Transforms/LICM/Preserve-LCSSA.ll
+#     LLVM :: Transforms/LoopDeletion/2007-07-23-InfiniteLoop.ll
+#     LLVM :: Transforms/LoopDistribute/basic-with-memchecks.ll
+#     LLVM :: Transforms/LoopDistribute/basic.ll
+#     LLVM :: Transforms/LoopDistribute/crash-in-memcheck-generation.ll
+#     LLVM :: Transforms/LoopDistribute/no-if-convert.ll
+#     LLVM :: Transforms/LoopDistribute/outside-use.ll
+#     LLVM :: Transforms/LoopDistribute/program-order.ll
+#     LLVM :: Transforms/LoopInterchange/interchange.ll
+#     LLVM :: Transforms/LoopInterchange/profitability.ll
+#     LLVM :: Transforms/LoopRotate/2009-01-25-SingleEntryPhi.ll
+#     LLVM :: Transforms/LoopRotate/PhiRename-1.ll
+#     LLVM :: Transforms/LoopRotate/PhiSelfReference-1.ll
+#     LLVM :: Transforms/LoopRotate/crash.ll
+#     LLVM :: Transforms/LoopRotate/indirectbr.ll
+#     LLVM :: Transforms/LoopRotate/multiple-exits.ll
+#     LLVM :: Transforms/LoopRotate/nosimplifylatch.ll
+#     LLVM :: Transforms/LoopRotate/pr2639.ll
+#     LLVM :: Transforms/LoopRotate/preserve-loop-simplify.ll
+#     LLVM :: Transforms/LoopRotate/preserve-scev.ll
+#     LLVM :: Transforms/LoopRotate/simplifylatch.ll
+#     LLVM :: Transforms/LoopSimplify/2004-04-13-LoopSimplifyUpdateDomFrontier.ll
+#     LLVM :: Transforms/LoopSimplify/2010-07-15-IncorrectDomFrontierUpdate.ll
+#     LLVM :: Transforms/LoopSimplify/indirectbr.ll
+#     LLVM :: Transforms/LoopSimplify/merge-exits.ll
+#     LLVM :: Transforms/LoopSimplify/phi-node-simplify.ll
+#     LLVM :: Transforms/LoopSimplify/preserve-scev.ll
+#     LLVM :: Transforms/LoopSimplify/unreachable-loop-pred.ll
+#     LLVM :: Transforms/LoopUnroll/2007-05-09-UnknownTripCount.ll
+#     LLVM :: Transforms/LoopUnroll/2011-08-08-PhiUpdate.ll
+#     LLVM :: Transforms/LoopUnroll/2011-08-09-IVSimplify.ll
+#     LLVM :: Transforms/LoopUnroll/2011-08-09-PhiUpdate.ll
+#     LLVM :: Transforms/LoopUnroll/2011-10-01-NoopTrunc.ll
+#     LLVM :: Transforms/LoopUnroll/ephemeral.ll
+#     LLVM :: Transforms/LoopUnroll/full-unroll-bad-geps.ll
+#     LLVM :: Transforms/LoopUnroll/full-unroll-heuristics.ll
+#     LLVM :: Transforms/LoopUnroll/high-cost-trip-count-computation.ll
+#     LLVM :: Transforms/LoopUnroll/loop-remarks.ll
+#     LLVM :: Transforms/LoopUnroll/partial-unroll-optsize.ll
+#     LLVM :: Transforms/LoopUnroll/pr14167.ll
+#     LLVM :: Transforms/LoopUnroll/runtime-loop.ll
+#     LLVM :: Transforms/LoopUnroll/runtime-loop1.ll
+#     LLVM :: Transforms/LoopUnroll/runtime-loop2.ll
+#     LLVM :: Transforms/LoopUnroll/runtime-loop4.ll
+#     LLVM :: Transforms/LoopUnroll/runtime-loop5.ll
+#     LLVM :: Transforms/LoopUnroll/scevunroll.ll
+#     LLVM :: Transforms/LoopUnroll/shifted-tripcount.ll
+#     LLVM :: Transforms/LoopUnroll/tripcount-overflow.ll
+#     LLVM :: Transforms/LoopUnroll/unloop.ll
+#     LLVM :: Transforms/LoopUnroll/unroll-cleanup.ll
+#     LLVM :: Transforms/LoopUnroll/unroll-pragmas.ll
+#     LLVM :: Transforms/LoopUnswitch/2012-04-02-IndirectBr.ll
+#     LLVM :: Transforms/LoopUnswitch/basictest.ll
+#     LLVM :: Transforms/LoopUnswitch/preserve-analyses.ll
+#     LLVM :: Transforms/LoopVectorize/12-12-11-if-conv.ll
+#     LLVM :: Transforms/LoopVectorize/2012-10-20-infloop.ll
+#     LLVM :: Transforms/LoopVectorize/2012-10-22-isconsec.ll
+#     LLVM :: Transforms/LoopVectorize/align.ll
+#     LLVM :: Transforms/LoopVectorize/bsd_regex.ll
+#     LLVM :: Transforms/LoopVectorize/bzip_reverse_loops.ll
+#     LLVM :: Transforms/LoopVectorize/calloc.ll
+#     LLVM :: Transforms/LoopVectorize/cast-induction.ll
+#     LLVM :: Transforms/LoopVectorize/conditional-assignment.ll
+#     LLVM :: Transforms/LoopVectorize/control-flow.ll
+#     LLVM :: Transforms/LoopVectorize/cpp-new-array.ll
+#     LLVM :: Transforms/LoopVectorize/dbg.value.ll
+#     LLVM :: Transforms/LoopVectorize/debugloc.ll
+#     LLVM :: Transforms/LoopVectorize/duplicated-metadata.ll
+#     LLVM :: Transforms/LoopVectorize/ee-crash.ll
+#     LLVM :: Transforms/LoopVectorize/exact.ll
+#     LLVM :: Transforms/LoopVectorize/flags.ll
+#     LLVM :: Transforms/LoopVectorize/float-reduction.ll
+#     LLVM :: Transforms/LoopVectorize/funcall.ll
+#     LLVM :: Transforms/LoopVectorize/gcc-examples.ll
+#     LLVM :: Transforms/LoopVectorize/global_alias.ll
+#     LLVM :: Transforms/LoopVectorize/hoist-loads.ll
+#     LLVM :: Transforms/LoopVectorize/i8-induction.ll
+#     LLVM :: Transforms/LoopVectorize/if-conv-crash.ll
+#     LLVM :: Transforms/LoopVectorize/if-conversion-edgemasks.ll
+#     LLVM :: Transforms/LoopVectorize/if-conversion-nest.ll
+#     LLVM :: Transforms/LoopVectorize/if-conversion-reduction.ll
+#     LLVM :: Transforms/LoopVectorize/if-conversion.ll
+#     LLVM :: Transforms/LoopVectorize/if-pred-stores.ll
+#     LLVM :: Transforms/LoopVectorize/incorrect-dom-info.ll
+#     LLVM :: Transforms/LoopVectorize/increment.ll
+#     LLVM :: Transforms/LoopVectorize/induction.ll
+#     LLVM :: Transforms/LoopVectorize/induction_plus.ll
+#     LLVM :: Transforms/LoopVectorize/infiniteloop.ll
+#     LLVM :: Transforms/LoopVectorize/interleaved-accesses.ll
+#     LLVM :: Transforms/LoopVectorize/intrinsic.ll
+#     LLVM :: Transforms/LoopVectorize/lcssa-crash.ll
+#     LLVM :: Transforms/LoopVectorize/lifetime.ll
+#     LLVM :: Transforms/LoopVectorize/loop-form.ll
+#     LLVM :: Transforms/LoopVectorize/memdep.ll
+#     LLVM :: Transforms/LoopVectorize/metadata-unroll.ll
+#     LLVM :: Transforms/LoopVectorize/metadata-width.ll
+#     LLVM :: Transforms/LoopVectorize/metadata.ll
+#     LLVM :: Transforms/LoopVectorize/minmax_reduction.ll
+#     LLVM :: Transforms/LoopVectorize/multi-use-reduction-bug.ll
+#     LLVM :: Transforms/LoopVectorize/multiple-address-spaces.ll
+#     LLVM :: Transforms/LoopVectorize/no_array_bounds.ll
+#     LLVM :: Transforms/LoopVectorize/no_idiv_reduction.ll
+#     LLVM :: Transforms/LoopVectorize/no_int_induction.ll
+#     LLVM :: Transforms/LoopVectorize/no_outside_user.ll
+#     LLVM :: Transforms/LoopVectorize/no_switch.ll
+#     LLVM :: Transforms/LoopVectorize/nofloat.ll
+#     LLVM :: Transforms/LoopVectorize/non-const-n.ll
+#     LLVM :: Transforms/LoopVectorize/nsw-crash.ll
+#     LLVM :: Transforms/LoopVectorize/opt.ll
+#     LLVM :: Transforms/LoopVectorize/phi-hang.ll
+#     LLVM :: Transforms/LoopVectorize/ptr_loops.ll
+#     LLVM :: Transforms/LoopVectorize/read-only.ll
+#     LLVM :: Transforms/LoopVectorize/reduction.ll
+#     LLVM :: Transforms/LoopVectorize/reverse_induction.ll
+#     LLVM :: Transforms/LoopVectorize/reverse_iter.ll
+#     LLVM :: Transforms/LoopVectorize/runtime-check-address-space.ll
+#     LLVM :: Transforms/LoopVectorize/runtime-check-readonly-address-space.ll
+#     LLVM :: Transforms/LoopVectorize/runtime-check-readonly.ll
+#     LLVM :: Transforms/LoopVectorize/runtime-check.ll
+#     LLVM :: Transforms/LoopVectorize/runtime-limit.ll
+#     LLVM :: Transforms/LoopVectorize/safegep.ll
+#     LLVM :: Transforms/LoopVectorize/same-base-access.ll
+#     LLVM :: Transforms/LoopVectorize/scalar-select.ll
+#     LLVM :: Transforms/LoopVectorize/scev-exitlim-crash.ll
+#     LLVM :: Transforms/LoopVectorize/simple-unroll.ll
+#     LLVM :: Transforms/LoopVectorize/small-loop.ll
+#     LLVM :: Transforms/LoopVectorize/start-non-zero.ll
+#     LLVM :: Transforms/LoopVectorize/store-shuffle-bug.ll
+#     LLVM :: Transforms/LoopVectorize/struct_access.ll
+#     LLVM :: Transforms/LoopVectorize/tbaa-nodep.ll
+#     LLVM :: Transforms/LoopVectorize/undef-inst-bug.ll
+#     LLVM :: Transforms/LoopVectorize/unroll.ll
+#     LLVM :: Transforms/LoopVectorize/unroll_novec.ll
+#     LLVM :: Transforms/LoopVectorize/unsized-pointee-crash.ll
+#     LLVM :: Transforms/LoopVectorize/value-ptr-bug.ll
+#     LLVM :: Transforms/LoopVectorize/vectorize-once.ll
+#     LLVM :: Transforms/LoopVectorize/version-mem-access.ll
+#     LLVM :: Transforms/LoopVectorize/write-only.ll
+#     LLVM :: Transforms/LoopVectorize/zero-sized-pointee-crash.ll
+#     LLVM :: Transforms/LowerBitSets/simple.ll
+#     LLVM :: Transforms/Mem2Reg/2007-08-27-VolatileLoadsStores.ll
+#     LLVM :: Transforms/PhaseOrdering/2010-03-22-empty-baseclass.ll
+#     LLVM :: Transforms/PhaseOrdering/basic.ll
+#     LLVM :: Transforms/PhaseOrdering/gdce.ll
+#     LLVM :: Transforms/PhaseOrdering/scev.ll
+#     LLVM :: Transforms/SROA/basictest.ll
+#     LLVM :: Transforms/SROA/big-endian.ll
+#     LLVM :: Transforms/SROA/fca.ll
+#     LLVM :: Transforms/SROA/vector-promotion.ll
+#     LLVM :: Transforms/SafeStack/addr-taken.ll
+#     LLVM :: Transforms/SafeStack/array-aligned.ll
+#     LLVM :: Transforms/SafeStack/array.ll
+#     LLVM :: Transforms/SafeStack/call.ll
+#     LLVM :: Transforms/SafeStack/cast.ll
+#     LLVM :: Transforms/SafeStack/constant-gep-call.ll
+#     LLVM :: Transforms/SafeStack/constant-gep.ll
+#     LLVM :: Transforms/SafeStack/constant-geps.ll
+#     LLVM :: Transforms/SafeStack/dynamic-alloca.ll
+#     LLVM :: Transforms/SafeStack/escape-addr-pointer.ll
+#     LLVM :: Transforms/SafeStack/escape-bitcast-store.ll
+#     LLVM :: Transforms/SafeStack/escape-bitcast-store2.ll
+#     LLVM :: Transforms/SafeStack/escape-call.ll
+#     LLVM :: Transforms/SafeStack/escape-casted-pointer.ll
+#     LLVM :: Transforms/SafeStack/escape-gep-call.ll
+#     LLVM :: Transforms/SafeStack/escape-gep-invoke.ll
+#     LLVM :: Transforms/SafeStack/escape-gep-negative.ll
+#     LLVM :: Transforms/SafeStack/escape-gep-ptrtoint.ll
+#     LLVM :: Transforms/SafeStack/escape-gep-store.ll
+#     LLVM :: Transforms/SafeStack/escape-phi-call.ll
+#     LLVM :: Transforms/SafeStack/escape-select-call.ll
+#     LLVM :: Transforms/SafeStack/escape-vector.ll
+#     LLVM :: Transforms/SafeStack/invoke.ll
+#     LLVM :: Transforms/SafeStack/no-attr.ll
+#     LLVM :: Transforms/SafeStack/phi-cycle.ll
+#     LLVM :: Transforms/SafeStack/setjmp.ll
+#     LLVM :: Transforms/SafeStack/setjmp2.ll
+#     LLVM :: Transforms/SafeStack/struct.ll
+#     LLVM :: Transforms/SampleProfile/branch.ll
+#     LLVM :: Transforms/SampleProfile/calls.ll
+#     LLVM :: Transforms/SampleProfile/discriminator.ll
+#     LLVM :: Transforms/SampleProfile/entry_counts.ll
+#     LLVM :: Transforms/SampleProfile/fnptr.ll
+#     LLVM :: Transforms/SampleProfile/propagate.ll
+#     LLVM :: Transforms/SampleProfile/syntax.ll
+#     LLVM :: Transforms/Scalarizer/basic.ll
+#     LLVM :: Transforms/Scalarizer/dbginfo.ll
+#     LLVM :: Transforms/SimplifyCFG/2008-07-13-InfLoopMiscompile.ll
+#     LLVM :: Transforms/SimplifyCFG/2008-12-16-DCECond.ll
+#     LLVM :: Transforms/SimplifyCFG/BrUnwind.ll
+#     LLVM :: Transforms/SimplifyCFG/DeadSetCC.ll
+#     LLVM :: Transforms/SimplifyCFG/EqualPHIEdgeBlockMerge.ll
+#     LLVM :: Transforms/SimplifyCFG/HoistCode.ll
+#     LLVM :: Transforms/SimplifyCFG/MagicPointer.ll
+#     LLVM :: Transforms/SimplifyCFG/PhiEliminate3.ll
+#     LLVM :: Transforms/SimplifyCFG/SpeculativeExec.ll
+#     LLVM :: Transforms/SimplifyCFG/UncondBranchToReturn.ll
+#     LLVM :: Transforms/SimplifyCFG/branch-fold-threshold.ll
+#     LLVM :: Transforms/SimplifyCFG/branch-phi-thread.ll
+#     LLVM :: Transforms/SimplifyCFG/hoist-common-code.ll
+#     LLVM :: Transforms/SimplifyCFG/hoist-with-range.ll
+#     LLVM :: Transforms/SimplifyCFG/preserve-branchweights-switch-create.ll
+#     LLVM :: Transforms/SimplifyCFG/preserve-branchweights.ll
+#     LLVM :: Transforms/SimplifyCFG/speculate-math.ll
+#     LLVM :: Transforms/SimplifyCFG/statepoint-invoke-unwind.ll
+#     LLVM :: Transforms/SimplifyCFG/switch_create.ll
+#     LLVM :: Transforms/SimplifyCFG/switch_switch_fold.ll
+#     LLVM :: Transforms/StructurizeCFG/branch-on-argument.ll
+#     LLVM :: Transforms/StructurizeCFG/nested-loop-order.ll
+#     LLVM :: Transforms/StructurizeCFG/one-loop-multiple-backedges.ll
+#     LLVM :: Transforms/StructurizeCFG/post-order-traversal-bug.ll

+ 2 - 0
test/Verifier/invalid-patchable-statepoint.ll

@@ -1,5 +1,7 @@
 ; RUN: not opt -verify 2>&1 < %s | FileCheck %s
 ; RUN: not opt -verify 2>&1 < %s | FileCheck %s
 
 
+; REQUIRES: hlsl-gc.statepoint-unsupported
+
 ; CHECK: gc.statepoint must have null as call target if number of patchable bytes is non zero
 ; CHECK: gc.statepoint must have null as call target if number of patchable bytes is non zero
 
 
 define i1 @invalid_patchable_statepoint() gc "statepoint-example" {
 define i1 @invalid_patchable_statepoint() gc "statepoint-example" {

+ 6 - 0
test/Verifier/lit.local.cfg

@@ -0,0 +1,6 @@
+# HLSL Change
+# Disable verifier tests on Windows. These fail due to issues with the MS
+# filesystem code causing llvm-as to crash.
+import sys
+if sys.platform in ['win32']:
+  config.unsupported = True

+ 1 - 0
test/Verifier/statepoint.ll

@@ -1,4 +1,5 @@
 ; RUN: opt -S %s -verify | FileCheck %s
 ; RUN: opt -S %s -verify | FileCheck %s
+; REQUIRES: hlsl-gc.statepoint-unsupported
 
 
 declare void @use(...)
 declare void @use(...)
 declare i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(i32, i32, i32)
 declare i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(i32, i32, i32)

+ 1 - 0
test/tools/dsymutil/lit.local.cfg

@@ -0,0 +1 @@
+config.unsupported = True # HLSL Change - Disable lit suites.

+ 1 - 0
test/tools/llvm-cov/lit.local.cfg

@@ -1 +1,2 @@
+config.unsupported = True # HLSL Change - Disable lit suites.
 config.suffixes = ['.test', '.m', '.cpp', '.c']
 config.suffixes = ['.test', '.m', '.cpp', '.c']

+ 1 - 0
test/tools/llvm-cxxdump/lit.local.cfg

@@ -0,0 +1 @@
+config.unsupported = True # HLSL Change - Disable lit suites.

+ 1 - 0
test/tools/llvm-mc/lit.local.cfg

@@ -0,0 +1 @@
+config.unsupported = True # HLSL Change - Disable lit suites.

+ 1 - 0
test/tools/llvm-objdump/lit.local.cfg

@@ -0,0 +1 @@
+config.unsupported = True # HLSL Change - Disable lit suites.

+ 1 - 0
test/tools/llvm-profdata/lit.local.cfg

@@ -1 +1,2 @@
+config.unsupported = True # HLSL Change - Disable lit suites.
 config.suffixes.add('.proftext')
 config.suffixes.add('.proftext')

+ 1 - 0
test/tools/llvm-symbolizer/lit.local.cfg

@@ -0,0 +1 @@
+config.unsupported = True # HLSL Change - Disable lit suites.

+ 1 - 1
test/tools/llvm-symbolizer/pdb/lit.local.cfg

@@ -1 +1 @@
-config.unsupported = not config.have_dia_sdk
+config.unsupported = True # HLSL Change - Disable lit suites.

+ 1 - 0
test/tools/lto/lit.local.cfg

@@ -1,2 +1,3 @@
+config.unsupported = True # HLSL Change - Disable lit suites.
 if not 'ld64_plugin' in config.available_features:
 if not 'ld64_plugin' in config.available_features:
    config.unsupported = True
    config.unsupported = True