[Polly][Isl] Removing nullptr constructor from C++ bindings. NFC.

[Polly][Isl] Removing nullptr constructor from C++ bindings. NFC.

This is part of an effort to reduce the differences between the custom C++ bindings used right now by polly in `lib/External/isl/include/isl/isl-noxceptions.h` and the official isl C++ interface.

Changes made:
 - Removed `std::nullptr_t` constructor from all the classes in the isl C++ bindings.
 - `isl-noexceptions.h` has been generated by this a7e00bea38

Reviewed By: Meinersbur

Differential Revision: https://reviews.llvm.org/D103751
This commit is contained in:
patacca 2021-06-08 15:24:21 +02:00
parent e772216e70
commit be5e2fc7bf
13 changed files with 46 additions and 222 deletions

View File

@ -1788,7 +1788,7 @@ private:
DenseMap<BasicBlock *, isl::set> DomainMap; DenseMap<BasicBlock *, isl::set> DomainMap;
/// Constraints on parameters. /// Constraints on parameters.
isl::set Context = nullptr; isl::set Context;
/// The affinator used to translate SCEVs to isl expressions. /// The affinator used to translate SCEVs to isl expressions.
SCEVAffinator Affinator; SCEVAffinator Affinator;
@ -1883,7 +1883,7 @@ private:
/// set of statement instances that will be scheduled in a subtree. There /// set of statement instances that will be scheduled in a subtree. There
/// are also several other nodes. A full description of the different nodes /// are also several other nodes. A full description of the different nodes
/// in a schedule tree is given in the isl manual. /// in a schedule tree is given in the isl manual.
isl::schedule Schedule = nullptr; isl::schedule Schedule;
/// Is this Scop marked as not to be transformed by an optimization heuristic? /// Is this Scop marked as not to be transformed by an optimization heuristic?
bool HasDisableHeuristicsHint = false; bool HasDisableHeuristicsHint = false;

View File

