comparison src/share/vm/opto/compile.cpp @ 13043:e428d5e768e3

8027622: java.time.Instant.create failing since hs25-b56 Reviewed-by: kvn, iveresov
author rbackman
date Mon, 04 Nov 2013 10:44:46 +0100
parents b2ee5dc63353
children 613e6a6fc328
comparison
equal deleted inserted replaced
13042:208ebea980f8 13043:e428d5e768e3
3016 for (DUIterator_Fast jmax, j = result->fast_outs(jmax); j < jmax; j++) { 3016 for (DUIterator_Fast jmax, j = result->fast_outs(jmax); j < jmax; j++) {
3017 Node* out = result->fast_out(j); 3017 Node* out = result->fast_out(j);
3018 // Phi nodes shouldn't be moved. They would only match below if they 3018 // Phi nodes shouldn't be moved. They would only match below if they
3019 // had the same control as the MathExactNode. The only time that 3019 // had the same control as the MathExactNode. The only time that
3020 // would happen is if the Phi is also an input to the MathExact 3020 // would happen is if the Phi is also an input to the MathExact
3021 if (!out->is_Phi()) { 3021 //
3022 if (out->in(0) == NULL) { 3022 // Cmp nodes shouldn't have control set at all.
3023 out->set_req(0, non_throwing); 3023 if (out->is_Phi() ||
3024 } else if (out->in(0) == ctrl) { 3024 out->is_Cmp()) {
3025 out->set_req(0, non_throwing); 3025 continue;
3026 } 3026 }
3027
3028 if (out->in(0) == NULL) {
3029 out->set_req(0, non_throwing);
3030 } else if (out->in(0) == ctrl) {
3031 out->set_req(0, non_throwing);
3027 } 3032 }
3028 } 3033 }
3029 } 3034 }
3030 } 3035 }
3031 break; 3036 break;