about summary refs log tree commit diff
path: root/src/test/run-make/simd-ffi/simd.rs
AgeCommit message (Collapse)AuthorLines
2018-03-22rustc: Add a `#[wasm_custom_section]` attributeAlex Crichton-83/+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-01-13Adjust tests for removal of `impl Foo for .. {}`leonardo.yvens-3/+1
2017-11-03auto trait future compatibility lintleonardo.yvens-0/+1
2017-04-21Update #[no_core] users with the "freeze" lang item.Eduard-Mihai Burtescu-1/+5
2015-12-23Simply two cfg attributesMichael McConville-2/+2
2015-08-17Fix existing tests for new `#[repr(simd)]`.Huon Wilson-3/+3
2015-08-03syntax: Implement #![no_core]Alex Crichton-6/+4
This commit is an implementation of [RFC 1184][rfc] which tweaks the behavior of the `#![no_std]` attribute and adds a new `#![no_core]` attribute. The `#![no_std]` attribute now injects `extern crate core` at the top of the crate as well as the libcore prelude into all modules (in the same manner as the standard library's prelude). The `#![no_core]` attribute disables both std and core injection. [rfc]: https://github.com/rust-lang/rfcs/pull/1184
2015-04-02Fallout in testsNiko Matsakis-6/+2
2015-03-06file permission: remove executable bit from *.rsLai Jiangshan-0/+0
Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
2015-02-18Fallout: tests. As tests frequently elide things, lots of changesNiko Matsakis-2/+6
here. Some of this may have been poorly rebased, though I tried to be careful and preserve the spirit of the test.
2015-02-07Feature-gate #![no_std]Keegan McAllister-0/+1
Fixes #21833. [breaking-change]
2015-02-07Don't use std:: paths in syntax extensions when compiling a #![no_std] crateKeegan McAllister-1/+1
Fixes #16803. Fixes #14342. Fixes half of #21827 -- slice syntax is still broken.
2015-01-17Feature gate SIMD in FFI, due to unknown ABIs.Huon Wilson-1/+1
I don't know if this handling of SIMD types is correct for the C ABI on all platforms, so lets add an even finer feature gate than just the `simd` one. The `simd` one can be used with (relatively) little risk of complete nonsense, the reason for it is that it is likely that things will change. Using the types in FFI with an incorrect ABI will at best give absolute nonsense results, but possibly cause serious breakage too, so this is a step up in badness, hence a new feature gate.
2015-01-17Add comprehensive test for no-ICE behaviour of SIMD FFI.Huon Wilson-0/+81
This just compiles a test using SIMD in FFI (mostly importing LLVM intrinsics) for almost all rustc's supported platforms, but not linking it or running it, so there's absolutely no guarantee that this is correct.