Skip to content
Snippets Groups Projects
Commit 6c88aa67 authored by Markus Holzer's avatar Markus Holzer
Browse files

Fix add_subexpressions_for_field_reads

parent 5a9e9787
Branches
Tags
1 merge request!419[Fix] add_subexpressions_for_field_reads
Pipeline #69510 passed with stages
in 33 minutes and 14 seconds
This commit is part of merge request !419. Comments created here will be created in the context of that merge request.
...@@ -190,7 +190,7 @@ def add_subexpressions_for_field_reads(ac, subexpressions=True, main_assignments ...@@ -190,7 +190,7 @@ def add_subexpressions_for_field_reads(ac, subexpressions=True, main_assignments
field_reads.update(assignment.rhs.atoms(Field.Access)) field_reads.update(assignment.rhs.atoms(Field.Access))
if not field_reads: if not field_reads:
return return ac
substitutions = dict() substitutions = dict()
for fa in field_reads: for fa in field_reads:
......
...@@ -146,6 +146,16 @@ def test_add_subexpressions_for_field_reads(): ...@@ -146,6 +146,16 @@ def test_add_subexpressions_for_field_reads():
assert isinstance(ac3.subexpressions[0].lhs, TypedSymbol) assert isinstance(ac3.subexpressions[0].lhs, TypedSymbol)
assert ac3.subexpressions[0].lhs.dtype == BasicType("float32") assert ac3.subexpressions[0].lhs.dtype == BasicType("float32")
# added check for early out of add_subexpressions_for_field_reads is no fields appear on the rhs (See #92)
main = [Assignment(s[0, 0](0), 3.0),
Assignment(s[0, 0](1), 4.0)]
ac4 = AssignmentCollection(main, subexpressions)
assert len(ac4.subexpressions) == 0
ac5 = add_subexpressions_for_field_reads(ac4)
assert ac5 is not None
assert ac4 is ac5
@pytest.mark.parametrize('target', (ps.Target.CPU, ps.Target.GPU)) @pytest.mark.parametrize('target', (ps.Target.CPU, ps.Target.GPU))
@pytest.mark.parametrize('dtype', ('float32', 'float64')) @pytest.mark.parametrize('dtype', ('float32', 'float64'))
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment