| ... | ... | @@ -1517,7 +1517,7 @@ const S390x = extern struct { |
| 1517 | 1517 | |
| 1518 | 1518 | /// This is an `extern struct` so that inline assembly in `current` can use field offsets. |
| 1519 | 1519 | const Sparc = extern struct { |
| 1520 | | g: [8]Gpr, |
| 1520 | g: [8]Gpr align(8), // Align to make `std` safe on 32-bit. |
| 1521 | 1521 | o: [8]Gpr, |
| 1522 | 1522 | l: [8]Gpr, |
| 1523 | 1523 | i: [8]Gpr, |
| ... | ... | @@ -1530,63 +1530,63 @@ const Sparc = extern struct { |
| 1530 | 1530 | |
| 1531 | 1531 | var ctx: Sparc = undefined; |
| 1532 | 1532 | asm volatile (if (Gpr == u64) |
| 1533 | | \\ stx %g0, [%l0 + 0] |
| 1534 | | \\ stx %g1, [%l0 + 8] |
| 1535 | | \\ stx %g2, [%l0 + 16] |
| 1536 | | \\ stx %g3, [%l0 + 24] |
| 1537 | | \\ stx %g4, [%l0 + 32] |
| 1538 | | \\ stx %g5, [%l0 + 40] |
| 1539 | | \\ stx %g6, [%l0 + 48] |
| 1540 | | \\ stx %g7, [%l0 + 56] |
| 1541 | | \\ stx %o0, [%l0 + 64] |
| 1542 | | \\ stx %o1, [%l0 + 72] |
| 1543 | | \\ stx %o2, [%l0 + 80] |
| 1544 | | \\ stx %o3, [%l0 + 88] |
| 1545 | | \\ stx %o4, [%l0 + 96] |
| 1546 | | \\ stx %o5, [%l0 + 104] |
| 1547 | | \\ stx %o6, [%l0 + 112] |
| 1548 | | \\ stx %o7, [%l0 + 120] |
| 1549 | | \\ stx %l0, [%l0 + 128] |
| 1550 | | \\ stx %l1, [%l0 + 136] |
| 1551 | | \\ stx %l2, [%l0 + 144] |
| 1552 | | \\ stx %l3, [%l0 + 152] |
| 1553 | | \\ stx %l4, [%l0 + 160] |
| 1554 | | \\ stx %l5, [%l0 + 168] |
| 1555 | | \\ stx %l6, [%l0 + 176] |
| 1556 | | \\ stx %l7, [%l0 + 184] |
| 1557 | | \\ stx %i0, [%l0 + 192] |
| 1558 | | \\ stx %i1, [%l0 + 200] |
| 1559 | | \\ stx %i2, [%l0 + 208] |
| 1560 | | \\ stx %i3, [%l0 + 216] |
| 1561 | | \\ stx %i4, [%l0 + 224] |
| 1562 | | \\ stx %i5, [%l0 + 232] |
| 1563 | | \\ stx %i6, [%l0 + 240] |
| 1564 | | \\ stx %i7, [%l0 + 248] |
| 1533 | \\ stx %%g0, [%%l0 + 0] |
| 1534 | \\ stx %%g1, [%%l0 + 8] |
| 1535 | \\ stx %%g2, [%%l0 + 16] |
| 1536 | \\ stx %%g3, [%%l0 + 24] |
| 1537 | \\ stx %%g4, [%%l0 + 32] |
| 1538 | \\ stx %%g5, [%%l0 + 40] |
| 1539 | \\ stx %%g6, [%%l0 + 48] |
| 1540 | \\ stx %%g7, [%%l0 + 56] |
| 1541 | \\ stx %%o0, [%%l0 + 64] |
| 1542 | \\ stx %%o1, [%%l0 + 72] |
| 1543 | \\ stx %%o2, [%%l0 + 80] |
| 1544 | \\ stx %%o3, [%%l0 + 88] |
| 1545 | \\ stx %%o4, [%%l0 + 96] |
| 1546 | \\ stx %%o5, [%%l0 + 104] |
| 1547 | \\ stx %%o6, [%%l0 + 112] |
| 1548 | \\ stx %%o7, [%%l0 + 120] |
| 1549 | \\ stx %%l0, [%%l0 + 128] |
| 1550 | \\ stx %%l1, [%%l0 + 136] |
| 1551 | \\ stx %%l2, [%%l0 + 144] |
| 1552 | \\ stx %%l3, [%%l0 + 152] |
| 1553 | \\ stx %%l4, [%%l0 + 160] |
| 1554 | \\ stx %%l5, [%%l0 + 168] |
| 1555 | \\ stx %%l6, [%%l0 + 176] |
| 1556 | \\ stx %%l7, [%%l0 + 184] |
| 1557 | \\ stx %%i0, [%%l0 + 192] |
| 1558 | \\ stx %%i1, [%%l0 + 200] |
| 1559 | \\ stx %%i2, [%%l0 + 208] |
| 1560 | \\ stx %%i3, [%%l0 + 216] |
| 1561 | \\ stx %%i4, [%%l0 + 224] |
| 1562 | \\ stx %%i5, [%%l0 + 232] |
| 1563 | \\ stx %%i6, [%%l0 + 240] |
| 1564 | \\ stx %%i7, [%%l0 + 248] |
| 1565 | 1565 | \\ call 1f |
| 1566 | 1566 | \\ nop |
| 1567 | 1567 | \\1: |
| 1568 | | \\ stx %o7, [%l0 + 256] |
| 1568 | \\ stx %%o7, [%%l0 + 256] |
| 1569 | 1569 | else |
| 1570 | | \\ std %g0, [%l0 + 0] |
| 1571 | | \\ std %g2, [%l0 + 8] |
| 1572 | | \\ std %g4, [%l0 + 16] |
| 1573 | | \\ std %g6, [%l0 + 24] |
| 1574 | | \\ std %o0, [%l0 + 32] |
| 1575 | | \\ std %o2, [%l0 + 40] |
| 1576 | | \\ std %o4, [%l0 + 48] |
| 1577 | | \\ std %o6, [%l0 + 56] |
| 1578 | | \\ std %l0, [%l0 + 64] |
| 1579 | | \\ std %l2, [%l0 + 72] |
| 1580 | | \\ std %l4, [%l0 + 80] |
| 1581 | | \\ std %l6, [%l0 + 88] |
| 1582 | | \\ std %i0, [%l0 + 96] |
| 1583 | | \\ std %i2, [%l0 + 104] |
| 1584 | | \\ std %i4, [%l0 + 112] |
| 1585 | | \\ std %i6, [%l0 + 120] |
| 1570 | \\ std %%g0, [%%l0 + 0] |
| 1571 | \\ std %%g2, [%%l0 + 8] |
| 1572 | \\ std %%g4, [%%l0 + 16] |
| 1573 | \\ std %%g6, [%%l0 + 24] |
| 1574 | \\ std %%o0, [%%l0 + 32] |
| 1575 | \\ std %%o2, [%%l0 + 40] |
| 1576 | \\ std %%o4, [%%l0 + 48] |
| 1577 | \\ std %%o6, [%%l0 + 56] |
| 1578 | \\ std %%l0, [%%l0 + 64] |
| 1579 | \\ std %%l2, [%%l0 + 72] |
| 1580 | \\ std %%l4, [%%l0 + 80] |
| 1581 | \\ std %%l6, [%%l0 + 88] |
| 1582 | \\ std %%i0, [%%l0 + 96] |
| 1583 | \\ std %%i2, [%%l0 + 104] |
| 1584 | \\ std %%i4, [%%l0 + 112] |
| 1585 | \\ std %%i6, [%%l0 + 120] |
| 1586 | 1586 | \\ call 1f |
| 1587 | 1587 | \\ nop |
| 1588 | 1588 | \\1: |
| 1589 | | \\ st %o7, [%l0 + 128] |
| 1589 | \\ st %%o7, [%%l0 + 128] |
| 1590 | 1590 | : |
| 1591 | 1591 | : [ctx] "{l0}" (&ctx), |
| 1592 | 1592 | : .{ .o7 = true, .memory = true }); |