
Re: Cortex М3 подравняване на данни?
Някои от инструкциите за Load/Store (LDRD, LDM...) не могат да правят неподравнен достъп независимо как е сетнат UNALIGN_TRP. Аз го разбрах по трудния начин, след като реших да достъпвам една пакетирана структура. В началото работеше ама след нЕкои оптимизации изведнъж спря

За тази цел в KEIL-а са сложили следната екстра __packed int *p; демек пойнтър към "пакетиран" int. С него се гарантира явно, че няма да ползва LDRD, STRD и подобните. Ама ако не е проблем най-добре да се подравнява, неподравнения достъп е по-бавен.