Rui Ueyama
Rui Ueyama
As to stripping the object files, your object files' `.opd` sections (the Official Procedure Description sections) don't contain symbols. That's very odd and arguably a violation of the PPC64 psABI...
Stripping final executable files is fine, but stripping intermediate object files doesn't make much sense. If a compiler emits a symbol, it's there for a reason.
This is a gray area; other linkers might indeed be able to link object files stripped by the strip command. On the other hand, ppc64v1 is an older version of...
@ptr1337 Thanks! I'd start with a "hello world" program though.
Here is a brain dump of things that might affect the compatibility with BOLT. - Our `.eh_frame` section does not have a relocation section even if `--emit-relocs` is given. We...
@gcflymoto Is there anything we can help?
@ishitatsuyuki Did you want to take this?
If we use LLVM 16, can we use BOLT with mold without doing anything special?
I usually build LLVM (and mold) with `-DCMAKE_RELEASE_TYPE=Debug` unless I'm doing performance optimization.
Here is where we create a PLT header and PLT entries: https://github.com/rui314/mold/blob/main/elf/arch-x86-64.cc#L34-L75 The biggest difference compared to the one in the psABI is that our PLT entry has only one...