public inbox for gdb-cvs@sourceware.org
help / color / mirror / Atom feed
* [binutils-gdb] sim: m68hc11: move arch-specific file compilation to top-level
@ 2023-01-10  6:27 Michael Frysinger
  0 siblings, 0 replies; only message in thread
From: Michael Frysinger @ 2023-01-10  6:27 UTC (permalink / raw)
  To: gdb-cvs

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=5a71cd470ffe6e3f818ed1fba7ce8c3faaae7709

commit 5a71cd470ffe6e3f818ed1fba7ce8c3faaae7709
Author: Mike Frysinger <vapier@gentoo.org>
Date:   Sun Jan 1 14:15:00 2023 -0500

    sim: m68hc11: move arch-specific file compilation to top-level
    
    The arch-specific compiler flags are duplicated, but they'll be cleaned
    up once we move all subdir compiles to the top-level.

Diff:
---
 sim/Makefile.in      |  9 ++++++---
 sim/m68hc11/local.mk | 14 +++++++++++---
 2 files changed, 17 insertions(+), 6 deletions(-)

diff --git a/sim/Makefile.in b/sim/Makefile.in
index 61ee0abd011..0b9dfeb6b22 100644
--- a/sim/Makefile.in
+++ b/sim/Makefile.in
@@ -2522,6 +2522,12 @@ testsuite_common_CPPFLAGS = \
 @SIM_ENABLE_ARCH_m32r_TRUE@	m32r/mloop2.c \
 @SIM_ENABLE_ARCH_m32r_TRUE@	m32r/stamp-mloop-2
 
+@SIM_ENABLE_ARCH_m68hc11_TRUE@AM_CPPFLAGS_m68hc11 = \
+@SIM_ENABLE_ARCH_m68hc11_TRUE@	-DWITH_TARGET_WORD_BITSIZE=32 \
+@SIM_ENABLE_ARCH_m68hc11_TRUE@	-DWITH_TARGET_CELL_BITSIZE=32 \
+@SIM_ENABLE_ARCH_m68hc11_TRUE@	-DWITH_TARGET_ADDRESS_BITSIZE=32 \
+@SIM_ENABLE_ARCH_m68hc11_TRUE@	-DWITH_TARGET_WORD_MSB=31
+
 @SIM_ENABLE_ARCH_m68hc11_TRUE@m68hc11_libsim_a_SOURCES = 
 @SIM_ENABLE_ARCH_m68hc11_TRUE@m68hc11_libsim_a_LIBADD = \
 @SIM_ENABLE_ARCH_m68hc11_TRUE@	$(common_libcommon_a_OBJECTS) \
@@ -5056,9 +5062,6 @@ testsuite/common/bits64m63.c: testsuite/common/bits-gen$(EXEEXT) testsuite/commo
 @SIM_ENABLE_ARCH_m32r_TRUE@m32r/cpu2.h m32r/sem2-switch.c m32r/model2.c m32r/decode2.c m32r/decode2.h: @CGEN_MAINT@ m32r/cgen-cpu-decode-2
 @SIM_ENABLE_ARCH_m68hc11_TRUE@$(m68hc11_libsim_a_OBJECTS) $(m68hc11_libsim_a_LIBADD): m68hc11/hw-config.h
 
-@SIM_ENABLE_ARCH_m68hc11_TRUE@m68hc11/%.o: m68hc11/%.c
-@SIM_ENABLE_ARCH_m68hc11_TRUE@	$(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F)
-
 @SIM_ENABLE_ARCH_m68hc11_TRUE@m68hc11/%.o: common/%.c
 @SIM_ENABLE_ARCH_m68hc11_TRUE@	$(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F)
 @SIM_ENABLE_ARCH_m68hc11_TRUE@m68hc11/modules.c: | $(m68hc11_BUILD_OUTPUTS)
diff --git a/sim/m68hc11/local.mk b/sim/m68hc11/local.mk
index 9b52df6b533..79350c8fc27 100644
--- a/sim/m68hc11/local.mk
+++ b/sim/m68hc11/local.mk
@@ -16,6 +16,17 @@
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+## We must use 32-bit addresses to support memory bank switching.
+## The WORD_BITSIZE is normally 16 but must be switched (temporarily)
+## to 32 to avoid a bug in the sim-common which uses 'unsigned_word'
+## instead of 'address_word' in some places (the result is a truncation
+## of the 32-bit address to 16-bit; and this breaks the simulator).
+AM_CPPFLAGS_%C% = \
+	-DWITH_TARGET_WORD_BITSIZE=32 \
+	-DWITH_TARGET_CELL_BITSIZE=32 \
+	-DWITH_TARGET_ADDRESS_BITSIZE=32 \
+	-DWITH_TARGET_WORD_MSB=31
+
 %C%_libsim_a_SOURCES =
 %C%_libsim_a_LIBADD = \
 	$(common_libcommon_a_OBJECTS) \
@@ -34,9 +45,6 @@ $(%C%_libsim_a_OBJECTS) $(%C%_libsim_a_LIBADD): %D%/hw-config.h
 
 noinst_LIBRARIES += %D%/libsim.a
 
-%D%/%.o: %D%/%.c
-	$(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F)
-
 %D%/%.o: common/%.c
 	$(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F)

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-01-10  6:27 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-10  6:27 [binutils-gdb] sim: m68hc11: move arch-specific file compilation to top-level Michael Frysinger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).