Home | History | Annotate | Download | only in x86
      1 /*
      2  * Generic 64-bit binary operation.
      3  */
      4     /* binop vAA, vBB, vCC */
      5     movzbl  2(rPC), %eax                    # eax <- BB
      6     movzbl  3(rPC), %ecx                    # ecx <- CC
      7     movl    rIBASE, LOCAL0(%esp)            # save rIBASE
      8     GET_VREG rIBASE, %eax                   # rIBASE <- v[BB+0]
      9     GET_VREG_HIGH %eax, %eax                # eax <- v[BB+1]
     10     $instr1                                 # ex: addl   (rFP,%ecx,4),rIBASE
     11     $instr2                                 # ex: adcl   4(rFP,%ecx,4),%eax
     12     SET_VREG rIBASE, rINST                  # v[AA+0] <- rIBASE
     13     movl    LOCAL0(%esp), rIBASE            # restore rIBASE
     14     SET_VREG_HIGH %eax, rINST               # v[AA+1] <- eax
     15     ADVANCE_PC_FETCH_AND_GOTO_NEXT 2
     16