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

 
 
> ARM gcc, вызвать THUMB функцию из ROM
SM
сообщение Aug 27 2014, 17:02
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Я что-то запутался... Как мне объявить внешнюю thumb функцию, расположенную по заданному статическому адресу?

Я сделал вот так:

1) arm-rom.h
Код
int rom_func (void* dev_descr, int data);


2) скрипт для линкера
Код
....
SECTIONS {
....
  rom_func = 0x123456;
}


Все тут хорошо, но линкер думает, что rom_func следует исполнять как ARM, а не как THUMB, и генерирует соотв. BLX инстукцию (при вызове из THUMB кода). А как мне указать, что он THUMB?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
den_po
сообщение Aug 28 2014, 20:44
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 139
Регистрация: 9-11-12
Из: Санкт-Петербург
Пользователь №: 74 315



В общем, говорим мы о разных вещах.
Если в исходнике указывать адрес указанным мной способом, всё будет работать нормально, никакой линкер никакие биты самовольно не сбросит. Задачу из первой строки первого поста это решает.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- SM   ARM gcc, вызвать THUMB функцию из ROM   Aug 27 2014, 17:02
- - SM   Проблему сам решил, через ж. автогеном. Сделал асс...   Aug 27 2014, 18:23
|- - jcxz   Цитата(SM @ Aug 28 2014, 00:23) Проблему ...   Aug 28 2014, 02:02
|- - SM   Цитата(jcxz @ Aug 28 2014, 06:02) for IAR...   Aug 28 2014, 05:58
|- - den_po   Цитата(SM @ Aug 28 2014, 09:58) Проверено...   Aug 28 2014, 10:20
|- - SM   Цитата(den_po @ Aug 28 2014, 14:20) И с к...   Aug 28 2014, 10:41
|- - den_po   Цитата(SM @ Aug 28 2014, 14:41) О непосре...   Aug 28 2014, 12:44
|- - SM   Цитата(den_po @ Aug 28 2014, 16:44) У вас...   Aug 28 2014, 13:09
- - den_po   можно без линкера сделать указатель на функцию, а ...   Aug 27 2014, 22:17
- - Golikov A.   ИМХО корректнее честный АСМ вызов, чем игры со сме...   Aug 28 2014, 10:05
- - scifi   Цитата(SM @ Aug 27 2014, 21:02) Я сделал ...   Aug 28 2014, 10:36
- - Сергей Борщ   Там есть еще одна фигня - линкер может вставлять B...   Aug 28 2014, 12:02
|- - SM   Цитата(Сергей Борщ @ Aug 28 2014, 16:02) ...   Aug 28 2014, 12:09
||- - jcxz   Цитата(SM @ Aug 28 2014, 18:09) Хватает, ...   Aug 29 2014, 02:41
||- - SM   Цитата(jcxz @ Aug 29 2014, 06:41) если BX...   Aug 29 2014, 05:33
|- - jcxz   Цитата(Сергей Борщ @ Aug 28 2014, 18:02) ...   Aug 29 2014, 03:53
- - Golikov A.   А у меня есть другое предложение, а что если вам с...   Aug 29 2014, 06:31
|- - SM   Цитата(Golikov A. @ Aug 29 2014, 10:31) А...   Aug 29 2014, 06:40
||- - jcxz   Цитата(SM @ Aug 29 2014, 12:40) При этом ...   Aug 29 2014, 06:59
||- - SM   Цитата(jcxz @ Aug 29 2014, 10:59) то можн...   Aug 29 2014, 07:03
|- - jcxz   Цитата(Golikov A. @ Aug 29 2014, 12:31) А...   Aug 29 2014, 06:47
- - Golikov A.   да пофиг, пусть переключается, вы в функции насиль...   Aug 29 2014, 06:45
|- - SM   Цитата(Golikov A. @ Aug 29 2014, 10:45) В...   Aug 29 2014, 06:55
- - Golikov A.   А второй вопрос, если все вызовы этой функции сдел...   Aug 29 2014, 07:05
|- - SM   Цитата(Golikov A. @ Aug 29 2014, 11:05) Я...   Aug 29 2014, 07:07
|- - jcxz   Цитата(SM @ Aug 29 2014, 13:07) Не хочетс...   Aug 29 2014, 07:18
|- - SM   Цитата(jcxz @ Aug 29 2014, 11:18) Это, им...   Aug 29 2014, 07:35
|- - jcxz   Цитата(SM @ Aug 29 2014, 13:35) А чего-то...   Aug 29 2014, 07:44
|- - SM   Цитата(jcxz @ Aug 29 2014, 11:44) Мне каж...   Aug 29 2014, 07:48
|- - sasamy   Цитата(SM @ Aug 29 2014, 11:48) В общем, ...   Aug 29 2014, 09:52
- - Сергей Борщ   Увы... Максимум, что приходит в голову - засунуть ...   Aug 29 2014, 08:49


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

 


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


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