about summary refs log tree commit diff
path: root/src/tools/compiletest
AgeCommit message (Collapse)AuthorLines
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.
2020-01-23Auto merge of #68391 - tmiasko:compiletest-debuginfo, r=alexcrichtonbors-278/+215
compiletest: Simplify multi-debugger support Previous implementation used a single mode type to store various pieces of otherwise loosely related information: * Whether debuginfo mode is in use or not. * Which debuggers should run in general. * Which debuggers are enabled for particular test case. The new implementation introduces a separation between those aspects. There is a single debuginfo mode parametrized by a debugger type. The debugger detection is performed first and a separate configuration is created for each detected debugger. The test cases are gathered independently for each debugger which makes it trivial to implement support for `ignore` / `only` conditions. Functional changes: * A single `debuginfo` entry point (rather than `debuginfo-cdb`, `debuginfo-gdb+lldb`, etc.). * Debugger name is included in the test name. * Test outputs are placed in per-debugger directory. * Fixed spurious hash mismatch. Previously, the config mode would change from `DebugInfoGdbLldb` (when collecting tests) to `DebugInfoGdb` or `DebugInfoLldb` (when running them) which would affect hash computation. * PYTHONPATH is additionally included in gdb hash. * lldb-python and lldb-python-dir are additionally included in lldb hash.
2020-01-23compiletest: Do not run debuginfo tests with gdb on msvc targetsTomasz Miąsko-0/+4
2020-01-21Account for run-make tests in `is_up_to_date`Jonas Schievink-1/+2