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

 
 
> Ассемблер AVR32, Вопрос по компилятору AVR32-GCC
ostrovv
сообщение Dec 17 2013, 08:38
Сообщение #1





Группа: Новичок
Сообщений: 3
Регистрация: 19-06-12
Пользователь №: 72 398



Дорого всем . . .

Код
File main.c

#include <avr32/io.h>
extern void fun(void);
int main(void)
{
    while(1)
    {
        fun();
    }
}

File  Assembly1.s

#include <avr32/io.h>
.global fun
    fun:
      mov     r2, 0
      mov     r3, 0
      st.d    r0++, r2
      cp      r0, r1
      ld.d    r4, r2++
      st.d    r0++, r4


дизассемлер при отладке
Код
  mov     r2, 0
8000010C  mov R2, 0        
      mov     r3, 0
8000010E  mov R3, 0        
      st.d    r0++, r2
80000110  st.d R0++, R1        
      cp      r0, r1
80000112  cp.w R0, R1        
      ld.d    r4, r2++
80000114  ld.d R2, R2++        
      st.d    r0++, r4
80000116  st.d R0++, R2


подскажите материал/ссылку/документик где описывается почему компилятор заменяет регистры, в последних двух командах (r4-r2), и как отключить в настройках компилятора . . .
в всяко разных доках Atmel не нашел . . .

Спасибо
Go to the top of the page
 
+Quote Post

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


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

 


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


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