Annotation of researchv10no/sys/inet/vecadd.s, revision 1.1

1.1     ! root        1:        .text
        !             2:        .align  2
        !             3:        .globl  _vecadd
        !             4: _vecadd:
        !             5:        .word   L.R1
        !             6:        subl2   $L.SO1,sp
        !             7:        .stabs  "vecadd",0x24,0,6,_vecadd
        !             8:        .stabs  "vecadd",0x20,0,77,0
        !             9:        .stabs  "w",0xa0,0,45,4
        !            10:        .stabs  "n",0xa0,0,4,8
        !            11:        .stabs  "s",0xa0,0,13,12
        !            12:        movl    4(ap),r11
        !            13:        movl    8(ap),r10
        !            14:        movl    12(ap),r9
        !            15: L15:
        !            16: # while n >= 128
        !            17:        subl2   $128,r10
        !            18:        jlss    L14
        !            19: #  add in 128 bytes
        !            20:        addl2   (r11)+,r9
        !            21:        adwc    (r11)+,r9
        !            22:        adwc    (r11)+,r9
        !            23:        adwc    (r11)+,r9
        !            24:        adwc    (r11)+,r9
        !            25:        adwc    (r11)+,r9
        !            26:        adwc    (r11)+,r9
        !            27:        adwc    (r11)+,r9
        !            28:        adwc    (r11)+,r9
        !            29:        adwc    (r11)+,r9
        !            30:        adwc    (r11)+,r9
        !            31:        adwc    (r11)+,r9
        !            32:        adwc    (r11)+,r9
        !            33:        adwc    (r11)+,r9
        !            34:        adwc    (r11)+,r9
        !            35:        adwc    (r11)+,r9
        !            36:        adwc    (r11)+,r9
        !            37:        adwc    (r11)+,r9
        !            38:        adwc    (r11)+,r9
        !            39:        adwc    (r11)+,r9
        !            40:        adwc    (r11)+,r9
        !            41:        adwc    (r11)+,r9
        !            42:        adwc    (r11)+,r9
        !            43:        adwc    (r11)+,r9
        !            44:        adwc    (r11)+,r9
        !            45:        adwc    (r11)+,r9
        !            46:        adwc    (r11)+,r9
        !            47:        adwc    (r11)+,r9
        !            48:        adwc    (r11)+,r9
        !            49:        adwc    (r11)+,r9
        !            50:        adwc    (r11)+,r9
        !            51:        adwc    (r11)+,r9
        !            52:        adwc    $0,r9
        !            53:        jbr     L15
        !            54: L14:
        !            55:        addl2   $128,r10
        !            56: L17:
        !            57: # while n >= 32
        !            58:        subl2   $32,r10
        !            59:        jlss    L16
        !            60: #  add in 32 bytes
        !            61:        addl2   (r11)+,r9
        !            62:        adwc    (r11)+,r9
        !            63:        adwc    (r11)+,r9
        !            64:        adwc    (r11)+,r9
        !            65:        adwc    (r11)+,r9
        !            66:        adwc    (r11)+,r9
        !            67:        adwc    (r11)+,r9
        !            68:        adwc    (r11)+,r9
        !            69:        adwc    $0,r9
        !            70:        jbr     L17
        !            71: L16:
        !            72:        addl2   $32,r10
        !            73: # fold the long
        !            74:        ashl    $-16,r9,r0
        !            75:        movzwl  r0,r0
        !            76:        movzwl  r9,r9
        !            77:        addl2   r0,r9
        !            78: L19:
        !            79: # while n >= 2
        !            80:        subl2   $2,r10
        !            81:        jlss    L18
        !            82: #  add in 2 bytes
        !            83:        movzwl  (r11)+,r0
        !            84:        addl2   r0,r9
        !            85:        jbr     L19
        !            86: L18:
        !            87:        cmpl    r10,$-1
        !            88:        jneq    L20
        !            89:        movzbl  (r11),r0
        !            90:        addl2   r0,r9
        !            91: L20:
        !            92: # fold the long
        !            93:        ashl    $-16,r9,r0
        !            94:        movzwl  r9,r9
        !            95:        addl2   r0,r9
        !            96:        ashl    $-16,r9,r0
        !            97:        movzwl  r9,r9
        !            98:        addw2   r9,r0
        !            99:        jbr     L13
        !           100:        .stabs  "s",0x40,0,13,9
        !           101:        .stabs  "n",0x40,0,4,10
        !           102:        .stabs  "w",0x40,0,45,11
        !           103: L13:
        !           104:        ret
        !           105:        .set    L.R1,0xe00
        !           106:        .set    L.SO1,0x0

unix.superglobalmegacorp.com

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