summaryrefslogtreecommitdiff
path: root/test/CodeGen/Mips/adjust-callstack-sp.ll
blob: 32d77ac19ae6b1f225d31d40e772579ee9973182 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
; RUN: llc < %s -march=mips -mattr=mips16 | FileCheck %s -check-prefix=M16
; RUN: llc < %s -march=mips -mcpu=mips2 | FileCheck %s -check-prefix=GP32
; RUN: llc < %s -march=mips -mcpu=mips32 | FileCheck %s -check-prefix=GP32
; RUN: llc < %s -march=mips -mcpu=mips32r6 | FileCheck %s -check-prefix=GP32
; RUN: llc < %s -march=mips -mcpu=mips3 -target-abi n64 | FileCheck %s -check-prefix=GP64
; RUN: llc < %s -march=mips -mcpu=mips64 -target-abi n64 | FileCheck %s -check-prefix=GP64
; RUN: llc < %s -march=mips -mcpu=mips64r6 -target-abi n64 | FileCheck %s -check-prefix=GP64

declare void @bar(i32*)

define void @foo(i32 %sz) {
  ; ALL-LABEL: foo:

  ; M16-NOT:        addiu     $sp, 0 # 16 bit inst
  ; GP32-NOT:       addiu     $sp, $sp, 0
  ; GP64-NOT:       daddiu    $sp, $sp, 0
  %a = alloca i32, i32 %sz
  call void @bar(i32* %a)
  ret void
}