|
Relates :
|
A rare crash was tracked down to badly-written patterns in aarch64.ad which use iRegX rather than iRegXNoSp as tmp and/or output operands. At times of extreme register pressure, C2 uses system registers such as Rheapbase as scratch. This causes system corruption and crashing. It is hard to write reproducible test cases for these crashes because it depends on exactly what inlining gets done, and in turn that depends on runtime profile data.
|