Amanieu d'Antras
e8bb3b9fd2
Merge pull request #507 from jeertmans/patch-1
2022-11-28 10:39:26 +00:00
Jérome Eertmans
80828bfb0b
fix(docs): typo in docstrings
...
Hello, I think you misspelled `width` to `with`.
2022-11-28 10:53:42 +01:00
Amanieu d'Antras
ad4ab99a2e
Bump to 0.1.84
2022-11-18 02:58:11 +00:00
Amanieu d'Antras
96bfaa2e09
Merge pull request #506 from nicholasbishop/bishop-fix-stdlib-inc
2022-11-18 02:57:21 +00:00
Nicholas Bishop
ebaca42a41
Use a stub stdlib.h when compiling for UEFI targets
...
int_util.c includes stdlib.h if `_WIN32` is defined. When compiling
the UEFI targets with clang they are treated as Windows targets (e.g. if
the Rust target is x86_64-unknown-uefi, the clang target is
x86_64-unknown-windows-gnu). So stdlib.h gets included, even though we
are compilling with `-ffreestanding` and don't want stdlib.h to be
used. That file may not be present, or an incompatible version might be
installed leading to typedef redefinition errors.
The contents of stdlib.h aren't actually needed for these targets anyway
(due to `__STDC_HOSTED__` being 0), so create a minimal stdlib.h in
`build.rs` when `target_os == uefi` and add it to the include path.
2022-11-17 21:16:01 -05:00
Amanieu d'Antras
371a6856ee
Merge pull request #504 from nicholasbishop/bishop-no-uefi-asm
2022-11-16 19:05:16 +00:00
Nicholas Bishop
98b3454d3d
Skip assembly implementations on the UEFI targets
...
The UEFI targets link with `/SAFESEH`. That requires that objects have a
symbol called [`@feat.00`]. Clang adds that symbol for COFF targets if
the input is a C file, but not if the input is an ASM file. That doesn't
prevent compiler_builtins or rustc from building, but using the
resulting rustc to compile something that references one of the objects
lacking `@feat.00` will result in a linker error.
Fix by removing all the `.S` implementations when `target_os == uefi`.
[`@feat.00`]: https://learn.microsoft.com/en-us/windows/win32/debug/pe-format#the-sxdata-section
2022-11-16 13:16:42 -05:00
Amanieu d'Antras
8fc5ec8b99
Merge pull request #503 from nicholasbishop/bishop-no-no-lang-items
2022-11-12 17:36:13 +00:00
Nicholas Bishop
524ca7ceb6
Remove unused no-lang-items feature
2022-11-12 12:09:06 -05:00
Amanieu d'Antras
f5c3be5629
Merge pull request #501 from Amanieu/release-0.1.83
2022-11-09 17:01:35 +00:00
Amanieu d'Antras
a996f56f5a
Bump to 0.1.83
2022-11-09 04:12:51 +00:00
Amanieu d'Antras
c9b5a71c93
Merge pull request #500 from Jules-Bertholet/rint
2022-11-09 04:11:58 +00:00
Jules Bertholet
af5664be84
Update libm, add rint and rintf
2022-11-08 21:04:02 -05:00
Amanieu d'Antras
cf89479eb7
Merge pull request #499 from pnkfelix/ancient-history
2022-10-25 20:51:05 +01:00
Felix S. Klock II
2faf57c08d
might as well add the link to the LLVM assembly code as well.
2022-10-25 12:32:41 -04:00
Felix S. Klock II
8266a1343b
Document origins of the multiplication method being used here.
2022-10-25 11:25:14 -04:00
Amanieu d'Antras
6f53a4f074
Bump to 0.1.82
2022-10-10 19:04:06 +01:00
Amanieu d'Antras
bcd6313307
Merge pull request #496 from RalfJung/unreachable
2022-10-10 19:03:38 +01:00
Ralf Jung
6267545315
invoke the unreachable intrinsic, not the stable wrapper
2022-10-10 19:34:48 +02:00
Amanieu d'Antras
924453eea6
Merge pull request #498 from Amanieu/fix-clippy
2022-10-10 17:47:02 +01:00
Amanieu d'Antras
2e0590c997
Fix clippy lints
2022-10-10 17:40:16 +01:00
Amanieu d'Antras
1bffeb803e
Merge pull request #343 from silwol/master
2022-10-10 17:35:41 +01:00
Amanieu d'Antras
8bc227d1fe
Bump to 0.1.81
2022-09-29 03:16:50 +01:00
Amanieu d'Antras
986743d392
Merge pull request #495 from Lokathor/more-weak-linkage
2022-09-29 02:59:47 +01:00
Lokathor
f6cd5cf806
Update macros.rs
2022-09-27 13:22:45 -06:00
Amanieu d'Antras
4c8bb40c8d
Bump to 0.1.80
2022-09-20 16:20:52 +08:00
Amanieu d'Antras
f0d43b1d21
Merge pull request #493 from D1plo1d/riscv32_floating_point_math
2022-09-20 16:19:02 +08:00
D1plo1d
1d5b952100
math: Enabled floating point intrinsics for RISCV32 microcontrollers
2022-09-17 11:47:21 -04:00
Amanieu d'Antras
83c4ff5f96
Bump to 0.1.79
2022-08-10 15:28:39 +01:00
Amanieu d'Antras
1eb4cc1977
Update libm submodule
2022-08-10 15:24:16 +01:00
Amanieu d'Antras
6fb26c170e
Merge pull request #488 from Demindiro/remove-x86_64-memcmp-c32
2022-08-10 16:19:06 +02:00
David Hoppenbrouwers
a695cf95cf
Remove c32() from x86_64 memcmp
...
Fixes https://github.com/rust-lang/compiler-builtins/issues/487
2022-08-10 11:29:38 +02:00
Amanieu d'Antras
09aca6f001
Merge pull request #486 from nicholasbishop/bishop-uefi-unadjusted-win64-4
2022-08-07 16:38:34 +02:00
Nicholas Bishop
abb6893a85
Enable unadjusted_on_win64 for UEFI in some cases
...
The conversion functions from i128/u128 to f32/f64 have the
`unadjusted_on_win64` attribute, but it is disabled starting with
LLVM14. This seems to be the correct thing to do for Win64, but for some
reason x86_64-unknown-uefi is different, despite generally using the
same ABI as Win64.
2022-08-03 19:16:03 -04:00
Amanieu d'Antras
8a9e33297a
Bump to 0.1.78
2022-07-30 01:45:31 +01:00
Amanieu d'Antras
b71753da80
Merge pull request #484 from Alexhuszagh/armv5te
2022-07-30 02:42:08 +02:00
Amanieu d'Antras
a81a868a59
Merge pull request #482 from ankane/gamma
2022-07-30 02:41:21 +02:00
Andrew Kane
d9cd50d32f
Update libm
2022-07-29 17:34:06 -07:00
Alex Huszagh
599dcc2c46
Add compiler-rt fallbacks for sync builtins on armv5te-musl.
2022-07-29 16:58:05 -05:00
Amanieu d'Antras
d117ae3ae7
Merge pull request #483 from Alexhuszagh/musl64
2022-07-29 23:14:24 +02:00
Alex Huszagh
de09c87e0b
Add compiler-rt fallback for __trunctfsf2 on mips64-musl.
2022-07-29 15:52:23 -05:00
Andrew Kane
89df6f6bc0
Added tgamma and tgammaf
2022-07-28 16:21:37 -07:00
Amanieu d'Antras
1913181e24
Bump to 0.1.77
2022-07-28 20:58:02 +01:00
Amanieu d'Antras
c22f0d54c4
Merge pull request #474 from Demindiro/x86_64-mem-align-dest
2022-07-28 21:37:48 +02:00
David Hoppenbrouwers
66f22e0931
Remove branches around rep movsb/stosb
...
While it is measurably faster for older CPUs, removing them keeps the code
smaller and is likely more beneficial for newer CPUs.
2022-07-28 18:45:28 +02:00
David Hoppenbrouwers
04c223f0df
Skip rep movsb in copy_backward if possible
...
There is currently no measureable performance difference in benchmarks
but it likely will make a difference in real workloads.
2022-07-28 18:32:57 +02:00
David Hoppenbrouwers
30e0c1f4c2
Use att_syntax for now
2022-07-28 18:32:56 +02:00
David Hoppenbrouwers
897a133869
Remove rep_param_rev
2022-07-28 18:32:56 +02:00
David Hoppenbrouwers
45e2996c96
Fix suboptimal codegen in memset
2022-07-28 18:32:56 +02:00
David Hoppenbrouwers
a977b01090
Align destination in mem* instructions.
...
While misaligned reads are generally fast, misaligned writes aren't and
can have severe penalties.
2022-07-28 18:32:51 +02:00