Skip to content

Add support for QEMU virt AArch64#114

Merged
Ivan-Velickovic merged 4 commits intomainfrom
qemu_arm_virt
Mar 27, 2024
Merged

Add support for QEMU virt AArch64#114
Ivan-Velickovic merged 4 commits intomainfrom
qemu_arm_virt

Conversation

@Ivan-Velickovic
Copy link
Collaborator

No description provided.

There is a naive memcpy() implementation in the loader
for copying data from the loader image to the right
region in physical memory. The compiler, understandibly, decides
to optimise this (given we are passing -O3). However, the
compiler optimizes this loop into vector/FPU instructions
which I believe fails on platforms that do not already have
their FPU initialised, such as QEMU ARM virt.

Most hardware platforms have their FPU initialised by U-Boot
which runs before the Microkit loader which is why it has
not been a problem until now.

Signed-off-by: Ivan Velickovic <i.velickovic@unsw.edu.au>
@Ivan-Velickovic Ivan-Velickovic force-pushed the qemu_arm_virt branch 3 times, most recently from 92f3e11 to ab9f5b6 Compare March 25, 2024 11:48
@Ivan-Velickovic Ivan-Velickovic changed the title Add support for QEMU ARM virt Add support for QEMU virt AArch64 Mar 25, 2024
Signed-off-by: Ivan Velickovic <i.velickovic@unsw.edu.au>
Signed-off-by: Ivan Velickovic <i.velickovic@unsw.edu.au>
@Ivan-Velickovic Ivan-Velickovic merged commit 3597831 into main Mar 27, 2024
@Ivan-Velickovic Ivan-Velickovic deleted the qemu_arm_virt branch March 27, 2024 22:03
@Ivan-Velickovic Ivan-Velickovic mentioned this pull request Jun 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant