Annotation of researchv10no/cmd/lcc/gen2/sparc-sun/tst/stdarg.s, revision 1.1

1.1     ! root        1: .seg "data"
        !             2: .global _x
        !             3: .align 4; _x:.word 1
        !             4: .word 2
        !             5: .word 3
        !             6: .word 4
        !             7: .seg "text"
        !             8: .global _main
        !             9: .align 4
        !            10: .proc 4
        !            11: _main:save %sp,-192,%sp
        !            12: set L2,%r8
        !            13: call _print; nop
        !            14: set L3,%r8
        !            15: set L4,%r9
        !            16: call _print; nop
        !            17: set L5,%r8
        !            18: set 3,%r9
        !            19: set 10,%r10
        !            20: call _print; nop
        !            21: set L6,%r8
        !            22: set L7,%r9
        !            23: set L8,%r10
        !            24: set 4,%r11
        !            25: set 10,%r12
        !            26: call _print; nop
        !            27: set L9,%r8
        !            28: set L7,%r9
        !            29: set L8,%r10
        !            30: set L10,%r29
        !            31: ld [%r29],%f30; ld [%r29+4],%f31
        !            32: st %f30,[%sp+4*3+68]
        !            33: st %f31,[%sp+4*4+68]
        !            34: ld [%sp+4*3+68],%o3
        !            35: ld [%sp+4*4+68],%o4
        !            36: set 10,%r13
        !            37: call _print; nop
        !            38: set L11,%r8
        !            39: add -16,%fp,%r29
        !            40: set _x,%r28
        !            41: ld [%r28+0],%r1
        !            42: ld [%r28+4],%r2
        !            43: st %r1,[%r29+0]
        !            44: ld [%r28+8],%r1
        !            45: st %r2,[%r29+4]
        !            46: ld [%r28+12],%r2
        !            47: st %r1,[%r29+8]
        !            48: st %r2,[%r29+12]
        !            49: mov %r29,%r9
        !            50: add -32,%fp,%r29
        !            51: ld [%r28+0],%r1
        !            52: ld [%r28+4],%r2
        !            53: st %r1,[%r29+0]
        !            54: ld [%r28+8],%r1
        !            55: st %r2,[%r29+4]
        !            56: ld [%r28+12],%r2
        !            57: st %r1,[%r29+8]
        !            58: st %r2,[%r29+12]
        !            59: mov %r29,%r10
        !            60: add -48,%fp,%r29
        !            61: ld [%r28+0],%r1
        !            62: ld [%r28+4],%r2
        !            63: st %r1,[%r29+0]
        !            64: ld [%r28+8],%r1
        !            65: st %r2,[%r29+4]
        !            66: ld [%r28+12],%r2
        !            67: st %r1,[%r29+8]
        !            68: st %r2,[%r29+12]
        !            69: mov %r29,%r11
        !            70: add -64,%fp,%r29
        !            71: ld [%r28+0],%r1
        !            72: ld [%r28+4],%r2
        !            73: st %r1,[%r29+0]
        !            74: ld [%r28+8],%r1
        !            75: st %r2,[%r29+4]
        !            76: ld [%r28+12],%r2
        !            77: st %r1,[%r29+8]
        !            78: st %r2,[%r29+12]
        !            79: mov %r29,%r12
        !            80: add -80,%fp,%r29
        !            81: ld [%r28+0],%r1
        !            82: ld [%r28+4],%r2
        !            83: st %r1,[%r29+0]
        !            84: ld [%r28+8],%r1
        !            85: st %r2,[%r29+4]
        !            86: ld [%r28+12],%r2
        !            87: st %r1,[%r29+8]
        !            88: st %r2,[%r29+12]
        !            89: mov %r29,%r13
        !            90: add -96,%fp,%r29
        !            91: ld [%r28+0],%r1
        !            92: ld [%r28+4],%r2
        !            93: st %r1,[%r29+0]
        !            94: ld [%r28+8],%r1
        !            95: st %r2,[%r29+4]
        !            96: ld [%r28+12],%r2
        !            97: st %r1,[%r29+8]
        !            98: st %r2,[%r29+12]
        !            99: st %r29,[%sp+4*6+68]
        !           100: call _print; nop
        !           101: L1:
        !           102: ret; restore
        !           103: .global _print
        !           104: .align 4
        !           105: .proc 4
        !           106: _print:save %sp,-112,%sp
        !           107: st %i1,[%fp+72]
        !           108: st %i2,[%fp+76]
        !           109: st %i3,[%fp+80]
        !           110: st %i4,[%fp+84]
        !           111: st %i5,[%fp+88]
        !           112: st %r24,[%fp+68]
        !           113: add 72,%fp,%r29
        !           114: ba L24; nop
        !           115: L21:
        !           116: ld [%fp+68],%r28
        !           117: ldsb [%r28],%r28
        !           118: cmp %r28,37; bne L25; nop
        !           119: ld [%fp+68],%r27
        !           120: add %r27,1,%r27
        !           121: st %r27,[%fp+68]
        !           122: ldsb [%r27],%r28
        !           123: cmp %r28,115; be L41; nop
        !           124: cmp %r28,115; bg L45; nop
        !           125: cmp %r28,98; bl L27; nop
        !           126: cmp %r28,102; bg L27; nop
        !           127: sll %r28,2,%r27
        !           128: set L47-392,%r26
        !           129: ld [%r27+%r26],%r27
        !           130: jmp %r27; nop
        !           131: L47:
        !           132: .align 4; .word L30
        !           133: .align 4; .word L35
        !           134: .align 4; .word L37
        !           135: .align 4; .word L27
        !           136: .align 4; .word L43
        !           137: L46:
        !           138: L45:
        !           139: cmp %r28,119; be L39; nop
        !           140: ba L27; nop
        !           141: L30:
        !           142: add %r29,4,%r27
        !           143: mov %r27,%r29
        !           144: add -16,%fp,%r26
        !           145: ld [%r27+-4],%r27
        !           146: ld [%r27+0],%r1
        !           147: ld [%r27+4],%r2
        !           148: st %r1,[%r26+0]
        !           149: ld [%r27+8],%r1
        !           150: st %r2,[%r26+4]
        !           151: ld [%r27+12],%r2
        !           152: st %r1,[%r26+8]
        !           153: st %r2,[%r26+12]
        !           154: set L31,%r8
        !           155: ld [%fp+-16],%r9
        !           156: ld [%fp+-12],%r10
        !           157: ld [%fp+-8],%r11
        !           158: ld [%fp+-4],%r12
        !           159: call _printf; nop
        !           160: ba L26; nop
        !           161: L35:
        !           162: set L36,%r8
        !           163: add %r29,4,%r27
        !           164: mov %r27,%r29
        !           165: ldsb [%r27+-1],%r9
        !           166: call _printf; nop
        !           167: ba L26; nop
        !           168: L37:
        !           169: set L38,%r8
        !           170: add %r29,4,%r27
        !           171: mov %r27,%r29
        !           172: ld [%r27+-4],%r9
        !           173: call _printf; nop
        !           174: ba L26; nop
        !           175: L39:
        !           176: set L40,%r8
        !           177: add %r29,4,%r27
        !           178: mov %r27,%r29
        !           179: ldsh [%r27+-2],%r9
        !           180: call _printf; nop
        !           181: ba L26; nop
        !           182: L41:
        !           183: set L42,%r8
        !           184: add %r29,4,%r27
        !           185: mov %r27,%r29
        !           186: ld [%r27+-4],%r9
        !           187: call _printf; nop
        !           188: ba L26; nop
        !           189: L43:
        !           190: set L44,%r8
        !           191: add %r29,8,%r27
        !           192: mov %r27,%r29
        !           193: ld [%r27+-8],%f30; ld [%r27+-8+4],%f31
        !           194: st %f30,[%sp+4*1+68]
        !           195: st %f31,[%sp+4*2+68]
        !           196: ld [%sp+4*1+68],%o1
        !           197: ld [%sp+4*2+68],%o2
        !           198: call _printf; nop
        !           199: ba L26; nop
        !           200: L27:
        !           201: set L36,%r8
        !           202: ld [%fp+68],%r27
        !           203: ldsb [%r27],%r9
        !           204: call _printf; nop
        !           205: ba L26; nop
        !           206: L25:
        !           207: set L36,%r8
        !           208: ld [%fp+68],%r27
        !           209: ldsb [%r27],%r9
        !           210: call _printf; nop
        !           211: L26:
        !           212: L22:
        !           213: ld [%fp+68],%r27
        !           214: add %r27,1,%r27
        !           215: st %r27,[%fp+68]
        !           216: L24:
        !           217: ld [%fp+68],%r27
        !           218: ldsb [%r27],%r27
        !           219: cmp %r27,%r0; bne L21; nop
        !           220: L18:
        !           221: ret; restore
        !           222: .seg "text"
        !           223: L44:.byte 37,102,0
        !           224: L42:.byte 37,115,0
        !           225: L40:.byte 37,120,0
        !           226: L38:.byte 37,100,0
        !           227: L36:.byte 37,99,0
        !           228: L31:.ascii "{%d %d %d %d}\000"
        !           229: L11:.ascii "%b %b %b %b %b %b\012\000"
        !           230: .align 8; L10:.word 0x40140000,0x0
        !           231: L9:.ascii "%s%s %f%c\000"
        !           232: L8:.ascii "st\000"
        !           233: L7:.ascii "te\000"
        !           234: L6:.ascii "%s%s %w%c\000"
        !           235: L5:.ascii "test %d%c\000"
        !           236: L4:.byte 50,0
        !           237: L3:.ascii "test %s\012\000"
        !           238: L2:.ascii "test 1\012\000"

unix.superglobalmegacorp.com

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