@ -750,7 +750,7 @@ bool ScopBuilder::addLoopBoundsToHeaderDomain(
isl::set LatchBBDom = scop->getDomainConditions(LatchBB); isl::set LatchBBDom = scop->getDomainConditions(LatchBB);
isl::set BackedgeCondition = nullptr; isl::set BackedgeCondition;
Instruction *TI = LatchBB->getTerminator(); Instruction *TI = LatchBB->getTerminator();
BranchInst *BI = dyn_cast<BranchInst>(TI); BranchInst *BI = dyn_cast<BranchInst>(TI);
@ -823,7 +823,7 @@ void ScopBuilder::buildInvariantEquivalenceClasses() {
ClassRep = LInst; ClassRep = LInst;
scop->addInvariantEquivClass( scop->addInvariantEquivClass(
InvariantEquivClassTy{PointerSCEV, MemoryAccessList(), nullptr, Ty}); InvariantEquivClassTy{PointerSCEV, MemoryAccessList(), {}, Ty});
} }
} }
@ -1175,7 +1175,7 @@ static isl::multi_union_pw_aff mapToDimension(isl::union_set USet, int N) {
void ScopBuilder::buildSchedule() { void ScopBuilder::buildSchedule() {
Loop *L = getLoopSurroundingScop(*scop, LI); Loop *L = getLoopSurroundingScop(*scop, LI);
LoopStackTy LoopStack({LoopStackElementTy(L, nullptr, 0)}); LoopStackTy LoopStack({LoopStackElementTy(L, {}, 0)});
buildSchedule(scop->getRegion().getNode(), LoopStack); buildSchedule(scop->getRegion().getNode(), LoopStack);
assert(LoopStack.size() == 1 && LoopStack.back().L == L); assert(LoopStack.size() == 1 && LoopStack.back().L == L);
scop->setScheduleTree(LoopStack[0].Schedule); scop->setScheduleTree(LoopStack[0].Schedule);
@ -1243,7 +1243,7 @@ void ScopBuilder::buildSchedule(Region *R, LoopStackTy &LoopStack) {
DelayList.push_back(RN); DelayList.push_back(RN);
continue; continue;
} }
LoopStack.push_back({L, nullptr, 0}); LoopStack.push_back({L, {}, 0});
} }
buildSchedule(RN, LoopStack); buildSchedule(RN, LoopStack);
} }
@ -2911,7 +2911,7 @@ isl::set ScopBuilder::getNonHoistableCtx(MemoryAccess *Access,
if (Access->isScalarKind() || Access->isWrite() || !Access->isAffine() || if (Access->isScalarKind() || Access->isWrite() || !Access->isAffine() ||
Access->isMemoryIntrinsic()) Access->isMemoryIntrinsic())
return nullptr; return {};
// Skip accesses that have an invariant base pointer which is defined but // Skip accesses that have an invariant base pointer which is defined but
// not loaded inside the SCoP. This can happened e.g., if a readnone call // not loaded inside the SCoP. This can happened e.g., if a readnone call
@ -2924,13 +2924,13 @@ isl::set ScopBuilder::getNonHoistableCtx(MemoryAccess *Access,
// outside the region. // outside the region.
auto *LI = cast<LoadInst>(Access->getAccessInstruction()); auto *LI = cast<LoadInst>(Access->getAccessInstruction());
if (hasNonHoistableBasePtrInScop(Access, Writes)) if (hasNonHoistableBasePtrInScop(Access, Writes))
return nullptr; return {};
isl::map AccessRelation = Access->getAccessRelation(); isl::map AccessRelation = Access->getAccessRelation();
assert(!AccessRelation.is_empty()); assert(!AccessRelation.is_empty());
if (AccessRelation.involves_dims(isl::dim::in, 0, Stmt.getNumIterators())) if (AccessRelation.involves_dims(isl::dim::in, 0, Stmt.getNumIterators()))
return nullptr; return {};
AccessRelation = AccessRelation.intersect_domain(Stmt.getDomain()); AccessRelation = AccessRelation.intersect_domain(Stmt.getDomain());
isl::set SafeToLoad; isl::set SafeToLoad;
@ -2942,13 +2942,13 @@ isl::set ScopBuilder::getNonHoistableCtx(MemoryAccess *Access,
} else if (BB != LI->getParent()) { } else if (BB != LI->getParent()) {
// Skip accesses in non-affine subregions as they might not be executed // Skip accesses in non-affine subregions as they might not be executed
// under the same condition as the entry of the non-affine subregion. // under the same condition as the entry of the non-affine subregion.
return nullptr; return {};
} else { } else {
SafeToLoad = AccessRelation.range(); SafeToLoad = AccessRelation.range();
} }
if (isAccessRangeTooComplex(AccessRelation.range())) if (isAccessRangeTooComplex(AccessRelation.range()))
return nullptr; return {};
isl::union_map Written = Writes.intersect_range(SafeToLoad); isl::union_map Written = Writes.intersect_range(SafeToLoad);
isl::set WrittenCtx = Written.params(); isl::set WrittenCtx = Written.params();
@ -2960,7 +2960,7 @@ isl::set ScopBuilder::getNonHoistableCtx(MemoryAccess *Access,
WrittenCtx = WrittenCtx.remove_divs(); WrittenCtx = WrittenCtx.remove_divs();
bool TooComplex = WrittenCtx.n_basic_set() >= MaxDisjunctsInDomain; bool TooComplex = WrittenCtx.n_basic_set() >= MaxDisjunctsInDomain;
if (TooComplex || !isRequiredInvariantLoad(LI)) if (TooComplex || !isRequiredInvariantLoad(LI))
return nullptr; return {};
scop->addAssumption(INVARIANTLOAD, WrittenCtx, LI->getDebugLoc(), scop->addAssumption(INVARIANTLOAD, WrittenCtx, LI->getDebugLoc(),
AS_RESTRICTION, LI->getParent()); AS_RESTRICTION, LI->getParent());

View File

@ -348,7 +348,7 @@ bool ScopArrayInfo::updateSizes(ArrayRef<const SCEV *> NewSizes,
DimensionSizesPw.clear(); DimensionSizesPw.clear();
for (const SCEV *Expr : DimensionSizes) { for (const SCEV *Expr : DimensionSizes) {
if (!Expr) { if (!Expr) {
DimensionSizesPw.push_back(nullptr); DimensionSizesPw.push_back(isl::pw_aff());
continue; continue;
} }
isl::pw_aff Size = S.getPwAffOnly(Expr); isl::pw_aff Size = S.getPwAffOnly(Expr);
@ -889,12 +889,12 @@ MemoryAccess::MemoryAccess(ScopStmt *Stmt, Instruction *AccessInst,
ArrayRef<const SCEV *> Subscripts, ArrayRef<const SCEV *> Subscripts,
ArrayRef<const SCEV *> Sizes, Value *AccessValue, ArrayRef<const SCEV *> Sizes, Value *AccessValue,
MemoryKind Kind) MemoryKind Kind)
: Kind(Kind), AccType(AccType), Statement(Stmt), InvalidDomain(nullptr), : Kind(Kind), AccType(AccType), Statement(Stmt), InvalidDomain(),
BaseAddr(BaseAddress), ElementType(ElementType), BaseAddr(BaseAddress), ElementType(ElementType),
Sizes(Sizes.begin(), Sizes.end()), AccessInstruction(AccessInst), Sizes(Sizes.begin(), Sizes.end()), AccessInstruction(AccessInst),
AccessValue(AccessValue), IsAffine(Affine), AccessValue(AccessValue), IsAffine(Affine),
Subscripts(Subscripts.begin(), Subscripts.end()), AccessRelation(nullptr), Subscripts(Subscripts.begin(), Subscripts.end()), AccessRelation(),
NewAccessRelation(nullptr), FAD(nullptr) { NewAccessRelation(), FAD(nullptr) {
static const std::string TypeStrings[] = {"", "_Read", "_Write", "_MayWrite"}; static const std::string TypeStrings[] = {"", "_Read", "_Write", "_MayWrite"};
const std::string Access = TypeStrings[AccType] + utostr(Stmt->size()); const std::string Access = TypeStrings[AccType] + utostr(Stmt->size());
@ -904,8 +904,8 @@ MemoryAccess::MemoryAccess(ScopStmt *Stmt, Instruction *AccessInst,
MemoryAccess::MemoryAccess(ScopStmt *Stmt, AccessType AccType, isl::map AccRel) MemoryAccess::MemoryAccess(ScopStmt *Stmt, AccessType AccType, isl::map AccRel)
: Kind(MemoryKind::Array), AccType(AccType), Statement(Stmt), : Kind(MemoryKind::Array), AccType(AccType), Statement(Stmt),
InvalidDomain(nullptr), AccessRelation(nullptr), InvalidDomain(), AccessRelation(), NewAccessRelation(AccRel),
NewAccessRelation(AccRel), FAD(nullptr) { FAD(nullptr) {
isl::id ArrayInfoId = NewAccessRelation.get_tuple_id(isl::dim::out); isl::id ArrayInfoId = NewAccessRelation.get_tuple_id(isl::dim::out);
auto *SAI = ScopArrayInfo::getFromId(ArrayInfoId); auto *SAI = ScopArrayInfo::getFromId(ArrayInfoId);
Sizes.push_back(nullptr); Sizes.push_back(nullptr);
@ -1133,7 +1133,7 @@ isl::map ScopStmt::getSchedule() const {
return isl::map::from_aff(isl::aff(isl::local_space(getDomainSpace()))); return isl::map::from_aff(isl::aff(isl::local_space(getDomainSpace())));
auto Schedule = getParent()->getSchedule(); auto Schedule = getParent()->getSchedule();
if (!Schedule) if (!Schedule)
return nullptr; return {};
Schedule = Schedule.intersect_domain(isl::union_set(Domain)); Schedule = Schedule.intersect_domain(isl::union_set(Domain));
if (Schedule.is_empty()) if (Schedule.is_empty())
return isl::map::from_aff(isl::aff(isl::local_space(getDomainSpace()))); return isl::map::from_aff(isl::aff(isl::local_space(getDomainSpace())));
@ -1203,21 +1203,19 @@ void ScopStmt::realignParams() {
ScopStmt::ScopStmt(Scop &parent, Region &R, StringRef Name, ScopStmt::ScopStmt(Scop &parent, Region &R, StringRef Name,
Loop *SurroundingLoop, Loop *SurroundingLoop,
std::vector<Instruction *> EntryBlockInstructions) std::vector<Instruction *> EntryBlockInstructions)
: Parent(parent), InvalidDomain(nullptr), Domain(nullptr), R(&R), : Parent(parent), InvalidDomain(), Domain(), R(&R), Build(), BaseName(Name),
Build(nullptr), BaseName(Name), SurroundingLoop(SurroundingLoop), SurroundingLoop(SurroundingLoop), Instructions(EntryBlockInstructions) {}
Instructions(EntryBlockInstructions) {}
ScopStmt::ScopStmt(Scop &parent, BasicBlock &bb, StringRef Name, ScopStmt::ScopStmt(Scop &parent, BasicBlock &bb, StringRef Name,
Loop *SurroundingLoop, Loop *SurroundingLoop,
std::vector<Instruction *> Instructions) std::vector<Instruction *> Instructions)
: Parent(parent), InvalidDomain(nullptr), Domain(nullptr), BB(&bb), : Parent(parent), InvalidDomain(), Domain(), BB(&bb), Build(),
Build(nullptr), BaseName(Name), SurroundingLoop(SurroundingLoop), BaseName(Name), SurroundingLoop(SurroundingLoop),
Instructions(Instructions) {} Instructions(Instructions) {}
ScopStmt::ScopStmt(Scop &parent, isl::map SourceRel, isl::map TargetRel, ScopStmt::ScopStmt(Scop &parent, isl::map SourceRel, isl::map TargetRel,
isl::set NewDomain) isl::set NewDomain)
: Parent(parent), InvalidDomain(nullptr), Domain(NewDomain), : Parent(parent), InvalidDomain(), Domain(NewDomain), Build() {
Build(nullptr) {
BaseName = getIslCompatibleName("CopyStmt_", "", BaseName = getIslCompatibleName("CopyStmt_", "",
std::to_string(parent.getCopyStmtsNum())); std::to_string(parent.getCopyStmtsNum()));
isl::id Id = isl::id::alloc(getIslCtx(), getBaseName(), this); isl::id Id = isl::id::alloc(getIslCtx(), getBaseName(), this);
@ -2151,7 +2149,7 @@ void Scop::intersectDefinedBehavior(isl::set Set, AssumptionSign Sign) {
simplify(DefinedBehaviorContext); simplify(DefinedBehaviorContext);
if (DefinedBehaviorContext.n_basic_set() > if (DefinedBehaviorContext.n_basic_set() >
MaxDisjunktsInDefinedBehaviourContext) MaxDisjunktsInDefinedBehaviourContext)
DefinedBehaviorContext = nullptr; DefinedBehaviorContext = {};
} }
} }

View File

@ -623,7 +623,7 @@ bool IslAstInfo::isExecutedInParallel(const isl::ast_node &Node) {
isl::union_map IslAstInfo::getSchedule(const isl::ast_node &Node) { isl::union_map IslAstInfo::getSchedule(const isl::ast_node &Node) {
IslAstUserPayload *Payload = getNodePayload(Node); IslAstUserPayload *Payload = getNodePayload(Node);
if (!Payload) if (!Payload)
return nullptr; return {};
isl::ast_build Build = isl::manage_copy(Payload->Build); isl::ast_build Build = isl::manage_copy(Payload->Build);
return Build.get_schedule(); return Build.get_schedule();
@ -632,7 +632,7 @@ isl::union_map IslAstInfo::getSchedule(const isl::ast_node &Node) {
isl::pw_aff isl::pw_aff
IslAstInfo::getMinimalDependenceDistance(const isl::ast_node &Node) { IslAstInfo::getMinimalDependenceDistance(const isl::ast_node &Node) {
IslAstUserPayload *Payload = getNodePayload(Node); IslAstUserPayload *Payload = getNodePayload(Node);
return Payload ? Payload->MinimalDependenceDistance : nullptr; return Payload ? Payload->MinimalDependenceDistance : isl::pw_aff();
} }
IslAstInfo::MemoryAccessSet * IslAstInfo::MemoryAccessSet *

View File

@ -236,7 +236,6 @@ class aff {
public: public:
inline /* implicit */ aff(); inline /* implicit */ aff();
inline /* implicit */ aff(const aff &obj); inline /* implicit */ aff(const aff &obj);
inline /* implicit */ aff(std::nullptr_t);
inline explicit aff(ctx ctx, const std::string &str); inline explicit aff(ctx ctx, const std::string &str);
inline explicit aff(local_space ls, val val); inline explicit aff(local_space ls, val val);
inline explicit aff(local_space ls); inline explicit aff(local_space ls);
@ -343,7 +342,6 @@ class aff_list {
public: public:
inline /* implicit */ aff_list(); inline /* implicit */ aff_list();
inline /* implicit */ aff_list(const aff_list &obj); inline /* implicit */ aff_list(const aff_list &obj);
inline /* implicit */ aff_list(std::nullptr_t);
inline aff_list &operator=(aff_list obj); inline aff_list &operator=(aff_list obj);
inline ~aff_list(); inline ~aff_list();
inline __isl_give isl_aff_list *copy() const &; inline __isl_give isl_aff_list *copy() const &;
@ -388,7 +386,6 @@ class ast_build {
public: public:
inline /* implicit */ ast_build(); inline /* implicit */ ast_build();
inline /* implicit */ ast_build(const ast_build &obj); inline /* implicit */ ast_build(const ast_build &obj);
inline /* implicit */ ast_build(std::nullptr_t);
inline explicit ast_build(ctx ctx); inline explicit ast_build(ctx ctx);
inline ast_build &operator=(ast_build obj); inline ast_build &operator=(ast_build obj);
inline ~ast_build(); inline ~ast_build();
@ -430,7 +427,6 @@ class ast_expr {
public: public:
inline /* implicit */ ast_expr(); inline /* implicit */ ast_expr();
inline /* implicit */ ast_expr(const ast_expr &obj); inline /* implicit */ ast_expr(const ast_expr &obj);
inline /* implicit */ ast_expr(std::nullptr_t);
inline ast_expr &operator=(ast_expr obj); inline ast_expr &operator=(ast_expr obj);
inline ~ast_expr(); inline ~ast_expr();
inline __isl_give isl_ast_expr *copy() const &; inline __isl_give isl_ast_expr *copy() const &;
@ -489,7 +485,6 @@ class ast_expr_list {
public: public:
inline /* implicit */ ast_expr_list(); inline /* implicit */ ast_expr_list();
inline /* implicit */ ast_expr_list(const ast_expr_list &obj); inline /* implicit */ ast_expr_list(const ast_expr_list &obj);
inline /* implicit */ ast_expr_list(std::nullptr_t);
inline ast_expr_list &operator=(ast_expr_list obj); inline ast_expr_list &operator=(ast_expr_list obj);
inline ~ast_expr_list(); inline ~ast_expr_list();
inline __isl_give isl_ast_expr_list *copy() const &; inline __isl_give isl_ast_expr_list *copy() const &;
@ -534,7 +529,6 @@ class ast_node {
public: public:
inline /* implicit */ ast_node(); inline /* implicit */ ast_node();
inline /* implicit */ ast_node(const ast_node &obj); inline /* implicit */ ast_node(const ast_node &obj);
inline /* implicit */ ast_node(std::nullptr_t);
inline ast_node &operator=(ast_node obj); inline ast_node &operator=(ast_node obj);
inline ~ast_node(); inline ~ast_node();
inline __isl_give isl_ast_node *copy() const &; inline __isl_give isl_ast_node *copy() const &;
@ -585,7 +579,6 @@ class ast_node_list {
public: public:
inline /* implicit */ ast_node_list(); inline /* implicit */ ast_node_list();
inline /* implicit */ ast_node_list(const ast_node_list &obj); inline /* implicit */ ast_node_list(const ast_node_list &obj);
inline /* implicit */ ast_node_list(std::nullptr_t);
inline ast_node_list &operator=(ast_node_list obj); inline ast_node_list &operator=(ast_node_list obj);
inline ~ast_node_list(); inline ~ast_node_list();
inline __isl_give isl_ast_node_list *copy() const &; inline __isl_give isl_ast_node_list *copy() const &;
@ -630,7 +623,6 @@ class basic_map {
public: public:
inline /* implicit */ basic_map(); inline /* implicit */ basic_map();
inline /* implicit */ basic_map(const basic_map &obj); inline /* implicit */ basic_map(const basic_map &obj);
inline /* implicit */ basic_map(std::nullptr_t);
inline explicit basic_map(ctx ctx, const std::string &str); inline explicit basic_map(ctx ctx, const std::string &str);
inline basic_map &operator=(basic_map obj); inline basic_map &operator=(basic_map obj);
inline ~basic_map(); inline ~basic_map();
@ -765,7 +757,6 @@ class basic_map_list {
public: public:
inline /* implicit */ basic_map_list(); inline /* implicit */ basic_map_list();
inline /* implicit */ basic_map_list(const basic_map_list &obj); inline /* implicit */ basic_map_list(const basic_map_list &obj);
inline /* implicit */ basic_map_list(std::nullptr_t);
inline basic_map_list &operator=(basic_map_list obj); inline basic_map_list &operator=(basic_map_list obj);
inline ~basic_map_list(); inline ~basic_map_list();
inline __isl_give isl_basic_map_list *copy() const &; inline __isl_give isl_basic_map_list *copy() const &;
@ -810,7 +801,6 @@ class basic_set {
public: public:
inline /* implicit */ basic_set(); inline /* implicit */ basic_set();
inline /* implicit */ basic_set(const basic_set &obj); inline /* implicit */ basic_set(const basic_set &obj);
inline /* implicit */ basic_set(std::nullptr_t);
inline /* implicit */ basic_set(point pnt); inline /* implicit */ basic_set(point pnt);
inline explicit basic_set(ctx ctx, const std::string &str); inline explicit basic_set(ctx ctx, const std::string &str);
inline basic_set &operator=(basic_set obj); inline basic_set &operator=(basic_set obj);
@ -917,7 +907,6 @@ class basic_set_list {
public: public:
inline /* implicit */ basic_set_list(); inline /* implicit */ basic_set_list();
inline /* implicit */ basic_set_list(const basic_set_list &obj); inline /* implicit */ basic_set_list(const basic_set_list &obj);
inline /* implicit */ basic_set_list(std::nullptr_t);
inline basic_set_list &operator=(basic_set_list obj); inline basic_set_list &operator=(basic_set_list obj);
inline ~basic_set_list(); inline ~basic_set_list();
inline __isl_give isl_basic_set_list *copy() const &; inline __isl_give isl_basic_set_list *copy() const &;
@ -963,7 +952,6 @@ class constraint {
public: public:
inline /* implicit */ constraint(); inline /* implicit */ constraint();
inline /* implicit */ constraint(const constraint &obj); inline /* implicit */ constraint(const constraint &obj);
inline /* implicit */ constraint(std::nullptr_t);
inline constraint &operator=(constraint obj); inline constraint &operator=(constraint obj);
inline ~constraint(); inline ~constraint();
inline __isl_give isl_constraint *copy() const &; inline __isl_give isl_constraint *copy() const &;
@ -1012,7 +1000,6 @@ class constraint_list {
public: public:
inline /* implicit */ constraint_list(); inline /* implicit */ constraint_list();
inline /* implicit */ constraint_list(const constraint_list &obj); inline /* implicit */ constraint_list(const constraint_list &obj);
inline /* implicit */ constraint_list(std::nullptr_t);
inline constraint_list &operator=(constraint_list obj); inline constraint_list &operator=(constraint_list obj);
inline ~constraint_list(); inline ~constraint_list();
inline __isl_give isl_constraint_list *copy() const &; inline __isl_give isl_constraint_list *copy() const &;
@ -1057,7 +1044,6 @@ class fixed_box {
public: public:
inline /* implicit */ fixed_box(); inline /* implicit */ fixed_box();
inline /* implicit */ fixed_box(const fixed_box &obj); inline /* implicit */ fixed_box(const fixed_box &obj);
inline /* implicit */ fixed_box(std::nullptr_t);
inline fixed_box &operator=(fixed_box obj); inline fixed_box &operator=(fixed_box obj);
inline ~fixed_box(); inline ~fixed_box();
inline __isl_give isl_fixed_box *copy() const &; inline __isl_give isl_fixed_box *copy() const &;
@ -1091,7 +1077,6 @@ class id {
public: public:
inline /* implicit */ id(); inline /* implicit */ id();
inline /* implicit */ id(const id &obj); inline /* implicit */ id(const id &obj);
inline /* implicit */ id(std::nullptr_t);
inline explicit id(ctx ctx, const std::string &str); inline explicit id(ctx ctx, const std::string &str);
inline id &operator=(id obj); inline id &operator=(id obj);
inline ~id(); inline ~id();
@ -1126,7 +1111,6 @@ class id_list {
public: public:
inline /* implicit */ id_list(); inline /* implicit */ id_list();
inline /* implicit */ id_list(const id_list &obj); inline /* implicit */ id_list(const id_list &obj);
inline /* implicit */ id_list(std::nullptr_t);
inline id_list &operator=(id_list obj); inline id_list &operator=(id_list obj);
inline ~id_list(); inline ~id_list();
inline __isl_give isl_id_list *copy() const &; inline __isl_give isl_id_list *copy() const &;
@ -1171,7 +1155,6 @@ class id_to_ast_expr {
public: public:
inline /* implicit */ id_to_ast_expr(); inline /* implicit */ id_to_ast_expr();
inline /* implicit */ id_to_ast_expr(const id_to_ast_expr &obj); inline /* implicit */ id_to_ast_expr(const id_to_ast_expr &obj);
inline /* implicit */ id_to_ast_expr(std::nullptr_t);
inline id_to_ast_expr &operator=(id_to_ast_expr obj); inline id_to_ast_expr &operator=(id_to_ast_expr obj);
inline ~id_to_ast_expr(); inline ~id_to_ast_expr();
inline __isl_give isl_id_to_ast_expr *copy() const &; inline __isl_give isl_id_to_ast_expr *copy() const &;
@ -1206,7 +1189,6 @@ class local_space {
public: public:
inline /* implicit */ local_space(); inline /* implicit */ local_space();
inline /* implicit */ local_space(const local_space &obj); inline /* implicit */ local_space(const local_space &obj);
inline /* implicit */ local_space(std::nullptr_t);
inline explicit local_space(space space); inline explicit local_space(space space);
inline local_space &operator=(local_space obj); inline local_space &operator=(local_space obj);
inline ~local_space(); inline ~local_space();
@ -1260,7 +1242,6 @@ class map {
public: public:
inline /* implicit */ map(); inline /* implicit */ map();
inline /* implicit */ map(const map &obj); inline /* implicit */ map(const map &obj);
inline /* implicit */ map(std::nullptr_t);
inline /* implicit */ map(basic_map bmap); inline /* implicit */ map(basic_map bmap);
inline explicit map(ctx ctx, const std::string &str); inline explicit map(ctx ctx, const std::string &str);
inline map &operator=(map obj); inline map &operator=(map obj);
@ -1477,7 +1458,6 @@ class map_list {
public: public:
inline /* implicit */ map_list(); inline /* implicit */ map_list();
inline /* implicit */ map_list(const map_list &obj); inline /* implicit */ map_list(const map_list &obj);
inline /* implicit */ map_list(std::nullptr_t);
inline map_list &operator=(map_list obj); inline map_list &operator=(map_list obj);
inline ~map_list(); inline ~map_list();
inline __isl_give isl_map_list *copy() const &; inline __isl_give isl_map_list *copy() const &;
@ -1522,7 +1502,6 @@ class mat {
public: public:
inline /* implicit */ mat(); inline /* implicit */ mat();
inline /* implicit */ mat(const mat &obj); inline /* implicit */ mat(const mat &obj);
inline /* implicit */ mat(std::nullptr_t);
inline mat &operator=(mat obj); inline mat &operator=(mat obj);
inline ~mat(); inline ~mat();
inline __isl_give isl_mat *copy() const &; inline __isl_give isl_mat *copy() const &;
@ -1591,7 +1570,6 @@ class multi_aff {
public: public:
inline /* implicit */ multi_aff(); inline /* implicit */ multi_aff();
inline /* implicit */ multi_aff(const multi_aff &obj); inline /* implicit */ multi_aff(const multi_aff &obj);
inline /* implicit */ multi_aff(std::nullptr_t);
inline /* implicit */ multi_aff(aff aff); inline /* implicit */ multi_aff(aff aff);
inline explicit multi_aff(space space, aff_list list); inline explicit multi_aff(space space, aff_list list);
inline explicit multi_aff(ctx ctx, const std::string &str); inline explicit multi_aff(ctx ctx, const std::string &str);
@ -1699,7 +1677,6 @@ class multi_id {
public: public:
inline /* implicit */ multi_id(); inline /* implicit */ multi_id();
inline /* implicit */ multi_id(const multi_id &obj); inline /* implicit */ multi_id(const multi_id &obj);
inline /* implicit */ multi_id(std::nullptr_t);
inline explicit multi_id(space space, id_list list); inline explicit multi_id(space space, id_list list);
inline explicit multi_id(ctx ctx, const std::string &str); inline explicit multi_id(ctx ctx, const std::string &str);
inline multi_id &operator=(multi_id obj); inline multi_id &operator=(multi_id obj);
@ -1751,7 +1728,6 @@ class multi_pw_aff {
public: public:
inline /* implicit */ multi_pw_aff(); inline /* implicit */ multi_pw_aff();
inline /* implicit */ multi_pw_aff(const multi_pw_aff &obj); inline /* implicit */ multi_pw_aff(const multi_pw_aff &obj);
inline /* implicit */ multi_pw_aff(std::nullptr_t);
inline /* implicit */ multi_pw_aff(aff aff); inline /* implicit */ multi_pw_aff(aff aff);
inline /* implicit */ multi_pw_aff(multi_aff ma); inline /* implicit */ multi_pw_aff(multi_aff ma);
inline /* implicit */ multi_pw_aff(pw_aff pa); inline /* implicit */ multi_pw_aff(pw_aff pa);
@ -1870,7 +1846,6 @@ class multi_union_pw_aff {
public: public:
inline /* implicit */ multi_union_pw_aff(); inline /* implicit */ multi_union_pw_aff();
inline /* implicit */ multi_union_pw_aff(const multi_union_pw_aff &obj); inline /* implicit */ multi_union_pw_aff(const multi_union_pw_aff &obj);
inline /* implicit */ multi_union_pw_aff(std::nullptr_t);
inline /* implicit */ multi_union_pw_aff(multi_pw_aff mpa); inline /* implicit */ multi_union_pw_aff(multi_pw_aff mpa);
inline /* implicit */ multi_union_pw_aff(union_pw_aff upa); inline /* implicit */ multi_union_pw_aff(union_pw_aff upa);
inline explicit multi_union_pw_aff(space space, union_pw_aff_list list); inline explicit multi_union_pw_aff(space space, union_pw_aff_list list);
@ -1970,7 +1945,6 @@ class multi_val {
public: public:
inline /* implicit */ multi_val(); inline /* implicit */ multi_val();
inline /* implicit */ multi_val(const multi_val &obj); inline /* implicit */ multi_val(const multi_val &obj);
inline /* implicit */ multi_val(std::nullptr_t);
inline explicit multi_val(space space, val_list list); inline explicit multi_val(space space, val_list list);
inline explicit multi_val(ctx ctx, const std::string &str); inline explicit multi_val(ctx ctx, const std::string &str);
inline multi_val &operator=(multi_val obj); inline multi_val &operator=(multi_val obj);
@ -2055,7 +2029,6 @@ class point {
public: public:
inline /* implicit */ point(); inline /* implicit */ point();
inline /* implicit */ point(const point &obj); inline /* implicit */ point(const point &obj);
inline /* implicit */ point(std::nullptr_t);
inline explicit point(space dim); inline explicit point(space dim);
inline point &operator=(point obj); inline point &operator=(point obj);
inline ~point(); inline ~point();
@ -2092,7 +2065,6 @@ class pw_aff {
public: public:
inline /* implicit */ pw_aff(); inline /* implicit */ pw_aff();
inline /* implicit */ pw_aff(const pw_aff &obj); inline /* implicit */ pw_aff(const pw_aff &obj);
inline /* implicit */ pw_aff(std::nullptr_t);
inline /* implicit */ pw_aff(aff aff); inline /* implicit */ pw_aff(aff aff);
inline explicit pw_aff(ctx ctx, const std::string &str); inline explicit pw_aff(ctx ctx, const std::string &str);
inline explicit pw_aff(set domain, val v); inline explicit pw_aff(set domain, val v);
@ -2218,7 +2190,6 @@ class pw_aff_list {
public: public:
inline /* implicit */ pw_aff_list(); inline /* implicit */ pw_aff_list();
inline /* implicit */ pw_aff_list(const pw_aff_list &obj); inline /* implicit */ pw_aff_list(const pw_aff_list &obj);
inline /* implicit */ pw_aff_list(std::nullptr_t);
inline pw_aff_list &operator=(pw_aff_list obj); inline pw_aff_list &operator=(pw_aff_list obj);
inline ~pw_aff_list(); inline ~pw_aff_list();
inline __isl_give isl_pw_aff_list *copy() const &; inline __isl_give isl_pw_aff_list *copy() const &;
@ -2271,7 +2242,6 @@ class pw_multi_aff {
public: public:
inline /* implicit */ pw_multi_aff(); inline /* implicit */ pw_multi_aff();
inline /* implicit */ pw_multi_aff(const pw_multi_aff &obj); inline /* implicit */ pw_multi_aff(const pw_multi_aff &obj);
inline /* implicit */ pw_multi_aff(std::nullptr_t);
inline /* implicit */ pw_multi_aff(multi_aff ma); inline /* implicit */ pw_multi_aff(multi_aff ma);
inline /* implicit */ pw_multi_aff(pw_aff pa); inline /* implicit */ pw_multi_aff(pw_aff pa);
inline explicit pw_multi_aff(ctx ctx, const std::string &str); inline explicit pw_multi_aff(ctx ctx, const std::string &str);
@ -2381,7 +2351,6 @@ class pw_multi_aff_list {
public: public:
inline /* implicit */ pw_multi_aff_list(); inline /* implicit */ pw_multi_aff_list();
inline /* implicit */ pw_multi_aff_list(const pw_multi_aff_list &obj); inline /* implicit */ pw_multi_aff_list(const pw_multi_aff_list &obj);
inline /* implicit */ pw_multi_aff_list(std::nullptr_t);
inline pw_multi_aff_list &operator=(pw_multi_aff_list obj); inline pw_multi_aff_list &operator=(pw_multi_aff_list obj);
inline ~pw_multi_aff_list(); inline ~pw_multi_aff_list();
inline __isl_give isl_pw_multi_aff_list *copy() const &; inline __isl_give isl_pw_multi_aff_list *copy() const &;
@ -2426,7 +2395,6 @@ class pw_qpolynomial {
public: public:
inline /* implicit */ pw_qpolynomial(); inline /* implicit */ pw_qpolynomial();
inline /* implicit */ pw_qpolynomial(const pw_qpolynomial &obj); inline /* implicit */ pw_qpolynomial(const pw_qpolynomial &obj);
inline /* implicit */ pw_qpolynomial(std::nullptr_t);
inline explicit pw_qpolynomial(ctx ctx, const std::string &str); inline explicit pw_qpolynomial(ctx ctx, const std::string &str);
inline pw_qpolynomial &operator=(pw_qpolynomial obj); inline pw_qpolynomial &operator=(pw_qpolynomial obj);
inline ~pw_qpolynomial(); inline ~pw_qpolynomial();
@ -2507,7 +2475,6 @@ class pw_qpolynomial_fold_list {
public: public:
inline /* implicit */ pw_qpolynomial_fold_list(); inline /* implicit */ pw_qpolynomial_fold_list();
inline /* implicit */ pw_qpolynomial_fold_list(const pw_qpolynomial_fold_list &obj); inline /* implicit */ pw_qpolynomial_fold_list(const pw_qpolynomial_fold_list &obj);
inline /* implicit */ pw_qpolynomial_fold_list(std::nullptr_t);
inline pw_qpolynomial_fold_list &operator=(pw_qpolynomial_fold_list obj); inline pw_qpolynomial_fold_list &operator=(pw_qpolynomial_fold_list obj);
inline ~pw_qpolynomial_fold_list(); inline ~pw_qpolynomial_fold_list();
inline __isl_give isl_pw_qpolynomial_fold_list *copy() const &; inline __isl_give isl_pw_qpolynomial_fold_list *copy() const &;
@ -2537,7 +2504,6 @@ class pw_qpolynomial_list {
public: public:
inline /* implicit */ pw_qpolynomial_list(); inline /* implicit */ pw_qpolynomial_list();
inline /* implicit */ pw_qpolynomial_list(const pw_qpolynomial_list &obj); inline /* implicit */ pw_qpolynomial_list(const pw_qpolynomial_list &obj);
inline /* implicit */ pw_qpolynomial_list(std::nullptr_t);
inline pw_qpolynomial_list &operator=(pw_qpolynomial_list obj); inline pw_qpolynomial_list &operator=(pw_qpolynomial_list obj);
inline ~pw_qpolynomial_list(); inline ~pw_qpolynomial_list();
inline __isl_give isl_pw_qpolynomial_list *copy() const &; inline __isl_give isl_pw_qpolynomial_list *copy() const &;
@ -2582,7 +2548,6 @@ class qpolynomial {
public: public:
inline /* implicit */ qpolynomial(); inline /* implicit */ qpolynomial();
inline /* implicit */ qpolynomial(const qpolynomial &obj); inline /* implicit */ qpolynomial(const qpolynomial &obj);
inline /* implicit */ qpolynomial(std::nullptr_t);
inline qpolynomial &operator=(qpolynomial obj); inline qpolynomial &operator=(qpolynomial obj);
inline ~qpolynomial(); inline ~qpolynomial();
inline __isl_give isl_qpolynomial *copy() const &; inline __isl_give isl_qpolynomial *copy() const &;
@ -2651,7 +2616,6 @@ class qpolynomial_list {
public: public:
inline /* implicit */ qpolynomial_list(); inline /* implicit */ qpolynomial_list();
inline /* implicit */ qpolynomial_list(const qpolynomial_list &obj); inline /* implicit */ qpolynomial_list(const qpolynomial_list &obj);
inline /* implicit */ qpolynomial_list(std::nullptr_t);
inline qpolynomial_list &operator=(qpolynomial_list obj); inline qpolynomial_list &operator=(qpolynomial_list obj);
inline ~qpolynomial_list(); inline ~qpolynomial_list();
inline __isl_give isl_qpolynomial_list *copy() const &; inline __isl_give isl_qpolynomial_list *copy() const &;
@ -2696,7 +2660,6 @@ class schedule {
public: public:
inline /* implicit */ schedule(); inline /* implicit */ schedule();
inline /* implicit */ schedule(const schedule &obj); inline /* implicit */ schedule(const schedule &obj);
inline /* implicit */ schedule(std::nullptr_t);
inline explicit schedule(ctx ctx, const std::string &str); inline explicit schedule(ctx ctx, const std::string &str);
inline schedule &operator=(schedule obj); inline schedule &operator=(schedule obj);
inline ~schedule(); inline ~schedule();
@ -2742,7 +2705,6 @@ class schedule_constraints {
public: public:
inline /* implicit */ schedule_constraints(); inline /* implicit */ schedule_constraints();
inline /* implicit */ schedule_constraints(const schedule_constraints &obj); inline /* implicit */ schedule_constraints(const schedule_constraints &obj);
inline /* implicit */ schedule_constraints(std::nullptr_t);
inline explicit schedule_constraints(ctx ctx, const std::string &str); inline explicit schedule_constraints(ctx ctx, const std::string &str);
inline schedule_constraints &operator=(schedule_constraints obj); inline schedule_constraints &operator=(schedule_constraints obj);
inline ~schedule_constraints(); inline ~schedule_constraints();
@ -2788,7 +2750,6 @@ class schedule_node {
public: public:
inline /* implicit */ schedule_node(); inline /* implicit */ schedule_node();
inline /* implicit */ schedule_node(const schedule_node &obj); inline /* implicit */ schedule_node(const schedule_node &obj);
inline /* implicit */ schedule_node(std::nullptr_t);
inline schedule_node &operator=(schedule_node obj); inline schedule_node &operator=(schedule_node obj);
inline ~schedule_node(); inline ~schedule_node();
inline __isl_give isl_schedule_node *copy() const &; inline __isl_give isl_schedule_node *copy() const &;
@ -2878,7 +2839,6 @@ class set {
public: public:
inline /* implicit */ set(); inline /* implicit */ set();
inline /* implicit */ set(const set &obj); inline /* implicit */ set(const set &obj);
inline /* implicit */ set(std::nullptr_t);
inline /* implicit */ set(basic_set bset); inline /* implicit */ set(basic_set bset);
inline /* implicit */ set(point pnt); inline /* implicit */ set(point pnt);
inline explicit set(union_set uset); inline explicit set(union_set uset);
@ -3065,7 +3025,6 @@ class set_list {
public: public:
inline /* implicit */ set_list(); inline /* implicit */ set_list();
inline /* implicit */ set_list(const set_list &obj); inline /* implicit */ set_list(const set_list &obj);
inline /* implicit */ set_list(std::nullptr_t);
inline set_list &operator=(set_list obj); inline set_list &operator=(set_list obj);
inline ~set_list(); inline ~set_list();
inline __isl_give isl_set_list *copy() const &; inline __isl_give isl_set_list *copy() const &;
@ -3111,7 +3070,6 @@ class space {
public: public:
inline /* implicit */ space(); inline /* implicit */ space();
inline /* implicit */ space(const space &obj); inline /* implicit */ space(const space &obj);
inline /* implicit */ space(std::nullptr_t);
inline explicit space(ctx ctx, unsigned int nparam, unsigned int n_in, unsigned int n_out); inline explicit space(ctx ctx, unsigned int nparam, unsigned int n_in, unsigned int n_out);
inline explicit space(ctx ctx, unsigned int nparam, unsigned int dim); inline explicit space(ctx ctx, unsigned int nparam, unsigned int dim);
inline space &operator=(space obj); inline space &operator=(space obj);
@ -3217,7 +3175,6 @@ class term {
public: public:
inline /* implicit */ term(); inline /* implicit */ term();
inline /* implicit */ term(const term &obj); inline /* implicit */ term(const term &obj);
inline /* implicit */ term(std::nullptr_t);
inline term &operator=(term obj); inline term &operator=(term obj);
inline ~term(); inline ~term();
inline __isl_give isl_term *copy() const &; inline __isl_give isl_term *copy() const &;
@ -3249,7 +3206,6 @@ class union_access_info {
public: public:
inline /* implicit */ union_access_info(); inline /* implicit */ union_access_info();
inline /* implicit */ union_access_info(const union_access_info &obj); inline /* implicit */ union_access_info(const union_access_info &obj);
inline /* implicit */ union_access_info(std::nullptr_t);
inline explicit union_access_info(union_map sink); inline explicit union_access_info(union_map sink);
inline union_access_info &operator=(union_access_info obj); inline union_access_info &operator=(union_access_info obj);
inline ~union_access_info(); inline ~union_access_info();
@ -3285,7 +3241,6 @@ class union_flow {
public: public:
inline /* implicit */ union_flow(); inline /* implicit */ union_flow();
inline /* implicit */ union_flow(const union_flow &obj); inline /* implicit */ union_flow(const union_flow &obj);
inline /* implicit */ union_flow(std::nullptr_t);
inline union_flow &operator=(union_flow obj); inline union_flow &operator=(union_flow obj);
inline ~union_flow(); inline ~union_flow();
inline __isl_give isl_union_flow *copy() const &; inline __isl_give isl_union_flow *copy() const &;
@ -3320,7 +3275,6 @@ class union_map {
public: public:
inline /* implicit */ union_map(); inline /* implicit */ union_map();
inline /* implicit */ union_map(const union_map &obj); inline /* implicit */ union_map(const union_map &obj);
inline /* implicit */ union_map(std::nullptr_t);
inline /* implicit */ union_map(basic_map bmap); inline /* implicit */ union_map(basic_map bmap);
inline /* implicit */ union_map(map map); inline /* implicit */ union_map(map map);
inline explicit union_map(union_pw_multi_aff upma); inline explicit union_map(union_pw_multi_aff upma);
@ -3465,7 +3419,6 @@ class union_map_list {
public: public:
inline /* implicit */ union_map_list(); inline /* implicit */ union_map_list();
inline /* implicit */ union_map_list(const union_map_list &obj); inline /* implicit */ union_map_list(const union_map_list &obj);
inline /* implicit */ union_map_list(std::nullptr_t);
inline union_map_list &operator=(union_map_list obj); inline union_map_list &operator=(union_map_list obj);
inline ~union_map_list(); inline ~union_map_list();
inline __isl_give isl_union_map_list *copy() const &; inline __isl_give isl_union_map_list *copy() const &;
@ -3510,7 +3463,6 @@ class union_pw_aff {
public: public:
inline /* implicit */ union_pw_aff(); inline /* implicit */ union_pw_aff();
inline /* implicit */ union_pw_aff(const union_pw_aff &obj); inline /* implicit */ union_pw_aff(const union_pw_aff &obj);
inline /* implicit */ union_pw_aff(std::nullptr_t);
inline /* implicit */ union_pw_aff(aff aff); inline /* implicit */ union_pw_aff(aff aff);
inline /* implicit */ union_pw_aff(pw_aff pa); inline /* implicit */ union_pw_aff(pw_aff pa);
inline explicit union_pw_aff(ctx ctx, const std::string &str); inline explicit union_pw_aff(ctx ctx, const std::string &str);
@ -3587,7 +3539,6 @@ class union_pw_aff_list {
public: public:
inline /* implicit */ union_pw_aff_list(); inline /* implicit */ union_pw_aff_list();
inline /* implicit */ union_pw_aff_list(const union_pw_aff_list &obj); inline /* implicit */ union_pw_aff_list(const union_pw_aff_list &obj);
inline /* implicit */ union_pw_aff_list(std::nullptr_t);
inline union_pw_aff_list &operator=(union_pw_aff_list obj); inline union_pw_aff_list &operator=(union_pw_aff_list obj);
inline ~union_pw_aff_list(); inline ~union_pw_aff_list();
inline __isl_give isl_union_pw_aff_list *copy() const &; inline __isl_give isl_union_pw_aff_list *copy() const &;
@ -3632,7 +3583,6 @@ class union_pw_multi_aff {
public: public:
inline /* implicit */ union_pw_multi_aff(); inline /* implicit */ union_pw_multi_aff();
inline /* implicit */ union_pw_multi_aff(const union_pw_multi_aff &obj); inline /* implicit */ union_pw_multi_aff(const union_pw_multi_aff &obj);
inline /* implicit */ union_pw_multi_aff(std::nullptr_t);
inline /* implicit */ union_pw_multi_aff(aff aff); inline /* implicit */ union_pw_multi_aff(aff aff);
inline explicit union_pw_multi_aff(union_set uset); inline explicit union_pw_multi_aff(union_set uset);
inline /* implicit */ union_pw_multi_aff(multi_aff ma); inline /* implicit */ union_pw_multi_aff(multi_aff ma);
@ -3718,7 +3668,6 @@ class union_pw_multi_aff_list {
public: public:
inline /* implicit */ union_pw_multi_aff_list(); inline /* implicit */ union_pw_multi_aff_list();
inline /* implicit */ union_pw_multi_aff_list(const union_pw_multi_aff_list &obj); inline /* implicit */ union_pw_multi_aff_list(const union_pw_multi_aff_list &obj);
inline /* implicit */ union_pw_multi_aff_list(std::nullptr_t);
inline union_pw_multi_aff_list &operator=(union_pw_multi_aff_list obj); inline union_pw_multi_aff_list &operator=(union_pw_multi_aff_list obj);
inline ~union_pw_multi_aff_list(); inline ~union_pw_multi_aff_list();
inline __isl_give isl_union_pw_multi_aff_list *copy() const &; inline __isl_give isl_union_pw_multi_aff_list *copy() const &;
@ -3763,7 +3712,6 @@ class union_pw_qpolynomial {
public: public:
inline /* implicit */ union_pw_qpolynomial(); inline /* implicit */ union_pw_qpolynomial();
inline /* implicit */ union_pw_qpolynomial(const union_pw_qpolynomial &obj); inline /* implicit */ union_pw_qpolynomial(const union_pw_qpolynomial &obj);
inline /* implicit */ union_pw_qpolynomial(std::nullptr_t);
inline explicit union_pw_qpolynomial(ctx ctx, const std::string &str); inline explicit union_pw_qpolynomial(ctx ctx, const std::string &str);
inline union_pw_qpolynomial &operator=(union_pw_qpolynomial obj); inline union_pw_qpolynomial &operator=(union_pw_qpolynomial obj);
inline ~union_pw_qpolynomial(); inline ~union_pw_qpolynomial();
@ -3831,7 +3779,6 @@ class union_set {
public: public:
inline /* implicit */ union_set(); inline /* implicit */ union_set();
inline /* implicit */ union_set(const union_set &obj); inline /* implicit */ union_set(const union_set &obj);
inline /* implicit */ union_set(std::nullptr_t);
inline /* implicit */ union_set(basic_set bset); inline /* implicit */ union_set(basic_set bset);
inline /* implicit */ union_set(point pnt); inline /* implicit */ union_set(point pnt);
inline /* implicit */ union_set(set set); inline /* implicit */ union_set(set set);
@ -3926,7 +3873,6 @@ class union_set_list {
public: public:
inline /* implicit */ union_set_list(); inline /* implicit */ union_set_list();
inline /* implicit */ union_set_list(const union_set_list &obj); inline /* implicit */ union_set_list(const union_set_list &obj);
inline /* implicit */ union_set_list(std::nullptr_t);
inline union_set_list &operator=(union_set_list obj); inline union_set_list &operator=(union_set_list obj);
inline ~union_set_list(); inline ~union_set_list();
inline __isl_give isl_union_set_list *copy() const &; inline __isl_give isl_union_set_list *copy() const &;
@ -3972,7 +3918,6 @@ class val {
public: public:
inline /* implicit */ val(); inline /* implicit */ val();
inline /* implicit */ val(const val &obj); inline /* implicit */ val(const val &obj);
inline /* implicit */ val(std::nullptr_t);
inline explicit val(ctx ctx, long i); inline explicit val(ctx ctx, long i);
inline explicit val(ctx ctx, const std::string &str); inline explicit val(ctx ctx, const std::string &str);
inline val &operator=(val obj); inline val &operator=(val obj);
@ -4058,7 +4003,6 @@ class val_list {
public: public:
inline /* implicit */ val_list(); inline /* implicit */ val_list();
inline /* implicit */ val_list(const val_list &obj); inline /* implicit */ val_list(const val_list &obj);
inline /* implicit */ val_list(std::nullptr_t);
inline val_list &operator=(val_list obj); inline val_list &operator=(val_list obj);
inline ~val_list(); inline ~val_list();
inline __isl_give isl_val_list *copy() const &; inline __isl_give isl_val_list *copy() const &;
@ -4103,7 +4047,6 @@ class vec {
public: public:
inline /* implicit */ vec(); inline /* implicit */ vec();
inline /* implicit */ vec(const vec &obj); inline /* implicit */ vec(const vec &obj);
inline /* implicit */ vec(std::nullptr_t);
inline vec &operator=(vec obj); inline vec &operator=(vec obj);
inline ~vec(); inline ~vec();
inline __isl_give isl_vec *copy() const &; inline __isl_give isl_vec *copy() const &;
@ -4158,8 +4101,6 @@ aff::aff(const aff &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
aff::aff(std::nullptr_t)
: ptr(nullptr) {}
aff::aff(__isl_take isl_aff *ptr) aff::aff(__isl_take isl_aff *ptr)
@ -4693,8 +4634,6 @@ aff_list::aff_list(const aff_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
aff_list::aff_list(std::nullptr_t)
: ptr(nullptr) {}
aff_list::aff_list(__isl_take isl_aff_list *ptr) aff_list::aff_list(__isl_take isl_aff_list *ptr)
@ -4866,8 +4805,6 @@ ast_build::ast_build(const ast_build &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
ast_build::ast_build(std::nullptr_t)
: ptr(nullptr) {}
ast_build::ast_build(__isl_take isl_ast_build *ptr) ast_build::ast_build(__isl_take isl_ast_build *ptr)
@ -5011,8 +4948,6 @@ ast_expr::ast_expr(const ast_expr &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
ast_expr::ast_expr(std::nullptr_t)
: ptr(nullptr) {}
ast_expr::ast_expr(__isl_take isl_ast_expr *ptr) ast_expr::ast_expr(__isl_take isl_ast_expr *ptr)
@ -5262,8 +5197,6 @@ ast_expr_list::ast_expr_list(const ast_expr_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
ast_expr_list::ast_expr_list(std::nullptr_t)
: ptr(nullptr) {}
ast_expr_list::ast_expr_list(__isl_take isl_ast_expr_list *ptr) ast_expr_list::ast_expr_list(__isl_take isl_ast_expr_list *ptr)
@ -5435,8 +5368,6 @@ ast_node::ast_node(const ast_node &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
ast_node::ast_node(std::nullptr_t)
: ptr(nullptr) {}
ast_node::ast_node(__isl_take isl_ast_node *ptr) ast_node::ast_node(__isl_take isl_ast_node *ptr)
@ -5638,8 +5569,6 @@ ast_node_list::ast_node_list(const ast_node_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
ast_node_list::ast_node_list(std::nullptr_t)
: ptr(nullptr) {}
ast_node_list::ast_node_list(__isl_take isl_ast_node_list *ptr) ast_node_list::ast_node_list(__isl_take isl_ast_node_list *ptr)
@ -5811,8 +5740,6 @@ basic_map::basic_map(const basic_map &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
basic_map::basic_map(std::nullptr_t)
: ptr(nullptr) {}
basic_map::basic_map(__isl_take isl_basic_map *ptr) basic_map::basic_map(__isl_take isl_basic_map *ptr)
@ -6525,8 +6452,6 @@ basic_map_list::basic_map_list(const basic_map_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
basic_map_list::basic_map_list(std::nullptr_t)
: ptr(nullptr) {}
basic_map_list::basic_map_list(__isl_take isl_basic_map_list *ptr) basic_map_list::basic_map_list(__isl_take isl_basic_map_list *ptr)
@ -6698,8 +6623,6 @@ basic_set::basic_set(const basic_set &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
basic_set::basic_set(std::nullptr_t)
: ptr(nullptr) {}
basic_set::basic_set(__isl_take isl_basic_set *ptr) basic_set::basic_set(__isl_take isl_basic_set *ptr)
@ -7251,8 +7174,6 @@ basic_set_list::basic_set_list(const basic_set_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
basic_set_list::basic_set_list(std::nullptr_t)
: ptr(nullptr) {}
basic_set_list::basic_set_list(__isl_take isl_basic_set_list *ptr) basic_set_list::basic_set_list(__isl_take isl_basic_set_list *ptr)
@ -7430,8 +7351,6 @@ constraint::constraint(const constraint &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
constraint::constraint(std::nullptr_t)
: ptr(nullptr) {}
constraint::constraint(__isl_take isl_constraint *ptr) constraint::constraint(__isl_take isl_constraint *ptr)
@ -7617,8 +7536,6 @@ constraint_list::constraint_list(const constraint_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
constraint_list::constraint_list(std::nullptr_t)
: ptr(nullptr) {}
constraint_list::constraint_list(__isl_take isl_constraint_list *ptr) constraint_list::constraint_list(__isl_take isl_constraint_list *ptr)
@ -7790,8 +7707,6 @@ fixed_box::fixed_box(const fixed_box &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
fixed_box::fixed_box(std::nullptr_t)
: ptr(nullptr) {}
fixed_box::fixed_box(__isl_take isl_fixed_box *ptr) fixed_box::fixed_box(__isl_take isl_fixed_box *ptr)
@ -7889,8 +7804,6 @@ id::id(const id &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
id::id(std::nullptr_t)
: ptr(nullptr) {}
id::id(__isl_take isl_id *ptr) id::id(__isl_take isl_id *ptr)
@ -7994,8 +7907,6 @@ id_list::id_list(const id_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
id_list::id_list(std::nullptr_t)
: ptr(nullptr) {}
id_list::id_list(__isl_take isl_id_list *ptr) id_list::id_list(__isl_take isl_id_list *ptr)
@ -8167,8 +8078,6 @@ id_to_ast_expr::id_to_ast_expr(const id_to_ast_expr &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
id_to_ast_expr::id_to_ast_expr(std::nullptr_t)
: ptr(nullptr) {}
id_to_ast_expr::id_to_ast_expr(__isl_take isl_id_to_ast_expr *ptr) id_to_ast_expr::id_to_ast_expr(__isl_take isl_id_to_ast_expr *ptr)
@ -8277,8 +8186,6 @@ local_space::local_space(const local_space &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
local_space::local_space(std::nullptr_t)
: ptr(nullptr) {}
local_space::local_space(__isl_take isl_local_space *ptr) local_space::local_space(__isl_take isl_local_space *ptr)
@ -8493,8 +8400,6 @@ map::map(const map &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
map::map(std::nullptr_t)
: ptr(nullptr) {}
map::map(__isl_take isl_map *ptr) map::map(__isl_take isl_map *ptr)
@ -9698,8 +9603,6 @@ map_list::map_list(const map_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
map_list::map_list(std::nullptr_t)
: ptr(nullptr) {}
map_list::map_list(__isl_take isl_map_list *ptr) map_list::map_list(__isl_take isl_map_list *ptr)
@ -9871,8 +9774,6 @@ mat::mat(const mat &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
mat::mat(std::nullptr_t)
: ptr(nullptr) {}
mat::mat(__isl_take isl_mat *ptr) mat::mat(__isl_take isl_mat *ptr)
@ -10177,8 +10078,6 @@ multi_aff::multi_aff(const multi_aff &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
multi_aff::multi_aff(std::nullptr_t)
: ptr(nullptr) {}
multi_aff::multi_aff(__isl_take isl_multi_aff *ptr) multi_aff::multi_aff(__isl_take isl_multi_aff *ptr)
@ -10718,8 +10617,6 @@ multi_id::multi_id(const multi_id &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
multi_id::multi_id(std::nullptr_t)
: ptr(nullptr) {}
multi_id::multi_id(__isl_take isl_multi_id *ptr) multi_id::multi_id(__isl_take isl_multi_id *ptr)
@ -10923,8 +10820,6 @@ multi_pw_aff::multi_pw_aff(const multi_pw_aff &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
multi_pw_aff::multi_pw_aff(std::nullptr_t)
: ptr(nullptr) {}
multi_pw_aff::multi_pw_aff(__isl_take isl_multi_pw_aff *ptr) multi_pw_aff::multi_pw_aff(__isl_take isl_multi_pw_aff *ptr)
@ -11527,8 +11422,6 @@ multi_union_pw_aff::multi_union_pw_aff(const multi_union_pw_aff &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
multi_union_pw_aff::multi_union_pw_aff(std::nullptr_t)
: ptr(nullptr) {}
multi_union_pw_aff::multi_union_pw_aff(__isl_take isl_multi_union_pw_aff *ptr) multi_union_pw_aff::multi_union_pw_aff(__isl_take isl_multi_union_pw_aff *ptr)
@ -12018,8 +11911,6 @@ multi_val::multi_val(const multi_val &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
multi_val::multi_val(std::nullptr_t)
: ptr(nullptr) {}
multi_val::multi_val(__isl_take isl_multi_val *ptr) multi_val::multi_val(__isl_take isl_multi_val *ptr)
@ -12422,8 +12313,6 @@ point::point(const point &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
point::point(std::nullptr_t)
: ptr(nullptr) {}
point::point(__isl_take isl_point *ptr) point::point(__isl_take isl_point *ptr)
@ -12538,8 +12427,6 @@ pw_aff::pw_aff(const pw_aff &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
pw_aff::pw_aff(std::nullptr_t)
: ptr(nullptr) {}
pw_aff::pw_aff(__isl_take isl_pw_aff *ptr) pw_aff::pw_aff(__isl_take isl_pw_aff *ptr)
@ -13194,8 +13081,6 @@ pw_aff_list::pw_aff_list(const pw_aff_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
pw_aff_list::pw_aff_list(std::nullptr_t)
: ptr(nullptr) {}
pw_aff_list::pw_aff_list(__isl_take isl_pw_aff_list *ptr) pw_aff_list::pw_aff_list(__isl_take isl_pw_aff_list *ptr)
@ -13415,8 +13300,6 @@ pw_multi_aff::pw_multi_aff(const pw_multi_aff &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
pw_multi_aff::pw_multi_aff(std::nullptr_t)
: ptr(nullptr) {}
pw_multi_aff::pw_multi_aff(__isl_take isl_pw_multi_aff *ptr) pw_multi_aff::pw_multi_aff(__isl_take isl_pw_multi_aff *ptr)
@ -13977,8 +13860,6 @@ pw_multi_aff_list::pw_multi_aff_list(const pw_multi_aff_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
pw_multi_aff_list::pw_multi_aff_list(std::nullptr_t)
: ptr(nullptr) {}
pw_multi_aff_list::pw_multi_aff_list(__isl_take isl_pw_multi_aff_list *ptr) pw_multi_aff_list::pw_multi_aff_list(__isl_take isl_pw_multi_aff_list *ptr)
@ -14150,8 +14031,6 @@ pw_qpolynomial::pw_qpolynomial(const pw_qpolynomial &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
pw_qpolynomial::pw_qpolynomial(std::nullptr_t)
: ptr(nullptr) {}
pw_qpolynomial::pw_qpolynomial(__isl_take isl_pw_qpolynomial *ptr) pw_qpolynomial::pw_qpolynomial(__isl_take isl_pw_qpolynomial *ptr)
@ -14538,8 +14417,6 @@ pw_qpolynomial_fold_list::pw_qpolynomial_fold_list(const pw_qpolynomial_fold_lis
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
pw_qpolynomial_fold_list::pw_qpolynomial_fold_list(std::nullptr_t)
: ptr(nullptr) {}
pw_qpolynomial_fold_list::pw_qpolynomial_fold_list(__isl_take isl_pw_qpolynomial_fold_list *ptr) pw_qpolynomial_fold_list::pw_qpolynomial_fold_list(__isl_take isl_pw_qpolynomial_fold_list *ptr)
@ -14614,8 +14491,6 @@ pw_qpolynomial_list::pw_qpolynomial_list(const pw_qpolynomial_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
pw_qpolynomial_list::pw_qpolynomial_list(std::nullptr_t)
: ptr(nullptr) {}
pw_qpolynomial_list::pw_qpolynomial_list(__isl_take isl_pw_qpolynomial_list *ptr) pw_qpolynomial_list::pw_qpolynomial_list(__isl_take isl_pw_qpolynomial_list *ptr)
@ -14787,8 +14662,6 @@ qpolynomial::qpolynomial(const qpolynomial &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
qpolynomial::qpolynomial(std::nullptr_t)
: ptr(nullptr) {}
qpolynomial::qpolynomial(__isl_take isl_qpolynomial *ptr) qpolynomial::qpolynomial(__isl_take isl_qpolynomial *ptr)
@ -15109,8 +14982,6 @@ qpolynomial_list::qpolynomial_list(const qpolynomial_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
qpolynomial_list::qpolynomial_list(std::nullptr_t)
: ptr(nullptr) {}
qpolynomial_list::qpolynomial_list(__isl_take isl_qpolynomial_list *ptr) qpolynomial_list::qpolynomial_list(__isl_take isl_qpolynomial_list *ptr)
@ -15282,8 +15153,6 @@ schedule::schedule(const schedule &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
schedule::schedule(std::nullptr_t)
: ptr(nullptr) {}
schedule::schedule(__isl_take isl_schedule *ptr) schedule::schedule(__isl_take isl_schedule *ptr)
@ -15452,8 +15321,6 @@ schedule_constraints::schedule_constraints(const schedule_constraints &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
schedule_constraints::schedule_constraints(std::nullptr_t)
: ptr(nullptr) {}
schedule_constraints::schedule_constraints(__isl_take isl_schedule_constraints *ptr) schedule_constraints::schedule_constraints(__isl_take isl_schedule_constraints *ptr)
@ -15622,8 +15489,6 @@ schedule_node::schedule_node(const schedule_node &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
schedule_node::schedule_node(std::nullptr_t)
: ptr(nullptr) {}
schedule_node::schedule_node(__isl_take isl_schedule_node *ptr) schedule_node::schedule_node(__isl_take isl_schedule_node *ptr)
@ -16065,8 +15930,6 @@ set::set(const set &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
set::set(std::nullptr_t)
: ptr(nullptr) {}
set::set(__isl_take isl_set *ptr) set::set(__isl_take isl_set *ptr)
@ -17096,8 +16959,6 @@ set_list::set_list(const set_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
set_list::set_list(std::nullptr_t)
: ptr(nullptr) {}
set_list::set_list(__isl_take isl_set_list *ptr) set_list::set_list(__isl_take isl_set_list *ptr)
@ -17275,8 +17136,6 @@ space::space(const space &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
space::space(std::nullptr_t)
: ptr(nullptr) {}
space::space(__isl_take isl_space *ptr) space::space(__isl_take isl_space *ptr)
@ -17806,8 +17665,6 @@ term::term(const term &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
term::term(std::nullptr_t)
: ptr(nullptr) {}
term::term(__isl_take isl_term *ptr) term::term(__isl_take isl_term *ptr)
@ -17892,8 +17749,6 @@ union_access_info::union_access_info(const union_access_info &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
union_access_info::union_access_info(std::nullptr_t)
: ptr(nullptr) {}
union_access_info::union_access_info(__isl_take isl_union_access_info *ptr) union_access_info::union_access_info(__isl_take isl_union_access_info *ptr)
@ -18004,8 +17859,6 @@ union_flow::union_flow(const union_flow &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
union_flow::union_flow(std::nullptr_t)
: ptr(nullptr) {}
union_flow::union_flow(__isl_take isl_union_flow *ptr) union_flow::union_flow(__isl_take isl_union_flow *ptr)
@ -18111,8 +17964,6 @@ union_map::union_map(const union_map &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
union_map::union_map(std::nullptr_t)
: ptr(nullptr) {}
union_map::union_map(__isl_take isl_union_map *ptr) union_map::union_map(__isl_take isl_union_map *ptr)
@ -18880,8 +18731,6 @@ union_map_list::union_map_list(const union_map_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
union_map_list::union_map_list(std::nullptr_t)
: ptr(nullptr) {}
union_map_list::union_map_list(__isl_take isl_union_map_list *ptr) union_map_list::union_map_list(__isl_take isl_union_map_list *ptr)
@ -19053,8 +18902,6 @@ union_pw_aff::union_pw_aff(const union_pw_aff &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
union_pw_aff::union_pw_aff(std::nullptr_t)
: ptr(nullptr) {}
union_pw_aff::union_pw_aff(__isl_take isl_union_pw_aff *ptr) union_pw_aff::union_pw_aff(__isl_take isl_union_pw_aff *ptr)
@ -19414,8 +19261,6 @@ union_pw_aff_list::union_pw_aff_list(const union_pw_aff_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
union_pw_aff_list::union_pw_aff_list(std::nullptr_t)
: ptr(nullptr) {}
union_pw_aff_list::union_pw_aff_list(__isl_take isl_union_pw_aff_list *ptr) union_pw_aff_list::union_pw_aff_list(__isl_take isl_union_pw_aff_list *ptr)
@ -19587,8 +19432,6 @@ union_pw_multi_aff::union_pw_multi_aff(const union_pw_multi_aff &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
union_pw_multi_aff::union_pw_multi_aff(std::nullptr_t)
: ptr(nullptr) {}
union_pw_multi_aff::union_pw_multi_aff(__isl_take isl_union_pw_multi_aff *ptr) union_pw_multi_aff::union_pw_multi_aff(__isl_take isl_union_pw_multi_aff *ptr)
@ -19998,8 +19841,6 @@ union_pw_multi_aff_list::union_pw_multi_aff_list(const union_pw_multi_aff_list &
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
union_pw_multi_aff_list::union_pw_multi_aff_list(std::nullptr_t)
: ptr(nullptr) {}
union_pw_multi_aff_list::union_pw_multi_aff_list(__isl_take isl_union_pw_multi_aff_list *ptr) union_pw_multi_aff_list::union_pw_multi_aff_list(__isl_take isl_union_pw_multi_aff_list *ptr)
@ -20171,8 +20012,6 @@ union_pw_qpolynomial::union_pw_qpolynomial(const union_pw_qpolynomial &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
union_pw_qpolynomial::union_pw_qpolynomial(std::nullptr_t)
: ptr(nullptr) {}
union_pw_qpolynomial::union_pw_qpolynomial(__isl_take isl_union_pw_qpolynomial *ptr) union_pw_qpolynomial::union_pw_qpolynomial(__isl_take isl_union_pw_qpolynomial *ptr)
@ -20483,8 +20322,6 @@ union_set::union_set(const union_set &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
union_set::union_set(std::nullptr_t)
: ptr(nullptr) {}
union_set::union_set(__isl_take isl_union_set *ptr) union_set::union_set(__isl_take isl_union_set *ptr)
@ -20960,8 +20797,6 @@ union_set_list::union_set_list(const union_set_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
union_set_list::union_set_list(std::nullptr_t)
: ptr(nullptr) {}
union_set_list::union_set_list(__isl_take isl_union_set_list *ptr) union_set_list::union_set_list(__isl_take isl_union_set_list *ptr)
@ -21139,8 +20974,6 @@ val::val(const val &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
val::val(std::nullptr_t)
: ptr(nullptr) {}
val::val(__isl_take isl_val *ptr) val::val(__isl_take isl_val *ptr)
@ -21548,8 +21381,6 @@ val_list::val_list(const val_list &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
val_list::val_list(std::nullptr_t)
: ptr(nullptr) {}
val_list::val_list(__isl_take isl_val_list *ptr) val_list::val_list(__isl_take isl_val_list *ptr)
@ -21721,8 +21552,6 @@ vec::vec(const vec &obj)
{ {
ptr = obj.copy(); ptr = obj.copy();
} }
vec::vec(std::nullptr_t)
: ptr(nullptr) {}
vec::vec(__isl_take isl_vec *ptr) vec::vec(__isl_take isl_vec *ptr)

View File

@ -133,7 +133,7 @@ isl::union_map polly::betweenScatter(isl::union_map From, isl::union_map To,
isl::map polly::singleton(isl::union_map UMap, isl::space ExpectedSpace) { isl::map polly::singleton(isl::union_map UMap, isl::space ExpectedSpace) {
if (!UMap) if (!UMap)
return nullptr; return {};
if (isl_union_map_n_map(UMap.get()) == 0) if (isl_union_map_n_map(UMap.get()) == 0)
return isl::map::empty(ExpectedSpace); return isl::map::empty(ExpectedSpace);
@ -146,7 +146,7 @@ isl::map polly::singleton(isl::union_map UMap, isl::space ExpectedSpace) {
isl::set polly::singleton(isl::union_set USet, isl::space ExpectedSpace) { isl::set polly::singleton(isl::union_set USet, isl::space ExpectedSpace) {
if (!USet) if (!USet)
return nullptr; return {};
if (isl_union_set_n_set(USet.get()) == 0) if (isl_union_set_n_set(USet.get()) == 0)
return isl::set::empty(ExpectedSpace); return isl::set::empty(ExpectedSpace);
@ -170,7 +170,7 @@ isl_size polly::getNumScatterDims(const isl::union_map &Schedule) {
isl::space polly::getScatterSpace(const isl::union_map &Schedule) { isl::space polly::getScatterSpace(const isl::union_map &Schedule) {
if (!Schedule) if (!Schedule)
return nullptr; return {};
unsigned Dims = getNumScatterDims(Schedule); unsigned Dims = getNumScatterDims(Schedule);
isl::space ScatterSpace = Schedule.get_space().set_from_params(); isl::space ScatterSpace = Schedule.get_space().set_from_params();
return ScatterSpace.add_dims(isl::dim::set, Dims); return ScatterSpace.add_dims(isl::dim::set, Dims);

View File

@ -730,8 +730,7 @@ private:
auto DefEltSched = ValInst.apply_domain(WrittenTranslator); auto DefEltSched = ValInst.apply_domain(WrittenTranslator);
simplify(DefEltSched); simplify(DefEltSched);
Knowledge Proposed(EltZone, nullptr, filterKnownValInst(EltKnown), Knowledge Proposed(EltZone, {}, filterKnownValInst(EltKnown), DefEltSched);
DefEltSched);
if (isConflicting(Proposed)) if (isConflicting(Proposed))
return false; return false;
@ -942,7 +941,7 @@ private:
auto Occupied = LifetimeTranslator.range(); auto Occupied = LifetimeTranslator.range();
simplify(Occupied); simplify(Occupied);
Knowledge Proposed(Occupied, nullptr, EltLifetimeInst, Written); Knowledge Proposed(Occupied, {}, EltLifetimeInst, Written);
if (isConflicting(Proposed)) if (isConflicting(Proposed))
return false; return false;
@ -1219,7 +1218,7 @@ public:
return false; return false;
} }
Zone = OriginalZone = Knowledge(nullptr, EltUnused, EltKnown, EltWritten); Zone = OriginalZone = Knowledge({}, EltUnused, EltKnown, EltWritten);
LLVM_DEBUG(dbgs() << "Computed Zone:\n"; OriginalZone.print(dbgs(), 4)); LLVM_DEBUG(dbgs() << "Computed Zone:\n"; OriginalZone.print(dbgs(), 4));
assert(Zone.isUsable() && OriginalZone.isUsable()); assert(Zone.isUsable() && OriginalZone.isUsable());

View File

@ -185,7 +185,7 @@ isl::union_map tryFlattenSequence(isl::union_map Schedule) {
// Would cause an infinite loop. // Would cause an infinite loop.
if (!isDimBoundedByConstant(ScatterSet, 0)) { if (!isDimBoundedByConstant(ScatterSet, 0)) {
LLVM_DEBUG(dbgs() << "Abort; dimension is not of fixed size\n"); LLVM_DEBUG(dbgs() << "Abort; dimension is not of fixed size\n");
return nullptr; return {};
} }
auto AllDomains = Schedule.domain(); auto AllDomains = Schedule.domain();
@ -216,7 +216,7 @@ isl::union_map tryFlattenSequence(isl::union_map Schedule) {
if (!isDimBoundedByParameter(FirstSubScatter, 0)) { if (!isDimBoundedByParameter(FirstSubScatter, 0)) {
LLVM_DEBUG(dbgs() << "Abort; sequence step is not bounded\n"); LLVM_DEBUG(dbgs() << "Abort; sequence step is not bounded\n");
return nullptr; return {};
} }
auto FirstSubScatterMap = isl::map::from_range(FirstSubScatter); auto FirstSubScatterMap = isl::map::from_range(FirstSubScatter);
@ -275,7 +275,7 @@ isl::union_map tryFlattenLoop(isl::union_map Schedule) {
if (!isDimBoundedByConstant(SubExtent, 0)) { if (!isDimBoundedByConstant(SubExtent, 0)) {
LLVM_DEBUG(dbgs() << "Abort; dimension not bounded by constant\n"); LLVM_DEBUG(dbgs() << "Abort; dimension not bounded by constant\n");
return nullptr; return {};
} }
auto Min = SubExtent.dim_min(0); auto Min = SubExtent.dim_min(0);
@ -287,7 +287,7 @@ isl::union_map tryFlattenLoop(isl::union_map Schedule) {
if (!MinVal || !MaxVal || MinVal.is_nan() || MaxVal.is_nan()) { if (!MinVal || !MaxVal || MinVal.is_nan() || MaxVal.is_nan()) {
LLVM_DEBUG(dbgs() << "Abort; dimension bounds could not be determined\n"); LLVM_DEBUG(dbgs() << "Abort; dimension bounds could not be determined\n");
return nullptr; return {};
} }
auto FirstSubScheduleAff = scheduleExtractDimAff(SubSchedule, 0); auto FirstSubScheduleAff = scheduleExtractDimAff(SubSchedule, 0);

View File

@ -90,7 +90,7 @@ public:
} }
virtual void releaseMemory() override { virtual void releaseMemory() override {
OldSchedule = nullptr; OldSchedule = {};
IslCtx.reset(); IslCtx.reset();
} }
}; };

View File

@ -365,9 +365,9 @@ public:
if (!Known || !Translator || !NormalizeMap) { if (!Known || !Translator || !NormalizeMap) {
assert(isl_ctx_last_error(IslCtx.get()) == isl_error_quota); assert(isl_ctx_last_error(IslCtx.get()) == isl_error_quota);
Known = nullptr; Known = {};
Translator = nullptr; Translator = {};
NormalizeMap = nullptr; NormalizeMap = {};
LLVM_DEBUG(dbgs() << "Known analysis exceeded max_operations\n"); LLVM_DEBUG(dbgs() << "Known analysis exceeded max_operations\n");
return false; return false;
} }

View File

@ -547,8 +547,6 @@ public:
explicit IslScheduleOptimizerWrapperPass() : ScopPass(ID) {} explicit IslScheduleOptimizerWrapperPass() : ScopPass(ID) {}
~IslScheduleOptimizerWrapperPass() override { releaseMemory(); }
/// Optimize the schedule of the SCoP @p S. /// Optimize the schedule of the SCoP @p S.
bool runOnScop(Scop &S) override; bool runOnScop(Scop &S) override;
@ -560,7 +558,7 @@ public:
/// Release the internal memory. /// Release the internal memory.
void releaseMemory() override { void releaseMemory() override {
LastSchedule = nullptr; LastSchedule = {};
IslCtx.reset(); IslCtx.reset();
} }

View File

@ -546,7 +546,7 @@ isl::union_map ZoneAlgorithm::computePerPHI(const ScopArrayInfo *SAI) {
// flow. // flow.
isl::set DefinedContext = S->getDefinedBehaviorContext(); isl::set DefinedContext = S->getDefinedBehaviorContext();
if (!DefinedContext) if (!DefinedContext)
return nullptr; return {};
assert(SAI->isPHIKind()); assert(SAI->isPHIKind());
@ -729,7 +729,7 @@ isl::map ZoneAlgorithm::makeUnknownForDomain(ScopStmt *Stmt) const {
isl::id ZoneAlgorithm::makeValueId(Value *V) { isl::id ZoneAlgorithm::makeValueId(Value *V) {
if (!V) if (!V)
return nullptr; return {};
auto &Id = ValueIds[V]; auto &Id = ValueIds[V];
if (Id.is_null()) { if (Id.is_null()) {

View File

@ -80,13 +80,13 @@ typedef struct {
isl::union_set parseSetOrNull(isl_ctx *Ctx, const char *Str) { isl::union_set parseSetOrNull(isl_ctx *Ctx, const char *Str) {
if (!Str) if (!Str)
return nullptr; return {};
return isl::union_set(Ctx, Str); return isl::union_set(Ctx, Str);
} }
isl::union_map parseMapOrNull(isl_ctx *Ctx, const char *Str) { isl::union_map parseMapOrNull(isl_ctx *Ctx, const char *Str) {
if (!Str) if (!Str)
return nullptr; return {};
return isl::union_map(Ctx, Str); return isl::union_map(Ctx, Str);
} }