mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-19 04:32:19 +00:00
remove 'target constructor' support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32100 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
cd950a5308
commit
5365489f6c
@ -42,15 +42,14 @@ class PassInfo {
|
||||
std::vector<const PassInfo*> ItfImpl;// Interfaces implemented by this pass
|
||||
|
||||
Pass *(*NormalCtor)(); // No argument ctor
|
||||
Pass *(*TargetCtor)(TargetMachine&); // Ctor taking TargetMachine object...
|
||||
|
||||
public:
|
||||
/// PassInfo ctor - Do not call this directly, this should only be invoked
|
||||
/// through RegisterPass.
|
||||
PassInfo(const char *name, const char *arg, const std::type_info &ti,
|
||||
Pass *(*normal)() = 0, Pass *(*targetctor)(TargetMachine &) = 0)
|
||||
Pass *(*normal)() = 0)
|
||||
: PassName(name), PassArgument(arg), TypeInfo(ti), IsAnalysisGroup(false),
|
||||
NormalCtor(normal), TargetCtor(targetctor) {
|
||||
NormalCtor(normal) {
|
||||
}
|
||||
|
||||
/// getPassName - Return the friendly name for the pass, never returns null
|
||||
@ -94,14 +93,6 @@ public:
|
||||
return NormalCtor();
|
||||
}
|
||||
|
||||
/// getTargetCtor - Return a pointer to a function that creates an instance of
|
||||
/// the pass and returns it. This returns a constructor for a version of the
|
||||
/// pass that takes a TargetMachine object as a parameter.
|
||||
///
|
||||
Pass *(*getTargetCtor() const)(TargetMachine &) {
|
||||
return TargetCtor;
|
||||
}
|
||||
|
||||
/// addInterfaceImplemented - This method is called when this pass is
|
||||
/// registered as a member of an analysis group with the RegisterAnalysisGroup
|
||||
/// template.
|
||||
@ -143,13 +134,12 @@ struct RegisterPassBase {
|
||||
const PassInfo *getPassInfo() const { return &PIObj; }
|
||||
|
||||
RegisterPassBase(const char *Name, const char *Arg, const std::type_info &TI,
|
||||
Pass *(*Normal)() = 0,
|
||||
Pass *(*TargetCtor)(TargetMachine &) = 0)
|
||||
: PIObj(Name, Arg, TI, Normal, TargetCtor) {
|
||||
Pass *(*NormalCtor)() = 0)
|
||||
: PIObj(Name, Arg, TI, NormalCtor) {
|
||||
registerPass();
|
||||
}
|
||||
RegisterPassBase(const std::type_info &TI)
|
||||
: PIObj("", "", TI, 0, 0) {
|
||||
: PIObj("", "", TI) {
|
||||
// This ctor may only be used for analysis groups: it does not auto-register
|
||||
// the pass.
|
||||
PIObj.SetIsAnalysisGroup();
|
||||
|
@ -57,8 +57,7 @@ public:
|
||||
// Ignore non-selectable and non-constructible passes! Ignore
|
||||
// non-optimizations.
|
||||
return P->getPassArgument() == 0 || *P->getPassArgument() == 0 ||
|
||||
(P->getNormalCtor() == 0 && P->getTargetCtor() == 0) ||
|
||||
ignorablePassImpl(P);
|
||||
P->getNormalCtor() == 0 || ignorablePassImpl(P);
|
||||
}
|
||||
|
||||
// Implement the PassRegistrationListener callbacks used to populate our map
|
||||
|
Loading…
x
Reference in New Issue
Block a user