mlugg
b01d6b156c
compiler: add intcast_safe AIR instruction
...
This instruction is like `intcast`, but includes two safety checks:
* Checks that the int is in range of the destination type
* If the destination type is an exhaustive enum, checks that the int
is a named enum value
This instruction is locked behind the `safety_checked_instructions`
backend feature; if unsupported, Sema will emit a fallback, as with
other safety-checked instructions.
This instruction is used to add a missing safety check for `@enumFromInt`
truncating bits. This check also has a fallback for backends which do
not yet support `safety_checked_instructions`.
Resolves : #21946
2025-01-30 14:47:59 +00:00
..
2023-06-24 16:56:39 -07:00
2023-11-19 09:56:51 +00:00
2023-06-24 16:56:39 -07:00
2025-01-30 14:47:59 +00:00
2025-01-30 14:47:59 +00:00
2023-10-01 17:00:01 +03:00
2023-10-03 00:45:48 -07:00
2023-11-19 09:56:51 +00:00
2023-06-24 16:56:39 -07:00
2023-06-24 16:56:39 -07:00
2023-06-24 16:56:39 -07:00
2023-11-19 09:56:51 +00:00
2023-11-19 09:56:51 +00:00
2023-11-19 09:56:51 +00:00
2023-11-19 09:56:51 +00:00
2024-08-28 08:39:59 +01:00
2022-09-20 19:05:00 -07:00
2022-09-20 19:05:00 -07:00
2022-09-20 19:05:00 -07:00
2023-06-19 12:34:42 -07:00
2022-09-20 19:05:00 -07:00
2023-06-19 12:34:42 -07:00
2023-06-19 12:34:42 -07:00
2022-09-20 19:05:00 -07:00
2023-06-19 12:34:42 -07:00
2023-11-19 09:56:51 +00:00
2022-09-20 19:05:00 -07:00
2023-11-19 09:56:51 +00:00
2023-11-19 09:56:51 +00:00
2024-02-20 12:10:29 +00:00
2022-09-20 19:05:00 -07:00
2023-11-19 09:56:51 +00:00
2022-09-20 19:05:00 -07:00
2022-09-20 19:05:00 -07:00
2022-09-20 19:05:00 -07:00
2022-09-20 19:05:00 -07:00
2022-09-20 19:05:00 -07:00
2023-11-19 09:56:51 +00:00
2023-11-19 09:56:51 +00:00
2023-04-25 11:23:41 -07:00
2023-04-25 11:23:41 -07:00
2023-11-19 09:56:51 +00:00
2023-11-19 09:56:51 +00:00
2022-09-20 19:05:00 -07:00
2022-09-20 19:05:00 -07:00
2023-05-16 11:33:38 +03:00
2022-09-20 19:05:00 -07:00
2023-11-19 09:56:51 +00:00
2023-11-19 09:56:51 +00:00
2024-03-20 17:29:06 -07:00
2022-09-20 19:05:00 -07:00
2023-11-19 09:56:51 +00:00
2023-06-24 16:56:39 -07:00
2022-09-20 19:05:00 -07:00
2022-09-20 19:05:00 -07:00
2022-09-20 19:05:00 -07:00
2022-09-20 19:05:00 -07:00
2024-03-19 16:18:18 -07:00
2024-03-19 16:18:18 -07:00
2023-11-19 09:56:51 +00:00
2023-11-19 09:56:51 +00:00
2023-11-19 09:56:51 +00:00
2022-09-20 19:05:00 -07:00
2023-11-19 09:56:51 +00:00
2023-06-24 16:56:39 -07:00
2022-09-20 19:05:00 -07:00
2022-09-20 19:05:00 -07:00
2023-11-19 09:56:51 +00:00
2024-12-29 07:00:39 +01:00
2024-12-29 07:00:39 +01:00
2024-03-09 22:23:14 +13:00
2023-06-24 16:56:39 -07:00
2022-09-20 19:05:00 -07:00
2023-11-19 09:56:51 +00:00
2023-11-19 09:56:51 +00:00
2022-09-20 19:05:00 -07:00
2023-11-19 09:56:51 +00:00
2023-11-19 09:56:51 +00:00
2023-06-24 16:56:39 -07:00
2023-06-24 16:56:39 -07:00
2023-06-24 16:56:39 -07:00
2023-06-24 16:56:39 -07:00
2023-06-24 16:56:39 -07:00
2023-11-19 09:56:51 +00:00
2022-09-20 19:05:00 -07:00
2023-11-19 09:56:51 +00:00
2022-09-20 19:05:00 -07:00
2022-09-20 19:05:00 -07:00
2023-11-19 09:56:51 +00:00
2022-09-20 19:05:00 -07:00
2022-09-20 19:05:00 -07:00
2023-06-24 16:56:39 -07:00
2023-06-24 16:56:39 -07:00
2023-11-19 09:56:51 +00:00
2023-11-19 09:56:51 +00:00
2023-11-19 09:56:51 +00:00
2023-11-19 09:56:51 +00:00
2023-06-19 12:34:42 -07:00