|
|
1.1 ! root 1: ////////// ! 2: / n1/i386/tables/shift.t ! 3: ////////// ! 4: ! 5: ///////// ! 6: / ! 7: / Shift left (<<) and shift right (>>). ! 8: / Short shifts are done inline. ! 9: / Longer shifts use 'shift by CL'. ! 10: / [OP0] is ZSAL or ZSAR. ! 11: / [TL OP0] maps to a signed or unsigned shift of the appropriate length. ! 12: / The result of a shift by more than 32 bits is undefined behavior. ! 13: / This table simply generates a shift by the arg, ! 14: / and the i386 uses the shift counts modulo 32. ! 15: / ! 16: ///////// ! 17: ! 18: SHL: ! 19: SHR: ! 20: ! 21: / Long op immediate. ! 22: % PEFFECT|PVALUE|PREL|P_SLT ! 23: DWORD ANYR ANYR * TEMP ! 24: TREG DWORD ! 25: SHCNT|MMX LONG ! 26: [TL OP0] [R],[AR] ! 27: [IFR] [REL0] [LAB] ! 28: ! 29: / Long op long. ! 30: / This uses node temp EAX rather than ANYR to avoid using ECX. ! 31: % PEFFECT|PVALUE|P_SLT ! 32: DWORD EAX EAX ECX EAX ! 33: TREG DWORD ! 34: ADR LONG ! 35: [ZMOV] [REGNO ECX],[AR] ! 36: [TL OP0] [R],[REGNO CL] ! 37: ! 38: ////////// ! 39: / end of n1/i386/tables/shift.t ! 40: //////////
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.