mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-07-08 22:26:06 +00:00
For logical binary expressions that can be short-circuited, if the rhs tree contained a mix of constant and runtime expressions, we would erroneously mark the node as runtime, although some of its children were resolved as kNotEvaluated. This would then fail during backend generation. This is a fork of 115820, addressing review comments, as amaiorano is OOO this week. Bug: chromium:1403752 Bug: tint:1581 Change-Id: I18682c7fe1db092d280390881ff86b3c0db23e9b Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/116020 Commit-Queue: Ben Clayton <bclayton@google.com> Reviewed-by: James Price <jrprice@google.com> Kokoro: Kokoro <noreply+kokoro@google.com> Auto-Submit: Ben Clayton <bclayton@google.com>
43 lines
1.3 KiB
Plaintext
43 lines
1.3 KiB
Plaintext
; SPIR-V
|
|
; Version: 1.3
|
|
; Generator: Google Tint Compiler; 0
|
|
; Bound: 19
|
|
; Schema: 0
|
|
OpCapability Shader
|
|
OpMemoryModel Logical GLSL450
|
|
OpEntryPoint GLCompute %unused_entry_point "unused_entry_point"
|
|
OpExecutionMode %unused_entry_point LocalSize 1 1 1
|
|
OpName %unused_entry_point "unused_entry_point"
|
|
OpName %d "d"
|
|
OpName %j "j"
|
|
%void = OpTypeVoid
|
|
%1 = OpTypeFunction %void
|
|
%int = OpTypeInt 32 1
|
|
%_ptr_Function_int = OpTypePointer Function %int
|
|
%10 = OpConstantNull %int
|
|
%bool = OpTypeBool
|
|
%true = OpConstantTrue %bool
|
|
%unused_entry_point = OpFunction %void None %1
|
|
%4 = OpLabel
|
|
OpReturn
|
|
OpFunctionEnd
|
|
%d = OpFunction %void None %1
|
|
%6 = OpLabel
|
|
%j = OpVariable %_ptr_Function_int Function %10
|
|
OpBranch %11
|
|
%11 = OpLabel
|
|
OpLoopMerge %12 %13 None
|
|
OpBranch %14
|
|
%14 = OpLabel
|
|
OpSelectionMerge %17 None
|
|
OpBranchConditional %true %18 %17
|
|
%18 = OpLabel
|
|
OpBranch %12
|
|
%17 = OpLabel
|
|
OpBranch %13
|
|
%13 = OpLabel
|
|
OpBranch %11
|
|
%12 = OpLabel
|
|
OpReturn
|
|
OpFunctionEnd
|