mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-04-09 16:45:03 +00:00
"On SPU, variables in the .bss section that are allocated with the .lcomm directive are not aligned on 16 byte boundaries. This causes misaligned loads, as the generated assembly assumes this "default" alignment.
this patch disables .lcomm in favour of '.local .comm' Patch by Kalle Raisklia! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100875 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
53b73a283e
commit
dc8446330f
@ -18,7 +18,6 @@ SPULinuxMCAsmInfo::SPULinuxMCAsmInfo(const Target &T, const StringRef &TT) {
|
||||
ZeroDirective = "\t.space\t";
|
||||
Data64bitsDirective = "\t.quad\t";
|
||||
AlignmentIsInBytes = false;
|
||||
HasLCOMMDirective = true;
|
||||
|
||||
PCSymbol = ".";
|
||||
CommentString = "#";
|
||||
|
@ -1,5 +1,7 @@
|
||||
; RUN: llc < %s -march=cellspu > %t1.s
|
||||
; RUN: grep "\.section" %t1.s | grep "\.bss" | count 1
|
||||
; CHECK-NOT: .lcomm
|
||||
|
||||
@bssVar = global i32 zeroinitializer
|
||||
@localVar= internal global i32 zeroinitializer
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user