Jonas Paulsson
bd9bd9e500
[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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254227 91177308-0d34-0410-b5e6-96231b3b80d8
2015-11-28 11:02:32 +00:00
..
2015-09-10 16:49:58 +00:00
2015-05-11 22:41:07 +00:00
2015-10-04 02:22:52 +00:00
2015-11-18 00:34:10 +00:00
2015-08-03 15:29:47 +00:00
2015-11-25 09:11:53 +00:00
2015-08-10 11:59:44 +00:00
2015-09-29 10:12:57 +00:00
2015-11-09 12:40:30 +00:00
2012-12-27 06:47:41 +00:00
2015-11-22 15:20:19 +00:00
2015-11-24 02:21:43 +00:00
2015-05-27 22:14:58 +00:00
2015-05-24 16:58:59 +00:00
2014-04-24 18:27:29 +00:00
2015-10-15 17:54:06 +00:00
2015-06-23 20:09:03 +00:00
2015-10-23 00:17:40 +00:00
2015-10-05 04:43:57 +00:00
2015-06-23 09:49:53 +00:00
2015-06-23 09:49:53 +00:00
2015-06-23 09:49:53 +00:00
2015-10-05 04:44:18 +00:00
2015-11-19 16:35:08 +00:00
2015-06-23 09:49:53 +00:00
2015-06-23 09:49:53 +00:00
2013-03-25 13:47:46 +00:00
2015-05-20 01:07:23 +00:00
2015-09-25 21:51:14 +00:00
2015-09-25 21:51:14 +00:00
2015-07-14 17:38:17 +00:00
2015-09-25 23:50:53 +00:00
2015-09-09 17:55:00 +00:00
2015-07-14 17:52:07 +00:00
2015-10-05 04:44:18 +00:00
2015-06-23 09:49:53 +00:00
2015-11-18 01:03:19 +00:00
2015-06-23 09:49:53 +00:00
2015-10-14 03:04:03 +00:00
2015-11-05 19:34:57 +00:00
2015-11-17 00:51:23 +00:00
2015-06-23 09:49:53 +00:00
2015-08-07 18:04:17 +00:00
2015-11-28 11:02:32 +00:00
2015-11-17 21:10:25 +00:00
2015-06-23 09:49:53 +00:00
2015-06-15 20:30:22 +00:00
2015-06-23 09:49:53 +00:00
2015-11-11 02:26:42 +00:00
2015-11-21 21:42:26 +00:00
2015-10-09 16:54:49 +00:00
2015-06-23 09:49:53 +00:00
2015-07-13 17:21:31 +00:00
2015-08-11 23:09:45 +00:00
2015-11-17 21:10:25 +00:00
2015-10-05 04:44:18 +00:00
2015-06-26 22:06:47 +00:00
2015-04-11 02:11:45 +00:00
2015-04-11 02:11:45 +00:00
2015-07-13 17:21:31 +00:00
2015-10-05 04:44:08 +00:00
2015-11-03 01:53:29 +00:00
2015-06-23 09:49:53 +00:00
2014-08-13 16:26:38 +00:00
2015-11-24 13:07:35 +00:00
2013-01-10 00:45:19 +00:00
2015-08-19 00:13:25 +00:00
2015-11-19 23:59:24 +00:00
2015-11-03 01:53:29 +00:00
2015-06-23 09:49:53 +00:00
2015-08-14 21:14:50 +00:00
2015-08-08 18:27:36 +00:00
2015-10-05 04:46:30 +00:00
2014-04-21 09:34:48 +00:00
2015-10-19 17:44:22 +00:00
2015-10-05 04:46:30 +00:00
2015-06-23 09:49:53 +00:00
2015-06-23 09:49:53 +00:00
2015-09-09 17:55:00 +00:00
2015-11-03 01:53:29 +00:00
2014-07-01 21:19:13 +00:00
2015-06-23 09:49:53 +00:00
2015-07-28 06:18:04 +00:00
2015-06-23 09:49:53 +00:00
2015-11-18 01:21:06 +00:00
2015-10-09 00:15:13 +00:00
2015-11-25 19:41:11 +00:00
2015-11-09 23:31:01 +00:00
2015-07-09 17:11:15 +00:00
2014-04-14 00:51:57 +00:00
2015-11-03 23:40:03 +00:00
2015-07-15 08:22:23 +00:00
2015-11-24 13:07:35 +00:00
2015-11-24 13:07:35 +00:00
2015-06-23 09:49:53 +00:00
2015-11-17 21:10:25 +00:00