blob: fe87262ae63578082475a9dc822ba6c51418a5db [file] [log] [blame]
Krzysztof Parzyszek7f0756c2016-04-18 18:38:11 +00001// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv5 %s | FileCheck %s -check-prefix CHECK-V5
Krzysztof Parzyszek7f0756c2016-04-18 18:38:11 +00002// CHECK-V5: #define __HEXAGON_ARCH__ 5
3// CHECK-V5: #define __HEXAGON_V5__ 1
Sumanth Gundapaneni57098f52017-10-18 18:10:13 +00004// CHECK-V5-NOT: #define __HVX_LENGTH__
5// CHECK-V5-NOT: #define __HVX__ 1
Krzysztof Parzyszek7f0756c2016-04-18 18:38:11 +00006// CHECK-V5: #define __hexagon__ 1
7
Krzysztof Parzyszeka58ff512016-04-21 14:30:04 +00008// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv55 %s | FileCheck %s -check-prefix CHECK-V55
Krzysztof Parzyszeka58ff512016-04-21 14:30:04 +00009// CHECK-V55: #define __HEXAGON_ARCH__ 55
10// CHECK-V55: #define __HEXAGON_V55__ 1
Sumanth Gundapaneni57098f52017-10-18 18:10:13 +000011// CHECK-V55-NOT: #define __HVX_LENGTH__
12// CHECK-V55-NOT: #define __HVX__ 1
Krzysztof Parzyszeka58ff512016-04-21 14:30:04 +000013// CHECK-V55: #define __hexagon__ 1
14
Krzysztof Parzyszek7f0756c2016-04-18 18:38:11 +000015// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv60 %s | FileCheck %s -check-prefix CHECK-V60
Krzysztof Parzyszek7f0756c2016-04-18 18:38:11 +000016// CHECK-V60: #define __HEXAGON_ARCH__ 60
17// CHECK-V60: #define __HEXAGON_V60__ 1
Sumanth Gundapaneni57098f52017-10-18 18:10:13 +000018// CHECK-V60-NOT: #define __HVX_LENGTH__
19// CHECK-V60-NOT: #define __HVX__ 1
Krzysztof Parzyszek7f0756c2016-04-18 18:38:11 +000020// CHECK-V60: #define __hexagon__ 1
21
Krzysztof Parzyszekcc5cd2c2017-12-13 13:48:07 +000022// 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 Gundapaneni57098f52017-10-18 18:10:13 +000036// 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 Parzyszek7f0756c2016-04-18 18:38:11 +000047
Sumanth Gundapaneni57098f52017-10-18 18:10:13 +000048// 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