unify RCP and cache accesses with portable macro logic
fix macro re-definition warning in GCC (already in my_types.h)