aboutsummaryrefslogtreecommitdiff
path: root/libitm
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2022-10-13 15:54:17 +0200
committerMartin Liska <mliska@suse.cz>2022-10-13 15:54:17 +0200
commitbd21c04269deded2c7476ceca1100a26f28ea526 (patch)
tree197bf75eedac69362078a4ccc0afe5615c45c327 /libitm
parentd9e7934d25da4a78ffef1f738206aa1d897911df (diff)
parent786e4c024f941671a233f5779d73a5d22f4e9588 (diff)
downloadgcc-bd21c04269deded2c7476ceca1100a26f28ea526.zip
gcc-bd21c04269deded2c7476ceca1100a26f28ea526.tar.gz
gcc-bd21c04269deded2c7476ceca1100a26f28ea526.tar.bz2
Merge branch 'master' into devel/sphinx
Diffstat (limited to 'libitm')
-rw-r--r--libitm/ChangeLog9
-rw-r--r--libitm/config/loongarch/sjlj.S3
-rwxr-xr-xlibitm/configure52
3 files changed, 60 insertions, 4 deletions
diff --git a/libitm/ChangeLog b/libitm/ChangeLog
index 9796ef1..a7243a9 100644
--- a/libitm/ChangeLog
+++ b/libitm/ChangeLog
@@ -1,3 +1,12 @@
+2022-10-12 Martin Liska <mliska@suse.cz>
+
+ * configure: Regenerate.
+
+2022-10-11 Olivier Hainque <hainque@adacore.com>
+ Olivier Hainque <hainque@adacore.com>
+
+ * configure: Regenerate.
+
2022-09-28 Lulu Cheng <chenglulu@loongson.cn>
Yang Yujie <yangyujie@loongson.cn>
diff --git a/libitm/config/loongarch/sjlj.S b/libitm/config/loongarch/sjlj.S
index a5f9fad..f896e40 100644
--- a/libitm/config/loongarch/sjlj.S
+++ b/libitm/config/loongarch/sjlj.S
@@ -104,6 +104,8 @@ GTM_longjmp:
GPR_L $s7, $r5, 10*SZ_GPR
GPR_L $s8, $r5, 11*SZ_GPR
+#if !defined(__loongarch_soft_float)
+ /* Callee-saved scratch FPRs (f24-f31) */
FPR_L $f24, $r5, 12*SZ_GPR + 0*SZ_FPR
FPR_L $f25, $r5, 12*SZ_GPR + 1*SZ_FPR
FPR_L $f26, $r5, 12*SZ_GPR + 2*SZ_FPR
@@ -112,6 +114,7 @@ GTM_longjmp:
FPR_L $f29, $r5, 12*SZ_GPR + 5*SZ_FPR
FPR_L $f30, $r5, 12*SZ_GPR + 6*SZ_FPR
FPR_L $f31, $r5, 12*SZ_GPR + 7*SZ_FPR
+#endif
GPR_L $r7, $r5, 2*SZ_GPR
GPR_L $fp, $r5, 0*SZ_GPR
diff --git a/libitm/configure b/libitm/configure
index 18fc2d3..6230c04 100755
--- a/libitm/configure
+++ b/libitm/configure
@@ -6836,6 +6836,11 @@ sysv4 | sysv4.3*)
tpf*)
lt_cv_deplibs_check_method=pass_all
;;
+vxworks*)
+ # Assume VxWorks cross toolchains are built on Linux, possibly
+ # as canadian for Windows hosts.
+ lt_cv_deplibs_check_method=pass_all
+ ;;
esac
fi
@@ -11617,6 +11622,25 @@ uts4*)
shlibpath_var=LD_LIBRARY_PATH
;;
+# Shared libraries for VwWorks, >= 7 only at this stage
+# and (fpic) still incompatible with "large" code models
+# in a few configurations. Only for RTP mode in any case,
+# and upon explicit request at configure time.
+vxworks7*)
+ dynamic_linker=no
+ case ${with_multisubdir}-${enable_shared} in
+ *large*)
+ ;;
+ *mrtp*-yes)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker="$host_os module_loader"
+ ;;
+ esac
+ ;;
*)
dynamic_linker=no
;;
@@ -12058,7 +12082,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 12061 "configure"
+#line 12085 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -12164,7 +12188,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 12167 "configure"
+#line 12191 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -13723,8 +13747,9 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
;;
vxworks*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
+ # For VxWorks ports, we assume the use of a GNU linker with
+ # standard elf conventions.
+ ld_shlibs_CXX=yes
;;
*)
@@ -15272,6 +15297,25 @@ uts4*)
shlibpath_var=LD_LIBRARY_PATH
;;
+# Shared libraries for VwWorks, >= 7 only at this stage
+# and (fpic) still incompatible with "large" code models
+# in a few configurations. Only for RTP mode in any case,
+# and upon explicit request at configure time.
+vxworks7*)
+ dynamic_linker=no
+ case ${with_multisubdir}-${enable_shared} in
+ *large*)
+ ;;
+ *mrtp*-yes)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker="$host_os module_loader"
+ ;;
+ esac
+ ;;
*)
dynamic_linker=no
;;