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
Jorge Aparicio
69e93de9d9
appveyor: stop gisting the disassembly
...
it's flaky in its current form and Travis is not producing gist either.
2016-09-29 06:43:25 -05:00
Jorge Aparicio
52383edf3e
Merge pull request #76 from alexcrichton/more-test
...
Prep for and expand test infrastructure
2016-09-29 06:43:16 -05:00
Alex Crichton
8e161a791a
Expand and refactor teting infrastructure
...
This commit moves over most of the testing infrastructure to in-tree docker
images that are all dispatched to from Travis (no other test configuration).
This allows versioning modifications to the test infrastructure as well as the
code itself. Additionally separate docker images allows for easy modification of
one without worrying about tampering of others as well as easy addition of new
targets by simply adding a new `Dockerfile`.
Additionally this commit bundles the master version of the `compiler-rt` source
repository from `llvm-mirror/compiler-rt` to test against. The compiler-rt
library itself is compiled as a `cdylib` which is then dynamically located at
runtime and we look for symbols in. There's a few hoops here, but they currently
get the job done.
All tests now execute against both gcc_s and compiler-rt, and this
testing strategy is now all hidden behind a macro as well (refactoring
all existing tests along the way).
2016-09-28 22:09:55 -07:00
homunkulus
c56a3f8a6e
Auto merge of #73 - japaric:weak, r=japaric
...
put weak mem* symbols behind an opt-in Cargo feature
closes #64
cc #66
2016-09-22 23:59:48 +00:00
Jorge Aparicio
b7fa7d3a59
put weak mem* symbols behind an opt-in Cargo feature
...
closes #64
cc #66
2016-09-22 18:02:25 -05:00
homunkulus
d5e38beef9
Auto merge of #71 - japaric:aeabi-aliases, r=japaric
...
add missing aeabi aliases
2016-09-22 22:55:43 +00:00
Jorge Aparicio
d34be6ab4e
add missing aeabi aliases
2016-09-22 17:02:36 -05:00
homunkulus
b46719ee42
Auto merge of #67 - japaric:gcc_s, r=japaric
...
test our implementations against gcc_s
if it exposes the same intrinsics that we implement -- gcc_s doesn't
implement all the intrinsics for all the architectures.
closes #65
r? @Amanieu
Tested on Linux x86_64 and against the x86_64 and the arm-gnueabi targets. Unclear whether this works on osx or windows.
2016-09-22 22:01:46 +00:00
Jorge Aparicio
9e50598b70
Merge pull request #68 from japaric/another-thumb
...
test the thumbv7em-none-eabihf target
2016-09-22 12:24:01 -05:00
Jorge Aparicio
dafe47bc2b
fix build.rs
...
we don't want to match musleabihf targets
2016-09-22 11:56:34 -05:00
Jorge Aparicio
bfa92a862b
avoid division overflow in idivmod test
2016-09-22 10:32:15 -05:00
Jorge Aparicio
0404438809
test the thumbv7em-none-eabihf target
2016-09-22 06:15:05 -05:00
Jorge Aparicio
384c48ce9b
don't test always against gcc_s
...
instead test half of the time against gcc_s and the other half test
against the native operation (\*).
(\*) Not all the targets have available a native version of the
intrinsics under test. On those targets we'll end up testing our
implementation against itself half of the time. This is not much of a
problem because we do several quickcheck runs per intrinsic.
2016-09-21 21:38:06 -05:00
Jorge Aparicio
337bd7e209
armhf: don't compare our impls against gcc_s
2016-09-21 21:14:38 -05:00
Jorge Aparicio
225d4c9d45
avoid division overflow in idivmod test
2016-09-17 21:10:41 -05:00
Jorge Aparicio
08c9ff730c
osx: link to dylib, windows: always return None
2016-09-17 20:23:58 -05:00
Jorge Aparicio
9493c37455
test our implementations against gcc_s
...
if it exposes the same intrinsics that we implement -- gcc_s doesn't
implement all the intrinsics for all the architectures.
closes #65
2016-09-16 15:53:14 -05:00
Jorge Aparicio
9d74cf08b8
homu test
2016-09-10 19:12:50 -05:00
Jorge Aparicio
8359013890
test for homu
2016-09-10 18:37:35 -05:00
Jorge Aparicio
e80fca6469
appveyor: test on auto and try only
2016-09-10 16:54:54 -05:00
Jorge Aparicio
cc95697974
homu-ify
2016-09-10 16:49:32 -05:00
Jorge Aparicio
a91bf77c44
Merge pull request #58 from japaric/ci
...
travis: use latest docker image
2016-08-29 22:25:49 -05:00
Jorge Aparicio
170a977587
tell cargo which linker to use
2016-08-29 21:35:53 -05:00
Jorge Aparicio
f0b6314737
install less stuff
...
it's already installed in the docker image
2016-08-29 21:25:23 -05:00
Jorge Aparicio
9b47cff39b
travis: use latest docker image
2016-08-29 21:21:59 -05:00
Jorge Aparicio
c91a6d1373
Merge pull request #57 from japaric/ci
...
travis: simplify ci scripts
2016-08-29 20:55:09 -05:00
Jorge Aparicio
bc8f572c9f
pin xargo and gist versions
2016-08-29 20:37:41 -05:00
Jorge Aparicio
2f41babd74
fix typo
2016-08-29 20:36:52 -05:00
Jorge Aparicio
1ac627839d
travis: simplify ci scripts
2016-08-29 19:31:49 -05:00
Jorge Aparicio
948ada48b5
print rustup version
2016-08-27 12:34:39 -05:00
Jorge Aparicio
6c5dfe9f20
Merge pull request #56 from japaric/appveyor
...
appveyor: use rustup
2016-08-27 11:47:58 -05:00
Jorge Aparicio
b2ea9d582f
appveyor: use rustup
2016-08-27 11:37:35 -05:00
Jorge Aparicio
6288f23368
Merge pull request #55 from japaric/gist
...
use the gist gem instead of the gist crate
2016-08-23 23:30:15 -05:00
Jorge Aparicio
0bf085bc21
set language: ruby on osx only
2016-08-23 21:20:57 -05:00
Jorge Aparicio
2a8b2c25a4
use newer docker image
...
it comes with ruby pre-installed
2016-08-23 21:19:18 -05:00
Jorge Aparicio
51aabf3c32
use the gist gem instead of the gist crate
...
hopefully this will work on osx and will make everything more
uniform (appveyor is already using the gem instead of the crate)
closes #51
2016-08-23 20:48:24 -05:00
Jorge Aparicio
a687b97858
README: when and how to use this crate
2016-08-23 20:35:30 -05:00
Jorge Aparicio
09785557c0
README: add AppVeyor badge
2016-08-23 20:23:28 -05:00
Jorge Aparicio
2c520f10b9
README: fix link
2016-08-23 20:17:39 -05:00
Jorge Aparicio
47c5322e3c
Merge pull request #54 from japaric/gist
...
CI: gist the disassemblies
2016-08-22 21:48:09 -05:00
Jorge Aparicio
316f5cb9ba
use the gist crate
...
but not on OSX because it doesn't work there
closes #53
cc #51
2016-08-22 21:22:16 -05:00
Matt Ickstadt
5c9bfabcdf
appveyor: Use gist to post disassembly
2016-08-22 17:49:39 -05:00
Matt Ickstadt
27cbb963a3
travis: Use wgetpaste to post disassemblies to gist
2016-08-22 17:49:39 -05:00
Jorge Aparicio
9307ee99b5
Merge pull request #52 from mattico/add-readme-port-help
...
Add a `Porting Reminders` section to the README
2016-08-21 18:13:29 -05:00
Matt Ickstadt
3986d1e3b6
Add a `Porting Reminders` section to the README
2016-08-21 15:49:32 -05:00
Jorge Aparicio
7811f92bea
Merge pull request #50 from japaric/post-43
...
use utility function to compare the repr of floats
2016-08-21 12:22:14 -05:00
Jorge Aparicio
2e561b3869
use utility function to compare the repr of floats
...
follow up of #43
2016-08-21 11:24:58 -05:00
Jorge Aparicio
10fdc9b535
only show disassembly of optimized build
...
we can't really compare the disassembly of the debug build to
libcompiler-rt.a anyways
2016-08-21 11:09:32 -05:00
Jorge Aparicio
c427112561
Merge pull request #49 from japaric/edge
...
qc: bias towards generation of edge cases
2016-08-21 11:03:44 -05:00