Replies: 1 comment
-
Nice, thanks a lot. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
For some time I've been working on MIR Apple M1 port. Now the port is available.
Apple M1 ABI is different from aarch64 linux. The major differences are:
long double is actually double.
Apple M1 has more strict interface to generate JITted code. This results in impossibility to generate JITted code from already JITted code. I don't think it is a big constraints for most users but it created some troubles in bootstrapping
c2m
compiler. They were overcome by prohibiting JITting a new very small function (_MIR_set_code
).Apple M1 call ABI is different from linux one and this difference requires always to use prototype for calling vararg functions. It is true for
clang
and forc2m
. Hundreds tests were modified (mostly printf prototypes were added) for this.Beta Was this translation helpful? Give feedback.
All reactions