Commit | Line | Data |
---|---|---|
32f4df43 SL |
1 | /* Aloadr.c 1.1 86/07/20 */ |
2 | ||
3 | #include "../tahoealign/align.h" | |
4 | loadr(infop) process_info *infop; | |
5 | /* | |
6 | /* Load multiple registers. | |
7 | /* | |
8 | /***************************************/ | |
9 | { | |
10 | register long mask, next_register, new_address; | |
11 | ||
12 | mask = operand(infop,0)->data & 0x3fff; /* Bits 0 to 13 only */ | |
13 | new_address = operand(infop,1)->address; | |
14 | next_register = 0; /* Register # */ | |
15 | while (next_register <= 13) | |
16 | { | |
17 | if (mask & 1 << next_register) | |
18 | { | |
19 | Replace (infop, next_register, | |
20 | get_longword (infop, new_address)); | |
21 | new_address += 4; | |
22 | } | |
23 | next_register++ ; | |
24 | } | |
25 | } |