mir
mir copied to clipboard
Apple Silicon M1 support ?
Does MIR allows that?
As I understand M1 is arm64 with some additional proprietary insns (e.g. matrix insns) and most probably there is no serious obstacles to use MIR on M1 as MIR already supports arm64 and is routinely tested on arm64 Linux.
What I need is to add checking specific macos M1 macros to generate the right insns. Currently, macos assumes x86-64. I'll add these checks in couple days.
Testing this on real M1 machine is another issue. I'll try to find an access to such machine and see is there any problem (I don't know may be apple uses a non-standard arm64 ABI).
I started to work on M1 port. I was wrong the current MIR code will not work on M1. The big differences from aarch64-linux is
-
different ABI (M1 uses IOS ABI)
-
different API to implement JITs than one for x86-64 MacOSX
It is quite a work but I hope it will be done before summer. I got a restricted access w/o debugger :( to Apple M1 machine.
@vnmakarov Is there a branch somewhere with the WIP M1 port? I have access to an M1 machine, and it would be nice to play around with, even if it isn't working yet.
@vnmakarov Is there a branch somewhere with the WIP M1 port? I have access to an M1 machine, and it would be nice to play around with, even if it isn't working yet.
Thank you for the proposal. I have no branch and just did a preliminary investigation of what should be done for M1 port. I am waiting an arrival of M1 machine for me. When it arrives I can start a real work on M1 port.
I've added M1 port.
Please see https://github.com/vnmakarov/mir/discussions/177