aboutsummaryrefslogtreecommitdiff
path: root/sim/aarch64
diff options
context:
space:
mode:
Diffstat (limited to 'sim/aarch64')
-rw-r--r--sim/aarch64/ChangeLog5
-rw-r--r--sim/aarch64/aclocal.m41
-rwxr-xr-xsim/aarch64/configure62
-rw-r--r--sim/aarch64/configure.ac5
-rw-r--r--sim/aarch64/interp.c5
5 files changed, 14 insertions, 64 deletions
diff --git a/sim/aarch64/ChangeLog b/sim/aarch64/ChangeLog
index 28d73fa..939ea29 100644
--- a/sim/aarch64/ChangeLog
+++ b/sim/aarch64/ChangeLog
@@ -1,5 +1,10 @@
2021-06-12 Mike Frysinger <vapier@gentoo.org>
+ * configure.ac: Delete call to SIM_AC_OPTION_ALIGNMENT.
+ * interp.c (sim_open): Set current_alignment.
+
+2021-06-12 Mike Frysinger <vapier@gentoo.org>
+
* aclocal.m4, config.in, configure: Regenerate.
2021-06-12 Mike Frysinger <vapier@gentoo.org>
diff --git a/sim/aarch64/aclocal.m4 b/sim/aarch64/aclocal.m4
index 6591f2c..88b04d1 100644
--- a/sim/aarch64/aclocal.m4
+++ b/sim/aarch64/aclocal.m4
@@ -110,7 +110,6 @@ m4_include([../../ltsugar.m4])
m4_include([../../ltversion.m4])
m4_include([../../lt~obsolete.m4])
m4_include([../m4/sim_ac_common.m4])
-m4_include([../m4/sim_ac_option_alignment.m4])
m4_include([../m4/sim_ac_option_endian.m4])
m4_include([../m4/sim_ac_option_hardware.m4])
m4_include([../m4/sim_ac_option_inline.m4])
diff --git a/sim/aarch64/configure b/sim/aarch64/configure
index 1045495..5408aad 100755
--- a/sim/aarch64/configure
+++ b/sim/aarch64/configure
@@ -636,6 +636,7 @@ sim_default_model
sim_scache
sim_float
sim_bitsize
+sim_alignment
cgen_breaks
MAINT
MAINTAINER_MODE_FALSE
@@ -753,8 +754,7 @@ sim_inline
sim_hw
sim_hw_objs
sim_hw_cflags
-sim_endian
-sim_alignment'
+sim_endian'
ac_subst_files=''
ac_user_opts='
enable_option_checking
@@ -769,7 +769,6 @@ enable_libtool_lock
enable_maintainer_mode
enable_sim_inline
enable_sim_endian
-enable_sim_alignment
enable_werror
enable_build_warnings
enable_sim_build_warnings
@@ -1414,9 +1413,6 @@ Optional Features:
Specify which functions should be inlined
--enable-sim-endian=endian
Specify target byte endian orientation
- --enable-sim-alignment=align
- Specify strict, nonstrict or forced alignment of
- memory accesses
--enable-werror treat compile warnings as errors
--enable-build-warnings enable build-time compiler warnings if gcc is used
--enable-sim-build-warnings
@@ -10748,7 +10744,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 10751 "configure"
+#line 10747 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -10854,7 +10850,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 10857 "configure"
+#line 10853 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -11196,56 +11192,6 @@ else
fi
fi
-## We use NONSTRICT_ALIGNMENT as the default because AArch64 only
-## enforces 4-byte alignment, even for 8-byte reads/writes. The
-## common core does not support this, so we opt for non-strict
-## alignment instead.
-wire_alignment="NONSTRICT_ALIGNMENT"
-default_alignment="NONSTRICT_ALIGNMENT"
-
-# Check whether --enable-sim-alignment was given.
-if test "${enable_sim_alignment+set}" = set; then :
- enableval=$enable_sim_alignment; case "${enableval}" in
- strict | STRICT) sim_alignment="-DWITH_ALIGNMENT=STRICT_ALIGNMENT";;
- nonstrict | NONSTRICT) sim_alignment="-DWITH_ALIGNMENT=NONSTRICT_ALIGNMENT";;
- forced | FORCED) sim_alignment="-DWITH_ALIGNMENT=FORCED_ALIGNMENT";;
- yes) if test x"$wire_alignment" != x; then
- sim_alignment="-DWITH_ALIGNMENT=${wire_alignment}"
- else
- if test x"$default_alignment" != x; then
- sim_alignment="-DWITH_ALIGNMENT=${default_alignment}"
- else
- echo "No hard-wired alignment for target $target" 1>&6
- sim_alignment="-DWITH_ALIGNMENT=0"
- fi
- fi;;
- no) if test x"$default_alignment" != x; then
- sim_alignment="-DWITH_DEFAULT_ALIGNMENT=${default_alignment}"
- else
- if test x"$wire_alignment" != x; then
- sim_alignment="-DWITH_DEFAULT_ALIGNMENT=${wire_alignment}"
- else
- echo "No default alignment for target $target" 1>&6
- sim_alignment="-DWITH_DEFAULT_ALIGNMENT=0"
- fi
- fi;;
- *) as_fn_error $? "\"Unknown value $enableval passed to --enable-sim-alignment\"" "$LINENO" 5; sim_alignment="";;
-esac
-if test x"$silent" != x"yes" && test x"$sim_alignment" != x""; then
- echo "Setting alignment flags = $sim_alignment" 6>&1
-fi
-else
- if test x"$default_alignment" != x; then
- sim_alignment="-DWITH_DEFAULT_ALIGNMENT=${default_alignment}"
-else
- if test x"$wire_alignment" != x; then
- sim_alignment="-DWITH_ALIGNMENT=${wire_alignment}"
- else
- sim_alignment=
- fi
-fi
-fi
-
# Check whether --enable-werror was given.
if test "${enable_werror+set}" = set; then :
diff --git a/sim/aarch64/configure.ac b/sim/aarch64/configure.ac
index 1c212dc..381682fb 100644
--- a/sim/aarch64/configure.ac
+++ b/sim/aarch64/configure.ac
@@ -25,11 +25,6 @@ AC_CONFIG_MACRO_DIRS([../m4 ../.. ../../config])
SIM_AC_COMMON
SIM_AC_OPTION_ENDIAN
-## We use NONSTRICT_ALIGNMENT as the default because AArch64 only
-## enforces 4-byte alignment, even for 8-byte reads/writes. The
-## common core does not support this, so we opt for non-strict
-## alignment instead.
-SIM_AC_OPTION_ALIGNMENT(NONSTRICT_ALIGNMENT,NONSTRICT_ALIGNMENT)
SIM_AC_OPTION_WARNINGS
SIM_AC_OUTPUT
diff --git a/sim/aarch64/interp.c b/sim/aarch64/interp.c
index fd35f4fa..18c2fc0 100644
--- a/sim/aarch64/interp.c
+++ b/sim/aarch64/interp.c
@@ -330,6 +330,11 @@ sim_open (SIM_OPEN_KIND kind,
SIM_ASSERT (STATE_MAGIC (sd) == SIM_MAGIC_NUMBER);
+ /* We use NONSTRICT_ALIGNMENT as the default because AArch64 only enforces
+ 4-byte alignment, even for 8-byte reads/writes. The common core does not
+ support this, so we opt for non-strict alignment instead. */
+ current_alignment = NONSTRICT_ALIGNMENT;
+
/* Perform the initialization steps one by one. */
if (sim_cpu_alloc_all (sd, 1) != SIM_RC_OK
|| sim_pre_argv_init (sd, argv[0]) != SIM_RC_OK