Mercurial > hg > graal-compiler
comparison src/share/vm/opto/graphKit.cpp @ 7421:ad5dd04754ee
8005031: Some cleanup in c2 to prepare for incremental inlining support
Summary: collection of small changes to prepare for incremental inlining.
Reviewed-by: twisti, kvn
author | roland |
---|---|
date | Tue, 18 Dec 2012 14:55:25 +0100 |
parents | 2aff40cb4703 |
children | 2d6c433b1f38 |
comparison
equal
deleted
inserted
replaced
7420:18d56ca3e901 | 7421:ad5dd04754ee |
---|---|
1769 | 1769 |
1770 // Find all the needed outputs of this call | 1770 // Find all the needed outputs of this call |
1771 CallProjections callprojs; | 1771 CallProjections callprojs; |
1772 call->extract_projections(&callprojs, true); | 1772 call->extract_projections(&callprojs, true); |
1773 | 1773 |
1774 Node* init_mem = call->in(TypeFunc::Memory); | |
1775 Node* final_mem = final_state->in(TypeFunc::Memory); | |
1776 Node* final_ctl = final_state->in(TypeFunc::Control); | |
1777 Node* final_io = final_state->in(TypeFunc::I_O); | |
1778 | |
1774 // Replace all the old call edges with the edges from the inlining result | 1779 // Replace all the old call edges with the edges from the inlining result |
1775 C->gvn_replace_by(callprojs.fallthrough_catchproj, final_state->in(TypeFunc::Control)); | 1780 if (callprojs.fallthrough_catchproj != NULL) { |
1776 C->gvn_replace_by(callprojs.fallthrough_memproj, final_state->in(TypeFunc::Memory)); | 1781 C->gvn_replace_by(callprojs.fallthrough_catchproj, final_ctl); |
1777 C->gvn_replace_by(callprojs.fallthrough_ioproj, final_state->in(TypeFunc::I_O)); | 1782 } |
1778 Node* final_mem = final_state->in(TypeFunc::Memory); | 1783 if (callprojs.fallthrough_memproj != NULL) { |
1784 C->gvn_replace_by(callprojs.fallthrough_memproj, final_mem); | |
1785 } | |
1786 if (callprojs.fallthrough_ioproj != NULL) { | |
1787 C->gvn_replace_by(callprojs.fallthrough_ioproj, final_io); | |
1788 } | |
1779 | 1789 |
1780 // Replace the result with the new result if it exists and is used | 1790 // Replace the result with the new result if it exists and is used |
1781 if (callprojs.resproj != NULL && result != NULL) { | 1791 if (callprojs.resproj != NULL && result != NULL) { |
1782 C->gvn_replace_by(callprojs.resproj, result); | 1792 C->gvn_replace_by(callprojs.resproj, result); |
1783 } | 1793 } |