|
120 | 120 | // RUN: | FileCheck -check-prefix=EMSCRIPTEN_EH_ALLOWED_WO_ENABLE %s
|
121 | 121 | // EMSCRIPTEN_EH_ALLOWED_WO_ENABLE: invalid argument '-mllvm -emscripten-cxx-exceptions-allowed' only allowed with '-mllvm -enable-emscripten-cxx-exceptions'
|
122 | 122 |
|
123 |
| -// '-fwasm-exceptions' sets +exception-handling and '-mllvm -wasm-enable-eh' |
| 123 | +// '-fwasm-exceptions' sets +exception-handling, -multivalue, -reference-types |
| 124 | +// and '-mllvm -wasm-enable-eh' |
124 | 125 | // RUN: %clang -### --target=wasm32-unknown-unknown \
|
125 | 126 | // RUN: --sysroot=/foo %s -fwasm-exceptions 2>&1 \
|
126 | 127 | // RUN: | FileCheck -check-prefix=WASM_EXCEPTIONS %s
|
127 |
| -// WASM_EXCEPTIONS: "-cc1" {{.*}} "-target-feature" "+exception-handling" "-mllvm" "-wasm-enable-eh" |
| 128 | +// WASM_EXCEPTIONS: "-cc1" {{.*}} "-target-feature" "+exception-handling" "-mllvm" "-wasm-enable-eh" "-target-feature" "+multivalue" "-target-feature" "+reference-types" |
128 | 129 |
|
129 | 130 | // '-fwasm-exceptions' not allowed with '-mno-exception-handling'
|
130 | 131 | // RUN: not %clang -### --target=wasm32-unknown-unknown \
|
131 | 132 | // RUN: --sysroot=/foo %s -fwasm-exceptions -mno-exception-handling 2>&1 \
|
132 | 133 | // RUN: | FileCheck -check-prefix=WASM_EXCEPTIONS_NO_EH %s
|
133 | 134 | // WASM_EXCEPTIONS_NO_EH: invalid argument '-fwasm-exceptions' not allowed with '-mno-exception-handling'
|
134 | 135 |
|
135 |
| -// '-fwasm-exceptions' not allowed with '-mllvm -enable-emscripten-cxx-exceptions' |
| 136 | +// '-fwasm-exceptions' not allowed with |
| 137 | +// '-mllvm -enable-emscripten-cxx-exceptions' |
136 | 138 | // RUN: not %clang -### --target=wasm32-unknown-unknown \
|
137 | 139 | // RUN: --sysroot=/foo %s -fwasm-exceptions \
|
138 | 140 | // RUN: -mllvm -enable-emscripten-cxx-exceptions 2>&1 \
|
139 | 141 | // RUN: | FileCheck -check-prefix=WASM_EXCEPTIONS_EMSCRIPTEN_EH %s
|
140 | 142 | // WASM_EXCEPTIONS_EMSCRIPTEN_EH: invalid argument '-fwasm-exceptions' not allowed with '-mllvm -enable-emscripten-cxx-exceptions'
|
141 | 143 |
|
142 |
| -// '-mllvm -wasm-enable-sjlj' sets +exception-handling and |
143 |
| -// '-exception-model=wasm' |
| 144 | +// '-fwasm-exceptions' not allowed with '-mno-multivalue' |
| 145 | +// RUN: not %clang -### --target=wasm32-unknown-unknown \ |
| 146 | +// RUN: --sysroot=/foo %s -fwasm-exceptions -mno-multivalue 2>&1 \ |
| 147 | +// RUN: | FileCheck -check-prefix=WASM_EXCEPTIONS_NO_MULTIVALUE %s |
| 148 | +// WASM_EXCEPTIONS_NO_MULTIVALUE: invalid argument '-fwasm-exceptions' not allowed with '-mno-multivalue' |
| 149 | + |
| 150 | +// '-fwasm-exceptions' not allowed with '-mno-reference-types' |
| 151 | +// RUN: not %clang -### --target=wasm32-unknown-unknown \ |
| 152 | +// RUN: --sysroot=/foo %s -fwasm-exceptions -mno-reference-types 2>&1 \ |
| 153 | +// RUN: | FileCheck -check-prefix=WASM_EXCEPTIONS_NO_REFERENCE_TYPES %s |
| 154 | +// WASM_EXCEPTIONS_NO_REFERENCE_TYPES: invalid argument '-fwasm-exceptions' not allowed with '-mno-reference-types' |
| 155 | + |
| 156 | +// '-mllvm -wasm-enable-sjlj' sets +exception-handling, +multivalue, |
| 157 | +// +reference-types and '-exception-model=wasm' |
144 | 158 | // RUN: %clang -### --target=wasm32-unknown-unknown \
|
145 | 159 | // RUN: --sysroot=/foo %s -mllvm -wasm-enable-sjlj 2>&1 \
|
146 | 160 | // RUN: | FileCheck -check-prefix=WASM_SJLJ %s
|
147 |
| -// WASM_SJLJ: "-cc1" {{.*}} "-target-feature" "+exception-handling" "-exception-model=wasm" |
| 161 | +// WASM_SJLJ: "-cc1" {{.*}} "-target-feature" "+exception-handling" "-exception-model=wasm" "-target-feature" "+multivalue" "-target-feature" "+reference-types" |
148 | 162 |
|
149 | 163 | // '-mllvm -wasm-enable-sjlj' not allowed with '-mno-exception-handling'
|
150 | 164 | // RUN: not %clang -### --target=wasm32-unknown-unknown \
|
|
168 | 182 | // RUN: | FileCheck -check-prefix=WASM_SJLJ_EMSCRIPTEN_SJLJ %s
|
169 | 183 | // WASM_SJLJ_EMSCRIPTEN_SJLJ: invalid argument '-mllvm -wasm-enable-sjlj' not allowed with '-mllvm -enable-emscripten-sjlj'
|
170 | 184 |
|
| 185 | +// '-mllvm -wasm-enable-sjlj' not allowed with '-mno-multivalue' |
| 186 | +// RUN: not %clang -### --target=wasm32-unknown-unknown \ |
| 187 | +// RUN: --sysroot=/foo %s -mllvm -wasm-enable-sjlj -mno-multivalue 2>&1 \ |
| 188 | +// RUN: | FileCheck -check-prefix=WASM_SJLJ_NO_MULTIVALUE %s |
| 189 | +// WASM_SJLJ_NO_MULTIVALUE: invalid argument '-mllvm -wasm-enable-sjlj' not allowed with '-mno-multivalue' |
| 190 | + |
| 191 | +// '-mllvm -wasm-enable-sjlj' not allowed with '-mno-reference-types' |
| 192 | +// RUN: not %clang -### --target=wasm32-unknown-unknown \ |
| 193 | +// RUN: --sysroot=/foo %s -mllvm -wasm-enable-sjlj \ |
| 194 | +// RUN: -mno-reference-types 2>&1 \ |
| 195 | +// RUN: | FileCheck -check-prefix=WASM_SJLJ_NO_REFERENCE_TYPES %s |
| 196 | +// WASM_SJLJ_NO_REFERENCE_TYPES: invalid argument '-mllvm -wasm-enable-sjlj' not allowed with '-mno-reference-types' |
| 197 | + |
171 | 198 | // RUN: %clang -### %s -fsanitize=address --target=wasm32-unknown-emscripten 2>&1 | FileCheck -check-prefix=CHECK-ASAN-EMSCRIPTEN %s
|
172 | 199 | // CHECK-ASAN-EMSCRIPTEN: "-fsanitize=address"
|
173 | 200 | // CHECK-ASAN-EMSCRIPTEN: "-fsanitize-address-globals-dead-stripping"
|
|
0 commit comments