xref: /llvm-project/llvm/test/CodeGen/DirectX/lib_entry.ll (revision 8107810cad24d41fe43c6777370c7b81ca83ad84)
1*8107810cSJustin Bogner; RUN: opt -S -dxil-translate-metadata < %s | FileCheck %s
2b8615079SXiang Litarget datalayout = "e-m:e-p:32:32-i1:32-i8:8-i16:16-i32:32-i64:64-f16:16-f32:32-f64:64-n8:16:32:64"
3b8615079SXiang Litarget triple = "dxil-unknown-shadermodel6.7-library"
4b8615079SXiang Li
5b8615079SXiang Li;CHECK:!dx.entryPoints = !{![[empty_entry:[0-9]+]], ![[entry:[0-9]+]]}
6b8615079SXiang Li
7b8615079SXiang Li; Make sure generate empty entry for lib profile.
8b8615079SXiang Li;CHECK:![[empty_entry]] = !{null, !"", null, null, ![[shader_flags:[0-9]+]]}
9b8615079SXiang Li; Make sure double is marked for shader flags.
104dc03701SXiang Li;CHECK:![[shader_flags]] = !{i32 0, i64 4}
11b8615079SXiang Li;CHECK:![[entry]] = !{ptr @entry, !"entry", null, null, ![[extra:[0-9]+]]}
12b8615079SXiang Li;CHECK:![[extra]] = !{i32 8, i32 5, i32 4, ![[numthreads:[0-9]+]]}
13b8615079SXiang Li;CHECK:![[numthreads]] = !{i32 1, i32 2, i32 1}
14b8615079SXiang Li
15b8615079SXiang Li; Function Attrs: noinline nounwind
16b8615079SXiang Lidefine void @entry() #0 {
17b8615079SXiang Lientry:
18b8615079SXiang Li  %0 = fpext float 2.000000e+00 to double
19b8615079SXiang Li  ret void
20b8615079SXiang Li}
21b8615079SXiang Li
22b8615079SXiang Liattributes #0 = { noinline nounwind "hlsl.numthreads"="1,2,1" "hlsl.shader"="compute" }
23