<div dir="ltr">Morello is a prototype implementation of CHERI. Binutils will remain on a branch and the compiler support is LLVM.<div><br></div><div>Hesham.. any thoughts?<br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">---------- Forwarded message ---------<br>From: <strong class="gmail_sendername" dir="auto">Kyrylo Tkachov via Binutils</strong> <span dir="auto"><<a href="mailto:binutils@sourceware.org">binutils@sourceware.org</a>></span><br>Date: Thu, Oct 29, 2020 at 6:52 AM<br>Subject: [AArch64] Announcing the Morello branch in binutils-gdb<br>To: Binutils <<a href="mailto:binutils@sourceware.org">binutils@sourceware.org</a>><br>Cc: <a href="mailto:gnu-morello@op-lists.linaro.org">gnu-morello@op-lists.linaro.org</a> <<a href="mailto:gnu-morello@op-lists.linaro.org">gnu-morello@op-lists.linaro.org</a>><br></div><br><br>Hi all,<br>
<br>
We, Arm, have pushed the users/ARM/morello-binutils-gdb-master branch to the<br>
binutils repo implementing initial support for the Morello architecture [1].<br>
The Morello architecture is a prototype implementation of the capability-based<br>
CHERI [2] architecture in AArch64, intended to promote research into capability<br>
architectures and their deployment.<br>
<br>
The gas, objdump and ld components on the branch are in reasonable shape and<br>
have been used to assemble and link a Linux kernel with Morello modifications.<br>
The GDB port is more of a work in progress.<br>
All code is liable to change going forward, as our understanding of the deployment<br>
opportunities and challenges evolves.<br>
<br>
We have published an LLVM-based Morello toolchain [3] that can be used to try out<br>
the compiler support available for Morello.<br>
The ABI specifications (available on <a href="http://developer.arm.com" rel="noreferrer" target="_blank">developer.arm.com</a> [4]) are in an alpha state<br>
and are likely to change going forward.<br>
<br>
There is work ongoing on porting GCC and glibc to Morello and we will share<br>
more details as that work progresses.<br>
<br>
As Morello is a prototype architecture we intend to maintain the toolchain<br>
components on a branch rather than integrate it into master.<br>
We are interested in any feedback you have on the code.<br>
To report bugs please use the GitLab mirror set up at:<br>
<a href="https://git.morello-project.org/morello-gnu-toolchain/binutils-gdb" rel="noreferrer" target="_blank">https://git.morello-project.org/morello-gnu-toolchain/binutils-gdb</a><br>
<br>
Please send any patches or start discussions on the gnu-morello [5] list,<br>
kindly hosted by Linaro.<br>
<br>
Maintainers for the branch are:<br>
* GDB: Luis Machado <<a href="mailto:luis.machado@linaro.org" target="_blank">luis.machado@linaro.org</a>><br>
* Binutils: Matthew Malcomson <<a href="mailto:matthew.malcomson@arm.com" target="_blank">matthew.malcomson@arm.com</a>><br>
* Binutils: Kyrylo Tkachov <<a href="mailto:kyrylo.tkachov@arm.com" target="_blank">kyrylo.tkachov@arm.com</a>><br>
<br>
We are very excited to investigate the challenges and possibilities of a<br>
capability-based architecture. Please have a read through the links below<br>
if this project is of interest to you and reach out to us on the list [5]<br>
<br>
If you have any feedback or discussions about the Morello architecture and<br>
program you are welcome to reach out on the forums [6].<br>
<br>
We look forward to sharing more in the near future.<br>
<br>
Last but not least, I'd like to say a big thank you to Siddhesh Poyarekar<br>
for the binutils port described here.<br>
<br>
Thanks,<br>
Kyrill<br>
<br>
[1] <a href="https://developer.arm.com/architectures/cpu-architecture/a-profile/morello" rel="noreferrer" target="_blank">https://developer.arm.com/architectures/cpu-architecture/a-profile/morello</a><br>
[2] <a href="https://www.cl.cam.ac.uk/research/security/ctsrd/cheri/" rel="noreferrer" target="_blank">https://www.cl.cam.ac.uk/research/security/ctsrd/cheri/</a><br>
[3] <a href="https://git.morello-project.org/morello/llvm-project" rel="noreferrer" target="_blank">https://git.morello-project.org/morello/llvm-project</a><br>
[4] <a href="https://developer.arm.com/architectures/system-architectures/software-standards/abi" rel="noreferrer" target="_blank">https://developer.arm.com/architectures/system-architectures/software-standards/abi</a><br>
[5] <a href="https://op-lists.linaro.org/mailman/listinfo/gnu-morello" rel="noreferrer" target="_blank">https://op-lists.linaro.org/mailman/listinfo/gnu-morello</a><br>
[6] <a href="https://community.arm.com/developer/research/morello/" rel="noreferrer" target="_blank">https://community.arm.com/developer/research/morello/</a><br>
</div></div></div>