Akira Hatanaka
11184e4c8c
[mips] Add parameter Alignment to MipsFrameLowering's constructor.
...
No functionality changes.
llvm-svn: 178326
2013-03-29 01:51:04 +00:00
Akira Hatanaka
0bb60d8972
[mips] Rename function and variable names to start with proper case. Fix typos.
...
Delete commented-out code.
llvm-svn: 176844
2013-03-12 00:16:36 +00:00
Akira Hatanaka
97b43d8bdf
[mips] Add function MipsFrameLowering::estimateStackSize.
...
This function estimates stack size and will be called before
PrologEpilogInserter scans the callee-saved registers.
llvm-svn: 167313
2012-11-02 21:10:22 +00:00
Akira Hatanaka
fab8929459
Move the code that creates instances of MipsInstrInfo and MipsFrameLowering out
...
of MipsTargetMachine.cpp.
llvm-svn: 161191
2012-08-02 18:21:47 +00:00
Akira Hatanaka
fffad897f2
Set transient stack alignment in constructor of MipsFrameLowering and re-enable
...
test o32_cc_vararg.ll.
llvm-svn: 161189
2012-08-02 18:15:13 +00:00
Akira Hatanaka
d1c43cee24
Add definitions of two subclasses of MipsFrameLowering, Mips16FrameLowering and
...
MipsSEFrameLowering.
Implement MipsSEFrameLowering::hasReservedCallFrame. Call frames will not be
reserved if there is a call with a large call frame or there are variable sized
objects on the stack.
llvm-svn: 161090
2012-07-31 22:50:19 +00:00
Akira Hatanaka
02de0e4425
Let PEI::calculateFrameObjectOffsets compute the final stack size rather than
...
computing it in MipsFrameLowering::emitPrologue.
llvm-svn: 161078
2012-07-31 21:28:49 +00:00
Akira Hatanaka
efff7b763b
Make register Mips::RA allocatable if not in mips16 mode.
...
llvm-svn: 159971
2012-07-10 00:19:06 +00:00
Jia Liu
f54f60f3ce
remove blanks, and some code format
...
llvm-svn: 151625
2012-02-28 07:46:26 +00:00
Akira Hatanaka
dc7baed9d3
Mips64 aligns stack on 16-byte boundary.
...
llvm-svn: 140292
2011-09-22 02:53:37 +00:00
Evan Cheng
67c033e6b8
Move getInitialFrameState from TargetFrameInfo to MCAsmInfo (suggestions for
...
better location welcome).
llvm-svn: 135438
2011-07-18 22:29:13 +00:00
Akira Hatanaka
aa560006ed
Add support for C++ exception handling.
...
llvm-svn: 132131
2011-05-26 18:59:03 +00:00
Akira Hatanaka
f9e5750fc8
Change StackDirection from StackGrowsUp to StackGrowsDown.
...
The following improvements are accomplished as a result of applying this patch:
- Fixed frame objects' offsets (relative to either the virtual frame pointer or
the stack pointer) are set before instruction selection is completed. There is
no need to wait until Prologue/Epilogue Insertion is run to set them.
- Calculation of final offsets of fixed frame objects is straightforward. It is
no longer necessary to assign negative offsets to fixed objects for incoming
arguments in order to distinguish them from the others.
- Since a fixed object has its relative offset set during instruction
selection, there is no need to conservatively set its alignment to 4.
- It is no longer necessary to reorder non-fixed frame objects in
MipsFrameLowering::adjustMipsStackFrame.
llvm-svn: 131915
2011-05-23 20:16:59 +00:00
Akira Hatanaka
43407fe633
Make $fp and $ra callee-saved registers and let PrologEpilogInserter handle
...
saving and restoring them.
llvm-svn: 131745
2011-05-20 18:39:33 +00:00
Akira Hatanaka
e24891251c
Reverse unnecessary changes made in r129606 and r129608. There is no change in functionality.
...
llvm-svn: 129612
2011-04-15 21:51:11 +00:00
Akira Hatanaka
aef55c8801
Fix lines that have incorrect indentation or exceed 80 columns. There is no change in functionality.
...
llvm-svn: 129606
2011-04-15 21:00:26 +00:00
Bruno Cardoso Lopes
328e2ce043
Fix an old copy-n-paste
...
llvm-svn: 127020
2011-03-04 19:20:24 +00:00
Bruno Cardoso Lopes
95dbfac459
Ensure Mips::GP is properly reloaded after a function call. Patch by Sasa Stankovic
...
llvm-svn: 123768
2011-01-18 19:50:18 +00:00
Anton Korobeynikov
2f93128109
Rename TargetFrameInfo into TargetFrameLowering. Also, put couple of FIXMEs and fixes here and there.
...
llvm-svn: 123170
2011-01-10 12:39:04 +00:00