mpv_sparc32.s
来自「支持SSL v2/v3, TLS, PKCS #5, PKCS #7, PKCS」· S 代码 · 共 1,817 行 · 第 1/5 页
S
1,817 行
/* 0x11a8 */ fmuld %f28,%f18,%f8/* 0x11ac */ fdtox %f26,%f26/* 0x11b0 */ fdtox %f24,%f24/* 0x11b4 */ std %f26,[%g5-32]/* 0x11b8 */ std %f24,[%g3-32]/* 0x11bc */ fdtox %f8,%f8/* 0x11c0 */ fsubd %f20,%f6,%f6/* 0x11c4 */ std %f8,[%g2-32]/* 0x11c8 */ add %o1,8,%o1/* 0x11cc */ fxnor %f30,%f22,%f8/* 0x11d0 */ std %f0,[%o7-32]/* 0x11d4 */ ble,pt %icc,.L900000181/* 0x11d8 */ fmuld %f2,%f16,%f0 .L900000184:/* 0x11dc 246 */ fitod %f12,%f28/* 0x11e0 */ fmuld %f6,%f18,%f24/* 0x11e4 */ add %g5,128,%g5/* 0x11e8 */ fitod %f10,%f12/* 0x11ec */ fmuld %f6,%f16,%f26/* 0x11f0 */ add %g3,128,%g3/* 0x11f4 */ fsubd %f20,%f4,%f4/* 0x11f8 */ fmuld %f2,%f18,%f22/* 0x11fc */ add %g2,128,%g2/* 0x1200 */ fdtox %f24,%f6/* 0x1204 */ std %f6,[%g5-128]/* 0x1208 */ add %o7,128,%o7/* 0x120c */ fsubd %f20,%f28,%f2/* 0x1210 */ cmp %i0,%o2/* 0x1214 */ fitod %f11,%f6/* 0x1218 */ fmuld %f4,%f18,%f24/* 0x121c */ fdtox %f26,%f10/* 0x1220 */ std %f10,[%g3-128]/* 0x1224 */ fdtox %f22,%f10/* 0x1228 */ std %f10,[%g2-128]/* 0x122c */ fmuld %f2,%f18,%f26/* 0x1230 */ fsubd %f20,%f12,%f10/* 0x1234 */ fmuld %f2,%f16,%f2/* 0x1238 */ fsubd %f20,%f6,%f22/* 0x123c */ fmuld %f4,%f16,%f12/* 0x1240 */ fdtox %f0,%f0/* 0x1244 */ std %f0,[%o7-128]/* 0x1248 */ fitod %f8,%f4/* 0x124c */ fmuld %f10,%f18,%f6/* 0x1250 */ fdtox %f26,%f0/* 0x1254 */ std %f0,[%g5-96]/* 0x1258 */ fmuld %f10,%f16,%f10/* 0x125c */ fdtox %f2,%f2/* 0x1260 */ std %f2,[%g3-96]/* 0x1264 */ fitod %f9,%f0/* 0x1268 */ fmuld %f22,%f18,%f2/* 0x126c */ fdtox %f24,%f8/* 0x1270 */ std %f8,[%g2-96]/* 0x1274 */ fsubd %f20,%f4,%f4/* 0x1278 */ fmuld %f22,%f16,%f8/* 0x127c */ fdtox %f12,%f12/* 0x1280 */ std %f12,[%o7-96]/* 0x1284 */ fsubd %f20,%f0,%f0/* 0x1288 */ fdtox %f6,%f6/* 0x128c */ std %f6,[%g5-64]/* 0x1290 */ fdtox %f10,%f10/* 0x1294 */ std %f10,[%g3-64]/* 0x1298 */ fmuld %f4,%f18,%f6/* 0x129c */ fdtox %f2,%f2/* 0x12a0 */ std %f2,[%g2-64]/* 0x12a4 */ fmuld %f4,%f16,%f4/* 0x12a8 */ fmuld %f0,%f18,%f2/* 0x12ac */ fdtox %f8,%f8/* 0x12b0 */ std %f8,[%o7-64]/* 0x12b4 */ fdtox %f6,%f6/* 0x12b8 */ std %f6,[%g5-32]/* 0x12bc */ fmuld %f0,%f16,%f0/* 0x12c0 */ fdtox %f4,%f4/* 0x12c4 */ std %f4,[%g3-32]/* 0x12c8 */ fdtox %f2,%f2/* 0x12cc */ std %f2,[%g2-32]/* 0x12d0 */ fdtox %f0,%f0/* 0x12d4 */ bg,pn %icc,.L77000071/* 0x12d8 */ std %f0,[%o7-32] .L77000110:/* 0x12dc */ ldd [%o1],%f0 .L900000195:/* 0x12e0 */ fxnor %f30,%f0,%f0/* 0x12e4 246 */ add %i0,1,%i0/* 0x12e8 */ add %o1,8,%o1/* 0x12ec */ cmp %i0,%o2/* 0x12f0 */ fitod %f0,%f2/* 0x12f4 */ fitod %f1,%f0/* 0x12f8 */ fsubd %f20,%f2,%f2/* 0x12fc */ fsubd %f20,%f0,%f0/* 0x1300 */ fmuld %f2,%f18,%f6/* 0x1304 */ fmuld %f2,%f16,%f4/* 0x1308 */ fmuld %f0,%f18,%f2/* 0x130c */ fdtox %f6,%f6/* 0x1310 */ std %f6,[%g5]/* 0x1314 */ fmuld %f0,%f16,%f0/* 0x1318 */ fdtox %f4,%f4/* 0x131c */ std %f4,[%g3]/* 0x1320 */ add %g3,32,%g3/* 0x1324 */ fdtox %f2,%f2/* 0x1328 */ std %f2,[%g2]/* 0x132c */ add %g2,32,%g2/* 0x1330 */ fdtox %f0,%f0/* 0x1334 */ std %f0,[%o7]/* 0x1338 */ add %o7,32,%o7/* 0x133c */ add %g5,32,%g5/* 0x1340 */ ble,a,pt %icc,.L900000195/* 0x1344 */ ldd [%o1],%f0 .L77000071:! 247 ! }! 249 !#pragma pipeloop(0)! 250 ! for (i = 0; i < n; i ++) {/* 0x1348 250 */ cmp %o3,0 .L900000196:/* 0x134c 250 */ ble,a,pt %icc,.L77000089/* 0x1350 */ or %g0,%g4,%i0/* 0x1354 */ sethi %hi(0x1800),%g1/* 0x1358 */ xor %g1,-624,%g1/* 0x135c */ or %g0,%o5,%g5/* 0x1360 */ add %g1,%fp,%g3/* 0x1364 */ sethi %hi(0x1800),%g1/* 0x1368 */ xor %g1,-616,%g1/* 0x136c */ or %g0,%o4,%i0/* 0x1370 */ add %g1,%fp,%o5/* 0x1374 */ or %g0,0,%i1/* 0x1378 */ sub %o3,1,%o7/* 0x137c 246 */ cmp %o3,5/* 0x1380 */ bl,pn %icc,.L77000111/* 0x1384 */ sethi %hi(0x1800),%g1! 251 ! ADD_S64_U32_D(i);/* 0x1388 251 */ ld [%i0],%o2/* 0x138c 246 */ sub %o3,3,%o4/* 0x1390 251 */ xor %g1,-624,%g1/* 0x1394 */ add %g5,4,%g5/* 0x1398 */ add %g1,%fp,%g1/* 0x139c */ or %g0,2,%i1/* 0x13a0 */ ldx [%g1+8],%o1/* 0x13a4 */ ldx [%g1],%o0/* 0x13a8 */ ldx [%g1+16],%o3/* 0x13ac */ sethi %hi(0x1800),%g1/* 0x13b0 */ xor %g1,-592,%g1/* 0x13b4 */ add %o0,%o1,%o0/* 0x13b8 */ ld [%i0+4],%o1/* 0x13bc */ add %g1,%fp,%g3/* 0x13c0 */ sethi %hi(0x1800),%g1/* 0x13c4 */ xor %g1,-600,%g1/* 0x13c8 */ add %o0,%o2,%o0/* 0x13cc */ add %g1,%fp,%g1/* 0x13d0 */ add %i0,8,%i0/* 0x13d4 */ ldx [%g1],%o2/* 0x13d8 */ sethi %hi(0x1800),%g1/* 0x13dc */ st %o0,[%g5-4]/* 0x13e0 */ srax %o0,32,%o0/* 0x13e4 */ xor %g1,-584,%g1/* 0x13e8 */ add %g1,%fp,%o5 .L900000169:/* 0x13ec 251 */ add %o3,%o2,%g4/* 0x13f0 */ ld [%i0],%o3/* 0x13f4 */ add %i1,3,%i1/* 0x13f8 */ ldx [%g3],%o2/* 0x13fc */ sra %o0,0,%g2/* 0x1400 */ add %g4,%o1,%o1/* 0x1404 */ ldx [%o5],%o0/* 0x1408 */ add %o1,%g2,%o1/* 0x140c */ cmp %i1,%o4/* 0x1410 */ st %o1,[%g5]/* 0x1414 */ srax %o1,32,%g4/* 0x1418 */ add %g5,12,%g5/* 0x141c */ add %o2,%o0,%o1/* 0x1420 */ ld [%i0+4],%o2/* 0x1424 */ add %i0,12,%i0/* 0x1428 */ ldx [%g3+16],%o0/* 0x142c */ add %o1,%o3,%o3/* 0x1430 */ ldx [%o5+16],%o1/* 0x1434 */ add %o3,%g4,%o3/* 0x1438 */ add %o5,48,%o5/* 0x143c */ st %o3,[%g5-8]/* 0x1440 */ srax %o3,32,%g2/* 0x1444 */ add %g3,48,%g3/* 0x1448 */ add %o0,%o1,%o0/* 0x144c */ ld [%i0-4],%o1/* 0x1450 */ ldx [%g3-16],%o3/* 0x1454 */ add %o0,%o2,%o0/* 0x1458 */ ldx [%o5-16],%o2/* 0x145c */ add %o0,%g2,%o0/* 0x1460 */ st %o0,[%g5-4]/* 0x1464 */ ble,pt %icc,.L900000169/* 0x1468 */ srax %o0,32,%o0 .L900000172:/* 0x146c 251 */ add %o3,%o2,%o3/* 0x1470 */ add %g5,4,%g5/* 0x1474 */ sra %o0,0,%o2/* 0x1478 */ add %o3,%o1,%o0/* 0x147c */ add %o0,%o2,%o0/* 0x1480 */ st %o0,[%g5-4]/* 0x1484 */ cmp %i1,%o7/* 0x1488 */ srax %o0,32,%g4/* 0x148c */ bg,a,pn %icc,.L77000089/* 0x1490 */ or %g0,%g4,%i0 .L77000111:/* 0x1494 251 */ ldx [%g3],%o0 .L900000194:/* 0x1498 251 */ ldx [%o5],%o3/* 0x149c */ sra %g4,0,%o1/* 0x14a0 */ add %i1,1,%i1/* 0x14a4 */ ld [%i0],%o2/* 0x14a8 */ add %g3,16,%g3/* 0x14ac */ add %o5,16,%o5/* 0x14b0 */ add %o0,%o3,%o0/* 0x14b4 */ add %i0,4,%i0/* 0x14b8 */ add %o0,%o2,%o0/* 0x14bc */ cmp %i1,%o7/* 0x14c0 */ add %o0,%o1,%o0/* 0x14c4 */ st %o0,[%g5]/* 0x14c8 */ add %g5,4,%g5/* 0x14cc */ srax %o0,32,%g4/* 0x14d0 */ ble,a,pt %icc,.L900000194/* 0x14d4 */ ldx [%g3],%o0 .L77000075:/* 0x14d8 */ ret ! Result = %i0/* 0x14dc */ restore %g0,%g4,%o0 .L77000076:! 252 ! }! 254 ! return c;! 255 ! }! 257 ! } else {! 259 ! if (n == 8) {/* 0x14e0 259 */ bne,pn %icc,.L77000078/* 0x14e4 */ sethi %hi(0xffe00000),%g2/* 0x14e8 */ ldd [%o7],%f4! 260 ! DEF_VARS(2*8);! 261 ! t_d64 d0, d1, db;! 262 ! t_u32 uc = 0;! 264 ! da = (t_d64)(a & A_MASK);/* 0x14ec 264 */ ldd [%o1],%f6/* 0x14f0 */ or %g0,%g2,%g3! 265 ! db = (t_d64)(a &~ A_MASK);/* 0x14f4 265 */ and %o0,%g2,%g2/* 0x14f8 */ st %g2,[%sp+456]/* 0x14fc */ fxnor %f30,%f4,%f4/* 0x1500 264 */ andn %o0,%g3,%g2/* 0x1504 */ st %g2,[%sp+460]! 267 ! MUL_U32_S64_E_8(0);/* 0x1508 267 */ ldd [%o1+8],%f12/* 0x150c */ fitod %f4,%f10/* 0x1510 */ ldd [%o7+8],%f14/* 0x1514 */ fitod %f5,%f4/* 0x1518 */ ldd [%o1+16],%f18/* 0x151c 265 */ ld [%sp+456],%f9/* 0x1520 267 */ fsubd %f12,%f10,%f10/* 0x1524 264 */ ld [%sp+460],%f17/* 0x1528 267 */ fsubd %f12,%f4,%f4! 268 ! ADD_S64_U32_E_8(0);/* 0x152c 268 */ sethi %hi(0x80000000),%g3/* 0x1530 */ ldd [%o7+16],%f20/* 0x1534 */ fxnor %f30,%f14,%f14/* 0x1538 */ sllx %g3,32,%g3/* 0x153c */ ldd [%o7+24],%f22/* 0x1540 */ ld [%i1+24],%o3/* 0x1544 267 */ fitod %f14,%f26/* 0x1548 268 */ ld [%i1+28],%o4/* 0x154c 267 */ fitod %f15,%f14/* 0x1550 268 */ stx %o3,[%sp+320]/* 0x1554 */ fxnor %f30,%f20,%f20/* 0x1558 */ stx %o4,[%sp+312]/* 0x155c 267 */ fsubd %f12,%f26,%f26/* 0x1560 268 */ ld [%i1],%g2/* 0x1564 267 */ fsubd %f12,%f14,%f14/* 0x1568 268 */ ld [%i1+4],%g4/* 0x156c */ ld [%i1+8],%g5/* 0x1570 */ ld [%i1+12],%o0/* 0x1574 265 */ fmovs %f6,%f8/* 0x1578 268 */ ld [%i1+16],%o1/* 0x157c 264 */ fmovs %f6,%f16/* 0x1580 268 */ ld [%i1+20],%o2/* 0x1584 265 */ fsubd %f8,%f6,%f8/* 0x1588 264 */ fsubd %f16,%f6,%f6/* 0x158c 267 */ fmuld %f10,%f8,%f24/* 0x1590 */ fmuld %f4,%f8,%f16/* 0x1594 */ fmuld %f4,%f6,%f4/* 0x1598 */ faddd %f24,%f18,%f24/* 0x159c */ fmuld %f10,%f6,%f10/* 0x15a0 */ faddd %f16,%f18,%f16/* 0x15a4 */ fmuld %f26,%f8,%f28/* 0x15a8 */ fdtox %f4,%f4/* 0x15ac */ std %f4,[%sp+432]/* 0x15b0 */ fmuld %f26,%f6,%f26/* 0x15b4 */ fdtox %f24,%f24/* 0x15b8 */ std %f24,[%sp+440]/* 0x15bc */ fmuld %f14,%f6,%f4/* 0x15c0 */ fdtox %f10,%f10/* 0x15c4 */ std %f10,[%sp+448]/* 0x15c8 */ fmuld %f14,%f8,%f24/* 0x15cc 268 */ ldx [%sp+432],%o4/* 0x15d0 267 */ fdtox %f16,%f14/* 0x15d4 */ std %f14,[%sp+424]/* 0x15d8 */ fitod %f20,%f10/* 0x15dc 268 */ ldx [%sp+440],%o7/* 0x15e0 267 */ faddd %f28,%f18,%f14/* 0x15e4 268 */ ldx [%sp+448],%o5/* 0x15e8 267 */ fitod %f21,%f16/* 0x15ec */ fsubd %f12,%f10,%f10/* 0x15f0 268 */ ldx [%sp+424],%o3/* 0x15f4 267 */ fdtox %f14,%f14/* 0x15f8 268 */ add %o5,%o7,%o5/* 0x15fc 267 */ std %f14,[%sp+408]/* 0x1600 */ fxnor %f30,%f22,%f20/* 0x1604 268 */ add %o5,%g2,%g2/* 0x1608 267 */ faddd %f24,%f18,%f14/* 0x160c 268 */ add %o4,%o3,%o3/* 0x1610 */ sub %g2,%g3,%g2/* 0x1614 */ st %g2,[%i4]/* 0x1618 267 */ fdtox %f26,%f22/* 0x161c 268 */ srlx %g2,32,%o5/* 0x1620 267 */ fmuld %f10,%f8,%f26/* 0x1624 */ std %f22,[%sp+416]/* 0x1628 */ fsubd %f12,%f16,%f16/* 0x162c 268 */ add %o3,%g4,%g4/* 0x1630 267 */ fmuld %f10,%f6,%f10/* 0x1634 */ fdtox %f4,%f4/* 0x1638 */ std %f4,[%sp+400]/* 0x163c 268 */ add %g4,%o5,%g4/* 0x1640 */ ldx [%sp+416],%o7/* 0x1644 267 */ fdtox %f14,%f4/* 0x1648 268 */ sub %g4,%g3,%g4/* 0x164c 267 */ std %f4,[%sp+392]/* 0x1650 */ fitod %f20,%f22/* 0x1654 */ fmuld %f16,%f8,%f14/* 0x1658 268 */ ldx [%sp+408],%o3/* 0x165c 267 */ faddd %f26,%f18,%f4/* 0x1660 */ fmuld %f16,%f6,%f16/* 0x1664 268 */ st %g4,[%i4+4]/* 0x1668 267 */ fitod %f21,%f20/* 0x166c 268 */ ldx [%sp+392],%o5/* 0x1670 267 */ fsubd %f12,%f22,%f22/* 0x1674 268 */ add %o7,%o3,%o3/* 0x1678 */ ldx [%sp+400],%o4/* 0x167c 267 */ fdtox %f4,%f4/* 0x1680 268 */ add %o3,%g5,%o3/* 0x1684 267 */ std %f4,[%sp+376]/* 0x1688 */ fdtox %f10,%f10/* 0x168c 268 */ srlx %g4,32,%g5/* 0x1690 267 */ faddd %f14,%f18,%f4/* 0x1694 */ std %f10,[%sp+384]/* 0x1698 */ fmuld %f22,%f8,%f10/* 0x169c 268 */ ldx [%sp+312],%g4/* 0x16a0 267 */ fsubd %f12,%f20,%f12/* 0x16a4 268 *
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?