[ELF] Allow invalid sh_size%sh_entsize!=0 for non-SHF_MERGE sections
Fixes https://bugs.llvm.org/show_bug.cgi?id=45370
Fixes https://github.com/Clozure/ccl/issues/273
.stab holds a table of 12-byte entries. GNU as before 2.35 incorrectly
sets sh_entsize(.stab) to 20 on 64-bit architectures:
https://sourceware.org/bugzilla/show_bug.cgi?id=25768
We should not emit the confusing error:
"SHF_MERGE section size (...) must be a multiple of sh_entsize (20)
Reviewed By: grimar, psmith
Differential Revision: https://reviews.llvm.org/D77368