Jump to content

    
Sign in to follow this  
Sagittarius

IAR 6.4 Optimization Bug

Recommended Posts

В новом IAR 6.40.5

компилятор

IAR ANSI C/C++ Compiler V6.40.4.54170/W32 for ARM

бага осталась

Чтобы поправили, надо бы им в поддержку отписать. А то ж они - не телепаты.

Share this post


Link to post
Share on other sites
Чтобы поправили, надо бы им в поддержку отписать. А то ж они - не телепаты.

ЕМНИП раньше кто то с электроникса им отправлял.

у кого нибудь есть активная поддержка?

 

Share this post


Link to post
Share on other sites
ЕМНИП раньше кто то с электроникса им отправлял.

у кого нибудь есть активная поддержка?

По моему на сахаре человек с ником ASDFS имеет тех поддержку для армов.

Не знаю как сейчас, но раньше иаровцы игнорили багрепорты от простых смертных. По крайней мере три моих репорта для MSP430 и ARM оставались без внимания, пока не послал их через немецкого кастомера.

Share this post


Link to post
Share on other sites

Я достаточно давно ловил баг еще в какой-то 4-й версии компилятора и отправлял им, официальной поддержки не было, ессно. В следующей версии компилятора баг был поправлен, не знаю уж, по моему репорту или нет. Я email посылал не с просьбой о поддержке, а именно как bug report. В конце концов это в их интересах улучшать компилятор. Во всяком случае попробовать надо, особенно если баг хорошо локализован на небольшом участке кода.

Share this post


Link to post
Share on other sites
Не знаю как сейчас, но раньше иаровцы игнорили багрепорты от простых смертных.

Ну не знаю, года два назад я переписывался с ИАРом по поводу того, что они перестали поддерживать неименнованные unions и убрали прямой доступ внутрь union.

Я прикинулся триал юзером, правда немецким :)

Ответ был простой - пшол вон, у нас ANSI компилятор, что хотим, то делаем. А я уж порезвился тогда, корректируя проект.

Share this post


Link to post
Share on other sites

Если кто отправлять будет, то напишите до кучи и про мой баг (писал о нём недавно сюда: http://electronix.ru/forum/index.php?showtopic=105402 )

Вдруг - поправят? ;)

А то сейчас по необходимости пользую IAR 6.21.1 (старый 5.50 который хорошо проверен на вшивость большими проектами с полной оптимизацией,

но к сожалению 5.50 не понимает через JTAG LPC1778) :((

И поэтому приходится ставить Low оптимизацию в 6.21.1.

 

ЗЫ: Проверил примеры из этой темы на своём IAR 6.21.1 - бага нет (ни с чётными ни с нечётными размерами циклов). Cortex-M3 High optimization (Size)

 

 

 

Share this post


Link to post
Share on other sites
Если кто отправлять будет, то напишите до кучи и про мой баг (писал о нём недавно сюда: http://electronix.ru/forum/index.php?showtopic=105402 )

Вдруг - поправят? ;)

Чтобы послать баг с надеждой на его исправление и не имея тех.поддержки крайне желательно его локализовать в неком очень небольшом коде, который бы собрался в составе мелкого проекта, созданного в IDE IAR, архив которого им и отсылать. В вашем же коде просто кусок из программы, который не соберется. А если начать выкидывать что-то, может и баг исчезнуть.

 

А то сейчас по необходимости пользую IAR 6.21.1 (старый 5.50 который хорошо проверен на вшивость большими проектами с полной оптимизацией,

но к сожалению 5.50 не понимает через JTAG LPC1778) :((

И поэтому приходится ставить Low оптимизацию в 6.21.1.

Собирайте проект в 5.50, а отладку запускайте хоть в 6.40. Там все совместимо по форматам out файлов. Главное, чтобы сам компилятор мог делать код для нужного ядра.

 

ЗЫ: Проверил примеры из этой темы на своём IAR 6.21.1 - бага нет (ни с чётными ни с нечётными размерами циклов). Cortex-M3 High optimization (Size)

на 6.30 тоже его нет.

 

Share this post


Link to post
Share on other sites
В вашем же коде просто кусок из программы, который не соберется. А если начать выкидывать что-то, может и баг исчезнуть.

Если бы Вы хотя-бы открыли ту тему прежде чем отвечать, Вы бы заметили, что я цеплял там полностью проект.

Собирайте проект в 5.50, а отладку запускайте хоть в 6.40. Там все совместимо по форматам out файлов. Главное, чтобы сам компилятор мог делать код для нужного ядра.

Это понятно. Но хочется работать без гемора с постоянным переключением между компиляторами.....

Share this post


Link to post
Share on other sites
Если бы Вы хотя-бы открыли ту тему прежде чем отвечать, Вы бы заметили, что я цеплял там полностью проект.

В IAR не будут рассматривать большой проект, натыкался на это несколько раз. Они всегда просят сократить его до нескольких строк исходной программы, когда баг ещё проявляется.

Share this post


Link to post
Share on other sites

При дальнейшем уменьшении проблемной функции, баг пропадает. Даже если обрезать не связанную с багом часть функции. Как будто баг возникает когда размер кода функции превышает некий предел.

Share this post


Link to post
Share on other sites
ЗЫ: Проверил примеры из этой темы на своём IAR 6.21.1 - бага нет (ни с чётными ни с нечётными размерами циклов). Cortex-M3 High optimization (Size)

первоначально было замечено на Speed, при Size или Balanced все работало.

Share this post


Link to post
Share on other sites
А в новой, 6.50.2 версии он не вылечен?

Я как раз сразу и проверил, сюда просто забыл написать

Нет не вылечен :(

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this