diff options
Diffstat (limited to 'results/classifier/118/TCG-risc-v/1926044')
| -rw-r--r-- | results/classifier/118/TCG-risc-v/1926044 | 180 |
1 files changed, 180 insertions, 0 deletions
diff --git a/results/classifier/118/TCG-risc-v/1926044 b/results/classifier/118/TCG-risc-v/1926044 new file mode 100644 index 000000000..70702152e --- /dev/null +++ b/results/classifier/118/TCG-risc-v/1926044 @@ -0,0 +1,180 @@ +TCG: 0.899 +graphic: 0.884 +virtual: 0.877 +risc-v: 0.873 +PID: 0.872 +register: 0.867 +user-level: 0.865 +peripherals: 0.859 +performance: 0.849 +vnc: 0.846 +arm: 0.844 +permissions: 0.832 +ppc: 0.825 +architecture: 0.824 +KVM: 0.822 +VMM: 0.808 +hypervisor: 0.807 +semantic: 0.807 +debug: 0.806 +x86: 0.805 +assembly: 0.802 +kernel: 0.790 +device: 0.782 +files: 0.768 +socket: 0.753 +network: 0.735 +boot: 0.734 +mistranslation: 0.667 +i386: 0.653 +-------------------- +TCG: 0.932 +arm: 0.825 +architecture: 0.270 +virtual: 0.169 +hypervisor: 0.164 +files: 0.082 +user-level: 0.040 +kernel: 0.027 +semantic: 0.021 +debug: 0.016 +PID: 0.011 +x86: 0.009 +performance: 0.007 +register: 0.006 +device: 0.006 +boot: 0.004 +permissions: 0.003 +peripherals: 0.002 +socket: 0.001 +VMM: 0.001 +graphic: 0.001 +assembly: 0.001 +network: 0.001 +ppc: 0.001 +risc-v: 0.001 +vnc: 0.001 +mistranslation: 0.001 +KVM: 0.000 +i386: 0.000 + +QEMU-user doesn't report HWCAP2_MTE + +Reproducible on ffa090bc56e73e287a63261e70ac02c0970be61a + +Host Debian 5.10.24 x86_64 GNU + +Configured with "configure --disable-system --enable-linux-user --static" + +This one works and prints "OK" as expected: +clang tests/tcg/aarch64/mte-3.c -target aarch64-linux-gnu -fsanitize=memtag -march=armv8+memtag +qemu-aarch64 --cpu max -L /usr/aarch64-linux-gnu ./a.out && echo OK + + +This one fails and print "0": +cat mytest.c +#include <stdio.h> +#include <sys/auxv.h> + +#ifndef HWCAP2_MTE +#define HWCAP2_MTE (1 << 18) +#endif + +int main(int ac, char **av) +{ + printf("%d\n", (int)(getauxval(AT_HWCAP2) & HWCAP2_MTE)); +} + + +clang mytest.c -target aarch64-linux-gnu -fsanitize=memtag -march=armv8+memtag +qemu-aarch64 --cpu max -L /usr/aarch64-linux-gnu ./a.out + +Actually if we make it like this: + +#include <stdio.h> +#include <sys/auxv.h> + +int main(int ac, char **av) +{ + for (int i = 0; i < 32; ++i) + if ((int)(getauxval(AT_HWCAP2) & (1 << i))) + printf("%d\n", i); +} + + +clang mytest.c -target aarch64-linux-gnu -fsanitize=memtag -march=armv8+memtag +qemu-aarch64 --cpu max -L /usr/aarch64-linux-gnu ./a.out + +I see only: HWCAP_FP HWCAP_CRC32 HWCAP_ATOMICS +So no HWCAP2_BTI as well. + +Sorry, 0 7 8 should be "HWCAP2_DCPODP HWCAP2_FLAGM2 HWCAP2_FRINT" + +Yep, there's a whole bunch that have been missed. + +https://<email address hidden>/ + +This has missed 6.0, but should be acceptable to roll into 6.0.1. + +Thanks for the quick fix! + +On Tue, Apr 27, 2021 at 2:55 PM Richard Henderson < +<email address hidden>> wrote: + +> +> https://<email address hidden>/ +> +> This has missed 6.0, but should be acceptable to roll into 6.0.1. +> +> -- +> You received this bug notification because you are subscribed to the bug +> report. +> https://bugs.launchpad.net/bugs/1926044 +> +> Title: +> QEMU-user doesn't report HWCAP2_MTE +> +> Status in QEMU: +> In Progress +> +> Bug description: +> Reproducible on ffa090bc56e73e287a63261e70ac02c0970be61a +> +> Host Debian 5.10.24 x86_64 GNU +> +> Configured with "configure --disable-system --enable-linux-user +> --static" +> +> This one works and prints "OK" as expected: +> clang tests/tcg/aarch64/mte-3.c -target aarch64-linux-gnu +> -fsanitize=memtag -march=armv8+memtag +> qemu-aarch64 --cpu max -L /usr/aarch64-linux-gnu ./a.out && echo OK +> +> +> This one fails and print "0": +> cat mytest.c +> #include <stdio.h> +> #include <sys/auxv.h> +> +> #ifndef HWCAP2_MTE +> #define HWCAP2_MTE (1 << 18) +> #endif +> +> int main(int ac, char **av) +> { +> printf("%d\n", (int)(getauxval(AT_HWCAP2) & HWCAP2_MTE)); +> } +> +> +> clang mytest.c -target aarch64-linux-gnu -fsanitize=memtag +> -march=armv8+memtag +> qemu-aarch64 --cpu max -L /usr/aarch64-linux-gnu ./a.out +> +> To manage notifications about this bug go to: +> https://bugs.launchpad.net/qemu/+bug/1926044/+subscriptions +> + + +Patch has been merged: +https://gitlab.com/qemu-project/qemu/-/commit/68948d18224b93361e28 + |