This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

What is in the October release 2.1 of Morello Instruction Emulator?

Arm has released Morello Instruction Emulator version 2.1 on 27th of October 2022.
What are the main changes and improvements that are included in this release?

  • This release marks second anniversary of the initial release of the tool back in October 2020. Version 2.1 comes with a number of important bug fixes and a few interesting features aimed at making work with Morello applications even more convenient and informative.

    New features

    Functionality provided by the tools has been extended with:

    • Remote debugger with HTTP API. It comes with Python client as well as experimental Web-based GUI. Both interfaces allow accessing debugger mode of the emulator via a separate endpoint. This helps make interaction with the debugger easier and also prevents interfering with the application's input.
    • Debugger now supports new command disassemble to show disassembly of the applications code near given PC address.
    • The -break option of the debugger also supports a list of PC address expressions for initial breakpoints.
    • Use of recent compiler optimisations helped improve performance of the emulation and instrumentation.

    New remote debugger allows for extending its functionality based on the provided HTTP API. Users now can implement custom clients to obtain most interesting parts of the information provided by the debugger.

    The tool's user guide has also been updated. Please refer to its latest version for more details about the usage of Morello IE.

    Fixed in this release

    Recent advances in C libraries for Morello allow running more and more sophisticated applications. A number of bugs had been identified in the previous release and fixed in this new version:

    • Fixed handling tags for memory mappings.
    • Fixed crash due to incorrect PCC LSB handling of last address in memory page.
    • Fixed saving and restoring capability registers during signal handlers.
    • Fixed wrong required permissions in the error message for the insufficient permissions capability fault.
    • Fixed cache model crash on some PRFM instructions.
    • Fixed unclear message about tag not set capability fault.
    • Fixed incorrect handling of PSTATE.C64 for branch to 64 bit register instructions.

    This improves support for dynamically linked applications as well as programmes that threads and signal handlers.

    Give it a go and start exploring Morello architecture features from your Armv8 device!