forked from OSchip/llvm-project
[MIPS] Use ABI to determine stack alignment.
Summary: The stack alignment depends on the ABI (16 bytes for N32 and N64 and 8 bytes for O32), not the CPU type. Reviewers: sdardis Reviewed By: sdardis Subscribers: atanasyan, arichardson, llvm-commits Differential Revision: https://reviews.llvm.org/D36326 llvm-svn: 310768
This commit is contained in:
parent
5d6df36fde
commit
eebcc47500
|
@ -295,7 +295,9 @@ public:
|
|||
// really use them if in addition we are in mips16 mode
|
||||
static bool useConstantIslands();
|
||||
|
||||
unsigned stackAlignment() const { return hasMips64() ? 16 : 8; }
|
||||
unsigned stackAlignment() const {
|
||||
return isABI_N32() || isABI_N64() ? 16 : 8;
|
||||
}
|
||||
|
||||
// Grab relocation model
|
||||
Reloc::Model getRelocationModel() const;
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
; RUN: llc -march=mipsel < %s | FileCheck %s -check-prefix=32
|
||||
; RUN: llc -march=mipsel -mattr=+fp64 < %s | FileCheck %s -check-prefix=32
|
||||
; RUN: llc -march=mips64el -mcpu=mips3 < %s | FileCheck %s -check-prefix=64
|
||||
; RUN: llc -march=mips64el -mcpu=mips4 < %s | FileCheck %s -check-prefix=64
|
||||
; RUN: llc -march=mips64el -mcpu=mips64 < %s | FileCheck %s -check-prefix=64
|
||||
|
||||
; 32: addiu $sp, $sp, -8
|
||||
; 64: addiu $sp, $sp, -16
|
||||
; 64: daddiu $sp, $sp, -16
|
||||
|
||||
define i32 @foo1() #0 {
|
||||
entry:
|
||||
|
|
Loading…
Reference in New Issue