Nitin John Raj
af8e386102
[RISCV][GlobalISel] Add lowerFormalArguments for calling convention
...
This patch adds an IncomingValueHandler and IncomingValueAssigner, and implements minimal support for lowering formal arguments according to the RISC-V calling convention. Simple non-aggregate integer and pointer types are supported.
In the future, we must correctly handle byval and sret pointer arguments, and instances where the number of arguments exceeds the number of registers.
Coauthored By: lewis-revill
Reviewed By: arsenm
Differential Revision: https://reviews.llvm.org/D74977
2023-05-30 13:42:49 -07:00
..
2023-05-30 13:42:49 -07:00
2023-05-30 10:53:58 -07:00
2022-12-22 14:19:26 -08:00
2022-12-22 14:19:26 -08:00
2023-01-20 09:28:20 -08:00
2023-01-20 09:28:20 -08:00
2023-03-16 19:42:33 -07:00
2022-12-19 13:01:08 +01:00
2023-05-25 13:56:29 +05:30
2021-08-04 12:45:18 -07:00
2023-05-11 13:44:37 -07:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2021-11-22 14:01:37 +08:00
2023-04-07 08:59:28 +08:00
2021-11-22 14:01:37 +08:00
2022-11-25 08:39:44 -08:00
2022-12-19 13:01:08 +01:00
2023-03-30 20:47:28 +01:00
2023-03-30 20:47:28 +01:00
2023-03-30 20:47:28 +01:00
2023-02-09 12:00:05 -08:00
2023-02-09 12:00:05 -08:00
2023-03-30 20:47:28 +01:00
2023-03-21 18:52:05 -07:00
2023-04-28 16:52:55 -07:00
2023-05-22 14:38:05 +01:00
2023-05-30 11:04:03 +01:00
2023-03-16 19:42:33 -07:00
2022-03-30 11:46:42 -07:00
2023-04-07 08:59:28 +08:00
2022-12-19 13:01:08 +01:00
2022-12-21 14:19:49 +03:00
2023-02-28 14:43:40 +08:00
2022-12-11 20:55:05 -08:00
2022-12-19 13:01:08 +01:00
2023-01-20 09:28:20 -08:00
2022-03-30 11:46:42 -07:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-03-27 17:29:28 -07:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-01-20 09:28:20 -08:00
2023-02-09 18:45:20 +03:00
2021-11-22 23:02:11 +08:00
2023-03-27 17:29:28 -07:00
2023-03-27 17:29:28 -07:00
2022-11-25 08:39:44 -08:00
2023-01-20 09:28:20 -08:00
2021-11-22 23:02:11 +08:00
2023-03-27 17:29:28 -07:00
2023-03-27 17:29:28 -07:00
2023-03-15 17:22:47 +08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2022-10-06 09:33:32 -07:00
2022-10-12 13:51:52 -07:00
2022-12-29 11:43:40 +00:00
2023-03-30 21:05:22 +01:00
2022-06-07 10:00:25 -04:00
2023-03-07 17:54:05 +08:00
2023-03-27 17:29:28 -07:00
2023-03-16 19:42:33 -07:00
2022-12-19 13:01:08 +01:00
2022-07-27 18:22:51 +08:00
2023-01-28 00:05:19 -08:00
2023-01-20 09:28:20 -08:00
2023-01-20 09:28:20 -08:00
2023-03-27 17:29:28 -07:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-03-31 12:19:02 -07:00
2023-02-23 01:26:27 +00:00
2022-12-19 13:01:08 +01:00
2023-04-05 19:28:05 -07:00
2022-06-16 17:13:09 +08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-03-29 20:55:51 +01:00
2022-12-19 13:01:08 +01:00
2022-02-24 21:55:44 -08:00
2021-11-22 23:02:11 +08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-05-25 13:56:29 +05:30
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-02-03 22:42:08 -08:00
2023-03-31 12:19:02 -07:00
2022-12-19 15:22:39 +08:00
2022-03-30 11:22:03 -04:00
2022-12-19 13:01:08 +01:00
2023-05-12 15:06:58 +08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-05-23 09:19:55 -07:00
2022-12-22 14:19:26 -08:00
2022-12-19 13:01:08 +01:00
2023-02-09 18:45:20 +03:00
2022-12-19 13:01:08 +01:00
2022-02-24 09:27:57 -08:00
2022-05-13 09:12:02 -07:00
2022-12-19 13:01:08 +01:00
2022-11-09 16:10:32 +08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2022-09-08 18:40:38 -07:00
2022-09-08 18:40:38 -07:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-25 14:13:37 +08:00
2023-05-30 11:04:03 +01:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-03-14 13:11:11 -07:00
2023-03-31 12:19:02 -07:00
2023-05-03 09:28:07 +01:00
2023-01-09 16:46:28 +03:00
2022-12-06 10:31:17 -08:00
2022-12-06 10:31:17 -08:00
2023-05-12 15:06:58 +08:00
2023-03-01 15:33:45 +01:00
2022-12-19 13:01:08 +01:00
2023-02-13 17:02:09 +01:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2022-02-24 21:55:44 -08:00
2023-03-27 17:29:28 -07:00
2023-03-27 17:29:28 -07:00
2021-12-23 20:32:36 -06:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-03-31 13:20:13 -03:00
2023-05-26 18:39:41 +08:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-04-26 17:11:58 -07:00
2022-12-19 13:01:08 +01:00
2023-04-13 10:52:28 +05:30
2023-05-12 15:06:58 +08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-05-17 17:03:15 +02:00
2021-11-02 11:56:54 +00:00
2023-03-21 18:52:05 -07:00
2022-12-19 13:01:08 +01:00
2023-01-24 11:42:37 -08:00
2022-12-19 13:01:08 +01:00
2022-11-17 13:24:04 +03:00
2023-02-17 13:17:22 +03:00
2023-03-27 17:29:28 -07:00
2022-06-17 21:40:08 -07:00
2023-03-27 17:29:28 -07:00
2023-03-14 17:55:11 +00:00
2022-04-22 12:19:55 +08:00
2021-12-13 13:24:29 -08:00
2022-04-22 12:19:55 +08:00
2023-03-16 19:42:33 -07:00
2022-12-19 13:01:08 +01:00
2021-09-09 07:32:30 +02:00
2022-08-24 21:47:46 +08:00
2023-04-10 10:57:29 +08:00
2021-11-12 08:01:13 +01:00
2022-12-19 13:01:08 +01:00
2022-07-08 18:07:17 +08:00
2022-05-25 09:25:02 +01:00
2023-03-27 17:29:28 -07:00
2023-03-21 18:52:05 -07:00
2023-03-21 18:52:05 -07:00
2023-03-21 18:52:05 -07:00
2023-05-23 09:19:55 -07:00
2022-12-19 13:01:08 +01:00
2022-06-09 23:38:50 +08:00
2022-03-24 00:48:52 +08:00
2022-08-26 14:39:39 +08:00
2023-03-27 17:29:28 -07:00
2023-04-15 17:29:06 +08:00
2022-12-19 13:01:08 +01:00
2022-11-25 08:39:44 -08:00
2023-01-20 09:28:20 -08:00
2022-11-09 16:10:32 +08:00
2023-05-10 14:25:11 -04:00
2023-04-24 20:15:14 -07:00
2023-04-24 20:15:14 -07:00
2023-05-01 12:05:18 -07:00
2023-05-01 12:05:18 -07:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2022-12-28 19:59:42 -08:00
2022-12-11 20:55:05 -08:00
2022-12-19 13:01:08 +01:00
2023-04-01 18:54:03 -07:00
2023-04-18 15:01:36 -07:00
2022-12-19 13:01:08 +01:00
2023-05-03 09:28:07 +01:00
2022-04-30 16:00:20 +08:00
2022-04-30 11:02:30 -07:00
2022-06-19 15:50:15 -07:00
2023-01-13 21:01:49 +08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-05-20 19:08:05 -07:00
2022-12-19 13:01:08 +01:00
2023-02-22 04:03:22 -08:00
2022-12-22 14:19:26 -08:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-04-12 21:06:22 +00:00
2022-11-25 08:39:44 -08:00
2022-07-17 11:00:56 -07:00
2023-05-23 16:31:22 -07:00
2023-03-01 19:42:56 +00:00
2021-11-25 07:21:42 -05:00
2022-01-29 00:01:00 +08:00
2023-02-08 07:54:52 +01:00
2023-02-17 21:46:26 +01:00
2023-02-13 16:28:26 +01:00
2023-04-15 17:29:06 +08:00
2022-03-28 16:56:33 -07:00
2022-12-29 15:10:36 -08:00
2023-01-20 09:28:20 -08:00
2022-03-01 11:37:49 -08:00
2022-03-01 11:37:49 -08:00
2022-01-30 12:41:09 -08:00
2022-11-30 10:28:57 -08:00
2022-03-01 11:37:49 -08:00
2022-12-29 17:04:52 -08:00
2022-07-13 19:37:34 +01:00
2022-07-13 19:37:34 +01:00
2022-07-13 19:37:34 +01:00
2022-01-27 15:53:35 +08:00
2022-01-27 15:53:35 +08:00
2022-12-19 13:01:08 +01:00
2022-02-24 09:27:57 -08:00
2022-02-24 09:27:57 -08:00
2022-06-01 13:49:23 +08:00
2023-05-03 00:13:38 +08:00
2022-11-25 08:39:44 -08:00
2023-03-16 19:42:33 -07:00
2021-11-11 10:56:27 -08:00
2022-12-22 14:19:26 -08:00
2023-03-21 18:52:05 -07:00
2021-11-11 10:56:27 -08:00
2023-03-16 19:42:33 -07:00
2023-03-16 19:42:33 -07:00
2021-11-22 14:01:37 +08:00
2023-02-08 07:54:52 +01:00
2023-02-17 21:46:26 +01:00
2023-02-13 16:28:26 +01:00
2023-04-15 17:29:06 +08:00
2022-09-21 21:22:42 -07:00
2022-12-22 14:19:26 -08:00
2023-01-20 09:28:20 -08:00
2022-03-01 11:37:49 -08:00
2022-03-01 11:37:49 -08:00
2022-01-30 12:41:09 -08:00
2022-12-22 14:19:26 -08:00
2022-03-01 11:37:49 -08:00
2022-12-19 13:01:08 +01:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2022-07-13 19:37:34 +01:00
2022-07-13 19:37:34 +01:00
2022-07-13 19:37:34 +01:00
2022-07-13 19:37:34 +01:00
2022-01-27 15:53:35 +08:00
2022-01-27 15:53:35 +08:00
2023-03-23 12:32:25 +00:00
2023-03-16 19:42:33 -07:00
2023-03-07 17:54:05 +08:00
2023-04-12 21:06:22 +00:00
2022-12-19 13:01:08 +01:00
2023-02-07 17:13:21 -08:00
2023-02-07 17:13:21 -08:00
2023-02-07 17:13:21 -08:00
2023-02-07 17:13:21 -08:00
2022-09-20 20:26:48 -07:00
2022-09-20 20:26:48 -07:00
2023-03-30 21:05:22 +01:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2022-12-28 15:17:41 -08:00
2023-03-27 17:29:28 -07:00
2022-09-20 20:26:48 -07:00
2022-09-20 20:26:48 -07:00
2023-03-30 21:05:22 +01:00
2022-12-19 14:17:26 -08:00
2022-12-01 11:09:38 -08:00
2023-03-24 09:45:43 +08:00
2023-03-16 19:42:33 -07:00
2023-04-26 15:58:09 +00:00
2023-04-07 08:59:28 +08:00
2022-10-22 14:30:13 -07:00
2023-04-07 08:59:28 +08:00
2023-04-07 08:59:28 +08:00
2022-12-19 13:01:08 +01:00
2022-12-22 14:19:26 -08:00
2022-12-23 21:39:22 -08:00
2023-05-11 11:33:18 -07:00
2022-12-19 13:01:08 +01:00
2022-12-06 11:34:48 -05:00
2023-05-10 22:53:24 +08:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-05-16 16:07:23 -07:00
2022-12-19 13:01:08 +01:00
2023-01-31 12:47:48 +00:00
2023-01-20 09:28:20 -08:00
2022-10-24 10:08:50 -07:00
2023-03-16 19:42:33 -07:00
2023-05-03 07:52:29 -07:00
2023-03-16 19:42:33 -07:00
2023-03-16 19:42:33 -07:00
2023-03-07 17:54:05 +08:00
2022-07-21 14:54:58 -07:00
2023-02-06 16:42:59 -08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-03-10 10:14:59 +08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2022-05-11 13:16:31 -07:00
2022-12-19 13:01:08 +01:00
2023-02-03 09:38:46 +08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-03-16 19:42:33 -07:00
2023-01-20 09:28:20 -08:00
2023-01-20 09:28:20 -08:00
2023-05-19 14:44:46 +01:00
2022-12-01 11:09:38 -08:00
2022-12-19 13:01:08 +01:00
2023-03-16 19:42:33 -07:00
2023-05-10 11:51:51 -07:00
2023-03-16 19:42:33 -07:00
2023-03-16 19:42:33 -07:00
2023-01-20 09:28:20 -08:00
2023-03-27 17:29:28 -07:00
2022-05-16 16:38:30 -07:00
2023-05-26 10:48:49 -07:00
2022-12-19 13:01:08 +01:00
2023-04-07 08:59:28 +08:00
2023-04-07 08:59:28 +08:00
2023-05-12 15:06:58 +08:00
2023-03-27 17:29:28 -07:00
2023-02-17 19:45:22 +01:00
2023-02-24 00:17:58 +01:00
2023-02-22 19:57:37 +01:00
2022-12-23 17:10:21 +03:00
2023-05-30 14:49:33 +08:00
2022-12-19 13:01:08 +01:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2022-07-18 20:26:08 -04:00