xref: /aosp_15_r20/external/llvm/test/CodeGen/Mips/adjust-callstack-sp.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=mips -mattr=mips16 | FileCheck %s -check-prefix=M16
2*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=mips -mcpu=mips2 | FileCheck %s -check-prefix=GP32
3*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=mips -mcpu=mips32 | FileCheck %s -check-prefix=GP32
4*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=mips -mcpu=mips32r6 | FileCheck %s -check-prefix=GP32
5*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=mips -mcpu=mips3 -target-abi n64 | FileCheck %s -check-prefix=GP64
6*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=mips -mcpu=mips64 -target-abi n64 | FileCheck %s -check-prefix=GP64
7*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=mips -mcpu=mips64r6 -target-abi n64 | FileCheck %s -check-prefix=GP64
8*9880d681SAndroid Build Coastguard Worker
9*9880d681SAndroid Build Coastguard Workerdeclare void @bar(i32*)
10*9880d681SAndroid Build Coastguard Worker
11*9880d681SAndroid Build Coastguard Workerdefine void @foo(i32 %sz) {
12*9880d681SAndroid Build Coastguard Worker  ; ALL-LABEL: foo:
13*9880d681SAndroid Build Coastguard Worker
14*9880d681SAndroid Build Coastguard Worker  ; M16-NOT:        addiu     $sp, 0 # 16 bit inst
15*9880d681SAndroid Build Coastguard Worker  ; GP32-NOT:       addiu     $sp, $sp, 0
16*9880d681SAndroid Build Coastguard Worker  ; GP64-NOT:       daddiu    $sp, $sp, 0
17*9880d681SAndroid Build Coastguard Worker  %a = alloca i32, i32 %sz
18*9880d681SAndroid Build Coastguard Worker  call void @bar(i32* %a)
19*9880d681SAndroid Build Coastguard Worker  ret void
20*9880d681SAndroid Build Coastguard Worker}
21