R600/SI: Add support for f64 kernel arguments

Patch by: Niels Ole Salscheider

Reviewed-by: Tom Stellard <thomas.stellard@amd.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186182 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Tom Stellard 2013-07-12 18:15:26 +00:00
parent 97781281ca
commit c9c322cc39
2 changed files with 10 additions and 1 deletions

View File

@ -39,7 +39,7 @@ def CC_SI : CallingConv<[
// Calling convention for SI compute kernels
def CC_SI_Kernel : CallingConv<[
CCIfType<[v4i32, v4f32], CCAssignToStack <16, 4>>,
CCIfType<[i64], CCAssignToStack < 8, 4>>,
CCIfType<[i64, f64], CCAssignToStack < 8, 4>>,
CCIfType<[i32, f32], CCAssignToStack < 4, 4>>,
CCIfType<[i16], CCAssignToStack < 2, 4>>,
CCIfType<[i8], CCAssignToStack < 1, 4>>

View File

@ -0,0 +1,9 @@
; RUN: llc < %s -march=r600 -mcpu=tahiti | FileCheck %s
; SI-CHECK: @f64_kernel_arg
; SI-CHECK: BUFFER_STORE_DWORDX2
define void @f64_kernel_arg(double addrspace(1)* %out, double %in) {
entry:
store double %in, double addrspace(1)* %out
ret void
}