Incorrect symbol reference
Bug #1254954 reported by
Paul Subramanian
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Linaro GCC |
Incomplete
|
Undecided
|
Unassigned |
Bug Description
I am compiling some test code for CortexA53 (armv8-a) on linaro GCC 4.8 tools
Watch variable window on debugger reporting incorrect value
X29 (Stack Pointer) = 0xB000BFA0
Variable stored in stack at offset 0x1C. Therefore address where this variable value is stored is 0xB000BFBC
Where as the debugger points to __svc_stack+0x3E7C (CFA--0024) = 0xB000BF7C
7206: 00000000b0008100 0 NOTYPE GLOBAL DEFAULT 24 __svc_stack
CFA = SP (0xB000BFA0)
Therefore the value is incorrect. Is this a known issue? Is there something flags that I am missing?
Here is my compile line
aarch64-
Changed in gcc-linaro: | |
status: | New → Incomplete |
To post a comment you must log in.
Hi,
I'm sorry to say that you haven't provided enough information for us to be able to help you at the moment.
Your compile line doesn't provide a list of source files. Is it possible for you to provide a full command line and preprocessed sources (available through -save-temps)? If you can't provide complete code a cut down version would be useful - we don't need a completely executable image - just the source code for the function that has the incorrect debug info in a form that can be successfully compiled.
When you give the source code you you please identify the function name and variable name you are talking about.
Note that x29 is not the stack pointer. The stack pointer is sp (or wsp for the 32-bit view). x29 is the frame pointer.
What debugger are you using?
The CFA you mention certainly looks suspicious. I would normally expect it to be SP+offset in a function that has done some saving to the stack. So this is definitely worth more investigations.
Thanks,
Matt