Message ID | 20190430165234.32272-1-alex.bennee@linaro.org |
---|---|
Headers | show |
Series | demacro softmmu (plus tests/coverage) | expand |
On 4/30/19 9:52 AM, Alex Bennée wrote: > I've also moved the existing system memory test and made it multiarch > and added the bootstrapping for aarch64 system tests. I would like to > add support for Big Endian as well but I didn't want to delay the > posting of the series. It would also be nice to exercise the > ioread/write paths and other handling but I leave this as an exercise > for later. Somewhere in there you're adding -chardev file,path=hello.out,id=output but there's no corresponding use of the chardev. Which, somehow doesn't seem to matter to your aarch64 testcase, but when I try this for alpha I truly get no output at all. I needed -serial chardev:output to populate the file. r~
Richard Henderson <richard.henderson@linaro.org> writes: > On 4/30/19 9:52 AM, Alex Bennée wrote: >> I've also moved the existing system memory test and made it multiarch >> and added the bootstrapping for aarch64 system tests. I would like to >> add support for Big Endian as well but I didn't want to delay the >> posting of the series. It would also be nice to exercise the >> ioread/write paths and other handling but I leave this as an exercise >> for later. > > Somewhere in there you're adding > > -chardev file,path=hello.out,id=output It's in the default runner config in tests/tcg/Makefile > but there's no corresponding use of the chardev. > Which, somehow doesn't seem to matter to your aarch64 > testcase, Argh.. it's because -semihosting is different from -serial and doesn't allow the usual redirection rules you get with a chardev.. > but when I try this for alpha I truly get > no output at all. I needed > > -serial chardev:output or -serial chadev,id=output? > > to populate the file. > > > r~ -- Alex Bennée
Alex Bennée <alex.bennee@linaro.org> writes: > Hi, > > This is the latest iteration of the softmmu demacro series. The main > changes from the last submission are some updates from Richard. Ping Emilio/Mark Would you be able to re-run your tests to check there are no other regressions? I can then get the PR prepared for merging ;-) > Some > are merged into the main demacro patch (mostly casting cleanups) and > then a series of 3 patches to out of line some of the less hot code to > keep the main access functions a reasonable size. For example: > > readelf -s aarch64-softmmu/accel/tcg/cputlb.o | ag helper |\ > ag -v atomic | ag mmu | tr -s ' ' | cut -d ' ' -f 4,9 | sort -n > > Before: > > 16 helper_be_ldsl_mmu > 16 helper_le_ldsl_mmu > 18 helper_be_ldsw_mmu > 18 helper_le_ldsw_mmu > 18 helper_ret_ldsb_mmu > 535 helper_ret_ldub_mmu > 556 helper_ret_ldb_cmmu > 586 helper_ret_stb_mmu > 679 helper_le_ldul_mmu > 681 helper_be_ldul_mmu > 685 helper_le_ldq_mmu > 688 helper_be_ldq_mmu > 688 helper_le_lduw_mmu > 693 helper_le_ldl_cmmu > 701 helper_le_ldq_cmmu > 701 helper_le_ldw_cmmu > 703 helper_be_ldl_cmmu > 704 helper_be_ldq_cmmu > 708 helper_be_lduw_mmu > 713 helper_be_ldw_cmmu > 943 helper_le_stw_mmu > 944 helper_le_stl_mmu > 952 helper_be_stl_mmu > 952 helper_le_stq_mmu > 959 helper_be_stw_mmu > 960 helper_be_stq_mmu > > After: > > 5 helper_be_ldul_mmu > 5 helper_be_lduw_mmu > 5 helper_le_ldul_mmu > 5 helper_le_lduw_mmu > 5 helper_ret_ldub_mmu > 14 helper_be_ldl_cmmu > 14 helper_be_ldw_cmmu > 14 helper_le_ldl_cmmu > 14 helper_le_ldw_cmmu > 16 helper_be_ldsl_mmu > 16 helper_le_ldsl_mmu > 18 helper_be_ldsw_mmu > 18 helper_le_ldsw_mmu > 18 helper_ret_ldsb_mmu > 783 helper_ret_stb_mmu > 785 helper_ret_ldb_cmmu > 881 helper_be_ldq_mmu > 881 helper_le_ldq_mmu > 889 helper_le_ldq_cmmu > 897 helper_be_ldq_cmmu > 1150 helper_be_stw_mmu > 1150 helper_le_stw_mmu > 1151 helper_be_stq_mmu > 1151 helper_le_stl_mmu > 1151 helper_le_stq_mmu > 1159 helper_be_stl_mmu > > I've also moved the existing system memory test and made it multiarch > and added the bootstrapping for aarch64 system tests. I would like to > add support for Big Endian as well but I didn't want to delay the > posting of the series. It would also be nice to exercise the > ioread/write paths and other handling but I leave this as an exercise > for later. > > There are also some minor tweaks for the code coverage reports now I'm > running with out-of-tree builds. > > Alex Bennée (11): > tests/tcg/multiarch: add support for multiarch system tests > tests/tcg/multiarch: add hello world system test > tests/tcg/aarch64: add system boot.S > tests/tcg/multiarch: move the system memory test > tests/tcg/minilib: support %c format char > tests/tcg/multiarch: expand system memory test to cover more > accel/tcg: demacro cputlb > accel/tcg: remove softmmu_template.h > Makefile: fix coverage-report reference to BUILD_DIR > Makefile: include per-target build directories in coverage report > Makefile.target: support per-target coverage reports > > Richard Henderson (4): > cputlb: Move TLB_RECHECK handling into load/store_helper > cputlb: Drop attribute flatten > cputlb: Do unaligned load recursion to outermost function > cputlb: Do unaligned store recursion to outermost function > > Makefile | 4 +- > Makefile.target | 16 + > accel/tcg/cputlb.c | 626 +++++++++++++++--- > accel/tcg/softmmu_template.h | 454 ------------- > tests/tcg/Makefile | 1 + > tests/tcg/aarch64/Makefile.softmmu-target | 32 + > tests/tcg/aarch64/system/boot.S | 200 ++++++ > tests/tcg/aarch64/system/kernel.ld | 22 + > tests/tcg/i386/Makefile.softmmu-target | 2 +- > tests/tcg/i386/system/memory.c | 243 ------- > tests/tcg/minilib/printf.c | 6 +- > .../multiarch/system/Makefile.softmmu-target | 14 + > tests/tcg/{i386 => multiarch}/system/hello.c | 0 > tests/tcg/multiarch/system/memory.c | 427 ++++++++++++ > 14 files changed, 1267 insertions(+), 780 deletions(-) > delete mode 100644 accel/tcg/softmmu_template.h > 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 > 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 -- Alex Bennée
On 10/05/2019 11:36, Alex Bennée wrote: > Alex Bennée <alex.bennee@linaro.org> writes: > >> Hi, >> >> This is the latest iteration of the softmmu demacro series. The main >> changes from the last submission are some updates from Richard. > > Ping Emilio/Mark > > Would you be able to re-run your tests to check there are no other > regressions? I can then get the PR prepared for merging ;-) Hi Alex, Sorry for the delay - I've run this through my complete set of PPC/SPARC32/SPARC64 test images and no regressions as far as I can see with this latest version. Tested-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> ATB, Mark.
On Fri, May 10, 2019 at 11:36:33 +0100, Alex Bennée wrote: > Ping Emilio/Mark > > Would you be able to re-run your tests to check there are no other > regressions? I can then get the PR prepared for merging ;-) I'll try to run some tests next week, but I am not sure I'll have time to do so. If I were you I'd go ahead with the PR -- it's best to have these type of changes merged early in the development cycle. Thanks, Emilio