Commit Graph

426 Commits

Author SHA1 Message Date
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 d513c92b01 Try testing MinGW targets 2017-06-23 20:35:25 -07:00
Alex Crichton 635e519b86 Remove the travis cache 2017-06-23 20:20:42 -07:00
Alex Crichton eabb6fab4a Shore up docs in the macros module 2017-06-23 16:28:50 -07:00
Alex Crichton 7de57cd4f9 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 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 5172f8c218 Tweak usage of C shims on MSVC 2017-06-23 12:03:33 -07:00
Alex Crichton a16ebb0dcb Use `nm` to weed out panics 2017-06-23 11:52:22 -07:00
Alex Crichton 5a444d58f2 Remove unused rust file 2017-06-23 11:21:36 -07:00
Alex Crichton 7c4745061a Remove executable bit on arm.rs 2017-06-23 11:21:15 -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
Alex Crichton 83d63eaa9b Convert float intrinsics to the `intrinsics!` macro 2017-06-23 11:05:25 -07:00
Alex Crichton 93fed264c1 Remove executable bit from conv.rs 2017-06-23 10:44:59 -07:00
Alex Crichton 560018cc83 Less verbose output on symbol check 2017-06-23 10:44:29 -07:00
Alex Crichton 696b821bb7 Enable `mem` for intrinsics on linux 2017-06-23 09:59:49 -07:00
Alex Crichton 0be8b20cb7 Fix features needed for the intrinsics example 2017-06-23 08:35:24 -07:00
Alex Crichton 4540bd4314 Fix travis intrinsics builds 2017-06-23 08:19:11 -07:00
Alex Crichton 4c41b5649f Fix use_c_shim_if 2017-06-23 07:54:31 -07:00
Alex Crichton 47ff81325c Use more intrinsics on msvc 2017-06-23 07:53:34 -07:00
Alex Crichton 8abb0ab826 Build tweaks 2017-06-23 07:36:08 -07:00
Alex Crichton f0e58591b3 Build the intrinsics example separately 2017-06-23 07:01:18 -07:00
Alex Crichton 1b78d79bf5 Require the `compiler-builtins` target for the example 2017-06-23 06:58:05 -07:00
Alex Crichton 215fa06fb6 More windows linkage guesses 2017-06-23 06:53:09 -07:00
Alex Crichton 7f90c48a7a Test 64-bit linux 2017-06-22 23:44:27 -07:00
Alex Crichton a4120adc69 Try to fix linkage on windows 2017-06-22 23:41:28 -07:00
Alex Crichton 12a0038250 Fix the abi hack on windows 2017-06-22 23:36:50 -07:00
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