[clang] [HLSL] Add NativeInt16Type langopt to control whether short type is supported. Enabled by default for all but HLSL. (PR #165584)

Justin Bogner via cfe-commits cfe-commits at lists.llvm.org
Thu Oct 30 10:24:48 PDT 2025


================
@@ -399,7 +399,7 @@ static void InitializeStandardPredefinedMacros(const TargetInfo &TI,
     Builder.defineMacro("__HLSL_202y",
                         Twine((unsigned)LangOptions::HLSLLangStd::HLSL_202y));
 
-    if (LangOpts.NativeHalfType)
+    if (LangOpts.NativeHalfType && LangOpts.NativeInt16Type)
       Builder.defineMacro("__HLSL_ENABLE_16_BIT", "1");
----------------
bogner wrote:

If a user does manage to build with only one of these two flags the value of this define will probably be kind of confusing. I think that's probably okay though - this best matches DXC's behaviour and will do the right thing when using the clang-dxc driver.

https://github.com/llvm/llvm-project/pull/165584


More information about the cfe-commits mailing list