+2019-02-04 Kito Cheng <kito.cheng@gmail.com>
+
+ * config/nds32/linux.h (GLIBC_DYNAMIC_LINKER): Define the naming rule
+ of the dynamic linker: "ld-linux-nds32[le|be][f].so.1".
+
2019-02-04 Chung-Ju Wu <jasonwucj@gmail.com>
* config/nds32/nds32.c (nds32_legitimate_address_p): Add TLS model
} \
while (0)
-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
+#ifdef TARGET_BIG_ENDIAN_DEFAULT
+#define LD_SO_ENDIAN_SPEC "%{mlittle-endian:le}%{!mlittle-endian:be}"
+#else
+#define LD_SO_ENDIAN_SPEC "%{mbig-endian:be}%{!mbig-endian:le}"
+#endif
+
+/* Record arch version in TARGET_ARCH_DEFAULT.
+ 0 means soft ABI;
+ 1 means hard ABI and using full floating-point instruction;
+ 2 means hard ABI and only using single-precision floating-point
+ instruction. */
+#if TARGET_ARCH_DEFAULT
+#define LD_SO_ABI_SPEC "%{!mabi=2:f}"
+#else
+#define LD_SO_ABI_SPEC "%{mabi=2fp+:f}"
+#endif
+
+#define GLIBC_DYNAMIC_LINKER \
+ "/lib/ld-linux-nds32" LD_SO_ENDIAN_SPEC LD_SO_ABI_SPEC ".so.1"
/* In the configure stage we may use options --enable-default-relax,
--enable-Os-default-ifc and --enable-Os-default-ex9. They effect