diff --git a/llvm/lib/CodeGen/MIRVRegNamerUtils.cpp b/llvm/lib/CodeGen/MIRVRegNamerUtils.cpp --- a/llvm/lib/CodeGen/MIRVRegNamerUtils.cpp +++ b/llvm/lib/CodeGen/MIRVRegNamerUtils.cpp @@ -93,6 +93,34 @@ for (auto &Op : MI.uses()) { MIOperands.push_back(HashOperand(Op)); } + + if (MI.getFlag(MachineInstr::FrameSetup)) + MIOperands.push_back(MachineInstr::FrameSetup); + if (MI.getFlag(MachineInstr::FrameDestroy)) + MIOperands.push_back(MachineInstr::FrameDestroy); + if (MI.getFlag(MachineInstr::FmNoNans)) + MIOperands.push_back(MachineInstr::FmNoNans); + if (MI.getFlag(MachineInstr::FmNoInfs)) + MIOperands.push_back(MachineInstr::FmNoInfs); + if (MI.getFlag(MachineInstr::FmNsz)) + MIOperands.push_back(MachineInstr::FmNsz); + if (MI.getFlag(MachineInstr::FmArcp)) + MIOperands.push_back(MachineInstr::FmArcp); + if (MI.getFlag(MachineInstr::FmContract)) + MIOperands.push_back(MachineInstr::FmContract); + if (MI.getFlag(MachineInstr::FmAfn)) + MIOperands.push_back(MachineInstr::FmAfn); + if (MI.getFlag(MachineInstr::FmReassoc)) + MIOperands.push_back(MachineInstr::FmReassoc); + if (MI.getFlag(MachineInstr::NoUWrap)) + MIOperands.push_back(MachineInstr::NoUWrap); + if (MI.getFlag(MachineInstr::NoSWrap)) + MIOperands.push_back(MachineInstr::NoSWrap); + if (MI.getFlag(MachineInstr::IsExact)) + MIOperands.push_back(MachineInstr::IsExact); + if (MI.getFlag(MachineInstr::FPExcept)) + MIOperands.push_back(MachineInstr::FPExcept); + auto HashMI = hash_combine_range(MIOperands.begin(), MIOperands.end()); return std::to_string(HashMI).substr(0, 5); }