Skip to content

Commit 0bf8434

Browse files
authored
Bump SM version to 6.10 (microsoft#7804)
This PR focuses on bumping the max allowable targetable shader model version to 6.10, up from the previous max 6.9. It mimics this one for 6.9: microsoft#7075 Fixes microsoft#7802
1 parent b3e84a8 commit 0bf8434

File tree

10 files changed

+259
-373
lines changed

10 files changed

+259
-373
lines changed

include/dxc/DXIL/DxilConstants.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ namespace DXIL {
2929
const unsigned kDxilMajor = 1;
3030
/* <py::lines('VALRULE-TEXT')>hctdb_instrhelp.get_dxil_version_minor()</py>*/
3131
// VALRULE-TEXT:BEGIN
32-
const unsigned kDxilMinor = 9;
32+
const unsigned kDxilMinor = 10;
3333
// VALRULE-TEXT:END
3434

3535
inline unsigned MakeDxilVersion(unsigned DxilMajor, unsigned DxilMinor) {

include/dxc/DXIL/DxilShaderModel.h

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ class ShaderModel {
3333
// clang-format on
3434
// VALRULE-TEXT:BEGIN
3535
static const unsigned kHighestMajor = 6;
36-
static const unsigned kHighestMinor = 9;
36+
static const unsigned kHighestMinor = 10;
3737
// VALRULE-TEXT:END
3838

3939
// Major/Minor version of highest released shader model
@@ -84,6 +84,7 @@ class ShaderModel {
8484
bool IsSM67Plus() const { return IsSMAtLeast(6, 7); }
8585
bool IsSM68Plus() const { return IsSMAtLeast(6, 8); }
8686
bool IsSM69Plus() const { return IsSMAtLeast(6, 9); }
87+
bool IsSM610Plus() const { return IsSMAtLeast(6, 10); }
8788
// VALRULE-TEXT:END
8889
const char *GetName() const { return m_pszName; }
8990
const char *GetKindName() const;
@@ -97,6 +98,8 @@ class ShaderModel {
9798
static const char *GetKindName(Kind kind);
9899
static bool IsPreReleaseShaderModel(int Major, int Minor);
99100
static Kind GetKindFromName(llvm::StringRef Name);
101+
static bool ParseTargetProfile(llvm::StringRef Ref, llvm::StringRef &OutStage,
102+
unsigned &OutMajor, unsigned &OutMinor);
100103
static DXIL::ShaderKind KindFromFullName(llvm::StringRef Name);
101104
static const llvm::StringRef FullNameFromKind(DXIL::ShaderKind sk);
102105
static const char *GetNodeLaunchTypeName(DXIL::NodeLaunchType launchTy);
@@ -133,7 +136,7 @@ class ShaderModel {
133136
bool m_bTypedUavs, unsigned m_UAVRegsLim);
134137
/* <py::lines('VALRULE-TEXT')>hctdb_instrhelp.get_num_shader_models()</py>*/
135138
// VALRULE-TEXT:BEGIN
136-
static const unsigned kNumShaderModels = 101;
139+
static const unsigned kNumShaderModels = 116;
137140
// VALRULE-TEXT:END
138141
static const ShaderModel ms_ShaderModels[kNumShaderModels];
139142

include/dxc/Support/HLSLOptions.td

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -439,7 +439,7 @@ def fvk_bind_counter_heap : MultiArg<["-"], "fvk-bind-counter-heap", 2>, MetaVar
439439
def target_profile : JoinedOrSeparate<["-", "/"], "T">, Flags<[CoreOption]>, Group<hlslcomp_Group>, MetaVarName<"<profile>">,
440440
/* <py::lines('VALRULE-TEXT')>hctdb_instrhelp.get_target_profiles()</py>*/
441441
// VALRULE-TEXT:BEGIN
442-
HelpText<"Set target profile. \n\t<profile>: ps_6_0, ps_6_1, ps_6_2, ps_6_3, ps_6_4, ps_6_5, ps_6_6, ps_6_7, ps_6_8, ps_6_9, \n\t\t vs_6_0, vs_6_1, vs_6_2, vs_6_3, vs_6_4, vs_6_5, vs_6_6, vs_6_7, vs_6_8, vs_6_9, \n\t\t gs_6_0, gs_6_1, gs_6_2, gs_6_3, gs_6_4, gs_6_5, gs_6_6, gs_6_7, gs_6_8, gs_6_9, \n\t\t hs_6_0, hs_6_1, hs_6_2, hs_6_3, hs_6_4, hs_6_5, hs_6_6, hs_6_7, hs_6_8, hs_6_9, \n\t\t ds_6_0, ds_6_1, ds_6_2, ds_6_3, ds_6_4, ds_6_5, ds_6_6, ds_6_7, ds_6_8, ds_6_9, \n\t\t cs_6_0, cs_6_1, cs_6_2, cs_6_3, cs_6_4, cs_6_5, cs_6_6, cs_6_7, cs_6_8, cs_6_9, \n\t\t lib_6_1, lib_6_2, lib_6_3, lib_6_4, lib_6_5, lib_6_6, lib_6_7, lib_6_8, lib_6_9, \n\t\t ms_6_5, ms_6_6, ms_6_7, ms_6_8, ms_6_9, \n\t\t as_6_5, as_6_6, as_6_7, as_6_8, as_6_9, \n\t\t ">;
442+
HelpText<"Set target profile. \n\t<profile>: ps_6_0, ps_6_1, ps_6_2, ps_6_3, ps_6_4, ps_6_5, ps_6_6, ps_6_7, ps_6_8, ps_6_9, ps_6_10, \n\t\t vs_6_0, vs_6_1, vs_6_2, vs_6_3, vs_6_4, vs_6_5, vs_6_6, vs_6_7, vs_6_8, vs_6_9, vs_6_10, \n\t\t gs_6_0, gs_6_1, gs_6_2, gs_6_3, gs_6_4, gs_6_5, gs_6_6, gs_6_7, gs_6_8, gs_6_9, gs_6_10, \n\t\t hs_6_0, hs_6_1, hs_6_2, hs_6_3, hs_6_4, hs_6_5, hs_6_6, hs_6_7, hs_6_8, hs_6_9, hs_6_10, \n\t\t ds_6_0, ds_6_1, ds_6_2, ds_6_3, ds_6_4, ds_6_5, ds_6_6, ds_6_7, ds_6_8, ds_6_9, ds_6_10, \n\t\t cs_6_0, cs_6_1, cs_6_2, cs_6_3, cs_6_4, cs_6_5, cs_6_6, cs_6_7, cs_6_8, cs_6_9, cs_6_10, \n\t\t lib_6_1, lib_6_2, lib_6_3, lib_6_4, lib_6_5, lib_6_6, lib_6_7, lib_6_8, lib_6_9, lib_6_10, \n\t\t ms_6_5, ms_6_6, ms_6_7, ms_6_8, ms_6_9, ms_6_10, \n\t\t as_6_5, as_6_6, as_6_7, as_6_8, as_6_9, as_6_10, \n\t\t ">;
443443
// VALRULE-TEXT:END
444444
def entrypoint : JoinedOrSeparate<["-", "/"], "E">, Flags<[CoreOption, RewriteOption]>, Group<hlslcomp_Group>,
445445
HelpText<"Entry point name">;

include/dxc/Test/DxcTestUtils.h

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -224,9 +224,6 @@ void VerifyCompileOK(dxc::DllLoader &dllSupport, LPCSTR pText,
224224

225225
HRESULT GetVersion(dxc::DllLoader &DllSupport, REFCLSID clsid, unsigned &Major,
226226
unsigned &Minor);
227-
bool ParseTargetProfile(llvm::StringRef targetProfile,
228-
llvm::StringRef &outStage, unsigned &outMajor,
229-
unsigned &outMinor);
230227

231228
class VersionSupportInfo {
232229
private:

0 commit comments

Comments
 (0)