Short answer: This is 64-bit ARMv8-a (arm64/aarch64), not 32-bit ARMv7/armhf (which is what the plain “ARM” and “NEON” refer to). It would take extra work to make 32-bit work on a 64-bit system.
In older 32-bit ARMv7 NEON is optional. This is not ARMv7, it is ARMv8-a. In ARMv8 ARMv7 will not run without special consideration…this 32-bit mode is a compatibility mode and is considered a foreign architecture. This means you’d have to install the 32-bit linker and library support…after which the CPU has the ability to run this (though at degraded performance). In the ARMv8 mode (the “-a” is 64-bit, the lack of “-a” implies the 32-bit ARMv7 compatibility) NEON will always be present and is not optional…thus any 32-bit ARMv8 compiling would have an error if you try to enable NEON (something always available does not have an enable option, and thus enabling is an error).
Trivia: 32-bit ARM/armhf will run on an ARMv8 platform with the right support, but 32-bit ARMv8 will not run on an older 32-bit ARM/armhf (ARMv8 is a superset of ARMv7).