Commit Graph

739 Commits

Author SHA1 Message Date
Alex Crichton e4f46b91ca Don't compile C code on riscv targets
This fixes a longstanding bug in compiler-builtins where C code was
compiled for the riscv targets but when distributed in rust-lang/rust
all the C code was actually compiled for x86_64 since there is no
configured C compiler for riscv. This was exposed by #286 by accident
but the underlying cause was somewhat unrelated.

For now we forcibly disable C code for riscv targets, and when the C
compiler story is sorted out in rust-lang/rust and with `cc-rs` we can
reenable. For now just use all the Rust definitions.

cc rust-lang/rust#60747
2019-05-14 14:29:29 -07:00
Alex Crichton e3b53f9142 Bump to 0.1.12 2019-05-02 15:18:37 -07:00
Alex Crichton 4addb9bab9
Merge pull request #286 from alexcrichton/fix-dupe
Fix duplicate symbol __clzsi2
2019-05-02 17:17:52 -05:00
Alex Crichton fd7d1b0a45
Merge pull request #287 from alexcrichton/reenable-mips
Enable historically segfaulting tests on MIPS
2019-05-02 16:44:40 -05:00
Alex Crichton 80a998df92 Fix duplicate floatdisf symbol on Windows MSVC 2019-05-02 14:22:19 -07:00
Alex Crichton 2668e5754d
Merge pull request #284 from alexcrichton/ldexp
Include `ldexp*` intrinsics on the wasm target
2019-05-02 16:17:33 -05:00
Alex Crichton 45caccf3bf
Merge pull request #285 from alexcrichton/use-optimized
Revert "Use the Rust implementation of udivsi3 on ARM"
2019-05-02 16:17:04 -05:00
Alex Crichton 77b1c7a881 Enable historically segfaulting tests on MIPS
They seem to be passing locally so let's see what CI has to say.

Closes #137
2019-05-02 13:44:20 -07:00
Alex Crichton 752e35a11f Fix duplicate symbol __clzsi2
Looks like our tests weren't quite testing compiler-builtins when it was
compiled with unmangled symbols, so update the tests to catch this and
then fix the compilation of the `__clzsi2` intrinsic to use the C
version if it's compiled.
2019-05-02 13:35:50 -07:00
Alex Crichton 4bbc838ac7 Revert "Use the Rust implementation of udivsi3 on ARM"
This reverts commit 681aaa914d.
2019-05-02 12:49:19 -07:00
Alex Crichton 4012b9c4f5 Include `ldexp*` intrinsics on the wasm target
Looks like LLVM optimizes programs like:

    fn foo(a: u8) -> f32 {
        2.0f32.powf(a as f32)
    }

