FreeRTOS compilation in IAR for RL78

Hi,

I was compiling FreeRTOS v8.2.1 in IAR version 2.20.

But in the FreeRTOS file FreeRTOSV8.2.1/FreeRTOS/Source/portable/IAR/RL78/portasm.s87

interrupts are defined as follows

; Install the interrupt handlers

COMMON INTVEC:CODE:ROOT(1)
ORG configTICK_VECTOR
DW vPortTickISR

COMMON INTVEC:CODE:ROOT(1)
ORG 126
DW vPortYield

but during compilation IAR gives following error

COMMON directive is not supported in ELF mode

ORG directive is not supported in ELF mode

Is there anything i am missing or is there any other method to define interrupt

in assembly in latest IAR version

Parents
  • The default ABI has changed in the latest version of IAR, to bring it into alignment with the Renesas RL78 ABI. I suspect that this problem may be related (based on the "ELF mode" messages). Look up "calling convention" in the IAR EWB help interface.

  • As scott said, this is due to the compiler version you use.

    In V.2.xx of EWRL the keywords COMMON and ORG (and several others) have been deleted from the assembler. For example,  the IAR compiler generates this code when it generates the definition for interrupt vector 56 (or 0x38):

           ASEGN `.intvec`:CODE:ROOT,038H

           SECTION_TYPE SHT_PROGBITS, 0

           SECTION_GROUP `__.intvec 56`

    `__.intvec 56`:

           DATA16

           DW       _r_it_interrupt

  • I have written following syntax as you have mentioned as follows

    ASEGN `.intvec`:CODE:ROOT,038H

          SECTION_TYPE SHT_PROGBITS, 0

          SECTION_GROUP `__.intvec 56`

    `__.intvec 56`:

          DATA16

          DW       _r_it_interrupt

    but it gives "Invalid Syntax" error on the command "SECTION_TYPE SHT_PROGBITS, 0" line

Reply
  • I have written following syntax as you have mentioned as follows

    ASEGN `.intvec`:CODE:ROOT,038H

          SECTION_TYPE SHT_PROGBITS, 0

          SECTION_GROUP `__.intvec 56`

    `__.intvec 56`:

          DATA16

          DW       _r_it_interrupt

    but it gives "Invalid Syntax" error on the command "SECTION_TYPE SHT_PROGBITS, 0" line

Children