From efce5edec7fbc6bd29be66484be7284df2414f00 Mon Sep 17 00:00:00 2001 From: Venni Date: Fri, 7 Jan 2022 10:14:00 +0200 Subject: [PATCH] Added coverage test 0708 --- ...obal-counter-break-set-ivec-elements.amber | 235 ++++++++++++++++++ .../generate_cts_test.py | 57 +++++ .../reduced_2/_reference/shader.frag | 28 +++ .../reduced_2/_reference/shader.json | 7 + .../reduced_2/test.json | 70 ++++++ .../reduced_2/variant/shader.frag | 28 +++ .../reduced_2/variant/shader.json | 1 + .../reduced_manual/_reference/shader.frag | 28 +++ .../reduced_manual/_reference/shader.json | 7 + .../reduced_manual/test.json | 70 ++++++ .../reduced_manual/variant/shader.frag | 51 ++++ .../reduced_manual/variant/shader.json | 13 + .../1/reduction_work/variant/shader.frag | 44 ++++ .../1/reduction_work/variant/shader.json | 13 + .../1/reduction_work/variant/shader/log.txt | 12 + .../variant/shader/variant/0_glsl/shader.frag | 44 ++++ .../variant/shader/variant/0_glsl/shader.json | 13 + .../shader/variant/1_spirv/shader.frag.spv | Bin 0 -> 2020 bytes .../shader/variant/1_spirv/shader.json | 13 + .../1/source/_reference/shader.frag | 28 +++ .../1/source/_reference/shader.json | 7 + .../reduction_output/1/source/test.json | 70 ++++++ .../1/source/variant/shader.frag | 44 ++++ .../1/source/variant/shader.json | 13 + .../2/source/_reference/shader.frag | 28 +++ .../2/source/_reference/shader.json | 7 + .../reduction_output/2/source/test.json | 70 ++++++ .../2/source/variant/shader.frag | 62 +++++ .../2/source/variant/shader.json | 13 + .../reduction_output/best | 1 + .../settings.json | 197 +++++++++++++++ .../work/variant/0_glsl/shader.frag | 51 ++++ .../work/variant/0_glsl/shader.json | 13 + .../work/variant/1_spirv/shader.frag.spv | Bin 0 -> 2020 bytes .../work/variant/1_spirv/shader.json | 13 + .../work/variant/1_spirv_asm/shader.frag.asm | 133 ++++++++++ .../work/variant/1_spirv_asm/shader.json | 13 + 37 files changed, 1497 insertions(+) create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/cov-loop-global-counter-break-set-ivec-elements.amber create mode 100755 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/generate_cts_test.py create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/_reference/shader.frag create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/_reference/shader.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/test.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/variant/shader.frag create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/variant/shader.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/_reference/shader.frag create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/_reference/shader.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/test.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/variant/shader.frag create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/variant/shader.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader.frag create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/log.txt create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/0_glsl/shader.frag create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/0_glsl/shader.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/1_spirv/shader.frag.spv create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/1_spirv/shader.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/_reference/shader.frag create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/_reference/shader.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/test.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/variant/shader.frag create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/variant/shader.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/_reference/shader.frag create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/_reference/shader.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/test.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/variant/shader.frag create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/variant/shader.json create mode 120000 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/best create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/settings.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/0_glsl/shader.frag create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/0_glsl/shader.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv/shader.frag.spv create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv/shader.json create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv_asm/shader.frag.asm create mode 100644 coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv_asm/shader.json diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/cov-loop-global-counter-break-set-ivec-elements.amber b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/cov-loop-global-counter-break-set-ivec-elements.amber new file mode 100644 index 00000000..b8d5da40 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/cov-loop-global-counter-break-set-ivec-elements.amber @@ -0,0 +1,235 @@ +#!amber + +# Copyright 2022 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# A test for a coverage-gap found by the GraphicsFuzz project. + +# Short description: A fragment shader that covers specific LLVM code paths + +# The test passes because the shader always writes red. + +SHADER vertex variant_vertex_shader PASSTHROUGH + +# variant_fragment_shader is derived from the following GLSL: +# #version 320 es +# +# #define _int_0 _GLF_uniform_int_values[0] +# #define _int_3 _GLF_uniform_int_values[1] +# #define _int_1 _GLF_uniform_int_values[2] +# #define _int_2 _GLF_uniform_int_values[3] +# +# precision highp float; +# precision highp int; +# +# // Contents of _GLF_uniform_int_values: [0, 3, 1, 2] +# layout(set = 0, binding = 0) uniform buf0 +# { +# int _GLF_uniform_int_values[4]; +# }; +# +# const int _GLF_global_loop_bound = 10; +# int _GLF_global_loop_count = 0; +# +# layout(location = 0) out vec4 _GLF_color; +# +# void main() +# { +# ivec4 v = ivec4(_int_0); +# int a = 1; +# int b = 1; +# +# do +# { +# _GLF_global_loop_count ++; +# +# if(b++ >= 3) +# { +# break; +# } +# +# // Executed twice: v[1] = 2 and v[2] = 3. +# v[a++] = a; +# } +# while(_GLF_global_loop_count < _GLF_global_loop_bound); +# +# // Always true. +# if(v == ivec4(_int_0, _int_2, _int_3, _int_0)) +# { +# _GLF_color = vec4(_int_1, _int_0, _int_0, _int_1); +# } +# else +# { +# _GLF_color = vec4(_int_0); +# } +# } +SHADER fragment variant_fragment_shader SPIRV-ASM TARGET_ENV spv1.0 +; SPIR-V +; Version: 1.0 +; Generator: Khronos Glslang Reference Front End; 10 +; Bound: 86 +; Schema: 0 + OpCapability Shader + %1 = OpExtInstImport "GLSL.std.450" + OpMemoryModel Logical GLSL450 + OpEntryPoint Fragment %4 "main" %66 + OpExecutionMode %4 OriginUpperLeft + OpSource ESSL 320 + OpName %4 "main" + OpName %8 "_GLF_global_loop_count" + OpName %12 "v" + OpName %16 "buf0" + OpMemberName %16 0 "_GLF_uniform_int_values" + OpName %18 "" + OpName %24 "a" + OpName %26 "b" + OpName %66 "_GLF_color" + OpDecorate %15 ArrayStride 16 + OpMemberDecorate %16 0 Offset 0 + OpDecorate %16 Block + OpDecorate %18 DescriptorSet 0 + OpDecorate %18 Binding 0 + OpDecorate %66 Location 0 + %2 = OpTypeVoid + %3 = OpTypeFunction %2 + %6 = OpTypeInt 32 1 + %7 = OpTypePointer Private %6 + %8 = OpVariable %7 Private + %9 = OpConstant %6 0 + %10 = OpTypeVector %6 4 + %11 = OpTypePointer Function %10 + %13 = OpTypeInt 32 0 + %14 = OpConstant %13 4 + %15 = OpTypeArray %6 %14 + %16 = OpTypeStruct %15 + %17 = OpTypePointer Uniform %16 + %18 = OpVariable %17 Uniform + %19 = OpTypePointer Uniform %6 + %23 = OpTypePointer Function %6 + %25 = OpConstant %6 1 + %35 = OpConstant %6 3 + %36 = OpTypeBool + %46 = OpConstant %6 10 + %58 = OpTypeVector %36 4 + %63 = OpTypeFloat 32 + %64 = OpTypeVector %63 4 + %65 = OpTypePointer Output %64 + %66 = OpVariable %65 Output + %67 = OpConstant %6 2 + %4 = OpFunction %2 None %3 + %5 = OpLabel + %12 = OpVariable %11 Function + %24 = OpVariable %23 Function + %26 = OpVariable %23 Function + OpStore %8 %9 + %20 = OpAccessChain %19 %18 %9 %9 + %21 = OpLoad %6 %20 + %22 = OpCompositeConstruct %10 %21 %21 %21 %21 + OpStore %12 %22 + OpStore %24 %25 + OpStore %26 %25 + OpBranch %27 + %27 = OpLabel + OpLoopMerge %29 %30 None + OpBranch %28 + %28 = OpLabel + %31 = OpLoad %6 %8 + %32 = OpIAdd %6 %31 %25 + OpStore %8 %32 + %33 = OpLoad %6 %26 + %34 = OpIAdd %6 %33 %25 + OpStore %26 %34 + %37 = OpSGreaterThanEqual %36 %33 %35 + OpSelectionMerge %39 None + OpBranchConditional %37 %38 %39 + %38 = OpLabel + OpBranch %29 + %39 = OpLabel + %41 = OpLoad %6 %24 + %42 = OpIAdd %6 %41 %25 + OpStore %24 %42 + %43 = OpLoad %6 %24 + %44 = OpAccessChain %23 %12 %41 + OpStore %44 %43 + OpBranch %30 + %30 = OpLabel + %45 = OpLoad %6 %8 + %47 = OpSLessThan %36 %45 %46 + OpBranchConditional %47 %27 %29 + %29 = OpLabel + %48 = OpLoad %10 %12 + %49 = OpAccessChain %19 %18 %9 %9 + %50 = OpLoad %6 %49 + %51 = OpAccessChain %19 %18 %9 %35 + %52 = OpLoad %6 %51 + %53 = OpAccessChain %19 %18 %9 %25 + %54 = OpLoad %6 %53 + %55 = OpAccessChain %19 %18 %9 %9 + %56 = OpLoad %6 %55 + %57 = OpCompositeConstruct %10 %50 %52 %54 %56 + %59 = OpIEqual %58 %48 %57 + %60 = OpAll %36 %59 + OpSelectionMerge %62 None + OpBranchConditional %60 %61 %81 + %61 = OpLabel + %68 = OpAccessChain %19 %18 %9 %67 + %69 = OpLoad %6 %68 + %70 = OpConvertSToF %63 %69 + %71 = OpAccessChain %19 %18 %9 %9 + %72 = OpLoad %6 %71 + %73 = OpConvertSToF %63 %72 + %74 = OpAccessChain %19 %18 %9 %9 + %75 = OpLoad %6 %74 + %76 = OpConvertSToF %63 %75 + %77 = OpAccessChain %19 %18 %9 %67 + %78 = OpLoad %6 %77 + %79 = OpConvertSToF %63 %78 + %80 = OpCompositeConstruct %64 %70 %73 %76 %79 + OpStore %66 %80 + OpBranch %62 + %81 = OpLabel + %82 = OpAccessChain %19 %18 %9 %9 + %83 = OpLoad %6 %82 + %84 = OpConvertSToF %63 %83 + %85 = OpCompositeConstruct %64 %84 %84 %84 %84 + OpStore %66 %85 + OpBranch %62 + %62 = OpLabel + OpReturn + OpFunctionEnd +END + +# uniforms for variant + +# _GLF_uniform_int_values +BUFFER variant__GLF_uniform_int_values DATA_TYPE int32[] STD140 DATA + 0 3 1 2 +END + +BUFFER variant_framebuffer FORMAT B8G8R8A8_UNORM + +PIPELINE graphics variant_pipeline + ATTACH variant_vertex_shader + ATTACH variant_fragment_shader + FRAMEBUFFER_SIZE 256 256 + BIND BUFFER variant_framebuffer AS color LOCATION 0 + BIND BUFFER variant__GLF_uniform_int_values AS uniform DESCRIPTOR_SET 0 BINDING 0 +END +CLEAR_COLOR variant_pipeline 0 0 0 255 + +CLEAR variant_pipeline +RUN variant_pipeline DRAW_RECT POS 0 0 SIZE 256 256 + +EXPECT variant_framebuffer IDX 0 0 SIZE 256 256 EQ_RGBA 255 0 0 255 diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/generate_cts_test.py b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/generate_cts_test.py new file mode 100755 index 00000000..5fbb9a91 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/generate_cts_test.py @@ -0,0 +1,57 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- + +# Copyright 2021 The GraphicsFuzz Project Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Generate a CTS test. + +This module/script is copied next to a specific test in your repository of bugs +to generate an Amber script test suitable for adding to the CTS. +In particular, the Amber script test is suitable for use with |add_amber_tests_to_cts.py|. +""" + +import sys +from pathlib import Path + +from gfauto import tool, util + + +def main() -> None: + + # Checklist: + # - check output_amber + # - check short_description + # - check comment_text + # - check copyright_year + # - check extra_commands + + bug_dir = util.norm_path(Path(__file__).absolute()).parent + + tool.glsl_shader_job_crash_to_amber_script_for_google_cts( + source_dir=bug_dir / "reduced_manual", + output_amber=bug_dir / "cov-loop-global-counter-break-set-ivec-elements.amber", + work_dir=bug_dir / "work", + # One sentence, 58 characters max., no period, no line breaks. + short_description="A fragment shader that covers specific LLVM code paths", + comment_text="""The test passes because the shader always writes red.""", + copyright_year="2022", + extra_commands=tool.AMBER_COMMAND_EXPECT_RED, + is_coverage_gap=True, + ) + + +if __name__ == "__main__": + main() + sys.exit(0) diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/_reference/shader.frag b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/_reference/shader.frag new file mode 100644 index 00000000..f73b1fcc --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/_reference/shader.frag @@ -0,0 +1,28 @@ +#version 320 es +precision highp float; + +layout(location = 0) out vec4 _GLF_color; + +layout(set = 0, binding = 0) uniform sampler2D tex; + +void main() +{ + vec2 coord = gl_FragCoord.xy * (1.0 / 256.0); + vec4 res = vec4(0.25); + coord *= 2.0; + int i = 0; + while(i < 1 && coord.x > 1.0 || coord.y > 1.0) + { + if(coord.x > 1.0) + coord.x -= 1.0; + if(coord.y > 1.0) + coord.y -= 1.0; + coord *= 2.0; + i ++; + } + if(coord.x < 1.0 && coord.y < 1.0) + { + res = texture(tex, coord); + } + _GLF_color = vec4(res.xyz, 1.0); +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/_reference/shader.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/_reference/shader.json new file mode 100644 index 00000000..79b5b677 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/_reference/shader.json @@ -0,0 +1,7 @@ +{ + "tex": { + "func": "sampler2D", + "texture": "DEFAULT", + "binding": 0 + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/test.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/test.json new file mode 100644 index 00000000..bf2e029c --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/test.json @@ -0,0 +1,70 @@ +{ + "binaries": [ + { + "name": "glslangValidator", + "path": "", + "tags": [ + "Debug" + ], + "version": "c0bcfaf3bae917c57bca49897eb7430cdf256c70" + }, + { + "name": "spirv-dis", + "path": "", + "tags": [ + "Debug" + ], + "version": "a0370efd589be33d5d9a85cfde2f85841b3755af" + }, + { + "name": "spirv-val", + "path": "", + "tags": [ + "Debug" + ], + "version": "a0370efd589be33d5d9a85cfde2f85841b3755af" + }, + { + "name": "amber", + "path": "", + "tags": [ + "Debug" + ], + "version": "cc1dec6104f5e0e656d8439296265a19393628df" + }, + { + "name": "amber_apk", + "path": "", + "tags": [ + "Debug" + ], + "version": "cc1dec6104f5e0e656d8439296265a19393628df" + }, + { + "name": "amber_apk_test", + "path": "", + "tags": [ + "Debug" + ], + "version": "cc1dec6104f5e0e656d8439296265a19393628df" + } + ], + "common_spirv_args": [], + "crash_regex_override": "", + "crash_signature": "llvmOptionalbool_llvmScalarEvolutionevaluatePredic", + "derived_from": "stable_sampler_mip", + "device": { + "binaries": [], + "device_properties": " apiVersion: 1.2.145\n driverVersion: 83898368\n vendorID: 32902\n deviceID: 16024\n deviceType: integrated gpu\n deviceName: Intel(R) UHD Graphics 630 (CFL GT2)\n driverName: Intel open-source Mesa driver\n driverInfo: Mesa 20.3.0-rc1 (git-f44896c12a)\n minSubgroupSize: 8\n maxSubgroupSize: 32\n maxComputeWorkgroupSubgroups: 56\n requiredSubgroupSizeStages: comp\n", + "host": { + "custom_launcher": [] + }, + "ignored_crash_signatures": [], + "name": "host" + }, + "expected_status": "CRASH", + "glsl": { + "spirv_opt_args": [] + }, + "skip_validation": false +} \ No newline at end of file diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/variant/shader.frag b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/variant/shader.frag new file mode 100644 index 00000000..b97cb53b --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/variant/shader.frag @@ -0,0 +1,28 @@ +#version 320 es + +precision highp int; + +precision highp float; + +const int _GLF_global_loop_bound = 100; + +int _GLF_global_loop_count = 0; + +void main() +{ + vec4 GLF_live11c = vec4(1.0); + int GLF_live11i = 1; + int GLF_live11_looplimiter1 = 1; + do + { + _GLF_global_loop_count ++; + if(GLF_live11_looplimiter1 >= 3) + { + break; + } + GLF_live11_looplimiter1 ++; + GLF_live11c[clamp(GLF_live11i, 0, 4 - 1)] = 1.0; + GLF_live11i ++; + } + while((true) && (_GLF_global_loop_count < _GLF_global_loop_bound)); +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/variant/shader.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/variant/shader.json new file mode 100644 index 00000000..0967ef42 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_2/variant/shader.json @@ -0,0 +1 @@ +{} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/_reference/shader.frag b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/_reference/shader.frag new file mode 100644 index 00000000..f73b1fcc --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/_reference/shader.frag @@ -0,0 +1,28 @@ +#version 320 es +precision highp float; + +layout(location = 0) out vec4 _GLF_color; + +layout(set = 0, binding = 0) uniform sampler2D tex; + +void main() +{ + vec2 coord = gl_FragCoord.xy * (1.0 / 256.0); + vec4 res = vec4(0.25); + coord *= 2.0; + int i = 0; + while(i < 1 && coord.x > 1.0 || coord.y > 1.0) + { + if(coord.x > 1.0) + coord.x -= 1.0; + if(coord.y > 1.0) + coord.y -= 1.0; + coord *= 2.0; + i ++; + } + if(coord.x < 1.0 && coord.y < 1.0) + { + res = texture(tex, coord); + } + _GLF_color = vec4(res.xyz, 1.0); +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/_reference/shader.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/_reference/shader.json new file mode 100644 index 00000000..79b5b677 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/_reference/shader.json @@ -0,0 +1,7 @@ +{ + "tex": { + "func": "sampler2D", + "texture": "DEFAULT", + "binding": 0 + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/test.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/test.json new file mode 100644 index 00000000..d2c41e8f --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/test.json @@ -0,0 +1,70 @@ +{ + "binaries": [ + { + "name": "glslangValidator", + "path": "", + "tags": [ + "Debug" + ], + "version": "c0bcfaf3bae917c57bca49897eb7430cdf256c70" + }, + { + "name": "spirv-dis", + "path": "", + "tags": [ + "Debug" + ], + "version": "a0370efd589be33d5d9a85cfde2f85841b3755af" + }, + { + "name": "spirv-val", + "path": "", + "tags": [ + "Debug" + ], + "version": "a0370efd589be33d5d9a85cfde2f85841b3755af" + }, + { + "name": "amber", + "path": "", + "tags": [ + "Debug" + ], + "version": "cc1dec6104f5e0e656d8439296265a19393628df" + }, + { + "name": "amber_apk", + "path": "", + "tags": [ + "Debug" + ], + "version": "cc1dec6104f5e0e656d8439296265a19393628df" + }, + { + "name": "amber_apk_test", + "path": "", + "tags": [ + "Debug" + ], + "version": "cc1dec6104f5e0e656d8439296265a19393628df" + } + ], + "common_spirv_args": [], + "crash_regex_override": ".*ScalarEvolution9650.*", + "crash_signature": "llvmOptionalbool_llvmScalarEvolutionevaluatePredic", + "derived_from": "stable_sampler_mip", + "device": { + "binaries": [], + "device_properties": " apiVersion: 1.2.145\n driverVersion: 83898368\n vendorID: 32902\n deviceID: 16024\n deviceType: integrated gpu\n deviceName: Intel(R) UHD Graphics 630 (CFL GT2)\n driverName: Intel open-source Mesa driver\n driverInfo: Mesa 20.3.0-rc1 (git-f44896c12a)\n minSubgroupSize: 8\n maxSubgroupSize: 32\n maxComputeWorkgroupSubgroups: 56\n requiredSubgroupSizeStages: comp\n", + "host": { + "custom_launcher": [] + }, + "ignored_crash_signatures": [], + "name": "host" + }, + "expected_status": "CRASH", + "glsl": { + "spirv_opt_args": [] + }, + "skip_validation": false +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/variant/shader.frag b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/variant/shader.frag new file mode 100644 index 00000000..2258ca55 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/variant/shader.frag @@ -0,0 +1,51 @@ +#version 320 es + +#define _int_0 _GLF_uniform_int_values[0] +#define _int_3 _GLF_uniform_int_values[1] +#define _int_1 _GLF_uniform_int_values[2] +#define _int_2 _GLF_uniform_int_values[3] + +precision highp float; +precision highp int; + +// Contents of _GLF_uniform_int_values: [0, 3, 1, 2] +layout(set = 0, binding = 0) uniform buf0 +{ + int _GLF_uniform_int_values[4]; +}; + +const int _GLF_global_loop_bound = 10; +int _GLF_global_loop_count = 0; + +layout(location = 0) out vec4 _GLF_color; + +void main() +{ + ivec4 v = ivec4(_int_0); + int a = 1; + int b = 1; + + do + { + _GLF_global_loop_count ++; + + if(b++ >= 3) + { + break; + } + + // Executed twice: v[1] = 2 and v[2] = 3. + v[a++] = a; + } + while(_GLF_global_loop_count < _GLF_global_loop_bound); + + // Always true. + if(v == ivec4(_int_0, _int_2, _int_3, _int_0)) + { + _GLF_color = vec4(_int_1, _int_0, _int_0, _int_1); + } + else + { + _GLF_color = vec4(_int_0); + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/variant/shader.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/variant/shader.json new file mode 100644 index 00000000..d81bb89f --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduced_manual/variant/shader.json @@ -0,0 +1,13 @@ +{ + "_GLF_uniform_int_values": { + "func": "glUniform1iv", + "args": [ + 0, + 3, + 1, + 2 + ], + "count": 0, + "binding": 0 + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader.frag b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader.frag new file mode 100644 index 00000000..587ac406 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader.frag @@ -0,0 +1,44 @@ +#version 320 es +#define _int_0 _GLF_uniform_int_values[0] +#define _int_3 _GLF_uniform_int_values[1] +#define _int_1 _GLF_uniform_int_values[2] +#define _int_2 _GLF_uniform_int_values[3] + +precision highp float; + +precision highp int; + +// Contents of _GLF_uniform_int_values: [0, 3, 1, 2] +layout(set = 0, binding = 0) uniform buf0 { + int _GLF_uniform_int_values[4]; +}; +const int _GLF_global_loop_bound = 10; + +int _GLF_global_loop_count = 0; + +layout(location = 0) out vec4 _GLF_color; + +void main() +{ + ivec4 v = ivec4(_int_0); + int a = 1; + int b = 1; + do + { + _GLF_global_loop_count ++; + if(b ++ >= 3) + { + break; + } + v[a ++] = a; + } + while(_GLF_global_loop_count < _GLF_global_loop_bound); + if(v == ivec4(_int_0, _int_2, _int_3, _int_0)) + { + _GLF_color = vec4(_int_1, _int_0, _int_0, _int_1); + } + else + { + _GLF_color = vec4(_int_0); + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader.json new file mode 100644 index 00000000..d81bb89f --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader.json @@ -0,0 +1,13 @@ +{ + "_GLF_uniform_int_values": { + "func": "glUniform1iv", + "args": [ + 0, + 3, + 1, + 2 + ], + "count": 0, + "binding": 0 + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/log.txt b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/log.txt new file mode 100644 index 00000000..028b3e97 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/log.txt @@ -0,0 +1,12 @@ +Running test on device: +host +Copying reduction_output/1/reduction_work/variant/shader.json to reduction_output/1/reduction_work/variant/shader/variant/0_glsl/shader.json +Copying reduction_output/1/reduction_work/variant/shader.frag to reduction_output/1/reduction_work/variant/shader/variant/0_glsl/shader.frag +Finding path of binary: +name: "glslangValidator" +tags: "Debug" +version: "c0bcfaf3bae917c57bca49897eb7430cdf256c70" + +Copying reduction_output/1/reduction_work/variant/shader/variant/0_glsl/shader.json to reduction_output/1/reduction_work/variant/shader/variant/1_spirv/shader.json +Exec:['/usr/bin/catchsegv', '/home/ari/git/google-siru/bugs/binaries/built_in/gfbuild-glslang-c0bcfaf3bae917c57bca49897eb7430cdf256c70-Linux_x64_Debug/glslang/bin/glslangValidator', '-V', '-o', 'reduction_output/1/reduction_work/variant/shader/variant/1_spirv/shader.frag.spv', 'reduction_output/1/reduction_work/variant/shader/variant/0_glsl/shader.frag'] +Extra environment variables are: {'SEGFAULT_SIGNALS': 'SEGV ABRT'} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/0_glsl/shader.frag b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/0_glsl/shader.frag new file mode 100644 index 00000000..587ac406 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/0_glsl/shader.frag @@ -0,0 +1,44 @@ +#version 320 es +#define _int_0 _GLF_uniform_int_values[0] +#define _int_3 _GLF_uniform_int_values[1] +#define _int_1 _GLF_uniform_int_values[2] +#define _int_2 _GLF_uniform_int_values[3] + +precision highp float; + +precision highp int; + +// Contents of _GLF_uniform_int_values: [0, 3, 1, 2] +layout(set = 0, binding = 0) uniform buf0 { + int _GLF_uniform_int_values[4]; +}; +const int _GLF_global_loop_bound = 10; + +int _GLF_global_loop_count = 0; + +layout(location = 0) out vec4 _GLF_color; + +void main() +{ + ivec4 v = ivec4(_int_0); + int a = 1; + int b = 1; + do + { + _GLF_global_loop_count ++; + if(b ++ >= 3) + { + break; + } + v[a ++] = a; + } + while(_GLF_global_loop_count < _GLF_global_loop_bound); + if(v == ivec4(_int_0, _int_2, _int_3, _int_0)) + { + _GLF_color = vec4(_int_1, _int_0, _int_0, _int_1); + } + else + { + _GLF_color = vec4(_int_0); + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/0_glsl/shader.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/0_glsl/shader.json new file mode 100644 index 00000000..d81bb89f --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/0_glsl/shader.json @@ -0,0 +1,13 @@ +{ + "_GLF_uniform_int_values": { + "func": "glUniform1iv", + "args": [ + 0, + 3, + 1, + 2 + ], + "count": 0, + "binding": 0 + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/1_spirv/shader.frag.spv b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/1_spirv/shader.frag.spv new file mode 100644 index 0000000000000000000000000000000000000000..80d9487ffeafe4c413c120d5227a4c8c5009d77d GIT binary patch literal 2020 zcmZvc*-lhZ5JitPAc_jeF%HS41}9ms5`dj8JF+G=fcy|T8kUD;i#?tIwF@{bz8=UKF{O-az&74GL;rnsd$3@;m;T)D zWXI+Wa)#R!cXNjI1`t+-Zp`*4r%dLy`_jIc#~%Ru^vPBEx1zlRdCxzb@%-U4 zU;7ARd>?;fX1V@+J~_|oK-;H#uorD-meb#vW9w`8qOD!*^*HuEBzkw3&fmo;BL#jG zY|qX#f!1e_Jw)F}4+XDe z&YXVE3i(t7K`tYtUA@0x| z_oi)(_1uy5)RBJ~?Cjt3Ij(@^e2ez3?Vh7owYlD*|B$Q|cYh7M*WF)-*B5a&3UTf$ zdKm-ji@5PZobyNAO|ZU*yH$uQzPa1*`r^&q0o#jpJVXCi=AJ-LBFt{oygxqULo#N9KAdQ#}53>MbD4G`fB9++nqz?BCiaNyy6V=@cJU}F<370o`Cnt zdkU{F@)p2yk@pN7dBr}T!|RK@7hpMeIGyQw@Al!D`h91!xzBgzuH1|JiF&WWQLi}P eBD}t+_XaE%_1=QziW2qo73*2|FaK$8BmV%+o_GKN literal 0 HcmV?d00001 diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/1_spirv/shader.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/1_spirv/shader.json new file mode 100644 index 00000000..d81bb89f --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/reduction_work/variant/shader/variant/1_spirv/shader.json @@ -0,0 +1,13 @@ +{ + "_GLF_uniform_int_values": { + "func": "glUniform1iv", + "args": [ + 0, + 3, + 1, + 2 + ], + "count": 0, + "binding": 0 + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/_reference/shader.frag b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/_reference/shader.frag new file mode 100644 index 00000000..f73b1fcc --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/_reference/shader.frag @@ -0,0 +1,28 @@ +#version 320 es +precision highp float; + +layout(location = 0) out vec4 _GLF_color; + +layout(set = 0, binding = 0) uniform sampler2D tex; + +void main() +{ + vec2 coord = gl_FragCoord.xy * (1.0 / 256.0); + vec4 res = vec4(0.25); + coord *= 2.0; + int i = 0; + while(i < 1 && coord.x > 1.0 || coord.y > 1.0) + { + if(coord.x > 1.0) + coord.x -= 1.0; + if(coord.y > 1.0) + coord.y -= 1.0; + coord *= 2.0; + i ++; + } + if(coord.x < 1.0 && coord.y < 1.0) + { + res = texture(tex, coord); + } + _GLF_color = vec4(res.xyz, 1.0); +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/_reference/shader.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/_reference/shader.json new file mode 100644 index 00000000..79b5b677 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/_reference/shader.json @@ -0,0 +1,7 @@ +{ + "tex": { + "func": "sampler2D", + "texture": "DEFAULT", + "binding": 0 + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/test.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/test.json new file mode 100644 index 00000000..d2c41e8f --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/test.json @@ -0,0 +1,70 @@ +{ + "binaries": [ + { + "name": "glslangValidator", + "path": "", + "tags": [ + "Debug" + ], + "version": "c0bcfaf3bae917c57bca49897eb7430cdf256c70" + }, + { + "name": "spirv-dis", + "path": "", + "tags": [ + "Debug" + ], + "version": "a0370efd589be33d5d9a85cfde2f85841b3755af" + }, + { + "name": "spirv-val", + "path": "", + "tags": [ + "Debug" + ], + "version": "a0370efd589be33d5d9a85cfde2f85841b3755af" + }, + { + "name": "amber", + "path": "", + "tags": [ + "Debug" + ], + "version": "cc1dec6104f5e0e656d8439296265a19393628df" + }, + { + "name": "amber_apk", + "path": "", + "tags": [ + "Debug" + ], + "version": "cc1dec6104f5e0e656d8439296265a19393628df" + }, + { + "name": "amber_apk_test", + "path": "", + "tags": [ + "Debug" + ], + "version": "cc1dec6104f5e0e656d8439296265a19393628df" + } + ], + "common_spirv_args": [], + "crash_regex_override": ".*ScalarEvolution9650.*", + "crash_signature": "llvmOptionalbool_llvmScalarEvolutionevaluatePredic", + "derived_from": "stable_sampler_mip", + "device": { + "binaries": [], + "device_properties": " apiVersion: 1.2.145\n driverVersion: 83898368\n vendorID: 32902\n deviceID: 16024\n deviceType: integrated gpu\n deviceName: Intel(R) UHD Graphics 630 (CFL GT2)\n driverName: Intel open-source Mesa driver\n driverInfo: Mesa 20.3.0-rc1 (git-f44896c12a)\n minSubgroupSize: 8\n maxSubgroupSize: 32\n maxComputeWorkgroupSubgroups: 56\n requiredSubgroupSizeStages: comp\n", + "host": { + "custom_launcher": [] + }, + "ignored_crash_signatures": [], + "name": "host" + }, + "expected_status": "CRASH", + "glsl": { + "spirv_opt_args": [] + }, + "skip_validation": false +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/variant/shader.frag b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/variant/shader.frag new file mode 100644 index 00000000..587ac406 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/variant/shader.frag @@ -0,0 +1,44 @@ +#version 320 es +#define _int_0 _GLF_uniform_int_values[0] +#define _int_3 _GLF_uniform_int_values[1] +#define _int_1 _GLF_uniform_int_values[2] +#define _int_2 _GLF_uniform_int_values[3] + +precision highp float; + +precision highp int; + +// Contents of _GLF_uniform_int_values: [0, 3, 1, 2] +layout(set = 0, binding = 0) uniform buf0 { + int _GLF_uniform_int_values[4]; +}; +const int _GLF_global_loop_bound = 10; + +int _GLF_global_loop_count = 0; + +layout(location = 0) out vec4 _GLF_color; + +void main() +{ + ivec4 v = ivec4(_int_0); + int a = 1; + int b = 1; + do + { + _GLF_global_loop_count ++; + if(b ++ >= 3) + { + break; + } + v[a ++] = a; + } + while(_GLF_global_loop_count < _GLF_global_loop_bound); + if(v == ivec4(_int_0, _int_2, _int_3, _int_0)) + { + _GLF_color = vec4(_int_1, _int_0, _int_0, _int_1); + } + else + { + _GLF_color = vec4(_int_0); + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/variant/shader.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/variant/shader.json new file mode 100644 index 00000000..d81bb89f --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/1/source/variant/shader.json @@ -0,0 +1,13 @@ +{ + "_GLF_uniform_int_values": { + "func": "glUniform1iv", + "args": [ + 0, + 3, + 1, + 2 + ], + "count": 0, + "binding": 0 + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/_reference/shader.frag b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/_reference/shader.frag new file mode 100644 index 00000000..f73b1fcc --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/_reference/shader.frag @@ -0,0 +1,28 @@ +#version 320 es +precision highp float; + +layout(location = 0) out vec4 _GLF_color; + +layout(set = 0, binding = 0) uniform sampler2D tex; + +void main() +{ + vec2 coord = gl_FragCoord.xy * (1.0 / 256.0); + vec4 res = vec4(0.25); + coord *= 2.0; + int i = 0; + while(i < 1 && coord.x > 1.0 || coord.y > 1.0) + { + if(coord.x > 1.0) + coord.x -= 1.0; + if(coord.y > 1.0) + coord.y -= 1.0; + coord *= 2.0; + i ++; + } + if(coord.x < 1.0 && coord.y < 1.0) + { + res = texture(tex, coord); + } + _GLF_color = vec4(res.xyz, 1.0); +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/_reference/shader.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/_reference/shader.json new file mode 100644 index 00000000..79b5b677 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/_reference/shader.json @@ -0,0 +1,7 @@ +{ + "tex": { + "func": "sampler2D", + "texture": "DEFAULT", + "binding": 0 + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/test.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/test.json new file mode 100644 index 00000000..d2c41e8f --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/test.json @@ -0,0 +1,70 @@ +{ + "binaries": [ + { + "name": "glslangValidator", + "path": "", + "tags": [ + "Debug" + ], + "version": "c0bcfaf3bae917c57bca49897eb7430cdf256c70" + }, + { + "name": "spirv-dis", + "path": "", + "tags": [ + "Debug" + ], + "version": "a0370efd589be33d5d9a85cfde2f85841b3755af" + }, + { + "name": "spirv-val", + "path": "", + "tags": [ + "Debug" + ], + "version": "a0370efd589be33d5d9a85cfde2f85841b3755af" + }, + { + "name": "amber", + "path": "", + "tags": [ + "Debug" + ], + "version": "cc1dec6104f5e0e656d8439296265a19393628df" + }, + { + "name": "amber_apk", + "path": "", + "tags": [ + "Debug" + ], + "version": "cc1dec6104f5e0e656d8439296265a19393628df" + }, + { + "name": "amber_apk_test", + "path": "", + "tags": [ + "Debug" + ], + "version": "cc1dec6104f5e0e656d8439296265a19393628df" + } + ], + "common_spirv_args": [], + "crash_regex_override": ".*ScalarEvolution9650.*", + "crash_signature": "llvmOptionalbool_llvmScalarEvolutionevaluatePredic", + "derived_from": "stable_sampler_mip", + "device": { + "binaries": [], + "device_properties": " apiVersion: 1.2.145\n driverVersion: 83898368\n vendorID: 32902\n deviceID: 16024\n deviceType: integrated gpu\n deviceName: Intel(R) UHD Graphics 630 (CFL GT2)\n driverName: Intel open-source Mesa driver\n driverInfo: Mesa 20.3.0-rc1 (git-f44896c12a)\n minSubgroupSize: 8\n maxSubgroupSize: 32\n maxComputeWorkgroupSubgroups: 56\n requiredSubgroupSizeStages: comp\n", + "host": { + "custom_launcher": [] + }, + "ignored_crash_signatures": [], + "name": "host" + }, + "expected_status": "CRASH", + "glsl": { + "spirv_opt_args": [] + }, + "skip_validation": false +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/variant/shader.frag b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/variant/shader.frag new file mode 100644 index 00000000..0fce34fc --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/variant/shader.frag @@ -0,0 +1,62 @@ +#version 320 es + +#ifndef REDUCER +#define _GLF_ZERO(X, Y) (Y) +#define _GLF_ONE(X, Y) (Y) +#define _GLF_FALSE(X, Y) (Y) +#define _GLF_TRUE(X, Y) (Y) +#define _GLF_IDENTITY(X, Y) (Y) +#define _GLF_DEAD(X) (X) +#define _GLF_FUZZED(X) (X) +#define _GLF_WRAPPED_LOOP(X) X +#define _GLF_WRAPPED_IF_TRUE(X) X +#define _GLF_WRAPPED_IF_FALSE(X) X +#define _GLF_SWITCH(X) X +#define _GLF_MAKE_IN_BOUNDS_INT(IDX, SZ) clamp(IDX, 0, SZ - 1) +#define _GLF_MAKE_IN_BOUNDS_UINT(IDX, SZ) clamp(IDX, 0u, SZ - 1u) +#endif + +// END OF GENERATED HEADER +#define _int_0 _GLF_uniform_int_values[0] +#define _int_3 _GLF_uniform_int_values[1] +#define _int_1 _GLF_uniform_int_values[2] +#define _int_2 _GLF_uniform_int_values[3] + +precision highp float; + +precision highp int; + +// Contents of _GLF_uniform_int_values: [0, 3, 1, 2] +layout(set = 0, binding = 0) uniform buf0 { + int _GLF_uniform_int_values[4]; +}; +const int _GLF_global_loop_bound = 10; + +int _GLF_global_loop_count = 0; + +layout(location = 0) out vec4 _GLF_color; + +void main() +{ + ivec4 v = ivec4(_int_0); + int a = 1; + int b = 1; + do + { + _GLF_global_loop_count ++; + if(b ++ >= 3) + { + break; + } + v[_GLF_MAKE_IN_BOUNDS_INT(a ++, 4)] = a; + } + while(_GLF_global_loop_count < _GLF_global_loop_bound); + if(v == ivec4(_int_0, _int_2, _int_3, _int_0)) + { + _GLF_color = vec4(_int_1, _int_0, _int_0, _int_1); + } + else + { + _GLF_color = vec4(_int_0); + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/variant/shader.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/variant/shader.json new file mode 100644 index 00000000..d81bb89f --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/2/source/variant/shader.json @@ -0,0 +1,13 @@ +{ + "_GLF_uniform_int_values": { + "func": "glUniform1iv", + "args": [ + 0, + 3, + 1, + 2 + ], + "count": 0, + "binding": 0 + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/best b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/best new file mode 120000 index 00000000..d8263ee9 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/reduction_output/best @@ -0,0 +1 @@ +2 \ No newline at end of file diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/settings.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/settings.json new file mode 100644 index 00000000..1232757f --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/settings.json @@ -0,0 +1,197 @@ +{ + "_comment": "https://github.com/google/graphicsfuzz/blob/master/gfauto/gfauto/settings.proto", + "common_spirv_args": [], + "custom_binaries": [], + "device_list": { + "active_device_names": [ + "host_preprocessor", + "swift_shader", + "host" + ], + "devices": [ + { + "binaries": [], + "device_properties": "", + "ignored_crash_signatures": [], + "name": "host_preprocessor", + "preprocess": {} + }, + { + "binaries": [ + { + "name": "swift_shader_icd", + "path": "", + "tags": [ + "Debug" + ], + "version": "8f075627d16bdd2a8d861e9d81df541f5cf68e2e" + } + ], + "device_properties": " apiVersion: 1.2.0\n driverVersion: 20971520\n vendorID: 6880\n deviceID: 49374\n deviceType: cpu\n deviceName: SwiftShader Device (LLVM 10.0.0)\n driverName: SwiftShader driver\n driverInfo: \n", + "ignored_crash_signatures": [], + "name": "swift_shader", + "swift_shader": {} + }, + { + "binaries": [], + "device_properties": " apiVersion: 1.2.174\n driverVersion: 8388792\n vendorID: 4098\n deviceID: 29471\n deviceType: discrete gpu\n deviceName: AMD Radeon RX 5700 XT\n driverName: AMD open-source driver\n driverInfo: \n minSubgroupSize: 32\n maxSubgroupSize: 64\n maxComputeWorkgroupSubgroups: 4294967295\n requiredSubgroupSizeStages: \n", + "host": { + "custom_launcher": [] + }, + "ignored_crash_signatures": [], + "name": "host" + }, + { + "binaries": [ + { + "name": "amdllpc", + "path": "", + "tags": [ + "Debug" + ], + "version": "f9a85a5a2cd20884bcfa7794f74aa3516d1892c1" + } + ], + "device_properties": "", + "ignored_crash_signatures": [], + "name": "amdllpc", + "shader_compiler": { + "args": [ + "-val=false", + "-gfxip=9.0.0", + "-verify-ir", + "-auto-layout-desc" + ], + "binary": "amdllpc" + } + } + ] + }, + "extra_graphics_fuzz_generate_args": [], + "extra_graphics_fuzz_reduce_args": [], + "extra_spirv_fuzz_generate_args": [], + "extra_spirv_fuzz_shrink_args": [], + "extra_spirv_reduce_args": [], + "keep_reduction_work": false, + "latest_binary_versions": [ + { + "name": "glslangValidator", + "path": "", + "tags": [ + "Debug" + ], + "version": "e0771b5d4c7e64a4354e1aa93fb2a673b2a08010" + }, + { + "name": "spirv-opt", + "path": "", + "tags": [ + "Debug" + ], + "version": "06f114d482143bd3c2fae6c8d8174a39521b09ce" + }, + { + "name": "spirv-dis", + "path": "", + "tags": [ + "Debug" + ], + "version": "06f114d482143bd3c2fae6c8d8174a39521b09ce" + }, + { + "name": "spirv-as", + "path": "", + "tags": [ + "Debug" + ], + "version": "06f114d482143bd3c2fae6c8d8174a39521b09ce" + }, + { + "name": "spirv-val", + "path": "", + "tags": [ + "Debug" + ], + "version": "06f114d482143bd3c2fae6c8d8174a39521b09ce" + }, + { + "name": "spirv-fuzz", + "path": "", + "tags": [ + "Debug" + ], + "version": "06f114d482143bd3c2fae6c8d8174a39521b09ce" + }, + { + "name": "spirv-reduce", + "path": "", + "tags": [ + "Debug" + ], + "version": "06f114d482143bd3c2fae6c8d8174a39521b09ce" + }, + { + "name": "swift_shader_icd", + "path": "", + "tags": [ + "Debug" + ], + "version": "8f075627d16bdd2a8d861e9d81df541f5cf68e2e" + }, + { + "name": "amber", + "path": "", + "tags": [ + "Debug" + ], + "version": "8c3bfef40c2387944fdc81746e2e3249e4da5566" + }, + { + "name": "amber_apk", + "path": "", + "tags": [ + "Debug" + ], + "version": "8c3bfef40c2387944fdc81746e2e3249e4da5566" + }, + { + "name": "amber_apk_test", + "path": "", + "tags": [ + "Debug" + ], + "version": "8c3bfef40c2387944fdc81746e2e3249e4da5566" + }, + { + "name": "amber_vulkan_loader", + "path": "", + "tags": [ + "Debug" + ], + "version": "8c3bfef40c2387944fdc81746e2e3249e4da5566" + }, + { + "name": "graphicsfuzz-tool", + "path": "", + "tags": [], + "version": "4221987bacb5d1468422e4813f05121b1b60fd35" + }, + { + "name": "amdllpc", + "path": "", + "tags": [ + "Debug" + ], + "version": "f9a85a5a2cd20884bcfa7794f74aa3516d1892c1" + } + ], + "legacy_graphics_fuzz_vulkan_arg": false, + "maximum_duplicate_crashes": 3, + "maximum_fuzz_failures": 10, + "only_reduce_signature_regex": "", + "reduce_bad_images": true, + "reduce_crashes": true, + "reduce_tool_crashes": true, + "skip_semantics_changing_reduction": false, + "spirv_opt_just_o": false +} \ No newline at end of file diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/0_glsl/shader.frag b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/0_glsl/shader.frag new file mode 100644 index 00000000..2258ca55 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/0_glsl/shader.frag @@ -0,0 +1,51 @@ +#version 320 es + +#define _int_0 _GLF_uniform_int_values[0] +#define _int_3 _GLF_uniform_int_values[1] +#define _int_1 _GLF_uniform_int_values[2] +#define _int_2 _GLF_uniform_int_values[3] + +precision highp float; +precision highp int; + +// Contents of _GLF_uniform_int_values: [0, 3, 1, 2] +layout(set = 0, binding = 0) uniform buf0 +{ + int _GLF_uniform_int_values[4]; +}; + +const int _GLF_global_loop_bound = 10; +int _GLF_global_loop_count = 0; + +layout(location = 0) out vec4 _GLF_color; + +void main() +{ + ivec4 v = ivec4(_int_0); + int a = 1; + int b = 1; + + do + { + _GLF_global_loop_count ++; + + if(b++ >= 3) + { + break; + } + + // Executed twice: v[1] = 2 and v[2] = 3. + v[a++] = a; + } + while(_GLF_global_loop_count < _GLF_global_loop_bound); + + // Always true. + if(v == ivec4(_int_0, _int_2, _int_3, _int_0)) + { + _GLF_color = vec4(_int_1, _int_0, _int_0, _int_1); + } + else + { + _GLF_color = vec4(_int_0); + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/0_glsl/shader.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/0_glsl/shader.json new file mode 100644 index 00000000..d81bb89f --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/0_glsl/shader.json @@ -0,0 +1,13 @@ +{ + "_GLF_uniform_int_values": { + "func": "glUniform1iv", + "args": [ + 0, + 3, + 1, + 2 + ], + "count": 0, + "binding": 0 + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv/shader.frag.spv b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv/shader.frag.spv new file mode 100644 index 0000000000000000000000000000000000000000..80d9487ffeafe4c413c120d5227a4c8c5009d77d GIT binary patch literal 2020 zcmZvc*-lhZ5JitPAc_jeF%HS41}9ms5`dj8JF+G=fcy|T8kUD;i#?tIwF@{bz8=UKF{O-az&74GL;rnsd$3@;m;T)D zWXI+Wa)#R!cXNjI1`t+-Zp`*4r%dLy`_jIc#~%Ru^vPBEx1zlRdCxzb@%-U4 zU;7ARd>?;fX1V@+J~_|oK-;H#uorD-meb#vW9w`8qOD!*^*HuEBzkw3&fmo;BL#jG zY|qX#f!1e_Jw)F}4+XDe z&YXVE3i(t7K`tYtUA@0x| z_oi)(_1uy5)RBJ~?Cjt3Ij(@^e2ez3?Vh7owYlD*|B$Q|cYh7M*WF)-*B5a&3UTf$ zdKm-ji@5PZobyNAO|ZU*yH$uQzPa1*`r^&q0o#jpJVXCi=AJ-LBFt{oygxqULo#N9KAdQ#}53>MbD4G`fB9++nqz?BCiaNyy6V=@cJU}F<370o`Cnt zdkU{F@)p2yk@pN7dBr}T!|RK@7hpMeIGyQw@Al!D`h91!xzBgzuH1|JiF&WWQLi}P eBD}t+_XaE%_1=QziW2qo73*2|FaK$8BmV%+o_GKN literal 0 HcmV?d00001 diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv/shader.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv/shader.json new file mode 100644 index 00000000..d81bb89f --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv/shader.json @@ -0,0 +1,13 @@ +{ + "_GLF_uniform_int_values": { + "func": "glUniform1iv", + "args": [ + 0, + 3, + 1, + 2 + ], + "count": 0, + "binding": 0 + } +} diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv_asm/shader.frag.asm b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv_asm/shader.frag.asm new file mode 100644 index 00000000..a149a9e3 --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv_asm/shader.frag.asm @@ -0,0 +1,133 @@ +; SPIR-V +; Version: 1.0 +; Generator: Khronos Glslang Reference Front End; 10 +; Bound: 86 +; Schema: 0 + OpCapability Shader + %1 = OpExtInstImport "GLSL.std.450" + OpMemoryModel Logical GLSL450 + OpEntryPoint Fragment %4 "main" %66 + OpExecutionMode %4 OriginUpperLeft + OpSource ESSL 320 + OpName %4 "main" + OpName %8 "_GLF_global_loop_count" + OpName %12 "v" + OpName %16 "buf0" + OpMemberName %16 0 "_GLF_uniform_int_values" + OpName %18 "" + OpName %24 "a" + OpName %26 "b" + OpName %66 "_GLF_color" + OpDecorate %15 ArrayStride 16 + OpMemberDecorate %16 0 Offset 0 + OpDecorate %16 Block + OpDecorate %18 DescriptorSet 0 + OpDecorate %18 Binding 0 + OpDecorate %66 Location 0 + %2 = OpTypeVoid + %3 = OpTypeFunction %2 + %6 = OpTypeInt 32 1 + %7 = OpTypePointer Private %6 + %8 = OpVariable %7 Private + %9 = OpConstant %6 0 + %10 = OpTypeVector %6 4 + %11 = OpTypePointer Function %10 + %13 = OpTypeInt 32 0 + %14 = OpConstant %13 4 + %15 = OpTypeArray %6 %14 + %16 = OpTypeStruct %15 + %17 = OpTypePointer Uniform %16 + %18 = OpVariable %17 Uniform + %19 = OpTypePointer Uniform %6 + %23 = OpTypePointer Function %6 + %25 = OpConstant %6 1 + %35 = OpConstant %6 3 + %36 = OpTypeBool + %46 = OpConstant %6 10 + %58 = OpTypeVector %36 4 + %63 = OpTypeFloat 32 + %64 = OpTypeVector %63 4 + %65 = OpTypePointer Output %64 + %66 = OpVariable %65 Output + %67 = OpConstant %6 2 + %4 = OpFunction %2 None %3 + %5 = OpLabel + %12 = OpVariable %11 Function + %24 = OpVariable %23 Function + %26 = OpVariable %23 Function + OpStore %8 %9 + %20 = OpAccessChain %19 %18 %9 %9 + %21 = OpLoad %6 %20 + %22 = OpCompositeConstruct %10 %21 %21 %21 %21 + OpStore %12 %22 + OpStore %24 %25 + OpStore %26 %25 + OpBranch %27 + %27 = OpLabel + OpLoopMerge %29 %30 None + OpBranch %28 + %28 = OpLabel + %31 = OpLoad %6 %8 + %32 = OpIAdd %6 %31 %25 + OpStore %8 %32 + %33 = OpLoad %6 %26 + %34 = OpIAdd %6 %33 %25 + OpStore %26 %34 + %37 = OpSGreaterThanEqual %36 %33 %35 + OpSelectionMerge %39 None + OpBranchConditional %37 %38 %39 + %38 = OpLabel + OpBranch %29 + %39 = OpLabel + %41 = OpLoad %6 %24 + %42 = OpIAdd %6 %41 %25 + OpStore %24 %42 + %43 = OpLoad %6 %24 + %44 = OpAccessChain %23 %12 %41 + OpStore %44 %43 + OpBranch %30 + %30 = OpLabel + %45 = OpLoad %6 %8 + %47 = OpSLessThan %36 %45 %46 + OpBranchConditional %47 %27 %29 + %29 = OpLabel + %48 = OpLoad %10 %12 + %49 = OpAccessChain %19 %18 %9 %9 + %50 = OpLoad %6 %49 + %51 = OpAccessChain %19 %18 %9 %35 + %52 = OpLoad %6 %51 + %53 = OpAccessChain %19 %18 %9 %25 + %54 = OpLoad %6 %53 + %55 = OpAccessChain %19 %18 %9 %9 + %56 = OpLoad %6 %55 + %57 = OpCompositeConstruct %10 %50 %52 %54 %56 + %59 = OpIEqual %58 %48 %57 + %60 = OpAll %36 %59 + OpSelectionMerge %62 None + OpBranchConditional %60 %61 %81 + %61 = OpLabel + %68 = OpAccessChain %19 %18 %9 %67 + %69 = OpLoad %6 %68 + %70 = OpConvertSToF %63 %69 + %71 = OpAccessChain %19 %18 %9 %9 + %72 = OpLoad %6 %71 + %73 = OpConvertSToF %63 %72 + %74 = OpAccessChain %19 %18 %9 %9 + %75 = OpLoad %6 %74 + %76 = OpConvertSToF %63 %75 + %77 = OpAccessChain %19 %18 %9 %67 + %78 = OpLoad %6 %77 + %79 = OpConvertSToF %63 %78 + %80 = OpCompositeConstruct %64 %70 %73 %76 %79 + OpStore %66 %80 + OpBranch %62 + %81 = OpLabel + %82 = OpAccessChain %19 %18 %9 %9 + %83 = OpLoad %6 %82 + %84 = OpConvertSToF %63 %83 + %85 = OpCompositeConstruct %64 %84 %84 %84 %84 + OpStore %66 %85 + OpBranch %62 + %62 = OpLabel + OpReturn + OpFunctionEnd diff --git a/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv_asm/shader.json b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv_asm/shader.json new file mode 100644 index 00000000..d81bb89f --- /dev/null +++ b/coverage/PENDING_SUBMIT/amdvlk/0708-COVERAGE-scalar-evolution-9650/work/variant/1_spirv_asm/shader.json @@ -0,0 +1,13 @@ +{ + "_GLF_uniform_int_values": { + "func": "glUniform1iv", + "args": [ + 0, + 3, + 1, + 2 + ], + "count": 0, + "binding": 0 + } +}