QEMU-user doesn't report HWCAP2_MTE
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
QEMU |
Fix Released
|
Undecided
|
Richard Henderson |
Bug Description
Reproducible on ffa090bc56e73e2
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/
qemu-aarch64 --cpu max -L /usr/aarch64-
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
}
clang mytest.c -target aarch64-linux-gnu -fsanitize=memtag -march=armv8+memtag
qemu-aarch64 --cpu max -L /usr/aarch64-
tags: |
added: arm removed: aarch64 |
tags: |
added: linux-user removed: user |
Changed in qemu: | |
status: | Fix Committed → Fix Released |
Actually if we make it like this:
#include <stdio.h>
#include <sys/auxv.h>
int main(int ac, char **av) getauxval( AT_HWCAP2) & (1 << i)))
printf( "%d\n", i);
{
for (int i = 0; i < 32; ++i)
if ((int)(
}
clang mytest.c -target aarch64-linux-gnu -fsanitize=memtag -march=armv8+memtag linux-gnu ./a.out
qemu-aarch64 --cpu max -L /usr/aarch64-
I see only: HWCAP_FP HWCAP_CRC32 HWCAP_ATOMICS
So no HWCAP2_BTI as well.