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
Jorge Aparicio
cc0d8ba2d1
remove the current test suite
2017-04-10 11:14:05 -05:00
Jorge Aparicio
d40b3b3c52
move compiler-rt submodule
2017-04-10 11:11:23 -05:00
bors
28ac4908f8
Auto merge of #147 - rust-lang-nursery:conv, r=japaric
...
Conversion from&to float<->integer
this is a rebased version of #139
cc @ithinuel
2017-04-08 15:20:35 +00:00
Jorge Aparicio
109c33ed0a
test out of range condition using f64
...
to avoid imprecision due to rounding to f32
2017-04-08 10:18:19 -05:00
bors
09145e6bda
Auto merge of #152 - rust-lang-nursery:gh151, r=alexcrichton
...
fix debug assertion in modsi3 / moddi3
fixes #151
this fix is very similar to #149
r? @alexcrichton
2017-04-07 18:43:21 +00:00
Jorge Aparicio
2faec6a4fb
fix debug assertion in modsi3 / moddi3
...
fixes #151
this fix is very similar to #149
2017-03-13 20:40:44 -05:00
bors
9681358dc5
Auto merge of #149 - rust-lang-nursery:gh148, r=alexcrichton
...
fix debug assertion in divdi3
fixes #148
r? @alexcrichton
2017-03-07 00:38:33 +00:00
Jorge Aparicio
c93b32b3e5
fix debug assertion in divdi3
...
fixes #148
2017-03-06 17:46:11 -05:00
bors
8bd620f3e8
Auto merge of #146 - rust-lang-nursery:gh145, r=alexcrichton
...
fix infinite recursion in divmoddi4 / mulodi4
on ARMv7-M processors, divmoddi4 was calling mulodi4 and mulodi4 was calling
divmoddi4 leading to infinite recursion. This commit breaks the cycle by using
wrapping multiplication in divmoddi4.
fixes #145
r? @alexcrichton
2017-03-06 17:35:26 +00:00
Jorge Aparicio
4c556dc9e7
fix quickcheck tests
...
the check! macro syntax has changed
2017-03-06 12:17:41 -05:00
Jorge Aparicio
c6e06f4157
refactor 'impl Int'
2017-03-06 12:17:10 -05:00
Wilfried Chauveau
09d2f2f1f5
exclude from tests values out of integer range (and NaN).
2017-03-06 11:56:52 -05:00
Wilfried Chauveau
d96102d270
implement float/double to (u)int conversion.
2017-03-06 11:56:52 -05:00
Wilfried Chauveau
293fef5ebe
impl (unsigned/signed) int to single/double precision float conversion based on llvm algorithms.
2017-03-06 11:55:57 -05:00
Jorge Aparicio
644a1c9ac9
fix infinite recursion in divmoddi4 / mulodi4
...
on ARMv7-M processors, divmoddi4 was calling mulodi4 and mulodi4 was calling
divmoddi4 leading to infinite recursion. This commit breaks the cycle by using
wrapping multiplication in divmoddi4.
fixes #145
2017-03-06 10:38:19 -05:00
bors
0507842b24
Auto merge of #143 - rust-lang-nursery:no-gcc, r=alexcrichton
...
make the gcc crate optional
it's only required when the "c" feature is enabled
r? @alexcrichton
2017-02-21 16:25:47 +00: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
bors
1550b0d32f
Auto merge of #142 - rust-lang-nursery:sub, r=alexcrichton
...
implement float subtraction
as a + (-b)
r? @alexcrichton
2017-02-08 16:11:15 +00:00
Jorge Aparicio
5bb969d8f5
implement float subtraction
...
as a + (-b)
2017-02-08 10:10:40 -05:00
bors
9aa3a257d6
Auto merge of #141 - rust-lang-nursery:aapcs, r=alexcrichton
...
use AAPCS calling convention on all aeabi intrinsics
also, on ARM, inline(always) the actual implementation of the intrinsics so we
end with code like this:
```
00000000 <__aeabi_dadd>:
(implementation here)
```
instead of "trampolines" like this:
```
00000000 <__aeabi_dadd>:
(shuffle registers)
(call __adddf3)
00000000 <__adddf3>:
(implementation here)
```
closes #116
cc #66
r? @alexcrichton
cc @mattico
2017-02-08 04:09:14 +00:00
Jorge Aparicio
47b45d1d62
adjust the check! macro to accept AAPCS intrinsics
2017-02-07 23:07:51 -05:00
Jorge Aparicio
57085be2ea
ARM: keep some non-aeabi symbols around
...
- multi3: there's no aeabi equivalent
- divmod{s,d}i4: these are directly called by __aeabi_{l,i}divmod
- add{s,d}f3: required by the C sub{s,d}f3 implementation
but make sure they also use the AAPCS calling convention
2017-02-07 14:28:02 -05:00
Jorge Aparicio
dfa7b161aa
use AAPCS calling convention on all aeabi intrinsics
...
also, on ARM, inline(always) the actual implementation of the intrinsics so we
end with code like this:
```
00000000 <__aeabi_dadd>:
(implementation here)
```
instead of "trampolines" like this:
```
00000000 <__aeabi_dadd>:
(shuffle registers)
(call __adddf3)
00000000 <__adddf3>:
(implementation here)
```
closes #116
2017-02-07 09:41:26 -05:00
bors
3e8aa49cdf
Auto merge of #140 - rust-lang-nursery:backports, r=alexcrichton
...
backport rust-lang/rust changes
this mainly removes a bunch of unused intrinsics
r? @alexcrichton
2017-02-06 20:19:30 +00:00