LLVM: include/llvm/CodeGen/GlobalISel/CSEMIRBuilder.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12#ifndef LLVM_CODEGEN_GLOBALISEL_CSEMIRBUILDER_H
13#define LLVM_CODEGEN_GLOBALISEL_CSEMIRBUILDER_H
14
17
18namespace llvm {
19
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
40
41
42
43
44
45
46
47
48
49
52
53
54
55
56
58 void *&NodeInsertPos);
59
60
61 bool canPerformCSEForOpc(unsigned Opc) const;
62
64
68 }
69
71
75 }
76
78
82
83
84
86
87
88
91
92
93
94
96
97public:
98
100
103 std::optional Flag = std::nullopt) override;
104
106
109
110
114};
115}
116#endif
static GCRegistry::Add< ErlangGC > A("erlang", "erlang-compatible garbage collector")
static GCRegistry::Add< OcamlGC > B("ocaml", "ocaml 3.10-compatible GC")
const AbstractManglingParser< Derived, Alloc >::OperatorInfo AbstractManglingParser< Derived, Alloc >::Ops[]
This file declares the MachineIRBuilder class.
static bool dominates(InstrPosIndexes &PosIndexes, const MachineInstr &A, const MachineInstr &B)
ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory),...
Defines a builder that does CSE of MachineInstructions using GISelCSEInfo.
Definition CSEMIRBuilder.h:39
MachineInstrBuilder buildInstr(unsigned Opc, ArrayRef< DstOp > DstOps, ArrayRef< SrcOp > SrcOps, std::optional< unsigned > Flag=std::nullopt) override
MachineIRBuilder()=default
Some constructors for easy use.
MachineInstrBuilder buildFConstant(const DstOp &Res, const ConstantFP &Val) override
Build and insert Res = G_FCONSTANT Val.
MachineInstrBuilder buildConstant(const DstOp &Res, const ConstantInt &Val) override
Build and insert Res = G_CONSTANT Val.
ConstantFP - Floating Point Values [float, double].
This is the shared class of boolean and integer constants.
FoldingSetNodeID - This class is used to gather all the unique data bits of a node.
MachineInstrBundleIterator< const MachineInstr > const_iterator
virtual MachineInstrBuilder buildFConstant(const DstOp &Res, const ConstantFP &Val)
Build and insert Res = G_FCONSTANT Val.
MachineIRBuilder()=default
Some constructors for easy use.
virtual MachineInstrBuilder buildConstant(const DstOp &Res, const ConstantInt &Val)
Build and insert Res = G_CONSTANT Val.
unsigned ID
LLVM IR allows to use arbitrary numbers as calling convention identifiers.
This is an optimization pass for GlobalISel generic memory operations.
DWARFExpression::Operation Op