This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug driver/83243] -fuse-ld=lld


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83243

Markus Trippelsdorf <trippels at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |trippels at gcc dot gnu.org

--- Comment #3 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
(In reply to Andrew Pinski from comment #2)
> I think this is a bad idea.

I fully agree. There are several problems with the proposal:

 We already have two functioning GNU linkers. I see lld as a direct
 attack on the GNU licence.

 Amdahl’s law: Even if lld links some apps faster than gold, nobody
 will notice, because the linker is usually not the bottleneck.
 In fact in most code bases compiling a single CU takes more time than
 the final link.

 The lld developers don't like/understand Linux in general.  
 Here is an example quote (from Rui Ueyama): 

»Aah, I knew Unix DSO's are not efficient in resolving symbol names, but        
it's too slow. I really don't like the Unix semantics of the dynamic            
linking object. Windows is much better.                                         

I also dislike the fact that ELF/Unix/C are trying to make DSOs usable          
transparently. On Windows, you have to explicitly mark imported/exported        
functions as dllimported/dllexported, and that is IMO much better than          
trying to hide it.«

 He also recently proposed to drop TLS relaxations in general, because
 the lld relaxation code is a mess and does slow down lld...

So, I see no reason at all to support -fuse-ld=lld.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]