blob: c1dcc04013b8c9833ea29987440865789bafb7fe (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
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
|