Skip to content

Commit b3c93e8

Browse files
committed
s390x linux_raw support
1 parent 613940f commit b3c93e8

File tree

12 files changed

+463
-23
lines changed

12 files changed

+463
-23
lines changed

.github/workflows/main.yml

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -509,7 +509,7 @@ jobs:
509509
runs-on: ${{ matrix.os }}
510510
strategy:
511511
matrix:
512-
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, arm-linux]
512+
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, s390x-linux, arm-linux]
513513
include:
514514
- build: ubuntu
515515
os: ubuntu-latest
@@ -548,6 +548,15 @@ jobs:
548548
qemu: qemu-riscv64
549549
qemu_args: -L /usr/riscv64-linux-gnu
550550
qemu_target: riscv64-linux-user
551+
- build: s390x-linux
552+
os: ubuntu-latest
553+
rust: stable
554+
target: s390x-unknown-linux-gnu
555+
gcc_package: gcc-s390x-linux-gnu
556+
gcc: s390x-linux-gnu-gcc
557+
qemu: qemu-s390x
558+
qemu_args: -L /usr/s390x-linux-gnu
559+
qemu_target: s390x-linux-user
551560
- build: arm-linux
552561
os: ubuntu-latest
553562
rust: stable
@@ -638,7 +647,7 @@ jobs:
638647
runs-on: ${{ matrix.os }}
639648
strategy:
640649
matrix:
641-
build: [powerpc64le-linux]
650+
build: [powerpc64le-linux, s390x-linux]
642651
include:
643652
- build: powerpc64le-linux
644653
os: ubuntu-latest
@@ -649,11 +658,21 @@ jobs:
649658
qemu: qemu-ppc64le
650659
qemu_args: -L /usr/powerpc64le-linux-gnu
651660
qemu_target: ppc64le-linux-user
661+
- build: s390x-linux
662+
os: ubuntu-latest
663+
rust: nightly
664+
target: s390x-unknown-linux-gnu
665+
gcc_package: gcc-s390x-linux-gnu
666+
gcc: s390x-linux-gnu-gcc
667+
qemu: qemu-s390x
668+
qemu_args: -L /usr/s390x-linux-gnu
669+
qemu_target: s390x-linux-user
652670
env:
653671
# -D warnings is commented out in our install-rust action; re-add it here.
654672
RUSTFLAGS: --cfg rustix_use_experimental_asm -D warnings -D elided-lifetimes-in-paths
655673
RUSTDOCFLAGS: --cfg rustix_use_experimental_asm
656674
CARGO_TARGET_POWERPC64LE_UNKNOWN_LINUX_GNU_RUSTFLAGS: --cfg rustix_use_experimental_asm
675+
CARGO_TARGET_S390X_UNKNOWN_LINUX_GNU_RUSTFLAGS: --cfg rustix_use_experimental_asm
657676
QEMU_BUILD_VERSION: 8.1.2
658677
steps:
659678
- uses: actions/checkout@v4

.github/workflows/test-users.yml

