In my experience, the Arm ecosystem has an excellent track record regarding compatibility across conforming implementations of the architectures (e.g., Armv7-A, ARMv8-A). I can draw a practical comparison to MIPS, where I had to deal with a lot of variability based on various vendor extensions. This is reflected in the "-march=" documentation for GCC: