llvm.org GIT mirror llvm / 001d3dc
Mark unimplemented copy constructors and copy assignment operators as LLVM_DELETED_FUNCTION. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164016 91177308-0d34-0410-b5e6-96231b3b80d8 Craig Topper 7 years ago
17 changed file(s) with 44 addition(s) and 42 deletion(s). Raw diff Collapse all Expand all
4747 // May only be subclassed.
4848 GCMetadataPrinter();
4949
50 // Do not implement.
51 GCMetadataPrinter(const GCMetadataPrinter &);
52 GCMetadataPrinter &operator=(const GCMetadataPrinter &);
50 private:
51 GCMetadataPrinter(const GCMetadataPrinter &) LLVM_DELETED_FUNCTION;
52 GCMetadataPrinter &
53 operator=(const GCMetadataPrinter &) LLVM_DELETED_FUNCTION;
5354
5455 public:
5556 GCStrategy &getStrategy() { return *S; }
113113
114114 void dump() const;
115115 void print(raw_ostream &os) const;
116
117 private:
118 LiveRange(); // DO NOT IMPLEMENT
119116 };
120117
121118 template <> struct isPodLike { static const bool value = true; };
466463 VNInfo *LHSValNo = 0,
467464 const VNInfo *RHSValNo = 0);
468465
469 LiveInterval& operator=(const LiveInterval& rhs); // DO NOT IMPLEMENT
466 LiveInterval& operator=(const LiveInterval& rhs) LLVM_DELETED_FUNCTION;
470467
471468 };
472469
126126 /// about the control flow of such functions.
127127 bool ExposesReturnsTwice;
128128
129 MachineFunction(const MachineFunction &); // DO NOT IMPLEMENT
130 void operator=(const MachineFunction&); // DO NOT IMPLEMENT
129 MachineFunction(const MachineFunction &) LLVM_DELETED_FUNCTION;
130 void operator=(const MachineFunction&) LLVM_DELETED_FUNCTION;
131131 public:
132132 MachineFunction(const Function *Fn, const TargetMachine &TM,
133133 unsigned FunctionNum, MachineModuleInfo &MMI,
8181 MachineBasicBlock *Parent; // Pointer to the owning basic block.
8282 DebugLoc debugLoc; // Source line information.
8383
84 MachineInstr(const MachineInstr&); // DO NOT IMPLEMENT
85 void operator=(const MachineInstr&); // DO NOT IMPLEMENT
84 MachineInstr(const MachineInstr&) LLVM_DELETED_FUNCTION;
85 void operator=(const MachineInstr&) LLVM_DELETED_FUNCTION;
8686
8787 // Intrusive list support
8888 friend struct ilist_traits;
7272 LoopInfoBase LI;
7373 friend class LoopBase;
7474
75 void operator=(const MachineLoopInfo &); // do not implement
76 MachineLoopInfo(const MachineLoopInfo &); // do not implement
75 void operator=(const MachineLoopInfo &) LLVM_DELETED_FUNCTION;
76 MachineLoopInfo(const MachineLoopInfo &) LLVM_DELETED_FUNCTION;
7777
7878 public:
7979 static char ID; // Pass identification, replacement for typeid
105105 std::vector > LiveIns;
106106 std::vector LiveOuts;
107107
108 MachineRegisterInfo(const MachineRegisterInfo&); // DO NOT IMPLEMENT
109 void operator=(const MachineRegisterInfo&); // DO NOT IMPLEMENT
108 MachineRegisterInfo(const MachineRegisterInfo&) LLVM_DELETED_FUNCTION;
109 void operator=(const MachineRegisterInfo&) LLVM_DELETED_FUNCTION;
110110 public:
111111 explicit MachineRegisterInfo(const TargetRegisterInfo &TRI);
112112 ~MachineRegisterInfo();
1212
1313 #ifndef LLVM_CODEGEN_MACHINESSAUPDATER_H
1414 #define LLVM_CODEGEN_MACHINESSAUPDATER_H
15
16 #include "llvm/Support/Compiler.h"
1517
1618 namespace llvm {
1719 class MachineBasicBlock;
105107 void ReplaceRegWith(unsigned OldReg, unsigned NewReg);
106108 unsigned GetValueAtEndOfBlockInternal(MachineBasicBlock *BB);
107109
108 void operator=(const MachineSSAUpdater&); // DO NOT IMPLEMENT
109 MachineSSAUpdater(const MachineSSAUpdater&); // DO NOT IMPLEMENT
110 void operator=(const MachineSSAUpdater&) LLVM_DELETED_FUNCTION;
111 MachineSSAUpdater(const MachineSSAUpdater&) LLVM_DELETED_FUNCTION;
110112 };
111113
112114 } // End llvm namespace
108108 /// class to support additional constraints for your architecture.
109109 class PBQPBuilder {
110110 private:
111 PBQPBuilder(const PBQPBuilder&) {}
112 void operator=(const PBQPBuilder&) {}
111 PBQPBuilder(const PBQPBuilder&) LLVM_DELETED_FUNCTION;
112 void operator=(const PBQPBuilder&) LLVM_DELETED_FUNCTION;
113113 public:
114114
115115 typedef std::set RegSet;
7272 SmallVector ByvalParmDbgValues;
7373 DenseMap > DbgValMap;
7474
75 void operator=(const SDDbgInfo&); // Do not implement.
76 SDDbgInfo(const SDDbgInfo&); // Do not implement.
75 void operator=(const SDDbgInfo&) LLVM_DELETED_FUNCTION;
76 SDDbgInfo(const SDDbgInfo&) LLVM_DELETED_FUNCTION;
7777 public:
7878 SDDbgInfo() {}
7979
221221 DenseSet &visited,
222222 int level, bool &printed);
223223
224 void operator=(const SelectionDAG&); // Do not implement.
225 SelectionDAG(const SelectionDAG&); // Do not implement.
224 void operator=(const SelectionDAG&) LLVM_DELETED_FUNCTION;
225 SelectionDAG(const SelectionDAG&) LLVM_DELETED_FUNCTION;
226226
227227 public:
228228 explicit SelectionDAG(const TargetMachine &TM, llvm::CodeGenOpt::Level);
215215 /// this operand.
216216 SDUse **Prev, *Next;
217217
218 SDUse(const SDUse &U); // Do not implement
219 void operator=(const SDUse &U); // Do not implement
218 SDUse(const SDUse &U) LLVM_DELETED_FUNCTION;
219 void operator=(const SDUse &U) LLVM_DELETED_FUNCTION;
220220
221221 public:
222222 SDUse() : Val(), User(NULL), Prev(NULL), Next(NULL) {}
13891389 /// BUILD_VECTORs.
13901390 class BuildVectorSDNode : public SDNode {
13911391 // These are constructed as SDNodes and then cast to BuildVectorSDNodes.
1392 explicit BuildVectorSDNode(); // Do not implement
1392 explicit BuildVectorSDNode() LLVM_DELETED_FUNCTION;
13931393 public:
13941394 /// isConstantSplat - Check if this is a constant splat, and if so, find the
13951395 /// smallest element size that splats the vector. If MinSplatBits is
4444 /// TargetInstrInfo - Interface to description of machine instruction set
4545 ///
4646 class TargetInstrInfo : public MCInstrInfo {
47 TargetInstrInfo(const TargetInstrInfo &); // DO NOT IMPLEMENT
48 void operator=(const TargetInstrInfo &); // DO NOT IMPLEMENT
47 TargetInstrInfo(const TargetInstrInfo &) LLVM_DELETED_FUNCTION;
48 void operator=(const TargetInstrInfo &) LLVM_DELETED_FUNCTION;
4949 public:
5050 TargetInstrInfo(int CFSetupOpcode = -1, int CFDestroyOpcode = -1)
5151 : CallFrameSetupOpcode(CFSetupOpcode),
1313 #ifndef LLVM_TARGET_TARGETINTRINSICINFO_H
1414 #define LLVM_TARGET_TARGETINTRINSICINFO_H
1515
16 #include "llvm/Support/Compiler.h"
1617 #include
1718
1819 namespace llvm {
2627 /// TargetIntrinsicInfo - Interface to description of machine instruction set
2728 ///
2829 class TargetIntrinsicInfo {
29 TargetIntrinsicInfo(const TargetIntrinsicInfo &); // DO NOT IMPLEMENT
30 void operator=(const TargetIntrinsicInfo &); // DO NOT IMPLEMENT
30 TargetIntrinsicInfo(const TargetIntrinsicInfo &) LLVM_DELETED_FUNCTION;
31 void operator=(const TargetIntrinsicInfo &) LLVM_DELETED_FUNCTION;
3132 public:
3233 TargetIntrinsicInfo();
3334 virtual ~TargetIntrinsicInfo();
7676 /// target-specific constructs to SelectionDAG operators.
7777 ///
7878 class TargetLowering {
79 TargetLowering(const TargetLowering&); // DO NOT IMPLEMENT
80 void operator=(const TargetLowering&); // DO NOT IMPLEMENT
79 TargetLowering(const TargetLowering&) LLVM_DELETED_FUNCTION;
80 void operator=(const TargetLowering&) LLVM_DELETED_FUNCTION;
8181 public:
8282 /// LegalizeAction - This enum indicates whether operations are valid for a
8383 /// target, and if not, what action should be used to make them valid.
3232
3333 class TargetLoweringObjectFile : public MCObjectFileInfo {
3434 MCContext *Ctx;
35
36 TargetLoweringObjectFile(const TargetLoweringObjectFile&); // DO NOT IMPLEMENT
37 void operator=(const TargetLoweringObjectFile&); // DO NOT IMPLEMENT
38
35
36 TargetLoweringObjectFile(
37 const TargetLoweringObjectFile&) LLVM_DELETED_FUNCTION;
38 void operator=(const TargetLoweringObjectFile&) LLVM_DELETED_FUNCTION;
39
3940 public:
4041 MCContext &getContext() const { return *Ctx; }
4142
5151 /// through this interface.
5252 ///
5353 class TargetMachine {
54 TargetMachine(const TargetMachine &); // DO NOT IMPLEMENT
55 void operator=(const TargetMachine &); // DO NOT IMPLEMENT
54 TargetMachine(const TargetMachine &) LLVM_DELETED_FUNCTION;
55 void operator=(const TargetMachine &) LLVM_DELETED_FUNCTION;
5656 protected: // Can only create subclasses.
5757 TargetMachine(const Target &T, StringRef TargetTriple,
5858 StringRef CPU, StringRef FS, const TargetOptions &Options);
2727 /// SelectionDAG lowering and instruction selection process.
2828 ///
2929 class TargetSelectionDAGInfo {
30 TargetSelectionDAGInfo(const TargetSelectionDAGInfo &); // DO NOT IMPLEMENT
31 void operator=(const TargetSelectionDAGInfo &); // DO NOT IMPLEMENT
30 TargetSelectionDAGInfo(const TargetSelectionDAGInfo &) LLVM_DELETED_FUNCTION;
31 void operator=(const TargetSelectionDAGInfo &) LLVM_DELETED_FUNCTION;
3232
3333 const TargetData *TD;
3434
3030 /// be exposed through a TargetSubtargetInfo-derived class.
3131 ///
3232 class TargetSubtargetInfo : public MCSubtargetInfo {
33 TargetSubtargetInfo(const TargetSubtargetInfo&); // DO NOT IMPLEMENT
34 void operator=(const TargetSubtargetInfo&); // DO NOT IMPLEMENT
33 TargetSubtargetInfo(const TargetSubtargetInfo&) LLVM_DELETED_FUNCTION;
34 void operator=(const TargetSubtargetInfo&) LLVM_DELETED_FUNCTION;
3535 protected: // Can only create subclasses...
3636 TargetSubtargetInfo();
3737 public: