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 + -
显示快捷键?