23 lines · plain
1// RUN: mlir-translate --no-implicit-module --test-spirv-roundtrip %s | FileCheck %s2 3// RUN: %if spirv-tools %{ rm -rf %t %}4// RUN: %if spirv-tools %{ mkdir %t %}5// RUN: %if spirv-tools %{ mlir-translate --no-implicit-module --serialize-spirv --split-input-file --spirv-save-validation-files-with-prefix=%t/module %s %}6// RUN: %if spirv-tools %{ spirv-val %t %}7 8spirv.module Logical GLSL450 requires #spirv.vce<v1.0, [Geometry], []> {9 spirv.GlobalVariable @out : !spirv.ptr<!spirv.struct<(vector<4xf32>, f32, !spirv.array<1 x f32>)>, Output> 10 spirv.func @primitive_ops() "None" {11 // CHECK: spirv.EmitVertex12 spirv.EmitVertex13 // CHECK: spirv.EndPrimitive14 spirv.EndPrimitive15 spirv.Return16 }17 spirv.EntryPoint "Geometry" @primitive_ops, @out18 spirv.ExecutionMode @primitive_ops "InputPoints"19 spirv.ExecutionMode @primitive_ops "Invocations", 120 spirv.ExecutionMode @primitive_ops "OutputLineStrip"21 spirv.ExecutionMode @primitive_ops "OutputVertices", 222}23