Maksim Panchenko
778801cc84
[BOLT] Never call fixBranches() on non-simple functions ( #141112 )
...
We should never call fixBranches() on a function with invalid CFG. E.g.,
ValidateInternalCalls modifies CFG for its internal analysis purposes.
At the same time, it marks the function as non-simple with an assumption
that fixBranches() will never run on that function.
However, calculateEmittedSize() by default calls fixBranches() which can
lead to all sorts of issues, including assertions firing in
fixBranches().
The fix is to use the original size for non-simple functions in
calculateEmittedSize() since we are supposed to emit the function
unmodified. Additionally, add an assertion at the start of
fixBranches().
2025-05-22 14:01:54 -07:00
..
2025-03-19 14:55:59 +00:00
2024-05-31 15:14:37 -07:00
2024-07-16 22:14:43 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2025-05-13 13:23:18 -07:00
2024-05-31 15:14:37 -07:00
2025-05-12 17:15:16 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-06-17 16:45:34 -07:00
2024-08-07 16:25:46 +04:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2025-05-15 13:49:12 +01:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2025-02-05 09:31:58 -08:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-07-30 16:58:01 -07:00
2024-07-30 16:58:01 -07:00
2024-11-27 00:14:00 +02:00
2025-05-20 17:41:27 -07:00
2025-05-20 17:41:27 -07:00
2024-05-31 15:14:37 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-08-08 16:41:51 -07:00
2024-07-10 11:35:40 -07:00
2024-05-31 15:14:37 -07:00
2024-07-10 11:35:40 -07:00
2024-07-10 11:35:40 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-08-08 16:41:51 -07:00
2024-07-31 11:35:38 -07:00
2024-08-08 16:41:51 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-12-11 14:27:56 -08:00
2024-12-11 14:27:56 -08:00
2024-05-25 07:48:57 -07:00
2024-05-25 07:48:57 -07:00
2024-12-16 09:54:00 -08:00
2024-06-05 09:57:11 -07:00
2024-05-25 07:48:57 -07:00
2024-12-06 15:45:52 -08:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-11-27 00:14:00 +02:00
2024-05-31 15:14:37 -07:00
2024-08-08 16:41:51 -07:00
2024-05-31 15:16:21 -07:00
2024-07-26 18:58:25 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-05-31 15:14:37 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-05-31 15:14:37 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-05-31 15:14:37 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-08-08 16:41:51 -07:00
2024-05-31 15:14:37 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-08-08 16:41:51 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2025-01-31 13:19:49 -08:00
2024-05-31 15:14:37 -07:00
2024-08-12 17:18:17 -07:00
2024-08-23 08:20:11 -07:00
2025-02-25 10:53:45 -08:00
2024-05-31 15:14:37 -07:00
2024-11-22 00:28:55 -08:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2025-05-22 14:01:54 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-08-12 17:18:17 -07:00
2024-06-29 21:19:00 -07:00
2025-05-14 09:47:14 -07:00
2024-05-31 15:14:37 -07:00
2025-04-18 21:02:09 -07:00
2024-08-12 17:18:17 -07:00
2025-03-13 20:55:43 -07:00
2025-03-13 20:55:43 -07:00
2024-12-16 21:49:53 -08:00
2025-03-13 20:55:43 -07:00
2025-03-13 20:55:43 -07:00
2024-05-31 15:14:37 -07:00
2024-09-23 18:22:43 +08:00
2024-05-31 15:14:37 -07:00
2025-03-19 14:55:59 +00:00
2024-07-09 20:02:01 -07:00
2024-08-21 00:35:07 -04:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-08-23 08:20:11 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-06-27 17:26:58 -07:00
2024-06-27 17:26:58 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-11-27 00:14:00 +02:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-07-09 20:02:01 -07:00
2024-07-18 20:57:05 -07:00
2024-05-31 15:14:37 -07:00
2024-08-12 17:18:17 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-08-12 17:18:17 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-12-26 09:54:23 -08:00
2024-12-26 09:54:23 -08:00
2024-12-26 09:54:23 -08:00
2024-12-26 09:54:23 -08:00
2024-12-26 09:54:23 -08:00
2024-12-26 09:54:23 -08:00
2024-12-26 09:54:23 -08:00
2024-12-26 09:54:23 -08:00
2024-12-26 09:54:23 -08:00
2024-12-26 09:54:23 -08:00
2024-05-31 17:50:58 -07:00
2025-03-31 18:31:33 -07:00
2024-09-23 15:47:19 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-11-12 07:21:03 -08:00
2024-11-12 07:21:03 -08:00
2024-11-27 00:14:00 +02:00
2024-11-12 07:21:03 -08:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-07-03 11:39:18 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2025-04-18 17:29:24 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-11-21 18:18:30 -08:00
2025-02-05 09:31:58 -08:00
2025-05-13 13:23:18 -07:00
2024-09-25 23:44:06 +02:00
2024-05-13 18:02:38 -07:00
2025-04-22 15:42:47 -04:00
2025-04-22 15:42:47 -04:00
2024-09-12 20:51:35 -07:00
2024-09-12 20:51:35 -07:00
2024-08-12 17:18:17 -07:00
2025-05-12 17:15:16 -07:00
2025-05-12 17:15:16 -07:00
2024-05-31 15:14:37 -07:00
2024-07-05 15:18:49 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-06-27 17:26:58 -07:00
2024-05-31 15:14:37 -07:00
2024-08-07 20:52:19 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2025-02-21 09:10:53 -08:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2025-04-10 21:17:04 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-06-18 13:41:57 +02:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-07-24 07:16:39 -07:00
2024-08-12 17:18:17 -07:00
2024-05-31 15:14:37 -07:00
2024-05-31 15:14:37 -07:00
2024-08-12 17:18:17 -07:00
2024-05-31 15:14:37 -07:00
2024-05-19 20:15:31 -07:00
2024-09-03 11:27:57 -07:00
2024-05-31 15:14:37 -07:00