mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-27 04:52:05 +08:00
8fed036bef
Some compilers warn in the frv code: sem.c:24343:41: error: incompatible function pointer types passing 'void (SIM_CPU *, UINT, UDI)' (aka 'void (struct _sim_cpu *, unsigned int, unsigned long)') to parameter of type 'void (*)(SIM_CPU *, UINT, DI)' (aka 'void (*)(struct _sim_cpu *, unsigned int, long)') [-Wincompatible-function-pointer-types] This is due to frvbf_h_acc40U_set using UDI for setting the new value, but using the common sim_queue_fn_di_write API which uses DI. The same size, but different sign. We could change frvbf_h_acc40U_set to take a DI without changing behavior in practice: the UDI is already passed via the queue function which accepts a DI, and frvbf_h_acc40U_set already casts the input to UDI before running any operations on it. However, these files are all generated, so manual changes here would be reverted. Seems like we can only change the register type for all APIs in the cpu definition. This builds cleanly, and passes sim unittests. Not sure if it's 100% the answer, but seems to be the best we have currently. Bug: https://sourceware.org/PR29752 |
||
---|---|---|
.. | ||
acinclude.m4 | ||
arch.c | ||
arch.h | ||
cache.c | ||
cache.h | ||
ChangeLog-2021 | ||
cpu.c | ||
cpu.h | ||
cpuall.h | ||
decode.c | ||
decode.h | ||
frv-sim.h | ||
frv.c | ||
interrupts.c | ||
local.mk | ||
memory.c | ||
mloop.in | ||
model.c | ||
options.c | ||
pipeline.c | ||
profile-fr400.c | ||
profile-fr400.h | ||
profile-fr450.c | ||
profile-fr500.c | ||
profile-fr500.h | ||
profile-fr550.c | ||
profile-fr550.h | ||
profile.c | ||
profile.h | ||
README | ||
registers.c | ||
registers.h | ||
reset.c | ||
sem.c | ||
sim-if.c | ||
sim-main.h | ||
traps.c |
This is the frv simulator directory. It is still work-in-progress. The current sources are well tested and lots of features are in. There are lots of machine generated files in the source directory! They are only generated if you configure with --enable-cgen-maint, similar in behaviour to Makefile.in, configure under automake/autoconf. For details on the generator, see ../../cgen.