changeset 55006:377bba651f4e

8224626: Shenandoah: Elide barriers on uncommon traps Reviewed-by: roland, shade
author rkennke
date Thu, 23 May 2019 12:12:04 +0200
parents 9b70ebd131b4
children 617e7f0e370d
files src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp
diffstat 1 files changed, 5 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp	Thu May 23 10:13:29 2019 +0200
+++ b/src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp	Thu May 23 12:12:04 2019 +0200
@@ -3123,7 +3123,11 @@
         break;
       }
       case Op_CallStaticJava: {
-        strength = STRONG;
+        // If it's an deopt-call we don't need barriers because
+        // the LRB will be applied when unpacking the deopt frame.
+        if (n->as_CallStaticJava()->uncommon_trap_request() == 0) {
+          strength = STRONG;
+        }
         break;
       }
       case Op_CallDynamicJava: