comparison src/cpu/x86/vm/x86_64.ad @ 7643:3ac7d10a6572

Merge with hsx25/hotspot.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Thu, 31 Jan 2013 15:42:25 +0100
parents b30b3c2a0cf2
children e961c11b85fe cc32ccaaf47f
comparison
equal deleted inserted replaced
7573:17b6a63fe7c2 7643:3ac7d10a6572
10493 $tmp1$$XMMRegister, $tmp2$$XMMRegister); 10493 $tmp1$$XMMRegister, $tmp2$$XMMRegister);
10494 %} 10494 %}
10495 ins_pipe( pipe_slow ); 10495 ins_pipe( pipe_slow );
10496 %} 10496 %}
10497 10497
10498 // encode char[] to byte[] in ISO_8859_1
10499 instruct encode_iso_array(rsi_RegP src, rdi_RegP dst, rdx_RegI len,
10500 regD tmp1, regD tmp2, regD tmp3, regD tmp4,
10501 rcx_RegI tmp5, rax_RegI result, rFlagsReg cr) %{
10502 match(Set result (EncodeISOArray src (Binary dst len)));
10503 effect(TEMP tmp1, TEMP tmp2, TEMP tmp3, TEMP tmp4, USE_KILL src, USE_KILL dst, USE_KILL len, KILL tmp5, KILL cr);
10504
10505 format %{ "Encode array $src,$dst,$len -> $result // KILL RCX, RDX, $tmp1, $tmp2, $tmp3, $tmp4, RSI, RDI " %}
10506 ins_encode %{
10507 __ encode_iso_array($src$$Register, $dst$$Register, $len$$Register,
10508 $tmp1$$XMMRegister, $tmp2$$XMMRegister, $tmp3$$XMMRegister,
10509 $tmp4$$XMMRegister, $tmp5$$Register, $result$$Register);
10510 %}
10511 ins_pipe( pipe_slow );
10512 %}
10513
10514
10498 //----------Control Flow Instructions------------------------------------------ 10515 //----------Control Flow Instructions------------------------------------------
10499 // Signed compare Instructions 10516 // Signed compare Instructions
10500 10517
10501 // XXX more variants!! 10518 // XXX more variants!!
10502 instruct compI_rReg(rFlagsReg cr, rRegI op1, rRegI op2) 10519 instruct compI_rReg(rFlagsReg cr, rRegI op1, rRegI op2)