66
77RWByteAddressBuffer BAB : register (u1, space0);
88
9- // RDAT-LABEL: UnmangledName: "node_barrier"
10- // RDAT: FeatureInfo1: 0
11- // RDAT: FeatureInfo2: (Opt_RequiresGroup)
12- // RDAT: ShaderStageFlag: (Node)
13- // RDAT: MinShaderTarget: 0xf0068
14-
15- [shader ("node" )]
16- [NodeLaunch ("broadcasting" )]
17- [NodeDispatchGrid (1 , 1 , 1 )]
18- [NumThreads (1 ,1 ,1 )]
19- void node_barrier () {
20- GroupMemoryBarrierWithGroupSync ();
21- BAB.Store (0 , 0 );
22- }
23-
24- // RDAT-LABEL: UnmangledName: "fn_barrier_device1"
25- // RDAT: FeatureInfo1: 0
26- // RDAT: FeatureInfo2: 0
27- // RDAT: ShaderStageFlag: (Pixel | Vertex | Geometry | Hull | Domain | Compute | Library | RayGeneration | Intersection | AnyHit | ClosestHit | Miss | Callable | Mesh | Amplification | Node)
28- // RDAT: MinShaderTarget: 0x60060
29-
30- [noinline] export
31- void fn_barrier_device1 () {
32- Barrier (UAV_MEMORY, DEVICE_SCOPE);
33- }
34-
35- // RDAT-LABEL: UnmangledName: "fn_barrier_device2"
36- // RDAT: FeatureInfo1: 0
37- // RDAT: FeatureInfo2: 0
38- // RDAT: ShaderStageFlag: (Pixel | Vertex | Geometry | Hull | Domain | Compute | Library | RayGeneration | Intersection | AnyHit | ClosestHit | Miss | Callable | Mesh | Amplification | Node)
39- // RDAT: MinShaderTarget: 0x60068
40-
41- [noinline] export
42- void fn_barrier_device2 () {
43- Barrier (BAB, DEVICE_SCOPE);
44- }
45-
46- // RDAT-LABEL: UnmangledName: "fn_barrier_group1"
47- // RDAT: FeatureInfo1: 0
48- // RDAT: FeatureInfo2: (Opt_RequiresGroup)
49- // RDAT: ShaderStageFlag: (Compute | Library | Mesh | Amplification | Node)
50- // RDAT: MinShaderTarget: 0x60060
51-
52- [noinline] export
53- void fn_barrier_group1 () {
54- Barrier (GROUP_SHARED_MEMORY, GROUP_SYNC | GROUP_SCOPE);
55- }
56-
57- // RDAT-LABEL: UnmangledName: "fn_barrier_group2"
58- // RDAT: FeatureInfo1: 0
59- // RDAT: FeatureInfo2: (Opt_RequiresGroup)
60- // RDAT: ShaderStageFlag: (Compute | Library | Mesh | Amplification | Node)
61- // RDAT: MinShaderTarget: 0x60068
62-
63- [noinline] export
64- void fn_barrier_group2 () {
65- Barrier (BAB, GROUP_SYNC | GROUP_SCOPE);
66- }
67-
68- // RDAT-LABEL: UnmangledName: "fn_barrier_node1"
69- // RDAT: FeatureInfo1: 0
70- // RDAT: FeatureInfo2: 0
71- // RDAT: ShaderStageFlag: (Library | Node)
72- // RDAT: MinShaderTarget: 0x60068
73-
74- [noinline] export
75- void fn_barrier_node1 () {
76- Barrier (NODE_INPUT_MEMORY, DEVICE_SCOPE);
77- }
78-
79- // RDAT-LABEL: UnmangledName: "fn_barrier_node_group1"
80- // RDAT: FeatureInfo1: 0
81- // RDAT: FeatureInfo2: (Opt_RequiresGroup)
82- // RDAT: ShaderStageFlag: (Library | Node)
83- // RDAT: MinShaderTarget: 0x60068
84-
85- [noinline] export
86- void fn_barrier_node_group1 () {
87- Barrier (NODE_INPUT_MEMORY, GROUP_SYNC | GROUP_SCOPE);
88- }
89-
909// RDAT-LABEL: UnmangledName: "fn_barrier_reorder"
9110// RDAT: FeatureInfo1: 0
9211// RDAT: FeatureInfo2: 0
@@ -98,59 +17,37 @@ void fn_barrier_reorder() {
9817 Barrier (UAV_MEMORY, REORDER_SCOPE);
9918}
10019
101- // RDAT-LABEL: UnmangledName: "node_barrier_device_in_call "
20+ // RDAT-LABEL: UnmangledName: "fn_barrier_reorder2 "
10221// RDAT: FeatureInfo1: 0
10322// RDAT: FeatureInfo2: 0
104- // RDAT: ShaderStageFlag: (Node )
105- // RDAT: MinShaderTarget: 0xf0068
23+ // RDAT: ShaderStageFlag: (Library | RayGeneration )
24+ // RDAT: MinShaderTarget: 0x60069
10625
107- [shader ("node" )]
108- [NodeLaunch ("broadcasting" )]
109- [NodeDispatchGrid (1 , 1 , 1 )]
110- [NumThreads (1 ,1 ,1 )]
111- void node_barrier_device_in_call () {
112- fn_barrier_device1 ();
113- BAB.Store (0 , 0 );
26+ [noinline] export
27+ void fn_barrier_reorder2 () {
28+ Barrier (BAB, REORDER_SCOPE);
11429}
11530
116- // RDAT-LABEL: UnmangledName: "node_barrier_node_in_call "
31+ // RDAT-LABEL: UnmangledName: "rg_barrier_reorder_in_call "
11732// RDAT: FeatureInfo1: 0
11833// RDAT: FeatureInfo2: 0
119- // RDAT: ShaderStageFlag: (Node)
120- // RDAT: MinShaderTarget: 0xf0068
121-
122- [shader ("node" )]
123- [NodeLaunch ("broadcasting" )]
124- [NodeDispatchGrid (1 , 1 , 1 )]
125- [NumThreads (1 ,1 ,1 )]
126- void node_barrier_node_in_call () {
127- fn_barrier_node1 ();
128- BAB.Store (0 , 0 );
129- }
130-
131- // RDAT-LABEL: UnmangledName: "node_barrier_node_group_in_call"
132- // RDAT: FeatureInfo1: 0
133- // RDAT: FeatureInfo2: (Opt_RequiresGroup)
134- // RDAT: ShaderStageFlag: (Node)
135- // RDAT: MinShaderTarget: 0xf0068
34+ // RDAT: ShaderStageFlag: (RayGeneration)
35+ // RDAT: MinShaderTarget: 0x70069
13636
137- [shader ("node" )]
138- [NodeLaunch ("broadcasting" )]
139- [NodeDispatchGrid (1 , 1 , 1 )]
140- [NumThreads (1 ,1 ,1 )]
141- void node_barrier_node_group_in_call () {
142- fn_barrier_node_group1 ();
37+ [shader ("raygeneration" )]
38+ void rg_barrier_reorder_in_call () {
39+ fn_barrier_reorder ();
14340 BAB.Store (0 , 0 );
14441}
14542
146- // RDAT-LABEL: UnmangledName: "rg_barrier_reorder_in_call "
43+ // RDAT-LABEL: UnmangledName: "rg_barrier_reorder_in_call2 "
14744// RDAT: FeatureInfo1: 0
14845// RDAT: FeatureInfo2: 0
14946// RDAT: ShaderStageFlag: (RayGeneration)
15047// RDAT: MinShaderTarget: 0x70069
15148
15249[shader ("raygeneration" )]
153- void rg_barrier_reorder_in_call () {
154- fn_barrier_reorder ();
50+ void rg_barrier_reorder_in_call2 () {
51+ fn_barrier_reorder2 ();
15552 BAB.Store (0 , 0 );
15653}
0 commit comments