to actually invoking `ldexpf`, so let's be sure to include bindings so
there's not undefined symbols.
2019-05-02 12:40:39 -07:00
Alex Crichton 045de6e516 Bump to 0.1.11 2019-04-30 10:08:23 -07:00
Alex Crichton 14320f2d77
Merge pull request #283 from Goirad/patch-1
Added missing fdim signature
2019-04-30 08:41:30 -05:00
Goirad aec945a708
Added missing fdim signature 2019-04-29 14:42:14 -07:00
Alex Crichton c8dd6524e8 Add instructions for publishing 2019-04-08 07:55:09 -07:00
Alex Crichton afca23bbb9 Bump to 0.1.10 2019-04-08 07:52:05 -07:00
Alex Crichton cc61d82bc4
Merge pull request #281 from Zoxc/vs2019
Update submodule for VS 2019 support
2019-04-08 09:51:31 -05:00
John Kåre Alsaker 98c5738ed5 Update submodule for VS 2019 support 2019-04-08 16:30:33 +02:00
Alex Crichton 6e8085722d
Update azure pipelines badge 2019-04-02 15:41:20 -05:00
Alex Crichton cc2d7cb3bc Bump to 0.1.9 2019-04-02 13:05:56 -07:00
Alex Crichton 1275ec6654 More fixes for i686-mingw 2019-04-02 13:02:22 -07:00
Alex Crichton 4c60176278 Attempt to fix MinGW targets 2019-04-02 12:51:36 -07:00
Alex Crichton cc7567e471
Merge pull request #277 from alexcrichton/less-wasi-sysm
Don't compile math symbols on wasm32-unknown-wasi
2019-04-02 14:44:24 -05:00
Alex Crichton a771cba5f9
Merge pull request #279 from alexcrichton/configure-azure-pipelines
Configure Azure Pipelines
2019-04-02 14:44:08 -05:00
Alex Crichton 17b8ea3620 Re-enable all targets 2019-04-02 12:17:23 -07:00
Alex Crichton ca03cf138a Try to fix Windows 2019-04-02 12:12:29 -07:00
Alex Crichton c880d1ca06 Try to handle thumb targets and xargo 2019-04-02 11:54:20 -07:00
Alex Crichton 89f2b5a8bd Generate a lock file before using Docker
Can't do it in the readonly filesystem inside!
2019-04-02 09:53:05 -07:00
Alex Crichton aa5ff95d7e Don't pass `-it` to docker 2019-04-02 09:35:47 -07:00
Alex Crichton 87154a3e7d Upgrade all docker containers to 18.04 2019-04-02 08:39:19 -07:00
Alex Crichton 8e2f43e400 Expand Azure Pipelines configuration 2019-04-02 08:37:06 -07:00
Alex Crichton 19a2b4fe07 Configure Azure Pipelines 2019-04-02 08:24:11 -07:00
Alex Crichton ef099c7994 Add sample azure pipelines configuration 2019-04-02 07:57:02 -07:00
Alex Crichton e95ef7a5ef Don't compile math symbols on wasm32-unknown-wasi
These are already provided by the C sysroot, so no need for us to
duplicate them!
2019-04-02 07:46:06 -07:00
Alex Crichton a4420e66ad Bump to 0.1.8 2019-03-21 07:52:59 -07:00
Alex Crichton 4078c99f9b
Merge pull request #276 from hug-dev/armv8m-support
Fix compilation errors for Armv8-M Baseline and Mainline with FPU
2019-03-14 09:15:10 -05:00
Hugues de Valon 5d683bafc3 Remove thumbv6m configuration of intrinsic example
It seems that the intrinsics that were generated for the functions in
example/intrinsics.rs where different implementations were given for
thumb6m-none-eabi target, have now been implemented in Rust so
configuration is not needed anymore.
2019-03-14 12:58:29 +00:00
Hugues de Valon 85101f2a47 Fix compilation for thumbv8m.main-none-eabihf
Some files were not assembling for the Armv8-M Mainline architecture
profile with FPU extension. Reason being the same as for Armv7-M: the
conversion intrinsics including double precision floating
point variables do not work with single precision FPUs.
Also removes from exclusion files that are assembling without errors for
Armv7-M and Armv8-M Mainline.
2019-03-14 12:58:29 +00:00
Hugues de Valon c924aed0b9 Fix Armv8-M Baseline compilation
Armv8-M Baseline, ie thumbv8m.base-none-eabi, is a superset of the
Armv6-M architecture profile. As it shares almost the same instruction
set, this commit copies the configuration for thumbv6m-none-eabi to
enable it.
2019-03-14 12:58:23 +00:00
Alex Crichton c8b8087c95 Don't compile memory intrinsics on wasi 2019-03-13 08:23:25 -07:00
Alex Crichton fafaacecd1 Bump to 0.1.7 2019-02-27 12:39:34 -08:00
Alex Crichton 39ad0538f2
Merge pull request #274 from jordanrh1/fix-windows-arm
Fix undefined symbol errors on windows/arm
2019-02-27 14:37:47 -06:00
Jordan Rhee 18cd30009c Bump version to 0.1.6 2019-02-27 11:45:14 -08:00
Jordan Rhee 803d16ee84 Fix undefined symbol errors on windows/arm
Fix undefined symbol linker errors when building rust for windows/arm
by excluding unneeded symbols. The errors are:

  = note: lib.def : error LNK2001: unresolved external symbol __aeabi_memclr4
  lib.def : error LNK2001: unresolved external symbol __aeabi_memclr8
  lib.def : error LNK2001: unresolved external symbol __aeabi_memmove4
  lib.def : error LNK2001: unresolved external symbol __aeabi_memmove8
2019-02-27 11:39:49 -08:00
Alex Crichton b41ba0b570
Merge pull request #273 from MikaelUrankar/freebsd_arm
FreeBSD arm needs clear_cache.c
2019-02-03 08:01:04 +01:00
MikaelUrankar 275b37d66c FreeBSD arm needs clear_cache.c 2019-02-02 19:52:41 +01:00
Alex Crichton 61a3c5a89d
Merge pull request #272 from cyplo/fix-new-nightly
Fix compilation on new nightly.
2019-01-22 09:17:07 -08:00
Cyryl Płotnicki b570ccfd2d Fix compilation on new nightly.
Compilation on rustc 1.33.0-nightly (c76f3c374 2019-01-18) failed with
```
error: the feature `cfg_target_vendor` has been stable since 1.33.0 and no longer requires an attribute to enable
  --> src/lib.rs:19:12
   |
19 | #![feature(cfg_target_vendor)]
   |            ^^^^^^^^^^^^^^^^^
   |
```

Removed the attribute to make it compile.
2019-01-20 09:33:55 +00:00
Alex Crichton fcdf1bcd05
Merge pull request #271 from Lokathor/master
Version Bump for count leading zeros
2019-01-07 13:10:04 -06:00
Lokathor fc3368b558 Perform the correct version bump 2019-01-07 12:08:18 -07:00