Browse Source

Revert "Set validator version match dxil version by default. (#2589)"

This reverts commit d1a6309854f8e2268159e1d943538ae163a25677.
Tex Riddell 5 years ago
parent
commit
fd2613f04f
30 changed files with 67 additions and 74 deletions
  1. 1 12
      tools/clang/lib/CodeGen/CGHLSLMS.cpp
  2. 1 1
      tools/clang/test/HLSLFileCheck/d3dreflect/anon_struct.hlsl
  3. 1 1
      tools/clang/test/HLSLFileCheck/d3dreflect/cb_sizes.hlsl
  4. 1 1
      tools/clang/test/HLSLFileCheck/d3dreflect/cbuf-usage-lib.hlsl
  5. 1 1
      tools/clang/test/HLSLFileCheck/d3dreflect/empty_struct2.hlsl
  6. 1 1
      tools/clang/test/HLSLFileCheck/d3dreflect/lib_global.hlsl
  7. 1 1
      tools/clang/test/HLSLFileCheck/d3dreflect/reflect-lib-1.hlsl
  8. 1 1
      tools/clang/test/HLSLFileCheck/d3dreflect/structured_buffer_layout.hlsl
  9. 1 1
      tools/clang/test/HLSLFileCheck/hlsl/compile_options/Qstrip_reflect/Qstrip_reflect.hlsl
  10. 1 1
      tools/clang/test/HLSLFileCheck/hlsl/compile_options/Qstrip_reflect/Qstrip_reflect_struct_buf.hlsl
  11. 1 1
      tools/clang/test/HLSLFileCheck/hlsl/objects/Buffer/multiUAVLoad2.hlsl
  12. 1 1
      tools/clang/test/HLSLFileCheck/hlsl/objects/Buffer/multiUAVLoad4.hlsl
  13. 1 1
      tools/clang/test/HLSLFileCheck/hlsl/objects/Buffer/multiUAVLoad5.hlsl
  14. 1 1
      tools/clang/test/HLSLFileCheck/hlsl/objects/Buffer/multiUAVLoad7.hlsl
  15. 1 1
      tools/clang/test/HLSLFileCheck/hlsl/objects/Cbuffer/uint64_2.hlsl
  16. 1 1
      tools/clang/test/HLSLFileCheck/hlsl/semantics/sv_depth/output1.hlsl
  17. 1 1
      tools/clang/test/HLSLFileCheck/hlsl/semantics/sv_isfrontface/input1.hlsl
  18. 1 1
      tools/clang/test/HLSLFileCheck/hlsl/semantics/sv_isfrontface/input2.hlsl
  19. 1 1
      tools/clang/test/HLSLFileCheck/hlsl/semantics/sv_isfrontface/isfrontface.hlsl
  20. 1 1
      tools/clang/test/HLSLFileCheck/hlsl/semantics/sv_isfrontface/isfrontface2.hlsl
  21. 1 1
      tools/clang/test/HLSLFileCheck/hlsl/signature/sig-bool-as-uint.hlsl
  22. 1 1
      tools/clang/test/HLSLFileCheck/hlsl/types/modifiers/static/static_const_global.hlsl
  23. 9 3
      tools/clang/tools/dxcompiler/dxcompilerobj.cpp
  24. 1 1
      tools/clang/unittests/HLSL/CompilerTest.cpp
  25. 26 24
      tools/clang/unittests/HLSL/DxilContainerTest.cpp
  26. 3 5
      tools/clang/unittests/HLSL/DxilModuleTest.cpp
  27. 0 2
      tools/clang/unittests/HLSL/FileCheckerTest.cpp
  28. 2 2
      tools/clang/unittests/HLSL/OptimizerTest.cpp
  29. 2 2
      tools/clang/unittests/HLSL/SystemValueTest.cpp
  30. 2 2
      tools/clang/unittests/HLSL/ValidationTest.cpp

+ 1 - 12
tools/clang/lib/CodeGen/CGHLSLMS.cpp

@@ -422,18 +422,7 @@ CGMSHLSLRuntime::CGMSHLSLRuntime(CodeGenModule &CGM)
 
   m_pHLModule->SetAutoBindingSpace(CGM.getCodeGenOpts().HLSLDefaultSpace);
 
