Arm architectures prior to v4 are not well supported by codegen, in some cases not at all (as noted in llvm does not actually support armv2 or armv3 · Issue #57486 · llvm/llvm-project · GitHub).
I propose to remove options to target them (⚙ D133109 [LLVM][ARM] Remove options for armv2, 2A, 3 and 3M) and am posting this on the slim chance that some project out there is using -march=armv2
etc. with clang and just happens to have not hit a codegen issue doing so.
Is anyone aware of a project that is currently doing that?
I know that there is a Linux kernel build but that is only enabled for GCC and even then, GCC < 9.
The existence of such projects will likely not block removing the options, but a heads up seems like the responsible thing to do (and there will be a release note of course, so it won’t be a hidden change anyway).
There’s no rush to land this so I’ll wait until Thursday next week and go ahead if there’s no objections.