Lines changed: 110 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
QEMU_BUILD_VERSION: 7.0.0
1313
strategy:
1414
matrix:
15-
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, mipsel-linux, mips64el-linux, arm-linux, macos-latest]
15+
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, s390x-linux, mipsel-linux, mips64el-linux, arm-linux, macos-latest]
1616
include:
1717
- build: ubuntu
1818
os: ubuntu-latest
@@ -69,6 +69,15 @@ jobs:
6969
qemu: qemu-riscv64
7070
qemu_args: -L /usr/riscv64-linux-gnu
7171
qemu_target: riscv64-linux-user
72+
- build: s390x-linux
73+
os: ubuntu-latest
74+
rust: nightly
75+
target: s390x-unknown-linux-gnu
76+
gcc_package: gcc-s390x-linux-gnu
77+
gcc: s390x-linux-gnu-gcc
78+
qemu: qemu-s390x
79+
qemu_args: -L /usr/s390x-linux-gnu
80+
qemu_target: s390x-linux-user
7281
- build: arm-linux
7382
os: ubuntu-latest
7483
rust: nightly
@@ -177,7 +186,7 @@ jobs:
177186
QEMU_BUILD_VERSION: 7.0.0
178187
strategy:
179188
matrix:
180-
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, mipsel-linux, mips64el-linux, arm-linux, macos-latest]
189+
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, s390x-linux, mipsel-linux, mips64el-linux, arm-linux, macos-latest]
181190
include:
182191
- build: ubuntu
183192
os: ubuntu-latest
@@ -234,6 +243,15 @@ jobs:
234243
qemu: qemu-riscv64
235244
qemu_args: -L /usr/riscv64-linux-gnu
236245
qemu_target: riscv64-linux-user
246+
- build: s390x-linux
247+
os: ubuntu-latest
248+
rust: nightly
249+
target: s390x-unknown-linux-gnu
250+
gcc_package: gcc-s390x-linux-gnu
251+
gcc: s390x-linux-gnu-gcc
252+
qemu: qemu-s390x
253+
qemu_args: -L /usr/s390x-linux-gnu
254+
qemu_target: s390x-linux-user
237255
- build: arm-linux
238256
os: ubuntu-latest
239257
rust: nightly
@@ -324,7 +342,7 @@ jobs:
324342
QEMU_BUILD_VERSION: 7.0.0
325343
strategy:
326344
matrix:
327-
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, mipsel-linux, mips64el-linux, arm-linux, macos-latest]
345+
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, s390x-linux, mipsel-linux, mips64el-linux, arm-linux, macos-latest]
328346
include:
329347
- build: ubuntu
330348
os: ubuntu-latest
@@ -381,6 +399,15 @@ jobs:
381399
qemu: qemu-riscv64
382400
qemu_args: -L /usr/riscv64-linux-gnu
383401
qemu_target: riscv64-linux-user
402+
- build: s390x-linux
403+
os: ubuntu-latest
404+
rust: nightly
405+
target: s390x-unknown-linux-gnu
406+
gcc_package: gcc-s390x-linux-gnu
407+
gcc: s390x-linux-gnu-gcc
408+
qemu: qemu-s390x
409+
qemu_args: -L /usr/s390x-linux-gnu
410+
qemu_target: s390x-linux-user
384411
- build: arm-linux
385412
os: ubuntu-latest
386413
rust: nightly
@@ -503,7 +530,7 @@ jobs:
503530
QEMU_BUILD_VERSION: 7.0.0
504531
strategy:
505532
matrix:
506-
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, mipsel-linux, mips64el-linux, arm-linux]
533+
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, s390x-linux, mipsel-linux, mips64el-linux, arm-linux]
507534
include:
508535
- build: ubuntu
509536
os: ubuntu-latest
@@ -560,6 +587,15 @@ jobs:
560587
qemu: qemu-riscv64
561588
qemu_args: -L /usr/riscv64-linux-gnu
562589
qemu_target: riscv64-linux-user
590+
- build: s390x-linux
591+
os: ubuntu-latest
592+
rust: nightly
593+
target: s390x-unknown-linux-gnu
594+
gcc_package: gcc-s390x-linux-gnu
595+
gcc: s390x-linux-gnu-gcc
596+
qemu: qemu-s390x
597+
qemu_args: -L /usr/s390x-linux-gnu
598+
qemu_target: s390x-linux-user
563599
- build: arm-linux
564600
os: ubuntu-latest
565601
rust: nightly
@@ -647,7 +683,7 @@ jobs:
647683
QEMU_BUILD_VERSION: 7.0.0
648684
strategy:
649685
matrix:
650-
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, mipsel-linux, mips64el-linux, arm-linux]
686+
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, s390x-linux, mipsel-linux, mips64el-linux, arm-linux]
651687
include:
652688
- build: ubuntu
653689
os: ubuntu-latest
@@ -702,6 +738,15 @@ jobs:
702738
qemu: qemu-riscv64
703739
qemu_args: -L /usr/riscv64-linux-gnu
704740
qemu_target: riscv64-linux-user
741+
- build: s390x-linux
742+
os: ubuntu-latest
743+
rust: nightly
744+
target: s390x-unknown-linux-gnu
745+
gcc_package: gcc-s390x-linux-gnu
746+
gcc: s390x-linux-gnu-gcc
747+
qemu: qemu-s390x
748+
qemu_args: -L /usr/s390x-linux-gnu
749+
qemu_target: s390x-linux-user
705750
- build: arm-linux
706751
os: ubuntu-latest
707752
rust: nightly
@@ -789,7 +834,7 @@ jobs:
789834
QEMU_BUILD_VERSION: 7.0.0
790835
strategy:
791836
matrix:
792-
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, mipsel-linux, mips64el-linux, arm-linux]
837+
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, s390x-linux, mipsel-linux, mips64el-linux, arm-linux]
793838
include:
794839
- build: ubuntu
795840
os: ubuntu-latest
@@ -844,6 +889,15 @@ jobs:
844889
qemu: qemu-riscv64
845890
qemu_args: -L /usr/riscv64-linux-gnu
846891
qemu_target: riscv64-linux-user
892+
- build: s390x-linux
893+
os: ubuntu-latest
894+
rust: nightly
895+
target: s390x-unknown-linux-gnu
896+
gcc_package: gcc-s390x-linux-gnu
897+
gcc: s390x-linux-gnu-gcc
898+
qemu: qemu-s390x
899+
qemu_args: -L /usr/s390x-linux-gnu
900+
qemu_target: s390x-linux-user
847901
- build: arm-linux
848902
os: ubuntu-latest
849903
rust: nightly
@@ -931,7 +985,7 @@ jobs:
931985
QEMU_BUILD_VERSION: 7.0.0
932986
strategy:
933987
matrix:
934-
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, mipsel-linux, mips64el-linux, arm-linux]
988+
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, s390x-linux, mipsel-linux, mips64el-linux, arm-linux]
935989
include:
936990
- build: ubuntu
937991
os: ubuntu-latest
@@ -986,6 +1040,15 @@ jobs:
9861040
qemu: qemu-riscv64
9871041
qemu_args: -L /usr/riscv64-linux-gnu
9881042
qemu_target: riscv64-linux-user
1043+
- build: s390x-linux
1044+
os: ubuntu-latest
1045+
rust: nightly
1046+
target: s390x-unknown-linux-gnu
1047+
gcc_package: gcc-s390x-linux-gnu
1048+
gcc: s390x-linux-gnu-gcc
1049+
qemu: qemu-s390x
1050+
qemu_args: -L /usr/s390x-linux-gnu
1051+
qemu_target: s390x-linux-user
9891052
- build: arm-linux
9901053
os: ubuntu-latest
9911054
rust: nightly
@@ -1073,7 +1136,7 @@ jobs:
10731136
QEMU_BUILD_VERSION: 7.0.0
10741137
strategy:
10751138
matrix:
1076-
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, mipsel-linux, mips64el-linux, arm-linux]
1139+
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, s390x-linux, mipsel-linux, mips64el-linux, arm-linux]
10771140
include:
10781141
- build: ubuntu
10791142
os: ubuntu-latest
@@ -1128,6 +1191,15 @@ jobs:
11281191
qemu: qemu-riscv64
11291192
qemu_args: -L /usr/riscv64-linux-gnu
11301193
qemu_target: riscv64-linux-user
1194+
- build: s390x-linux
1195+
os: ubuntu-latest
1196+
rust: nightly
1197+
target: s390x-unknown-linux-gnu
1198+
gcc_package: gcc-s390x-linux-gnu
1199+
gcc: s390x-linux-gnu-gcc
1200+
qemu: qemu-s390x
1201+
qemu_args: -L /usr/s390x-linux-gnu
1202+
qemu_target: s390x-linux-user
11311203
- build: arm-linux
11321204
os: ubuntu-latest
11331205
rust: nightly
@@ -1215,7 +1287,7 @@ jobs:
12151287
QEMU_BUILD_VERSION: 7.0.0
12161288
strategy:
12171289
matrix:
1218-
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, mipsel-linux, mips64el-linux, arm-linux, macos-latest]
1290+
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, s390x-linux, mipsel-linux, mips64el-linux, arm-linux, macos-latest]
12191291
include:
12201292
- build: ubuntu
12211293
os: ubuntu-latest
@@ -1272,6 +1344,15 @@ jobs:
12721344
qemu: qemu-riscv64
12731345
qemu_args: -L /usr/riscv64-linux-gnu
12741346
qemu_target: riscv64-linux-user
1347+
- build: s390x-linux
1348+
os: ubuntu-latest
1349+
rust: nightly
1350+
target: s390x-unknown-linux-gnu
1351+
gcc_package: gcc-s390x-linux-gnu
1352+
gcc: s390x-linux-gnu-gcc
1353+
qemu: qemu-s390x
1354+
qemu_args: -L /usr/s390x-linux-gnu
1355+
qemu_target: s390x-linux-user
12751356
- build: arm-linux
12761357
os: ubuntu-latest
12771358
rust: nightly
@@ -1362,7 +1443,7 @@ jobs:
13621443
QEMU_BUILD_VERSION: 7.0.0
13631444
strategy:
13641445
matrix:
1365-
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, mipsel-linux, mips64el-linux, arm-linux, macos-latest]
1446+
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, s390x-linux, mipsel-linux, mips64el-linux, arm-linux, macos-latest]
13661447
include:
13671448
- build: ubuntu
13681449
os: ubuntu-latest
@@ -1419,6 +1500,15 @@ jobs:
14191500
qemu: qemu-riscv64
14201501
qemu_args: -L /usr/riscv64-linux-gnu
14211502
qemu_target: riscv64-linux-user
1503+
- build: s390x-linux
1504+
os: ubuntu-latest
1505+
rust: nightly
1506+
target: s390x-unknown-linux-gnu
1507+
gcc_package: gcc-s390x-linux-gnu
1508+
gcc: s390x-linux-gnu-gcc
1509+
qemu: qemu-s390x
1510+
qemu_args: -L /usr/s390x-linux-gnu
1511+
qemu_target: s390x-linux-user
14221512
- build: arm-linux
14231513
os: ubuntu-latest
14241514
rust: nightly
@@ -1576,7 +1666,7 @@ jobs:
15761666
strategy:
15771667
matrix:
15781668
# cap-std-ext only builds on Linux at the moment.
1579-
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, mipsel-linux, mips64el-linux, arm-linux]
1669+
build: [ubuntu, i686-linux, aarch64-linux, powerpc64le-linux, riscv64-linux, s390x-linux, mipsel-linux, mips64el-linux, arm-linux]
15801670
include:
15811671
- build: ubuntu
15821672
os: ubuntu-latest
@@ -1633,6 +1723,15 @@ jobs:
16331723
qemu: qemu-riscv64
16341724
qemu_args: -L /usr/riscv64-linux-gnu
16351725
qemu_target: riscv64-linux-user
1726+
- build: s390x-linux
1727+
os: ubuntu-latest
1728+
rust: nightly
1729+
target: s390x-unknown-linux-gnu
1730+
gcc_package: gcc-s390x-linux-gnu
1731+
gcc: s390x-linux-gnu-gcc
1732+
qemu: qemu-s390x
1733+
qemu_args: -L /usr/s390x-linux-gnu
1734+
qemu_target: s390x-linux-user
16361735
- build: arm-linux
16371736
os: ubuntu-latest
16381737
rust: nightly

