Commit graph

980 commits

Author SHA1 Message Date
Daniel Sommermann
554fa533ab Stop emitting duplicate symbols for armv7-linux-androideabi
The change in 186517b3266a7bb2b2310927f7342ea7f41790c3 was intended to
affect only `arm-linux-androideabi` but also affected
`armv7-linux-androideabi` which is not a pre-ARMv6 architecture.
Fixes #449
2022-01-27 12:02:40 -08:00
Amanieu d'Antras
df4d9cd6cc Bump to 0.1.66 2021-12-13 02:25:49 +00:00
Amanieu d'Antras
1ade871eca
Merge pull request #448 from ayrtonm/truncdfsf2 2021-12-13 02:25:11 +00:00
Ayrton
9124cdc7ec Remove truncdfsf2.c from sources in build.rs and add test for __truncdfsf2vfp
Also fixed the calling convention for truncdfsf2 on ARM
2021-12-12 21:12:42 -05:00
Ayrton
03b4f62337 Add __truncdfsf2vfp for ARM 2021-12-12 15:36:09 -05:00
Ayrton
39cd6082e4 Add attribute for ARM alias 2021-12-12 15:19:05 -05:00
Ayrton
9e65060184 Add __truncdfsf2 intrinsic
This adds the truncdfsf2 intrinsic and a corresponding fuzz test case. The
implementation of trunc is generic to make it easy to add truncdfhs2 and
truncsfhf2 if rust ever gets `f16` support.
2021-12-12 15:01:34 -05:00
Amanieu d'Antras
c7dc3215a1 Bump to 0.1.56 2021-12-10 00:11:25 +00:00
Amanieu d'Antras
680a4a1d80
Merge pull request #446 from Amanieu/asm 2021-12-10 00:11:03 +00:00
Amanieu d'Antras
0928b32141 Fix clippy lints 2021-12-10 00:04:25 +00:00
Amanieu d'Antras
4abfecabef Import the asm! macro from core::arch
It is going to be removed from the prelude due to the decision in
https://github.com/rust-lang/rust/issues/87228
2021-12-09 23:57:26 +00:00
Amanieu d'Antras
c17d0c2780 Bump to 0.1.55 2021-11-28 15:30:04 +00:00
Amanieu d'Antras
3c104c961f
Merge pull request #444 from Amanieu/lse_o 2021-11-28 15:29:24 +00:00
Amanieu d'Antras
c750277268 Ensure AArch64 LSE object files have distinct names in an archive
This is needed by libtool which rejects archives that contain object
files with the same name multiple times.

Fixes #443
2021-11-28 13:02:09 +00:00
Amanieu d'Antras
a01a61bd36 Bump to 0.1.54 2021-11-28 11:19:54 +00:00
Amanieu d'Antras
4d80205405
Merge pull request #442 from cr1901/no-atomic 2021-11-28 11:19:31 +00:00
William D. Jones
f275e26e3d Use fully-qualified syntax for abs_diff to avoid warning, which can trigger a compiler error. 2021-11-27 19:38:43 -05:00
William D. Jones
e6d7983889 Do not use atomic reads on platforms without atomic support in LLVM. 2021-11-27 17:47:46 -05:00
Amanieu d'Antras
54e028e964 Bump to 0.1.53 2021-11-25 00:01:25 +00:00
Amanieu d'Antras
cf10da1f04
Merge pull request #440 from alessandrod/bpf-mem-unaligned 2021-11-25 00:00:01 +00:00
Alessandro Decina
d96a0a0877 Turn on the mem-unaligned feature for bpf targets
Fixes the following LLVM segfault:

 Error: e: 05:02:06 [ERROR] fatal error: "Cannot select: 0x55e970a357d0: i64,ch = AtomicLoad<(load unordered (s64) from %ir.45)> 0x55e970410be8, 0x55e970a358a0\n  0x55e970a358a0: i64,ch = CopyFromReg 0x55e970410be8, Register:i64 %19\n    0x55e970a35490: i64 = Register %19\nIn function: memcpy"
          PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace.
          Stack dump:
          0.	Running pass 'Function Pass Manager' on module 'unroll-loop'.
          1.	Running pass 'BPF DAG->DAG Pattern Instruction Selection' on function '@memcpy'
