|
|
1.1 root 1: /* Aaoblss.c 1.1 86/07/20 */
2:
3: #include "../tahoealign/align.h"
4: aoblss(infop) process_info *infop;
5: /*
6: /* Add one, branch if less than.
7: /* Can't use real HW opcode, don't want to branch out of here !
8: /*
9: /*******************************************/
10: {
11: register long limit, index, new_address, complement;
12:
13: limit = operand(infop,0)->data;
14: index = operand(infop,1)->data;
15: complement = limit + ~index;
16: if ( complement < 0){ carry_0; negative_1;}else{carry_1; negative_0;}
17: if ( complement == 0) zero_1; else zero_0;
18: overflow_0;
19: write_back (infop,index+1, operand(infop,1));
20: new_address = operand(infop,2)->address;
21: if (!negative && !zero) pc = new_address;
22: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.