accel/tcg/internal-common.h | 11 +- include/accel/accel-cpu-ops.h | 2 +- include/exec/translator.h | 3 + include/gdbstub/user.h | 11 + include/system/hvf_int.h | 2 +- include/system/tcg.h | 12 ++ tcg/x86_64/tcg-target-con-set.h | 2 + accel/hvf/hvf-accel-ops.c | 3 +- accel/kvm/kvm-accel-ops.c | 4 +- accel/tcg/cpu-exec-common.c | 37 +++- accel/tcg/cpu-exec.c | 3 + accel/tcg/cputlb.c | 16 +- accel/tcg/tcg-accel-ops.c | 1 + accel/tcg/translator.c | 92 ++++++-- cpu-target.c | 5 +- gdbstub/user.c | 14 ++ monitor/hmp-cmds.c | 7 + system/runstate-hmp-cmds.c | 18 +- tcg/optimize.c | 46 ++-- tcg/tcg.c | 39 ++-- tests/tcg/arm/issue4448.c | 51 +++++ tests/tcg/multiarch/test-xpage-chain.c | 360 ++++++++++++++++++++++++++++++++ tests/tcg/s390x/issue4449.c | 31 +++ tcg/riscv64/tcg-target.c.inc | 6 + tcg/x86_64/tcg-target.c.inc | 36 +++- tests/guest-debug/run-test.py | 5 + tests/tcg/arm/meson.build | 1 + tests/tcg/i386/system/meson.build | 4 + tests/tcg/i386/system/wraparound.S | 35 ++++ tests/tcg/multiarch/gdbstub/xpage-bp.py | 37 ++++ tests/tcg/multiarch/meson.build | 7 + tests/tcg/s390x/meson.build | 1 + 32 files changed, 810 insertions(+), 92 deletions(-) create mode 100644 tests/tcg/arm/issue4448.c create mode 100644 tests/tcg/multiarch/test-xpage-chain.c create mode 100644 tests/tcg/s390x/issue4449.c create mode 100644 tests/tcg/i386/system/wraparound.S create mode 100644 tests/tcg/multiarch/gdbstub/xpage-bp.py