gcc/libgfortran/generated
Mikael Morin d56bf41945 libgfortran: Don't skip allocation if size is zero [PR112412]
In the function template of transformational functions doing a reduction
of an array along one dimension, if the passed in result array was
unallocated and the calculated allocation size was zero (this is the case
of empty result arrays), an early return used to skip the allocation.  This
change moves the allocation before the early return, so that empty result
arrays are not seen as unallocated.  This is possible because zero size is
explicitly supported by the allocation function.

The offending code is present in several places, and this updates them all.
More precisely, there is one place in the template for logical reductions,
and there are two places in the templates corresponding to masked reductions
with respectively array mask and scalar mask.  Templates for unmasked
reductions, which already allocate before returning, are not affected, but
unmasked reductions are checked nevertheless in the testcase.  The affected
m4 files are ifunction.m4 for regular functions and types, ifunction-s.m4
for character minloc and maxloc, ifunction-s2.m4 for character minval and
maxval, and ifunction_logical for logical reductions.

	PR fortran/112412

libgfortran/ChangeLog:

	* m4/ifunction.m4 (START_MASKED_ARRAY_FUNCTION, SCALAR_ARRAY_FUNCTION):
	Don't skip allocation if the allocation size is zero.
	* m4/ifunction-s.m4 (START_MASKED_ARRAY_FUNCTION,
	SCALAR_ARRAY_FUNCTION): Ditto.
	* m4/ifunction-s2.m4 (START_MASKED_ARRAY_FUNCTION,
	SCALAR_ARRAY_FUNCTION): Ditto.
	* m4/ifunction_logical.m4 (START_ARRAY_FUNCTION): Ditto.
	* generated/all_l1.c: Regenerate.
	* generated/all_l16.c: Regenerate.
	* generated/all_l2.c: Regenerate.
	* generated/all_l4.c: Regenerate.
	* generated/all_l8.c: Regenerate.
	* generated/any_l1.c: Regenerate.
	* generated/any_l16.c: Regenerate.
	* generated/any_l2.c: Regenerate.
	* generated/any_l4.c: Regenerate.
	* generated/any_l8.c: Regenerate.
	* generated/count_16_l.c: Regenerate.
	* generated/count_1_l.c: Regenerate.
	* generated/count_2_l.c: Regenerate.
	* generated/count_4_l.c: Regenerate.
	* generated/count_8_l.c: Regenerate.
	* generated/iall_i1.c: Regenerate.
	* generated/iall_i16.c: Regenerate.
	* generated/iall_i2.c: Regenerate.
	* generated/iall_i4.c: Regenerate.
	* generated/iall_i8.c: Regenerate.
	* generated/iany_i1.c: Regenerate.
	* generated/iany_i16.c: Regenerate.
	* generated/iany_i2.c: Regenerate.
	* generated/iany_i4.c: Regenerate.
	* generated/iany_i8.c: Regenerate.
	* generated/iparity_i1.c: Regenerate.
	* generated/iparity_i16.c: Regenerate.
	* generated/iparity_i2.c: Regenerate.
	* generated/iparity_i4.c: Regenerate.
	* generated/iparity_i8.c: Regenerate.
	* generated/maxloc1_16_i1.c: Regenerate.
	* generated/maxloc1_16_i16.c: Regenerate.
	* generated/maxloc1_16_i2.c: Regenerate.
	* generated/maxloc1_16_i4.c: Regenerate.
	* generated/maxloc1_16_i8.c: Regenerate.
	* generated/maxloc1_16_r10.c: Regenerate.
	* generated/maxloc1_16_r16.c: Regenerate.
	* generated/maxloc1_16_r17.c: Regenerate.
	* generated/maxloc1_16_r4.c: Regenerate.
	* generated/maxloc1_16_r8.c: Regenerate.
	* generated/maxloc1_16_s1.c: Regenerate.
	* generated/maxloc1_16_s4.c: Regenerate.
	* generated/maxloc1_4_i1.c: Regenerate.
	* generated/maxloc1_4_i16.c: Regenerate.
	* generated/maxloc1_4_i2.c: Regenerate.
	* generated/maxloc1_4_i4.c: Regenerate.
	* generated/maxloc1_4_i8.c: Regenerate.
	* generated/maxloc1_4_r10.c: Regenerate.
	* generated/maxloc1_4_r16.c: Regenerate.
	* generated/maxloc1_4_r17.c: Regenerate.
	* generated/maxloc1_4_r4.c: Regenerate.
	* generated/maxloc1_4_r8.c: Regenerate.
	* generated/maxloc1_4_s1.c: Regenerate.
	* generated/maxloc1_4_s4.c: Regenerate.
	* generated/maxloc1_8_i1.c: Regenerate.
	* generated/maxloc1_8_i16.c: Regenerate.
	* generated/maxloc1_8_i2.c: Regenerate.
	* generated/maxloc1_8_i4.c: Regenerate.
	* generated/maxloc1_8_i8.c: Regenerate.
	* generated/maxloc1_8_r10.c: Regenerate.
	* generated/maxloc1_8_r16.c: Regenerate.
	* generated/maxloc1_8_r17.c: Regenerate.
	* generated/maxloc1_8_r4.c: Regenerate.
	* generated/maxloc1_8_r8.c: Regenerate.
	* generated/maxloc1_8_s1.c: Regenerate.
	* generated/maxloc1_8_s4.c: Regenerate.
	* generated/maxval1_s1.c: Regenerate.
	* generated/maxval1_s4.c: Regenerate.
	* generated/maxval_i1.c: Regenerate.
	* generated/maxval_i16.c: Regenerate.
	* generated/maxval_i2.c: Regenerate.
	* generated/maxval_i4.c: Regenerate.
	* generated/maxval_i8.c: Regenerate.
	* generated/maxval_r10.c: Regenerate.
	* generated/maxval_r16.c: Regenerate.
	* generated/maxval_r17.c: Regenerate.
	* generated/maxval_r4.c: Regenerate.
	* generated/maxval_r8.c: Regenerate.
	* generated/minloc1_16_i1.c: Regenerate.
	* generated/minloc1_16_i16.c: Regenerate.
	* generated/minloc1_16_i2.c: Regenerate.
	* generated/minloc1_16_i4.c: Regenerate.
	* generated/minloc1_16_i8.c: Regenerate.
	* generated/minloc1_16_r10.c: Regenerate.
	* generated/minloc1_16_r16.c: Regenerate.
	* generated/minloc1_16_r17.c: Regenerate.
	* generated/minloc1_16_r4.c: Regenerate.
	* generated/minloc1_16_r8.c: Regenerate.
	* generated/minloc1_16_s1.c: Regenerate.
	* generated/minloc1_16_s4.c: Regenerate.
	* generated/minloc1_4_i1.c: Regenerate.
	* generated/minloc1_4_i16.c: Regenerate.
	* generated/minloc1_4_i2.c: Regenerate.
	* generated/minloc1_4_i4.c: Regenerate.
	* generated/minloc1_4_i8.c: Regenerate.
	* generated/minloc1_4_r10.c: Regenerate.
	* generated/minloc1_4_r16.c: Regenerate.
	* generated/minloc1_4_r17.c: Regenerate.
	* generated/minloc1_4_r4.c: Regenerate.
	* generated/minloc1_4_r8.c: Regenerate.
	* generated/minloc1_4_s1.c: Regenerate.
	* generated/minloc1_4_s4.c: Regenerate.
	* generated/minloc1_8_i1.c: Regenerate.
	* generated/minloc1_8_i16.c: Regenerate.
	* generated/minloc1_8_i2.c: Regenerate.
	* generated/minloc1_8_i4.c: Regenerate.
	* generated/minloc1_8_i8.c: Regenerate.
	* generated/minloc1_8_r10.c: Regenerate.
	* generated/minloc1_8_r16.c: Regenerate.
	* generated/minloc1_8_r17.c: Regenerate.
	* generated/minloc1_8_r4.c: Regenerate.
	* generated/minloc1_8_r8.c: Regenerate.
	* generated/minloc1_8_s1.c: Regenerate.
	* generated/minloc1_8_s4.c: Regenerate.
	* generated/minval1_s1.c: Regenerate.
	* generated/minval1_s4.c: Regenerate.
	* generated/minval_i1.c: Regenerate.
	* generated/minval_i16.c: Regenerate.
	* generated/minval_i2.c: Regenerate.
	* generated/minval_i4.c: Regenerate.
	* generated/minval_i8.c: Regenerate.
	* generated/minval_r10.c: Regenerate.
	* generated/minval_r16.c: Regenerate.
	* generated/minval_r17.c: Regenerate.
	* generated/minval_r4.c: Regenerate.
	* generated/minval_r8.c: Regenerate.
	* generated/product_c10.c: Regenerate.
	* generated/product_c16.c: Regenerate.
	* generated/product_c17.c: Regenerate.
	* generated/product_c4.c: Regenerate.
	* generated/product_c8.c: Regenerate.
	* generated/product_i1.c: Regenerate.
	* generated/product_i16.c: Regenerate.
	* generated/product_i2.c: Regenerate.
	* generated/product_i4.c: Regenerate.
	* generated/product_i8.c: Regenerate.
	* generated/product_r10.c: Regenerate.
	* generated/product_r16.c: Regenerate.
	* generated/product_r17.c: Regenerate.
	* generated/product_r4.c: Regenerate.
	* generated/product_r8.c: Regenerate.
	* generated/sum_c10.c: Regenerate.
	* generated/sum_c16.c: Regenerate.
	* generated/sum_c17.c: Regenerate.
	* generated/sum_c4.c: Regenerate.
	* generated/sum_c8.c: Regenerate.
	* generated/sum_i1.c: Regenerate.
	* generated/sum_i16.c: Regenerate.
	* generated/sum_i2.c: Regenerate.
	* generated/sum_i4.c: Regenerate.
	* generated/sum_i8.c: Regenerate.
	* generated/sum_r10.c: Regenerate.
	* generated/sum_r16.c: Regenerate.
	* generated/sum_r17.c: Regenerate.
	* generated/sum_r4.c: Regenerate.
	* generated/sum_r8.c: Regenerate.

