summary refs log tree commit diff
path: root/src/tools/compiletest
AgeCommit message (Collapse)AuthorLines
2020-01-26updatecomet-1/+1
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
2020-01-20compiletest: Simplify multi-debugger supportTomasz Miąsko-278/+211
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-15Auto merge of #68248 - JohnTitor:rollup-x0kml5f, r=JohnTitorbors-4/+2
Rollup of 12 pull requests Successful merges: - #67784 (Reset Formatter flags on exit from pad_integral) - #67914 (Don't run const propagation on items with inconsistent bounds) - #68141 (use winapi for non-stdlib Windows bindings) - #68211 (Add failing example for E0170 explanation) - #68219 (Untangle ZST validation from integer validation and generalize it to all zsts) - #68222 (Update the wasi-libc bundled with libstd) - #68226 (Avoid calling tcx.hir().get() on CRATE_HIR_ID) - #68227 (Update to a version of cmake with windows arm64 support) - #68229 (Update iovec to a version with no winapi dependency) - #68230 (Update libssh2-sys to a version that can build for aarch64-pc-windows…) - #68231 (Better support for cross compilation on Windows.) - #68233 (Update compiler_builtins with changes to fix 128 bit integer remainder for aarch64 windows.) Failed merges: r? @ghost
2020-01-15Rollup merge of #68141 - euclio:replace-bindings-with-winapi, r=alexcrichtonYuki Okushi-4/+2
use winapi for non-stdlib Windows bindings
2020-01-14Update rustfix in compiletest.Eric Huss-1/+1
2020-01-11use winapi for non-stdlib Windows bindingsAndy Russell-4/+2
2020-01-11Revert "Rollup merge of #67727 - Dylan-DPC:stabilise/remove_item, ↵Lzu Tao-0/+1
r=alexcrichton" This reverts commit 4ed415b5478c74094c2859abfddb959588cd6bb1, reversing changes made to 3cce950743e8aa74a4378dfdefbbc80223a00865.
2020-01-11Rollup merge of #68019 - cuviper:in-tree-compiletest, r=Mark-SimulacrumYuki Okushi-1/+3
Build compiletest with in-tree libtest This updates compiletest to build in `Mode::ToolStd`, using the locally-built crates for `std` and especially `test`. This way we're immune to unstable differences in the bootstrap compiler crates, whether that's a prior-release stage0 or a current release local rebuild. Fixes #59264. As a minor cleanup, this also removes the unused `llvm_tools` flag.
2020-01-10Rollup merge of #68006 - infinity0:master, r=nikomatsakisYuki Okushi-0/+1
Recognise riscv64 in compiletest Otherwise tests can't run, fails with "Cannot determine Architecture from triple"
2020-01-09compiletest: Do not deduplicate diagnostics in UI testsVadim Petrochenkov-0/+2
2020-01-08Comment on allowing only feature(test) in compiletestJosh Stone-1/+3
2020-01-08Recognise riscv64 in compiletestXimin Luo-0/+1
2020-01-06remove usage of feature gatedylan_DPC-1/+0
2019-12-30Support `-Z ui-testing=yes/no`Vadim Petrochenkov-18/+2
2019-12-27Teach `compiletest` to ignore platform triplesEsteban Küber-0/+1
2019-12-22Format the worldMark Rousskov-988/+520
2019-12-21refactor & address review commentsMazdak Farrokhzad-57/+103
2019-12-21rework run-fail and support check,build-failMazdak Farrokhzad-23/+54
2019-12-21make `--pass check` work with `// run-fail` testsMazdak Farrokhzad-2/+6
2019-12-18Fix compiletest fallout from stage0 bumpMark Rousskov-0/+1
2019-12-09compiletest: add aux-crate directiveEric Huss-93/+95
2019-12-09Add options to --extern flag.Eric Huss-6/+6
2019-11-21Give name to full regex captureDylan MacKenzie-2/+3
2019-11-21Allow multiple cfgs per comment in "revisions:" testsDylan MacKenzie-42/+47
The `//[X]~` syntax filters errors for tests that are run across multiple cfgs with `// revisions:`. This commit extends that syntax to accept `//[X,Y]~`, which will match multiple cfgs to the same error annotation. This is functionally the same as writing two comments, `//[X]~` and `//[Y]~`, but can fit on a single line.
2019-11-20Rollup merge of #66060 - traxys:test_65401, r=michaelwoeristerMazdak Farrokhzad-4/+37
Making ICEs and test them in incremental This adds: - A way to make the compiler ICE - A way to check for ICE in `cfail` tests with `should-ice` - A regression test for issue #65401 I am not sure the attribute added `should-ice` is the best for this job
2019-11-15Move JSON emitter to rustc_errorsMark Rousskov-1/+1
2019-11-14Rollup merge of #66369 - tmiasko:compiletest-stamp, r=Mark-SimulacrumYuki Okushi-72/+90
compiletest: Obtain timestamps for common inputs only once Obtain timestamps for common inputs (e.g., libraries in run-lib path, or sources in `src/tool/compiletest/`) only once and reuse the result, instead of repeating the work for each test case.
2019-11-13compiletest: Avoid double negation in ignore conditionTomasz Miąsko-5/+6
2019-11-13compiletest: Obtain timestamps for common inputs only onceTomasz Miąsko-70/+87
Obtain timestamps for common inputs (e.g., libraries in run-lib path, or sources in `src/tool/compiletest/`) only once and reuse the result, instead of repeating the work for each test case. No functional changes intended.
2019-11-13Improve error message in make_testsPhilip Munksgaard-1/+1
We should use expect instead of unwrap. This commit is based on https://github.com/laumann/compiletest-rs/pull/58. Thanks to @colin-kiegel.
2019-11-12Compiletest bump to stage0 bootstrap libtestMark Rousskov-0/+2
2019-11-10Make error and warning annotations mandatory in UI testsTomasz Miąsko-2/+11
This change makes error and warning annotations mandatory in UI tests. The only exception are tests that use error patterns to match compiler output and don't have any annotations.
2019-11-08check for sould-ice either in compilefail or incremental cfailQuentin Boyer-0/+12
2019-11-07putting the failure_status code in header.rsQuentin Boyer-6/+4
2019-11-03tidyQuentin Boyer-1/+3
2019-11-03remove another status code check is should-iceQuentin Boyer-1/+6
2019-11-03add header to compiletest to check for iceQuentin Boyer-4/+20
2019-11-03Validate error patterns and error annotation in ui tests when presentTomasz Miąsko-8/+11
Previously, when compilation succeeded, neither error patterns nor error annotation would be validated. Additionally, when compilation failed, only error patterns would be validated if both error patterns and error annotation were present. Now both error patterns and error annotation are validated when present, regardless of compilation status. Furthermore, for test that should run, the error patterns are matched against executable output, which is what some of tests already expect to happen, and when #65506 is merged even more ui tests will.
2019-10-25Re-enable Emscripten's exception handling supportThomas Lively-4/+0
Passes LLVM codegen and Emscripten link-time flags for exception handling if and only if the panic strategy is `unwind`. Sets the default panic strategy for Emscripten targets to `unwind`. Re-enables tests that depend on unwinding support for Emscripten, including `should_panic` tests.
2019-10-16Upgrade Emscripten targets to use upstream LLVM backendThomas Lively-1/+4
- Compatible with Emscripten 1.38.46-upstream or later upstream. - Refactors the Emscripten target spec to share code with other wasm targets. - Replaces the old incorrect wasm32 C call ABI with the correct one, preserving the old one as wasm32_bindgen_compat for wasm-bindgen compatibility. - Updates the varargs ABI used by Emscripten and deletes the old one. - Removes the obsolete wasm32-experimental-emscripten target. - Uses EMCC_CFLAGS on CI to avoid the timeout problems with #63649.
2019-10-05Revert "Auto merge of #63649 - tlively:emscripten-upstream-upgrade, ↵Tyler Mandry-4/+1
r=alexcrichton" This reverts commit 7870050796e5904a0fc85ecbe6fa6dde1cfe0c91, reversing changes made to 2e7244807a7878f6eca3eb7d97ae9b413aa49014.
2019-10-04Fix ABI, run and fix more tests, re-enable CI for PRsThomas Lively-1/+4
2019-09-28Support run-fail ui testsTyler Mandry-4/+25
2019-09-26Upgrade env_logger to 0.7Mateusz Mikuła-1/+1
2019-09-23Add `#![deny(warnings)]` to internal toolsAlex Crichton-0/+1
2019-09-15use println!()Guanqun Lu-4/+4
2019-09-07run-pass tests shouldn't have unused contentsMark Rousskov-1/+10