brintos

brintos / llvm-project-archived public Read only

0
0
Text · 811 B · d030353 Raw
22 lines · plain
1; RUN: llc -verify-machineinstrs -O0 -mtriple=spirv-unknown-unknown %s -o - | FileCheck %s2; RUN: %if spirv-tools %{ llc -O0 -mtriple=spirv-unknown-unknown %s -o - -filetype=obj | spirv-val %}3 4; CHECK-DAG: %[[#bool:]] = OpTypeBool5; CHECK-DAG: %[[#uint:]] = OpTypeInt 32 06; CHECK-DAG: %[[#scope:]] = OpConstant %[[#uint]] 37; CHECK-DAG: OpCapability GroupNonUniformVote8 9; CHECK-LABEL: Begin function test_wave_all10define i1 @test_wave_all(i1 %p1) #0 {11entry:12; CHECK: %[[#param:]] = OpFunctionParameter %[[#bool]]13; CHECK: %{{.+}} = OpGroupNonUniformAll %[[#bool]] %[[#scope]] %[[#param]]14  %0 = call token @llvm.experimental.convergence.entry()15  %ret = call i1 @llvm.spv.wave.all(i1 %p1) [ "convergencectrl"(token %0) ]16  ret i1 %ret17}18 19declare i1 @llvm.spv.wave.all(i1) #020 21attributes #0 = { convergent }22