blob: b5e33f4b840c29968c575648bc472a67582f2ece [file]
; RUN: not --crash llc -mtriple=amdgpu6.00-amd-amdhsa -filetype=obj -filetype=null %s 2>&1 | FileCheck -check-prefix=ERROR %s
; RUN: not --crash llc -mtriple=amdgpu6.00-mesa-mesa3d -filetype=obj -filetype=null %s 2>&1 | FileCheck -check-prefix=ERROR %s
; RUN: llc -mtriple=amdgpu-amd-amdhsa -o - %s | FileCheck -check-prefix=HSA-DEFAULT %s
; Flat instructions should not select if the target device doesn't
; support them. The default device should be able to select for HSA.
; ERROR: LLVM ERROR: Cannot select: {{0x[0-9,a-f]+|t[0-9]+}}: i32,ch = load<(volatile load (s32) from %ir.flat.ptr.load)>
; HSA-DEFAULT: flat_load_dword
define amdgpu_kernel void @load_flat_i32(ptr %flat.ptr) {
%load = load volatile i32, ptr %flat.ptr, align 4
ret void
}