Jon Ross-Perkins
fe29224016
Refactor LocId to merge in SemIRLoc ( #5284 )
...
The main goal of this is to collapse the LocId and SemIRLoc types into a
single type, eliminating the need for APIs to decide which to use. This
originated from discussion about UnwrapSemIRLoc in #5169 . Although that
was removed in #5202 , it's probably still a good direction for LocId.
This changes the packing of LocId to allow adding InstId, making it
tri-modal: ImportIRInstId, InstId, or NodeId. This has a side-effect of
reducing the available space for ImportIRInstId, although not by much
due to the pre-existing `ImplicitBit` behavior. If needed, we could also
probably play with packing a bit more since `ImplicitBit` really only
applies to `NodeId`, but I was trying to keep the logic a little
simpler. Note `TokenOnlyBit` can still apply to `ImportIRInstId`.
This leaves in place a typedef for SemIRLoc -- I intend to clean that up
separately.
Some Discord discussion is
[here](https://discord.com/channels/655572317891461132/655578254970716160/1353755830058745959 ).
2025-04-11 13:35:58 +00:00
..
2025-02-20 22:42:47 +00:00
2025-04-10 20:53:42 +00:00
2025-04-10 20:53:42 +00:00
2025-04-10 20:53:42 +00:00
2025-04-10 23:45:19 +00:00
2025-04-02 21:51:25 +00:00
2024-09-05 23:39:58 +00:00
2025-01-27 23:48:44 +00:00
2025-04-11 13:35:58 +00:00
2025-04-02 21:51:25 +00:00
2025-03-27 00:41:30 +00:00
2025-03-27 00:41:30 +00:00
2025-04-10 20:53:42 +00:00
2025-04-10 20:53:42 +00:00
2025-03-27 00:41:30 +00:00
2025-04-10 20:53:42 +00:00
2025-03-28 00:29:17 +00:00
2025-03-28 00:29:17 +00:00
2025-04-10 22:59:02 +00:00
2025-04-10 22:59:02 +00:00
2025-03-01 07:56:04 +00:00
2025-03-27 18:14:26 +00:00
2025-03-21 22:26:08 +00:00
2025-04-10 22:59:02 +00:00
2025-03-14 00:44:51 +00:00
2024-11-20 20:58:58 +00:00
2024-11-20 20:58:58 +00:00
2025-04-11 13:35:58 +00:00
2025-04-11 13:35:58 +00:00
2025-04-11 13:35:58 +00:00
2025-04-11 13:35:58 +00:00
2025-04-10 20:53:42 +00:00
2025-04-08 21:04:30 +00:00
2025-04-10 22:59:02 +00:00
2025-04-08 21:04:30 +00:00
2025-04-10 22:59:02 +00:00
2025-04-10 22:59:02 +00:00
2025-03-04 21:01:59 +00:00
2025-02-27 17:01:29 +00:00
2025-02-27 17:01:29 +00:00
2024-07-03 16:58:47 +00:00
2025-03-01 07:56:04 +00:00
2025-03-28 15:14:02 +00:00
2025-03-26 22:53:32 +00:00
2025-03-18 23:49:24 +00:00
2024-07-03 17:49:47 +00:00
2025-02-14 19:44:36 +00:00
2025-04-03 21:14:03 +00:00
2025-04-10 22:59:02 +00:00
2024-12-02 18:51:44 +00:00
2025-04-10 20:53:42 +00:00
2025-04-10 22:59:02 +00:00
2024-07-12 22:38:06 +00:00
2025-03-05 21:55:30 +00:00
2024-07-12 22:38:06 +00:00
2024-07-12 22:38:06 +00:00
2025-04-10 22:59:02 +00:00
2025-02-12 00:21:07 +00:00
2025-02-14 19:44:36 +00:00
2025-04-10 22:59:02 +00:00
2025-02-11 21:33:57 +00:00
2025-04-03 21:14:03 +00:00
2025-04-07 22:41:27 +00:00
2025-03-28 00:29:17 +00:00
2025-03-26 19:12:10 +00:00
2025-02-14 19:44:36 +00:00
2024-07-12 22:38:06 +00:00
2025-02-15 01:36:46 +00:00
2025-04-02 22:52:11 +00:00
2024-07-12 22:38:06 +00:00
2025-03-21 21:45:53 +00:00
2024-12-18 00:19:12 +00:00
2025-04-03 21:14:03 +00:00
2024-07-12 22:38:06 +00:00
2025-04-10 20:53:42 +00:00
2024-07-12 22:38:06 +00:00
2025-04-10 20:53:42 +00:00
2025-04-10 20:53:42 +00:00
2025-04-10 22:59:02 +00:00
2024-07-12 22:38:06 +00:00
2025-04-10 22:59:02 +00:00
2025-04-10 13:48:49 +00:00
2025-04-10 13:48:49 +00:00
2025-04-10 13:48:49 +00:00
2025-04-10 22:59:02 +00:00
2025-03-03 10:38:19 +00:00
2025-04-11 13:35:58 +00:00
2025-02-19 07:19:23 +00:00
2025-04-11 13:35:58 +00:00
2025-03-15 20:41:48 +00:00
2025-03-21 23:09:37 +00:00
2025-01-23 02:21:48 +00:00
2025-04-08 21:04:30 +00:00
2025-04-08 21:04:30 +00:00
2025-04-08 00:40:21 +00:00
2025-03-12 13:54:49 +00:00
2025-01-25 02:13:52 +00:00
2024-11-04 04:00:17 +00:00
2025-02-14 19:44:36 +00:00
2024-12-03 18:46:27 +00:00
2025-04-10 20:53:42 +00:00
2025-04-05 16:08:09 +00:00
2025-04-02 22:52:11 +00:00
2025-02-27 17:01:29 +00:00
2025-03-27 00:41:30 +00:00
2024-10-17 22:47:40 +00:00
2025-03-18 00:31:17 +00:00
2025-01-22 23:15:00 +00:00
2025-04-07 20:45:45 +00:00
2025-02-19 07:19:23 +00:00
2025-03-28 16:24:17 +00:00
2025-03-28 16:24:17 +00:00
2025-02-07 22:35:18 +00:00
2025-04-10 22:59:02 +00:00
2025-02-26 18:44:36 +00:00
2025-02-26 18:44:36 +00:00
2025-02-25 02:07:43 +00:00
2025-04-10 20:53:42 +00:00
2025-01-23 02:21:48 +00:00
2025-03-28 16:24:11 +00:00
2025-04-03 21:14:03 +00:00
2024-03-18 17:40:00 +00:00
2025-03-01 07:56:04 +00:00
2025-02-26 18:44:36 +00:00
2025-01-17 17:51:34 +00:00
2025-03-01 08:00:17 +00:00
2025-04-08 15:37:52 +00:00
2025-03-28 00:29:17 +00:00
2025-03-21 23:09:37 +00:00
2025-02-20 03:17:45 +00:00
2025-04-10 22:59:02 +00:00
2025-03-25 22:53:25 +00:00
2025-04-10 20:53:42 +00:00
2025-04-02 01:46:27 +00:00
2025-04-10 20:53:42 +00:00
2025-04-08 19:02:55 +00:00
2025-04-10 22:59:02 +00:00
2025-04-10 22:59:02 +00:00