blob: b48ededc8ef4df3d1643af9394b6cff4dc31dc2d (
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
|
instruction: 0.932
device: 0.871
mistranslation: 0.798
graphic: 0.713
semantic: 0.618
network: 0.577
socket: 0.504
other: 0.463
vnc: 0.395
boot: 0.376
assembly: 0.134
KVM: 0.107
[AArch64] - blr x30 is handled incorrectly
Whenever x30 is used as the operand for blr, the result will be incorrect. There is no restriction on using x30 (LR) with the blr instruction in the ARMv8 manual. There are two statically linked 64-bit executables in files.tar.gz: good and bad. The executable "good" uses "blr x9", and the output is what is expected: "func". The executable "bad" uses "blr x30" and nothing is printed out. It prints "func" on the actual device.
I think this should already be fixed in master by commit 1b505f93bcf60 (about a month ago). Can you try a newer QEMU build, please?
Thanks, Peter. I just built the latest development build, and it now passes. Sorry for the false alarm.
|