こんにちは。NoMaYです。ウェブで調べ物をしていて気付いたのですが、RenesasさんはLLVM(今はGCCと並ぶ著名なフリーコンパイラ)にRL78をPortingしようとしているのかも、、、[llvm-dev] New LLVM backend for Renesas RL78 MCUSebastian Perta via llvm-dev llvm-dev at lists.llvm.org Wed Apr 1 10:26:05 PDT 2020 lists.llvm.org/pipermail/llvm-dev/2020-April/140546.html
こんにちは。NoMaYです。以前に別スレッドのBlinkyサンプルプログラムでLLVM-RL78は内蔵周辺レジスタアクセスのコードが随分悪いことに気付いた時に既に気になっていたことなのですが、LLVM-RL78は生成コードでビット操作命令を使っていないのですよ。ところが、RL78スマートコンフィグレータはビット操作命令が使われることを前提にして以下のようなAPIを生成しています。Start関数とStop関数は、いつ何時呼び出しても構わない(ドキュメントには何の注意事項も記載されていない)ですので、以下のような問題が発生する可能性があります。(今ちゃんと認識しました。)(1) 非常に微妙なタイミングで立った他のIFフラグを勝手にクリアしてしまう(2) IFフラグ操作中に割り込み処理へ飛んでいたら、その期間中に立った他のIFフラグを勝手にクリアしてしまう(3) MKフラグ操作中に割り込み処理へ飛んでいたら、その期間中に変更された他のMKフラグを勝手に元の値に戻してしまう
void R_Config_INTC_INTP0_Start(void){ PIF0 = 0U; /* clear INTP0 interrupt flag */ PMK0 = 0U; /* enable INTP0 interrupt */}
void R_Config_INTC_INTP0_Stop(void){ PMK0 = 1U; /* disable INTP0 interrupt */ PIF0 = 0U; /* clear INTP0 interrupt flag */}
0000373a _R_Config_INTC_INTP0_Start:; PIF0 = 0U; /* clear INTP0 interrupt flag */ 373a: 36 e0 ff movw hl, #65504 373d: ab movw ax, [hl] 373e: 5a f8 fb and 0xffef8, #251 3741: 36 e0 ff movw hl, #65504 3744: bb movw [hl], ax; PMK0 = 0U; /* enable INTP0 interrupt */ 3745: 36 e4 ff movw hl, #65508 3748: ab movw ax, [hl] 3749: 5a f8 fb and 0xffef8, #251 374c: 36 e4 ff movw hl, #65508 374f: bb movw [hl], ax; } 3750: d7 ret
00003751 _R_Config_INTC_INTP0_Stop:; { 3751: fd 65 37 call !0x3765; } 3754: d7 ret...00003765 _OUTLINED_FUNCTION_0: 3765: 36 e4 ff movw hl, #65508 3768: ab movw ax, [hl] 3769: 6a f8 04 or 0xffef8, #4 376c: 36 e4 ff movw hl, #65508 376f: bb movw [hl], ax 3770: 36 e0 ff movw hl, #65504 3773: ab movw ax, [hl] 3774: 5a f8 fb and 0xffef8, #251 3777: 36 e0 ff movw hl, #65504 377a: bb movw [hl], ax 377b: d7 ret
NoMaYさん
シェルティですこんにちは。
色々と実験ありがとうございます。permission deniedが特に気になります。ツールチームと相談開始しました。
①再現環境もらえませんか?
②再現頻度はどのくらいでしょう?
③再現環境が置いてあるファイルパスを教えてください。
④ほやさんが書き込んでいる視点(操作手順や設定など)での情報もあれば教えてください。
再現したりしなかったり、とのことなので情報まとまった段階で情報いただければと思います。
種々お手数おかけしてすみません。新しい開発環境の精度をもっと上げていきたいと考えてます。
本スレッド含め掲示板の内容は全般継続的に確認させていただいております。
以上です