xref: /llvm-project/llvm/test/CodeGen/DirectX/lib_entry.ll (revision 8107810cad24d41fe43c6777370c7b81ca83ad84)
1; RUN: opt -S -dxil-translate-metadata < %s | FileCheck %s
2target 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"
3target triple = "dxil-unknown-shadermodel6.7-library"
4
5;CHECK:!dx.entryPoints = !{![[empty_entry:[0-9]+]], ![[entry:[0-9]+]]}
6
7; Make sure generate empty entry for lib profile.
8;CHECK:![[empty_entry]] = !{null, !"", null, null, ![[shader_flags:[0-9]+]]}
9; Make sure double is marked for shader flags.
10;CHECK:![[shader_flags]] = !{i32 0, i64 4}
11;CHECK:![[entry]] = !{ptr @entry, !"entry", null, null, ![[extra:[0-9]+]]}
12;CHECK:![[extra]] = !{i32 8, i32 5, i32 4, ![[numthreads:[0-9]+]]}
13;CHECK:![[numthreads]] = !{i32 1, i32 2, i32 1}
14
15; Function Attrs: noinline nounwind
16define void @entry() #0 {
17entry:
18  %0 = fpext float 2.000000e+00 to double
19  ret void
20}
21
22attributes #0 = { noinline nounwind "hlsl.numthreads"="1,2,1" "hlsl.shader"="compute" }
23