--- old/src/share/vm/c1/c1_LIR.cpp 2014-07-09 16:46:32.407995801 -0400 +++ new/src/share/vm/c1/c1_LIR.cpp 2014-07-09 16:46:31.916664144 -0400 @@ -1006,6 +1006,29 @@ do_temp(opProfileType->_tmp); break; } + +// LIR_OpCrypto_CBC_AES + case lir_crypto_cbc_aes: { + assert(op->as_OpCrypto_CBC_AES() != NULL, "must be"); + LIR_OpCrypto_CBC_AES* opCrypto_CBC_AES = (LIR_OpCrypto_CBC_AES*)op; + + do_input(opCrypto_CBC_AES->_recv); + do_input(opCrypto_CBC_AES->_src); + do_input(opCrypto_CBC_AES->_src_off); + do_input(opCrypto_CBC_AES->_src_len); + do_input(opCrypto_CBC_AES->_dst); + do_input(opCrypto_CBC_AES->_dst_off); + do_input(opCrypto_CBC_AES->_insof); + + do_temp(opCrypto_CBC_AES->_recv); + + if (opCrypto_CBC_AES->_info) do_info(opCrypto_CBC_AES->_info); + do_call(); + if (opCrypto_CBC_AES->_result->is_valid()) do_output(opCrypto_CBC_AES->_result); + + break; + } + default: ShouldNotReachHere(); } @@ -1131,6 +1154,10 @@ masm->emit_compare_and_swap(this); } +void LIR_OpCrypto_CBC_AES::emit_code(LIR_Assembler* masm) { + masm->emit_crypto_cbc_aes(this); +} + void LIR_Op3::emit_code(LIR_Assembler* masm) { masm->emit_op3(this); } @@ -2107,6 +2134,13 @@ tmp()->print(out); out->print(" "); } +void LIR_OpCrypto_CBC_AES::print_instr(outputStream* out) const { + src()->print(out); out->print(" "); + src_off()->print(out); out->print(" "); + src_len()->print(out); out->print(" "); + dst()->print(out); out->print(" "); + dst_off()->print(out); out->print(" "); +} #endif // PRODUCT // Implementation of LIR_InsertionBuffer