sim: run: move linking into top-level
authorMike Frysinger <vapier@gentoo.org>
Thu, 3 Nov 2022 11:19:13 +0000 (18:19 +0700)
committerMike Frysinger <vapier@gentoo.org>
Sat, 5 Nov 2022 13:00:56 +0000 (20:00 +0700)
Automake will run each subdir individually before moving on to the next
one.  This means that the linking phase, a single threaded process, will
not run in parallel with anything else.  When we have to link ~32 ports,
that's 32 link steps that don't take advantage of parallel systems.  On
my really old 4-core system, this cuts a multi-target build from ~60 sec
to ~30 sec.  We eventually want to move all compile+link steps to this
common dir anyways, so might as well move linking now for a nice speedup.

We use noinst_PROGRAMS instead of bin_PROGRAMS because we're taking care
of the install ourselves rather than letting automake process it.

40 files changed:
sim/Makefile.am
sim/Makefile.in
sim/aarch64/local.mk [new file with mode: 0644]
sim/arm/local.mk
sim/avr/local.mk [new file with mode: 0644]
sim/bfin/local.mk [new file with mode: 0644]
sim/bpf/local.mk
sim/common/Make-common.in
sim/common/local.mk
sim/configure
sim/configure.ac
sim/cr16/local.mk
sim/cris/local.mk
sim/d10v/local.mk
sim/erc32/Makefile.in
sim/erc32/local.mk
sim/example-synacor/local.mk [new file with mode: 0644]
sim/frv/local.mk
sim/ft32/local.mk [new file with mode: 0644]
sim/h8300/local.mk [new file with mode: 0644]
sim/iq2000/local.mk
sim/lm32/local.mk
sim/m32c/local.mk
sim/m32r/local.mk
sim/m68hc11/local.mk
sim/mcore/local.mk [new file with mode: 0644]
sim/microblaze/local.mk [new file with mode: 0644]
sim/mips/local.mk [new file with mode: 0644]
sim/mn10300/local.mk
sim/moxie/local.mk
sim/msp430/local.mk [new file with mode: 0644]
sim/or1k/local.mk
sim/ppc/Makefile.in
sim/ppc/local.mk
sim/pru/local.mk [new file with mode: 0644]
sim/riscv/local.mk [new file with mode: 0644]
sim/rl78/local.mk [new file with mode: 0644]
sim/rx/local.mk
sim/sh/local.mk
sim/v850/local.mk

index 4e4068a3539ff5f950dbdbff6132c2be5867fbc9..64847bc7abb3c66a05c3da8b77ca61cf7bef16bc 100644 (file)
@@ -33,6 +33,7 @@ AM_MAKEFLAGS = SIM_PRIMARY_TARGET=$(SIM_PRIMARY_TARGET)
 ## be used consistently in local.mk files we include below.
 pkginclude_HEADERS =
 check_PROGRAMS =
+noinst_PROGRAMS =
 noinst_LIBRARIES =
 EXTRA_PROGRAMS =
 
@@ -85,9 +86,19 @@ include igen/local.mk
 endif
 include testsuite/local.mk
 
+## Arch includes must come after common/local.mk.
+if SIM_ENABLE_ARCH_aarch64
+include aarch64/local.mk
+endif
 if SIM_ENABLE_ARCH_arm
 include arm/local.mk
 endif
+if SIM_ENABLE_ARCH_avr
+include avr/local.mk
+endif
+if SIM_ENABLE_ARCH_bfin
+include bfin/local.mk
+endif
 if SIM_ENABLE_ARCH_bpf
 include bpf/local.mk
 endif
@@ -103,9 +114,18 @@ endif
 if SIM_ENABLE_ARCH_erc32
 include erc32/local.mk
 endif
+if SIM_ENABLE_ARCH_examples
+include example-synacor/local.mk
+endif
 if SIM_ENABLE_ARCH_frv
 include frv/local.mk
 endif
+if SIM_ENABLE_ARCH_ft32
+include ft32/local.mk
+endif
+if SIM_ENABLE_ARCH_h8300
+include h8300/local.mk
+endif
 if SIM_ENABLE_ARCH_iq2000
 include iq2000/local.mk
 endif
@@ -121,18 +141,39 @@ endif
 if SIM_ENABLE_ARCH_m68hc11
 include m68hc11/local.mk
 endif
+if SIM_ENABLE_ARCH_mcore
+include mcore/local.mk
+endif
+if SIM_ENABLE_ARCH_microblaze
+include microblaze/local.mk
+endif
+if SIM_ENABLE_ARCH_mips
+include mips/local.mk
+endif
 if SIM_ENABLE_ARCH_mn10300
 include mn10300/local.mk
 endif
 if SIM_ENABLE_ARCH_moxie
 include moxie/local.mk
 endif
+if SIM_ENABLE_ARCH_msp430
+include msp430/local.mk
+endif
 if SIM_ENABLE_ARCH_or1k
 include or1k/local.mk
 endif
 if SIM_ENABLE_ARCH_ppc
 include ppc/local.mk
 endif
+if SIM_ENABLE_ARCH_pru
+include pru/local.mk
+endif
+if SIM_ENABLE_ARCH_riscv
+include riscv/local.mk
+endif
+if SIM_ENABLE_ARCH_rl78
+include rl78/local.mk
+endif
 if SIM_ENABLE_ARCH_rx
 include rx/local.mk
 endif
@@ -143,6 +184,15 @@ if SIM_ENABLE_ARCH_v850
 include v850/local.mk
 endif
 
+## Helper targets for running make from the top-level when some subdirs still
+## have Makefiles in subdirs.
+
+%/libsim.a: | $(SIM_ALL_RECURSIVE_DEPS)
+       $(MAKE) -C $(@D) $(@F)
+
+%/nrun.o: common/nrun.c | %/libsim.a $(SIM_ALL_RECURSIVE_DEPS)
+       $(MAKE) -C $(@D) $(@F)
+
 all-recursive: $(SIM_ALL_RECURSIVE_DEPS)
 
 install-data-local: installdirs $(SIM_INSTALL_DATA_LOCAL_DEPS)
index e9ba210c2bbdb655b2ecdc16ebeba63f2edf2d2d..abf852589cf7c87c1b0cbacadbea54e7bc06d31a 100644 (file)
@@ -31,6 +31,7 @@
 
 
 
