On Mon, 1 Jul 2019 at 14:26, Philippe Mathieu-Daudé <phi...@redhat.com> wrote: > > Per Peter Maydell: > > Semihosting hooks either SVC or HLT instructions, and inside KVM > both of those go to EL1, ie to the guest, and can't be trapped to > KVM. > > Let check_for_semihosting() return False when not running on TCG. > > Signed-off-by: Philippe Mathieu-Daudé <phi...@redhat.com> > --- > v3: inline call to g_assert_not_reached if !TCG > --- > target/arm/Makefile.objs | 2 +- > target/arm/cpu.h | 7 +++++++ > target/arm/helper.c | 4 +++- > 3 files changed, 11 insertions(+), 2 deletions(-)
> diff --git a/target/arm/helper.c b/target/arm/helper.c > index 49a0f05cd1..1b4da7aa45 100644 > --- a/target/arm/helper.c > +++ b/target/arm/helper.c > @@ -20,7 +20,6 @@ > #include "qemu/qemu-print.h" > #include "exec/exec-all.h" > #include "exec/cpu_ldst.h" > -#include "arm_ldst.h" > #include <zlib.h> /* For crc32 */ > #include "hw/semihosting/semihost.h" > #include "sysemu/cpus.h" > @@ -29,6 +28,9 @@ > #include "qapi/qapi-commands-target.h" > #include "qapi/error.h" > #include "qemu/guest-random.h" > +#ifdef CONFIG_TCG > +#include "arm_ldst.h" > +#endif Should this ifdeffing of the arm_ldst.h include have gone in another patch? It doesn't seem related to the change described in the commit message. thanks -- PMM