|
1 | 1 | ; RUN: llvm-as %s -o %t.bc |
2 | | -; RUN: llvm-spirv %t.bc --spirv-ext=+SPV_INTEL_optnone -spirv-text -o - | FileCheck %s --check-prefix=CHECK-SPIRV |
| 2 | +; RUN: llvm-spirv %t.bc --spirv-ext=+SPV_EXT_optnone -spirv-text -o - | FileCheck %s --check-prefix=CHECK-SPIRV-EXT |
| 3 | +; RUN: llvm-spirv %t.bc --spirv-ext=+SPV_INTEL_optnone -spirv-text -o - | FileCheck %s --check-prefix=CHECK-SPIRV-INTEL |
| 4 | +; RUN: llvm-spirv %t.bc --spirv-ext=+SPV_EXT_optnone,+SPV_INTEL_optnone -spirv-text -o - | FileCheck %s --check-prefix=CHECK-SPIRV-BOTH |
3 | 5 |
|
4 | | -; RUN: llvm-spirv --spirv-ext=+SPV_INTEL_optnone %t.bc -o %t.spv |
| 6 | + |
| 7 | +; RUN: llvm-spirv --spirv-ext=+SPV_EXT_optnone %t.bc -o %t.spv |
5 | 8 | ; RUN: llvm-spirv -r %t.spv -o %t.rev.bc |
6 | 9 | ; RUN: llvm-dis < %t.rev.bc | FileCheck %s --check-prefix=CHECK-LLVM |
7 | 10 |
|
8 | 11 | ; Check that optnone is correctly ignored when extension is not enabled |
9 | | -; RUN: llvm-spirv %t.bc -spirv-text -o - | FileCheck %s --check-prefix=CHECK-SPIRV-NO-EXT |
| 12 | +; RUN: llvm-spirv %t.bc -spirv-text -o - | FileCheck %s --check-prefix=CHECK-SPIRV-NONE |
10 | 13 |
|
11 | 14 | ; RUN: llvm-spirv %t.bc -o %t.spv |
12 | 15 | ; RUN: llvm-spirv -r %t.spv -o %t.rev.bc |
13 | | -; RUN: llvm-dis < %t.rev.bc | FileCheck %s --check-prefix=CHECK-LLVM-NO-EXT |
| 16 | +; RUN: llvm-dis < %t.rev.bc | FileCheck %s --check-prefix=CHECK-LLVM-NONE |
| 17 | + |
| 18 | +; Note: The capability is unconditionally printed with the EXT suffix. |
| 19 | +; CHECK-SPIRV-EXT: Capability OptNoneEXT |
| 20 | +; CHECK-SPIRV-INTEL: Capability OptNoneEXT |
| 21 | +; CHECK-SPIRV-BOTH: Capability OptNoneEXT |
14 | 22 |
|
15 | | -; CHECK-SPIRV: Capability OptNoneINTEL |
16 | | -; CHECK-SPIRV: Extension "SPV_INTEL_optnone" |
| 23 | +; CHECK-SPIRV-EXT: Extension "SPV_EXT_optnone" |
| 24 | +; CHECK-SPIRV-INTEL: Extension "SPV_INTEL_optnone" |
| 25 | +; Note: When both extensions are enabled, prefer the EXT extension. |
| 26 | +; CHECK-SPIRV-BOTH: Extension "SPV_EXT_optnone" |
17 | 27 |
|
18 | 28 | ; Per SPIR-V spec: |
19 | 29 | ; FunctionControlDontInlineMask = 0x2 (2) |
20 | | -; Per SPIR-V spec extension SPV_INTEL_optnone: |
21 | | -; FunctionControlOptNoneINTELMask = 0x10000 (65536) |
22 | | -; CHECK-SPIRV: Function {{[0-9]+}} {{[0-9]+}} 65538 |
23 | | -; CHECK-SPIRV-NO-EXT: Function {{[0-9]+}} {{[0-9]+}} 2 |
| 30 | +; Per SPIR-V spec extension spec: |
| 31 | +; FunctionControlOptNoneMask = 0x10000 (65536) |
| 32 | +; CHECK-SPIRV-EXT: Function {{[0-9]+}} {{[0-9]+}} 65538 |
| 33 | +; CHECK-SPIRV-INTEL: Function {{[0-9]+}} {{[0-9]+}} 65538 |
| 34 | +; CHECK-SPIRV-BOTH: Function {{[0-9]+}} {{[0-9]+}} 65538 |
| 35 | +; CHECK-SPIRV-NONE: Function {{[0-9]+}} {{[0-9]+}} 2 |
24 | 36 |
|
25 | 37 | ; CHECK-LLVM: define spir_func void @_Z3foov() #[[ATTR:[0-9]+]] |
26 | 38 | ; CHECK-LLVM: #[[ATTR]] = { {{.*}}noinline{{.*}}optnone{{.*}} } |
27 | 39 |
|
28 | | -; CHECK-LLVM-NO-EXT: define spir_func void @_Z3foov() #[[ATTR:[0-9]+]] |
29 | | -; CHECK-LLVM-NO-EXT-NOT: #[[ATTR]] = { {{.*}}noinline{{.*}}optnone{{.*}} } |
| 40 | +; CHECK-LLVM-NONE: define spir_func void @_Z3foov() #[[ATTR:[0-9]+]] |
| 41 | +; CHECK-LLVM-NONE-NOT: #[[ATTR]] = { {{.*}}noinline{{.*}}optnone{{.*}} } |
30 | 42 |
|
31 | 43 | target datalayout = "e-p:32:32-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024" |
32 | 44 | target triple = "spir-unknown-unknown" |
|
0 commit comments