I’ve tried to compile and link demo project for RL78 micro called RL78_RL78G13_Promo_Board_IAR.
However new version of IAR cannot compile it. Following errors pops up in file portasm.s87 at lines from 101 to line 107, here is code snippet:
COMMON INTVEC:CODE:ROOT(1)
ORG configTICK_VECTOR
DW vPortTickISR
COMMON INTVEC:CODE:ROOT(1)
ORG 126
DW vPortYield
and here are error messages:
Error[As078]: Directive COMMON not supported in ELF mode. C:\Users\john\Desktop\freertos-master\FreeRTOS\Source\portable\IAR\RL78\portasm.s87 101
Error[As078]: Directive ORG not supported in ELF mode. C:\Users\john\Desktop\freertos-master\FreeRTOS\Source\portable\IAR\RL78\portasm.s87 102
Error[As078]: Directive COMMON not supported in ELF mode. C:\Users\john\Desktop\freertos-master\FreeRTOS\Source\portable\IAR\RL78\portasm.s87 105
Error[As078]: Directive ORG not supported in ELF mode. C:\Users\john\Desktop\freertos-master\FreeRTOS\Source\portable\IAR\RL78\portasm.s87 106
Could you please advise what shall be done in order to compile and link this project. I’ve tried with older version of IAR and it compiled well.
Version of FreeRTOS is FreeRTOSV9.0.0rc1, downloaded from sourceforge, unfortunatelly I cannot find revision number.
From your post it sounds like the latest compiler version is not compatible with previous compiler versions. Please see if IAR provide an upgrade guide and report back what you find.
I couldn’t find any specific upgrade tutorial, I’ve noticed however that documents EWRL78_AssemblerReference.ENU.pdf differ with each other in regard to chapters which are called :
Segment control directives ( old compiler version)
and
Section control directives ( new compiler version )
On renesas forum I found also some post from a guy with similar problems.
Should I consult with IAR guys regarding to those problems. I’d really try to do this on my own but I’m not familiar with IAR compiler and stuff. Thank you for response by the way.
I have changed my code as Nayden Isapov said, but I got these errors, how can I resolve them?
Error[Li005]: no definition for “usCriticalNesting” [referenced from E:\WorkZone\WorkProjects\RL78Projs\BaseLine\BaseProject\Proj\Debug\Obj\portasm.o]
Error[Li005]: no definition for “pxCurrentTCB” [referenced from E:\WorkZone\WorkProjects\RL78Projs\BaseLine\BaseProject\Proj\Debug\Obj\portasm.o]
Error[Li005]: no definition for “xTaskIncrementTick” [referenced from E:\WorkZone\WorkProjects\RL78Projs\BaseLine\BaseProject\Proj\Debug\Obj\portasm.o]
Error[Li005]: no definition for “vTaskSwitchContext” [referenced from E:\WorkZone\WorkProjects\RL78Projs\BaseLine\BaseProject\Proj\Debug\Obj\portasm.o]