[clang] [HLSL] Implement support for HLSL intrinsic - select (PR #107129)
Justin Bogner via cfe-commits
cfe-commits at lists.llvm.org
Fri Sep 6 12:32:33 PDT 2024
================
@@ -0,0 +1,41 @@
+// RUN: %clang_cc1 -finclude-default-header -x hlsl -triple \
+// RUN: dxil-pc-shadermodel6.3-library %s -emit-llvm -disable-llvm-passes \
+// RUN: -o - | FileCheck %s --check-prefixes=CHECK
+
+// CHECK: %hlsl.select = select i1
+// CHECK: ret i32 %hlsl.select
----------------
bogner wrote:
`select i1` doesn't seem sufficient, we should probably check all of the argument types. Also, we can't rely on the SSA value names - they won't necessarily be there in release builds. We can solve both of these things with some regex:
```c++
// CHECK: [[SELECT:%.*]] = select i1 {{%.*}}, i32 {{%.*}}, i32 {{%.*}}
// CHECK: ret i32 [[SELECT]]
```
https://github.com/llvm/llvm-project/pull/107129
More information about the cfe-commits
mailing list