Page MenuHomeFreeBSD

Reorganise certain arm64 assembly code for efficiency
Needs ReviewPublic

Authored by dg612_cam.ac.uk on Jan 11 2023, 6:04 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, May 12, 10:41 AM
Unknown Object (File)
Sat, May 11, 12:37 AM
Unknown Object (File)
Jan 20 2024, 2:51 PM
Unknown Object (File)
Jan 10 2024, 2:26 AM
Unknown Object (File)
Dec 13 2023, 8:06 AM
Unknown Object (File)
Nov 25 2023, 12:51 PM
Unknown Object (File)
Nov 23 2023, 3:25 AM
Unknown Object (File)
Nov 23 2023, 12:24 AM
Subscribers

Details

Reviewers
manu
Summary

Group the load/store and msr/mrs instructions together in swtch.S and other places. This may be useful for efficiency.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

sys/arm64/arm64/swtch.S
100–101

Is there a reason you changed this to ldr, ldp and not keep it as ldp, ldr?

sys/arm64/arm64/swtch.S
100–101

This is mostly stylistic. ldr, ldp and ldp, ldr should be equally fine in practice.

sys/arm64/arm64/swtch.S
100–101

Ok, it looks like there is a penalty on some CPUs for non-64bit aligned ldp, however as these are all 64bit aligned it should be ok.