diff --git a/loopy/__init__.py b/loopy/__init__.py index a14dff965bd349bac80bbda3e6deb6bb67e2ae5a..6a68748731a0d62c444c6f8865ecb989374374e3 100644 --- a/loopy/__init__.py +++ b/loopy/__init__.py @@ -73,7 +73,8 @@ def make_kernel(*args, **kwargs): for iname in reduction_expr.inames: if iname in duplicate_inames: - new_iname = knl.make_unique_var_name(iname, newly_created_vars) + new_iname = knl.make_unique_var_name(iname+"_"+insn.id, + newly_created_vars) old_insn_inames.append(iname) new_insn_inames.append(new_iname) @@ -123,7 +124,7 @@ def make_kernel(*args, **kwargs): new_inames = [ knl.make_unique_var_name( - iname, + based_on=iname+"_"+insn.id, extra_used_vars= newly_created_vars) for iname in duplicate_inames] diff --git a/loopy/cse.py b/loopy/cse.py index 3456476439be06132853ffd605b24723ac73d1a7..5388ce19360f819fd32865f29c73fb9fc701b715 100644 --- a/loopy/cse.py +++ b/loopy/cse.py @@ -371,7 +371,12 @@ def realize_cse(kernel, cse_tag, dtype, independent_inames=[], temp_new_inames = [] for old_iname, new_iname in zip(independent_inames, new_inames): if new_iname is None: - new_iname = kernel.make_unique_var_name(old_iname, set(temp_new_inames)) + if cse_tag is not None: + based_on = old_iname+"_"+cse_tag + else: + based_on = old_iname + + new_iname = kernel.make_unique_var_name(based_on, set(temp_new_inames)) assert new_iname != old_iname temp_new_inames.append(new_iname)