Embedded Workbench for RL78 v2.xxバージョン以降で、アセンブラのビット操作命令でエラーになる

Technical Note 181235J

Targets:
RL78

Component:
Assembler

Updated:
2/18/2019 9:18 AM

はじめに

IAR Embedded Workbench for RL78はバージョン2.xx以降、アセンブラの記述のビット操作命令などで、dot(.)の使用をする際は注意が必要です。本テクニカルノートでは、バージョン2.xx以降で、アセンブラ記述でdot(.)を使用する場合の対策について説明します。

解説

IAR Embedded Workbench for RL78 v1.xxからv2.xx以降にバージョンアップ後に、アセンブラのビット操作命令でエラーになるという場合、以下3つのうちどれかに変更を実施していただきますようお願いします。

BUF equ 0xfff00

  1. ビット位置を数字に変更する
    MOV1 CY,BUF.0
  2. (.)の後にスペースを入れる
    MOV1 CY,BUF. BIT
  3. Cプリプロセッサの書式を使用する
    #define BIT 0
        MOV1 CY,BUF.BIT

[参考]
v2.1xより、アセンブラパーサーが Renesas ABIに準拠しました。 ELFのセクション名(を構成する文字)には(".")が含まれるので、version 2.x 移行のパーサが(識別子を構成する)文字として "." を含めるようになりました。これには、副作用があり、

MOV1 CY,FSSQ.SQST_u01

はversion 1.xでは有効ですが、version 2.xではエラーになります。理由はversion 2.xでは、FSSQ.SQST_u01は1つのシンボルとなってしまうからです。

まとめ

IAR Embedded Workbench for RL78 v1.xxからv2.xx以降へ移行する場合は、上記の点をご注意ください。

 

全ての製品名は、それぞれの所有者の商標または登録商標です

 

© IAR Systems 1995-2018 - All rights reserved.

当ウェブサイトではユーザ利便性向上のためにCookieを利用しています。サイトの閲覧を継続するためにはCookieの使用について承諾する必要があります。 Cookies