|
@@ -16,9 +16,9 @@ and dim_reduce = function
|
|
|
| Allocate (name, dims, dec, loc) ->
|
|
| Allocate (name, dims, dec, loc) ->
|
|
|
Allocate (name, [multiply dims], dec, loc)
|
|
Allocate (name, [multiply dims], dec, loc)
|
|
|
|
|
|
|
|
- | VarUse (Deref (name, values, loc), (Array (_, dims) as ctype), depth) ->
|
|
|
|
|
|
|
+ | VarUse (Type (Deref (name, values, loc), t), (Array (_, dims) as ctype), depth) ->
|
|
|
let reduced = [expand (List.rev dims) values] in
|
|
let reduced = [expand (List.rev dims) values] in
|
|
|
- VarUse (Deref (name, reduced, loc), ctype, depth)
|
|
|
|
|
|
|
+ VarUse (Type (Deref (name, reduced, loc), t), ctype, depth)
|
|
|
|
|
|
|
|
| VarLet (Assign (name, Some values, value, loc), (Array (_, dims) as ctype), depth) ->
|
|
| VarLet (Assign (name, Some values, value, loc), (Array (_, dims) as ctype), depth) ->
|
|
|
let reduced = Some [expand (List.rev dims) values] in
|
|
let reduced = Some [expand (List.rev dims) values] in
|