Incorrect symbol reference

Bug #1254954 reported by Paul Subramanian
6
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-none-elf-g++ -o release_aarch64\src\ArmPlatform.o -c -march=armv8-a -specs=aem-ve.specs -w -g

Revision history for this message
Matthew Gretton-Dann (matthew-gretton-dann) wrote :

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

Viktor (vchong)
Changed in gcc-linaro:
status: New → Incomplete
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.