Nikita Popov
0a0e06f291
[TableGen] Fix prefix detection with anchor (NFC) ( #71379 )
...
instregex uses an optimization, where the constant prefix of the regex
is extracted to perform a binary search first. However, this
optimization currently mainly fails to apply, because most instregex
uses have an explicit ^ anchor, which gets counted as a meta char and
disables the optimization.
Make sure the anchor is skipped when determining the prefix. Also fix an
implementation bug this exposes, where the pick a too long prefix if the
first meta character is a quantifier.
This cuts the time needed to generate files like X86GenInstrInfo.inc by
half.
2023-11-13 15:47:15 +01:00
..
2023-05-17 10:48:52 +02:00
2023-11-09 09:08:41 -08:00
2023-09-27 13:34:41 -07:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-11-06 21:46:39 -08:00
2023-11-13 08:42:39 -05:00
2023-10-19 09:31:59 +02:00
2023-05-17 10:48:52 +02:00
2023-11-07 11:41:56 +02:00
2023-08-01 11:00:27 -07:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-11-02 09:41:00 -04:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-11-13 15:47:15 +01:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-07-28 15:09:08 +02:00
2023-11-13 14:45:27 +01:00
2023-10-19 09:31:59 +02:00
2023-10-19 09:31:59 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-08-21 09:48:12 -04:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-09-06 13:39:45 -07:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-08-24 20:26:12 +08:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00
2023-10-31 14:33:53 +00:00
2023-05-17 10:48:52 +02:00
2023-11-13 14:45:27 +01:00
2023-05-17 10:48:52 +02:00
2023-09-26 19:23:41 -04:00
2023-09-18 12:14:46 +01:00
2023-11-13 14:45:27 +01:00
2023-05-17 10:48:52 +02:00
2023-05-17 10:48:52 +02:00