brintos

brintos / llvm-project-archived public Read only

0
0
Text · 43.4 KiB · b17208c Raw
697 lines · cpp
1// Check frontend and linker invocations on Mentor Graphics MIPS toolchain.2//3// = Big-endian, hard float4// RUN: %clang -### %s 2>&1 \5// RUN:     --target=mips-linux-gnu -no-pie \6// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \7// RUN:   | FileCheck --check-prefix=CHECK-BE-HF-32 %s8// CHECK-BE-HF-32: "-internal-isystem"9// CHECK-BE-HF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"10// CHECK-BE-HF-32: "-internal-isystem"11// CHECK-BE-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu"12// CHECK-BE-HF-32: "-internal-isystem"13// CHECK-BE-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"14// CHECK-BE-HF-32: "-internal-externc-isystem"15// CHECK-BE-HF-32: "[[TC]]/include"16// CHECK-BE-HF-32: "-internal-externc-isystem"17// CHECK-BE-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"18// CHECK-BE-HF-32: "{{.*}}ld{{(.exe)?}}"19// CHECK-BE-HF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc"20// CHECK-BE-HF-32: "-dynamic-linker" "/lib/ld.so.1"21// CHECK-BE-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"22// CHECK-BE-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"23// CHECK-BE-HF-32: "[[TC]]{{/|\\\\}}crtbegin.o"24// CHECK-BE-HF-32: "-L[[TC]]"25// CHECK-BE-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib"26// CHECK-BE-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/lib"27// CHECK-BE-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/usr/lib"28// CHECK-BE-HF-32: "[[TC]]{{/|\\\\}}crtend.o"29// CHECK-BE-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"30//31// = Big-endian, hard float, uclibc32// RUN: %clang -### %s 2>&1 \33// RUN:     --target=mips-linux-gnu -muclibc -no-pie \34// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \35// RUN:   | FileCheck --check-prefix=CHECK-BE-UC-HF-32 %s36// CHECK-BE-UC-HF-32: "-internal-isystem"37// CHECK-BE-UC-HF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"38// CHECK-BE-UC-HF-32: "-internal-isystem"39// CHECK-BE-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/uclibc"40// CHECK-BE-UC-HF-32: "-internal-isystem"41// CHECK-BE-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"42// CHECK-BE-UC-HF-32: "-internal-externc-isystem"43// CHECK-BE-UC-HF-32: "[[TC]]/include"44// CHECK-BE-UC-HF-32: "-internal-externc-isystem"45// CHECK-BE-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/include"46// CHECK-BE-UC-HF-32: "{{.*}}ld{{(.exe)?}}"47// CHECK-BE-UC-HF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/uclibc"48// CHECK-BE-UC-HF-32: "-dynamic-linker" "/lib/ld-uClibc.so.0"49// CHECK-BE-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"50// CHECK-BE-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"51// CHECK-BE-UC-HF-32: "[[TC]]/uclibc{{/|\\\\}}crtbegin.o"52// CHECK-BE-UC-HF-32: "-L[[TC]]/uclibc"53// CHECK-BE-UC-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/uclibc"54// CHECK-BE-UC-HF-32-NOT: "-L[[TC]]"55// CHECK-BE-UC-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/lib/../lib"56// CHECK-BE-UC-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr{{/|\\\\}}lib"57// CHECK-BE-UC-HF-32: "[[TC]]/uclibc{{/|\\\\}}crtend.o"58// CHECK-BE-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"59//60// = Big-endian, hard float, mips1661// RUN: %clang -### %s 2>&1 \62// RUN:     --target=mips-linux-gnu -mips16 -no-pie \63// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \64// RUN:   | FileCheck --check-prefix=CHECK-BE-HF-16 %s65// CHECK-BE-HF-16: "-internal-isystem"66// CHECK-BE-HF-16: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"67// CHECK-BE-HF-16: "-internal-isystem"68// CHECK-BE-HF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/mips16"69// CHECK-BE-HF-16: "-internal-isystem"70// CHECK-BE-HF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"71// CHECK-BE-HF-16: "-internal-externc-isystem"72// CHECK-BE-HF-16: "[[TC]]/include"73// CHECK-BE-HF-16: "-internal-externc-isystem"74// CHECK-BE-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"75// CHECK-BE-HF-16: "{{.*}}ld{{(.exe)?}}"76// CHECK-BE-HF-16: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/mips16"77// CHECK-BE-HF-16: "-dynamic-linker" "/lib/ld.so.1"78// CHECK-BE-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"79// CHECK-BE-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"80// CHECK-BE-HF-16: "[[TC]]/mips16{{/|\\\\}}crtbegin.o"81// CHECK-BE-HF-16: "-L[[TC]]/mips16"82// CHECK-BE-HF-16: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/mips16"83// CHECK-BE-HF-16-NOT: "-L[[TC]]"84// CHECK-BE-HF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/lib/../lib"85// CHECK-BE-HF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/usr{{/|\\\\}}lib"86// CHECK-BE-HF-16: "[[TC]]/mips16{{/|\\\\}}crtend.o"87// CHECK-BE-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"88//89// = Big-endian, hard float, mmicromips90// RUN: %clang -### %s 2>&1 \91// RUN:     --target=mips-linux-gnu -mmicromips -no-pie \92// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \93// RUN:   | FileCheck --check-prefix=CHECK-BE-HF-MICRO %s94// CHECK-BE-HF-MICRO: "-internal-isystem"95// CHECK-BE-HF-MICRO: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"96// CHECK-BE-HF-MICRO: "-internal-isystem"97// CHECK-BE-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/micromips"98// CHECK-BE-HF-MICRO: "-internal-isystem"99// CHECK-BE-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"100// CHECK-BE-HF-MICRO: "-internal-externc-isystem"101// CHECK-BE-HF-MICRO: "[[TC]]/include"102// CHECK-BE-HF-MICRO: "-internal-externc-isystem"103// CHECK-BE-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"104// CHECK-BE-HF-MICRO: "{{.*}}ld{{(.exe)?}}"105// CHECK-BE-HF-MICRO: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/micromips"106// CHECK-BE-HF-MICRO: "-dynamic-linker" "/lib/ld.so.1"107// CHECK-BE-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"108// CHECK-BE-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"109// CHECK-BE-HF-MICRO: "[[TC]]/micromips{{/|\\\\}}crtbegin.o"110// CHECK-BE-HF-MICRO: "-L[[TC]]/micromips"111// CHECK-BE-HF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/micromips"112// CHECK-BE-HF-MICRO-NOT: "-L[[TC]]"113// CHECK-BE-HF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/lib/../lib"114// CHECK-BE-HF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/usr{{/|\\\\}}lib"115// CHECK-BE-HF-MICRO: "[[TC]]/micromips{{/|\\\\}}crtend.o"116// CHECK-BE-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"117//118// = Big-endian, hard float, nan2008119// RUN: %clang -### %s 2>&1 \120// RUN:     --target=mips-linux-gnu -mnan=2008 -no-pie \121// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \122// RUN:   | FileCheck --check-prefix=CHECK-BE-HF-NAN %s123// CHECK-BE-HF-NAN: "-internal-isystem"124// CHECK-BE-HF-NAN: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"125// CHECK-BE-HF-NAN: "-internal-isystem"126// CHECK-BE-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/nan2008"127// CHECK-BE-HF-NAN: "-internal-isystem"128// CHECK-BE-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"129// CHECK-BE-HF-NAN: "-internal-externc-isystem"130// CHECK-BE-HF-NAN: "[[TC]]/include"131// CHECK-BE-HF-NAN: "-internal-externc-isystem"132// CHECK-BE-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"133// CHECK-BE-HF-NAN: "{{.*}}ld{{(.exe)?}}"134// CHECK-BE-HF-NAN: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/nan2008"135// CHECK-BE-HF-NAN: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"136// CHECK-BE-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/nan2008/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"137// CHECK-BE-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/nan2008/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"138// CHECK-BE-HF-NAN: "[[TC]]/nan2008{{/|\\\\}}crtbegin.o"139// CHECK-BE-HF-NAN: "-L[[TC]]/nan2008"140// CHECK-BE-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/nan2008"141// CHECK-BE-HF-NAN-NOT: "-L[[TC]]"142// CHECK-BE-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/nan2008/lib/../lib"143// CHECK-BE-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/nan2008/usr{{/|\\\\}}lib"144// CHECK-BE-HF-NAN: "[[TC]]/nan2008{{/|\\\\}}crtend.o"145// CHECK-BE-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/nan2008/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"146//147// = Big-endian, hard float, uclibc, nan2008148// RUN: %clang -### %s 2>&1 \149// RUN:     --target=mips-linux-gnu -muclibc -mnan=2008 -no-pie \150// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \151// RUN:   | FileCheck --check-prefix=CHECK-BE-UC-HF-NAN %s152// CHECK-BE-UC-HF-NAN: "-internal-isystem"153// CHECK-BE-UC-HF-NAN: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"154// CHECK-BE-UC-HF-NAN: "-internal-isystem"155// CHECK-BE-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/uclibc/nan2008"156// CHECK-BE-UC-HF-NAN: "-internal-isystem"157// CHECK-BE-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"158// CHECK-BE-UC-HF-NAN: "-internal-externc-isystem"159// CHECK-BE-UC-HF-NAN: "[[TC]]/include"160// CHECK-BE-UC-HF-NAN: "-internal-externc-isystem"161// CHECK-BE-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/include"162// CHECK-BE-UC-HF-NAN: "{{.*}}ld{{(.exe)?}}"163// CHECK-BE-UC-HF-NAN: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008"164// CHECK-BE-UC-HF-NAN: "-dynamic-linker" "/lib/ld-uClibc-mipsn8.so.0"165// CHECK-BE-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"166// CHECK-BE-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"167// CHECK-BE-UC-HF-NAN: "[[TC]]/uclibc/nan2008{{/|\\\\}}crtbegin.o"168// CHECK-BE-UC-HF-NAN: "-L[[TC]]/uclibc/nan2008"169// CHECK-BE-UC-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/uclibc/nan2008"170// CHECK-BE-UC-HF-NAN-NOT: "-L[[TC]]"171// CHECK-BE-UC-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/lib/../lib"172// CHECK-BE-UC-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/usr{{/|\\\\}}lib"173// CHECK-BE-UC-HF-NAN: "[[TC]]/uclibc/nan2008{{/|\\\\}}crtend.o"174// CHECK-BE-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"175//176// = Big-endian, soft float177// RUN: %clang -### %s 2>&1 \178// RUN:     --target=mips-linux-gnu -msoft-float -no-pie \179// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \180// RUN:   | FileCheck --check-prefix=CHECK-BE-SF-32 %s181// CHECK-BE-SF-32: "-internal-isystem"182// CHECK-BE-SF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"183// CHECK-BE-SF-32: "-internal-isystem"184// CHECK-BE-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/soft-float"185// CHECK-BE-SF-32: "-internal-isystem"186// CHECK-BE-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"187// CHECK-BE-SF-32: "-internal-externc-isystem"188// CHECK-BE-SF-32: "[[TC]]/include"189// CHECK-BE-SF-32: "-internal-externc-isystem"190// CHECK-BE-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"191// CHECK-BE-SF-32: "{{.*}}ld{{(.exe)?}}"192// CHECK-BE-SF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/soft-float"193// CHECK-BE-SF-32: "-dynamic-linker" "/lib/ld.so.1"194// CHECK-BE-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"195// CHECK-BE-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"196// CHECK-BE-SF-32: "[[TC]]/soft-float{{/|\\\\}}crtbegin.o"197// CHECK-BE-SF-32: "-L[[TC]]/soft-float"198// CHECK-BE-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/soft-float"199// CHECK-BE-SF-32-NOT: "-L[[TC]]"200// CHECK-BE-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/lib/../lib"201// CHECK-BE-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr{{/|\\\\}}lib"202// CHECK-BE-SF-32: "[[TC]]/soft-float{{/|\\\\}}crtend.o"203// CHECK-BE-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"204//205// = Big-endian, soft float, uclibc206// RUN: %clang -### %s 2>&1 \207// RUN:     --target=mips-linux-gnu -muclibc -msoft-float -no-pie \208// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \209// RUN:   | FileCheck --check-prefix=CHECK-BE-UC-SF-32 %s210// CHECK-BE-UC-SF-32: "-internal-isystem"211// CHECK-BE-UC-SF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"212// CHECK-BE-UC-SF-32: "-internal-isystem"213// CHECK-BE-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/uclibc/soft-float"214// CHECK-BE-UC-SF-32: "-internal-isystem"215// CHECK-BE-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"216// CHECK-BE-UC-SF-32: "-internal-externc-isystem"217// CHECK-BE-UC-SF-32: "[[TC]]/include"218// CHECK-BE-UC-SF-32: "-internal-externc-isystem"219// CHECK-BE-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/include"220// CHECK-BE-UC-SF-32: "{{.*}}ld{{(.exe)?}}"221// CHECK-BE-UC-SF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float"222// CHECK-BE-UC-SF-32: "-dynamic-linker" "/lib/ld-uClibc.so.0"223// CHECK-BE-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"224// CHECK-BE-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"225// CHECK-BE-UC-SF-32: "[[TC]]/uclibc/soft-float{{/|\\\\}}crtbegin.o"226// CHECK-BE-UC-SF-32: "-L[[TC]]/uclibc/soft-float"227// CHECK-BE-UC-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/uclibc/soft-float"228// CHECK-BE-UC-SF-32-NOT: "-L[[TC]]"229// CHECK-BE-UC-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/lib/../lib"230// CHECK-BE-UC-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/usr{{/|\\\\}}lib"231// CHECK-BE-UC-SF-32: "[[TC]]/uclibc/soft-float{{/|\\\\}}crtend.o"232// CHECK-BE-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"233//234// = Big-endian, soft float, mips16235// RUN: %clang -### %s 2>&1 \236// RUN:     --target=mips-linux-gnu -msoft-float -mips16 -no-pie \237// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \238// RUN:   | FileCheck --check-prefix=CHECK-BE-SF-16 %s239// CHECK-BE-SF-16: "-internal-isystem"240// CHECK-BE-SF-16: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"241// CHECK-BE-SF-16: "-internal-isystem"242// CHECK-BE-SF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/mips16/soft-float"243// CHECK-BE-SF-16: "-internal-isystem"244// CHECK-BE-SF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"245// CHECK-BE-SF-16: "-internal-externc-isystem"246// CHECK-BE-SF-16: "[[TC]]/include"247// CHECK-BE-SF-16: "-internal-externc-isystem"248// CHECK-BE-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"249// CHECK-BE-SF-16: "{{.*}}ld{{(.exe)?}}"250// CHECK-BE-SF-16: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float"251// CHECK-BE-SF-16: "-dynamic-linker" "/lib/ld.so.1"252// CHECK-BE-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"253// CHECK-BE-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"254// CHECK-BE-SF-16: "[[TC]]/mips16/soft-float{{/|\\\\}}crtbegin.o"255// CHECK-BE-SF-16: "-L[[TC]]/mips16/soft-float"256// CHECK-BE-SF-16: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/mips16/soft-float"257// CHECK-BE-SF-16-NOT: "-L[[TC]]"258// CHECK-BE-SF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/lib/../lib"259// CHECK-BE-SF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/usr{{/|\\\\}}lib"260// CHECK-BE-SF-16: "[[TC]]/mips16/soft-float{{/|\\\\}}crtend.o"261// CHECK-BE-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"262//263// = Big-endian, soft float, micromips264// RUN: %clang -### %s 2>&1 \265// RUN:     --target=mips-linux-gnu -msoft-float -mmicromips -no-pie \266// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \267// RUN:   | FileCheck --check-prefix=CHECK-BE-SF-MICRO %s268// CHECK-BE-SF-MICRO: "-internal-isystem"269// CHECK-BE-SF-MICRO: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"270// CHECK-BE-SF-MICRO: "-internal-isystem"271// CHECK-BE-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/micromips/soft-float"272// CHECK-BE-SF-MICRO: "-internal-isystem"273// CHECK-BE-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"274// CHECK-BE-SF-MICRO: "-internal-externc-isystem"275// CHECK-BE-SF-MICRO: "[[TC]]/include"276// CHECK-BE-SF-MICRO: "-internal-externc-isystem"277// CHECK-BE-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"278// CHECK-BE-SF-MICRO: "{{.*}}ld{{(.exe)?}}"279// CHECK-BE-SF-MICRO: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float"280// CHECK-BE-SF-MICRO: "-dynamic-linker" "/lib/ld.so.1"281// CHECK-BE-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"282// CHECK-BE-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"283// CHECK-BE-SF-MICRO: "[[TC]]/micromips/soft-float{{/|\\\\}}crtbegin.o"284// CHECK-BE-SF-MICRO: "-L[[TC]]/micromips/soft-float"285// CHECK-BE-SF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/micromips/soft-float"286// CHECK-BE-SF-MICRO-NOT: "-L[[TC]]"287// CHECK-BE-SF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/lib/../lib"288// CHECK-BE-SF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/usr{{/|\\\\}}lib"289// CHECK-BE-SF-MICRO: "[[TC]]/micromips/soft-float{{/|\\\\}}crtend.o"290// CHECK-BE-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"291//292// = Big-endian, hard float, 64-bit293// RUN: %clang -### %s 2>&1 \294// RUN:     --target=mips64-linux-gnu -no-pie \295// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \296// RUN:   | FileCheck --check-prefix=CHECK-BE-HF-64 %s297// CHECK-BE-HF-64: "-internal-isystem"298// CHECK-BE-HF-64: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"299// CHECK-BE-HF-64: "-internal-isystem"300// CHECK-BE-HF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/64"301// CHECK-BE-HF-64: "-internal-isystem"302// CHECK-BE-HF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"303// CHECK-BE-HF-64: "-internal-externc-isystem"304// CHECK-BE-HF-64: "[[TC]]/include"305// CHECK-BE-HF-64: "-internal-externc-isystem"306// CHECK-BE-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"307// CHECK-BE-HF-64: "{{.*}}ld{{(.exe)?}}"308// CHECK-BE-HF-64: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc"309// CHECK-BE-HF-64: "-dynamic-linker" "/lib64/ld.so.1"310// CHECK-BE-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr{{/|\\\\}}lib64{{/|\\\\}}crt1.o"311// CHECK-BE-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr{{/|\\\\}}lib64{{/|\\\\}}crti.o"312// CHECK-BE-HF-64: "[[TC]]/64{{/|\\\\}}crtbegin.o"313// CHECK-BE-HF-64: "-L[[TC]]/64"314// CHECK-BE-HF-64: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib64"315// CHECK-BE-HF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/lib/../lib64"316// CHECK-BE-HF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/usr{{/|\\\\}}lib64"317// CHECK-BE-HF-64-NOT: "-L[[TC]]"318// CHECK-BE-HF-64: "{{.*}}/lib/gcc/mips-linux-gnu/4.6.3/64{{/|\\\\}}crtend.o"319// CHECK-BE-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr{{/|\\\\}}lib64{{/|\\\\}}crtn.o"320//321// = Big-endian, soft float, 64-bit322// RUN: %clang -### %s 2>&1 \323// RUN:     --target=mips64-linux-gnu -msoft-float -no-pie \324// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \325// RUN:   | FileCheck --check-prefix=CHECK-BE-SF-64 %s326// CHECK-BE-SF-64: "-internal-isystem"327// CHECK-BE-SF-64: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"328// CHECK-BE-SF-64: "-internal-isystem"329// CHECK-BE-SF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/soft-float/64"330// CHECK-BE-SF-64: "-internal-isystem"331// CHECK-BE-SF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"332// CHECK-BE-SF-64: "-internal-externc-isystem"333// CHECK-BE-SF-64: "[[TC]]/include"334// CHECK-BE-SF-64: "-internal-externc-isystem"335// CHECK-BE-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"336// CHECK-BE-SF-64: "{{.*}}ld{{(.exe)?}}"337// CHECK-BE-SF-64: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/soft-float"338// CHECK-BE-SF-64: "-dynamic-linker" "/lib64/ld.so.1"339// CHECK-BE-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr{{/|\\\\}}lib64{{/|\\\\}}crt1.o"340// CHECK-BE-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr{{/|\\\\}}lib64{{/|\\\\}}crti.o"341// CHECK-BE-SF-64: "[[TC]]/soft-float/64{{/|\\\\}}crtbegin.o"342// CHECK-BE-SF-64: "-L[[TC]]/soft-float/64"343// CHECK-BE-SF-64: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib64/soft-float"344// CHECK-BE-SF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/lib/../lib64"345// CHECK-BE-SF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr{{/|\\\\}}lib64"346// CHECK-BE-SF-64-NOT: "-L[[TC]]"347// CHECK-BE-SF-64: "[[TC]]/soft-float/64{{/|\\\\}}crtend.o"348// CHECK-BE-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr{{/|\\\\}}lib64{{/|\\\\}}crtn.o"349//350// = Little-endian, hard float351// RUN: %clang -### %s 2>&1 \352// RUN:     --target=mipsel-linux-gnu -mhard-float -no-pie \353// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \354// RUN:   | FileCheck --check-prefix=CHECK-EL-HF-32 %s355// CHECK-EL-HF-32: "-internal-isystem"356// CHECK-EL-HF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"357// CHECK-EL-HF-32: "-internal-isystem"358// CHECK-EL-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/el"359// CHECK-EL-HF-32: "-internal-isystem"360// CHECK-EL-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"361// CHECK-EL-HF-32: "-internal-externc-isystem"362// CHECK-EL-HF-32: "[[TC]]/include"363// CHECK-EL-HF-32: "-internal-externc-isystem"364// CHECK-EL-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"365// CHECK-EL-HF-32: "{{.*}}ld{{(.exe)?}}"366// CHECK-EL-HF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/el"367// CHECK-EL-HF-32: "-dynamic-linker" "/lib/ld.so.1"368// CHECK-EL-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/el/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"369// CHECK-EL-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/el/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"370// CHECK-EL-HF-32: "[[TC]]/el{{/|\\\\}}crtbegin.o"371// CHECK-EL-HF-32: "-L[[TC]]/el"372// CHECK-EL-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/el"373// CHECK-EL-HF-32-NOT: "-L[[TC]]"374// CHECK-EL-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/el/lib/../lib"375// CHECK-EL-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/el/usr{{/|\\\\}}lib"376// CHECK-EL-HF-32: "[[TC]]/el{{/|\\\\}}crtend.o"377// CHECK-EL-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/el/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"378//379// = Little-endian, hard float, uclibc380// RUN: %clang -### %s 2>&1 \381// RUN:     --target=mipsel-linux-gnu -mhard-float -muclibc -no-pie \382// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \383// RUN:   | FileCheck --check-prefix=CHECK-EL-UC-HF-32 %s384// CHECK-EL-UC-HF-32: "-internal-isystem"385// CHECK-EL-UC-HF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"386// CHECK-EL-UC-HF-32: "-internal-isystem"387// CHECK-EL-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/uclibc/el"388// CHECK-EL-UC-HF-32: "-internal-isystem"389// CHECK-EL-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"390// CHECK-EL-UC-HF-32: "-internal-externc-isystem"391// CHECK-EL-UC-HF-32: "[[TC]]/include"392// CHECK-EL-UC-HF-32: "-internal-externc-isystem"393// CHECK-EL-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/include"394// CHECK-EL-UC-HF-32: "{{.*}}ld{{(.exe)?}}"395// CHECK-EL-UC-HF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/uclibc/el"396// CHECK-EL-UC-HF-32: "-dynamic-linker" "/lib/ld-uClibc.so.0"397// CHECK-EL-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/el/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"398// CHECK-EL-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/el/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"399// CHECK-EL-UC-HF-32: "[[TC]]/uclibc/el{{/|\\\\}}crtbegin.o"400// CHECK-EL-UC-HF-32: "-L[[TC]]/uclibc/el"401// CHECK-EL-UC-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/uclibc/el"402// CHECK-EL-UC-HF-32-NOT: "-L[[TC]]"403// CHECK-EL-UC-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/el/lib/../lib"404// CHECK-EL-UC-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/el/usr{{/|\\\\}}lib"405// CHECK-EL-UC-HF-32: "[[TC]]/uclibc/el{{/|\\\\}}crtend.o"406// CHECK-EL-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/el/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"407//408// = Little-endian, hard float, mips16409// RUN: %clang -### %s 2>&1 \410// RUN:     --target=mipsel-linux-gnu -mips16 -no-pie \411// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \412// RUN:   | FileCheck --check-prefix=CHECK-EL-HF-16 %s413// CHECK-EL-HF-16: "-internal-isystem"414// CHECK-EL-HF-16: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"415// CHECK-EL-HF-16: "-internal-isystem"416// CHECK-EL-HF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/mips16/el"417// CHECK-EL-HF-16: "-internal-isystem"418// CHECK-EL-HF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"419// CHECK-EL-HF-16: "-internal-externc-isystem"420// CHECK-EL-HF-16: "[[TC]]/include"421// CHECK-EL-HF-16: "-internal-externc-isystem"422// CHECK-EL-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"423// CHECK-EL-HF-16: "{{.*}}ld{{(.exe)?}}"424// CHECK-EL-HF-16: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/mips16/el"425// CHECK-EL-HF-16: "-dynamic-linker" "/lib/ld.so.1"426// CHECK-EL-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/el/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"427// CHECK-EL-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/el/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"428// CHECK-EL-HF-16: "[[TC]]/mips16/el{{/|\\\\}}crtbegin.o"429// CHECK-EL-HF-16: "-L[[TC]]/mips16/el"430// CHECK-EL-HF-16: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/mips16/el"431// CHECK-EL-HF-16-NOT: "-L[[TC]]"432// CHECK-EL-HF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/el/lib/../lib"433// CHECK-EL-HF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/el/usr{{/|\\\\}}lib"434// CHECK-EL-HF-16: "[[TC]]/mips16/el{{/|\\\\}}crtend.o"435// CHECK-EL-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/el/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"436//437// = Little-endian, hard float, micromips438// RUN: %clang -### %s 2>&1 \439// RUN:     --target=mipsel-linux-gnu -mmicromips -no-pie \440// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \441// RUN:   | FileCheck --check-prefix=CHECK-EL-HF-MICRO %s442// CHECK-EL-HF-MICRO: "-internal-isystem"443// CHECK-EL-HF-MICRO: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"444// CHECK-EL-HF-MICRO: "-internal-isystem"445// CHECK-EL-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/micromips/el"446// CHECK-EL-HF-MICRO: "-internal-isystem"447// CHECK-EL-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"448// CHECK-EL-HF-MICRO: "-internal-externc-isystem"449// CHECK-EL-HF-MICRO: "[[TC]]/include"450// CHECK-EL-HF-MICRO: "-internal-externc-isystem"451// CHECK-EL-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"452// CHECK-EL-HF-MICRO: "{{.*}}ld{{(.exe)?}}"453// CHECK-EL-HF-MICRO: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/micromips/el"454// CHECK-EL-HF-MICRO: "-dynamic-linker" "/lib/ld.so.1"455// CHECK-EL-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/el/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"456// CHECK-EL-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/el/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"457// CHECK-EL-HF-MICRO: "[[TC]]/micromips/el{{/|\\\\}}crtbegin.o"458// CHECK-EL-HF-MICRO: "-L[[TC]]/micromips/el"459// CHECK-EL-HF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/micromips/el"460// CHECK-EL-HF-MICRO-NOT: "-L[[TC]]"461// CHECK-EL-HF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/el/lib/../lib"462// CHECK-EL-HF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/el/usr{{/|\\\\}}lib"463// CHECK-EL-HF-MICRO: "[[TC]]/micromips/el{{/|\\\\}}crtend.o"464// CHECK-EL-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/el/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"465//466// = Little-endian, hard float, nan2008467// RUN: %clang -### %s 2>&1 \468// RUN:     --target=mipsel-linux-gnu -mnan=2008 -no-pie \469// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \470// RUN:   | FileCheck --check-prefix=CHECK-EL-HF-NAN %s471// CHECK-EL-HF-NAN: "-internal-isystem"472// CHECK-EL-HF-NAN: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"473// CHECK-EL-HF-NAN: "-internal-isystem"474// CHECK-EL-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/nan2008/el"475// CHECK-EL-HF-NAN: "-internal-isystem"476// CHECK-EL-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"477// CHECK-EL-HF-NAN: "-internal-externc-isystem"478// CHECK-EL-HF-NAN: "[[TC]]/include"479// CHECK-EL-HF-NAN: "-internal-externc-isystem"480// CHECK-EL-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"481// CHECK-EL-HF-NAN: "{{.*}}ld{{(.exe)?}}"482// CHECK-EL-HF-NAN: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/nan2008/el"483// CHECK-EL-HF-NAN: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"484// CHECK-EL-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/nan2008/el/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"485// CHECK-EL-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/nan2008/el/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"486// CHECK-EL-HF-NAN: "[[TC]]/nan2008/el{{/|\\\\}}crtbegin.o"487// CHECK-EL-HF-NAN: "-L[[TC]]/nan2008/el"488// CHECK-EL-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/nan2008/el"489// CHECK-EL-HF-NAN-NOT: "-L[[TC]]"490// CHECK-EL-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/nan2008/el/lib/../lib"491// CHECK-EL-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/nan2008/el/usr{{/|\\\\}}lib"492// CHECK-EL-HF-NAN: "[[TC]]/nan2008/el{{/|\\\\}}crtend.o"493// CHECK-EL-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/nan2008/el/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"494//495// = Little-endian, hard float, uclibc, nan2008496// RUN: %clang -### %s 2>&1 \497// RUN:     --target=mipsel-linux-gnu -muclibc -mnan=2008 -no-pie \498// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \499// RUN:   | FileCheck --check-prefix=CHECK-EL-UC-HF-NAN %s500// CHECK-EL-UC-HF-NAN: "-internal-isystem"501// CHECK-EL-UC-HF-NAN: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"502// CHECK-EL-UC-HF-NAN: "-internal-isystem"503// CHECK-EL-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/uclibc/nan2008/el"504// CHECK-EL-UC-HF-NAN: "-internal-isystem"505// CHECK-EL-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"506// CHECK-EL-UC-HF-NAN: "-internal-externc-isystem"507// CHECK-EL-UC-HF-NAN: "[[TC]]/include"508// CHECK-EL-UC-HF-NAN: "-internal-externc-isystem"509// CHECK-EL-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/include"510// CHECK-EL-UC-HF-NAN: "{{.*}}ld{{(.exe)?}}"511// CHECK-EL-UC-HF-NAN: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/el"512// CHECK-EL-UC-HF-NAN: "-dynamic-linker" "/lib/ld-uClibc-mipsn8.so.0"513// CHECK-EL-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/el/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"514// CHECK-EL-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/el/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"515// CHECK-EL-UC-HF-NAN: "[[TC]]/uclibc/nan2008/el{{/|\\\\}}crtbegin.o"516// CHECK-EL-UC-HF-NAN: "-L[[TC]]/uclibc/nan2008/el"517// CHECK-EL-UC-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/uclibc/nan2008/el"518// CHECK-EL-UC-HF-NAN-NOT: "-L[[TC]]"519// CHECK-EL-UC-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/el/lib/../lib"520// CHECK-EL-UC-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/el/usr{{/|\\\\}}lib"521// CHECK-EL-UC-HF-NAN: "[[TC]]/uclibc/nan2008/el{{/|\\\\}}crtend.o"522// CHECK-EL-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/el/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"523//524// = Little-endian, soft float525// RUN: %clang -### %s 2>&1 \526// RUN:     --target=mipsel-linux-gnu -mfloat-abi=soft -no-pie \527// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \528// RUN:   | FileCheck --check-prefix=CHECK-EL-SF-32 %s529// CHECK-EL-SF-32: "-internal-isystem"530// CHECK-EL-SF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"531// CHECK-EL-SF-32: "-internal-isystem"532// CHECK-EL-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/soft-float/el"533// CHECK-EL-SF-32: "-internal-isystem"534// CHECK-EL-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"535// CHECK-EL-SF-32: "-internal-externc-isystem"536// CHECK-EL-SF-32: "[[TC]]/include"537// CHECK-EL-SF-32: "-internal-externc-isystem"538// CHECK-EL-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"539// CHECK-EL-SF-32: "{{.*}}ld{{(.exe)?}}"540// CHECK-EL-SF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el"541// CHECK-EL-SF-32: "-dynamic-linker" "/lib/ld.so.1"542// CHECK-EL-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"543// CHECK-EL-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"544// CHECK-EL-SF-32: "[[TC]]/soft-float/el{{/|\\\\}}crtbegin.o"545// CHECK-EL-SF-32: "-L[[TC]]/soft-float/el"546// CHECK-EL-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/soft-float/el"547// CHECK-EL-SF-32-NOT: "-L[[TC]]"548// CHECK-EL-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/lib/../lib"549// CHECK-EL-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr{{/|\\\\}}lib"550// CHECK-EL-SF-32: "[[TC]]/soft-float/el{{/|\\\\}}crtend.o"551// CHECK-EL-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"552//553// = Little-endian, soft float, uclibc554// RUN: %clang -### %s 2>&1 \555// RUN:     --target=mipsel-linux-gnu -mfloat-abi=soft -muclibc -no-pie \556// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \557// RUN:   | FileCheck --check-prefix=CHECK-EL-UC-SF-32 %s558// CHECK-EL-UC-SF-32: "-internal-isystem"559// CHECK-EL-UC-SF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"560// CHECK-EL-UC-SF-32: "-internal-isystem"561// CHECK-EL-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/uclibc/soft-float/el"562// CHECK-EL-UC-SF-32: "-internal-isystem"563// CHECK-EL-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"564// CHECK-EL-UC-SF-32: "-internal-externc-isystem"565// CHECK-EL-UC-SF-32: "[[TC]]/include"566// CHECK-EL-UC-SF-32: "-internal-externc-isystem"567// CHECK-EL-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/include"568// CHECK-EL-UC-SF-32: "{{.*}}ld{{(.exe)?}}"569// CHECK-EL-UC-SF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/el"570// CHECK-EL-UC-SF-32: "-dynamic-linker" "/lib/ld-uClibc.so.0"571// CHECK-EL-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/el/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"572// CHECK-EL-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/el/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"573// CHECK-EL-UC-SF-32: "[[TC]]/uclibc/soft-float/el{{/|\\\\}}crtbegin.o"574// CHECK-EL-UC-SF-32: "-L[[TC]]/uclibc/soft-float/el"575// CHECK-EL-UC-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/uclibc/soft-float/el"576// CHECK-EL-UC-SF-32-NOT: "-L[[TC]]"577// CHECK-EL-UC-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/el/lib/../lib"578// CHECK-EL-UC-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/el/usr{{/|\\\\}}lib"579// CHECK-EL-UC-SF-32: "[[TC]]/uclibc/soft-float/el{{/|\\\\}}crtend.o"580// CHECK-EL-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/el/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"581//582// = Little-endian, soft float, mips16583// RUN: %clang -### %s 2>&1 \584// RUN:     --target=mipsel-linux-gnu -mips16 -msoft-float -no-pie \585// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \586// RUN:   | FileCheck --check-prefix=CHECK-EL-SF-16 %s587// CHECK-EL-SF-16: "-internal-isystem"588// CHECK-EL-SF-16: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"589// CHECK-EL-SF-16: "-internal-isystem"590// CHECK-EL-SF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/mips16/soft-float/el"591// CHECK-EL-SF-16: "-internal-isystem"592// CHECK-EL-SF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"593// CHECK-EL-SF-16: "-internal-externc-isystem"594// CHECK-EL-SF-16: "[[TC]]/include"595// CHECK-EL-SF-16: "-internal-externc-isystem"596// CHECK-EL-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"597// CHECK-EL-SF-16: "{{.*}}ld{{(.exe)?}}"598// CHECK-EL-SF-16: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/el"599// CHECK-EL-SF-16: "-dynamic-linker" "/lib/ld.so.1"600// CHECK-EL-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/el/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"601// CHECK-EL-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/el/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"602// CHECK-EL-SF-16: "[[TC]]/mips16/soft-float/el{{/|\\\\}}crtbegin.o"603// CHECK-EL-SF-16: "-L[[TC]]/mips16/soft-float/el"604// CHECK-EL-SF-16: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/mips16/soft-float/el"605// CHECK-EL-SF-16-NOT: "-L[[TC]]"606// CHECK-EL-SF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/el/lib/../lib"607// CHECK-EL-SF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/el/usr{{/|\\\\}}lib"608// CHECK-EL-SF-16: "[[TC]]/mips16/soft-float/el{{/|\\\\}}crtend.o"609// CHECK-EL-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/el/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"610//611// = Little-endian, soft float, micromips612// RUN: %clang -### %s 2>&1 \613// RUN:     --target=mipsel-linux-gnu -mmicromips -msoft-float -no-pie \614// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \615// RUN:   | FileCheck --check-prefix=CHECK-EL-SF-MICRO %s616// CHECK-EL-SF-MICRO: "-internal-isystem"617// CHECK-EL-SF-MICRO: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"618// CHECK-EL-SF-MICRO: "-internal-isystem"619// CHECK-EL-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/micromips/soft-float/el"620// CHECK-EL-SF-MICRO: "-internal-isystem"621// CHECK-EL-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"622// CHECK-EL-SF-MICRO: "-internal-externc-isystem"623// CHECK-EL-SF-MICRO: "[[TC]]/include"624// CHECK-EL-SF-MICRO: "-internal-externc-isystem"625// CHECK-EL-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"626// CHECK-EL-SF-MICRO: "{{.*}}ld{{(.exe)?}}"627// CHECK-EL-SF-MICRO: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/el"628// CHECK-EL-SF-MICRO: "-dynamic-linker" "/lib/ld.so.1"629// CHECK-EL-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/el/usr{{/|\\\\}}lib{{/|\\\\}}crt1.o"630// CHECK-EL-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/el/usr{{/|\\\\}}lib{{/|\\\\}}crti.o"631// CHECK-EL-SF-MICRO: "[[TC]]/micromips/soft-float/el{{/|\\\\}}crtbegin.o"632// CHECK-EL-SF-MICRO: "-L[[TC]]/micromips/soft-float/el"633// CHECK-EL-SF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/micromips/soft-float/el"634// CHECK-EL-SF-MICRO-NOT: "-L[[TC]]"635// CHECK-EL-SF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/el/lib/../lib"636// CHECK-EL-SF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/el/usr{{/|\\\\}}lib"637// CHECK-EL-SF-MICRO: "[[TC]]/micromips/soft-float/el{{/|\\\\}}crtend.o"638// CHECK-EL-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/el/usr{{/|\\\\}}lib{{/|\\\\}}crtn.o"639//640// = Little-endian, hard float, 64-bit641// RUN: %clang -### %s 2>&1 \642// RUN:     --target=mips64el-linux-gnu -no-pie \643// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \644// RUN:   | FileCheck --check-prefix=CHECK-EL-HF-64 %s645// CHECK-EL-HF-64: "-internal-isystem"646// CHECK-EL-HF-64: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"647// CHECK-EL-HF-64: "-internal-isystem"648// CHECK-EL-HF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/el/64"649// CHECK-EL-HF-64: "-internal-isystem"650// CHECK-EL-HF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"651// CHECK-EL-HF-64: "-internal-externc-isystem"652// CHECK-EL-HF-64: "[[TC]]/include"653// CHECK-EL-HF-64: "-internal-externc-isystem"654// CHECK-EL-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"655// CHECK-EL-HF-64: "{{.*}}ld{{(.exe)?}}"656// CHECK-EL-HF-64: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/el"657// CHECK-EL-HF-64: "-dynamic-linker" "/lib64/ld.so.1"658// CHECK-EL-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/el/usr{{/|\\\\}}lib64{{/|\\\\}}crt1.o"659// CHECK-EL-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/el/usr{{/|\\\\}}lib64{{/|\\\\}}crti.o"660// CHECK-EL-HF-64: "[[TC]]/el/64{{/|\\\\}}crtbegin.o"661// CHECK-EL-HF-64: "-L[[TC]]/el/64"662// CHECK-EL-HF-64: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib64/el"663// CHECK-EL-HF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/el/lib/../lib64"664// CHECK-EL-HF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/el/usr{{/|\\\\}}lib64"665// CHECK-EL-HF-64-NOT: "-L[[TC]]"666// CHECK-EL-HF-64: "[[TC]]/el/64{{/|\\\\}}crtend.o"667// CHECK-EL-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/el/usr{{/|\\\\}}lib64{{/|\\\\}}crtn.o"668//669// = Little-endian, soft float, 64-bit670// RUN: %clang -### %s 2>&1 \671// RUN:     --target=mips64el-linux-gnu -msoft-float -no-pie \672// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \673// RUN:   | FileCheck --check-prefix=CHECK-EL-SF-64 %s674// CHECK-EL-SF-64: "-internal-isystem"675// CHECK-EL-SF-64: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"676// CHECK-EL-SF-64: "-internal-isystem"677// CHECK-EL-SF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/soft-float/el/64"678// CHECK-EL-SF-64: "-internal-isystem"679// CHECK-EL-SF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"680// CHECK-EL-SF-64: "-internal-externc-isystem"681// CHECK-EL-SF-64: "[[TC]]/include"682// CHECK-EL-SF-64: "-internal-externc-isystem"683// CHECK-EL-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"684// CHECK-EL-SF-64: "{{.*}}ld{{(.exe)?}}"685// CHECK-EL-SF-64: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el"686// CHECK-EL-SF-64: "-dynamic-linker" "/lib64/ld.so.1"687// CHECK-EL-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr{{/|\\\\}}lib64{{/|\\\\}}crt1.o"688// CHECK-EL-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr{{/|\\\\}}lib64{{/|\\\\}}crti.o"689// CHECK-EL-SF-64: "[[TC]]/soft-float/el/64{{/|\\\\}}crtbegin.o"690// CHECK-EL-SF-64: "-L[[TC]]/soft-float/el/64"691// CHECK-EL-SF-64: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib64/soft-float/el"692// CHECK-EL-SF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/lib/../lib64"693// CHECK-EL-SF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr{{/|\\\\}}lib64"694// CHECK-EL-SF-64-NOT: "-L[[TC]]"695// CHECK-EL-SF-64: "[[TC]]/soft-float/el/64{{/|\\\\}}crtend.o"696// CHECK-EL-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr{{/|\\\\}}lib64{{/|\\\\}}crtn.o"697