PltSection is used by both PLT and IPLT. The PLT section may have a
header while the IPLT section does not. Split off IpltSection from
PltSection to be clearer.
Unlike other targets, PPC64 cannot use the same code sequence for PLT
and IPLT. This helps make a future PPC64 patch (D71509) more isolated.
On EM_386 and EM_X86_64, when PLT is empty while IPLT is not, currently
we are inconsistent whether the PLT header is attached to in.plt or
in.iplt . Consistently attach the HEADER to in.plt can make the -z
retpolineplt logic simpler. It also makes jmp point to an
aesthetically better place for non-retpolineplt cases.
For consistency, I'd write one line per an assignment.