|
|
1.1 ! root 1: .seg "data" ! 2: .global _words ! 3: .align 4; _words:.word 1 ! 4: .word 2 ! 5: .word 3 ! 6: .ascii "if\000" ! 7: .skip 3 ! 8: .skip 2 ! 9: .word 4 ! 10: .word 5 ! 11: .skip 4 ! 12: .ascii "for" ! 13: .skip 3 ! 14: .skip 2 ! 15: .word 6 ! 16: .word 7 ! 17: .word 8 ! 18: .ascii "else\000" ! 19: .skip 1 ! 20: .skip 2 ! 21: .word 9 ! 22: .word 10 ! 23: .word 11 ! 24: .ascii "whil" ! 25: .byte 101 ! 26: .skip 1 ! 27: .skip 2 ! 28: .word 0 ! 29: .skip 8 ! 30: .skip 8 ! 31: .global _wordlist ! 32: .align 4; _wordlist:.word _words ! 33: .global _x ! 34: .align 4; _x:.word 1 ! 35: .word 2 ! 36: .word 3 ! 37: .word 4 ! 38: .word 0 ! 39: .word 5 ! 40: .word 6 ! 41: .skip 12 ! 42: .word 7 ! 43: .skip 16 ! 44: .global _y ! 45: .align 4; _y:.word _x ! 46: .word _x+20 ! 47: .word _x+40 ! 48: .word 0x0 ! 49: .seg "text" ! 50: .global _main ! 51: .align 4 ! 52: .proc 4 ! 53: _main:save %sp,-96,%sp ! 54: mov %r0,%r28 ! 55: ba L8; nop ! 56: L5: ! 57: mov %r0,%r29 ! 58: ba L12; nop ! 59: L9: ! 60: set L13,%r8 ! 61: sll %r29,2,%r27 ! 62: sll %r28,2,%r26 ! 63: set _y,%r25 ! 64: ld [%r26+%r25],%r26 ! 65: ld [%r27+%r26],%r9 ! 66: call _printf; nop ! 67: L10: ! 68: add %r29,1,%r29 ! 69: L12: ! 70: sll %r29,2,%r27 ! 71: sll %r28,2,%r26 ! 72: set _y,%r25 ! 73: ld [%r26+%r25],%r26 ! 74: ld [%r27+%r26],%r27 ! 75: cmp %r27,%r0; bne L9; nop ! 76: set L14,%r8 ! 77: call _printf; nop ! 78: L6: ! 79: add %r28,1,%r28 ! 80: L8: ! 81: sll %r28,2,%r27 ! 82: set _y,%r26 ! 83: ld [%r27+%r26],%r27 ! 84: cmp %r27,%r0; bne L5; nop ! 85: call _f; nop ! 86: set _wordlist,%r27 ! 87: ld [%r27],%r8 ! 88: call _g; nop ! 89: mov %r0,%r24 ! 90: L4: ! 91: ret; restore ! 92: .seg "data" ! 93: .align 4; _16:.word L17 ! 94: .word L18 ! 95: .word L19 ! 96: .word L20 ! 97: .word 0x0 ! 98: .seg "text" ! 99: .global _f ! 100: .align 4 ! 101: .proc 4 ! 102: _f:save %sp,-96,%sp ! 103: set _16,%r29 ! 104: ba L24; nop ! 105: L21: ! 106: set L25,%r8 ! 107: ld [%r29],%r9 ! 108: call _printf; nop ! 109: L22: ! 110: add %r29,4,%r29 ! 111: L24: ! 112: ld [%r29],%r28 ! 113: cmp %r28,%r0; bne L21; nop ! 114: L15: ! 115: ret; restore ! 116: .global _g ! 117: .align 4 ! 118: .proc 4 ! 119: _g:save %sp,-96,%sp ! 120: ba L30; nop ! 121: L27: ! 122: mov %r0,%r29 ! 123: ba L34; nop ! 124: L31: ! 125: set L35,%r8 ! 126: sll %r29,2,%r28 ! 127: ld [%r28+%r24],%r9 ! 128: call _printf; nop ! 129: L32: ! 130: add %r29,1,%r29 ! 131: L34: ! 132: cmp %r29,3; blu L31; nop ! 133: set L25,%r8 ! 134: add %r24,12,%r9 ! 135: call _printf; nop ! 136: L28: ! 137: add %r24,20,%r24 ! 138: L30: ! 139: ld [%r24],%r28 ! 140: cmp %r28,%r0; bne L27; nop ! 141: call _h; nop ! 142: L26: ! 143: ret; restore ! 144: .global _h ! 145: .align 4 ! 146: .proc 4 ! 147: _h:save %sp,-96,%sp ! 148: mov %r0,%r29 ! 149: ba L40; nop ! 150: L37: ! 151: set 20,%r28 ! 152: mov %r29,%o1; call .mul,2; mov %r28,%o0; mov %o0,%r28 ! 153: set L41,%r8 ! 154: set _words,%r27 ! 155: ld [%r28+%r27],%r9 ! 156: set _words+4,%r27 ! 157: ld [%r28+%r27],%r10 ! 158: set _words+8,%r27 ! 159: ld [%r28+%r27],%r11 ! 160: set _words+12,%r27 ! 161: add %r28,%r27,%r12 ! 162: call _printf; nop ! 163: L38: ! 164: add %r29,1,%r29 ! 165: L40: ! 166: cmp %r29,5; blu L37; nop ! 167: L36: ! 168: ret; restore ! 169: .seg "text" ! 170: L41:.ascii "%d %d %d %s\012\000" ! 171: L35:.ascii "%d \000" ! 172: L25:.byte 37,115,10,0 ! 173: L20:.ascii "while\000" ! 174: L19:.ascii "else\000" ! 175: L18:.ascii "for\000" ! 176: L17:.ascii "if\000" ! 177: L14:.byte 10,0 ! 178: L13:.ascii " %d\000"
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.