2021-11-21 07:07:14 +00:00
Amanieu d'Antras
8e7401a151 Bump to 0.1.52 2021-11-01 23:02:56 +00:00
Amanieu d'Antras
76c13b8dc1
Merge pull request #439 from alexcrichton/wasm64-updates 2021-10-30 22:13:57 +01:00
Alex Crichton
9a01750b1b Use more concise directives 2021-10-28 16:32:30 -07:00
Alex Crichton
b7fb6c594a Adjust some build directives for wasm64
This is still an experimental target but this should get the wasm64
target to behave more like wasm32.
2021-10-28 10:29:37 -07:00
Amanieu d'Antras
2d12d7150a Bump to 0.1.51 2021-10-17 01:41:40 +02:00
Amanieu d'Antras
945f822874
Merge pull request #436 from MabezDev/feature/xtensa-soft-math 2021-10-17 00:40:57 +01:00
Scott Mabin
3b4d10f6bc Add xtensa to list of soft math targets. 2021-10-16 15:27:40 +01:00
Amanieu d'Antras
a1ab3f6461
Merge pull request #435 from gshep/issue_434 2021-10-15 20:52:36 +01:00
Georgy Shepelev
29dd109959 expose some math to UEFI envs 2021-10-15 23:18:56 +04:00
Amanieu d'Antras
7af3f4e966
Merge pull request #437 from Amanieu/disable_ppc_test 2021-10-15 18:12:08 +01:00
Amanieu d'Antras
a71b0e4493 Disable broken powerpc64 test due to https://github.com/rust-lang/rust/issues/88520 2021-10-15 02:11:12 +02:00
Amanieu d'Antras
abf75cc713 Bump to 0.1.50 2021-09-01 00:22:59 +02:00
Amanieu d'Antras
e63fc50bcc
Merge pull request #405 from nbdd0121/master 2021-08-31 23:21:36 +01:00
Gary Guo
1f0cbb2945 Use atomic_load_unordered for first word load in misaligned case 2021-08-31 00:22:43 +01:00
Gary Guo
709bd6e11c Add different misaligned path for archs with unaligned support 2021-08-21 03:48:56 +01:00
Gary Guo
8535675a17 Add misaligned benchmarks 2021-08-21 03:03:06 +01:00
Gary Guo
45715eb7f7 Implement word-sized copy 2021-08-21 03:03:06 +01:00
Gary Guo
d282412f70 Add test cases for memcpy, memmove and memset for different alignment 2021-08-21 03:01:39 +01:00
Amanieu d'Antras
4ffaedd2e3 Bump to 0.1.49 2021-07-30 18:49:46 +02:00
Amanieu d'Antras
2ea0e000f5
Merge pull request #432 from Amanieu/shift-overflow
Don't panic if the shift intrinsics receive out-of-range shifts
2021-07-30 18:49:17 +02:00
Amanieu d'Antras
502370f277 Don't panic if the shift intrinsics receive out-of-range shifts
LLVM sometimes emits calls with out-of-range shifts but then discards
the results. We should avoid panics in these cases.
2021-07-30 00:25:36 +02:00
Amanieu d'Antras
2e7151205e Bump to 0.1.48 2021-07-28 22:30:59 +02:00
Amanieu d'Antras
81f6f471fc
Merge pull request #431 from wesleywiser/fix_lse_on_aarch64_msvc
Don't try to build out-of-line aarch64 atomics with the msvc toolchain
2021-07-28 22:28:07 +02:00
Wesley Wiser
ba100707db Don't try to build out-of-line aarch64 atomics with the msvc toolchain
The msvc toolchain does not support building `.s` files, clang only
supports generating out-of-line atomics on Linux and gcc does not
support aarch64 for Windows at all. Therefore, we don't need to compile
`lse.s` on `aarch64-pc-windows-msvc`.
2021-07-28 13:57:03 -04:00
Amanieu d'Antras
b1440f2b0a Bump to 0.1.47 2021-07-14 21:40:46 +02:00
Amanieu d'Antras
6776c56023
Merge pull request #429 from richkadel/linux-tf3
Support `long double` intrinsics in any aarch64 linux
2021-07-14 20:39:26 +01:00
Rich Kadel
6ff8257858 Support long double intrinsics in any aarch64 linux
Expands the support added in #377 from just musl to any linux.

Also checks for and avoids adding duplicate sources.

Fixes #428
2021-07-14 11:17:27 -07:00
Amanieu d'Antras
8541da64fa
Merge pull request #427 from jethrogb/update-libm 2021-06-25 14:52:37 +01:00
Jethro Beekman
0534e104f3 Update libm 2021-06-25 11:52:14 +02:00