File tree 3 files changed +10
-3
lines changed
docker/aarch64-unknown-linux-gnu
crates/intrinsic-test/src
3 files changed +10
-3
lines changed Original file line number Diff line number Diff line change @@ -10,7 +10,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
10
10
qemu-user \
11
11
make \
12
12
file \
13
- clang-9 \
13
+ clang-12 \
14
14
lld
15
15
16
16
ENV CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=aarch64-linux-gnu-gcc \
Original file line number Diff line number Diff line change 115
115
116
116
if [ " ${TARGET} " = " aarch64-unknown-linux-gnu" ]; then
117
117
export CPPFLAGS=" -fuse-ld=lld -I/usr/aarch64-linux-gnu/include/ -I/usr/aarch64-linux-gnu/include/c++/9/aarch64-linux-gnu/"
118
- cargo run ${INTRINSIC_TEST} --release --bin intrinsic-test -- crates/intrinsic-test/neon-intrinsics.csv --runner " ${CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUNNER} " --cppcompiler " clang++-9 "
118
+ cargo run ${INTRINSIC_TEST} --release --bin intrinsic-test -- crates/intrinsic-test/neon-intrinsics.csv --runner " ${CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUNNER} " --cppcompiler " clang++-12 "
119
119
fi
120
120
121
121
if [ " $NORUN " != " 1" ] && [ " $NOSTD " != 1 ]; then
Original file line number Diff line number Diff line change @@ -70,7 +70,7 @@ fn generate_rust_program(intrinsic: &Intrinsic) -> String {
70
70
#![feature(link_llvm_intrinsics)]
71
71
#![feature(stdsimd)]
72
72
#![allow(overflowing_literals)]
73
- use core ::arch::aarch64::*;
73
+ use core_arch ::arch::aarch64::*;
74
74
75
75
fn main() {{
76
76
{passes}
@@ -159,6 +159,8 @@ version = "{version}"
159
159
authors = ["{authors}"]
160
160
edition = "2018"
161
161
[workspace]
162
+ [dependencies]
163
+ core_arch = {{ path = "../crates/core_arch" }}
162
164
{binaries}"# ,
163
165
version = env!( "CARGO_PKG_VERSION" ) ,
164
166
authors = env!( "CARGO_PKG_AUTHORS" ) ,
@@ -288,6 +290,11 @@ fn main() {
288
290
. is_none ( )
289
291
} )
290
292
. filter ( |i| i. arguments . iter ( ) . find ( |a| a. name == "n" ) . is_none ( ) )
293
+ // clang-12 fails to compile this intrinsic due to an error.
294
+ // fatal error: error in backend: Cannot select: 0x2b99c30: i64 = AArch64ISD::VSHL Constant:i64<1>, Constant:i32<1>
295
+ // 0x2b9a520: i64 = Constant<1>
296
+ // 0x2b9a248: i32 = Constant<1>
297
+ . filter ( |i| ![ "vshld_s64" , "vshld_u64" ] . contains ( & i. name . as_str ( ) ) )
291
298
. collect :: < Vec < _ > > ( ) ;
292
299
intrinsics. dedup ( ) ;
293
300
You can’t perform that action at this time.
0 commit comments