Страница 1 из 1

Компилятор IAR для STM8

Добавлено: 01 мар 2013, 10:58
bdpcvit
Всем доброго дня!
Есть вопрос по компилятору IAR. решил я на свою голову просмотреть на что похож ассемблер STM8 ну и сравнивал что делает компилятор IAR. Так вот в ассемблере есть простая команда инкремента «INC» которая, если я правильно понял, умеет инкрементировать значение аккумулятора или любой ячейки ОЗУ. Но компилятор IAR про нее не знает или ..?

итак код:

Код: Выделить всё

void main(void)
{
uint8_t tst = 0;
tst++;
}

IAR превращает в

Код: Выделить всё

LD A,(?b1, SP)
ADD A, #?b1
LD (?b1, SP),A

причем при максимальном уровне оптимизации вместо ADD все таки появляется команда INC но остальные две никуда не деваються

Код: Выделить всё

LD A,(?b1, SP)
INC A
LD (?b1, SP),A


Вопрос: по какой причине компилятор IAR может так делать?

Re: Компилятор IAR для STM8

Добавлено: 01 мар 2013, 11:04
BSVi
Я не спец по ассемблеру стм ок, но, тут нужно делать INC ен просто по адресу, а по стеку+смещение. Возможно, именно в этом проблема.

Re: Компилятор IAR для STM8

Добавлено: 01 мар 2013, 12:42
bdpcvit
Если честно - плохо понял что Вы сказали.
Но зачем так сложно делать?
Вот оторванная страница из мануала по ассемблеру STM8
https://goo.gl/photos/GYKc9ABpXV4X8KMq5
Меня возмущает что на фоне всеобщей борьбы с не атомарными операциями один из передовых компиляторов ложил на это.

Re: Компилятор IAR для STM8

Добавлено: 01 мар 2013, 13:04
BSVi
Да, действительно инструкция такая есть. Прямой путь в поддержку иара.

Re: Компилятор IAR для STM8

Добавлено: 01 мар 2013, 13:24
bdpcvit
Спасибо!!! Написал. Посмотрим чем закончиться.

Re: Компилятор IAR для STM8

Добавлено: 05 мар 2013, 13:30
bdpcvit
Все отлично. Получил ответ:
Dear Dmytro Bernyk,
Thanks for your inputs.
I have passed the issue you reported to our developers as an improvement
suggestion.

Ждем !!!

Re: Компилятор IAR для STM8

Добавлено: 04 апр 2013, 21:33
koyodza
IAR для STM8 жутко недоделанный, за всё время вышло всего пару релизов. Наверное, неприоритетное направление

Re: Компилятор IAR для STM8

Добавлено: 04 апр 2013, 22:14
bdpcvit
А что для Вас означает недоделаный. Поймите меня правильно, я не придераюсь к словам, мне интересно Ваше менение но более обоснованое.
Я не очень слежу за количеством релизов, и не могу сравнить с версиями для других контролеров (не хватает ума и времени), но для STM8 все что породил мой мозг в процесе освоения - работает правильно (точнее предсказуемо). И для меня это важный показатель. Может конкуренти и видают код получше - но в IAR среда более дружелюбна.

Re: Компилятор IAR для STM8

Добавлено: 05 апр 2013, 15:24
koyodza
Оптимизация вообще никакая. Ещё там можете почитать
http://caxapa.ru/307060.html
http://caxapa.ru/306998.html?todo=full
http://caxapa.ru/322296.html?todo=full
http://caxapa.ru/356884.html

Re: Компилятор IAR для STM8

Добавлено: 05 апр 2013, 17:04
bdpcvit
Спасибо за ссылки.
Почитал, подумал - поставил STVD + Cosmic
Совсем другое дело - там инкремент и в ассемблере одна команда. Попробую в ближайшее время старые проекты перекомпелировать.
Правда пока не нашел как вывести размер кода после компиляции.

Re: Компилятор IAR для STM8

Добавлено: 08 авг 2015, 16:05
pity
Здорова ребята ! у меня такая проблема появилась , установил IAR прогу при компиляции выдает такую ошибку
Fatal error[LMS001]: License check failed. Use the IAR License Manager to resolve the problem. No license found. [licenseChek:2.14.2.8.842, RMS:8.5.2.0015, feature: STM8EW.COMPILER, Version:1.3]
Error while running C/C++ Compiler

Re: Компилятор IAR для STM8

Добавлено: 08 авг 2015, 16:56
bdpcvit
Нужно всего то запустить License Manager и активировать пробную лицензию или полную, если имеете.

Re: Компилятор IAR для STM8

Добавлено: 08 авг 2015, 17:42
pity
сказано что есть с ограничением 8кбайт . как получить эту версию подскажите пожалуйста . спасибо !

Re: Компилятор IAR для STM8

Добавлено: 08 авг 2015, 17:52
bdpcvit
Качаете версию с ограничением по размеру, ставите, запускаете License manager, выбираете Get Evaluation license, регистрируетесь, ждете код на почту, вставляете код - готово
https://goo.gl/photos/SvtESnXipht9BCM96

Re: Компилятор IAR для STM8

Добавлено: 08 авг 2015, 18:13
pity
огромное спасибо , ты меня во много выручил , щас посмотрим .

Re: Компилятор IAR для STM8

Добавлено: 21 июн 2017, 10:29
Valek174
Здравствуйте. У меня установлен EWARM-7502-10505 для STM32. Я так понимая что для STM8 нужен отдельный установочный файл? Подскажите пожалуйста, программа для STM8 объединится с программой для STM32, или их нужно установить в разные папки/диски?
Спасибо!

Re: Компилятор IAR для STM8

Добавлено: 21 июн 2017, 13:34
R2R
Устанавливать в разные папки.