-
- Iar может сперва прочитать rxbuf в регистр, а потом вычислить указатель на массив, при низких уровнях оптимизации такое запросто происходит. Поэтому и варнит юзера. - Хитрый Китаец(22.09.2014 08:52)
- Трудно представить, что на что это может повлиять. Что за операция такая - вычисление указателя, что может произойти страшного, будет это сделано до или после чтения? Эдак нужно обо всем предупреждать. - Vladimir Ljaschko(22.09.2014 18:25,
)
- А если указатель (или индекс) тоже лежит в каком-нибудь регистре периферии? В исходном выражении две volatile переменные. Компилятор может их использовать в любом порядке, о чем честно предупреждает. - vmp(22.09.2014 20:05)
- Та самая честность, что хуже воровства. Забить на битовые поля volatile можно молча, зато сцуко предупреждаю о ненужной хрени... Проехали. - Vladimir Ljaschko(22.09.2014 22:49,
)
- Та самая честность, что хуже воровства. Забить на битовые поля volatile можно молча, зато сцуко предупреждаю о ненужной хрени... Проехали. - Vladimir Ljaschko(22.09.2014 22:49,
- А если указатель (или индекс) тоже лежит в каком-нибудь регистре периферии? В исходном выражении две volatile переменные. Компилятор может их использовать в любом порядке, о чем честно предупреждает. - vmp(22.09.2014 20:05)
- Трудно представить, что на что это может повлиять. Что за операция такая - вычисление указателя, что может произойти страшного, будет это сделано до или после чтения? Эдак нужно обо всем предупреждать. - Vladimir Ljaschko(22.09.2014 18:25,
- Iar может сперва прочитать rxbuf в регистр, а потом вычислить указатель на массив, при низких уровнях оптимизации такое запросто происходит. Поэтому и варнит юзера. - Хитрый Китаец(22.09.2014 08:52)