Skip to content

Potentially incorrect and confusing `CALLER_SAVES` defines in MachRegs.h

Summary

MachRegs.h defines some registers as caller saved via defines.

For example for aarch64 the only CALLER_SAVES defines are:

#define CALLER_SAVES_XMM1
#define CALLER_SAVES_XMM2

But it's unclear to me if these are correct, if the refer to the system ABI or ghc's ABI and what they are used for.

Steps to reproduce

Look at the header

Expected behavior

Ideally there would be a Note or comment expanding on this.

Edited by Andreas Klebinger
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information