Commit Graph

390 Commits

Author SHA1 Message Date
Alex Crichton
e48cd1180b 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
9a6cfe4844 Merge pull request #172 from alexcrichton/update-compielr-rt
Update compiler-rt submodule
2017-07-01 07:49:17 -07:00
Alex Crichton
37538e8c2a Update compiler-rt submodule
Needed to pull in some recent changes with rust-lang/rust
2017-07-01 00:31:53 -07:00
Jorge Aparicio
b9d6291682 no aeabi_mem* symbols on iOS, weak symbols on thumb, normal symbols elsewhere 2017-06-30 18:06:25 -05:00
Jorge Aparicio
f096e02f63 optimize 32-bit aligned mem{cpy,clr,set} intrinsics for ARM
this reduces the execution time of all these routines by 40-70%
2017-06-29 22:40:58 -05:00
Jorge Aparicio
326c0bb597 enable tests now that #150 has been fixed 2017-06-27 22:48:57 -05:00
Alex Crichton
6792390e3e Enable the intrinsics program on thumb 2017-06-25 10:09:50 -07:00
Alex Crichton
0e404583e8 Address review comments 2017-06-24 21:51:34 -07:00
Alex Crichton
f9db3c5b32 Don't test mangled names on thumb
We are both the "real compiler-rt" and the "to be tested one".
2017-06-24 12:54:35 -07:00
Alex Crichton
60028c1d9d Enable 128-bit integer tests on Windows
Closes #158
2017-06-24 12:23:28 -07:00
Alex Crichton
e7008c8609 Don't check for references to panics with debug assertions 2017-06-24 11:44:50 -07:00
Alex Crichton
e8964fc7dd Don't build gcc_personality_v0 2017-06-24 11:36:05 -07:00
Alex Crichton
3eff54a4ee Don't generate unmangled aeabi with gen-tests
The symbols they delgate to also don't exist...
2017-06-24 11:34:10 -07:00
Alex Crichton
90dab55cb0 Don't try to work with cargo test 2017-06-24 10:22:49 -07:00
Alex Crichton
cf1419e538 Add a FIXME for Windows 2017-06-24 10:12:17 -07:00
Alex Crichton
cec593c2aa Tweak testing and such:
* Don't run `intrinsics` tests on thumb
* Disable `compiler_builtins` attribute on `feature = "gen-tests"`
* Disable mangling on `feature = "gen-tests"` instead of `cfg(test)`
2017-06-24 10:10:04 -07:00
Alex Crichton
4dfb2c5f09 Fix appveyor PATH 2017-06-23 21:38:55 -07:00
Alex Crichton
1614443a68 Try to fix run.sh on AppVeyor 2017-06-23 21:36:36 -07:00
Alex Crichton
c785055bd9 Remove usage of unwrap_or_else 2017-06-23 21:31:54 -07:00
Alex Crichton
80112d198d Use the same CI script on AppVeyor 2017-06-23 21:23:52 -07:00
Alex Crichton
d5279752b0 Don't derive Debug for Sign 2017-06-23 21:11:31 -07:00
Alex Crichton
d3e78c5f6f 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
bbaf9fd85a Don't build chkstk on x86_64 2017-06-23 20:43:51 -07:00
Alex Crichton
af944595d0 Try testing MinGW targets 2017-06-23 20:35:25 -07:00
Alex Crichton
4bb783da70 Remove the travis cache 2017-06-23 20:20:42 -07:00
Alex Crichton
e8efe11f71 Shore up docs in the macros module 2017-06-23 16:28:50 -07:00
Alex Crichton
6db18f6536 Handle aeabi aliasing
Objects in compiler-rt may have two symbols, so this makes sure that we don't
bring in those objects by accident by defining the aliases ourselves.
2017-06-23 15:55:11 -07:00
Alex Crichton
78b290b61c 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
f091d05904 Tweak usage of C shims on MSVC 2017-06-23 12:03:33 -07:00
Alex Crichton
4dbe3aaf2d Use nm to weed out panics 2017-06-23 11:52:22 -07:00
Alex Crichton
11d3cffd30 Remove unused rust file 2017-06-23 11:21:36 -07:00
Alex Crichton
0e5562c38d Remove executable bit on arm.rs 2017-06-23 11:21:15 -07:00
Alex Crichton
d20a774a4a Remove defined intrinsics from build.rs
No need to load these from C!
2017-06-23 11:14:50 -07:00
Alex Crichton
bf2f5b5808 Convert float intrinsics to the intrinsics! macro 2017-06-23 11:05:25 -07:00
Alex Crichton
c53d1c7b7d Remove executable bit from conv.rs 2017-06-23 10:44:59 -07:00
Alex Crichton
e8d550ee51 Less verbose output on symbol check 2017-06-23 10:44:29 -07:00
Alex Crichton
e798d1bf81 Enable mem for intrinsics on linux 2017-06-23 09:59:49 -07:00
Alex Crichton
b6a4de6be5 Fix features needed for the intrinsics example 2017-06-23 08:35:24 -07:00
Alex Crichton
43bb211be8 Fix travis intrinsics builds 2017-06-23 08:19:11 -07:00
Alex Crichton
57b8dd1812 Fix use_c_shim_if 2017-06-23 07:54:31 -07:00
Alex Crichton
5a36c4b54b Use more intrinsics on msvc 2017-06-23 07:53:34 -07:00
Alex Crichton
b6497f5283 Build tweaks 2017-06-23 07:36:08 -07:00
Alex Crichton
48c4569e91 Build the intrinsics example separately 2017-06-23 07:01:18 -07:00
Alex Crichton
0aead6b3d8 Require the compiler-builtins target for the example 2017-06-23 06:58:05 -07:00
Alex Crichton
1740b0b0f5 More windows linkage guesses 2017-06-23 06:53:09 -07:00
Alex Crichton
e892808fdd Test 64-bit linux 2017-06-22 23:44:27 -07:00
Alex Crichton
107cbd36a0 Try to fix linkage on windows 2017-06-22 23:41:28 -07:00
Alex Crichton
0d1138fad3 Fix the abi hack on windows 2017-06-22 23:36:50 -07:00
Alex Crichton
dd059dd1fc Port udiv to the intrinsics! macro 2017-06-22 23:23:36 -07:00
Alex Crichton
e80da4a48a Port sdiv to traits + intrinsics!
Enhance `intrinsics!` along the way!
2017-06-22 23:09:28 -07:00