реклама на сайте
подробности

 
 
> GCC перепутывает регистры на типе float
vova7890
сообщение Jan 10 2011, 19:03
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 19-11-10
Пользователь №: 61 026



Пишу на гсс 4.5.2.Кароче заметил что спринтф не правильно схавал флоат, я отдизасмил и сравнил с дизасмом иара

char s[56]={0};
sprintf(s, "%f", 55.2);

дизасм гсс:
Код
                MOV     R0, SP
                LDR     R1, =unk_4A6
                LDR     R2, =0x404B9999
                LDR     R3, =0x9999999A


дизасм иара:
Код
                LDR     R3, =0x404B9999
                LDR     R2, =0x9999999A
                MOV     R0, SP
                ADR     R1, dword_58


как видно регистры R2 R3 перепутаны.

LDR R2, =0x404B9999
LDR R3, =0x9999999A

LDR R3, =0x404B9999
LDR R2, =0x9999999A


Че делать?


Go to the top of the page
 
+Quote Post

Сообщений в этой теме


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 00:07
Рейтинг@Mail.ru


Страница сгенерированна за 0.01341 секунд с 7
ELECTRONIX ©2004-2016