blob: 4b07a26f4a1dfa8808eb29415c644dc592454b93 [file] [edit]
; RUN: not llc -global-isel=0 -mtriple=amdgpu9.42 -filetype=null < %s 2>&1 | FileCheck %s -check-prefix=NOCUBE
; RUN: not llc -global-isel=1 -global-isel-abort=0 -mtriple=amdgpu9.42 -filetype=null < %s 2>&1 | FileCheck %s -check-prefix=NOCUBE
; RUN: not llc -global-isel=0 -mtriple=amdgpu9.50 -filetype=null < %s 2>&1 | FileCheck %s -check-prefix=NOCUBE
; RUN: not llc -global-isel=1 -global-isel-abort=0 -mtriple=amdgpu9.50 -filetype=null < %s 2>&1 | FileCheck %s -check-prefix=NOCUBE
; The v_cube* ALU is graphics-pipe hardware, absent on the CDNA-3 compute-only
; parts gfx942 and gfx950.
; NOCUBE: error: {{.*}} llvm.amdgcn.cubeid requires target feature 'cube-insts'
define float @test_cubeid(float %a, float %b, float %c) {
%result = call float @llvm.amdgcn.cubeid(float %a, float %b, float %c)
ret float %result
}
; NOCUBE: error: {{.*}} llvm.amdgcn.cubema requires target feature 'cube-insts'
define float @test_cubema(float %a, float %b, float %c) {
%result = call float @llvm.amdgcn.cubema(float %a, float %b, float %c)
ret float %result
}
; NOCUBE: error: {{.*}} llvm.amdgcn.cubesc requires target feature 'cube-insts'
define float @test_cubesc(float %a, float %b, float %c) {
%result = call float @llvm.amdgcn.cubesc(float %a, float %b, float %c)
ret float %result
}
; NOCUBE: error: {{.*}} llvm.amdgcn.cubetc requires target feature 'cube-insts'
define float @test_cubetc(float %a, float %b, float %c) {
%result = call float @llvm.amdgcn.cubetc(float %a, float %b, float %c)
ret float %result
}
declare float @llvm.amdgcn.cubeid(float, float, float)
declare float @llvm.amdgcn.cubema(float, float, float)
declare float @llvm.amdgcn.cubesc(float, float, float)
declare float @llvm.amdgcn.cubetc(float, float, float)