|
Q: знатокам arm-вского ассемблера |
|
|
|
Aug 5 2006, 16:54
|
Местный
  
Группа: Свой
Сообщений: 201
Регистрация: 23-01-06
Из: Msk
Пользователь №: 13 490

|
есть команда STR R1, [R0, #0x0] при R1 = 0x00000000, R0 = 0x400002B5 пишет нули по адресу 0x400002B4 !!! Есть ли выравнивание по адресу записи?! Если это так, то надо аккуратно работать в keil'e с void-скими указателями
|
|
|
|
|
 |
Ответов
|
Aug 7 2006, 10:00
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Harbour @ Aug 7 2006, 12:36)  что-то видать намучено в linker script с align опцией Linker тут практически ни причем, поскольку оперирует линковкой сегментов. Ну а компилятор - в данном контексте имел возможность отругаться и не выдавать из пакованной структуры смещенный адрес dword. Никаких передач через void * или преобразования типов нет, все явно указано - мог, как минимум, предупредить.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Aug 7 2006, 13:46
|
Местный
  
Группа: Свой
Сообщений: 201
Регистрация: 23-01-06
Из: Msk
Пользователь №: 13 490

|
Цитата(defunct @ Aug 7 2006, 14:19)  Цитата(zltigo @ Aug 7 2006, 13:00)  Никаких передач через void * или преобразования типов нет, все явно указано - мог, как минимум, предупредить.
Видимо и предупредил. Тема интересная. Вечером попробую повторить описанный глюк. abcdefg какую версию keil'a Вы использовали? Keil соответсвенно последний (mdk302a, компилятор 2.54a). Void'ский указатель, упомянутый в самом начале, оказался не причем (т.к. думал, что проблема из-за преобразования в void* )
|
|
|
|
Сообщений в этой теме
abcdefg Q: знатокам arm-вского ассемблера Aug 5 2006, 16:54 DASM Цитата(abcdefg @ Aug 5 2006, 20:54) есть ... Aug 5 2006, 17:33 zltigo Цитата(DASM @ Aug 5 2006, 20:33) И Keil т... Aug 5 2006, 17:48  DASM Цитата(zltigo @ Aug 5 2006, 21:48) Цитата... Aug 5 2006, 18:18   abcdefg Цитата(DASM @ Aug 5 2006, 22:18) гм.. ну ... Aug 6 2006, 18:00    Andy Mozzhevilov Цитата(abcdefg @ Aug 7 2006, 00:00) Цитат... Aug 7 2006, 03:22     abcdefg Цитата(Andy Mozzhevilov @ Aug 7 2006, 07... Aug 7 2006, 07:52 Rst7 Цитата(abcdefg @ Aug 5 2006, 19:54) есть ... Aug 6 2006, 10:58 zltigo Цитата(Rst7 @ Aug 6 2006, 13:58) А что ва... Aug 6 2006, 11:26  Rst7 Цитата(zltigo @ Aug 6 2006, 14:26) Цитата... Aug 6 2006, 11:53   zltigo Цитата(Rst7 @ Aug 6 2006, 14:53) Так что ... Aug 6 2006, 12:11 Rst7 ЦитатаДавить? :-)))
Что??? Куда???
Да и это вам п... Aug 6 2006, 12:24 goodwin А вообще-то это зависит от конкретного компилятора... Aug 6 2006, 18:14  Harbour Цитата(zltigo @ Aug 7 2006, 13:00) Цитата... Aug 7 2006, 11:14 Harbour Проверил на arm-elf-gcc 4.1.1 - в любом случае (pa... Aug 7 2006, 11:40 zltigo Цитата(Harbour @ Aug 7 2006, 14:40) а в с... Aug 7 2006, 11:55 defunct ЦитатаКод небрежный - отсюда и результат. Автору н... Aug 7 2006, 13:33 defunct Для тестов использовал приведенный выше пример Сиш... Aug 7 2006, 21:20 goodwin Вот и я о том. Лучше перебдеть, чем недобдеть - ра... Aug 7 2006, 21:39 GetSmart Фактически была некорректной эта команда:
КодU32 *... Aug 8 2006, 01:20 defunct Отправил bug report в Keil, сказали пофиксят.. Aug 9 2006, 12:38 GetSmart Нашёл у себя в ИАР то ли баг, то ли я тупой?
Напиш... Aug 10 2006, 11:53 GetSmart Или может я ошибаюсь? Может выравнивание прикрепля... Aug 10 2006, 12:18 Сергей Борщ Цитата(GetSmart @ Aug 10 2006, 15:18) Или... Aug 10 2006, 12:33 GetSmart Ну допустим. Тогда как проще (и желательно красиве... Aug 10 2006, 13:30 ek74 Цитата(GetSmart @ Aug 10 2006, 17:30) Ну ... Aug 10 2006, 14:32 Сергей Борщ Цитата(GetSmart @ Aug 10 2006, 16:30) Ну ... Aug 10 2006, 15:14 GetSmart Сергей Борщ
Именно так я извратился ещё вчера. (в ... Aug 11 2006, 02:03 Сергей Борщ Цитата(GetSmart @ Aug 11 2006, 05:03) Сер... Aug 11 2006, 08:16 Rst7 Ну есть еще злой способ:
Кодfloat getfloat(cha... Aug 11 2006, 05:14
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|