Home | History | Annotate | Download | only in Driver
      1 // Check frontend and linker invocations on the IMG v2 MIPS toolchain.
      2 
      3 // -EB -mips32r6 -mhard-float -mabi=32
      4 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
      5 // RUN:        --target=mips-img-linux-gnu \
      6 // RUN:        --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
      7 // RUN:        -stdlib=libstdc++ \
      8 // RUN:        -EB -mips32r6 -mhard-float -mabi=32 \
      9 // RUN:   | FileCheck --check-prefix=EB-HARD-O32 %s
     10 // EB-HARD-O32: "-internal-isystem"
     11 // EB-HARD-O32: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
     12 // EB-HARD-O32: "-internal-isystem"
     13 // EB-HARD-O32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mips-r6-hard/lib"
     14 // EB-HARD-O32: "-internal-isystem"
     15 // EB-HARD-O32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
     16 // EB-HARD-O32: "-internal-externc-isystem"
     17 // EB-HARD-O32: "[[TC]]/../../../../sysroot/mips-r6-hard/lib/../usr/include"
     18 // EB-HARD-O32: "{{.*}}ld{{(.exe)?}}"
     19 // EB-HARD-O32: "--sysroot=[[TC]]/../../../../sysroot/mips-r6-hard"
     20 // EB-HARD-O32: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
     21 // EB-HARD-O32: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib{{/|\\\\}}crt1.o"
     22 // EB-HARD-O32: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib{{/|\\\\}}crti.o"
     23 // EB-HARD-O32: "[[TC]]/mips-r6-hard/lib{{/|\\\\}}crtbegin.o"
     24 // EB-HARD-O32: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mips-r6-hard/lib"
     25 // EB-HARD-O32: "-L[[TC]]/mips-r6-hard/lib"
     26 // EB-HARD-O32: "-L[[TC]]/../../../../sysroot/mips-r6-hard/lib/../lib"
     27 // EB-HARD-O32: "-L[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib"
     28 // EB-HARD-O32: "[[TC]]/mips-r6-hard/lib{{/|\\\\}}crtend.o"
     29 // EB-HARD-O32: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib{{/|\\\\}}crtn.o"
     30 
     31 // -EB -mips64r6 -mhard-float -mabi=n32
     32 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
     33 // RUN:        --target=mips-img-linux-gnu \
     34 // RUN:        --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
     35 // RUN:        -stdlib=libstdc++ \
     36 // RUN:        -EB -mips64r6 -mhard-float -mabi=n32 \
     37 // RUN:   | FileCheck --check-prefix=EB-HARD-N32 %s
     38 // EB-HARD-N32: "-internal-isystem"
     39 // EB-HARD-N32: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
     40 // EB-HARD-N32: "-internal-isystem"
     41 // EB-HARD-N32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mips-r6-hard/lib32"
     42 // EB-HARD-N32: "-internal-isystem"
     43 // EB-HARD-N32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
     44 // EB-HARD-N32: "-internal-externc-isystem"
     45 // EB-HARD-N32: "[[TC]]/../../../../sysroot/mips-r6-hard/lib32/../usr/include"
     46 // EB-HARD-N32: "{{.*}}ld{{(.exe)?}}"
     47 // EB-HARD-N32: "--sysroot=[[TC]]/../../../../sysroot/mips-r6-hard"
     48 // EB-HARD-N32: "-dynamic-linker" "/lib32/ld-linux-mipsn8.so.1"
     49 // EB-HARD-N32: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib32{{/|\\\\}}crt1.o"
     50 // EB-HARD-N32: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib32{{/|\\\\}}crti.o"
     51 // EB-HARD-N32: "[[TC]]/mips-r6-hard/lib32{{/|\\\\}}crtbegin.o"
     52 // EB-HARD-N32: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mips-r6-hard/lib32"
     53 // EB-HARD-N32: "-L[[TC]]/mips-r6-hard/lib32"
     54 // EB-HARD-N32: "-L[[TC]]/../../../../sysroot/mips-r6-hard/lib/../lib32"
     55 // EB-HARD-N32: "-L[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib32"
     56 // EB-HARD-N32: "[[TC]]/mips-r6-hard/lib32{{/|\\\\}}crtend.o"
     57 // EB-HARD-N32: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib32{{/|\\\\}}crtn.o"
     58 
     59 // -EB -mips64r6 -mhard-float -mabi=64
     60 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
     61 // RUN:        --target=mips64-img-linux-gnu \
     62 // RUN:        --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
     63 // RUN:        -stdlib=libstdc++ \
     64 // RUN:        -EB -mips64r6 -mhard-float -mabi=64 \
     65 // RUN:   | FileCheck --check-prefix=EB-HARD-N64 %s
     66 // EB-HARD-N64: "-internal-isystem"
     67 // EB-HARD-N64: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
     68 // EB-HARD-N64: "-internal-isystem"
     69 // EB-HARD-N64: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mips-r6-hard/lib64"
     70 // EB-HARD-N64: "-internal-isystem"
     71 // EB-HARD-N64: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
     72 // EB-HARD-N64: "-internal-externc-isystem"
     73 // EB-HARD-N64: "[[TC]]/../../../../sysroot/mips-r6-hard/lib64/../usr/include"
     74 // EB-HARD-N64: "{{.*}}ld{{(.exe)?}}"
     75 // EB-HARD-N64: "--sysroot=[[TC]]/../../../../sysroot/mips-r6-hard"
     76 // EB-HARD-N64: "-dynamic-linker" "/lib64/ld-linux-mipsn8.so.1"
     77 // EB-HARD-N64: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib64{{/|\\\\}}crt1.o"
     78 // EB-HARD-N64: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib64{{/|\\\\}}crti.o"
     79 // EB-HARD-N64: "[[TC]]/mips-r6-hard/lib64{{/|\\\\}}crtbegin.o"
     80 // EB-HARD-N64: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mips-r6-hard/lib64"
     81 // EB-HARD-N64: "-L[[TC]]/mips-r6-hard/lib64"
     82 // EB-HARD-N64: "-L[[TC]]/../../../../sysroot/mips-r6-hard/lib/../lib64"
     83 // EB-HARD-N64: "-L[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib64"
     84 // EB-HARD-N64: "[[TC]]/mips-r6-hard/lib64{{/|\\\\}}crtend.o"
     85 // EB-HARD-N64: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib64{{/|\\\\}}crtn.o"
     86 
     87 // -EL -mips32r6 -mhard-float -mabi=32
     88 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
     89 // RUN:        --target=mips-img-linux-gnu \
     90 // RUN:        --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
     91 // RUN:        -stdlib=libstdc++ \
     92 // RUN:        -EL -mips32r6 -mhard-float -mabi=32 \
     93 // RUN:   | FileCheck --check-prefix=EL-HARD-O32 %s
     94 // EL-HARD-O32: "-internal-isystem"
     95 // EL-HARD-O32: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
     96 // EL-HARD-O32: "-internal-isystem"
     97 // EL-HARD-O32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mipsel-r6-hard/lib"
     98 // EL-HARD-O32: "-internal-isystem"
     99 // EL-HARD-O32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
    100 // EL-HARD-O32: "-internal-externc-isystem"
    101 // EL-HARD-O32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/lib/../usr/include"
    102 // EL-HARD-O32: "{{.*}}ld{{(.exe)?}}"
    103 // EL-HARD-O32: "--sysroot=[[TC]]/../../../../sysroot/mipsel-r6-hard"
    104 // EL-HARD-O32: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
    105 // EL-HARD-O32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib{{/|\\\\}}crt1.o"
    106 // EL-HARD-O32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib{{/|\\\\}}crti.o"
    107 // EL-HARD-O32: "[[TC]]/mipsel-r6-hard/lib{{/|\\\\}}crtbegin.o"
    108 // EL-HARD-O32: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mipsel-r6-hard/lib"
    109 // EL-HARD-O32: "-L[[TC]]/mipsel-r6-hard/lib"
    110 // EL-HARD-O32: "-L[[TC]]/../../../../sysroot/mipsel-r6-hard/lib/../lib"
    111 // EL-HARD-O32: "-L[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib"
    112 // EL-HARD-O32: "[[TC]]/mipsel-r6-hard/lib{{/|\\\\}}crtend.o"
    113 // EL-HARD-O32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib{{/|\\\\}}crtn.o"
    114 
    115 // -EL -mips64r6 -mhard-float -mabi=n32
    116 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
    117 // RUN:        --target=mips-img-linux-gnu \
    118 // RUN:        --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
    119 // RUN:        -stdlib=libstdc++ \
    120 // RUN:        -EL -mips64r6 -mhard-float -mabi=n32 \
    121 // RUN:   | FileCheck --check-prefix=EL-HARD-N32 %s
    122 // EL-HARD-N32: "-internal-isystem"
    123 // EL-HARD-N32: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
    124 // EL-HARD-N32: "-internal-isystem"
    125 // EL-HARD-N32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mipsel-r6-hard/lib32"
    126 // EL-HARD-N32: "-internal-isystem"
    127 // EL-HARD-N32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
    128 // EL-HARD-N32: "-internal-externc-isystem"
    129 // EL-HARD-N32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/lib32/../usr/include"
    130 // EL-HARD-N32: "{{.*}}ld{{(.exe)?}}"
    131 // EL-HARD-N32: "--sysroot=[[TC]]/../../../../sysroot/mipsel-r6-hard"
    132 // EL-HARD-N32: "-dynamic-linker" "/lib32/ld-linux-mipsn8.so.1"
    133 // EL-HARD-N32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib32{{/|\\\\}}crt1.o"
    134 // EL-HARD-N32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib32{{/|\\\\}}crti.o"
    135 // EL-HARD-N32: "[[TC]]/mipsel-r6-hard/lib32{{/|\\\\}}crtbegin.o"
    136 // EL-HARD-N32: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mipsel-r6-hard/lib32"
    137 // EL-HARD-N32: "-L[[TC]]/mipsel-r6-hard/lib32"
    138 // EL-HARD-N32: "-L[[TC]]/../../../../sysroot/mipsel-r6-hard/lib/../lib32"
    139 // EL-HARD-N32: "-L[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib32"
    140 // EL-HARD-N32: "[[TC]]/mipsel-r6-hard/lib32{{/|\\\\}}crtend.o"
    141 // EL-HARD-N32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib32{{/|\\\\}}crtn.o"
    142 
    143 // -EL -mips64r6 -mhard-float -mabi=64
    144 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
    145 // RUN:        --target=mips64-img-linux-gnu \
    146 // RUN:        --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
    147 // RUN:        -stdlib=libstdc++ \
    148 // RUN:        -EL -mips64r6 -mhard-float -mabi=64 \
    149 // RUN:   | FileCheck --check-prefix=EL-HARD-N64 %s
    150 // EL-HARD-N64: "-internal-isystem"
    151 // EL-HARD-N64: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
    152 // EL-HARD-N64: "-internal-isystem"
    153 // EL-HARD-N64: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mipsel-r6-hard/lib64"
    154 // EL-HARD-N64: "-internal-isystem"
    155 // EL-HARD-N64: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
    156 // EL-HARD-N64: "-internal-externc-isystem"
    157 // EL-HARD-N64: "[[TC]]/../../../../sysroot/mipsel-r6-hard/lib64/../usr/include"
    158 // EL-HARD-N64: "{{.*}}ld{{(.exe)?}}"
    159 // EL-HARD-N64: "--sysroot=[[TC]]/../../../../sysroot/mipsel-r6-hard"
    160 // EL-HARD-N64: "-dynamic-linker" "/lib64/ld-linux-mipsn8.so.1"
    161 // EL-HARD-N64: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib64{{/|\\\\}}crt1.o"
    162 // EL-HARD-N64: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib64{{/|\\\\}}crti.o"
    163 // EL-HARD-N64: "[[TC]]/mipsel-r6-hard/lib64{{/|\\\\}}crtbegin.o"
    164 // EL-HARD-N64: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mipsel-r6-hard/lib64"
    165 // EL-HARD-N64: "-L[[TC]]/mipsel-r6-hard/lib64"
    166 // EL-HARD-N64: "-L[[TC]]/../../../../sysroot/mipsel-r6-hard/lib/../lib64"
    167 // EL-HARD-N64: "-L[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib64"
    168 // EL-HARD-N64: "[[TC]]/mipsel-r6-hard/lib64{{/|\\\\}}crtend.o"
    169 // EL-HARD-N64: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib64{{/|\\\\}}crtn.o"
    170 
    171 // -EB -mips32r6 -msoft-float
    172 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
    173 // RUN:        --target=mips-img-linux-gnu \
    174 // RUN:        --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
    175 // RUN:        -stdlib=libstdc++ \
    176 // RUN:        -EB -mips32r6 -msoft-float \
    177 // RUN:   | FileCheck --check-prefix=EB-SOFT %s
    178 // EB-SOFT: "-internal-isystem"
    179 // EB-SOFT: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
    180 // EB-SOFT: "-internal-isystem"
    181 // EB-SOFT: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mips-r6-soft/lib"
    182 // EB-SOFT: "-internal-isystem"
    183 // EB-SOFT: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
    184 // EB-SOFT: "-internal-externc-isystem"
    185 // EB-SOFT: "[[TC]]/../../../../sysroot/mips-r6-soft/lib/../usr/include"
    186 // EB-SOFT: "{{.*}}ld{{(.exe)?}}"
    187 // EB-SOFT: "--sysroot=[[TC]]/../../../../sysroot/mips-r6-soft"
    188 // EB-SOFT: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
    189 // EB-SOFT: "[[TC]]/../../../../sysroot/mips-r6-soft/usr/lib/../lib{{/|\\\\}}crt1.o"
    190 // EB-SOFT: "[[TC]]/../../../../sysroot/mips-r6-soft/usr/lib/../lib{{/|\\\\}}crti.o"
    191 // EB-SOFT: "[[TC]]/mips-r6-soft/lib{{/|\\\\}}crtbegin.o"
    192 // EB-SOFT: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mips-r6-soft/lib"
    193 // EB-SOFT: "-L[[TC]]/mips-r6-soft/lib"
    194 // EB-SOFT: "-L[[TC]]/../../../../sysroot/mips-r6-soft/lib/../lib"
    195 // EB-SOFT: "-L[[TC]]/../../../../sysroot/mips-r6-soft/usr/lib/../lib"
    196 // EB-SOFT: "[[TC]]/mips-r6-soft/lib{{/|\\\\}}crtend.o"
    197 // EB-SOFT: "[[TC]]/../../../../sysroot/mips-r6-soft/usr/lib/../lib{{/|\\\\}}crtn.o"
    198 
    199 // -EL -mips32r6 -msoft-float
    200 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
    201 // RUN:        --target=mips-img-linux-gnu \
    202 // RUN:        --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
    203 // RUN:        -stdlib=libstdc++ \
    204 // RUN:        -EL -mips32r6 -msoft-float \
    205 // RUN:   | FileCheck --check-prefix=EL-SOFT %s
    206 // EL-SOFT: "-internal-isystem"
    207 // EL-SOFT: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
    208 // EL-SOFT: "-internal-isystem"
    209 // EL-SOFT: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mipsel-r6-soft/lib"
    210 // EL-SOFT: "-internal-isystem"
    211 // EL-SOFT: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
    212 // EL-SOFT: "-internal-externc-isystem"
    213 // EL-SOFT: "[[TC]]/../../../../sysroot/mipsel-r6-soft/lib/../usr/include"
    214 // EL-SOFT: "{{.*}}ld{{(.exe)?}}"
    215 // EL-SOFT: "--sysroot=[[TC]]/../../../../sysroot/mipsel-r6-soft"
    216 // EL-SOFT: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
    217 // EL-SOFT: "[[TC]]/../../../../sysroot/mipsel-r6-soft/usr/lib/../lib{{/|\\\\}}crt1.o"
    218 // EL-SOFT: "[[TC]]/../../../../sysroot/mipsel-r6-soft/usr/lib/../lib{{/|\\\\}}crti.o"
    219 // EL-SOFT: "[[TC]]/mipsel-r6-soft/lib{{/|\\\\}}crtbegin.o"
    220 // EL-SOFT: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mipsel-r6-soft/lib"
    221 // EL-SOFT: "-L[[TC]]/mipsel-r6-soft/lib"
    222 // EL-SOFT: "-L[[TC]]/../../../../sysroot/mipsel-r6-soft/lib/../lib"
    223 // EL-SOFT: "-L[[TC]]/../../../../sysroot/mipsel-r6-soft/usr/lib/../lib"
    224 // EL-SOFT: "[[TC]]/mipsel-r6-soft/lib{{/|\\\\}}crtend.o"
    225 // EL-SOFT: "[[TC]]/../../../../sysroot/mipsel-r6-soft/usr/lib/../lib{{/|\\\\}}crtn.o"
    226 
    227 // -EB -mips32r6 -mhard-float -mmicromips
    228 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
    229 // RUN:        --target=mips-img-linux-gnu \
    230 // RUN:        --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
    231 // RUN:        -stdlib=libstdc++ \
    232 // RUN:        -EB -mips32r6 -mhard-float -mmicromips \
    233 // RUN:   | FileCheck --check-prefix=EB-HARD-MICRO %s
    234 // EB-HARD-MICRO: "-internal-isystem"
    235 // EB-HARD-MICRO: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
    236 // EB-HARD-MICRO: "-internal-isystem"
    237 // EB-HARD-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/micromips-r6-hard/lib"
    238 // EB-HARD-MICRO: "-internal-isystem"
    239 // EB-HARD-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
    240 // EB-HARD-MICRO: "-internal-externc-isystem"
    241 // EB-HARD-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-hard/lib/../usr/include"
    242 // EB-HARD-MICRO: "{{.*}}ld{{(.exe)?}}"
    243 // EB-HARD-MICRO: "--sysroot=[[TC]]/../../../../sysroot/micromips-r6-hard"
    244 // EB-HARD-MICRO: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
    245 // EB-HARD-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-hard/usr/lib/../lib{{/|\\\\}}crt1.o"
    246 // EB-HARD-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-hard/usr/lib/../lib{{/|\\\\}}crti.o"
    247 // EB-HARD-MICRO: "[[TC]]/micromips-r6-hard/lib{{/|\\\\}}crtbegin.o"
    248 // EB-HARD-MICRO: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/micromips-r6-hard/lib"
    249 // EB-HARD-MICRO: "-L[[TC]]/micromips-r6-hard/lib"
    250 // EB-HARD-MICRO: "-L[[TC]]/../../../../sysroot/micromips-r6-hard/lib/../lib"
    251 // EB-HARD-MICRO: "-L[[TC]]/../../../../sysroot/micromips-r6-hard/usr/lib/../lib"
    252 // EB-HARD-MICRO: "[[TC]]/micromips-r6-hard/lib{{/|\\\\}}crtend.o"
    253 // EB-HARD-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-hard/usr/lib/../lib{{/|\\\\}}crtn.o"
    254 
    255 // -EB -mips32r6 -msoft-float -mmicromips
    256 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
    257 // RUN:        --target=mips-img-linux-gnu \
    258 // RUN:        --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
    259 // RUN:        -stdlib=libstdc++ \
    260 // RUN:        -EB -mips32r6 -msoft-float -mmicromips \
    261 // RUN:   | FileCheck --check-prefix=EB-SOFT-MICRO %s
    262 // EB-SOFT-MICRO: "-internal-isystem"
    263 // EB-SOFT-MICRO: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
    264 // EB-SOFT-MICRO: "-internal-isystem"
    265 // EB-SOFT-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/micromips-r6-soft/lib"
    266 // EB-SOFT-MICRO: "-internal-isystem"
    267 // EB-SOFT-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
    268 // EB-SOFT-MICRO: "-internal-externc-isystem"
    269 // EB-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-soft/lib/../usr/include"
    270 // EB-SOFT-MICRO: "{{.*}}ld{{(.exe)?}}"
    271 // EB-SOFT-MICRO: "--sysroot=[[TC]]/../../../../sysroot/micromips-r6-soft"
    272 // EB-SOFT-MICRO: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
    273 // EB-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-soft/usr/lib/../lib{{/|\\\\}}crt1.o"
    274 // EB-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-soft/usr/lib/../lib{{/|\\\\}}crti.o"
    275 // EB-SOFT-MICRO: "[[TC]]/micromips-r6-soft/lib{{/|\\\\}}crtbegin.o"
    276 // EB-SOFT-MICRO: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/micromips-r6-soft/lib"
    277 // EB-SOFT-MICRO: "-L[[TC]]/micromips-r6-soft/lib"
    278 // EB-SOFT-MICRO: "-L[[TC]]/../../../../sysroot/micromips-r6-soft/lib/../lib"
    279 // EB-SOFT-MICRO: "-L[[TC]]/../../../../sysroot/micromips-r6-soft/usr/lib/../lib"
    280 // EB-SOFT-MICRO: "[[TC]]/micromips-r6-soft/lib{{/|\\\\}}crtend.o"
    281 // EB-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-soft/usr/lib/../lib{{/|\\\\}}crtn.o"
    282 
    283 // -EL -mips32r6 -mhard-float -mmicromips
    284 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
    285 // RUN:        --target=mips-img-linux-gnu \
    286 // RUN:        --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
    287 // RUN:        -stdlib=libstdc++ \
    288 // RUN:        -EL -mips32r6 -mhard-float -mmicromips \
    289 // RUN:   | FileCheck --check-prefix=EL-HARD-MICRO %s
    290 // EL-HARD-MICRO: "-internal-isystem"
    291 // EL-HARD-MICRO: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
    292 // EL-HARD-MICRO: "-internal-isystem"
    293 // EL-HARD-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/micromipsel-r6-hard/lib"
    294 // EL-HARD-MICRO: "-internal-isystem"
    295 // EL-HARD-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
    296 // EL-HARD-MICRO: "-internal-externc-isystem"
    297 // EL-HARD-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-hard/lib/../usr/include"
    298 // EL-HARD-MICRO: "{{.*}}ld{{(.exe)?}}"
    299 // EL-HARD-MICRO: "--sysroot=[[TC]]/../../../../sysroot/micromipsel-r6-hard"
    300 // EL-HARD-MICRO: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
    301 // EL-HARD-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-hard/usr/lib/../lib{{/|\\\\}}crt1.o"
    302 // EL-HARD-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-hard/usr/lib/../lib{{/|\\\\}}crti.o"
    303 // EL-HARD-MICRO: "[[TC]]/micromipsel-r6-hard/lib{{/|\\\\}}crtbegin.o"
    304 // EL-HARD-MICRO: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/micromipsel-r6-hard/lib"
    305 // EL-HARD-MICRO: "-L[[TC]]/micromipsel-r6-hard/lib"
    306 // EL-HARD-MICRO: "-L[[TC]]/../../../../sysroot/micromipsel-r6-hard/lib/../lib"
    307 // EL-HARD-MICRO: "-L[[TC]]/../../../../sysroot/micromipsel-r6-hard/usr/lib/../lib"
    308 // EL-HARD-MICRO: "[[TC]]/micromipsel-r6-hard/lib{{/|\\\\}}crtend.o"
    309 // EL-HARD-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-hard/usr/lib/../lib{{/|\\\\}}crtn.o"
    310 
    311 // -EL -mips32r6 -msoft-float -mmicromips
    312 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
    313 // RUN:        --target=mips-img-linux-gnu \
    314 // RUN:        --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
    315 // RUN:        -stdlib=libstdc++ \
    316 // RUN:        -EL -mips32r6 -msoft-float -mmicromips \
    317 // RUN:   | FileCheck --check-prefix=EL-SOFT-MICRO %s
    318 // EL-SOFT-MICRO: "-internal-isystem"
    319 // EL-SOFT-MICRO: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
    320 // EL-SOFT-MICRO: "-internal-isystem"
    321 // EL-SOFT-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/micromipsel-r6-soft/lib"
    322 // EL-SOFT-MICRO: "-internal-isystem"
    323 // EL-SOFT-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
    324 // EL-SOFT-MICRO: "-internal-externc-isystem"
    325 // EL-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-soft/lib/../usr/include"
    326 // EL-SOFT-MICRO: "{{.*}}ld{{(.exe)?}}"
    327 // EL-SOFT-MICRO: "--sysroot=[[TC]]/../../../../sysroot/micromipsel-r6-soft"
    328 // EL-SOFT-MICRO: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
    329 // EL-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-soft/usr/lib/../lib{{/|\\\\}}crt1.o"
    330 // EL-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-soft/usr/lib/../lib{{/|\\\\}}crti.o"
    331 // EL-SOFT-MICRO: "[[TC]]/micromipsel-r6-soft/lib{{/|\\\\}}crtbegin.o"
    332 // EL-SOFT-MICRO: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/micromipsel-r6-soft/lib"
    333 // EL-SOFT-MICRO: "-L[[TC]]/micromipsel-r6-soft/lib"
    334 // EL-SOFT-MICRO: "-L[[TC]]/../../../../sysroot/micromipsel-r6-soft/lib/../lib"
    335 // EL-SOFT-MICRO: "-L[[TC]]/../../../../sysroot/micromipsel-r6-soft/usr/lib/../lib"
    336 // EL-SOFT-MICRO: "[[TC]]/micromipsel-r6-soft/lib{{/|\\\\}}crtend.o"
    337 // EL-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-soft/usr/lib/../lib{{/|\\\\}}crtn.o"
    338