blob: 7192d9a960ae58eab5290771213b9a58cbb9bd03 [file] [log] [blame]
%default {"pre0":"","pre1":""}
/*
* Generic 32-bit unary operation. Provide an "instr" line that
* specifies an instruction that performs "result = op eax".
*/
/* unop vA, vB */
movzbl rINST_HI,%ecx # ecx<- A+
sarl $$12,rINST_FULL # rINST_FULL<- B
GET_VREG(%eax,rINST_FULL) # eax<- vB
andb $$0xf,%cl # ecx<- A
FETCH_INST_WORD(1)
ADVANCE_PC(1)
$pre0
$pre1
$instr
SET_VREG(%eax,%ecx)
GOTO_NEXT