49 lines · plain
1; RUN: opt %s -dxil-embed -dxil-globals -S -o - | FileCheck %s2; RUN: llc %s --filetype=obj -o - | obj2yaml | FileCheck %s --check-prefix=DXC3 4target triple = "dxil-unknown-shadermodel6.0-compute"5 6; CHECK: @dx.rts0 = private constant [92 x i8] c"{{.*}}", section "RTS0", align 47 8define void @main() #0 {9entry:10 ret void11}12attributes #0 = { "hlsl.numthreads"="1,1,1" "hlsl.shader"="compute" }13 14 15!dx.rootsignatures = !{!2} ; list of function/root signature pairs16!2 = !{ ptr @main, !3, i32 2 } ; function, root signature17!3 = !{ !5 } ; list of root signature elements18!5 = !{ !"DescriptorTable", i32 0, !6, !7 }19!6 = !{ !"SRV", i32 1, i32 1, i32 0, i32 -1, i32 4 }20!7 = !{ !"UAV", i32 5, i32 1, i32 10, i32 5, i32 2 }21 22; DXC: - Name: RTS023; DXC-NEXT: Size: 9224; DXC-NEXT: RootSignature:25; DXC-NEXT: Version: 226; DXC-NEXT: NumRootParameters: 127; DXC-NEXT: RootParametersOffset: 2428; DXC-NEXT: NumStaticSamplers: 029; DXC-NEXT: StaticSamplersOffset: 9230; DXC-NEXT: Parameters:31; DXC-NEXT: - ParameterType: DescriptorTable32; DXC-NEXT: ShaderVisibility: All33; DXC-NEXT: Table:34; DXC-NEXT: NumRanges: 235; DXC-NEXT: RangesOffset: 4436; DXC-NEXT: Ranges:37; DXC-NEXT: - RangeType: SRV38; DXC-NEXT: NumDescriptors: 139; DXC-NEXT: BaseShaderRegister: 140; DXC-NEXT: RegisterSpace: 041; DXC-NEXT: OffsetInDescriptorsFromTableStart: 429496729542; DXC-NEXT: DATA_STATIC_WHILE_SET_AT_EXECUTE: true43; DXC-NEXT: - RangeType: UAV44; DXC-NEXT: NumDescriptors: 545; DXC-NEXT: BaseShaderRegister: 146; DXC-NEXT: RegisterSpace: 1047; DXC-NEXT: OffsetInDescriptorsFromTableStart: 548; DXC-NEXT: DATA_VOLATILE: true49