Annotation of cci/sys/tahoe/ARegister.c, revision 1.1.1.1

1.1       root        1: #include "../machine/alignment.h"
                      2: 
                      3: /*
                      4:  * Return the specified register from the big structure.
                      5:  */
                      6: 
                      7: long
                      8: Register (infop, number)
                      9: process_info   *infop;
                     10: long           number;
                     11: {
                     12: 
                     13:        switch (number) {
                     14:                case 0: return (r0);
                     15:                case 1: return (r1);
                     16:                case 2: return (r2);
                     17:                case 3: return (r3);
                     18:                case 4: return (r4);
                     19:                case 5: return (r5);
                     20:                case 6: return (r6);
                     21:                case 7: return (r7);
                     22:                case 8: return (r8);
                     23:                case 9: return (r9);
                     24:                case 10:        return (r10);
                     25:                case 11:        return (r11);
                     26:                case 12:        return (r12);
                     27:                case 13:        return (fp);
                     28:                case 14:        return (sp);
                     29:                case 15:        return (pc);
                     30:        }
                     31: }
                     32: 
                     33: 
                     34: /*
                     35:  * Replace a given register with the given value.
                     36:  */
                     37: Replace (infop,number, newvalue)
                     38: process_info   *infop;
                     39: long           number;
                     40: long           newvalue;
                     41: {
                     42: 
                     43:        switch (number) {
                     44:                case 0: r0 = newvalue; return;
                     45:                case 1: r1 = newvalue; return;
                     46:                case 2: r2 = newvalue; return;
                     47:                case 3: r3 = newvalue; return;
                     48:                case 4: r4 = newvalue; return;
                     49:                case 5: r5 = newvalue; return;
                     50:                case 6: r6 = newvalue; return;
                     51:                case 7: r7 = newvalue; return;
                     52:                case 8: r8 = newvalue; return;
                     53:                case 9: r9 = newvalue; return;
                     54:                case 10:        r10 = newvalue; return;
                     55:                case 11:        r11 = newvalue; return;
                     56:                case 12:        r12 = newvalue; return;
                     57:                case 13:        fp = newvalue; return;
                     58:                case 14:        sp = newvalue & ~3; return;
                     59:                case 15:        pc = newvalue; return;
                     60:        }
                     61: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.