summaryrefslogtreecommitdiff
path: root/vm/mterp/x86/OP_MOVE.S
blob: f0d070d58de6a4c71e0936fa1cb71d700a14e73e (plain)
1
2
3
4
5
6
7
8
9
10
11
%verify "executed"
    /* for move, move-object, long-to-int */
    /* op vA, vB */
    movzbl rINST_HI,%eax         # eax<- BA
    andb   $$0xf,%al             # eax<- A
    shrl   $$12,rINST_FULL       # rINST_FULL<- B
    GET_VREG(%ecx,rINST_FULL)
    FETCH_INST_WORD(1)
    ADVANCE_PC(1)
    SET_VREG(%ecx,%eax)          # fp[A]<-fp[B]
    GOTO_NEXT