The Mips port of FreeBSD is currently using an old linker (GNU ld 2.17.50
[FreeBSD] 2007-07-03) which seems to be unable to fully support read-only
.eh_frame sections. However, there exists a patch to fix this (see PR25176)
which adds the missing R_MIPS_PC32 relocation and also seems to fix some
.eh_frame-related crashes.
This patch makes clang use appropriate encodings to support read-only .eh_frame
sections with this patched linker.
Perhaps we should be explicit about this applying to bfd ld 2.17.50. Someone could consider reverting this in a few years once we have a contemporary LLD as the system linker.