Revision 799236949867b6a2be0d492137b36a0b67011622 authored by Andrew Adams on 07 December 2021, 16:16:50 UTC, committed by GitHub on 07 December 2021, 16:16:50 UTC
* Add a version of fast_integer_divide that rounds towards zero

* clang-format

* Fix test condition

* Clean up debugging code

* Add explanatory comment to performance test

* Pacify clang tidy
1 parent fb305fd
History
File Mode Size
CMakeLists.txt -rw-r--r-- 11.7 KB
align_bounds.cpp -rw-r--r-- 6.4 KB
argmax.cpp -rw-r--r-- 3.1 KB
assertion_failure_in_parallel_for.cpp -rw-r--r-- 1.1 KB
async.cpp -rw-r--r-- 14.8 KB
async_copy_chain.cpp -rw-r--r-- 5.2 KB
async_device_copy.cpp -rw-r--r-- 3.7 KB
atomic_tuples.cpp -rw-r--r-- 6.9 KB
atomics.cpp -rw-r--r-- 38.4 KB
autodiff.cpp -rw-r--r-- 46.8 KB
bad_likely.cpp -rw-r--r-- 536 bytes
bit_counting.cpp -rw-r--r-- 3.4 KB
bitwise_ops.cpp -rw-r--r-- 9.2 KB
bool_compute_root_vectorize.cpp -rw-r--r-- 529 bytes
bound.cpp -rw-r--r-- 875 bytes
bound_small_allocations.cpp -rw-r--r-- 847 bytes
bound_storage.cpp -rw-r--r-- 4.1 KB
boundary_conditions.cpp -rw-r--r-- 13.8 KB
bounds.cpp -rw-r--r-- 1.7 KB
bounds_inference.cpp -rw-r--r-- 1.1 KB
bounds_inference_chunk.cpp -rw-r--r-- 670 bytes
bounds_inference_complex.cpp -rw-r--r-- 691 bytes
bounds_inference_outer_split.cpp -rw-r--r-- 2.0 KB
bounds_of_abs.cpp -rw-r--r-- 1.5 KB
bounds_of_cast.cpp -rw-r--r-- 971 bytes
bounds_of_func.cpp -rw-r--r-- 2.2 KB
bounds_of_monotonic_math.cpp -rw-r--r-- 495 bytes
bounds_of_multiply.cpp -rw-r--r-- 575 bytes
bounds_of_split.cpp -rw-r--r-- 743 bytes
bounds_query.cpp -rw-r--r-- 1.5 KB
buffer_t.cpp -rw-r--r-- 1.4 KB
c_function.cpp -rw-r--r-- 2.9 KB
cascaded_filters.cpp -rw-r--r-- 1.2 KB
cast.cpp -rw-r--r-- 1.3 KB
cast_handle.cpp -rw-r--r-- 1.2 KB
chunk.cpp -rw-r--r-- 900 bytes
chunk_sharing.cpp -rw-r--r-- 877 bytes
circular_reference_leak.cpp -rw-r--r-- 425 bytes
code_explosion.cpp -rw-r--r-- 913 bytes
compare_vars.cpp -rw-r--r-- 569 bytes
compile_to.cpp -rw-r--r-- 1.4 KB
compile_to_bitcode.cpp -rw-r--r-- 681 bytes
compile_to_lowered_stmt.cpp -rw-r--r-- 727 bytes
compile_to_multitarget.cpp -rw-r--r-- 7.8 KB
compute_at_reordered_update_stage.cpp -rw-r--r-- 938 bytes
compute_at_split_rvar.cpp -rw-r--r-- 4.8 KB
compute_inside_guard.cpp -rw-r--r-- 1.3 KB
compute_outermost.cpp -rw-r--r-- 1.3 KB
compute_with.cpp -rw-r--r-- 66.7 KB
compute_with_in.cpp -rw-r--r-- 558 bytes
compute_with_inlined.cpp -rw-r--r-- 1.2 KB
computed_index.cpp -rw-r--r-- 341 bytes
concat.cpp -rw-r--r-- 1.2 KB
constant_expr.cpp -rw-r--r-- 3.9 KB
constant_type.cpp -rw-r--r-- 1.5 KB
constraints.cpp -rw-r--r-- 6.5 KB
convolution.cpp -rw-r--r-- 3.8 KB
convolution_multiple_kernels.cpp -rw-r--r-- 2.0 KB
cross_compilation.cpp -rw-r--r-- 1.9 KB
cuda_8_bit_dot_product.cpp -rw-r--r-- 3.1 KB
custom_allocator.cpp -rw-r--r-- 1.0 KB
custom_auto_scheduler.cpp -rw-r--r-- 950 bytes
custom_cuda_context.cpp -rw-r--r-- 6.6 KB
custom_error_reporter.cpp -rw-r--r-- 2.2 KB
custom_jit_context.cpp -rw-r--r-- 2.6 KB
custom_lowering_pass.cpp -rw-r--r-- 1.8 KB
dead_realization_in_specialization.cpp -rw-r--r-- 915 bytes
debug_to_file.cpp -rw-r--r-- 3.5 KB
debug_to_file_multiple_outputs.cpp -rw-r--r-- 3.9 KB
debug_to_file_reorder.cpp -rw-r--r-- 4.2 KB
deferred_loop_level.cpp -rw-r--r-- 3.9 KB
deinterleave4.cpp -rw-r--r-- 700 bytes
device_buffer_copy.cpp -rw-r--r-- 15.7 KB
device_copy_at_inner_loop.cpp -rw-r--r-- 1.2 KB
device_crop.cpp -rw-r--r-- 4.4 KB
device_slice.cpp -rw-r--r-- 5.8 KB
dilate3x3.cpp -rw-r--r-- 1.8 KB
div_by_zero.cpp -rw-r--r-- 2.6 KB
dynamic_allocation_in_gpu_kernel.cpp -rw-r--r-- 2.0 KB
dynamic_reduction_bounds.cpp -rw-r--r-- 495 bytes
embed_bitcode.cpp -rw-r--r-- 728 bytes
erf.cpp -rw-r--r-- 1.2 KB
exception.cpp -rw-r--r-- 3.8 KB
explicit_inline_reductions.cpp -rw-r--r-- 407 bytes
extern_bounds_inference.cpp -rw-r--r-- 3.3 KB
extern_consumer.cpp -rw-r--r-- 3.1 KB
extern_consumer_tiled.cpp -rw-r--r-- 2.0 KB
extern_error.cpp -rw-r--r-- 950 bytes
extern_output_expansion.cpp -rw-r--r-- 2.1 KB
extern_partial.cpp -rw-r--r-- 2.1 KB
extern_producer.cpp -rw-r--r-- 5.5 KB
extern_reorder_storage.cpp -rw-r--r-- 1.5 KB
extern_sort.cpp -rw-r--r-- 1.3 KB
extern_stage.cpp -rw-r--r-- 3.2 KB
extern_stage_on_device.cpp -rw-r--r-- 3.2 KB
external_code.cpp -rw-r--r-- 1.8 KB
failed_unroll.cpp -rw-r--r-- 651 bytes
fast_trigonometric.cpp -rw-r--r-- 1.2 KB
fibonacci.cpp -rw-r--r-- 693 bytes
fit_function.cpp -rw-r--r-- 4.6 KB
float16_t.cpp -rw-r--r-- 11.9 KB
float16_t_comparison.cpp -rw-r--r-- 2.4 KB
float16_t_constants.cpp -rw-r--r-- 7.1 KB
float16_t_image_type.cpp -rw-r--r-- 1.1 KB
float16_t_neon_op_check.cpp -rw-r--r-- 17.5 KB
for_each_element.cpp -rw-r--r-- 2.6 KB
force_onto_stack.cpp -rw-r--r-- 2.8 KB
func_clone.cpp -rw-r--r-- 10.3 KB
func_lifetime.cpp -rw-r--r-- 1.8 KB
func_lifetime_2.cpp -rw-r--r-- 1.8 KB
func_wrapper.cpp -rw-r--r-- 18.3 KB
fuse.cpp -rw-r--r-- 3.7 KB
fuse_gpu_threads.cpp -rw-r--r-- 1.9 KB
fused_where_inner_extent_is_zero.cpp -rw-r--r-- 658 bytes
fuzz_bounds.cpp -rw-r--r-- 15.6 KB
fuzz_cse.cpp -rw-r--r-- 2.6 KB
fuzz_float_stores.cpp -rw-r--r-- 1.9 KB
fuzz_simplify.cpp -rw-r--r-- 10.4 KB
gameoflife.cpp -rw-r--r-- 4.2 KB
gather.cpp -rw-r--r-- 3.0 KB
gpu_allocation_cache.cpp -rw-r--r-- 5.7 KB
gpu_arg_types.cpp -rw-r--r-- 805 bytes
gpu_assertion_in_kernel.cpp -rw-r--r-- 1.5 KB
gpu_bounds_inference_failure.cpp -rw-r--r-- 793 bytes
gpu_condition_lifting.cpp -rw-r--r-- 623 bytes
gpu_cpu_simultaneous_read.cpp -rw-r--r-- 1.6 KB
gpu_data_flows.cpp -rw-r--r-- 2.4 KB
gpu_different_blocks_threads_dimensions.cpp -rw-r--r-- 762 bytes
gpu_dynamic_shared.cpp -rw-r--r-- 1.5 KB
gpu_free_sync.cpp -rw-r--r-- 890 bytes
gpu_give_input_buffers_device_allocations.cpp -rw-r--r-- 1.6 KB
gpu_jit_explicit_copy_to_device.cpp -rw-r--r-- 1.5 KB
gpu_large_alloc.cpp -rw-r--r-- 1.2 KB
gpu_many_kernels.cpp -rw-r--r-- 2.8 KB
gpu_mixed_dimensionality.cpp -rw-r--r-- 1.5 KB
gpu_mixed_shared_mem_types.cpp -rw-r--r-- 2.6 KB
gpu_multi_device.cpp -rw-r--r-- 3.8 KB
gpu_multi_kernel.cpp -rw-r--r-- 983 bytes
gpu_non_contiguous_copy.cpp -rw-r--r-- 3.1 KB
gpu_non_monotonic_shared_mem_size.cpp -rw-r--r-- 5.3 KB
gpu_object_lifetime_1.cpp -rw-r--r-- 1.4 KB
gpu_object_lifetime_2.cpp -rw-r--r-- 1.3 KB
gpu_object_lifetime_3.cpp -rw-r--r-- 1.7 KB
gpu_param_allocation.cpp -rw-r--r-- 666 bytes
gpu_reuse_shared_memory.cpp -rw-r--r-- 5.8 KB
gpu_specialize.cpp -rw-r--r-- 3.3 KB
gpu_store_in_register_with_no_lanes_loop.cpp -rw-r--r-- 1.5 KB
gpu_sum_scan.cpp -rw-r--r-- 1.6 KB
gpu_texture.cpp -rw-r--r-- 4.8 KB
gpu_thread_barrier.cpp -rw-r--r-- 3.7 KB
gpu_transpose.cpp -rw-r--r-- 1.6 KB
gpu_vectorize.cpp -rw-r--r-- 2.1 KB
gpu_vectorized_shared_memory.cpp -rw-r--r-- 1.1 KB
growing_stack.cpp -rw-r--r-- 659 bytes
half_native_interleave.cpp -rw-r--r-- 2.2 KB
halide_buffer.cpp -rw-r--r-- 13.7 KB
handle.cpp -rw-r--r-- 2.4 KB
heap_cleanup.cpp -rw-r--r-- 1.5 KB
hello_gpu.cpp -rw-r--r-- 883 bytes
hexagon_scatter.cpp -rw-r--r-- 2.8 KB
histogram.cpp -rw-r--r-- 2.3 KB
histogram_equalize.cpp -rw-r--r-- 1.7 KB
hoist_loop_invariant_if_statements.cpp -rw-r--r-- 1.5 KB
host_alignment.cpp -rw-r--r-- 3.6 KB
image_io.cpp -rw-r--r-- 8.8 KB
image_of_lists.cpp -rw-r--r-- 1.9 KB
image_wrapper.cpp -rw-r--r-- 19.4 KB
implicit_args.cpp -rw-r--r-- 4.8 KB
implicit_args_tests.cpp -rw-r--r-- 6.9 KB
in_place.cpp -rw-r--r-- 2.4 KB
indexing_access_undef.cpp -rw-r--r-- 1021 bytes
infer_arguments.cpp -rw-r--r-- 6.4 KB
inline_reduction.cpp -rw-r--r-- 7.1 KB
inlined_generator.cpp -rw-r--r-- 2.7 KB
input_image_bounds_check.cpp -rw-r--r-- 1.7 KB
input_larger_than_two_gigs.cpp -rw-r--r-- 1.2 KB
integer_powers.cpp -rw-r--r-- 3.6 KB
interleave.cpp -rw-r--r-- 12.2 KB
interleave_rgb.cpp -rw-r--r-- 3.9 KB
interleave_x.cpp -rw-r--r-- 1.0 KB
interpreter.cpp -rw-r--r-- 6.3 KB
interval.cpp -rw-r--r-- 3.1 KB
intrinsics.cpp -rw-r--r-- 16.8 KB
introspection.cpp -rw-r--r-- 6.7 KB
inverse.cpp -rw-r--r-- 2.7 KB
isnan.cpp -rw-r--r-- 8.3 KB
issue_3926.cpp -rw-r--r-- 638 bytes
iterate_over_circle.cpp -rw-r--r-- 1.1 KB
lambda.cpp -rw-r--r-- 1.3 KB
lazy_convolution.cpp -rw-r--r-- 1.1 KB
leak_device_memory.cpp -rw-r--r-- 2.4 KB
left_shift_negative.cpp -rw-r--r-- 957 bytes
legal_race_condition.cpp -rw-r--r-- 2.2 KB
lerp.cpp -rw-r--r-- 11.2 KB
let_in_rdom_bound.cpp -rw-r--r-- 795 bytes
likely.cpp -rw-r--r-- 7.1 KB
load_library.cpp -rw-r--r-- 3.1 KB
logical.cpp -rw-r--r-- 7.5 KB
loop_invariant_extern_calls.cpp -rw-r--r-- 3.2 KB
loop_level_generator_param.cpp -rw-r--r-- 5.9 KB
lossless_cast.cpp -rw-r--r-- 1.8 KB
lots_of_dimensions.cpp -rw-r--r-- 4.7 KB
lots_of_loop_invariants.cpp -rw-r--r-- 572 bytes
make_struct.cpp -rw-r--r-- 1.7 KB
many_dimensions.cpp -rw-r--r-- 1.4 KB
many_small_extern_stages.cpp -rw-r--r-- 2.1 KB
many_updates.cpp -rw-r--r-- 359 bytes
math.cpp -rw-r--r-- 14.2 KB
median3x3.cpp -rw-r--r-- 2.6 KB
memoize.cpp -rw-r--r-- 22.0 KB
memoize_cloned.cpp -rw-r--r-- 1.2 KB
min_extent.cpp -rw-r--r-- 1.3 KB
mod.cpp -rw-r--r-- 1.3 KB
mul_div_mod.cpp -rw-r--r-- 20.8 KB
multi_output_pipeline_with_bad_sizes.cpp -rw-r--r-- 679 bytes
multi_pass_reduction.cpp -rw-r--r-- 4.2 KB
multi_splits_with_diff_tail_strategies.cpp -rw-r--r-- 1001 bytes
multi_way_select.cpp -rw-r--r-- 797 bytes
multipass_constraints.cpp -rw-r--r-- 1.5 KB
multiple_outputs.cpp -rw-r--r-- 5.7 KB
multiple_outputs_extern.cpp -rw-r--r-- 3.2 KB
multiple_scatter.cpp -rw-r--r-- 7.6 KB
mux.cpp -rw-r--r-- 917 bytes
named_updates.cpp -rw-r--r-- 1.5 KB
nested_shiftinwards.cpp -rw-r--r-- 1.4 KB
nested_tail_strategies.cpp -rw-r--r-- 5.8 KB
newtons_method.cpp -rw-r--r-- 2.5 KB
non_nesting_extern_bounds_query.cpp -rw-r--r-- 3.4 KB
non_vector_aligned_embeded_buffer.cpp -rw-r--r-- 426 bytes
obscure_image_references.cpp -rw-r--r-- 785 bytes
oddly_sized_output.cpp -rw-r--r-- 711 bytes
out_constraint.cpp -rw-r--r-- 2.2 KB
out_of_memory.cpp -rw-r--r-- 2.0 KB
output_larger_than_two_gigs.cpp -rw-r--r-- 1.1 KB
parallel.cpp -rw-r--r-- 428 bytes
parallel_alloc.cpp -rw-r--r-- 695 bytes
parallel_fork.cpp -rw-r--r-- 2.7 KB
parallel_gpu_nested.cpp -rw-r--r-- 976 bytes
parallel_nested.cpp -rw-r--r-- 674 bytes
parallel_nested_1.cpp -rw-r--r-- 904 bytes
parallel_reductions.cpp -rw-r--r-- 2.5 KB
parallel_rvar.cpp -rw-r--r-- 1.2 KB
parallel_scatter.cpp -rw-r--r-- 2.0 KB
param.cpp -rw-r--r-- 4.5 KB
param_map.cpp -rw-r--r-- 1.6 KB
parameter_constraints.cpp -rw-r--r-- 1.7 KB
partial_application.cpp -rw-r--r-- 746 bytes
partial_realization.cpp -rw-r--r-- 1.9 KB
partition_loops.cpp -rw-r--r-- 1.6 KB
partition_loops_bug.cpp -rw-r--r-- 1.3 KB
partition_max_filter.cpp -rw-r--r-- 1.4 KB
pipeline_set_jit_externs_func.cpp -rw-r--r-- 1.7 KB
plain_c_includes.c -rw-r--r-- 495 bytes
popc_clz_ctz_bounds.cpp -rw-r--r-- 2.1 KB
predicated_store_load.cpp -rw-r--r-- 13.8 KB
prefetch.cpp -rw-r--r-- 13.4 KB
print.cpp -rw-r--r-- 7.9 KB
print_loop_nest.cpp -rw-r--r-- 829 bytes
process_some_tiles.cpp -rw-r--r-- 3.5 KB
pseudostack_shares_slots.cpp -rw-r--r-- 3.8 KB
python_extension_gen.cpp -rw-r--r-- 1.7 KB
pytorch.cpp -rw-r--r-- 7.0 KB
random.cpp -rw-r--r-- 5.1 KB
realize_larger_than_two_gigs.cpp -rw-r--r-- 1.2 KB
realize_over_shifted_domain.cpp -rw-r--r-- 828 bytes
reduction_chain.cpp -rw-r--r-- 726 bytes
reduction_non_rectangular.cpp -rw-r--r-- 26.9 KB
reduction_schedule.cpp -rw-r--r-- 1.8 KB
register_shuffle.cpp -rw-r--r-- 14.7 KB
reorder_rvars.cpp -rw-r--r-- 1.7 KB
reorder_storage.cpp -rw-r--r-- 1.9 KB
require.cpp -rw-r--r-- 2.9 KB
reschedule.cpp -rw-r--r-- 936 bytes
reuse_stack_alloc.cpp -rw-r--r-- 826 bytes
rfactor.cpp -rw-r--r-- 33.0 KB
round.cpp -rw-r--r-- 5.2 KB
saturating_casts.cpp -rw-r--r-- 12.1 KB
scatter.cpp -rw-r--r-- 983 bytes
set_custom_trace.cpp -rw-r--r-- 1.7 KB
shadowed_bound.cpp -rw-r--r-- 1.1 KB
shared_self_references.cpp -rw-r--r-- 474 bytes
shifted_image.cpp -rw-r--r-- 571 bytes
side_effects.cpp -rw-r--r-- 3.2 KB
simd_op_check.cpp -rw-r--r-- 124.7 KB
simd_op_check.h -rw-r--r-- 12.3 KB
simd_op_check_hvx.cpp -rw-r--r-- 48.3 KB
simplified_away_embedded_image.cpp -rw-r--r-- 424 bytes
simplify.cpp -rw-r--r-- 98.6 KB
skip_stages.cpp -rw-r--r-- 5.2 KB
skip_stages_external_array_functions.cpp -rw-r--r-- 7.8 KB
skip_stages_memoize.cpp -rw-r--r-- 6.2 KB
sliding_backwards.cpp -rw-r--r-- 650 bytes
sliding_over_guard_with_if.cpp -rw-r--r-- 1.4 KB
sliding_reduction.cpp -rw-r--r-- 3.0 KB
sliding_window.cpp -rw-r--r-- 11.6 KB
sort_exprs.cpp -rw-r--r-- 2.7 KB
specialize.cpp -rw-r--r-- 21.5 KB
specialize_to_gpu.cpp -rw-r--r-- 1.3 KB
split_by_non_factor.cpp -rw-r--r-- 2.5 KB
split_fuse_rvar.cpp -rw-r--r-- 1.4 KB
split_reuse_inner_name_bug.cpp -rw-r--r-- 328 bytes
split_store_compute.cpp -rw-r--r-- 1.1 KB
stack_allocations.cpp -rw-r--r-- 1.0 KB
stencil_chain_in_update_definitions.cpp -rw-r--r-- 2.8 KB
stmt_to_html.cpp -rw-r--r-- 1.7 KB
storage_folding.cpp -rw-r--r-- 17.6 KB
store_in.cpp -rw-r--r-- 1.8 KB
stream_compaction.cpp -rw-r--r-- 1.5 KB
strict_float.cpp -rw-r--r-- 10.6 KB
strict_float_bounds.cpp -rw-r--r-- 671 bytes
strided_load.cpp -rw-r--r-- 934 bytes
target.cpp -rw-r--r-- 6.6 KB
thread_safety.cpp -rw-r--r-- 1.2 KB
tiled_matmul.cpp -rw-r--r-- 7.0 KB
tracing.cpp -rw-r--r-- 12.2 KB
tracing_bounds.cpp -rw-r--r-- 607 bytes
tracing_broadcast.cpp -rw-r--r-- 807 bytes
tracing_stack.cpp -rw-r--r-- 2.8 KB
transitive_bounds.cpp -rw-r--r-- 364 bytes
trim_no_ops.cpp -rw-r--r-- 7.5 KB
truncated_pyramid.cpp -rw-r--r-- 2.7 KB
tuple_partial_update.cpp -rw-r--r-- 1.7 KB
tuple_reduction.cpp -rw-r--r-- 5.8 KB
tuple_select.cpp -rw-r--r-- 3.6 KB
tuple_undef.cpp -rw-r--r-- 4.2 KB
tuple_update_ops.cpp -rw-r--r-- 3.8 KB
tuple_vector_reduce.cpp -rw-r--r-- 2.9 KB
two_vector_args.cpp -rw-r--r-- 285 bytes
undef.cpp -rw-r--r-- 1.9 KB
uninitialized_read.cpp -rw-r--r-- 961 bytes
unique_func_image.cpp -rw-r--r-- 970 bytes
unroll_dynamic_loop.cpp -rw-r--r-- 695 bytes
unroll_huge_mux.cpp -rw-r--r-- 825 bytes
unrolled_reduction.cpp -rw-r--r-- 599 bytes
unsafe_dedup_lets.cpp -rw-r--r-- 1.4 KB
unsafe_promises.cpp -rw-r--r-- 1.5 KB
unused_func.cpp -rw-r--r-- 629 bytes
update_chunk.cpp -rw-r--r-- 385 bytes
vector_bounds_inference.cpp -rw-r--r-- 659 bytes
vector_cast.cpp -rw-r--r-- 4.8 KB
vector_extern.cpp -rw-r--r-- 557 bytes
vector_math.cpp -rw-r--r-- 23.9 KB
vector_print_bug.cpp -rw-r--r-- 210 bytes
vector_reductions.cpp -rw-r--r-- 5.2 KB
vector_tile.cpp -rw-r--r-- 1.0 KB
vectorize_guard_with_if.cpp -rw-r--r-- 3.0 KB
vectorize_mixed_widths.cpp -rw-r--r-- 562 bytes
vectorize_nested.cpp -rw-r--r-- 6.7 KB
vectorize_varying_allocation_size.cpp -rw-r--r-- 678 bytes
vectorized_gpu_allocation.cpp -rw-r--r-- 1.6 KB
vectorized_initialization.cpp -rw-r--r-- 1.1 KB
vectorized_load_from_vectorized_allocation.cpp -rw-r--r-- 1006 bytes
vectorized_reduction_bug.cpp -rw-r--r-- 1.8 KB
widening_reduction.cpp -rw-r--r-- 5.1 KB

back to top