Andrew Trick
4f7d60c1ea
AArch64: Safely handle the incoming sret call argument.
...
This adds a safe interface to the machine independent InputArg struct
for accessing the index of the original (IR-level) argument. When a
non-native return type is lowered, we generate the hidden
machine-level sret argument on-the-fly. Before this fix, we were
representing this argument as OrigArgIndex == 0, which is an outright
lie. In particular this crashed in the AArch64 backend where we
actually try to access the type of the original argument.
Now we use a sentinel value for machine arguments that have no
original argument index. AArch64, ARM, Mips, and PPC now check for this
case before accessing the original argument.
Fixes <rdar://19792160> Null pointer assertion in AArch64TargetLowering
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229413 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-16 18:10:47 +00:00
..
2015-01-06 18:00:21 +00:00
2015-01-14 11:23:27 +00:00
2015-02-15 22:54:22 +00:00
2015-01-06 18:00:21 +00:00
2015-02-01 00:22:15 +00:00
2015-01-29 19:34:25 +00:00
2014-11-03 19:49:05 +00:00
2015-01-29 17:33:21 +00:00
2015-01-18 20:29:04 +00:00
2014-08-06 18:45:26 +00:00
2014-06-14 04:26:07 +00:00
2014-08-13 16:26:38 +00:00
2015-02-06 17:51:54 +00:00
2015-02-03 17:37:57 +00:00
2015-02-14 04:22:00 +00:00
2015-02-14 04:30:08 +00:00
2014-07-25 22:22:39 +00:00
2014-08-13 16:26:38 +00:00
2014-07-15 20:10:27 +00:00
2015-02-14 04:24:28 +00:00
2015-02-14 04:22:00 +00:00
2015-01-30 23:24:40 +00:00
2015-02-14 02:45:45 +00:00
2014-10-14 20:05:26 +00:00
2015-01-30 23:24:40 +00:00
2015-01-15 18:42:51 +00:00
2014-10-31 20:52:04 +00:00
2014-12-03 04:08:00 +00:00
2014-09-03 11:41:21 +00:00
2015-01-30 23:24:40 +00:00
2015-02-11 18:24:53 +00:00
2015-02-13 10:01:29 +00:00
2015-02-11 17:11:51 +00:00
2015-02-05 15:32:18 +00:00
2015-02-01 14:31:23 +00:00
2014-08-11 18:04:46 +00:00
2014-12-02 22:00:07 +00:00
2015-02-14 04:30:08 +00:00
2015-01-30 23:24:40 +00:00
2015-01-14 15:42:31 +00:00
2015-02-14 04:30:08 +00:00
2014-11-14 14:08:00 +00:00
2014-11-14 14:08:00 +00:00
2015-01-29 19:34:25 +00:00
2014-08-05 02:39:49 +00:00
2015-01-30 23:24:40 +00:00
2014-08-13 16:26:38 +00:00
2014-08-05 02:39:49 +00:00
2014-08-05 02:39:49 +00:00
2014-11-14 14:08:00 +00:00
2014-10-09 01:59:35 +00:00
2014-10-09 01:59:35 +00:00
2015-02-14 04:30:08 +00:00
2015-02-16 18:10:47 +00:00
2015-01-30 23:24:40 +00:00
2014-08-13 16:26:38 +00:00
2015-02-13 10:01:29 +00:00
2014-08-13 16:26:38 +00:00
2014-10-03 18:33:16 +00:00
2015-01-30 23:24:40 +00:00
2014-06-13 16:38:59 +00:00
2014-08-13 16:26:38 +00:00
2014-06-17 16:53:14 +00:00
2014-04-29 07:57:24 +00:00
2015-01-30 23:24:40 +00:00
2015-02-05 15:32:15 +00:00
2015-02-06 02:51:20 +00:00
2015-01-07 20:59:25 +00:00
2014-09-24 01:33:24 +00:00
2015-02-14 02:55:57 +00:00
2015-02-03 17:37:52 +00:00
2015-02-14 03:54:29 +00:00
2015-02-14 02:55:56 +00:00
2015-02-13 19:05:03 +00:00
2015-02-14 04:22:00 +00:00
2015-02-14 04:30:08 +00:00
2014-07-11 17:11:52 +00:00
2015-02-16 18:10:47 +00:00
2015-01-30 23:24:40 +00:00
2015-01-30 23:24:40 +00:00
2015-02-06 02:51:25 +00:00
2015-01-07 20:59:25 +00:00
2015-01-14 15:42:31 +00:00
2015-01-20 19:33:04 +00:00
2015-01-20 19:33:02 +00:00
2015-02-03 17:37:57 +00:00
2015-01-29 16:55:25 +00:00
2015-02-14 03:54:32 +00:00
2015-01-14 01:13:19 +00:00
2015-02-13 19:05:03 +00:00
2015-02-14 02:45:45 +00:00
2015-02-14 03:02:23 +00:00
2015-01-27 17:24:58 +00:00