|
|
1.1 ! root 1: #include "../machine/alignment.h" ! 2: storer(infop) process_info *infop; ! 3: /* ! 4: /* Store multiple registers. ! 5: /* ! 6: /***************************************/ ! 7: { ! 8: register int mask, next_register, new_address; ! 9: ! 10: mask = operand(infop,0)->data & 0x3fff; /* Bits 0 to 13 only */ ! 11: new_address = operand(infop,1)->address; ! 12: next_register = 0; /* Register # */ ! 13: while (next_register <= 13) ! 14: { ! 15: if (mask & 1 << next_register) ! 16: { ! 17: put_longword (infop, Register (infop, next_register), ! 18: new_address); ! 19: new_address += 4; ! 20: } ! 21: next_register++; ! 22: } ! 23: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.