RFR: 8284635: Crashes after 8282221: assert(ctrl == kit.control()) failed: Control flow was added although the intrinsic bailed out

Tobias Hartmann thartmann at openjdk.java.net
Tue Apr 12 20:53:19 UTC 2022


On Mon, 11 Apr 2022 23:50:45 GMT, Srinivas Vamsi Parasa <duke at openjdk.java.net> wrote:

> Bug fix for the crashes caused after 8282221.

Looks good to me otherwise.

You need to un-problem-list the test (see [JDK-8284689](https://bugs.openjdk.java.net/browse/JDK-8284689)).

src/hotspot/share/opto/library_call.cpp line 2203:

> 2201: bool LibraryCallKit::inline_divmod_methods(vmIntrinsics::ID id) {
> 2202:   Node* n = NULL;
> 2203:   switch(id) {

Suggestion:

  switch (id) {

src/hotspot/share/opto/library_call.cpp line 2208:

> 2206:       // Compile-time detect of null-exception
> 2207:       if (stopped()) return true; // keep the graph constructed so far
> 2208:       n = new UDivINode(control(), argument(0), argument(1)); break;

Suggestion:

      if (stopped()) {
        return true; // keep the graph constructed so far
      }
      n = new UDivINode(control(), argument(0), argument(1));
      break;


While you are modifying this code, please also fix the code style.

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

Changes requested by thartmann (Reviewer).

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


More information about the hotspot-compiler-dev mailing list