RFR (XXS): 8007923: Tests on references fails
christian.thalinger at oracle.com
Tue Oct 8 12:08:19 PDT 2013
8007923: Tests on references fails
Escape analysis treats java.lang.ref.Reference as any other object and tries to scalarize it. In this particular fail one Reference does not escape but the other one does. When it comes to a pointer equality check the pointer comparison optimization falsely assumes that the non-escaped Reference cannot escape but in fact it can when the garbage collector enqueues the Reference in the queue.
After more internal discussion we decided to exclude java.lang.ref.Reference from being scalarized since they can escape globally any time.
More information about the hotspot-compiler-dev