brintos

brintos / llvm-project-archived public Read only

0
0
Text · 10.9 KiB · bdedcf4 Raw
239 lines · c
1// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv5 %s | FileCheck %s -check-prefix CHECK-V52// CHECK-V5: #define __HEXAGON_ARCH__ 53// CHECK-V5: #define __HEXAGON_V5__ 14// CHECK-V5-NOT: #define __HVX_LENGTH__5// CHECK-V5-NOT: #define __HVX__ 16// CHECK-V5: #define __hexagon__ 17 8// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv55 %s | FileCheck %s -check-prefix CHECK-V559// CHECK-V55: #define __HEXAGON_ARCH__ 5510// CHECK-V55: #define __HEXAGON_V55__ 111// CHECK-V55-NOT: #define __HVX_LENGTH__12// CHECK-V55-NOT: #define __HVX__ 113// CHECK-V55: #define __hexagon__ 114 15// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv60 %s | FileCheck %s -check-prefix CHECK-V6016// CHECK-V60: #define __HEXAGON_ARCH__ 6017// CHECK-V60: #define __HEXAGON_V60__ 118// CHECK-V60-NOT: #define __HVX_LENGTH__19// CHECK-V60-NOT: #define __HVX__ 120// CHECK-V60: #define __hexagon__ 121 22// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv62 %s | FileCheck %s -check-prefix CHECK-V6223// CHECK-V62: #define __HEXAGON_ARCH__ 6224// CHECK-V62: #define __HEXAGON_V62__ 125// CHECK-V62-NOT: #define __HVX_LENGTH__26// CHECK-V62-NOT: #define __HVX__ 127// CHECK-V62: #define __hexagon__ 128 29// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv65 %s | FileCheck %s -check-prefix CHECK-V6530// CHECK-V65: #define __HEXAGON_ARCH__ 6531// CHECK-V65: #define __HEXAGON_V65__ 132// CHECK-V65-NOT: #define __HVX_LENGTH__33// CHECK-V65-NOT: #define __HVX__ 134// CHECK-V65: #define __hexagon__ 135 36// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv66 %s | FileCheck %s -check-prefix CHECK-V6637// CHECK-V66: #define __HEXAGON_ARCH__ 6638// CHECK-V66: #define __HEXAGON_V66__ 139// CHECK-V66-NOT: #define __HVX_LENGTH__40// CHECK-V66-NOT: #define __HVX__ 141// CHECK-V66: #define __hexagon__ 142 43// The HVX flags are explicitly defined by the driver.44// For v60,v62,v65 - 64B mode is default45// For v66 and future archs - 128B is default46// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv60 \47// RUN: -target-feature +hvxv60 -target-feature +hvx-length64b %s | FileCheck \48// RUN: %s -check-prefix CHECK-V60HVX-64B49// CHECK-V60HVX-64B: #define __HEXAGON_ARCH__ 6050// CHECK-V60HVX-64B: #define __HEXAGON_V60__ 151// CHECK-V60HVX-64B-NOT: #define __HVXDBL__ 152// CHECK-V60HVX-64B: #define __HVX_ARCH__ 6053// CHECK-V60HVX-64B: #define __HVX_LENGTH__ 6454// CHECK-V60HVX-64B: #define __HVX__ 155// CHECK-V60HVX-64B: #define __hexagon__ 156 57// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv60 \58// RUN: -target-feature +hvxv60 -target-feature +hvx-length128b %s | FileCheck \59// RUN: %s -check-prefix CHECK-V60HVX-128B60// CHECK-V60HVX-128B: #define __HEXAGON_ARCH__ 6061// CHECK-V60HVX-128B: #define __HEXAGON_V60__ 162// CHECK-V60HVX-128B: #define __HVXDBL__ 163// CHECK-V60HVX-128B: #define __HVX_ARCH__ 6064// CHECK-V60HVX-128B: #define __HVX_LENGTH__ 12865// CHECK-V60HVX-128B: #define __HVX__ 166// CHECK-V60HVX-128B: #define __hexagon__ 167 68// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv66 \69// RUN: -target-feature +hvxv66 -target-feature +hvx-length64b %s | FileCheck \70// RUN: %s -check-prefix CHECK-V66HVX-64B71// CHECK-V66HVX-64B: #define __HEXAGON_ARCH__ 6672// CHECK-V66HVX-64B: #define __HEXAGON_V66__ 173// CHECK-V66HVX-64B-NOT: #define __HVXDBL__ 174// CHECK-V66HVX-64B: #define __HVX_ARCH__ 6675// CHECK-V66HVX-64B: #define __HVX_LENGTH__ 6476// CHECK-V66HVX-64B: #define __HVX__ 177// CHECK-V66HVX-64B: #define __hexagon__ 178 79// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv66 \80// RUN: -target-feature +hvxv66 -target-feature +hvx-length128b %s | FileCheck \81// RUN: %s -check-prefix CHECK-V66HVX-128B82// CHECK-V66HVX-128B: #define __HEXAGON_ARCH__ 6683// CHECK-V66HVX-128B: #define __HEXAGON_V66__ 184// CHECK-V66HVX-128B: #define __HVXDBL__ 185// CHECK-V66HVX-128B: #define __HVX_ARCH__ 6686// CHECK-V66HVX-128B: #define __HVX_LENGTH__ 12887// CHECK-V66HVX-128B: #define __HVX__ 188// CHECK-V66HVX-128B: #define __hexagon__ 189 90// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv67 \91// RUN: -target-feature +hvxv67 -target-feature +hvx-length128b %s | FileCheck \92// RUN: %s -check-prefix CHECK-V67HVX-128B93// CHECK-V67HVX-128B: #define __HEXAGON_ARCH__ 6794// CHECK-V67HVX-128B: #define __HEXAGON_V67__ 195// CHECK-V67HVX-128B: #define __HVX_ARCH__ 6796// CHECK-V67HVX-128B: #define __HVX_LENGTH__ 12897// CHECK-V67HVX-128B: #define __HVX__ 198// CHECK-V67HVX-128B: #define __hexagon__ 199 100// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv68 \101// RUN: -target-feature +hvxv68 -target-feature +hvx-length128b %s | FileCheck \102// RUN: %s -check-prefix CHECK-V68HVX-128B103// CHECK-V68HVX-128B: #define __HEXAGON_ARCH__ 68104// CHECK-V68HVX-128B: #define __HEXAGON_V68__ 1105// CHECK-V68HVX-128B: #define __HVX_ARCH__ 68106// CHECK-V68HVX-128B: #define __HVX_LENGTH__ 128107// CHECK-V68HVX-128B: #define __HVX__ 1108// CHECK-V68HVX-128B: #define __hexagon__ 1109 110// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv69 \111// RUN: -target-feature +hvxv69 -target-feature +hvx-length128b %s | FileCheck \112// RUN: %s -check-prefix CHECK-V69HVX-128B113// CHECK-V69HVX-128B: #define __HEXAGON_ARCH__ 69114// CHECK-V69HVX-128B: #define __HEXAGON_V69__ 1115// CHECK-V69HVX-128B: #define __HVX_ARCH__ 69116// CHECK-V69HVX-128B: #define __HVX_LENGTH__ 128117// CHECK-V69HVX-128B: #define __HVX__ 1118// CHECK-V69HVX-128B: #define __hexagon__ 1119 120// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv71 \121// RUN: -target-feature +hvxv71 -target-feature +hvx-length128b %s | FileCheck \122// RUN: %s -check-prefix CHECK-V71HVX-128B123// CHECK-V71HVX-128B: #define __HEXAGON_ARCH__ 71124// CHECK-V71HVX-128B: #define __HEXAGON_V71__ 1125// CHECK-V71HVX-128B: #define __HVX_ARCH__ 71126// CHECK-V71HVX-128B: #define __HVX_LENGTH__ 128127// CHECK-V71HVX-128B: #define __HVX__ 1128// CHECK-V71HVX-128B: #define __hexagon__ 1129 130// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv73 \131// RUN: -target-feature +hvxv73 -target-feature +hvx-length128b %s | FileCheck \132// RUN: %s -check-prefix CHECK-V73HVX-128B133// CHECK-V73HVX-128B: #define __HEXAGON_ARCH__ 73134// CHECK-V73HVX-128B: #define __HEXAGON_V73__ 1135// CHECK-V73HVX-128B: #define __HVX_ARCH__ 73136// CHECK-V73HVX-128B: #define __HVX_LENGTH__ 128137// CHECK-V73HVX-128B: #define __HVX__ 1138// CHECK-V73HVX-128B: #define __hexagon__ 1139 140// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv75 %s\141// RUN: | FileCheck %s -check-prefix CHECK-V75142// CHECK-V75: #define __HEXAGON_ARCH__ 75143// CHECK-V75: #define __HEXAGON_PHYSICAL_SLOTS__ 4144// CHECK-V75: #define __HEXAGON_V75__ 1145// CHECK-V75: #define __hexagon__ 1146 147// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv75 \148// RUN: -target-feature +hvxv75 -target-feature +hvx-length128b %s | FileCheck \149// RUN: %s -check-prefix CHECK-V75HVX-128B150// CHECK-V75HVX-128B: #define __HEXAGON_ARCH__ 75151// CHECK-V75HVX-128B: #define __HEXAGON_V75__ 1152// CHECK-V75HVX-128B: #define __HVX_ARCH__ 75153// CHECK-V75HVX-128B: #define __HVX_LENGTH__ 128154// CHECK-V75HVX-128B: #define __HVX__ 1155// CHECK-V75HVX-128B: #define __hexagon__ 1156 157// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv79 %s\158// RUN: | FileCheck %s -check-prefix CHECK-V79159// CHECK-V79: #define __HEXAGON_ARCH__ 79160// CHECK-V79: #define __HEXAGON_PHYSICAL_SLOTS__ 4161// CHECK-V79: #define __HEXAGON_V79__ 1162// CHECK-V79: #define __hexagon__ 1163 164// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv79 \165// RUN: -target-feature +hvxv79 -target-feature +hvx-length128b %s | FileCheck \166// RUN: %s -check-prefix CHECK-V79HVX-128B167// CHECK-V79HVX-128B: #define __HEXAGON_ARCH__ 79168// CHECK-V79HVX-128B: #define __HEXAGON_V79__ 1169// CHECK-V79HVX-128B: #define __HVX_ARCH__ 79170// CHECK-V79HVX-128B: #define __HVX_LENGTH__ 128171// CHECK-V79HVX-128B: #define __HVX__ 1172// CHECK-V79HVX-128B: #define __hexagon__ 1173 174// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv81 %s\175// RUN: | FileCheck %s -check-prefix CHECK-V81176// CHECK-V81: #define __HEXAGON_ARCH__ 81177// CHECK-V81: #define __HEXAGON_PHYSICAL_SLOTS__ 4178// CHECK-V81: #define __HEXAGON_V81__ 1179// CHECK-V81: #define __hexagon__ 1180 181// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv81 \182// RUN: -target-feature +hvxv81 -target-feature +hvx-length128b %s | FileCheck \183// RUN: %s -check-prefix CHECK-V81HVX-128B184// CHECK-V81HVX-128B: #define __HEXAGON_ARCH__ 81185// CHECK-V81HVX-128B: #define __HEXAGON_V81__ 1186// CHECK-V81HVX-128B: #define __HVX_ARCH__ 81187// CHECK-V81HVX-128B: #define __HVX_LENGTH__ 128188// CHECK-V81HVX-128B: #define __HVX__ 1189// CHECK-V81HVX-128B: #define __hexagon__ 1190 191// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-elf -target-cpu hexagonv67 \192// RUN: -target-feature +hvxv67 -target-feature +hvx-length128b %s | FileCheck \193// RUN: %s -check-prefix CHECK-ELF194// CHECK-ELF: #define __ELF__ 1195 196// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-linux-musl \197// RUN: -target-cpu hexagonv67 -target-feature +hvxv67 \198// RUN: -target-feature +hvx-length128b %s | FileCheck \199// RUN: %s -check-prefix CHECK-LINUX200// CHECK-LINUX: #define __gnu_linux__ 1201// CHECK-LINUX: #define __linux 1202// CHECK-LINUX: #define __linux__ 1203// CHECK-LINUX: #define __unix 1204// CHECK-LINUX: #define __unix__ 1205// CHECK-LINUX: #define linux 1206// CHECK-LINUX: #define unix 1207 208// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-linux-musl \209// RUN: -target-cpu hexagonv67 -target-feature +hvxv67 \210// RUN: -target-feature +hvx-length128b %s | FileCheck \211// RUN: %s -check-prefix CHECK-ATOMIC212// CHECK-ATOMIC: #define __CLANG_ATOMIC_BOOL_LOCK_FREE 2213// CHECK-ATOMIC: #define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2214// CHECK-ATOMIC: #define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2215// CHECK-ATOMIC: #define __CLANG_ATOMIC_CHAR_LOCK_FREE 2216// CHECK-ATOMIC: #define __CLANG_ATOMIC_INT_LOCK_FREE 2217// CHECK-ATOMIC: #define __CLANG_ATOMIC_LLONG_LOCK_FREE 2218// CHECK-ATOMIC: #define __CLANG_ATOMIC_LONG_LOCK_FREE 2219// CHECK-ATOMIC: #define __CLANG_ATOMIC_POINTER_LOCK_FREE 2220// CHECK-ATOMIC: #define __CLANG_ATOMIC_SHORT_LOCK_FREE 2221// CHECK-ATOMIC: #define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2222 223// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-linux-musl \224// RUN: -target-cpu hexagonv67 | FileCheck \225// RUN: %s -check-prefix CHECK-INTERFERENCE226// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-none-elf \227// RUN: -target-cpu hexagonv67 | FileCheck \228// RUN: %s -check-prefix CHECK-INTERFERENCE229// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-none-elf \230// RUN: -target-cpu hexagonv71t | FileCheck \231// RUN: %s -check-prefix CHECK-INTERFERENCE232// CHECK-INTERFERENCE: #define __GCC_CONSTRUCTIVE_SIZE 32233// CHECK-INTERFERENCE: #define __GCC_DESTRUCTIVE_SIZE 32234// RUN: %clang_cc1 -E -dM -triple hexagon-unknown-none-elf \235// RUN: -target-cpu hexagonv73 | FileCheck \236// RUN: %s -check-prefix CHECK-INTERFERENCE-73237// CHECK-INTERFERENCE-73: #define __GCC_CONSTRUCTIVE_SIZE 64238// CHECK-INTERFERENCE-73: #define __GCC_DESTRUCTIVE_SIZE 64239