My company maintains Clozure Common Lisp (CCL).
We are in the process of implementing native support for Apple silicon but that is going to take some time. We have to write a new backend for our compiler that generates 64-bit ARM. We also have to address the page size and JIT issues. (CCL doesn't use a JIT compiler but we can compile functions at runtime.)
In the meantime, we decided to try running CCL under Rosetta. But, it crashes with the message
CCL uses the INT instruction as a means of communicating between Lisp and its underlying kernel. (The particular case above is used by Lisp to request a GC by the kernel.)
The documentation on Rosetta doesn't mention that the use of INT is not allowed.
Re-implementing CCL to not use INT is not practical.
Does anyone have any ideas?
We are in the process of implementing native support for Apple silicon but that is going to take some time. We have to write a new backend for our compiler that generates 64-bit ARM. We also have to address the page size and JIT issues. (CCL doesn't use a JIT compiler but we can compile functions at runtime.)
In the meantime, we decided to try running CCL under Rosetta. But, it crashes with the message
Code Block rosetta error: unsupported 'int 196'
CCL uses the INT instruction as a means of communicating between Lisp and its underlying kernel. (The particular case above is used by Lisp to request a GC by the kernel.)
The documentation on Rosetta doesn't mention that the use of INT is not allowed.
Re-implementing CCL to not use INT is not practical.
Does anyone have any ideas?