Florian Hahn
4e2b4f97a0
[ShrinkWrap] Use underlying object to rule out stack access.
...
Allow shrink-wrapping past memory accesses that only access globals or
function arguments. This patch uses getUnderlyingObject to try to
identify the accessed object by a given memory operand. If it is a
global or an argument, it does not access the stack of the current
function and should not block shrink wrapping.
Note that the caller's stack may get accessed when passing an argument
via the stack, but not the stack of the current function.
This addresses part of the TODO from D63152.
Reviewed By: thegameg
Differential Revision: https://reviews.llvm.org/D149668
2023-05-03 09:28:07 +01:00
..
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-05-24 19:43:40 +02:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2023-01-09 08:58:33 +00:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-10-12 12:49:17 +02:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-01-21 11:37:49 +00:00
2022-12-09 20:17:37 +00:00
2022-10-12 12:49:17 +02:00
2021-06-01 21:59:47 -07:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00
2021-11-24 12:30:55 +00:00
2022-10-12 12:49:17 +02:00
2022-12-13 16:08:09 +01:00
2023-01-18 09:58:32 +01:00
2022-12-22 03:31:36 -05:00
2022-12-22 03:31:36 -05:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-06-15 06:25:22 +01:00
2021-04-29 09:35:48 -07:00
2022-12-09 01:04:45 +03:00
2022-12-09 01:04:45 +03:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-06-18 00:52:34 +00:00
2022-01-26 13:08:35 -08:00
2021-08-05 06:14:40 -07:00
2022-07-08 10:15:25 -07:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-11-07 15:06:54 +00:00
2021-11-07 15:06:54 +00:00
2022-12-13 16:08:09 +01:00
2021-11-07 15:06:54 +00:00
2022-12-25 13:28:27 -08:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2023-02-09 18:45:20 +03:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2023-04-26 09:03:07 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2023-01-09 08:58:33 +00:00
2023-01-06 18:03:48 +00:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2023-01-06 19:31:10 +00:00
2021-11-24 11:48:16 +00:00
2023-01-06 19:31:10 +00:00
2023-01-06 19:31:10 +00:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2023-01-06 19:31:10 +00:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-09 01:04:45 +03:00
2023-01-06 10:51:02 +00:00
2023-03-29 21:01:38 +00:00
2023-03-16 09:55:15 +00:00
2022-05-05 18:18:53 +00:00
2023-01-11 15:07:11 -08:00
2021-05-24 19:43:40 +02:00
2022-09-22 17:08:41 +00:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-12-24 00:47:04 +02:00
2022-12-15 02:57:08 +00:00
2022-12-22 03:31:36 -05:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-11-07 15:06:54 +00:00
2021-12-24 00:47:04 +02:00
2021-12-14 15:41:53 -08:00
2022-12-13 16:08:09 +01:00
2023-02-19 16:52:26 -05:00
2022-12-13 16:08:09 +01:00
2022-08-09 13:11:51 +08:00
2022-12-13 16:08:09 +01:00
2021-11-14 21:36:12 -08:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-05-24 19:43:40 +02:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-12-24 00:47:04 +02:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-11-07 15:06:54 +00:00
2021-11-07 15:06:54 +00:00
2023-01-31 14:12:02 -08:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-06-29 09:21:00 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-07-29 13:14:25 -07:00
2022-09-26 16:23:37 -07:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-08-02 10:41:47 -07:00
2022-12-13 16:08:09 +01:00
2022-04-27 21:18:14 +00:00
2023-01-11 15:07:11 -08:00
2023-01-11 15:07:11 -08:00
2023-01-11 15:07:11 -08:00
2023-04-20 11:42:24 -07:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2023-01-05 15:36:50 +00:00
2023-04-25 13:17:46 -07:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-07-08 10:15:25 -07:00
2022-02-09 11:51:43 -08:00
2021-09-09 18:59:50 -07:00
2022-02-09 11:51:43 -08:00
2022-02-03 13:39:19 -08:00
2021-05-24 19:43:40 +02:00
2022-12-13 16:08:09 +01:00
2022-03-12 13:27:42 -08:00
2021-11-24 17:16:35 +00:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-04-07 07:00:56 -04:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-05-24 19:43:40 +02:00
2022-03-22 16:46:47 +04:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2023-03-16 23:54:03 +05:30
2023-03-16 23:54:03 +05:30
2021-05-24 19:43:40 +02:00
2022-12-13 16:08:09 +01:00
2023-02-19 16:52:26 -05:00
2023-02-19 16:52:26 -05:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-07-12 17:44:02 -07:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2023-04-27 13:56:09 +01:00
2022-12-13 16:08:09 +01:00
2023-01-06 19:31:10 +00:00
2023-01-06 18:03:48 +00:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2023-01-20 14:47:11 +00:00
2022-12-13 16:08:09 +01:00
2023-01-06 18:03:48 +00:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2023-01-09 08:58:33 +00:00
2023-01-09 08:58:33 +00:00
2023-01-20 14:47:11 +00:00
2022-03-22 16:46:47 +04:00
2022-12-13 16:08:09 +01:00
2023-01-09 08:58:33 +00:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2023-01-06 10:51:02 +00:00
2022-12-13 16:08:09 +01:00
2021-12-24 00:47:04 +02:00
2021-11-07 15:06:54 +00:00
2023-01-06 19:31:10 +00:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-09-30 16:01:33 -07:00
2021-11-17 11:51:29 +00:00
2021-06-30 16:54:13 -04:00
2021-11-17 11:51:29 +00:00
2023-01-06 19:31:10 +00:00
2022-12-13 16:08:09 +01:00
2021-11-07 15:06:54 +00:00
2021-11-07 15:06:54 +00:00
2021-05-24 19:43:40 +02:00
2022-12-13 16:08:09 +01:00
2022-11-08 12:15:42 +01:00
2022-10-12 12:49:17 +02:00
2023-05-03 09:28:07 +01:00
2023-03-06 11:31:46 +04:00
2021-05-24 19:43:40 +02:00
2022-10-12 12:49:17 +02:00
2022-12-13 16:08:09 +01:00
2022-10-12 12:49:17 +02:00
2022-12-13 16:08:09 +01:00
2022-12-09 20:17:37 +00:00
2022-10-12 12:49:17 +02:00
2021-09-28 14:40:58 +05:30
2022-10-12 12:49:17 +02:00
2021-05-24 19:43:40 +02:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-10-12 12:49:17 +02:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-22 03:31:36 -05:00
2022-10-27 08:51:07 +00:00
2022-12-13 16:08:09 +01:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00
2023-01-06 19:31:10 +00:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00
2021-11-07 15:06:54 +00:00
2022-12-13 16:08:09 +01:00
2023-01-06 19:31:10 +00:00
2023-01-06 18:03:48 +00:00
2022-12-13 16:08:09 +01:00
2021-12-10 09:33:27 -08:00
2022-12-13 16:08:09 +01:00
2022-12-12 22:34:49 +00:00
2022-12-13 16:08:09 +01:00
2023-03-29 21:01:38 +00:00
2021-10-12 13:02:47 -07:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2023-01-09 08:58:33 +00:00
2023-01-06 19:31:10 +00:00
2023-01-06 19:31:10 +00:00
2023-01-06 18:03:48 +00:00
2023-01-06 18:03:48 +00:00
2023-01-06 19:31:10 +00:00
2023-01-06 19:31:10 +00:00
2023-01-06 18:03:48 +00:00
2023-01-06 18:03:48 +00:00
2023-01-06 19:31:10 +00:00
2022-10-12 12:49:17 +02:00
2023-01-06 18:03:48 +00:00
2023-01-06 19:31:10 +00:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00
2021-11-07 15:06:54 +00:00
2021-11-07 15:06:54 +00:00
2021-11-07 15:06:54 +00:00
2021-06-30 16:54:13 -04:00
2021-12-29 16:45:00 -08:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00
2023-01-06 19:31:10 +00:00
2021-06-27 14:40:38 -07:00
2022-10-12 12:49:17 +02:00
2021-05-24 19:43:40 +02:00
2022-10-12 12:49:17 +02:00
2023-02-09 18:45:20 +03:00
2022-12-13 16:08:09 +01:00
2022-12-16 22:58:41 +03:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-16 22:58:41 +03:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-12-24 00:47:04 +02:00
2022-12-13 16:08:09 +01:00
2022-10-12 12:49:17 +02:00
2022-08-12 14:01:52 -07:00
2021-11-04 14:54:27 -07:00
2022-12-01 21:25:59 +01:00
2022-12-13 16:08:09 +01:00
2023-04-26 16:16:33 -07:00
2023-04-26 16:16:33 -07:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2021-11-07 15:06:54 +00:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2022-12-13 16:08:09 +01:00
2023-01-18 09:58:32 +01:00
2022-12-13 16:08:09 +01:00
2022-10-12 12:49:17 +02:00
2022-12-13 16:08:09 +01:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00
2022-10-12 12:49:17 +02:00