From f4d5aa73fb72a483f04bb6b014e80192331504ea Mon Sep 17 00:00:00 2001 From: Yong He Date: Sat, 2 Nov 2024 20:35:22 -0700 Subject: Revert uint<->int implicit cast cost to prefer promotion to unsigned. (#5480) --- .../overload-resolution-signed-unsigned.slang | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 tests/language-feature/overload-resolution-signed-unsigned.slang (limited to 'tests/language-feature') diff --git a/tests/language-feature/overload-resolution-signed-unsigned.slang b/tests/language-feature/overload-resolution-signed-unsigned.slang new file mode 100644 index 000000000..f8de85810 --- /dev/null +++ b/tests/language-feature/overload-resolution-signed-unsigned.slang @@ -0,0 +1,20 @@ +//TEST:SIMPLE(filecheck=CHECK): -target hlsl -stage compute -entry main +RWStructuredBuffer result; +// CHECK-NOT: result{{.*}}[int(0)] = 1 +// CHECK: result{{.*}}[int(0)] = 2 +// CHECK-NOT: result{{.*}}[int(0)] = 1 +[numthreads(1,1,1)] +void main() +{ + int ic = -1; + uint a = 2; + if (ic < a) + { + result[0] = 1; + } + else + { + // Should pick this branch according to C spec. + result[0] = 2; + } +} \ No newline at end of file -- cgit v1.2.3