Reid Kleckner
04b36830cc
ArgPromotion: Don't touch variadic functions
...
Adding, removing, or changing non-pack parameters can change the ABI
classification of pack parameters. Clang and other frontends encode the
classification in the IR of the call site, but the callee side
determines it dynamically based on the number of registers consumed so
far. Changing the prototype affects the number of registers consumed
would break such code.
Dead argument elimination performs a similar task and already has a
similar check to avoid this problem.
Patch by Thomas Jablin!
llvm-svn: 216421
2014-08-25 23:58:48 +00:00
..
2013-08-16 00:37:11 +00:00
2014-08-21 22:45:21 +00:00
2014-08-25 23:58:48 +00:00
2014-08-21 21:50:01 +00:00
2014-06-09 22:42:55 +00:00
2014-02-13 14:44:26 +00:00
2013-08-16 00:37:11 +00:00
2014-07-29 10:20:22 +00:00
2014-06-10 00:32:29 +00:00
2014-03-13 23:18:37 +00:00
2014-08-21 02:12:35 +00:00
2013-08-16 00:37:11 +00:00
2014-03-09 06:41:58 +00:00
2014-08-18 22:18:11 +00:00
2013-09-27 22:26:25 +00:00
2013-08-16 00:37:11 +00:00
2014-08-13 10:49:33 +00:00
2014-06-05 04:31:43 +00:00
2014-08-25 17:51:14 +00:00
2014-08-08 05:50:43 +00:00
2014-08-18 22:18:14 +00:00
2014-08-21 08:25:45 +00:00
2014-08-14 21:09:37 +00:00
2014-08-24 09:10:57 +00:00
2014-07-18 19:13:09 +00:00
2014-08-22 00:40:43 +00:00
2014-07-30 22:51:54 +00:00
2014-05-27 22:03:28 +00:00
2014-08-11 05:02:04 +00:00
2013-08-16 00:37:11 +00:00
2014-07-19 03:25:16 +00:00
2014-05-29 01:55:07 +00:00
2013-08-16 00:37:11 +00:00
2014-07-18 06:07:13 +00:00
2014-01-03 17:20:01 +00:00
2014-01-29 13:16:53 +00:00
2014-05-27 22:03:28 +00:00
2014-06-09 22:42:55 +00:00
2014-07-24 22:36:40 +00:00
2013-08-16 00:37:11 +00:00
2014-08-25 04:56:54 +00:00
2014-06-13 14:24:07 +00:00
2014-02-02 22:43:55 +00:00
2014-03-20 19:54:47 +00:00
2014-07-11 10:36:00 +00:00
2013-11-22 21:49:45 +00:00
2014-07-14 18:52:02 +00:00
2014-07-15 10:46:51 +00:00
2014-07-30 22:51:54 +00:00
2014-03-18 22:32:43 +00:00
2014-08-01 23:21:21 +00:00
2013-08-16 00:37:11 +00:00
2013-08-16 00:37:11 +00:00
2014-08-21 10:45:30 +00:00
2013-08-16 00:37:11 +00:00
2014-08-21 22:45:21 +00:00
2013-12-23 14:51:56 +00:00
2014-03-13 04:50:29 +00:00
2014-06-13 14:54:09 +00:00
2014-07-16 23:25:00 +00:00
2014-08-02 23:41:54 +00:00
2014-03-21 15:51:51 +00:00
2014-08-25 04:56:54 +00:00
2014-08-22 23:27:04 +00:00
2014-02-27 01:24:56 +00:00
2013-11-22 19:24:39 +00:00
2014-07-23 06:24:49 +00:00
2014-06-09 22:42:55 +00:00
2014-08-13 20:31:53 +00:00