Home | History | Annotate | Download | only in x86
      1 %default {"pre0":"","pre1":""}
      2     /*
      3      * Generic 32-bit unary operation.  Provide an "instr" line that
      4      * specifies an instruction that performs "result = op eax".
      5      */
      6     /* unop vA, vB */
      7     movzbl   rINST_HI,%ecx           # ecx<- A+
      8     sarl     $$12,rINST_FULL         # rINST_FULL<- B
      9     GET_VREG(%eax,rINST_FULL)        # eax<- vB
     10     andb     $$0xf,%cl               # ecx<- A
     11     FETCH_INST_WORD(1)
     12     ADVANCE_PC(1)
     13     $pre0
     14     $pre1
     15     $instr
     16     SET_VREG(%eax,%ecx)
     17     GOTO_NEXT
     18