equal
deleted
inserted
replaced
999 if (opProfileCall->_recv->is_valid()) do_temp(opProfileCall->_recv); |
999 if (opProfileCall->_recv->is_valid()) do_temp(opProfileCall->_recv); |
1000 assert(opProfileCall->_mdo->is_valid(), "used"); do_temp(opProfileCall->_mdo); |
1000 assert(opProfileCall->_mdo->is_valid(), "used"); do_temp(opProfileCall->_mdo); |
1001 assert(opProfileCall->_tmp1->is_valid(), "used"); do_temp(opProfileCall->_tmp1); |
1001 assert(opProfileCall->_tmp1->is_valid(), "used"); do_temp(opProfileCall->_tmp1); |
1002 break; |
1002 break; |
1003 } |
1003 } |
|
1004 |
|
1005 // LIR_OpProfileType: |
|
1006 case lir_profile_type: { |
|
1007 assert(op->as_OpProfileType() != NULL, "must be"); |
|
1008 LIR_OpProfileType* opProfileType = (LIR_OpProfileType*)op; |
|
1009 |
|
1010 do_input(opProfileType->_mdp); do_temp(opProfileType->_mdp); |
|
1011 do_input(opProfileType->_obj); |
|
1012 do_temp(opProfileType->_tmp); |
|
1013 break; |
|
1014 } |
1004 default: |
1015 default: |
1005 ShouldNotReachHere(); |
1016 ShouldNotReachHere(); |
1006 } |
1017 } |
1007 } |
1018 } |
1008 |
1019 |
1147 masm->emit_delay(this); |
1158 masm->emit_delay(this); |
1148 } |
1159 } |
1149 |
1160 |
1150 void LIR_OpProfileCall::emit_code(LIR_Assembler* masm) { |
1161 void LIR_OpProfileCall::emit_code(LIR_Assembler* masm) { |
1151 masm->emit_profile_call(this); |
1162 masm->emit_profile_call(this); |
|
1163 } |
|
1164 |
|
1165 void LIR_OpProfileType::emit_code(LIR_Assembler* masm) { |
|
1166 masm->emit_profile_type(this); |
1152 } |
1167 } |
1153 |
1168 |
1154 // LIR_List |
1169 // LIR_List |
1155 LIR_List::LIR_List(Compilation* compilation, BlockBegin* block) |
1170 LIR_List::LIR_List(Compilation* compilation, BlockBegin* block) |
1156 : _operations(8) |
1171 : _operations(8) |
1801 case lir_cas_long: s = "cas_long"; break; |
1816 case lir_cas_long: s = "cas_long"; break; |
1802 case lir_cas_obj: s = "cas_obj"; break; |
1817 case lir_cas_obj: s = "cas_obj"; break; |
1803 case lir_cas_int: s = "cas_int"; break; |
1818 case lir_cas_int: s = "cas_int"; break; |
1804 // LIR_OpProfileCall |
1819 // LIR_OpProfileCall |
1805 case lir_profile_call: s = "profile_call"; break; |
1820 case lir_profile_call: s = "profile_call"; break; |
|
1821 // LIR_OpProfileType |
|
1822 case lir_profile_type: s = "profile_type"; break; |
1806 // LIR_OpAssert |
1823 // LIR_OpAssert |
1807 #ifdef ASSERT |
1824 #ifdef ASSERT |
1808 case lir_assert: s = "assert"; break; |
1825 case lir_assert: s = "assert"; break; |
1809 #endif |
1826 #endif |
1810 case lir_none: ShouldNotReachHere();break; |
1827 case lir_none: ShouldNotReachHere();break; |
2084 mdo()->print(out); out->print(" "); |
2101 mdo()->print(out); out->print(" "); |
2085 recv()->print(out); out->print(" "); |
2102 recv()->print(out); out->print(" "); |
2086 tmp1()->print(out); out->print(" "); |
2103 tmp1()->print(out); out->print(" "); |
2087 } |
2104 } |
2088 |
2105 |
|
2106 // LIR_OpProfileType |
|
2107 void LIR_OpProfileType::print_instr(outputStream* out) const { |
|
2108 out->print("exact = "); exact_klass()->print_name_on(out); |
|
2109 out->print("current = "); ciTypeEntries::print_ciklass(out, current_klass()); |
|
2110 mdp()->print(out); out->print(" "); |
|
2111 obj()->print(out); out->print(" "); |
|
2112 tmp()->print(out); out->print(" "); |
|
2113 } |
|
2114 |
2089 #endif // PRODUCT |
2115 #endif // PRODUCT |
2090 |
2116 |
2091 // Implementation of LIR_InsertionBuffer |
2117 // Implementation of LIR_InsertionBuffer |
2092 |
2118 |
2093 void LIR_InsertionBuffer::append(int index, LIR_Op* op) { |
2119 void LIR_InsertionBuffer::append(int index, LIR_Op* op) { |