Commit Graph

53 Commits

Author SHA1 Message Date
est31
02ea9e5f54 Update the gcc crate to 0.3.53 and disable compilation warnings
They are inside the compiler-rt submodule, about which we don't have
direct control over.
2017-09-07 07:49:34 +02:00
Alex Crichton
91eaa85902 Don't mangle probes all the time 2017-07-07 20:35:14 -07:00
Alex Crichton
a1700f9da9 Fix a typo in the build script 2017-07-03 15:28:03 -07:00
Alex Crichton
070990f10a Compile ffsdi2 with rustbuild feature
This is not used by LLVM/Rust, but is apparently used by gcc/C which jemalloc
can require at least.
2017-07-03 15:00:51 -07:00
Alex Crichton
681aaa914d Use the Rust implementation of udivsi3 on ARM
Although compiler-rt presumably has a more optimized implementation written in
assembly, it appears buggy for whatever reason, causing #173.

For now let's see if integration into rust-lang/rust will work with the
Rust-defined implementation!
2017-07-03 09:48:11 -07:00
Alex Crichton
4859aba5f4 Don't build gcc_personality_v0 2017-06-24 11:36:05 -07:00
Alex Crichton
b42d267065 Don't compile assembly on x86_64 Windows
They've all got the wrong ABI...
2017-06-23 21:09:24 -07:00
Alex Crichton
94bc9953a1 Don't build chkstk on x86_64 2017-06-23 20:43:51 -07:00
Alex Crichton
a839d53a02 Deal with floatdidf on x86_64
Apparently LLVM will lower this down to just an instruction
2017-06-23 13:28:24 -07:00
Alex Crichton
ac3715de0f Remove defined intrinsics from build.rs
No need to load these from C!
2017-06-23 11:14:50 -07:00
est31
258feadae4 Build.rs: better debug output 2017-05-10 02:41:29 +02:00
est31
6047cdf1e8 floattidf, floatuntidf: ignore differences smaller than 2 in test
Its possible that the generated f64 is different from the expected one
by one bit. This is legal when both values are equally close to the i128/u128.
2017-05-08 01:26:30 +02:00
est31
191c0be298 Print generated files 2017-05-07 04:40:00 +02:00
est31
e24673b6c7 Fix test name gotten wrong 2017-05-06 15:47:38 +02:00
est31
b870667509 Adjust for changed cast function 2017-05-06 15:47:38 +02:00
est31
b91c39da73 Implement tests for floatuntidf and floatuntisf 2017-05-06 05:37:24 +02:00
est31
2d2bf21f73 Implement tests for fixunsdfti and fixunssfti 2017-05-06 05:37:24 +02:00
est31
d188d3dc12 Implement tests for fixdfti and fixsfti 2017-05-06 05:37:24 +02:00
est31
f9b5297ccc Implement tests for floattidf and floattisf 2017-05-06 05:37:24 +02:00
Jorge Aparicio
63f91a0c31 Revert "i128 test: transmute intrinsic output before comparing"
This reverts commit 46085a2313.
2017-04-11 15:03:21 -05:00
Jorge Aparicio
46085a2313 i128 test: transmute intrinsic output before comparing
on Windows, these intrinsics return a U64x2 type because of ABI requirements
2017-04-11 14:47:23 -05:00
Jorge Aparicio
55294baf7a put test generation behind a Cargo feature
to reduce build time for the most common case of not running tests
2017-04-10 17:27:25 -05:00
Jorge Aparicio
3fa223505a make float* intrinsics testable on thumb
there are no intrinsics for float equality atm, so transmute to an integer
before comparing
2017-04-10 17:13:07 -05:00
Jorge Aparicio
9e2c2b6447 test float/conv.rs 2017-04-10 16:12:49 -05:00
Jorge Aparicio
b8e8c7f693 no_std compatible tester 2017-04-10 14:38:17 -05:00
Jorge Aparicio
a88ea4011b rustfmt 2017-04-10 11:29:31 -05:00
Jorge Aparicio
bce5fb5a6e move the compiler-rt submodule to the root 2017-04-10 11:23:03 -05:00
Jorge Aparicio
dbcec72ca1 refactor build.rs to not depend on rustc-cfg
it now uses the CARGO_CFG_TARGET variables provided by Cargo
2017-04-10 11:19:16 -05:00
Jorge Aparicio
a2e6591be9 make the gcc crate optional
it's only required when the "c" feature is enabled
2017-02-19 15:49:59 -05:00
Jorge Aparicio
5bb969d8f5 implement float subtraction
as a + (-b)
2017-02-08 10:10:40 -05:00
Jorge Aparicio
f7bd48ee94 target.contains -> target_os == 2017-02-06 15:16:16 -05:00
Jorge Aparicio
7cac9625b5 std: Remove unused objects from compiler-builtins
rust-lang/rust#38623
2017-02-06 15:13:40 -05:00
Jorge Aparicio
03aa2ef390 travis: Expand the cross linux image
rust-lang/rust#39111
2017-02-06 15:12:34 -05:00
Jorge Aparicio
6d3cab2ba0 libcompiler_builtins: Don't build emutls.c
Rather than improving the check, let's ditch emutls.c entirely.

rust-lang/rust#38877
2017-02-06 15:11:51 -05:00
Jorge Aparicio
c30dcb0d30 Don't build any native compiler-builtin components for emscripten
rust-lang/rust#36339
2017-02-06 15:11:09 -05:00
Jorge Aparicio
b9149051f7 Don't build gcc_personality_v0.c on NetBSD either
rust-lang/rust#39425
2017-02-06 15:10:02 -05:00
est31
9013dbef02 u128 sdiv intrinsics 2017-02-02 22:13:28 +01:00
est31
2f3c534cfe u128 udiv intrinsics 2017-02-02 22:11:14 +01:00
est31
1e27c3f937 i128 shift intrinsics 2017-02-02 22:02:51 +01:00
est31
3055aa21b6 i128 mul intrinsics 2017-02-02 21:36:56 +01:00
Alex Crichton
24d49071e5 Define VISIBILITY_HIDDEN when compiling objects
Apparently compiler-rt passed this and we just forgot to. Fixes visibility of
some symbols on 32-bit Linux.
2016-11-18 09:40:20 -08:00
Matt Ickstadt
f68475e080 Use better cfg name for arm-linux tests 2016-11-12 15:52:59 -06:00
Matt Ickstadt
655f642d3f Add float quickcheck 2016-11-12 14:55:28 -06:00
Jorge Aparicio
4bf128a84c add a rustbuild cargo feature for integration with rust-lang/rust 2016-10-10 16:18:18 -05:00
homunkulus
8652c66bdc Auto merge of #82 - mattico:add_pow, r=japaric
Add pow functions

I still want to clean up the commit history, but otherwise I think this is complete. ~~Can you run the tests on it?~~
2016-10-04 01:52:27 +00:00
Jorge Aparicio
ff7e3ba2c0 stop compiling compiler-rt implementations
to avoid duplicate symbols
2016-10-03 20:52:14 -05:00
Jorge Aparicio
77bca82434 bump rustc-cfg version and show a better error message when it fails 2016-10-03 19:25:32 -05:00
Jorge Aparicio
72802069a2 build.rs: print rerun-if-change for all the C/asm sources 2016-09-29 19:45:59 -05:00
Jorge Aparicio
b5797dc2a2 adapt to new testing infrastructure 2016-09-29 18:50:04 -05:00
Jorge Aparicio
f77ca915c4 add an opt-in cargo feature to build intrinsics from compiler-rt source
closes #63
cc #66
2016-09-29 16:06:24 -05:00