2023-01-23 13:15:53 +00:00
|
|
|
// ignore-tidy-linelength
|
|
|
|
// revisions: ENABLE_SVE DISABLE_SVE DISABLE_NEON ENABLE_NEON
|
|
|
|
// compile-flags: --crate-type=rlib --target=aarch64-unknown-linux-gnu
|
|
|
|
// needs-llvm-components: aarch64
|
|
|
|
|
2023-01-25 16:05:24 +00:00
|
|
|
// The "+v8a" feature is matched as optional as it isn't added when we
|
|
|
|
// are targeting older LLVM versions. Once the min supported version
|
|
|
|
// is LLVM-14 we can remove the regex matching for this feature.
|
|
|
|
|
2023-01-23 13:15:53 +00:00
|
|
|
// [ENABLE_SVE] compile-flags: -C target-feature=+sve
|
2023-01-25 16:05:24 +00:00
|
|
|
// ENABLE_SVE: attributes #0 = { {{.*}} "target-features"="+outline-atomics,+sve,+neon{{(,\+v8a)?}}" }
|
2023-01-23 13:15:53 +00:00
|
|
|
|
|
|
|
// [DISABLE_SVE] compile-flags: -C target-feature=-sve
|
2023-01-25 16:05:24 +00:00
|
|
|
// DISABLE_SVE: attributes #0 = { {{.*}} "target-features"="+outline-atomics,-sve{{(,\+v8a)?}}" }
|
2023-01-23 13:15:53 +00:00
|
|
|
|
|
|
|
// [DISABLE_NEON] compile-flags: -C target-feature=-neon
|
2023-01-25 16:05:24 +00:00
|
|
|
// DISABLE_NEON: attributes #0 = { {{.*}} "target-features"="+outline-atomics,-neon,-fp-armv8{{(,\+v8a)?}}" }
|
2023-01-23 13:15:53 +00:00
|
|
|
|
|
|
|
// [ENABLE_NEON] compile-flags: -C target-feature=+neon
|
2023-01-25 16:05:24 +00:00
|
|
|
// ENABLE_NEON: attributes #0 = { {{.*}} "target-features"="+outline-atomics,+neon,+fp-armv8{{(,\+v8a)?}}" }
|
2023-01-23 13:15:53 +00:00
|
|
|
|
|
|
|
|
|
|
|
#![feature(no_core, lang_items)]
|
|
|
|
#![no_core]
|
|
|
|
|
|
|
|
#[lang = "sized"]
|
|
|
|
trait Sized {}
|
|
|
|
|
|
|
|
pub fn test() {}
|