From 1970029aa3f30933bea6f5f5560345c715dcd458 Mon Sep 17 00:00:00 2001
From: Andreas Kloeckner <inform@tiker.net>
Date: Thu, 30 Aug 2012 14:29:25 -0400
Subject: [PATCH] When splittting iname in domain, match previous iname type in
 that domain.

---
 loopy/__init__.py | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/loopy/__init__.py b/loopy/__init__.py
index e0b1932b9..7cadc18d8 100644
--- a/loopy/__init__.py
+++ b/loopy/__init__.py
@@ -80,15 +80,19 @@ def split_dimension(kernel, split_iname, inner_length,
         inner_iname = split_iname+"_inner"
 
     def process_set(s):
-        if split_iname not in s.get_var_dict():
+        var_dict = s.get_var_dict()
+
+        if split_iname not in var_dict:
             return s
 
-        outer_var_nr = s.dim(dim_type.set)
-        inner_var_nr = s.dim(dim_type.set)+1
+        orig_dim_type, _ = var_dict[split_iname]
+
+        outer_var_nr = s.dim(orig_dim_type)
+        inner_var_nr = s.dim(orig_dim_type)+1
 
-        s = s.add_dims(dim_type.set, 2)
-        s = s.set_dim_name(dim_type.set, outer_var_nr, outer_iname)
-        s = s.set_dim_name(dim_type.set, inner_var_nr, inner_iname)
+        s = s.add_dims(orig_dim_type, 2)
+        s = s.set_dim_name(orig_dim_type, outer_var_nr, outer_iname)
+        s = s.set_dim_name(orig_dim_type, inner_var_nr, inner_iname)
 
         from loopy.isl_helpers import make_slab
 
-- 
GitLab