LLVM 24.0.0git
InstructionSelector.cpp
Go to the documentation of this file.
1//===- llvm/CodeGen/GlobalISel/InstructionSelector.cpp --------------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
11
12namespace llvm {
13
14// vtable anchor
16
18 const MachineInstr &MI,
19 int OpIdx) const {
20 assert(MI.getOpcode() == TargetOpcode::G_FRAME_INDEX && OpIdx == -1 &&
21 "Expected G_FRAME_INDEX");
22 MIB.add(MI.getOperand(1));
23}
24
25} // namespace llvm
assert(UImm &&(UImm !=~static_cast< T >(0)) &&"Invalid immediate!")
IRTranslator LLVM IR MI
MachineInstr unsigned OpIdx
void renderFrameIndex(MachineInstrBuilder &MIB, const MachineInstr &MI, int OpIdx) const
const MachineInstrBuilder & add(const MachineOperand &MO) const
Representation of each machine instruction.
This is an optimization pass for GlobalISel generic memory operations.