+++ /dev/null
-// Copyright 2016 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-TEXT main·foo(SB),7,$16-0 // TEXT main.foo(SB), 7, $16-0
- MOVD R1, R2 // b9040021
- MOVW R3, R4 // b9140043
- MOVH R5, R6 // b9070065
- MOVB R7, R8 // b9060087
- MOVWZ R1, R2 // b9160021
- MOVHZ R2, R3 // b9850032
- MOVBZ R4, R5 // b9840054
- MOVDBR R1, R2 // b90f0021
- MOVWBR R3, R4 // b91f0043
-
- MOVD (R15), R1 // e310f0000004
- MOVW (R15), R2 // e320f0000014
- MOVH (R15), R3 // e330f0000015
- MOVB (R15), R4 // e340f0000077
- MOVWZ (R15), R5 // e350f0000016
- MOVHZ (R15), R6 // e360f0000091
- MOVBZ (R15), R7 // e370f0000090
- MOVDBR (R15), R8 // e380f000000f
- MOVWBR (R15), R9 // e390f000001e
-
- MOVD R1, n-8(SP) // e310f0100024
- MOVW R2, n-8(SP) // e320f0100050
- MOVH R3, n-8(SP) // e330f0100070
- MOVB R4, n-8(SP) // e340f0100072
- MOVWZ R5, n-8(SP) // e350f0100050
- MOVHZ R6, n-8(SP) // e360f0100070
- MOVBZ R7, n-8(SP) // e370f0100072
- MOVDBR R8, n-8(SP) // e380f010002f
- MOVWBR R9, n-8(SP) // e390f010003e
-
- MOVD $-8589934592, R1 // c01efffffffe
- MOVW $-131072, R2 // c021fffe0000
- MOVH $-512, R3 // a739fe00
- MOVB $-1, R4 // a749ffff
-
- MOVD $-2147483648, n-8(SP) // c0b180000000e3b0f0100024
- MOVW $-131072, n-8(SP) // c0b1fffe0000e3b0f0100050
- MOVH $-512, n-8(SP) // e544f010fe00
- MOVB $-1, n-8(SP) // 92fff010
-
- ADD R1, R2 // b9e81022
- ADD R1, R2, R3 // b9e81032
- ADD $8192, R1 // c21800002000
- ADD $8192, R1, R2 // ec21200000d9
- ADDC R1, R2 // b9ea1022
- ADDC $1, R1, R2 // b9040021c22a00000001
- ADDC R1, R2, R3 // b9ea1032
- SUB R3, R4 // b9090043
- SUB R3, R4, R5 // b9e93054
- SUB $8192, R3 // c238ffffe000
- SUB $8192, R3, R4 // ec43e00000d9
- SUBC R1, R2 // b90b0021
- SUBC $1, R1, R2 // b9040021c22affffffff
- SUBC R2, R3, R4 // b9eb2043
- MULLW R6, R7 // b91c0076
- MULLW R6, R7, R8 // b9040087b91c0086
- MULLW $8192, R6 // c26000002000
- MULLW $8192, R6, R7 // b9040076c27000002000
- DIVD R1, R2 // b90400b2b90d00a1b904002b
- DIVD R1, R2, R3 // b90400b2b90d00a1b904003b
- DIVW R4, R5 // b90400b5b91d00a4b904005b
- DIVW R4, R5, R6 // b90400b5b91d00a4b904006b
- DIVDU R7, R8 // b90400a0b90400b8b98700a7b904008b
- DIVDU R7, R8, R9 // b90400a0b90400b8b98700a7b904009b
- DIVWU R1, R2 // b90400a0b90400b2b99700a1b904002b
- DIVWU R1, R2, R3 // b90400a0b90400b2b99700a1b904003b
-
- XC $8, (R15), n-8(SP) // XC (R15), $8, n-8(SP) // d707f010f000
- NC $8, (R15), n-8(SP) // NC (R15), $8, n-8(SP) // d407f010f000
- OC $8, (R15), n-8(SP) // OC (R15), $8, n-8(SP) // d607f010f000
- MVC $8, (R15), n-8(SP) // MVC (R15), $8, n-8(SP) // d207f010f000
- CLC $8, (R15), n-8(SP) // CLC (R15), $8, n-8(SP) // d507f000f010
- XC $256, -8(R15), -8(R15) // XC -8(R15), $256, -8(R15) // b90400afc2a8fffffff8d7ffa000a000
- MVC $256, 8192(R1), 8192(R2) // MVC 8192(R1), $256, 8192(R2) // b90400a2c2a800002000b90400b1c2b800002000d2ffa000b000
-
- CMP R1, R2 // b9200012
- CMP R3, $-2147483648 // c23c80000000
- CMPU R4, R5 // b9210045
- CMPU R6, $4294967295 // c26effffffff
- CMPW R7, R8 // 1978
- CMPW R9, $-2147483648 // c29d80000000
- CMPWU R1, R2 // 1512
- CMPWU R3, $4294967295 // c23fffffffff
-
- BNE 0(PC) // a7740000
- BEQ 0(PC) // a7840000
- BLT 0(PC) // a7440000
- BLE 0(PC) // a7c40000
- BGT 0(PC) // a7240000
- BGE 0(PC) // a7a40000
-
- CMPBNE R1, R2, 0(PC) // ec1200007064
- CMPBEQ R3, R4, 0(PC) // ec3400008064
- CMPBLT R5, R6, 0(PC) // ec5600004064
- CMPBLE R7, R8, 0(PC) // ec780000c064
- CMPBGT R9, R1, 0(PC) // ec9100002064
- CMPBGE R2, R3, 0(PC) // ec230000a064
-
- CMPBNE R1, $-127, 0(PC) // ec170000817c
- CMPBEQ R3, $0, 0(PC) // ec380000007c
- CMPBLT R5, $128, 0(PC) // ec540000807c
- CMPBLE R7, $127, 0(PC) // ec7c00007f7c
- CMPBGT R9, $0, 0(PC) // ec920000007c
- CMPBGE R2, $128, 0(PC) // ec2a0000807c
-
- CMPUBNE R1, R2, 0(PC) // ec1200007065
- CMPUBEQ R3, R4, 0(PC) // ec3400008065
- CMPUBLT R5, R6, 0(PC) // ec5600004065
- CMPUBLE R7, R8, 0(PC) // ec780000c065
- CMPUBGT R9, R1, 0(PC) // ec9100002065
- CMPUBGE R2, R3, 0(PC) // ec230000a065
-
- CMPUBNE R1, $256, 0(PC) // ec170000007d
- CMPUBEQ R3, $0, 0(PC) // ec380000007d
- CMPUBLT R5, $256, 0(PC) // ec540000007d
- CMPUBLE R7, $0, 0(PC) // ec7c0000007d
- CMPUBGT R9, $256, 0(PC) // ec920000007d
- CMPUBGE R2, $0, 0(PC) // ec2a0000007d
-
- CEFBRA R0, F15 // b39400f0
- CDFBRA R1, F14 // b39500e1
- CEGBRA R2, F13 // b3a400d2
- CDGBRA R3, F12 // b3a500c3
-
- CELFBR R0, F15 // b39000f0
- CDLFBR R1, F14 // b39100e1
- CELGBR R2, F13 // b3a000d2
- CDLGBR R3, F12 // b3a100c3
-
- CFEBRA F15, R1 // b398501f
- CFDBRA F14, R2 // b399502e
- CGEBRA F13, R3 // b3a8503d
- CGDBRA F12, R4 // b3a9504c
-
- CLFEBR F15, R1 // b39c501f
- CLFDBR F14, R2 // b39d502e
- CLGEBR F13, R3 // b3ac503d
- CLGDBR F12, R4 // b3ad504c
-
- FMOVS $0, F11 // b37400b0
- FMOVD $0, F12 // b37500c0
- FMOVS (R1)(R2*1), F0 // ed0210000064
- FMOVS n-8(SP), F15 // edf0f0100064
- FMOVD -9999999(R8)(R9*1), F8 // c0a1ff67698141aa9000ed8a80000065
- FMOVD F4, F5 // 2854
- FADDS F0, F15 // b30a00f0
- FADD F1, F14 // b31a00e1
- FSUBS F2, F13 // b30b00d2
- FSUB F3, F12 // b31b00c3
- FMULS F4, F11 // b31700b4
- FMUL F5, F10 // b31c00a5
- FDIVS F6, F9 // b30d0096
- FDIV F7, F8 // b31d0087
- FABS F1, F2 // b3100021
- FSQRTS F3, F4 // b3140043
- FSQRT F5, F15 // b31500f5
-
- VL (R15), V1 // e710f0000006
- VST V1, (R15) // e710f000000e
- VL (R15), V31 // e7f0f0000806
- VST V31, (R15) // e7f0f000080e
- VESLB $5, V14 // e7ee00050030
- VESRAG $0, V15, V16 // e70f0000383a
- VLM (R15), V8, V23 // e787f0000436
- VSTM V8, V23, (R15) // e787f000043e
- VONE V1 // e710ffff0044
- VZERO V16 // e70000000844
- VGBM $52428, V31 // e7f0cccc0844
- VREPIB $255, V4 // e74000ff0045
- VREPG $1, V4, V16 // e7040001384d
- VREPB $4, V31, V1 // e71f0004044d
- VFTCIDB $4095, V1, V2 // e721fff0304a
- WFTCIDB $3276, V15, V16 // e70fccc8384a
- VPOPCT V8, V19 // e73800000850
- VFEEZBS V1, V2, V31 // e7f120300880
- WFCHDBS V22, V23, V4 // e746701836eb
- VMNH V1, V2, V30 // e7e1200018fe
- VO V2, V1, V0 // e7021000006a
- VERLLVF V2, V30, V27 // e7be20002c73
- VSCBIB V0, V23, V24 // e78700000cf5
- VNOT V16, V1 // e7101000046b
- VCLZF V16, V17 // e71000002c53
- VLVGP R3, R4, V8 // e78340000062
-
- // Some vector instructions have their inputs reordered.
- // Typically the reordering puts the length/index input into From3.
- VGEG $1, 8(R15)(V30*1), V31 // VGEG 8(R15)(V30*1), $1, V31 // e7fef0081c12
- VSCEG $1, V31, 16(R15)(V30*1) // VSCEG V31, $1, 16(R15)(V30*1) // e7fef0101c1a
- VGEF $0, 2048(R15)(V1*1), V2 // VGEF 2048(R15)(V1*1), $0, V2 // e721f8000013
- VSCEF $0, V2, 4095(R15)(V1*1) // VSCEF V2, $0, 4095(R15)(V1*1) // e721ffff001b
- VLL R0, (R15), V1 // VLL (R15), R0, V1 // e710f0000037
- VSTL R0, V16, (R15) // VSTL V16, R0, (R15) // e700f000083f
- VGMH $8, $16, V12 // VGMH $16, $8, V12 // e7c008101046
- VLEIF $2, $-43, V16 // VLEIF $-43, $2, V16 // e700ffd52843
- VSLDB $3, V1, V16, V18 // VSLDB V1, V16, $3, V18 // e72100030a77
- VERIMB $2, V31, V1, V2 // VERIMB V31, V1, $2, V2 // e72f10020472
- VSEL V1, V2, V3, V4 // VSEL V2, V3, V1, V4 // e7412000308d
- VGFMAH V21, V31, V24, V0 // VGFMAH V31, V24, V21, V0 // e705f10087bc
- WFMSDB V2, V25, V24, V31 // WFMSDB V25, V24, V2, V31 // e7f298038b8e
- VPERM V31, V0, V2, V3 // VPERM V0, V2, V31, V3 // e73f0000248c
- VPDI $1, V2, V31, V1 // VPDI V2, V31, $1, V1 // e712f0001284
-
- RET
-
-TEXT main·init(SB),7,$0 // TEXT main.init(SB), 7, $0
- RET
-
-TEXT main·main(SB),7,$0 // TEXT main.main(SB), 7, $0
- BL main·foo(SB) // CALL main.foo(SB)
- RET