Mercurial > hg > truffle
comparison src/share/vm/opto/compile.cpp @ 12963:435c7b4577cd
8026959: assert(!n->pinned() || n->is_MachConstantBase()) failed: only pinned MachConstantBase node is expected here
Reviewed-by: iveresov, roland
author | rbackman |
---|---|
date | Mon, 21 Oct 2013 15:31:16 +0200 |
parents | 3213ba4d3dff |
children | b2ee5dc63353 |
comparison
equal
deleted
inserted
replaced
12961:4748b3308cda | 12963:435c7b4577cd |
---|---|
3004 | 3004 |
3005 Node* result = math->result_node(); | 3005 Node* result = math->result_node(); |
3006 if (result != NULL) { | 3006 if (result != NULL) { |
3007 for (DUIterator_Fast jmax, j = result->fast_outs(jmax); j < jmax; j++) { | 3007 for (DUIterator_Fast jmax, j = result->fast_outs(jmax); j < jmax; j++) { |
3008 Node* out = result->fast_out(j); | 3008 Node* out = result->fast_out(j); |
3009 if (out->in(0) == NULL) { | 3009 // Phi nodes shouldn't be moved. They would only match below if they |
3010 out->set_req(0, non_throwing); | 3010 // had the same control as the MathExactNode. The only time that |
3011 } else if (out->in(0) == ctrl) { | 3011 // would happen is if the Phi is also an input to the MathExact |
3012 out->set_req(0, non_throwing); | 3012 if (!out->is_Phi()) { |
3013 if (out->in(0) == NULL) { | |
3014 out->set_req(0, non_throwing); | |
3015 } else if (out->in(0) == ctrl) { | |
3016 out->set_req(0, non_throwing); | |
3017 } | |
3013 } | 3018 } |
3014 } | 3019 } |
3015 } | 3020 } |
3016 } | 3021 } |
3017 break; | 3022 break; |