Commit f579745
authored
JIT: fix crash in LSRA seen on VMR build on AVX-512 machines (#119206)
During the second stage bootstrap build VMR on an AVX-512 capable machine,
we end up in `try_SPILL_COST` looking at a K-reg spill candidate without an
assigned interval, and crash.
This happens because the preceding heuristic `try_REG_ORDER` fails to find
a register when it should, because mask register numbers are greater than 63
and we shift 1ULL by this amount to build a mask, which is undefined behavior.
The fix is to always look up the mask via table fetch, which is set up to handle
mask register numbers properly.
Fixes the crash seen in #119070.1 parent b2c0e89 commit f579745
1 file changed
+0
-10
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
954 | 954 | | |
955 | 955 | | |
956 | 956 | | |
957 | | - | |
958 | | - | |
959 | | - | |
960 | | - | |
961 | | - | |
962 | | - | |
963 | | - | |
964 | | - | |
965 | | - | |
966 | 957 | | |
967 | | - | |
968 | 958 | | |
969 | 959 | | |
970 | 960 | | |
| |||
0 commit comments