1 // These tests are generated by running utils/generate_arch_predefine_tests.sh 2 // to observe GCC's behavior (or some other system compiler's behavior). 3 // 4 // Begin X86/GCC/Linux tests ---------------- 5 // 6 // RUN: %clang -march=i386 -m32 -E -dM %s -o - 2>&1 \ 7 // RUN: | FileCheck %s -check-prefix=CHECK_I386_M32 8 // CHECK_I386_M32: #define __i386 1 9 // CHECK_I386_M32: #define __i386__ 1 10 // CHECK_I386_M32: #define __tune_i386__ 1 11 // CHECK_I386_M32: #define i386 1 12 // RUN: %clang -march=i386 -m64 -E -dM %s -o - 2>&1 \ 13 // RUN: | FileCheck %s -check-prefix=CHECK_I386_M64 14 // CHECK_I386_M64: error: 15 // 16 // RUN: %clang -march=i486 -m32 -E -dM %s -o - 2>&1 \ 17 // RUN: | FileCheck %s -check-prefix=CHECK_I486_M32 18 // CHECK_I486_M32: #define __i386 1 19 // CHECK_I486_M32: #define __i386__ 1 20 // CHECK_I486_M32: #define __i486 1 21 // CHECK_I486_M32: #define __i486__ 1 22 // CHECK_I486_M32: #define __tune_i486__ 1 23 // CHECK_I486_M32: #define i386 1 24 // RUN: %clang -march=i486 -m64 -E -dM %s -o - 2>&1 \ 25 // RUN: | FileCheck %s -check-prefix=CHECK_I486_M64 26 // CHECK_I486_M64: error: 27 // 28 // RUN: %clang -march=i586 -m32 -E -dM %s -o - 2>&1 \ 29 // RUN: | FileCheck %s -check-prefix=CHECK_I586_M32 30 // CHECK_I586_M32: #define __i386 1 31 // CHECK_I586_M32: #define __i386__ 1 32 // CHECK_I586_M32: #define __i586 1 33 // CHECK_I586_M32: #define __i586__ 1 34 // CHECK_I586_M32: #define __pentium 1 35 // CHECK_I586_M32: #define __pentium__ 1 36 // CHECK_I586_M32: #define __tune_i586__ 1 37 // CHECK_I586_M32: #define __tune_pentium__ 1 38 // CHECK_I586_M32: #define i386 1 39 // RUN: %clang -march=i586 -m64 -E -dM %s -o - 2>&1 \ 40 // RUN: | FileCheck %s -check-prefix=CHECK_I586_M64 41 // CHECK_I586_M64: error: 42 // 43 // RUN: %clang -march=pentium -m32 -E -dM %s -o - 2>&1 \ 44 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM_M32 45 // CHECK_PENTIUM_M32: #define __i386 1 46 // CHECK_PENTIUM_M32: #define __i386__ 1 47 // CHECK_PENTIUM_M32: #define __i586 1 48 // CHECK_PENTIUM_M32: #define __i586__ 1 49 // CHECK_PENTIUM_M32: #define __pentium 1 50 // CHECK_PENTIUM_M32: #define __pentium__ 1 51 // CHECK_PENTIUM_M32: #define __tune_i586__ 1 52 // CHECK_PENTIUM_M32: #define __tune_pentium__ 1 53 // CHECK_PENTIUM_M32: #define i386 1 54 // RUN: %clang -march=pentium -m64 -E -dM %s -o - 2>&1 \ 55 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM_M64 56 // CHECK_PENTIUM_M64: error: 57 // 58 // RUN: %clang -march=pentium-mmx -m32 -E -dM %s -o - 2>&1 \ 59 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM_MMX_M32 60 // CHECK_PENTIUM_MMX_M32: #define __MMX__ 1 61 // CHECK_PENTIUM_MMX_M32: #define __i386 1 62 // CHECK_PENTIUM_MMX_M32: #define __i386__ 1 63 // CHECK_PENTIUM_MMX_M32: #define __i586 1 64 // CHECK_PENTIUM_MMX_M32: #define __i586__ 1 65 // CHECK_PENTIUM_MMX_M32: #define __pentium 1 66 // CHECK_PENTIUM_MMX_M32: #define __pentium__ 1 67 // CHECK_PENTIUM_MMX_M32: #define __pentium_mmx__ 1 68 // CHECK_PENTIUM_MMX_M32: #define __tune_i586__ 1 69 // CHECK_PENTIUM_MMX_M32: #define __tune_pentium__ 1 70 // CHECK_PENTIUM_MMX_M32: #define __tune_pentium_mmx__ 1 71 // CHECK_PENTIUM_MMX_M32: #define i386 1 72 // RUN: %clang -march=pentium-mmx -m64 -E -dM %s -o - 2>&1 \ 73 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM_MMX_M64 74 // CHECK_PENTIUM_MMX_M64: error: 75 // 76 // RUN: %clang -march=winchip-c6 -m32 -E -dM %s -o - 2>&1 \ 77 // RUN: | FileCheck %s -check-prefix=CHECK_WINCHIP_C6_M32 78 // CHECK_WINCHIP_C6_M32: #define __MMX__ 1 79 // CHECK_WINCHIP_C6_M32: #define __i386 1 80 // CHECK_WINCHIP_C6_M32: #define __i386__ 1 81 // CHECK_WINCHIP_C6_M32: #define __i486 1 82 // CHECK_WINCHIP_C6_M32: #define __i486__ 1 83 // CHECK_WINCHIP_C6_M32: #define __tune_i486__ 1 84 // CHECK_WINCHIP_C6_M32: #define i386 1 85 // RUN: %clang -march=winchip-c6 -m64 -E -dM %s -o - 2>&1 \ 86 // RUN: | FileCheck %s -check-prefix=CHECK_WINCHIP_C6_M64 87 // CHECK_WINCHIP_C6_M64: error: 88 // 89 // RUN: %clang -march=winchip2 -m32 -E -dM %s -o - 2>&1 \ 90 // RUN: | FileCheck %s -check-prefix=CHECK_WINCHIP2_M32 91 // CHECK_WINCHIP2_M32: #define __3dNOW__ 1 92 // CHECK_WINCHIP2_M32: #define __MMX__ 1 93 // CHECK_WINCHIP2_M32: #define __i386 1 94 // CHECK_WINCHIP2_M32: #define __i386__ 1 95 // CHECK_WINCHIP2_M32: #define __i486 1 96 // CHECK_WINCHIP2_M32: #define __i486__ 1 97 // CHECK_WINCHIP2_M32: #define __tune_i486__ 1 98 // CHECK_WINCHIP2_M32: #define i386 1 99 // RUN: %clang -march=winchip2 -m64 -E -dM %s -o - 2>&1 \ 100 // RUN: | FileCheck %s -check-prefix=CHECK_WINCHIP2_M64 101 // CHECK_WINCHIP2_M64: error: 102 // 103 // RUN: %clang -march=c3 -m32 -E -dM %s -o - 2>&1 \ 104 // RUN: | FileCheck %s -check-prefix=CHECK_C3_M32 105 // CHECK_C3_M32: #define __3dNOW__ 1 106 // CHECK_C3_M32: #define __MMX__ 1 107 // CHECK_C3_M32: #define __i386 1 108 // CHECK_C3_M32: #define __i386__ 1 109 // CHECK_C3_M32: #define __i486 1 110 // CHECK_C3_M32: #define __i486__ 1 111 // CHECK_C3_M32: #define __tune_i486__ 1 112 // CHECK_C3_M32: #define i386 1 113 // RUN: %clang -march=c3 -m64 -E -dM %s -o - 2>&1 \ 114 // RUN: | FileCheck %s -check-prefix=CHECK_C3_M64 115 // CHECK_C3_M64: error: 116 // 117 // RUN: %clang -march=c3-2 -m32 -E -dM %s -o - 2>&1 \ 118 // RUN: | FileCheck %s -check-prefix=CHECK_C3_2_M32 119 // CHECK_C3_2_M32: #define __MMX__ 1 120 // CHECK_C3_2_M32: #define __SSE__ 1 121 // CHECK_C3_2_M32: #define __i386 1 122 // CHECK_C3_2_M32: #define __i386__ 1 123 // CHECK_C3_2_M32: #define __i686 1 124 // CHECK_C3_2_M32: #define __i686__ 1 125 // CHECK_C3_2_M32: #define __pentiumpro 1 126 // CHECK_C3_2_M32: #define __pentiumpro__ 1 127 // CHECK_C3_2_M32: #define __tune_i686__ 1 128 // CHECK_C3_2_M32: #define __tune_pentium2__ 1 129 // CHECK_C3_2_M32: #define __tune_pentiumpro__ 1 130 // CHECK_C3_2_M32: #define i386 1 131 // RUN: %clang -march=c3-2 -m64 -E -dM %s -o - 2>&1 \ 132 // RUN: | FileCheck %s -check-prefix=CHECK_C3_2_M64 133 // CHECK_C3_2_M64: error: 134 // 135 // RUN: %clang -march=i686 -m32 -E -dM %s -o - 2>&1 \ 136 // RUN: | FileCheck %s -check-prefix=CHECK_I686_M32 137 // CHECK_I686_M32: #define __i386 1 138 // CHECK_I686_M32: #define __i386__ 1 139 // CHECK_I686_M32: #define __i686 1 140 // CHECK_I686_M32: #define __i686__ 1 141 // CHECK_I686_M32: #define __pentiumpro 1 142 // CHECK_I686_M32: #define __pentiumpro__ 1 143 // CHECK_I686_M32: #define i386 1 144 // RUN: %clang -march=i686 -m64 -E -dM %s -o - 2>&1 \ 145 // RUN: | FileCheck %s -check-prefix=CHECK_I686_M64 146 // CHECK_I686_M64: error: 147 // 148 // RUN: %clang -march=pentiumpro -m32 -E -dM %s -o - 2>&1 \ 149 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUMPRO_M32 150 // CHECK_PENTIUMPRO_M32: #define __i386 1 151 // CHECK_PENTIUMPRO_M32: #define __i386__ 1 152 // CHECK_PENTIUMPRO_M32: #define __i686 1 153 // CHECK_PENTIUMPRO_M32: #define __i686__ 1 154 // CHECK_PENTIUMPRO_M32: #define __pentiumpro 1 155 // CHECK_PENTIUMPRO_M32: #define __pentiumpro__ 1 156 // CHECK_PENTIUMPRO_M32: #define __tune_i686__ 1 157 // CHECK_PENTIUMPRO_M32: #define __tune_pentiumpro__ 1 158 // CHECK_PENTIUMPRO_M32: #define i386 1 159 // RUN: %clang -march=pentiumpro -m64 -E -dM %s -o - 2>&1 \ 160 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUMPRO_M64 161 // CHECK_PENTIUMPRO_M64: error: 162 // 163 // RUN: %clang -march=pentium2 -m32 -E -dM %s -o - 2>&1 \ 164 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM2_M32 165 // CHECK_PENTIUM2_M32: #define __MMX__ 1 166 // CHECK_PENTIUM2_M32: #define __i386 1 167 // CHECK_PENTIUM2_M32: #define __i386__ 1 168 // CHECK_PENTIUM2_M32: #define __i686 1 169 // CHECK_PENTIUM2_M32: #define __i686__ 1 170 // CHECK_PENTIUM2_M32: #define __pentiumpro 1 171 // CHECK_PENTIUM2_M32: #define __pentiumpro__ 1 172 // CHECK_PENTIUM2_M32: #define __tune_i686__ 1 173 // CHECK_PENTIUM2_M32: #define __tune_pentium2__ 1 174 // CHECK_PENTIUM2_M32: #define __tune_pentiumpro__ 1 175 // CHECK_PENTIUM2_M32: #define i386 1 176 // RUN: %clang -march=pentium2 -m64 -E -dM %s -o - 2>&1 \ 177 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM2_M64 178 // CHECK_PENTIUM2_M64: error: 179 // 180 // RUN: %clang -march=pentium3 -m32 -E -dM %s -o - 2>&1 \ 181 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM3_M32 182 // CHECK_PENTIUM3_M32: #define __MMX__ 1 183 // CHECK_PENTIUM3_M32: #define __SSE__ 1 184 // CHECK_PENTIUM3_M32: #define __i386 1 185 // CHECK_PENTIUM3_M32: #define __i386__ 1 186 // CHECK_PENTIUM3_M32: #define __i686 1 187 // CHECK_PENTIUM3_M32: #define __i686__ 1 188 // CHECK_PENTIUM3_M32: #define __pentiumpro 1 189 // CHECK_PENTIUM3_M32: #define __pentiumpro__ 1 190 // CHECK_PENTIUM3_M32: #define __tune_i686__ 1 191 // CHECK_PENTIUM3_M32: #define __tune_pentium2__ 1 192 // CHECK_PENTIUM3_M32: #define __tune_pentium3__ 1 193 // CHECK_PENTIUM3_M32: #define __tune_pentiumpro__ 1 194 // CHECK_PENTIUM3_M32: #define i386 1 195 // RUN: %clang -march=pentium3 -m64 -E -dM %s -o - 2>&1 \ 196 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM3_M64 197 // CHECK_PENTIUM3_M64: error: 198 // 199 // RUN: %clang -march=pentium3m -m32 -E -dM %s -o - 2>&1 \ 200 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM3M_M32 201 // CHECK_PENTIUM3M_M32: #define __MMX__ 1 202 // CHECK_PENTIUM3M_M32: #define __SSE__ 1 203 // CHECK_PENTIUM3M_M32: #define __i386 1 204 // CHECK_PENTIUM3M_M32: #define __i386__ 1 205 // CHECK_PENTIUM3M_M32: #define __i686 1 206 // CHECK_PENTIUM3M_M32: #define __i686__ 1 207 // CHECK_PENTIUM3M_M32: #define __pentiumpro 1 208 // CHECK_PENTIUM3M_M32: #define __pentiumpro__ 1 209 // CHECK_PENTIUM3M_M32: #define __tune_i686__ 1 210 // CHECK_PENTIUM3M_M32: #define __tune_pentiumpro__ 1 211 // CHECK_PENTIUM3M_M32: #define i386 1 212 // RUN: %clang -march=pentium3m -m64 -E -dM %s -o - 2>&1 \ 213 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM3M_M64 214 // CHECK_PENTIUM3M_M64: error: 215 // 216 // RUN: %clang -march=pentium-m -m32 -E -dM %s -o - 2>&1 \ 217 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM_M_M32 218 // CHECK_PENTIUM_M_M32: #define __MMX__ 1 219 // CHECK_PENTIUM_M_M32: #define __SSE2__ 1 220 // CHECK_PENTIUM_M_M32: #define __SSE__ 1 221 // CHECK_PENTIUM_M_M32: #define __i386 1 222 // CHECK_PENTIUM_M_M32: #define __i386__ 1 223 // CHECK_PENTIUM_M_M32: #define __i686 1 224 // CHECK_PENTIUM_M_M32: #define __i686__ 1 225 // CHECK_PENTIUM_M_M32: #define __pentiumpro 1 226 // CHECK_PENTIUM_M_M32: #define __pentiumpro__ 1 227 // CHECK_PENTIUM_M_M32: #define __tune_i686__ 1 228 // CHECK_PENTIUM_M_M32: #define __tune_pentiumpro__ 1 229 // CHECK_PENTIUM_M_M32: #define i386 1 230 // RUN: %clang -march=pentium-m -m64 -E -dM %s -o - 2>&1 \ 231 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM_M_M64 232 // CHECK_PENTIUM_M_M64: error: 233 // 234 // RUN: %clang -march=pentium4 -m32 -E -dM %s -o - 2>&1 \ 235 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM4_M32 236 // CHECK_PENTIUM4_M32: #define __MMX__ 1 237 // CHECK_PENTIUM4_M32: #define __SSE2__ 1 238 // CHECK_PENTIUM4_M32: #define __SSE__ 1 239 // CHECK_PENTIUM4_M32: #define __i386 1 240 // CHECK_PENTIUM4_M32: #define __i386__ 1 241 // CHECK_PENTIUM4_M32: #define __pentium4 1 242 // CHECK_PENTIUM4_M32: #define __pentium4__ 1 243 // CHECK_PENTIUM4_M32: #define __tune_pentium4__ 1 244 // CHECK_PENTIUM4_M32: #define i386 1 245 // RUN: %clang -march=pentium4 -m64 -E -dM %s -o - 2>&1 \ 246 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM4_M64 247 // CHECK_PENTIUM4_M64: error: 248 // 249 // RUN: %clang -march=pentium4m -m32 -E -dM %s -o - 2>&1 \ 250 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM4M_M32 251 // CHECK_PENTIUM4M_M32: #define __MMX__ 1 252 // CHECK_PENTIUM4M_M32: #define __SSE2__ 1 253 // CHECK_PENTIUM4M_M32: #define __SSE__ 1 254 // CHECK_PENTIUM4M_M32: #define __i386 1 255 // CHECK_PENTIUM4M_M32: #define __i386__ 1 256 // CHECK_PENTIUM4M_M32: #define __pentium4 1 257 // CHECK_PENTIUM4M_M32: #define __pentium4__ 1 258 // CHECK_PENTIUM4M_M32: #define __tune_pentium4__ 1 259 // CHECK_PENTIUM4M_M32: #define i386 1 260 // RUN: %clang -march=pentium4m -m64 -E -dM %s -o - 2>&1 \ 261 // RUN: | FileCheck %s -check-prefix=CHECK_PENTIUM4M_M64 262 // CHECK_PENTIUM4M_M64: error: 263 // 264 // RUN: %clang -march=prescott -m32 -E -dM %s -o - 2>&1 \ 265 // RUN: | FileCheck %s -check-prefix=CHECK_PRESCOTT_M32 266 // CHECK_PRESCOTT_M32: #define __MMX__ 1 267 // CHECK_PRESCOTT_M32: #define __SSE2__ 1 268 // CHECK_PRESCOTT_M32: #define __SSE3__ 1 269 // CHECK_PRESCOTT_M32: #define __SSE__ 1 270 // CHECK_PRESCOTT_M32: #define __i386 1 271 // CHECK_PRESCOTT_M32: #define __i386__ 1 272 // CHECK_PRESCOTT_M32: #define __nocona 1 273 // CHECK_PRESCOTT_M32: #define __nocona__ 1 274 // CHECK_PRESCOTT_M32: #define __tune_nocona__ 1 275 // CHECK_PRESCOTT_M32: #define i386 1 276 // RUN: %clang -march=prescott -m64 -E -dM %s -o - 2>&1 \ 277 // RUN: | FileCheck %s -check-prefix=CHECK_PRESCOTT_M64 278 // CHECK_PRESCOTT_M64: error: 279 // 280 // RUN: %clang -march=nocona -m32 -E -dM %s -o - 2>&1 \ 281 // RUN: | FileCheck %s -check-prefix=CHECK_NOCONA_M32 282 // CHECK_NOCONA_M32: #define __MMX__ 1 283 // CHECK_NOCONA_M32: #define __SSE2__ 1 284 // CHECK_NOCONA_M32: #define __SSE3__ 1 285 // CHECK_NOCONA_M32: #define __SSE__ 1 286 // CHECK_NOCONA_M32: #define __i386 1 287 // CHECK_NOCONA_M32: #define __i386__ 1 288 // CHECK_NOCONA_M32: #define __nocona 1 289 // CHECK_NOCONA_M32: #define __nocona__ 1 290 // CHECK_NOCONA_M32: #define __tune_nocona__ 1 291 // CHECK_NOCONA_M32: #define i386 1 292 // RUN: %clang -march=nocona -m64 -E -dM %s -o - 2>&1 \ 293 // RUN: | FileCheck %s -check-prefix=CHECK_NOCONA_M64 294 // CHECK_NOCONA_M64: #define __MMX__ 1 295 // CHECK_NOCONA_M64: #define __SSE2_MATH__ 1 296 // CHECK_NOCONA_M64: #define __SSE2__ 1 297 // CHECK_NOCONA_M64: #define __SSE3__ 1 298 // CHECK_NOCONA_M64: #define __SSE_MATH__ 1 299 // CHECK_NOCONA_M64: #define __SSE__ 1 300 // CHECK_NOCONA_M64: #define __amd64 1 301 // CHECK_NOCONA_M64: #define __amd64__ 1 302 // CHECK_NOCONA_M64: #define __nocona 1 303 // CHECK_NOCONA_M64: #define __nocona__ 1 304 // CHECK_NOCONA_M64: #define __tune_nocona__ 1 305 // CHECK_NOCONA_M64: #define __x86_64 1 306 // CHECK_NOCONA_M64: #define __x86_64__ 1 307 // 308 // RUN: %clang -march=core2 -m32 -E -dM %s -o - 2>&1 \ 309 // RUN: | FileCheck %s -check-prefix=CHECK_CORE2_M32 310 // CHECK_CORE2_M32: #define __MMX__ 1 311 // CHECK_CORE2_M32: #define __SSE2__ 1 312 // CHECK_CORE2_M32: #define __SSE3__ 1 313 // CHECK_CORE2_M32: #define __SSE__ 1 314 // CHECK_CORE2_M32: #define __SSSE3__ 1 315 // CHECK_CORE2_M32: #define __core2 1 316 // CHECK_CORE2_M32: #define __core2__ 1 317 // CHECK_CORE2_M32: #define __i386 1 318 // CHECK_CORE2_M32: #define __i386__ 1 319 // CHECK_CORE2_M32: #define __tune_core2__ 1 320 // CHECK_CORE2_M32: #define i386 1 321 // RUN: %clang -march=core2 -m64 -E -dM %s -o - 2>&1 \ 322 // RUN: | FileCheck %s -check-prefix=CHECK_CORE2_M64 323 // CHECK_CORE2_M64: #define __MMX__ 1 324 // CHECK_CORE2_M64: #define __SSE2_MATH__ 1 325 // CHECK_CORE2_M64: #define __SSE2__ 1 326 // CHECK_CORE2_M64: #define __SSE3__ 1 327 // CHECK_CORE2_M64: #define __SSE_MATH__ 1 328 // CHECK_CORE2_M64: #define __SSE__ 1 329 // CHECK_CORE2_M64: #define __SSSE3__ 1 330 // CHECK_CORE2_M64: #define __amd64 1 331 // CHECK_CORE2_M64: #define __amd64__ 1 332 // CHECK_CORE2_M64: #define __core2 1 333 // CHECK_CORE2_M64: #define __core2__ 1 334 // CHECK_CORE2_M64: #define __tune_core2__ 1 335 // CHECK_CORE2_M64: #define __x86_64 1 336 // CHECK_CORE2_M64: #define __x86_64__ 1 337 // 338 // RUN: %clang -march=corei7 -m32 -E -dM %s -o - 2>&1 \ 339 // RUN: | FileCheck %s -check-prefix=CHECK_COREI7_M32 340 // CHECK_COREI7_M32: #define __MMX__ 1 341 // CHECK_COREI7_M32: #define __SSE2__ 1 342 // CHECK_COREI7_M32: #define __SSE3__ 1 343 // CHECK_COREI7_M32: #define __SSE4_1__ 1 344 // CHECK_COREI7_M32: #define __SSE4_2__ 1 345 // CHECK_COREI7_M32: #define __SSE__ 1 346 // CHECK_COREI7_M32: #define __SSSE3__ 1 347 // CHECK_COREI7_M32: #define __corei7 1 348 // CHECK_COREI7_M32: #define __corei7__ 1 349 // CHECK_COREI7_M32: #define __i386 1 350 // CHECK_COREI7_M32: #define __i386__ 1 351 // CHECK_COREI7_M32: #define __tune_corei7__ 1 352 // CHECK_COREI7_M32: #define i386 1 353 // RUN: %clang -march=corei7 -m64 -E -dM %s -o - 2>&1 \ 354 // RUN: | FileCheck %s -check-prefix=CHECK_COREI7_M64 355 // CHECK_COREI7_M64: #define __MMX__ 1 356 // CHECK_COREI7_M64: #define __SSE2_MATH__ 1 357 // CHECK_COREI7_M64: #define __SSE2__ 1 358 // CHECK_COREI7_M64: #define __SSE3__ 1 359 // CHECK_COREI7_M64: #define __SSE4_1__ 1 360 // CHECK_COREI7_M64: #define __SSE4_2__ 1 361 // CHECK_COREI7_M64: #define __SSE_MATH__ 1 362 // CHECK_COREI7_M64: #define __SSE__ 1 363 // CHECK_COREI7_M64: #define __SSSE3__ 1 364 // CHECK_COREI7_M64: #define __amd64 1 365 // CHECK_COREI7_M64: #define __amd64__ 1 366 // CHECK_COREI7_M64: #define __corei7 1 367 // CHECK_COREI7_M64: #define __corei7__ 1 368 // CHECK_COREI7_M64: #define __tune_corei7__ 1 369 // CHECK_COREI7_M64: #define __x86_64 1 370 // CHECK_COREI7_M64: #define __x86_64__ 1 371 // 372 // RUN: %clang -march=corei7-avx -m32 -E -dM %s -o - 2>&1 \ 373 // RUN: | FileCheck %s -check-prefix=CHECK_COREI7_AVX_M32 374 // CHECK_COREI7_AVX_M32: #define __AES__ 1 375 // FIXME: AVX is not yet enabled with Clang. 376 // CHECK_COREI7_AVX_M32-NOT: #define __AVX__ 1 377 // CHECK_COREI7_AVX_M32: #define __MMX__ 1 378 // CHECK_COREI7_AVX_M32: #define __SSE2__ 1 379 // CHECK_COREI7_AVX_M32: #define __SSE3__ 1 380 // CHECK_COREI7_AVX_M32: #define __SSE4_1__ 1 381 // CHECK_COREI7_AVX_M32: #define __SSE4_2__ 1 382 // CHECK_COREI7_AVX_M32: #define __SSE__ 1 383 // CHECK_COREI7_AVX_M32: #define __SSSE3__ 1 384 // CHECK_COREI7_AVX_M32: #define __corei7 1 385 // CHECK_COREI7_AVX_M32: #define __corei7__ 1 386 // CHECK_COREI7_AVX_M32: #define __i386 1 387 // CHECK_COREI7_AVX_M32: #define __i386__ 1 388 // CHECK_COREI7_AVX_M32: #define __tune_corei7__ 1 389 // CHECK_COREI7_AVX_M32: #define i386 1 390 // RUN: %clang -march=corei7-avx -m64 -E -dM %s -o - 2>&1 \ 391 // RUN: | FileCheck %s -check-prefix=CHECK_COREI7_AVX_M64 392 // CHECK_COREI7_AVX_M64: #define __AES__ 1 393 // FIXME: AVX is not yet enabled with Clang. 394 // CHECK_COREI7_AVX_M64-NOT: #define __AVX__ 1 395 // CHECK_COREI7_AVX_M64: #define __MMX__ 1 396 // CHECK_COREI7_AVX_M64: #define __SSE2_MATH__ 1 397 // CHECK_COREI7_AVX_M64: #define __SSE2__ 1 398 // CHECK_COREI7_AVX_M64: #define __SSE3__ 1 399 // CHECK_COREI7_AVX_M64: #define __SSE4_1__ 1 400 // CHECK_COREI7_AVX_M64: #define __SSE4_2__ 1 401 // CHECK_COREI7_AVX_M64: #define __SSE_MATH__ 1 402 // CHECK_COREI7_AVX_M64: #define __SSE__ 1 403 // CHECK_COREI7_AVX_M64: #define __SSSE3__ 1 404 // CHECK_COREI7_AVX_M64: #define __amd64 1 405 // CHECK_COREI7_AVX_M64: #define __amd64__ 1 406 // CHECK_COREI7_AVX_M64: #define __corei7 1 407 // CHECK_COREI7_AVX_M64: #define __corei7__ 1 408 // CHECK_COREI7_AVX_M64: #define __tune_corei7__ 1 409 // CHECK_COREI7_AVX_M64: #define __x86_64 1 410 // CHECK_COREI7_AVX_M64: #define __x86_64__ 1 411 // 412 // RUN: %clang -march=core-avx-i -m32 -E -dM %s -o - 2>&1 \ 413 // RUN: | FileCheck %s -check-prefix=CHECK_CORE_AVX_I_M32 414 // CHECK_CORE_AVX_I_M32: #define __AES__ 1 415 // FIXME: AVX is not yet enabled with Clang. 416 // CHECK_CORE_AVX_I_M32-NOT: #define __AVX__ 1 417 // CHECK_CORE_AVX_I_M32: #define __MMX__ 1 418 // CHECK_CORE_AVX_I_M32: #define __SSE2__ 1 419 // CHECK_CORE_AVX_I_M32: #define __SSE3__ 1 420 // CHECK_CORE_AVX_I_M32: #define __SSE4_1__ 1 421 // CHECK_CORE_AVX_I_M32: #define __SSE4_2__ 1 422 // CHECK_CORE_AVX_I_M32: #define __SSE__ 1 423 // CHECK_CORE_AVX_I_M32: #define __SSSE3__ 1 424 // CHECK_CORE_AVX_I_M32: #define __corei7 1 425 // CHECK_CORE_AVX_I_M32: #define __corei7__ 1 426 // CHECK_CORE_AVX_I_M32: #define __i386 1 427 // CHECK_CORE_AVX_I_M32: #define __i386__ 1 428 // CHECK_CORE_AVX_I_M32: #define __tune_corei7__ 1 429 // CHECK_CORE_AVX_I_M32: #define i386 1 430 // RUN: %clang -march=core-avx-i -m64 -E -dM %s -o - 2>&1 \ 431 // RUN: | FileCheck %s -check-prefix=CHECK_CORE_AVX_I_M64 432 // CHECK_CORE_AVX_I_M64: #define __AES__ 1 433 // FIXME: AVX is not yet enabled with Clang. 434 // CHECK_CORE_AVX_I_M64-NOT: #define __AVX__ 1 435 // CHECK_CORE_AVX_I_M64: #define __MMX__ 1 436 // CHECK_CORE_AVX_I_M64: #define __SSE2_MATH__ 1 437 // CHECK_CORE_AVX_I_M64: #define __SSE2__ 1 438 // CHECK_CORE_AVX_I_M64: #define __SSE3__ 1 439 // CHECK_CORE_AVX_I_M64: #define __SSE4_1__ 1 440 // CHECK_CORE_AVX_I_M64: #define __SSE4_2__ 1 441 // CHECK_CORE_AVX_I_M64: #define __SSE_MATH__ 1 442 // CHECK_CORE_AVX_I_M64: #define __SSE__ 1 443 // CHECK_CORE_AVX_I_M64: #define __SSSE3__ 1 444 // CHECK_CORE_AVX_I_M64: #define __amd64 1 445 // CHECK_CORE_AVX_I_M64: #define __amd64__ 1 446 // CHECK_CORE_AVX_I_M64: #define __corei7 1 447 // CHECK_CORE_AVX_I_M64: #define __corei7__ 1 448 // CHECK_CORE_AVX_I_M64: #define __tune_corei7__ 1 449 // CHECK_CORE_AVX_I_M64: #define __x86_64 1 450 // CHECK_CORE_AVX_I_M64: #define __x86_64__ 1 451 // 452 // RUN: %clang -march=atom -m32 -E -dM %s -o - 2>&1 \ 453 // RUN: | FileCheck %s -check-prefix=CHECK_ATOM_M32 454 // CHECK_ATOM_M32: #define __MMX__ 1 455 // CHECK_ATOM_M32: #define __SSE2__ 1 456 // CHECK_ATOM_M32: #define __SSE3__ 1 457 // CHECK_ATOM_M32: #define __SSE__ 1 458 // CHECK_ATOM_M32: #define __SSSE3__ 1 459 // CHECK_ATOM_M32: #define __atom 1 460 // CHECK_ATOM_M32: #define __atom__ 1 461 // CHECK_ATOM_M32: #define __i386 1 462 // CHECK_ATOM_M32: #define __i386__ 1 463 // CHECK_ATOM_M32: #define __tune_atom__ 1 464 // CHECK_ATOM_M32: #define i386 1 465 // RUN: %clang -march=atom -m64 -E -dM %s -o - 2>&1 \ 466 // RUN: | FileCheck %s -check-prefix=CHECK_ATOM_M64 467 // CHECK_ATOM_M64: #define __MMX__ 1 468 // CHECK_ATOM_M64: #define __SSE2_MATH__ 1 469 // CHECK_ATOM_M64: #define __SSE2__ 1 470 // CHECK_ATOM_M64: #define __SSE3__ 1 471 // CHECK_ATOM_M64: #define __SSE_MATH__ 1 472 // CHECK_ATOM_M64: #define __SSE__ 1 473 // CHECK_ATOM_M64: #define __SSSE3__ 1 474 // CHECK_ATOM_M64: #define __amd64 1 475 // CHECK_ATOM_M64: #define __amd64__ 1 476 // CHECK_ATOM_M64: #define __atom 1 477 // CHECK_ATOM_M64: #define __atom__ 1 478 // CHECK_ATOM_M64: #define __tune_atom__ 1 479 // CHECK_ATOM_M64: #define __x86_64 1 480 // CHECK_ATOM_M64: #define __x86_64__ 1 481 // 482 // RUN: %clang -march=geode -m32 -E -dM %s -o - 2>&1 \ 483 // RUN: | FileCheck %s -check-prefix=CHECK_GEODE_M32 484 // CHECK_GEODE_M32: #define __3dNOW_A__ 1 485 // CHECK_GEODE_M32: #define __3dNOW__ 1 486 // CHECK_GEODE_M32: #define __MMX__ 1 487 // CHECK_GEODE_M32: #define __geode 1 488 // CHECK_GEODE_M32: #define __geode__ 1 489 // CHECK_GEODE_M32: #define __i386 1 490 // CHECK_GEODE_M32: #define __i386__ 1 491 // CHECK_GEODE_M32: #define __tune_geode__ 1 492 // CHECK_GEODE_M32: #define i386 1 493 // RUN: %clang -march=geode -m64 -E -dM %s -o - 2>&1 \ 494 // RUN: | FileCheck %s -check-prefix=CHECK_GEODE_M64 495 // CHECK_GEODE_M64: error: 496 // 497 // RUN: %clang -march=k6 -m32 -E -dM %s -o - 2>&1 \ 498 // RUN: | FileCheck %s -check-prefix=CHECK_K6_M32 499 // CHECK_K6_M32: #define __MMX__ 1 500 // CHECK_K6_M32: #define __i386 1 501 // CHECK_K6_M32: #define __i386__ 1 502 // CHECK_K6_M32: #define __k6 1 503 // CHECK_K6_M32: #define __k6__ 1 504 // CHECK_K6_M32: #define __tune_k6__ 1 505 // CHECK_K6_M32: #define i386 1 506 // RUN: %clang -march=k6 -m64 -E -dM %s -o - 2>&1 \ 507 // RUN: | FileCheck %s -check-prefix=CHECK_K6_M64 508 // CHECK_K6_M64: error: 509 // 510 // RUN: %clang -march=k6-2 -m32 -E -dM %s -o - 2>&1 \ 511 // RUN: | FileCheck %s -check-prefix=CHECK_K6_2_M32 512 // CHECK_K6_2_M32: #define __3dNOW__ 1 513 // CHECK_K6_2_M32: #define __MMX__ 1 514 // CHECK_K6_2_M32: #define __i386 1 515 // CHECK_K6_2_M32: #define __i386__ 1 516 // CHECK_K6_2_M32: #define __k6 1 517 // CHECK_K6_2_M32: #define __k6_2__ 1 518 // CHECK_K6_2_M32: #define __k6__ 1 519 // CHECK_K6_2_M32: #define __tune_k6_2__ 1 520 // CHECK_K6_2_M32: #define __tune_k6__ 1 521 // CHECK_K6_2_M32: #define i386 1 522 // RUN: %clang -march=k6-2 -m64 -E -dM %s -o - 2>&1 \ 523 // RUN: | FileCheck %s -check-prefix=CHECK_K6_2_M64 524 // CHECK_K6_2_M64: error: 525 // 526 // RUN: %clang -march=k6-3 -m32 -E -dM %s -o - 2>&1 \ 527 // RUN: | FileCheck %s -check-prefix=CHECK_K6_3_M32 528 // CHECK_K6_3_M32: #define __3dNOW__ 1 529 // CHECK_K6_3_M32: #define __MMX__ 1 530 // CHECK_K6_3_M32: #define __i386 1 531 // CHECK_K6_3_M32: #define __i386__ 1 532 // CHECK_K6_3_M32: #define __k6 1 533 // CHECK_K6_3_M32: #define __k6_3__ 1 534 // CHECK_K6_3_M32: #define __k6__ 1 535 // CHECK_K6_3_M32: #define __tune_k6_3__ 1 536 // CHECK_K6_3_M32: #define __tune_k6__ 1 537 // CHECK_K6_3_M32: #define i386 1 538 // RUN: %clang -march=k6-3 -m64 -E -dM %s -o - 2>&1 \ 539 // RUN: | FileCheck %s -check-prefix=CHECK_K6_3_M64 540 // CHECK_K6_3_M64: error: 541 // 542 // RUN: %clang -march=athlon -m32 -E -dM %s -o - 2>&1 \ 543 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON_M32 544 // CHECK_ATHLON_M32: #define __3dNOW_A__ 1 545 // CHECK_ATHLON_M32: #define __3dNOW__ 1 546 // CHECK_ATHLON_M32: #define __MMX__ 1 547 // CHECK_ATHLON_M32: #define __athlon 1 548 // CHECK_ATHLON_M32: #define __athlon__ 1 549 // CHECK_ATHLON_M32: #define __i386 1 550 // CHECK_ATHLON_M32: #define __i386__ 1 551 // CHECK_ATHLON_M32: #define __tune_athlon__ 1 552 // CHECK_ATHLON_M32: #define i386 1 553 // RUN: %clang -march=athlon -m64 -E -dM %s -o - 2>&1 \ 554 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON_M64 555 // CHECK_ATHLON_M64: error: 556 // 557 // RUN: %clang -march=athlon-tbird -m32 -E -dM %s -o - 2>&1 \ 558 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON_TBIRD_M32 559 // CHECK_ATHLON_TBIRD_M32: #define __3dNOW_A__ 1 560 // CHECK_ATHLON_TBIRD_M32: #define __3dNOW__ 1 561 // CHECK_ATHLON_TBIRD_M32: #define __MMX__ 1 562 // CHECK_ATHLON_TBIRD_M32: #define __athlon 1 563 // CHECK_ATHLON_TBIRD_M32: #define __athlon__ 1 564 // CHECK_ATHLON_TBIRD_M32: #define __i386 1 565 // CHECK_ATHLON_TBIRD_M32: #define __i386__ 1 566 // CHECK_ATHLON_TBIRD_M32: #define __tune_athlon__ 1 567 // CHECK_ATHLON_TBIRD_M32: #define i386 1 568 // RUN: %clang -march=athlon-tbird -m64 -E -dM %s -o - 2>&1 \ 569 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON_TBIRD_M64 570 // CHECK_ATHLON_TBIRD_M64: error: 571 // 572 // RUN: %clang -march=athlon-4 -m32 -E -dM %s -o - 2>&1 \ 573 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON_4_M32 574 // CHECK_ATHLON_4_M32: #define __3dNOW_A__ 1 575 // CHECK_ATHLON_4_M32: #define __3dNOW__ 1 576 // CHECK_ATHLON_4_M32: #define __MMX__ 1 577 // CHECK_ATHLON_4_M32: #define __SSE__ 1 578 // CHECK_ATHLON_4_M32: #define __athlon 1 579 // CHECK_ATHLON_4_M32: #define __athlon__ 1 580 // CHECK_ATHLON_4_M32: #define __athlon_sse__ 1 581 // CHECK_ATHLON_4_M32: #define __i386 1 582 // CHECK_ATHLON_4_M32: #define __i386__ 1 583 // CHECK_ATHLON_4_M32: #define __tune_athlon__ 1 584 // CHECK_ATHLON_4_M32: #define __tune_athlon_sse__ 1 585 // CHECK_ATHLON_4_M32: #define i386 1 586 // RUN: %clang -march=athlon-4 -m64 -E -dM %s -o - 2>&1 \ 587 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON_4_M64 588 // CHECK_ATHLON_4_M64: error: 589 // 590 // RUN: %clang -march=athlon-xp -m32 -E -dM %s -o - 2>&1 \ 591 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON_XP_M32 592 // CHECK_ATHLON_XP_M32: #define __3dNOW_A__ 1 593 // CHECK_ATHLON_XP_M32: #define __3dNOW__ 1 594 // CHECK_ATHLON_XP_M32: #define __MMX__ 1 595 // CHECK_ATHLON_XP_M32: #define __SSE__ 1 596 // CHECK_ATHLON_XP_M32: #define __athlon 1 597 // CHECK_ATHLON_XP_M32: #define __athlon__ 1 598 // CHECK_ATHLON_XP_M32: #define __athlon_sse__ 1 599 // CHECK_ATHLON_XP_M32: #define __i386 1 600 // CHECK_ATHLON_XP_M32: #define __i386__ 1 601 // CHECK_ATHLON_XP_M32: #define __tune_athlon__ 1 602 // CHECK_ATHLON_XP_M32: #define __tune_athlon_sse__ 1 603 // CHECK_ATHLON_XP_M32: #define i386 1 604 // RUN: %clang -march=athlon-xp -m64 -E -dM %s -o - 2>&1 \ 605 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON_XP_M64 606 // CHECK_ATHLON_XP_M64: error: 607 // 608 // RUN: %clang -march=athlon-mp -m32 -E -dM %s -o - 2>&1 \ 609 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON_MP_M32 610 // CHECK_ATHLON_MP_M32: #define __3dNOW_A__ 1 611 // CHECK_ATHLON_MP_M32: #define __3dNOW__ 1 612 // CHECK_ATHLON_MP_M32: #define __MMX__ 1 613 // CHECK_ATHLON_MP_M32: #define __SSE__ 1 614 // CHECK_ATHLON_MP_M32: #define __athlon 1 615 // CHECK_ATHLON_MP_M32: #define __athlon__ 1 616 // CHECK_ATHLON_MP_M32: #define __athlon_sse__ 1 617 // CHECK_ATHLON_MP_M32: #define __i386 1 618 // CHECK_ATHLON_MP_M32: #define __i386__ 1 619 // CHECK_ATHLON_MP_M32: #define __tune_athlon__ 1 620 // CHECK_ATHLON_MP_M32: #define __tune_athlon_sse__ 1 621 // CHECK_ATHLON_MP_M32: #define i386 1 622 // RUN: %clang -march=athlon-mp -m64 -E -dM %s -o - 2>&1 \ 623 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON_MP_M64 624 // CHECK_ATHLON_MP_M64: error: 625 // 626 // RUN: %clang -march=x86-64 -m32 -E -dM %s -o - 2>&1 \ 627 // RUN: | FileCheck %s -check-prefix=CHECK_X86_64_M32 628 // CHECK_X86_64_M32: #define __MMX__ 1 629 // CHECK_X86_64_M32: #define __SSE2__ 1 630 // CHECK_X86_64_M32: #define __SSE__ 1 631 // CHECK_X86_64_M32: #define __i386 1 632 // CHECK_X86_64_M32: #define __i386__ 1 633 // CHECK_X86_64_M32: #define __k8 1 634 // CHECK_X86_64_M32: #define __k8__ 1 635 // CHECK_X86_64_M32: #define i386 1 636 // RUN: %clang -march=x86-64 -m64 -E -dM %s -o - 2>&1 \ 637 // RUN: | FileCheck %s -check-prefix=CHECK_X86_64_M64 638 // CHECK_X86_64_M64: #define __MMX__ 1 639 // CHECK_X86_64_M64: #define __SSE2_MATH__ 1 640 // CHECK_X86_64_M64: #define __SSE2__ 1 641 // CHECK_X86_64_M64: #define __SSE_MATH__ 1 642 // CHECK_X86_64_M64: #define __SSE__ 1 643 // CHECK_X86_64_M64: #define __amd64 1 644 // CHECK_X86_64_M64: #define __amd64__ 1 645 // CHECK_X86_64_M64: #define __k8 1 646 // CHECK_X86_64_M64: #define __k8__ 1 647 // CHECK_X86_64_M64: #define __x86_64 1 648 // CHECK_X86_64_M64: #define __x86_64__ 1 649 // 650 // RUN: %clang -march=k8 -m32 -E -dM %s -o - 2>&1 \ 651 // RUN: | FileCheck %s -check-prefix=CHECK_K8_M32 652 // CHECK_K8_M32: #define __3dNOW_A__ 1 653 // CHECK_K8_M32: #define __3dNOW__ 1 654 // CHECK_K8_M32: #define __MMX__ 1 655 // CHECK_K8_M32: #define __SSE2__ 1 656 // CHECK_K8_M32: #define __SSE__ 1 657 // CHECK_K8_M32: #define __i386 1 658 // CHECK_K8_M32: #define __i386__ 1 659 // CHECK_K8_M32: #define __k8 1 660 // CHECK_K8_M32: #define __k8__ 1 661 // CHECK_K8_M32: #define __tune_k8__ 1 662 // CHECK_K8_M32: #define i386 1 663 // RUN: %clang -march=k8 -m64 -E -dM %s -o - 2>&1 \ 664 // RUN: | FileCheck %s -check-prefix=CHECK_K8_M64 665 // CHECK_K8_M64: #define __3dNOW_A__ 1 666 // CHECK_K8_M64: #define __3dNOW__ 1 667 // CHECK_K8_M64: #define __MMX__ 1 668 // CHECK_K8_M64: #define __SSE2_MATH__ 1 669 // CHECK_K8_M64: #define __SSE2__ 1 670 // CHECK_K8_M64: #define __SSE_MATH__ 1 671 // CHECK_K8_M64: #define __SSE__ 1 672 // CHECK_K8_M64: #define __amd64 1 673 // CHECK_K8_M64: #define __amd64__ 1 674 // CHECK_K8_M64: #define __k8 1 675 // CHECK_K8_M64: #define __k8__ 1 676 // CHECK_K8_M64: #define __tune_k8__ 1 677 // CHECK_K8_M64: #define __x86_64 1 678 // CHECK_K8_M64: #define __x86_64__ 1 679 // 680 // RUN: %clang -march=k8-sse3 -m32 -E -dM %s -o - 2>&1 \ 681 // RUN: | FileCheck %s -check-prefix=CHECK_K8_SSE3_M32 682 // CHECK_K8_SSE3_M32: #define __3dNOW_A__ 1 683 // CHECK_K8_SSE3_M32: #define __3dNOW__ 1 684 // CHECK_K8_SSE3_M32: #define __MMX__ 1 685 // CHECK_K8_SSE3_M32: #define __SSE2__ 1 686 // CHECK_K8_SSE3_M32: #define __SSE3__ 1 687 // CHECK_K8_SSE3_M32: #define __SSE__ 1 688 // CHECK_K8_SSE3_M32: #define __i386 1 689 // CHECK_K8_SSE3_M32: #define __i386__ 1 690 // CHECK_K8_SSE3_M32: #define __k8 1 691 // CHECK_K8_SSE3_M32: #define __k8__ 1 692 // CHECK_K8_SSE3_M32: #define __tune_k8__ 1 693 // CHECK_K8_SSE3_M32: #define i386 1 694 // RUN: %clang -march=k8-sse3 -m64 -E -dM %s -o - 2>&1 \ 695 // RUN: | FileCheck %s -check-prefix=CHECK_K8_SSE3_M64 696 // CHECK_K8_SSE3_M64: #define __3dNOW_A__ 1 697 // CHECK_K8_SSE3_M64: #define __3dNOW__ 1 698 // CHECK_K8_SSE3_M64: #define __MMX__ 1 699 // CHECK_K8_SSE3_M64: #define __SSE2_MATH__ 1 700 // CHECK_K8_SSE3_M64: #define __SSE2__ 1 701 // CHECK_K8_SSE3_M64: #define __SSE3__ 1 702 // CHECK_K8_SSE3_M64: #define __SSE_MATH__ 1 703 // CHECK_K8_SSE3_M64: #define __SSE__ 1 704 // CHECK_K8_SSE3_M64: #define __amd64 1 705 // CHECK_K8_SSE3_M64: #define __amd64__ 1 706 // CHECK_K8_SSE3_M64: #define __k8 1 707 // CHECK_K8_SSE3_M64: #define __k8__ 1 708 // CHECK_K8_SSE3_M64: #define __tune_k8__ 1 709 // CHECK_K8_SSE3_M64: #define __x86_64 1 710 // CHECK_K8_SSE3_M64: #define __x86_64__ 1 711 // 712 // RUN: %clang -march=opteron -m32 -E -dM %s -o - 2>&1 \ 713 // RUN: | FileCheck %s -check-prefix=CHECK_OPTERON_M32 714 // CHECK_OPTERON_M32: #define __3dNOW_A__ 1 715 // CHECK_OPTERON_M32: #define __3dNOW__ 1 716 // CHECK_OPTERON_M32: #define __MMX__ 1 717 // CHECK_OPTERON_M32: #define __SSE2__ 1 718 // CHECK_OPTERON_M32: #define __SSE__ 1 719 // CHECK_OPTERON_M32: #define __i386 1 720 // CHECK_OPTERON_M32: #define __i386__ 1 721 // CHECK_OPTERON_M32: #define __k8 1 722 // CHECK_OPTERON_M32: #define __k8__ 1 723 // CHECK_OPTERON_M32: #define __tune_k8__ 1 724 // CHECK_OPTERON_M32: #define i386 1 725 // RUN: %clang -march=opteron -m64 -E -dM %s -o - 2>&1 \ 726 // RUN: | FileCheck %s -check-prefix=CHECK_OPTERON_M64 727 // CHECK_OPTERON_M64: #define __3dNOW_A__ 1 728 // CHECK_OPTERON_M64: #define __3dNOW__ 1 729 // CHECK_OPTERON_M64: #define __MMX__ 1 730 // CHECK_OPTERON_M64: #define __SSE2_MATH__ 1 731 // CHECK_OPTERON_M64: #define __SSE2__ 1 732 // CHECK_OPTERON_M64: #define __SSE_MATH__ 1 733 // CHECK_OPTERON_M64: #define __SSE__ 1 734 // CHECK_OPTERON_M64: #define __amd64 1 735 // CHECK_OPTERON_M64: #define __amd64__ 1 736 // CHECK_OPTERON_M64: #define __k8 1 737 // CHECK_OPTERON_M64: #define __k8__ 1 738 // CHECK_OPTERON_M64: #define __tune_k8__ 1 739 // CHECK_OPTERON_M64: #define __x86_64 1 740 // CHECK_OPTERON_M64: #define __x86_64__ 1 741 // 742 // RUN: %clang -march=opteron-sse3 -m32 -E -dM %s -o - 2>&1 \ 743 // RUN: | FileCheck %s -check-prefix=CHECK_OPTERON_SSE3_M32 744 // CHECK_OPTERON_SSE3_M32: #define __3dNOW_A__ 1 745 // CHECK_OPTERON_SSE3_M32: #define __3dNOW__ 1 746 // CHECK_OPTERON_SSE3_M32: #define __MMX__ 1 747 // CHECK_OPTERON_SSE3_M32: #define __SSE2__ 1 748 // CHECK_OPTERON_SSE3_M32: #define __SSE3__ 1 749 // CHECK_OPTERON_SSE3_M32: #define __SSE__ 1 750 // CHECK_OPTERON_SSE3_M32: #define __i386 1 751 // CHECK_OPTERON_SSE3_M32: #define __i386__ 1 752 // CHECK_OPTERON_SSE3_M32: #define __k8 1 753 // CHECK_OPTERON_SSE3_M32: #define __k8__ 1 754 // CHECK_OPTERON_SSE3_M32: #define __tune_k8__ 1 755 // CHECK_OPTERON_SSE3_M32: #define i386 1 756 // RUN: %clang -march=opteron-sse3 -m64 -E -dM %s -o - 2>&1 \ 757 // RUN: | FileCheck %s -check-prefix=CHECK_OPTERON_SSE3_M64 758 // CHECK_OPTERON_SSE3_M64: #define __3dNOW_A__ 1 759 // CHECK_OPTERON_SSE3_M64: #define __3dNOW__ 1 760 // CHECK_OPTERON_SSE3_M64: #define __MMX__ 1 761 // CHECK_OPTERON_SSE3_M64: #define __SSE2_MATH__ 1 762 // CHECK_OPTERON_SSE3_M64: #define __SSE2__ 1 763 // CHECK_OPTERON_SSE3_M64: #define __SSE3__ 1 764 // CHECK_OPTERON_SSE3_M64: #define __SSE_MATH__ 1 765 // CHECK_OPTERON_SSE3_M64: #define __SSE__ 1 766 // CHECK_OPTERON_SSE3_M64: #define __amd64 1 767 // CHECK_OPTERON_SSE3_M64: #define __amd64__ 1 768 // CHECK_OPTERON_SSE3_M64: #define __k8 1 769 // CHECK_OPTERON_SSE3_M64: #define __k8__ 1 770 // CHECK_OPTERON_SSE3_M64: #define __tune_k8__ 1 771 // CHECK_OPTERON_SSE3_M64: #define __x86_64 1 772 // CHECK_OPTERON_SSE3_M64: #define __x86_64__ 1 773 // 774 // RUN: %clang -march=athlon64 -m32 -E -dM %s -o - 2>&1 \ 775 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON64_M32 776 // CHECK_ATHLON64_M32: #define __3dNOW_A__ 1 777 // CHECK_ATHLON64_M32: #define __3dNOW__ 1 778 // CHECK_ATHLON64_M32: #define __MMX__ 1 779 // CHECK_ATHLON64_M32: #define __SSE2__ 1 780 // CHECK_ATHLON64_M32: #define __SSE__ 1 781 // CHECK_ATHLON64_M32: #define __i386 1 782 // CHECK_ATHLON64_M32: #define __i386__ 1 783 // CHECK_ATHLON64_M32: #define __k8 1 784 // CHECK_ATHLON64_M32: #define __k8__ 1 785 // CHECK_ATHLON64_M32: #define __tune_k8__ 1 786 // CHECK_ATHLON64_M32: #define i386 1 787 // RUN: %clang -march=athlon64 -m64 -E -dM %s -o - 2>&1 \ 788 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON64_M64 789 // CHECK_ATHLON64_M64: #define __3dNOW_A__ 1 790 // CHECK_ATHLON64_M64: #define __3dNOW__ 1 791 // CHECK_ATHLON64_M64: #define __MMX__ 1 792 // CHECK_ATHLON64_M64: #define __SSE2_MATH__ 1 793 // CHECK_ATHLON64_M64: #define __SSE2__ 1 794 // CHECK_ATHLON64_M64: #define __SSE_MATH__ 1 795 // CHECK_ATHLON64_M64: #define __SSE__ 1 796 // CHECK_ATHLON64_M64: #define __amd64 1 797 // CHECK_ATHLON64_M64: #define __amd64__ 1 798 // CHECK_ATHLON64_M64: #define __k8 1 799 // CHECK_ATHLON64_M64: #define __k8__ 1 800 // CHECK_ATHLON64_M64: #define __tune_k8__ 1 801 // CHECK_ATHLON64_M64: #define __x86_64 1 802 // CHECK_ATHLON64_M64: #define __x86_64__ 1 803 // 804 // RUN: %clang -march=athlon64-sse3 -m32 -E -dM %s -o - 2>&1 \ 805 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON64_SSE3_M32 806 // CHECK_ATHLON64_SSE3_M32: #define __3dNOW_A__ 1 807 // CHECK_ATHLON64_SSE3_M32: #define __3dNOW__ 1 808 // CHECK_ATHLON64_SSE3_M32: #define __MMX__ 1 809 // CHECK_ATHLON64_SSE3_M32: #define __SSE2__ 1 810 // CHECK_ATHLON64_SSE3_M32: #define __SSE3__ 1 811 // CHECK_ATHLON64_SSE3_M32: #define __SSE__ 1 812 // CHECK_ATHLON64_SSE3_M32: #define __i386 1 813 // CHECK_ATHLON64_SSE3_M32: #define __i386__ 1 814 // CHECK_ATHLON64_SSE3_M32: #define __k8 1 815 // CHECK_ATHLON64_SSE3_M32: #define __k8__ 1 816 // CHECK_ATHLON64_SSE3_M32: #define __tune_k8__ 1 817 // CHECK_ATHLON64_SSE3_M32: #define i386 1 818 // RUN: %clang -march=athlon64-sse3 -m64 -E -dM %s -o - 2>&1 \ 819 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON64_SSE3_M64 820 // CHECK_ATHLON64_SSE3_M64: #define __3dNOW_A__ 1 821 // CHECK_ATHLON64_SSE3_M64: #define __3dNOW__ 1 822 // CHECK_ATHLON64_SSE3_M64: #define __MMX__ 1 823 // CHECK_ATHLON64_SSE3_M64: #define __SSE2_MATH__ 1 824 // CHECK_ATHLON64_SSE3_M64: #define __SSE2__ 1 825 // CHECK_ATHLON64_SSE3_M64: #define __SSE3__ 1 826 // CHECK_ATHLON64_SSE3_M64: #define __SSE_MATH__ 1 827 // CHECK_ATHLON64_SSE3_M64: #define __SSE__ 1 828 // CHECK_ATHLON64_SSE3_M64: #define __amd64 1 829 // CHECK_ATHLON64_SSE3_M64: #define __amd64__ 1 830 // CHECK_ATHLON64_SSE3_M64: #define __k8 1 831 // CHECK_ATHLON64_SSE3_M64: #define __k8__ 1 832 // CHECK_ATHLON64_SSE3_M64: #define __tune_k8__ 1 833 // CHECK_ATHLON64_SSE3_M64: #define __x86_64 1 834 // CHECK_ATHLON64_SSE3_M64: #define __x86_64__ 1 835 // 836 // RUN: %clang -march=athlon-fx -m32 -E -dM %s -o - 2>&1 \ 837 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON_FX_M32 838 // CHECK_ATHLON_FX_M32: #define __3dNOW_A__ 1 839 // CHECK_ATHLON_FX_M32: #define __3dNOW__ 1 840 // CHECK_ATHLON_FX_M32: #define __MMX__ 1 841 // CHECK_ATHLON_FX_M32: #define __SSE2__ 1 842 // CHECK_ATHLON_FX_M32: #define __SSE__ 1 843 // CHECK_ATHLON_FX_M32: #define __i386 1 844 // CHECK_ATHLON_FX_M32: #define __i386__ 1 845 // CHECK_ATHLON_FX_M32: #define __k8 1 846 // CHECK_ATHLON_FX_M32: #define __k8__ 1 847 // CHECK_ATHLON_FX_M32: #define __tune_k8__ 1 848 // CHECK_ATHLON_FX_M32: #define i386 1 849 // RUN: %clang -march=athlon-fx -m64 -E -dM %s -o - 2>&1 \ 850 // RUN: | FileCheck %s -check-prefix=CHECK_ATHLON_FX_M64 851 // CHECK_ATHLON_FX_M64: #define __3dNOW_A__ 1 852 // CHECK_ATHLON_FX_M64: #define __3dNOW__ 1 853 // CHECK_ATHLON_FX_M64: #define __MMX__ 1 854 // CHECK_ATHLON_FX_M64: #define __SSE2_MATH__ 1 855 // CHECK_ATHLON_FX_M64: #define __SSE2__ 1 856 // CHECK_ATHLON_FX_M64: #define __SSE_MATH__ 1 857 // CHECK_ATHLON_FX_M64: #define __SSE__ 1 858 // CHECK_ATHLON_FX_M64: #define __amd64 1 859 // CHECK_ATHLON_FX_M64: #define __amd64__ 1 860 // CHECK_ATHLON_FX_M64: #define __k8 1 861 // CHECK_ATHLON_FX_M64: #define __k8__ 1 862 // CHECK_ATHLON_FX_M64: #define __tune_k8__ 1 863 // CHECK_ATHLON_FX_M64: #define __x86_64 1 864 // CHECK_ATHLON_FX_M64: #define __x86_64__ 1 865 // 866 // End X86/GCC/Linux tests ------------------ 867