Update vm_s390x.dasc

used MOVE LONG EXTENDED in place of mov and
MOVE LONG instead of movzx
This commit is contained in:
ketank-new 2016-11-24 11:25:07 +05:30 committed by GitHub
parent 5887962b0e
commit 372f721e60

View File

@ -180,21 +180,16 @@
|// Call decode and dispatch.
|.macro ins_callt
| // BASE = new base, RB = LFUNC, RD = nargs+1, [BASE-4] = PC
| mov PC, LFUNC:RB->pc
| mov RA, [PC]
| movzx OP, RAL
| movzx RA, RAH
| mvcle PC, LFUNC:RB->pc
| mvcle RA, [PC]
| movcl OP, RAL
| movcl RA, RAH
| add PC, 4
|.if X64
| jmp aword [DISPATCH+OP*8]
|.else
| jmp aword [DISPATCH+OP*4]
|.endif
|.endmacro
|
|.macro ins_call
| // BASE = new base, RB = LFUNC, RD = nargs+1
| mov [BASE-4], PC
| mvcle [BASE-4], PC
| ins_callt
|.endmacro
|