В итоге, если написать, к примеру, так:
const uint16_t m[10]; или переменные uint16_t m[10] размещены в IRAM, то
a = m[1]; при исполнении возникнет прерывание защиты, т.е. “protected” :p
И это тоже зависит от компилятора - разберется ли он в данном безобразии и заменит ли команду чтения по...