Missaligment during stack construction and destruction
Hi,
Iam using gcc for ARM version 5.4.1-2016-q3 and I have trouble when compiling with -Ofast and -mfpu=neon-vfpv4.
When entering a certain function in my software, gcc generates on function entry
FSTMDBD R13!, {D8-D9} to save some stack data into neon registers,
and on function exit when restoring, it generates
VST1.8 {D8, D9}, [R13@64]
However on certain calls of this function at the time of the restoring the stack pointer is not 8-byte aligned. This gives an exception of type 18 and the cpu crashes.
Compiler flags Iam using are
-fno-common -mcpu=cortex-a15 -mfpu=neon-vfpv4 -mtune=cortex-a15 -marm -mfloat-abi=hard -fno-exceptions -specs=rdimon.specs -ffast-math -pedantic-errors -g -gdwarf-3 -Ofast
Do you have any advice for me on this issue?
If you need more info let me know.
Thanks for your help in advance.
Steve
Question information
- Language:
- English Edit question
- Status:
- Answered
- Assignee:
- No assignee Edit question
- Last query:
- Last reply:
Can you help with this problem?
Provide an answer of your own, or ask Steve for more information if necessary.