Tomasz Miąsko
1be1c2ebcf
Fix insertion of statements to be executed along return edge in inlining
...
Inlining creates additional statements to be executed along the return
edge: an assignment to the destination, storage end for temporaries.
Previously those statements where inserted directly into a call target,
but this is incorrect when the target has other predecessors.
Avoid the issue by creating a new dedicated block for those statements.
When the block happens to be redundant it will be removed by CFG
simplification that follows inlining.
Fixes #117355
2023-11-20 09:27:30 +01:00
..
2023-11-15 21:45:48 -05:00
2023-09-26 09:37:55 +02:00
2023-10-20 21:10:38 +00:00
2023-08-24 13:28:26 +02:00
2023-05-25 17:40:46 +00:00
2023-08-06 17:29:09 +03:00
2023-10-05 18:56:30 +03:00
2023-11-04 13:01:32 -04:00
2023-10-13 08:59:36 +00:00
2023-10-13 08:59:36 +00:00
2023-10-20 21:10:38 +00:00
2023-11-08 22:55:28 +01:00
2023-10-13 08:59:36 +00:00
2023-09-21 08:12:30 +02:00
2023-10-20 21:14:01 +00:00
2023-11-08 22:55:28 +01:00
2023-11-08 22:55:28 +01:00
2023-11-08 22:55:28 +01:00
2023-11-15 21:45:48 -05:00
2023-11-07 18:45:11 -05:00
2023-05-17 12:18:55 +00:00
2023-11-15 21:45:48 -05:00
2023-10-06 15:46:11 +00:00
2023-10-30 10:29:08 +01:00
2023-09-21 08:12:30 +02:00
2023-10-04 17:55:15 +00:00
2023-10-20 21:14:01 +00:00
2023-06-06 17:53:29 -04:00
2023-10-10 11:17:27 +02:00
2023-10-04 17:55:15 +00:00
2023-10-21 12:14:17 +00:00
2023-09-23 13:14:57 +00:00
2023-10-20 21:10:38 +00:00
2023-07-25 23:20:28 +02:00
2023-11-15 21:45:48 -05:00
2023-11-20 09:27:30 +01:00
2023-10-13 08:59:36 +00:00
2023-11-15 21:45:48 -05:00
2023-10-10 11:17:27 +02:00
2023-10-31 11:44:23 +00:00
2023-11-16 22:56:25 +00:00
2023-10-13 08:59:36 +00:00
2023-09-21 08:12:30 +02:00
2023-10-18 23:42:45 +11:00
2023-10-13 08:59:36 +00:00
2023-10-10 11:17:27 +02:00
2023-10-18 16:59:23 +00:00
2023-06-14 20:08:04 +00:00
2023-10-13 08:59:36 +00:00
2023-10-20 21:10:38 +00:00
2023-04-21 21:34:59 +00:00
2023-10-21 10:32:59 +00:00
2023-07-25 23:20:28 +02:00
2023-11-11 01:51:09 +01:00
2023-09-21 08:12:30 +02:00
2023-10-05 18:56:30 +03:00
2023-10-20 21:10:38 +00:00
2023-11-17 09:29:48 +00:00
2023-10-31 11:44:23 +00:00
2023-09-21 08:12:30 +02:00
2023-10-25 06:46:45 +00:00
2023-11-05 21:51:47 +03:30
2023-11-14 17:07:34 +01:00
2023-10-31 11:44:23 +00:00
2023-10-31 11:44:23 +00:00