.editorconfig | 5 + .travis.yml | 2 +- MAINTAINERS | 8 + Makefile | 4 +- Makefile.target | 16 + default-configs/arm-softmmu.mak | 1 + default-configs/lm32-softmmu.mak | 2 + default-configs/m68k-softmmu.mak | 2 + default-configs/mips-softmmu-common.mak | 1 + default-configs/nios2-softmmu.mak | 2 + default-configs/xtensa-softmmu.mak | 2 + gdbstub.c | 2 +- hw/Kconfig | 1 + hw/Makefile.objs | 1 + hw/mips/mips_malta.c | 2 +- hw/semihosting/Kconfig | 3 + hw/semihosting/Makefile.objs | 2 + hw/semihosting/config.c | 186 ++++++++ hw/semihosting/console.c | 84 ++++ include/hw/semihosting/console.h | 38 ++ include/{exec => hw/semihosting}/semihost.h | 17 +- include/sysemu/sysemu.h | 1 + linux-user/Makefile.objs | 2 + linux-user/arm/semihost.c | 24 + qemu-options.hx | 6 +- stubs/Makefile.objs | 1 + stubs/semihost.c | 70 +++ target/arm/arm-semi.c | 96 ++-- target/arm/helper.c | 2 +- target/arm/translate-a64.c | 2 +- target/arm/translate.c | 2 +- target/lm32/helper.c | 2 +- target/m68k/op_helper.c | 2 +- target/mips/Makefile.objs | 3 +- target/mips/helper.h | 2 + target/mips/mips-semi.c | 14 +- target/mips/translate.c | 10 +- target/nios2/helper.c | 2 +- target/xtensa/translate.c | 2 +- target/xtensa/xtensa-semi.c | 2 +- tests/docker/dockerfiles/fedora.docker | 7 + tests/docker/dockerfiles/ubuntu1804.docker | 57 +++ tests/qemu-iotests/check | 177 ++++--- tests/qemu-iotests/group | 177 +++---- tests/tcg/Makefile | 1 + tests/tcg/aarch64/Makefile.softmmu-target | 34 ++ tests/tcg/aarch64/system/boot.S | 239 ++++++++++ tests/tcg/aarch64/system/kernel.ld | 24 + tests/tcg/alpha/Makefile.softmmu-target | 34 ++ tests/tcg/alpha/system/boot.S | 511 +++++++++++++++++++++ tests/tcg/alpha/system/kernel.ld | 30 ++ tests/tcg/i386/Makefile.softmmu-target | 4 +- tests/tcg/i386/system/memory.c | 243 ---------- tests/tcg/minilib/printf.c | 3 + tests/tcg/multiarch/system/Makefile.softmmu-target | 14 + tests/tcg/{i386 => multiarch}/system/hello.c | 0 tests/tcg/multiarch/system/memory.c | 449 ++++++++++++++++++ vl.c | 128 +----- 58 files changed, 2178 insertions(+), 580 deletions(-) create mode 100644 hw/semihosting/Kconfig create mode 100644 hw/semihosting/Makefile.objs create mode 100644 hw/semihosting/config.c create mode 100644 hw/semihosting/console.c create mode 100644 include/hw/semihosting/console.h rename include/{exec => hw/semihosting}/semihost.h (78%) create mode 100644 linux-user/arm/semihost.c create mode 100644 stubs/semihost.c create mode 100644 tests/docker/dockerfiles/ubuntu1804.docker create mode 100644 tests/tcg/aarch64/Makefile.softmmu-target create mode 100644 tests/tcg/aarch64/system/boot.S create mode 100644 tests/tcg/aarch64/system/kernel.ld create mode 100644 tests/tcg/alpha/Makefile.softmmu-target create mode 100644 tests/tcg/alpha/system/boot.S create mode 100644 tests/tcg/alpha/system/kernel.ld delete mode 100644 tests/tcg/i386/system/memory.c create mode 100644 tests/tcg/multiarch/system/Makefile.softmmu-target rename tests/tcg/{i386 => multiarch}/system/hello.c (100%) create mode 100644 tests/tcg/multiarch/system/memory.c