| // 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. |
| |
| #include "../../../../../runtime/textflag.h" |
| |
| TEXT main·foo(SB),DUPOK|NOSPLIT,$16-0 // TEXT main.foo(SB), DUPOK|NOSPLIT, $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 |
| |
| MOVDEQ R0, R1 // b9e28010 |
| MOVDGE R2, R3 // b9e2a032 |
| MOVDGT R4, R5 // b9e22054 |
| MOVDLE R6, R7 // b9e2c076 |
| MOVDLT R8, R9 // b9e24098 |
| MOVDNE R10, R11 // b9e270ba |
| |
| LOCR $3, R2, R1 // b9f23012 |
| LOCGR $7, R5, R6 // b9e27065 |
| |
| 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) // 5020f010 |
| MOVH R3, n-8(SP) // 4030f010 |
| MOVB R4, n-8(SP) // 4240f010 |
| MOVWZ R5, n-8(SP) // 5050f010 |
| MOVHZ R6, n-8(SP) // 4060f010 |
| MOVBZ R7, n-8(SP) // 4270f010 |
| 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 $32767, n-8(SP) // e548f0107fff |
| MOVD $-1, -524288(R1) // e3a010008071e548a000ffff |
| MOVW $32767, n-8(SP) // e54cf0107fff |
| MOVW $-32768, 4096(R2) // e3a020000171e54ca0008000 |
| MOVH $512, n-8(SP) // e544f0100200 |
| MOVH $-512, 524288(R3) // c0a10008000041aa3000e544a000fe00 |
| MOVB $-1, n-8(SP) // 92fff010 |
| MOVB $255, 4096(R4) // ebff40000152 |
| MOVB $-128, -524288(R5) // eb8050008052 |
| MOVB $1, -524289(R6) // c0a1fff7ffff41aa60009201a000 |
| |
| // RX (12-bit displacement) and RXY (20-bit displacement) instruction encoding (e.g: ST vs STY) |
| MOVW R1, 4095(R2)(R3) // 50132fff |
| MOVW R1, 4096(R2)(R3) // e31320000150 |
| MOVWZ R1, 4095(R2)(R3) // 50132fff |
| MOVWZ R1, 4096(R2)(R3) // e31320000150 |
| MOVH R1, 4095(R2)(R3) // 40132fff |
| MOVHZ R1, 4095(R2)(R3) // 40132fff |
| MOVH R1, 4096(R2)(R3) // e31320000170 |
| MOVHZ R1, 4096(R2)(R3) // e31320000170 |
| MOVB R1, 4095(R2)(R3) // 42132fff |
| MOVBZ R1, 4095(R2)(R3) // 42132fff |
| MOVB R1, 4096(R2)(R3) // e31320000172 |
| MOVBZ R1, 4096(R2)(R3) // e31320000172 |
| |
| ADD R1, R2 // b9e81022 |
| ADD R1, R2, R3 // b9e81032 |
| ADD $8192, R1 // a71b2000 |
| ADD $8192, R1, R2 // ec21200000d9 |
| ADD $32768, R1 // c21800008000 |
| ADD $32768, R1, R2 // b9040021c22800008000 |
| ADDC R1, R2 // b9ea1022 |
| ADDC $1, R1, R2 // ec21000100db |
| ADDC $-1, R1, R2 // ec21ffff00db |
| ADDC R1, R2, R3 // b9ea1032 |
| ADDW R1, R2 // 1a21 |
| ADDW R1, R2, R3 // b9f81032 |
| ADDW $8192, R1 // a71a2000 |
| ADDW $8192, R1, R2 // ec21200000d8 |
| ADDE R1, R2 // b9880021 |
| SUB R3, R4 // b9090043 |
| SUB R3, R4, R5 // b9e93054 |
| SUB $8192, R3 // a73be000 |
| SUB $8192, R3, R4 // ec43e00000d9 |
| SUBC R1, R2 // b90b0021 |
| SUBC $1, R1, R2 // ec21ffff00db |
| SUBC R2, R3, R4 // b9eb2043 |
| SUBW R3, R4 // 1b43 |
| SUBW R3, R4, R5 // b9f93054 |
| SUBW $8192, R1 // c21500002000 |
| SUBW $8192, R1, R2 // 1821c22500002000 |
| MULLW R6, R7 // b91c0076 |
| MULLW R6, R7, R8 // b9040087b91c0086 |
| MULLW $8192, R6 // a76c2000 |
| MULLW $8192, R6, R7 // 1876a77c2000 |
| MULLW $-32769, R8 // c281ffff7fff |
| MULLW $-32769, R8, R9 // 1898c291ffff7fff |
| MULLD $-2147483648, R1 // c21080000000 |
| MULLD $-2147483648, R1, R2 // b9040021c22080000000 |
| MULHD R9, R8 // b90400b8b98600a9ebb9003f000ab98000b8b90900abebb8003f000ab98000b9b9e9b08a |
| MULHD R7, R2, R1 // b90400b2b98600a7ebb7003f000ab98000b2b90900abebb2003f000ab98000b7b9e9b01a |
| MULHDU R3, R4 // b90400b4b98600a3b904004a |
| MULHDU R5, R6, R7 // b90400b6b98600a5b904007a |
| MLGR R1, R2 // b9860021 |
| DIVD R1, R2 // b90400b2b90d00a1b904002b |
| DIVD R1, R2, R3 // b90400b2b90d00a1b904003b |
| DIVW R4, R5 // b90400b5b91d00a4b904005b |
| DIVW R4, R5, R6 // b90400b5b91d00a4b904006b |
| DIVDU R7, R8 // a7a90000b90400b8b98700a7b904008b |
| DIVDU R7, R8, R9 // a7a90000b90400b8b98700a7b904009b |
| DIVWU R1, R2 // a7a90000b90400b2b99700a1b904002b |
| DIVWU R1, R2, R3 // a7a90000b90400b2b99700a1b904003b |
| MODD R1, R2 // b90400b2b90d00a1b904002a |
| MODD R1, R2, R3 // b90400b2b90d00a1b904003a |
| MODW R4, R5 // b90400b5b91d00a4b904005a |
| MODW R4, R5, R6 // b90400b5b91d00a4b904006a |
| MODDU R7, R8 // a7a90000b90400b8b98700a7b904008a |
| MODDU R7, R8, R9 // a7a90000b90400b8b98700a7b904009a |
| MODWU R1, R2 // a7a90000b90400b2b99700a1b904002a |
| MODWU R1, R2, R3 // a7a90000b90400b2b99700a1b904003a |
| NEG R1 // b9030011 |
| NEG R1, R2 // b9030021 |
| NEGW R1 // b9130011 |
| NEGW R1, R2 // b9130021 |
| FLOGR R2, R2 // b9830022 |
| POPCNT R3, R4 // b9e10043 |
| |
| AND R1, R2 // b9800021 |
| AND R1, R2, R3 // b9e42031 |
| AND $-2, R1 // a517fffe |
| AND $-65536, R1 // c01bffff0000 |
| AND $1, R1 // c0a100000001b980001a |
| ANDW R1, R2 // 1421 |
| ANDW R1, R2, R3 // b9f42031 |
| ANDW $1, R1 // c01b00000001 |
| ANDW $131071, R1 // a5160001 |
| ANDW $65536, R1 // c01b00010000 |
| ANDW $-2, R1 // a517fffe |
| OR R1, R2 // b9810021 |
| OR R1, R2, R3 // b9e62031 |
| OR $1, R1 // a51b0001 |
| OR $131071, R1 // c01d0001ffff |
| OR $65536, R1 // c01d00010000 |
| OR $-2, R1 // c0a1fffffffeb981001a |
| ORW R1, R2 // 1621 |
| ORW R1, R2, R3 // b9f62031 |
| ORW $1, R1 // a51b0001 |
| ORW $131071, R1 // c01d0001ffff |
| ORW $65536, R1 // a51a0001 |
| ORW $-2, R1 // c01dfffffffe |
| XOR R1, R2 // b9820021 |
| XOR R1, R2, R3 // b9e72031 |
| XOR $1, R1 // c01700000001 |
| XOR $131071, R1 // c0170001ffff |
| XOR $65536, R1 // c01700010000 |
| XOR $-2, R1 // c0a1fffffffeb982001a |
| XORW R1, R2 // 1721 |
| XORW R1, R2, R3 // b9f72031 |
| XORW $1, R1 // c01700000001 |
| XORW $131071, R1 // c0170001ffff |
| XORW $65536, R1 // c01700010000 |
| XORW $-2, R1 // c017fffffffe |
| |
| ADD -524288(R1), R2 // e32010008008 |
| ADD 524287(R3), R4 // e3403fff7f08 |
| ADD -524289(R1), R2 // c0a1fff7ffffe32a10000008 |
| ADD 524288(R3), R4 // c0a100080000e34a30000008 |
| ADD -524289(R1)(R2*1), R3 // c0a1fff7ffff41aa2000e33a10000008 |
| ADD 524288(R3)(R4*1), R5 // c0a10008000041aa4000e35a30000008 |
| ADDC (R1), R2 // e3201000000a |
| ADDW (R5), R6 // 5a605000 |
| ADDW 4095(R7), R8 // 5a807fff |
| ADDW -1(R1), R2 // e3201fffff5a |
| ADDW 4096(R3), R4 // e3403000015a |
| ADDE 4096(R3), R4 // e34030000188 |
| ADDE 4096(R3)(R2*1), R4 // e34230000188 |
| ADDE 524288(R3)(R4*1), R5 // c0a10008000041aa4000e35a30000088 |
| MULLD (R1)(R2*1), R3 // e3321000000c |
| MULLW (R3)(R4*1), R5 // 71543000 |
| MULLW 4096(R3), R4 // e34030000151 |
| SUB (R1), R2 // e32010000009 |
| SUBC (R1), R2 // e3201000000b |
| SUBE (R1), R2 // e32010000089 |
| SUBW (R1), R2 // 5b201000 |
| SUBW -1(R1), R2 // e3201fffff5b |
| AND (R1), R2 // e32010000080 |
| ANDW (R1), R2 // 54201000 |
| ANDW -1(R1), R2 // e3201fffff54 |
| OR (R1), R2 // e32010000081 |
| ORW (R1), R2 // 56201000 |
| ORW -1(R1), R2 // e3201fffff56 |
| XOR (R1), R2 // e32010000082 |
| XORW (R1), R2 // 57201000 |
| XORW -1(R1), R2 // e3201fffff57 |
| |
| // shift and rotate instructions |
| SRD $4, R4, R7 // eb740004000c |
| SRD R1, R4, R7 // eb741000000c |
| SRW $4, R4, R7 // eb74000400de |
| SRW R1, R4, R7 // eb74100000de |
| SLW $4, R3, R6 // eb63000400df |
| SLW R2, R3, R6 // eb63200000df |
| SLD $4, R3, R6 // eb630004000d |
| SLD R2, R3, R6 // eb632000000d |
| SRAD $4, R5, R8 // eb850004000a |
| SRAD R3, R5, R8 // eb853000000a |
| SRAW $4, R5, R8 // eb85000400dc |
| SRAW R3, R5, R8 // eb85300000dc |
| RLL R1, R2, R3 // eb321000001d |
| RLL $4, R2, R3 // eb320004001d |
| RLLG R1, R2, R3 // eb321000001c |
| RLLG $4, R2, R3 // eb320004001c |
| |
| RNSBG $0, $31, $32, R1, R2 // ec21001f2054 |
| RXSBG $17, $8, $16, R3, R4 // ec4311081057 |
| ROSBG $9, $24, $11, R5, R6 // ec6509180b56 |
| RNSBGT $0, $31, $32, R7, R8 // ec87801f2054 |
| RXSBGT $17, $8, $16, R9, R10 // eca991081057 |
| ROSBGT $9, $24, $11, R11, R0 // ec0b89180b56 |
| RISBG $0, $31, $32, R1, R2 // ec21001f2055 |
| RISBGN $17, $8, $16, R3, R4 // ec4311081059 |
| RISBGZ $9, $24, $11, R5, R6 // ec6509980b55 |
| RISBGNZ $0, $31, $32, R7, R8 // ec87009f2059 |
| RISBHG $17, $8, $16, R9, R10 // eca91108105d |
| RISBLG $9, $24, $11, R11, R0 // ec0b09180b51 |
| RISBHGZ $17, $8, $16, R9, R10 // eca91188105d |
| RISBLGZ $9, $24, $11, R11, R0 // ec0b09980b51 |
| |
| LAA R1, R2, 524287(R3) // eb213fff7ff8 |
| LAAG R4, R5, -524288(R6) // eb54600080e8 |
| LAAL R7, R8, 8192(R9) // eb87900002fa |
| LAALG R10, R11, -8192(R12) // ebbac000feea |
| LAN R1, R2, (R3) // eb21300000f4 |
| LANG R4, R5, (R6) // eb54600000e4 |
| LAX R7, R8, (R9) // eb87900000f7 |
| LAXG R10, R11, (R12) // ebbac00000e7 |
| LAO R1, R2, (R3) // eb21300000f6 |
| LAOG R4, R5, (R6) // eb54600000e6 |
| |
| // load and store multiple |
| LMG n-8(SP), R3, R4 // eb34f0100004 |
| LMG -5(R5), R3, R4 // eb345ffbff04 |
| LMY n-8(SP), R3, R4 // 9834f010 |
| LMY 4096(R1), R3, R4 // eb3410000198 |
| STMG R1, R2, n-8(SP) // eb12f0100024 |
| STMG R1, R2, -5(R3) // eb123ffbff24 |
| STMY R1, R2, n-8(SP) // 9012f010 |
| STMY R1, R2, 4096(R3) // eb1230000190 |
| |
| XC $8, (R15), n-8(SP) // d707f010f000 |
| NC $8, (R15), n-8(SP) // d407f010f000 |
| OC $8, (R15), n-8(SP) // d607f010f000 |
| MVC $8, (R15), n-8(SP) // d207f010f000 |
| MVCIN $8, (R15), n-8(SP) // e807f010f000 |
| CLC $8, (R15), n-8(SP) // d507f000f010 |
| XC $256, -8(R15), -8(R15) // b90400afc2a8fffffff8d7ffa000a000 |
| MVC $256, 8192(R1), 8192(R2) // b90400a2c2a800002000b90400b1c2b800002000d2ffa000b000 |
| |
| CMP R1, R2 // b9200012 |
| CMP R3, $32767 // a73f7fff |
| CMP R3, $32768 // c23c00008000 |
| CMP R3, $-2147483648 // c23c80000000 |
| CMPU R4, R5 // b9210045 |
| CMPU R6, $4294967295 // c26effffffff |
| CMPW R7, R8 // 1978 |
| CMPW R9, $-32768 // a79e8000 |
| CMPW R9, $-32769 // c29dffff7fff |
| CMPW R9, $-2147483648 // c29d80000000 |
| CMPWU R1, R2 // 1512 |
| CMPWU R3, $4294967295 // c23fffffffff |
| |
| TMHH R1, $65535 // a712ffff |
| TMHL R2, $1 // a7230001 |
| TMLH R3, $0 // a7300000 |
| TMLL R4, $32768 // a7418000 |
| |
| IPM R3 // b2220030 |
| IPM R12 // b22200c0 |
| |
| SPM R1 // 0410 |
| SPM R10 // 04a0 |
| |
| BRC $7, 0(PC) // a7740000 |
| BNE 0(PC) // a7740000 |
| BEQ 0(PC) // a7840000 |
| BLT 0(PC) // a7440000 |
| BLE 0(PC) // a7c40000 |
| BGT 0(PC) // a7240000 |
| BGE 0(PC) // a7a40000 |
| BLTU 0(PC) // a7540000 |
| BLEU 0(PC) // a7d40000 |
| |
| BRCT R1, 0(PC) // a7160000 |
| BRCTG R2, 0(PC) // a7270000 |
| |
| 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 |
| |
| CRJ $15, R1, R2, 0(PC) // ec120000f076 |
| CGRJ $12, R3, R4, 0(PC) // ec340000c064 |
| CLRJ $3, R5, R6, 0(PC) // ec5600003077 |
| CLGRJ $0, R7, R8, 0(PC) // ec7800000065 |
| |
| CIJ $4, R9, $127, 0(PC) // ec9400007f7e |
| CGIJ $8, R11, $-128, 0(PC) // ecb80000807c |
| CLIJ $1, R1, $255, 0(PC) // ec110000ff7f |
| CLGIJ $2, R3, $0, 0(PC) // ec320000007d |
| |
| LGDR F1, R12 // b3cd00c1 |
| LDGR R2, F15 // b3c100f2 |
| |
| 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 // 78021000 |
| FMOVS n-8(SP), F15 // 78f0f010 |
| FMOVD -9999999(R8)(R9*1), F8 // c0a1ff67698141aa9000688a8000 |
| FMOVD F4, F5 // 2854 |
| |
| // RX (12-bit displacement) and RXY (20-bit displacement) instruction encoding (e.g. LD vs LDY) |
| FMOVD (R1), F0 // 68001000 |
| FMOVD 4095(R2), F13 // 68d02fff |
| FMOVD 4096(R2), F15 // edf020000165 |
| FMOVS 4095(R2)(R3), F13 // 78d32fff |
| FMOVS 4096(R2)(R4), F15 // edf420000164 |
| FMOVD F0, 4095(R1) // 60001fff |
| FMOVD F0, 4096(R1) // ed0010000167 |
| FMOVS F13, 4095(R2)(R3) // 70d32fff |
| FMOVS F13, 4096(R2)(R3) // edd320000166 |
| |
| 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 |
| FIEBR $0, F0, F1 // b3570010 |
| FIDBR $7, F2, F3 // b35f7032 |
| FMADD F1, F1, F1 // b31e1011 |
| FMADDS F1, F2, F3 // b30e3012 |
| FMSUB F4, F5, F5 // b31f5045 |
| FMSUBS F6, F6, F7 // b30f7066 |
| LPDFR F1, F2 // b3700021 |
| LNDFR F3, F4 // b3710043 |
| CPSDR F5, F6, F7 // b3725076 |
| LTEBR F1, F2 // b3020021 |
| LTDBR F3, F4 // b3120043 |
| TCEB F5, $8 // ed5000080010 |
| TCDB F15, $4095 // edf00fff0011 |
| |
| UNDEF // 00000000 |
| NOPH // 0700 |
| |
| // vector add and sub instructions |
| VAB V3, V4, V4 // e743400000f3 |
| VAH V3, V4, V4 // e743400010f3 |
| VAF V3, V4, V4 // e743400020f3 |
| VAG V3, V4, V4 // e743400030f3 |
| VAQ V3, V4, V4 // e743400040f3 |
| VAB V1, V2 // e721200000f3 |
| VAH V1, V2 // e721200010f3 |
| VAF V1, V2 // e721200020f3 |
| VAG V1, V2 // e721200030f3 |
| VAQ V1, V2 // e721200040f3 |
| VSB V3, V4, V4 // e744300000f7 |
| VSH V3, V4, V4 // e744300010f7 |
| VSF V3, V4, V4 // e744300020f7 |
| VSG V3, V4, V4 // e744300030f7 |
| VSQ V3, V4, V4 // e744300040f7 |
| VSB V1, V2 // e722100000f7 |
| VSH V1, V2 // e722100010f7 |
| VSF V1, V2 // e722100020f7 |
| VSG V1, V2 // e722100030f7 |
| VSQ V1, V2 // e722100040f7 |
| |
| VCEQB V1, V3, V3 // e731300000f8 |
| 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 |
| VREPIH $-1, V16 // e700ffff1845 |
| VREPIF $-32768, V0 // e70080002045 |
| VREPIG $32767, V31 // e7f07fff3845 |
| 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 |
| VERLLVF V2, V30, V27 // e7be20002c73 |
| VSCBIB V0, V23, V24 // e78700000cf5 |
| VN V2, V1, V0 // e70210000068 |
| VNC V2, V1, V0 // e70210000069 |
| VO V2, V1, V0 // e7021000006a |
| VX V2, V1, V0 // e7021000006d |
| VN V16, V1 // e71010000468 |
| VNC V16, V1 // e71010000469 |
| VO V16, V1 // e7101000046a |
| VX V16, V1 // e7101000046d |
| VNOT V16, V1 // e7101000046b |
| VCLZF V16, V17 // e71000002c53 |
| VLVGP R3, R4, V8 // e78340000062 |
| VGEG $1, 8(R15)(V30*1), V31 // e7fef0081c12 |
| VSCEG $1, V31, 16(R15)(V30*1) // e7fef0101c1a |
| VGEF $0, 2048(R15)(V1*1), V2 // e721f8000013 |
| VSCEF $0, V2, 4095(R15)(V1*1) // e721ffff001b |
| VLL R0, (R15), V1 // e710f0000037 |
| VSTL R0, V16, (R15) // e700f000083f |
| VGMH $8, $16, V12 // e7c008101046 |
| VLEIB $15, $255, V0 // e70000fff040 |
| VLEIH $7, $-32768, V15 // e7f080007041 |
| VLEIF $2, $-43, V16 // e700ffd52843 |
| VLEIG $1, $32767, V31 // e7f07fff1842 |
| VSLDB $3, V1, V16, V18 // e72100030a77 |
| VERIMB $2, V31, V1, V2 // e72f10020472 |
| VSEL V1, V2, V3, V4 // e7412000308d |
| VGFMAH V21, V31, V24, V0 // e705f10087bc |
| VFMADB V16, V8, V9, V10 // e7a08300948f |
| WFMADB V17, V18, V19, V20 // e74123083f8f |
| VFMSDB V2, V25, V24, V31 // e7f293008b8e |
| WFMSDB V31, V2, V3, V4 // e74f2308348e |
| VPERM V31, V0, V2, V3 // e73f0000248c |
| VPDI $1, V2, V31, V1 // e712f0001284 |
| VLEG $1, (R3), V1 // e71030001002 |
| VLEF $2, (R0), V31 // e7f000002803 |
| VLEH $3, (R12), V16 // e700c0003801 |
| VLEB $15, 4095(R9), V15 // e7f09ffff000 |
| VSTEG $1, V30, (R1)(R2*1) // e7e21000180a |
| VSTEF $3, V2, (R9) // e7209000300b |
| VSTEH $7, V31, (R2) // e7f020007809 |
| VSTEB $15, V29, 4094(R12) // e7d0cffef808 |
| VMSLG V21, V22, V23, V24 // e78563007fb8 |
| VMSLEG V21, V22, V23, V24 // e78563807fb8 |
| VMSLOG V21, V22, V23, V24 // e78563407fb8 |
| VMSLEOG V21, V22, V23, V24 // e78563c07fb8 |
| VSUMGH V1, V2, V3 // e73120001065 |
| VSUMGF V16, V17, V18 // e72010002e65 |
| VSUMQF V4, V5, V6 // e76450002067 |
| VSUMQG V19, V20, V21 // e75340003e67 |
| VSUMB V7, V8, V9 // e79780000064 |
| VSUMH V22, V23, V24 // e78670001e64 |
| |
| RET |
| RET foo(SB) |
| |
| TEXT main·init(SB),DUPOK|NOSPLIT,$0 // TEXT main.init(SB), DUPOK|NOSPLIT, $0 |
| RET |
| |
| TEXT main·main(SB),DUPOK|NOSPLIT,$0 // TEXT main.main(SB), DUPOK|NOSPLIT, $0 |
| BL main·foo(SB) // CALL main.foo(SB) |
| RET |