Перейти к содержанию
    

Inline assembler. Альтернативные имена регистров

Приветствую!

 

Подскажите пожалуйста, как задать альтернативное имя для NEON регистра.

Например: "d0"-vec0, "q0"-long_vec0...

 

Пробовал

register int vec0 asm("d0");

Строка компилится, но использовать это имя vec0 внутри INLINE блока не получается.

Компилятор GNU GCC 4.3.

 

Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вроде бы получается, что если внутри inline в таком случае использовать d0, то и переменная vec0 будет изменяться. То есть vec0 - это для си кода, а d0 для asm.

А вам надо что-то вроде asm("vec0 .req d0"); и в дальнейшем использовать этот vec0 внутри inline.

 

почему-то два раза отправилось.

Изменено пользователем doublekey

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А вам надо что-то вроде asm("vec0 .req d0"); и в дальнейшем использовать этот vec0 внутри inline.

 

Ну, да... именно это и хочу. Так удобнее следовать программе, чем помнить всю раскладку по регистрам...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так работает этот вариант? У меня с r0-r12 регистрами компилится.

 

нет. В этом и вопрос - КАК сделать чтобы работало :)

rxx - работает, но это не наш случай, dxx надо

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...