%default {"result":"%eax"} /* * Generic 32-bit "shift/2addr" operation. */ /* shift/2addr vA, vB */ movzx rINST_HI,%ecx # eax<- BA sarl $$4,%ecx # ecx<- B GET_VREG(%ecx,%ecx) # eax<- vBB movzbl rINST_HI,rINST_FULL # rINST_FULL<- BA andb $$0xf,rINST_LO # rINST_FULL<- A GET_VREG(%eax,rINST_FULL) # eax<- vAA $instr # ex: sarl %cl,%eax SET_VREG($result,rINST_FULL) FETCH_INST_WORD(1) ADVANCE_PC(1) GOTO_NEXT