def asm_split_pairings (): pairs = [(s, 'Loop.' + s) for s in afunctions] target_objects.use_hooks.add ('stack_logic') import stack_logic stack_bounds = '%s/StackBounds.txt' % target_dir new_pairings = stack_logic.mk_stack_pairings (pairs, stack_bounds) pairings.update (new_pairings)
def asm_split_pairings (): pairs = [(s, 'Loop.' + s) for s in ['f', 'g']] target_objects.use_hooks.add ('stack_logic') import stack_logic stack_bounds = '%s/StackBounds.txt' % target_dir new_pairings = stack_logic.mk_stack_pairings (pairs, stack_bounds) pairings.update (new_pairings)
def make_pairings (): pairs = [(s, 'Kernel_C.' + s) for s in functions if ('Kernel_C.' + s) in functions] target_objects.use_hooks.add ('stack_logic') import stack_logic stack_bounds = '%s/StackBounds.txt' % target_dir new_pairings = stack_logic.mk_stack_pairings (pairs, stack_bounds) pairings.update (new_pairings)
def asm_split_pairings (): pairs = [(s, 'Insertsort.' + s) for s in ['sort2','sort','main']] target_objects.use_hooks.add ('stack_logic') import stack_logic # Shim to ignore M0 clock counter def no_clock_loop_var_analysis (p, split): res = stack_logic.loop_var_analysis (p, split) if res == None or not stack_logic.is_asm_node (p, split): return res return [(var,data) for (var,data) in res if var.name != 'clock'] target_objects.avail_hooks['loop_var_analysis']['stack_logic'] = no_clock_loop_var_analysis stack_bounds = '%s/StackBounds.txt' % target_dir new_pairings = stack_logic.mk_stack_pairings (pairs, stack_bounds) pairings.update (new_pairings)