mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-11-02 07:17:36 +00:00
This patch changes the ownership of TLOF from TargetLoweringBase to TargetMachine so that different subtargets could share the TLOF effectively
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@221878 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -137,10 +137,10 @@ public:
|
||||
llvm_unreachable("Invalid content kind");
|
||||
}
|
||||
|
||||
/// NOTE: The constructor takes ownership of TLOF.
|
||||
/// NOTE: The TargetMachine owns TLOF.
|
||||
explicit TargetLoweringBase(const TargetMachine &TM,
|
||||
const TargetLoweringObjectFile *TLOF);
|
||||
virtual ~TargetLoweringBase();
|
||||
virtual ~TargetLoweringBase() {}
|
||||
|
||||
protected:
|
||||
/// \brief Initialize all of the actions to default values.
|
||||
|
||||
@@ -44,6 +44,7 @@ class ScalarTargetTransformInfo;
|
||||
class VectorTargetTransformInfo;
|
||||
class formatted_raw_ostream;
|
||||
class raw_ostream;
|
||||
class TargetLoweringObjectFile;
|
||||
|
||||
// The old pass manager infrastructure is hidden in a legacy namespace now.
|
||||
namespace legacy {
|
||||
@@ -102,6 +103,9 @@ public:
|
||||
virtual const TargetSubtargetInfo *getSubtargetImpl(const Function &) const {
|
||||
return getSubtargetImpl();
|
||||
}
|
||||
virtual TargetLoweringObjectFile *getObjFileLowering() const {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
/// getSubtarget - This method returns a pointer to the specified type of
|
||||
/// TargetSubtargetInfo. In debug builds, it verifies that the object being
|
||||
|
||||
Reference in New Issue
Block a user