1*67e74705SXin Li // RUN: %clang -target i386-unknown-unknown -### -S -O0 -Os %s -o %t.s -fverbose-asm -funwind-tables -fvisibility=hidden 2>&1 | FileCheck -check-prefix=I386 %s 2*67e74705SXin Li // I386: "-triple" "i386-unknown-unknown" 3*67e74705SXin Li // I386: "-S" 4*67e74705SXin Li // I386: "-disable-free" 5*67e74705SXin Li // I386: "-mrelocation-model" "static" 6*67e74705SXin Li // I386: "-mdisable-fp-elim" 7*67e74705SXin Li // I386: "-masm-verbose" 8*67e74705SXin Li // I386: "-munwind-tables" 9*67e74705SXin Li // I386: "-Os" 10*67e74705SXin Li // I386: "-fvisibility" 11*67e74705SXin Li // I386: "hidden" 12*67e74705SXin Li // I386: "-o" 13*67e74705SXin Li // I386: clang-translation 14*67e74705SXin Li // RUN: %clang -target i386-apple-darwin9 -### -S %s -o %t.s 2>&1 | \ 15*67e74705SXin Li // RUN: FileCheck -check-prefix=YONAH %s 16*67e74705SXin Li // YONAH: "-target-cpu" 17*67e74705SXin Li // YONAH: "yonah" 18*67e74705SXin Li // RUN: %clang -target x86_64-apple-darwin9 -### -S %s -o %t.s 2>&1 | \ 19*67e74705SXin Li // RUN: FileCheck -check-prefix=CORE2 %s 20*67e74705SXin Li // CORE2: "-target-cpu" 21*67e74705SXin Li // CORE2: "core2" 22*67e74705SXin Li // RUN: %clang -target x86_64h-apple-darwin -### -S %s -o %t.s 2>&1 | \ 23*67e74705SXin Li // RUN: FileCheck -check-prefix=AVX2 %s 24*67e74705SXin Li // AVX2: "-target-cpu" 25*67e74705SXin Li // AVX2: "core-avx2" 26*67e74705SXin Li 27*67e74705SXin Li // RUN: %clang -target x86_64-apple-darwin10 -### -S %s -arch armv7 2>&1 | \ 28*67e74705SXin Li // RUN: FileCheck -check-prefix=ARMV7_DEFAULT %s 29*67e74705SXin Li // ARMV7_DEFAULT: clang 30*67e74705SXin Li // ARMV7_DEFAULT: "-cc1" 31*67e74705SXin Li // ARMV7_DEFAULT-NOT: "-msoft-float" 32*67e74705SXin Li // ARMV7_DEFAULT: "-mfloat-abi" "soft" 33*67e74705SXin Li // ARMV7_DEFAULT-NOT: "-msoft-float" 34*67e74705SXin Li // ARMV7_DEFAULT: "-x" "c" 35*67e74705SXin Li 36*67e74705SXin Li // RUN: %clang -target x86_64-apple-darwin10 -### -S %s -arch armv7 \ 37*67e74705SXin Li // RUN: -msoft-float 2>&1 | FileCheck -check-prefix=ARMV7_SOFTFLOAT %s 38*67e74705SXin Li // ARMV7_SOFTFLOAT: clang 39*67e74705SXin Li // ARMV7_SOFTFLOAT: "-cc1" 40*67e74705SXin Li // ARMV7_SOFTFLOAT: "-target-feature" 41*67e74705SXin Li // ARMV7_SOFTFLOAT: "-neon" 42*67e74705SXin Li // ARMV7_SOFTFLOAT: "-msoft-float" 43*67e74705SXin Li // ARMV7_SOFTFLOAT: "-mfloat-abi" "soft" 44*67e74705SXin Li // ARMV7_SOFTFLOAT: "-x" "c" 45*67e74705SXin Li 46*67e74705SXin Li // RUN: %clang -target x86_64-apple-darwin10 -### -S %s -arch armv7 \ 47*67e74705SXin Li // RUN: -mhard-float 2>&1 | FileCheck -check-prefix=ARMV7_HARDFLOAT %s 48*67e74705SXin Li // ARMV7_HARDFLOAT: clang 49*67e74705SXin Li // ARMV7_HARDFLOAT: "-cc1" 50*67e74705SXin Li // ARMV7_HARDFLOAT-NOT: "-msoft-float" 51*67e74705SXin Li // ARMV7_HARDFLOAT: "-mfloat-abi" "hard" 52*67e74705SXin Li // ARMV7_HARDFLOAT-NOT: "-msoft-float" 53*67e74705SXin Li // ARMV7_HARDFLOAT: "-x" "c" 54*67e74705SXin Li 55*67e74705SXin Li // RUN: %clang -target arm-linux -### -S %s -march=armv5e 2>&1 | \ 56*67e74705SXin Li // RUN: FileCheck -check-prefix=ARMV5E %s 57*67e74705SXin Li // ARMV5E: clang 58*67e74705SXin Li // ARMV5E: "-cc1" 59*67e74705SXin Li // ARMV5E: "-target-cpu" "arm1022e" 60*67e74705SXin Li 61*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 62*67e74705SXin Li // RUN: -### -S %s -mcpu=G5 2>&1 | FileCheck -check-prefix=PPCG5 %s 63*67e74705SXin Li // PPCG5: clang 64*67e74705SXin Li // PPCG5: "-cc1" 65*67e74705SXin Li // PPCG5: "-target-cpu" "g5" 66*67e74705SXin Li 67*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 68*67e74705SXin Li // RUN: -### -S %s -mcpu=power7 2>&1 | FileCheck -check-prefix=PPCPWR7 %s 69*67e74705SXin Li // PPCPWR7: clang 70*67e74705SXin Li // PPCPWR7: "-cc1" 71*67e74705SXin Li // PPCPWR7: "-target-cpu" "pwr7" 72*67e74705SXin Li 73*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 74*67e74705SXin Li // RUN: -### -S %s -mcpu=power8 2>&1 | FileCheck -check-prefix=PPCPWR8 %s 75*67e74705SXin Li // PPCPWR8: clang 76*67e74705SXin Li // PPCPWR8: "-cc1" 77*67e74705SXin Li // PPCPWR8: "-target-cpu" "pwr8" 78*67e74705SXin Li 79*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 80*67e74705SXin Li // RUN: -### -S %s -mcpu=a2q 2>&1 | FileCheck -check-prefix=PPCA2Q %s 81*67e74705SXin Li // PPCA2Q: clang 82*67e74705SXin Li // PPCA2Q: "-cc1" 83*67e74705SXin Li // PPCA2Q: "-target-cpu" "a2q" 84*67e74705SXin Li 85*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 86*67e74705SXin Li // RUN: -### -S %s -mcpu=630 2>&1 | FileCheck -check-prefix=PPC630 %s 87*67e74705SXin Li // PPC630: clang 88*67e74705SXin Li // PPC630: "-cc1" 89*67e74705SXin Li // PPC630: "-target-cpu" "pwr3" 90*67e74705SXin Li 91*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 92*67e74705SXin Li // RUN: -### -S %s -mcpu=power3 2>&1 | FileCheck -check-prefix=PPCPOWER3 %s 93*67e74705SXin Li // PPCPOWER3: clang 94*67e74705SXin Li // PPCPOWER3: "-cc1" 95*67e74705SXin Li // PPCPOWER3: "-target-cpu" "pwr3" 96*67e74705SXin Li 97*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 98*67e74705SXin Li // RUN: -### -S %s -mcpu=pwr3 2>&1 | FileCheck -check-prefix=PPCPWR3 %s 99*67e74705SXin Li // PPCPWR3: clang 100*67e74705SXin Li // PPCPWR3: "-cc1" 101*67e74705SXin Li // PPCPWR3: "-target-cpu" "pwr3" 102*67e74705SXin Li 103*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 104*67e74705SXin Li // RUN: -### -S %s -mcpu=power4 2>&1 | FileCheck -check-prefix=PPCPOWER4 %s 105*67e74705SXin Li // PPCPOWER4: clang 106*67e74705SXin Li // PPCPOWER4: "-cc1" 107*67e74705SXin Li // PPCPOWER4: "-target-cpu" "pwr4" 108*67e74705SXin Li 109*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 110*67e74705SXin Li // RUN: -### -S %s -mcpu=pwr4 2>&1 | FileCheck -check-prefix=PPCPWR4 %s 111*67e74705SXin Li // PPCPWR4: clang 112*67e74705SXin Li // PPCPWR4: "-cc1" 113*67e74705SXin Li // PPCPWR4: "-target-cpu" "pwr4" 114*67e74705SXin Li 115*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 116*67e74705SXin Li // RUN: -### -S %s -mcpu=power5 2>&1 | FileCheck -check-prefix=PPCPOWER5 %s 117*67e74705SXin Li // PPCPOWER5: clang 118*67e74705SXin Li // PPCPOWER5: "-cc1" 119*67e74705SXin Li // PPCPOWER5: "-target-cpu" "pwr5" 120*67e74705SXin Li 121*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 122*67e74705SXin Li // RUN: -### -S %s -mcpu=pwr5 2>&1 | FileCheck -check-prefix=PPCPWR5 %s 123*67e74705SXin Li // PPCPWR5: clang 124*67e74705SXin Li // PPCPWR5: "-cc1" 125*67e74705SXin Li // PPCPWR5: "-target-cpu" "pwr5" 126*67e74705SXin Li 127*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 128*67e74705SXin Li // RUN: -### -S %s -mcpu=power5x 2>&1 | FileCheck -check-prefix=PPCPOWER5X %s 129*67e74705SXin Li // PPCPOWER5X: clang 130*67e74705SXin Li // PPCPOWER5X: "-cc1" 131*67e74705SXin Li // PPCPOWER5X: "-target-cpu" "pwr5x" 132*67e74705SXin Li 133*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 134*67e74705SXin Li // RUN: -### -S %s -mcpu=pwr5x 2>&1 | FileCheck -check-prefix=PPCPWR5X %s 135*67e74705SXin Li // PPCPWR5X: clang 136*67e74705SXin Li // PPCPWR5X: "-cc1" 137*67e74705SXin Li // PPCPWR5X: "-target-cpu" "pwr5x" 138*67e74705SXin Li 139*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 140*67e74705SXin Li // RUN: -### -S %s -mcpu=power6 2>&1 | FileCheck -check-prefix=PPCPOWER6 %s 141*67e74705SXin Li // PPCPOWER6: clang 142*67e74705SXin Li // PPCPOWER6: "-cc1" 143*67e74705SXin Li // PPCPOWER6: "-target-cpu" "pwr6" 144*67e74705SXin Li 145*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 146*67e74705SXin Li // RUN: -### -S %s -mcpu=pwr6 2>&1 | FileCheck -check-prefix=PPCPWR6 %s 147*67e74705SXin Li // PPCPWR6: clang 148*67e74705SXin Li // PPCPWR6: "-cc1" 149*67e74705SXin Li // PPCPWR6: "-target-cpu" "pwr6" 150*67e74705SXin Li 151*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 152*67e74705SXin Li // RUN: -### -S %s -mcpu=power6x 2>&1 | FileCheck -check-prefix=PPCPOWER6X %s 153*67e74705SXin Li // PPCPOWER6X: clang 154*67e74705SXin Li // PPCPOWER6X: "-cc1" 155*67e74705SXin Li // PPCPOWER6X: "-target-cpu" "pwr6x" 156*67e74705SXin Li 157*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 158*67e74705SXin Li // RUN: -### -S %s -mcpu=pwr6x 2>&1 | FileCheck -check-prefix=PPCPWR6X %s 159*67e74705SXin Li // PPCPWR6X: clang 160*67e74705SXin Li // PPCPWR6X: "-cc1" 161*67e74705SXin Li // PPCPWR6X: "-target-cpu" "pwr6x" 162*67e74705SXin Li 163*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 164*67e74705SXin Li // RUN: -### -S %s -mcpu=power7 2>&1 | FileCheck -check-prefix=PPCPOWER7 %s 165*67e74705SXin Li // PPCPOWER7: clang 166*67e74705SXin Li // PPCPOWER7: "-cc1" 167*67e74705SXin Li // PPCPOWER7: "-target-cpu" "pwr7" 168*67e74705SXin Li 169*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 170*67e74705SXin Li // RUN: -### -S %s -mcpu=powerpc 2>&1 | FileCheck -check-prefix=PPCPOWERPC %s 171*67e74705SXin Li // PPCPOWERPC: clang 172*67e74705SXin Li // PPCPOWERPC: "-cc1" 173*67e74705SXin Li // PPCPOWERPC: "-target-cpu" "ppc" 174*67e74705SXin Li 175*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 176*67e74705SXin Li // RUN: -### -S %s -mcpu=powerpc64 2>&1 | FileCheck -check-prefix=PPCPOWERPC64 %s 177*67e74705SXin Li // PPCPOWERPC64: clang 178*67e74705SXin Li // PPCPOWERPC64: "-cc1" 179*67e74705SXin Li // PPCPOWERPC64: "-target-cpu" "ppc64" 180*67e74705SXin Li 181*67e74705SXin Li // RUN: %clang -target powerpc64-unknown-linux-gnu \ 182*67e74705SXin Li // RUN: -### -S %s 2>&1 | FileCheck -check-prefix=PPC64NS %s 183*67e74705SXin Li // PPC64NS: clang 184*67e74705SXin Li // PPC64NS: "-cc1" 185*67e74705SXin Li // PPC64NS: "-target-cpu" "ppc64" 186*67e74705SXin Li 187*67e74705SXin Li // RUN: %clang -target powerpc-fsl-linux -### -S %s \ 188*67e74705SXin Li // RUN: -mcpu=e500mc 2>&1 | FileCheck -check-prefix=PPCE500MC %s 189*67e74705SXin Li // PPCE500MC: clang 190*67e74705SXin Li // PPCE500MC: "-cc1" 191*67e74705SXin Li // PPCE500MC: "-target-cpu" "e500mc" 192*67e74705SXin Li 193*67e74705SXin Li // RUN: %clang -target powerpc64-fsl-linux -### -S \ 194*67e74705SXin Li // RUN: %s -mcpu=e5500 2>&1 | FileCheck -check-prefix=PPCE5500 %s 195*67e74705SXin Li // PPCE5500: clang 196*67e74705SXin Li // PPCE5500: "-cc1" 197*67e74705SXin Li // PPCE5500: "-target-cpu" "e5500" 198*67e74705SXin Li 199*67e74705SXin Li // RUN: %clang -target amd64-unknown-openbsd5.2 -### -S %s 2>&1 | \ 200*67e74705SXin Li // RUN: FileCheck -check-prefix=AMD64 %s 201*67e74705SXin Li // AMD64: clang 202*67e74705SXin Li // AMD64: "-cc1" 203*67e74705SXin Li // AMD64: "-triple" 204*67e74705SXin Li // AMD64: "amd64-unknown-openbsd5.2" 205*67e74705SXin Li // AMD64: "-munwind-tables" 206*67e74705SXin Li 207*67e74705SXin Li // RUN: %clang -target amd64--mingw32 -### -S %s 2>&1 | \ 208*67e74705SXin Li // RUN: FileCheck -check-prefix=AMD64-MINGW %s 209*67e74705SXin Li // AMD64-MINGW: clang 210*67e74705SXin Li // AMD64-MINGW: "-cc1" 211*67e74705SXin Li // AMD64-MINGW: "-triple" 212*67e74705SXin Li // AMD64-MINGW: "amd64--windows-gnu" 213*67e74705SXin Li // AMD64-MINGW: "-munwind-tables" 214*67e74705SXin Li 215*67e74705SXin Li // RUN: %clang -target i686-linux-android -### -S %s 2>&1 \ 216*67e74705SXin Li // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ 217*67e74705SXin Li // RUN: | FileCheck --check-prefix=ANDROID-X86 %s 218*67e74705SXin Li // ANDROID-X86: clang 219*67e74705SXin Li // ANDROID-X86: "-target-cpu" "i686" 220*67e74705SXin Li // ANDROID-X86: "-target-feature" "+ssse3" 221*67e74705SXin Li 222*67e74705SXin Li // RUN: %clang -target x86_64-linux-android -### -S %s 2>&1 \ 223*67e74705SXin Li // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ 224*67e74705SXin Li // RUN: | FileCheck --check-prefix=ANDROID-X86_64 %s 225*67e74705SXin Li // ANDROID-X86_64: clang 226*67e74705SXin Li // ANDROID-X86_64: "-target-cpu" "x86-64" 227*67e74705SXin Li // ANDROID-X86_64: "-target-feature" "+sse4.2" 228*67e74705SXin Li // ANDROID-X86_64: "-target-feature" "+popcnt" 229*67e74705SXin Li 230*67e74705SXin Li // RUN: %clang -target mips-linux-gnu -### -S %s 2>&1 | \ 231*67e74705SXin Li // RUN: FileCheck -check-prefix=MIPS %s 232*67e74705SXin Li // MIPS: clang 233*67e74705SXin Li // MIPS: "-cc1" 234*67e74705SXin Li // MIPS: "-target-cpu" "mips32r2" 235*67e74705SXin Li // MIPS: "-mfloat-abi" "hard" 236*67e74705SXin Li 237*67e74705SXin Li // RUN: %clang -target mipsel-linux-gnu -### -S %s 2>&1 | \ 238*67e74705SXin Li // RUN: FileCheck -check-prefix=MIPSEL %s 239*67e74705SXin Li // MIPSEL: clang 240*67e74705SXin Li // MIPSEL: "-cc1" 241*67e74705SXin Li // MIPSEL: "-target-cpu" "mips32r2" 242*67e74705SXin Li // MIPSEL: "-mfloat-abi" "hard" 243*67e74705SXin Li 244*67e74705SXin Li // RUN: %clang -target mipsel-linux-android -### -S %s 2>&1 | \ 245*67e74705SXin Li // RUN: FileCheck -check-prefix=MIPSEL-ANDROID %s 246*67e74705SXin Li // MIPSEL-ANDROID: clang 247*67e74705SXin Li // MIPSEL-ANDROID: "-cc1" 248*67e74705SXin Li // MIPSEL-ANDROID: "-target-cpu" "mips32" 249*67e74705SXin Li // MIPSEL-ANDROID: "-target-feature" "+fpxx" 250*67e74705SXin Li // MIPSEL-ANDROID: "-target-feature" "+nooddspreg" 251*67e74705SXin Li // MIPSEL-ANDROID: "-mfloat-abi" "hard" 252*67e74705SXin Li 253*67e74705SXin Li // RUN: %clang -target mipsel-linux-android -### -S %s -mcpu=mips32r6 2>&1 | \ 254*67e74705SXin Li // RUN: FileCheck -check-prefix=MIPSEL-ANDROID-R6 %s 255*67e74705SXin Li // MIPSEL-ANDROID-R6: clang 256*67e74705SXin Li // MIPSEL-ANDROID-R6: "-cc1" 257*67e74705SXin Li // MIPSEL-ANDROID-R6: "-target-cpu" "mips32r6" 258*67e74705SXin Li // MIPSEL-ANDROID-R6: "-target-feature" "+fp64" 259*67e74705SXin Li // MIPSEL-ANDROID-R6: "-target-feature" "+nooddspreg" 260*67e74705SXin Li // MIPSEL-ANDROID-R6: "-mfloat-abi" "hard" 261*67e74705SXin Li 262*67e74705SXin Li // RUN: %clang -target mips64-linux-gnu -### -S %s 2>&1 | \ 263*67e74705SXin Li // RUN: FileCheck -check-prefix=MIPS64 %s 264*67e74705SXin Li // MIPS64: clang 265*67e74705SXin Li // MIPS64: "-cc1" 266*67e74705SXin Li // MIPS64: "-target-cpu" "mips64r2" 267*67e74705SXin Li // MIPS64: "-mfloat-abi" "hard" 268*67e74705SXin Li 269*67e74705SXin Li // RUN: %clang -target mips64el-linux-gnu -### -S %s 2>&1 | \ 270*67e74705SXin Li // RUN: FileCheck -check-prefix=MIPS64EL %s 271*67e74705SXin Li // MIPS64EL: clang 272*67e74705SXin Li // MIPS64EL: "-cc1" 273*67e74705SXin Li // MIPS64EL: "-target-cpu" "mips64r2" 274*67e74705SXin Li // MIPS64EL: "-mfloat-abi" "hard" 275*67e74705SXin Li 276*67e74705SXin Li // RUN: %clang -target mips64el-linux-android -### -S %s 2>&1 | \ 277*67e74705SXin Li // RUN: FileCheck -check-prefix=MIPS64EL-ANDROID %s 278*67e74705SXin Li // MIPS64EL-ANDROID: clang 279*67e74705SXin Li // MIPS64EL-ANDROID: "-cc1" 280*67e74705SXin Li // MIPS64EL-ANDROID: "-target-cpu" "mips64r6" 281*67e74705SXin Li // MIPS64EL-ANDROID: "-mfloat-abi" "hard" 282