Jeremy Morse
624e52b1e3
[DebugInfo] Handle trailing empty blocks when seeking prologue_end spot ( #117320 )
...
The optimiser will produce empty blocks that are unconditionally
executed according to the CFG -- while it may not be meaningful code,
and won't get a prologue_end position, we need to not crash on this
input.
The fault comes from assuming that there's always a next block with some
instructions in it, that will eventually produce some meaningful control
flow to stop at -- in the given reproducer in issue #117206 this isn't
true, because the function terminates with `unreachable`. Thus, I've
refactored the "get next instruction logic" into a helper that'll step
through all blocks and terminate if there aren't any more.
Reproducer from aeubanks
2024-11-26 14:24:25 +00:00
..
2024-11-13 09:55:37 -08:00
2024-02-09 09:20:25 +01:00
2024-11-07 08:11:15 +00:00
2024-06-14 15:07:27 +01:00
2024-10-15 17:32:16 +08:00
2024-11-19 07:10:36 +00:00
2024-08-29 17:53:32 +01:00
2024-04-26 08:30:27 -07:00
2024-10-15 11:36:24 +02:00
2024-11-26 14:24:25 +00:00
2024-02-06 13:02:38 -08:00
2024-11-11 21:35:19 +00:00
2024-05-15 13:10:16 +01:00
2024-11-06 00:20:21 +03:00
2024-10-09 13:51:52 +04:00
2024-08-15 15:25:54 -04:00
2024-01-09 10:48:23 -08:00
2024-08-05 16:38:08 +02:00
2024-11-18 10:49:50 +01:00
2024-11-04 09:40:54 -05:00
2024-06-27 13:31:15 -04:00
2023-12-14 19:47:15 -08:00
2024-06-10 17:04:54 +01:00
2020-02-20 09:12:05 +07:00
2024-04-16 17:07:46 +01:00
2024-04-16 17:07:46 +01:00
2024-04-16 17:07:46 +01:00
2024-04-16 17:07:46 +01:00
2024-04-16 17:07:46 +01:00
2024-04-16 17:07:46 +01:00
2024-04-16 17:07:46 +01:00
2015-05-31 23:37:04 +00:00
2024-07-24 09:07:25 +01:00
2018-12-21 22:25:01 +00:00
2019-12-03 08:54:12 +05:30
2018-02-23 23:01:06 +00:00
2024-05-30 12:35:10 +01:00
2024-06-14 15:07:27 +01:00
2024-02-01 08:47:11 -08:00
2024-03-08 07:34:36 +07:00
2020-04-09 20:53:58 -07:00
2024-06-07 12:59:10 -07:00
2024-02-20 12:09:00 -08:00
2022-10-12 12:49:17 +02:00
2021-03-09 09:26:58 +01:00
2024-06-14 15:07:27 +01:00
2014-10-03 20:01:09 +00:00
2024-07-22 19:56:11 +01:00
2024-04-16 17:07:46 +01:00
2024-05-03 09:51:56 -07:00
2024-03-18 14:41:32 +00:00
2024-04-05 14:18:59 +01:00
2024-06-14 15:07:27 +01:00
2024-06-14 15:07:27 +01:00
2024-06-14 15:07:27 +01:00
2024-06-14 15:07:27 +01:00
2024-06-14 15:07:27 +01:00
2024-06-14 15:07:27 +01:00
2023-12-12 15:49:24 +00:00
2024-08-21 17:52:37 -07:00
2024-07-09 09:17:07 -07:00
2024-06-11 17:34:15 +01:00
2024-06-12 16:55:38 +01:00
2019-01-31 14:22:50 +00:00
2019-02-01 10:24:55 +00:00
2024-09-02 11:56:40 +01:00
2024-06-25 12:17:20 +02:00
2024-04-16 17:07:46 +01:00