Enables the generation of the armlink diagnostic
L6238E when a function that is not tagged as preserving eight-byte alignment of the stack calls a function that is tagged as requiring eight-byte alignment of the stack.
NoteThis option controls only the instances of error
L6283Ethat relate to the preserve eight-byte stack alignment implies require eight-byte stack alignment relationship, not any other instances of that error.
When a function is known to preserve eight-byte alignment of the stack,
armclang assigns the build attribute
Tag_ABI_align_preserved to that function. However, the
armclang integrated assembler does not
automatically assign this attribute to assembly code.
By default, armlink does not check
for the build attribute
Tag_ABI_align_preserved. Therefore, when
--strict_preserve8_require8, and armlink generates error
you must check that your assembly code preserves eight-byte stack alignment. If it
does, then add the following directive to your assembly code:
.eabi_attribute Tag_ABI_align_preserved, 1