sometimes the plan 9 compilers do things that gcc doesn't, partly because adherence to an often elaborate ABI isn't required. certainly that's true on the PowerPC and i think it's also true on the ARM. i'd say from inspection of gcc and experience of 5? that the 5l linker for ARM has an easier time sorting out literal pools and ARM/Thumb linkage than the gcc system, partly because it's working with an abstract object program as input, not the encoded instruction forms. we can then convert the resulting executable into a form that other systems like.