In src_configure the firefox config script does ask for special secondary rust target called 'thumbv7neon-unknown-linux-gnueabihf' if USE="+cpu_flags_arm_neon" is enabled. It is needed on top of armv7-unknown-linux-gnueabihf, since upstream only intends to provide it as a std lib archive. Right now, there is no way to enable the bootstrap of this special rust-std target 'thumbv7neon-unknown-linux-gnueabihf' in the dev-lang/rust ebuild, let alone the dev-lang/rust-bin ebuild. So we are trapped and forced to disable all neon support via USE="-cpu_flags_arm_neon", however --with-fpu=neon alone does work with standalone armv7-unknown-linux-gnueabihf rustc ; --with-thumb=yes alone demands the special rust-std 'thumbv7neon-unknown-linux-gnueabihf' to be present. A workaround would be to disable cpu_flags_arm_neon and inject --with-fpu=neon via env file, but thats rather odd. I will attach a split patch against firefox-91.0.1 ebuild later the evening.
Created attachment 735937 [details, diff] suggested patch
there is still some work to be done for profiles, as CPU_FLAGS_ARM="thumb2" is forced on armv7a profiles, and also on aarch64
Created attachment 735939 [details, diff] allow armv7a profiles to unforce thumb2 mask needs to be expanded to spidermonkey, thunderbird obviously
Sorry this is a bit outdated now. We could use a fresh bug with _all_ steps included to get arm support in firefox, as we don't officially support arm currently.