Jorge Aparicio
2446cc468f
drop binfmt_misc dependency
...
Instead use the Cargo runner feature. The binfmt_misc approach requires running a privileged
container for setup. Not all docker setups support privileged containers so the test suite should be
more accessible with this change as no privileged container is needed.
2017-10-07 22:19:37 +02:00
Alex Crichton
91eaa85902
Don't mangle probes all the time
2017-07-07 20:35:14 -07:00
Jorge Aparicio
f3350c5499
enable tests now that #150 has been fixed
2017-06-27 22:48:57 -05:00
Alex Crichton
0ebbcaede4
Enable the `intrinsics` program on thumb
2017-06-25 10:09:50 -07:00
Alex Crichton
c193113721
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
acaa2f071a
Don't check for references to panics with debug assertions
2017-06-24 11:44:50 -07:00
Alex Crichton
91b1291dc5
Don't try to work with `cargo test`
2017-06-24 10:22:49 -07:00
Alex Crichton
5d6d3fde6a
Add a FIXME for Windows
2017-06-24 10:12:17 -07:00
Alex Crichton
734ec3d31c
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
5e28b7e2b1
Try to fix run.sh on AppVeyor
2017-06-23 21:36:36 -07:00
Alex Crichton
a2bdb4b379
Use the same CI script on AppVeyor
2017-06-23 21:23:52 -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
a16ebb0dcb
Use `nm` to weed out panics
2017-06-23 11:52:22 -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
f0e58591b3
Build the intrinsics example separately
2017-06-23 07:01:18 -07:00
Alex Crichton
a1377878c6
Test with the 'c' feature enabled on CI
2017-06-22 14:32:16 -07: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
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
3992ed1e7a
CI: use a recent nightly
...
- add #[no_mangle] to the panic_fmt lang item to adjust to changes in
the visibility algorithm
- adjust to changes in the layout of Cargo's target directory
- use a newer Xargo to reduce the build time of the sysroot (only core
is compiled as part of the sysroot now)
2016-12-31 10:04:40 -05:00
bors
70009a311c
Auto merge of #124 - japaric:rustbuild, r=alexcrichton
...
by default, mark this crate as the #![compiler_builtins] crate
as this is how most users will want to use this crate
r? @alexcrichton
2016-12-13 00:02:56 +00:00
Jorge Aparicio
3484b2b68e
by default, mark this crate as the #![compiler_builtins] crate
...
as this is how most users will want to use this crate
2016-12-11 16:18:43 -05:00
Jorge Aparicio
c1ef69f2a0
fix the test suite for the thumb targets
2016-12-11 11:18:48 -05:00
Jorge Aparicio
5c0e0f2070
CI: use Xargo 0.2.x
...
this version uses the rust-src component that rustup installs instead
of fetching the source tarball from static.r-l.o, which sometimes went
wrong due to the fallible logic that Xargo 0.1.x used
2016-11-23 12:47:42 -05:00
Jorge Aparicio
e2fc5a0771
merge apt-get commands
2016-11-12 17:36:59 -05:00
Matt Ickstadt
2a8cca03d8
Fix apt 404s in Docker
...
`apt update` and `apt install` should be in the same Docker RUN statement, otherwise `apt update` will be cached and `apt install` will 404 if a package no longer exists.
2016-11-12 16:08:13 -06:00
Jorge Aparicio
86e3b955cd
test the mips64 targets
2016-10-14 20:26:59 -05:00
Jorge Aparicio
5d164a4eda
fix the powerpc64le target
...
by selecting a CPU that's compatible with the instructions that `rustc`
generates
2016-10-14 09:59:21 -05:00
Jorge Aparicio
e441058be7
ci/run.sh: remove debug stuff
2016-10-10 20:53:21 -05:00
Jorge Aparicio
e05caa1227
fix warnings
2016-10-10 19:45:34 -05:00
Jorge Aparicio
96ddd4ed8d
use test::black_box instead of ptr::*_volatile
...
both prevent LLVM from optimizing away the intrinsics but the former
doesn't produce an `intrinsics` binary that segfaults
2016-10-07 18:26:21 -05:00
Jorge Aparicio
c82403551d
fix unsafe warnings
2016-10-07 18:19:40 -05:00
Jorge Aparicio
fd69beba29
get profile.dev (-debug-assertions) + LTO working
2016-10-07 18:19:40 -05:00
Jorge Aparicio
a2ffc799d0
check that we don't have any call to panic in our implementations
2016-10-07 18:19:40 -05:00
Jorge Aparicio
24c2a15f3d
fix path to .rlib on OSX
2016-10-07 15:03:22 -05:00
Jorge Aparicio
213d929f86
drop the target files
2016-10-06 23:20:09 -05:00
Jorge Aparicio
8a32bd3424
fix duplicate symbol test
2016-10-03 20:20:23 -05:00
Jorge Aparicio
0827f8c7f1
hide the thumbv* target files
...
due to how Cargo works, the rustc-cfg in build.rs was picking our target
specifications rather than the one the user meant to use. Placing our
target files in any place other than the root of the Cargo project
avoids the issue.
2016-10-02 19:23:54 -05:00
Jorge Aparicio
89ebc46f37
pick target during Xargo installation
2016-09-30 20:41:59 -05:00
Jorge Aparicio
d0a57cb871
give Xargo a $HOME
2016-09-30 20:21:15 -05:00
Jorge Aparicio
fb5cb0e4c1
fix Xargo installation
2016-09-30 20:20:15 -05:00
Jorge Aparicio
36a437a445
fix nm call
...
the prefix was missing a '-', i.e. arm-linux-gnueabinm was being called.
This also sets -e in run.sh to catch this sort of errors.
2016-09-30 19:04:48 -05:00
Jorge Aparicio
b60d2515ff
use `docker run --user` instead of manually creating a user
2016-09-30 18:37:41 -05:00
Jorge Aparicio
43e019dfc4
cache Cargo artifacts
...
notable changes in the docker-based testing infrastructure
- the docker containers can now modify $CARGO_HOME, to re-use the outer
Cargo registry, and the target directory to re-use build artifacts.
- the docker containers are removed when their execution finishes
because it's no longer necessary to re-start them to inspect them
because all the interesting output is in the outer target directory
2016-09-30 17:39:36 -05:00
Jorge Aparicio
cab88e6133
only x86-ish targets can use an unprefixed nm
2016-09-30 13:57:06 -05:00
Jorge Aparicio
62258b5188
ignore duplicated get_pc_thunk symbols
2016-09-29 19:20:34 -05:00
Jorge Aparicio
b5797dc2a2
adapt to new testing infrastructure
2016-09-29 18:50:04 -05:00