This patch fixes https://github.com/llvm/llvm-project/issues/187033 In BE8 mode, instruction bytes are reversed for sections containing code. This logic currently assumes that arm mapping symbols (e.g. $a, $t, $d) are always associated with InputSections. However, mapping symbols can also be defined in other section types such as mergeable sections (SHF_MERGE). These are not represented as InputSection, and attempting to cast them using cast_if_present<InputSection> results in an assertion failure.
See docs/NewLLD.rst