Made arm macros optional defines as new compilers have problems with these