diff options
author | Mike Frysinger <vapier@gentoo.org> | 2015-12-30 21:01:58 -0500 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2015-12-30 21:01:58 -0500 |
commit | eca4255a1a6c3603e05c4f3ca9c0849f529657c3 (patch) | |
tree | d697a4d42fed0045460438cb14f667711ced4838 /sim/cris | |
parent | 356a418c5dbff10ae4a2afc599163c0a85385f07 (diff) | |
download | gdb-eca4255a1a6c3603e05c4f3ca9c0849f529657c3.zip gdb-eca4255a1a6c3603e05c4f3ca9c0849f529657c3.tar.gz gdb-eca4255a1a6c3603e05c4f3ca9c0849f529657c3.tar.bz2 |
sim: cris/m68hc11: move default endian/alignment to configure
Diffstat (limited to 'sim/cris')
-rw-r--r-- | sim/cris/ChangeLog | 6 | ||||
-rwxr-xr-x | sim/cris/configure | 52 | ||||
-rw-r--r-- | sim/cris/configure.ac | 1 | ||||
-rw-r--r-- | sim/cris/sim-if.c | 6 |
4 files changed, 57 insertions, 8 deletions
diff --git a/sim/cris/ChangeLog b/sim/cris/ChangeLog index d6c6b41..9bf94f9 100644 --- a/sim/cris/ChangeLog +++ b/sim/cris/ChangeLog @@ -1,3 +1,9 @@ +2015-12-30 Mike Frysinger <vapier@gentoo.org> + + * sim-if.c (sim_open): Delete current_target_byte_order assignment. + * configure.ac: Call SIM_AC_OPTION_ENDIAN. + * configure: Regenerate. + 2015-12-27 Mike Frysinger <vapier@gentoo.org> * sim-if.c (cris_program_offset_write, sim_load): Delete. diff --git a/sim/cris/configure b/sim/cris/configure index eb1e7f4..be7f6fc 100755 --- a/sim/cris/configure +++ b/sim/cris/configure @@ -764,6 +764,7 @@ enable_sim_trace enable_sim_profile with_pkgversion with_bugurl +enable_sim_endian enable_sim_alignment enable_sim_hostendian enable_sim_scache @@ -1421,6 +1422,8 @@ Optional Features: --enable-sim-trace=opts Enable tracing of simulated programs --enable-sim-profile=opts Enable profiling flags + --enable-sim-endian=endian + Specify target byte endian orientation --enable-sim-alignment=align Specify strict, nonstrict or forced alignment of memory accesses @@ -12326,7 +12329,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 12329 "configure" +#line 12332 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -12432,7 +12435,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 12435 "configure" +#line 12438 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -12938,6 +12941,51 @@ fi done + +wire_endian="LITTLE_ENDIAN" +default_endian="" +# Check whether --enable-sim-endian was given. +if test "${enable_sim_endian+set}" = set; then : + enableval=$enable_sim_endian; case "${enableval}" in + b*|B*) sim_endian="-DWITH_TARGET_BYTE_ORDER=BIG_ENDIAN";; + l*|L*) sim_endian="-DWITH_TARGET_BYTE_ORDER=LITTLE_ENDIAN";; + yes) if test x"$wire_endian" != x; then + sim_endian="-DWITH_TARGET_BYTE_ORDER=${wire_endian}" + else + if test x"$default_endian" != x; then + sim_endian="-DWITH_TARGET_BYTE_ORDER=${default_endian}" + else + echo "No hard-wired endian for target $target" 1>&6 + sim_endian="-DWITH_TARGET_BYTE_ORDER=0" + fi + fi;; + no) if test x"$default_endian" != x; then + sim_endian="-DWITH_DEFAULT_TARGET_BYTE_ORDER=${default_endian}" + else + if test x"$wire_endian" != x; then + sim_endian="-DWITH_DEFAULT_TARGET_BYTE_ORDER=${wire_endian}" + else + echo "No default endian for target $target" 1>&6 + sim_endian="-DWITH_DEFAULT_TARGET_BYTE_ORDER=0" + fi + fi;; + *) as_fn_error "\"Unknown value $enableval for --enable-sim-endian\"" "$LINENO" 5; sim_endian="";; +esac +if test x"$silent" != x"yes" && test x"$sim_endian" != x""; then + echo "Setting endian flags = $sim_endian" 6>&1 +fi +else + if test x"$default_endian" != x; then + sim_endian="-DWITH_DEFAULT_TARGET_BYTE_ORDER=${default_endian}" +else + if test x"$wire_endian" != x; then + sim_endian="-DWITH_TARGET_BYTE_ORDER=${wire_endian}" + else + sim_endian= + fi +fi +fi + wire_alignment="NONSTRICT_ALIGNMENT" default_alignment="" diff --git a/sim/cris/configure.ac b/sim/cris/configure.ac index 4543342..4e6b1be 100644 --- a/sim/cris/configure.ac +++ b/sim/cris/configure.ac @@ -8,6 +8,7 @@ SIM_AC_COMMON # For dv-rv and rvdummy. AC_CHECK_HEADERS(sys/socket.h sys/select.h limits.h sys/param.h) +SIM_AC_OPTION_ENDIAN(LITTLE_ENDIAN) SIM_AC_OPTION_ALIGNMENT(NONSTRICT_ALIGNMENT) SIM_AC_OPTION_HOSTENDIAN SIM_AC_OPTION_SCACHE(16384) diff --git a/sim/cris/sim-if.c b/sim/cris/sim-if.c index 142bc7b..71afbff 100644 --- a/sim/cris/sim-if.c +++ b/sim/cris/sim-if.c @@ -720,12 +720,6 @@ sim_open (SIM_OPEN_KIND kind, host_callback *callback, struct bfd *abfd, return 0; } - /* If we have a binary program, endianness-setting would not be taken - from elsewhere unfortunately, so set it here. At the time of this - writing, it isn't used until sim_config, but that might change so - set it here before memory is defined or touched. */ - current_target_byte_order = LITTLE_ENDIAN; - /* check for/establish the reference program image */ if (sim_analyze_program (sd, (STATE_PROG_ARGV (sd) != NULL |