1*67e74705SXin Li // Check frontend and linker invocations on FSF MIPS toolchain. 2*67e74705SXin Li // 3*67e74705SXin Li // = Big-endian, mips32, hard float 4*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 5*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32 -mhard-float \ 6*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 7*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF-32 %s 8*67e74705SXin Li // CHECK-BE-HF-32: "-internal-isystem" 9*67e74705SXin Li // CHECK-BE-HF-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 10*67e74705SXin Li // CHECK-BE-HF-32: "-internal-isystem" 11*67e74705SXin Li // CHECK-BE-HF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32" 12*67e74705SXin Li // CHECK-BE-HF-32: "-internal-isystem" 13*67e74705SXin Li // CHECK-BE-HF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 14*67e74705SXin Li // CHECK-BE-HF-32: "-internal-externc-isystem" 15*67e74705SXin Li // CHECK-BE-HF-32: "[[TC]]/include" 16*67e74705SXin Li // CHECK-BE-HF-32: "-internal-externc-isystem" 17*67e74705SXin Li // CHECK-BE-HF-32: "[[TC]]/../../../../sysroot/usr/include" 18*67e74705SXin Li // CHECK-BE-HF-32: "{{.*}}ld{{(.exe)?}}" 19*67e74705SXin Li // CHECK-BE-HF-32: "--sysroot=[[TC]]/../../../../sysroot/mips32" 20*67e74705SXin Li // CHECK-BE-HF-32: "-dynamic-linker" "/lib/ld.so.1" 21*67e74705SXin Li // CHECK-BE-HF-32: "[[TC]]/../../../../sysroot/mips32/usr/lib/../lib{{/|\\\\}}crt1.o" 22*67e74705SXin Li // CHECK-BE-HF-32: "[[TC]]/../../../../sysroot/mips32/usr/lib/../lib{{/|\\\\}}crti.o" 23*67e74705SXin Li // CHECK-BE-HF-32: "[[TC]]/mips32{{/|\\\\}}crtbegin.o" 24*67e74705SXin Li // CHECK-BE-HF-32: "-L[[TC]]/mips32" 25*67e74705SXin Li // CHECK-BE-HF-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32" 26*67e74705SXin Li // CHECK-BE-HF-32: "-L[[TC]]/../../../../sysroot/mips32/usr/lib/../lib" 27*67e74705SXin Li // CHECK-BE-HF-32: "[[TC]]/mips32{{/|\\\\}}crtend.o" 28*67e74705SXin Li // CHECK-BE-HF-32: "[[TC]]/../../../../sysroot/mips32/usr/lib/../lib{{/|\\\\}}crtn.o" 29*67e74705SXin Li // 30*67e74705SXin Li // = Big-endian, mips32, hard float, fp64 31*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 32*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32 -mfp64 -mhard-float \ 33*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 34*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF64-32 %s 35*67e74705SXin Li // CHECK-BE-HF64-32: "-internal-isystem" 36*67e74705SXin Li // CHECK-BE-HF64-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 37*67e74705SXin Li // CHECK-BE-HF64-32: "-internal-isystem" 38*67e74705SXin Li // CHECK-BE-HF64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32" 39*67e74705SXin Li // CHECK-BE-HF64-32: "-internal-isystem" 40*67e74705SXin Li // CHECK-BE-HF64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 41*67e74705SXin Li // CHECK-BE-HF64-32: "-internal-externc-isystem" 42*67e74705SXin Li // CHECK-BE-HF64-32: "[[TC]]/include" 43*67e74705SXin Li // CHECK-BE-HF64-32: "-internal-externc-isystem" 44*67e74705SXin Li // CHECK-BE-HF64-32: "[[TC]]/../../../../sysroot/usr/include" 45*67e74705SXin Li // CHECK-BE-HF64-32: "{{.*}}ld{{(.exe)?}}" 46*67e74705SXin Li // CHECK-BE-HF64-32: "--sysroot=[[TC]]/../../../../sysroot/mips32" 47*67e74705SXin Li // CHECK-BE-HF64-32: "-dynamic-linker" "/lib/ld.so.1" 48*67e74705SXin Li // CHECK-BE-HF64-32: "[[TC]]/../../../../sysroot/mips32/usr/lib/../lib{{/|\\\\}}crt1.o" 49*67e74705SXin Li // CHECK-BE-HF64-32: "[[TC]]/../../../../sysroot/mips32/usr/lib/../lib{{/|\\\\}}crti.o" 50*67e74705SXin Li // CHECK-BE-HF64-32: "[[TC]]/mips32{{/|\\\\}}crtbegin.o" 51*67e74705SXin Li // CHECK-BE-HF64-32: "-L[[TC]]/mips32" 52*67e74705SXin Li // CHECK-BE-HF64-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32" 53*67e74705SXin Li // CHECK-BE-HF64-32: "-L[[TC]]/../../../../sysroot/mips32/usr/lib/../lib" 54*67e74705SXin Li // CHECK-BE-HF64-32: "[[TC]]/mips32{{/|\\\\}}crtend.o" 55*67e74705SXin Li // CHECK-BE-HF64-32: "[[TC]]/../../../../sysroot/mips32/usr/lib/../lib{{/|\\\\}}crtn.o" 56*67e74705SXin Li // 57*67e74705SXin Li // = Big-endian, mips32, soft float 58*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 59*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32 -msoft-float \ 60*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 61*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-SF-32 %s 62*67e74705SXin Li // CHECK-BE-SF-32: "-internal-isystem" 63*67e74705SXin Li // CHECK-BE-SF-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 64*67e74705SXin Li // CHECK-BE-SF-32: "-internal-isystem" 65*67e74705SXin Li // CHECK-BE-SF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/sof" 66*67e74705SXin Li // CHECK-BE-SF-32: "-internal-isystem" 67*67e74705SXin Li // CHECK-BE-SF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 68*67e74705SXin Li // CHECK-BE-SF-32: "-internal-externc-isystem" 69*67e74705SXin Li // CHECK-BE-SF-32: "[[TC]]/include" 70*67e74705SXin Li // CHECK-BE-SF-32: "-internal-externc-isystem" 71*67e74705SXin Li // CHECK-BE-SF-32: "[[TC]]/../../../../sysroot/usr/include" 72*67e74705SXin Li // CHECK-BE-SF-32: "{{.*}}ld{{(.exe)?}}" 73*67e74705SXin Li // CHECK-BE-SF-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/sof" 74*67e74705SXin Li // CHECK-BE-SF-32: "-dynamic-linker" "/lib/ld.so.1" 75*67e74705SXin Li // CHECK-BE-SF-32: "[[TC]]/../../../../sysroot/mips32/sof/usr/lib/../lib{{/|\\\\}}crt1.o" 76*67e74705SXin Li // CHECK-BE-SF-32: "[[TC]]/../../../../sysroot/mips32/sof/usr/lib/../lib{{/|\\\\}}crti.o" 77*67e74705SXin Li // CHECK-BE-SF-32: "[[TC]]/mips32/sof{{/|\\\\}}crtbegin.o" 78*67e74705SXin Li // CHECK-BE-SF-32: "-L[[TC]]/mips32/sof" 79*67e74705SXin Li // CHECK-BE-SF-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/sof" 80*67e74705SXin Li // CHECK-BE-SF-32: "-L[[TC]]/../../../../sysroot/mips32/sof/usr/lib/../lib" 81*67e74705SXin Li // CHECK-BE-SF-32: "[[TC]]/mips32/sof{{/|\\\\}}crtend.o" 82*67e74705SXin Li // CHECK-BE-SF-32: "[[TC]]/../../../../sysroot/mips32/sof/usr/lib/../lib{{/|\\\\}}crtn.o" 83*67e74705SXin Li // 84*67e74705SXin Li // = Big-endian, mips16 / mips32, hard float 85*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 86*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32 -mips16 -mhard-float \ 87*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 88*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF-16 %s 89*67e74705SXin Li // CHECK-BE-HF-16: "-internal-isystem" 90*67e74705SXin Li // CHECK-BE-HF-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 91*67e74705SXin Li // CHECK-BE-HF-16: "-internal-isystem" 92*67e74705SXin Li // CHECK-BE-HF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16" 93*67e74705SXin Li // CHECK-BE-HF-16: "-internal-isystem" 94*67e74705SXin Li // CHECK-BE-HF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 95*67e74705SXin Li // CHECK-BE-HF-16: "-internal-externc-isystem" 96*67e74705SXin Li // CHECK-BE-HF-16: "[[TC]]/include" 97*67e74705SXin Li // CHECK-BE-HF-16: "-internal-externc-isystem" 98*67e74705SXin Li // CHECK-BE-HF-16: "[[TC]]/../../../../sysroot/usr/include" 99*67e74705SXin Li // CHECK-BE-HF-16: "{{.*}}ld{{(.exe)?}}" 100*67e74705SXin Li // CHECK-BE-HF-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16" 101*67e74705SXin Li // CHECK-BE-HF-16: "-dynamic-linker" "/lib/ld.so.1" 102*67e74705SXin Li // CHECK-BE-HF-16: "[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib{{/|\\\\}}crt1.o" 103*67e74705SXin Li // CHECK-BE-HF-16: "[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib{{/|\\\\}}crti.o" 104*67e74705SXin Li // CHECK-BE-HF-16: "[[TC]]/mips32/mips16{{/|\\\\}}crtbegin.o" 105*67e74705SXin Li // CHECK-BE-HF-16: "-L[[TC]]/mips32/mips16" 106*67e74705SXin Li // CHECK-BE-HF-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16" 107*67e74705SXin Li // CHECK-BE-HF-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib" 108*67e74705SXin Li // CHECK-BE-HF-16: "[[TC]]/mips32/mips16{{/|\\\\}}crtend.o" 109*67e74705SXin Li // CHECK-BE-HF-16: "[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib{{/|\\\\}}crtn.o" 110*67e74705SXin Li // 111*67e74705SXin Li // = Big-endian, mips16 / mips32, hard float, fp64 112*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 113*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32 -mips16 -mfp64 -mhard-float \ 114*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 115*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF64-16 %s 116*67e74705SXin Li // CHECK-BE-HF64-16: "-internal-isystem" 117*67e74705SXin Li // CHECK-BE-HF64-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 118*67e74705SXin Li // CHECK-BE-HF64-16: "-internal-isystem" 119*67e74705SXin Li // CHECK-BE-HF64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16" 120*67e74705SXin Li // CHECK-BE-HF64-16: "-internal-isystem" 121*67e74705SXin Li // CHECK-BE-HF64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 122*67e74705SXin Li // CHECK-BE-HF64-16: "-internal-externc-isystem" 123*67e74705SXin Li // CHECK-BE-HF64-16: "[[TC]]/include" 124*67e74705SXin Li // CHECK-BE-HF64-16: "-internal-externc-isystem" 125*67e74705SXin Li // CHECK-BE-HF64-16: "[[TC]]/../../../../sysroot/usr/include" 126*67e74705SXin Li // CHECK-BE-HF64-16: "{{.*}}ld{{(.exe)?}}" 127*67e74705SXin Li // CHECK-BE-HF64-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16" 128*67e74705SXin Li // CHECK-BE-HF64-16: "-dynamic-linker" "/lib/ld.so.1" 129*67e74705SXin Li // CHECK-BE-HF64-16: "[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib{{/|\\\\}}crt1.o" 130*67e74705SXin Li // CHECK-BE-HF64-16: "[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib{{/|\\\\}}crti.o" 131*67e74705SXin Li // CHECK-BE-HF64-16: "[[TC]]/mips32/mips16{{/|\\\\}}crtbegin.o" 132*67e74705SXin Li // CHECK-BE-HF64-16: "-L[[TC]]/mips32/mips16" 133*67e74705SXin Li // CHECK-BE-HF64-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16" 134*67e74705SXin Li // CHECK-BE-HF64-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib" 135*67e74705SXin Li // CHECK-BE-HF64-16: "[[TC]]/mips32/mips16{{/|\\\\}}crtend.o" 136*67e74705SXin Li // CHECK-BE-HF64-16: "[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib{{/|\\\\}}crtn.o" 137*67e74705SXin Li // 138*67e74705SXin Li // = Big-endian, mips16 / mips32, soft float 139*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 140*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32 -mips16 -msoft-float \ 141*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 142*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-SF-16 %s 143*67e74705SXin Li // CHECK-BE-SF-16: "-internal-isystem" 144*67e74705SXin Li // CHECK-BE-SF-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 145*67e74705SXin Li // CHECK-BE-SF-16: "-internal-isystem" 146*67e74705SXin Li // CHECK-BE-SF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/sof" 147*67e74705SXin Li // CHECK-BE-SF-16: "-internal-isystem" 148*67e74705SXin Li // CHECK-BE-SF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 149*67e74705SXin Li // CHECK-BE-SF-16: "-internal-externc-isystem" 150*67e74705SXin Li // CHECK-BE-SF-16: "[[TC]]/include" 151*67e74705SXin Li // CHECK-BE-SF-16: "-internal-externc-isystem" 152*67e74705SXin Li // CHECK-BE-SF-16: "[[TC]]/../../../../sysroot/usr/include" 153*67e74705SXin Li // CHECK-BE-SF-16: "{{.*}}ld{{(.exe)?}}" 154*67e74705SXin Li // CHECK-BE-SF-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/sof" 155*67e74705SXin Li // CHECK-BE-SF-16: "-dynamic-linker" "/lib/ld.so.1" 156*67e74705SXin Li // CHECK-BE-SF-16: "[[TC]]/../../../../sysroot/mips32/mips16/sof/usr/lib/../lib{{/|\\\\}}crt1.o" 157*67e74705SXin Li // CHECK-BE-SF-16: "[[TC]]/../../../../sysroot/mips32/mips16/sof/usr/lib/../lib{{/|\\\\}}crti.o" 158*67e74705SXin Li // CHECK-BE-SF-16: "[[TC]]/mips32/mips16/sof{{/|\\\\}}crtbegin.o" 159*67e74705SXin Li // CHECK-BE-SF-16: "-L[[TC]]/mips32/mips16/sof" 160*67e74705SXin Li // CHECK-BE-SF-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/sof" 161*67e74705SXin Li // CHECK-BE-SF-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/sof/usr/lib/../lib" 162*67e74705SXin Li // CHECK-BE-SF-16: "[[TC]]/mips32/mips16/sof{{/|\\\\}}crtend.o" 163*67e74705SXin Li // CHECK-BE-SF-16: "[[TC]]/../../../../sysroot/mips32/mips16/sof/usr/lib/../lib{{/|\\\\}}crtn.o" 164*67e74705SXin Li // 165*67e74705SXin Li // = Big-endian, mips32 / mips16, nan2008 166*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 167*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32 -mips16 -mnan=2008 \ 168*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 169*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN-16 %s 170*67e74705SXin Li // CHECK-BE-NAN-16: "-internal-isystem" 171*67e74705SXin Li // CHECK-BE-NAN-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 172*67e74705SXin Li // CHECK-BE-NAN-16: "-internal-isystem" 173*67e74705SXin Li // CHECK-BE-NAN-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/nan2008" 174*67e74705SXin Li // CHECK-BE-NAN-16: "-internal-isystem" 175*67e74705SXin Li // CHECK-BE-NAN-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 176*67e74705SXin Li // CHECK-BE-NAN-16: "-internal-externc-isystem" 177*67e74705SXin Li // CHECK-BE-NAN-16: "[[TC]]/include" 178*67e74705SXin Li // CHECK-BE-NAN-16: "-internal-externc-isystem" 179*67e74705SXin Li // CHECK-BE-NAN-16: "[[TC]]/../../../../sysroot/usr/include" 180*67e74705SXin Li // CHECK-BE-NAN-16: "{{.*}}ld{{(.exe)?}}" 181*67e74705SXin Li // CHECK-BE-NAN-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/nan2008" 182*67e74705SXin Li // CHECK-BE-NAN-16: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 183*67e74705SXin Li // CHECK-BE-NAN-16: "[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 184*67e74705SXin Li // CHECK-BE-NAN-16: "[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 185*67e74705SXin Li // CHECK-BE-NAN-16: "[[TC]]/mips32/mips16/nan2008{{/|\\\\}}crtbegin.o" 186*67e74705SXin Li // CHECK-BE-NAN-16: "-L[[TC]]/mips32/mips16/nan2008" 187*67e74705SXin Li // CHECK-BE-NAN-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/nan2008" 188*67e74705SXin Li // CHECK-BE-NAN-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib" 189*67e74705SXin Li // CHECK-BE-NAN-16: "[[TC]]/mips32/mips16/nan2008{{/|\\\\}}crtend.o" 190*67e74705SXin Li // CHECK-BE-NAN-16: "[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 191*67e74705SXin Li // 192*67e74705SXin Li // = Big-endian, mips32 / mips16, fp64, nan2008 193*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 194*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32 -mips16 -mfp64 -mnan=2008 \ 195*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 196*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN64-16 %s 197*67e74705SXin Li // CHECK-BE-NAN64-16: "-internal-isystem" 198*67e74705SXin Li // CHECK-BE-NAN64-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 199*67e74705SXin Li // CHECK-BE-NAN64-16: "-internal-isystem" 200*67e74705SXin Li // CHECK-BE-NAN64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/nan2008" 201*67e74705SXin Li // CHECK-BE-NAN64-16: "-internal-isystem" 202*67e74705SXin Li // CHECK-BE-NAN64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 203*67e74705SXin Li // CHECK-BE-NAN64-16: "-internal-externc-isystem" 204*67e74705SXin Li // CHECK-BE-NAN64-16: "[[TC]]/include" 205*67e74705SXin Li // CHECK-BE-NAN64-16: "-internal-externc-isystem" 206*67e74705SXin Li // CHECK-BE-NAN64-16: "[[TC]]/../../../../sysroot/usr/include" 207*67e74705SXin Li // CHECK-BE-NAN64-16: "{{.*}}ld{{(.exe)?}}" 208*67e74705SXin Li // CHECK-BE-NAN64-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/nan2008" 209*67e74705SXin Li // CHECK-BE-NAN64-16: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 210*67e74705SXin Li // CHECK-BE-NAN64-16: "[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 211*67e74705SXin Li // CHECK-BE-NAN64-16: "[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 212*67e74705SXin Li // CHECK-BE-NAN64-16: "[[TC]]/mips32/mips16/nan2008{{/|\\\\}}crtbegin.o" 213*67e74705SXin Li // CHECK-BE-NAN64-16: "-L[[TC]]/mips32/mips16/nan2008" 214*67e74705SXin Li // CHECK-BE-NAN64-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/nan2008" 215*67e74705SXin Li // CHECK-BE-NAN64-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib" 216*67e74705SXin Li // CHECK-BE-NAN64-16: "[[TC]]/mips32/mips16/nan2008{{/|\\\\}}crtend.o" 217*67e74705SXin Li // CHECK-BE-NAN64-16: "[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 218*67e74705SXin Li // 219*67e74705SXin Li // = Big-endian, mips32, nan2008 220*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 221*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32 -mnan=2008 \ 222*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 223*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN-32 %s 224*67e74705SXin Li // CHECK-BE-NAN-32: "-internal-isystem" 225*67e74705SXin Li // CHECK-BE-NAN-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 226*67e74705SXin Li // CHECK-BE-NAN-32: "-internal-isystem" 227*67e74705SXin Li // CHECK-BE-NAN-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/nan2008" 228*67e74705SXin Li // CHECK-BE-NAN-32: "-internal-isystem" 229*67e74705SXin Li // CHECK-BE-NAN-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 230*67e74705SXin Li // CHECK-BE-NAN-32: "-internal-externc-isystem" 231*67e74705SXin Li // CHECK-BE-NAN-32: "[[TC]]/include" 232*67e74705SXin Li // CHECK-BE-NAN-32: "-internal-externc-isystem" 233*67e74705SXin Li // CHECK-BE-NAN-32: "[[TC]]/../../../../sysroot/usr/include" 234*67e74705SXin Li // CHECK-BE-NAN-32: "{{.*}}ld{{(.exe)?}}" 235*67e74705SXin Li // CHECK-BE-NAN-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/nan2008" 236*67e74705SXin Li // CHECK-BE-NAN-32: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 237*67e74705SXin Li // CHECK-BE-NAN-32: "[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 238*67e74705SXin Li // CHECK-BE-NAN-32: "[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 239*67e74705SXin Li // CHECK-BE-NAN-32: "[[TC]]/mips32/nan2008{{/|\\\\}}crtbegin.o" 240*67e74705SXin Li // CHECK-BE-NAN-32: "-L[[TC]]/mips32/nan2008" 241*67e74705SXin Li // CHECK-BE-NAN-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/nan2008" 242*67e74705SXin Li // CHECK-BE-NAN-32: "-L[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib" 243*67e74705SXin Li // CHECK-BE-NAN-32: "[[TC]]/mips32/nan2008{{/|\\\\}}crtend.o" 244*67e74705SXin Li // CHECK-BE-NAN-32: "[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 245*67e74705SXin Li // 246*67e74705SXin Li // = Big-endian, mips32, fp64, nan2008 247*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 248*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32 -mfp64 -mnan=2008 \ 249*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 250*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN64-32 %s 251*67e74705SXin Li // CHECK-BE-NAN64-32: "-internal-isystem" 252*67e74705SXin Li // CHECK-BE-NAN64-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 253*67e74705SXin Li // CHECK-BE-NAN64-32: "-internal-isystem" 254*67e74705SXin Li // CHECK-BE-NAN64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/nan2008" 255*67e74705SXin Li // CHECK-BE-NAN64-32: "-internal-isystem" 256*67e74705SXin Li // CHECK-BE-NAN64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 257*67e74705SXin Li // CHECK-BE-NAN64-32: "-internal-externc-isystem" 258*67e74705SXin Li // CHECK-BE-NAN64-32: "[[TC]]/include" 259*67e74705SXin Li // CHECK-BE-NAN64-32: "-internal-externc-isystem" 260*67e74705SXin Li // CHECK-BE-NAN64-32: "[[TC]]/../../../../sysroot/usr/include" 261*67e74705SXin Li // CHECK-BE-NAN64-32: "{{.*}}ld{{(.exe)?}}" 262*67e74705SXin Li // CHECK-BE-NAN64-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/nan2008" 263*67e74705SXin Li // CHECK-BE-NAN64-32: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 264*67e74705SXin Li // CHECK-BE-NAN64-32: "[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 265*67e74705SXin Li // CHECK-BE-NAN64-32: "[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 266*67e74705SXin Li // CHECK-BE-NAN64-32: "[[TC]]/mips32/nan2008{{/|\\\\}}crtbegin.o" 267*67e74705SXin Li // CHECK-BE-NAN64-32: "-L[[TC]]/mips32/nan2008" 268*67e74705SXin Li // CHECK-BE-NAN64-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/nan2008" 269*67e74705SXin Li // CHECK-BE-NAN64-32: "-L[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib" 270*67e74705SXin Li // CHECK-BE-NAN64-32: "[[TC]]/mips32/nan2008{{/|\\\\}}crtend.o" 271*67e74705SXin Li // CHECK-BE-NAN64-32: "[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 272*67e74705SXin Li // 273*67e74705SXin Li // = Big-endian, mips32r2, hard float 274*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 275*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r2 -mhard-float \ 276*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 277*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF-32R2 %s 278*67e74705SXin Li // CHECK-BE-HF-32R2: "-internal-isystem" 279*67e74705SXin Li // CHECK-BE-HF-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 280*67e74705SXin Li // CHECK-BE-HF-32R2: "-internal-isystem" 281*67e74705SXin Li // CHECK-BE-HF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu" 282*67e74705SXin Li // CHECK-BE-HF-32R2: "-internal-isystem" 283*67e74705SXin Li // CHECK-BE-HF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 284*67e74705SXin Li // CHECK-BE-HF-32R2: "-internal-externc-isystem" 285*67e74705SXin Li // CHECK-BE-HF-32R2: "[[TC]]/include" 286*67e74705SXin Li // CHECK-BE-HF-32R2: "-internal-externc-isystem" 287*67e74705SXin Li // CHECK-BE-HF-32R2: "[[TC]]/../../../../sysroot/usr/include" 288*67e74705SXin Li // CHECK-BE-HF-32R2: "{{.*}}ld{{(.exe)?}}" 289*67e74705SXin Li // CHECK-BE-HF-32R2: "--sysroot=[[TC]]/../../../../sysroot" 290*67e74705SXin Li // CHECK-BE-HF-32R2: "-dynamic-linker" "/lib/ld.so.1" 291*67e74705SXin Li // CHECK-BE-HF-32R2: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crt1.o" 292*67e74705SXin Li // CHECK-BE-HF-32R2: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crti.o" 293*67e74705SXin Li // CHECK-BE-HF-32R2: "[[TC]]{{/|\\\\}}crtbegin.o" 294*67e74705SXin Li // CHECK-BE-HF-32R2: "-L[[TC]]" 295*67e74705SXin Li // CHECK-BE-HF-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib" 296*67e74705SXin Li // CHECK-BE-HF-32R2: "-L[[TC]]/../../../../sysroot/usr/lib/../lib" 297*67e74705SXin Li // CHECK-BE-HF-32R2: "[[TC]]{{/|\\\\}}crtend.o" 298*67e74705SXin Li // CHECK-BE-HF-32R2: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crtn.o" 299*67e74705SXin Li // 300*67e74705SXin Li // = Big-endian, mips32r2, hard float, uclibc 301*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 302*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r2 -mhard-float -muclibc \ 303*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 304*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-UC-HF-32R2 %s 305*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "-internal-isystem" 306*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 307*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "-internal-isystem" 308*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/uclibc" 309*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "-internal-isystem" 310*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 311*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "-internal-externc-isystem" 312*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "[[TC]]/include" 313*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "-internal-externc-isystem" 314*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "[[TC]]/../../../../sysroot/uclibc/usr/include" 315*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "{{.*}}ld{{(.exe)?}}" 316*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "--sysroot=[[TC]]/../../../../sysroot/uclibc" 317*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "-dynamic-linker" "/lib/ld-uClibc.so.0" 318*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "[[TC]]/../../../../sysroot/uclibc/usr/lib/../lib{{/|\\\\}}crt1.o" 319*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "[[TC]]/../../../../sysroot/uclibc/usr/lib/../lib{{/|\\\\}}crti.o" 320*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "[[TC]]/uclibc{{/|\\\\}}crtbegin.o" 321*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "-L[[TC]]/uclibc" 322*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/uclibc" 323*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "-L[[TC]]/../../../../sysroot/uclibc/usr/lib/../lib" 324*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "[[TC]]/uclibc{{/|\\\\}}crtend.o" 325*67e74705SXin Li // CHECK-BE-UC-HF-32R2: "[[TC]]/../../../../sysroot/uclibc/usr/lib/../lib{{/|\\\\}}crtn.o" 326*67e74705SXin Li // 327*67e74705SXin Li // = Big-endian, mips32r2, fp64, hard float 328*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 329*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r2 -mfp64 -mhard-float \ 330*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 331*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF64-32R2 %s 332*67e74705SXin Li // CHECK-BE-HF64-32R2: "-internal-isystem" 333*67e74705SXin Li // CHECK-BE-HF64-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 334*67e74705SXin Li // CHECK-BE-HF64-32R2: "-internal-isystem" 335*67e74705SXin Li // CHECK-BE-HF64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu" 336*67e74705SXin Li // CHECK-BE-HF64-32R2: "-internal-isystem" 337*67e74705SXin Li // CHECK-BE-HF64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 338*67e74705SXin Li // CHECK-BE-HF64-32R2: "-internal-externc-isystem" 339*67e74705SXin Li // CHECK-BE-HF64-32R2: "[[TC]]/include" 340*67e74705SXin Li // CHECK-BE-HF64-32R2: "-internal-externc-isystem" 341*67e74705SXin Li // CHECK-BE-HF64-32R2: "[[TC]]/../../../../sysroot/usr/include" 342*67e74705SXin Li // CHECK-BE-HF64-32R2: "{{.*}}ld{{(.exe)?}}" 343*67e74705SXin Li // CHECK-BE-HF64-32R2: "--sysroot=[[TC]]/../../../../sysroot" 344*67e74705SXin Li // CHECK-BE-HF64-32R2: "-dynamic-linker" "/lib/ld.so.1" 345*67e74705SXin Li // CHECK-BE-HF64-32R2: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crt1.o" 346*67e74705SXin Li // CHECK-BE-HF64-32R2: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crti.o" 347*67e74705SXin Li // CHECK-BE-HF64-32R2: "[[TC]]{{/|\\\\}}crtbegin.o" 348*67e74705SXin Li // CHECK-BE-HF64-32R2: "-L[[TC]]" 349*67e74705SXin Li // CHECK-BE-HF64-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib" 350*67e74705SXin Li // CHECK-BE-HF64-32R2: "-L[[TC]]/../../../../sysroot/usr/lib/../lib" 351*67e74705SXin Li // CHECK-BE-HF64-32R2: "[[TC]]{{/|\\\\}}crtend.o" 352*67e74705SXin Li // CHECK-BE-HF64-32R2: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crtn.o" 353*67e74705SXin Li // 354*67e74705SXin Li // = Big-endian, mips32r2, soft float 355*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 356*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r2 -msoft-float \ 357*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 358*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-SF-32R2 %s 359*67e74705SXin Li // CHECK-BE-SF-32R2: "-internal-isystem" 360*67e74705SXin Li // CHECK-BE-SF-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 361*67e74705SXin Li // CHECK-BE-SF-32R2: "-internal-isystem" 362*67e74705SXin Li // CHECK-BE-SF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/sof" 363*67e74705SXin Li // CHECK-BE-SF-32R2: "-internal-isystem" 364*67e74705SXin Li // CHECK-BE-SF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 365*67e74705SXin Li // CHECK-BE-SF-32R2: "-internal-externc-isystem" 366*67e74705SXin Li // CHECK-BE-SF-32R2: "[[TC]]/include" 367*67e74705SXin Li // CHECK-BE-SF-32R2: "-internal-externc-isystem" 368*67e74705SXin Li // CHECK-BE-SF-32R2: "[[TC]]/../../../../sysroot/usr/include" 369*67e74705SXin Li // CHECK-BE-SF-32R2: "{{.*}}ld{{(.exe)?}}" 370*67e74705SXin Li // CHECK-BE-SF-32R2: "--sysroot=[[TC]]/../../../../sysroot/sof" 371*67e74705SXin Li // CHECK-BE-SF-32R2: "-dynamic-linker" "/lib/ld.so.1" 372*67e74705SXin Li // CHECK-BE-SF-32R2: "[[TC]]/../../../../sysroot/sof/usr/lib/../lib{{/|\\\\}}crt1.o" 373*67e74705SXin Li // CHECK-BE-SF-32R2: "[[TC]]/../../../../sysroot/sof/usr/lib/../lib{{/|\\\\}}crti.o" 374*67e74705SXin Li // CHECK-BE-SF-32R2: "[[TC]]/sof{{/|\\\\}}crtbegin.o" 375*67e74705SXin Li // CHECK-BE-SF-32R2: "-L[[TC]]/sof" 376*67e74705SXin Li // CHECK-BE-SF-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/sof" 377*67e74705SXin Li // CHECK-BE-SF-32R2: "-L[[TC]]/../../../../sysroot/sof/usr/lib/../lib" 378*67e74705SXin Li // CHECK-BE-SF-32R2: "[[TC]]/sof{{/|\\\\}}crtend.o" 379*67e74705SXin Li // CHECK-BE-SF-32R2: "[[TC]]/../../../../sysroot/sof/usr/lib/../lib{{/|\\\\}}crtn.o" 380*67e74705SXin Li // 381*67e74705SXin Li // = Big-endian, mips32r2, soft float, uclibc 382*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 383*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r2 -msoft-float -muclibc \ 384*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 385*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-UC-SF-32R2 %s 386*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "-internal-isystem" 387*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 388*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "-internal-isystem" 389*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/uclibc/sof" 390*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "-internal-isystem" 391*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 392*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "-internal-externc-isystem" 393*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "[[TC]]/include" 394*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "-internal-externc-isystem" 395*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "[[TC]]/../../../../sysroot/uclibc/usr/include" 396*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "{{.*}}ld{{(.exe)?}}" 397*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "--sysroot=[[TC]]/../../../../sysroot/uclibc/sof" 398*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "-dynamic-linker" "/lib/ld-uClibc.so.0" 399*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "[[TC]]/../../../../sysroot/uclibc/sof/usr/lib/../lib{{/|\\\\}}crt1.o" 400*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "[[TC]]/../../../../sysroot/uclibc/sof/usr/lib/../lib{{/|\\\\}}crti.o" 401*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "[[TC]]/uclibc/sof{{/|\\\\}}crtbegin.o" 402*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "-L[[TC]]/uclibc/sof" 403*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/uclibc/sof" 404*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "-L[[TC]]/../../../../sysroot/uclibc/sof/usr/lib/../lib" 405*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "[[TC]]/uclibc/sof{{/|\\\\}}crtend.o" 406*67e74705SXin Li // CHECK-BE-UC-SF-32R2: "[[TC]]/../../../../sysroot/uclibc/sof/usr/lib/../lib{{/|\\\\}}crtn.o" 407*67e74705SXin Li // 408*67e74705SXin Li // = Big-endian, mips32r2 / mips16, hard float 409*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 410*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r2 -mips16 -mhard-float \ 411*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 412*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF-16R2 %s 413*67e74705SXin Li // CHECK-BE-HF-16R2: "-internal-isystem" 414*67e74705SXin Li // CHECK-BE-HF-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 415*67e74705SXin Li // CHECK-BE-HF-16R2: "-internal-isystem" 416*67e74705SXin Li // CHECK-BE-HF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16" 417*67e74705SXin Li // CHECK-BE-HF-16R2: "-internal-isystem" 418*67e74705SXin Li // CHECK-BE-HF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 419*67e74705SXin Li // CHECK-BE-HF-16R2: "-internal-externc-isystem" 420*67e74705SXin Li // CHECK-BE-HF-16R2: "[[TC]]/include" 421*67e74705SXin Li // CHECK-BE-HF-16R2: "-internal-externc-isystem" 422*67e74705SXin Li // CHECK-BE-HF-16R2: "[[TC]]/../../../../sysroot/usr/include" 423*67e74705SXin Li // CHECK-BE-HF-16R2: "{{.*}}ld{{(.exe)?}}" 424*67e74705SXin Li // CHECK-BE-HF-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16" 425*67e74705SXin Li // CHECK-BE-HF-16R2: "-dynamic-linker" "/lib/ld.so.1" 426*67e74705SXin Li // CHECK-BE-HF-16R2: "[[TC]]/../../../../sysroot/mips16/usr/lib/../lib{{/|\\\\}}crt1.o" 427*67e74705SXin Li // CHECK-BE-HF-16R2: "[[TC]]/../../../../sysroot/mips16/usr/lib/../lib{{/|\\\\}}crti.o" 428*67e74705SXin Li // CHECK-BE-HF-16R2: "[[TC]]/mips16{{/|\\\\}}crtbegin.o" 429*67e74705SXin Li // CHECK-BE-HF-16R2: "-L[[TC]]/mips16" 430*67e74705SXin Li // CHECK-BE-HF-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16" 431*67e74705SXin Li // CHECK-BE-HF-16R2: "-L[[TC]]/../../../../sysroot/mips16/usr/lib/../lib" 432*67e74705SXin Li // CHECK-BE-HF-16R2: "[[TC]]/mips16{{/|\\\\}}crtend.o" 433*67e74705SXin Li // CHECK-BE-HF-16R2: "[[TC]]/../../../../sysroot/mips16/usr/lib/../lib{{/|\\\\}}crtn.o" 434*67e74705SXin Li // 435*67e74705SXin Li // = Big-endian, mips32r2 / mips16, fp64, hard float 436*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 437*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r2 -mips16 -mfp64 -mhard-float \ 438*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 439*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF64-16R2 %s 440*67e74705SXin Li // CHECK-BE-HF64-16R2: "-internal-isystem" 441*67e74705SXin Li // CHECK-BE-HF64-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 442*67e74705SXin Li // CHECK-BE-HF64-16R2: "-internal-isystem" 443*67e74705SXin Li // CHECK-BE-HF64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16" 444*67e74705SXin Li // CHECK-BE-HF64-16R2: "-internal-isystem" 445*67e74705SXin Li // CHECK-BE-HF64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 446*67e74705SXin Li // CHECK-BE-HF64-16R2: "-internal-externc-isystem" 447*67e74705SXin Li // CHECK-BE-HF64-16R2: "[[TC]]/include" 448*67e74705SXin Li // CHECK-BE-HF64-16R2: "-internal-externc-isystem" 449*67e74705SXin Li // CHECK-BE-HF64-16R2: "[[TC]]/../../../../sysroot/usr/include" 450*67e74705SXin Li // CHECK-BE-HF64-16R2: "{{.*}}ld{{(.exe)?}}" 451*67e74705SXin Li // CHECK-BE-HF64-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16" 452*67e74705SXin Li // CHECK-BE-HF64-16R2: "-dynamic-linker" "/lib/ld.so.1" 453*67e74705SXin Li // CHECK-BE-HF64-16R2: "[[TC]]/../../../../sysroot/mips16/usr/lib/../lib{{/|\\\\}}crt1.o" 454*67e74705SXin Li // CHECK-BE-HF64-16R2: "[[TC]]/../../../../sysroot/mips16/usr/lib/../lib{{/|\\\\}}crti.o" 455*67e74705SXin Li // CHECK-BE-HF64-16R2: "[[TC]]/mips16{{/|\\\\}}crtbegin.o" 456*67e74705SXin Li // CHECK-BE-HF64-16R2: "-L[[TC]]/mips16" 457*67e74705SXin Li // CHECK-BE-HF64-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16" 458*67e74705SXin Li // CHECK-BE-HF64-16R2: "-L[[TC]]/../../../../sysroot/mips16/usr/lib/../lib" 459*67e74705SXin Li // CHECK-BE-HF64-16R2: "[[TC]]/mips16{{/|\\\\}}crtend.o" 460*67e74705SXin Li // CHECK-BE-HF64-16R2: "[[TC]]/../../../../sysroot/mips16/usr/lib/../lib{{/|\\\\}}crtn.o" 461*67e74705SXin Li // 462*67e74705SXin Li // = Big-endian, mips32r2 / mips16, soft float 463*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 464*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r2 -mips16 -msoft-float \ 465*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 466*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-SF-16R2 %s 467*67e74705SXin Li // CHECK-BE-SF-16R2: "-internal-isystem" 468*67e74705SXin Li // CHECK-BE-SF-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 469*67e74705SXin Li // CHECK-BE-SF-16R2: "-internal-isystem" 470*67e74705SXin Li // CHECK-BE-SF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/sof" 471*67e74705SXin Li // CHECK-BE-SF-16R2: "-internal-isystem" 472*67e74705SXin Li // CHECK-BE-SF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 473*67e74705SXin Li // CHECK-BE-SF-16R2: "-internal-externc-isystem" 474*67e74705SXin Li // CHECK-BE-SF-16R2: "[[TC]]/include" 475*67e74705SXin Li // CHECK-BE-SF-16R2: "-internal-externc-isystem" 476*67e74705SXin Li // CHECK-BE-SF-16R2: "[[TC]]/../../../../sysroot/usr/include" 477*67e74705SXin Li // CHECK-BE-SF-16R2: "{{.*}}ld{{(.exe)?}}" 478*67e74705SXin Li // CHECK-BE-SF-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/sof" 479*67e74705SXin Li // CHECK-BE-SF-16R2: "-dynamic-linker" "/lib/ld.so.1" 480*67e74705SXin Li // CHECK-BE-SF-16R2: "[[TC]]/../../../../sysroot/mips16/sof/usr/lib/../lib{{/|\\\\}}crt1.o" 481*67e74705SXin Li // CHECK-BE-SF-16R2: "[[TC]]/../../../../sysroot/mips16/sof/usr/lib/../lib{{/|\\\\}}crti.o" 482*67e74705SXin Li // CHECK-BE-SF-16R2: "[[TC]]/mips16/sof{{/|\\\\}}crtbegin.o" 483*67e74705SXin Li // CHECK-BE-SF-16R2: "-L[[TC]]/mips16/sof" 484*67e74705SXin Li // CHECK-BE-SF-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/sof" 485*67e74705SXin Li // CHECK-BE-SF-16R2: "-L[[TC]]/../../../../sysroot/mips16/sof/usr/lib/../lib" 486*67e74705SXin Li // CHECK-BE-SF-16R2: "[[TC]]/mips16/sof{{/|\\\\}}crtend.o" 487*67e74705SXin Li // CHECK-BE-SF-16R2: "[[TC]]/../../../../sysroot/mips16/sof/usr/lib/../lib{{/|\\\\}}crtn.o" 488*67e74705SXin Li // 489*67e74705SXin Li // = Big-endian, mips32r2 / mips16, nan2008 490*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 491*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r2 -mips16 -mnan=2008 \ 492*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 493*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN-16R2 %s 494*67e74705SXin Li // CHECK-BE-NAN-16R2: "-internal-isystem" 495*67e74705SXin Li // CHECK-BE-NAN-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 496*67e74705SXin Li // CHECK-BE-NAN-16R2: "-internal-isystem" 497*67e74705SXin Li // CHECK-BE-NAN-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/nan2008" 498*67e74705SXin Li // CHECK-BE-NAN-16R2: "-internal-isystem" 499*67e74705SXin Li // CHECK-BE-NAN-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 500*67e74705SXin Li // CHECK-BE-NAN-16R2: "-internal-externc-isystem" 501*67e74705SXin Li // CHECK-BE-NAN-16R2: "[[TC]]/include" 502*67e74705SXin Li // CHECK-BE-NAN-16R2: "-internal-externc-isystem" 503*67e74705SXin Li // CHECK-BE-NAN-16R2: "[[TC]]/../../../../sysroot/usr/include" 504*67e74705SXin Li // CHECK-BE-NAN-16R2: "{{.*}}ld{{(.exe)?}}" 505*67e74705SXin Li // CHECK-BE-NAN-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/nan2008" 506*67e74705SXin Li // CHECK-BE-NAN-16R2: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 507*67e74705SXin Li // CHECK-BE-NAN-16R2: "[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 508*67e74705SXin Li // CHECK-BE-NAN-16R2: "[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 509*67e74705SXin Li // CHECK-BE-NAN-16R2: "[[TC]]/mips16/nan2008{{/|\\\\}}crtbegin.o" 510*67e74705SXin Li // CHECK-BE-NAN-16R2: "-L[[TC]]/mips16/nan2008" 511*67e74705SXin Li // CHECK-BE-NAN-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/nan2008" 512*67e74705SXin Li // CHECK-BE-NAN-16R2: "-L[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib" 513*67e74705SXin Li // CHECK-BE-NAN-16R2: "[[TC]]/mips16/nan2008{{/|\\\\}}crtend.o" 514*67e74705SXin Li // CHECK-BE-NAN-16R2: "[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 515*67e74705SXin Li // 516*67e74705SXin Li // = Big-endian, mips32r2 / mips16, fp64, nan2008 517*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 518*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r2 -mips16 -mfp64 -mnan=2008 \ 519*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 520*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN64-16R2 %s 521*67e74705SXin Li // CHECK-BE-NAN64-16R2: "-internal-isystem" 522*67e74705SXin Li // CHECK-BE-NAN64-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 523*67e74705SXin Li // CHECK-BE-NAN64-16R2: "-internal-isystem" 524*67e74705SXin Li // CHECK-BE-NAN64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/nan2008" 525*67e74705SXin Li // CHECK-BE-NAN64-16R2: "-internal-isystem" 526*67e74705SXin Li // CHECK-BE-NAN64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 527*67e74705SXin Li // CHECK-BE-NAN64-16R2: "-internal-externc-isystem" 528*67e74705SXin Li // CHECK-BE-NAN64-16R2: "[[TC]]/include" 529*67e74705SXin Li // CHECK-BE-NAN64-16R2: "-internal-externc-isystem" 530*67e74705SXin Li // CHECK-BE-NAN64-16R2: "[[TC]]/../../../../sysroot/usr/include" 531*67e74705SXin Li // CHECK-BE-NAN64-16R2: "{{.*}}ld{{(.exe)?}}" 532*67e74705SXin Li // CHECK-BE-NAN64-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/nan2008" 533*67e74705SXin Li // CHECK-BE-NAN64-16R2: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 534*67e74705SXin Li // CHECK-BE-NAN64-16R2: "[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 535*67e74705SXin Li // CHECK-BE-NAN64-16R2: "[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 536*67e74705SXin Li // CHECK-BE-NAN64-16R2: "[[TC]]/mips16/nan2008{{/|\\\\}}crtbegin.o" 537*67e74705SXin Li // CHECK-BE-NAN64-16R2: "-L[[TC]]/mips16/nan2008" 538*67e74705SXin Li // CHECK-BE-NAN64-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/nan2008" 539*67e74705SXin Li // CHECK-BE-NAN64-16R2: "-L[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib" 540*67e74705SXin Li // CHECK-BE-NAN64-16R2: "[[TC]]/mips16/nan2008{{/|\\\\}}crtend.o" 541*67e74705SXin Li // CHECK-BE-NAN64-16R2: "[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 542*67e74705SXin Li // 543*67e74705SXin Li // = Big-endian, mips32r2, nan2008 544*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 545*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r2 -mnan=2008 \ 546*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 547*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN-32R2 %s 548*67e74705SXin Li // CHECK-BE-NAN-32R2: "-internal-isystem" 549*67e74705SXin Li // CHECK-BE-NAN-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 550*67e74705SXin Li // CHECK-BE-NAN-32R2: "-internal-isystem" 551*67e74705SXin Li // CHECK-BE-NAN-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/nan2008" 552*67e74705SXin Li // CHECK-BE-NAN-32R2: "-internal-isystem" 553*67e74705SXin Li // CHECK-BE-NAN-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 554*67e74705SXin Li // CHECK-BE-NAN-32R2: "-internal-externc-isystem" 555*67e74705SXin Li // CHECK-BE-NAN-32R2: "[[TC]]/include" 556*67e74705SXin Li // CHECK-BE-NAN-32R2: "-internal-externc-isystem" 557*67e74705SXin Li // CHECK-BE-NAN-32R2: "[[TC]]/../../../../sysroot/usr/include" 558*67e74705SXin Li // CHECK-BE-NAN-32R2: "{{.*}}ld{{(.exe)?}}" 559*67e74705SXin Li // CHECK-BE-NAN-32R2: "--sysroot=[[TC]]/../../../../sysroot/nan2008" 560*67e74705SXin Li // CHECK-BE-NAN-32R2: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 561*67e74705SXin Li // CHECK-BE-NAN-32R2: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 562*67e74705SXin Li // CHECK-BE-NAN-32R2: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 563*67e74705SXin Li // CHECK-BE-NAN-32R2: "[[TC]]/nan2008{{/|\\\\}}crtbegin.o" 564*67e74705SXin Li // CHECK-BE-NAN-32R2: "-L[[TC]]/nan2008" 565*67e74705SXin Li // CHECK-BE-NAN-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/nan2008" 566*67e74705SXin Li // CHECK-BE-NAN-32R2: "-L[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib" 567*67e74705SXin Li // CHECK-BE-NAN-32R2: "[[TC]]/nan2008{{/|\\\\}}crtend.o" 568*67e74705SXin Li // CHECK-BE-NAN-32R2: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 569*67e74705SXin Li // 570*67e74705SXin Li // = Big-endian, mips32r2, nan2008, uclibc 571*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 572*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r2 -mnan=2008 -muclibc \ 573*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 574*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-UC-NAN-32R2 %s 575*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "-internal-isystem" 576*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 577*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "-internal-isystem" 578*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/uclibc/nan2008" 579*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "-internal-isystem" 580*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 581*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "-internal-externc-isystem" 582*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "[[TC]]/include" 583*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "-internal-externc-isystem" 584*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "[[TC]]/../../../../sysroot/uclibc/usr/include" 585*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "{{.*}}ld{{(.exe)?}}" 586*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "--sysroot=[[TC]]/../../../../sysroot/uclibc/nan2008" 587*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "-dynamic-linker" "/lib/ld-uClibc-mipsn8.so.0" 588*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "[[TC]]/../../../../sysroot/uclibc/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 589*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "[[TC]]/../../../../sysroot/uclibc/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 590*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "[[TC]]/uclibc/nan2008{{/|\\\\}}crtbegin.o" 591*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "-L[[TC]]/uclibc/nan2008" 592*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/uclibc/nan2008" 593*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "-L[[TC]]/../../../../sysroot/uclibc/nan2008/usr/lib/../lib" 594*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "[[TC]]/uclibc/nan2008{{/|\\\\}}crtend.o" 595*67e74705SXin Li // CHECK-BE-UC-NAN-32R2: "[[TC]]/../../../../sysroot/uclibc/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 596*67e74705SXin Li // 597*67e74705SXin Li // = Big-endian, mips32r2, fp64, nan2008 598*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 599*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r2 -mfp64 -mnan=2008 \ 600*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 601*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN64-32R2 %s 602*67e74705SXin Li // CHECK-BE-NAN64-32R2: "-internal-isystem" 603*67e74705SXin Li // CHECK-BE-NAN64-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 604*67e74705SXin Li // CHECK-BE-NAN64-32R2: "-internal-isystem" 605*67e74705SXin Li // CHECK-BE-NAN64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/nan2008" 606*67e74705SXin Li // CHECK-BE-NAN64-32R2: "-internal-isystem" 607*67e74705SXin Li // CHECK-BE-NAN64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 608*67e74705SXin Li // CHECK-BE-NAN64-32R2: "-internal-externc-isystem" 609*67e74705SXin Li // CHECK-BE-NAN64-32R2: "[[TC]]/include" 610*67e74705SXin Li // CHECK-BE-NAN64-32R2: "-internal-externc-isystem" 611*67e74705SXin Li // CHECK-BE-NAN64-32R2: "[[TC]]/../../../../sysroot/usr/include" 612*67e74705SXin Li // CHECK-BE-NAN64-32R2: "{{.*}}ld{{(.exe)?}}" 613*67e74705SXin Li // CHECK-BE-NAN64-32R2: "--sysroot=[[TC]]/../../../../sysroot/nan2008" 614*67e74705SXin Li // CHECK-BE-NAN64-32R2: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 615*67e74705SXin Li // CHECK-BE-NAN64-32R2: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 616*67e74705SXin Li // CHECK-BE-NAN64-32R2: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 617*67e74705SXin Li // CHECK-BE-NAN64-32R2: "[[TC]]/nan2008{{/|\\\\}}crtbegin.o" 618*67e74705SXin Li // CHECK-BE-NAN64-32R2: "-L[[TC]]/nan2008" 619*67e74705SXin Li // CHECK-BE-NAN64-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/nan2008" 620*67e74705SXin Li // CHECK-BE-NAN64-32R2: "-L[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib" 621*67e74705SXin Li // CHECK-BE-NAN64-32R2: "[[TC]]/nan2008{{/|\\\\}}crtend.o" 622*67e74705SXin Li // CHECK-BE-NAN64-32R2: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 623*67e74705SXin Li // 624*67e74705SXin Li // = Big-endian, default (mips32r2), fp64, nan2008 625*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 626*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mfp64 -mnan=2008 \ 627*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 628*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN64-32R2-DEF %s 629*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "-internal-isystem" 630*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 631*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "-internal-isystem" 632*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/nan2008" 633*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "-internal-isystem" 634*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 635*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "-internal-externc-isystem" 636*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "[[TC]]/include" 637*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "-internal-externc-isystem" 638*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "[[TC]]/../../../../sysroot/usr/include" 639*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "{{.*}}ld{{(.exe)?}}" 640*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "--sysroot=[[TC]]/../../../../sysroot/nan2008" 641*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 642*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 643*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 644*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "[[TC]]/nan2008{{/|\\\\}}crtbegin.o" 645*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "-L[[TC]]/nan2008" 646*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/nan2008" 647*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "-L[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib" 648*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "[[TC]]/nan2008{{/|\\\\}}crtend.o" 649*67e74705SXin Li // CHECK-BE-NAN64-32R2-DEF: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 650*67e74705SXin Li // 651*67e74705SXin Li // = Big-endian, micromips, hard float 652*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 653*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mmicromips -mhard-float \ 654*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 655*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF-MM %s 656*67e74705SXin Li // CHECK-BE-HF-MM: "-internal-isystem" 657*67e74705SXin Li // CHECK-BE-HF-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 658*67e74705SXin Li // CHECK-BE-HF-MM: "-internal-isystem" 659*67e74705SXin Li // CHECK-BE-HF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips" 660*67e74705SXin Li // CHECK-BE-HF-MM: "-internal-isystem" 661*67e74705SXin Li // CHECK-BE-HF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 662*67e74705SXin Li // CHECK-BE-HF-MM: "-internal-externc-isystem" 663*67e74705SXin Li // CHECK-BE-HF-MM: "[[TC]]/include" 664*67e74705SXin Li // CHECK-BE-HF-MM: "-internal-externc-isystem" 665*67e74705SXin Li // CHECK-BE-HF-MM: "[[TC]]/../../../../sysroot/usr/include" 666*67e74705SXin Li // CHECK-BE-HF-MM: "{{.*}}ld{{(.exe)?}}" 667*67e74705SXin Li // CHECK-BE-HF-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips" 668*67e74705SXin Li // CHECK-BE-HF-MM: "-dynamic-linker" "/lib/ld.so.1" 669*67e74705SXin Li // CHECK-BE-HF-MM: "[[TC]]/../../../../sysroot/micromips/usr/lib/../lib{{/|\\\\}}crt1.o" 670*67e74705SXin Li // CHECK-BE-HF-MM: "[[TC]]/../../../../sysroot/micromips/usr/lib/../lib{{/|\\\\}}crti.o" 671*67e74705SXin Li // CHECK-BE-HF-MM: "[[TC]]/micromips{{/|\\\\}}crtbegin.o" 672*67e74705SXin Li // CHECK-BE-HF-MM: "-L[[TC]]/micromips" 673*67e74705SXin Li // CHECK-BE-HF-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips" 674*67e74705SXin Li // CHECK-BE-HF-MM: "-L[[TC]]/../../../../sysroot/micromips/usr/lib/../lib" 675*67e74705SXin Li // CHECK-BE-HF-MM: "[[TC]]/micromips{{/|\\\\}}crtend.o" 676*67e74705SXin Li // CHECK-BE-HF-MM: "[[TC]]/../../../../sysroot/micromips/usr/lib/../lib{{/|\\\\}}crtn.o" 677*67e74705SXin Li // 678*67e74705SXin Li // = Big-endian, micromips, fp64, hard float 679*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 680*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mmicromips -mfp64 -mhard-float \ 681*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 682*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF64-MM %s 683*67e74705SXin Li // CHECK-BE-HF64-MM: "-internal-isystem" 684*67e74705SXin Li // CHECK-BE-HF64-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 685*67e74705SXin Li // CHECK-BE-HF64-MM: "-internal-isystem" 686*67e74705SXin Li // CHECK-BE-HF64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips" 687*67e74705SXin Li // CHECK-BE-HF64-MM: "-internal-isystem" 688*67e74705SXin Li // CHECK-BE-HF64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 689*67e74705SXin Li // CHECK-BE-HF64-MM: "-internal-externc-isystem" 690*67e74705SXin Li // CHECK-BE-HF64-MM: "[[TC]]/include" 691*67e74705SXin Li // CHECK-BE-HF64-MM: "-internal-externc-isystem" 692*67e74705SXin Li // CHECK-BE-HF64-MM: "[[TC]]/../../../../sysroot/usr/include" 693*67e74705SXin Li // CHECK-BE-HF64-MM: "{{.*}}ld{{(.exe)?}}" 694*67e74705SXin Li // CHECK-BE-HF64-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips" 695*67e74705SXin Li // CHECK-BE-HF64-MM: "-dynamic-linker" "/lib/ld.so.1" 696*67e74705SXin Li // CHECK-BE-HF64-MM: "[[TC]]/../../../../sysroot/micromips/usr/lib/../lib{{/|\\\\}}crt1.o" 697*67e74705SXin Li // CHECK-BE-HF64-MM: "[[TC]]/../../../../sysroot/micromips/usr/lib/../lib{{/|\\\\}}crti.o" 698*67e74705SXin Li // CHECK-BE-HF64-MM: "[[TC]]/micromips{{/|\\\\}}crtbegin.o" 699*67e74705SXin Li // CHECK-BE-HF64-MM: "-L[[TC]]/micromips" 700*67e74705SXin Li // CHECK-BE-HF64-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips" 701*67e74705SXin Li // CHECK-BE-HF64-MM: "-L[[TC]]/../../../../sysroot/micromips/usr/lib/../lib" 702*67e74705SXin Li // CHECK-BE-HF64-MM: "[[TC]]/micromips{{/|\\\\}}crtend.o" 703*67e74705SXin Li // CHECK-BE-HF64-MM: "[[TC]]/../../../../sysroot/micromips/usr/lib/../lib{{/|\\\\}}crtn.o" 704*67e74705SXin Li // 705*67e74705SXin Li // = Big-endian, micromips, soft float 706*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 707*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mmicromips -msoft-float \ 708*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 709*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-SF-MM %s 710*67e74705SXin Li // CHECK-BE-SF-MM: "-internal-isystem" 711*67e74705SXin Li // CHECK-BE-SF-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 712*67e74705SXin Li // CHECK-BE-SF-MM: "-internal-isystem" 713*67e74705SXin Li // CHECK-BE-SF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/sof" 714*67e74705SXin Li // CHECK-BE-SF-MM: "-internal-isystem" 715*67e74705SXin Li // CHECK-BE-SF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 716*67e74705SXin Li // CHECK-BE-SF-MM: "-internal-externc-isystem" 717*67e74705SXin Li // CHECK-BE-SF-MM: "[[TC]]/include" 718*67e74705SXin Li // CHECK-BE-SF-MM: "-internal-externc-isystem" 719*67e74705SXin Li // CHECK-BE-SF-MM: "[[TC]]/../../../../sysroot/usr/include" 720*67e74705SXin Li // CHECK-BE-SF-MM: "{{.*}}ld{{(.exe)?}}" 721*67e74705SXin Li // CHECK-BE-SF-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/sof" 722*67e74705SXin Li // CHECK-BE-SF-MM: "-dynamic-linker" "/lib/ld.so.1" 723*67e74705SXin Li // CHECK-BE-SF-MM: "[[TC]]/../../../../sysroot/micromips/sof/usr/lib/../lib{{/|\\\\}}crt1.o" 724*67e74705SXin Li // CHECK-BE-SF-MM: "[[TC]]/../../../../sysroot/micromips/sof/usr/lib/../lib{{/|\\\\}}crti.o" 725*67e74705SXin Li // CHECK-BE-SF-MM: "[[TC]]/micromips/sof{{/|\\\\}}crtbegin.o" 726*67e74705SXin Li // CHECK-BE-SF-MM: "-L[[TC]]/micromips/sof" 727*67e74705SXin Li // CHECK-BE-SF-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/sof" 728*67e74705SXin Li // CHECK-BE-SF-MM: "-L[[TC]]/../../../../sysroot/micromips/sof/usr/lib/../lib" 729*67e74705SXin Li // CHECK-BE-SF-MM: "[[TC]]/micromips/sof{{/|\\\\}}crtend.o" 730*67e74705SXin Li // CHECK-BE-SF-MM: "[[TC]]/../../../../sysroot/micromips/sof/usr/lib/../lib{{/|\\\\}}crtn.o" 731*67e74705SXin Li // 732*67e74705SXin Li // = Big-endian, micromips, nan2008 733*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 734*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mmicromips -mnan=2008 \ 735*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 736*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN-MM %s 737*67e74705SXin Li // CHECK-BE-NAN-MM: "-internal-isystem" 738*67e74705SXin Li // CHECK-BE-NAN-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 739*67e74705SXin Li // CHECK-BE-NAN-MM: "-internal-isystem" 740*67e74705SXin Li // CHECK-BE-NAN-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/nan2008" 741*67e74705SXin Li // CHECK-BE-NAN-MM: "-internal-isystem" 742*67e74705SXin Li // CHECK-BE-NAN-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 743*67e74705SXin Li // CHECK-BE-NAN-MM: "-internal-externc-isystem" 744*67e74705SXin Li // CHECK-BE-NAN-MM: "[[TC]]/include" 745*67e74705SXin Li // CHECK-BE-NAN-MM: "-internal-externc-isystem" 746*67e74705SXin Li // CHECK-BE-NAN-MM: "[[TC]]/../../../../sysroot/usr/include" 747*67e74705SXin Li // CHECK-BE-NAN-MM: "{{.*}}ld{{(.exe)?}}" 748*67e74705SXin Li // CHECK-BE-NAN-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/nan2008" 749*67e74705SXin Li // CHECK-BE-NAN-MM: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 750*67e74705SXin Li // CHECK-BE-NAN-MM: "[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 751*67e74705SXin Li // CHECK-BE-NAN-MM: "[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 752*67e74705SXin Li // CHECK-BE-NAN-MM: "[[TC]]/micromips/nan2008{{/|\\\\}}crtbegin.o" 753*67e74705SXin Li // CHECK-BE-NAN-MM: "-L[[TC]]/micromips/nan2008" 754*67e74705SXin Li // CHECK-BE-NAN-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/nan2008" 755*67e74705SXin Li // CHECK-BE-NAN-MM: "-L[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib" 756*67e74705SXin Li // CHECK-BE-NAN-MM: "[[TC]]/micromips/nan2008{{/|\\\\}}crtend.o" 757*67e74705SXin Li // CHECK-BE-NAN-MM: "[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 758*67e74705SXin Li // 759*67e74705SXin Li // = Big-endian, micromips, fp64, nan2008 760*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 761*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mmicromips -mfp64 -mnan=2008 \ 762*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 763*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN64-MM %s 764*67e74705SXin Li // CHECK-BE-NAN64-MM: "-internal-isystem" 765*67e74705SXin Li // CHECK-BE-NAN64-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 766*67e74705SXin Li // CHECK-BE-NAN64-MM: "-internal-isystem" 767*67e74705SXin Li // CHECK-BE-NAN64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/nan2008" 768*67e74705SXin Li // CHECK-BE-NAN64-MM: "-internal-isystem" 769*67e74705SXin Li // CHECK-BE-NAN64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 770*67e74705SXin Li // CHECK-BE-NAN64-MM: "-internal-externc-isystem" 771*67e74705SXin Li // CHECK-BE-NAN64-MM: "[[TC]]/include" 772*67e74705SXin Li // CHECK-BE-NAN64-MM: "-internal-externc-isystem" 773*67e74705SXin Li // CHECK-BE-NAN64-MM: "[[TC]]/../../../../sysroot/usr/include" 774*67e74705SXin Li // CHECK-BE-NAN64-MM: "{{.*}}ld{{(.exe)?}}" 775*67e74705SXin Li // CHECK-BE-NAN64-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/nan2008" 776*67e74705SXin Li // CHECK-BE-NAN64-MM: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 777*67e74705SXin Li // CHECK-BE-NAN64-MM: "[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 778*67e74705SXin Li // CHECK-BE-NAN64-MM: "[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 779*67e74705SXin Li // CHECK-BE-NAN64-MM: "[[TC]]/micromips/nan2008{{/|\\\\}}crtbegin.o" 780*67e74705SXin Li // CHECK-BE-NAN64-MM: "-L[[TC]]/micromips/nan2008" 781*67e74705SXin Li // CHECK-BE-NAN64-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/nan2008" 782*67e74705SXin Li // CHECK-BE-NAN64-MM: "-L[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib" 783*67e74705SXin Li // CHECK-BE-NAN64-MM: "[[TC]]/micromips/nan2008{{/|\\\\}}crtend.o" 784*67e74705SXin Li // CHECK-BE-NAN64-MM: "[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 785*67e74705SXin Li // 786*67e74705SXin Li // = Big-endian, mips64, ABI n32, hard float 787*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 788*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=n32 -mhard-float \ 789*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 790*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF-64-N32 %s 791*67e74705SXin Li // CHECK-BE-HF-64-N32: "-internal-isystem" 792*67e74705SXin Li // CHECK-BE-HF-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 793*67e74705SXin Li // CHECK-BE-HF-64-N32: "-internal-isystem" 794*67e74705SXin Li // CHECK-BE-HF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64" 795*67e74705SXin Li // CHECK-BE-HF-64-N32: "-internal-isystem" 796*67e74705SXin Li // CHECK-BE-HF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 797*67e74705SXin Li // CHECK-BE-HF-64-N32: "-internal-externc-isystem" 798*67e74705SXin Li // CHECK-BE-HF-64-N32: "[[TC]]/include" 799*67e74705SXin Li // CHECK-BE-HF-64-N32: "-internal-externc-isystem" 800*67e74705SXin Li // CHECK-BE-HF-64-N32: "[[TC]]/../../../../sysroot/usr/include" 801*67e74705SXin Li // CHECK-BE-HF-64-N32: "{{.*}}ld{{(.exe)?}}" 802*67e74705SXin Li // CHECK-BE-HF-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64" 803*67e74705SXin Li // CHECK-BE-HF-64-N32: "-dynamic-linker" "/lib32/ld.so.1" 804*67e74705SXin Li // CHECK-BE-HF-64-N32: "[[TC]]/../../../../sysroot/mips64/usr/lib{{/|\\\\}}crt1.o" 805*67e74705SXin Li // CHECK-BE-HF-64-N32: "[[TC]]/../../../../sysroot/mips64/usr/lib{{/|\\\\}}crti.o" 806*67e74705SXin Li // CHECK-BE-HF-64-N32: "[[TC]]/mips64{{/|\\\\}}crtbegin.o" 807*67e74705SXin Li // CHECK-BE-HF-64-N32: "-L[[TC]]/mips64" 808*67e74705SXin Li // CHECK-BE-HF-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64" 809*67e74705SXin Li // CHECK-BE-HF-64-N32: "-L[[TC]]/../../../../sysroot/mips64/usr/lib" 810*67e74705SXin Li // CHECK-BE-HF-64-N32: "[[TC]]/mips64{{/|\\\\}}crtend.o" 811*67e74705SXin Li // CHECK-BE-HF-64-N32: "[[TC]]/../../../../sysroot/mips64/usr/lib{{/|\\\\}}crtn.o" 812*67e74705SXin Li // 813*67e74705SXin Li // = Big-endian, mips64, ABI n32, fp64, hard float 814*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 815*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=n32 -mfp64 -mhard-float \ 816*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 817*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF64-64-N32 %s 818*67e74705SXin Li // CHECK-BE-HF64-64-N32: "-internal-isystem" 819*67e74705SXin Li // CHECK-BE-HF64-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 820*67e74705SXin Li // CHECK-BE-HF64-64-N32: "-internal-isystem" 821*67e74705SXin Li // CHECK-BE-HF64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64" 822*67e74705SXin Li // CHECK-BE-HF64-64-N32: "-internal-isystem" 823*67e74705SXin Li // CHECK-BE-HF64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 824*67e74705SXin Li // CHECK-BE-HF64-64-N32: "-internal-externc-isystem" 825*67e74705SXin Li // CHECK-BE-HF64-64-N32: "[[TC]]/include" 826*67e74705SXin Li // CHECK-BE-HF64-64-N32: "-internal-externc-isystem" 827*67e74705SXin Li // CHECK-BE-HF64-64-N32: "[[TC]]/../../../../sysroot/usr/include" 828*67e74705SXin Li // CHECK-BE-HF64-64-N32: "{{.*}}ld{{(.exe)?}}" 829*67e74705SXin Li // CHECK-BE-HF64-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64" 830*67e74705SXin Li // CHECK-BE-HF64-64-N32: "-dynamic-linker" "/lib32/ld.so.1" 831*67e74705SXin Li // CHECK-BE-HF64-64-N32: "[[TC]]/../../../../sysroot/mips64/usr/lib{{/|\\\\}}crt1.o" 832*67e74705SXin Li // CHECK-BE-HF64-64-N32: "[[TC]]/../../../../sysroot/mips64/usr/lib{{/|\\\\}}crti.o" 833*67e74705SXin Li // CHECK-BE-HF64-64-N32: "[[TC]]/mips64{{/|\\\\}}crtbegin.o" 834*67e74705SXin Li // CHECK-BE-HF64-64-N32: "-L[[TC]]/mips64" 835*67e74705SXin Li // CHECK-BE-HF64-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64" 836*67e74705SXin Li // CHECK-BE-HF64-64-N32: "-L[[TC]]/../../../../sysroot/mips64/usr/lib" 837*67e74705SXin Li // CHECK-BE-HF64-64-N32: "[[TC]]/mips64{{/|\\\\}}crtend.o" 838*67e74705SXin Li // CHECK-BE-HF64-64-N32: "[[TC]]/../../../../sysroot/mips64/usr/lib{{/|\\\\}}crtn.o" 839*67e74705SXin Li // 840*67e74705SXin Li // = Big-endian, mips64, ABI n32, soft float 841*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 842*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=n32 -msoft-float \ 843*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 844*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-SF-64-N32 %s 845*67e74705SXin Li // CHECK-BE-SF-64-N32: "-internal-isystem" 846*67e74705SXin Li // CHECK-BE-SF-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 847*67e74705SXin Li // CHECK-BE-SF-64-N32: "-internal-isystem" 848*67e74705SXin Li // CHECK-BE-SF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/sof" 849*67e74705SXin Li // CHECK-BE-SF-64-N32: "-internal-isystem" 850*67e74705SXin Li // CHECK-BE-SF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 851*67e74705SXin Li // CHECK-BE-SF-64-N32: "-internal-externc-isystem" 852*67e74705SXin Li // CHECK-BE-SF-64-N32: "[[TC]]/include" 853*67e74705SXin Li // CHECK-BE-SF-64-N32: "-internal-externc-isystem" 854*67e74705SXin Li // CHECK-BE-SF-64-N32: "[[TC]]/../../../../sysroot/usr/include" 855*67e74705SXin Li // CHECK-BE-SF-64-N32: "{{.*}}ld{{(.exe)?}}" 856*67e74705SXin Li // CHECK-BE-SF-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/sof" 857*67e74705SXin Li // CHECK-BE-SF-64-N32: "-dynamic-linker" "/lib32/ld.so.1" 858*67e74705SXin Li // CHECK-BE-SF-64-N32: "[[TC]]/../../../../sysroot/mips64/sof/usr/lib{{/|\\\\}}crt1.o" 859*67e74705SXin Li // CHECK-BE-SF-64-N32: "[[TC]]/../../../../sysroot/mips64/sof/usr/lib{{/|\\\\}}crti.o" 860*67e74705SXin Li // CHECK-BE-SF-64-N32: "[[TC]]/mips64/sof{{/|\\\\}}crtbegin.o" 861*67e74705SXin Li // CHECK-BE-SF-64-N32: "-L[[TC]]/mips64/sof" 862*67e74705SXin Li // CHECK-BE-SF-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/sof" 863*67e74705SXin Li // CHECK-BE-SF-64-N32: "-L[[TC]]/../../../../sysroot/mips64/sof/usr/lib" 864*67e74705SXin Li // CHECK-BE-SF-64-N32: "[[TC]]/mips64/sof{{/|\\\\}}crtend.o" 865*67e74705SXin Li // CHECK-BE-SF-64-N32: "[[TC]]/../../../../sysroot/mips64/sof/usr/lib{{/|\\\\}}crtn.o" 866*67e74705SXin Li // 867*67e74705SXin Li // = Big-endian, mips64, ABI n32, nan2008 868*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 869*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=n32 -mnan=2008 \ 870*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 871*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN-64-N32 %s 872*67e74705SXin Li // CHECK-BE-NAN-64-N32: "-internal-isystem" 873*67e74705SXin Li // CHECK-BE-NAN-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 874*67e74705SXin Li // CHECK-BE-NAN-64-N32: "-internal-isystem" 875*67e74705SXin Li // CHECK-BE-NAN-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/nan2008" 876*67e74705SXin Li // CHECK-BE-NAN-64-N32: "-internal-isystem" 877*67e74705SXin Li // CHECK-BE-NAN-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 878*67e74705SXin Li // CHECK-BE-NAN-64-N32: "-internal-externc-isystem" 879*67e74705SXin Li // CHECK-BE-NAN-64-N32: "[[TC]]/include" 880*67e74705SXin Li // CHECK-BE-NAN-64-N32: "-internal-externc-isystem" 881*67e74705SXin Li // CHECK-BE-NAN-64-N32: "[[TC]]/../../../../sysroot/usr/include" 882*67e74705SXin Li // CHECK-BE-NAN-64-N32: "{{.*}}ld{{(.exe)?}}" 883*67e74705SXin Li // CHECK-BE-NAN-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/nan2008" 884*67e74705SXin Li // CHECK-BE-NAN-64-N32: "-dynamic-linker" "/lib32/ld-linux-mipsn8.so.1" 885*67e74705SXin Li // CHECK-BE-NAN-64-N32: "[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib{{/|\\\\}}crt1.o" 886*67e74705SXin Li // CHECK-BE-NAN-64-N32: "[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib{{/|\\\\}}crti.o" 887*67e74705SXin Li // CHECK-BE-NAN-64-N32: "[[TC]]/mips64/nan2008{{/|\\\\}}crtbegin.o" 888*67e74705SXin Li // CHECK-BE-NAN-64-N32: "-L[[TC]]/mips64/nan2008" 889*67e74705SXin Li // CHECK-BE-NAN-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/nan2008" 890*67e74705SXin Li // CHECK-BE-NAN-64-N32: "-L[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib" 891*67e74705SXin Li // CHECK-BE-NAN-64-N32: "[[TC]]/mips64/nan2008{{/|\\\\}}crtend.o" 892*67e74705SXin Li // CHECK-BE-NAN-64-N32: "[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib{{/|\\\\}}crtn.o" 893*67e74705SXin Li // 894*67e74705SXin Li // = Big-endian, mips64, ABI n32, fp64, nan2008 895*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 896*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=n32 -mfp64 -mnan=2008 \ 897*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 898*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN64-64-N32 %s 899*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "-internal-isystem" 900*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 901*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "-internal-isystem" 902*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/nan2008" 903*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "-internal-isystem" 904*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 905*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "-internal-externc-isystem" 906*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "[[TC]]/include" 907*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "-internal-externc-isystem" 908*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "[[TC]]/../../../../sysroot/usr/include" 909*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "{{.*}}ld{{(.exe)?}}" 910*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/nan2008" 911*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "-dynamic-linker" "/lib32/ld-linux-mipsn8.so.1" 912*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib{{/|\\\\}}crt1.o" 913*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib{{/|\\\\}}crti.o" 914*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "[[TC]]/mips64/nan2008{{/|\\\\}}crtbegin.o" 915*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "-L[[TC]]/mips64/nan2008" 916*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/nan2008" 917*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "-L[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib" 918*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "[[TC]]/mips64/nan2008{{/|\\\\}}crtend.o" 919*67e74705SXin Li // CHECK-BE-NAN64-64-N32: "[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib{{/|\\\\}}crtn.o" 920*67e74705SXin Li // 921*67e74705SXin Li // = Big-endian, mips64, ABI 64, hard float 922*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 923*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=64 -mhard-float \ 924*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 925*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF-64-64 %s 926*67e74705SXin Li // CHECK-BE-HF-64-64: "-internal-isystem" 927*67e74705SXin Li // CHECK-BE-HF-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 928*67e74705SXin Li // CHECK-BE-HF-64-64: "-internal-isystem" 929*67e74705SXin Li // CHECK-BE-HF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64" 930*67e74705SXin Li // CHECK-BE-HF-64-64: "-internal-isystem" 931*67e74705SXin Li // CHECK-BE-HF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 932*67e74705SXin Li // CHECK-BE-HF-64-64: "-internal-externc-isystem" 933*67e74705SXin Li // CHECK-BE-HF-64-64: "[[TC]]/include" 934*67e74705SXin Li // CHECK-BE-HF-64-64: "-internal-externc-isystem" 935*67e74705SXin Li // CHECK-BE-HF-64-64: "[[TC]]/../../../../sysroot/usr/include" 936*67e74705SXin Li // CHECK-BE-HF-64-64: "{{.*}}ld{{(.exe)?}}" 937*67e74705SXin Li // CHECK-BE-HF-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64" 938*67e74705SXin Li // CHECK-BE-HF-64-64: "-dynamic-linker" "/lib64/ld.so.1" 939*67e74705SXin Li // CHECK-BE-HF-64-64: "[[TC]]/../../../../sysroot/mips64/64/usr/lib{{/|\\\\}}crt1.o" 940*67e74705SXin Li // CHECK-BE-HF-64-64: "[[TC]]/../../../../sysroot/mips64/64/usr/lib{{/|\\\\}}crti.o" 941*67e74705SXin Li // CHECK-BE-HF-64-64: "[[TC]]/mips64/64{{/|\\\\}}crtbegin.o" 942*67e74705SXin Li // CHECK-BE-HF-64-64: "-L[[TC]]/mips64/64" 943*67e74705SXin Li // CHECK-BE-HF-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64" 944*67e74705SXin Li // CHECK-BE-HF-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/usr/lib" 945*67e74705SXin Li // CHECK-BE-HF-64-64: "[[TC]]/mips64/64{{/|\\\\}}crtend.o" 946*67e74705SXin Li // CHECK-BE-HF-64-64: "[[TC]]/../../../../sysroot/mips64/64/usr/lib{{/|\\\\}}crtn.o" 947*67e74705SXin Li // 948*67e74705SXin Li // = Big-endian, mips64, ABI 64, fp64, hard float 949*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 950*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=64 -mfp64 -mhard-float \ 951*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 952*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF64-64-64 %s 953*67e74705SXin Li // CHECK-BE-HF64-64-64: "-internal-isystem" 954*67e74705SXin Li // CHECK-BE-HF64-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 955*67e74705SXin Li // CHECK-BE-HF64-64-64: "-internal-isystem" 956*67e74705SXin Li // CHECK-BE-HF64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64" 957*67e74705SXin Li // CHECK-BE-HF64-64-64: "-internal-isystem" 958*67e74705SXin Li // CHECK-BE-HF64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 959*67e74705SXin Li // CHECK-BE-HF64-64-64: "-internal-externc-isystem" 960*67e74705SXin Li // CHECK-BE-HF64-64-64: "[[TC]]/include" 961*67e74705SXin Li // CHECK-BE-HF64-64-64: "-internal-externc-isystem" 962*67e74705SXin Li // CHECK-BE-HF64-64-64: "[[TC]]/../../../../sysroot/usr/include" 963*67e74705SXin Li // CHECK-BE-HF64-64-64: "{{.*}}ld{{(.exe)?}}" 964*67e74705SXin Li // CHECK-BE-HF64-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64" 965*67e74705SXin Li // CHECK-BE-HF64-64-64: "-dynamic-linker" "/lib64/ld.so.1" 966*67e74705SXin Li // CHECK-BE-HF64-64-64: "[[TC]]/../../../../sysroot/mips64/64/usr/lib{{/|\\\\}}crt1.o" 967*67e74705SXin Li // CHECK-BE-HF64-64-64: "[[TC]]/../../../../sysroot/mips64/64/usr/lib{{/|\\\\}}crti.o" 968*67e74705SXin Li // CHECK-BE-HF64-64-64: "[[TC]]/mips64/64{{/|\\\\}}crtbegin.o" 969*67e74705SXin Li // CHECK-BE-HF64-64-64: "-L[[TC]]/mips64/64" 970*67e74705SXin Li // CHECK-BE-HF64-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64" 971*67e74705SXin Li // CHECK-BE-HF64-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/usr/lib" 972*67e74705SXin Li // CHECK-BE-HF64-64-64: "[[TC]]/mips64/64{{/|\\\\}}crtend.o" 973*67e74705SXin Li // CHECK-BE-HF64-64-64: "[[TC]]/../../../../sysroot/mips64/64/usr/lib{{/|\\\\}}crtn.o" 974*67e74705SXin Li // 975*67e74705SXin Li // = Big-endian, mips64, ABI 64, soft float 976*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 977*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=64 -msoft-float \ 978*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 979*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-SF-64-64 %s 980*67e74705SXin Li // CHECK-BE-SF-64-64: "-internal-isystem" 981*67e74705SXin Li // CHECK-BE-SF-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 982*67e74705SXin Li // CHECK-BE-SF-64-64: "-internal-isystem" 983*67e74705SXin Li // CHECK-BE-SF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/sof" 984*67e74705SXin Li // CHECK-BE-SF-64-64: "-internal-isystem" 985*67e74705SXin Li // CHECK-BE-SF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 986*67e74705SXin Li // CHECK-BE-SF-64-64: "-internal-externc-isystem" 987*67e74705SXin Li // CHECK-BE-SF-64-64: "[[TC]]/include" 988*67e74705SXin Li // CHECK-BE-SF-64-64: "-internal-externc-isystem" 989*67e74705SXin Li // CHECK-BE-SF-64-64: "[[TC]]/../../../../sysroot/usr/include" 990*67e74705SXin Li // CHECK-BE-SF-64-64: "{{.*}}ld{{(.exe)?}}" 991*67e74705SXin Li // CHECK-BE-SF-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/sof" 992*67e74705SXin Li // CHECK-BE-SF-64-64: "-dynamic-linker" "/lib64/ld.so.1" 993*67e74705SXin Li // CHECK-BE-SF-64-64: "[[TC]]/../../../../sysroot/mips64/64/sof/usr/lib{{/|\\\\}}crt1.o" 994*67e74705SXin Li // CHECK-BE-SF-64-64: "[[TC]]/../../../../sysroot/mips64/64/sof/usr/lib{{/|\\\\}}crti.o" 995*67e74705SXin Li // CHECK-BE-SF-64-64: "[[TC]]/mips64/64/sof{{/|\\\\}}crtbegin.o" 996*67e74705SXin Li // CHECK-BE-SF-64-64: "-L[[TC]]/mips64/64/sof" 997*67e74705SXin Li // CHECK-BE-SF-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/sof" 998*67e74705SXin Li // CHECK-BE-SF-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/sof/usr/lib" 999*67e74705SXin Li // CHECK-BE-SF-64-64: "[[TC]]/mips64/64/sof{{/|\\\\}}crtend.o" 1000*67e74705SXin Li // CHECK-BE-SF-64-64: "[[TC]]/../../../../sysroot/mips64/64/sof/usr/lib{{/|\\\\}}crtn.o" 1001*67e74705SXin Li // 1002*67e74705SXin Li // = Big-endian, mips64, ABI 64, nan2008 1003*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1004*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=64 -mnan=2008 \ 1005*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1006*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN-64-64 %s 1007*67e74705SXin Li // CHECK-BE-NAN-64-64: "-internal-isystem" 1008*67e74705SXin Li // CHECK-BE-NAN-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1009*67e74705SXin Li // CHECK-BE-NAN-64-64: "-internal-isystem" 1010*67e74705SXin Li // CHECK-BE-NAN-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/nan2008" 1011*67e74705SXin Li // CHECK-BE-NAN-64-64: "-internal-isystem" 1012*67e74705SXin Li // CHECK-BE-NAN-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1013*67e74705SXin Li // CHECK-BE-NAN-64-64: "-internal-externc-isystem" 1014*67e74705SXin Li // CHECK-BE-NAN-64-64: "[[TC]]/include" 1015*67e74705SXin Li // CHECK-BE-NAN-64-64: "-internal-externc-isystem" 1016*67e74705SXin Li // CHECK-BE-NAN-64-64: "[[TC]]/../../../../sysroot/usr/include" 1017*67e74705SXin Li // CHECK-BE-NAN-64-64: "{{.*}}ld{{(.exe)?}}" 1018*67e74705SXin Li // CHECK-BE-NAN-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/nan2008" 1019*67e74705SXin Li // CHECK-BE-NAN-64-64: "-dynamic-linker" "/lib64/ld-linux-mipsn8.so.1" 1020*67e74705SXin Li // CHECK-BE-NAN-64-64: "[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib{{/|\\\\}}crt1.o" 1021*67e74705SXin Li // CHECK-BE-NAN-64-64: "[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib{{/|\\\\}}crti.o" 1022*67e74705SXin Li // CHECK-BE-NAN-64-64: "[[TC]]/mips64/64/nan2008{{/|\\\\}}crtbegin.o" 1023*67e74705SXin Li // CHECK-BE-NAN-64-64: "-L[[TC]]/mips64/64/nan2008" 1024*67e74705SXin Li // CHECK-BE-NAN-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/nan2008" 1025*67e74705SXin Li // CHECK-BE-NAN-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib" 1026*67e74705SXin Li // CHECK-BE-NAN-64-64: "[[TC]]/mips64/64/nan2008{{/|\\\\}}crtend.o" 1027*67e74705SXin Li // CHECK-BE-NAN-64-64: "[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib{{/|\\\\}}crtn.o" 1028*67e74705SXin Li // 1029*67e74705SXin Li // = Big-endian, mips64, ABI 64, fp64, nan2008 1030*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1031*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=64 -mfp64 -mnan=2008 \ 1032*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1033*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN64-64-64 %s 1034*67e74705SXin Li // CHECK-BE-NAN64-64-64: "-internal-isystem" 1035*67e74705SXin Li // CHECK-BE-NAN64-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1036*67e74705SXin Li // CHECK-BE-NAN64-64-64: "-internal-isystem" 1037*67e74705SXin Li // CHECK-BE-NAN64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/nan2008" 1038*67e74705SXin Li // CHECK-BE-NAN64-64-64: "-internal-isystem" 1039*67e74705SXin Li // CHECK-BE-NAN64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1040*67e74705SXin Li // CHECK-BE-NAN64-64-64: "-internal-externc-isystem" 1041*67e74705SXin Li // CHECK-BE-NAN64-64-64: "[[TC]]/include" 1042*67e74705SXin Li // CHECK-BE-NAN64-64-64: "-internal-externc-isystem" 1043*67e74705SXin Li // CHECK-BE-NAN64-64-64: "[[TC]]/../../../../sysroot/usr/include" 1044*67e74705SXin Li // CHECK-BE-NAN64-64-64: "{{.*}}ld{{(.exe)?}}" 1045*67e74705SXin Li // CHECK-BE-NAN64-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/nan2008" 1046*67e74705SXin Li // CHECK-BE-NAN64-64-64: "-dynamic-linker" "/lib64/ld-linux-mipsn8.so.1" 1047*67e74705SXin Li // CHECK-BE-NAN64-64-64: "[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib{{/|\\\\}}crt1.o" 1048*67e74705SXin Li // CHECK-BE-NAN64-64-64: "[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib{{/|\\\\}}crti.o" 1049*67e74705SXin Li // CHECK-BE-NAN64-64-64: "[[TC]]/mips64/64/nan2008{{/|\\\\}}crtbegin.o" 1050*67e74705SXin Li // CHECK-BE-NAN64-64-64: "-L[[TC]]/mips64/64/nan2008" 1051*67e74705SXin Li // CHECK-BE-NAN64-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/nan2008" 1052*67e74705SXin Li // CHECK-BE-NAN64-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib" 1053*67e74705SXin Li // CHECK-BE-NAN64-64-64: "[[TC]]/mips64/64/nan2008{{/|\\\\}}crtend.o" 1054*67e74705SXin Li // CHECK-BE-NAN64-64-64: "[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib{{/|\\\\}}crtn.o" 1055*67e74705SXin Li // 1056*67e74705SXin Li // = Big-endian, mips64r2, ABI n32, hard float 1057*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1058*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=n32 -mhard-float \ 1059*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1060*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF-64R2-N32 %s 1061*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "-internal-isystem" 1062*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1063*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "-internal-isystem" 1064*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2" 1065*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "-internal-isystem" 1066*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1067*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "-internal-externc-isystem" 1068*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "[[TC]]/include" 1069*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "-internal-externc-isystem" 1070*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "[[TC]]/../../../../sysroot/usr/include" 1071*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "{{.*}}ld{{(.exe)?}}" 1072*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2" 1073*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "-dynamic-linker" "/lib32/ld.so.1" 1074*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/usr/lib{{/|\\\\}}crt1.o" 1075*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/usr/lib{{/|\\\\}}crti.o" 1076*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "[[TC]]/mips64r2{{/|\\\\}}crtbegin.o" 1077*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "-L[[TC]]/mips64r2" 1078*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2" 1079*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/usr/lib" 1080*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "[[TC]]/mips64r2{{/|\\\\}}crtend.o" 1081*67e74705SXin Li // CHECK-BE-HF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/usr/lib{{/|\\\\}}crtn.o" 1082*67e74705SXin Li // 1083*67e74705SXin Li // = Big-endian, mips64r2, ABI n32, fp64, hard float 1084*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1085*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=n32 -mfp64 -mhard-float \ 1086*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1087*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF64-64R2-N32 %s 1088*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "-internal-isystem" 1089*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1090*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "-internal-isystem" 1091*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2" 1092*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "-internal-isystem" 1093*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1094*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "-internal-externc-isystem" 1095*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "[[TC]]/include" 1096*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "-internal-externc-isystem" 1097*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "[[TC]]/../../../../sysroot/usr/include" 1098*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "{{.*}}ld{{(.exe)?}}" 1099*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2" 1100*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "-dynamic-linker" "/lib32/ld.so.1" 1101*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/usr/lib{{/|\\\\}}crt1.o" 1102*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/usr/lib{{/|\\\\}}crti.o" 1103*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "[[TC]]/mips64r2{{/|\\\\}}crtbegin.o" 1104*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "-L[[TC]]/mips64r2" 1105*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2" 1106*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/usr/lib" 1107*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "[[TC]]/mips64r2{{/|\\\\}}crtend.o" 1108*67e74705SXin Li // CHECK-BE-HF64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/usr/lib{{/|\\\\}}crtn.o" 1109*67e74705SXin Li // 1110*67e74705SXin Li // = Big-endian, mips64r2, ABI n32, soft float 1111*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1112*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=n32 -msoft-float \ 1113*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1114*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-SF-64R2-N32 %s 1115*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "-internal-isystem" 1116*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1117*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "-internal-isystem" 1118*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/sof" 1119*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "-internal-isystem" 1120*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1121*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "-internal-externc-isystem" 1122*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "[[TC]]/include" 1123*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "-internal-externc-isystem" 1124*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "[[TC]]/../../../../sysroot/usr/include" 1125*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "{{.*}}ld{{(.exe)?}}" 1126*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/sof" 1127*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "-dynamic-linker" "/lib32/ld.so.1" 1128*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/sof/usr/lib{{/|\\\\}}crt1.o" 1129*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/sof/usr/lib{{/|\\\\}}crti.o" 1130*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "[[TC]]/mips64r2/sof{{/|\\\\}}crtbegin.o" 1131*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "-L[[TC]]/mips64r2/sof" 1132*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/sof" 1133*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/sof/usr/lib" 1134*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "[[TC]]/mips64r2/sof{{/|\\\\}}crtend.o" 1135*67e74705SXin Li // CHECK-BE-SF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/sof/usr/lib{{/|\\\\}}crtn.o" 1136*67e74705SXin Li // 1137*67e74705SXin Li // = Big-endian, mips64r2, ABI n32, nan2008 1138*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1139*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=n32 -mnan=2008 \ 1140*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1141*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN-64R2-N32 %s 1142*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "-internal-isystem" 1143*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1144*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "-internal-isystem" 1145*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/nan2008" 1146*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "-internal-isystem" 1147*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1148*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "-internal-externc-isystem" 1149*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "[[TC]]/include" 1150*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "-internal-externc-isystem" 1151*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "[[TC]]/../../../../sysroot/usr/include" 1152*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "{{.*}}ld{{(.exe)?}}" 1153*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/nan2008" 1154*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "-dynamic-linker" "/lib32/ld-linux-mipsn8.so.1" 1155*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib{{/|\\\\}}crt1.o" 1156*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib{{/|\\\\}}crti.o" 1157*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "[[TC]]/mips64r2/nan2008{{/|\\\\}}crtbegin.o" 1158*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "-L[[TC]]/mips64r2/nan2008" 1159*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/nan2008" 1160*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib" 1161*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "[[TC]]/mips64r2/nan2008{{/|\\\\}}crtend.o" 1162*67e74705SXin Li // CHECK-BE-NAN-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib{{/|\\\\}}crtn.o" 1163*67e74705SXin Li // 1164*67e74705SXin Li // = Big-endian, mips64r2, ABI n32, fp64, nan2008 1165*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1166*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=n32 -mfp64 -mnan=2008 \ 1167*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1168*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN64-64R2-N32 %s 1169*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "-internal-isystem" 1170*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1171*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "-internal-isystem" 1172*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/nan2008" 1173*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "-internal-isystem" 1174*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1175*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "-internal-externc-isystem" 1176*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "[[TC]]/include" 1177*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "-internal-externc-isystem" 1178*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/usr/include" 1179*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "{{.*}}ld{{(.exe)?}}" 1180*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/nan2008" 1181*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "-dynamic-linker" "/lib32/ld-linux-mipsn8.so.1" 1182*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib{{/|\\\\}}crt1.o" 1183*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib{{/|\\\\}}crti.o" 1184*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "[[TC]]/mips64r2/nan2008{{/|\\\\}}crtbegin.o" 1185*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "-L[[TC]]/mips64r2/nan2008" 1186*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/nan2008" 1187*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib" 1188*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "[[TC]]/mips64r2/nan2008{{/|\\\\}}crtend.o" 1189*67e74705SXin Li // CHECK-BE-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib{{/|\\\\}}crtn.o" 1190*67e74705SXin Li // 1191*67e74705SXin Li // = Big-endian, mips64r2, ABI 64, hard float 1192*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1193*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=64 -mhard-float \ 1194*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1195*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF-64R2-64 %s 1196*67e74705SXin Li // CHECK-BE-HF-64R2-64: "-internal-isystem" 1197*67e74705SXin Li // CHECK-BE-HF-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1198*67e74705SXin Li // CHECK-BE-HF-64R2-64: "-internal-isystem" 1199*67e74705SXin Li // CHECK-BE-HF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64" 1200*67e74705SXin Li // CHECK-BE-HF-64R2-64: "-internal-isystem" 1201*67e74705SXin Li // CHECK-BE-HF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1202*67e74705SXin Li // CHECK-BE-HF-64R2-64: "-internal-externc-isystem" 1203*67e74705SXin Li // CHECK-BE-HF-64R2-64: "[[TC]]/include" 1204*67e74705SXin Li // CHECK-BE-HF-64R2-64: "-internal-externc-isystem" 1205*67e74705SXin Li // CHECK-BE-HF-64R2-64: "[[TC]]/../../../../sysroot/usr/include" 1206*67e74705SXin Li // CHECK-BE-HF-64R2-64: "{{.*}}ld{{(.exe)?}}" 1207*67e74705SXin Li // CHECK-BE-HF-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64" 1208*67e74705SXin Li // CHECK-BE-HF-64R2-64: "-dynamic-linker" "/lib64/ld.so.1" 1209*67e74705SXin Li // CHECK-BE-HF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crt1.o" 1210*67e74705SXin Li // CHECK-BE-HF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crti.o" 1211*67e74705SXin Li // CHECK-BE-HF-64R2-64: "[[TC]]/mips64r2/64{{/|\\\\}}crtbegin.o" 1212*67e74705SXin Li // CHECK-BE-HF-64R2-64: "-L[[TC]]/mips64r2/64" 1213*67e74705SXin Li // CHECK-BE-HF-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64" 1214*67e74705SXin Li // CHECK-BE-HF-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/usr/lib" 1215*67e74705SXin Li // CHECK-BE-HF-64R2-64: "[[TC]]/mips64r2/64{{/|\\\\}}crtend.o" 1216*67e74705SXin Li // CHECK-BE-HF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crtn.o" 1217*67e74705SXin Li // 1218*67e74705SXin Li // = Big-endian, mips64r2, ABI 64, fp64, hard float 1219*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1220*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=64 -mfp64 -mhard-float \ 1221*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1222*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF64-64R2-64 %s 1223*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "-internal-isystem" 1224*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1225*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "-internal-isystem" 1226*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64" 1227*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "-internal-isystem" 1228*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1229*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "-internal-externc-isystem" 1230*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "[[TC]]/include" 1231*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "-internal-externc-isystem" 1232*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "[[TC]]/../../../../sysroot/usr/include" 1233*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "{{.*}}ld{{(.exe)?}}" 1234*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64" 1235*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "-dynamic-linker" "/lib64/ld.so.1" 1236*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crt1.o" 1237*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crti.o" 1238*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "[[TC]]/mips64r2/64{{/|\\\\}}crtbegin.o" 1239*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "-L[[TC]]/mips64r2/64" 1240*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64" 1241*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/usr/lib" 1242*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "[[TC]]/mips64r2/64{{/|\\\\}}crtend.o" 1243*67e74705SXin Li // CHECK-BE-HF64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crtn.o" 1244*67e74705SXin Li // 1245*67e74705SXin Li // = Big-endian, mips64r2, ABI 64, soft float 1246*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1247*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=64 -msoft-float \ 1248*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1249*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-SF-64R2-64 %s 1250*67e74705SXin Li // CHECK-BE-SF-64R2-64: "-internal-isystem" 1251*67e74705SXin Li // CHECK-BE-SF-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1252*67e74705SXin Li // CHECK-BE-SF-64R2-64: "-internal-isystem" 1253*67e74705SXin Li // CHECK-BE-SF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/sof" 1254*67e74705SXin Li // CHECK-BE-SF-64R2-64: "-internal-isystem" 1255*67e74705SXin Li // CHECK-BE-SF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1256*67e74705SXin Li // CHECK-BE-SF-64R2-64: "-internal-externc-isystem" 1257*67e74705SXin Li // CHECK-BE-SF-64R2-64: "[[TC]]/include" 1258*67e74705SXin Li // CHECK-BE-SF-64R2-64: "-internal-externc-isystem" 1259*67e74705SXin Li // CHECK-BE-SF-64R2-64: "[[TC]]/../../../../sysroot/usr/include" 1260*67e74705SXin Li // CHECK-BE-SF-64R2-64: "{{.*}}ld{{(.exe)?}}" 1261*67e74705SXin Li // CHECK-BE-SF-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/sof" 1262*67e74705SXin Li // CHECK-BE-SF-64R2-64: "-dynamic-linker" "/lib64/ld.so.1" 1263*67e74705SXin Li // CHECK-BE-SF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/sof/usr/lib{{/|\\\\}}crt1.o" 1264*67e74705SXin Li // CHECK-BE-SF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/sof/usr/lib{{/|\\\\}}crti.o" 1265*67e74705SXin Li // CHECK-BE-SF-64R2-64: "[[TC]]/mips64r2/64/sof{{/|\\\\}}crtbegin.o" 1266*67e74705SXin Li // CHECK-BE-SF-64R2-64: "-L[[TC]]/mips64r2/64/sof" 1267*67e74705SXin Li // CHECK-BE-SF-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/sof" 1268*67e74705SXin Li // CHECK-BE-SF-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/sof/usr/lib" 1269*67e74705SXin Li // CHECK-BE-SF-64R2-64: "[[TC]]/mips64r2/64/sof{{/|\\\\}}crtend.o" 1270*67e74705SXin Li // CHECK-BE-SF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/sof/usr/lib{{/|\\\\}}crtn.o" 1271*67e74705SXin Li // 1272*67e74705SXin Li // = Big-endian, mips64r2, ABI 64, nan2008 1273*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1274*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=64 -mnan=2008 \ 1275*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1276*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN-64R2-64 %s 1277*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "-internal-isystem" 1278*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1279*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "-internal-isystem" 1280*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/nan2008" 1281*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "-internal-isystem" 1282*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1283*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "-internal-externc-isystem" 1284*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "[[TC]]/include" 1285*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "-internal-externc-isystem" 1286*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "[[TC]]/../../../../sysroot/usr/include" 1287*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "{{.*}}ld{{(.exe)?}}" 1288*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/nan2008" 1289*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "-dynamic-linker" "/lib64/ld-linux-mipsn8.so.1" 1290*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crt1.o" 1291*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crti.o" 1292*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "[[TC]]/mips64r2/64/nan2008{{/|\\\\}}crtbegin.o" 1293*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "-L[[TC]]/mips64r2/64/nan2008" 1294*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/nan2008" 1295*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib" 1296*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "[[TC]]/mips64r2/64/nan2008{{/|\\\\}}crtend.o" 1297*67e74705SXin Li // CHECK-BE-NAN-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crtn.o" 1298*67e74705SXin Li // 1299*67e74705SXin Li // = Big-endian, mips64r2, ABI 64, fp64, nan2008 1300*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1301*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=64 -mfp64 -mnan=2008 \ 1302*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1303*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN64-64R2-64 %s 1304*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "-internal-isystem" 1305*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1306*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "-internal-isystem" 1307*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/nan2008" 1308*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "-internal-isystem" 1309*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1310*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "-internal-externc-isystem" 1311*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "[[TC]]/include" 1312*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "-internal-externc-isystem" 1313*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "[[TC]]/../../../../sysroot/usr/include" 1314*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "{{.*}}ld{{(.exe)?}}" 1315*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/nan2008" 1316*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "-dynamic-linker" "/lib64/ld-linux-mipsn8.so.1" 1317*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crt1.o" 1318*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crti.o" 1319*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "[[TC]]/mips64r2/64/nan2008{{/|\\\\}}crtbegin.o" 1320*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "-L[[TC]]/mips64r2/64/nan2008" 1321*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/nan2008" 1322*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib" 1323*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "[[TC]]/mips64r2/64/nan2008{{/|\\\\}}crtend.o" 1324*67e74705SXin Li // CHECK-BE-NAN64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crtn.o" 1325*67e74705SXin Li // 1326*67e74705SXin Li // = Big-endian, default (mips64r2), ABI 64, fp64, nan2008 1327*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1328*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mabi=64 -mfp64 -mnan=2008 \ 1329*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1330*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-NAN64-64R2-64-DEF %s 1331*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "-internal-isystem" 1332*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1333*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "-internal-isystem" 1334*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/nan2008" 1335*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "-internal-isystem" 1336*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1337*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "-internal-externc-isystem" 1338*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "[[TC]]/include" 1339*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "-internal-externc-isystem" 1340*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "[[TC]]/../../../../sysroot/usr/include" 1341*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "{{.*}}ld{{(.exe)?}}" 1342*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/nan2008" 1343*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "-dynamic-linker" "/lib64/ld-linux-mipsn8.so.1" 1344*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crt1.o" 1345*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crti.o" 1346*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "[[TC]]/mips64r2/64/nan2008{{/|\\\\}}crtbegin.o" 1347*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "-L[[TC]]/mips64r2/64/nan2008" 1348*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/nan2008" 1349*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "-L[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib" 1350*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "[[TC]]/mips64r2/64/nan2008{{/|\\\\}}crtend.o" 1351*67e74705SXin Li // CHECK-BE-NAN64-64R2-64-DEF: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crtn.o" 1352*67e74705SXin Li // 1353*67e74705SXin Li // = Little-endian, mips32, hard float 1354*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1355*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32 -mhard-float \ 1356*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1357*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF-32 %s 1358*67e74705SXin Li // CHECK-EL-HF-32: "-internal-isystem" 1359*67e74705SXin Li // CHECK-EL-HF-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1360*67e74705SXin Li // CHECK-EL-HF-32: "-internal-isystem" 1361*67e74705SXin Li // CHECK-EL-HF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/el" 1362*67e74705SXin Li // CHECK-EL-HF-32: "-internal-isystem" 1363*67e74705SXin Li // CHECK-EL-HF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1364*67e74705SXin Li // CHECK-EL-HF-32: "-internal-externc-isystem" 1365*67e74705SXin Li // CHECK-EL-HF-32: "[[TC]]/include" 1366*67e74705SXin Li // CHECK-EL-HF-32: "-internal-externc-isystem" 1367*67e74705SXin Li // CHECK-EL-HF-32: "[[TC]]/../../../../sysroot/usr/include" 1368*67e74705SXin Li // CHECK-EL-HF-32: "{{.*}}ld{{(.exe)?}}" 1369*67e74705SXin Li // CHECK-EL-HF-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/el" 1370*67e74705SXin Li // CHECK-EL-HF-32: "-dynamic-linker" "/lib/ld.so.1" 1371*67e74705SXin Li // CHECK-EL-HF-32: "[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib{{/|\\\\}}crt1.o" 1372*67e74705SXin Li // CHECK-EL-HF-32: "[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib{{/|\\\\}}crti.o" 1373*67e74705SXin Li // CHECK-EL-HF-32: "[[TC]]/mips32/el{{/|\\\\}}crtbegin.o" 1374*67e74705SXin Li // CHECK-EL-HF-32: "-L[[TC]]/mips32/el" 1375*67e74705SXin Li // CHECK-EL-HF-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/el" 1376*67e74705SXin Li // CHECK-EL-HF-32: "-L[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib" 1377*67e74705SXin Li // CHECK-EL-HF-32: "[[TC]]/mips32/el{{/|\\\\}}crtend.o" 1378*67e74705SXin Li // CHECK-EL-HF-32: "[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib{{/|\\\\}}crtn.o" 1379*67e74705SXin Li // 1380*67e74705SXin Li // = Little-endian, mips32, fp64, hard float 1381*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1382*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32 -mfp64 -mhard-float \ 1383*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1384*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF64-32 %s 1385*67e74705SXin Li // CHECK-EL-HF64-32: "-internal-isystem" 1386*67e74705SXin Li // CHECK-EL-HF64-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1387*67e74705SXin Li // CHECK-EL-HF64-32: "-internal-isystem" 1388*67e74705SXin Li // CHECK-EL-HF64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/el" 1389*67e74705SXin Li // CHECK-EL-HF64-32: "-internal-isystem" 1390*67e74705SXin Li // CHECK-EL-HF64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1391*67e74705SXin Li // CHECK-EL-HF64-32: "-internal-externc-isystem" 1392*67e74705SXin Li // CHECK-EL-HF64-32: "[[TC]]/include" 1393*67e74705SXin Li // CHECK-EL-HF64-32: "-internal-externc-isystem" 1394*67e74705SXin Li // CHECK-EL-HF64-32: "[[TC]]/../../../../sysroot/usr/include" 1395*67e74705SXin Li // CHECK-EL-HF64-32: "{{.*}}ld{{(.exe)?}}" 1396*67e74705SXin Li // CHECK-EL-HF64-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/el" 1397*67e74705SXin Li // CHECK-EL-HF64-32: "-dynamic-linker" "/lib/ld.so.1" 1398*67e74705SXin Li // CHECK-EL-HF64-32: "[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib{{/|\\\\}}crt1.o" 1399*67e74705SXin Li // CHECK-EL-HF64-32: "[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib{{/|\\\\}}crti.o" 1400*67e74705SXin Li // CHECK-EL-HF64-32: "[[TC]]/mips32/el{{/|\\\\}}crtbegin.o" 1401*67e74705SXin Li // CHECK-EL-HF64-32: "-L[[TC]]/mips32/el" 1402*67e74705SXin Li // CHECK-EL-HF64-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/el" 1403*67e74705SXin Li // CHECK-EL-HF64-32: "-L[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib" 1404*67e74705SXin Li // CHECK-EL-HF64-32: "[[TC]]/mips32/el{{/|\\\\}}crtend.o" 1405*67e74705SXin Li // CHECK-EL-HF64-32: "[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib{{/|\\\\}}crtn.o" 1406*67e74705SXin Li // 1407*67e74705SXin Li // = Little-endian, mips32, soft float 1408*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1409*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32 -msoft-float \ 1410*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1411*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-SF-32 %s 1412*67e74705SXin Li // CHECK-EL-SF-32: "-internal-isystem" 1413*67e74705SXin Li // CHECK-EL-SF-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1414*67e74705SXin Li // CHECK-EL-SF-32: "-internal-isystem" 1415*67e74705SXin Li // CHECK-EL-SF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/el/sof" 1416*67e74705SXin Li // CHECK-EL-SF-32: "-internal-isystem" 1417*67e74705SXin Li // CHECK-EL-SF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1418*67e74705SXin Li // CHECK-EL-SF-32: "-internal-externc-isystem" 1419*67e74705SXin Li // CHECK-EL-SF-32: "[[TC]]/include" 1420*67e74705SXin Li // CHECK-EL-SF-32: "-internal-externc-isystem" 1421*67e74705SXin Li // CHECK-EL-SF-32: "[[TC]]/../../../../sysroot/usr/include" 1422*67e74705SXin Li // CHECK-EL-SF-32: "{{.*}}ld{{(.exe)?}}" 1423*67e74705SXin Li // CHECK-EL-SF-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/el/sof" 1424*67e74705SXin Li // CHECK-EL-SF-32: "-dynamic-linker" "/lib/ld.so.1" 1425*67e74705SXin Li // CHECK-EL-SF-32: "[[TC]]/../../../../sysroot/mips32/el/sof/usr/lib/../lib{{/|\\\\}}crt1.o" 1426*67e74705SXin Li // CHECK-EL-SF-32: "[[TC]]/../../../../sysroot/mips32/el/sof/usr/lib/../lib{{/|\\\\}}crti.o" 1427*67e74705SXin Li // CHECK-EL-SF-32: "[[TC]]/mips32/el/sof{{/|\\\\}}crtbegin.o" 1428*67e74705SXin Li // CHECK-EL-SF-32: "-L[[TC]]/mips32/el/sof" 1429*67e74705SXin Li // CHECK-EL-SF-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/el/sof" 1430*67e74705SXin Li // CHECK-EL-SF-32: "-L[[TC]]/../../../../sysroot/mips32/el/sof/usr/lib/../lib" 1431*67e74705SXin Li // CHECK-EL-SF-32: "[[TC]]/mips32/el/sof{{/|\\\\}}crtend.o" 1432*67e74705SXin Li // CHECK-EL-SF-32: "[[TC]]/../../../../sysroot/mips32/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o" 1433*67e74705SXin Li // 1434*67e74705SXin Li // = Little-endian, mips32 / mips16, hard float 1435*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1436*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32 -mips16 -mhard-float \ 1437*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1438*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF-16 %s 1439*67e74705SXin Li // CHECK-EL-HF-16: "-internal-isystem" 1440*67e74705SXin Li // CHECK-EL-HF-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1441*67e74705SXin Li // CHECK-EL-HF-16: "-internal-isystem" 1442*67e74705SXin Li // CHECK-EL-HF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/el" 1443*67e74705SXin Li // CHECK-EL-HF-16: "-internal-isystem" 1444*67e74705SXin Li // CHECK-EL-HF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1445*67e74705SXin Li // CHECK-EL-HF-16: "-internal-externc-isystem" 1446*67e74705SXin Li // CHECK-EL-HF-16: "[[TC]]/include" 1447*67e74705SXin Li // CHECK-EL-HF-16: "-internal-externc-isystem" 1448*67e74705SXin Li // CHECK-EL-HF-16: "[[TC]]/../../../../sysroot/usr/include" 1449*67e74705SXin Li // CHECK-EL-HF-16: "{{.*}}ld{{(.exe)?}}" 1450*67e74705SXin Li // CHECK-EL-HF-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/el" 1451*67e74705SXin Li // CHECK-EL-HF-16: "-dynamic-linker" "/lib/ld.so.1" 1452*67e74705SXin Li // CHECK-EL-HF-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib{{/|\\\\}}crt1.o" 1453*67e74705SXin Li // CHECK-EL-HF-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib{{/|\\\\}}crti.o" 1454*67e74705SXin Li // CHECK-EL-HF-16: "[[TC]]/mips32/mips16/el{{/|\\\\}}crtbegin.o" 1455*67e74705SXin Li // CHECK-EL-HF-16: "-L[[TC]]/mips32/mips16/el" 1456*67e74705SXin Li // CHECK-EL-HF-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/el" 1457*67e74705SXin Li // CHECK-EL-HF-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib" 1458*67e74705SXin Li // CHECK-EL-HF-16: "[[TC]]/mips32/mips16/el{{/|\\\\}}crtend.o" 1459*67e74705SXin Li // CHECK-EL-HF-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib{{/|\\\\}}crtn.o" 1460*67e74705SXin Li // 1461*67e74705SXin Li // = Little-endian, mips32 / mips16, fp64, hard float 1462*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1463*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32 -mips16 -mfp64 -mhard-float \ 1464*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1465*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF64-16 %s 1466*67e74705SXin Li // CHECK-EL-HF64-16: "-internal-isystem" 1467*67e74705SXin Li // CHECK-EL-HF64-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1468*67e74705SXin Li // CHECK-EL-HF64-16: "-internal-isystem" 1469*67e74705SXin Li // CHECK-EL-HF64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/el" 1470*67e74705SXin Li // CHECK-EL-HF64-16: "-internal-isystem" 1471*67e74705SXin Li // CHECK-EL-HF64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1472*67e74705SXin Li // CHECK-EL-HF64-16: "-internal-externc-isystem" 1473*67e74705SXin Li // CHECK-EL-HF64-16: "[[TC]]/include" 1474*67e74705SXin Li // CHECK-EL-HF64-16: "-internal-externc-isystem" 1475*67e74705SXin Li // CHECK-EL-HF64-16: "[[TC]]/../../../../sysroot/usr/include" 1476*67e74705SXin Li // CHECK-EL-HF64-16: "{{.*}}ld{{(.exe)?}}" 1477*67e74705SXin Li // CHECK-EL-HF64-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/el" 1478*67e74705SXin Li // CHECK-EL-HF64-16: "-dynamic-linker" "/lib/ld.so.1" 1479*67e74705SXin Li // CHECK-EL-HF64-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib{{/|\\\\}}crt1.o" 1480*67e74705SXin Li // CHECK-EL-HF64-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib{{/|\\\\}}crti.o" 1481*67e74705SXin Li // CHECK-EL-HF64-16: "[[TC]]/mips32/mips16/el{{/|\\\\}}crtbegin.o" 1482*67e74705SXin Li // CHECK-EL-HF64-16: "-L[[TC]]/mips32/mips16/el" 1483*67e74705SXin Li // CHECK-EL-HF64-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/el" 1484*67e74705SXin Li // CHECK-EL-HF64-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib" 1485*67e74705SXin Li // CHECK-EL-HF64-16: "[[TC]]/mips32/mips16/el{{/|\\\\}}crtend.o" 1486*67e74705SXin Li // CHECK-EL-HF64-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib{{/|\\\\}}crtn.o" 1487*67e74705SXin Li // 1488*67e74705SXin Li // = Little-endian, mips32 / mips16, soft float 1489*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1490*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32 -mips16 -msoft-float \ 1491*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1492*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-SF-16 %s 1493*67e74705SXin Li // CHECK-EL-SF-16: "-internal-isystem" 1494*67e74705SXin Li // CHECK-EL-SF-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1495*67e74705SXin Li // CHECK-EL-SF-16: "-internal-isystem" 1496*67e74705SXin Li // CHECK-EL-SF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/el/sof" 1497*67e74705SXin Li // CHECK-EL-SF-16: "-internal-isystem" 1498*67e74705SXin Li // CHECK-EL-SF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1499*67e74705SXin Li // CHECK-EL-SF-16: "-internal-externc-isystem" 1500*67e74705SXin Li // CHECK-EL-SF-16: "[[TC]]/include" 1501*67e74705SXin Li // CHECK-EL-SF-16: "-internal-externc-isystem" 1502*67e74705SXin Li // CHECK-EL-SF-16: "[[TC]]/../../../../sysroot/usr/include" 1503*67e74705SXin Li // CHECK-EL-SF-16: "{{.*}}ld{{(.exe)?}}" 1504*67e74705SXin Li // CHECK-EL-SF-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/el/sof" 1505*67e74705SXin Li // CHECK-EL-SF-16: "-dynamic-linker" "/lib/ld.so.1" 1506*67e74705SXin Li // CHECK-EL-SF-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/sof/usr/lib/../lib{{/|\\\\}}crt1.o" 1507*67e74705SXin Li // CHECK-EL-SF-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/sof/usr/lib/../lib{{/|\\\\}}crti.o" 1508*67e74705SXin Li // CHECK-EL-SF-16: "[[TC]]/mips32/mips16/el/sof{{/|\\\\}}crtbegin.o" 1509*67e74705SXin Li // CHECK-EL-SF-16: "-L[[TC]]/mips32/mips16/el/sof" 1510*67e74705SXin Li // CHECK-EL-SF-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/el/sof" 1511*67e74705SXin Li // CHECK-EL-SF-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/sof/usr/lib/../lib" 1512*67e74705SXin Li // CHECK-EL-SF-16: "[[TC]]/mips32/mips16/el/sof{{/|\\\\}}crtend.o" 1513*67e74705SXin Li // CHECK-EL-SF-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o" 1514*67e74705SXin Li // 1515*67e74705SXin Li // = Little-endian, mips32 / mips16, nan2008 1516*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1517*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32 -mips16 -mnan=2008 \ 1518*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1519*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN-16 %s 1520*67e74705SXin Li // CHECK-EL-NAN-16: "-internal-isystem" 1521*67e74705SXin Li // CHECK-EL-NAN-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1522*67e74705SXin Li // CHECK-EL-NAN-16: "-internal-isystem" 1523*67e74705SXin Li // CHECK-EL-NAN-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/el/nan2008" 1524*67e74705SXin Li // CHECK-EL-NAN-16: "-internal-isystem" 1525*67e74705SXin Li // CHECK-EL-NAN-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1526*67e74705SXin Li // CHECK-EL-NAN-16: "-internal-externc-isystem" 1527*67e74705SXin Li // CHECK-EL-NAN-16: "[[TC]]/include" 1528*67e74705SXin Li // CHECK-EL-NAN-16: "-internal-externc-isystem" 1529*67e74705SXin Li // CHECK-EL-NAN-16: "[[TC]]/../../../../sysroot/usr/include" 1530*67e74705SXin Li // CHECK-EL-NAN-16: "{{.*}}ld{{(.exe)?}}" 1531*67e74705SXin Li // CHECK-EL-NAN-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008" 1532*67e74705SXin Li // CHECK-EL-NAN-16: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 1533*67e74705SXin Li // CHECK-EL-NAN-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 1534*67e74705SXin Li // CHECK-EL-NAN-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 1535*67e74705SXin Li // CHECK-EL-NAN-16: "[[TC]]/mips32/mips16/el/nan2008{{/|\\\\}}crtbegin.o" 1536*67e74705SXin Li // CHECK-EL-NAN-16: "-L[[TC]]/mips32/mips16/el/nan2008" 1537*67e74705SXin Li // CHECK-EL-NAN-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/el/nan2008" 1538*67e74705SXin Li // CHECK-EL-NAN-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib" 1539*67e74705SXin Li // CHECK-EL-NAN-16: "[[TC]]/mips32/mips16/el/nan2008{{/|\\\\}}crtend.o" 1540*67e74705SXin Li // CHECK-EL-NAN-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 1541*67e74705SXin Li // 1542*67e74705SXin Li // = Little-endian, mips32 / mips16, fp64, nan2008 1543*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1544*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32 -mips16 -mfp64 -mnan=2008 \ 1545*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1546*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN64-16 %s 1547*67e74705SXin Li // CHECK-EL-NAN64-16: "-internal-isystem" 1548*67e74705SXin Li // CHECK-EL-NAN64-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1549*67e74705SXin Li // CHECK-EL-NAN64-16: "-internal-isystem" 1550*67e74705SXin Li // CHECK-EL-NAN64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/el/nan2008" 1551*67e74705SXin Li // CHECK-EL-NAN64-16: "-internal-isystem" 1552*67e74705SXin Li // CHECK-EL-NAN64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1553*67e74705SXin Li // CHECK-EL-NAN64-16: "-internal-externc-isystem" 1554*67e74705SXin Li // CHECK-EL-NAN64-16: "[[TC]]/include" 1555*67e74705SXin Li // CHECK-EL-NAN64-16: "-internal-externc-isystem" 1556*67e74705SXin Li // CHECK-EL-NAN64-16: "[[TC]]/../../../../sysroot/usr/include" 1557*67e74705SXin Li // CHECK-EL-NAN64-16: "{{.*}}ld{{(.exe)?}}" 1558*67e74705SXin Li // CHECK-EL-NAN64-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008" 1559*67e74705SXin Li // CHECK-EL-NAN64-16: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 1560*67e74705SXin Li // CHECK-EL-NAN64-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 1561*67e74705SXin Li // CHECK-EL-NAN64-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 1562*67e74705SXin Li // CHECK-EL-NAN64-16: "[[TC]]/mips32/mips16/el/nan2008{{/|\\\\}}crtbegin.o" 1563*67e74705SXin Li // CHECK-EL-NAN64-16: "-L[[TC]]/mips32/mips16/el/nan2008" 1564*67e74705SXin Li // CHECK-EL-NAN64-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/el/nan2008" 1565*67e74705SXin Li // CHECK-EL-NAN64-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib" 1566*67e74705SXin Li // CHECK-EL-NAN64-16: "[[TC]]/mips32/mips16/el/nan2008{{/|\\\\}}crtend.o" 1567*67e74705SXin Li // CHECK-EL-NAN64-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 1568*67e74705SXin Li // 1569*67e74705SXin Li // = Little-endian, mips32, nan2008 1570*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1571*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32 -mnan=2008 \ 1572*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1573*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN-32 %s 1574*67e74705SXin Li // CHECK-EL-NAN-32: "-internal-isystem" 1575*67e74705SXin Li // CHECK-EL-NAN-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1576*67e74705SXin Li // CHECK-EL-NAN-32: "-internal-isystem" 1577*67e74705SXin Li // CHECK-EL-NAN-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/el/nan2008" 1578*67e74705SXin Li // CHECK-EL-NAN-32: "-internal-isystem" 1579*67e74705SXin Li // CHECK-EL-NAN-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1580*67e74705SXin Li // CHECK-EL-NAN-32: "-internal-externc-isystem" 1581*67e74705SXin Li // CHECK-EL-NAN-32: "[[TC]]/include" 1582*67e74705SXin Li // CHECK-EL-NAN-32: "-internal-externc-isystem" 1583*67e74705SXin Li // CHECK-EL-NAN-32: "[[TC]]/../../../../sysroot/usr/include" 1584*67e74705SXin Li // CHECK-EL-NAN-32: "{{.*}}ld{{(.exe)?}}" 1585*67e74705SXin Li // CHECK-EL-NAN-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/el/nan2008" 1586*67e74705SXin Li // CHECK-EL-NAN-32: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 1587*67e74705SXin Li // CHECK-EL-NAN-32: "[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 1588*67e74705SXin Li // CHECK-EL-NAN-32: "[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 1589*67e74705SXin Li // CHECK-EL-NAN-32: "[[TC]]/mips32/el/nan2008{{/|\\\\}}crtbegin.o" 1590*67e74705SXin Li // CHECK-EL-NAN-32: "-L[[TC]]/mips32/el/nan2008" 1591*67e74705SXin Li // CHECK-EL-NAN-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/el/nan2008" 1592*67e74705SXin Li // CHECK-EL-NAN-32: "-L[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib" 1593*67e74705SXin Li // CHECK-EL-NAN-32: "[[TC]]/mips32/el/nan2008{{/|\\\\}}crtend.o" 1594*67e74705SXin Li // CHECK-EL-NAN-32: "[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 1595*67e74705SXin Li // 1596*67e74705SXin Li // = Little-endian, mips32, fp64, nan2008 1597*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1598*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32 -mfp64 -mnan=2008 \ 1599*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1600*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN64-32 %s 1601*67e74705SXin Li // CHECK-EL-NAN64-32: "-internal-isystem" 1602*67e74705SXin Li // CHECK-EL-NAN64-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1603*67e74705SXin Li // CHECK-EL-NAN64-32: "-internal-isystem" 1604*67e74705SXin Li // CHECK-EL-NAN64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/el/nan2008" 1605*67e74705SXin Li // CHECK-EL-NAN64-32: "-internal-isystem" 1606*67e74705SXin Li // CHECK-EL-NAN64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1607*67e74705SXin Li // CHECK-EL-NAN64-32: "-internal-externc-isystem" 1608*67e74705SXin Li // CHECK-EL-NAN64-32: "[[TC]]/include" 1609*67e74705SXin Li // CHECK-EL-NAN64-32: "-internal-externc-isystem" 1610*67e74705SXin Li // CHECK-EL-NAN64-32: "[[TC]]/../../../../sysroot/usr/include" 1611*67e74705SXin Li // CHECK-EL-NAN64-32: "{{.*}}ld{{(.exe)?}}" 1612*67e74705SXin Li // CHECK-EL-NAN64-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/el/nan2008" 1613*67e74705SXin Li // CHECK-EL-NAN64-32: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 1614*67e74705SXin Li // CHECK-EL-NAN64-32: "[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 1615*67e74705SXin Li // CHECK-EL-NAN64-32: "[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 1616*67e74705SXin Li // CHECK-EL-NAN64-32: "[[TC]]/mips32/el/nan2008{{/|\\\\}}crtbegin.o" 1617*67e74705SXin Li // CHECK-EL-NAN64-32: "-L[[TC]]/mips32/el/nan2008" 1618*67e74705SXin Li // CHECK-EL-NAN64-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/el/nan2008" 1619*67e74705SXin Li // CHECK-EL-NAN64-32: "-L[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib" 1620*67e74705SXin Li // CHECK-EL-NAN64-32: "[[TC]]/mips32/el/nan2008{{/|\\\\}}crtend.o" 1621*67e74705SXin Li // CHECK-EL-NAN64-32: "[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 1622*67e74705SXin Li // 1623*67e74705SXin Li // = Little-endian, mips32r2, hard float 1624*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1625*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mhard-float \ 1626*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1627*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF-32R2 %s 1628*67e74705SXin Li // CHECK-EL-HF-32R2: "-internal-isystem" 1629*67e74705SXin Li // CHECK-EL-HF-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1630*67e74705SXin Li // CHECK-EL-HF-32R2: "-internal-isystem" 1631*67e74705SXin Li // CHECK-EL-HF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/el" 1632*67e74705SXin Li // CHECK-EL-HF-32R2: "-internal-isystem" 1633*67e74705SXin Li // CHECK-EL-HF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1634*67e74705SXin Li // CHECK-EL-HF-32R2: "-internal-externc-isystem" 1635*67e74705SXin Li // CHECK-EL-HF-32R2: "[[TC]]/include" 1636*67e74705SXin Li // CHECK-EL-HF-32R2: "-internal-externc-isystem" 1637*67e74705SXin Li // CHECK-EL-HF-32R2: "[[TC]]/../../../../sysroot/usr/include" 1638*67e74705SXin Li // CHECK-EL-HF-32R2: "{{.*}}ld{{(.exe)?}}" 1639*67e74705SXin Li // CHECK-EL-HF-32R2: "--sysroot=[[TC]]/../../../../sysroot/el" 1640*67e74705SXin Li // CHECK-EL-HF-32R2: "-dynamic-linker" "/lib/ld.so.1" 1641*67e74705SXin Li // CHECK-EL-HF-32R2: "[[TC]]/../../../../sysroot/el/usr/lib/../lib{{/|\\\\}}crt1.o" 1642*67e74705SXin Li // CHECK-EL-HF-32R2: "[[TC]]/../../../../sysroot/el/usr/lib/../lib{{/|\\\\}}crti.o" 1643*67e74705SXin Li // CHECK-EL-HF-32R2: "[[TC]]/el{{/|\\\\}}crtbegin.o" 1644*67e74705SXin Li // CHECK-EL-HF-32R2: "-L[[TC]]/el" 1645*67e74705SXin Li // CHECK-EL-HF-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/el" 1646*67e74705SXin Li // CHECK-EL-HF-32R2: "-L[[TC]]/../../../../sysroot/el/usr/lib/../lib" 1647*67e74705SXin Li // CHECK-EL-HF-32R2: "[[TC]]/el{{/|\\\\}}crtend.o" 1648*67e74705SXin Li // CHECK-EL-HF-32R2: "[[TC]]/../../../../sysroot/el/usr/lib/../lib{{/|\\\\}}crtn.o" 1649*67e74705SXin Li // 1650*67e74705SXin Li // = Little-endian, mips32r2, hard float, uclibc 1651*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1652*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mhard-float -muclibc \ 1653*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1654*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-UC-HF-32R2 %s 1655*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "-internal-isystem" 1656*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1657*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "-internal-isystem" 1658*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/uclibc/el" 1659*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "-internal-isystem" 1660*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1661*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "-internal-externc-isystem" 1662*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "[[TC]]/include" 1663*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "-internal-externc-isystem" 1664*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "[[TC]]/../../../../sysroot/uclibc/usr/include" 1665*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "{{.*}}ld{{(.exe)?}}" 1666*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "--sysroot=[[TC]]/../../../../sysroot/uclibc/el" 1667*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "-dynamic-linker" "/lib/ld-uClibc.so.0" 1668*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "[[TC]]/../../../../sysroot/uclibc/el/usr/lib/../lib{{/|\\\\}}crt1.o" 1669*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "[[TC]]/../../../../sysroot/uclibc/el/usr/lib/../lib{{/|\\\\}}crti.o" 1670*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "[[TC]]/uclibc/el{{/|\\\\}}crtbegin.o" 1671*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "-L[[TC]]/uclibc/el" 1672*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/uclibc/el" 1673*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "-L[[TC]]/../../../../sysroot/uclibc/el/usr/lib/../lib" 1674*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "[[TC]]/uclibc/el{{/|\\\\}}crtend.o" 1675*67e74705SXin Li // CHECK-EL-UC-HF-32R2: "[[TC]]/../../../../sysroot/uclibc/el/usr/lib/../lib{{/|\\\\}}crtn.o" 1676*67e74705SXin Li // 1677*67e74705SXin Li // = Little-endian, mips32r2, fp64, hard float 1678*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1679*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mfp64 -mhard-float \ 1680*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1681*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF64-32R2 %s 1682*67e74705SXin Li // CHECK-EL-HF64-32R2: "-internal-isystem" 1683*67e74705SXin Li // CHECK-EL-HF64-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1684*67e74705SXin Li // CHECK-EL-HF64-32R2: "-internal-isystem" 1685*67e74705SXin Li // CHECK-EL-HF64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/el" 1686*67e74705SXin Li // CHECK-EL-HF64-32R2: "-internal-isystem" 1687*67e74705SXin Li // CHECK-EL-HF64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1688*67e74705SXin Li // CHECK-EL-HF64-32R2: "-internal-externc-isystem" 1689*67e74705SXin Li // CHECK-EL-HF64-32R2: "[[TC]]/include" 1690*67e74705SXin Li // CHECK-EL-HF64-32R2: "-internal-externc-isystem" 1691*67e74705SXin Li // CHECK-EL-HF64-32R2: "[[TC]]/../../../../sysroot/usr/include" 1692*67e74705SXin Li // CHECK-EL-HF64-32R2: "{{.*}}ld{{(.exe)?}}" 1693*67e74705SXin Li // CHECK-EL-HF64-32R2: "--sysroot=[[TC]]/../../../../sysroot/el" 1694*67e74705SXin Li // CHECK-EL-HF64-32R2: "-dynamic-linker" "/lib/ld.so.1" 1695*67e74705SXin Li // CHECK-EL-HF64-32R2: "[[TC]]/../../../../sysroot/el/usr/lib/../lib{{/|\\\\}}crt1.o" 1696*67e74705SXin Li // CHECK-EL-HF64-32R2: "[[TC]]/../../../../sysroot/el/usr/lib/../lib{{/|\\\\}}crti.o" 1697*67e74705SXin Li // CHECK-EL-HF64-32R2: "[[TC]]/el{{/|\\\\}}crtbegin.o" 1698*67e74705SXin Li // CHECK-EL-HF64-32R2: "-L[[TC]]/el" 1699*67e74705SXin Li // CHECK-EL-HF64-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/el" 1700*67e74705SXin Li // CHECK-EL-HF64-32R2: "-L[[TC]]/../../../../sysroot/el/usr/lib/../lib" 1701*67e74705SXin Li // CHECK-EL-HF64-32R2: "[[TC]]/el{{/|\\\\}}crtend.o" 1702*67e74705SXin Li // CHECK-EL-HF64-32R2: "[[TC]]/../../../../sysroot/el/usr/lib/../lib{{/|\\\\}}crtn.o" 1703*67e74705SXin Li // 1704*67e74705SXin Li // = Little-endian, mips32r2, soft float 1705*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1706*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -msoft-float \ 1707*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1708*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-SF-32R2 %s 1709*67e74705SXin Li // CHECK-EL-SF-32R2: "-internal-isystem" 1710*67e74705SXin Li // CHECK-EL-SF-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1711*67e74705SXin Li // CHECK-EL-SF-32R2: "-internal-isystem" 1712*67e74705SXin Li // CHECK-EL-SF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/el/sof" 1713*67e74705SXin Li // CHECK-EL-SF-32R2: "-internal-isystem" 1714*67e74705SXin Li // CHECK-EL-SF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1715*67e74705SXin Li // CHECK-EL-SF-32R2: "-internal-externc-isystem" 1716*67e74705SXin Li // CHECK-EL-SF-32R2: "[[TC]]/include" 1717*67e74705SXin Li // CHECK-EL-SF-32R2: "-internal-externc-isystem" 1718*67e74705SXin Li // CHECK-EL-SF-32R2: "[[TC]]/../../../../sysroot/usr/include" 1719*67e74705SXin Li // CHECK-EL-SF-32R2: "{{.*}}ld{{(.exe)?}}" 1720*67e74705SXin Li // CHECK-EL-SF-32R2: "--sysroot=[[TC]]/../../../../sysroot/el/sof" 1721*67e74705SXin Li // CHECK-EL-SF-32R2: "-dynamic-linker" "/lib/ld.so.1" 1722*67e74705SXin Li // CHECK-EL-SF-32R2: "[[TC]]/../../../../sysroot/el/sof/usr/lib/../lib{{/|\\\\}}crt1.o" 1723*67e74705SXin Li // CHECK-EL-SF-32R2: "[[TC]]/../../../../sysroot/el/sof/usr/lib/../lib{{/|\\\\}}crti.o" 1724*67e74705SXin Li // CHECK-EL-SF-32R2: "[[TC]]/el/sof{{/|\\\\}}crtbegin.o" 1725*67e74705SXin Li // CHECK-EL-SF-32R2: "-L[[TC]]/el/sof" 1726*67e74705SXin Li // CHECK-EL-SF-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/el/sof" 1727*67e74705SXin Li // CHECK-EL-SF-32R2: "-L[[TC]]/../../../../sysroot/el/sof/usr/lib/../lib" 1728*67e74705SXin Li // CHECK-EL-SF-32R2: "[[TC]]/el/sof{{/|\\\\}}crtend.o" 1729*67e74705SXin Li // CHECK-EL-SF-32R2: "[[TC]]/../../../../sysroot/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o" 1730*67e74705SXin Li // 1731*67e74705SXin Li // = Little-endian, mips32r2, soft float, uclibc 1732*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1733*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -msoft-float -muclibc \ 1734*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1735*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-UC-SF-32R2 %s 1736*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "-internal-isystem" 1737*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1738*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "-internal-isystem" 1739*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/uclibc/el/sof" 1740*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "-internal-isystem" 1741*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1742*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "-internal-externc-isystem" 1743*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "[[TC]]/include" 1744*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "-internal-externc-isystem" 1745*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "[[TC]]/../../../../sysroot/uclibc/usr/include" 1746*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "{{.*}}ld{{(.exe)?}}" 1747*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "--sysroot=[[TC]]/../../../../sysroot/uclibc/el/sof" 1748*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "-dynamic-linker" "/lib/ld-uClibc.so.0" 1749*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "[[TC]]/../../../../sysroot/uclibc/el/sof/usr/lib/../lib{{/|\\\\}}crt1.o" 1750*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "[[TC]]/../../../../sysroot/uclibc/el/sof/usr/lib/../lib{{/|\\\\}}crti.o" 1751*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "[[TC]]/uclibc/el/sof{{/|\\\\}}crtbegin.o" 1752*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "-L[[TC]]/uclibc/el/sof" 1753*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/uclibc/el/sof" 1754*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "-L[[TC]]/../../../../sysroot/uclibc/el/sof/usr/lib/../lib" 1755*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "[[TC]]/uclibc/el/sof{{/|\\\\}}crtend.o" 1756*67e74705SXin Li // CHECK-EL-UC-SF-32R2: "[[TC]]/../../../../sysroot/uclibc/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o" 1757*67e74705SXin Li // 1758*67e74705SXin Li // = Little-endian, mips32r2 / mips16, hard float 1759*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1760*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mips16 -mhard-float \ 1761*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1762*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF-16R2 %s 1763*67e74705SXin Li // CHECK-EL-HF-16R2: "-internal-isystem" 1764*67e74705SXin Li // CHECK-EL-HF-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1765*67e74705SXin Li // CHECK-EL-HF-16R2: "-internal-isystem" 1766*67e74705SXin Li // CHECK-EL-HF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/el" 1767*67e74705SXin Li // CHECK-EL-HF-16R2: "-internal-isystem" 1768*67e74705SXin Li // CHECK-EL-HF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1769*67e74705SXin Li // CHECK-EL-HF-16R2: "-internal-externc-isystem" 1770*67e74705SXin Li // CHECK-EL-HF-16R2: "[[TC]]/include" 1771*67e74705SXin Li // CHECK-EL-HF-16R2: "-internal-externc-isystem" 1772*67e74705SXin Li // CHECK-EL-HF-16R2: "[[TC]]/../../../../sysroot/usr/include" 1773*67e74705SXin Li // CHECK-EL-HF-16R2: "{{.*}}ld{{(.exe)?}}" 1774*67e74705SXin Li // CHECK-EL-HF-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/el" 1775*67e74705SXin Li // CHECK-EL-HF-16R2: "-dynamic-linker" "/lib/ld.so.1" 1776*67e74705SXin Li // CHECK-EL-HF-16R2: "[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib{{/|\\\\}}crt1.o" 1777*67e74705SXin Li // CHECK-EL-HF-16R2: "[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib{{/|\\\\}}crti.o" 1778*67e74705SXin Li // CHECK-EL-HF-16R2: "[[TC]]/mips16/el{{/|\\\\}}crtbegin.o" 1779*67e74705SXin Li // CHECK-EL-HF-16R2: "-L[[TC]]/mips16/el" 1780*67e74705SXin Li // CHECK-EL-HF-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/el" 1781*67e74705SXin Li // CHECK-EL-HF-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib" 1782*67e74705SXin Li // CHECK-EL-HF-16R2: "[[TC]]/mips16/el{{/|\\\\}}crtend.o" 1783*67e74705SXin Li // CHECK-EL-HF-16R2: "[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib{{/|\\\\}}crtn.o" 1784*67e74705SXin Li // 1785*67e74705SXin Li // = Little-endian, mips32r2 / mips16, fp64, hard float 1786*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1787*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mips16 -mfp64 -mhard-float \ 1788*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1789*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF64-16R2 %s 1790*67e74705SXin Li // CHECK-EL-HF64-16R2: "-internal-isystem" 1791*67e74705SXin Li // CHECK-EL-HF64-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1792*67e74705SXin Li // CHECK-EL-HF64-16R2: "-internal-isystem" 1793*67e74705SXin Li // CHECK-EL-HF64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/el" 1794*67e74705SXin Li // CHECK-EL-HF64-16R2: "-internal-isystem" 1795*67e74705SXin Li // CHECK-EL-HF64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1796*67e74705SXin Li // CHECK-EL-HF64-16R2: "-internal-externc-isystem" 1797*67e74705SXin Li // CHECK-EL-HF64-16R2: "[[TC]]/include" 1798*67e74705SXin Li // CHECK-EL-HF64-16R2: "-internal-externc-isystem" 1799*67e74705SXin Li // CHECK-EL-HF64-16R2: "[[TC]]/../../../../sysroot/usr/include" 1800*67e74705SXin Li // CHECK-EL-HF64-16R2: "{{.*}}ld{{(.exe)?}}" 1801*67e74705SXin Li // CHECK-EL-HF64-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/el" 1802*67e74705SXin Li // CHECK-EL-HF64-16R2: "-dynamic-linker" "/lib/ld.so.1" 1803*67e74705SXin Li // CHECK-EL-HF64-16R2: "[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib{{/|\\\\}}crt1.o" 1804*67e74705SXin Li // CHECK-EL-HF64-16R2: "[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib{{/|\\\\}}crti.o" 1805*67e74705SXin Li // CHECK-EL-HF64-16R2: "[[TC]]/mips16/el{{/|\\\\}}crtbegin.o" 1806*67e74705SXin Li // CHECK-EL-HF64-16R2: "-L[[TC]]/mips16/el" 1807*67e74705SXin Li // CHECK-EL-HF64-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/el" 1808*67e74705SXin Li // CHECK-EL-HF64-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib" 1809*67e74705SXin Li // CHECK-EL-HF64-16R2: "[[TC]]/mips16/el{{/|\\\\}}crtend.o" 1810*67e74705SXin Li // CHECK-EL-HF64-16R2: "[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib{{/|\\\\}}crtn.o" 1811*67e74705SXin Li // 1812*67e74705SXin Li // = Little-endian, mips32r2 / mips16, soft float 1813*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1814*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mips16 -msoft-float \ 1815*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1816*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-SF-16R2 %s 1817*67e74705SXin Li // CHECK-EL-SF-16R2: "-internal-isystem" 1818*67e74705SXin Li // CHECK-EL-SF-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1819*67e74705SXin Li // CHECK-EL-SF-16R2: "-internal-isystem" 1820*67e74705SXin Li // CHECK-EL-SF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/el/sof" 1821*67e74705SXin Li // CHECK-EL-SF-16R2: "-internal-isystem" 1822*67e74705SXin Li // CHECK-EL-SF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1823*67e74705SXin Li // CHECK-EL-SF-16R2: "-internal-externc-isystem" 1824*67e74705SXin Li // CHECK-EL-SF-16R2: "[[TC]]/include" 1825*67e74705SXin Li // CHECK-EL-SF-16R2: "-internal-externc-isystem" 1826*67e74705SXin Li // CHECK-EL-SF-16R2: "[[TC]]/../../../../sysroot/usr/include" 1827*67e74705SXin Li // CHECK-EL-SF-16R2: "{{.*}}ld{{(.exe)?}}" 1828*67e74705SXin Li // CHECK-EL-SF-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/el/sof" 1829*67e74705SXin Li // CHECK-EL-SF-16R2: "-dynamic-linker" "/lib/ld.so.1" 1830*67e74705SXin Li // CHECK-EL-SF-16R2: "[[TC]]/../../../../sysroot/mips16/el/sof/usr/lib/../lib{{/|\\\\}}crt1.o" 1831*67e74705SXin Li // CHECK-EL-SF-16R2: "[[TC]]/../../../../sysroot/mips16/el/sof/usr/lib/../lib{{/|\\\\}}crti.o" 1832*67e74705SXin Li // CHECK-EL-SF-16R2: "[[TC]]/mips16/el/sof{{/|\\\\}}crtbegin.o" 1833*67e74705SXin Li // CHECK-EL-SF-16R2: "-L[[TC]]/mips16/el/sof" 1834*67e74705SXin Li // CHECK-EL-SF-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/el/sof" 1835*67e74705SXin Li // CHECK-EL-SF-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/sof/usr/lib/../lib" 1836*67e74705SXin Li // CHECK-EL-SF-16R2: "[[TC]]/mips16/el/sof{{/|\\\\}}crtend.o" 1837*67e74705SXin Li // CHECK-EL-SF-16R2: "[[TC]]/../../../../sysroot/mips16/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o" 1838*67e74705SXin Li // 1839*67e74705SXin Li // = Little-endian, mips32r2 / mips16, nan2008 1840*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1841*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mips16 -mnan=2008 \ 1842*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1843*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN-16R2 %s 1844*67e74705SXin Li // CHECK-EL-NAN-16R2: "-internal-isystem" 1845*67e74705SXin Li // CHECK-EL-NAN-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1846*67e74705SXin Li // CHECK-EL-NAN-16R2: "-internal-isystem" 1847*67e74705SXin Li // CHECK-EL-NAN-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/el/nan2008" 1848*67e74705SXin Li // CHECK-EL-NAN-16R2: "-internal-isystem" 1849*67e74705SXin Li // CHECK-EL-NAN-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1850*67e74705SXin Li // CHECK-EL-NAN-16R2: "-internal-externc-isystem" 1851*67e74705SXin Li // CHECK-EL-NAN-16R2: "[[TC]]/include" 1852*67e74705SXin Li // CHECK-EL-NAN-16R2: "-internal-externc-isystem" 1853*67e74705SXin Li // CHECK-EL-NAN-16R2: "[[TC]]/../../../../sysroot/usr/include" 1854*67e74705SXin Li // CHECK-EL-NAN-16R2: "{{.*}}ld{{(.exe)?}}" 1855*67e74705SXin Li // CHECK-EL-NAN-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/el/nan2008" 1856*67e74705SXin Li // CHECK-EL-NAN-16R2: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 1857*67e74705SXin Li // CHECK-EL-NAN-16R2: "[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 1858*67e74705SXin Li // CHECK-EL-NAN-16R2: "[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 1859*67e74705SXin Li // CHECK-EL-NAN-16R2: "[[TC]]/mips16/el/nan2008{{/|\\\\}}crtbegin.o" 1860*67e74705SXin Li // CHECK-EL-NAN-16R2: "-L[[TC]]/mips16/el/nan2008" 1861*67e74705SXin Li // CHECK-EL-NAN-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/el/nan2008" 1862*67e74705SXin Li // CHECK-EL-NAN-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib" 1863*67e74705SXin Li // CHECK-EL-NAN-16R2: "[[TC]]/mips16/el/nan2008{{/|\\\\}}crtend.o" 1864*67e74705SXin Li // CHECK-EL-NAN-16R2: "[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 1865*67e74705SXin Li // 1866*67e74705SXin Li // = Little-endian, mips32r2 / mips16, fp64, nan2008 1867*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1868*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mips16 -mfp64 -mnan=2008 \ 1869*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1870*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN64-16R2 %s 1871*67e74705SXin Li // CHECK-EL-NAN64-16R2: "-internal-isystem" 1872*67e74705SXin Li // CHECK-EL-NAN64-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1873*67e74705SXin Li // CHECK-EL-NAN64-16R2: "-internal-isystem" 1874*67e74705SXin Li // CHECK-EL-NAN64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/el/nan2008" 1875*67e74705SXin Li // CHECK-EL-NAN64-16R2: "-internal-isystem" 1876*67e74705SXin Li // CHECK-EL-NAN64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1877*67e74705SXin Li // CHECK-EL-NAN64-16R2: "-internal-externc-isystem" 1878*67e74705SXin Li // CHECK-EL-NAN64-16R2: "[[TC]]/include" 1879*67e74705SXin Li // CHECK-EL-NAN64-16R2: "-internal-externc-isystem" 1880*67e74705SXin Li // CHECK-EL-NAN64-16R2: "[[TC]]/../../../../sysroot/usr/include" 1881*67e74705SXin Li // CHECK-EL-NAN64-16R2: "{{.*}}ld{{(.exe)?}}" 1882*67e74705SXin Li // CHECK-EL-NAN64-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/el/nan2008" 1883*67e74705SXin Li // CHECK-EL-NAN64-16R2: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 1884*67e74705SXin Li // CHECK-EL-NAN64-16R2: "[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 1885*67e74705SXin Li // CHECK-EL-NAN64-16R2: "[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 1886*67e74705SXin Li // CHECK-EL-NAN64-16R2: "[[TC]]/mips16/el/nan2008{{/|\\\\}}crtbegin.o" 1887*67e74705SXin Li // CHECK-EL-NAN64-16R2: "-L[[TC]]/mips16/el/nan2008" 1888*67e74705SXin Li // CHECK-EL-NAN64-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/el/nan2008" 1889*67e74705SXin Li // CHECK-EL-NAN64-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib" 1890*67e74705SXin Li // CHECK-EL-NAN64-16R2: "[[TC]]/mips16/el/nan2008{{/|\\\\}}crtend.o" 1891*67e74705SXin Li // CHECK-EL-NAN64-16R2: "[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 1892*67e74705SXin Li // 1893*67e74705SXin Li // = Little-endian, mips32r2, nan2008 1894*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1895*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mnan=2008 \ 1896*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1897*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN-32R2 %s 1898*67e74705SXin Li // CHECK-EL-NAN-32R2: "-internal-isystem" 1899*67e74705SXin Li // CHECK-EL-NAN-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1900*67e74705SXin Li // CHECK-EL-NAN-32R2: "-internal-isystem" 1901*67e74705SXin Li // CHECK-EL-NAN-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/el/nan2008" 1902*67e74705SXin Li // CHECK-EL-NAN-32R2: "-internal-isystem" 1903*67e74705SXin Li // CHECK-EL-NAN-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1904*67e74705SXin Li // CHECK-EL-NAN-32R2: "-internal-externc-isystem" 1905*67e74705SXin Li // CHECK-EL-NAN-32R2: "[[TC]]/include" 1906*67e74705SXin Li // CHECK-EL-NAN-32R2: "-internal-externc-isystem" 1907*67e74705SXin Li // CHECK-EL-NAN-32R2: "[[TC]]/../../../../sysroot/usr/include" 1908*67e74705SXin Li // CHECK-EL-NAN-32R2: "{{.*}}ld{{(.exe)?}}" 1909*67e74705SXin Li // CHECK-EL-NAN-32R2: "--sysroot=[[TC]]/../../../../sysroot/el/nan2008" 1910*67e74705SXin Li // CHECK-EL-NAN-32R2: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 1911*67e74705SXin Li // CHECK-EL-NAN-32R2: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 1912*67e74705SXin Li // CHECK-EL-NAN-32R2: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 1913*67e74705SXin Li // CHECK-EL-NAN-32R2: "[[TC]]/el/nan2008{{/|\\\\}}crtbegin.o" 1914*67e74705SXin Li // CHECK-EL-NAN-32R2: "-L[[TC]]/el/nan2008" 1915*67e74705SXin Li // CHECK-EL-NAN-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/el/nan2008" 1916*67e74705SXin Li // CHECK-EL-NAN-32R2: "-L[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib" 1917*67e74705SXin Li // CHECK-EL-NAN-32R2: "[[TC]]/el/nan2008{{/|\\\\}}crtend.o" 1918*67e74705SXin Li // CHECK-EL-NAN-32R2: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 1919*67e74705SXin Li // 1920*67e74705SXin Li // = Little-endian, mips32r2, nan2008, uclibc 1921*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1922*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mnan=2008 -muclibc \ 1923*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1924*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-UC-NAN-32R2 %s 1925*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "-internal-isystem" 1926*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1927*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "-internal-isystem" 1928*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/uclibc/el/nan2008" 1929*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "-internal-isystem" 1930*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1931*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "-internal-externc-isystem" 1932*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "[[TC]]/include" 1933*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "-internal-externc-isystem" 1934*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "[[TC]]/../../../../sysroot/uclibc/usr/include" 1935*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "{{.*}}ld{{(.exe)?}}" 1936*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "--sysroot=[[TC]]/../../../../sysroot/uclibc/el/nan2008" 1937*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "-dynamic-linker" "/lib/ld-uClibc-mipsn8.so.0" 1938*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "[[TC]]/../../../../sysroot/uclibc/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 1939*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "[[TC]]/../../../../sysroot/uclibc/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 1940*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "[[TC]]/uclibc/el/nan2008{{/|\\\\}}crtbegin.o" 1941*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "-L[[TC]]/uclibc/el/nan2008" 1942*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/uclibc/el/nan2008" 1943*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "-L[[TC]]/../../../../sysroot/uclibc/el/nan2008/usr/lib/../lib" 1944*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "[[TC]]/uclibc/el/nan2008{{/|\\\\}}crtend.o" 1945*67e74705SXin Li // CHECK-EL-UC-NAN-32R2: "[[TC]]/../../../../sysroot/uclibc/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 1946*67e74705SXin Li // 1947*67e74705SXin Li // = Little-endian, mips32r2, fp64, nan2008 1948*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1949*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mfp64 -mnan=2008 \ 1950*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1951*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN64-32R2 %s 1952*67e74705SXin Li // CHECK-EL-NAN64-32R2: "-internal-isystem" 1953*67e74705SXin Li // CHECK-EL-NAN64-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1954*67e74705SXin Li // CHECK-EL-NAN64-32R2: "-internal-isystem" 1955*67e74705SXin Li // CHECK-EL-NAN64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/el/nan2008" 1956*67e74705SXin Li // CHECK-EL-NAN64-32R2: "-internal-isystem" 1957*67e74705SXin Li // CHECK-EL-NAN64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1958*67e74705SXin Li // CHECK-EL-NAN64-32R2: "-internal-externc-isystem" 1959*67e74705SXin Li // CHECK-EL-NAN64-32R2: "[[TC]]/include" 1960*67e74705SXin Li // CHECK-EL-NAN64-32R2: "-internal-externc-isystem" 1961*67e74705SXin Li // CHECK-EL-NAN64-32R2: "[[TC]]/../../../../sysroot/usr/include" 1962*67e74705SXin Li // CHECK-EL-NAN64-32R2: "{{.*}}ld{{(.exe)?}}" 1963*67e74705SXin Li // CHECK-EL-NAN64-32R2: "--sysroot=[[TC]]/../../../../sysroot/el/nan2008" 1964*67e74705SXin Li // CHECK-EL-NAN64-32R2: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 1965*67e74705SXin Li // CHECK-EL-NAN64-32R2: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 1966*67e74705SXin Li // CHECK-EL-NAN64-32R2: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 1967*67e74705SXin Li // CHECK-EL-NAN64-32R2: "[[TC]]/el/nan2008{{/|\\\\}}crtbegin.o" 1968*67e74705SXin Li // CHECK-EL-NAN64-32R2: "-L[[TC]]/el/nan2008" 1969*67e74705SXin Li // CHECK-EL-NAN64-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/el/nan2008" 1970*67e74705SXin Li // CHECK-EL-NAN64-32R2: "-L[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib" 1971*67e74705SXin Li // CHECK-EL-NAN64-32R2: "[[TC]]/el/nan2008{{/|\\\\}}crtend.o" 1972*67e74705SXin Li // CHECK-EL-NAN64-32R2: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 1973*67e74705SXin Li // 1974*67e74705SXin Li // = Little-endian, default (mips32r2), fp64, nan2008 1975*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 1976*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mfp64 -mnan=2008 \ 1977*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 1978*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN64-32R2-DEF %s 1979*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "-internal-isystem" 1980*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 1981*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "-internal-isystem" 1982*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/el/nan2008" 1983*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "-internal-isystem" 1984*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 1985*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "-internal-externc-isystem" 1986*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "[[TC]]/include" 1987*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "-internal-externc-isystem" 1988*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "[[TC]]/../../../../sysroot/usr/include" 1989*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "{{.*}}ld{{(.exe)?}}" 1990*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "--sysroot=[[TC]]/../../../../sysroot/el/nan2008" 1991*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 1992*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 1993*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 1994*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "[[TC]]/el/nan2008{{/|\\\\}}crtbegin.o" 1995*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "-L[[TC]]/el/nan2008" 1996*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/el/nan2008" 1997*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "-L[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib" 1998*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "[[TC]]/el/nan2008{{/|\\\\}}crtend.o" 1999*67e74705SXin Li // CHECK-EL-NAN64-32R2-DEF: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 2000*67e74705SXin Li // 2001*67e74705SXin Li // = Little-endian, micromips, hard float 2002*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2003*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mmicromips -mhard-float \ 2004*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2005*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF-MM %s 2006*67e74705SXin Li // CHECK-EL-HF-MM: "-internal-isystem" 2007*67e74705SXin Li // CHECK-EL-HF-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2008*67e74705SXin Li // CHECK-EL-HF-MM: "-internal-isystem" 2009*67e74705SXin Li // CHECK-EL-HF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/el" 2010*67e74705SXin Li // CHECK-EL-HF-MM: "-internal-isystem" 2011*67e74705SXin Li // CHECK-EL-HF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2012*67e74705SXin Li // CHECK-EL-HF-MM: "-internal-externc-isystem" 2013*67e74705SXin Li // CHECK-EL-HF-MM: "[[TC]]/include" 2014*67e74705SXin Li // CHECK-EL-HF-MM: "-internal-externc-isystem" 2015*67e74705SXin Li // CHECK-EL-HF-MM: "[[TC]]/../../../../sysroot/usr/include" 2016*67e74705SXin Li // CHECK-EL-HF-MM: "{{.*}}ld{{(.exe)?}}" 2017*67e74705SXin Li // CHECK-EL-HF-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/el" 2018*67e74705SXin Li // CHECK-EL-HF-MM: "-dynamic-linker" "/lib/ld.so.1" 2019*67e74705SXin Li // CHECK-EL-HF-MM: "[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib{{/|\\\\}}crt1.o" 2020*67e74705SXin Li // CHECK-EL-HF-MM: "[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib{{/|\\\\}}crti.o" 2021*67e74705SXin Li // CHECK-EL-HF-MM: "[[TC]]/micromips/el{{/|\\\\}}crtbegin.o" 2022*67e74705SXin Li // CHECK-EL-HF-MM: "-L[[TC]]/micromips/el" 2023*67e74705SXin Li // CHECK-EL-HF-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/el" 2024*67e74705SXin Li // CHECK-EL-HF-MM: "-L[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib" 2025*67e74705SXin Li // CHECK-EL-HF-MM: "[[TC]]/micromips/el{{/|\\\\}}crtend.o" 2026*67e74705SXin Li // CHECK-EL-HF-MM: "[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib{{/|\\\\}}crtn.o" 2027*67e74705SXin Li // 2028*67e74705SXin Li // = Little-endian, micromips, fp64, hard float 2029*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2030*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mmicromips -mfp64 -mhard-float \ 2031*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2032*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF64-MM %s 2033*67e74705SXin Li // CHECK-EL-HF64-MM: "-internal-isystem" 2034*67e74705SXin Li // CHECK-EL-HF64-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2035*67e74705SXin Li // CHECK-EL-HF64-MM: "-internal-isystem" 2036*67e74705SXin Li // CHECK-EL-HF64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/el" 2037*67e74705SXin Li // CHECK-EL-HF64-MM: "-internal-isystem" 2038*67e74705SXin Li // CHECK-EL-HF64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2039*67e74705SXin Li // CHECK-EL-HF64-MM: "-internal-externc-isystem" 2040*67e74705SXin Li // CHECK-EL-HF64-MM: "[[TC]]/include" 2041*67e74705SXin Li // CHECK-EL-HF64-MM: "-internal-externc-isystem" 2042*67e74705SXin Li // CHECK-EL-HF64-MM: "[[TC]]/../../../../sysroot/usr/include" 2043*67e74705SXin Li // CHECK-EL-HF64-MM: "{{.*}}ld{{(.exe)?}}" 2044*67e74705SXin Li // CHECK-EL-HF64-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/el" 2045*67e74705SXin Li // CHECK-EL-HF64-MM: "-dynamic-linker" "/lib/ld.so.1" 2046*67e74705SXin Li // CHECK-EL-HF64-MM: "[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib{{/|\\\\}}crt1.o" 2047*67e74705SXin Li // CHECK-EL-HF64-MM: "[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib{{/|\\\\}}crti.o" 2048*67e74705SXin Li // CHECK-EL-HF64-MM: "[[TC]]/micromips/el{{/|\\\\}}crtbegin.o" 2049*67e74705SXin Li // CHECK-EL-HF64-MM: "-L[[TC]]/micromips/el" 2050*67e74705SXin Li // CHECK-EL-HF64-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/el" 2051*67e74705SXin Li // CHECK-EL-HF64-MM: "-L[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib" 2052*67e74705SXin Li // CHECK-EL-HF64-MM: "[[TC]]/micromips/el{{/|\\\\}}crtend.o" 2053*67e74705SXin Li // CHECK-EL-HF64-MM: "[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib{{/|\\\\}}crtn.o" 2054*67e74705SXin Li // 2055*67e74705SXin Li // = Little-endian, micromips, soft float 2056*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2057*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mmicromips -msoft-float \ 2058*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2059*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-SF-MM %s 2060*67e74705SXin Li // CHECK-EL-SF-MM: "-internal-isystem" 2061*67e74705SXin Li // CHECK-EL-SF-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2062*67e74705SXin Li // CHECK-EL-SF-MM: "-internal-isystem" 2063*67e74705SXin Li // CHECK-EL-SF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/el/sof" 2064*67e74705SXin Li // CHECK-EL-SF-MM: "-internal-isystem" 2065*67e74705SXin Li // CHECK-EL-SF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2066*67e74705SXin Li // CHECK-EL-SF-MM: "-internal-externc-isystem" 2067*67e74705SXin Li // CHECK-EL-SF-MM: "[[TC]]/include" 2068*67e74705SXin Li // CHECK-EL-SF-MM: "-internal-externc-isystem" 2069*67e74705SXin Li // CHECK-EL-SF-MM: "[[TC]]/../../../../sysroot/usr/include" 2070*67e74705SXin Li // CHECK-EL-SF-MM: "{{.*}}ld{{(.exe)?}}" 2071*67e74705SXin Li // CHECK-EL-SF-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/el/sof" 2072*67e74705SXin Li // CHECK-EL-SF-MM: "-dynamic-linker" "/lib/ld.so.1" 2073*67e74705SXin Li // CHECK-EL-SF-MM: "[[TC]]/../../../../sysroot/micromips/el/sof/usr/lib/../lib{{/|\\\\}}crt1.o" 2074*67e74705SXin Li // CHECK-EL-SF-MM: "[[TC]]/../../../../sysroot/micromips/el/sof/usr/lib/../lib{{/|\\\\}}crti.o" 2075*67e74705SXin Li // CHECK-EL-SF-MM: "[[TC]]/micromips/el/sof{{/|\\\\}}crtbegin.o" 2076*67e74705SXin Li // CHECK-EL-SF-MM: "-L[[TC]]/micromips/el/sof" 2077*67e74705SXin Li // CHECK-EL-SF-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/el/sof" 2078*67e74705SXin Li // CHECK-EL-SF-MM: "-L[[TC]]/../../../../sysroot/micromips/el/sof/usr/lib/../lib" 2079*67e74705SXin Li // CHECK-EL-SF-MM: "[[TC]]/micromips/el/sof{{/|\\\\}}crtend.o" 2080*67e74705SXin Li // CHECK-EL-SF-MM: "[[TC]]/../../../../sysroot/micromips/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o" 2081*67e74705SXin Li // 2082*67e74705SXin Li // = Little-endian, micromips, nan2008 2083*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2084*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mmicromips -mnan=2008 \ 2085*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2086*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN-MM %s 2087*67e74705SXin Li // CHECK-EL-NAN-MM: "-internal-isystem" 2088*67e74705SXin Li // CHECK-EL-NAN-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2089*67e74705SXin Li // CHECK-EL-NAN-MM: "-internal-isystem" 2090*67e74705SXin Li // CHECK-EL-NAN-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/el/nan2008" 2091*67e74705SXin Li // CHECK-EL-NAN-MM: "-internal-isystem" 2092*67e74705SXin Li // CHECK-EL-NAN-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2093*67e74705SXin Li // CHECK-EL-NAN-MM: "-internal-externc-isystem" 2094*67e74705SXin Li // CHECK-EL-NAN-MM: "[[TC]]/include" 2095*67e74705SXin Li // CHECK-EL-NAN-MM: "-internal-externc-isystem" 2096*67e74705SXin Li // CHECK-EL-NAN-MM: "[[TC]]/../../../../sysroot/usr/include" 2097*67e74705SXin Li // CHECK-EL-NAN-MM: "{{.*}}ld{{(.exe)?}}" 2098*67e74705SXin Li // CHECK-EL-NAN-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/el/nan2008" 2099*67e74705SXin Li // CHECK-EL-NAN-MM: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 2100*67e74705SXin Li // CHECK-EL-NAN-MM: "[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 2101*67e74705SXin Li // CHECK-EL-NAN-MM: "[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 2102*67e74705SXin Li // CHECK-EL-NAN-MM: "[[TC]]/micromips/el/nan2008{{/|\\\\}}crtbegin.o" 2103*67e74705SXin Li // CHECK-EL-NAN-MM: "-L[[TC]]/micromips/el/nan2008" 2104*67e74705SXin Li // CHECK-EL-NAN-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/el/nan2008" 2105*67e74705SXin Li // CHECK-EL-NAN-MM: "-L[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib" 2106*67e74705SXin Li // CHECK-EL-NAN-MM: "[[TC]]/micromips/el/nan2008{{/|\\\\}}crtend.o" 2107*67e74705SXin Li // CHECK-EL-NAN-MM: "[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 2108*67e74705SXin Li // 2109*67e74705SXin Li // = Little-endian, micromips, fp64, nan2008 2110*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2111*67e74705SXin Li // RUN: --target=mipsel-mti-linux-gnu -mmicromips -mfp64 -mnan=2008 \ 2112*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2113*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN64-MM %s 2114*67e74705SXin Li // CHECK-EL-NAN64-MM: "-internal-isystem" 2115*67e74705SXin Li // CHECK-EL-NAN64-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2116*67e74705SXin Li // CHECK-EL-NAN64-MM: "-internal-isystem" 2117*67e74705SXin Li // CHECK-EL-NAN64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/el/nan2008" 2118*67e74705SXin Li // CHECK-EL-NAN64-MM: "-internal-isystem" 2119*67e74705SXin Li // CHECK-EL-NAN64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2120*67e74705SXin Li // CHECK-EL-NAN64-MM: "-internal-externc-isystem" 2121*67e74705SXin Li // CHECK-EL-NAN64-MM: "[[TC]]/include" 2122*67e74705SXin Li // CHECK-EL-NAN64-MM: "-internal-externc-isystem" 2123*67e74705SXin Li // CHECK-EL-NAN64-MM: "[[TC]]/../../../../sysroot/usr/include" 2124*67e74705SXin Li // CHECK-EL-NAN64-MM: "{{.*}}ld{{(.exe)?}}" 2125*67e74705SXin Li // CHECK-EL-NAN64-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/el/nan2008" 2126*67e74705SXin Li // CHECK-EL-NAN64-MM: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1" 2127*67e74705SXin Li // CHECK-EL-NAN64-MM: "[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o" 2128*67e74705SXin Li // CHECK-EL-NAN64-MM: "[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o" 2129*67e74705SXin Li // CHECK-EL-NAN64-MM: "[[TC]]/micromips/el/nan2008{{/|\\\\}}crtbegin.o" 2130*67e74705SXin Li // CHECK-EL-NAN64-MM: "-L[[TC]]/micromips/el/nan2008" 2131*67e74705SXin Li // CHECK-EL-NAN64-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/el/nan2008" 2132*67e74705SXin Li // CHECK-EL-NAN64-MM: "-L[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib" 2133*67e74705SXin Li // CHECK-EL-NAN64-MM: "[[TC]]/micromips/el/nan2008{{/|\\\\}}crtend.o" 2134*67e74705SXin Li // CHECK-EL-NAN64-MM: "[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" 2135*67e74705SXin Li // 2136*67e74705SXin Li // = Little-endian, mips64, ABI n32, hard float 2137*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2138*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=n32 -mhard-float \ 2139*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2140*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF-64-N32 %s 2141*67e74705SXin Li // CHECK-EL-HF-64-N32: "-internal-isystem" 2142*67e74705SXin Li // CHECK-EL-HF-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2143*67e74705SXin Li // CHECK-EL-HF-64-N32: "-internal-isystem" 2144*67e74705SXin Li // CHECK-EL-HF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/el" 2145*67e74705SXin Li // CHECK-EL-HF-64-N32: "-internal-isystem" 2146*67e74705SXin Li // CHECK-EL-HF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2147*67e74705SXin Li // CHECK-EL-HF-64-N32: "-internal-externc-isystem" 2148*67e74705SXin Li // CHECK-EL-HF-64-N32: "[[TC]]/include" 2149*67e74705SXin Li // CHECK-EL-HF-64-N32: "-internal-externc-isystem" 2150*67e74705SXin Li // CHECK-EL-HF-64-N32: "[[TC]]/../../../../sysroot/usr/include" 2151*67e74705SXin Li // CHECK-EL-HF-64-N32: "{{.*}}ld{{(.exe)?}}" 2152*67e74705SXin Li // CHECK-EL-HF-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/el" 2153*67e74705SXin Li // CHECK-EL-HF-64-N32: "-dynamic-linker" "/lib32/ld.so.1" 2154*67e74705SXin Li // CHECK-EL-HF-64-N32: "[[TC]]/../../../../sysroot/mips64/el/usr/lib{{/|\\\\}}crt1.o" 2155*67e74705SXin Li // CHECK-EL-HF-64-N32: "[[TC]]/../../../../sysroot/mips64/el/usr/lib{{/|\\\\}}crti.o" 2156*67e74705SXin Li // CHECK-EL-HF-64-N32: "[[TC]]/mips64/el{{/|\\\\}}crtbegin.o" 2157*67e74705SXin Li // CHECK-EL-HF-64-N32: "-L[[TC]]/mips64/el" 2158*67e74705SXin Li // CHECK-EL-HF-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/el" 2159*67e74705SXin Li // CHECK-EL-HF-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/usr/lib" 2160*67e74705SXin Li // CHECK-EL-HF-64-N32: "[[TC]]/mips64/el{{/|\\\\}}crtend.o" 2161*67e74705SXin Li // CHECK-EL-HF-64-N32: "[[TC]]/../../../../sysroot/mips64/el/usr/lib{{/|\\\\}}crtn.o" 2162*67e74705SXin Li // 2163*67e74705SXin Li // = Little-endian, mips64, ABI n32, fp64, hard float 2164*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2165*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=n32 -mfp64 -mhard-float \ 2166*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2167*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF64-64-N32 %s 2168*67e74705SXin Li // CHECK-EL-HF64-64-N32: "-internal-isystem" 2169*67e74705SXin Li // CHECK-EL-HF64-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2170*67e74705SXin Li // CHECK-EL-HF64-64-N32: "-internal-isystem" 2171*67e74705SXin Li // CHECK-EL-HF64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/el" 2172*67e74705SXin Li // CHECK-EL-HF64-64-N32: "-internal-isystem" 2173*67e74705SXin Li // CHECK-EL-HF64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2174*67e74705SXin Li // CHECK-EL-HF64-64-N32: "-internal-externc-isystem" 2175*67e74705SXin Li // CHECK-EL-HF64-64-N32: "[[TC]]/include" 2176*67e74705SXin Li // CHECK-EL-HF64-64-N32: "-internal-externc-isystem" 2177*67e74705SXin Li // CHECK-EL-HF64-64-N32: "[[TC]]/../../../../sysroot/usr/include" 2178*67e74705SXin Li // CHECK-EL-HF64-64-N32: "{{.*}}ld{{(.exe)?}}" 2179*67e74705SXin Li // CHECK-EL-HF64-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/el" 2180*67e74705SXin Li // CHECK-EL-HF64-64-N32: "-dynamic-linker" "/lib32/ld.so.1" 2181*67e74705SXin Li // CHECK-EL-HF64-64-N32: "[[TC]]/../../../../sysroot/mips64/el/usr/lib{{/|\\\\}}crt1.o" 2182*67e74705SXin Li // CHECK-EL-HF64-64-N32: "[[TC]]/../../../../sysroot/mips64/el/usr/lib{{/|\\\\}}crti.o" 2183*67e74705SXin Li // CHECK-EL-HF64-64-N32: "[[TC]]/mips64/el{{/|\\\\}}crtbegin.o" 2184*67e74705SXin Li // CHECK-EL-HF64-64-N32: "-L[[TC]]/mips64/el" 2185*67e74705SXin Li // CHECK-EL-HF64-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/el" 2186*67e74705SXin Li // CHECK-EL-HF64-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/usr/lib" 2187*67e74705SXin Li // CHECK-EL-HF64-64-N32: "[[TC]]/mips64/el{{/|\\\\}}crtend.o" 2188*67e74705SXin Li // CHECK-EL-HF64-64-N32: "[[TC]]/../../../../sysroot/mips64/el/usr/lib{{/|\\\\}}crtn.o" 2189*67e74705SXin Li // 2190*67e74705SXin Li // = Little-endian, mips64, ABI n32, soft float 2191*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2192*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=n32 -msoft-float \ 2193*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2194*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-SF-64-N32 %s 2195*67e74705SXin Li // CHECK-EL-SF-64-N32: "-internal-isystem" 2196*67e74705SXin Li // CHECK-EL-SF-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2197*67e74705SXin Li // CHECK-EL-SF-64-N32: "-internal-isystem" 2198*67e74705SXin Li // CHECK-EL-SF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/el/sof" 2199*67e74705SXin Li // CHECK-EL-SF-64-N32: "-internal-isystem" 2200*67e74705SXin Li // CHECK-EL-SF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2201*67e74705SXin Li // CHECK-EL-SF-64-N32: "-internal-externc-isystem" 2202*67e74705SXin Li // CHECK-EL-SF-64-N32: "[[TC]]/include" 2203*67e74705SXin Li // CHECK-EL-SF-64-N32: "-internal-externc-isystem" 2204*67e74705SXin Li // CHECK-EL-SF-64-N32: "[[TC]]/../../../../sysroot/usr/include" 2205*67e74705SXin Li // CHECK-EL-SF-64-N32: "{{.*}}ld{{(.exe)?}}" 2206*67e74705SXin Li // CHECK-EL-SF-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/el/sof" 2207*67e74705SXin Li // CHECK-EL-SF-64-N32: "-dynamic-linker" "/lib32/ld.so.1" 2208*67e74705SXin Li // CHECK-EL-SF-64-N32: "[[TC]]/../../../../sysroot/mips64/el/sof/usr/lib{{/|\\\\}}crt1.o" 2209*67e74705SXin Li // CHECK-EL-SF-64-N32: "[[TC]]/../../../../sysroot/mips64/el/sof/usr/lib{{/|\\\\}}crti.o" 2210*67e74705SXin Li // CHECK-EL-SF-64-N32: "[[TC]]/mips64/el/sof{{/|\\\\}}crtbegin.o" 2211*67e74705SXin Li // CHECK-EL-SF-64-N32: "-L[[TC]]/mips64/el/sof" 2212*67e74705SXin Li // CHECK-EL-SF-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/el/sof" 2213*67e74705SXin Li // CHECK-EL-SF-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/sof/usr/lib" 2214*67e74705SXin Li // CHECK-EL-SF-64-N32: "[[TC]]/mips64/el/sof{{/|\\\\}}crtend.o" 2215*67e74705SXin Li // CHECK-EL-SF-64-N32: "[[TC]]/../../../../sysroot/mips64/el/sof/usr/lib{{/|\\\\}}crtn.o" 2216*67e74705SXin Li // 2217*67e74705SXin Li // = Little-endian, mips64, ABI n32, nan2008 2218*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2219*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=n32 -mnan=2008 \ 2220*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2221*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN-64-N32 %s 2222*67e74705SXin Li // CHECK-EL-NAN-64-N32: "-internal-isystem" 2223*67e74705SXin Li // CHECK-EL-NAN-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2224*67e74705SXin Li // CHECK-EL-NAN-64-N32: "-internal-isystem" 2225*67e74705SXin Li // CHECK-EL-NAN-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/el/nan2008" 2226*67e74705SXin Li // CHECK-EL-NAN-64-N32: "-internal-isystem" 2227*67e74705SXin Li // CHECK-EL-NAN-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2228*67e74705SXin Li // CHECK-EL-NAN-64-N32: "-internal-externc-isystem" 2229*67e74705SXin Li // CHECK-EL-NAN-64-N32: "[[TC]]/include" 2230*67e74705SXin Li // CHECK-EL-NAN-64-N32: "-internal-externc-isystem" 2231*67e74705SXin Li // CHECK-EL-NAN-64-N32: "[[TC]]/../../../../sysroot/usr/include" 2232*67e74705SXin Li // CHECK-EL-NAN-64-N32: "{{.*}}ld{{(.exe)?}}" 2233*67e74705SXin Li // CHECK-EL-NAN-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/el/nan2008" 2234*67e74705SXin Li // CHECK-EL-NAN-64-N32: "-dynamic-linker" "/lib32/ld-linux-mipsn8.so.1" 2235*67e74705SXin Li // CHECK-EL-NAN-64-N32: "[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib{{/|\\\\}}crt1.o" 2236*67e74705SXin Li // CHECK-EL-NAN-64-N32: "[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib{{/|\\\\}}crti.o" 2237*67e74705SXin Li // CHECK-EL-NAN-64-N32: "[[TC]]/mips64/el/nan2008{{/|\\\\}}crtbegin.o" 2238*67e74705SXin Li // CHECK-EL-NAN-64-N32: "-L[[TC]]/mips64/el/nan2008" 2239*67e74705SXin Li // CHECK-EL-NAN-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/el/nan2008" 2240*67e74705SXin Li // CHECK-EL-NAN-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib" 2241*67e74705SXin Li // CHECK-EL-NAN-64-N32: "[[TC]]/mips64/el/nan2008{{/|\\\\}}crtend.o" 2242*67e74705SXin Li // CHECK-EL-NAN-64-N32: "[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib{{/|\\\\}}crtn.o" 2243*67e74705SXin Li // 2244*67e74705SXin Li // = Little-endian, mips64, ABI n32, fp64, nan2008 2245*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2246*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=n32 -mfp64 -mnan=2008 \ 2247*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2248*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN64-64-N32 %s 2249*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "-internal-isystem" 2250*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2251*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "-internal-isystem" 2252*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/el/nan2008" 2253*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "-internal-isystem" 2254*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2255*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "-internal-externc-isystem" 2256*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "[[TC]]/include" 2257*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "-internal-externc-isystem" 2258*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "[[TC]]/../../../../sysroot/usr/include" 2259*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "{{.*}}ld{{(.exe)?}}" 2260*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/el/nan2008" 2261*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "-dynamic-linker" "/lib32/ld-linux-mipsn8.so.1" 2262*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib{{/|\\\\}}crt1.o" 2263*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib{{/|\\\\}}crti.o" 2264*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "[[TC]]/mips64/el/nan2008{{/|\\\\}}crtbegin.o" 2265*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "-L[[TC]]/mips64/el/nan2008" 2266*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/el/nan2008" 2267*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib" 2268*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "[[TC]]/mips64/el/nan2008{{/|\\\\}}crtend.o" 2269*67e74705SXin Li // CHECK-EL-NAN64-64-N32: "[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib{{/|\\\\}}crtn.o" 2270*67e74705SXin Li // 2271*67e74705SXin Li // = Little-endian, mips64, ABI 64, hard float 2272*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2273*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=64 -mhard-float \ 2274*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2275*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF-64-64 %s 2276*67e74705SXin Li // CHECK-EL-HF-64-64: "-internal-isystem" 2277*67e74705SXin Li // CHECK-EL-HF-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2278*67e74705SXin Li // CHECK-EL-HF-64-64: "-internal-isystem" 2279*67e74705SXin Li // CHECK-EL-HF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/el" 2280*67e74705SXin Li // CHECK-EL-HF-64-64: "-internal-isystem" 2281*67e74705SXin Li // CHECK-EL-HF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2282*67e74705SXin Li // CHECK-EL-HF-64-64: "-internal-externc-isystem" 2283*67e74705SXin Li // CHECK-EL-HF-64-64: "[[TC]]/include" 2284*67e74705SXin Li // CHECK-EL-HF-64-64: "-internal-externc-isystem" 2285*67e74705SXin Li // CHECK-EL-HF-64-64: "[[TC]]/../../../../sysroot/usr/include" 2286*67e74705SXin Li // CHECK-EL-HF-64-64: "{{.*}}ld{{(.exe)?}}" 2287*67e74705SXin Li // CHECK-EL-HF-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/el" 2288*67e74705SXin Li // CHECK-EL-HF-64-64: "-dynamic-linker" "/lib64/ld.so.1" 2289*67e74705SXin Li // CHECK-EL-HF-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/usr/lib{{/|\\\\}}crt1.o" 2290*67e74705SXin Li // CHECK-EL-HF-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/usr/lib{{/|\\\\}}crti.o" 2291*67e74705SXin Li // CHECK-EL-HF-64-64: "[[TC]]/mips64/64/el{{/|\\\\}}crtbegin.o" 2292*67e74705SXin Li // CHECK-EL-HF-64-64: "-L[[TC]]/mips64/64/el" 2293*67e74705SXin Li // CHECK-EL-HF-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/el" 2294*67e74705SXin Li // CHECK-EL-HF-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/usr/lib" 2295*67e74705SXin Li // CHECK-EL-HF-64-64: "[[TC]]/mips64/64/el{{/|\\\\}}crtend.o" 2296*67e74705SXin Li // CHECK-EL-HF-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/usr/lib{{/|\\\\}}crtn.o" 2297*67e74705SXin Li // 2298*67e74705SXin Li // = Little-endian, mips64, ABI 64, fp64, hard float 2299*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2300*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=64 -mfp64 -mhard-float \ 2301*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2302*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF64-64-64 %s 2303*67e74705SXin Li // CHECK-EL-HF64-64-64: "-internal-isystem" 2304*67e74705SXin Li // CHECK-EL-HF64-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2305*67e74705SXin Li // CHECK-EL-HF64-64-64: "-internal-isystem" 2306*67e74705SXin Li // CHECK-EL-HF64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/el" 2307*67e74705SXin Li // CHECK-EL-HF64-64-64: "-internal-isystem" 2308*67e74705SXin Li // CHECK-EL-HF64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2309*67e74705SXin Li // CHECK-EL-HF64-64-64: "-internal-externc-isystem" 2310*67e74705SXin Li // CHECK-EL-HF64-64-64: "[[TC]]/include" 2311*67e74705SXin Li // CHECK-EL-HF64-64-64: "-internal-externc-isystem" 2312*67e74705SXin Li // CHECK-EL-HF64-64-64: "[[TC]]/../../../../sysroot/usr/include" 2313*67e74705SXin Li // CHECK-EL-HF64-64-64: "{{.*}}ld{{(.exe)?}}" 2314*67e74705SXin Li // CHECK-EL-HF64-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/el" 2315*67e74705SXin Li // CHECK-EL-HF64-64-64: "-dynamic-linker" "/lib64/ld.so.1" 2316*67e74705SXin Li // CHECK-EL-HF64-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/usr/lib{{/|\\\\}}crt1.o" 2317*67e74705SXin Li // CHECK-EL-HF64-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/usr/lib{{/|\\\\}}crti.o" 2318*67e74705SXin Li // CHECK-EL-HF64-64-64: "[[TC]]/mips64/64/el{{/|\\\\}}crtbegin.o" 2319*67e74705SXin Li // CHECK-EL-HF64-64-64: "-L[[TC]]/mips64/64/el" 2320*67e74705SXin Li // CHECK-EL-HF64-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/el" 2321*67e74705SXin Li // CHECK-EL-HF64-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/usr/lib" 2322*67e74705SXin Li // CHECK-EL-HF64-64-64: "[[TC]]/mips64/64/el{{/|\\\\}}crtend.o" 2323*67e74705SXin Li // CHECK-EL-HF64-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/usr/lib{{/|\\\\}}crtn.o" 2324*67e74705SXin Li // 2325*67e74705SXin Li // = Little-endian, mips64, ABI 64, soft float 2326*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2327*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=64 -msoft-float \ 2328*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2329*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-SF-64-64 %s 2330*67e74705SXin Li // CHECK-EL-SF-64-64: "-internal-isystem" 2331*67e74705SXin Li // CHECK-EL-SF-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2332*67e74705SXin Li // CHECK-EL-SF-64-64: "-internal-isystem" 2333*67e74705SXin Li // CHECK-EL-SF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/el/sof" 2334*67e74705SXin Li // CHECK-EL-SF-64-64: "-internal-isystem" 2335*67e74705SXin Li // CHECK-EL-SF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2336*67e74705SXin Li // CHECK-EL-SF-64-64: "-internal-externc-isystem" 2337*67e74705SXin Li // CHECK-EL-SF-64-64: "[[TC]]/include" 2338*67e74705SXin Li // CHECK-EL-SF-64-64: "-internal-externc-isystem" 2339*67e74705SXin Li // CHECK-EL-SF-64-64: "[[TC]]/../../../../sysroot/usr/include" 2340*67e74705SXin Li // CHECK-EL-SF-64-64: "{{.*}}ld{{(.exe)?}}" 2341*67e74705SXin Li // CHECK-EL-SF-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/el/sof" 2342*67e74705SXin Li // CHECK-EL-SF-64-64: "-dynamic-linker" "/lib64/ld.so.1" 2343*67e74705SXin Li // CHECK-EL-SF-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/sof/usr/lib{{/|\\\\}}crt1.o" 2344*67e74705SXin Li // CHECK-EL-SF-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/sof/usr/lib{{/|\\\\}}crti.o" 2345*67e74705SXin Li // CHECK-EL-SF-64-64: "[[TC]]/mips64/64/el/sof{{/|\\\\}}crtbegin.o" 2346*67e74705SXin Li // CHECK-EL-SF-64-64: "-L[[TC]]/mips64/64/el/sof" 2347*67e74705SXin Li // CHECK-EL-SF-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/el/sof" 2348*67e74705SXin Li // CHECK-EL-SF-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/sof/usr/lib" 2349*67e74705SXin Li // CHECK-EL-SF-64-64: "[[TC]]/mips64/64/el/sof{{/|\\\\}}crtend.o" 2350*67e74705SXin Li // CHECK-EL-SF-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/sof/usr/lib{{/|\\\\}}crtn.o" 2351*67e74705SXin Li // 2352*67e74705SXin Li // = Little-endian, mips64, ABI 64, nan2008 2353*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2354*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=64 -mnan=2008 \ 2355*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2356*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN-64-64 %s 2357*67e74705SXin Li // CHECK-EL-NAN-64-64: "-internal-isystem" 2358*67e74705SXin Li // CHECK-EL-NAN-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2359*67e74705SXin Li // CHECK-EL-NAN-64-64: "-internal-isystem" 2360*67e74705SXin Li // CHECK-EL-NAN-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/el/nan2008" 2361*67e74705SXin Li // CHECK-EL-NAN-64-64: "-internal-isystem" 2362*67e74705SXin Li // CHECK-EL-NAN-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2363*67e74705SXin Li // CHECK-EL-NAN-64-64: "-internal-externc-isystem" 2364*67e74705SXin Li // CHECK-EL-NAN-64-64: "[[TC]]/include" 2365*67e74705SXin Li // CHECK-EL-NAN-64-64: "-internal-externc-isystem" 2366*67e74705SXin Li // CHECK-EL-NAN-64-64: "[[TC]]/../../../../sysroot/usr/include" 2367*67e74705SXin Li // CHECK-EL-NAN-64-64: "{{.*}}ld{{(.exe)?}}" 2368*67e74705SXin Li // CHECK-EL-NAN-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/el/nan2008" 2369*67e74705SXin Li // CHECK-EL-NAN-64-64: "-dynamic-linker" "/lib64/ld-linux-mipsn8.so.1" 2370*67e74705SXin Li // CHECK-EL-NAN-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib{{/|\\\\}}crt1.o" 2371*67e74705SXin Li // CHECK-EL-NAN-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib{{/|\\\\}}crti.o" 2372*67e74705SXin Li // CHECK-EL-NAN-64-64: "[[TC]]/mips64/64/el/nan2008{{/|\\\\}}crtbegin.o" 2373*67e74705SXin Li // CHECK-EL-NAN-64-64: "-L[[TC]]/mips64/64/el/nan2008" 2374*67e74705SXin Li // CHECK-EL-NAN-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/el/nan2008" 2375*67e74705SXin Li // CHECK-EL-NAN-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib" 2376*67e74705SXin Li // CHECK-EL-NAN-64-64: "[[TC]]/mips64/64/el/nan2008{{/|\\\\}}crtend.o" 2377*67e74705SXin Li // CHECK-EL-NAN-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib{{/|\\\\}}crtn.o" 2378*67e74705SXin Li // 2379*67e74705SXin Li // = Little-endian, mips64, ABI 64, fp64, nan2008 2380*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2381*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=64 -mfp64 -mnan=2008 \ 2382*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2383*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN64-64-64 %s 2384*67e74705SXin Li // CHECK-EL-NAN64-64-64: "-internal-isystem" 2385*67e74705SXin Li // CHECK-EL-NAN64-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2386*67e74705SXin Li // CHECK-EL-NAN64-64-64: "-internal-isystem" 2387*67e74705SXin Li // CHECK-EL-NAN64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/el/nan2008" 2388*67e74705SXin Li // CHECK-EL-NAN64-64-64: "-internal-isystem" 2389*67e74705SXin Li // CHECK-EL-NAN64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2390*67e74705SXin Li // CHECK-EL-NAN64-64-64: "-internal-externc-isystem" 2391*67e74705SXin Li // CHECK-EL-NAN64-64-64: "[[TC]]/include" 2392*67e74705SXin Li // CHECK-EL-NAN64-64-64: "-internal-externc-isystem" 2393*67e74705SXin Li // CHECK-EL-NAN64-64-64: "[[TC]]/../../../../sysroot/usr/include" 2394*67e74705SXin Li // CHECK-EL-NAN64-64-64: "{{.*}}ld{{(.exe)?}}" 2395*67e74705SXin Li // CHECK-EL-NAN64-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/el/nan2008" 2396*67e74705SXin Li // CHECK-EL-NAN64-64-64: "-dynamic-linker" "/lib64/ld-linux-mipsn8.so.1" 2397*67e74705SXin Li // CHECK-EL-NAN64-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib{{/|\\\\}}crt1.o" 2398*67e74705SXin Li // CHECK-EL-NAN64-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib{{/|\\\\}}crti.o" 2399*67e74705SXin Li // CHECK-EL-NAN64-64-64: "[[TC]]/mips64/64/el/nan2008{{/|\\\\}}crtbegin.o" 2400*67e74705SXin Li // CHECK-EL-NAN64-64-64: "-L[[TC]]/mips64/64/el/nan2008" 2401*67e74705SXin Li // CHECK-EL-NAN64-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/el/nan2008" 2402*67e74705SXin Li // CHECK-EL-NAN64-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib" 2403*67e74705SXin Li // CHECK-EL-NAN64-64-64: "[[TC]]/mips64/64/el/nan2008{{/|\\\\}}crtend.o" 2404*67e74705SXin Li // CHECK-EL-NAN64-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib{{/|\\\\}}crtn.o" 2405*67e74705SXin Li // 2406*67e74705SXin Li // = Little-endian, mips64r2, ABI n32, hard float 2407*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2408*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=n32 -mhard-float \ 2409*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2410*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF-64R2-N32 %s 2411*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "-internal-isystem" 2412*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2413*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "-internal-isystem" 2414*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/el" 2415*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "-internal-isystem" 2416*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2417*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "-internal-externc-isystem" 2418*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "[[TC]]/include" 2419*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "-internal-externc-isystem" 2420*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "[[TC]]/../../../../sysroot/usr/include" 2421*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "{{.*}}ld{{(.exe)?}}" 2422*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/el" 2423*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "-dynamic-linker" "/lib32/ld.so.1" 2424*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/usr/lib{{/|\\\\}}crt1.o" 2425*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/usr/lib{{/|\\\\}}crti.o" 2426*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "[[TC]]/mips64r2/el{{/|\\\\}}crtbegin.o" 2427*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "-L[[TC]]/mips64r2/el" 2428*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/el" 2429*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/usr/lib" 2430*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "[[TC]]/mips64r2/el{{/|\\\\}}crtend.o" 2431*67e74705SXin Li // CHECK-EL-HF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/usr/lib{{/|\\\\}}crtn.o" 2432*67e74705SXin Li // 2433*67e74705SXin Li // = Little-endian, mips64r2, ABI n32, fp64, hard float 2434*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2435*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=n32 -mfp64 -mhard-float \ 2436*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2437*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF64-64R2-N32 %s 2438*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "-internal-isystem" 2439*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2440*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "-internal-isystem" 2441*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/el" 2442*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "-internal-isystem" 2443*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2444*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "-internal-externc-isystem" 2445*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "[[TC]]/include" 2446*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "-internal-externc-isystem" 2447*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "[[TC]]/../../../../sysroot/usr/include" 2448*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "{{.*}}ld{{(.exe)?}}" 2449*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/el" 2450*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "-dynamic-linker" "/lib32/ld.so.1" 2451*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/usr/lib{{/|\\\\}}crt1.o" 2452*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/usr/lib{{/|\\\\}}crti.o" 2453*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "[[TC]]/mips64r2/el{{/|\\\\}}crtbegin.o" 2454*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "-L[[TC]]/mips64r2/el" 2455*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/el" 2456*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/usr/lib" 2457*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "[[TC]]/mips64r2/el{{/|\\\\}}crtend.o" 2458*67e74705SXin Li // CHECK-EL-HF64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/usr/lib{{/|\\\\}}crtn.o" 2459*67e74705SXin Li // 2460*67e74705SXin Li // = Little-endian, mips64r2, ABI n32, soft float 2461*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2462*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=n32 -msoft-float \ 2463*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2464*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-SF-64R2-N32 %s 2465*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "-internal-isystem" 2466*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2467*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "-internal-isystem" 2468*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/el/sof" 2469*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "-internal-isystem" 2470*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2471*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "-internal-externc-isystem" 2472*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "[[TC]]/include" 2473*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "-internal-externc-isystem" 2474*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "[[TC]]/../../../../sysroot/usr/include" 2475*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "{{.*}}ld{{(.exe)?}}" 2476*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/el/sof" 2477*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "-dynamic-linker" "/lib32/ld.so.1" 2478*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/sof/usr/lib{{/|\\\\}}crt1.o" 2479*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/sof/usr/lib{{/|\\\\}}crti.o" 2480*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "[[TC]]/mips64r2/el/sof{{/|\\\\}}crtbegin.o" 2481*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "-L[[TC]]/mips64r2/el/sof" 2482*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/el/sof" 2483*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/sof/usr/lib" 2484*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "[[TC]]/mips64r2/el/sof{{/|\\\\}}crtend.o" 2485*67e74705SXin Li // CHECK-EL-SF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/sof/usr/lib{{/|\\\\}}crtn.o" 2486*67e74705SXin Li // 2487*67e74705SXin Li // = Little-endian, mips64r2, ABI n32, nan2008 2488*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2489*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=n32 -mnan=2008 \ 2490*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2491*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN-64R2-N32 %s 2492*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "-internal-isystem" 2493*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2494*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "-internal-isystem" 2495*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/el/nan2008" 2496*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "-internal-isystem" 2497*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2498*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "-internal-externc-isystem" 2499*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "[[TC]]/include" 2500*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "-internal-externc-isystem" 2501*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "[[TC]]/../../../../sysroot/usr/include" 2502*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "{{.*}}ld{{(.exe)?}}" 2503*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/el/nan2008" 2504*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "-dynamic-linker" "/lib32/ld-linux-mipsn8.so.1" 2505*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib{{/|\\\\}}crt1.o" 2506*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib{{/|\\\\}}crti.o" 2507*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "[[TC]]/mips64r2/el/nan2008{{/|\\\\}}crtbegin.o" 2508*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "-L[[TC]]/mips64r2/el/nan2008" 2509*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/el/nan2008" 2510*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib" 2511*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "[[TC]]/mips64r2/el/nan2008{{/|\\\\}}crtend.o" 2512*67e74705SXin Li // CHECK-EL-NAN-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib{{/|\\\\}}crtn.o" 2513*67e74705SXin Li // 2514*67e74705SXin Li // = Little-endian, mips64r2, ABI n32, fp64, nan2008 2515*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2516*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=n32 -mfp64 -mnan=2008 \ 2517*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2518*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN64-64R2-N32 %s 2519*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "-internal-isystem" 2520*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2521*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "-internal-isystem" 2522*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/el/nan2008" 2523*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "-internal-isystem" 2524*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2525*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "-internal-externc-isystem" 2526*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "[[TC]]/include" 2527*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "-internal-externc-isystem" 2528*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/usr/include" 2529*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "{{.*}}ld{{(.exe)?}}" 2530*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/el/nan2008" 2531*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "-dynamic-linker" "/lib32/ld-linux-mipsn8.so.1" 2532*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib{{/|\\\\}}crt1.o" 2533*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib{{/|\\\\}}crti.o" 2534*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "[[TC]]/mips64r2/el/nan2008{{/|\\\\}}crtbegin.o" 2535*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "-L[[TC]]/mips64r2/el/nan2008" 2536*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/el/nan2008" 2537*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib" 2538*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "[[TC]]/mips64r2/el/nan2008{{/|\\\\}}crtend.o" 2539*67e74705SXin Li // CHECK-EL-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib{{/|\\\\}}crtn.o" 2540*67e74705SXin Li // 2541*67e74705SXin Li // = Little-endian, mips64r2, ABI 64, hard float 2542*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2543*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=64 -mhard-float \ 2544*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2545*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF-64R2-64 %s 2546*67e74705SXin Li // CHECK-EL-HF-64R2-64: "-internal-isystem" 2547*67e74705SXin Li // CHECK-EL-HF-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2548*67e74705SXin Li // CHECK-EL-HF-64R2-64: "-internal-isystem" 2549*67e74705SXin Li // CHECK-EL-HF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/el" 2550*67e74705SXin Li // CHECK-EL-HF-64R2-64: "-internal-isystem" 2551*67e74705SXin Li // CHECK-EL-HF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2552*67e74705SXin Li // CHECK-EL-HF-64R2-64: "-internal-externc-isystem" 2553*67e74705SXin Li // CHECK-EL-HF-64R2-64: "[[TC]]/include" 2554*67e74705SXin Li // CHECK-EL-HF-64R2-64: "-internal-externc-isystem" 2555*67e74705SXin Li // CHECK-EL-HF-64R2-64: "[[TC]]/../../../../sysroot/usr/include" 2556*67e74705SXin Li // CHECK-EL-HF-64R2-64: "{{.*}}ld{{(.exe)?}}" 2557*67e74705SXin Li // CHECK-EL-HF-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/el" 2558*67e74705SXin Li // CHECK-EL-HF-64R2-64: "-dynamic-linker" "/lib64/ld.so.1" 2559*67e74705SXin Li // CHECK-EL-HF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib{{/|\\\\}}crt1.o" 2560*67e74705SXin Li // CHECK-EL-HF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib{{/|\\\\}}crti.o" 2561*67e74705SXin Li // CHECK-EL-HF-64R2-64: "[[TC]]/mips64r2/64/el{{/|\\\\}}crtbegin.o" 2562*67e74705SXin Li // CHECK-EL-HF-64R2-64: "-L[[TC]]/mips64r2/64/el" 2563*67e74705SXin Li // CHECK-EL-HF-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/el" 2564*67e74705SXin Li // CHECK-EL-HF-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib" 2565*67e74705SXin Li // CHECK-EL-HF-64R2-64: "[[TC]]/mips64r2/64/el{{/|\\\\}}crtend.o" 2566*67e74705SXin Li // CHECK-EL-HF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib{{/|\\\\}}crtn.o" 2567*67e74705SXin Li // 2568*67e74705SXin Li // = Little-endian, mips64r2, ABI 64, fp64, hard float 2569*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2570*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=64 -mfp64 -mhard-float \ 2571*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2572*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-HF64-64R2-64 %s 2573*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "-internal-isystem" 2574*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2575*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "-internal-isystem" 2576*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/el" 2577*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "-internal-isystem" 2578*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2579*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "-internal-externc-isystem" 2580*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "[[TC]]/include" 2581*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "-internal-externc-isystem" 2582*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "[[TC]]/../../../../sysroot/usr/include" 2583*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "{{.*}}ld{{(.exe)?}}" 2584*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/el" 2585*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "-dynamic-linker" "/lib64/ld.so.1" 2586*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib{{/|\\\\}}crt1.o" 2587*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib{{/|\\\\}}crti.o" 2588*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "[[TC]]/mips64r2/64/el{{/|\\\\}}crtbegin.o" 2589*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "-L[[TC]]/mips64r2/64/el" 2590*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/el" 2591*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib" 2592*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "[[TC]]/mips64r2/64/el{{/|\\\\}}crtend.o" 2593*67e74705SXin Li // CHECK-EL-HF64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib{{/|\\\\}}crtn.o" 2594*67e74705SXin Li // 2595*67e74705SXin Li // = Little-endian, mips64r2, ABI 64, soft float 2596*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2597*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=64 -msoft-float \ 2598*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2599*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-SF-64R2-64 %s 2600*67e74705SXin Li // CHECK-EL-SF-64R2-64: "-internal-isystem" 2601*67e74705SXin Li // CHECK-EL-SF-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2602*67e74705SXin Li // CHECK-EL-SF-64R2-64: "-internal-isystem" 2603*67e74705SXin Li // CHECK-EL-SF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/el/sof" 2604*67e74705SXin Li // CHECK-EL-SF-64R2-64: "-internal-isystem" 2605*67e74705SXin Li // CHECK-EL-SF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2606*67e74705SXin Li // CHECK-EL-SF-64R2-64: "-internal-externc-isystem" 2607*67e74705SXin Li // CHECK-EL-SF-64R2-64: "[[TC]]/include" 2608*67e74705SXin Li // CHECK-EL-SF-64R2-64: "-internal-externc-isystem" 2609*67e74705SXin Li // CHECK-EL-SF-64R2-64: "[[TC]]/../../../../sysroot/usr/include" 2610*67e74705SXin Li // CHECK-EL-SF-64R2-64: "{{.*}}ld{{(.exe)?}}" 2611*67e74705SXin Li // CHECK-EL-SF-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/el/sof" 2612*67e74705SXin Li // CHECK-EL-SF-64R2-64: "-dynamic-linker" "/lib64/ld.so.1" 2613*67e74705SXin Li // CHECK-EL-SF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/sof/usr/lib{{/|\\\\}}crt1.o" 2614*67e74705SXin Li // CHECK-EL-SF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/sof/usr/lib{{/|\\\\}}crti.o" 2615*67e74705SXin Li // CHECK-EL-SF-64R2-64: "[[TC]]/mips64r2/64/el/sof{{/|\\\\}}crtbegin.o" 2616*67e74705SXin Li // CHECK-EL-SF-64R2-64: "-L[[TC]]/mips64r2/64/el/sof" 2617*67e74705SXin Li // CHECK-EL-SF-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/el/sof" 2618*67e74705SXin Li // CHECK-EL-SF-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/sof/usr/lib" 2619*67e74705SXin Li // CHECK-EL-SF-64R2-64: "[[TC]]/mips64r2/64/el/sof{{/|\\\\}}crtend.o" 2620*67e74705SXin Li // CHECK-EL-SF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/sof/usr/lib{{/|\\\\}}crtn.o" 2621*67e74705SXin Li // 2622*67e74705SXin Li // = Little-endian, mips64r2, ABI 64, nan2008 2623*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2624*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=64 -mnan=2008 \ 2625*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2626*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN-64R2-64 %s 2627*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "-internal-isystem" 2628*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2629*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "-internal-isystem" 2630*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/el/nan2008" 2631*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "-internal-isystem" 2632*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2633*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "-internal-externc-isystem" 2634*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "[[TC]]/include" 2635*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "-internal-externc-isystem" 2636*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "[[TC]]/../../../../sysroot/usr/include" 2637*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "{{.*}}ld{{(.exe)?}}" 2638*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008" 2639*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "-dynamic-linker" "/lib64/ld-linux-mipsn8.so.1" 2640*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crt1.o" 2641*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crti.o" 2642*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "[[TC]]/mips64r2/64/el/nan2008{{/|\\\\}}crtbegin.o" 2643*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "-L[[TC]]/mips64r2/64/el/nan2008" 2644*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/el/nan2008" 2645*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib" 2646*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "[[TC]]/mips64r2/64/el/nan2008{{/|\\\\}}crtend.o" 2647*67e74705SXin Li // CHECK-EL-NAN-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crtn.o" 2648*67e74705SXin Li // 2649*67e74705SXin Li // = Little-endian, mips64r2, ABI 64, fp64, nan2008 2650*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2651*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=64 -mfp64 -mnan=2008 \ 2652*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2653*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN64-64R2-64 %s 2654*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "-internal-isystem" 2655*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2656*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "-internal-isystem" 2657*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/el/nan2008" 2658*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "-internal-isystem" 2659*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2660*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "-internal-externc-isystem" 2661*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "[[TC]]/include" 2662*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "-internal-externc-isystem" 2663*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "[[TC]]/../../../../sysroot/usr/include" 2664*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "{{.*}}ld{{(.exe)?}}" 2665*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008" 2666*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "-dynamic-linker" "/lib64/ld-linux-mipsn8.so.1" 2667*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crt1.o" 2668*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crti.o" 2669*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "[[TC]]/mips64r2/64/el/nan2008{{/|\\\\}}crtbegin.o" 2670*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "-L[[TC]]/mips64r2/64/el/nan2008" 2671*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/el/nan2008" 2672*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib" 2673*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "[[TC]]/mips64r2/64/el/nan2008{{/|\\\\}}crtend.o" 2674*67e74705SXin Li // CHECK-EL-NAN64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crtn.o" 2675*67e74705SXin Li // 2676*67e74705SXin Li // = Little-endian, default (mips64r2), ABI 64, fp64, nan2008 2677*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2678*67e74705SXin Li // RUN: --target=mips64el-mti-linux-gnu -mabi=64 -mfp64 -mnan=2008 \ 2679*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2680*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-EL-NAN64-64R2-64-DEF %s 2681*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "-internal-isystem" 2682*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2683*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "-internal-isystem" 2684*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/el/nan2008" 2685*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "-internal-isystem" 2686*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2687*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "-internal-externc-isystem" 2688*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "[[TC]]/include" 2689*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "-internal-externc-isystem" 2690*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "[[TC]]/../../../../sysroot/usr/include" 2691*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "{{.*}}ld{{(.exe)?}}" 2692*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008" 2693*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "-dynamic-linker" "/lib64/ld-linux-mipsn8.so.1" 2694*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crt1.o" 2695*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crti.o" 2696*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "[[TC]]/mips64r2/64/el/nan2008{{/|\\\\}}crtbegin.o" 2697*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "-L[[TC]]/mips64r2/64/el/nan2008" 2698*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/el/nan2008" 2699*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib" 2700*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "[[TC]]/mips64r2/64/el/nan2008{{/|\\\\}}crtend.o" 2701*67e74705SXin Li // CHECK-EL-NAN64-64R2-64-DEF: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crtn.o" 2702*67e74705SXin Li // 2703*67e74705SXin Li // Check that mips32r3 and mips32r5 are equal to mips32r2 2704*67e74705SXin Li // 2705*67e74705SXin Li // = Big-endian, mips32r3, hard float 2706*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2707*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r3 -mhard-float \ 2708*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2709*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF-32R3 %s 2710*67e74705SXin Li // CHECK-BE-HF-32R3: "-internal-isystem" 2711*67e74705SXin Li // CHECK-BE-HF-32R3: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2712*67e74705SXin Li // CHECK-BE-HF-32R3: "-internal-isystem" 2713*67e74705SXin Li // CHECK-BE-HF-32R3: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu" 2714*67e74705SXin Li // CHECK-BE-HF-32R3: "-internal-isystem" 2715*67e74705SXin Li // CHECK-BE-HF-32R3: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2716*67e74705SXin Li // CHECK-BE-HF-32R3: "-internal-externc-isystem" 2717*67e74705SXin Li // CHECK-BE-HF-32R3: "[[TC]]/include" 2718*67e74705SXin Li // CHECK-BE-HF-32R3: "-internal-externc-isystem" 2719*67e74705SXin Li // CHECK-BE-HF-32R3: "[[TC]]/../../../../sysroot/usr/include" 2720*67e74705SXin Li // CHECK-BE-HF-32R3: "{{.*}}ld{{(.exe)?}}" 2721*67e74705SXin Li // CHECK-BE-HF-32R3: "--sysroot=[[TC]]/../../../../sysroot" 2722*67e74705SXin Li // CHECK-BE-HF-32R3: "-dynamic-linker" "/lib/ld.so.1" 2723*67e74705SXin Li // CHECK-BE-HF-32R3: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crt1.o" 2724*67e74705SXin Li // CHECK-BE-HF-32R3: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crti.o" 2725*67e74705SXin Li // CHECK-BE-HF-32R3: "[[TC]]{{/|\\\\}}crtbegin.o" 2726*67e74705SXin Li // CHECK-BE-HF-32R3: "-L[[TC]]" 2727*67e74705SXin Li // CHECK-BE-HF-32R3: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib" 2728*67e74705SXin Li // CHECK-BE-HF-32R3: "-L[[TC]]/../../../../sysroot/usr/lib/../lib" 2729*67e74705SXin Li // CHECK-BE-HF-32R3: "[[TC]]{{/|\\\\}}crtend.o" 2730*67e74705SXin Li // CHECK-BE-HF-32R3: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crtn.o" 2731*67e74705SXin Li // 2732*67e74705SXin Li // = Big-endian, mips32r5, hard float 2733*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2734*67e74705SXin Li // RUN: --target=mips-mti-linux-gnu -mips32r5 -mhard-float \ 2735*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2736*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF-32R5 %s 2737*67e74705SXin Li // CHECK-BE-HF-32R5: "-internal-isystem" 2738*67e74705SXin Li // CHECK-BE-HF-32R5: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2739*67e74705SXin Li // CHECK-BE-HF-32R5: "-internal-isystem" 2740*67e74705SXin Li // CHECK-BE-HF-32R5: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu" 2741*67e74705SXin Li // CHECK-BE-HF-32R5: "-internal-isystem" 2742*67e74705SXin Li // CHECK-BE-HF-32R5: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2743*67e74705SXin Li // CHECK-BE-HF-32R5: "-internal-externc-isystem" 2744*67e74705SXin Li // CHECK-BE-HF-32R5: "[[TC]]/include" 2745*67e74705SXin Li // CHECK-BE-HF-32R5: "-internal-externc-isystem" 2746*67e74705SXin Li // CHECK-BE-HF-32R5: "[[TC]]/../../../../sysroot/usr/include" 2747*67e74705SXin Li // CHECK-BE-HF-32R5: "{{.*}}ld{{(.exe)?}}" 2748*67e74705SXin Li // CHECK-BE-HF-32R5: "--sysroot=[[TC]]/../../../../sysroot" 2749*67e74705SXin Li // CHECK-BE-HF-32R5: "-dynamic-linker" "/lib/ld.so.1" 2750*67e74705SXin Li // CHECK-BE-HF-32R5: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crt1.o" 2751*67e74705SXin Li // CHECK-BE-HF-32R5: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crti.o" 2752*67e74705SXin Li // CHECK-BE-HF-32R5: "[[TC]]{{/|\\\\}}crtbegin.o" 2753*67e74705SXin Li // CHECK-BE-HF-32R5: "-L[[TC]]" 2754*67e74705SXin Li // CHECK-BE-HF-32R5: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib" 2755*67e74705SXin Li // CHECK-BE-HF-32R5: "-L[[TC]]/../../../../sysroot/usr/lib/../lib" 2756*67e74705SXin Li // CHECK-BE-HF-32R5: "[[TC]]{{/|\\\\}}crtend.o" 2757*67e74705SXin Li // CHECK-BE-HF-32R5: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crtn.o" 2758*67e74705SXin Li // 2759*67e74705SXin Li // = Big-endian, mips64r3, ABI 64, hard float 2760*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2761*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64r3 -mabi=64 -mhard-float \ 2762*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2763*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF-64R3-64 %s 2764*67e74705SXin Li // CHECK-BE-HF-64R3-64: "-internal-isystem" 2765*67e74705SXin Li // CHECK-BE-HF-64R3-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2766*67e74705SXin Li // CHECK-BE-HF-64R3-64: "-internal-isystem" 2767*67e74705SXin Li // CHECK-BE-HF-64R3-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64" 2768*67e74705SXin Li // CHECK-BE-HF-64R3-64: "-internal-isystem" 2769*67e74705SXin Li // CHECK-BE-HF-64R3-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2770*67e74705SXin Li // CHECK-BE-HF-64R3-64: "-internal-externc-isystem" 2771*67e74705SXin Li // CHECK-BE-HF-64R3-64: "[[TC]]/include" 2772*67e74705SXin Li // CHECK-BE-HF-64R3-64: "-internal-externc-isystem" 2773*67e74705SXin Li // CHECK-BE-HF-64R3-64: "[[TC]]/../../../../sysroot/usr/include" 2774*67e74705SXin Li // CHECK-BE-HF-64R3-64: "{{.*}}ld{{(.exe)?}}" 2775*67e74705SXin Li // CHECK-BE-HF-64R3-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64" 2776*67e74705SXin Li // CHECK-BE-HF-64R3-64: "-dynamic-linker" "/lib64/ld.so.1" 2777*67e74705SXin Li // CHECK-BE-HF-64R3-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crt1.o" 2778*67e74705SXin Li // CHECK-BE-HF-64R3-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crti.o" 2779*67e74705SXin Li // CHECK-BE-HF-64R3-64: "[[TC]]/mips64r2/64{{/|\\\\}}crtbegin.o" 2780*67e74705SXin Li // CHECK-BE-HF-64R3-64: "-L[[TC]]/mips64r2/64" 2781*67e74705SXin Li // CHECK-BE-HF-64R3-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64" 2782*67e74705SXin Li // CHECK-BE-HF-64R3-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/usr/lib" 2783*67e74705SXin Li // CHECK-BE-HF-64R3-64: "[[TC]]/mips64r2/64{{/|\\\\}}crtend.o" 2784*67e74705SXin Li // CHECK-BE-HF-64R3-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crtn.o" 2785*67e74705SXin Li // 2786*67e74705SXin Li // = Big-endian, mips64r5, ABI 64, hard float 2787*67e74705SXin Li // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \ 2788*67e74705SXin Li // RUN: --target=mips64-mti-linux-gnu -mips64r5 -mabi=64 -mhard-float \ 2789*67e74705SXin Li // RUN: -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_fsf_tree \ 2790*67e74705SXin Li // RUN: | FileCheck --check-prefix=CHECK-BE-HF-64R5-64 %s 2791*67e74705SXin Li // CHECK-BE-HF-64R5-64: "-internal-isystem" 2792*67e74705SXin Li // CHECK-BE-HF-64R5-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0" 2793*67e74705SXin Li // CHECK-BE-HF-64R5-64: "-internal-isystem" 2794*67e74705SXin Li // CHECK-BE-HF-64R5-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64" 2795*67e74705SXin Li // CHECK-BE-HF-64R5-64: "-internal-isystem" 2796*67e74705SXin Li // CHECK-BE-HF-64R5-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward" 2797*67e74705SXin Li // CHECK-BE-HF-64R5-64: "-internal-externc-isystem" 2798*67e74705SXin Li // CHECK-BE-HF-64R5-64: "[[TC]]/include" 2799*67e74705SXin Li // CHECK-BE-HF-64R5-64: "-internal-externc-isystem" 2800*67e74705SXin Li // CHECK-BE-HF-64R5-64: "[[TC]]/../../../../sysroot/usr/include" 2801*67e74705SXin Li // CHECK-BE-HF-64R5-64: "{{.*}}ld{{(.exe)?}}" 2802*67e74705SXin Li // CHECK-BE-HF-64R5-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64" 2803*67e74705SXin Li // CHECK-BE-HF-64R5-64: "-dynamic-linker" "/lib64/ld.so.1" 2804*67e74705SXin Li // CHECK-BE-HF-64R5-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crt1.o" 2805*67e74705SXin Li // CHECK-BE-HF-64R5-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crti.o" 2806*67e74705SXin Li // CHECK-BE-HF-64R5-64: "[[TC]]/mips64r2/64{{/|\\\\}}crtbegin.o" 2807*67e74705SXin Li // CHECK-BE-HF-64R5-64: "-L[[TC]]/mips64r2/64" 2808*67e74705SXin Li // CHECK-BE-HF-64R5-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64" 2809*67e74705SXin Li // CHECK-BE-HF-64R5-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/usr/lib" 2810*67e74705SXin Li // CHECK-BE-HF-64R5-64: "[[TC]]/mips64r2/64{{/|\\\\}}crtend.o" 2811*67e74705SXin Li // CHECK-BE-HF-64R5-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crtn.o" 2812