RFR: 8270446: Remove the MemBarNode that has been optimized from the current block

SUN Guoyun github.com+40024232+sunny868 at openjdk.java.net
Thu Jul 15 08:06:10 UTC 2021


On Wed, 14 Jul 2021 07:35:25 GMT, SUN Guoyun <github.com+40024232+sunny868 at openjdk.org> wrote:

> Hi all,
> aarch64 and mips64 also had an optimization to merge two memory barrier instructions. But when I use the args -XX:+UnlockDiagnosticVMOptions -XX:+PrintOptoAssembly, I see some information like the following 
> 
> 1a0 membar_release 
>             dmb ish 
> 1a4 membar_release 
>             dmb ish 
> 1a4 spill R19 -> R0 # spill size = 64 
> 
> 
> Here, "1a4 membar_release" is actually optimized out . so I think it should be better to display it like this 
> 
> 
> 1a0 membar_release 
>             dmb ish 
> 1a4 spill R19 -> R0 # spill size = 64
> 
> Please review this trivial change.
> 
> Thanks,
> Sun Guoyun

-XX:+PrintOptoAssembly output really has many "membar_release (elided)",but also have some continuous  and same type "membar_release ",and they've actually been optimized in this patch http://hg.openjdk.java.net/jdk/hs/rev/8f1bc5a0d16d

-------------

PR: https://git.openjdk.java.net/jdk/pull/4774


More information about the hotspot-compiler-dev mailing list