binutils: allow splitting of AUIPC-based relocs

The low part uses an indirect relocation to the high part to determine
how to fill itself in.  For example:

  .L1:
    auipc t0, %pcrel_hi(foo)
    [unrelated code]
    addi t0, t0, %pcrel_lo(.L1)

will correctly load &foo into t0.