[LLVMbugs] [Bug 5031] New: Invalid offset folding
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Tue Sep 22 16:43:00 PDT 2009
http://llvm.org/bugs/show_bug.cgi?id=5031
Summary: Invalid offset folding
Product: libraries
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: Common Code Generator Code
AssignedTo: unassignedbugs at nondot.org
ReportedBy: asl at math.spbu.ru
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=3545)
--> (http://llvm.org/bugs/attachment.cgi?id=3545)
Testcase
Consider the attached testcase. Let us compare the two outputs:
1. ./llc 1.bc -mcpu=cortex-a9 -soft-float -asm-verbose=0 -o good.s
2. ./llc 1.bc -mcpu=cortex-a9 -soft-float -asm-verbose=0
-relocation-model=static bad.s
--- good.s 2009-09-23 03:35:50.000000000 +0400
+++ bad.s 2009-09-23 03:35:40.000000000 +0400
@@ -14,7 +14,6 @@
_ZN11FooD0Ev:
stmfd sp!, {r4, lr}
ldr r1, .LCPI1_0
- add r1, r1, #8
str r1, [r0]
ldr r1, [r0, #+476]
mov r4, r0
The difference is caused by the fact that we're not overriding default
relocation model on ARM (this is separate bug, I will take care of it after
this one will be fixed). This leads to different behaviour of
TargetLowering::isOffsetFoldingLegal(): always true to static relocation model
and false for default.
It seems that folded offset is somehow not honored later which leads to invalid
codegen.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list