RFR: 8139042: AARCH64: Correct regression introduced by 8080293

Vladimir Kozlov vladimir.kozlov at oracle.com
Wed Oct 7 14:31:27 UTC 2015



On 10/7/15 7:25 PM, Andrew Dinn wrote:
> Could two reviewers please review this AArch64 only patch.
>    http://cr.openjdk.java.net/~adinn/8139042/webrev.00/
> The fix for issue JDK-8080293 (AARCH64: Remove unnecessary dmbs from
> generated CAS code) inadvertently disabled one step of the optimization
> process for unsafe volatile object gets. The result is that unsafe
> volatile get is successfully translated to ldar but generation of the
> trailing dmb ishld instruction is not inhibited.
> The patch for 8080293 extended predicate unnecessary_acquire to check
> for a MemBarAcquire associated with a CompareAndSwapX node. In doing so
> it changed the logic of a sanity check for MemBarAcquire introdcued as
> part of an unsafe volatile get. The patch modified the code to
> conditionally return true instead of return false. However the condition
> retained the original != where it should have employed ==.
> regards,
> Andrew Dinn
> -----------
> Senior Principal Software Engineer
> Red Hat UK Ltd
> Registered in UK and Wales under Company Registration No. 3798903
> Directors: Michael Cunningham (USA), Matt Parson (USA), Charlie Peters
> (USA), Michael O'Neill (Ireland)

More information about the hotspot-compiler-dev mailing list