xref: /aosp_15_r20/external/llvm/test/CodeGen/X86/avx-varargs-x86_64.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=x86_64-apple-darwin -mcpu=corei7-avx -mattr=+avx | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker; <rdar://problem/10463281>
3*9880d681SAndroid Build Coastguard Worker; Check that the <8 x float> is passed on the stack.
4*9880d681SAndroid Build Coastguard Worker
5*9880d681SAndroid Build Coastguard Worker@x = common global <8 x float> zeroinitializer, align 32
6*9880d681SAndroid Build Coastguard Workerdeclare i32 @f(i32, ...)
7*9880d681SAndroid Build Coastguard Worker
8*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: test1:
9*9880d681SAndroid Build Coastguard Worker; CHECK: vmovaps	%ymm0, (%rsp)
10*9880d681SAndroid Build Coastguard Workerdefine void @test1() nounwind uwtable ssp {
11*9880d681SAndroid Build Coastguard Workerentry:
12*9880d681SAndroid Build Coastguard Worker  %0 = load <8 x float>, <8 x float>* @x, align 32
13*9880d681SAndroid Build Coastguard Worker  %call = call i32 (i32, ...) @f(i32 1, <8 x float> %0)
14*9880d681SAndroid Build Coastguard Worker  ret void
15*9880d681SAndroid Build Coastguard Worker}
16