summaryrefslogtreecommitdiff
path: root/erts/configure
diff options
context:
space:
mode:
authorLukas Larsson <lukas@erlang.org>2022-06-20 10:53:06 +0200
committerLukas Larsson <lukas@erlang.org>2022-06-21 08:35:44 +0200
commit05687447e5b5928af5413ed8cb9ab6dd697085ee (patch)
tree1cd865dfc5bf29b8594aca727df2482d2b0f623e /erts/configure
parent2a12c3f70e3318a8654a4d58cf1b97215de0382b (diff)
downloaderlang-05687447e5b5928af5413ed8cb9ab6dd697085ee.tar.gz
win: Allow _Interlocked configure checks to be cached
Diffstat (limited to 'erts/configure')
-rwxr-xr-xerts/configure993
1 files changed, 608 insertions, 385 deletions
diff --git a/erts/configure b/erts/configure
index 3a563fd0e4..a287a59d20 100755
--- a/erts/configure
+++ b/erts/configure
@@ -10353,31 +10353,35 @@ printf "%s\n" "#define ETHR_WIN32_THREADS 1" >>confdefs.h
else
ilckd="_InterlockedDecrement"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "1" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (long) 0);";;
"3") ilckd_call="${ilckd}(var, (long) 0, (long) 0);";;
"4") ilckd_call="${ilckd}(var, (long) 0, (long) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedDecrement+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedDecrement=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile long *var;
- volatile long arr[2];
+ volatile long *var;
+ volatile long arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -10385,43 +10389,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedDecrement=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedDecrement" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedDecrement" >&6; }
+ if [ "${ethr_cv_have__InterlockedDecrement}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDDECREMENT 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedDecrement_rel"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "1" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (long) 0);";;
"3") ilckd_call="${ilckd}(var, (long) 0, (long) 0);";;
"4") ilckd_call="${ilckd}(var, (long) 0, (long) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedDecrement_rel+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedDecrement_rel=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile long *var;
- volatile long arr[2];
+ volatile long *var;
+ volatile long arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -10429,43 +10442,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedDecrement_rel=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedDecrement_rel" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedDecrement_rel" >&6; }
+ if [ "${ethr_cv_have__InterlockedDecrement_rel}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDDECREMENT_REL 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedIncrement"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "1" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (long) 0);";;
"3") ilckd_call="${ilckd}(var, (long) 0, (long) 0);";;
"4") ilckd_call="${ilckd}(var, (long) 0, (long) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedIncrement+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedIncrement=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile long *var;
- volatile long arr[2];
+ volatile long *var;
+ volatile long arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -10473,43 +10495,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedIncrement=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedIncrement" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedIncrement" >&6; }
+ if [ "${ethr_cv_have__InterlockedIncrement}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDINCREMENT 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedIncrement_acq"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "1" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (long) 0);";;
"3") ilckd_call="${ilckd}(var, (long) 0, (long) 0);";;
"4") ilckd_call="${ilckd}(var, (long) 0, (long) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedIncrement_acq+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedIncrement_acq=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile long *var;
- volatile long arr[2];
+ volatile long *var;
+ volatile long arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -10517,43 +10548,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedIncrement_acq=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedIncrement_acq" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedIncrement_acq" >&6; }
+ if [ "${ethr_cv_have__InterlockedIncrement_acq}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDINCREMENT_ACQ 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedExchangeAdd"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "2" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (long) 0);";;
"3") ilckd_call="${ilckd}(var, (long) 0, (long) 0);";;
"4") ilckd_call="${ilckd}(var, (long) 0, (long) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedExchangeAdd+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedExchangeAdd=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile long *var;
- volatile long arr[2];
+ volatile long *var;
+ volatile long arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -10561,43 +10601,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedExchangeAdd=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedExchangeAdd" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedExchangeAdd" >&6; }
+ if [ "${ethr_cv_have__InterlockedExchangeAdd}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDEXCHANGEADD 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedExchangeAdd_acq"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "2" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (long) 0);";;
"3") ilckd_call="${ilckd}(var, (long) 0, (long) 0);";;
"4") ilckd_call="${ilckd}(var, (long) 0, (long) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedExchangeAdd_acq+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedExchangeAdd_acq=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile long *var;
- volatile long arr[2];
+ volatile long *var;
+ volatile long arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -10605,43 +10654,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedExchangeAdd_acq=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedExchangeAdd_acq" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedExchangeAdd_acq" >&6; }
+ if [ "${ethr_cv_have__InterlockedExchangeAdd_acq}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDEXCHANGEADD_ACQ 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedAnd"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "2" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (long) 0);";;
"3") ilckd_call="${ilckd}(var, (long) 0, (long) 0);";;
"4") ilckd_call="${ilckd}(var, (long) 0, (long) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedAnd+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedAnd=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile long *var;
- volatile long arr[2];
+ volatile long *var;
+ volatile long arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -10649,43 +10707,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedAnd=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedAnd" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedAnd" >&6; }
+ if [ "${ethr_cv_have__InterlockedAnd}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDAND 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedOr"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "2" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (long) 0);";;
"3") ilckd_call="${ilckd}(var, (long) 0, (long) 0);";;
"4") ilckd_call="${ilckd}(var, (long) 0, (long) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedOr+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedOr=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile long *var;
- volatile long arr[2];
+ volatile long *var;
+ volatile long arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -10693,43 +10760,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedOr=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedOr" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedOr" >&6; }
+ if [ "${ethr_cv_have__InterlockedOr}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDOR 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedExchange"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "2" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (long) 0);";;
"3") ilckd_call="${ilckd}(var, (long) 0, (long) 0);";;
"4") ilckd_call="${ilckd}(var, (long) 0, (long) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedExchange+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedExchange=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile long *var;
- volatile long arr[2];
+ volatile long *var;
+ volatile long arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -10737,43 +10813,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedExchange=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedExchange" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedExchange" >&6; }
+ if [ "${ethr_cv_have__InterlockedExchange}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDEXCHANGE 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedCompareExchange"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "3" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (long) 0);";;
"3") ilckd_call="${ilckd}(var, (long) 0, (long) 0);";;
"4") ilckd_call="${ilckd}(var, (long) 0, (long) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedCompareExchange+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedCompareExchange=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile long *var;
- volatile long arr[2];
+ volatile long *var;
+ volatile long arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -10781,44 +10866,53 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedCompareExchange=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedCompareExchange" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedCompareExchange" >&6; }
+ if [ "${ethr_cv_have__InterlockedCompareExchange}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDCOMPAREEXCHANGE 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ ethr_have_native_atomics=yes
+ else
+ :
+ fi
- test "$have_interlocked_op" = "yes" && ethr_have_native_atomics=yes
ilckd="_InterlockedCompareExchange_acq"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "3" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (long) 0);";;
"3") ilckd_call="${ilckd}(var, (long) 0, (long) 0);";;
"4") ilckd_call="${ilckd}(var, (long) 0, (long) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedCompareExchange_acq+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedCompareExchange_acq=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile long *var;
- volatile long arr[2];
+ volatile long *var;
+ volatile long arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -10826,44 +10920,53 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedCompareExchange_acq=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedCompareExchange_acq" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedCompareExchange_acq" >&6; }
+ if [ "${ethr_cv_have__InterlockedCompareExchange_acq}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDCOMPAREEXCHANGE_ACQ 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ ethr_have_native_atomics=yes
+ else
+ :
+ fi
- test "$have_interlocked_op" = "yes" && ethr_have_native_atomics=yes
ilckd="_InterlockedCompareExchange_rel"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "3" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (long) 0);";;
"3") ilckd_call="${ilckd}(var, (long) 0, (long) 0);";;
"4") ilckd_call="${ilckd}(var, (long) 0, (long) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedCompareExchange_rel+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedCompareExchange_rel=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile long *var;
- volatile long arr[2];
+ volatile long *var;
+ volatile long arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -10871,45 +10974,53 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedCompareExchange_rel=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
-printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDCOMPAREEXCHANGE_REL 1" >>confdefs.h
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedCompareExchange_rel" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedCompareExchange_rel" >&6; }
+ if [ "${ethr_cv_have__InterlockedCompareExchange_rel}" = "yes" ]; then
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDCOMPAREEXCHANGE_REL 1" >>confdefs.h
- test "$have_interlocked_op" = "yes" && ethr_have_native_atomics=yes
+ ethr_have_native_atomics=yes
+ else
+ :
+ fi
ilckd="_InterlockedDecrement64"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "1" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (__int64) 0);";;
"3") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0);";;
"4") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedDecrement64+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedDecrement64=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile __int64 *var;
- volatile __int64 arr[2];
+ volatile __int64 *var;
+ volatile __int64 arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -10917,43 +11028,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedDecrement64=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedDecrement64" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedDecrement64" >&6; }
+ if [ "${ethr_cv_have__InterlockedDecrement64}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDDECREMENT64 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedDecrement64_rel"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "1" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (__int64) 0);";;
"3") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0);";;
"4") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedDecrement64_rel+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedDecrement64_rel=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile __int64 *var;
- volatile __int64 arr[2];
+ volatile __int64 *var;
+ volatile __int64 arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -10961,43 +11081,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedDecrement64_rel=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedDecrement64_rel" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedDecrement64_rel" >&6; }
+ if [ "${ethr_cv_have__InterlockedDecrement64_rel}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDDECREMENT64_REL 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedIncrement64"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "1" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (__int64) 0);";;
"3") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0);";;
"4") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedIncrement64+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedIncrement64=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile __int64 *var;
- volatile __int64 arr[2];
+ volatile __int64 *var;
+ volatile __int64 arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -11005,43 +11134,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedIncrement64=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedIncrement64" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedIncrement64" >&6; }
+ if [ "${ethr_cv_have__InterlockedIncrement64}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDINCREMENT64 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedIncrement64_acq"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "1" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (__int64) 0);";;
"3") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0);";;
"4") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedIncrement64_acq+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedIncrement64_acq=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile __int64 *var;
- volatile __int64 arr[2];
+ volatile __int64 *var;
+ volatile __int64 arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -11049,43 +11187,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedIncrement64_acq=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedIncrement64_acq" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedIncrement64_acq" >&6; }
+ if [ "${ethr_cv_have__InterlockedIncrement64_acq}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDINCREMENT64_ACQ 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedExchangeAdd64"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "2" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (__int64) 0);";;
"3") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0);";;
"4") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedExchangeAdd64+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedExchangeAdd64=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile __int64 *var;
- volatile __int64 arr[2];
+ volatile __int64 *var;
+ volatile __int64 arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -11093,43 +11240,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedExchangeAdd64=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedExchangeAdd64" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedExchangeAdd64" >&6; }
+ if [ "${ethr_cv_have__InterlockedExchangeAdd64}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDEXCHANGEADD64 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedExchangeAdd64_acq"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "2" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (__int64) 0);";;
"3") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0);";;
"4") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedExchangeAdd64_acq+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedExchangeAdd64_acq=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile __int64 *var;
- volatile __int64 arr[2];
+ volatile __int64 *var;
+ volatile __int64 arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -11137,43 +11293,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedExchangeAdd64_acq=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedExchangeAdd64_acq" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedExchangeAdd64_acq" >&6; }
+ if [ "${ethr_cv_have__InterlockedExchangeAdd64_acq}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDEXCHANGEADD64_ACQ 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedAnd64"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "2" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (__int64) 0);";;
"3") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0);";;
"4") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedAnd64+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedAnd64=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile __int64 *var;
- volatile __int64 arr[2];
+ volatile __int64 *var;
+ volatile __int64 arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -11181,43 +11346,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedAnd64=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedAnd64" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedAnd64" >&6; }
+ if [ "${ethr_cv_have__InterlockedAnd64}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDAND64 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedOr64"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "2" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (__int64) 0);";;
"3") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0);";;
"4") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedOr64+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedOr64=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile __int64 *var;
- volatile __int64 arr[2];
+ volatile __int64 *var;
+ volatile __int64 arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -11225,43 +11399,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedOr64=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedOr64" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedOr64" >&6; }
+ if [ "${ethr_cv_have__InterlockedOr64}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDOR64 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedExchange64"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "2" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (__int64) 0);";;
"3") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0);";;
"4") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedExchange64+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedExchange64=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile __int64 *var;
- volatile __int64 arr[2];
+ volatile __int64 *var;
+ volatile __int64 arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -11269,43 +11452,52 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedExchange64=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedExchange64" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedExchange64" >&6; }
+ if [ "${ethr_cv_have__InterlockedExchange64}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDEXCHANGE64 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
ilckd="_InterlockedCompareExchange64"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "3" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (__int64) 0);";;
"3") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0);";;
"4") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedCompareExchange64+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedCompareExchange64=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile __int64 *var;
- volatile __int64 arr[2];
+ volatile __int64 *var;
+ volatile __int64 arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -11313,44 +11505,53 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedCompareExchange64=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedCompareExchange64" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedCompareExchange64" >&6; }
+ if [ "${ethr_cv_have__InterlockedCompareExchange64}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDCOMPAREEXCHANGE64 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ ethr_have_native_atomics=yes
+ else
+ :
+ fi
- test "$have_interlocked_op" = "yes" && ethr_have_native_atomics=yes
ilckd="_InterlockedCompareExchange64_acq"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "3" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (__int64) 0);";;
"3") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0);";;
"4") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedCompareExchange64_acq+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedCompareExchange64_acq=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile __int64 *var;
- volatile __int64 arr[2];
+ volatile __int64 *var;
+ volatile __int64 arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -11358,44 +11559,53 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedCompareExchange64_acq=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedCompareExchange64_acq" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedCompareExchange64_acq" >&6; }
+ if [ "${ethr_cv_have__InterlockedCompareExchange64_acq}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDCOMPAREEXCHANGE64_ACQ 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ ethr_have_native_atomics=yes
+ else
+ :
+ fi
- test "$have_interlocked_op" = "yes" && ethr_have_native_atomics=yes
ilckd="_InterlockedCompareExchange64_rel"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "3" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (__int64) 0);";;
"3") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0);";;
"4") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedCompareExchange64_rel+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedCompareExchange64_rel=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile __int64 *var;
- volatile __int64 arr[2];
+ volatile __int64 *var;
+ volatile __int64 arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -11403,45 +11613,53 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedCompareExchange64_rel=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
-printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDCOMPAREEXCHANGE64_REL 1" >>confdefs.h
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedCompareExchange64_rel" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedCompareExchange64_rel" >&6; }
+ if [ "${ethr_cv_have__InterlockedCompareExchange64_rel}" = "yes" ]; then
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDCOMPAREEXCHANGE64_REL 1" >>confdefs.h
- test "$have_interlocked_op" = "yes" && ethr_have_native_atomics=yes
+ ethr_have_native_atomics=yes
+ else
+ :
+ fi
ilckd="_InterlockedCompareExchange128"
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
-printf %s "checking for ${ilckd}()... " >&6; }
case "4" in
"1") ilckd_call="${ilckd}(var);";;
"2") ilckd_call="${ilckd}(var, (__int64) 0);";;
"3") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0);";;
"4") ilckd_call="${ilckd}(var, (__int64) 0, (__int64) 0, arr);";;
esac
- have_interlocked_op=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ilckd}()" >&5
+printf %s "checking for ${ilckd}()... " >&6; }
+if test ${ethr_cv_have__InterlockedCompareExchange128+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ ethr_cv_have__InterlockedCompareExchange128=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- #include <intrin.h>
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <intrin.h>
int
main (void)
{
- volatile __int64 *var;
- volatile __int64 arr[2];
+ volatile __int64 *var;
+ volatile __int64 arr[2];
- $ilckd_call
- return 0;
+ $ilckd_call
+ return 0;
;
return 0;
@@ -11449,15 +11667,20 @@ main (void)
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
- have_interlocked_op=yes
+ ethr_cv_have__InterlockedCompareExchange128=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
- test $have_interlocked_op = yes &&
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ethr_cv_have__InterlockedCompareExchange128" >&5
+printf "%s\n" "$ethr_cv_have__InterlockedCompareExchange128" >&6; }
+ if [ "${ethr_cv_have__InterlockedCompareExchange128}" = "yes" ]; then
+
printf "%s\n" "#define ETHR_HAVE__INTERLOCKEDCOMPAREEXCHANGE128 1" >>confdefs.h
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_interlocked_op" >&5
-printf "%s\n" "$have_interlocked_op" >&6; }
+ else
+ :
+ fi
fi
if test "$ethr_have_native_atomics" = "yes"; then
@@ -16918,9 +17141,9 @@ then :
try_dlpi_lib=$erl_xcomp_sysroot/lib
if test x"$ac_cv_sizeof_void_p" = x"8"; then
if test -d $erl_xcomp_sysroot/lib64; then
- try_dlpi_lib= $erl_xcomp_sysroot/lib64
+ try_dlpi_lib=$erl_xcomp_sysroot/lib64
elif test -d $erl_xcomp_sysroot/lib/64; then
- try_dlpi_lib= $erl_xcomp_sysroot/lib/64
+ try_dlpi_lib=$erl_xcomp_sysroot/lib/64
fi
fi
if test ! -f "$try_dlpi_lib/libdlpi.so" && \