独自に作っていたLLVMのRISC-Vバックエンド、LLVM14のリリースに対する対応を確認する。
LLVMバックエンドはバージョンが変わるとAPI群が直ぐに使用が変わってしまうため油断できない。
llvm/Support/TargetRegistry.h
の位置が変わっていた。llvm/MC/TargetRegistry.h
に変更されているので対応した。MachineFrameInfo MFI = MF.getFrameInfo();
の戻り地の定義が変わってしまっており、MachineFrameInfoMFI &MI = MF.getFrameInfo()
としなければならない。MYRISCVXAsmBackend()
のwriteNopData()
が変わってしまっている。
bool writeNopData(raw_ostream &OS, uint64_t Count) const override;
bool MYRISCVXAsmBackend::writeNopData(raw_ostream &OS, uint64_t Count, const MCSubtargetInfo *STI) const { return true; }
とりあえずここまででLLVM14ベースのビルドは成功した。