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

1.1     ! root        1: .seg "text"
        !             2: .global _main
        !             3: .align 4
        !             4: .proc 4
        !             5: _main:save %sp,-96,%sp
        !             6: set L6,%r29
        !             7: ba L5; nop
        !             8: L2:
        !             9: ldsb [%r29],%r8
        !            10: call _backslash; nop
        !            11: mov %r8,%r27
        !            12: set L7,%r8
        !            13: ldsb [%r29],%r9
        !            14: mov %r27,%r10
        !            15: call _printf; nop
        !            16: L3:
        !            17: add %r29,1,%r29
        !            18: L5:
        !            19: ldsb [%r29],%r27
        !            20: cmp %r27,%r0; bne L2; nop
        !            21: call _f; nop
        !            22: call _g; nop
        !            23: call _h; nop
        !            24: set 16777216,%r28
        !            25: ba L11; nop
        !            26: L8:
        !            27: mov %r28,%r8
        !            28: call _big; nop
        !            29: L9:
        !            30: set 16777216,%r27
        !            31: add %r28,%r27,%r28
        !            32: L11:
        !            33: set 0x7000000,%r27
        !            34: and %r28,%r27,%r27
        !            35: cmp %r27,%r0; bne L8; nop
        !            36: call _limit; nop
        !            37: mov %r0,%r24
        !            38: L1:
        !            39: ret; restore
        !            40: .global _backslash
        !            41: .align 4
        !            42: .proc 4
        !            43: _backslash:
        !            44: cmp %r8,110; be L18; nop
        !            45: cmp %r8,110; bg L22; nop
        !            46: cmp %r8,102; be L17; nop
        !            47: cmp %r8,102; bg L14; nop
        !            48: cmp %r8,98; be L16; nop
        !            49: ba L14; nop
        !            50: L22:
        !            51: cmp %r8,114; be L19; nop
        !            52: cmp %r8,116; be L20; nop
        !            53: cmp %r8,118; be L21; nop
        !            54: ba L14; nop
        !            55: L16:
        !            56: set 8,%r8
        !            57: ba L13; nop
        !            58: L17:
        !            59: set 12,%r8
        !            60: ba L13; nop
        !            61: L18:
        !            62: set 10,%r8
        !            63: ba L13; nop
        !            64: L19:
        !            65: set 13,%r8
        !            66: ba L13; nop
        !            67: L20:
        !            68: set 9,%r8
        !            69: ba L13; nop
        !            70: L21:
        !            71: set 11,%r8
        !            72: ba L13; nop
        !            73: L14:
        !            74: L13:
        !            75: retl; nop
        !            76: .global _f
        !            77: .align 4
        !            78: .proc 4
        !            79: _f:save %sp,-96,%sp
        !            80: mov %r0,%r28
        !            81: set L24,%r8
        !            82: call _printf; nop
        !            83: mov %r0,%r29
        !            84: L25:
        !            85: mov %r29,%r27
        !            86: cmp %r29,1; bl L29; nop
        !            87: cmp %r29,20; bg L29; nop
        !            88: sll %r29,2,%r26
        !            89: set L42-4,%r25
        !            90: ld [%r26+%r25],%r26
        !            91: jmp %r26; nop
        !            92: L42:
        !            93: .align 4; .word L31
        !            94: .align 4; .word L32
        !            95: .align 4; .word L29
        !            96: .align 4; .word L29
        !            97: .align 4; .word L29
        !            98: .align 4; .word L29
        !            99: .align 4; .word L33
        !           100: .align 4; .word L34
        !           101: .align 4; .word L35
        !           102: .align 4; .word L29
        !           103: .align 4; .word L29
        !           104: .align 4; .word L29
        !           105: .align 4; .word L29
        !           106: .align 4; .word L29
        !           107: .align 4; .word L29
        !           108: .align 4; .word L36
        !           109: .align 4; .word L37
        !           110: .align 4; .word L38
        !           111: .align 4; .word L39
        !           112: .align 4; .word L40
        !           113: L31:
        !           114: mov %r29,%r28
        !           115: ba L30; nop
        !           116: L32:
        !           117: mov %r29,%r28
        !           118: ba L30; nop
        !           119: L33:
        !           120: mov %r29,%r28
        !           121: ba L30; nop
        !           122: L34:
        !           123: mov %r29,%r28
        !           124: ba L30; nop
        !           125: L35:
        !           126: mov %r29,%r28
        !           127: ba L30; nop
        !           128: L36:
        !           129: mov %r29,%r28
        !           130: ba L30; nop
        !           131: L37:
        !           132: mov %r29,%r28
        !           133: ba L30; nop
        !           134: L38:
        !           135: mov %r29,%r28
        !           136: ba L30; nop
        !           137: L39:
        !           138: mov %r29,%r28
        !           139: ba L30; nop
        !           140: L40:
        !           141: mov %r29,%r28
        !           142: L29:
        !           143: L30:
        !           144: set L44,%r8
        !           145: mov %r28,%r9
        !           146: call _printf; nop
        !           147: L26:
        !           148: add %r29,1,%r29
        !           149: cmp %r29,20; ble L25; nop
        !           150: L23:
        !           151: ret; restore
        !           152: .global _g
        !           153: .align 4
        !           154: .proc 4
        !           155: _g:save %sp,-96,%sp
        !           156: set L46,%r8
        !           157: call _printf; nop
        !           158: set 1,%r29
        !           159: L47:
        !           160: cmp %r29,1001; bl L65; nop
        !           161: cmp %r29,1004; bg L64; nop
        !           162: sll %r29,2,%r28
        !           163: set L66-4004,%r27
        !           164: ld [%r28+%r27],%r28
        !           165: jmp %r28; nop
        !           166: L66:
        !           167: .align 4; .word L60
        !           168: .align 4; .word L60
        !           169: .align 4; .word L60
        !           170: .align 4; .word L60
        !           171: L65:
        !           172: cmp %r29,1; bl L51; nop
        !           173: cmp %r29,8; bg L51; nop
        !           174: sll %r29,2,%r28
        !           175: set L69-4,%r27
        !           176: ld [%r28+%r27],%r28
        !           177: jmp %r28; nop
        !           178: L69:
        !           179: .align 4; .word L53
        !           180: .align 4; .word L53
        !           181: .align 4; .word L55
        !           182: .align 4; .word L55
        !           183: .align 4; .word L55
        !           184: .align 4; .word L57
        !           185: .align 4; .word L57
        !           186: .align 4; .word L57
        !           187: L68:
        !           188: L64:
        !           189: cmp %r29,3001; bl L51; nop
        !           190: cmp %r29,3004; bg L51; nop
        !           191: sll %r29,2,%r28
        !           192: set L72-12004,%r27
        !           193: ld [%r28+%r27],%r28
        !           194: jmp %r28; nop
        !           195: L72:
        !           196: .align 4; .word L62
        !           197: .align 4; .word L62
        !           198: .align 4; .word L62
        !           199: .align 4; .word L62
        !           200: L53:
        !           201: set L54,%r8
        !           202: mov %r29,%r9
        !           203: call _printf; nop
        !           204: ba L52; nop
        !           205: L55:
        !           206: set L56,%r8
        !           207: mov %r29,%r9
        !           208: call _printf; nop
        !           209: ba L52; nop
        !           210: L57:
        !           211: set L58,%r8
        !           212: mov %r29,%r9
        !           213: call _printf; nop
        !           214: L51:
        !           215: set L59,%r8
        !           216: mov %r29,%r9
        !           217: call _printf; nop
        !           218: ba L52; nop
        !           219: L60:
        !           220: set L61,%r8
        !           221: mov %r29,%r9
        !           222: call _printf; nop
        !           223: ba L52; nop
        !           224: L62:
        !           225: set L63,%r8
        !           226: mov %r29,%r9
        !           227: call _printf; nop
        !           228: L52:
        !           229: L48:
        !           230: add %r29,1,%r29
        !           231: cmp %r29,10; ble L47; nop
        !           232: L45:
        !           233: ret; restore
        !           234: .global _h
        !           235: .align 4
        !           236: .proc 4
        !           237: _h:save %sp,-96,%sp
        !           238: mov %r0,%r28
        !           239: set L75,%r8
        !           240: call _printf; nop
        !           241: set 1,%r29
        !           242: L76:
        !           243: cmp %r29,128; be L82; nop
        !           244: cmp %r29,128; bg L95; nop
        !           245: cmp %r29,16; be L84; nop
        !           246: cmp %r29,16; bg L96; nop
        !           247: cmp %r29,8; be L85; nop
        !           248: ba L80; nop
        !           249: L96:
        !           250: cmp %r29,120; be L86; nop
        !           251: ba L80; nop
        !           252: L95:
        !           253: cmp %r29,280; be L87; nop
        !           254: cmp %r29,280; bg L97; nop
        !           255: cmp %r29,264; be L88; nop
        !           256: cmp %r29,264; bg L98; nop
        !           257: cmp %r29,248; be L89; nop
        !           258: ba L80; nop
        !           259: L98:
        !           260: cmp %r29,272; be L90; nop
        !           261: ba L80; nop
        !           262: L97:
        !           263: cmp %r29,304; be L91; nop
        !           264: cmp %r29,304; bg L99; nop
        !           265: cmp %r29,296; be L92; nop
        !           266: cmp %r29,296; bg L80; nop
        !           267: cmp %r29,288; be L93; nop
        !           268: ba L80; nop
        !           269: L99:
        !           270: cmp %r29,312; be L94; nop
        !           271: ba L80; nop
        !           272: L80:
        !           273: add %r28,1,%r28
        !           274: ba L77; nop
        !           275: L82:
        !           276: set L83,%r8
        !           277: mov %r29,%r9
        !           278: call _printf; nop
        !           279: ba L81; nop
        !           280: L84:
        !           281: set L83,%r8
        !           282: mov %r29,%r9
        !           283: call _printf; nop
        !           284: ba L81; nop
        !           285: L85:
        !           286: set L83,%r8
        !           287: mov %r29,%r9
        !           288: call _printf; nop
        !           289: ba L81; nop
        !           290: L86:
        !           291: set L83,%r8
        !           292: mov %r29,%r9
        !           293: call _printf; nop
        !           294: ba L81; nop
        !           295: L87:
        !           296: set L83,%r8
        !           297: mov %r29,%r9
        !           298: call _printf; nop
        !           299: ba L81; nop
        !           300: L88:
        !           301: set L83,%r8
        !           302: mov %r29,%r9
        !           303: call _printf; nop
        !           304: ba L81; nop
        !           305: L89:
        !           306: set L83,%r8
        !           307: mov %r29,%r9
        !           308: call _printf; nop
        !           309: ba L81; nop
        !           310: L90:
        !           311: set L83,%r8
        !           312: mov %r29,%r9
        !           313: call _printf; nop
        !           314: ba L81; nop
        !           315: L91:
        !           316: set L83,%r8
        !           317: mov %r29,%r9
        !           318: call _printf; nop
        !           319: ba L81; nop
        !           320: L92:
        !           321: set L83,%r8
        !           322: mov %r29,%r9
        !           323: call _printf; nop
        !           324: ba L81; nop
        !           325: L93:
        !           326: set L83,%r8
        !           327: mov %r29,%r9
        !           328: call _printf; nop
        !           329: ba L81; nop
        !           330: L94:
        !           331: set L83,%r8
        !           332: mov %r29,%r9
        !           333: call _printf; nop
        !           334: L81:
        !           335: L77:
        !           336: add %r29,1,%r29
        !           337: cmp %r29,500; ble L76; nop
        !           338: set L100,%r8
        !           339: mov %r28,%r9
        !           340: call _printf; nop
        !           341: L74:
        !           342: ret; restore
        !           343: .global _big
        !           344: .align 4
        !           345: .proc 4
        !           346: _big:save %sp,-96,%sp
        !           347: set 0x6000000,%r28
        !           348: and %r24,%r28,%r29
        !           349: mov %r29,%r28
        !           350: set 33554432,%r27
        !           351: cmp %r28,%r27; be L107; nop
        !           352: cmp %r28,%r27; bg L110; nop
        !           353: mov %r29,%r28
        !           354: cmp %r28,-2; be L105; nop
        !           355: cmp %r28,-1; be L105; nop
        !           356: cmp %r28,%r0; be L105; nop
        !           357: ba L102; nop
        !           358: L110:
        !           359: set 67108864,%r28
        !           360: cmp %r29,%r28; be L108; nop
        !           361: ba L102; nop
        !           362: L105:
        !           363: set L106,%r8
        !           364: mov %r24,%r9
        !           365: call _printf; nop
        !           366: ba L103; nop
        !           367: L107:
        !           368: set L106,%r8
        !           369: mov %r24,%r9
        !           370: call _printf; nop
        !           371: ba L103; nop
        !           372: L108:
        !           373: set L106,%r8
        !           374: mov %r24,%r9
        !           375: call _printf; nop
        !           376: ba L103; nop
        !           377: L102:
        !           378: set L109,%r8
        !           379: mov %r24,%r9
        !           380: call _printf; nop
        !           381: L103:
        !           382: L101:
        !           383: ret; restore
        !           384: .global _limit
        !           385: .align 4
        !           386: .proc 4
        !           387: _limit:save %sp,-96,%sp
        !           388: set -2147483648,%r29
        !           389: L112:
        !           390: set -2147483648,%r28
        !           391: cmp %r29,%r28; bl L116; nop
        !           392: set -2147483644,%r27
        !           393: cmp %r29,%r27; bg L116; nop
        !           394: sll %r29,2,%r27
        !           395: sll %r28,2,%r28
        !           396: sub %r27,%r28,%r28
        !           397: set L130,%r27
        !           398: ld [%r28+%r27],%r28
        !           399: jmp %r28; nop
        !           400: L130:
        !           401: .align 4; .word L118
        !           402: .align 4; .word L120
        !           403: .align 4; .word L122
        !           404: .align 4; .word L124
        !           405: .align 4; .word L126
        !           406: L118:
        !           407: set L119,%r8
        !           408: call _printf; nop
        !           409: ba L117; nop
        !           410: L120:
        !           411: set L121,%r8
        !           412: call _printf; nop
        !           413: ba L117; nop
        !           414: L122:
        !           415: set L123,%r8
        !           416: call _printf; nop
        !           417: ba L117; nop
        !           418: L124:
        !           419: set L125,%r8
        !           420: call _printf; nop
        !           421: ba L117; nop
        !           422: L126:
        !           423: set L127,%r8
        !           424: call _printf; nop
        !           425: ba L117; nop
        !           426: L116:
        !           427: set L128,%r8
        !           428: call _printf; nop
        !           429: L117:
        !           430: L113:
        !           431: add %r29,1,%r29
        !           432: set -2147483643,%r28
        !           433: cmp %r29,%r28; ble L112; nop
        !           434: set 2147483647,%r29
        !           435: L131:
        !           436: set 2147483643,%r28
        !           437: cmp %r29,%r28; bl L135; nop
        !           438: set 2147483647,%r27
        !           439: cmp %r29,%r27; bg L135; nop
        !           440: sll %r29,2,%r27
        !           441: sll %r28,2,%r28
        !           442: sub %r27,%r28,%r28
        !           443: set L143,%r27
        !           444: ld [%r28+%r27],%r28
        !           445: jmp %r28; nop
        !           446: L143:
        !           447: .align 4; .word L141
        !           448: .align 4; .word L140
        !           449: .align 4; .word L139
        !           450: .align 4; .word L138
        !           451: .align 4; .word L137
        !           452: L137:
        !           453: set L119,%r8
        !           454: call _printf; nop
        !           455: ba L136; nop
        !           456: L138:
        !           457: set L121,%r8
        !           458: call _printf; nop
        !           459: ba L136; nop
        !           460: L139:
        !           461: set L123,%r8
        !           462: call _printf; nop
        !           463: ba L136; nop
        !           464: L140:
        !           465: set L125,%r8
        !           466: call _printf; nop
        !           467: ba L136; nop
        !           468: L141:
        !           469: set L127,%r8
        !           470: call _printf; nop
        !           471: ba L136; nop
        !           472: L135:
        !           473: set L128,%r8
        !           474: call _printf; nop
        !           475: L136:
        !           476: L132:
        !           477: sub %r29,1,%r29
        !           478: set 2147483642,%r28
        !           479: cmp %r29,%r28; bge L131; nop
        !           480: L111:
        !           481: ret; restore
        !           482: .seg "text"
        !           483: L128:.byte 53,10,0
        !           484: L127:.byte 52,10,0
        !           485: L125:.byte 51,10,0
        !           486: L123:.byte 50,10,0
        !           487: L121:.byte 49,10,0
        !           488: L119:.byte 48,10,0
        !           489: L109:.ascii "x = 0x%x (default)\012\000"
        !           490: L106:.ascii "x = 0x%x\012\000"
        !           491: L100:.ascii "%d defaults\012\000"
        !           492: L83:.ascii "i = %d\012\000"
        !           493: L75:.byte 104,58,10,0
        !           494: L63:.ascii "6 %d\012\000"
        !           495: L61:.ascii "5 %d\012\000"
        !           496: L59:.ascii "d %d\012\000"
        !           497: L58:.ascii "3 %d\012\000"
        !           498: L56:.ascii "2 %d\012\000"
        !           499: L54:.ascii "1 %d\012\000"
        !           500: L46:.byte 103,58,10,0
        !           501: L44:.ascii "x = %d\012\000"
        !           502: L24:.byte 102,58,10,0
        !           503: L7:.ascii "%c = 0x%x\012\000"
        !           504: L6:.ascii "bfnrtvx\000"

unix.superglobalmegacorp.com

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