826 strcmp(_matrule->_opType,"SafePoint" )==0 || |
826 strcmp(_matrule->_opType,"SafePoint" )==0 || |
827 strcmp(_matrule->_opType,"Halt" )==0 ) |
827 strcmp(_matrule->_opType,"Halt" )==0 ) |
828 return AdlcVMDeps::Parms; // Skip the machine-state edges |
828 return AdlcVMDeps::Parms; // Skip the machine-state edges |
829 |
829 |
830 if( _matrule->_rChild && |
830 if( _matrule->_rChild && |
831 ( strcmp(_matrule->_rChild->_opType,"StrComp" )==0 || |
831 ( strcmp(_matrule->_rChild->_opType,"AryEq" )==0 || |
|
832 strcmp(_matrule->_rChild->_opType,"StrComp" )==0 || |
832 strcmp(_matrule->_rChild->_opType,"StrEquals" )==0 || |
833 strcmp(_matrule->_rChild->_opType,"StrEquals" )==0 || |
833 strcmp(_matrule->_rChild->_opType,"StrIndexOf")==0 )) { |
834 strcmp(_matrule->_rChild->_opType,"StrIndexOf")==0 )) { |
834 // String.(compareTo/equals/indexOf) take 1 control and 4 memory edges. |
835 // String.(compareTo/equals/indexOf) and Arrays.equals |
835 return 5; |
836 // take 1 control and 1 memory edges. |
|
837 return 2; |
836 } |
838 } |
837 |
839 |
838 // Check for handling of 'Memory' input/edge in the ideal world. |
840 // Check for handling of 'Memory' input/edge in the ideal world. |
839 // The AD file writer is shielded from knowledge of these edges. |
841 // The AD file writer is shielded from knowledge of these edges. |
840 int base = 1; // Skip control |
842 int base = 1; // Skip control |