├── .gitignore ├── .gitmodules ├── LICENSE.TXT ├── README.mdown ├── SConstruct ├── TaskTreeAndResults.png ├── configs ├── 16c.cfg ├── 1c.cfg ├── 2c.cfg ├── 36c.cfg ├── 4c.cfg └── 64c.cfg ├── include └── scc │ ├── autoparallel.h │ ├── serial.h │ └── swarm_runtime.h ├── microbenchmarks ├── SConscript ├── aliased_load_in_loop_latch_exit_auto.cpp ├── aliased_load_in_loop_latch_increment_auto.cpp ├── autotimestamp_tasks_auto.cpp ├── boost_for_each.cpp ├── break_inner_loop_auto.cpp ├── call__ctype_b_loc_in_loop_auto.cpp ├── call__ctype_b_loc_in_loop_auto_mod1.c ├── call_before_conditional_call_auto.cpp ├── call_in_list_loop_auto.cpp ├── call_sret_after_other_calls_in_chain_loop_auto.cpp ├── call_sret_after_other_calls_in_chain_loop_auto_mod1.c ├── call_sret_after_other_calls_in_chain_loop_auto_mod2.cpp ├── call_sret_after_other_calls_in_loop.h ├── call_sret_after_other_calls_in_loop_auto.cpp ├── call_sret_after_other_calls_in_loop_auto_mod1.c ├── calloc_auto.cpp ├── calls_around_unparallelizable_loop_auto.cpp ├── common.h ├── complex_auto.cpp ├── conditional_abort_at_end_of_loop_body_auto.cpp ├── conditional_abort_with_loop_auto.cpp ├── contentious_loop_abort_auto.cpp ├── counter.cpp ├── early_exit_auto.cpp ├── early_exit_only_auto.cpp ├── early_exit_only_nested_loop_auto.cpp ├── few_tasks.cpp ├── fgets_auto.cpp ├── fgets_auto.h ├── fgets_auto_mod1.c ├── float_args.cpp ├── indirect_call_auto.cpp ├── indirect_call_used_return_value_auto.cpp ├── irreducible_auto.cpp ├── list_fill_auto.cpp ├── list_find_auto.cpp ├── load_after_call_auto.cpp ├── load_after_conditional_call_auto.cpp ├── load_after_conditional_call_in_loop_auto.cpp ├── load_after_conditional_calls_auto.cpp ├── load_after_conditional_calls_in_loop_auto.cpp ├── load_after_conditional_loop_auto.cpp ├── load_after_loop_auto.cpp ├── load_after_unknown_bound_auto.cpp ├── load_between_calls_auto.cpp ├── load_in_body_also_bookkeeping_auto.cpp ├── loop_after_conditional_call_auto.cpp ├── loop_coarsen_auto.cpp ├── loop_coarsen_increment_and_reduce_auto.cpp ├── loop_coarsen_override_auto.cpp ├── loop_coarsen_short_auto.cpp ├── loop_coarsen_store_and_reduce_auto.cpp ├── loop_coarsen_strided_auto.cpp ├── loop_expand_pragma_auto.cpp ├── loop_hoist_bookkeeping_auto.cpp ├── loop_multistride_stores.h ├── loop_multistride_stores_32b_iv_ptr_iv_auto.cpp ├── loop_multistride_stores_auto.cpp ├── loop_multistride_stores_several_ivs_auto.cpp ├── loop_nest_inner_serialized_auto.cpp ├── loop_nest_inner_serialized_nocont_auto.cpp ├── loop_nest_print_triangle_matrix_auto.cpp ├── loop_output_auto.cpp ├── loop_output_depends_on_iv_auto.cpp ├── loop_pointer_iv.h ├── loop_pointer_iv_i8_auto.cpp ├── loop_pointer_iv_u64_auto.cpp ├── loop_random_indirection_auto.cpp ├── loop_strdup_and_free.h ├── loop_strdup_and_free_auto.cpp ├── loop_strdup_and_free_auto_mod1.c ├── loops_after_early_chain_auto.cpp ├── manual_task_sequence_auto.cpp ├── many_args.cpp ├── memcpy.h ├── memcpy_u64_auto.cpp ├── memcpy_u8_auto.cpp ├── memset.h ├── memset_u64_auto.cpp ├── memset_u8_auto.cpp ├── move_bookkeeping_loads_around_noalias_store_auto.cpp ├── multiple_allocas_auto.cpp ├── narrow_timestamp_loop.cpp ├── nested_loops_auto.cpp ├── nested_loops_private_alloca_auto.cpp ├── nontrivial_bookkeeping_auto.cpp ├── pass_and_update_stack_vars_auto.cpp ├── pass_dynamic_stack.h ├── pass_dynamic_stack_auto.cpp ├── pass_dynamic_stack_auto_mod1.c ├── pass_dynamic_stack_auto_mod2.c ├── pass_stack_struct_w_memtuple_struct_return_auto.cpp ├── pass_stack_struct_w_memtuple_struct_return_auto.h ├── pass_stack_struct_w_memtuple_struct_return_auto_mod1.c ├── pass_stack_struct_w_memtuple_struct_return_auto_mod2.c ├── pass_struct_byval_and_update_it.h ├── pass_struct_byval_and_update_it_auto.cpp ├── pass_struct_byval_and_update_it_auto_mod1.c ├── pass_struct_byval_and_update_it_promoted_auto.cpp ├── prefix_max_array.h ├── prefix_max_array_u64_auto.cpp ├── privatize_multi_block_loop_auto.cpp ├── privatize_single_block_loop_auto.cpp ├── readnone_param_auto.cpp ├── reverse_chars_auto.cpp ├── run_all.py ├── setjmp_auto.cpp ├── single_loop_auto.cpp ├── single_nested_loop_auto.cpp ├── stores_between_calls_auto.cpp ├── two_loops_auto.cpp ├── unconditional_abort_auto.cpp ├── unknown_bound.h ├── unknown_bound_16_auto.cpp ├── unknown_bound_32_auto.cpp ├── unknown_bound_64_auto.cpp ├── unknown_bound_array.h ├── unknown_bound_array_offby1.h ├── unknown_bound_array_offby1_u16_auto.cpp ├── unknown_bound_array_offby1_u8_auto.cpp ├── unknown_bound_array_stride2_auto.cpp ├── unknown_bound_array_u16_auto.cpp ├── unknown_bound_array_u64_auto.cpp ├── unknown_bound_array_u8_auto.cpp ├── unknown_bound_array_w_call_auto.cpp ├── unknown_bound_array_w_continuation_auto.cpp ├── unknown_bound_array_w_continuation_auto_mod1.c ├── unknown_bound_multiple_loops_auto.cpp ├── unknown_global_bound.h ├── unknown_global_bound_64_auto.cpp ├── unreachable_infinite_loop_auto.cpp ├── unrolled_unknown_bound_auto.cpp ├── unused_return_values_auto.cpp ├── used_nested_nontail_return_values.h ├── used_nested_nontail_return_values_16bit_auto.cpp ├── used_nested_nontail_return_values_64bit_auto.cpp ├── vector_fill_auto.cpp ├── vector_find_auto.cpp ├── vector_reverse_after_pure_call_auto.cpp ├── vector_reverse_after_pure_call_auto_mod1.cpp ├── zeroext_param_auto.cpp └── zeroext_signext_return_auto.cpp └── sccrt ├── README.md ├── SConscript ├── mem_intrinsics.cpp ├── progressive.cpp ├── reduction.cpp └── serial.cpp /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/.gitmodules -------------------------------------------------------------------------------- /LICENSE.TXT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/LICENSE.TXT -------------------------------------------------------------------------------- /README.mdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/README.mdown -------------------------------------------------------------------------------- /SConstruct: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/SConstruct -------------------------------------------------------------------------------- /TaskTreeAndResults.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/TaskTreeAndResults.png -------------------------------------------------------------------------------- /configs/16c.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/configs/16c.cfg -------------------------------------------------------------------------------- /configs/1c.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/configs/1c.cfg -------------------------------------------------------------------------------- /configs/2c.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/configs/2c.cfg -------------------------------------------------------------------------------- /configs/36c.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/configs/36c.cfg -------------------------------------------------------------------------------- /configs/4c.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/configs/4c.cfg -------------------------------------------------------------------------------- /configs/64c.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/configs/64c.cfg -------------------------------------------------------------------------------- /include/scc/autoparallel.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/include/scc/autoparallel.h -------------------------------------------------------------------------------- /include/scc/serial.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/include/scc/serial.h -------------------------------------------------------------------------------- /include/scc/swarm_runtime.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/include/scc/swarm_runtime.h -------------------------------------------------------------------------------- /microbenchmarks/SConscript: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/SConscript -------------------------------------------------------------------------------- /microbenchmarks/aliased_load_in_loop_latch_exit_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/aliased_load_in_loop_latch_exit_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/aliased_load_in_loop_latch_increment_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/aliased_load_in_loop_latch_increment_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/autotimestamp_tasks_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/autotimestamp_tasks_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/boost_for_each.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/boost_for_each.cpp -------------------------------------------------------------------------------- /microbenchmarks/break_inner_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/break_inner_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/call__ctype_b_loc_in_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/call__ctype_b_loc_in_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/call__ctype_b_loc_in_loop_auto_mod1.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/call__ctype_b_loc_in_loop_auto_mod1.c -------------------------------------------------------------------------------- /microbenchmarks/call_before_conditional_call_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/call_before_conditional_call_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/call_in_list_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/call_in_list_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/call_sret_after_other_calls_in_chain_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/call_sret_after_other_calls_in_chain_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/call_sret_after_other_calls_in_chain_loop_auto_mod1.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/call_sret_after_other_calls_in_chain_loop_auto_mod1.c -------------------------------------------------------------------------------- /microbenchmarks/call_sret_after_other_calls_in_chain_loop_auto_mod2.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/call_sret_after_other_calls_in_chain_loop_auto_mod2.cpp -------------------------------------------------------------------------------- /microbenchmarks/call_sret_after_other_calls_in_loop.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/call_sret_after_other_calls_in_loop.h -------------------------------------------------------------------------------- /microbenchmarks/call_sret_after_other_calls_in_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/call_sret_after_other_calls_in_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/call_sret_after_other_calls_in_loop_auto_mod1.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/call_sret_after_other_calls_in_loop_auto_mod1.c -------------------------------------------------------------------------------- /microbenchmarks/calloc_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/calloc_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/calls_around_unparallelizable_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/calls_around_unparallelizable_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/common.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/common.h -------------------------------------------------------------------------------- /microbenchmarks/complex_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/complex_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/conditional_abort_at_end_of_loop_body_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/conditional_abort_at_end_of_loop_body_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/conditional_abort_with_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/conditional_abort_with_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/contentious_loop_abort_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/contentious_loop_abort_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/counter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/counter.cpp -------------------------------------------------------------------------------- /microbenchmarks/early_exit_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/early_exit_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/early_exit_only_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/early_exit_only_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/early_exit_only_nested_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/early_exit_only_nested_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/few_tasks.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/few_tasks.cpp -------------------------------------------------------------------------------- /microbenchmarks/fgets_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/fgets_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/fgets_auto.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/fgets_auto.h -------------------------------------------------------------------------------- /microbenchmarks/fgets_auto_mod1.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/fgets_auto_mod1.c -------------------------------------------------------------------------------- /microbenchmarks/float_args.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/float_args.cpp -------------------------------------------------------------------------------- /microbenchmarks/indirect_call_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/indirect_call_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/indirect_call_used_return_value_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/indirect_call_used_return_value_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/irreducible_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/irreducible_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/list_fill_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/list_fill_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/list_find_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/list_find_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/load_after_call_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/load_after_call_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/load_after_conditional_call_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/load_after_conditional_call_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/load_after_conditional_call_in_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/load_after_conditional_call_in_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/load_after_conditional_calls_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/load_after_conditional_calls_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/load_after_conditional_calls_in_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/load_after_conditional_calls_in_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/load_after_conditional_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/load_after_conditional_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/load_after_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/load_after_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/load_after_unknown_bound_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/load_after_unknown_bound_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/load_between_calls_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/load_between_calls_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/load_in_body_also_bookkeeping_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/load_in_body_also_bookkeeping_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_after_conditional_call_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_after_conditional_call_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_coarsen_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_coarsen_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_coarsen_increment_and_reduce_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_coarsen_increment_and_reduce_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_coarsen_override_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_coarsen_override_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_coarsen_short_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_coarsen_short_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_coarsen_store_and_reduce_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_coarsen_store_and_reduce_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_coarsen_strided_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_coarsen_strided_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_expand_pragma_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_expand_pragma_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_hoist_bookkeeping_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_hoist_bookkeeping_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_multistride_stores.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_multistride_stores.h -------------------------------------------------------------------------------- /microbenchmarks/loop_multistride_stores_32b_iv_ptr_iv_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_multistride_stores_32b_iv_ptr_iv_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_multistride_stores_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_multistride_stores_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_multistride_stores_several_ivs_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_multistride_stores_several_ivs_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_nest_inner_serialized_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_nest_inner_serialized_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_nest_inner_serialized_nocont_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_nest_inner_serialized_nocont_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_nest_print_triangle_matrix_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_nest_print_triangle_matrix_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_output_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_output_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_output_depends_on_iv_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_output_depends_on_iv_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_pointer_iv.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_pointer_iv.h -------------------------------------------------------------------------------- /microbenchmarks/loop_pointer_iv_i8_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_pointer_iv_i8_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_pointer_iv_u64_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_pointer_iv_u64_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_random_indirection_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_random_indirection_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_strdup_and_free.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_strdup_and_free.h -------------------------------------------------------------------------------- /microbenchmarks/loop_strdup_and_free_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_strdup_and_free_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/loop_strdup_and_free_auto_mod1.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loop_strdup_and_free_auto_mod1.c -------------------------------------------------------------------------------- /microbenchmarks/loops_after_early_chain_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/loops_after_early_chain_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/manual_task_sequence_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/manual_task_sequence_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/many_args.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/many_args.cpp -------------------------------------------------------------------------------- /microbenchmarks/memcpy.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/memcpy.h -------------------------------------------------------------------------------- /microbenchmarks/memcpy_u64_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/memcpy_u64_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/memcpy_u8_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/memcpy_u8_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/memset.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/memset.h -------------------------------------------------------------------------------- /microbenchmarks/memset_u64_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/memset_u64_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/memset_u8_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/memset_u8_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/move_bookkeeping_loads_around_noalias_store_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/move_bookkeeping_loads_around_noalias_store_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/multiple_allocas_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/multiple_allocas_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/narrow_timestamp_loop.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/narrow_timestamp_loop.cpp -------------------------------------------------------------------------------- /microbenchmarks/nested_loops_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/nested_loops_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/nested_loops_private_alloca_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/nested_loops_private_alloca_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/nontrivial_bookkeeping_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/nontrivial_bookkeeping_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/pass_and_update_stack_vars_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/pass_and_update_stack_vars_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/pass_dynamic_stack.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/pass_dynamic_stack.h -------------------------------------------------------------------------------- /microbenchmarks/pass_dynamic_stack_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/pass_dynamic_stack_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/pass_dynamic_stack_auto_mod1.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/pass_dynamic_stack_auto_mod1.c -------------------------------------------------------------------------------- /microbenchmarks/pass_dynamic_stack_auto_mod2.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/pass_dynamic_stack_auto_mod2.c -------------------------------------------------------------------------------- /microbenchmarks/pass_stack_struct_w_memtuple_struct_return_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/pass_stack_struct_w_memtuple_struct_return_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/pass_stack_struct_w_memtuple_struct_return_auto.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/pass_stack_struct_w_memtuple_struct_return_auto.h -------------------------------------------------------------------------------- /microbenchmarks/pass_stack_struct_w_memtuple_struct_return_auto_mod1.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/pass_stack_struct_w_memtuple_struct_return_auto_mod1.c -------------------------------------------------------------------------------- /microbenchmarks/pass_stack_struct_w_memtuple_struct_return_auto_mod2.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/pass_stack_struct_w_memtuple_struct_return_auto_mod2.c -------------------------------------------------------------------------------- /microbenchmarks/pass_struct_byval_and_update_it.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/pass_struct_byval_and_update_it.h -------------------------------------------------------------------------------- /microbenchmarks/pass_struct_byval_and_update_it_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/pass_struct_byval_and_update_it_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/pass_struct_byval_and_update_it_auto_mod1.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/pass_struct_byval_and_update_it_auto_mod1.c -------------------------------------------------------------------------------- /microbenchmarks/pass_struct_byval_and_update_it_promoted_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/pass_struct_byval_and_update_it_promoted_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/prefix_max_array.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/prefix_max_array.h -------------------------------------------------------------------------------- /microbenchmarks/prefix_max_array_u64_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/prefix_max_array_u64_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/privatize_multi_block_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/privatize_multi_block_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/privatize_single_block_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/privatize_single_block_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/readnone_param_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/readnone_param_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/reverse_chars_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/reverse_chars_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/run_all.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/run_all.py -------------------------------------------------------------------------------- /microbenchmarks/setjmp_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/setjmp_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/single_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/single_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/single_nested_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/single_nested_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/stores_between_calls_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/stores_between_calls_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/two_loops_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/two_loops_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unconditional_abort_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unconditional_abort_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound.h -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_16_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_16_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_32_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_32_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_64_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_64_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_array.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_array.h -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_array_offby1.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_array_offby1.h -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_array_offby1_u16_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_array_offby1_u16_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_array_offby1_u8_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_array_offby1_u8_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_array_stride2_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_array_stride2_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_array_u16_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_array_u16_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_array_u64_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_array_u64_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_array_u8_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_array_u8_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_array_w_call_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_array_w_call_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_array_w_continuation_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_array_w_continuation_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_array_w_continuation_auto_mod1.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_array_w_continuation_auto_mod1.c -------------------------------------------------------------------------------- /microbenchmarks/unknown_bound_multiple_loops_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_bound_multiple_loops_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unknown_global_bound.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_global_bound.h -------------------------------------------------------------------------------- /microbenchmarks/unknown_global_bound_64_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unknown_global_bound_64_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unreachable_infinite_loop_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unreachable_infinite_loop_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unrolled_unknown_bound_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unrolled_unknown_bound_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/unused_return_values_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/unused_return_values_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/used_nested_nontail_return_values.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/used_nested_nontail_return_values.h -------------------------------------------------------------------------------- /microbenchmarks/used_nested_nontail_return_values_16bit_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/used_nested_nontail_return_values_16bit_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/used_nested_nontail_return_values_64bit_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/used_nested_nontail_return_values_64bit_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/vector_fill_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/vector_fill_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/vector_find_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/vector_find_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/vector_reverse_after_pure_call_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/vector_reverse_after_pure_call_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/vector_reverse_after_pure_call_auto_mod1.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/vector_reverse_after_pure_call_auto_mod1.cpp -------------------------------------------------------------------------------- /microbenchmarks/zeroext_param_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/zeroext_param_auto.cpp -------------------------------------------------------------------------------- /microbenchmarks/zeroext_signext_return_auto.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/microbenchmarks/zeroext_signext_return_auto.cpp -------------------------------------------------------------------------------- /sccrt/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/sccrt/README.md -------------------------------------------------------------------------------- /sccrt/SConscript: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/sccrt/SConscript -------------------------------------------------------------------------------- /sccrt/mem_intrinsics.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/sccrt/mem_intrinsics.cpp -------------------------------------------------------------------------------- /sccrt/progressive.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/sccrt/progressive.cpp -------------------------------------------------------------------------------- /sccrt/reduction.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/sccrt/reduction.cpp -------------------------------------------------------------------------------- /sccrt/serial.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SwarmArch/T4/HEAD/sccrt/serial.cpp --------------------------------------------------------------------------------