forked from OSchip/llvm-project
parent
85e9b4336a
commit
80defa5a62
|
@ -89,12 +89,12 @@ public:
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
///===----------------------------------------------------------------------===//
|
||||||
// FilteredPassNameParser class - Make use of the pass registration
|
/// FilteredPassNameParser class - Make use of the pass registration
|
||||||
// mechanism to automatically add a command line argument to opt for
|
/// mechanism to automatically add a command line argument to opt for
|
||||||
// each pass that satisfies a filter criteria. Filter should return
|
/// each pass that satisfies a filter criteria. Filter should return
|
||||||
// true for passes to be registered as command-line options.
|
/// true for passes to be registered as command-line options.
|
||||||
//
|
///
|
||||||
template<typename Filter>
|
template<typename Filter>
|
||||||
class FilteredPassNameParser : public PassNameParser {
|
class FilteredPassNameParser : public PassNameParser {
|
||||||
private:
|
private:
|
||||||
|
@ -104,22 +104,22 @@ public:
|
||||||
bool ignorablePassImpl(const PassInfo *P) const { return !filter(*P); }
|
bool ignorablePassImpl(const PassInfo *P) const { return !filter(*P); }
|
||||||
};
|
};
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
///===----------------------------------------------------------------------===//
|
||||||
// PassArgFilter - A filter for use with PassNameFilterParser that only
|
/// PassArgFilter - A filter for use with PassNameFilterParser that only
|
||||||
// accepts a Pass whose Arg matches certain strings.
|
/// accepts a Pass whose Arg matches certain strings.
|
||||||
//
|
///
|
||||||
// Use like this:
|
/// Use like this:
|
||||||
//
|
///
|
||||||
// extern const char AllowedPassArgs[] = "-anders_aa -dse";
|
/// extern const char AllowedPassArgs[] = "-anders_aa -dse";
|
||||||
//
|
///
|
||||||
// static cl::list<
|
/// static cl::list<
|
||||||
// const PassInfo*,
|
/// const PassInfo*,
|
||||||
// bool,
|
/// bool,
|
||||||
// FilteredPassNameParser<PassArgFilter<AllowedPassArgs> > >
|
/// FilteredPassNameParser<PassArgFilter<AllowedPassArgs> > >
|
||||||
// PassList(cl::desc("LLVM optimizations available:"));
|
/// PassList(cl::desc("Passes available:"));
|
||||||
//
|
///
|
||||||
// Only the -anders_aa and -dse options will be available to the user.
|
/// Only the -anders_aa and -dse options will be available to the user.
|
||||||
//
|
///
|
||||||
template<const char *Args>
|
template<const char *Args>
|
||||||
class PassArgFilter {
|
class PassArgFilter {
|
||||||
public:
|
public:
|
||||||
|
|
Loading…
Reference in New Issue