diff options
Diffstat (limited to 'test/Preprocessor/wasm-target-features.c')
-rw-r--r-- | test/Preprocessor/wasm-target-features.c | 93 |
1 files changed, 84 insertions, 9 deletions
diff --git a/test/Preprocessor/wasm-target-features.c b/test/Preprocessor/wasm-target-features.c index 92aaefd73c..2bf94398a1 100644 --- a/test/Preprocessor/wasm-target-features.c +++ b/test/Preprocessor/wasm-target-features.c @@ -6,7 +6,7 @@ // RUN: | FileCheck %s -check-prefix=SIMD128 // // SIMD128:#define __wasm_simd128__ 1{{$}} -// + // RUN: %clang -E -dM %s -o - 2>&1 \ // RUN: -target wasm32-unknown-unknown -munimplemented-simd128 \ // RUN: | FileCheck %s -check-prefix=SIMD128-UNIMPLEMENTED @@ -15,7 +15,70 @@ // RUN: | FileCheck %s -check-prefix=SIMD128-UNIMPLEMENTED // // SIMD128-UNIMPLEMENTED:#define __wasm_unimplemented_simd128__ 1{{$}} + +// RUN: %clang -E -dM %s -o - 2>&1 \ +// RUN: -target wasm32-unknown-unknown -mnontrapping-fptoint \ +// RUN: | FileCheck %s -check-prefix=NONTRAPPING-FPTOINT +// RUN: %clang -E -dM %s -o - 2>&1 \ +// RUN: -target wasm64-unknown-unknown -mnontrapping-fptoint \ +// RUN: | FileCheck %s -check-prefix=NONTRAPPING-FPTOINT +// +// NONTRAPPING-FPTOINT:#define __wasm_nontrapping_fptoint__ 1{{$}} + +// RUN: %clang -E -dM %s -o - 2>&1 \ +// RUN: -target wasm32-unknown-unknown -msign-ext \ +// RUN: | FileCheck %s -check-prefix=SIGN-EXT +// RUN: %clang -E -dM %s -o - 2>&1 \ +// RUN: -target wasm64-unknown-unknown -msign-ext \ +// RUN: | FileCheck %s -check-prefix=SIGN-EXT +// +// SIGN-EXT:#define __wasm_sign_ext__ 1{{$}} + +// RUN: %clang -E -dM %s -o - 2>&1 \ +// RUN: -target wasm32-unknown-unknown -mexception-handling \ +// RUN: | FileCheck %s -check-prefix=EXCEPTION-HANDLING +// RUN: %clang -E -dM %s -o - 2>&1 \ +// RUN: -target wasm64-unknown-unknown -mexception-handling \ +// RUN: | FileCheck %s -check-prefix=EXCEPTION-HANDLING +// +// EXCEPTION-HANDLING:#define __wasm_exception_handling__ 1{{$}} + +// RUN: %clang -E -dM %s -o - 2>&1 \ +// RUN: -target wasm32-unknown-unknown -mbulk-memory \ +// RUN: | FileCheck %s -check-prefix=BULK-MEMORY +// RUN: %clang -E -dM %s -o - 2>&1 \ +// RUN: -target wasm64-unknown-unknown -mbulk-memory \ +// RUN: | FileCheck %s -check-prefix=BULK-MEMORY // +// BULK-MEMORY:#define __wasm_bulk_memory__ 1{{$}} + +// RUN: %clang -E -dM %s -o - 2>&1 \ +// RUN: -target wasm32-unknown-unknown -matomics \ +// RUN: | FileCheck %s -check-prefix=ATOMICS +// RUN: %clang -E -dM %s -o - 2>&1 \ +// RUN: -target wasm64-unknown-unknown -matomics \ +// RUN: | FileCheck %s -check-prefix=ATOMICS +// +// ATOMICS:#define __wasm_atomics__ 1{{$}} + +// RUN: %clang -E -dM %s -o - 2>&1 \ +// RUN: -target wasm32-unknown-unknown -pthread \ +// RUN: | FileCheck %s -check-prefix=PTHREAD +// RUN: %clang -E -dM %s -o - 2>&1 \ +// RUN: -target wasm64-unknown-unknown -pthread \ +// RUN: | FileCheck %s -check-prefix=PTHREAD +// +// PTHREAD:#define __wasm_atomics__ 1{{$}} + +// RUN: %clang -E -dM %s -o - 2>&1 \ +// RUN: -target wasm32-unknown-unknown -mmutable-globals \ +// RUN: | FileCheck %s -check-prefix=MUTABLE-GLOBALS +// RUN: %clang -E -dM %s -o - 2>&1 \ +// RUN: -target wasm64-unknown-unknown -mmutable-globals \ +// RUN: | FileCheck %s -check-prefix=MUTABLE-GLOBALS +// +// MUTABLE-GLOBALS:#define __wasm_mutable_globals__ 1{{$}} + // RUN: %clang -E -dM %s -o - 2>&1 \ // RUN: -target wasm32-unknown-unknown -mcpu=mvp \ // RUN: | FileCheck %s -check-prefix=MVP @@ -24,21 +87,33 @@ // RUN: | FileCheck %s -check-prefix=MVP // // MVP-NOT:#define __wasm_simd128__ -// +// MVP-NOT:#define __wasm_unimplemented_simd128__ +// MVP-NOT:#define __wasm_nontrapping_fptoint__ +// MVP-NOT:#define __wasm_sign_ext__ +// MVP-NOT:#define __wasm_exception_handling__ +// MVP-NOT:#define __wasm_bulk_memory__ +// MVP-NOT:#define __wasm_atomics__ +// MVP-NOT:#define __wasm_mutable_globals__ + // RUN: %clang -E -dM %s -o - 2>&1 \ // RUN: -target wasm32-unknown-unknown -mcpu=bleeding-edge \ -// RUN: | FileCheck %s -check-prefix=BLEEDING_EDGE +// RUN: | FileCheck %s -check-prefix=BLEEDING-EDGE // RUN: %clang -E -dM %s -o - 2>&1 \ // RUN: -target wasm64-unknown-unknown -mcpu=bleeding-edge \ -// RUN: | FileCheck %s -check-prefix=BLEEDING_EDGE -// -// BLEEDING_EDGE:#define __wasm_simd128__ 1{{$}} +// RUN: | FileCheck %s -check-prefix=BLEEDING-EDGE // +// BLEEDING-EDGE-DAG:#define __wasm_nontrapping_fptoint__ 1{{$}} +// BLEEDING-EDGE-DAG:#define __wasm_sign_ext__ 1{{$}} +// BLEEDING-EDGE-DAG:#define __wasm_simd128__ 1{{$}} +// BLEEDING-EDGE-DAG:#define __wasm_atomics__ 1{{$}} +// BLEEDING-EDGE-DAG:#define __wasm_mutable_globals__ 1{{$}} +// BLEEDING-EDGE-NOT:#define __wasm_unimplemented_simd128__ 1{{$}} + // RUN: %clang -E -dM %s -o - 2>&1 \ // RUN: -target wasm32-unknown-unknown -mcpu=bleeding-edge -mno-simd128 \ -// RUN: | FileCheck %s -check-prefix=BLEEDING_EDGE_NO_SIMD128 +// RUN: | FileCheck %s -check-prefix=BLEEDING-EDGE-NO-SIMD128 // RUN: %clang -E -dM %s -o - 2>&1 \ // RUN: -target wasm64-unknown-unknown -mcpu=bleeding-edge -mno-simd128 \ -// RUN: | FileCheck %s -check-prefix=BLEEDING_EDGE_NO_SIMD128 +// RUN: | FileCheck %s -check-prefix=BLEEDING-EDGE-NO-SIMD128 // -// BLEEDING_EDGE_NO_SIMD128-NOT:#define __wasm_simd128__ +// BLEEDING-EDGE-NO-SIMD128-NOT:#define __wasm_simd128__ |