1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 20:12:56 +02:00
llvm-mirror/lib
Jonas Paulsson 4e06f54193 [Stack realignment] Handling of aligned allocas.
This patch implements dynamic realignment of stack objects for targets
with a non-realigned stack pointer. Behaviour in FunctionLoweringInfo
is changed so that for a target that has StackRealignable set to
false, over-aligned static allocas are considered to be variable-sized
objects and are handled with DYNAMIC_STACKALLOC nodes.

It would be good to group aligned allocas into a single big alloca as
an optimization, but this is yet todo.

SystemZ benefits from this, due to its stack frame layout.

New tests SystemZ/alloca-03.ll for aligned allocas, and
SystemZ/alloca-04.ll for "no-realign-stack" attribute on functions.

Review and help from Ulrich Weigand and Hal Finkel.

llvm-svn: 254227
2015-11-28 11:02:32 +00:00
..
Analysis [LoopVectorize] Use MapVector rather than DenseMap for MinBWs. 2015-11-26 20:39:51 +00:00
AsmParser AsmParser: Make the code for parsing unnamed aliases more closely resemble that for unnamed globals. 2015-11-25 02:54:07 +00:00
Bitcode [ThinLTO] Handle bitcode without function summary sections gracefully 2015-11-21 21:55:48 +00:00
CodeGen [Stack realignment] Handling of aligned allocas. 2015-11-28 11:02:32 +00:00
DebugInfo Replace dyn_cast with isa in places that weren't using the returned value for more than a boolean check. NFC. 2015-11-18 07:07:59 +00:00
ExecutionEngine [RuntimeDyld] Fix a class of arithmetic errors introduced in r253918 2015-11-24 20:37:01 +00:00
Fuzzer [libFuzzer] add a flag -exact_artifact_path 2015-11-25 21:40:46 +00:00
IR Disallow aliases to available_externally. 2015-11-26 19:22:59 +00:00
IRReader
LibDriver [Option] Use an ArrayRef to store the Option Infos in OptTable. NFC 2015-10-21 16:30:42 +00:00
LineEditor
Linker Simplify the linking of recursive data. 2015-11-27 20:28:19 +00:00
LTO [LTO] Add option to emit assembly from LTOCodeGenerator 2015-11-19 23:59:24 +00:00
MC MC: Simplify handling of temporary symbols in COFF writer. 2015-11-26 23:29:27 +00:00
Object [ThinLTO] Deduplicate function index loading into shared helper (NFC) 2015-11-23 19:19:11 +00:00
Option [Option] Use an ArrayRef to store the Option Infos in OptTable. NFC 2015-10-21 16:30:42 +00:00
Passes [PM] Port StripDeadPrototypes to the new pass manager 2015-10-30 23:28:12 +00:00
ProfileData [PGO] Add return code for vp rt record init routine to indicate error condition 2015-11-28 05:47:34 +00:00
Support Add Windows error code and tidy formatting for system errors. 2015-11-23 17:34:20 +00:00
TableGen [TblGen] ArrayRefize TGParser. No functional change intended. 2015-10-24 12:46:45 +00:00
Target [Stack realignment] Handling of aligned allocas. 2015-11-28 11:02:32 +00:00
Transforms Use range-based for loops. NFC 2015-11-28 08:23:04 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile