Alex Crichton
d17042106f
Port udiv to the intrinsics!
macro
2017-06-22 23:23:36 -07:00
Alex Crichton
7886ae275b
Port sdiv to traits + intrinsics!
...
Enhance `intrinsics!` along the way!
2017-06-22 23:09:28 -07:00
Alex Crichton
275d1032b5
Port mul intrinsics to traits
...
Also add a few features to the `intrinsics!` macro
2017-06-22 22:36:37 -07:00
Alex Crichton
eeb44abacf
Remove executable bit from mod.rs
2017-06-22 22:04:40 -07:00
Alex Crichton
2f2bb32e40
Use traits instead of macros for shift intrinsics
...
This is an attempt to tidy up the definition of intrinsics by making them more
rust-like at the definition site and using traits instead of macros for the
definition. Additionally the helper macro, `intrinsics!`, now fills in a
definition for #[cfg]'d off intrinsics when compiling with C code
2017-06-22 22:03:07 -07:00
Alex Crichton
a1377878c6
Test with the 'c' feature enabled on CI
2017-06-22 14:32:16 -07:00
bors
d63757cca8
Auto merge of #165 - rust-lang-nursery:fix-warnings, r=japaric
...
remove unused macros
to fix warnings
2017-06-01 16:37:50 +00:00
Jorge Aparicio
b2f72e1eb1
remove unused macros
...
to fix warnings
2017-06-01 07:40:50 -05:00
bors
f3ace11071
Auto merge of #161 - est31:i128, r=japaric
...
Implement i128 <-> float conversion functions
Implements {u,i}128 <-> float conversion functions.
2017-05-10 02:40:22 +00:00
est31
258feadae4
Build.rs: better debug output
2017-05-10 02:41:29 +02:00
est31
673a6f9948
Fix overflow bug when creating the absolute value
...
Previously, the tests failed on some platforms due to it.
2017-05-08 04:30:48 +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
e574d8be41
Update cast to 0.2.2 to fix bug in debug mode
2017-05-08 00:05:00 +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
d247c55d4d
Mark the functions just implemented in README.md
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
est31
9e7b61cb10
Use cast 0.2.1 for i128 support
2017-05-06 05:37:24 +02:00
est31
f90792e1bc
Add i128 <-> float conversion functions
2017-05-06 02:22:54 +02:00
est31
1ea9ea06d1
Mark some float related intrinsics as implemented in README.md
...
They have been implemented since
2017-05-06 00:42:59 +02:00
est31
144e54d7b0
Rename float conversion macros to something nicer
2017-05-05 23:31:41 +02:00
bors
280d19f112
Auto merge of #159 - rust-lang-nursery:intrinsics, r=japaric
...
move intrinsics test from src/bin to examples
with this change the libc crate is not required when calling `cargo build -p
compiler-builtins`
2017-04-11 22:15:28 +00:00
Jorge Aparicio
19b2efdf36
move intrinsics test from src/bin to examples
...
with this change the libc crate is not required when calling `cargo build -p
compiler-builtins`
2017-04-11 17:09:05 -05:00
Jorge Aparicio
7b98ecebfd
Merge pull request #155 from rust-lang-nursery/utest
...
no-std friendly test suite
2017-04-11 16:27:56 -05:00
Jorge Aparicio
44e5a1aa4c
fix cfg syntax
2017-04-11 15:36:42 -05:00
Jorge Aparicio
c52f9a079f
ignore i128 tests on windows
...
see #158
2017-04-11 15:08:52 -05: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
30b8b431c2
powershell -> cmd.exe
2017-04-11 14:53:19 -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
aa553fe113
appveyor: make the host x86_64 when testing the i686 target
2017-04-11 14:28:31 -05:00
Jorge Aparicio
a373683964
adapt the thumb target specs to upstream linker-flavor changes
2017-04-11 11:32:44 -05:00
Jorge Aparicio
33b17fd87b
ignore i128 div / mul tests on MIPS
...
there's an unfixed bug. See #137
2017-04-11 11:24:33 -05:00
Jorge Aparicio
adb4e5c86f
s/feature/features/g
2017-04-10 20:10:45 -05:00
Jorge Aparicio
d2bf0f97e1
travis: don't reinstall rustup
...
travis now installs rust using rustup
2017-04-10 18:00:16 -05:00
Jorge Aparicio
181139a35e
.travis.yml: thumbs target have been renamed
2017-04-10 17:59:45 -05:00
Jorge Aparicio
ebbf8d5a29
appveyor: cargo test requires the gen-tests feature
2017-04-10 17:46:33 -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
3f723d1141
modify the CI setup to run tests on the thumb targets
2017-04-10 17:16:13 -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
d34c51f74a
remove arm tests from the old test suite
2017-04-10 16:35:08 -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
bd9c835f44
remove unused Cargo subprojects
2017-04-10 11:22:17 -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