Skip to content
This repository was archived by the owner on Feb 2, 2024. It is now read-only.

Commit c548b71

Browse files
author
Ehsan Totoni
committed
fix sort ascending flag
1 parent 27a48a6 commit c548b71

1 file changed

Lines changed: 10 additions & 7 deletions

File tree

hpat/hiframes/sort.py

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -339,25 +339,28 @@ def sort_distributed_run(sort_node, array_dists, typemap, calltypes, typingctx,
339339
gen_getitem(var, data_tup_var, i, calltypes, nodes)
340340
return nodes
341341

342-
ascending = sort_node.ascending
342+
ascending_var = ir.Var(scope, mk_unique_var('ascending'), loc)
343+
typemap[ascending_var.name] = types.bool_
344+
nodes.append(
345+
ir.Assign(ir.Const(sort_node.ascending, loc), ascending_var, loc))
346+
343347
# parallel case
344-
def par_sort_impl(key_arrs, data):
348+
def par_sort_impl(key_arrs, data, ascending):
345349
out_key, out_data = parallel_sort(key_arrs, data, ascending)
346350
# TODO: use k-way merge instead of sort
347351
# sort output
348-
hpat.hiframes.sort.local_sort(out_key, out_data)
352+
hpat.hiframes.sort.local_sort(out_key, out_data, ascending)
349353
return out_key, out_data
350354

351355
f_block = compile_to_numba_ir(par_sort_impl,
352356
{'hpat': hpat,
353357
'parallel_sort': parallel_sort,
354358
'to_string_list': to_string_list,
355-
'cp_str_list_to_array': cp_str_list_to_array,
356-
'ascending': ascending},
359+
'cp_str_list_to_array': cp_str_list_to_array},
357360
typingctx,
358-
(key_typ, data_tup_typ),
361+
(key_typ, data_tup_typ, types.bool_),
359362
typemap, calltypes).blocks.popitem()[1]
360-
replace_arg_nodes(f_block, [key_arrs_tup_var, data_tup_var])
363+
replace_arg_nodes(f_block, [key_arrs_tup_var, data_tup_var, ascending_var])
361364
nodes += f_block.body[:-2]
362365
ret_var = nodes[-1].target
363366
# get output key

0 commit comments

Comments
 (0)