Cargo.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ once_cell = { version = "1.5.2", optional = true }
3535
# addition to the libc backend. The linux_raw backend is used by default. The
3636
# libc backend can be selected via adding `--cfg=rustix_use_libc` to
3737
# `RUSTFLAGS` or enabling the `use-libc` cargo feature.
38-
[target.'cfg(all(not(rustix_use_libc), not(miri), target_os = "linux", target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "riscv64", all(rustix_use_experimental_asm, target_arch = "powerpc64"), all(rustix_use_experimental_asm, target_arch = "mips"), all(rustix_use_experimental_asm, target_arch = "mips32r6"), all(rustix_use_experimental_asm, target_arch = "mips64"), all(rustix_use_experimental_asm, target_arch = "mips64r6"), target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"))))'.dependencies]
38+
[target.'cfg(all(not(rustix_use_libc), not(miri), target_os = "linux", any(target_endian = "little", target_arch = "s390x"), any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "riscv64", all(rustix_use_experimental_asm, target_arch = "powerpc64"), all(rustix_use_experimental_asm, target_arch = "s390x"), all(rustix_use_experimental_asm, target_arch = "mips"), all(rustix_use_experimental_asm, target_arch = "mips32r6"), all(rustix_use_experimental_asm, target_arch = "mips64"), all(rustix_use_experimental_asm, target_arch = "mips64r6"), target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"))))'.dependencies]
3939
linux-raw-sys = { version = "0.4.14", default-features = false, features = ["general", "errno", "ioctl", "no_std", "elf"] }
4040
libc_errno = { package = "errno", version = "0.3.8", default-features = false, optional = true }
4141
libc = { version = "0.2.156", default-features = false, optional = true }
@@ -44,15 +44,15 @@ libc = { version = "0.2.156", default-features = false, optional = true }
4444
#
4545
# On all other Unix-family platforms, and under Miri, we always use the libc
4646
# backend, so enable its dependencies unconditionally.
47-
[target.'cfg(all(not(windows), any(rustix_use_libc, miri, not(all(target_os = "linux", target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "riscv64", all(rustix_use_experimental_asm, target_arch = "powerpc64"), all(rustix_use_experimental_asm, target_arch = "mips"), all(rustix_use_experimental_asm, target_arch = "mips32r6"), all(rustix_use_experimental_asm, target_arch = "mips64"), all(rustix_use_experimental_asm, target_arch = "mips64r6"), target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64")))))))'.dependencies]
47+
[target.'cfg(all(not(windows), any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_endian = "little", target_arch = "s390x"), any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "riscv64", all(rustix_use_experimental_asm, target_arch = "powerpc64"), all(rustix_use_experimental_asm, target_arch = "s390x"), all(rustix_use_experimental_asm, target_arch = "mips"), all(rustix_use_experimental_asm, target_arch = "mips32r6"), all(rustix_use_experimental_asm, target_arch = "mips64"), all(rustix_use_experimental_asm, target_arch = "mips64r6"), target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64")))))))'.dependencies]
4848
libc_errno = { package = "errno", version = "0.3.8", default-features = false }
4949
libc = { version = "0.2.156", default-features = false }
5050

