Skip to content

Commit b1868d3

Browse files
committed
compiler: add mode to IG creation, rebase on 2208
1 parent e96bb5e commit b1868d3

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

devito/ir/support/space.py

+4-2
Original file line numberDiff line numberDiff line change
@@ -260,7 +260,7 @@ def zero(self):
260260
return Interval(self.dim, 0, 0, self.stamp)
261261

262262
def ceil(self, o):
263-
if o.is_Null:
263+
if not self.is_compatible(o):
264264
return self._rebuild()
265265
return Interval(self.dim, self.lower, o.upper, self.stamp)
266266

@@ -399,7 +399,9 @@ def generate(cls, op, *interval_groups, relations=None):
399399
relations.update(set().union(*[ig.relations for ig in interval_groups]))
400400

401401
modes = set(ig.mode for ig in interval_groups)
402+
402403
assert len(modes) <= 1
404+
403405
try:
404406
mode = modes.pop()
405407
except KeyError:
@@ -500,7 +502,7 @@ def zero(self, d=None):
500502
def ceil(self, o=None):
501503
d = self.dimensions if o is None else as_tuple(o.dim)
502504
return IntervalGroup([i.ceil(o) if i.dim in d else i for i in self],
503-
relations=self.relations)
505+
relations=self.relations, mode=self.mode)
504506

505507
def lift(self, d=None, v=None):
506508
d = set(self.dimensions if d is None else as_tuple(d))

0 commit comments

Comments
 (0)