gcc/testsuite/ChangeLog:

	* gfortran.dg/allocated_4.f90: New test.
2023-11-08 12:32:18 +01:00
..
_abs_c4.F90
_abs_c8.F90
_abs_c10.F90
_abs_c16.F90
_abs_c17.F90
_abs_i4.F90
_abs_i8.F90
_abs_i16.F90
_abs_r4.F90
_abs_r8.F90
_abs_r10.F90
_abs_r16.F90
_abs_r17.F90
_acos_r4.F90
_acos_r8.F90
_acos_r10.F90
_acos_r16.F90
_acos_r17.F90
_acosh_r4.F90
_acosh_r8.F90
_acosh_r10.F90
_acosh_r16.F90
_acosh_r17.F90
_aimag_c4.F90
_aimag_c8.F90
_aimag_c10.F90
_aimag_c16.F90
_aimag_c17.F90
_aint_r4.F90
_aint_r8.F90
_aint_r10.F90
_aint_r16.F90
_aint_r17.F90
_anint_r4.F90
_anint_r8.F90
_anint_r10.F90
_anint_r16.F90
_anint_r17.F90
_asin_r4.F90
_asin_r8.F90
_asin_r10.F90
_asin_r16.F90
_asin_r17.F90
_asinh_r4.F90
_asinh_r8.F90
_asinh_r10.F90
_asinh_r16.F90
_asinh_r17.F90
_atan2_r4.F90
_atan2_r8.F90
_atan2_r10.F90
_atan2_r16.F90
_atan2_r17.F90
_atan_r4.F90
_atan_r8.F90
_atan_r10.F90
_atan_r16.F90
_atan_r17.F90
_atanh_r4.F90
_atanh_r8.F90
_atanh_r10.F90
_atanh_r16.F90
_atanh_r17.F90
_conjg_c4.F90
_conjg_c8.F90
_conjg_c10.F90
_conjg_c16.F90
_conjg_c17.F90
_cos_c4.F90
_cos_c8.F90
_cos_c10.F90
_cos_c16.F90
_cos_c17.F90
_cos_r4.F90
_cos_r8.F90
_cos_r10.F90
_cos_r16.F90
_cos_r17.F90
_cosh_r4.F90
_cosh_r8.F90
_cosh_r10.F90
_cosh_r16.F90
_cosh_r17.F90
_dim_i4.F90
_dim_i8.F90
_dim_i16.F90
_dim_r4.F90
_dim_r8.F90
_dim_r10.F90
_dim_r16.F90
_dim_r17.F90
_exp_c4.F90
_exp_c8.F90
_exp_c10.F90
_exp_c16.F90
_exp_c17.F90
_exp_r4.F90
_exp_r8.F90
_exp_r10.F90
_exp_r16.F90
_exp_r17.F90
_log10_r4.F90
_log10_r8.F90
_log10_r10.F90
_log10_r16.F90
_log10_r17.F90
_log_c4.F90
_log_c8.F90
_log_c10.F90
_log_c16.F90
_log_c17.F90
_log_r4.F90
_log_r8.F90
_log_r10.F90
_log_r16.F90
_log_r17.F90
_mod_i4.F90
_mod_i8.F90
_mod_i16.F90
_mod_r4.F90
_mod_r8.F90
_mod_r10.F90
_mod_r16.F90
_mod_r17.F90
_sign_i4.F90
_sign_i8.F90
_sign_i16.F90
_sign_r4.F90
_sign_r8.F90
_sign_r10.F90
_sign_r16.F90
_sign_r17.F90
_sin_c4.F90
_sin_c8.F90
_sin_c10.F90
_sin_c16.F90
_sin_c17.F90
_sin_r4.F90
_sin_r8.F90
_sin_r10.F90
_sin_r16.F90
_sin_r17.F90
_sinh_r4.F90
_sinh_r8.F90
_sinh_r10.F90
_sinh_r16.F90
_sinh_r17.F90
_sqrt_c4.F90
_sqrt_c8.F90
_sqrt_c10.F90
_sqrt_c16.F90
_sqrt_c17.F90
_sqrt_r4.F90
_sqrt_r8.F90
_sqrt_r10.F90
_sqrt_r16.F90
_sqrt_r17.F90
_tan_r4.F90
_tan_r8.F90
_tan_r10.F90
_tan_r16.F90
_tan_r17.F90
_tanh_r4.F90
_tanh_r8.F90
_tanh_r10.F90
_tanh_r16.F90
_tanh_r17.F90
all_l1.c
all_l2.c
all_l4.c
all_l8.c
all_l16.c
any_l1.c
any_l2.c
any_l4.c
any_l8.c
any_l16.c
bessel_r4.c
bessel_r8.c
bessel_r10.c
bessel_r16.c
bessel_r17.c
count_1_l.c
count_2_l.c
count_4_l.c
count_8_l.c
count_16_l.c
cshift0_c4.c
cshift0_c8.c
cshift0_c10.c
cshift0_c16.c
cshift0_c17.c
cshift0_i1.c
cshift0_i2.c
cshift0_i4.c
cshift0_i8.c
cshift0_i16.c
cshift0_r4.c
cshift0_r8.c
cshift0_r10.c
cshift0_r16.c
cshift0_r17.c
cshift1_4_c4.c
cshift1_4_c8.c
cshift1_4_c10.c
cshift1_4_c16.c
cshift1_4_c17.c
cshift1_4_i1.c
cshift1_4_i2.c
cshift1_4_i4.c
cshift1_4_i8.c
cshift1_4_i16.c
cshift1_4_r4.c
cshift1_4_r8.c
cshift1_4_r10.c
cshift1_4_r16.c
cshift1_4_r17.c
cshift1_4.c
cshift1_8_c4.c
cshift1_8_c8.c
cshift1_8_c10.c
cshift1_8_c16.c
cshift1_8_c17.c
cshift1_8_i1.c
cshift1_8_i2.c
cshift1_8_i4.c
cshift1_8_i8.c
cshift1_8_i16.c
cshift1_8_r4.c
cshift1_8_r8.c
cshift1_8_r10.c
cshift1_8_r16.c
cshift1_8_r17.c
cshift1_8.c
cshift1_16_c4.c
cshift1_16_c8.c
cshift1_16_c10.c
cshift1_16_c16.c
cshift1_16_c17.c
cshift1_16_i1.c
cshift1_16_i2.c
cshift1_16_i4.c
cshift1_16_i8.c
cshift1_16_i16.c
cshift1_16_r4.c
cshift1_16_r8.c
cshift1_16_r10.c
cshift1_16_r16.c
cshift1_16_r17.c
cshift1_16.c
eoshift1_4.c
eoshift1_8.c
eoshift1_16.c
eoshift3_4.c
eoshift3_8.c
eoshift3_16.c
findloc0_c4.c
findloc0_c8.c
findloc0_c10.c
findloc0_c16.c
findloc0_c17.c
findloc0_i1.c
findloc0_i2.c
findloc0_i4.c
findloc0_i8.c
findloc0_i16.c
findloc0_r4.c
findloc0_r8.c
findloc0_r10.c
findloc0_r16.c
findloc0_r17.c
findloc0_s1.c
findloc0_s4.c
findloc1_c4.c
findloc1_c8.c
findloc1_c10.c
findloc1_c16.c
findloc1_c17.c
findloc1_i1.c
findloc1_i2.c
findloc1_i4.c
findloc1_i8.c
findloc1_i16.c
findloc1_r4.c
findloc1_r8.c
findloc1_r10.c
findloc1_r16.c
findloc1_r17.c
findloc1_s1.c
findloc1_s4.c
findloc2_s1.c
findloc2_s4.c
iall_i1.c
iall_i2.c
iall_i4.c
iall_i8.c
iall_i16.c
iany_i1.c
iany_i2.c
iany_i4.c
iany_i8.c
iany_i16.c
in_pack_c4.c
in_pack_c8.c
in_pack_c10.c
in_pack_c16.c
in_pack_c17.c
in_pack_i1.c
in_pack_i2.c
in_pack_i4.c
in_pack_i8.c
in_pack_i16.c
in_pack_r4.c
in_pack_r8.c
in_pack_r10.c
in_pack_r16.c
in_pack_r17.c
in_unpack_c4.c
in_unpack_c8.c
in_unpack_c10.c
in_unpack_c16.c
in_unpack_c17.c
in_unpack_i1.c
in_unpack_i2.c
in_unpack_i4.c
in_unpack_i8.c
in_unpack_i16.c
in_unpack_r4.c
in_unpack_r8.c
in_unpack_r10.c
in_unpack_r16.c
in_unpack_r17.c
iparity_i1.c
iparity_i2.c
iparity_i4.c
iparity_i8.c
iparity_i16.c
matmul_c4.c
matmul_c8.c
matmul_c10.c
matmul_c16.c
matmul_c17.c
matmul_i1.c
matmul_i2.c
matmul_i4.c
matmul_i8.c
matmul_i16.c
matmul_l4.c
matmul_l8.c
matmul_l16.c
matmul_r4.c
matmul_r8.c
matmul_r10.c
matmul_r16.c
matmul_r17.c
matmulavx128_c4.c
matmulavx128_c8.c
matmulavx128_c10.c
matmulavx128_c16.c
matmulavx128_c17.c
matmulavx128_i1.c
matmulavx128_i2.c
matmulavx128_i4.c
matmulavx128_i8.c
matmulavx128_i16.c
matmulavx128_r4.c
matmulavx128_r8.c
matmulavx128_r10.c
matmulavx128_r16.c
matmulavx128_r17.c
maxloc0_4_i1.c
maxloc0_4_i2.c
maxloc0_4_i4.c
maxloc0_4_i8.c
maxloc0_4_i16.c
maxloc0_4_r4.c
maxloc0_4_r8.c
maxloc0_4_r10.c
maxloc0_4_r16.c
maxloc0_4_r17.c
maxloc0_4_s1.c
maxloc0_4_s4.c
maxloc0_8_i1.c
maxloc0_8_i2.c
maxloc0_8_i4.c
maxloc0_8_i8.c
maxloc0_8_i16.c
maxloc0_8_r4.c
maxloc0_8_r8.c
maxloc0_8_r10.c
maxloc0_8_r16.c
maxloc0_8_r17.c
maxloc0_8_s1.c
maxloc0_8_s4.c
maxloc0_16_i1.c
maxloc0_16_i2.c
maxloc0_16_i4.c
maxloc0_16_i8.c
maxloc0_16_i16.c
maxloc0_16_r4.c
maxloc0_16_r8.c
maxloc0_16_r10.c
maxloc0_16_r16.c
maxloc0_16_r17.c
maxloc0_16_s1.c
maxloc0_16_s4.c
maxloc1_4_i1.c
maxloc1_4_i2.c
maxloc1_4_i4.c
maxloc1_4_i8.c
maxloc1_4_i16.c
maxloc1_4_r4.c
maxloc1_4_r8.c
maxloc1_4_r10.c
maxloc1_4_r16.c
maxloc1_4_r17.c
maxloc1_4_s1.c
maxloc1_4_s4.c
maxloc1_8_i1.c
maxloc1_8_i2.c
maxloc1_8_i4.c
maxloc1_8_i8.c
maxloc1_8_i16.c
maxloc1_8_r4.c
maxloc1_8_r8.c
maxloc1_8_r10.c
maxloc1_8_r16.c
maxloc1_8_r17.c
maxloc1_8_s1.c
maxloc1_8_s4.c
maxloc1_16_i1.c
maxloc1_16_i2.c
maxloc1_16_i4.c
maxloc1_16_i8.c
maxloc1_16_i16.c
maxloc1_16_r4.c
maxloc1_16_r8.c
maxloc1_16_r10.c
maxloc1_16_r16.c
maxloc1_16_r17.c
maxloc1_16_s1.c
maxloc1_16_s4.c
maxloc2_4_s1.c
maxloc2_4_s4.c
maxloc2_8_s1.c
maxloc2_8_s4.c
maxloc2_16_s1.c
maxloc2_16_s4.c
maxval0_s1.c
maxval0_s4.c
maxval1_s1.c
maxval1_s4.c
maxval_i1.c
maxval_i2.c
maxval_i4.c
maxval_i8.c
maxval_i16.c
maxval_r4.c
maxval_r8.c
maxval_r10.c
maxval_r16.c
maxval_r17.c
minloc0_4_i1.c
minloc0_4_i2.c
minloc0_4_i4.c
minloc0_4_i8.c
minloc0_4_i16.c
minloc0_4_r4.c
minloc0_4_r8.c
minloc0_4_r10.c
minloc0_4_r16.c
minloc0_4_r17.c
minloc0_4_s1.c
minloc0_4_s4.c
minloc0_8_i1.c
minloc0_8_i2.c
minloc0_8_i4.c
minloc0_8_i8.c
minloc0_8_i16.c
minloc0_8_r4.c
minloc0_8_r8.c
minloc0_8_r10.c
minloc0_8_r16.c
minloc0_8_r17.c
minloc0_8_s1.c
minloc0_8_s4.c
minloc0_16_i1.c
minloc0_16_i2.c
minloc0_16_i4.c
minloc0_16_i8.c
minloc0_16_i16.c
minloc0_16_r4.c
minloc0_16_r8.c
minloc0_16_r10.c
minloc0_16_r16.c
minloc0_16_r17.c
minloc0_16_s1.c
minloc0_16_s4.c
minloc1_4_i1.c
minloc1_4_i2.c
minloc1_4_i4.c
minloc1_4_i8.c
minloc1_4_i16.c
minloc1_4_r4.c
minloc1_4_r8.c
minloc1_4_r10.c
minloc1_4_r16.c
minloc1_4_r17.c
minloc1_4_s1.c
minloc1_4_s4.c
minloc1_8_i1.c
minloc1_8_i2.c
minloc1_8_i4.c
minloc1_8_i8.c
minloc1_8_i16.c
minloc1_8_r4.c
minloc1_8_r8.c
minloc1_8_r10.c
minloc1_8_r16.c
minloc1_8_r17.c
minloc1_8_s1.c
minloc1_8_s4.c
minloc1_16_i1.c
minloc1_16_i2.c
minloc1_16_i4.c
minloc1_16_i8.c
minloc1_16_i16.c
minloc1_16_r4.c
minloc1_16_r8.c
minloc1_16_r10.c
minloc1_16_r16.c
minloc1_16_r17.c
minloc1_16_s1.c
minloc1_16_s4.c
minloc2_4_s1.c
minloc2_4_s4.c
minloc2_8_s1.c
minloc2_8_s4.c
minloc2_16_s1.c
minloc2_16_s4.c
minval0_s1.c
minval0_s4.c
minval1_s1.c
minval1_s4.c
minval_i1.c
minval_i2.c
minval_i4.c
minval_i8.c
minval_i16.c
minval_r4.c
minval_r8.c
minval_r10.c
minval_r16.c
minval_r17.c
misc_specifics.F90
norm2_r4.c
norm2_r8.c
norm2_r10.c
norm2_r16.c
norm2_r17.c
pack_c4.c
pack_c8.c
pack_c10.c
pack_c16.c
pack_c17.c
pack_i1.c
pack_i2.c
pack_i4.c
pack_i8.c
pack_i16.c
pack_r4.c
pack_r8.c
pack_r10.c
pack_r16.c
pack_r17.c
parity_l1.c
parity_l2.c
parity_l4.c
parity_l8.c
parity_l16.c
pow_c4_i4.c
pow_c4_i8.c
pow_c4_i16.c
pow_c8_i4.c
pow_c8_i8.c
pow_c8_i16.c
pow_c10_i4.c
pow_c10_i8.c
pow_c10_i16.c
pow_c16_i4.c
pow_c16_i8.c
pow_c16_i16.c
pow_c17_i4.c
pow_c17_i8.c
pow_c17_i16.c
pow_i4_i4.c
pow_i4_i8.c
pow_i4_i16.c
pow_i8_i4.c
pow_i8_i8.c
pow_i8_i16.c
pow_i16_i4.c
pow_i16_i8.c
pow_i16_i16.c
pow_r4_i8.c
pow_r4_i16.c
pow_r8_i8.c
pow_r8_i16.c
pow_r10_i8.c
pow_r10_i16.c
pow_r16_i4.c
pow_r16_i8.c
pow_r16_i16.c
pow_r17_i4.c
pow_r17_i8.c
pow_r17_i16.c
product_c4.c
product_c8.c
product_c10.c
product_c16.c
product_c17.c
product_i1.c
product_i2.c
product_i4.c
product_i8.c
product_i16.c
product_r4.c
product_r8.c
product_r10.c
product_r16.c
product_r17.c
reshape_c4.c
reshape_c8.c
reshape_c10.c
reshape_c16.c
reshape_c17.c
reshape_i4.c
reshape_i8.c
reshape_i16.c
reshape_r4.c
reshape_r8.c
reshape_r10.c
reshape_r16.c
reshape_r17.c
shape_i1.c
shape_i2.c
shape_i4.c
shape_i8.c
shape_i16.c
spread_c4.c
spread_c8.c
spread_c10.c
spread_c16.c
spread_c17.c
spread_i1.c
spread_i2.c
spread_i4.c
spread_i8.c
spread_i16.c
spread_r4.c
spread_r8.c
spread_r10.c
spread_r16.c
spread_r17.c
sum_c4.c
sum_c8.c
sum_c10.c
sum_c16.c
sum_c17.c
sum_i1.c
sum_i2.c
sum_i4.c
sum_i8.c
sum_i16.c
sum_r4.c
sum_r8.c
sum_r10.c
sum_r16.c
sum_r17.c
unpack_c4.c
unpack_c8.c
unpack_c10.c
unpack_c16.c
unpack_c17.c
unpack_i1.c
unpack_i2.c
unpack_i4.c
unpack_i8.c
unpack_i16.c
unpack_r4.c
unpack_r8.c
unpack_r10.c
unpack_r16.c
unpack_r17.c