Home | History | Annotate | Download | only in Driver
      1 // Check passing options to the assembler for MIPS targets.
      2 //
      3 // RUN: %clang -target mips-linux-gnu -### \
      4 // RUN:   -no-integrated-as -c %s 2>&1 \
      5 // RUN:   | FileCheck -check-prefix=MIPS32R2-EB-AS %s
      6 // RUN: %clang -target mipsel-linux-gnu -### \
      7 // RUN:   -no-integrated-as -c -EB %s 2>&1 \
      8 // RUN:   | FileCheck -check-prefix=MIPS32R2-EB-AS %s
      9 // MIPS32R2-EB-AS: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
     10 // MIPS32R2-EB-AS-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-KPIC"
     11 //
     12 // RUN: %clang -target mips-linux-gnu -### \
     13 // RUN:   -no-integrated-as -fPIC -c %s 2>&1 \
     14 // RUN:   | FileCheck -check-prefix=MIPS32R2-EB-PIC %s
     15 // MIPS32R2-EB-PIC: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-call_nonpic" "-EB"
     16 // MIPS32R2-EB-PIC: "-KPIC"
     17 //
     18 // RUN: %clang -target mipsel-linux-gnu -### \
     19 // RUN:   -no-integrated-as -c %s 2>&1 \
     20 // RUN:   | FileCheck -check-prefix=MIPS32R2-DEF-EL-AS %s
     21 // MIPS32R2-DEF-EL-AS: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EL"
     22 //
     23 // RUN: %clang -target mips64-linux-gnu -### \
     24 // RUN:   -no-integrated-as -c %s 2>&1 \
     25 // RUN:   | FileCheck -check-prefix=MIPS64R2-EB-AS %s
     26 // MIPS64R2-EB-AS: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" "-mno-shared" "-KPIC" "-EB"
     27 //
     28 // RUN: %clang -target mips64el-linux-gnu -### \
     29 // RUN:   -no-integrated-as -c %s 2>&1 \
     30 // RUN:   | FileCheck -check-prefix=MIPS64R2-DEF-EL-AS %s
     31 // MIPS64R2-DEF-EL-AS: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64"  "-mno-shared" "-KPIC" "-EL"
     32 //
     33 // RUN: %clang -target mips64-linux-gnu -mabi=n32 -### \
     34 // RUN:   -no-integrated-as -c %s 2>&1 \
     35 // RUN:   | FileCheck -check-prefix=MIPS-N32 %s
     36 // MIPS-N32: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "n32" "-mno-shared" "-call_nonpic" "-EB"
     37 //
     38 // RUN: %clang -target mipsel-linux-gnu -mabi=32 -### \
     39 // RUN:   -no-integrated-as -c %s 2>&1 \
     40 // RUN:   | FileCheck -check-prefix=MIPS32R2-EL-AS %s
     41 // RUN: %clang -target mips-linux-gnu -mabi=32 -### \
     42 // RUN:   -no-integrated-as -c %s -EL 2>&1 \
     43 // RUN:   | FileCheck -check-prefix=MIPS32R2-EL-AS %s
     44 // MIPS32R2-EL-AS: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EL"
     45 //
     46 // RUN: %clang -target mips64el-linux-gnu -mabi=64 -### \
     47 // RUN:   -no-integrated-as -c %s 2>&1 \
     48 // RUN:   | FileCheck -check-prefix=MIPS64R2-EL-AS %s
     49 // MIPS64R2-EL-AS: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" "-mno-shared" "-KPIC" "-EL"
     50 //
     51 // RUN: %clang -target mips-linux-gnu -march=mips32r2 -### \
     52 // RUN:   -no-integrated-as -c %s 2>&1 \
     53 // RUN:   | FileCheck -check-prefix=MIPS-32R2 %s
     54 // MIPS-32R2: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
     55 //
     56 // RUN: %clang -target mips-linux-gnu -march=p5600 -### \
     57 // RUN:   -no-integrated-as -c %s 2>&1 \
     58 // RUN:   | FileCheck -check-prefix=MIPS-P5600 %s
     59 // MIPS-P5600: as{{(.exe)?}}" "-march" "p5600" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
     60 //
     61 // RUN: %clang -target mips64-linux-gnu -march=octeon -### \
     62 // RUN:   -no-integrated-as -c %s 2>&1 \
     63 // RUN:   | FileCheck -check-prefix=MIPS-OCTEON %s
     64 // MIPS-OCTEON: as{{(.exe)?}}" "-march" "octeon" "-mabi" "64" "-mno-shared" "-KPIC" "-EB"
     65 //
     66 // RUN: %clang -target mips-linux-gnu -mips1 -### \
     67 // RUN:   -no-integrated-as -c %s 2>&1 \
     68 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-1 %s
     69 // MIPS-ALIAS-1: as{{(.exe)?}}" "-march" "mips1" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
     70 //
     71 // RUN: %clang -target mips-linux-gnu -mips2 -### \
     72 // RUN:   -no-integrated-as -c %s 2>&1 \
     73 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-2 %s
     74 // MIPS-ALIAS-2: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
     75 //
     76 // RUN: %clang -target mips-linux-gnu -mips3 -### \
     77 // RUN:   -no-integrated-as -c %s 2>&1 \
     78 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-3 %s
     79 // MIPS-ALIAS-3: as{{(.exe)?}}" "-march" "mips3" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
     80 //
     81 // RUN: %clang -target mips-linux-gnu -mips4 -### \
     82 // RUN:   -no-integrated-as -c %s 2>&1 \
     83 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-4 %s
     84 // MIPS-ALIAS-4: as{{(.exe)?}}" "-march" "mips4" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
     85 //
     86 // RUN: %clang -target mips-linux-gnu -mips5 -### \
     87 // RUN:   -no-integrated-as -c %s 2>&1 \
     88 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-5 %s
     89 // MIPS-ALIAS-5: as{{(.exe)?}}" "-march" "mips5" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
     90 //
     91 // RUN: %clang -target mips-linux-gnu -mips32 -### \
     92 // RUN:   -no-integrated-as -c %s 2>&1 \
     93 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-32 %s
     94 // MIPS-ALIAS-32: as{{(.exe)?}}" "-march" "mips32" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
     95 //
     96 // RUN: %clang -target mips-linux-gnu -mips32r2 -### \
     97 // RUN:   -no-integrated-as -c %s 2>&1 \
     98 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-32R2 %s
     99 // MIPS-ALIAS-32R2: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
    100 //
    101 // RUN: %clang -target mips-linux-gnu -mips32r3 -### \
    102 // RUN:   -no-integrated-as -c %s 2>&1 \
    103 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-32R3 %s
    104 // MIPS-ALIAS-32R3: as{{(.exe)?}}" "-march" "mips32r3" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
    105 //
    106 // RUN: %clang -target mips-linux-gnu -mips32r5 -### \
    107 // RUN:   -no-integrated-as -c %s 2>&1 \
    108 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-32R5 %s
    109 // MIPS-ALIAS-32R5: as{{(.exe)?}}" "-march" "mips32r5" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
    110 //
    111 // RUN: %clang -target mips-linux-gnu -mips32r6 -### \
    112 // RUN:   -no-integrated-as -c %s 2>&1 \
    113 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-32R6 %s
    114 // MIPS-ALIAS-32R6: as{{(.exe)?}}" "-march" "mips32r6" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
    115 //
    116 // RUN: %clang -target mips64-linux-gnu -mips64 -### \
    117 // RUN:   -no-integrated-as -c %s 2>&1 \
    118 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-64 %s
    119 // MIPS-ALIAS-64: as{{(.exe)?}}" "-march" "mips64" "-mabi" "64" "-mno-shared" "-KPIC" "-EB"
    120 //
    121 // RUN: %clang -target mips64-linux-gnu -mips64r2 -### \
    122 // RUN:   -no-integrated-as -c %s 2>&1 \
    123 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-64R2 %s
    124 // MIPS-ALIAS-64R2: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" "-mno-shared" "-KPIC" "-EB"
    125 //
    126 // RUN: %clang -target mips64-linux-gnu -mips64r3 -### \
    127 // RUN:   -no-integrated-as -c %s 2>&1 \
    128 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-64R3 %s
    129 // MIPS-ALIAS-64R3: as{{(.exe)?}}" "-march" "mips64r3" "-mabi" "64" "-mno-shared" "-KPIC" "-EB"
    130 //
    131 // RUN: %clang -target mips64-linux-gnu -mips64r5 -### \
    132 // RUN:   -no-integrated-as -c %s 2>&1 \
    133 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-64R5 %s
    134 // MIPS-ALIAS-64R5: as{{(.exe)?}}" "-march" "mips64r5" "-mabi" "64" "-mno-shared" "-KPIC" "-EB"
    135 //
    136 // RUN: %clang -target mips64-linux-gnu -mips64r6 -### \
    137 // RUN:   -no-integrated-as -c %s 2>&1 \
    138 // RUN:   | FileCheck -check-prefix=MIPS-ALIAS-64R6 %s
    139 // MIPS-ALIAS-64R6: as{{(.exe)?}}" "-march" "mips64r6" "-mabi" "64" "-mno-shared" "-KPIC" "-EB"
    140 //
    141 // RUN: %clang -target mips-linux-gnu -mno-mips16 -mips16 -### \
    142 // RUN:   -no-integrated-as -c %s 2>&1 \
    143 // RUN:   | FileCheck -check-prefix=MIPS-16 %s
    144 // MIPS-16: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mips16"
    145 //
    146 // RUN: %clang -target mips-linux-gnu -mips16 -mno-mips16 -### \
    147 // RUN:   -no-integrated-as -c %s 2>&1 \
    148 // RUN:   | FileCheck -check-prefix=MIPS-N16 %s
    149 // MIPS-N16: as{{(.exe)?}}"
    150 // MIPS-N16: -no-mips16
    151 //
    152 // RUN: %clang -target mips-linux-gnu -mno-micromips -mmicromips -### \
    153 // RUN:   -no-integrated-as -c %s 2>&1 \
    154 // RUN:   | FileCheck -check-prefix=MIPS-MICRO %s
    155 // MIPS-MICRO: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mmicromips"
    156 //
    157 // RUN: %clang -target mips-linux-gnu -mmicromips -mno-micromips -### \
    158 // RUN:   -no-integrated-as -c %s 2>&1 \
    159 // RUN:   | FileCheck -check-prefix=MIPS-NMICRO %s
    160 // MIPS-NMICRO: as{{(.exe)?}}"
    161 // MIPS-NMICRO-NOT: {{[A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-mmicromips"
    162 //
    163 // RUN: %clang -target mips-linux-gnu -mno-dsp -mdsp -### \
    164 // RUN:   -no-integrated-as -c %s 2>&1 \
    165 // RUN:   | FileCheck -check-prefix=MIPS-DSP %s
    166 // MIPS-DSP: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mdsp"
    167 //
    168 // RUN: %clang -target mips-linux-gnu -mdsp -mno-dsp -### \
    169 // RUN:   -no-integrated-as -c %s 2>&1 \
    170 // RUN:   | FileCheck -check-prefix=MIPS-NDSP %s
    171 // MIPS-NDSP: as{{(.exe)?}}"
    172 // MIPS-NDSP-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-mdsp"
    173 //
    174 // RUN: %clang -target mips-linux-gnu -mno-dspr2 -mdspr2 -### \
    175 // RUN:   -no-integrated-as -c %s 2>&1 \
    176 // RUN:   | FileCheck -check-prefix=MIPS-DSPR2 %s
    177 // MIPS-DSPR2: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mdspr2"
    178 //
    179 // RUN: %clang -target mips-linux-gnu -mdspr2 -mno-dspr2 -### \
    180 // RUN:   -no-integrated-as -c %s 2>&1 \
    181 // RUN:   | FileCheck -check-prefix=MIPS-NDSPR2 %s
    182 // MIPS-NDSPR2: as{{(.exe)?}}"
    183 // MIPS-NDSPR2-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-mdspr2"
    184 //
    185 // RUN: %clang -target mips-linux-gnu -mnan=legacy -mnan=2008 -### \
    186 // RUN:   -no-integrated-as -c %s 2>&1 \
    187 // RUN:   | FileCheck -check-prefix=MIPS-NAN2008 %s
    188 // MIPS-NAN2008: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mnan=2008"
    189 //
    190 // RUN: %clang -target mips-linux-gnu -mnan=2008 -mnan=legacy -### \
    191 // RUN:   -no-integrated-as -c %s 2>&1 \
    192 // RUN:   | FileCheck -check-prefix=MIPS-NAN-LEGACY %s
    193 // MIPS-NAN-LEGACY: as{{(.exe)?}}"
    194 // MIPS-NAN-LEGACY-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-mnan={{.*}}"
    195 //
    196 // RUN: %clang -target mips-linux-gnu -mfp64 -mfpxx -mfp32 -### \
    197 // RUN:   -no-integrated-as -c %s 2>&1 \
    198 // RUN:   | FileCheck -check-prefix=MIPS-MFP32 %s
    199 // MIPS-MFP32: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mfp32"
    200 //
    201 // RUN: %clang -target mips-linux-gnu -mfp32 -mfp64 -mfpxx -### \
    202 // RUN:   -no-integrated-as -c %s 2>&1 \
    203 // RUN:   | FileCheck -check-prefix=MIPS-MFPXX %s
    204 // MIPS-MFPXX: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mfpxx"
    205 //
    206 // RUN: %clang -target mips-linux-gnu -mfpxx -mfp32 -mfp64 -### \
    207 // RUN:   -no-integrated-as -c %s 2>&1 \
    208 // RUN:   | FileCheck -check-prefix=MIPS-MFP64 %s
    209 // MIPS-MFP64: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mfp64"
    210 //
    211 // RUN: %clang -target mips-linux-gnu -mno-msa -mmsa -### \
    212 // RUN:   -no-integrated-as -c %s 2>&1 \
    213 // RUN:   | FileCheck -check-prefix=MIPS-MSA %s
    214 // MIPS-MSA: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mmsa"
    215 //
    216 // RUN: %clang -target mips-linux-gnu -mmsa -mno-msa -### \
    217 // RUN:   -no-integrated-as -c %s 2>&1 \
    218 // RUN:   | FileCheck -check-prefix=MIPS-NMSA %s
    219 // MIPS-NMSA: as{{(.exe)?}}"
    220 // MIPS-NMSA-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-mmsa"
    221 //
    222 // We've already tested MIPS32r2 and MIPS64r2 thoroughly. Do minimal tests on
    223 // the remaining CPU's since it was possible to pass on a -mabi with no value
    224 // when the CPU name is absent from a StringSwitch in getMipsCPUAndABI()
    225 // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -c %s -mcpu=mips1 \
    226 // RUN:   2>&1 | FileCheck -check-prefix=MIPS1-EB-AS %s
    227 // MIPS1-EB-AS: as{{(.exe)?}}" "-march" "mips1" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
    228 // MIPS1-EB-AS-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-KPIC"
    229 //
    230 // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -c %s -mcpu=mips2 \
    231 // RUN:   2>&1 | FileCheck -check-prefix=MIPS2-EB-AS %s
    232 // MIPS2-EB-AS: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
    233 // MIPS2-EB-AS-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-KPIC"
    234 //
    235 // RUN: %clang -target mips64-linux-gnu -### -no-integrated-as -c %s -mcpu=mips3 \
    236 // RUN:   2>&1 | FileCheck -check-prefix=MIPS3-EB-AS %s
    237 // MIPS3-EB-AS: as{{(.exe)?}}" "-march" "mips3" "-mabi" "64" "-mno-shared" "-KPIC" "-EB"
    238 //
    239 // RUN: %clang -target mips64-linux-gnu -### -no-integrated-as -c %s -mcpu=mips4 \
    240 // RUN:   2>&1 | FileCheck -check-prefix=MIPS4-EB-AS %s
    241 // MIPS4-EB-AS: as{{(.exe)?}}" "-march" "mips4" "-mabi" "64" "-mno-shared" "-KPIC" "-EB"
    242 //
    243 // RUN: %clang -target mips64-linux-gnu -### -no-integrated-as -c %s -mcpu=mips5 \
    244 // RUN:   2>&1 | FileCheck -check-prefix=MIPS5-EB-AS %s
    245 // MIPS5-EB-AS: as{{(.exe)?}}" "-march" "mips5" "-mabi" "64" "-mno-shared" "-KPIC" "-EB"
    246 //
    247 // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -c %s -mcpu=mips32 \
    248 // RUN:   2>&1 | FileCheck -check-prefix=MIPS32-EB-AS %s
    249 // MIPS32-EB-AS: as{{(.exe)?}}" "-march" "mips32" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
    250 // MIPS32-EB-AS-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-KPIC"
    251 //
    252 // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -c %s -mcpu=mips32r6 \
    253 // RUN:   2>&1 | FileCheck -check-prefix=MIPS32R6-EB-AS %s
    254 // MIPS32R6-EB-AS: as{{(.exe)?}}" "-march" "mips32r6" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB"
    255 // MIPS32R6-EB-AS-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-KPIC"
    256 //
    257 // RUN: %clang -target mips64-linux-gnu -### -no-integrated-as -c %s -mcpu=mips64 \
    258 // RUN:   2>&1 | FileCheck -check-prefix=MIPS64-EB-AS %s
    259 // MIPS64-EB-AS: as{{(.exe)?}}" "-march" "mips64" "-mabi" "64" "-mno-shared" "-KPIC" "-EB"
    260 //
    261 // RUN: %clang -target mips64-linux-gnu -### -no-integrated-as -c %s -mcpu=mips64r6 \
    262 // RUN:   2>&1 | FileCheck -check-prefix=MIPS64R6-EB-AS %s
    263 // MIPS64R6-EB-AS: as{{(.exe)?}}" "-march" "mips64r6" "-mabi" "64" "-mno-shared" "-KPIC" "-EB"
    264 //
    265 // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -msoft-float -mhard-float -c %s 2>&1 \
    266 // RUN:   | FileCheck -check-prefix=HARDFLOAT --implicit-check-not=-msoft-float %s
    267 // HARDFLOAT: as{{(.exe)?}}"
    268 // HARDFLOAT: -mhard-float
    269 //
    270 // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -mhard-float -msoft-float -c %s 2>&1 \
    271 // RUN:   | FileCheck -check-prefix=SOFTFLOAT --implicit-check-not=-mhard-float %s
    272 // SOFTFLOAT: as{{(.exe)?}}"
    273 // SOFTFLOAT: -msoft-float
    274 //
    275 // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -mno-odd-spreg -modd-spreg -c %s 2>&1 \
    276 // RUN:   | FileCheck -check-prefix=ODDSPREG --implicit-check-not=-mno-odd-spreg %s
    277 // ODDSPREG: as{{(.exe)?}}"
    278 // ODDSPREG: -modd-spreg
    279 //
    280 // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -modd-spreg -mno-odd-spreg -c %s 2>&1 \
    281 // RUN:   | FileCheck -check-prefix=NOODDSPREG --implicit-check-not=-modd-spreg %s
    282 // NOODDSPREG: as{{(.exe)?}}"
    283 // NOODDSPREG: -mno-odd-spreg
    284 //
    285 // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -mdouble-float -msingle-float -c %s 2>&1 \
    286 // RUN:   | FileCheck -check-prefix=SINGLEFLOAT --implicit-check-not=-mdouble-float %s
    287 // SINGLEFLOAT: as{{(.exe)?}}"
    288 // SINGLEFLOAT: -msingle-float
    289 //
    290 // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -msingle-float -mdouble-float -c %s 2>&1 \
    291 // RUN:   | FileCheck -check-prefix=DOUBLEFLOAT --implicit-check-not=-msingle-float %s
    292 // DOUBLEFLOAT: as{{(.exe)?}}"
    293 // DOUBLEFLOAT: -mdouble-float
    294 //
    295 // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -msoft-float -c %s 2>&1 \
    296 // RUN:   | FileCheck -check-prefix=SOFTFLOAT-IMPLICIT-FPXX --implicit-check-not=-mfpxx %s
    297 // SOFTFLOAT-IMPLICIT-FPXX: as{{(.exe)?}}"
    298 // SOFTFLOAT-IMPLICIT-FPXX: -msoft-float
    299 //
    300 // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -msoft-float -mfpxx -c %s 2>&1 \
    301 // RUN:   | FileCheck -check-prefix=SOFTFLOAT-EXPLICIT-FPXX %s
    302 // SOFTFLOAT-EXPLICIT-FPXX: as{{(.exe)?}}"
    303 // SOFTFLOAT-EXPLICIT-FPXX: -mfpxx
    304 // SOFTFLOAT-EXPLICIT-FPXX: -msoft-float
    305 //
    306 // RUN: %clang -target mips-mti-linux-gnu -### -no-integrated-as -msoft-float -c %s 2>&1 \
    307 // RUN:   | FileCheck -check-prefix=MTI-SOFTFLOAT-IMPLICIT-FPXX --implicit-check-not=-mfpxx %s
    308 // MTI-SOFTFLOAT-IMPLICIT-FPXX: as{{(.exe)?}}"
    309 // MTI-SOFTFLOAT-IMPLICIT-FPXX: -msoft-float
    310 //
    311 // RUN: %clang -target mips-mti-linux-gnu -### -no-integrated-as -msoft-float -mfpxx -c %s 2>&1 \
    312 // RUN:   | FileCheck -check-prefix=MTI-SOFTFLOAT-EXPLICIT-FPXX %s
    313 // MTI-SOFTFLOAT-EXPLICIT-FPXX: as{{(.exe)?}}"
    314 // MTI-SOFTFLOAT-EXPLICIT-FPXX: -mfpxx
    315 // MTI-SOFTFLOAT-EXPLICIT-FPXX: -msoft-float
    316 //
    317 // RUN: %clang -target mips-img-linux-gnu -### -no-integrated-as -msoft-float -c %s 2>&1 \
    318 // RUN:   | FileCheck -check-prefix=IMG-SOFTFLOAT-IMPLICIT-FPXX --implicit-check-not=-mfpxx %s
    319 // IMG-SOFTFLOAT-IMPLICIT-FPXX: as{{(.exe)?}}"
    320 // IMG-SOFTFLOAT-IMPLICIT-FPXX: -msoft-float
    321 //
    322 // RUN: %clang -target mips-img-linux-gnu -### -no-integrated-as -msoft-float -mfpxx -c %s 2>&1 \
    323 // RUN:   | FileCheck -check-prefix=IMG-SOFTFLOAT-EXPLICIT-FPXX %s
    324 // IMG-SOFTFLOAT-EXPLICIT-FPXX: as{{(.exe)?}}"
    325 // IMG-SOFTFLOAT-EXPLICIT-FPXX: -mfpxx
    326 // IMG-SOFTFLOAT-EXPLICIT-FPXX: -msoft-float
    327 //
    328 // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -msingle-float -c %s 2>&1 \
    329 // RUN:   | FileCheck -check-prefix=SINGLEFLOAT-IMPLICIT-FPXX --implicit-check-not=-mfpxx %s
    330 // SINGLEFLOAT-IMPLICIT-FPXX: as{{(.exe)?}}"
    331 // SINGLEFLOAT-IMPLICIT-FPXX: -msingle-float
    332 //
    333 // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -msingle-float -mfpxx -c %s 2>&1 \
    334 // RUN:   | FileCheck -check-prefix=SINGLEFLOAT-EXPLICIT-FPXX %s
    335 // SINGLEFLOAT-EXPLICIT-FPXX: as{{(.exe)?}}"
    336 // SINGLEFLOAT-EXPLICIT-FPXX: -mfpxx
    337 // SINGLEFLOAT-EXPLICIT-FPXX: -msingle-float
    338 //
    339 // RUN: %clang -target mips-mti-linux-gnu -### -no-integrated-as -msingle-float -c %s 2>&1 \
    340 // RUN:   | FileCheck -check-prefix=MTI-SINGLEFLOAT-IMPLICIT-FPXX --implicit-check-not=-mfpxx %s
    341 // MTI-SINGLEFLOAT-IMPLICIT-FPXX: as{{(.exe)?}}"
    342 // MTI-SINGLEFLOAT-IMPLICIT-FPXX: -msingle-float
    343 //
    344 // RUN: %clang -target mips-mti-linux-gnu -### -no-integrated-as -msingle-float -mfpxx -c %s 2>&1 \
    345 // RUN:   | FileCheck -check-prefix=MTI-SINGLEFLOAT-EXPLICIT-FPXX %s
    346 // MTI-SINGLEFLOAT-EXPLICIT-FPXX: as{{(.exe)?}}"
    347 // MTI-SINGLEFLOAT-EXPLICIT-FPXX: -mfpxx
    348 // MTI-SINGLEFLOAT-EXPLICIT-FPXX: -msingle-float
    349 //
    350 // RUN: %clang -target mips-img-linux-gnu -### -no-integrated-as -msingle-float -c %s 2>&1 \
    351 // RUN:   | FileCheck -check-prefix=IMG-SINGLEFLOAT-IMPLICIT-FPXX --implicit-check-not=-mfpxx %s
    352 // IMG-SINGLEFLOAT-IMPLICIT-FPXX: as{{(.exe)?}}"
    353 // IMG-SINGLEFLOAT-IMPLICIT-FPXX: -msingle-float
    354 //
    355 // RUN: %clang -target mips-img-linux-gnu -### -no-integrated-as -msingle-float -mfpxx -c %s 2>&1 \
    356 // RUN:   | FileCheck -check-prefix=IMG-SINGLEFLOAT-EXPLICIT-FPXX %s
    357 // IMG-SINGLEFLOAT-EXPLICIT-FPXX: as{{(.exe)?}}"
    358 // IMG-SINGLEFLOAT-EXPLICIT-FPXX: -mfpxx
    359 // IMG-SINGLEFLOAT-EXPLICIT-FPXX: -msingle-float
    360