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

Load Alignment Exception with Arm Compiler 6.13

I am working on a low level trusted bootloader (written in C) running on an ARM Cortex-A53 at EL3.  The MMU is not setup and the bootloader is running out of ROM.  We are linking in the CC712 TEE-SBROM library, and running into alignment exceptions when performing a load.  Prior to Arm compiler 6.13, I was able to force strict alignment using the -mno-unaligned-access.  The Alignment Data Abort Exception has returned with the 6.13.   More specifically, the exception happens when trying to initialize a local function variable:


The constant string is stored at a 16-bit aligned address. When it tries to load the address, it generates an alignment exception.

Here's a snippet of the assembly:



Using ARM Compiler 6.12, the beginning of the string is placed on a 64-bit boundary. Any suggestions on how to do this on 6.13?

here are the compiler flags:




And the Exception:

ESR_EL3: 96000021  FAR_EL3: 1334a, Stack Ptr = 34077024 
0