54 lines · plain
1; RUN: opt -S --passes="print-dx-shader-flags" 2>&1 %s | FileCheck %s2 3target triple = "dxil-pc-shadermodel6.7-library"4 5; CHECK: ; Combined Shader Flags for Module6; CHECK-NEXT: ; Shader Flags Value: 0x001000447 8; CHECK: ; Note: shader requires additional functionality:9; CHECK-NEXT: ; Double-precision floating point10; CHECK-NEXT: ; Double-precision extensions for 11.111; CHECK-NEXT: ; 64-Bit integer12; CHECK-NEXT: ; Note: extra DXIL module flags:13; CHECK-NEXT: ;14; CHECK-NEXT: ; Shader Flags for Module Functions15 16;CHECK: ; Function top_level : 0x0010004417define double @top_level() #0 {18 %r = call double @test_uitofp_i64(i64 5)19 ret double %r20}21 22 23; CHECK: ; Function test_fdiv_double : 0x0000004424define double @test_fdiv_double(double %a, double %b) #0 {25 %res = fdiv double %a, %b26 ret double %res27}28 29; CHECK: ; Function test_uitofp_i64 : 0x0010004430define double @test_uitofp_i64(i64 %a) #0 {31 %r = uitofp i64 %a to double32 ret double %r33}34 35; CHECK: ; Function test_sitofp_i64 : 0x0010004436define double @test_sitofp_i64(i64 %a) #0 {37 %r = sitofp i64 %a to double38 ret double %r39}40 41; CHECK: ; Function test_fptoui_i32 : 0x0000004442define i32 @test_fptoui_i32(double %a) #0 {43 %r = fptoui double %a to i3244 ret i32 %r45}46 47; CHECK: ; Function test_fptosi_i64 : 0x0010004448define i64 @test_fptosi_i64(double %a) #0 {49 %r = fptosi double %a to i6450 ret i64 %r51}52 53attributes #0 = { convergent norecurse nounwind "hlsl.export"}54