about summary refs log tree commit diff
path: root/src/tools/compiletest
AgeCommit message (Collapse)AuthorLines
2019-04-03rustfix coverage: Skip UI tests with non-json error-formatPhilipp Hansch-2/+5
When using the `rustfix-coverage` flag, some tests currently fail because they define a different error-format than `json`. The current implementation crashes when encountering those tests. Since we don't care about non-json test output when collecting the coverage data, we handle those tests by returning an empty `Vec` instead.
2019-03-28Rollup merge of #59408 - euclio:compiletest-normalization, r=oli-obkMazdak Farrokhzad-5/+98
compiletest: make path normalization smarter Fixes #59109.
2019-03-28Rollup merge of #59398 - phansch:rustfix_coverage, r=oli-obkMazdak Farrokhzad-1/+51
Add a way to track Rustfix UI test coverage This came out of the first Rustfix WG meeting. One of the goals is to enable Rustfix tests for all UI tests that trigger lints with `MachineApplicable` suggestions. In order to do that we first want to create a tracking issue that lists all files with missing `// run-rustfix` headers. This PR adds a `--rustfix-coverage` flag to `./x.py` and compiletest to list the files with the missing headers in `/tmp/rustfix_missing_coverage.txt`. From that file we can create the tracking issue and at some point also enforce the `// run-rustfix` flag on UI tests with `MachineApplicable` lints.
2019-03-26Improve some compiletest documentationPhilipp Hansch-3/+20
This adds some missing documentation for rustfix related things and adds a test for the `is_test` function.
2019-03-25Save coverage file in build_base path, not /tmpPhilipp Hansch-6/+10
2019-03-25s/lints/diagnosticsPhilipp Hansch-2/+2
Not all suggestions come from lints
2019-03-25compiletest: make path normalization smarterAndy Russell-5/+98
2019-03-24Add a way to track Rustfix UI test coveragePhilipp Hansch-1/+47
This came out of the first Rustfix WG meeting. One of the goals is to enable Rustfix tests for all UI tests that trigger lints with `MachineApplicable` suggestions. In order to do that we first want to create a tracking issue that lists all files with missing `// run-rustfix` headers. This PR adds a `--rustfix-coverage` flag to `./x.py` and compiletest to list the files with the missing headers in `/tmp/rustfix_missing_coverage.txt`. From that file we can create the tracking issue and at some point also enforce the `// run-rustfix` flag on UI tests with `MachineApplicable` lints.
2019-03-20Auto merge of #58791 - denzp:asm-compile-tests, r=alexcrichtonbors-9/+68
Introduce assembly tests suite The change introduces a new test suite - **Assembly** tests. The motivation behind this is an ability to perform end-to-end codegen testing with LLVM backend. Turned out, NVPTX backend sometimes missing common Rust features (`i128` and libcalls in the past, and still full atomics support) due to different reasons. Prior to this change, basic NVPTX assembly tests were implemented within `run-make` suite. Now, it's easier to write additional and maintain existing tests for the target. cc @gnzlbg @peterhj cc @eddyb I adjusted mangling scheme expectation, so there is no need to change the tests for #57967
2019-03-17Auto merge of #59250 - bovinebuddha:filter_ui_revision_tests, r=petrochenkovbors-1/+1
Filter ui revision tests Updates UI test output filtering to also filter away test annotations for revisions: Previously filtered: //~ ERROR [XXXX] Now also filters: //[revision]~ ERROR [XXXX] I reckon, if we have the one, we should have the other for consistency, its lack was probably an oversight (the existence of revision testing is not really well documented...)
2019-03-17compiletest: Filter test annotations from UI test output for revision testsMathias Blikstad-1/+1
2019-03-16Merge remote-tracking branch 'upstream/master' into asm-compile-testsDenys Zariaiev-0/+8
2019-03-16Rollup merge of #58941 - wzssyqa:master, r=alexcrichtonkennytm-0/+8
MIPS: add r6 support MIPS r6 is quite different with the previous version. It use some new target triples: mipsisa32r6-unknown-linux-gnu mipsisa32r6el-unknown-linux-gnu mipsisa64r6-unknown-linux-gnuabi64 mipsisa64r6el-unknown-linux-gnuabi64 This patch has been tested with Debian Port for mips64r6el, and the support of these triples also is included in llvm: https://reviews.llvm.org/rGe58c45a695f39004710b6ce940d489fee800dbd3
2019-03-13Merge remote-tracking branch 'upstream/master' into asm-compile-testsDenys Zariaiev-3/+36
2019-03-12Auto merge of #58330 - GuillaumeGomez:rustdoc-js-non-std, ↵bors-3/+30
r=QuietMisdreavus,Mark-Simulacrum Add rustdoc JS non-std tests @QuietMisdreavus: You asked it, here it is! r? @QuietMisdreavus
2019-03-11compiletest: Filter away test annotations from UI test outputVadim Petrochenkov-0/+6
2019-03-06Improve codeGuillaume Gomez-1/+4
2019-03-05MIPS: add r6 supportYunQiang Su-0/+8
MIPS r6 is quite different with the previous version. It use some new target triples: mipsisa32r6-unknown-linux-gnu mipsisa32r6el-unknown-linux-gnu mipsisa64r6-unknown-linux-gnuabi64 mipsisa64r6el-unknown-linux-gnuabi64 This patch has been tested with Debian Port for mips64r6el, and the support of these triples also is included in llvm: https://reviews.llvm.org/rGe58c45a695f39004710b6ce940d489fee800dbd3
2019-02-28Move rustdoc-js testing into compiletestGuillaume Gomez-4/+28
2019-02-27Introduce assembly testsDenys Zariaiev-9/+68
2019-02-12Auto merge of #58341 - alexreg:cosmetic-2-doc-comments, r=steveklabnikbors-26/+26
Cosmetic improvements to doc comments This has been factored out from https://github.com/rust-lang/rust/pull/58036 to only include changes to documentation comments (throughout the rustc codebase). r? @steveklabnik Once you're happy with this, maybe we could get it through with r=1, so it doesn't constantly get invalidated? (I'm not sure this will be an issue, but just in case...) Anyway, thanks for your advice so far!
2019-02-11use ignore directives for run-make testsAndy Russell-0/+9
This makes the tests easier to read, and makes it possible to tell which tests aren't being run on the host platform. Fixes #56704.
2019-02-10tools: doc commentsAlexander Regueiro-26/+26
2019-02-04Transition compiletest to Rust 2018Philipp Hansch-47/+39
2019-01-31Auto merge of #57514 - michaelwoerister:xlto-tests, r=alexcrichtonbors-0/+24
compiletest: Support opt-in Clang-based run-make tests and use them for testing xLTO. Some cross-language run-make tests need a Clang compiler that matches the LLVM version of `rustc`. Since such a compiler usually isn't available these tests (marked with the `needs-matching-clang` directive) are ignored by default. For some CI jobs we do need these tests to run unconditionally though. In order to support this a `--force-clang-based-tests` flag is added to compiletest. If this flag is specified, `compiletest` will fail if it can't detect an appropriate version of Clang. @rust-lang/infra The PR doesn't yet enable the tests yet. Do you have any recommendation for which jobs to enable them? cc #57438 r? @alexcrichton
2019-01-28Use multiple threads by default. Limits tests to one thread. Do some renaming.John Kåre Alsaker-0/+3
2019-01-27Auto merge of #57871 - Mark-Simulacrum:fix-compiletest-stamp, r=oli-obkbors-20/+37
Correctly set filetime for copied LLVM This also makes compiletest no longer always retest everything. Fixes #57864
2019-01-25Correctly set filetime for copied LLVMMark Rousskov-20/+37
This also makes compiletest no longer always retest everything.
2019-01-24Support revisions for codegen testsSimonas Kazlauskas-15/+59
`compile-flags: -Copt-level` will avoid adding -O. Similarly for -g and -Cdebuglevel.
2019-01-17compiletest: Simplify handling of Clang-based tests.Michael Woerister-90/+14
2019-01-17compiletest: Support opt-in Clang-based run-make tests.Michael Woerister-1/+101
Some cross-language run-make tests need a Clang compiler that matches the LLVM version of rustc. Since such a compiler usually isn't available these tests (marked with the "needs-matching-clang" directive) are ignored by default. For some CI jobs we do need these tests to run unconditionally though. In order to support this a --force-clang-based-tests flag is added to compiletest. If this flag is specified, compiletest will fail if it can't detect an appropriate version of Clang.
2019-01-06slightly optimize compiletest test collectionAndy Russell-34/+27
Save quite a few syscalls and avoiding pushing in a loop.
2019-01-03Fix repeated word typosWiktor Kuchta-1/+1
Found with `git grep -P '\b([a-z]+)\s+\1\b'`
2018-12-25Remove licensesMark Rousskov-88/+0
2018-12-25Auto merge of #56962 - nivkner:fixme_fixup4, r=pnkfelixbors-18/+18
address some FIXME whose associated issues were marked as closed part of #44366
2018-12-22Auto merge of #57063 - kennytm:rollup, r=kennytmbors-10/+10
Rollup of 25 pull requests Successful merges: - #56802 (Add DoubleEndedIterator::nth_back) - #56909 (static eval: Do not ICE on layout size overflow) - #56914 (Ignore ui/target-feature-gate on sparc, sparc64, powerpc, powerpc64 and powerpc64le) - #56919 (Remove a wrong multiplier on relocation offset computation) - #56933 (Add --progress to git submodule commands in x.py) - #56936 (rename div_euc -> div_euclid, and mod_euc -> rem_euclid) - #56941 (deny intra-doc link resolution failures in libstd) - #56945 (Fix rustdoc-js tests) - #56967 (Replace current crate's searchIndex when regenerating) - #56970 (Mem uninit doc ptr drop) - #56973 (make basic CTFE tracing available on release builds) - #56979 (Adding unwinding support for x86_64_fortanix_unknown_sgx target.) - #56981 (miri: allocation is infallible) - #56984 (A few tweaks to dropck_outlives) - #56989 (Fix compiletest `trim` deprecation warnings) - #56992 (suggest similar lint names for unknown lints) - #57002 (Stabilize Vec(Deque)::resize_with) - #57011 (rustdoc: add new CLI flag to load static files from a different location) - #57027 (Optimize away a move) - #57034 (Inline tweaks) - #57039 (Update migrate warning wording.) - #57040 (Fix feature gate to point to 1.32.0 for `path_from_str`) - #57049 (Stabilize #[repr(packed(N))]) - #57050 (Fixed typo in HashMap documentation) - #57052 (Fix stabilization version numbers (exhaustive_integer_patterns + macro_literal_matcher))
2018-12-23Rollup merge of #56989 - phansch:fix_compiletest_trim_deprecations, ↵kennytm-10/+10
r=Mark-Simulacrum Fix compiletest `trim` deprecation warnings None
2018-12-22Auto merge of #56680 - vakaras:issue56280, r=nagisabors-10/+16
Use compiletest timestamp to check if the tests should be rerun. An attempt to fix #56280 by checking if timestamps of compile test files are older than the timestamp of the stamp file. ?r nagisa
2018-12-19FIXME(9639) remove fixme and accept non-utf8 paths in compiletestNiv Kaminer-18/+18
2018-12-19Fix compiletest `trim` deprecation warningsPhilipp Hansch-10/+10
2018-12-19Rollup merge of #56947 - hsivonen:neon, r=alexcrichtonPietro Albini-1/+4
Add targets thumbv7neon-linux-androideabi and thumbv7neon-unknown-linux-gnueabihf These two targets enable both thumb-mode and NEON for ARMv7 CPUs. This another attempt at #49902, which cannot be reopened. Between that PR and this one, some subrepos with C code whose build systems were failing went away.
2018-12-17Address the pull request review comments.Vytautas Astrauskas-14/+12
2018-12-17Use compiletest timestamp to check if the tests should be rerun.Vytautas Astrauskas-10/+18
2018-12-15compiletest: unit test parse_normalization_stringPhilipp Hansch-0/+26
There is a FIXME inside that function and I think the unit tests can be helpful to resolve it without breaking anything else.
2018-12-15compiletest: Add some compiletest::util unittestsPhilipp Hansch-0/+28
2018-12-13Add targets thumbv7neon-linux-androideabi and ↵Henri Sivonen-1/+4
thumbv7neon-unknown-linux-gnueabihf These two targets enable both thumb-mode and NEON for ARMv7 CPUs.
2018-12-12Bump to 1.33.0Alex Crichton-1/+5
* Update bootstrap compiler * Update version to 1.33.0 * Remove some `#[cfg(stage0)]` annotations Actually updating the version number is blocked on updating Cargo
2018-12-08Auto merge of #56578 - alexreg:cosmetic-1, r=alexregbors-2/+2
Various minor/cosmetic improvements to code r? @Centril 😄
2018-12-07Various minor/cosmetic improvements to codeAlexander Regueiro-2/+2
2018-12-07use top level `fs` functions where appropriateAndy Russell-56/+22
This commit replaces many usages of `File::open` and reading or writing with `fs::read_to_string`, `fs::read` and `fs::write`. This reduces code complexity, and will improve performance for most reads, since the functions allocate the buffer to be the size of the file. I believe that this commit will not impact behavior in any way, so some matches will check the error kind in case the file was not valid UTF-8. Some of these cases may not actually care about the error.