In the assembler or inline assembler,
attempting to use an invalid fixup type
gives a crash with a segmentation fault.
attribute((naked))
void foo(void) {
asm("mov r9, :lower16:bar(prel31)");
}
This should give a proper error message when building for ARM or Thumb.
This brings it in line with AARCH64.
This fixes all 8 instances of llvm_unreachable("Unsupported Modifier");
in ARM/MCTargetDesc/ARMELFObjectWriter.cpp.
A test is provided for each instance.