dawn-cmake/test/bug/tint/1086.wgsl.expected.spvasm
James Price 5c61d6d12c msl: Fold &* when converting module-scope vars
This transform was previously converting this code:
```
var<private> v : f32;
fn foo() {
  bar(&v);
}
```

into this:
```
fn foo(vp : ptr<private, f32>) {
  bar(&*vp); // Invalid, since ptr args must be &ident
}
```

Fixed: tint:1086
Change-Id: Ic9efafa219c89a11a4d6e1d11fc69b3c0b9a5464
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/60520
Kokoro: Kokoro <noreply+kokoro@google.com>
Auto-Submit: James Price <jrprice@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2021-08-04 19:18:38 +00:00

39 lines
1.2 KiB
Plaintext

; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 20
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint Fragment %f "f"
OpExecutionMode %f OriginUpperLeft
OpName %v "v"
OpName %x "x"
OpName %p "p"
OpName %g "g"
OpName %f "f"
%float = OpTypeFloat 32
%_ptr_Private_float = OpTypePointer Private %float
%4 = OpConstantNull %float
%v = OpVariable %_ptr_Private_float Private %4
%void = OpTypeVoid
%5 = OpTypeFunction %void %_ptr_Private_float
%float_0 = OpConstant %float 0
%12 = OpTypeFunction %void
%x = OpFunction %void None %5
%p = OpFunctionParameter %_ptr_Private_float
%9 = OpLabel
OpStore %p %float_0
OpReturn
OpFunctionEnd
%g = OpFunction %void None %12
%14 = OpLabel
%15 = OpFunctionCall %void %x %v
OpReturn
OpFunctionEnd
%f = OpFunction %void None %12
%18 = OpLabel
%19 = OpFunctionCall %void %g
OpReturn
OpFunctionEnd