5151
# Additional dependencies for Linux with the libc backend:
5252
#
5353
# Some syscalls do not have libc wrappers, such as in `io_uring`. For these,
5454
# the libc backend uses the linux-raw-sys ABI and `libc::syscall`.
55-
[target.'cfg(all(any(target_os = "android", target_os = "linux"), any(rustix_use_libc, miri, not(all(target_os = "linux", target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "riscv64", all(rustix_use_experimental_asm, target_arch = "powerpc64"), all(rustix_use_experimental_asm, target_arch = "mips"), all(rustix_use_experimental_asm, target_arch = "mips32r6"), all(rustix_use_experimental_asm, target_arch = "mips64"), all(rustix_use_experimental_asm, target_arch = "mips64r6"), target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64")))))))'.dependencies]
55+
[target.'cfg(all(any(target_os = "android", target_os = "linux"), any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_endian = "little", target_arch = "s390x"), any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "riscv64", all(rustix_use_experimental_asm, target_arch = "powerpc64"), all(rustix_use_experimental_asm, target_arch = "s390x"), all(rustix_use_experimental_asm, target_arch = "mips"), all(rustix_use_experimental_asm, target_arch = "mips32r6"), all(rustix_use_experimental_asm, target_arch = "mips64"), all(rustix_use_experimental_asm, target_arch = "mips64r6"), target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64")))))))'.dependencies]
5656
linux-raw-sys = { version = "0.4.14", default-features = false, features = ["general", "ioctl", "no_std"] }
5757

