Plenty of assembly files do not use the C preprocessor. It turns out that assemblers have their own macro system.
Linux has hardly any .s files.
~/linux$ find . -name '*.s'
./arch/x86/kernel/asm-offsets.s
./kernel/bounds.s
./scripts/mod/devicetable-offsets.s
But there are plenty of .S files with #includes ~/linux$ $ find . -name '*.S' | xargs grep -l '#include' | wc -l
1217
Edit: simplify command as suggested