mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-12-27 10:18:36 +00:00
[AVR] Explicitly set the address of the data section when invoking the linker
This is required to get avr-gdb correctly showing values at the right addresses. This problem was discovered by using debug symbols in an external program to lookup values in an AVR simulator.
This commit is contained in:
parent
1d6eb09d22
commit
ede6005e70
@ -120,6 +120,13 @@ void AVR::Linker::ConstructJob(Compilation &C, const JobAction &JA,
|
||||
Args.AddAllArgs(CmdArgs, options::OPT_L);
|
||||
getToolChain().AddFilePathLibArgs(Args, CmdArgs);
|
||||
|
||||
// "Not [sic] that addr must be offset by adding 0x800000 the to
|
||||
// real SRAM address so that the linker knows that the address
|
||||
// is in the SRAM memory space."
|
||||
//
|
||||
// - https://www.nongnu.org/avr-libc/user-manual/mem_sections.html
|
||||
CmdArgs.push_back("-Tdata=0x800100");
|
||||
|
||||
// If the family name is known, we can link with the device-specific libgcc.
|
||||
// Without it, libgcc will simply not be linked. This matches avr-gcc
|
||||
// behavior.
|
||||
|
Loading…
Reference in New Issue
Block a user