summaryrefslogtreecommitdiff
path: root/test/CodeGen/PowerPC/stacksize.ll
diff options
context:
space:
mode:
authorTim Shen <timshen91@gmail.com>2017-03-07 07:40:10 +0000
committerTim Shen <timshen91@gmail.com>2017-03-07 07:40:10 +0000
commit107e5edeba2db2d9639d49409b790ba98168c98c (patch)
treeb806c8d84ca2874cb5c96aef3c7f7a85d0d2eb26 /test/CodeGen/PowerPC/stacksize.ll
parentcb24f8cc5c993a01f57b8beb8935315c7980d7a3 (diff)
Revert "[PowerPC][ELFv2ABI] Allocate parameter area on-demand to reduce stack frame size"
This reverts commit r296771. We found some wide spread test failures internally. I'm working on a testcase. Politely revert the patch in the mean time. :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@297124 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/PowerPC/stacksize.ll')
-rw-r--r--test/CodeGen/PowerPC/stacksize.ll86
1 files changed, 0 insertions, 86 deletions
diff --git a/test/CodeGen/PowerPC/stacksize.ll b/test/CodeGen/PowerPC/stacksize.ll
deleted file mode 100644
index 947aaa0fa49..00000000000
--- a/test/CodeGen/PowerPC/stacksize.ll
+++ /dev/null
@@ -1,86 +0,0 @@
-; For ELFv2 ABI, we can avoid allocating the parameter area in the stack frame of the caller function
-; if all the arguments can be passed to the callee in registers.
-; For ELFv1 ABI, we always need to allocate the parameter area.
-
-; Tests for ELFv2 ABI
-; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu -target-abi elfv2 < %s | FileCheck %s -check-prefix=PPC64-ELFV2
-; RUN: llc -verify-machineinstrs -mtriple=powerpc64-unknown-linux-gnu -target-abi elfv2 < %s | FileCheck %s -check-prefix=PPC64-ELFV2
-
-; Tests for ELFv1 ABI
-; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu -target-abi elfv1 < %s | FileCheck %s -check-prefix=PPC64-ELFV1
-; RUN: llc -verify-machineinstrs -mtriple=powerpc64-unknown-linux-gnu -target-abi elfv1 < %s | FileCheck %s -check-prefix=PPC64-ELFV1
-
-; If the callee has at most eight integer args, parameter area can be ommited for ELFv2 ABI.
-
-; PPC64-ELFV2-LABEL: WithoutParamArea1:
-; PPC64-ELFV2-NOT: stw {{[0-9]+}}, -{{[0-9]+}}(1)
-; PPC64-ELFV2: stdu 1, -32(1)
-; PPC64-ELFV2: addi 1, 1, 32
-; PPC64-ELFV2-NOT: lwz {{[0-9]+}}, -{{[0-9]+}}(1)
-; PPC64-ELFV1-LABEL: WithoutParamArea1:
-; PPC64-ELFV1-NOT: stw {{[0-9]+}}, -{{[0-9]+}}(1)
-; PPC64-ELFV1: stdu 1, -112(1)
-; PPC64-ELFV1: addi 1, 1, 112
-; PPC64-ELFV1-NOT: lwz {{[0-9]+}}, -{{[0-9]+}}(1)
-define signext i32 @WithoutParamArea1(i32 signext %a) local_unnamed_addr #0 {
-entry:
- %call = tail call signext i32 @onearg(i32 signext %a) #2
- ret i32 %call
-}
-
-; PPC64-ELFV2-LABEL: WithoutParamArea2:
-; PPC64-ELFV2-NOT: stw {{[0-9]+}}, -{{[0-9]+}}(1)
-; PPC64-ELFV2: stdu 1, -32(1)
-; PPC64-ELFV2: addi 1, 1, 32
-; PPC64-ELFV2-NOT: lwz {{[0-9]+}}, -{{[0-9]+}}(1)
-; PPC64-ELFV1-LABEL: WithoutParamArea2:
-; PPC64-ELFV1-NOT: stw {{[0-9]+}}, -{{[0-9]+}}(1)
-; PPC64-ELFV1: stdu 1, -112(1)
-; PPC64-ELFV1: addi 1, 1, 112
-; PPC64-ELFV1-NOT: lwz {{[0-9]+}}, -{{[0-9]+}}(1)
-define signext i32 @WithoutParamArea2(i32 signext %a) local_unnamed_addr #0 {
-entry:
- %call = tail call signext i32 @eightargs(i32 signext %a, i32 signext %a, i32 signext %a, i32 signext %a, i32 signext %a, i32 signext %a, i32 signext %a, i32 signext %a) #2
- ret i32 %call
-}
-
-; If the callee has more than eight integer args or variable number of args,
-; parameter area cannot be ommited even for ELFv2 ABI
-
-; PPC64-ELFV2-LABEL: WithParamArea1:
-; PPC64-ELFV2-NOT: stw {{[0-9]+}}, -{{[0-9]+}}(1)
-; PPC64-ELFV2: stdu 1, -96(1)
-; PPC64-ELFV2: addi 1, 1, 96
-; PPC64-ELFV2-NOT: lwz {{[0-9]+}}, -{{[0-9]+}}(1)
-; PPC64-ELFV1-LABEL: WithParamArea1:
-; PPC64-ELFV1-NOT: stw {{[0-9]+}}, -{{[0-9]+}}(1)
-; PPC64-ELFV1: stdu 1, -112(1)
-; PPC64-ELFV1: addi 1, 1, 112
-; PPC64-ELFV1-NOT: lwz {{[0-9]+}}, -{{[0-9]+}}(1)
-define signext i32 @WithParamArea1(i32 signext %a) local_unnamed_addr #0 {
-entry:
- %call = tail call signext i32 (i32, ...) @varargs(i32 signext %a, i32 signext %a) #2
- ret i32 %call
-}
-
-; PPC64-ELFV2-LABEL: WithParamArea2:
-; PPC64-ELFV2-NOT: stw {{[0-9]+}}, -{{[0-9]+}}(1)
-; PPC64-ELFV2: stdu 1, -112(1)
-; PPC64-ELFV2: addi 1, 1, 112
-; PPC64-ELFV2-NOT: lwz {{[0-9]+}}, -{{[0-9]+}}(1)
-; PPC64-ELFV1-LABEL: WithParamArea2:
-; PPC64-ELFV1-NOT: stw {{[0-9]+}}, -{{[0-9]+}}(1)
-; PPC64-ELFV1: stdu 1, -128(1)
-; PPC64-ELFV1: addi 1, 1, 128
-; PPC64-ELFV1-NOT: lwz {{[0-9]+}}, -{{[0-9]+}}(1)
-define signext i32 @WithParamArea2(i32 signext %a) local_unnamed_addr #0 {
-entry:
- %call = tail call signext i32 @nineargs(i32 signext %a, i32 signext %a, i32 signext %a, i32 signext %a, i32 signext %a, i32 signext %a, i32 signext %a, i32 signext %a, i32 signext %a) #2
- ret i32 %call
-}
-
-declare signext i32 @onearg(i32 signext) local_unnamed_addr #1
-declare signext i32 @eightargs(i32 signext, i32 signext, i32 signext, i32 signext, i32 signext, i32 signext, i32 signext, i32 signext) local_unnamed_addr #1
-declare signext i32 @nineargs(i32 signext, i32 signext, i32 signext, i32 signext, i32 signext, i32 signext, i32 signext, i32 signext, i32 signext) local_unnamed_addr #1
-declare signext i32 @varargs(i32 signext, ...) local_unnamed_addr #1
-