[11u] RFR: 8261812: C2 compilation fails with assert(!had_error) failed: bad dominance

Doerr, Martin martin.doerr at sap.com
Mon Apr 19 14:32:16 UTC 2021


Hi,

JDK-8261812 is backported to 11.0.12-oracle. I'd like to backport it for parity.
It doesn't apply cleanly.

Bug:
https://bugs.openjdk.java.net/browse/JDK-8261812

Original change:
https://git.openjdk.java.net/jdk/commit/2c0507ec

Resolution steps:
compile.hpp:
-  push_thru_add(PhaseGVN* phase, Node* z, const TypeInteger* tz, const TypeInteger*& rx, const TypeInteger*& ry,
-                BasicType bt);
+  static bool push_thru_add(PhaseGVN* phase, Node* z, const TypeInteger* tz, const TypeInteger*& rx, const TypeInteger*& ry,
+                            BasicType bt);
This cleanup is not applicable. Skipped.

macro.cpp:
+        if (is_subword_type(ft)) {
+          n = Compile::narrow_value(ft, n, phi_type, &_igvn, true);
+        }
The surrounding code is different in 11u because of GC related changes. I had to adapt it.

11u backport:
http://cr.openjdk.java.net/~mdoerr/8261812_C2_assert_11u/webrev.00/

Please review.

Best regards,
Martin



More information about the hotspot-compiler-dev mailing list