-
Notifications
You must be signed in to change notification settings - Fork 14.9k
Description
Bugzilla Link | 10128 |
Resolution | FIXED |
Resolved on | Sep 01, 2011 18:07 |
Version | trunk |
OS | Windows NT |
Attachments | llvm code you can compile to see the problem, Assembly output from the same |
Reporter | LLVM Bugzilla Contributor |
CC | @asl,@d0k,@efriedma-quic,@rjmccall |
Extended Description
On this .ll file, the syntax I am using is:
llc -mcpu=cortex-m3 -filetype=asm Bad.ll
Alternatively -filetype=obj.
In any case, __node_3__locals is not being aligned.
When emitted as an ELF, it places at 0x1d in .bss.
It's a 4-byte value, so this causes a crash at runtime.
The .s file doesn't have any align directives that I
can see for the value, while the .ll file does. ELF
output has this same problem, so the bug must be before
it gets that far.
This does not occur if these variables are not internalized.
Only when declared static or when internalized for global
optimization does this occur. If the symbols are exported,
the problem isn't there. Perhaps it's some optimization that
only occurs when they are local?
This bug is causing me serious problems, so please take a
look at it.