-  unsigned ValMajor = CGM.getCodeGenOpts().HLSLValidatorMajorVer;
-  if (ValMajor == UINT_MAX) {
-    // Use dxil version as validator version when no user-specified validator
-    // version.
-    unsigned DxilMajor = 1;
-    unsigned DxilMinor = 0;
-    SM->GetDxilVersion(DxilMajor, DxilMinor);
-    m_pHLModule->SetValidatorVersion(DxilMajor, DxilMinor);
-  } else {
-    unsigned ValMinor = CGM.getCodeGenOpts().HLSLValidatorMinorVer;
-    m_pHLModule->SetValidatorVersion(ValMajor, ValMinor);
-  }
+  m_pHLModule->SetValidatorVersion(CGM.getCodeGenOpts().HLSLValidatorMajorVer, CGM.getCodeGenOpts().HLSLValidatorMinorVer);
 
   m_bDebugInfo = CGM.getCodeGenOpts().getDebugInfo() == CodeGenOptions::FullDebugInfo;
 

+ 1 - 1
tools/clang/test/HLSLFileCheck/d3dreflect/anon_struct.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -T ps_6_0 -E main %s  -validator-version 1.5  | %D3DReflect %s | FileCheck %s
+// RUN: %dxc -T ps_6_0 -E main %s | %D3DReflect %s | FileCheck %s
 
 struct {
     int X;

+ 1 - 1
tools/clang/test/HLSLFileCheck/d3dreflect/cb_sizes.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.5 | %dxc -E main -T vs_6_0 -validator-version 1.5 %s | %D3DReflect %s | FileCheck %s
+// RUN: %dxilver 1.5 | %dxc -E main -T vs_6_0 %s | %D3DReflect %s | FileCheck %s
 
 // Verify CB variable sizes align with expectations.
 // This also tests some matrix, struct, and array cases that may

+ 1 - 1
tools/clang/test/HLSLFileCheck/d3dreflect/cbuf-usage-lib.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.5 | %dxc -auto-binding-space 13 -T lib_6_3 -validator-version 1.5 %s | %D3DReflect %s | FileCheck %s
+// RUN: %dxilver 1.5 | %dxc -auto-binding-space 13 -T lib_6_3 %s | %D3DReflect %s | FileCheck %s
 
 // Make sure usage flag is set properly for cbuffers used in libraries
 

+ 1 - 1
tools/clang/test/HLSLFileCheck/d3dreflect/empty_struct2.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.5 | %dxc -E main -T vs_6_0 -validator-version 1.5 %s | %D3DReflect %s | FileCheck %s
+// RUN: %dxilver 1.5 | %dxc -E main -T vs_6_0 %s | %D3DReflect %s | FileCheck %s
 
 // Make sure nest empty struct works.
 

+ 1 - 1
tools/clang/test/HLSLFileCheck/d3dreflect/lib_global.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.5 | %dxc -T lib_6_3 -enable-16bit-types -validator-version 1.5 %s | %D3DReflect %s | FileCheck %s
+// RUN: %dxilver 1.5 | %dxc -T lib_6_3 -enable-16bit-types %s | %D3DReflect %s | FileCheck %s
 
 // Note: validator version 1.5 is required because these tests use
 // module disassembly -> reassembly between steps, and type annotations

+ 1 - 1
tools/clang/test/HLSLFileCheck/d3dreflect/reflect-lib-1.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.5 | %dxc -T lib_6_3 -auto-binding-space 11 -default-linkage external -validator-version 1.5 %s | %D3DReflect %s | FileCheck %s
+// RUN: %dxilver 1.5 | %dxc -T lib_6_3 -auto-binding-space 11 -default-linkage external %s | %D3DReflect %s | FileCheck %s
 
 float cbval1;
 cbuffer MyCB : register(b11, space2) { int4 cbval2, cbval3; }

+ 1 - 1
tools/clang/test/HLSLFileCheck/d3dreflect/structured_buffer_layout.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.5 | %dxc -E main -T vs_6_0 -validator-version 1.5 %s | %D3DReflect %s | FileCheck %s
+// RUN: %dxilver 1.5 | %dxc -E main -T vs_6_0 %s | %D3DReflect %s | FileCheck %s
 
 // Verify SB type description does not follow the CB offseting alignment
 // even when structure is shared with a ConstantBuffer.

+ 1 - 1
tools/clang/test/HLSLFileCheck/hlsl/compile_options/Qstrip_reflect/Qstrip_reflect.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.5 | %dxc -E main -T ps_6_0 %s -Qstrip_reflect -validator-version 1.5 | FileCheck %s
+// RUN: %dxilver 1.5 | %dxc -E main -T ps_6_0 %s -Qstrip_reflect | FileCheck %s
 
 // Make sure there are no type annotations
 // CHECK-NOT: !dx.typeAnnotations

+ 1 - 1
tools/clang/test/HLSLFileCheck/hlsl/compile_options/Qstrip_reflect/Qstrip_reflect_struct_buf.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.5 | %dxc -E main -T ps_6_2 -enable-16bit-types -HV 2018 -Qstrip_reflect %s -validator-version 1.5 | FileCheck %s
+// RUN: %dxilver 1.5 | %dxc -E main -T ps_6_2 -enable-16bit-types -HV 2018 -Qstrip_reflect %s  | FileCheck %s
 
 
 struct MyStruct1

+ 1 - 1
tools/clang/test/HLSLFileCheck/hlsl/objects/Buffer/multiUAVLoad2.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.1 | %dxc -E main -T cs_6_0 -validator-version 1.5 %s | FileCheck %s
+// RUN: %dxilver 1.1 | %dxc -E main -T cs_6_0 %s | FileCheck %s
 
 // CHECK-NOT: Typed UAV Load Additional Formats
 

+ 1 - 1
tools/clang/test/HLSLFileCheck/hlsl/objects/Buffer/multiUAVLoad4.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.1 | %dxc -E main -T ps_6_0 -validator-version 1.1 %s | FileCheck %s
+// RUN: %dxilver 1.1 | %dxc -E main -T ps_6_0 %s | FileCheck %s
 
 // CHECK-NOT: Typed UAV Load Additional Formats
 

+ 1 - 1
tools/clang/test/HLSLFileCheck/hlsl/objects/Buffer/multiUAVLoad5.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.1 | %dxc -E main -T cs_6_0 -validator-version 1.1 %s | FileCheck %s
+// RUN: %dxilver 1.1 | %dxc -E main -T cs_6_0 %s | FileCheck %s
 
 // CHECK-NOT: Typed UAV Load Additional Formats
 

+ 1 - 1
tools/clang/test/HLSLFileCheck/hlsl/objects/Buffer/multiUAVLoad7.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.1 | %dxc -E main -T cs_6_0 %s -validator-version 1.1 | FileCheck %s
+// RUN: %dxilver 1.1 | %dxc -E main -T cs_6_0 %s | FileCheck %s
 
 // CHECK-NOT: Typed UAV Load Additional Formats
 

+ 1 - 1
tools/clang/test/HLSLFileCheck/hlsl/objects/Cbuffer/uint64_2.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.1 | %dxc -E main -T cs_6_0 -not_use_legacy_cbuf_load -validator-version 1.1  %s | FileCheck %s
+// RUN: %dxilver 1.1 | %dxc -E main -T cs_6_0 -not_use_legacy_cbuf_load  %s | FileCheck %s
 
 // CHECK: 64-Bit integer
 // CHECK: dx.op.bufferStore.i32

+ 1 - 1
tools/clang/test/HLSLFileCheck/hlsl/semantics/sv_depth/output1.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -E main -T ps_6_0 %s -validator-version 1.5 | FileCheck %s
+// RUN: %dxc -E main -T ps_6_0 %s | FileCheck %s
 
 // CHECK: DepthOutput=1
 // CHECK: SampleFrequency=1

+ 1 - 1
tools/clang/test/HLSLFileCheck/hlsl/semantics/sv_isfrontface/input1.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -E main -T ps_6_0 %s -validator-version 1.5 | FileCheck %s
+// RUN: %dxc -E main -T ps_6_0 %s | FileCheck %s
 
 // For IsFrontFace.
 // CHECK: icmp ne

+ 1 - 1
tools/clang/test/HLSLFileCheck/hlsl/semantics/sv_isfrontface/input2.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -E main -T ps_6_0 %s -validator-version 1.5 | FileCheck %s
+// RUN: %dxc -E main -T ps_6_0 %s | FileCheck %s
 
 // CHECK: @main
 float4 main(

+ 1 - 1
tools/clang/test/HLSLFileCheck/hlsl/semantics/sv_isfrontface/isfrontface.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -T ps_6_0 -E main %s -validator-version 1.5 | FileCheck %s
+// RUN: %dxc -T ps_6_0 -E main %s | FileCheck %s
 
 // Make sure use uint isfrontface works.
 // CHECK: main

+ 1 - 1
tools/clang/test/HLSLFileCheck/hlsl/semantics/sv_isfrontface/isfrontface2.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -E main -T gs_6_0 %s -validator-version 1.5 | FileCheck %s
+// RUN: %dxc -E main -T gs_6_0 %s | FileCheck %s
 
 // Make sure uint isfrontface works.
 // CHECK: emitStream

+ 1 - 1
tools/clang/test/HLSLFileCheck/hlsl/signature/sig-bool-as-uint.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.5 | %dxc -E main -T ps_6_0 %s -validator-version 1.5 | FileCheck %s
+// RUN: %dxilver 1.5 | %dxc -E main -T ps_6_0 %s | FileCheck %s
 
 // make sure bool maps to uint in signature
 // CHECK: ; BOOL                     0   x           0     NONE    uint

+ 1 - 1
tools/clang/test/HLSLFileCheck/hlsl/types/modifiers/static/static_const_global.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxilver 1.5 | %dxc -T lib_6_3 -auto-binding-space 11 -validator-version 1.5 %s | FileCheck %s
+// RUN: %dxilver 1.5 | %dxc -T lib_6_3 -auto-binding-space 11 %s | FileCheck %s
 
 // Make sure ST is removed
 // CHECK-NOT: @ST

+ 9 - 3
tools/clang/tools/dxcompiler/dxcompilerobj.cpp

@@ -665,9 +665,15 @@ public:
           opts.KeepReflectionInDxil = true;
         }
 
-        // user-specified validator version override
-        compiler.getCodeGenOpts().HLSLValidatorMajorVer = opts.ValVerMajor;
-        compiler.getCodeGenOpts().HLSLValidatorMinorVer = opts.ValVerMinor;
+        if (opts.ValVerMajor != UINT_MAX) {
+          // user-specified validator version override
+          compiler.getCodeGenOpts().HLSLValidatorMajorVer = opts.ValVerMajor;
+          compiler.getCodeGenOpts().HLSLValidatorMinorVer = opts.ValVerMinor;
+        } else {
+          // Version from dxil.dll, or internal validator if unavailable
+          dxcutil::GetValidatorVersion(&compiler.getCodeGenOpts().HLSLValidatorMajorVer,
+                                      &compiler.getCodeGenOpts().HLSLValidatorMinorVer);
+        }
       }
 
       if (opts.AstDump) {

+ 1 - 1
tools/clang/unittests/HLSL/CompilerTest.cpp

@@ -1485,7 +1485,7 @@ TEST_F(CompilerTest, CompileThenAddCustomDebugName) {
   LPCWSTR args[] = { L"/Zi", L"/Qembed_debug", L"/Zss" };
 
   VERIFY_SUCCEEDED(pCompiler->Compile(pSource, L"source.hlsl", L"main",
-    L"ps_6_5", args, _countof(args), nullptr, 0,
+    L"ps_6_0", args, _countof(args), nullptr, 0,
     nullptr, &pResult));
   VERIFY_SUCCEEDED(pResult->GetResult(&pProgram));
   // Append private data blob

+ 26 - 24
tools/clang/unittests/HLSL/DxilContainerTest.cpp

@@ -586,31 +586,31 @@ TEST_F(DxilContainerTest, CompileWhenDebugSourceThenSourceMatters) {
   LPCWSTR Zsb[] = { L"/Zsb" };
   
   // No debug info, no debug name...
-  std::string noName = CompileToDebugName(program1, L"main", L"ps_6_5", nullptr, 0);
+  std::string noName = CompileToDebugName(program1, L"main", L"ps_6_0", nullptr, 0);
   VERIFY_IS_TRUE(noName.empty());
 
   if (!DoesValidatorSupportDebugName())
     return;
 
   // Debug info, default to source name.
-  std::string sourceName1 = CompileToDebugName(program1, L"main", L"ps_6_5", Zi, _countof(Zi));
+  std::string sourceName1 = CompileToDebugName(program1, L"main", L"ps_6_0", Zi, _countof(Zi));
   VERIFY_IS_FALSE(sourceName1.empty());
 
   // Deterministic naming.
-  std::string sourceName1Again = CompileToDebugName(program1, L"main", L"ps_6_5", Zi, _countof(Zi));
+  std::string sourceName1Again = CompileToDebugName(program1, L"main", L"ps_6_0", Zi, _countof(Zi));
   VERIFY_ARE_EQUAL_STR(sourceName1.c_str(), sourceName1Again.c_str());
 
   // Use program binary by default, so name should be the same.
-  std::string sourceName2 = CompileToDebugName(program2, L"main", L"ps_6_5", Zi, _countof(Zi));
+  std::string sourceName2 = CompileToDebugName(program2, L"main", L"ps_6_0", Zi, _countof(Zi));
   VERIFY_IS_TRUE(0 == strcmp(sourceName2.c_str(), sourceName1.c_str()));
 
   // Source again, different because different switches are specified.
-  std::string sourceName1Zss = CompileToDebugName(program1, L"main", L"ps_6_5", ZiZss, _countof(ZiZss));
+  std::string sourceName1Zss = CompileToDebugName(program1, L"main", L"ps_6_0", ZiZss, _countof(ZiZss));
   VERIFY_IS_FALSE(0 == strcmp(sourceName1Zss.c_str(), sourceName1.c_str()));
 
   // Binary program 1 and 2 should be different from source and equal to each other.
-  std::string binName1 = CompileToDebugName(program1, L"main", L"ps_6_5", ZiZsb, _countof(ZiZsb));
-  std::string binName2 = CompileToDebugName(program2, L"main", L"ps_6_5", ZiZsb, _countof(ZiZsb));
+  std::string binName1 = CompileToDebugName(program1, L"main", L"ps_6_0", ZiZsb, _countof(ZiZsb));
+  std::string binName2 = CompileToDebugName(program2, L"main", L"ps_6_0", ZiZsb, _countof(ZiZsb));
   VERIFY_ARE_EQUAL_STR(binName1.c_str(), binName2.c_str());
   VERIFY_IS_FALSE(0 == strcmp(sourceName1Zss.c_str(), binName1.c_str()));
 
@@ -618,15 +618,15 @@ TEST_F(DxilContainerTest, CompileWhenDebugSourceThenSourceMatters) {
     return;
 
   // Verify source hash
-  std::string binHash1Zss = CompileToShaderHash(program1, L"main", L"ps_6_5", ZiZss, _countof(ZiZss));
+  std::string binHash1Zss = CompileToShaderHash(program1, L"main", L"ps_6_0", ZiZss, _countof(ZiZss));
   VERIFY_IS_FALSE(binHash1Zss.empty());
 
   // bin hash when compiling with /Zi
-  std::string binHash1 = CompileToShaderHash(program1, L"main", L"ps_6_5", ZiZsb, _countof(ZiZsb));
+  std::string binHash1 = CompileToShaderHash(program1, L"main", L"ps_6_0", ZiZsb, _countof(ZiZsb));
   VERIFY_IS_FALSE(binHash1.empty());
 
   // Without /Zi hash for /Zsb should be the same
-  std::string binHash2 = CompileToShaderHash(program2, L"main", L"ps_6_5", Zsb, _countof(Zsb));
+  std::string binHash2 = CompileToShaderHash(program2, L"main", L"ps_6_0", Zsb, _countof(Zsb));
   VERIFY_IS_FALSE(binHash2.empty());
   VERIFY_ARE_EQUAL_STR(binHash1.c_str(), binHash2.c_str());
 
@@ -652,6 +652,7 @@ TEST_F(DxilContainerTest, CompileWhenOKThenIncludesSignatures) {
     "}";
 
   {
+    std::string s = DisassembleProgram(program, L"VSMain", L"vs_6_0");
     // NOTE: this will change when proper packing is done, and when 'always-reads' is accurately implemented.
     const char expected_1_4[] =
       ";\n"
@@ -685,15 +686,17 @@ TEST_F(DxilContainerTest, CompileWhenOKThenIncludesSignatures) {
       "; -------------------- ----- ------ -------- -------- ------- ------\n"
       "; SV_Position              0   xyzw        0      POS   float   xyzw\n"  // could read SV_POSITION
       "; COLOR                    0   xyzw        1     NONE   float   xyzw\n"; // should read '1' in register
-    std::string s64 = DisassembleProgram(program, L"VSMain", L"vs_6_4");
-    std::string start64(s64.c_str(), strlen(expected_1_4));
-    VERIFY_ARE_EQUAL_STR(expected_1_4, start64.c_str());
-    std::string s65 = DisassembleProgram(program, L"VSMain", L"vs_6_5");
-    std::string start65(s65.c_str(), strlen(expected));
-    VERIFY_ARE_EQUAL_STR(expected, start65.c_str());
+    if (hlsl::DXIL::CompareVersions(m_ver.m_ValMajor, m_ver.m_ValMinor, 1, 5) < 0) {
+      std::string start(s.c_str(), strlen(expected_1_4));
+      VERIFY_ARE_EQUAL_STR(expected_1_4, start.c_str());
+    } else {
+      std::string start(s.c_str(), strlen(expected));
+      VERIFY_ARE_EQUAL_STR(expected, start.c_str());
+    }
   }
 
   {
+    std::string s = DisassembleProgram(program, L"PSMain", L"ps_6_0");
     // NOTE: this will change when proper packing is done, and when 'always-reads' is accurately implemented.
     const char expected_1_4[] =
       ";\n"
@@ -725,14 +728,13 @@ TEST_F(DxilContainerTest, CompileWhenOKThenIncludesSignatures) {
       "; Name                 Index   Mask Register SysValue  Format   Used\n"
       "; -------------------- ----- ------ -------- -------- ------- ------\n"
       "; SV_Target                0   xyzw        0   TARGET   float   xyzw\n";// could read SV_TARGET
-    
-    std::string s64 = DisassembleProgram(program, L"PSMain", L"ps_6_4");
-    std::string start64(s64.c_str(), strlen(expected_1_4));
-    VERIFY_ARE_EQUAL_STR(expected_1_4, start64.c_str());
-
-    std::string s65 = DisassembleProgram(program, L"PSMain", L"ps_6_5");
-    std::string start65(s65.c_str(), strlen(expected));
-    VERIFY_ARE_EQUAL_STR(expected, start65.c_str());
+    if (hlsl::DXIL::CompareVersions(m_ver.m_ValMajor, m_ver.m_ValMinor, 1, 5) < 0) {
+      std::string start(s.c_str(), strlen(expected_1_4));
+      VERIFY_ARE_EQUAL_STR(expected_1_4, start.c_str());
+    } else {
+      std::string start(s.c_str(), strlen(expected));
+      VERIFY_ARE_EQUAL_STR(expected, start.c_str());
+    }
   }
 }
 

+ 3 - 5
tools/clang/unittests/HLSL/DxilModuleTest.cpp

@@ -529,11 +529,9 @@ void DxilModuleTest::VerifyValidatorVersionMatches(
   DM.GetValidatorVersion(vMajor, vMinor);
 
   if (expectedMajor == UINT_MAX) {
-    // Expect dxil version
-    unsigned vMajorDxil, vMinorDxil;
-    DM.GetDxilVersion(vMajorDxil, vMinorDxil);
-    VERIFY_ARE_EQUAL(vMajor, vMajorDxil);
-    VERIFY_ARE_EQUAL(vMinor, vMinorDxil);
+    // Expect current version
+    VERIFY_ARE_EQUAL(vMajor, c.m_ver.m_ValMajor);
+    VERIFY_ARE_EQUAL(vMinor, c.m_ver.m_ValMinor);
   } else {
     VERIFY_ARE_EQUAL(vMajor, expectedMajor);
     VERIFY_ARE_EQUAL(vMinor, expectedMinor);

+ 0 - 2
tools/clang/unittests/HLSL/FileCheckerTest.cpp

@@ -292,8 +292,6 @@ FileRunCommandResult FileRunCommandPart::RunDxcHashTest(dxc::DxcDllSupport &DllS
     if (a.find(L"Zi") != std::wstring::npos) continue;
     original_flags.push_back(a.data());
   }
-  original_flags.push_back(L"-validator-version");
-  original_flags.push_back(L"1.5");
 
   std::string originalOutput;
   CComPtr<IDxcBlob> pOriginalHash;

+ 2 - 2
tools/clang/unittests/HLSL/OptimizerTest.cpp

@@ -117,7 +117,7 @@ TEST_F(OptimizerTest, OptimizerWhenSliceWithIntermediateOptionsThenOK) {
     "float4 main() : SV_Target {\r\n"
     "  return tex1.Load((int3)0);\r\n"
     "}";
-  OptimizerWhenSliceNThenOK(1, SampleProgram, L"ps_6_5", { L"-flegacy-resource-reservation" });
+  OptimizerWhenSliceNThenOK(1, SampleProgram, L"ps_6_0", { L"-flegacy-resource-reservation" });
 }
 
 void OptimizerTest::OptimizerWhenSliceNThenOK(int optLevel) {
@@ -130,7 +130,7 @@ void OptimizerTest::OptimizerWhenSliceNThenOK(int optLevel) {
     "  if (b) user = g_Tex.Sample(g_Sampler, pos.xy);\r\n"
     "  return user * pos;\r\n"
     "}";
-  OptimizerWhenSliceNThenOK(optLevel, SampleProgram, L"ps_6_5");
+  OptimizerWhenSliceNThenOK(optLevel, SampleProgram, L"ps_6_0");
 }
 static bool IsPassMarkerFunction(LPCWSTR pName) {
   return 0 == _wcsicmp(pName, L"-opt-fn-passes");

+ 2 - 2
tools/clang/unittests/HLSL/SystemValueTest.cpp

@@ -298,7 +298,7 @@ TEST_F(SystemValueTest, VerifySVAsSV) {
       DXIL::SemanticInterpretationKind interpretation = hlsl::SigPoint::GetInterpretation(sv, sp, m_HighestMajor, m_HighestMinor);
       if (interpretation == DXIL::SemanticInterpretationKind::SV || interpretation == DXIL::SemanticInterpretationKind::SGV) {
         CComPtr<IDxcOperationResult> pResult;
-        CompileHLSLTemplate(pResult, sp, sv, false, 6, 5);
+        CompileHLSLTemplate(pResult, sp, sv, false);
         HRESULT result;
         VERIFY_SUCCEEDED(pResult->GetStatus(&result));
         VERIFY_SUCCEEDED(result);
@@ -316,7 +316,7 @@ TEST_F(SystemValueTest, VerifySGV) {
       DXIL::SemanticInterpretationKind interpretation = hlsl::SigPoint::GetInterpretation(sv, sp, m_HighestMajor, m_HighestMinor);
       if (interpretation == DXIL::SemanticInterpretationKind::SGV) {
         CComPtr<IDxcOperationResult> pResult;
-        CompileHLSLTemplate(pResult, sp, sv, true, 6, 5);
+        CompileHLSLTemplate(pResult, sp, sv, true);
         HRESULT result;
         VERIFY_SUCCEEDED(pResult->GetStatus(&result));
         VERIFY_SUCCEEDED(result);

+ 2 - 2
tools/clang/unittests/HLSL/ValidationTest.cpp

@@ -2062,7 +2062,7 @@ float4 main( \
   return col; \
 } \
     ",
-    "ps_6_5",
+    "ps_6_0",
 
     "= !{i32 1, !\"Value\", i8 5, i8 0, !([0-9]+), i8 1, i32 1, i8 2, i32 1, i8 0, null}\n"
     "!([0-9]+) = !{i32 2, !\"SV_PrimitiveID\", i8 5, i8 10, !([0-9]+), i8 1, i32 1, i8 1, i32 1, i8 2, null}\n"
@@ -2089,7 +2089,7 @@ float4 main( \
   return col; \
 } \
     ",
-    "ps_6_5",
+    "ps_6_0",
 
     { "= !{i32 1, !\"Value\", i8 5, i8 0, !([0-9]+), i8 1, i32 1, i8 1, i32 1, i8 0, null}\n"
       "!([0-9]+) = !{i32 2, !\"SV_PrimitiveID\", i8 5, i8 10, !([0-9]+), i8 1, i32 1, i8 1, i32 1, i8 1, null}\n"