summary refs log tree commit diff
path: root/src/tools/compiletest
AgeCommit message (Collapse)AuthorLines
2020-05-31Make `remote-test-client` work as cargo runner againDennis Duda-2/+1
Since cargo appends executable/args, the support_lib count parameter has to come first.
2020-05-31Make remote-test-client and remote-test-server compatible with windowsDennis Duda-8/+14
`compiletest` and `remote-test-client`: The command line for `remote-test-client` was changed slightly to allow cross-platform compatible paths. The old way of supplying the support libs was by joining their paths with the executable path with `:`. This caused Windows-style paths to be split after the directory letter. Now, the number of support libs is provided as a parameter as well, and the support lib paths are split off from the regular args in the client. `remote-test-server`: - Marked Unix-only parts as such and implemented Windows alternatives - On Windows `LD_LIBRARY_PATH` doesn't exist. Libraries are loaded from `PATH` though, so that's the way around it. - Tiny cleanup: `Command::args`/`envs` instead of manually looping over them - The temp path for Windows has to be set via environment variable, since there isn't a global temp directory that would work on every machine (as a static string)
2020-05-10Fail if I/O error occurs during testingMark Rousskov-1/+4
2020-04-28Rollup merge of #71456 - mzohreva:mz/sgx-no-dylib, r=nikomatsakisDylan DPC-0/+1
Use lib crate type for SGX in `fn build_auxiliary` since SGX does not support `dylib` cc @Goirad
2020-04-25Auto merge of #71439 - Mark-Simulacrum:stage0-next, r=jonas-schievinkbors-1/+1
Bump bootstrap compiler This bumps the bootstrap compiler and the rustfmt that x.py fmt uses.
2020-04-25Bump bootstrap compilerMark Rousskov-1/+1
2020-04-24Rollup merge of #71428 - tromey:gdb-10-parsing, r=tromeyDylan DPC-5/+21
Let compiletest recognize gdb 10.x git gdb has moved to version 10. My build prints this as its --version: GNU gdb (GDB) 10.0.50.20200420-git Unfortunately this conflicts with this comment in compiletest: // We limit major to 1 digit, otherwise, on openSUSE, we parse the openSUSE version This patch changes the version parsing to follow the GNU coding standard, which accounts for both the openSUSE case as well as handling gdb 10. My debuginfo test run now says: NOTE: compiletest thinks it is using GDB with native rust support NOTE: compiletest thinks it is using GDB version 10000050 ... where previously it failed to find that gdb 10 had rust support.
2020-04-23Fix ui test blessing when a test has an empty stderr file after having had ↵Oliver Scherer-1/+5
content there before the current changes
2020-04-22Use lib crate type for SGX in `fn build_auxiliary`Mohsen Zohrevandi-0/+1
2020-04-22Fix compiletest version-parsing testsTom Tromey-2/+2
The compiletest version-parsing tests failed after the previous patch. However, I don't believe these tests are correct, in that I don't think RHEL or CentOS ever put the gdb version number into parentheses. Instead they display like: GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-119.el7
2020-04-22Let compiletest recognize gdb 10.xTom Tromey-3/+19
git gdb has moved to version 10. My build prints this as its --version: GNU gdb (GDB) 10.0.50.20200420-git Unfortunately this conflicts with this comment in compiletest: // We limit major to 1 digit, otherwise, on openSUSE, we parse the openSUSE version This patch changes the version parsing to follow the GNU coding standard, which accounts for both the openSUSE case as well as handling gdb 10. My debuginfo test run now says: NOTE: compiletest thinks it is using GDB with native rust support NOTE: compiletest thinks it is using GDB version 10000050 ... where previously it failed to find that gdb 10 had rust support.
2020-04-16Rollup merge of #71145 - pfmooney:illumos-triple, r=nagisaDylan DPC-0/+1
Add illumos triple This fixes rust-lang/rust#55553 and adds support for `illumos` as a `target_os` on `x86_64`. In addition to the compile spec and libstd additions, several library dependencies have been bumped in order to permit working builds of cargo and rustup for the new target. Work originally started by @jasonbking, with subsequent additions by @pfmooney and @jclulow.
2020-04-16Rollup merge of #70774 - GuillaumeGomez:clean-rustdoc-js-tools, r=ollie27Dylan DPC-1/+7
End cleanup on rustdoc-js tools Fixes #70689. It removes a lot of code, which is pretty nice. :3 We now only have one entry point and a small set of options. r? @ollie27
2020-04-14Add illumos triplePatrick Mooney-0/+1
Co-Authored-By: Jason King <jason.brian.king@gmail.com> Co-Authored-By: Joshua M. Clulow <jmc@oxide.computer>
2020-04-14Improve rustdoc js testers codeGuillaume Gomez-1/+5
2020-04-13Auto merge of #70989 - eddyb:mir-opt-32-pr-ci, r=Mark-Simulacrumbors-8/+15
ci: run mir-opt tests on PR CI also as 32-bit (for `EMIT_MIR_FOR_EACH_BIT_WIDTH`). Background: #69916 and [`src/test/mir-opt/README.md`](https://github.com/rust-lang/rust/blob/master/src/test/mir-opt/README.md): > By default 32 bit and 64 bit targets use the same dump files, which can be problematic in the presence of pointers in constants or other bit width dependent things. In that case you can add > > ``` > // EMIT_MIR_FOR_EACH_BIT_WIDTH > ``` > > to your test, causing separate files to be generated for 32bit and 64bit systems. However, if you change the output of such a test (intentionally or not), or if you add a test and it varies between 32-bit and 64-bit platforms, you have to run this command (for a x64 linux host): `./x.py test --stage 1 --target x86_64-unknown-linux-gnu --target i686-unknown-linux-gnu --bless src/test/mir-opt` Otherwise, bors trying to merge the PR will fail, since we test 32-bit targets there. But we don't on PR CI, which means there's no way the PR author would know (unless they were burnt by this already and know what to look for). This PR resolves that by running `mir-opt` tests for ~~`i686-unknown-linux-gnu`~~, on PR CI. **EDIT**: switched to `armv5te-unknown-linux-gnueabi` to work around LLVM 7 crashes (see https://github.com/rust-lang/compiler-builtins/pull/311#issuecomment-612270089), found during testing. cc @rust-lang/wg-mir-opt @rust-lang/infra
2020-04-11End cleanup on rustdoc-js toolsGuillaume Gomez-0/+2
2020-04-11compiletest: support --pass=check and --pass=build for mir-opt tests.Eduard-Mihai Burtescu-7/+14
2020-04-11compiletest: diff direction should be (-)expected -> (+)actual.Eduard-Mihai Burtescu-1/+1
2020-04-10compiletest: let config flags overwrite -A unusedRalf Jung-4/+6
2020-04-07Remove old mir-opt test format.Ana-Maria Mihalache-164/+0
2020-04-07Normalize away pairs of line:col numbers.Ana-Maria Mihalache-1/+1
2020-04-03Auto merge of #70156 - michaelwoerister:incr-cgus, r=nikomatsakisbors-1/+11
Make the rustc respect the `-C codegen-units` flag in incremental mode. This PR implements (the as of yet unapproved) major change proposal at https://github.com/rust-lang/compiler-team/issues/245. See the description there for background and rationale. The changes are pretty straightforward and should be easy to rebase if the proposal gets accepted at some point. r? @nikomatsakis cc @pnkfelix
2020-04-01compiletest: don't use `std::io::stdout()`, as it bypasses `set_print`.Eduard-Mihai Burtescu-8/+4
2020-03-31Add a test case for incremental + codegen-units interaction.Michael Woerister-1/+11
2020-03-26Enable `--bless`ing of MIR dumpsOliver Scherer-25/+114
2020-03-26Remove unused argumentOliver Scherer-18/+3
2020-03-25Auto merge of #70297 - nnethercote:clean-up-debugging-options, ↵bors-4/+3
r=michaelwoerister Clean up debugging options I found various sub-optimal things when I was looking at option handling.
2020-03-24Remove `-Z incremental`.Nicholas Nethercote-3/+3
`-C incremental` was introduced over two years ago. `-Z incremental` was kept for transitioning, but it's been long enough now that it should be ok to remove it.
2020-03-24Remove `-Z incremental-queries`.Nicholas Nethercote-1/+0
Because it uses `parse_bool` and defaults to true, it is actually impossible to set it to false. And it hasn't been experimental for some time now.
2020-03-19Fix LLVM version handling in compiletestNikita Popov-9/+23
Convert version string to integer before comparing. Otherwise we get into trouble with double digit versions ;)
2020-03-16Rollup merge of #69964 - ollie27:ci_nodejs, r=Mark-Simulacrum,GuillaumeGomezDylan DPC-1/+1
Add Node.js to PR CI image This should allow the `rustdoc-js` and `rustdoc-js-std` test suites to run automatically on PRs.
2020-03-13Allow `rustdoc-js` and `rustdoc-js-std` to use none default build dir locationOliver Middleton-1/+1
2020-03-11Rollup merge of #66472 - GuillaumeGomez:show-coverage-json, r=ollie27Mazdak Farrokhzad-1/+3
--show-coverage json The purpose of this change is to be able to use it as a tool in docs.rs in order to provide some more stats to crates' owners. Eventually even create a badge or something along the line. r? @QuietMisdreavus
2020-03-06fix various typosMatthias Krüger-2/+2
2020-03-03Add test for -Znew-llvm-pass-manager -Clto=thin -Zsanitizer=...Tomasz Miąsko-0/+18
Additionally verify that the current implementation of LLVM version check (which uses lexicographic ordering) is good enough to exclude versions before LLVM 9, where the new LLVM pass manager is unsupported.
2020-03-02Extend json detection in runtestGuillaume Gomez-1/+3
2020-02-18Rollup merge of #69205 - JohnTitor:allow-whitespaces, r=Mark-SimulacrumDylan DPC-9/+2
Allow whitespaces in revision flags Allow whitespaces in revision flags, like `// [foo]`. Fixes #69183
2020-02-16Auto merge of #67885 - tobithiel:fix_group_lint_allow_override, ↵bors-11/+28
r=Mark-Simulacrum rustc_session: allow overriding lint level of individual lints from a group Fixes #58211 and fixes rust-lang/rust-clippy#4778 and fixes rust-lang/rust-clippy#4091 Instead of hard-coding the lint level preferences (from lowest to highest precedence: `lint::Allow -> lint::Warn -> lint::Deny -> lint::Forbid`), the position of the argument in the command line gets taken into account. Examples: 1. Passing `-D unused -A unused-variables` denies everything in the lint group `unused` **except** `unused-variables` which is explicitly allowed. 1. Passing `-A unused-variables -D unused` denies everything in the lint group `unused` **including** `unused-variables` since the allow is specified before the deny (and therefore overridden by the deny). This matches the behavior that is already being used when specifying `allow`/`deny` in the source code.
2020-02-16Allow whitespaces in revision flagsYuki Okushi-9/+2
2020-02-02compiletest: error if `compile-fail` header in ui test.Tyler Lanphear-0/+3
2020-01-28Auto merge of #68533 - tmiasko:compiletest, r=nikomatsakisbors-119/+279
compiletest: Unit tests for `EarlyProps` (+ small cleanup) * Parse `EarlyProps` from a reader * Add unit tests for `EarlyProps` * Remove unused `llvm-cxxflags` option * Remove unnecessary memory allocations in `iter_header` * Update mode list displayed in `--help`
2020-01-26updatecomet-1/+1
2020-01-27compiletest: Don't load TestProps from a directoriesTomasz Miąsko-102/+106
2020-01-27compiletest: Derive Default for EarlyPropsTomasz Miąsko-8/+2
2020-01-27compiletest: Remove unused llvm-cxxflags optionTomasz Miąsko-5/+0
2020-01-27compiletest: Add unit tests for EarlyPropsTomasz Miąsko-1/+155
2020-01-27compiletest: Update mode list displayed in `--help`Tomasz Miąsko-1/+2
2020-01-27compiletest: Parse EarlyProps from a readerTomasz Miąsko-4/+10
2020-01-27compiletest: Remove unnecessary memory allocation in iter_headerTomasz Miąsko-3/+9
Replace `BufRead::lines` with `BuRead::read_line` to reduce memory allocations.