mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-13 23:18:51 +00:00
29d0ea4bc8
There are a lot of different kinds of loads to test for, and these were scattered around inconsistently with some redundancy. Try to comprehensively test all loads in a consistent way. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@271571 91177308-0d34-0410-b5e6-96231b3b80d8
16 lines
786 B
LLVM
16 lines
786 B
LLVM
; RUN: llc -march=amdgcn -verify-machineinstrs < %s | FileCheck -check-prefix=GCN -check-prefix=GCN-NOHSA -check-prefix=FUNC %s
|
|
; RUN: llc -mtriple=amdgcn-amdhsa -mcpu=kaveri -verify-machineinstrs < %s | FileCheck -check-prefix=GCN -check-prefix=GCN-HSA -check-prefix=FUNC %s
|
|
; RUN: llc -march=amdgcn -mcpu=tonga -verify-machineinstrs < %s | FileCheck -check-prefix=GCN -check-prefix=GCN-NOHSA -check-prefix=FUNC %s
|
|
|
|
; FUNC-LABEL: {{^}}constant_load_f64:
|
|
; GCN: s_load_dwordx2 s[{{[0-9]+:[0-9]+}}]
|
|
; GCN-NOHSA: buffer_store_dwordx2
|
|
; GCN-HSA: flat_store_dwordx2
|
|
define void @constant_load_f64(double addrspace(1)* %out, double addrspace(2)* %in) #0 {
|
|
%ld = load double, double addrspace(2)* %in
|
|
store double %ld, double addrspace(1)* %out
|
|
ret void
|
|
}
|
|
|
|
attributes #0 = { nounwind }
|