668 if (opBranch->_stub != NULL) opBranch->stub()->visit(this); |
668 if (opBranch->_stub != NULL) opBranch->stub()->visit(this); |
669 |
669 |
670 break; |
670 break; |
671 } |
671 } |
672 |
672 |
|
673 #ifdef MIPS |
|
674 case lir_cmove_mips: |
|
675 { |
|
676 assert(op->as_Op4() != NULL, "must be"); |
|
677 LIR_Op4* op4 = (LIR_Op4*)op; |
|
678 |
|
679 assert(op4->_info == NULL, "must be"); |
|
680 assert(op4->_opr1->is_valid() && op4->_opr2->is_valid() && op4->_opr3->is_valid() && op4->_opr4->is_valid() && op4->_result->is_valid(), "used"); |
|
681 |
|
682 do_input(op4->_opr1); |
|
683 do_input(op4->_opr2); |
|
684 do_input(op4->_opr3); |
|
685 do_input(op4->_opr4); |
|
686 if (op4->_tmp1->is_valid()) do_temp(op4->_tmp1); |
|
687 if (op4->_tmp2->is_valid()) do_temp(op4->_tmp2); |
|
688 if (op4->_tmp3->is_valid()) do_temp(op4->_tmp3); |
|
689 if (op4->_tmp4->is_valid()) do_temp(op4->_tmp4); |
|
690 if (op4->_tmp5->is_valid()) do_temp(op4->_tmp5); |
|
691 do_output(op4->_result); |
|
692 |
|
693 break; |
|
694 } |
|
695 #endif |
673 |
696 |
674 // LIR_OpAllocObj |
697 // LIR_OpAllocObj |
675 case lir_alloc_object: |
698 case lir_alloc_object: |
676 { |
699 { |
677 assert(op->as_OpAllocObj() != NULL, "must be"); |
700 assert(op->as_OpAllocObj() != NULL, "must be"); |
1241 } |
1264 } |
1242 |
1265 |
1243 void LIR_Op3::emit_code(LIR_Assembler* masm) { |
1266 void LIR_Op3::emit_code(LIR_Assembler* masm) { |
1244 masm->emit_op3(this); |
1267 masm->emit_op3(this); |
1245 } |
1268 } |
|
1269 |
|
1270 #ifdef MIPS |
|
1271 void LIR_Op4::emit_code(LIR_Assembler* masm) { |
|
1272 masm->emit_op4(this); |
|
1273 } |
|
1274 #endif |
1246 |
1275 |
1247 void LIR_OpLock::emit_code(LIR_Assembler* masm) { |
1276 void LIR_OpLock::emit_code(LIR_Assembler* masm) { |
1248 masm->emit_lock(this); |
1277 masm->emit_lock(this); |
1249 if (stub()) { |
1278 if (stub()) { |
1250 masm->append_code_stub(stub()); |
1279 masm->append_code_stub(stub()); |
1973 #ifdef MIPS |
2002 #ifdef MIPS |
1974 case lir_frem: s = "frem"; break; |
2003 case lir_frem: s = "frem"; break; |
1975 #endif |
2004 #endif |
1976 case lir_idiv: s = "idiv"; break; |
2005 case lir_idiv: s = "idiv"; break; |
1977 case lir_irem: s = "irem"; break; |
2006 case lir_irem: s = "irem"; break; |
|
2007 #ifdef MIPS |
|
2008 // LIR_Op4 |
|
2009 case lir_cmove_mips: s = "cmove_mips"; break; |
|
2010 #endif |
1978 // LIR_OpJavaCall |
2011 // LIR_OpJavaCall |
1979 case lir_static_call: s = "static"; break; |
2012 case lir_static_call: s = "static"; break; |
1980 case lir_optvirtual_call: s = "optvirtual"; break; |
2013 case lir_optvirtual_call: s = "optvirtual"; break; |
1981 case lir_icvirtual_call: s = "icvirtual"; break; |
2014 case lir_icvirtual_call: s = "icvirtual"; break; |
1982 case lir_virtual_call: s = "virtual"; break; |
2015 case lir_virtual_call: s = "virtual"; break; |
2259 in_opr2()->print(out); out->print(" "); |
2292 in_opr2()->print(out); out->print(" "); |
2260 in_opr3()->print(out); out->print(" "); |
2293 in_opr3()->print(out); out->print(" "); |
2261 result_opr()->print(out); |
2294 result_opr()->print(out); |
2262 } |
2295 } |
2263 |
2296 |
|
2297 #ifdef MIPS |
|
2298 // LIR_Op4 |
|
2299 void LIR_Op4::print_instr(outputStream* out) const { |
|
2300 print_condition(out, cond()); out->print(" "); |
|
2301 in_opr1()->print(out); out->print(" "); |
|
2302 in_opr2()->print(out); out->print(" "); |
|
2303 in_opr3()->print(out); out->print(" "); |
|
2304 in_opr4()->print(out); out->print(" "); |
|
2305 result_opr()->print(out); |
|
2306 } |
|
2307 #endif |
2264 |
2308 |
2265 void LIR_OpLock::print_instr(outputStream* out) const { |
2309 void LIR_OpLock::print_instr(outputStream* out) const { |
2266 hdr_opr()->print(out); out->print(" "); |
2310 hdr_opr()->print(out); out->print(" "); |
2267 obj_opr()->print(out); out->print(" "); |
2311 obj_opr()->print(out); out->print(" "); |
2268 lock_opr()->print(out); out->print(" "); |
2312 lock_opr()->print(out); out->print(" "); |