bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/29803] Relax failed between different output section


From: lifang_xia at linux dot alibaba.com
Subject: [Bug ld/29803] Relax failed between different output section
Date: Fri, 18 Nov 2022 06:20:02 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=29803

--- Comment #3 from lifang_xia at linux dot alibaba.com ---
> Calling lang_size_sections_1 recursively seems more than a little dangerous.
Yes, an other way to avoid this:
Do not relax it if the caller and the dest function are not in same output
sections.
But it is not a good choice.

> Why doesn't the relax_again loop in lang_relax_sections work for you?
It will traverse all the input section and do relax if *relax* is true in
lang_size_sections_1. So in first relax pass, the relaxtion of function "main"
has done, but the address of "foo" does not be updated, so the relaxation in
foo still use the old address(before relaxation of main) to calculate the
offset to the dest symbol.

The *realx_again* can not affect the first relax pass.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]