Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
8290964: C2 compilation fails with assert "non-reduction loop contain…
…s reduction nodes"

Backport-of: 4bdd1c914859e221c64208d47ef309d463609953
  • Loading branch information
GoeLin committed Jan 9, 2023
1 parent 369dedb commit e92b7c3
Show file tree
Hide file tree
Showing 3 changed files with 0 additions and 21 deletions.
11 changes: 0 additions & 11 deletions src/hotspot/share/opto/loopnode.cpp
Expand Up @@ -2556,17 +2556,6 @@ uint IdealLoopTree::est_loop_flow_merge_sz() const {
return 0;
}

#ifdef ASSERT
bool IdealLoopTree::has_reduction_nodes() const {
for (uint i = 0; i < _body.size(); i++) {
if (_body[i]->is_reduction()) {
return true;
}
}
return false;
}
#endif // ASSERT

#ifndef PRODUCT
//------------------------------dump_head--------------------------------------
// Dump 1 liner for loop header info
Expand Down
5 changes: 0 additions & 5 deletions src/hotspot/share/opto/loopnode.hpp
Expand Up @@ -658,11 +658,6 @@ class IdealLoopTree : public ResourceObj {

void remove_main_post_loops(CountedLoopNode *cl, PhaseIdealLoop *phase);

#ifdef ASSERT
// Tell whether the body contains nodes marked as reductions.
bool has_reduction_nodes() const;
#endif // ASSERT

#ifndef PRODUCT
void dump_head() const; // Dump loop head only
void dump() const; // Dump this loop recursively
Expand Down
5 changes: 0 additions & 5 deletions src/hotspot/share/opto/superword.cpp
Expand Up @@ -2292,11 +2292,6 @@ void SuperWord::output() {
return;
}

// Check that the loop to be vectorized does not have inconsistent reduction
// information, which would likely lead to a miscompilation.
assert(!lpt()->has_reduction_nodes() || cl->is_reduction_loop(),
"non-reduction loop contains reduction nodes");

#ifndef PRODUCT
if (TraceLoopOpts) {
tty->print("SuperWord::output ");
Expand Down

1 comment on commit e92b7c3

@openjdk-notifier
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.