独自に作っていたLLVMのRISC-Vバックエンド、LLVM13のリリースに対する対応を確認する。
LLVMバックエンドはバージョンが変わるとAPI群が直ぐに使用が変わってしまうため油断できない。
needsStackRealignment
がhasStackRealignment
に変わっていた。
調べてみると以下のメールが回っているようだった。
とりあえずこれくらいで再ビルドができた。バックエンド的にはLLVM12とあまり変わらない。
bool MYRISCVXFrameLowering::hasFP(const MachineFunction &MF) const { const MachineFrameInfo &MFI = MF.getFrameInfo(); const TargetRegisterInfo *RegInfo = MF.getSubtarget().getRegisterInfo(); // フレームの条件コードが変わっていた return MF.getTarget().Options.DisableFramePointerElim(MF) || RegInfo->hasStackRealignment(MF) || MFI.hasVarSizedObjects() || MFI.isFrameAddressTaken(); }