RFR(S/M): 8247766: [aarch64] guarantee(val < (1U << nbits)) failed: Field too big for insn

Patric Hedlin patric.hedlin at oracle.com
Tue Jul 7 11:17:43 UTC 2020


Dear all,

I would like to ask for help to review the following change/update:

Issue:  https://bugs.openjdk.java.net/browse/JDK-8247766
Webrev: http://cr.openjdk.java.net/~phedlin/tr8247766/


C1 code generation for reading and writing stack-slots does not handle 
large immediate offsets on aarch64. This patch will ensure that 
immediate offsets are admissible for base+(immediate)offset encoding or, 
if this is not the case, will enforce an explicit address calculation to 
a scratch register. (Also correcting a small glitch in 9-bit signed 
immediate encoding check.)

NOTE: Current patch includes (local) definitions of is_simm/9 and 
is_uimm/12, for review purpose only. With JDK-8248901 these will move to 
Assembler, and will not be included in the change-set.


Testing: tier1-3,6


Best regards,
Patric




More information about the hotspot-compiler-dev mailing list