+
 VPATH = @srcdir@
 am__is_gnu_make = { \
   if test -z '$(MAKELEVEL)'; then \
@@ -107,6 +108,17 @@ build_triplet = @build@
 host_triplet = @host@
 target_triplet = @target@
 check_PROGRAMS = $(am__EXEEXT_8) $(am__EXEEXT_9)
+noinst_PROGRAMS = $(am__EXEEXT_10) $(am__EXEEXT_11) $(am__EXEEXT_12) \
+       $(am__EXEEXT_13) $(am__EXEEXT_14) $(am__EXEEXT_15) \
+       $(am__EXEEXT_16) $(am__EXEEXT_17) $(am__EXEEXT_18) \
+       $(am__EXEEXT_19) $(am__EXEEXT_20) $(am__EXEEXT_21) \
+       $(am__EXEEXT_22) $(am__EXEEXT_23) $(am__EXEEXT_24) \
+       $(am__EXEEXT_25) $(am__EXEEXT_26) $(am__EXEEXT_27) \
+       $(am__EXEEXT_28) $(am__EXEEXT_29) $(am__EXEEXT_30) \
+       $(am__EXEEXT_31) $(am__EXEEXT_32) $(am__EXEEXT_33) \
+       $(am__EXEEXT_34) $(am__EXEEXT_35) $(am__EXEEXT_36) \
+       $(am__EXEEXT_37) $(am__EXEEXT_38) $(am__EXEEXT_39) \
+       $(am__EXEEXT_40) $(am__EXEEXT_41)
 EXTRA_PROGRAMS = $(am__EXEEXT_2) testsuite/common/bits-gen$(EXEEXT) \
        testsuite/common/fpu-tst$(EXEEXT) $(am__EXEEXT_3) \
        $(am__EXEEXT_4) $(am__EXEEXT_5) $(am__EXEEXT_6) \
@@ -124,47 +136,78 @@ TESTS = testsuite/common/bits32m0$(EXEEXT) \
        testsuite/common/bits64m0$(EXEEXT) \
        testsuite/common/bits64m63$(EXEEXT) \
        testsuite/common/alu-tst$(EXEEXT)
-@SIM_ENABLE_ARCH_bpf_TRUE@am__append_6 = $(bpf_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_bpf_TRUE@am__append_7 = $(bpf_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_cr16_TRUE@am__append_8 = $(cr16_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_cr16_TRUE@am__append_9 = cr16/gencode
-@SIM_ENABLE_ARCH_cr16_TRUE@am__append_10 = $(cr16_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_cris_TRUE@am__append_11 = cris/rvdummy
-@SIM_ENABLE_ARCH_cris_TRUE@am__append_12 = $(cris_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_cris_TRUE@am__append_13 = $(cris_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_d10v_TRUE@am__append_14 = $(d10v_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_d10v_TRUE@am__append_15 = d10v/gencode
-@SIM_ENABLE_ARCH_d10v_TRUE@am__append_16 = $(d10v_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_erc32_TRUE@am__append_17 = sim-%D-install-exec-local
-@SIM_ENABLE_ARCH_erc32_TRUE@am__append_18 = sim-erc32-uninstall-local
-@SIM_ENABLE_ARCH_frv_TRUE@am__append_19 = $(frv_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_frv_TRUE@am__append_20 = $(frv_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_iq2000_TRUE@am__append_21 = $(iq2000_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_iq2000_TRUE@am__append_22 = $(iq2000_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_lm32_TRUE@am__append_23 = $(lm32_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_lm32_TRUE@am__append_24 = $(lm32_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_m32c_TRUE@am__append_25 = $(m32c_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_m32c_TRUE@am__append_26 = m32c/opc2c
-@SIM_ENABLE_ARCH_m32c_TRUE@am__append_27 = \
+@SIM_ENABLE_ARCH_aarch64_TRUE@am__append_6 = aarch64/run
+@SIM_ENABLE_ARCH_arm_TRUE@am__append_7 = arm/run
+@SIM_ENABLE_ARCH_avr_TRUE@am__append_8 = avr/run
+@SIM_ENABLE_ARCH_bfin_TRUE@am__append_9 = bfin/run
+@SIM_ENABLE_ARCH_bpf_TRUE@am__append_10 = bpf/run
+@SIM_ENABLE_ARCH_bpf_TRUE@am__append_11 = $(bpf_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_bpf_TRUE@am__append_12 = $(bpf_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_cr16_TRUE@am__append_13 = cr16/run
+@SIM_ENABLE_ARCH_cr16_TRUE@am__append_14 = $(cr16_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_cr16_TRUE@am__append_15 = cr16/gencode
+@SIM_ENABLE_ARCH_cr16_TRUE@am__append_16 = $(cr16_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_cris_TRUE@am__append_17 = cris/run
+@SIM_ENABLE_ARCH_cris_TRUE@am__append_18 = cris/rvdummy
+@SIM_ENABLE_ARCH_cris_TRUE@am__append_19 = $(cris_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_cris_TRUE@am__append_20 = $(cris_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_d10v_TRUE@am__append_21 = d10v/run
+@SIM_ENABLE_ARCH_d10v_TRUE@am__append_22 = $(d10v_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_d10v_TRUE@am__append_23 = d10v/gencode
+@SIM_ENABLE_ARCH_d10v_TRUE@am__append_24 = $(d10v_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_erc32_TRUE@am__append_25 = erc32/run erc32/sis
+@SIM_ENABLE_ARCH_erc32_TRUE@am__append_26 = sim-%D-install-exec-local
+@SIM_ENABLE_ARCH_erc32_TRUE@am__append_27 = sim-erc32-uninstall-local
+@SIM_ENABLE_ARCH_examples_TRUE@am__append_28 = example-synacor/run
+@SIM_ENABLE_ARCH_frv_TRUE@am__append_29 = frv/run
+@SIM_ENABLE_ARCH_frv_TRUE@am__append_30 = $(frv_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_frv_TRUE@am__append_31 = $(frv_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_ft32_TRUE@am__append_32 = ft32/run
+@SIM_ENABLE_ARCH_h8300_TRUE@am__append_33 = h8300/run
+@SIM_ENABLE_ARCH_iq2000_TRUE@am__append_34 = iq2000/run
+@SIM_ENABLE_ARCH_iq2000_TRUE@am__append_35 = $(iq2000_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_iq2000_TRUE@am__append_36 = $(iq2000_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_lm32_TRUE@am__append_37 = lm32/run
+@SIM_ENABLE_ARCH_lm32_TRUE@am__append_38 = $(lm32_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_lm32_TRUE@am__append_39 = $(lm32_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_m32c_TRUE@am__append_40 = m32c/run
+@SIM_ENABLE_ARCH_m32c_TRUE@am__append_41 = $(m32c_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_m32c_TRUE@am__append_42 = m32c/opc2c
+@SIM_ENABLE_ARCH_m32c_TRUE@am__append_43 = \
 @SIM_ENABLE_ARCH_m32c_TRUE@    $(m32c_BUILD_OUTPUTS) \
 @SIM_ENABLE_ARCH_m32c_TRUE@    m32c/m32c.c.log \
 @SIM_ENABLE_ARCH_m32c_TRUE@    m32c/r8c.c.log
 
-@SIM_ENABLE_ARCH_m32r_TRUE@am__append_28 = $(m32r_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_m32r_TRUE@am__append_29 = $(m32r_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_m68hc11_TRUE@am__append_30 = $(m68hc11_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_m68hc11_TRUE@am__append_31 = m68hc11/gencode
-@SIM_ENABLE_ARCH_m68hc11_TRUE@am__append_32 = $(m68hc11_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_mn10300_TRUE@am__append_33 = $(mn10300_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_mn10300_TRUE@am__append_34 = $(mn10300_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_moxie_TRUE@am__append_35 = moxie/$(am__dirstamp)
-@SIM_ENABLE_ARCH_or1k_TRUE@am__append_36 = $(or1k_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_or1k_TRUE@am__append_37 = $(or1k_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_sh_TRUE@am__append_38 = $(sh_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_sh_TRUE@am__append_39 = sh/gencode
-@SIM_ENABLE_ARCH_sh_TRUE@am__append_40 = $(sh_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_v850_TRUE@am__append_41 = $(v850_BUILD_OUTPUTS)
-@SIM_ENABLE_ARCH_v850_TRUE@am__append_42 = $(v850_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_m32r_TRUE@am__append_44 = m32r/run
+@SIM_ENABLE_ARCH_m32r_TRUE@am__append_45 = $(m32r_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_m32r_TRUE@am__append_46 = $(m32r_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_m68hc11_TRUE@am__append_47 = m68hc11/run
+@SIM_ENABLE_ARCH_m68hc11_TRUE@am__append_48 = $(m68hc11_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_m68hc11_TRUE@am__append_49 = m68hc11/gencode
+@SIM_ENABLE_ARCH_m68hc11_TRUE@am__append_50 = $(m68hc11_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_mcore_TRUE@am__append_51 = mcore/run
+@SIM_ENABLE_ARCH_microblaze_TRUE@am__append_52 = microblaze/run
+@SIM_ENABLE_ARCH_mips_TRUE@am__append_53 = mips/run
+@SIM_ENABLE_ARCH_mn10300_TRUE@am__append_54 = mn10300/run
+@SIM_ENABLE_ARCH_mn10300_TRUE@am__append_55 = $(mn10300_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_mn10300_TRUE@am__append_56 = $(mn10300_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_moxie_TRUE@am__append_57 = moxie/run
+@SIM_ENABLE_ARCH_msp430_TRUE@am__append_58 = msp430/run
+@SIM_ENABLE_ARCH_or1k_TRUE@am__append_59 = or1k/run
+@SIM_ENABLE_ARCH_or1k_TRUE@am__append_60 = $(or1k_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_or1k_TRUE@am__append_61 = $(or1k_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_ppc_TRUE@am__append_62 = ppc/run ppc/psim
+@SIM_ENABLE_ARCH_pru_TRUE@am__append_63 = pru/run
+@SIM_ENABLE_ARCH_riscv_TRUE@am__append_64 = riscv/run
+@SIM_ENABLE_ARCH_rl78_TRUE@am__append_65 = rl78/run
+@SIM_ENABLE_ARCH_rx_TRUE@am__append_66 = rx/run
+@SIM_ENABLE_ARCH_sh_TRUE@am__append_67 = sh/run
+@SIM_ENABLE_ARCH_sh_TRUE@am__append_68 = $(sh_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_sh_TRUE@am__append_69 = sh/gencode
+@SIM_ENABLE_ARCH_sh_TRUE@am__append_70 = $(sh_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_v850_TRUE@am__append_71 = v850/run
+@SIM_ENABLE_ARCH_v850_TRUE@am__append_72 = $(v850_BUILD_OUTPUTS)
+@SIM_ENABLE_ARCH_v850_TRUE@am__append_73 = $(v850_BUILD_OUTPUTS)
 subdir = .
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
@@ -271,24 +314,127 @@ am__EXEEXT_8 = testsuite/common/bits32m0$(EXEEXT) \
        testsuite/common/bits64m63$(EXEEXT) \
        testsuite/common/alu-tst$(EXEEXT)
 @SIM_ENABLE_ARCH_cris_TRUE@am__EXEEXT_9 = cris/rvdummy$(EXEEXT)
+@SIM_ENABLE_ARCH_aarch64_TRUE@am__EXEEXT_10 = aarch64/run$(EXEEXT)
+@SIM_ENABLE_ARCH_arm_TRUE@am__EXEEXT_11 = arm/run$(EXEEXT)
+@SIM_ENABLE_ARCH_avr_TRUE@am__EXEEXT_12 = avr/run$(EXEEXT)
+@SIM_ENABLE_ARCH_bfin_TRUE@am__EXEEXT_13 = bfin/run$(EXEEXT)
+@SIM_ENABLE_ARCH_bpf_TRUE@am__EXEEXT_14 = bpf/run$(EXEEXT)
+@SIM_ENABLE_ARCH_cr16_TRUE@am__EXEEXT_15 = cr16/run$(EXEEXT)
+@SIM_ENABLE_ARCH_cris_TRUE@am__EXEEXT_16 = cris/run$(EXEEXT)
+@SIM_ENABLE_ARCH_d10v_TRUE@am__EXEEXT_17 = d10v/run$(EXEEXT)
+@SIM_ENABLE_ARCH_erc32_TRUE@am__EXEEXT_18 = erc32/run$(EXEEXT) \
+@SIM_ENABLE_ARCH_erc32_TRUE@   erc32/sis$(EXEEXT)
+@SIM_ENABLE_ARCH_examples_TRUE@am__EXEEXT_19 =  \
+@SIM_ENABLE_ARCH_examples_TRUE@        example-synacor/run$(EXEEXT)
+@SIM_ENABLE_ARCH_frv_TRUE@am__EXEEXT_20 = frv/run$(EXEEXT)
+@SIM_ENABLE_ARCH_ft32_TRUE@am__EXEEXT_21 = ft32/run$(EXEEXT)
+@SIM_ENABLE_ARCH_h8300_TRUE@am__EXEEXT_22 = h8300/run$(EXEEXT)
+@SIM_ENABLE_ARCH_iq2000_TRUE@am__EXEEXT_23 = iq2000/run$(EXEEXT)
+@SIM_ENABLE_ARCH_lm32_TRUE@am__EXEEXT_24 = lm32/run$(EXEEXT)
+@SIM_ENABLE_ARCH_m32c_TRUE@am__EXEEXT_25 = m32c/run$(EXEEXT)
+@SIM_ENABLE_ARCH_m32r_TRUE@am__EXEEXT_26 = m32r/run$(EXEEXT)
+@SIM_ENABLE_ARCH_m68hc11_TRUE@am__EXEEXT_27 = m68hc11/run$(EXEEXT)
+@SIM_ENABLE_ARCH_mcore_TRUE@am__EXEEXT_28 = mcore/run$(EXEEXT)
+@SIM_ENABLE_ARCH_microblaze_TRUE@am__EXEEXT_29 =  \
+@SIM_ENABLE_ARCH_microblaze_TRUE@      microblaze/run$(EXEEXT)
+@SIM_ENABLE_ARCH_mips_TRUE@am__EXEEXT_30 = mips/run$(EXEEXT)
+@SIM_ENABLE_ARCH_mn10300_TRUE@am__EXEEXT_31 = mn10300/run$(EXEEXT)
+@SIM_ENABLE_ARCH_moxie_TRUE@am__EXEEXT_32 = moxie/run$(EXEEXT)
+@SIM_ENABLE_ARCH_msp430_TRUE@am__EXEEXT_33 = msp430/run$(EXEEXT)
+@SIM_ENABLE_ARCH_or1k_TRUE@am__EXEEXT_34 = or1k/run$(EXEEXT)
+@SIM_ENABLE_ARCH_ppc_TRUE@am__EXEEXT_35 = ppc/run$(EXEEXT) \
+@SIM_ENABLE_ARCH_ppc_TRUE@     ppc/psim$(EXEEXT)
+@SIM_ENABLE_ARCH_pru_TRUE@am__EXEEXT_36 = pru/run$(EXEEXT)
+@SIM_ENABLE_ARCH_riscv_TRUE@am__EXEEXT_37 = riscv/run$(EXEEXT)
+@SIM_ENABLE_ARCH_rl78_TRUE@am__EXEEXT_38 = rl78/run$(EXEEXT)
+@SIM_ENABLE_ARCH_rx_TRUE@am__EXEEXT_39 = rx/run$(EXEEXT)
+@SIM_ENABLE_ARCH_sh_TRUE@am__EXEEXT_40 = sh/run$(EXEEXT)
+@SIM_ENABLE_ARCH_v850_TRUE@am__EXEEXT_41 = v850/run$(EXEEXT)
+PROGRAMS = $(noinst_PROGRAMS)
+am_aarch64_run_OBJECTS =
+aarch64_run_OBJECTS = $(am_aarch64_run_OBJECTS)
+am__DEPENDENCIES_1 = $(SIM_COMMON_LIB) $(BFD_LIB) $(OPCODES_LIB) \
+       $(LIBIBERTY_LIB)
+@SIM_ENABLE_ARCH_aarch64_TRUE@aarch64_run_DEPENDENCIES =  \
+@SIM_ENABLE_ARCH_aarch64_TRUE@ aarch64/nrun.o aarch64/libsim.a \
+@SIM_ENABLE_ARCH_aarch64_TRUE@ $(am__DEPENDENCIES_1)
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 = 
+am_arm_run_OBJECTS =
+arm_run_OBJECTS = $(am_arm_run_OBJECTS)
+@SIM_ENABLE_ARCH_arm_TRUE@arm_run_DEPENDENCIES = arm/nrun.o \
+@SIM_ENABLE_ARCH_arm_TRUE@     arm/libsim.a $(am__DEPENDENCIES_1)
+am_avr_run_OBJECTS =
+avr_run_OBJECTS = $(am_avr_run_OBJECTS)
+@SIM_ENABLE_ARCH_avr_TRUE@avr_run_DEPENDENCIES = avr/nrun.o \
+@SIM_ENABLE_ARCH_avr_TRUE@     avr/libsim.a $(am__DEPENDENCIES_1)
+am_bfin_run_OBJECTS =
+bfin_run_OBJECTS = $(am_bfin_run_OBJECTS)
+@SIM_ENABLE_ARCH_bfin_TRUE@bfin_run_DEPENDENCIES = bfin/nrun.o \
+@SIM_ENABLE_ARCH_bfin_TRUE@    bfin/libsim.a $(am__DEPENDENCIES_1)
+am_bpf_run_OBJECTS =
+bpf_run_OBJECTS = $(am_bpf_run_OBJECTS)
+@SIM_ENABLE_ARCH_bpf_TRUE@bpf_run_DEPENDENCIES = bpf/nrun.o \
+@SIM_ENABLE_ARCH_bpf_TRUE@     bpf/libsim.a $(am__DEPENDENCIES_1)
 @SIM_ENABLE_ARCH_cr16_TRUE@am_cr16_gencode_OBJECTS =  \
 @SIM_ENABLE_ARCH_cr16_TRUE@    cr16/gencode.$(OBJEXT)
 cr16_gencode_OBJECTS = $(am_cr16_gencode_OBJECTS)
 @SIM_ENABLE_ARCH_cr16_TRUE@cr16_gencode_DEPENDENCIES =  \
 @SIM_ENABLE_ARCH_cr16_TRUE@    cr16/cr16-opc.o
-AM_V_lt = $(am__v_lt_@AM_V@)
-am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
-am__v_lt_0 = --silent
-am__v_lt_1 = 
+am_cr16_run_OBJECTS =
+cr16_run_OBJECTS = $(am_cr16_run_OBJECTS)
+@SIM_ENABLE_ARCH_cr16_TRUE@cr16_run_DEPENDENCIES = cr16/nrun.o \
+@SIM_ENABLE_ARCH_cr16_TRUE@    cr16/libsim.a $(am__DEPENDENCIES_1)
+am_cris_run_OBJECTS =
+cris_run_OBJECTS = $(am_cris_run_OBJECTS)
+@SIM_ENABLE_ARCH_cris_TRUE@cris_run_DEPENDENCIES = cris/nrun.o \
+@SIM_ENABLE_ARCH_cris_TRUE@    cris/libsim.a $(am__DEPENDENCIES_1)
 @SIM_ENABLE_ARCH_cris_TRUE@am_cris_rvdummy_OBJECTS =  \
 @SIM_ENABLE_ARCH_cris_TRUE@    cris/rvdummy.$(OBJEXT)
 cris_rvdummy_OBJECTS = $(am_cris_rvdummy_OBJECTS)
-cris_rvdummy_DEPENDENCIES =
+@SIM_ENABLE_ARCH_cris_TRUE@cris_rvdummy_DEPENDENCIES =  \
+@SIM_ENABLE_ARCH_cris_TRUE@    $(LIBIBERTY_LIB)
 @SIM_ENABLE_ARCH_d10v_TRUE@am_d10v_gencode_OBJECTS =  \
 @SIM_ENABLE_ARCH_d10v_TRUE@    d10v/gencode.$(OBJEXT)
 d10v_gencode_OBJECTS = $(am_d10v_gencode_OBJECTS)
 @SIM_ENABLE_ARCH_d10v_TRUE@d10v_gencode_DEPENDENCIES =  \
 @SIM_ENABLE_ARCH_d10v_TRUE@    d10v/d10v-opc.o
+am_d10v_run_OBJECTS =
+d10v_run_OBJECTS = $(am_d10v_run_OBJECTS)
+@SIM_ENABLE_ARCH_d10v_TRUE@d10v_run_DEPENDENCIES = d10v/nrun.o \
+@SIM_ENABLE_ARCH_d10v_TRUE@    d10v/libsim.a $(am__DEPENDENCIES_1)
+am_erc32_run_OBJECTS =
+erc32_run_OBJECTS = $(am_erc32_run_OBJECTS)
+am__DEPENDENCIES_2 =
+@SIM_ENABLE_ARCH_erc32_TRUE@erc32_run_DEPENDENCIES = erc32/sis.o \
+@SIM_ENABLE_ARCH_erc32_TRUE@   erc32/libsim.a \
+@SIM_ENABLE_ARCH_erc32_TRUE@   $(am__DEPENDENCIES_1) \
+@SIM_ENABLE_ARCH_erc32_TRUE@   $(am__DEPENDENCIES_2) \
+@SIM_ENABLE_ARCH_erc32_TRUE@   $(am__DEPENDENCIES_2)
+erc32_sis_SOURCES = erc32/sis.c
+erc32_sis_OBJECTS = erc32/sis.$(OBJEXT)
+erc32_sis_LDADD = $(LDADD)
+am_example_synacor_run_OBJECTS =
+example_synacor_run_OBJECTS = $(am_example_synacor_run_OBJECTS)
+@SIM_ENABLE_ARCH_examples_TRUE@example_synacor_run_DEPENDENCIES =  \
+@SIM_ENABLE_ARCH_examples_TRUE@        example-synacor/nrun.o \
+@SIM_ENABLE_ARCH_examples_TRUE@        example-synacor/libsim.a \
+@SIM_ENABLE_ARCH_examples_TRUE@        $(am__DEPENDENCIES_1)
+am_frv_run_OBJECTS =
+frv_run_OBJECTS = $(am_frv_run_OBJECTS)
+@SIM_ENABLE_ARCH_frv_TRUE@frv_run_DEPENDENCIES = frv/nrun.o \
+@SIM_ENABLE_ARCH_frv_TRUE@     frv/libsim.a $(am__DEPENDENCIES_1)
+am_ft32_run_OBJECTS =
+ft32_run_OBJECTS = $(am_ft32_run_OBJECTS)
+@SIM_ENABLE_ARCH_ft32_TRUE@ft32_run_DEPENDENCIES = ft32/nrun.o \
+@SIM_ENABLE_ARCH_ft32_TRUE@    ft32/libsim.a $(am__DEPENDENCIES_1)
+am_h8300_run_OBJECTS =
+h8300_run_OBJECTS = $(am_h8300_run_OBJECTS)
+@SIM_ENABLE_ARCH_h8300_TRUE@h8300_run_DEPENDENCIES = h8300/nrun.o \
+@SIM_ENABLE_ARCH_h8300_TRUE@   h8300/libsim.a \
+@SIM_ENABLE_ARCH_h8300_TRUE@   $(am__DEPENDENCIES_1)
 am_igen_filter_OBJECTS =
 igen_filter_OBJECTS = $(am_igen_filter_OBJECTS)
 @SIM_ENABLE_IGEN_TRUE@igen_filter_DEPENDENCIES = igen/filter-main.o \
@@ -316,17 +462,101 @@ am_igen_table_OBJECTS =
 igen_table_OBJECTS = $(am_igen_table_OBJECTS)
 @SIM_ENABLE_IGEN_TRUE@igen_table_DEPENDENCIES = igen/table-main.o \
 @SIM_ENABLE_IGEN_TRUE@ igen/libigen.a
+am_iq2000_run_OBJECTS =
+iq2000_run_OBJECTS = $(am_iq2000_run_OBJECTS)
+@SIM_ENABLE_ARCH_iq2000_TRUE@iq2000_run_DEPENDENCIES = iq2000/nrun.o \
+@SIM_ENABLE_ARCH_iq2000_TRUE@  iq2000/libsim.a \
+@SIM_ENABLE_ARCH_iq2000_TRUE@  $(am__DEPENDENCIES_1)
+am_lm32_run_OBJECTS =
+lm32_run_OBJECTS = $(am_lm32_run_OBJECTS)
+@SIM_ENABLE_ARCH_lm32_TRUE@lm32_run_DEPENDENCIES = lm32/nrun.o \
+@SIM_ENABLE_ARCH_lm32_TRUE@    lm32/libsim.a $(am__DEPENDENCIES_1)
 @SIM_ENABLE_ARCH_m32c_TRUE@am_m32c_opc2c_OBJECTS =  \
 @SIM_ENABLE_ARCH_m32c_TRUE@    m32c/opc2c.$(OBJEXT)
 m32c_opc2c_OBJECTS = $(am_m32c_opc2c_OBJECTS)
 m32c_opc2c_LDADD = $(LDADD)
+am_m32c_run_OBJECTS =
+m32c_run_OBJECTS = $(am_m32c_run_OBJECTS)
+@SIM_ENABLE_ARCH_m32c_TRUE@m32c_run_DEPENDENCIES = m32c/main.o \
+@SIM_ENABLE_ARCH_m32c_TRUE@    m32c/libsim.a $(am__DEPENDENCIES_1)
+am_m32r_run_OBJECTS =
+m32r_run_OBJECTS = $(am_m32r_run_OBJECTS)
+@SIM_ENABLE_ARCH_m32r_TRUE@m32r_run_DEPENDENCIES = m32r/nrun.o \
+@SIM_ENABLE_ARCH_m32r_TRUE@    m32r/libsim.a $(am__DEPENDENCIES_1)
 @SIM_ENABLE_ARCH_m68hc11_TRUE@am_m68hc11_gencode_OBJECTS =  \
 @SIM_ENABLE_ARCH_m68hc11_TRUE@ m68hc11/gencode.$(OBJEXT)
 m68hc11_gencode_OBJECTS = $(am_m68hc11_gencode_OBJECTS)
 m68hc11_gencode_LDADD = $(LDADD)
+am_m68hc11_run_OBJECTS =
+m68hc11_run_OBJECTS = $(am_m68hc11_run_OBJECTS)
+@SIM_ENABLE_ARCH_m68hc11_TRUE@m68hc11_run_DEPENDENCIES =  \
+@SIM_ENABLE_ARCH_m68hc11_TRUE@ m68hc11/nrun.o m68hc11/libsim.a \
+@SIM_ENABLE_ARCH_m68hc11_TRUE@ $(am__DEPENDENCIES_1)
+am_mcore_run_OBJECTS =
+mcore_run_OBJECTS = $(am_mcore_run_OBJECTS)
+@SIM_ENABLE_ARCH_mcore_TRUE@mcore_run_DEPENDENCIES = mcore/nrun.o \
+@SIM_ENABLE_ARCH_mcore_TRUE@   mcore/libsim.a \
+@SIM_ENABLE_ARCH_mcore_TRUE@   $(am__DEPENDENCIES_1)
+am_microblaze_run_OBJECTS =
+microblaze_run_OBJECTS = $(am_microblaze_run_OBJECTS)
+@SIM_ENABLE_ARCH_microblaze_TRUE@microblaze_run_DEPENDENCIES =  \
+@SIM_ENABLE_ARCH_microblaze_TRUE@      microblaze/nrun.o \
+@SIM_ENABLE_ARCH_microblaze_TRUE@      microblaze/libsim.a \
+@SIM_ENABLE_ARCH_microblaze_TRUE@      $(am__DEPENDENCIES_1)
+am_mips_run_OBJECTS =
+mips_run_OBJECTS = $(am_mips_run_OBJECTS)
+@SIM_ENABLE_ARCH_mips_TRUE@mips_run_DEPENDENCIES = mips/nrun.o \
+@SIM_ENABLE_ARCH_mips_TRUE@    mips/libsim.a $(am__DEPENDENCIES_1)
+am_mn10300_run_OBJECTS =
+mn10300_run_OBJECTS = $(am_mn10300_run_OBJECTS)
+@SIM_ENABLE_ARCH_mn10300_TRUE@mn10300_run_DEPENDENCIES =  \
+@SIM_ENABLE_ARCH_mn10300_TRUE@ mn10300/nrun.o mn10300/libsim.a \
+@SIM_ENABLE_ARCH_mn10300_TRUE@ $(am__DEPENDENCIES_1)
+am_moxie_run_OBJECTS =
+moxie_run_OBJECTS = $(am_moxie_run_OBJECTS)
+@SIM_ENABLE_ARCH_moxie_TRUE@moxie_run_DEPENDENCIES = moxie/nrun.o \
+@SIM_ENABLE_ARCH_moxie_TRUE@   moxie/libsim.a \
+@SIM_ENABLE_ARCH_moxie_TRUE@   $(am__DEPENDENCIES_1)
+am_msp430_run_OBJECTS =
+msp430_run_OBJECTS = $(am_msp430_run_OBJECTS)
+@SIM_ENABLE_ARCH_msp430_TRUE@msp430_run_DEPENDENCIES = msp430/nrun.o \
+@SIM_ENABLE_ARCH_msp430_TRUE@  msp430/libsim.a \
+@SIM_ENABLE_ARCH_msp430_TRUE@  $(am__DEPENDENCIES_1)
+am_or1k_run_OBJECTS =
+or1k_run_OBJECTS = $(am_or1k_run_OBJECTS)
+@SIM_ENABLE_ARCH_or1k_TRUE@or1k_run_DEPENDENCIES = or1k/nrun.o \
+@SIM_ENABLE_ARCH_or1k_TRUE@    or1k/libsim.a $(am__DEPENDENCIES_1)
+ppc_psim_SOURCES = ppc/psim.c
+ppc_psim_OBJECTS = ppc/psim.$(OBJEXT)
+ppc_psim_LDADD = $(LDADD)
+am_ppc_run_OBJECTS =
+ppc_run_OBJECTS = $(am_ppc_run_OBJECTS)
+@SIM_ENABLE_ARCH_ppc_TRUE@ppc_run_DEPENDENCIES = ppc/main.o \
+@SIM_ENABLE_ARCH_ppc_TRUE@     ppc/libsim.a $(am__DEPENDENCIES_1)
+am_pru_run_OBJECTS =
+pru_run_OBJECTS = $(am_pru_run_OBJECTS)
+@SIM_ENABLE_ARCH_pru_TRUE@pru_run_DEPENDENCIES = pru/nrun.o \
+@SIM_ENABLE_ARCH_pru_TRUE@     pru/libsim.a $(am__DEPENDENCIES_1)
+am_riscv_run_OBJECTS =
+riscv_run_OBJECTS = $(am_riscv_run_OBJECTS)
+@SIM_ENABLE_ARCH_riscv_TRUE@riscv_run_DEPENDENCIES = riscv/nrun.o \
+@SIM_ENABLE_ARCH_riscv_TRUE@   riscv/libsim.a \
+@SIM_ENABLE_ARCH_riscv_TRUE@   $(am__DEPENDENCIES_1)
+am_rl78_run_OBJECTS =
+rl78_run_OBJECTS = $(am_rl78_run_OBJECTS)
+@SIM_ENABLE_ARCH_rl78_TRUE@rl78_run_DEPENDENCIES = rl78/main.o \
+@SIM_ENABLE_ARCH_rl78_TRUE@    rl78/libsim.a $(am__DEPENDENCIES_1)
+am_rx_run_OBJECTS =
+rx_run_OBJECTS = $(am_rx_run_OBJECTS)
+@SIM_ENABLE_ARCH_rx_TRUE@rx_run_DEPENDENCIES = rx/main.o rx/libsim.a \
+@SIM_ENABLE_ARCH_rx_TRUE@      $(am__DEPENDENCIES_1)
 @SIM_ENABLE_ARCH_sh_TRUE@am_sh_gencode_OBJECTS = sh/gencode.$(OBJEXT)
 sh_gencode_OBJECTS = $(am_sh_gencode_OBJECTS)
 sh_gencode_LDADD = $(LDADD)
+am_sh_run_OBJECTS =
+sh_run_OBJECTS = $(am_sh_run_OBJECTS)
+@SIM_ENABLE_ARCH_sh_TRUE@sh_run_DEPENDENCIES = sh/nrun.o sh/libsim.a \
+@SIM_ENABLE_ARCH_sh_TRUE@      $(am__DEPENDENCIES_1)
 testsuite_common_alu_tst_SOURCES = testsuite/common/alu-tst.c
 testsuite_common_alu_tst_OBJECTS = testsuite/common/alu-tst.$(OBJEXT)
 testsuite_common_alu_tst_LDADD = $(LDADD)
@@ -353,6 +583,10 @@ testsuite_common_bits64m63_LDADD = $(LDADD)
 testsuite_common_fpu_tst_SOURCES = testsuite/common/fpu-tst.c
 testsuite_common_fpu_tst_OBJECTS = testsuite/common/fpu-tst.$(OBJEXT)
 testsuite_common_fpu_tst_LDADD = $(LDADD)
+am_v850_run_OBJECTS =
+v850_run_OBJECTS = $(am_v850_run_OBJECTS)
+@SIM_ENABLE_ARCH_v850_TRUE@v850_run_DEPENDENCIES = v850/nrun.o \
+@SIM_ENABLE_ARCH_v850_TRUE@    v850/libsim.a $(am__DEPENDENCIES_1)
 AM_V_P = $(am__v_P_@AM_V@)
 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
 am__v_P_0 = false
@@ -388,16 +622,30 @@ am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
 am__v_CCLD_0 = @echo "  CCLD    " $@;
 am__v_CCLD_1 = 
 SOURCES = $(common_libcommon_a_SOURCES) $(igen_libigen_a_SOURCES) \
-       $(cr16_gencode_SOURCES) $(cris_rvdummy_SOURCES) \
-       $(d10v_gencode_SOURCES) $(igen_filter_SOURCES) \
-       $(igen_gen_SOURCES) $(igen_igen_SOURCES) \
-       $(igen_ld_cache_SOURCES) $(igen_ld_decode_SOURCES) \
-       $(igen_ld_insn_SOURCES) $(igen_table_SOURCES) \
-       $(m32c_opc2c_SOURCES) $(m68hc11_gencode_SOURCES) \
-       $(sh_gencode_SOURCES) testsuite/common/alu-tst.c \
+       $(aarch64_run_SOURCES) $(arm_run_SOURCES) $(avr_run_SOURCES) \
+       $(bfin_run_SOURCES) $(bpf_run_SOURCES) $(cr16_gencode_SOURCES) \
+       $(cr16_run_SOURCES) $(cris_run_SOURCES) \
+       $(cris_rvdummy_SOURCES) $(d10v_gencode_SOURCES) \
+       $(d10v_run_SOURCES) $(erc32_run_SOURCES) erc32/sis.c \
+       $(example_synacor_run_SOURCES) $(frv_run_SOURCES) \
+       $(ft32_run_SOURCES) $(h8300_run_SOURCES) \
+       $(igen_filter_SOURCES) $(igen_gen_SOURCES) \
+       $(igen_igen_SOURCES) $(igen_ld_cache_SOURCES) \
+       $(igen_ld_decode_SOURCES) $(igen_ld_insn_SOURCES) \
+       $(igen_table_SOURCES) $(iq2000_run_SOURCES) \
+       $(lm32_run_SOURCES) $(m32c_opc2c_SOURCES) $(m32c_run_SOURCES) \
+       $(m32r_run_SOURCES) $(m68hc11_gencode_SOURCES) \
+       $(m68hc11_run_SOURCES) $(mcore_run_SOURCES) \
+       $(microblaze_run_SOURCES) $(mips_run_SOURCES) \
+       $(mn10300_run_SOURCES) $(moxie_run_SOURCES) \
+       $(msp430_run_SOURCES) $(or1k_run_SOURCES) ppc/psim.c \
+       $(ppc_run_SOURCES) $(pru_run_SOURCES) $(riscv_run_SOURCES) \
+       $(rl78_run_SOURCES) $(rx_run_SOURCES) $(sh_gencode_SOURCES) \
+       $(sh_run_SOURCES) testsuite/common/alu-tst.c \
        testsuite/common/bits-gen.c testsuite/common/bits32m0.c \
        testsuite/common/bits32m31.c testsuite/common/bits64m0.c \
-       testsuite/common/bits64m63.c testsuite/common/fpu-tst.c
+       testsuite/common/bits64m63.c testsuite/common/fpu-tst.c \
+       $(v850_run_SOURCES)
 RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
        ctags-recursive dvi-recursive html-recursive info-recursive \
        install-data-recursive install-dvi-recursive \
@@ -918,18 +1166,18 @@ srcroot = $(srcdir)/..
 SUBDIRS = @subdirs@ $(SIM_SUBDIRS)
 AM_MAKEFLAGS = SIM_PRIMARY_TARGET=$(SIM_PRIMARY_TARGET)
 pkginclude_HEADERS = $(am__append_1)
-noinst_LIBRARIES = common/libcommon.a $(am__append_3)
+noinst_LIBRARIES = $(SIM_COMMON_LIB) $(am__append_3)
 CLEANFILES = common/version.c common/version.c-stamp \
        testsuite/common/bits-gen testsuite/common/bits32m0.c \
        testsuite/common/bits32m31.c testsuite/common/bits64m0.c \
        testsuite/common/bits64m63.c
-DISTCLEANFILES = $(am__append_35)
+DISTCLEANFILES = 
 MOSTLYCLEANFILES = core $(am__append_5) site-sim-config.exp \
-       testrun.log testrun.sum $(am__append_7) $(am__append_10) \
-       $(am__append_13) $(am__append_16) $(am__append_20) \
-       $(am__append_22) $(am__append_24) $(am__append_27) \
-       $(am__append_29) $(am__append_32) $(am__append_34) \
-       $(am__append_37) $(am__append_40) $(am__append_42)
+       testrun.log testrun.sum $(am__append_12) $(am__append_16) \
+       $(am__append_20) $(am__append_24) $(am__append_31) \
+       $(am__append_36) $(am__append_39) $(am__append_43) \
+       $(am__append_46) $(am__append_50) $(am__append_56) \
+       $(am__append_61) $(am__append_70) $(am__append_73)
 AM_CFLAGS = $(WERROR_CFLAGS) $(WARN_CFLAGS)
 AM_CPPFLAGS = $(INCGNU) -I$(srcroot)/include -I../bfd -I.. \
        $(SIM_HW_CFLAGS) $(SIM_INLINE) -I$(srcdir)/common \
@@ -939,14 +1187,15 @@ AM_CPPFLAGS_FOR_BUILD = -I$(srcroot)/include $(SIM_HW_CFLAGS) \
 COMPILE_FOR_BUILD = $(CC_FOR_BUILD) $(AM_CPPFLAGS_FOR_BUILD) $(CPPFLAGS_FOR_BUILD) $(CFLAGS_FOR_BUILD)
 LINK_FOR_BUILD = $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@
 SIM_ALL_RECURSIVE_DEPS = common/libcommon.a $(am__append_2) \
-       $(am__append_6) $(am__append_8) $(am__append_12) \
-       $(am__append_14) $(am__append_19) $(am__append_21) \
-       $(am__append_23) $(am__append_25) $(am__append_28) \
-       $(am__append_30) $(am__append_33) $(am__append_36) \
-       $(am__append_38) $(am__append_41)
+       $(am__append_11) $(am__append_14) $(am__append_19) \
+       $(am__append_22) $(am__append_30) $(am__append_35) \
+       $(am__append_38) $(am__append_41) $(am__append_45) \
+       $(am__append_48) $(am__append_55) $(am__append_60) \
+       $(am__append_68) $(am__append_72)
 SIM_INSTALL_DATA_LOCAL_DEPS = 
-SIM_INSTALL_EXEC_LOCAL_DEPS = $(am__append_17)
-SIM_UNINSTALL_LOCAL_DEPS = $(am__append_18)
+SIM_INSTALL_EXEC_LOCAL_DEPS = $(am__append_26)
+SIM_UNINSTALL_LOCAL_DEPS = $(am__append_27)
+SIM_COMMON_LIB = common/libcommon.a
 common_libcommon_a_SOURCES = \
        common/callback.c \
        common/portability.c \
@@ -958,6 +1207,17 @@ common_libcommon_a_SOURCES = \
        common/target-newlib-syscall.c \
        common/version.c
 
+LIBIBERTY_LIB = ../libiberty/libiberty.a
+BFD_LIB = ../bfd/libbfd.la
+OPCODES_LIB = ../opcodes/libopcodes.la
+SIM_COMMON_LIBS = \
+       $(SIM_COMMON_LIB) \
+       $(BFD_LIB) \
+       $(OPCODES_LIB) \
+       $(LIBIBERTY_LIB) \
+       $(LIBGNU) \
+       $(LIBGNU_EXTRA_LIBS)
+
 
 # igen leaks memory, and therefore makes AddressSanitizer unhappy.  Disable
 # leak detection while running it.
@@ -1022,8 +1282,38 @@ testsuite_common_CPPFLAGS = \
        -I$(srcroot)/include \
        -I../bfd
 
+@SIM_ENABLE_ARCH_aarch64_TRUE@aarch64_run_SOURCES = 
+@SIM_ENABLE_ARCH_aarch64_TRUE@aarch64_run_LDADD = \
+@SIM_ENABLE_ARCH_aarch64_TRUE@ aarch64/nrun.o \
+@SIM_ENABLE_ARCH_aarch64_TRUE@ aarch64/libsim.a \
+@SIM_ENABLE_ARCH_aarch64_TRUE@ $(SIM_COMMON_LIBS)
+
+@SIM_ENABLE_ARCH_arm_TRUE@arm_run_SOURCES = 
+@SIM_ENABLE_ARCH_arm_TRUE@arm_run_LDADD = \
+@SIM_ENABLE_ARCH_arm_TRUE@     arm/nrun.o \
+@SIM_ENABLE_ARCH_arm_TRUE@     arm/libsim.a \
+@SIM_ENABLE_ARCH_arm_TRUE@     $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_arm_TRUE@armdocdir = $(docdir)/arm
 @SIM_ENABLE_ARCH_arm_TRUE@armdoc_DATA = arm/README
+@SIM_ENABLE_ARCH_avr_TRUE@avr_run_SOURCES = 
+@SIM_ENABLE_ARCH_avr_TRUE@avr_run_LDADD = \
+@SIM_ENABLE_ARCH_avr_TRUE@     avr/nrun.o \
+@SIM_ENABLE_ARCH_avr_TRUE@     avr/libsim.a \
+@SIM_ENABLE_ARCH_avr_TRUE@     $(SIM_COMMON_LIBS)
+
+@SIM_ENABLE_ARCH_bfin_TRUE@bfin_run_SOURCES = 
+@SIM_ENABLE_ARCH_bfin_TRUE@bfin_run_LDADD = \
+@SIM_ENABLE_ARCH_bfin_TRUE@    bfin/nrun.o \
+@SIM_ENABLE_ARCH_bfin_TRUE@    bfin/libsim.a \
+@SIM_ENABLE_ARCH_bfin_TRUE@    $(SIM_COMMON_LIBS)
+
+@SIM_ENABLE_ARCH_bpf_TRUE@bpf_run_SOURCES = 
+@SIM_ENABLE_ARCH_bpf_TRUE@bpf_run_LDADD = \
+@SIM_ENABLE_ARCH_bpf_TRUE@     bpf/nrun.o \
+@SIM_ENABLE_ARCH_bpf_TRUE@     bpf/libsim.a \
+@SIM_ENABLE_ARCH_bpf_TRUE@     $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_bpf_TRUE@bpf_BUILD_OUTPUTS = \
 @SIM_ENABLE_ARCH_bpf_TRUE@     bpf/eng-le.h \
 @SIM_ENABLE_ARCH_bpf_TRUE@     bpf/mloop-le.c \
@@ -1032,6 +1322,12 @@ testsuite_common_CPPFLAGS = \
 @SIM_ENABLE_ARCH_bpf_TRUE@     bpf/mloop-be.c \
 @SIM_ENABLE_ARCH_bpf_TRUE@     bpf/stamp-mloop-be
 
+@SIM_ENABLE_ARCH_cr16_TRUE@cr16_run_SOURCES = 
+@SIM_ENABLE_ARCH_cr16_TRUE@cr16_run_LDADD = \
+@SIM_ENABLE_ARCH_cr16_TRUE@    cr16/nrun.o \
+@SIM_ENABLE_ARCH_cr16_TRUE@    cr16/libsim.a \
+@SIM_ENABLE_ARCH_cr16_TRUE@    $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_cr16_TRUE@cr16_BUILD_OUTPUTS = \
 @SIM_ENABLE_ARCH_cr16_TRUE@    cr16/gencode$(EXEEXT) \
 @SIM_ENABLE_ARCH_cr16_TRUE@    cr16/simops.h \
@@ -1039,6 +1335,12 @@ testsuite_common_CPPFLAGS = \
 
 @SIM_ENABLE_ARCH_cr16_TRUE@cr16_gencode_SOURCES = cr16/gencode.c
 @SIM_ENABLE_ARCH_cr16_TRUE@cr16_gencode_LDADD = cr16/cr16-opc.o
+@SIM_ENABLE_ARCH_cris_TRUE@cris_run_SOURCES = 
+@SIM_ENABLE_ARCH_cris_TRUE@cris_run_LDADD = \
+@SIM_ENABLE_ARCH_cris_TRUE@    cris/nrun.o \
+@SIM_ENABLE_ARCH_cris_TRUE@    cris/libsim.a \
+@SIM_ENABLE_ARCH_cris_TRUE@    $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_cris_TRUE@cris_rvdummy_SOURCES = cris/rvdummy.c
 @SIM_ENABLE_ARCH_cris_TRUE@cris_rvdummy_LDADD = $(LIBIBERTY_LIB)
 @SIM_ENABLE_ARCH_cris_TRUE@cris_BUILD_OUTPUTS = \
@@ -1049,6 +1351,12 @@ testsuite_common_CPPFLAGS = \
 @SIM_ENABLE_ARCH_cris_TRUE@    cris/mloopv32f.c \
 @SIM_ENABLE_ARCH_cris_TRUE@    cris/stamp-mloop-v32f
 
+@SIM_ENABLE_ARCH_d10v_TRUE@d10v_run_SOURCES = 
+@SIM_ENABLE_ARCH_d10v_TRUE@d10v_run_LDADD = \
+@SIM_ENABLE_ARCH_d10v_TRUE@    d10v/nrun.o \
+@SIM_ENABLE_ARCH_d10v_TRUE@    d10v/libsim.a \
+@SIM_ENABLE_ARCH_d10v_TRUE@    $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_d10v_TRUE@d10v_BUILD_OUTPUTS = \
 @SIM_ENABLE_ARCH_d10v_TRUE@    d10v/gencode$(EXEEXT) \
 @SIM_ENABLE_ARCH_d10v_TRUE@    d10v/simops.h \
@@ -1056,8 +1364,26 @@ testsuite_common_CPPFLAGS = \
 
 @SIM_ENABLE_ARCH_d10v_TRUE@d10v_gencode_SOURCES = d10v/gencode.c
 @SIM_ENABLE_ARCH_d10v_TRUE@d10v_gencode_LDADD = d10v/d10v-opc.o
+@SIM_ENABLE_ARCH_erc32_TRUE@erc32_run_SOURCES = 
+@SIM_ENABLE_ARCH_erc32_TRUE@erc32_run_LDADD = \
+@SIM_ENABLE_ARCH_erc32_TRUE@   erc32/sis.o \
+@SIM_ENABLE_ARCH_erc32_TRUE@   erc32/libsim.a \
+@SIM_ENABLE_ARCH_erc32_TRUE@   $(SIM_COMMON_LIBS) $(READLINE_LIB) $(TERMCAP_LIB)
+
 @SIM_ENABLE_ARCH_erc32_TRUE@erc32docdir = $(docdir)/erc32
 @SIM_ENABLE_ARCH_erc32_TRUE@erc32doc_DATA = erc32/README.erc32 erc32/README.gdb erc32/README.sis
+@SIM_ENABLE_ARCH_examples_TRUE@example_synacor_run_SOURCES = 
+@SIM_ENABLE_ARCH_examples_TRUE@example_synacor_run_LDADD = \
+@SIM_ENABLE_ARCH_examples_TRUE@        example-synacor/nrun.o \
+@SIM_ENABLE_ARCH_examples_TRUE@        example-synacor/libsim.a \
+@SIM_ENABLE_ARCH_examples_TRUE@        $(SIM_COMMON_LIBS)
+
+@SIM_ENABLE_ARCH_frv_TRUE@frv_run_SOURCES = 
+@SIM_ENABLE_ARCH_frv_TRUE@frv_run_LDADD = \
+@SIM_ENABLE_ARCH_frv_TRUE@     frv/nrun.o \
+@SIM_ENABLE_ARCH_frv_TRUE@     frv/libsim.a \
+@SIM_ENABLE_ARCH_frv_TRUE@     $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_frv_TRUE@frvdocdir = $(docdir)/frv
 @SIM_ENABLE_ARCH_frv_TRUE@frvdoc_DATA = frv/README
 @SIM_ENABLE_ARCH_frv_TRUE@frv_BUILD_OUTPUTS = \
@@ -1065,16 +1391,46 @@ testsuite_common_CPPFLAGS = \
 @SIM_ENABLE_ARCH_frv_TRUE@     frv/mloop.c \
 @SIM_ENABLE_ARCH_frv_TRUE@     frv/stamp-mloop
 
+@SIM_ENABLE_ARCH_ft32_TRUE@ft32_run_SOURCES = 
+@SIM_ENABLE_ARCH_ft32_TRUE@ft32_run_LDADD = \
+@SIM_ENABLE_ARCH_ft32_TRUE@    ft32/nrun.o \
+@SIM_ENABLE_ARCH_ft32_TRUE@    ft32/libsim.a \
+@SIM_ENABLE_ARCH_ft32_TRUE@    $(SIM_COMMON_LIBS)
+
+@SIM_ENABLE_ARCH_h8300_TRUE@h8300_run_SOURCES = 
+@SIM_ENABLE_ARCH_h8300_TRUE@h8300_run_LDADD = \
+@SIM_ENABLE_ARCH_h8300_TRUE@   h8300/nrun.o \
+@SIM_ENABLE_ARCH_h8300_TRUE@   h8300/libsim.a \
+@SIM_ENABLE_ARCH_h8300_TRUE@   $(SIM_COMMON_LIBS)
+
+@SIM_ENABLE_ARCH_iq2000_TRUE@iq2000_run_SOURCES = 
+@SIM_ENABLE_ARCH_iq2000_TRUE@iq2000_run_LDADD = \
+@SIM_ENABLE_ARCH_iq2000_TRUE@  iq2000/nrun.o \
+@SIM_ENABLE_ARCH_iq2000_TRUE@  iq2000/libsim.a \
+@SIM_ENABLE_ARCH_iq2000_TRUE@  $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_iq2000_TRUE@iq2000_BUILD_OUTPUTS = \
 @SIM_ENABLE_ARCH_iq2000_TRUE@  iq2000/eng.h \
 @SIM_ENABLE_ARCH_iq2000_TRUE@  iq2000/mloop.c \
 @SIM_ENABLE_ARCH_iq2000_TRUE@  iq2000/stamp-mloop
 
+@SIM_ENABLE_ARCH_lm32_TRUE@lm32_run_SOURCES = 
+@SIM_ENABLE_ARCH_lm32_TRUE@lm32_run_LDADD = \
+@SIM_ENABLE_ARCH_lm32_TRUE@    lm32/nrun.o \
+@SIM_ENABLE_ARCH_lm32_TRUE@    lm32/libsim.a \
+@SIM_ENABLE_ARCH_lm32_TRUE@    $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_lm32_TRUE@lm32_BUILD_OUTPUTS = \
 @SIM_ENABLE_ARCH_lm32_TRUE@    lm32/eng.h \
 @SIM_ENABLE_ARCH_lm32_TRUE@    lm32/mloop.c \
 @SIM_ENABLE_ARCH_lm32_TRUE@    lm32/stamp-mloop
 
+@SIM_ENABLE_ARCH_m32c_TRUE@m32c_run_SOURCES = 
+@SIM_ENABLE_ARCH_m32c_TRUE@m32c_run_LDADD = \
+@SIM_ENABLE_ARCH_m32c_TRUE@    m32c/main.o \
+@SIM_ENABLE_ARCH_m32c_TRUE@    m32c/libsim.a \
+@SIM_ENABLE_ARCH_m32c_TRUE@    $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_m32c_TRUE@m32c_BUILD_OUTPUTS = \
 @SIM_ENABLE_ARCH_m32c_TRUE@    m32c/opc2c$(EXEEXT) \
 @SIM_ENABLE_ARCH_m32c_TRUE@    m32c/m32c.c \
@@ -1085,6 +1441,12 @@ testsuite_common_CPPFLAGS = \
 # opc2c leaks memory, and therefore makes AddressSanitizer unhappy.  Disable
 # leak detection while running it.
 @SIM_ENABLE_ARCH_m32c_TRUE@m32c_OPC2C_RUN = ASAN_OPTIONS=detect_leaks=0 m32c/opc2c$(EXEEXT)
+@SIM_ENABLE_ARCH_m32r_TRUE@m32r_run_SOURCES = 
+@SIM_ENABLE_ARCH_m32r_TRUE@m32r_run_LDADD = \
+@SIM_ENABLE_ARCH_m32r_TRUE@    m32r/nrun.o \
+@SIM_ENABLE_ARCH_m32r_TRUE@    m32r/libsim.a \
+@SIM_ENABLE_ARCH_m32r_TRUE@    $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_m32r_TRUE@m32r_BUILD_OUTPUTS = \
 @SIM_ENABLE_ARCH_m32r_TRUE@    m32r/eng.h \
 @SIM_ENABLE_ARCH_m32r_TRUE@    m32r/mloop.c \
@@ -1096,12 +1458,42 @@ 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@m68hc11_run_SOURCES = 
+@SIM_ENABLE_ARCH_m68hc11_TRUE@m68hc11_run_LDADD = \
+@SIM_ENABLE_ARCH_m68hc11_TRUE@ m68hc11/nrun.o \
+@SIM_ENABLE_ARCH_m68hc11_TRUE@ m68hc11/libsim.a \
+@SIM_ENABLE_ARCH_m68hc11_TRUE@ $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_m68hc11_TRUE@m68hc11_BUILD_OUTPUTS = \
 @SIM_ENABLE_ARCH_m68hc11_TRUE@ m68hc11/gencode$(EXEEXT) \
 @SIM_ENABLE_ARCH_m68hc11_TRUE@ m68hc11/m68hc11int.c \
 @SIM_ENABLE_ARCH_m68hc11_TRUE@ m68hc11/m68hc12int.c
 
 @SIM_ENABLE_ARCH_m68hc11_TRUE@m68hc11_gencode_SOURCES = m68hc11/gencode.c
+@SIM_ENABLE_ARCH_mcore_TRUE@mcore_run_SOURCES = 
+@SIM_ENABLE_ARCH_mcore_TRUE@mcore_run_LDADD = \
+@SIM_ENABLE_ARCH_mcore_TRUE@   mcore/nrun.o \
+@SIM_ENABLE_ARCH_mcore_TRUE@   mcore/libsim.a \
+@SIM_ENABLE_ARCH_mcore_TRUE@   $(SIM_COMMON_LIBS)
+
+@SIM_ENABLE_ARCH_microblaze_TRUE@microblaze_run_SOURCES = 
+@SIM_ENABLE_ARCH_microblaze_TRUE@microblaze_run_LDADD = \
+@SIM_ENABLE_ARCH_microblaze_TRUE@      microblaze/nrun.o \
+@SIM_ENABLE_ARCH_microblaze_TRUE@      microblaze/libsim.a \
+@SIM_ENABLE_ARCH_microblaze_TRUE@      $(SIM_COMMON_LIBS)
+
+@SIM_ENABLE_ARCH_mips_TRUE@mips_run_SOURCES = 
+@SIM_ENABLE_ARCH_mips_TRUE@mips_run_LDADD = \
+@SIM_ENABLE_ARCH_mips_TRUE@    mips/nrun.o \
+@SIM_ENABLE_ARCH_mips_TRUE@    mips/libsim.a \
+@SIM_ENABLE_ARCH_mips_TRUE@    $(SIM_COMMON_LIBS)
+
+@SIM_ENABLE_ARCH_mn10300_TRUE@mn10300_run_SOURCES = 
+@SIM_ENABLE_ARCH_mn10300_TRUE@mn10300_run_LDADD = \
+@SIM_ENABLE_ARCH_mn10300_TRUE@ mn10300/nrun.o \
+@SIM_ENABLE_ARCH_mn10300_TRUE@ mn10300/libsim.a \
+@SIM_ENABLE_ARCH_mn10300_TRUE@ $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_mn10300_TRUE@mn10300_BUILT_SRC_FROM_IGEN = \
 @SIM_ENABLE_ARCH_mn10300_TRUE@ mn10300/icache.h \
 @SIM_ENABLE_ARCH_mn10300_TRUE@ mn10300/icache.c \
@@ -1127,8 +1519,26 @@ testsuite_common_CPPFLAGS = \
 @SIM_ENABLE_ARCH_mn10300_TRUE@mn10300_IGEN_INSN = $(srcdir)/mn10300/mn10300.igen
 @SIM_ENABLE_ARCH_mn10300_TRUE@mn10300_IGEN_INSN_INC = mn10300/am33.igen mn10300/am33-2.igen
 @SIM_ENABLE_ARCH_mn10300_TRUE@mn10300_IGEN_DC = $(srcdir)/mn10300/mn10300.dc
+@SIM_ENABLE_ARCH_moxie_TRUE@moxie_run_SOURCES = 
+@SIM_ENABLE_ARCH_moxie_TRUE@moxie_run_LDADD = \
+@SIM_ENABLE_ARCH_moxie_TRUE@   moxie/nrun.o \
+@SIM_ENABLE_ARCH_moxie_TRUE@   moxie/libsim.a \
+@SIM_ENABLE_ARCH_moxie_TRUE@   $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_moxie_TRUE@dtbdir = $(datadir)/gdb/dtb
 @SIM_ENABLE_ARCH_moxie_TRUE@dtb_DATA = moxie/moxie-gdb.dtb
+@SIM_ENABLE_ARCH_msp430_TRUE@msp430_run_SOURCES = 
+@SIM_ENABLE_ARCH_msp430_TRUE@msp430_run_LDADD = \
+@SIM_ENABLE_ARCH_msp430_TRUE@  msp430/nrun.o \
+@SIM_ENABLE_ARCH_msp430_TRUE@  msp430/libsim.a \
+@SIM_ENABLE_ARCH_msp430_TRUE@  $(SIM_COMMON_LIBS)
+
+@SIM_ENABLE_ARCH_or1k_TRUE@or1k_run_SOURCES = 
+@SIM_ENABLE_ARCH_or1k_TRUE@or1k_run_LDADD = \
+@SIM_ENABLE_ARCH_or1k_TRUE@    or1k/nrun.o \
+@SIM_ENABLE_ARCH_or1k_TRUE@    or1k/libsim.a \
+@SIM_ENABLE_ARCH_or1k_TRUE@    $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_or1k_TRUE@or1kdocdir = $(docdir)/or1k
 @SIM_ENABLE_ARCH_or1k_TRUE@or1kdoc_DATA = or1k/README
 @SIM_ENABLE_ARCH_or1k_TRUE@or1k_BUILD_OUTPUTS = \
@@ -1136,10 +1546,46 @@ testsuite_common_CPPFLAGS = \
 @SIM_ENABLE_ARCH_or1k_TRUE@    or1k/mloop.c \
 @SIM_ENABLE_ARCH_or1k_TRUE@    or1k/stamp-mloop
 
+@SIM_ENABLE_ARCH_ppc_TRUE@ppc_run_SOURCES = 
+@SIM_ENABLE_ARCH_ppc_TRUE@ppc_run_LDADD = \
+@SIM_ENABLE_ARCH_ppc_TRUE@     ppc/main.o \
+@SIM_ENABLE_ARCH_ppc_TRUE@     ppc/libsim.a \
+@SIM_ENABLE_ARCH_ppc_TRUE@     $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_ppc_TRUE@ppcdocdir = $(docdir)/ppc
 @SIM_ENABLE_ARCH_ppc_TRUE@ppcdoc_DATA = ppc/BUGS ppc/INSTALL ppc/README ppc/RUN
+@SIM_ENABLE_ARCH_pru_TRUE@pru_run_SOURCES = 
+@SIM_ENABLE_ARCH_pru_TRUE@pru_run_LDADD = \
+@SIM_ENABLE_ARCH_pru_TRUE@     pru/nrun.o \
+@SIM_ENABLE_ARCH_pru_TRUE@     pru/libsim.a \
+@SIM_ENABLE_ARCH_pru_TRUE@     $(SIM_COMMON_LIBS)
+
+@SIM_ENABLE_ARCH_riscv_TRUE@riscv_run_SOURCES = 
+@SIM_ENABLE_ARCH_riscv_TRUE@riscv_run_LDADD = \
+@SIM_ENABLE_ARCH_riscv_TRUE@   riscv/nrun.o \
+@SIM_ENABLE_ARCH_riscv_TRUE@   riscv/libsim.a \
+@SIM_ENABLE_ARCH_riscv_TRUE@   $(SIM_COMMON_LIBS)
+
+@SIM_ENABLE_ARCH_rl78_TRUE@rl78_run_SOURCES = 
+@SIM_ENABLE_ARCH_rl78_TRUE@rl78_run_LDADD = \
+@SIM_ENABLE_ARCH_rl78_TRUE@    rl78/main.o \
+@SIM_ENABLE_ARCH_rl78_TRUE@    rl78/libsim.a \
+@SIM_ENABLE_ARCH_rl78_TRUE@    $(SIM_COMMON_LIBS)
+
+@SIM_ENABLE_ARCH_rx_TRUE@rx_run_SOURCES = 
+@SIM_ENABLE_ARCH_rx_TRUE@rx_run_LDADD = \
+@SIM_ENABLE_ARCH_rx_TRUE@      rx/main.o \
+@SIM_ENABLE_ARCH_rx_TRUE@      rx/libsim.a \
+@SIM_ENABLE_ARCH_rx_TRUE@      $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_rx_TRUE@rxdocdir = $(docdir)/rx
 @SIM_ENABLE_ARCH_rx_TRUE@rxdoc_DATA = rx/README.txt
+@SIM_ENABLE_ARCH_sh_TRUE@sh_run_SOURCES = 
+@SIM_ENABLE_ARCH_sh_TRUE@sh_run_LDADD = \
+@SIM_ENABLE_ARCH_sh_TRUE@      sh/nrun.o \
+@SIM_ENABLE_ARCH_sh_TRUE@      sh/libsim.a \
+@SIM_ENABLE_ARCH_sh_TRUE@      $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_sh_TRUE@sh_BUILD_OUTPUTS = \
 @SIM_ENABLE_ARCH_sh_TRUE@      sh/gencode$(EXEEXT) \
 @SIM_ENABLE_ARCH_sh_TRUE@      sh/code.c \
@@ -1147,6 +1593,12 @@ testsuite_common_CPPFLAGS = \
 @SIM_ENABLE_ARCH_sh_TRUE@      sh/table.c
 
 @SIM_ENABLE_ARCH_sh_TRUE@sh_gencode_SOURCES = sh/gencode.c
+@SIM_ENABLE_ARCH_v850_TRUE@v850_run_SOURCES = 
+@SIM_ENABLE_ARCH_v850_TRUE@v850_run_LDADD = \
+@SIM_ENABLE_ARCH_v850_TRUE@    v850/nrun.o \
+@SIM_ENABLE_ARCH_v850_TRUE@    v850/libsim.a \
+@SIM_ENABLE_ARCH_v850_TRUE@    $(SIM_COMMON_LIBS)
+
 @SIM_ENABLE_ARCH_v850_TRUE@v850_BUILT_SRC_FROM_IGEN = \
 @SIM_ENABLE_ARCH_v850_TRUE@    v850/icache.h \
 @SIM_ENABLE_ARCH_v850_TRUE@    v850/icache.c \
@@ -1178,7 +1630,7 @@ all: config.h
 .SUFFIXES: .c .lo .log .o .obj .test .test$(EXEEXT) .trs
 am--refresh: Makefile
        @:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/common/local.mk $(srcdir)/igen/local.mk $(srcdir)/testsuite/local.mk $(srcdir)/testsuite/common/local.mk $(srcdir)/arm/local.mk $(srcdir)/bpf/local.mk $(srcdir)/cr16/local.mk $(srcdir)/cris/local.mk $(srcdir)/d10v/local.mk $(srcdir)/erc32/local.mk $(srcdir)/frv/local.mk $(srcdir)/iq2000/local.mk $(srcdir)/lm32/local.mk $(srcdir)/m32c/local.mk $(srcdir)/m32r/local.mk $(srcdir)/m68hc11/local.mk $(srcdir)/mn10300/local.mk $(srcdir)/moxie/local.mk $(srcdir)/or1k/local.mk $(srcdir)/ppc/local.mk $(srcdir)/rx/local.mk $(srcdir)/sh/local.mk $(srcdir)/v850/local.mk $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/common/local.mk $(srcdir)/igen/local.mk $(srcdir)/testsuite/local.mk $(srcdir)/testsuite/common/local.mk $(srcdir)/aarch64/local.mk $(srcdir)/arm/local.mk $(srcdir)/avr/local.mk $(srcdir)/bfin/local.mk $(srcdir)/bpf/local.mk $(srcdir)/cr16/local.mk $(srcdir)/cris/local.mk $(srcdir)/d10v/local.mk $(srcdir)/erc32/local.mk $(srcdir)/example-synacor/local.mk $(srcdir)/frv/local.mk $(srcdir)/ft32/local.mk $(srcdir)/h8300/local.mk $(srcdir)/iq2000/local.mk $(srcdir)/lm32/local.mk $(srcdir)/m32c/local.mk $(srcdir)/m32r/local.mk $(srcdir)/m68hc11/local.mk $(srcdir)/mcore/local.mk $(srcdir)/microblaze/local.mk $(srcdir)/mips/local.mk $(srcdir)/mn10300/local.mk $(srcdir)/moxie/local.mk $(srcdir)/msp430/local.mk $(srcdir)/or1k/local.mk $(srcdir)/ppc/local.mk $(srcdir)/pru/local.mk $(srcdir)/riscv/local.mk $(srcdir)/rl78/local.mk $(srcdir)/rx/local.mk $(srcdir)/sh/local.mk $(srcdir)/v850/local.mk $(am__configure_deps)
        @for dep in $?; do \
          case '$(am__configure_deps)' in \
            *$$dep*) \
@@ -1200,7 +1652,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
            echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
            cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
        esac;
-$(srcdir)/common/local.mk $(srcdir)/igen/local.mk $(srcdir)/testsuite/local.mk $(srcdir)/testsuite/common/local.mk $(srcdir)/arm/local.mk $(srcdir)/bpf/local.mk $(srcdir)/cr16/local.mk $(srcdir)/cris/local.mk $(srcdir)/d10v/local.mk $(srcdir)/erc32/local.mk $(srcdir)/frv/local.mk $(srcdir)/iq2000/local.mk $(srcdir)/lm32/local.mk $(srcdir)/m32c/local.mk $(srcdir)/m32r/local.mk $(srcdir)/m68hc11/local.mk $(srcdir)/mn10300/local.mk $(srcdir)/moxie/local.mk $(srcdir)/or1k/local.mk $(srcdir)/ppc/local.mk $(srcdir)/rx/local.mk $(srcdir)/sh/local.mk $(srcdir)/v850/local.mk $(am__empty):
+$(srcdir)/common/local.mk $(srcdir)/igen/local.mk $(srcdir)/testsuite/local.mk $(srcdir)/testsuite/common/local.mk $(srcdir)/aarch64/local.mk $(srcdir)/arm/local.mk $(srcdir)/avr/local.mk $(srcdir)/bfin/local.mk $(srcdir)/bpf/local.mk $(srcdir)/cr16/local.mk $(srcdir)/cris/local.mk $(srcdir)/d10v/local.mk $(srcdir)/erc32/local.mk $(srcdir)/example-synacor/local.mk $(srcdir)/frv/local.mk $(srcdir)/ft32/local.mk $(srcdir)/h8300/local.mk $(srcdir)/iq2000/local.mk $(srcdir)/lm32/local.mk $(srcdir)/m32c/local.mk $(srcdir)/m32r/local.mk $(srcdir)/m68hc11/local.mk $(srcdir)/mcore/local.mk $(srcdir)/microblaze/local.mk $(srcdir)/mips/local.mk $(srcdir)/mn10300/local.mk $(srcdir)/moxie/local.mk $(srcdir)/msp430/local.mk $(srcdir)/or1k/local.mk $(srcdir)/ppc/local.mk $(srcdir)/pru/local.mk $(srcdir)/riscv/local.mk $(srcdir)/rl78/local.mk $(srcdir)/rx/local.mk $(srcdir)/sh/local.mk $(srcdir)/v850/local.mk $(am__empty):
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
        $(SHELL) ./config.status --recheck
@@ -1414,6 +1866,50 @@ clean-checkPROGRAMS:
        list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
        echo " rm -f" $$list; \
        rm -f $$list
+
+clean-noinstPROGRAMS:
+       @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
+       echo " rm -f" $$list; \
+       rm -f $$list || exit $$?; \
+       test -n "$(EXEEXT)" || exit 0; \
+       list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+       echo " rm -f" $$list; \
+       rm -f $$list
+aarch64/$(am__dirstamp):
+       @$(MKDIR_P) aarch64
+       @: > aarch64/$(am__dirstamp)
+
+aarch64/run$(EXEEXT): $(aarch64_run_OBJECTS) $(aarch64_run_DEPENDENCIES) $(EXTRA_aarch64_run_DEPENDENCIES) aarch64/$(am__dirstamp)
+       @rm -f aarch64/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(aarch64_run_OBJECTS) $(aarch64_run_LDADD) $(LIBS)
+arm/$(am__dirstamp):
+       @$(MKDIR_P) arm
+       @: > arm/$(am__dirstamp)
+
+arm/run$(EXEEXT): $(arm_run_OBJECTS) $(arm_run_DEPENDENCIES) $(EXTRA_arm_run_DEPENDENCIES) arm/$(am__dirstamp)
+       @rm -f arm/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(arm_run_OBJECTS) $(arm_run_LDADD) $(LIBS)
+avr/$(am__dirstamp):
+       @$(MKDIR_P) avr
+       @: > avr/$(am__dirstamp)
+
+avr/run$(EXEEXT): $(avr_run_OBJECTS) $(avr_run_DEPENDENCIES) $(EXTRA_avr_run_DEPENDENCIES) avr/$(am__dirstamp)
+       @rm -f avr/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(avr_run_OBJECTS) $(avr_run_LDADD) $(LIBS)
+bfin/$(am__dirstamp):
+       @$(MKDIR_P) bfin
+       @: > bfin/$(am__dirstamp)
+
+bfin/run$(EXEEXT): $(bfin_run_OBJECTS) $(bfin_run_DEPENDENCIES) $(EXTRA_bfin_run_DEPENDENCIES) bfin/$(am__dirstamp)
+       @rm -f bfin/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(bfin_run_OBJECTS) $(bfin_run_LDADD) $(LIBS)
+bpf/$(am__dirstamp):
+       @$(MKDIR_P) bpf
+       @: > bpf/$(am__dirstamp)
+
+bpf/run$(EXEEXT): $(bpf_run_OBJECTS) $(bpf_run_DEPENDENCIES) $(EXTRA_bpf_run_DEPENDENCIES) bpf/$(am__dirstamp)
+       @rm -f bpf/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(bpf_run_OBJECTS) $(bpf_run_LDADD) $(LIBS)
 cr16/$(am__dirstamp):
        @$(MKDIR_P) cr16
        @: > cr16/$(am__dirstamp)
@@ -1426,9 +1922,17 @@ cr16/gencode.$(OBJEXT): cr16/$(am__dirstamp) \
 @SIM_ENABLE_ARCH_cr16_FALSE@cr16/gencode$(EXEEXT): $(cr16_gencode_OBJECTS) $(cr16_gencode_DEPENDENCIES) $(EXTRA_cr16_gencode_DEPENDENCIES) cr16/$(am__dirstamp)
 @SIM_ENABLE_ARCH_cr16_FALSE@   @rm -f cr16/gencode$(EXEEXT)
 @SIM_ENABLE_ARCH_cr16_FALSE@   $(AM_V_CCLD)$(LINK) $(cr16_gencode_OBJECTS) $(cr16_gencode_LDADD) $(LIBS)
+
+cr16/run$(EXEEXT): $(cr16_run_OBJECTS) $(cr16_run_DEPENDENCIES) $(EXTRA_cr16_run_DEPENDENCIES) cr16/$(am__dirstamp)
+       @rm -f cr16/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(cr16_run_OBJECTS) $(cr16_run_LDADD) $(LIBS)
 cris/$(am__dirstamp):
        @$(MKDIR_P) cris
        @: > cris/$(am__dirstamp)
+
+cris/run$(EXEEXT): $(cris_run_OBJECTS) $(cris_run_DEPENDENCIES) $(EXTRA_cris_run_DEPENDENCIES) cris/$(am__dirstamp)
+       @rm -f cris/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(cris_run_OBJECTS) $(cris_run_LDADD) $(LIBS)
 cris/$(DEPDIR)/$(am__dirstamp):
        @$(MKDIR_P) cris/$(DEPDIR)
        @: > cris/$(DEPDIR)/$(am__dirstamp)
@@ -1451,6 +1955,54 @@ d10v/gencode.$(OBJEXT): d10v/$(am__dirstamp) \
 @SIM_ENABLE_ARCH_d10v_FALSE@   @rm -f d10v/gencode$(EXEEXT)
 @SIM_ENABLE_ARCH_d10v_FALSE@   $(AM_V_CCLD)$(LINK) $(d10v_gencode_OBJECTS) $(d10v_gencode_LDADD) $(LIBS)
 
+d10v/run$(EXEEXT): $(d10v_run_OBJECTS) $(d10v_run_DEPENDENCIES) $(EXTRA_d10v_run_DEPENDENCIES) d10v/$(am__dirstamp)
+       @rm -f d10v/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(d10v_run_OBJECTS) $(d10v_run_LDADD) $(LIBS)
+erc32/$(am__dirstamp):
+       @$(MKDIR_P) erc32
+       @: > erc32/$(am__dirstamp)
+
+erc32/run$(EXEEXT): $(erc32_run_OBJECTS) $(erc32_run_DEPENDENCIES) $(EXTRA_erc32_run_DEPENDENCIES) erc32/$(am__dirstamp)
+       @rm -f erc32/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(erc32_run_OBJECTS) $(erc32_run_LDADD) $(LIBS)
+erc32/$(DEPDIR)/$(am__dirstamp):
+       @$(MKDIR_P) erc32/$(DEPDIR)
+       @: > erc32/$(DEPDIR)/$(am__dirstamp)
+erc32/sis.$(OBJEXT): erc32/$(am__dirstamp) \
+       erc32/$(DEPDIR)/$(am__dirstamp)
+
+@SIM_ENABLE_ARCH_erc32_FALSE@erc32/sis$(EXEEXT): $(erc32_sis_OBJECTS) $(erc32_sis_DEPENDENCIES) $(EXTRA_erc32_sis_DEPENDENCIES) erc32/$(am__dirstamp)
+@SIM_ENABLE_ARCH_erc32_FALSE@  @rm -f erc32/sis$(EXEEXT)
+@SIM_ENABLE_ARCH_erc32_FALSE@  $(AM_V_CCLD)$(LINK) $(erc32_sis_OBJECTS) $(erc32_sis_LDADD) $(LIBS)
+example-synacor/$(am__dirstamp):
+       @$(MKDIR_P) example-synacor
+       @: > example-synacor/$(am__dirstamp)
+
+example-synacor/run$(EXEEXT): $(example_synacor_run_OBJECTS) $(example_synacor_run_DEPENDENCIES) $(EXTRA_example_synacor_run_DEPENDENCIES) example-synacor/$(am__dirstamp)
+       @rm -f example-synacor/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(example_synacor_run_OBJECTS) $(example_synacor_run_LDADD) $(LIBS)
+frv/$(am__dirstamp):
+       @$(MKDIR_P) frv
+       @: > frv/$(am__dirstamp)
+
+frv/run$(EXEEXT): $(frv_run_OBJECTS) $(frv_run_DEPENDENCIES) $(EXTRA_frv_run_DEPENDENCIES) frv/$(am__dirstamp)
+       @rm -f frv/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(frv_run_OBJECTS) $(frv_run_LDADD) $(LIBS)
+ft32/$(am__dirstamp):
+       @$(MKDIR_P) ft32
+       @: > ft32/$(am__dirstamp)
+
+ft32/run$(EXEEXT): $(ft32_run_OBJECTS) $(ft32_run_DEPENDENCIES) $(EXTRA_ft32_run_DEPENDENCIES) ft32/$(am__dirstamp)
+       @rm -f ft32/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(ft32_run_OBJECTS) $(ft32_run_LDADD) $(LIBS)
+h8300/$(am__dirstamp):
+       @$(MKDIR_P) h8300
+       @: > h8300/$(am__dirstamp)
+
+h8300/run$(EXEEXT): $(h8300_run_OBJECTS) $(h8300_run_DEPENDENCIES) $(EXTRA_h8300_run_DEPENDENCIES) h8300/$(am__dirstamp)
+       @rm -f h8300/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(h8300_run_OBJECTS) $(h8300_run_LDADD) $(LIBS)
+
 igen/filter$(EXEEXT): $(igen_filter_OBJECTS) $(igen_filter_DEPENDENCIES) $(EXTRA_igen_filter_DEPENDENCIES) igen/$(am__dirstamp)
        @rm -f igen/filter$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(igen_filter_OBJECTS) $(igen_filter_LDADD) $(LIBS)
@@ -1480,6 +2032,20 @@ igen/ld-insn$(EXEEXT): $(igen_ld_insn_OBJECTS) $(igen_ld_insn_DEPENDENCIES) $(EX
 igen/table$(EXEEXT): $(igen_table_OBJECTS) $(igen_table_DEPENDENCIES) $(EXTRA_igen_table_DEPENDENCIES) igen/$(am__dirstamp)
        @rm -f igen/table$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(igen_table_OBJECTS) $(igen_table_LDADD) $(LIBS)
+iq2000/$(am__dirstamp):
+       @$(MKDIR_P) iq2000
+       @: > iq2000/$(am__dirstamp)
+
+iq2000/run$(EXEEXT): $(iq2000_run_OBJECTS) $(iq2000_run_DEPENDENCIES) $(EXTRA_iq2000_run_DEPENDENCIES) iq2000/$(am__dirstamp)
+       @rm -f iq2000/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(iq2000_run_OBJECTS) $(iq2000_run_LDADD) $(LIBS)
+lm32/$(am__dirstamp):
+       @$(MKDIR_P) lm32
+       @: > lm32/$(am__dirstamp)
+
+lm32/run$(EXEEXT): $(lm32_run_OBJECTS) $(lm32_run_DEPENDENCIES) $(EXTRA_lm32_run_DEPENDENCIES) lm32/$(am__dirstamp)
+       @rm -f lm32/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(lm32_run_OBJECTS) $(lm32_run_LDADD) $(LIBS)
 m32c/$(am__dirstamp):
        @$(MKDIR_P) m32c
        @: > m32c/$(am__dirstamp)
@@ -1492,6 +2058,17 @@ m32c/opc2c.$(OBJEXT): m32c/$(am__dirstamp) \
 @SIM_ENABLE_ARCH_m32c_FALSE@m32c/opc2c$(EXEEXT): $(m32c_opc2c_OBJECTS) $(m32c_opc2c_DEPENDENCIES) $(EXTRA_m32c_opc2c_DEPENDENCIES) m32c/$(am__dirstamp)
 @SIM_ENABLE_ARCH_m32c_FALSE@   @rm -f m32c/opc2c$(EXEEXT)
 @SIM_ENABLE_ARCH_m32c_FALSE@   $(AM_V_CCLD)$(LINK) $(m32c_opc2c_OBJECTS) $(m32c_opc2c_LDADD) $(LIBS)
+
+m32c/run$(EXEEXT): $(m32c_run_OBJECTS) $(m32c_run_DEPENDENCIES) $(EXTRA_m32c_run_DEPENDENCIES) m32c/$(am__dirstamp)
+       @rm -f m32c/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(m32c_run_OBJECTS) $(m32c_run_LDADD) $(LIBS)
+m32r/$(am__dirstamp):
+       @$(MKDIR_P) m32r
+       @: > m32r/$(am__dirstamp)
+
+m32r/run$(EXEEXT): $(m32r_run_OBJECTS) $(m32r_run_DEPENDENCIES) $(EXTRA_m32r_run_DEPENDENCIES) m32r/$(am__dirstamp)
+       @rm -f m32r/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(m32r_run_OBJECTS) $(m32r_run_LDADD) $(LIBS)
 m68hc11/$(am__dirstamp):
        @$(MKDIR_P) m68hc11
        @: > m68hc11/$(am__dirstamp)
@@ -1504,6 +2081,102 @@ m68hc11/gencode.$(OBJEXT): m68hc11/$(am__dirstamp) \
 @SIM_ENABLE_ARCH_m68hc11_FALSE@m68hc11/gencode$(EXEEXT): $(m68hc11_gencode_OBJECTS) $(m68hc11_gencode_DEPENDENCIES) $(EXTRA_m68hc11_gencode_DEPENDENCIES) m68hc11/$(am__dirstamp)
 @SIM_ENABLE_ARCH_m68hc11_FALSE@        @rm -f m68hc11/gencode$(EXEEXT)
 @SIM_ENABLE_ARCH_m68hc11_FALSE@        $(AM_V_CCLD)$(LINK) $(m68hc11_gencode_OBJECTS) $(m68hc11_gencode_LDADD) $(LIBS)
+
+m68hc11/run$(EXEEXT): $(m68hc11_run_OBJECTS) $(m68hc11_run_DEPENDENCIES) $(EXTRA_m68hc11_run_DEPENDENCIES) m68hc11/$(am__dirstamp)
+       @rm -f m68hc11/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(m68hc11_run_OBJECTS) $(m68hc11_run_LDADD) $(LIBS)
+mcore/$(am__dirstamp):
+       @$(MKDIR_P) mcore
+       @: > mcore/$(am__dirstamp)
+
+mcore/run$(EXEEXT): $(mcore_run_OBJECTS) $(mcore_run_DEPENDENCIES) $(EXTRA_mcore_run_DEPENDENCIES) mcore/$(am__dirstamp)
+       @rm -f mcore/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(mcore_run_OBJECTS) $(mcore_run_LDADD) $(LIBS)
+microblaze/$(am__dirstamp):
+       @$(MKDIR_P) microblaze
+       @: > microblaze/$(am__dirstamp)
+
+microblaze/run$(EXEEXT): $(microblaze_run_OBJECTS) $(microblaze_run_DEPENDENCIES) $(EXTRA_microblaze_run_DEPENDENCIES) microblaze/$(am__dirstamp)
+       @rm -f microblaze/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(microblaze_run_OBJECTS) $(microblaze_run_LDADD) $(LIBS)
+mips/$(am__dirstamp):
+       @$(MKDIR_P) mips
+       @: > mips/$(am__dirstamp)
+
+mips/run$(EXEEXT): $(mips_run_OBJECTS) $(mips_run_DEPENDENCIES) $(EXTRA_mips_run_DEPENDENCIES) mips/$(am__dirstamp)
+       @rm -f mips/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(mips_run_OBJECTS) $(mips_run_LDADD) $(LIBS)
+mn10300/$(am__dirstamp):
+       @$(MKDIR_P) mn10300
+       @: > mn10300/$(am__dirstamp)
+
+mn10300/run$(EXEEXT): $(mn10300_run_OBJECTS) $(mn10300_run_DEPENDENCIES) $(EXTRA_mn10300_run_DEPENDENCIES) mn10300/$(am__dirstamp)
+       @rm -f mn10300/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(mn10300_run_OBJECTS) $(mn10300_run_LDADD) $(LIBS)
+moxie/$(am__dirstamp):
+       @$(MKDIR_P) moxie
+       @: > moxie/$(am__dirstamp)
+
+moxie/run$(EXEEXT): $(moxie_run_OBJECTS) $(moxie_run_DEPENDENCIES) $(EXTRA_moxie_run_DEPENDENCIES) moxie/$(am__dirstamp)
+       @rm -f moxie/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(moxie_run_OBJECTS) $(moxie_run_LDADD) $(LIBS)
+msp430/$(am__dirstamp):
+       @$(MKDIR_P) msp430
+       @: > msp430/$(am__dirstamp)
+
+msp430/run$(EXEEXT): $(msp430_run_OBJECTS) $(msp430_run_DEPENDENCIES) $(EXTRA_msp430_run_DEPENDENCIES) msp430/$(am__dirstamp)
+       @rm -f msp430/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(msp430_run_OBJECTS) $(msp430_run_LDADD) $(LIBS)
+or1k/$(am__dirstamp):
+       @$(MKDIR_P) or1k
+       @: > or1k/$(am__dirstamp)
+
+or1k/run$(EXEEXT): $(or1k_run_OBJECTS) $(or1k_run_DEPENDENCIES) $(EXTRA_or1k_run_DEPENDENCIES) or1k/$(am__dirstamp)
+       @rm -f or1k/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(or1k_run_OBJECTS) $(or1k_run_LDADD) $(LIBS)
+ppc/$(am__dirstamp):
+       @$(MKDIR_P) ppc
+       @: > ppc/$(am__dirstamp)
+ppc/$(DEPDIR)/$(am__dirstamp):
+       @$(MKDIR_P) ppc/$(DEPDIR)
+       @: > ppc/$(DEPDIR)/$(am__dirstamp)
+ppc/psim.$(OBJEXT): ppc/$(am__dirstamp) ppc/$(DEPDIR)/$(am__dirstamp)
+
+@SIM_ENABLE_ARCH_ppc_FALSE@ppc/psim$(EXEEXT): $(ppc_psim_OBJECTS) $(ppc_psim_DEPENDENCIES) $(EXTRA_ppc_psim_DEPENDENCIES) ppc/$(am__dirstamp)
+@SIM_ENABLE_ARCH_ppc_FALSE@    @rm -f ppc/psim$(EXEEXT)
+@SIM_ENABLE_ARCH_ppc_FALSE@    $(AM_V_CCLD)$(LINK) $(ppc_psim_OBJECTS) $(ppc_psim_LDADD) $(LIBS)
+
+ppc/run$(EXEEXT): $(ppc_run_OBJECTS) $(ppc_run_DEPENDENCIES) $(EXTRA_ppc_run_DEPENDENCIES) ppc/$(am__dirstamp)
+       @rm -f ppc/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(ppc_run_OBJECTS) $(ppc_run_LDADD) $(LIBS)
+pru/$(am__dirstamp):
+       @$(MKDIR_P) pru
+       @: > pru/$(am__dirstamp)
+
+pru/run$(EXEEXT): $(pru_run_OBJECTS) $(pru_run_DEPENDENCIES) $(EXTRA_pru_run_DEPENDENCIES) pru/$(am__dirstamp)
+       @rm -f pru/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(pru_run_OBJECTS) $(pru_run_LDADD) $(LIBS)
+riscv/$(am__dirstamp):
+       @$(MKDIR_P) riscv
+       @: > riscv/$(am__dirstamp)
+
+riscv/run$(EXEEXT): $(riscv_run_OBJECTS) $(riscv_run_DEPENDENCIES) $(EXTRA_riscv_run_DEPENDENCIES) riscv/$(am__dirstamp)
+       @rm -f riscv/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(riscv_run_OBJECTS) $(riscv_run_LDADD) $(LIBS)
+rl78/$(am__dirstamp):
+       @$(MKDIR_P) rl78
+       @: > rl78/$(am__dirstamp)
+
+rl78/run$(EXEEXT): $(rl78_run_OBJECTS) $(rl78_run_DEPENDENCIES) $(EXTRA_rl78_run_DEPENDENCIES) rl78/$(am__dirstamp)
+       @rm -f rl78/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(rl78_run_OBJECTS) $(rl78_run_LDADD) $(LIBS)
+rx/$(am__dirstamp):
+       @$(MKDIR_P) rx
+       @: > rx/$(am__dirstamp)
+
+rx/run$(EXEEXT): $(rx_run_OBJECTS) $(rx_run_DEPENDENCIES) $(EXTRA_rx_run_DEPENDENCIES) rx/$(am__dirstamp)
+       @rm -f rx/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(rx_run_OBJECTS) $(rx_run_LDADD) $(LIBS)
 sh/$(am__dirstamp):
        @$(MKDIR_P) sh
        @: > sh/$(am__dirstamp)
@@ -1515,6 +2188,10 @@ sh/gencode.$(OBJEXT): sh/$(am__dirstamp) sh/$(DEPDIR)/$(am__dirstamp)
 @SIM_ENABLE_ARCH_sh_FALSE@sh/gencode$(EXEEXT): $(sh_gencode_OBJECTS) $(sh_gencode_DEPENDENCIES) $(EXTRA_sh_gencode_DEPENDENCIES) sh/$(am__dirstamp)
 @SIM_ENABLE_ARCH_sh_FALSE@     @rm -f sh/gencode$(EXEEXT)
 @SIM_ENABLE_ARCH_sh_FALSE@     $(AM_V_CCLD)$(LINK) $(sh_gencode_OBJECTS) $(sh_gencode_LDADD) $(LIBS)
+
+sh/run$(EXEEXT): $(sh_run_OBJECTS) $(sh_run_DEPENDENCIES) $(EXTRA_sh_run_DEPENDENCIES) sh/$(am__dirstamp)
+       @rm -f sh/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(sh_run_OBJECTS) $(sh_run_LDADD) $(LIBS)
 testsuite/common/$(am__dirstamp):
        @$(MKDIR_P) testsuite/common
        @: > testsuite/common/$(am__dirstamp)
@@ -1537,6 +2214,13 @@ testsuite/common/bits64m63.$(OBJEXT):  \
        testsuite/common/$(DEPDIR)/$(am__dirstamp)
 testsuite/common/fpu-tst.$(OBJEXT): testsuite/common/$(am__dirstamp) \
        testsuite/common/$(DEPDIR)/$(am__dirstamp)
+v850/$(am__dirstamp):
+       @$(MKDIR_P) v850
+       @: > v850/$(am__dirstamp)
+
+v850/run$(EXEEXT): $(v850_run_OBJECTS) $(v850_run_DEPENDENCIES) $(EXTRA_v850_run_DEPENDENCIES) v850/$(am__dirstamp)
+       @rm -f v850/run$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(v850_run_OBJECTS) $(v850_run_LDADD) $(LIBS)
 
 mostlyclean-compile:
        -rm -f *.$(OBJEXT)
@@ -1544,9 +2228,11 @@ mostlyclean-compile:
        -rm -f cr16/*.$(OBJEXT)
        -rm -f cris/*.$(OBJEXT)
        -rm -f d10v/*.$(OBJEXT)
+       -rm -f erc32/*.$(OBJEXT)
        -rm -f igen/*.$(OBJEXT)
        -rm -f m32c/*.$(OBJEXT)
        -rm -f m68hc11/*.$(OBJEXT)
+       -rm -f ppc/*.$(OBJEXT)
        -rm -f sh/*.$(OBJEXT)
        -rm -f testsuite/common/*.$(OBJEXT)
 
@@ -1565,6 +2251,7 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@cr16/$(DEPDIR)/gencode.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@cris/$(DEPDIR)/rvdummy.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@d10v/$(DEPDIR)/gencode.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@erc32/$(DEPDIR)/sis.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@igen/$(DEPDIR)/filter.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@igen/$(DEPDIR)/filter_host.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@igen/$(DEPDIR)/gen-engine.Po@am__quote@
@@ -1584,6 +2271,7 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@igen/$(DEPDIR)/table.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@m32c/$(DEPDIR)/opc2c.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@m68hc11/$(DEPDIR)/gencode.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@ppc/$(DEPDIR)/psim.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@sh/$(DEPDIR)/gencode.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@testsuite/common/$(DEPDIR)/alu-tst.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@testsuite/common/$(DEPDIR)/bits-gen.Po@am__quote@
@@ -1622,14 +2310,40 @@ mostlyclean-libtool:
 
 clean-libtool:
        -rm -rf .libs _libs
+       -rm -rf aarch64/.libs aarch64/_libs
+       -rm -rf arm/.libs arm/_libs
+       -rm -rf avr/.libs avr/_libs
+       -rm -rf bfin/.libs bfin/_libs
+       -rm -rf bpf/.libs bpf/_libs
        -rm -rf cr16/.libs cr16/_libs
        -rm -rf cris/.libs cris/_libs
        -rm -rf d10v/.libs d10v/_libs
+       -rm -rf erc32/.libs erc32/_libs
+       -rm -rf example-synacor/.libs example-synacor/_libs
+       -rm -rf frv/.libs frv/_libs
+       -rm -rf ft32/.libs ft32/_libs
+       -rm -rf h8300/.libs h8300/_libs
        -rm -rf igen/.libs igen/_libs
+       -rm -rf iq2000/.libs iq2000/_libs
+       -rm -rf lm32/.libs lm32/_libs
        -rm -rf m32c/.libs m32c/_libs
+       -rm -rf m32r/.libs m32r/_libs
        -rm -rf m68hc11/.libs m68hc11/_libs
+       -rm -rf mcore/.libs mcore/_libs
+       -rm -rf microblaze/.libs microblaze/_libs
+       -rm -rf mips/.libs mips/_libs
+       -rm -rf mn10300/.libs mn10300/_libs
+       -rm -rf moxie/.libs moxie/_libs
+       -rm -rf msp430/.libs msp430/_libs
+       -rm -rf or1k/.libs or1k/_libs
+       -rm -rf ppc/.libs ppc/_libs
+       -rm -rf pru/.libs pru/_libs
+       -rm -rf riscv/.libs riscv/_libs
+       -rm -rf rl78/.libs rl78/_libs
+       -rm -rf rx/.libs rx/_libs
        -rm -rf sh/.libs sh/_libs
        -rm -rf testsuite/common/.libs testsuite/common/_libs
+       -rm -rf v850/.libs v850/_libs
 
 distclean-libtool:
        -rm -f libtool config.lt
@@ -2134,7 +2848,7 @@ check-am: all-am
        $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
        $(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU check-TESTS
 check: check-recursive
-all-am: Makefile $(LIBRARIES) $(DATA) $(HEADERS) config.h
+all-am: Makefile $(LIBRARIES) $(PROGRAMS) $(DATA) $(HEADERS) config.h
 installdirs: installdirs-recursive
 installdirs-am:
        for dir in "$(DESTDIR)$(armdocdir)" "$(DESTDIR)$(dtbdir)" "$(DESTDIR)$(erc32docdir)" "$(DESTDIR)$(frvdocdir)" "$(DESTDIR)$(or1kdocdir)" "$(DESTDIR)$(ppcdocdir)" "$(DESTDIR)$(rxdocdir)" "$(DESTDIR)$(pkgincludedir)"; do \
@@ -2171,6 +2885,11 @@ clean-generic:
 distclean-generic:
        -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
        -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+       -rm -f aarch64/$(am__dirstamp)
+       -rm -f arm/$(am__dirstamp)
+       -rm -f avr/$(am__dirstamp)
+       -rm -f bfin/$(am__dirstamp)
+       -rm -f bpf/$(am__dirstamp)
        -rm -f common/$(DEPDIR)/$(am__dirstamp)
        -rm -f common/$(am__dirstamp)
        -rm -f cr16/$(DEPDIR)/$(am__dirstamp)
@@ -2179,16 +2898,39 @@ distclean-generic:
        -rm -f cris/$(am__dirstamp)
        -rm -f d10v/$(DEPDIR)/$(am__dirstamp)
        -rm -f d10v/$(am__dirstamp)
+       -rm -f erc32/$(DEPDIR)/$(am__dirstamp)
+       -rm -f erc32/$(am__dirstamp)
+       -rm -f example-synacor/$(am__dirstamp)
+       -rm -f frv/$(am__dirstamp)
+       -rm -f ft32/$(am__dirstamp)
+       -rm -f h8300/$(am__dirstamp)
        -rm -f igen/$(DEPDIR)/$(am__dirstamp)
        -rm -f igen/$(am__dirstamp)
+       -rm -f iq2000/$(am__dirstamp)
+       -rm -f lm32/$(am__dirstamp)
        -rm -f m32c/$(DEPDIR)/$(am__dirstamp)
        -rm -f m32c/$(am__dirstamp)
+       -rm -f m32r/$(am__dirstamp)
        -rm -f m68hc11/$(DEPDIR)/$(am__dirstamp)
        -rm -f m68hc11/$(am__dirstamp)
+       -rm -f mcore/$(am__dirstamp)
+       -rm -f microblaze/$(am__dirstamp)
+       -rm -f mips/$(am__dirstamp)
+       -rm -f mn10300/$(am__dirstamp)
+       -rm -f moxie/$(am__dirstamp)
+       -rm -f msp430/$(am__dirstamp)
+       -rm -f or1k/$(am__dirstamp)
+       -rm -f ppc/$(DEPDIR)/$(am__dirstamp)
+       -rm -f ppc/$(am__dirstamp)
+       -rm -f pru/$(am__dirstamp)
+       -rm -f riscv/$(am__dirstamp)
+       -rm -f rl78/$(am__dirstamp)
+       -rm -f rx/$(am__dirstamp)
        -rm -f sh/$(DEPDIR)/$(am__dirstamp)
        -rm -f sh/$(am__dirstamp)
        -rm -f testsuite/common/$(DEPDIR)/$(am__dirstamp)
        -rm -f testsuite/common/$(am__dirstamp)
+       -rm -f v850/$(am__dirstamp)
        -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -2197,11 +2939,11 @@ maintainer-clean-generic:
 clean: clean-recursive
 
 clean-am: clean-checkPROGRAMS clean-generic clean-libtool \
-       clean-noinstLIBRARIES mostlyclean-am
+       clean-noinstLIBRARIES clean-noinstPROGRAMS mostlyclean-am
 
 distclean: distclean-recursive
        -rm -f $(am__CONFIG_DISTCLEAN_FILES)
-       -rm -rf common/$(DEPDIR) cr16/$(DEPDIR) cris/$(DEPDIR) d10v/$(DEPDIR) igen/$(DEPDIR) m32c/$(DEPDIR) m68hc11/$(DEPDIR) sh/$(DEPDIR) testsuite/common/$(DEPDIR)
+       -rm -rf common/$(DEPDIR) cr16/$(DEPDIR) cris/$(DEPDIR) d10v/$(DEPDIR) erc32/$(DEPDIR) igen/$(DEPDIR) m32c/$(DEPDIR) m68hc11/$(DEPDIR) ppc/$(DEPDIR) sh/$(DEPDIR) testsuite/common/$(DEPDIR)
        -rm -f Makefile
 distclean-am: clean-am distclean-DEJAGNU distclean-compile \
        distclean-generic distclean-hdr distclean-libtool \
@@ -2252,7 +2994,7 @@ installcheck-am:
 maintainer-clean: maintainer-clean-recursive
        -rm -f $(am__CONFIG_DISTCLEAN_FILES)
        -rm -rf $(top_srcdir)/autom4te.cache
-       -rm -rf common/$(DEPDIR) cr16/$(DEPDIR) cris/$(DEPDIR) d10v/$(DEPDIR) igen/$(DEPDIR) m32c/$(DEPDIR) m68hc11/$(DEPDIR) sh/$(DEPDIR) testsuite/common/$(DEPDIR)
+       -rm -rf common/$(DEPDIR) cr16/$(DEPDIR) cris/$(DEPDIR) d10v/$(DEPDIR) erc32/$(DEPDIR) igen/$(DEPDIR) m32c/$(DEPDIR) m68hc11/$(DEPDIR) ppc/$(DEPDIR) sh/$(DEPDIR) testsuite/common/$(DEPDIR)
        -rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
@@ -2279,16 +3021,16 @@ uninstall-am: uninstall-armdocDATA uninstall-dtbDATA \
 .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
        am--refresh check check-DEJAGNU check-TESTS check-am clean \
        clean-checkPROGRAMS clean-cscope clean-generic clean-libtool \
-       clean-noinstLIBRARIES cscope cscopelist-am ctags ctags-am \
-       distclean distclean-DEJAGNU distclean-compile \
-       distclean-generic distclean-hdr distclean-libtool \
-       distclean-tags dvi dvi-am html html-am info info-am install \
-       install-am install-armdocDATA install-data install-data-am \
-       install-data-local install-dtbDATA install-dvi install-dvi-am \
-       install-erc32docDATA install-exec install-exec-am \
-       install-exec-local install-frvdocDATA install-html \
-       install-html-am install-info install-info-am install-man \
-       install-or1kdocDATA install-pdf install-pdf-am \
+       clean-noinstLIBRARIES clean-noinstPROGRAMS cscope \
+       cscopelist-am ctags ctags-am distclean distclean-DEJAGNU \
+       distclean-compile distclean-generic distclean-hdr \
+       distclean-libtool distclean-tags dvi dvi-am html html-am info \
+       info-am install install-am install-armdocDATA install-data \
+       install-data-am install-data-local install-dtbDATA install-dvi \
+       install-dvi-am install-erc32docDATA install-exec \
+       install-exec-am install-exec-local install-frvdocDATA \
+       install-html install-html-am install-info install-info-am \
+       install-man install-or1kdocDATA install-pdf install-pdf-am \
        install-pkgincludeHEADERS install-ppcdocDATA install-ps \
        install-ps-am install-rxdocDATA install-strip installcheck \
        installcheck-am installdirs installdirs-am maintainer-clean \
@@ -2502,6 +3244,12 @@ testsuite/common/bits64m63.c: testsuite/common/bits-gen$(EXEEXT) testsuite/commo
 
 @SIM_ENABLE_ARCH_d10v_TRUE@d10v/table.c: d10v/gencode$(EXEEXT)
 @SIM_ENABLE_ARCH_d10v_TRUE@    $(AM_V_GEN)$< >$@
+
+@SIM_ENABLE_ARCH_erc32_TRUE@erc32/sis$(EXEEXT): erc32/run$(EXEEXT)
+@SIM_ENABLE_ARCH_erc32_TRUE@   $(AM_V_GEN)ln $< $@ 2>/dev/null || $(LN_S) $< $@ 2>/dev/null || cp -p $< $@
+
+@SIM_ENABLE_ARCH_erc32_TRUE@erc32/%.o: erc32/%.c | erc32/libsim.a $(SIM_ALL_RECURSIVE_DEPS)
+@SIM_ENABLE_ARCH_erc32_TRUE@   $(MAKE) -C $(@D) $(@F)
 @SIM_ENABLE_ARCH_erc32_TRUE@sim-%D-install-exec-local: installdirs
 @SIM_ENABLE_ARCH_erc32_TRUE@   $(AM_V_at)$(MKDIR_P) $(DESTDIR)$(bindir)
 @SIM_ENABLE_ARCH_erc32_TRUE@   n=`echo sis | sed '$(program_transform_name)'`; \
@@ -2539,6 +3287,9 @@ testsuite/common/bits64m63.c: testsuite/common/bits-gen$(EXEEXT) testsuite/commo
 @SIM_ENABLE_ARCH_lm32_TRUE@    $(AM_V_at)$(SHELL) $(srcroot)/move-if-change lm32/mloop.cin lm32/mloop.c
 @SIM_ENABLE_ARCH_lm32_TRUE@    $(AM_V_at)touch $@
 
+@SIM_ENABLE_ARCH_m32c_TRUE@m32c/%.o: m32c/%.c | m32c/libsim.a $(SIM_ALL_RECURSIVE_DEPS)
+@SIM_ENABLE_ARCH_m32c_TRUE@    $(MAKE) -C $(@D) $(@F)
+
 # These rules are copied from automake, but tweaked to use FOR_BUILD variables.
 @SIM_ENABLE_ARCH_m32c_TRUE@m32c/opc2c$(EXEEXT): $(m32c_opc2c_OBJECTS) $(m32c_opc2c_DEPENDENCIES) m32c/$(am__dirstamp)
 @SIM_ENABLE_ARCH_m32c_TRUE@    $(AM_V_CCLD)$(LINK_FOR_BUILD) $(m32c_opc2c_OBJECTS) $(m32c_opc2c_LDADD)
@@ -2654,12 +3405,6 @@ testsuite/common/bits64m63.c: testsuite/common/bits-gen$(EXEEXT) testsuite/commo
 @SIM_ENABLE_ARCH_moxie_TRUE@     echo "update the device tree blob."; \
 @SIM_ENABLE_ARCH_moxie_TRUE@   fi
 
-# Rule to create the .dirstamp file (on which moxie-gdb.dtb depends)
-# as automake fails to automatically create this rule for _DATA items.
-@SIM_ENABLE_ARCH_moxie_TRUE@moxie/$(am__dirstamp):
-@SIM_ENABLE_ARCH_moxie_TRUE@   @$(MKDIR_P) moxie
-@SIM_ENABLE_ARCH_moxie_TRUE@   @: >moxie/$(am__dirstamp)
-
 @SIM_ENABLE_ARCH_or1k_TRUE@or1k/mloop.c or1k/eng.h: or1k/stamp-mloop ; @true
 @SIM_ENABLE_ARCH_or1k_TRUE@or1k/stamp-mloop: $(srccom)/genmloop.sh or1k/mloop.in
 @SIM_ENABLE_ARCH_or1k_TRUE@    $(AM_V_GEN)$(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \
@@ -2670,6 +3415,18 @@ testsuite/common/bits64m63.c: testsuite/common/bits-gen$(EXEEXT) testsuite/commo
 @SIM_ENABLE_ARCH_or1k_TRUE@    $(AM_V_at)$(SHELL) $(srcroot)/move-if-change or1k/mloop.cin or1k/mloop.c
 @SIM_ENABLE_ARCH_or1k_TRUE@    $(AM_V_at)touch $@
 
+@SIM_ENABLE_ARCH_ppc_TRUE@ppc/psim$(EXEEXT): ppc/run$(EXEEXT)
+@SIM_ENABLE_ARCH_ppc_TRUE@     $(AM_V_GEN)ln $< $@ 2>/dev/null || $(LN_S) $< $@ 2>/dev/null || cp -p $< $@
+
+@SIM_ENABLE_ARCH_ppc_TRUE@ppc/%.o: ppc/%.c | ppc/libsim.a $(SIM_ALL_RECURSIVE_DEPS)
+@SIM_ENABLE_ARCH_ppc_TRUE@     $(MAKE) -C $(@D) $(@F)
+
+@SIM_ENABLE_ARCH_rl78_TRUE@rl78/%.o: rl78/%.c | rl78/libsim.a $(SIM_ALL_RECURSIVE_DEPS)
+@SIM_ENABLE_ARCH_rl78_TRUE@    $(MAKE) -C $(@D) $(@F)
+
+@SIM_ENABLE_ARCH_rx_TRUE@rx/%.o: rx/%.c | rx/libsim.a $(SIM_ALL_RECURSIVE_DEPS)
+@SIM_ENABLE_ARCH_rx_TRUE@      $(MAKE) -C $(@D) $(@F)
+
 # These rules are copied from automake, but tweaked to use FOR_BUILD variables.
 @SIM_ENABLE_ARCH_sh_TRUE@sh/gencode$(EXEEXT): $(sh_gencode_OBJECTS) $(sh_gencode_DEPENDENCIES) sh/$(am__dirstamp)
 @SIM_ENABLE_ARCH_sh_TRUE@      $(AM_V_CCLD)$(LINK_FOR_BUILD) $(sh_gencode_OBJECTS) $(sh_gencode_LDADD)
@@ -2728,6 +3485,12 @@ testsuite/common/bits64m63.c: testsuite/common/bits-gen$(EXEEXT) testsuite/commo
 @SIM_ENABLE_ARCH_v850_TRUE@    $(AM_V_at)$(SHELL) $(srcroot)/move-if-change v850/tmp-irun.c v850/irun.c
 @SIM_ENABLE_ARCH_v850_TRUE@    $(AM_V_at)touch $@
 
+%/libsim.a: | $(SIM_ALL_RECURSIVE_DEPS)
+       $(MAKE) -C $(@D) $(@F)
+
+%/nrun.o: common/nrun.c | %/libsim.a $(SIM_ALL_RECURSIVE_DEPS)
+       $(MAKE) -C $(@D) $(@F)
+
 all-recursive: $(SIM_ALL_RECURSIVE_DEPS)
 
 install-data-local: installdirs $(SIM_INSTALL_DATA_LOCAL_DEPS)
diff --git a/sim/aarch64/local.mk b/sim/aarch64/local.mk
new file mode 100644 (file)
index 0000000..7e5a537
--- /dev/null
@@ -0,0 +1,25 @@
+## See sim/Makefile.am
+##
+## Copyright (C) 2015-2022 Free Software Foundation, Inc.
+## Contributed by Red Hat.
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
index 84dfbdfa5367f18bba56745fbf359e8231ec7a7d..99790c6e4e42222ef04d913d34adc477083e0a9a 100644 (file)
@@ -1,6 +1,7 @@
 ## See sim/Makefile.am
 ##
 ## Copyright (C) 1995-2022 Free Software Foundation, Inc.
+## Written by Cygnus Support.
 ##
 ## This program is free software; you can redistribute it and/or modify
 ## it under the terms of the GNU General Public License as published by
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 %C%docdir = $(docdir)/%C%
 %C%doc_DATA = %D%/README
diff --git a/sim/avr/local.mk b/sim/avr/local.mk
new file mode 100644 (file)
index 0000000..7da4006
--- /dev/null
@@ -0,0 +1,24 @@
+## See sim/Makefile.am
+##
+## Copyright (C) 2009-2022 Free Software Foundation, Inc.
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
diff --git a/sim/bfin/local.mk b/sim/bfin/local.mk
new file mode 100644 (file)
index 0000000..f61c917
--- /dev/null
@@ -0,0 +1,25 @@
+## See sim/Makefile.am
+##
+## Copyright (C) 2005-2022 Free Software Foundation, Inc.
+## Written by Analog Devices, Inc.
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
index 9b096baf3adfc281baf975757a9e6683e31f997f..b855db359691af3d975a61a9ff105f3f1942fe95 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 %C%_BUILD_OUTPUTS = \
        %D%/eng-le.h \
        %D%/mloop-le.c \
index 2cdf357d8818304ed40961e8612b9055d8d80a38..8e27795438a932c3ea5f7b7716507d923693001d 100644 (file)
@@ -208,18 +208,13 @@ LINK_FOR_BUILD = $(CC_FOR_BUILD) $(BUILD_CFLAGS) $(LDFLAGS_FOR_BUILD) -o $@
 
 RUNTESTFLAGS =
 
-all: libsim.a run$(EXEEXT)
+all: libsim.a $(SIM_RUN_OBJS)
 
 libsim.a: $(LIB_OBJS)
        $(SILENCE) rm -f libsim.a
        $(ECHO_AR) $(AR) $(AR_FLAGS) libsim.a $(LIB_OBJS)
        $(ECHO_RANLIB) $(RANLIB) libsim.a
 
-run$(EXEEXT): $(SIM_RUN_OBJS) libsim.a $(LIBDEPS)
-       $(ECHO_CCLD) $(LIBTOOL) $(AM_V_lt) --tag=CC --mode=link \
-         $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o run$(EXEEXT) \
-         $(SIM_RUN_OBJS) libsim.a $(EXTRA_LIBS)
-
 #
 # Dependency tracking.  Most of this is conditional on GNU Make being
 # found by configure; if GNU Make is not found, we fall back to a
index 5afae9141e5420d5d871fb37f3c02b176db135e3..c45af29d8c713a8ddd5aec7603bdd7658c0c2981 100644 (file)
@@ -30,7 +30,8 @@ SIM_ALL_RECURSIVE_DEPS += \
 
 ## NB: libcommon.a isn't used directly by ports.  We need a target for common
 ## objects to be a part of, and ports use the individual objects directly.
-noinst_LIBRARIES += %D%/libcommon.a
+SIM_COMMON_LIB = %D%/libcommon.a
+noinst_LIBRARIES += $(SIM_COMMON_LIB)
 %C%_libcommon_a_SOURCES = \
        %D%/callback.c \
        %D%/portability.c \
@@ -50,3 +51,19 @@ noinst_LIBRARIES += %D%/libcommon.a
 
 CLEANFILES += \
        %D%/version.c %D%/version.c-stamp
+
+##
+## For subdirs.
+##
+
+LIBIBERTY_LIB = ../libiberty/libiberty.a
+BFD_LIB = ../bfd/libbfd.la
+OPCODES_LIB = ../opcodes/libopcodes.la
+
+SIM_COMMON_LIBS = \
+       $(SIM_COMMON_LIB) \
+       $(BFD_LIB) \
+       $(OPCODES_LIB) \
+       $(LIBIBERTY_LIB) \
+       $(LIBGNU) \
+       $(LIBGNU_EXTRA_LIBS)
index 00639e805d459ba0fda3b335440a574f5be60baf..d8b734e59ebd281b1da21af8869aa898ad05f8d9 100755 (executable)
@@ -655,6 +655,8 @@ ENABLE_SIM_FALSE
 ENABLE_SIM_TRUE
 SIM_ENABLE_IGEN_FALSE
 SIM_ENABLE_IGEN_TRUE
+SIM_ENABLE_ARCH_examples_FALSE
+SIM_ENABLE_ARCH_examples_TRUE
 CC_FOR_TARGET_EXAMPLE_SYNACOR
 LD_FOR_TARGET_EXAMPLE_SYNACOR
 AS_FOR_TARGET_EXAMPLE_SYNACOR
@@ -12426,7 +12428,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 12429 "configure"
+#line 12431 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -12532,7 +12534,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 12535 "configure"
+#line 12537 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -15680,6 +15682,14 @@ as_fn_append SIM_TOOLCHAIN_VARS " AS_FOR_TARGET_EXAMPLE_SYNACOR LD_FOR_TARGET_EX
 
 
   fi
+   if test "${enable_example_sims}" = "yes"; then
+  SIM_ENABLE_ARCH_examples_TRUE=
+  SIM_ENABLE_ARCH_examples_FALSE='#'
+else
+  SIM_ENABLE_ARCH_examples_TRUE='#'
+  SIM_ENABLE_ARCH_examples_FALSE=
+fi
+
 fi
  if test "$sim_igen" = "yes"; then
   SIM_ENABLE_IGEN_TRUE=
@@ -16487,6 +16497,10 @@ if test -z "${SIM_ENABLE_ARCH_v850_TRUE}" && test -z "${SIM_ENABLE_ARCH_v850_FAL
   as_fn_error $? "conditional \"SIM_ENABLE_ARCH_v850\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${SIM_ENABLE_ARCH_examples_TRUE}" && test -z "${SIM_ENABLE_ARCH_examples_FALSE}"; then
+  as_fn_error $? "conditional \"SIM_ENABLE_ARCH_examples\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${SIM_ENABLE_IGEN_TRUE}" && test -z "${SIM_ENABLE_IGEN_FALSE}"; then
   as_fn_error $? "conditional \"SIM_ENABLE_IGEN\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
index 30479aebc491129aea5e1186e383fb4eabf14c87..135aa2198cfde78f30db77dc62de344e26c39261 100644 (file)
@@ -156,6 +156,7 @@ if test "${enable_sim}" != no; then
     SIM_AC_TOOLCHAIN_FOR_TARGET(example-synacor)
     SIM_BUILD_TARGET([example-synacor])
   fi
+  AM_CONDITIONAL([SIM_ENABLE_ARCH_examples], [test "${enable_example_sims}" = "yes"])
 fi
 AM_CONDITIONAL([SIM_ENABLE_IGEN], [test "$sim_igen" = "yes"])
 AM_CONDITIONAL([ENABLE_SIM], [test -n "$SIM_SUBDIRS"])
index f84a618889c425b2a5484d4e2407587544cb4ee3..a318bd4199b8f57faaa84e23c4b2e755716fde98 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 %C%_BUILD_OUTPUTS = \
        %D%/gencode$(EXEEXT) \
        %D%/simops.h \
index 62a3f8e80abfd535e77c0288d6a72c18f6e258e6..0a3423c33897913a90d3d4badf56c1dd1e0c2583 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 ## rvdummy is just used for testing -- it runs on the same host as `run`.
 ## It does nothing if --enable-sim-hardware isn't active.
 %C%_rvdummy_SOURCES = %D%/rvdummy.c
index f72bc145c906546fbf0bcf62dfccb4aa236d7fcb..4edd2e90d2865856f462d75b0cc23810c2df4404 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 %C%_BUILD_OUTPUTS = \
        %D%/gencode$(EXEEXT) \
        %D%/simops.h \
index eef81d9dcd6e4915a81198fad98733ec33f67785..6675fceccf3d7fed398ff072011816f686424173 100644 (file)
@@ -24,7 +24,6 @@ SIM_OBJS = exec.o erc32.o func.o help.o float.o interf.o
 SIM_RUN_OBJS = sis.o
 SIM_EXTRA_CFLAGS = $(READLINE_CFLAGS)
 SIM_EXTRA_LIBS = $(READLINE_LIB) $(TERMCAP_LIB)
-SIM_EXTRA_CLEAN = clean-sis
 
 # UARTS run at about 115200 baud (simulator time). Add -DFAST_UART to
 # CFLAGS if faster (infinite) UART speed is desired. Might affect the
@@ -32,11 +31,3 @@ SIM_EXTRA_CLEAN = clean-sis
 SIM_EXTRA_CFLAGS += -DFAST_UART -I$(srcroot)
 
 ## COMMON_POST_CONFIG_FRAG
-
-all: sis$(EXEEXT)
-sis$(EXEEXT): run$(EXEEXT)
-       $(SILENCE) rm -f $@
-       $(ECHO_GEN) ln $< $@ 2>/dev/null || $(LN_S) $< $@ 2>/dev/null || cp -p $< $@
-
-clean-sis:
-       rm -f sis
index 36baeb96614c2fe2605bb46b12f23181c1ee1905..d73bc5b4bfef78b36b23c7642a8a7ec87574adf9 100644 (file)
@@ -1,6 +1,8 @@
 ## See sim/Makefile.am
 ##
 ## Copyright (C) 1993-2022 Free Software Foundation, Inc.
+## Written by Cygnus Support
+## Modified by J.Gaisler ESA/ESTEC
 ##
 ## This program is free software; you can redistribute it and/or modify
 ## it under the terms of the GNU General Public License as published by
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/sis.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS) $(READLINE_LIB) $(TERMCAP_LIB)
+
+%D%/sis$(EXEEXT): %D%/run$(EXEEXT)
+       $(AM_V_GEN)ln $< $@ 2>/dev/null || $(LN_S) $< $@ 2>/dev/null || cp -p $< $@
+
+## Helper targets for running make from the top-level due to run's sis.o.
+%D%/%.o: %D%/%.c | %D%/libsim.a $(SIM_ALL_RECURSIVE_DEPS)
+       $(MAKE) -C $(@D) $(@F)
+
+noinst_PROGRAMS += %D%/run %D%/sis
+
 %C%docdir = $(docdir)/%C%
 %C%doc_DATA = %D%/README.erc32 %D%/README.gdb %D%/README.sis
 
diff --git a/sim/example-synacor/local.mk b/sim/example-synacor/local.mk
new file mode 100644 (file)
index 0000000..20cdc53
--- /dev/null
@@ -0,0 +1,25 @@
+## See sim/Makefile.am
+##
+## Copyright (C) 2005-2022 Free Software Foundation, Inc.
+## Written by Mike Frysinger <vapier@gentoo.org>
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
index 687fb4a86667a87aba458ce226e212ea411f073c..e08a488a91df0e7de70145539382ae2dacf1a04b 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 %C%docdir = $(docdir)/%C%
 %C%doc_DATA = %D%/README
 
diff --git a/sim/ft32/local.mk b/sim/ft32/local.mk
new file mode 100644 (file)
index 0000000..cacf9f2
--- /dev/null
@@ -0,0 +1,25 @@
+## See sim/Makefile.am
+##
+## Copyright (C) 2008-2022 Free Software Foundation, Inc.
+## Written by FTDI
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
diff --git a/sim/h8300/local.mk b/sim/h8300/local.mk
new file mode 100644 (file)
index 0000000..ae29197
--- /dev/null
@@ -0,0 +1,25 @@
+## See sim/Makefile.am
+##
+## Copyright (C) 1990-2022 Free Software Foundation, Inc.
+## Written by Cygnus Support.
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
index cf9195a4cffe9c71c92fbfe1567e13324ea56162..b9a4ada3badc6d68eeca4a8af8b60ae0db5b7e3d 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 %C%_BUILD_OUTPUTS = \
        %D%/eng.h \
        %D%/mloop.c \
index bb6c7ad248aedbc61d04f21a67cef3788ee16069..7add85ac98b7f8a6dbf3f169c524feee7dc07c94 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 %C%_BUILD_OUTPUTS = \
        %D%/eng.h \
        %D%/mloop.c \
index 3ec947ad037ac861b070f5f4a9ca6decc5377cd3..efdf110e630987324bdacfef2695013042967a01 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/main.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
+## Helper targets for running make from the top-level due to run's main.o.
+%D%/%.o: %D%/%.c | %D%/libsim.a $(SIM_ALL_RECURSIVE_DEPS)
+       $(MAKE) -C $(@D) $(@F)
+
 %C%_BUILD_OUTPUTS = \
        %D%/opc2c$(EXEEXT) \
        %D%/m32c.c \
index 4158c8b57db5d87b0796c3bed33fb39dca386c4e..51d9d3413d6c52b48c3b5b0c77c7acb3a52076d3 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 %C%_BUILD_OUTPUTS = \
        %D%/eng.h \
        %D%/mloop.c \
index 838a089516ebdb05ca2f810b6ccef2d0b3722b5d..3cc980bf036a8fe3d71cd9fb229052f7bcb585f6 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 %C%_BUILD_OUTPUTS = \
        %D%/gencode$(EXEEXT) \
        %D%/m68hc11int.c \
diff --git a/sim/mcore/local.mk b/sim/mcore/local.mk
new file mode 100644 (file)
index 0000000..01a66bd
--- /dev/null
@@ -0,0 +1,25 @@
+## See sim/Makefile.am
+##
+## Copyright (C) 1990-2022 Free Software Foundation, Inc.
+## Written by Cygnus Solutions.
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
diff --git a/sim/microblaze/local.mk b/sim/microblaze/local.mk
new file mode 100644 (file)
index 0000000..01a66bd
--- /dev/null
@@ -0,0 +1,25 @@
+## See sim/Makefile.am
+##
+## Copyright (C) 1990-2022 Free Software Foundation, Inc.
+## Written by Cygnus Solutions.
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
diff --git a/sim/mips/local.mk b/sim/mips/local.mk
new file mode 100644 (file)
index 0000000..8e266e7
--- /dev/null
@@ -0,0 +1,25 @@
+## See sim/Makefile.am
+##
+## Copyright (C) 1995-2022 Free Software Foundation, Inc.
+## Written by Cygnus Support.
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
index a51813c275c1cde4083ab662602146f9f77cb8f5..08a3d4dedc479c809201f9b7b6cec03830ad863d 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 %C%_BUILT_SRC_FROM_IGEN = \
        %D%/icache.h \
        %D%/icache.c \
index 600d2640becaf6fab89ce5aafda48e8caf4add3b..3b5c4c25c268ec4f114da5cb4adb96990966c85b 100644 (file)
@@ -1,6 +1,7 @@
 ## See sim/Makefile.am
 ##
-## Copyright (C) 1993-2022 Free Software Foundation, Inc.
+## Copyright (C) 2008-2022 Free Software Foundation, Inc.
+## Written by Anthony Green
 ##
 ## This program is free software; you can redistribute it and/or modify
 ## it under the terms of the GNU General Public License as published by
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 dtbdir = $(datadir)/gdb/dtb
 
 dtb_DATA = %D%/moxie-gdb.dtb
@@ -30,10 +39,3 @@ dtb_DATA = %D%/moxie-gdb.dtb
          echo "tree compiler tool (dtc) is missing.  Install the tool to "; \
          echo "update the device tree blob."; \
        fi
-
-# Rule to create the .dirstamp file (on which moxie-gdb.dtb depends)
-# as automake fails to automatically create this rule for _DATA items.
-%D%/$(am__dirstamp):
-       @$(MKDIR_P) %D%
-       @: >%D%/$(am__dirstamp)
-DISTCLEANFILES += %D%/$(am__dirstamp)
diff --git a/sim/msp430/local.mk b/sim/msp430/local.mk
new file mode 100644 (file)
index 0000000..58557e1
--- /dev/null
@@ -0,0 +1,25 @@
+## See sim/Makefile.am
+##
+## Copyright (C) 2012-2022 Free Software Foundation, Inc.
+## Written by Red Hat Inc.
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
index 122f78305711ed73f6ac84935802b0560637ee09..cea1c6e28955a4e35d1a15464a9b4cdc8e015c14 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 %C%docdir = $(docdir)/%C%
 %C%doc_DATA = %D%/README
 
index d7b9df0819f4259ec75e0f2c30ada2ff5a516cea..cb1a25b4b5e980120bdc66a05050e0721a7d4ae7 100644 (file)
@@ -37,10 +37,6 @@ include ../arch-subdir.mk
 prefix = @prefix@
 exec_prefix = @exec_prefix@
 
-bindir = @bindir@
-libdir = @libdir@
-tooldir = $(libdir)/$(target_alias)
-
 datarootdir = @datarootdir@
 datadir = @datadir@
 mandir = @mandir@
@@ -135,7 +131,7 @@ BFD_LIB             = ../../bfd/libbfd.la
 
 TARGETLIB      = libsim.a
 
-all:   run$(EXEEXT) $(TARGETLIB) $(GDB_OBJ)
+all:   main.o $(TARGETLIB) $(GDB_OBJ)
 
 .c.o:
        $(ECHO_CC) $(CC) -c $(STD_CFLAGS) $<
@@ -518,14 +514,6 @@ PACKAGE_SRC = pk_disklabel.c
 PACKAGE_OBJ = $(PACKAGE_SRC:.c=.o)
 
 
-psim$(EXEEXT): $(TARGETLIB) main.o $(LIBIBERTY_LIB) $(BFD_LIB)
-       $(ECHO_CCLD) $(LIBTOOL) $(AM_V_lt) --tag=CC --mode=link \
-         $(CC) $(CFLAGS) $(LDFLAGS) -o psim$(EXEEXT) main.o $(TARGETLIB) $(BFD_LIB) $(LIBIBERTY_LIB) $(LIBS)
-
-run$(EXEEXT): psim$(EXEEXT)
-       $(SILENCE) rm -f $@
-       $(ECHO_GEN) ln $< $@ 2>/dev/null || $(LN_S) $< $@ 2>/dev/null || cp -p $< $@
-
 $(TARGETLIB): tmp-igen tmp-dgen tmp-hw tmp-defines $(LIB_OBJ) $(GDB_OBJ)
        $(ECHO_AR) $(AR) $(AR_FLAGS) $(TARGETLIB) $(LIB_OBJ) $(GDB_OBJ)
        $(ECHO_RANLIB) $(RANLIB) $(TARGETLIB)
@@ -811,7 +799,7 @@ TAGS: $(BUILT_SRC)
        etags $(srcdir)/*.h $(srcdir)/*.c $(BUILT_SRC)
 
 clean mostlyclean:
-       rm -f tmp-* *.[oasi] core psim$(EXEEXT) run$(EXEEXT) igen dgen $(BUILT_SRC_WO_CONFIG)
+       rm -f tmp-* *.[oasi] core igen dgen $(BUILT_SRC_WO_CONFIG)
 
 distclean realclean: clean
        rm -f TAGS Makefile config.cache config.status config.h defines.h stamp-h config.log
index 03e54fbe083e47220c3a8da00a4d36deedc7f343..19a8a89ba47c802db038793bec7cc56d763e9ae2 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/main.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+%D%/psim$(EXEEXT): %D%/run$(EXEEXT)
+       $(AM_V_GEN)ln $< $@ 2>/dev/null || $(LN_S) $< $@ 2>/dev/null || cp -p $< $@
+
+## Helper targets for running make from the top-level due to run's sis.o.
+%D%/%.o: %D%/%.c | %D%/libsim.a $(SIM_ALL_RECURSIVE_DEPS)
+       $(MAKE) -C $(@D) $(@F)
+
+noinst_PROGRAMS += %D%/run %D%/psim
+
 %C%docdir = $(docdir)/%C%
 %C%doc_DATA = %D%/BUGS %D%/INSTALL %D%/README %D%/RUN
diff --git a/sim/pru/local.mk b/sim/pru/local.mk
new file mode 100644 (file)
index 0000000..f83a6d9
--- /dev/null
@@ -0,0 +1,25 @@
+## See sim/Makefile.am
+##
+## Copyright (C) 1990-2022 Free Software Foundation, Inc.
+## Written by Dimitar Dimitrov <dimitar@dinux.eu>
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
diff --git a/sim/riscv/local.mk b/sim/riscv/local.mk
new file mode 100644 (file)
index 0000000..11fdcec
--- /dev/null
@@ -0,0 +1,25 @@
+## See sim/Makefile.am
+##
+## Copyright (C) 2005-2022 Free Software Foundation, Inc.
+## Written by Mike Frysinger.
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
diff --git a/sim/rl78/local.mk b/sim/rl78/local.mk
new file mode 100644 (file)
index 0000000..132fa3a
--- /dev/null
@@ -0,0 +1,29 @@
+## See sim/Makefile.am
+##
+## Copyright (C) 2008-2022 Free Software Foundation, Inc.
+## Contributed by Red Hat, Inc.
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/main.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
+## Helper targets for running make from the top-level due to run's main.o.
+%D%/%.o: %D%/%.c | %D%/libsim.a $(SIM_ALL_RECURSIVE_DEPS)
+       $(MAKE) -C $(@D) $(@F)
index 6f2dc7eee79310503d46c4d148b2928cd9e7dda4..119a0f7ccf8d2816e2efd83ed4363c28a6cb9b38 100644 (file)
@@ -1,6 +1,7 @@
 ## See sim/Makefile.am
 ##
 ## Copyright (C) 2008-2022 Free Software Foundation, Inc.
+## Contributed by Red Hat, Inc.
 ##
 ## This program is free software; you can redistribute it and/or modify
 ## it under the terms of the GNU General Public License as published by
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/main.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
+## Helper targets for running make from the top-level due to run's main.o.
+%D%/%.o: %D%/%.c | %D%/libsim.a $(SIM_ALL_RECURSIVE_DEPS)
+       $(MAKE) -C $(@D) $(@F)
+
 %C%docdir = $(docdir)/%C%
 %C%doc_DATA = %D%/README.txt
index 5e97e543c72e99e2efb9450b94c8238b038f6940..34be7b223e77ee4c109ed12fdf41c1afb0cb689c 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 %C%_BUILD_OUTPUTS = \
        %D%/gencode$(EXEEXT) \
        %D%/code.c \
index 028eda36f800692f35c4aa07000d6abae639cd72..367ca6ef1f4a3ab06971548f0a863f49e9c49b86 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+%C%_run_SOURCES =
+%C%_run_LDADD = \
+       %D%/nrun.o \
+       %D%/libsim.a \
+       $(SIM_COMMON_LIBS)
+
+noinst_PROGRAMS += %D%/run
+
 %C%_BUILT_SRC_FROM_IGEN = \
        %D%/icache.h \
        %D%/icache.c \