< prev index next >

src/hotspot/cpu/x86/x86_64.ad

Print this page




9246   format %{ "andl    $dst, $src\t# int" %}
9247   opcode(0x81, 0x04); /* Opcode 81 /4 */
9248   ins_encode(OpcSErm(dst, src), Con8or32(src));
9249   ins_pipe(ialu_reg);
9250 %}
9251 
9252 // And Register with Memory
9253 instruct andI_rReg_mem(rRegI dst, memory src, rFlagsReg cr)
9254 %{
9255   match(Set dst (AndI dst (LoadI src)));
9256   effect(KILL cr);
9257 
9258   ins_cost(125);
9259   format %{ "andl    $dst, $src\t# int" %}
9260   opcode(0x23);
9261   ins_encode(REX_reg_mem(dst, src), OpcP, reg_mem(dst, src));
9262   ins_pipe(ialu_reg_mem);
9263 %}
9264 
9265 // And Memory with Register












9266 instruct andI_mem_rReg(memory dst, rRegI src, rFlagsReg cr)
9267 %{
9268   match(Set dst (StoreI dst (AndI (LoadI dst) src)));
9269   effect(KILL cr);
9270 
9271   ins_cost(150);
9272   format %{ "andl    $dst, $src\t# int" %}
9273   opcode(0x21); /* Opcode 21 /r */
9274   ins_encode(REX_reg_mem(src, dst), OpcP, reg_mem(src, dst));
9275   ins_pipe(ialu_mem_reg);
9276 %}
9277 
9278 // And Memory with Immediate
9279 instruct andI_mem_imm(memory dst, immI src, rFlagsReg cr)
9280 %{
9281   match(Set dst (StoreI dst (AndI (LoadI dst) src)));
9282   effect(KILL cr);
9283 
9284   ins_cost(125);
9285   format %{ "andl    $dst, $src\t# int" %}


9427   format %{ "orl     $dst, $src\t# int" %}
9428   opcode(0x81, 0x01); /* Opcode 81 /1 id */
9429   ins_encode(OpcSErm(dst, src), Con8or32(src));
9430   ins_pipe(ialu_reg);
9431 %}
9432 
9433 // Or Register with Memory
9434 instruct orI_rReg_mem(rRegI dst, memory src, rFlagsReg cr)
9435 %{
9436   match(Set dst (OrI dst (LoadI src)));
9437   effect(KILL cr);
9438 
9439   ins_cost(125);
9440   format %{ "orl     $dst, $src\t# int" %}
9441   opcode(0x0B);
9442   ins_encode(REX_reg_mem(dst, src), OpcP, reg_mem(dst, src));
9443   ins_pipe(ialu_reg_mem);
9444 %}
9445 
9446 // Or Memory with Register












9447 instruct orI_mem_rReg(memory dst, rRegI src, rFlagsReg cr)
9448 %{
9449   match(Set dst (StoreI dst (OrI (LoadI dst) src)));
9450   effect(KILL cr);
9451 
9452   ins_cost(150);
9453   format %{ "orl     $dst, $src\t# int" %}
9454   opcode(0x09); /* Opcode 09 /r */
9455   ins_encode(REX_reg_mem(src, dst), OpcP, reg_mem(src, dst));
9456   ins_pipe(ialu_mem_reg);
9457 %}
9458 
9459 // Or Memory with Immediate
9460 instruct orI_mem_imm(memory dst, immI src, rFlagsReg cr)
9461 %{
9462   match(Set dst (StoreI dst (OrI (LoadI dst) src)));
9463   effect(KILL cr);
9464 
9465   ins_cost(125);
9466   format %{ "orl     $dst, $src\t# int" %}


9503   format %{ "xorl    $dst, $src\t# int" %}
9504   opcode(0x81, 0x06); /* Opcode 81 /6 id */
9505   ins_encode(OpcSErm(dst, src), Con8or32(src));
9506   ins_pipe(ialu_reg);
9507 %}
9508 
9509 // Xor Register with Memory
9510 instruct xorI_rReg_mem(rRegI dst, memory src, rFlagsReg cr)
9511 %{
9512   match(Set dst (XorI dst (LoadI src)));
9513   effect(KILL cr);
9514 
9515   ins_cost(125);
9516   format %{ "xorl    $dst, $src\t# int" %}
9517   opcode(0x33);
9518   ins_encode(REX_reg_mem(dst, src), OpcP, reg_mem(dst, src));
9519   ins_pipe(ialu_reg_mem);
9520 %}
9521 
9522 // Xor Memory with Register












