Request for reviews (XS): 6969569: assert(is_static() && is_constant()) failed: illegal call to constant_value()
Christian Thalinger
christian.thalinger at oracle.com
Fri Jul 23 10:05:47 PDT 2010
On Fri, 2010-07-23 at 09:51 -0700, Vladimir Kozlov wrote:
> The evaluation and suggested fix were done by John.
>
> http://cr.openjdk.java.net/~kvn/6969569/webrev
>
> Fixed 6969569: assert(is_static() && is_constant()) failed: illegal call to constant_value()
>
> All callers of ciField::constant_value must be guarded by
> both is_constant and is_static. For non-static fields,
> the correct accessor is ciField::constant_value_of.
>
> PhaseMacroExpand::scalar_replacement() and ciField::print()
> have a missing is_static guard.
>
> Solution:
> Add missing is_static guard.
>
> Tested with failed case and JPRT.
I wrote parts of this code. Looks good. -- Christian
More information about the hotspot-compiler-dev
mailing list