tools: Return position from generated vertex shaders

This is required to generate valid MSL code, and will soon be
validated by Tint too.

Change-Id: I4c5f5c4ecb1c91131c934de1132217d9f6be1f8e
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/53420
Auto-Submit: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
This commit is contained in:
James Price 2021-06-04 17:31:48 +00:00 committed by Tint LUCI CQ
parent 6b22219798
commit 9fd3befa17
2923 changed files with 32447 additions and 16304 deletions

View File

@ -27,8 +27,9 @@ fn abs_002533() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_002533(); abs_002533();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_002533() { void abs_002533() {
float4 res = abs(float4(0.0f, 0.0f, 0.0f, 0.0f)); float4 res = abs(float4(0.0f, 0.0f, 0.0f, 0.0f));
} }
void vertex_main() { tint_symbol vertex_main() {
abs_002533(); abs_002533();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_002533() { void abs_002533() {
float4 res = fabs(float4()); float4 res = fabs(float4());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
abs_002533(); abs_002533();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,53 +1,67 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 25 ; Bound: 32
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450" %14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_002533 "abs_002533" OpName %abs_002533 "abs_002533"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%void = OpTypeVoid
%5 = OpTypeFunction %void
%v4float = OpTypeVector %float 4 %v4float = OpTypeVector %float 4
%12 = OpConstantNull %v4float %_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float %_ptr_Function_v4float = OpTypePointer Function %v4float
%17 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%abs_002533 = OpFunction %void None %5 %abs_002533 = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_v4float Function %12 %res = OpVariable %_ptr_Function_v4float Function %8
%9 = OpExtInst %v4float %11 FAbs %12 %13 = OpExtInst %v4float %14 FAbs %8
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %17
%16 = OpLabel %tint_symbol = OpFunctionParameter %v4float
OpStore %tint_pointsize %float_1
%18 = OpFunctionCall %void %abs_002533
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%20 = OpLabel %20 = OpLabel
%21 = OpFunctionCall %void %abs_002533 OpStore %tint_symbol_1 %tint_symbol
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %vertex_main = OpFunction %void None %9
%23 = OpLabel %22 = OpLabel
OpStore %tint_pointsize %float_1
%24 = OpFunctionCall %void %abs_002533 %24 = OpFunctionCall %void %abs_002533
%25 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
%27 = OpLabel
%28 = OpFunctionCall %void %abs_002533
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %abs_002533
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_002533() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_002533(); abs_002533();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_005174() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_005174(); abs_005174();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_005174() { void abs_005174() {
float3 res = abs(float3(0.0f, 0.0f, 0.0f)); float3 res = abs(float3(0.0f, 0.0f, 0.0f));
} }
void vertex_main() { tint_symbol vertex_main() {
abs_005174(); abs_005174();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_005174() { void abs_005174() {
float3 res = fabs(float3()); float3 res = fabs(float3());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
abs_005174(); abs_005174();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,53 +1,69 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 25 ; Bound: 34
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450" %15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_005174 "abs_005174" OpName %abs_005174 "abs_005174"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3 %v3float = OpTypeVector %float 3
%12 = OpConstantNull %v3float %16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float %_ptr_Function_v3float = OpTypePointer Function %v3float
%19 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%abs_005174 = OpFunction %void None %5 %abs_005174 = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_v3float Function %12 %res = OpVariable %_ptr_Function_v3float Function %16
%9 = OpExtInst %v3float %11 FAbs %12 %13 = OpExtInst %v3float %15 FAbs %16
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %19
%16 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%22 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%18 = OpFunctionCall %void %abs_005174 %26 = OpFunctionCall %void %abs_005174
%27 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%20 = OpLabel %29 = OpLabel
%21 = OpFunctionCall %void %abs_005174 %30 = OpFunctionCall %void %abs_005174
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%23 = OpLabel %32 = OpLabel
%24 = OpFunctionCall %void %abs_005174 %33 = OpFunctionCall %void %abs_005174
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_005174() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_005174(); abs_005174();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_1ce782() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_1ce782(); abs_1ce782();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_1ce782() { void abs_1ce782() {
uint4 res = abs(uint4(0u, 0u, 0u, 0u)); uint4 res = abs(uint4(0u, 0u, 0u, 0u));
} }
void vertex_main() { tint_symbol vertex_main() {
abs_1ce782(); abs_1ce782();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_1ce782() { void abs_1ce782() {
uint4 res = abs(uint4()); uint4 res = abs(uint4());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
abs_1ce782(); abs_1ce782();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 26 ; Bound: 35
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%12 = OpExtInstImport "GLSL.std.450" %16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_1ce782 "abs_1ce782" OpName %abs_1ce782 "abs_1ce782"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%uint = OpTypeInt 32 0 %uint = OpTypeInt 32 0
%v4uint = OpTypeVector %uint 4 %v4uint = OpTypeVector %uint 4
%13 = OpConstantNull %v4uint %17 = OpConstantNull %v4uint
%_ptr_Function_v4uint = OpTypePointer Function %v4uint %_ptr_Function_v4uint = OpTypePointer Function %v4uint
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%abs_1ce782 = OpFunction %void None %5 %abs_1ce782 = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %13 %res = OpVariable %_ptr_Function_v4uint Function %17
%9 = OpExtInst %v4uint %12 SAbs %13 %13 = OpExtInst %v4uint %16 SAbs %17
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %20
%17 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_1ce782 %27 = OpFunctionCall %void %abs_1ce782
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%21 = OpLabel %30 = OpLabel
%22 = OpFunctionCall %void %abs_1ce782 %31 = OpFunctionCall %void %abs_1ce782
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%24 = OpLabel %33 = OpLabel
%25 = OpFunctionCall %void %abs_1ce782 %34 = OpFunctionCall %void %abs_1ce782
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_1ce782() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_1ce782(); abs_1ce782();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_1e9d53() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_1e9d53(); abs_1e9d53();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_1e9d53() { void abs_1e9d53() {
float2 res = abs(float2(0.0f, 0.0f)); float2 res = abs(float2(0.0f, 0.0f));
} }
void vertex_main() { tint_symbol vertex_main() {
abs_1e9d53(); abs_1e9d53();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_1e9d53() { void abs_1e9d53() {
float2 res = fabs(float2()); float2 res = fabs(float2());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
abs_1e9d53(); abs_1e9d53();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,53 +1,69 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 25 ; Bound: 34
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450" %15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_1e9d53 "abs_1e9d53" OpName %abs_1e9d53 "abs_1e9d53"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2 %v2float = OpTypeVector %float 2
%12 = OpConstantNull %v2float %16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float %_ptr_Function_v2float = OpTypePointer Function %v2float
%19 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%abs_1e9d53 = OpFunction %void None %5 %abs_1e9d53 = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_v2float Function %12 %res = OpVariable %_ptr_Function_v2float Function %16
%9 = OpExtInst %v2float %11 FAbs %12 %13 = OpExtInst %v2float %15 FAbs %16
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %19
%16 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%22 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%18 = OpFunctionCall %void %abs_1e9d53 %26 = OpFunctionCall %void %abs_1e9d53
%27 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%20 = OpLabel %29 = OpLabel
%21 = OpFunctionCall %void %abs_1e9d53 %30 = OpFunctionCall %void %abs_1e9d53
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%23 = OpLabel %32 = OpLabel
%24 = OpFunctionCall %void %abs_1e9d53 %33 = OpFunctionCall %void %abs_1e9d53
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_1e9d53() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_1e9d53(); abs_1e9d53();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_467cd1() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_467cd1(); abs_467cd1();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_467cd1() { void abs_467cd1() {
uint res = abs(1u); uint res = abs(1u);
} }
void vertex_main() { tint_symbol vertex_main() {
abs_467cd1(); abs_467cd1();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_467cd1() { void abs_467cd1() {
uint res = abs(1u); uint res = abs(1u);
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
abs_467cd1(); abs_467cd1();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 26 ; Bound: 35
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450" %15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_467cd1 "abs_467cd1" OpName %abs_467cd1 "abs_467cd1"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%uint = OpTypeInt 32 0 %uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1 %uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint %_ptr_Function_uint = OpTypePointer Function %uint
%15 = OpConstantNull %uint %19 = OpConstantNull %uint
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%abs_467cd1 = OpFunction %void None %5 %abs_467cd1 = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_uint Function %15 %res = OpVariable %_ptr_Function_uint Function %19
%9 = OpExtInst %uint %11 SAbs %uint_1 %13 = OpExtInst %uint %15 SAbs %uint_1
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %20
%17 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_467cd1 %27 = OpFunctionCall %void %abs_467cd1
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%21 = OpLabel %30 = OpLabel
%22 = OpFunctionCall %void %abs_467cd1 %31 = OpFunctionCall %void %abs_467cd1
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%24 = OpLabel %33 = OpLabel
%25 = OpFunctionCall %void %abs_467cd1 %34 = OpFunctionCall %void %abs_467cd1
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_467cd1() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_467cd1(); abs_467cd1();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_4ad288() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_4ad288(); abs_4ad288();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_4ad288() { void abs_4ad288() {
int res = abs(1); int res = abs(1);
} }
void vertex_main() { tint_symbol vertex_main() {
abs_4ad288(); abs_4ad288();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_4ad288() { void abs_4ad288() {
int res = abs(1); int res = abs(1);
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
abs_4ad288(); abs_4ad288();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 26 ; Bound: 35
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450" %15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_4ad288 "abs_4ad288" OpName %abs_4ad288 "abs_4ad288"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%int = OpTypeInt 32 1 %int = OpTypeInt 32 1
%int_1 = OpConstant %int 1 %int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int %_ptr_Function_int = OpTypePointer Function %int
%15 = OpConstantNull %int %19 = OpConstantNull %int
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%abs_4ad288 = OpFunction %void None %5 %abs_4ad288 = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_int Function %15 %res = OpVariable %_ptr_Function_int Function %19
%9 = OpExtInst %int %11 SAbs %int_1 %13 = OpExtInst %int %15 SAbs %int_1
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %20
%17 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_4ad288 %27 = OpFunctionCall %void %abs_4ad288
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%21 = OpLabel %30 = OpLabel
%22 = OpFunctionCall %void %abs_4ad288 %31 = OpFunctionCall %void %abs_4ad288
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%24 = OpLabel %33 = OpLabel
%25 = OpFunctionCall %void %abs_4ad288 %34 = OpFunctionCall %void %abs_4ad288
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_4ad288() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_4ad288(); abs_4ad288();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_5ad50a() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_5ad50a(); abs_5ad50a();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_5ad50a() { void abs_5ad50a() {
int3 res = abs(int3(0, 0, 0)); int3 res = abs(int3(0, 0, 0));
} }
void vertex_main() { tint_symbol vertex_main() {
abs_5ad50a(); abs_5ad50a();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_5ad50a() { void abs_5ad50a() {
int3 res = abs(int3()); int3 res = abs(int3());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
abs_5ad50a(); abs_5ad50a();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 26 ; Bound: 35
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%12 = OpExtInstImport "GLSL.std.450" %16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_5ad50a "abs_5ad50a" OpName %abs_5ad50a "abs_5ad50a"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%int = OpTypeInt 32 1 %int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3 %v3int = OpTypeVector %int 3
%13 = OpConstantNull %v3int %17 = OpConstantNull %v3int
%_ptr_Function_v3int = OpTypePointer Function %v3int %_ptr_Function_v3int = OpTypePointer Function %v3int
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%abs_5ad50a = OpFunction %void None %5 %abs_5ad50a = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %13 %res = OpVariable %_ptr_Function_v3int Function %17
%9 = OpExtInst %v3int %12 SAbs %13 %13 = OpExtInst %v3int %16 SAbs %17
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %20
%17 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_5ad50a %27 = OpFunctionCall %void %abs_5ad50a
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%21 = OpLabel %30 = OpLabel
%22 = OpFunctionCall %void %abs_5ad50a %31 = OpFunctionCall %void %abs_5ad50a
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%24 = OpLabel %33 = OpLabel
%25 = OpFunctionCall %void %abs_5ad50a %34 = OpFunctionCall %void %abs_5ad50a
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_5ad50a() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_5ad50a(); abs_5ad50a();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_7326de() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_7326de(); abs_7326de();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_7326de() { void abs_7326de() {
uint3 res = abs(uint3(0u, 0u, 0u)); uint3 res = abs(uint3(0u, 0u, 0u));
} }
void vertex_main() { tint_symbol vertex_main() {
abs_7326de(); abs_7326de();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_7326de() { void abs_7326de() {
uint3 res = abs(uint3()); uint3 res = abs(uint3());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
abs_7326de(); abs_7326de();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 26 ; Bound: 35
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%12 = OpExtInstImport "GLSL.std.450" %16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_7326de "abs_7326de" OpName %abs_7326de "abs_7326de"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%uint = OpTypeInt 32 0 %uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3 %v3uint = OpTypeVector %uint 3
%13 = OpConstantNull %v3uint %17 = OpConstantNull %v3uint
%_ptr_Function_v3uint = OpTypePointer Function %v3uint %_ptr_Function_v3uint = OpTypePointer Function %v3uint
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%abs_7326de = OpFunction %void None %5 %abs_7326de = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_v3uint Function %13 %res = OpVariable %_ptr_Function_v3uint Function %17
%9 = OpExtInst %v3uint %12 SAbs %13 %13 = OpExtInst %v3uint %16 SAbs %17
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %20
%17 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_7326de %27 = OpFunctionCall %void %abs_7326de
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%21 = OpLabel %30 = OpLabel
%22 = OpFunctionCall %void %abs_7326de %31 = OpFunctionCall %void %abs_7326de
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%24 = OpLabel %33 = OpLabel
%25 = OpFunctionCall %void %abs_7326de %34 = OpFunctionCall %void %abs_7326de
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_7326de() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_7326de(); abs_7326de();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_7f28e6() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_7f28e6(); abs_7f28e6();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_7f28e6() { void abs_7f28e6() {
uint2 res = abs(uint2(0u, 0u)); uint2 res = abs(uint2(0u, 0u));
} }
void vertex_main() { tint_symbol vertex_main() {
abs_7f28e6(); abs_7f28e6();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_7f28e6() { void abs_7f28e6() {
uint2 res = abs(uint2()); uint2 res = abs(uint2());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
abs_7f28e6(); abs_7f28e6();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 26 ; Bound: 35
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%12 = OpExtInstImport "GLSL.std.450" %16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_7f28e6 "abs_7f28e6" OpName %abs_7f28e6 "abs_7f28e6"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%uint = OpTypeInt 32 0 %uint = OpTypeInt 32 0
%v2uint = OpTypeVector %uint 2 %v2uint = OpTypeVector %uint 2
%13 = OpConstantNull %v2uint %17 = OpConstantNull %v2uint
%_ptr_Function_v2uint = OpTypePointer Function %v2uint %_ptr_Function_v2uint = OpTypePointer Function %v2uint
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%abs_7f28e6 = OpFunction %void None %5 %abs_7f28e6 = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_v2uint Function %13 %res = OpVariable %_ptr_Function_v2uint Function %17
%9 = OpExtInst %v2uint %12 SAbs %13 %13 = OpExtInst %v2uint %16 SAbs %17
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %20
%17 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_7f28e6 %27 = OpFunctionCall %void %abs_7f28e6
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%21 = OpLabel %30 = OpLabel
%22 = OpFunctionCall %void %abs_7f28e6 %31 = OpFunctionCall %void %abs_7f28e6
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%24 = OpLabel %33 = OpLabel
%25 = OpFunctionCall %void %abs_7f28e6 %34 = OpFunctionCall %void %abs_7f28e6
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_7f28e6() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_7f28e6(); abs_7f28e6();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_7faa9e() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_7faa9e(); abs_7faa9e();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_7faa9e() { void abs_7faa9e() {
int2 res = abs(int2(0, 0)); int2 res = abs(int2(0, 0));
} }
void vertex_main() { tint_symbol vertex_main() {
abs_7faa9e(); abs_7faa9e();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_7faa9e() { void abs_7faa9e() {
int2 res = abs(int2()); int2 res = abs(int2());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
abs_7faa9e(); abs_7faa9e();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 26 ; Bound: 35
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%12 = OpExtInstImport "GLSL.std.450" %16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_7faa9e "abs_7faa9e" OpName %abs_7faa9e "abs_7faa9e"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%int = OpTypeInt 32 1 %int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2 %v2int = OpTypeVector %int 2
%13 = OpConstantNull %v2int %17 = OpConstantNull %v2int
%_ptr_Function_v2int = OpTypePointer Function %v2int %_ptr_Function_v2int = OpTypePointer Function %v2int
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%abs_7faa9e = OpFunction %void None %5 %abs_7faa9e = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %13 %res = OpVariable %_ptr_Function_v2int Function %17
%9 = OpExtInst %v2int %12 SAbs %13 %13 = OpExtInst %v2int %16 SAbs %17
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %20
%17 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_7faa9e %27 = OpFunctionCall %void %abs_7faa9e
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%21 = OpLabel %30 = OpLabel
%22 = OpFunctionCall %void %abs_7faa9e %31 = OpFunctionCall %void %abs_7faa9e
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%24 = OpLabel %33 = OpLabel
%25 = OpFunctionCall %void %abs_7faa9e %34 = OpFunctionCall %void %abs_7faa9e
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_7faa9e() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_7faa9e(); abs_7faa9e();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_9c80a6() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_9c80a6(); abs_9c80a6();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_9c80a6() { void abs_9c80a6() {
int4 res = abs(int4(0, 0, 0, 0)); int4 res = abs(int4(0, 0, 0, 0));
} }
void vertex_main() { tint_symbol vertex_main() {
abs_9c80a6(); abs_9c80a6();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_9c80a6() { void abs_9c80a6() {
int4 res = abs(int4()); int4 res = abs(int4());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
abs_9c80a6(); abs_9c80a6();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 26 ; Bound: 35
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%12 = OpExtInstImport "GLSL.std.450" %16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_9c80a6 "abs_9c80a6" OpName %abs_9c80a6 "abs_9c80a6"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%int = OpTypeInt 32 1 %int = OpTypeInt 32 1
%v4int = OpTypeVector %int 4 %v4int = OpTypeVector %int 4
%13 = OpConstantNull %v4int %17 = OpConstantNull %v4int
%_ptr_Function_v4int = OpTypePointer Function %v4int %_ptr_Function_v4int = OpTypePointer Function %v4int
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%abs_9c80a6 = OpFunction %void None %5 %abs_9c80a6 = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %13 %res = OpVariable %_ptr_Function_v4int Function %17
%9 = OpExtInst %v4int %12 SAbs %13 %13 = OpExtInst %v4int %16 SAbs %17
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %20
%17 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_9c80a6 %27 = OpFunctionCall %void %abs_9c80a6
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%21 = OpLabel %30 = OpLabel
%22 = OpFunctionCall %void %abs_9c80a6 %31 = OpFunctionCall %void %abs_9c80a6
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%24 = OpLabel %33 = OpLabel
%25 = OpFunctionCall %void %abs_9c80a6 %34 = OpFunctionCall %void %abs_9c80a6
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_9c80a6() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_9c80a6(); abs_9c80a6();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_b96037() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_b96037(); abs_b96037();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_b96037() { void abs_b96037() {
float res = abs(1.0f); float res = abs(1.0f);
} }
void vertex_main() { tint_symbol vertex_main() {
abs_b96037(); abs_b96037();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_b96037() { void abs_b96037() {
float res = fabs(1.0f); float res = fabs(1.0f);
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
abs_b96037(); abs_b96037();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,51 +1,67 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 23 ; Bound: 32
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%10 = OpExtInstImport "GLSL.std.450" %14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_b96037 "abs_b96037" OpName %abs_b96037 "abs_b96037"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float %_ptr_Function_float = OpTypePointer Function %float
%abs_b96037 = OpFunction %void None %5 %18 = OpTypeFunction %void %v4float
%8 = OpLabel %abs_b96037 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_float Function %4 %res = OpVariable %_ptr_Function_float Function %4
%9 = OpExtInst %float %10 FAbs %float_1 %13 = OpExtInst %float %14 FAbs %float_1
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %18
%15 = OpLabel %tint_symbol = OpFunctionParameter %v4float
OpStore %tint_pointsize %float_1
%16 = OpFunctionCall %void %abs_b96037
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%18 = OpLabel
%19 = OpFunctionCall %void %abs_b96037
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%21 = OpLabel %21 = OpLabel
%22 = OpFunctionCall %void %abs_b96037 OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
OpStore %tint_pointsize %float_1
%24 = OpFunctionCall %void %abs_b96037
%25 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
%27 = OpLabel
%28 = OpFunctionCall %void %abs_b96037
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %abs_b96037
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_b96037() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_b96037(); abs_b96037();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn acos_489247() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_489247(); acos_489247();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void acos_489247() { void acos_489247() {
float res = acos(1.0f); float res = acos(1.0f);
} }
void vertex_main() { tint_symbol vertex_main() {
acos_489247(); acos_489247();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void acos_489247() { void acos_489247() {
float res = acos(1.0f); float res = acos(1.0f);
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
acos_489247(); acos_489247();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,51 +1,67 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 23 ; Bound: 32
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%10 = OpExtInstImport "GLSL.std.450" %14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %acos_489247 "acos_489247" OpName %acos_489247 "acos_489247"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float %_ptr_Function_float = OpTypePointer Function %float
%acos_489247 = OpFunction %void None %5 %18 = OpTypeFunction %void %v4float
%8 = OpLabel %acos_489247 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_float Function %4 %res = OpVariable %_ptr_Function_float Function %4
%9 = OpExtInst %float %10 Acos %float_1 %13 = OpExtInst %float %14 Acos %float_1
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %18
%15 = OpLabel %tint_symbol = OpFunctionParameter %v4float
OpStore %tint_pointsize %float_1
%16 = OpFunctionCall %void %acos_489247
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%18 = OpLabel
%19 = OpFunctionCall %void %acos_489247
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%21 = OpLabel %21 = OpLabel
%22 = OpFunctionCall %void %acos_489247 OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
OpStore %tint_pointsize %float_1
%24 = OpFunctionCall %void %acos_489247
%25 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
%27 = OpLabel
%28 = OpFunctionCall %void %acos_489247
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %acos_489247
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn acos_489247() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_489247(); acos_489247();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn acos_8e2acf() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_8e2acf(); acos_8e2acf();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void acos_8e2acf() { void acos_8e2acf() {
float4 res = acos(float4(0.0f, 0.0f, 0.0f, 0.0f)); float4 res = acos(float4(0.0f, 0.0f, 0.0f, 0.0f));
} }
void vertex_main() { tint_symbol vertex_main() {
acos_8e2acf(); acos_8e2acf();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void acos_8e2acf() { void acos_8e2acf() {
float4 res = acos(float4()); float4 res = acos(float4());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
acos_8e2acf(); acos_8e2acf();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,53 +1,67 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 25 ; Bound: 32
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450" %14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %acos_8e2acf "acos_8e2acf" OpName %acos_8e2acf "acos_8e2acf"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%void = OpTypeVoid
%5 = OpTypeFunction %void
%v4float = OpTypeVector %float 4 %v4float = OpTypeVector %float 4
%12 = OpConstantNull %v4float %_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float %_ptr_Function_v4float = OpTypePointer Function %v4float
%17 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%acos_8e2acf = OpFunction %void None %5 %acos_8e2acf = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_v4float Function %12 %res = OpVariable %_ptr_Function_v4float Function %8
%9 = OpExtInst %v4float %11 Acos %12 %13 = OpExtInst %v4float %14 Acos %8
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %17
%16 = OpLabel %tint_symbol = OpFunctionParameter %v4float
OpStore %tint_pointsize %float_1
%18 = OpFunctionCall %void %acos_8e2acf
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%20 = OpLabel %20 = OpLabel
%21 = OpFunctionCall %void %acos_8e2acf OpStore %tint_symbol_1 %tint_symbol
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %vertex_main = OpFunction %void None %9
%23 = OpLabel %22 = OpLabel
OpStore %tint_pointsize %float_1
%24 = OpFunctionCall %void %acos_8e2acf %24 = OpFunctionCall %void %acos_8e2acf
%25 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
%27 = OpLabel
%28 = OpFunctionCall %void %acos_8e2acf
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %acos_8e2acf
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn acos_8e2acf() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_8e2acf(); acos_8e2acf();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn acos_a610c4() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_a610c4(); acos_a610c4();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void acos_a610c4() { void acos_a610c4() {
float3 res = acos(float3(0.0f, 0.0f, 0.0f)); float3 res = acos(float3(0.0f, 0.0f, 0.0f));
} }
void vertex_main() { tint_symbol vertex_main() {
acos_a610c4(); acos_a610c4();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void acos_a610c4() { void acos_a610c4() {
float3 res = acos(float3()); float3 res = acos(float3());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
acos_a610c4(); acos_a610c4();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,53 +1,69 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 25 ; Bound: 34
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450" %15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %acos_a610c4 "acos_a610c4" OpName %acos_a610c4 "acos_a610c4"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3 %v3float = OpTypeVector %float 3
%12 = OpConstantNull %v3float %16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float %_ptr_Function_v3float = OpTypePointer Function %v3float
%19 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%acos_a610c4 = OpFunction %void None %5 %acos_a610c4 = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_v3float Function %12 %res = OpVariable %_ptr_Function_v3float Function %16
%9 = OpExtInst %v3float %11 Acos %12 %13 = OpExtInst %v3float %15 Acos %16
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %19
%16 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%22 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%18 = OpFunctionCall %void %acos_a610c4 %26 = OpFunctionCall %void %acos_a610c4
%27 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%20 = OpLabel %29 = OpLabel
%21 = OpFunctionCall %void %acos_a610c4 %30 = OpFunctionCall %void %acos_a610c4
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%23 = OpLabel %32 = OpLabel
%24 = OpFunctionCall %void %acos_a610c4 %33 = OpFunctionCall %void %acos_a610c4
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn acos_a610c4() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_a610c4(); acos_a610c4();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn acos_dfc915() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_dfc915(); acos_dfc915();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void acos_dfc915() { void acos_dfc915() {
float2 res = acos(float2(0.0f, 0.0f)); float2 res = acos(float2(0.0f, 0.0f));
} }
void vertex_main() { tint_symbol vertex_main() {
acos_dfc915(); acos_dfc915();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void acos_dfc915() { void acos_dfc915() {
float2 res = acos(float2()); float2 res = acos(float2());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
acos_dfc915(); acos_dfc915();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,53 +1,69 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 25 ; Bound: 34
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450" %15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %acos_dfc915 "acos_dfc915" OpName %acos_dfc915 "acos_dfc915"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2 %v2float = OpTypeVector %float 2
%12 = OpConstantNull %v2float %16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float %_ptr_Function_v2float = OpTypePointer Function %v2float
%19 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%acos_dfc915 = OpFunction %void None %5 %acos_dfc915 = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_v2float Function %12 %res = OpVariable %_ptr_Function_v2float Function %16
%9 = OpExtInst %v2float %11 Acos %12 %13 = OpExtInst %v2float %15 Acos %16
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %19
%16 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%22 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%18 = OpFunctionCall %void %acos_dfc915 %26 = OpFunctionCall %void %acos_dfc915
%27 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%20 = OpLabel %29 = OpLabel
%21 = OpFunctionCall %void %acos_dfc915 %30 = OpFunctionCall %void %acos_dfc915
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%23 = OpLabel %32 = OpLabel
%24 = OpFunctionCall %void %acos_dfc915 %33 = OpFunctionCall %void %acos_dfc915
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn acos_dfc915() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_dfc915(); acos_dfc915();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn all_986c7b() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
all_986c7b(); all_986c7b();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void all_986c7b() { void all_986c7b() {
bool res = all(vector<bool, 4>(false, false, false, false)); bool res = all(vector<bool, 4>(false, false, false, false));
} }
void vertex_main() { tint_symbol vertex_main() {
all_986c7b(); all_986c7b();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void all_986c7b() { void all_986c7b() {
bool res = all(bool4()); bool res = all(bool4());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
all_986c7b(); all_986c7b();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 26 ; Bound: 35
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %all_986c7b "all_986c7b" OpName %all_986c7b "all_986c7b"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%bool = OpTypeBool %bool = OpTypeBool
%v4bool = OpTypeVector %bool 4 %v4bool = OpTypeVector %bool 4
%12 = OpConstantNull %v4bool %16 = OpConstantNull %v4bool
%_ptr_Function_bool = OpTypePointer Function %bool %_ptr_Function_bool = OpTypePointer Function %bool
%15 = OpConstantNull %bool %19 = OpConstantNull %bool
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%all_986c7b = OpFunction %void None %5 %all_986c7b = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %15 %res = OpVariable %_ptr_Function_bool Function %19
%9 = OpAll %bool %12 %13 = OpAll %bool %16
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %20
%17 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %all_986c7b %27 = OpFunctionCall %void %all_986c7b
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%21 = OpLabel %30 = OpLabel
%22 = OpFunctionCall %void %all_986c7b %31 = OpFunctionCall %void %all_986c7b
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%24 = OpLabel %33 = OpLabel
%25 = OpFunctionCall %void %all_986c7b %34 = OpFunctionCall %void %all_986c7b
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn all_986c7b() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
all_986c7b(); all_986c7b();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn all_bd2dba() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
all_bd2dba(); all_bd2dba();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void all_bd2dba() { void all_bd2dba() {
bool res = all(vector<bool, 3>(false, false, false)); bool res = all(vector<bool, 3>(false, false, false));
} }
void vertex_main() { tint_symbol vertex_main() {
all_bd2dba(); all_bd2dba();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void all_bd2dba() { void all_bd2dba() {
bool res = all(bool3()); bool res = all(bool3());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
all_bd2dba(); all_bd2dba();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 26 ; Bound: 35
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %all_bd2dba "all_bd2dba" OpName %all_bd2dba "all_bd2dba"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%bool = OpTypeBool %bool = OpTypeBool
%v3bool = OpTypeVector %bool 3 %v3bool = OpTypeVector %bool 3
%12 = OpConstantNull %v3bool %16 = OpConstantNull %v3bool
%_ptr_Function_bool = OpTypePointer Function %bool %_ptr_Function_bool = OpTypePointer Function %bool
%15 = OpConstantNull %bool %19 = OpConstantNull %bool
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%all_bd2dba = OpFunction %void None %5 %all_bd2dba = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %15 %res = OpVariable %_ptr_Function_bool Function %19
%9 = OpAll %bool %12 %13 = OpAll %bool %16
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %20
%17 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %all_bd2dba %27 = OpFunctionCall %void %all_bd2dba
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%21 = OpLabel %30 = OpLabel
%22 = OpFunctionCall %void %all_bd2dba %31 = OpFunctionCall %void %all_bd2dba
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%24 = OpLabel %33 = OpLabel
%25 = OpFunctionCall %void %all_bd2dba %34 = OpFunctionCall %void %all_bd2dba
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn all_bd2dba() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
all_bd2dba(); all_bd2dba();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn all_f46790() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
all_f46790(); all_f46790();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void all_f46790() { void all_f46790() {
bool res = all(vector<bool, 2>(false, false)); bool res = all(vector<bool, 2>(false, false));
} }
void vertex_main() { tint_symbol vertex_main() {
all_f46790(); all_f46790();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void all_f46790() { void all_f46790() {
bool res = all(bool2()); bool res = all(bool2());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
all_f46790(); all_f46790();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 26 ; Bound: 35
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %all_f46790 "all_f46790" OpName %all_f46790 "all_f46790"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%bool = OpTypeBool %bool = OpTypeBool
%v2bool = OpTypeVector %bool 2 %v2bool = OpTypeVector %bool 2
%12 = OpConstantNull %v2bool %16 = OpConstantNull %v2bool
%_ptr_Function_bool = OpTypePointer Function %bool %_ptr_Function_bool = OpTypePointer Function %bool
%15 = OpConstantNull %bool %19 = OpConstantNull %bool
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%all_f46790 = OpFunction %void None %5 %all_f46790 = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %15 %res = OpVariable %_ptr_Function_bool Function %19
%9 = OpAll %bool %12 %13 = OpAll %bool %16
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %20
%17 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %all_f46790 %27 = OpFunctionCall %void %all_f46790
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%21 = OpLabel %30 = OpLabel
%22 = OpFunctionCall %void %all_f46790 %31 = OpFunctionCall %void %all_f46790
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%24 = OpLabel %33 = OpLabel
%25 = OpFunctionCall %void %all_f46790 %34 = OpFunctionCall %void %all_f46790
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn all_f46790() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
all_f46790(); all_f46790();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn any_083428() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
any_083428(); any_083428();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void any_083428() { void any_083428() {
bool res = any(vector<bool, 4>(false, false, false, false)); bool res = any(vector<bool, 4>(false, false, false, false));
} }
void vertex_main() { tint_symbol vertex_main() {
any_083428(); any_083428();
return; const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
} }
void fragment_main() { void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib> #include <metal_stdlib>
using namespace metal; using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void any_083428() { void any_083428() {
bool res = any(bool4()); bool res = any(bool4());
} }
vertex void vertex_main() { vertex tint_symbol vertex_main() {
any_083428(); any_083428();
return; tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
} }
fragment void fragment_main() { fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V ; SPIR-V
; Version: 1.3 ; Version: 1.3
; Generator: Google Tint Compiler; 0 ; Generator: Google Tint Compiler; 0
; Bound: 26 ; Bound: 35
; Schema: 0 ; Schema: 0
OpCapability Shader OpCapability Shader
OpMemoryModel Logical GLSL450 OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main" OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main" OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1 OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize" OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %any_083428 "any_083428" OpName %any_083428 "any_083428"
OpName %res "res" OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main" OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main" OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main" OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32 %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float %_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4 %tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid %void = OpTypeVoid
%5 = OpTypeFunction %void %9 = OpTypeFunction %void
%bool = OpTypeBool %bool = OpTypeBool
%v4bool = OpTypeVector %bool 4 %v4bool = OpTypeVector %bool 4
%12 = OpConstantNull %v4bool %16 = OpConstantNull %v4bool
%_ptr_Function_bool = OpTypePointer Function %bool %_ptr_Function_bool = OpTypePointer Function %bool
%15 = OpConstantNull %bool %19 = OpConstantNull %bool
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1 %float_1 = OpConstant %float 1
%any_083428 = OpFunction %void None %5 %any_083428 = OpFunction %void None %9
%8 = OpLabel %12 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %15 %res = OpVariable %_ptr_Function_bool Function %19
%9 = OpAny %bool %12 %13 = OpAny %bool %16
OpStore %res %9 OpStore %res %13
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%vertex_main = OpFunction %void None %5 %tint_symbol_2 = OpFunction %void None %20
%17 = OpLabel %tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1 OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %any_083428 %27 = OpFunctionCall %void %any_083428
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%fragment_main = OpFunction %void None %5 %fragment_main = OpFunction %void None %9
%21 = OpLabel %30 = OpLabel
%22 = OpFunctionCall %void %any_083428 %31 = OpFunctionCall %void %any_083428
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd
%compute_main = OpFunction %void None %5 %compute_main = OpFunction %void None %9
%24 = OpLabel %33 = OpLabel
%25 = OpFunctionCall %void %any_083428 %34 = OpFunctionCall %void %any_083428
OpReturn OpReturn
OpFunctionEnd OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn any_083428() {
} }
[[stage(vertex)]] [[stage(vertex)]]
fn vertex_main() { fn vertex_main() -> [[builtin(position)]] vec4<f32> {
any_083428(); any_083428();
return vec4<f32>();
} }
[[stage(fragment)]] [[stage(fragment)]]

Some files were not shown because too many files have changed in this diff Show More