9523 instruct xorI_mem_rReg(memory dst, rRegI src, rFlagsReg cr)
9524 %{
9525   match(Set dst (StoreI dst (XorI (LoadI dst) src)));
9526   effect(KILL cr);
9527 
9528   ins_cost(150);
9529   format %{ "xorl    $dst, $src\t# int" %}
9530   opcode(0x31); /* Opcode 31 /r */
9531   ins_encode(REX_reg_mem(src, dst), OpcP, reg_mem(src, dst));
9532   ins_pipe(ialu_mem_reg);
9533 %}
9534 
9535 // Xor Memory with Immediate
9536 instruct xorI_mem_imm(memory dst, immI src, rFlagsReg cr)
9537 %{
9538   match(Set dst (StoreI dst (XorI (LoadI dst) src)));
9539   effect(KILL cr);
9540 
9541   ins_cost(125);
9542   format %{ "xorl    $dst, $src\t# int" %}




9246   format %{ "andl    $dst, $src\t# int" %}
9247   opcode(0x81, 0x04); /* Opcode 81 /4 */
9248   ins_encode(OpcSErm(dst, src), Con8or32(src));
9249   ins_pipe(ialu_reg);
9250 %}
9251 
9252 // And Register with Memory
9253 instruct andI_rReg_mem(rRegI dst, memory src, rFlagsReg cr)
9254 %{
9255   match(Set dst (AndI dst (LoadI src)));
9256   effect(KILL cr);
9257 
9258   ins_cost(125);
9259   format %{ "andl    $dst, $src\t# int" %}
9260   opcode(0x23);
9261   ins_encode(REX_reg_mem(dst, src), OpcP, reg_mem(dst, src));
9262   ins_pipe(ialu_reg_mem);
9263 %}
9264 
9265 // And Memory with Register
9266 instruct andB_mem_rReg(memory dst, rRegI src, rFlagsReg cr)
9267 %{
9268   match(Set dst (StoreB dst (AndI (LoadB dst) src)));
9269   effect(KILL cr);
9270 
9271   ins_cost(150);
9272   format %{ "andb    $dst, $src\t# byte" %}
9273   opcode(0x20);
9274   ins_encode(REX_breg_mem(src, dst), OpcP, reg_mem(src, dst));
9275   ins_pipe(ialu_mem_reg);
9276 %}
9277 
9278 instruct andI_mem_rReg(memory dst, rRegI src, rFlagsReg cr)
9279 %{
9280   match(Set dst (StoreI dst (AndI (LoadI dst) src)));
9281   effect(KILL cr);
9282 
9283   ins_cost(150);
9284   format %{ "andl    $dst, $src\t# int" %}
9285   opcode(0x21); /* Opcode 21 /r */
9286   ins_encode(REX_reg_mem(src, dst), OpcP, reg_mem(src, dst));
9287   ins_pipe(ialu_mem_reg);
9288 %}
9289 
9290 // And Memory with Immediate
9291 instruct andI_mem_imm(memory dst, immI src, rFlagsReg cr)
9292 %{
9293   match(Set dst (StoreI dst (AndI (LoadI dst) src)));
9294   effect(KILL cr);
9295 
9296   ins_cost(125);
9297   format %{ "andl    $dst, $src\t# int" %}


9439   format %{ "orl     $dst, $src\t# int" %}
9440   opcode(0x81, 0x01); /* Opcode 81 /1 id */
9441   ins_encode(OpcSErm(dst, src), Con8or32(src));
9442   ins_pipe(ialu_reg);
9443 %}
9444 
9445 // Or Register with Memory
9446 instruct orI_rReg_mem(rRegI dst, memory src, rFlagsReg cr)
9447 %{
9448   match(Set dst (OrI dst (LoadI src)));
9449   effect(KILL cr);
9450 
9451   ins_cost(125);
9452   format %{ "orl     $dst, $src\t# int" %}
9453   opcode(0x0B);
9454   ins_encode(REX_reg_mem(dst, src), OpcP, reg_mem(dst, src));
9455   ins_pipe(ialu_reg_mem);
9456 %}
9457 
9458 // Or Memory with Register
9459 instruct orB_mem_rReg(memory dst, rRegI src, rFlagsReg cr)
9460 %{
9461   match(Set dst (StoreB dst (OrI (LoadB dst) src)));
9462   effect(KILL cr);
9463 
9464   ins_cost(150);
9465   format %{ "orb    $dst, $src\t# byte" %}
9466   opcode(0x08);
9467   ins_encode(REX_breg_mem(src, dst), OpcP, reg_mem(src, dst));
9468   ins_pipe(ialu_mem_reg);
9469 %}
9470 
9471 instruct orI_mem_rReg(memory dst, rRegI src, rFlagsReg cr)
9472 %{
9473   match(Set dst (StoreI dst (OrI (LoadI dst) src)));
9474   effect(KILL cr);
9475 
9476   ins_cost(150);
9477   format %{ "orl     $dst, $src\t# int" %}
9478   opcode(0x09); /* Opcode 09 /r */
9479   ins_encode(REX_reg_mem(src, dst), OpcP, reg_mem(src, dst));
9480   ins_pipe(ialu_mem_reg);
9481 %}
9482 
9483 // Or Memory with Immediate
9484 instruct orI_mem_imm(memory dst, immI src, rFlagsReg cr)
9485 %{
9486   match(Set dst (StoreI dst (OrI (LoadI dst) src)));
9487   effect(KILL cr);
9488 
9489   ins_cost(125);
9490   format %{ "orl     $dst, $src\t# int" %}


9527   format %{ "xorl    $dst, $src\t# int" %}
9528   opcode(0x81, 0x06); /* Opcode 81 /6 id */
9529   ins_encode(OpcSErm(dst, src), Con8or32(src));
9530   ins_pipe(ialu_reg);
9531 %}
9532 
9533 // Xor Register with Memory
9534 instruct xorI_rReg_mem(rRegI dst, memory src, rFlagsReg cr)
9535 %{
9536   match(Set dst (XorI dst (LoadI src)));
9537   effect(KILL cr);
9538 
9539   ins_cost(125);
9540   format %{ "xorl    $dst, $src\t# int" %}
9541   opcode(0x33);
9542   ins_encode(REX_reg_mem(dst, src), OpcP, reg_mem(dst, src));
9543   ins_pipe(ialu_reg_mem);
9544 %}
9545 
9546 // Xor Memory with Register
9547 instruct xorB_mem_rReg(memory dst, rRegI src, rFlagsReg cr)
9548 %{
9549   match(Set dst (StoreB dst (XorI (LoadB dst) src)));
9550   effect(KILL cr);
9551 
9552   ins_cost(150);
9553   format %{ "xorb    $dst, $src\t# byte" %}
9554   opcode(0x30);
9555   ins_encode(REX_breg_mem(src, dst), OpcP, reg_mem(src, dst));
9556   ins_pipe(ialu_mem_reg);
9557 %}
9558 
9559 instruct xorI_mem_rReg(memory dst, rRegI src, rFlagsReg cr)
9560 %{
9561   match(Set dst (StoreI dst (XorI (LoadI dst) src)));
9562   effect(KILL cr);
9563 
9564   ins_cost(150);
9565   format %{ "xorl    $dst, $src\t# int" %}
9566   opcode(0x31); /* Opcode 31 /r */
9567   ins_encode(REX_reg_mem(src, dst), OpcP, reg_mem(src, dst));
9568   ins_pipe(ialu_mem_reg);
9569 %}
9570 
9571 // Xor Memory with Immediate
9572 instruct xorI_mem_imm(memory dst, immI src, rFlagsReg cr)
9573 %{
9574   match(Set dst (StoreI dst (XorI (LoadI dst) src)));
9575   effect(KILL cr);
9576 
9577   ins_cost(125);
9578   format %{ "xorl    $dst, $src\t# int" %}


< prev index next >