Krzysztof Parzyszek | 7f0756c | 2016-04-18 18:38:11 +0000 | [diff] [blame] | 1 | // RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv5 %s | FileCheck %s -check-prefix CHECK-V5 |
Krzysztof Parzyszek | 7f0756c | 2016-04-18 18:38:11 +0000 | [diff] [blame] | 2 | // CHECK-V5: #define __HEXAGON_ARCH__ 5 |
| 3 | // CHECK-V5: #define __HEXAGON_V5__ 1 |
Sumanth Gundapaneni | 57098f5 | 2017-10-18 18:10:13 +0000 | [diff] [blame] | 4 | // CHECK-V5-NOT: #define __HVX_LENGTH__ |
| 5 | // CHECK-V5-NOT: #define __HVX__ 1 |
Krzysztof Parzyszek | 7f0756c | 2016-04-18 18:38:11 +0000 | [diff] [blame] | 6 | // CHECK-V5: #define __hexagon__ 1 |
| 7 | |
Krzysztof Parzyszek | a58ff51 | 2016-04-21 14:30:04 +0000 | [diff] [blame] | 8 | // RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv55 %s | FileCheck %s -check-prefix CHECK-V55 |
Krzysztof Parzyszek | a58ff51 | 2016-04-21 14:30:04 +0000 | [diff] [blame] | 9 | // CHECK-V55: #define __HEXAGON_ARCH__ 55 |
| 10 | // CHECK-V55: #define __HEXAGON_V55__ 1 |
Sumanth Gundapaneni | 57098f5 | 2017-10-18 18:10:13 +0000 | [diff] [blame] | 11 | // CHECK-V55-NOT: #define __HVX_LENGTH__ |
| 12 | // CHECK-V55-NOT: #define __HVX__ 1 |
Krzysztof Parzyszek | a58ff51 | 2016-04-21 14:30:04 +0000 | [diff] [blame] | 13 | // CHECK-V55: #define __hexagon__ 1 |
| 14 | |
Krzysztof Parzyszek | 7f0756c | 2016-04-18 18:38:11 +0000 | [diff] [blame] | 15 | // RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv60 %s | FileCheck %s -check-prefix CHECK-V60 |
Krzysztof Parzyszek | 7f0756c | 2016-04-18 18:38:11 +0000 | [diff] [blame] | 16 | // CHECK-V60: #define __HEXAGON_ARCH__ 60 |
| 17 | // CHECK-V60: #define __HEXAGON_V60__ 1 |
Sumanth Gundapaneni | 57098f5 | 2017-10-18 18:10:13 +0000 | [diff] [blame] | 18 | // CHECK-V60-NOT: #define __HVX_LENGTH__ |
| 19 | // CHECK-V60-NOT: #define __HVX__ 1 |
Krzysztof Parzyszek | 7f0756c | 2016-04-18 18:38:11 +0000 | [diff] [blame] | 20 | // CHECK-V60: #define __hexagon__ 1 |
| 21 | |
Krzysztof Parzyszek | cc5cd2c | 2017-12-13 13:48:07 +0000 | [diff] [blame] | 22 | // RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv62 %s | FileCheck %s -check-prefix CHECK-V62 |
| 23 | // CHECK-V62: #define __HEXAGON_ARCH__ 62 |
| 24 | // CHECK-V62: #define __HEXAGON_V62__ 1 |
| 25 | // CHECK-V62-NOT: #define __HVX_LENGTH__ |
| 26 | // CHECK-V62-NOT: #define __HVX__ 1 |
| 27 | // CHECK-V62: #define __hexagon__ 1 |
| 28 | |
| 29 | // RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv65 %s | FileCheck %s -check-prefix CHECK-V65 |
| 30 | // CHECK-V65: #define __HEXAGON_ARCH__ 65 |
| 31 | // CHECK-V65: #define __HEXAGON_V65__ 1 |
| 32 | // CHECK-V65-NOT: #define __HVX_LENGTH__ |
| 33 | // CHECK-V65-NOT: #define __HVX__ 1 |
| 34 | // CHECK-V65: #define __hexagon__ 1 |
| 35 | |
Sumanth Gundapaneni | 57098f5 | 2017-10-18 18:10:13 +0000 | [diff] [blame] | 36 | // The HVX flags are explicitly defined by the driver. |
| 37 | // RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv60 \ |
| 38 | // RUN: -target-feature +hvxv60 -target-feature +hvx-length64b %s | FileCheck \ |
| 39 | // RUN: %s -check-prefix CHECK-V60HVX-64B |
| 40 | // CHECK-V60HVX-64B: #define __HEXAGON_ARCH__ 60 |
| 41 | // CHECK-V60HVX-64B: #define __HEXAGON_V60__ 1 |
| 42 | // CHECK-V60HVX-64B-NOT: #define __HVXDBL__ 1 |
| 43 | // CHECK-V60HVX-64B: #define __HVX_ARCH__ 60 |
| 44 | // CHECK-V60HVX-64B: #define __HVX_LENGTH__ 64 |
| 45 | // CHECK-V60HVX-64B: #define __HVX__ 1 |
| 46 | // CHECK-V60HVX-64B: #define __hexagon__ 1 |
Krzysztof Parzyszek | 7f0756c | 2016-04-18 18:38:11 +0000 | [diff] [blame] | 47 | |
Sumanth Gundapaneni | 57098f5 | 2017-10-18 18:10:13 +0000 | [diff] [blame] | 48 | // RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv60 \ |
| 49 | // RUN: -target-feature +hvxv60 -target-feature +hvx-length128b %s | FileCheck \ |
| 50 | // RUN: %s -check-prefix CHECK-V60HVX-128B |
| 51 | // CHECK-V60HVX-128B: #define __HEXAGON_ARCH__ 60 |
| 52 | // CHECK-V60HVX-128B: #define __HEXAGON_V60__ 1 |
| 53 | // CHECK-V60HVX-128B: #define __HVXDBL__ 1 |
| 54 | // CHECK-V60HVX-128B: #define __HVX_ARCH__ 60 |
| 55 | // CHECK-V60HVX-128B: #define __HVX_LENGTH__ 128 |
| 56 | // CHECK-V60HVX-128B: #define __HVX__ 1 |
| 57 | // CHECK-V60HVX-128B: #define __hexagon__ 1 |