> On Aug 26, 2021, at 10:39 PM, Philippe Mathieu-Daudé wrote: > > On 8/26/21 11:11 PM, imp@bsdimp.com wrote: >> From: Warner Losh >> >> Move the CPU functons into target_arch_cpu.c that are unique to each > > Typo "functions" doh! Thanks! >> CPU. These are defined in target_arch.h. >> >> Signed-off-by: Stacey Son >> Signed-off-by: Warner Losh >> Reviewed-by: Richard Henderson >> --- >> bsd-user/i386/target_arch.h | 31 +++++++++++++ >> bsd-user/i386/target_arch_cpu.c | 75 +++++++++++++++++++++++++++++++ >> bsd-user/main.c | 12 ----- >> bsd-user/x86_64/target_arch.h | 31 +++++++++++++ >> bsd-user/x86_64/target_arch_cpu.c | 75 +++++++++++++++++++++++++++++++ >> configure | 7 +-- >> meson.build | 8 +++- >> 7 files changed, 219 insertions(+), 20 deletions(-) >> create mode 100644 bsd-user/i386/target_arch.h >> create mode 100644 bsd-user/i386/target_arch_cpu.c >> create mode 100644 bsd-user/x86_64/target_arch.h >> create mode 100644 bsd-user/x86_64/target_arch_cpu.c > >> diff --git a/bsd-user/main.c b/bsd-user/main.c >> index f7e1df5da5..7b3550898d 100644 >> --- a/bsd-user/main.c >> +++ b/bsd-user/main.c >> @@ -72,13 +72,6 @@ void gemu_log(const char *fmt, ...) >> va_end(ap); >> } >> >> -#if defined(TARGET_I386) >> -int cpu_get_pic_interrupt(CPUX86State *env) >> -{ >> - return -1; >> -} >> -#endif > > Let's avoid that using a stub. Not sure I understand this comment. I’ve removed this code. And I have i386 and x86_64 as separate functions because that’s how Stacey broke it up. I have a todo item to merge them back together once I’m caught up. >> diff --git a/meson.build b/meson.build >> index f2e148eaf9..5fe6b4aae6 100644 >> --- a/meson.build >> +++ b/meson.build >> @@ -2560,9 +2560,13 @@ foreach target : target_dirs >> if 'CONFIG_LINUX_USER' in config_target >> base_dir = 'linux-user' >> target_inc += include_directories('linux-user/host/' / config_host['ARCH']) >> - else >> + endif >> + if 'CONFIG_BSD_USER' in config_target >> base_dir = 'bsd-user' >> - target_inc += include_directories('bsd-user/freebsd') >> + target_inc += include_directories('bsd-user/' / targetos) >> +# target_inc += include_directories('bsd-user/host/' / config_host['ARCH']) > > Left-over? Yea. Future changes will need this line. I’ll delete for now. >> + dir = base_dir / abi >> + arch_srcs += files(dir / 'target_arch_cpu.c') >> endif >> target_inc += include_directories( >> base_dir,