brintos

brintos / llvm-project-archived public Read only

0
0
Text · 858 B · 7adb039 Raw
18 lines · plain
1; RUN: llc -verify-machineinstrs -O0 -mtriple=spirv32-unknown-unknown %s --spirv-ext=+SPV_KHR_bit_instructions -o - | FileCheck %s --check-prefix=CHECK-EXTENSION2; RUN: %if spirv-tools %{ llc -O0 -mtriple=spirv64v1.2-unknown-unknown %s --spirv-ext=+SPV_KHR_bit_instructions -o - -filetype=obj | spirv-val --target-env opencl2.2 %}3 4; CHECK-EXTENSION:      OpCapability BitInstructions5; CHECK-EXTENSION-NEXT: OpExtension "SPV_KHR_bit_instructions"6; CHECK-EXTENSION-NOT:  OpCabilitity Shader7; CHECK-EXTENSION: %[[#int:]] = OpTypeInt 328; CHECK-EXTENSION: OpBitReverse %[[#int]]9 10define spir_kernel void @testBitRev(i32 %a, i32 %b, i32 %c, i32 addrspace(1)* nocapture %res) local_unnamed_addr {11entry:12  %call = tail call i32 @llvm.bitreverse.i32(i32 %b)13  store i32 %call, i32 addrspace(1)* %res, align 414  ret void15}16 17declare i32 @llvm.bitreverse.i32(i32)18