sim: riscv: switch to new target-newlib-syscall
authorMike Frysinger <vapier@gentoo.org>
Sun, 28 Nov 2021 05:23:16 +0000 (00:23 -0500)
committerMike Frysinger <vapier@gentoo.org>
Sun, 28 Nov 2021 18:23:58 +0000 (13:23 -0500)
Use the new target-newlib-syscall module.  This is needed to merge all
the architectures into a single build, and riscv has a custom syscall
table for its newlib/libgloss port.

sim/riscv/Makefile.in
sim/riscv/interp.c

index 17cb288eba3d3a7df5f3aca65bc4c5ea449540e3..b967654d7875dd1abf34aa48588a102b45d0fd6c 100644 (file)
@@ -15,9 +15,6 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# This selects the newlib/libgloss syscall definitions.
-NL_TARGET = -DNL_TARGET_riscv
-
 ## COMMON_PRE_CONFIG_FRAG
 
 SIM_OBJS = \
index efa4b5669cb3fc82dd7a9bd922cfd497f8517bef..13fe6c7cae0d09732fbb8a29001fdc69c83703f0 100644 (file)
@@ -24,6 +24,7 @@
 #include "sim/callback.h"
 #include "sim-main.h"
 #include "sim-options.h"
+#include "target-newlib-syscall.h"
 \f
 void
 sim_engine_run (SIM_DESC sd,
@@ -69,6 +70,7 @@ sim_open (SIM_OPEN_KIND kind, host_callback *callback,
   STATE_MACHS (sd) = riscv_sim_machs;
   STATE_MODEL_NAME (sd) = WITH_TARGET_WORD_BITSIZE == 32 ? "RV32G" : "RV64G";
   current_target_byte_order = BFD_ENDIAN_LITTLE;
+  callback->syscall_map = cb_riscv_syscall_map;
 
   /* The cpu data is kept in a separately allocated chunk of memory.  */
   if (sim_cpu_alloc_all (sd, 1) != SIM_RC_OK)