about summary refs log tree commit diff
path: root/src/test/run-make/atomic-lock-free
AgeCommit message (Collapse)AuthorLines
2018-03-22rustc: Add a `#[wasm_custom_section]` attributeAlex Crichton-112/+0
This commit is an implementation of adding custom sections to wasm artifacts in rustc. The intention here is to expose the ability of the wasm binary format to contain custom sections with arbitrary user-defined data. Currently neither our version of LLVM nor LLD supports this so the implementation is currently custom to rustc itself. The implementation here is to attach a `#[wasm_custom_section = "foo"]` attribute to any `const` which has a type like `[u8; N]`. Other types of constants aren't supported yet but may be added one day! This should hopefully be enough to get off the ground with *some* custom section support. The current semantics are that any constant tagged with `#[wasm_custom_section]` section will be *appended* to the corresponding section in the final output wasm artifact (and this affects dependencies linked in as well, not just the final crate). This means that whatever is interpreting the contents must be able to interpret binary-concatenated sections (or each constant needs to be in its own custom section). To test this change the existing `run-make` test suite was moved to a `run-make-fulldeps` folder and a new `run-make` test suite was added which applies to all targets by default. This test suite currently only has one test which only runs for the wasm target (using a node.js script to use `WebAssembly` in JS to parse the wasm output).
2018-02-26test: Run atomic-lock-free on powerpc-linux-gnuspeJohn Paul Adrian Glaubitz-0/+2
2018-02-24test: Fix s390x-unknown-linux-gnu atomic-lock-free test not run for systemzJohn Paul Adrian Glaubitz-0/+2
2017-11-28Replace most call to grep in run-make by a script that cat the input.kennytm-12/+12
Introduced a new src/etc/cat-and-grep.sh script (called in run-make as $(CGREP)), which prints the input and do a grep simultaneously. This is mainly used to debug spurious failures in run-make, such as the sanitizer error in #45810, as well as real errors such as #46126.
2017-05-22fix `atomic_lock_free` test caseNiko Matsakis-0/+2
2017-02-06Revert "Add 128-bit atomics"Alex Crichton-9/+1
This reverts commit 9903975003276cc42a1ed5f21eee292b7c62c331.
2017-01-10Add 128-bit atomicsAmanieu d'Antras-1/+9
2016-09-11Auto merge of #36344 - sanxiyn:llvm-components, r=alexcrichtonbors-0/+10
Use LLVM_COMPONENTS to run tests just for supported targets This is already done for simd-ffi test, but not for atomic-lock-free test. Fix #35023.
2016-09-09Add s390x supportUlrich Weigand-0/+2
This adds support for building the Rust compiler and standard library for s390x-linux, allowing a full cross-bootstrap sequence to complete. This includes: - Makefile/configure changes to allow native s390x builds - Full Rust compiler support for the s390x C ABI (only the non-vector ABI is supported at this point) - Port of the standard library to s390x - Update the liblibc submodule to a version including s390x support - Testsuite fixes to allow clean "make check" on s390x Caveats: - Resets base cpu to "z10" to bring support in sync with the default behaviour of other compilers on the platforms. (Usually, upstream supports all older processors; a distribution build may then chose to require a more recent base version.) (Also, using zEC12 causes failures in the valgrind tests since valgrind doesn't fully support this CPU yet.) - z13 vector ABI is not yet supported. To ensure compatible code generation, the -vector feature is passed to LLVM. Note that this means that even when compiling for z13, no vector instructions will be used. In the future, support for the vector ABI should be added (this will require common code support for different ABIs that need different data_layout strings on the same platform). - Two test cases are (temporarily) ignored on s390x to allow passing the test suite. The underlying issues still need to be fixed: * debuginfo/simd.rs fails because of incorrect debug information. This seems to be a LLVM bug (also seen with C code). * run-pass/union/union-basic.rs simply seems to be incorrect for all big-endian platforms. Signed-off-by: Ulrich Weigand <ulrich.weigand@de.ibm.com>
2016-09-08Use LLVM_COMPONENTS to run tests just for supported targetsSeo Sanghyeon-0/+10
2016-06-04fix fallout in testsAriel Ben-Yehuda-0/+2
2016-05-09Add test to ensure that atomic types are lock-freeAmanieu d'Antras-0/+92