5858
# For the libc backend on Windows, use the Winsock API in windows-sys.

build.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,8 @@ fn main() {
9595
|| !inline_asm_name_present
9696
|| is_unsupported_abi
9797
|| miri
98-
|| ((arch == "powerpc64" || arch.starts_with("mips")) && !rustix_use_experimental_asm);
98+
|| ((arch == "powerpc64" || arch == "s390x" || arch.starts_with("mips"))
99+
&& !rustix_use_experimental_asm);
99100
if libc {
100101
// Use the libc backend.
101102
use_feature("libc");

src/backend/linux_raw/arch/mod.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
#[cfg_attr(target_arch = "mips64r6", path = "mips64r6.rs")]
3333
#[cfg_attr(target_arch = "powerpc64", path = "powerpc64.rs")]
3434
#[cfg_attr(target_arch = "riscv64", path = "riscv64.rs")]
35+
#[cfg_attr(target_arch = "s390x", path = "s390x.rs")]
3536
#[cfg_attr(target_arch = "x86", path = "x86.rs")]
3637
#[cfg_attr(target_arch = "x86_64", path = "x86_64.rs")]
3738
pub(in crate::backend) mod asm;
@@ -47,6 +48,7 @@ pub(in crate::backend) mod asm;
4748
target_arch = "mips64r6",
4849
target_arch = "powerpc64",
4950
target_arch = "riscv64",
51+
target_arch = "s390x",
5052
target_arch = "x86_64",
5153
))]
5254
pub(in crate::backend) use self::asm as choose;

0 commit comments

Comments
 (0)