From 7ffe6928bdebb779dba6395366d58c632826133d Mon Sep 17 00:00:00 2001 From: jtlap Date: Sun, 7 Apr 2024 16:07:34 +0200 Subject: [PATCH] Merge and migrate doc test for core module --- include/eve/module/core/regular/abs.hpp | 11 ++--- include/eve/module/core/regular/absmax.hpp | 16 +++---- include/eve/module/core/regular/absmin.hpp | 13 +++--- include/eve/module/core/regular/add.hpp | 15 ++----- include/eve/module/core/regular/agm.hpp | 5 +-- include/eve/module/core/regular/all.hpp | 6 +-- include/eve/module/core/regular/any.hpp | 6 +-- include/eve/module/core/regular/average.hpp | 13 +++--- include/eve/module/core/regular/binarize.hpp | 2 +- .../eve/module/core/regular/binarize_not.hpp | 2 +- include/eve/module/core/regular/bit_and.hpp | 11 ++--- .../eve/module/core/regular/bit_andnot.hpp | 17 ++++--- include/eve/module/core/regular/bit_cast.hpp | 2 +- include/eve/module/core/regular/bit_ceil.hpp | 5 +-- include/eve/module/core/regular/bit_flip.hpp | 8 +--- include/eve/module/core/regular/bit_floor.hpp | 7 +-- include/eve/module/core/regular/bit_mask.hpp | 5 +-- include/eve/module/core/regular/bit_not.hpp | 6 +-- .../eve/module/core/regular/bit_notand.hpp | 17 ++++--- include/eve/module/core/regular/bit_notor.hpp | 17 ++++--- include/eve/module/core/regular/bit_or.hpp | 8 +--- include/eve/module/core/regular/bit_ornot.hpp | 18 ++++---- .../eve/module/core/regular/bit_reverse.hpp | 6 +-- .../eve/module/core/regular/bit_select.hpp | 2 +- include/eve/module/core/regular/bit_set.hpp | 6 +-- include/eve/module/core/regular/bit_shl.hpp | 5 +-- include/eve/module/core/regular/bit_shr.hpp | 5 +-- .../module/core/regular/bit_swap_adjacent.hpp | 6 +-- .../module/core/regular/bit_swap_pairs.hpp | 6 +-- include/eve/module/core/regular/bit_unset.hpp | 6 +-- include/eve/module/core/regular/bit_width.hpp | 2 +- include/eve/module/core/regular/bit_xor.hpp | 11 ++--- include/eve/module/core/regular/bitofsign.hpp | 10 ++--- include/eve/module/core/regular/broadcast.hpp | 2 +- .../eve/module/core/regular/byte_reverse.hpp | 6 +-- .../core/regular/byte_swap_adjacent.hpp | 6 +-- .../module/core/regular/byte_swap_pairs.hpp | 6 +-- include/eve/module/core/regular/ceil.hpp | 13 ++---- include/eve/module/core/regular/clamp.hpp | 6 +-- include/eve/module/core/regular/combine.hpp | 2 +- include/eve/module/core/regular/conj.hpp | 6 +-- include/eve/module/core/regular/convert.hpp | 7 +-- include/eve/module/core/regular/converter.hpp | 28 ++++++------ include/eve/module/core/regular/copysign.hpp | 6 +-- .../eve/module/core/regular/count_true.hpp | 5 +-- .../eve/module/core/regular/countl_one.hpp | 3 +- .../eve/module/core/regular/countl_zero.hpp | 2 +- .../eve/module/core/regular/countr_one.hpp | 2 +- .../eve/module/core/regular/countr_zero.hpp | 2 +- include/eve/module/core/regular/dec.hpp | 9 +--- .../eve/module/core/regular/diff_of_prod.hpp | 6 +-- include/eve/module/core/regular/dist.hpp | 5 +-- include/eve/module/core/regular/div.hpp | 13 +----- include/eve/module/core/regular/dot.hpp | 2 +- include/eve/module/core/regular/exponent.hpp | 2 +- include/eve/module/core/regular/fam.hpp | 7 +-- include/eve/module/core/regular/fanm.hpp | 7 +-- include/eve/module/core/regular/fdim.hpp | 6 +-- .../eve/module/core/regular/first_true.hpp | 2 +- .../eve/module/core/regular/firstbitset.hpp | 6 +-- .../eve/module/core/regular/firstbitunset.hpp | 6 +-- include/eve/module/core/regular/floor.hpp | 7 +-- include/eve/module/core/regular/fma.hpp | 25 +++++------ include/eve/module/core/regular/fms.hpp | 7 +-- include/eve/module/core/regular/fnma.hpp | 7 +-- include/eve/module/core/regular/fnms.hpp | 6 +-- include/eve/module/core/regular/frac.hpp | 5 +-- include/eve/module/core/regular/fracscale.hpp | 7 +-- include/eve/module/core/regular/frexp.hpp | 5 +-- include/eve/module/core/regular/fsm.hpp | 7 +-- include/eve/module/core/regular/fsnm.hpp | 7 +-- .../eve/module/core/regular/has_equal_in.hpp | 2 +- include/eve/module/core/regular/hi.hpp | 2 +- include/eve/module/core/regular/if_else.hpp | 2 +- .../eve/module/core/regular/ifnot_else.hpp | 2 +- include/eve/module/core/regular/ifrexp.hpp | 5 +-- include/eve/module/core/regular/inc.hpp | 9 +--- .../eve/module/core/regular/is_denormal.hpp | 6 +-- include/eve/module/core/regular/is_equal.hpp | 13 +----- include/eve/module/core/regular/is_eqz.hpp | 8 +--- include/eve/module/core/regular/is_even.hpp | 6 +-- include/eve/module/core/regular/is_finite.hpp | 6 +-- include/eve/module/core/regular/is_flint.hpp | 6 +-- include/eve/module/core/regular/is_gez.hpp | 6 +-- .../eve/module/core/regular/is_greater.hpp | 9 +--- .../module/core/regular/is_greater_equal.hpp | 9 +--- include/eve/module/core/regular/is_gtz.hpp | 4 -- include/eve/module/core/regular/is_imag.hpp | 6 +-- .../eve/module/core/regular/is_infinite.hpp | 6 +-- include/eve/module/core/regular/is_less.hpp | 9 +--- .../eve/module/core/regular/is_less_equal.hpp | 9 +--- .../module/core/regular/is_lessgreater.hpp | 6 +-- include/eve/module/core/regular/is_lez.hpp | 4 -- include/eve/module/core/regular/is_ltz.hpp | 6 +-- include/eve/module/core/regular/is_nan.hpp | 6 +-- .../eve/module/core/regular/is_negative.hpp | 6 +-- include/eve/module/core/regular/is_nez.hpp | 7 +-- include/eve/module/core/regular/is_ngez.hpp | 5 +-- include/eve/module/core/regular/is_ngtz.hpp | 5 +-- include/eve/module/core/regular/is_nlez.hpp | 5 +-- include/eve/module/core/regular/is_nltz.hpp | 5 +-- include/eve/module/core/regular/is_normal.hpp | 5 +-- .../module/core/regular/is_not_denormal.hpp | 5 +-- .../eve/module/core/regular/is_not_equal.hpp | 13 +----- .../eve/module/core/regular/is_not_finite.hpp | 6 +-- .../eve/module/core/regular/is_not_flint.hpp | 6 +-- .../module/core/regular/is_not_greater.hpp | 9 +--- .../core/regular/is_not_greater_equal.hpp | 9 +--- .../eve/module/core/regular/is_not_imag.hpp | 5 +-- .../module/core/regular/is_not_infinite.hpp | 6 +-- .../eve/module/core/regular/is_not_less.hpp | 9 +--- .../module/core/regular/is_not_less_equal.hpp | 9 +--- .../eve/module/core/regular/is_not_nan.hpp | 6 +-- .../eve/module/core/regular/is_not_real.hpp | 6 +-- include/eve/module/core/regular/is_odd.hpp | 6 +-- .../eve/module/core/regular/is_ordered.hpp | 6 +-- .../eve/module/core/regular/is_positive.hpp | 6 +-- include/eve/module/core/regular/is_pow2.hpp | 12 ++--- include/eve/module/core/regular/is_real.hpp | 6 +-- include/eve/module/core/regular/is_unit.hpp | 6 +-- .../eve/module/core/regular/is_unordered.hpp | 6 +-- include/eve/module/core/regular/ldexp.hpp | 5 +-- include/eve/module/core/regular/lerp.hpp | 5 +-- include/eve/module/core/regular/lo.hpp | 2 +- .../eve/module/core/regular/logical_and.hpp | 2 +- .../module/core/regular/logical_andnot.hpp | 2 +- .../eve/module/core/regular/logical_not.hpp | 2 +- .../module/core/regular/logical_notand.hpp | 2 +- .../eve/module/core/regular/logical_notor.hpp | 2 +- .../eve/module/core/regular/logical_or.hpp | 2 +- .../eve/module/core/regular/logical_ornot.hpp | 2 +- .../eve/module/core/regular/logical_xor.hpp | 2 +- include/eve/module/core/regular/lohi.hpp | 2 +- include/eve/module/core/regular/manhattan.hpp | 9 +--- include/eve/module/core/regular/mantissa.hpp | 2 +- include/eve/module/core/regular/max.hpp | 9 +--- include/eve/module/core/regular/maxabs.hpp | 9 +--- include/eve/module/core/regular/maximum.hpp | 6 +-- include/eve/module/core/regular/maxmag.hpp | 9 +--- include/eve/module/core/regular/min.hpp | 9 +--- include/eve/module/core/regular/minabs.hpp | 9 +--- include/eve/module/core/regular/minimum.hpp | 6 +-- include/eve/module/core/regular/minmag.hpp | 9 +--- include/eve/module/core/regular/minmax.hpp | 2 +- include/eve/module/core/regular/minus.hpp | 10 +---- include/eve/module/core/regular/modf.hpp | 2 +- include/eve/module/core/regular/mul.hpp | 10 +---- include/eve/module/core/regular/nb_values.hpp | 2 +- include/eve/module/core/regular/nearest.hpp | 6 +-- include/eve/module/core/regular/negabsmax.hpp | 6 +-- include/eve/module/core/regular/negabsmin.hpp | 6 +-- include/eve/module/core/regular/negate.hpp | 5 +-- include/eve/module/core/regular/negatenz.hpp | 4 +- include/eve/module/core/regular/negmaxabs.hpp | 6 +-- include/eve/module/core/regular/negminabs.hpp | 6 +-- include/eve/module/core/regular/next.hpp | 14 +----- include/eve/module/core/regular/nextafter.hpp | 6 +-- include/eve/module/core/regular/none.hpp | 6 +-- include/eve/module/core/regular/oneminus.hpp | 9 +--- include/eve/module/core/regular/plus.hpp | 2 +- include/eve/module/core/regular/popcount.hpp | 2 +- include/eve/module/core/regular/prev.hpp | 6 +-- include/eve/module/core/regular/rat.hpp | 2 +- include/eve/module/core/regular/rec.hpp | 6 +-- include/eve/module/core/regular/reduce.hpp | 2 +- include/eve/module/core/regular/reldist.hpp | 6 +-- include/eve/module/core/regular/rem.hpp | 9 +--- include/eve/module/core/regular/rotate.hpp | 2 +- include/eve/module/core/regular/round.hpp | 7 +-- .../eve/module/core/regular/roundscale.hpp | 7 +-- include/eve/module/core/regular/rshl.hpp | 5 +-- include/eve/module/core/regular/rshr.hpp | 5 +-- include/eve/module/core/regular/rsqrt.hpp | 6 +-- include/eve/module/core/regular/saturate.hpp | 2 +- include/eve/module/core/regular/scatter.hpp | 2 +- include/eve/module/core/regular/shl.hpp | 5 +-- include/eve/module/core/regular/shr.hpp | 5 +-- include/eve/module/core/regular/sign.hpp | 6 +-- .../module/core/regular/sign_alternate.hpp | 6 +-- include/eve/module/core/regular/signnz.hpp | 6 +-- include/eve/module/core/regular/sort.hpp | 2 +- include/eve/module/core/regular/sqr.hpp | 10 +---- include/eve/module/core/regular/sqr_abs.hpp | 2 +- include/eve/module/core/regular/sqrt.hpp | 8 +--- include/eve/module/core/regular/sub.hpp | 9 +--- .../eve/module/core/regular/sum_of_prod.hpp | 6 +-- include/eve/module/core/regular/swap_if.hpp | 2 +- .../eve/module/core/regular/swap_pairs.hpp | 2 +- include/eve/module/core/regular/trunc.hpp | 9 +--- .../core/regular/try_each_group_position.hpp | 2 +- include/eve/module/core/regular/two_add.hpp | 2 +- include/eve/module/core/regular/two_prod.hpp | 2 +- include/eve/module/core/regular/ulpdist.hpp | 2 +- .../eve/module/math/regular/significants.hpp | 2 +- test/doc/CMakeLists.txt | 26 +---------- test/doc/core/{regular => }/abs.cpp | 11 +++-- test/doc/core/{regular => }/absmax.cpp | 0 test/doc/core/{regular => }/absmin.cpp | 0 test/doc/core/{regular => }/add.cpp | 7 +-- test/doc/core/{regular => }/agm.cpp | 7 +-- test/doc/core/{regular => }/all.cpp | 9 ++-- test/doc/core/{regular => }/any.cpp | 9 ++-- test/doc/core/average.cpp | 35 +++++++++++++++ test/doc/core/{regular => }/binarize.cpp | 0 test/doc/core/{regular => }/binarize_not.cpp | 0 test/doc/core/bit_and.cpp | 31 +++++++++++++ test/doc/core/bit_andnot.cpp | 27 +++++++++++ test/doc/core/{regular => }/bit_cast.cpp | 0 test/doc/core/{regular => }/bit_ceil.cpp | 5 ++- test/doc/core/{masked => }/bit_flip.cpp | 7 ++- test/doc/core/{regular => }/bit_floor.cpp | 5 ++- test/doc/core/{regular => }/bit_mask.cpp | 10 +++-- test/doc/core/{regular => }/bit_not.cpp | 5 ++- test/doc/core/{regular => }/bit_notand.cpp | 12 ++--- test/doc/core/{regular => }/bit_notor.cpp | 13 +++--- test/doc/core/{regular => }/bit_reverse.cpp | 0 test/doc/core/{regular => }/bit_select.cpp | 0 test/doc/core/{masked => }/bit_set.cpp | 13 +++++- test/doc/core/bit_shl.cpp | 26 +++++++++++ test/doc/core/{regular => }/bit_shr.cpp | 13 +++--- .../core/{regular => }/bit_swap_adjacent.cpp | 0 test/doc/core/{masked => }/bit_swap_pairs.cpp | 3 ++ test/doc/core/{masked => }/bit_unset.cpp | 12 +++++ test/doc/core/{regular => }/bit_width.cpp | 0 test/doc/core/{regular => }/bit_xor.cpp | 13 +++--- test/doc/core/{regular => }/bitincrement.cpp | 0 test/doc/core/{regular => }/broadcast.cpp | 0 .../bit_reverse.cpp => byte_reverse.cpp} | 15 ++++--- .../core/{regular => }/byte_swap_adjacent.cpp | 0 .../doc/core/{masked => }/byte_swap_pairs.cpp | 0 test/doc/core/ceil.cpp | 23 ++++++++++ test/doc/core/{regular => }/clamp.cpp | 3 +- test/doc/core/{regular => }/combine.cpp | 0 test/doc/core/{regular => }/conj.cpp | 0 test/doc/core/{regular => }/copysign.cpp | 7 +-- test/doc/core/{masked => }/count_true.cpp | 7 +++ test/doc/core/{regular => }/countl_one.cpp | 0 test/doc/core/{regular => }/countl_zero.cpp | 0 test/doc/core/{regular => }/countr_one.cpp | 0 test/doc/core/{regular => }/countr_zero.cpp | 0 test/doc/core/{regular => }/dec.cpp | 8 +++- test/doc/core/diff_of_prod.cpp | 23 ++++++++++ test/doc/core/{regular => }/dist.cpp | 3 +- test/doc/core/div.cpp | 45 +++++++++++++++++++ test/doc/core/{regular => }/dot.cpp | 0 test/doc/core/{regular => }/exponent.cpp | 0 test/doc/core/{regular => }/fam.cpp | 16 ++++--- test/doc/core/fanm.cpp | 42 +++++++++++++++++ test/doc/core/{regular => }/fdim.cpp | 4 +- test/doc/core/first_true.cpp | 21 +++++++++ test/doc/core/{regular => }/firstbitset.cpp | 5 ++- test/doc/core/{regular => }/firstbitunset.cpp | 5 ++- test/doc/core/{regular => }/float32.cpp | 0 test/doc/core/{regular => }/float64.cpp | 0 test/doc/core/{regular => }/floating_.cpp | 0 test/doc/core/{fuzzy => }/floor.cpp | 9 +++- test/doc/core/{regular => }/fma.cpp | 11 ++--- test/doc/core/{regular => }/fmod.cpp | 4 +- test/doc/core/fms.cpp | 42 +++++++++++++++++ test/doc/core/fnma.cpp | 42 +++++++++++++++++ test/doc/core/{regular => }/fnms.cpp | 22 ++++----- test/doc/core/{regular => }/frac.cpp | 5 ++- test/doc/core/{roundings => }/fracscale.cpp | 12 ++++- test/doc/core/{masked => }/frexp.cpp | 0 test/doc/core/{regular => }/fsm.cpp | 18 ++++---- test/doc/core/{regular => }/fsnm.cpp | 18 ++++---- test/doc/core/fuzzy/ceil.cpp | 20 --------- test/doc/core/fuzzy/is_greater.cpp | 17 ------- test/doc/core/fuzzy/is_greater_equal.cpp | 17 ------- test/doc/core/fuzzy/is_less.cpp | 17 ------- test/doc/core/fuzzy/is_less_equal.cpp | 17 ------- test/doc/core/fuzzy/is_not_greater.cpp | 17 ------- test/doc/core/fuzzy/is_not_greater_equal.cpp | 17 ------- test/doc/core/fuzzy/is_not_less.cpp | 17 ------- test/doc/core/{regular => }/has_equal_in.cpp | 0 test/doc/core/{regular => }/hi.cpp | 0 test/doc/core/{regular => }/if_else.cpp | 17 ++++--- test/doc/core/{regular => }/ifnot_else.cpp | 18 +++++--- test/doc/core/{masked => }/ifrexp.cpp | 0 test/doc/core/inc.cpp | 23 ++++++++++ test/doc/core/{regular => }/int16.cpp | 0 test/doc/core/{regular => }/int32.cpp | 0 test/doc/core/{regular => }/int64.cpp | 0 test/doc/core/{regular => }/int8.cpp | 0 test/doc/core/{regular => }/int_.cpp | 0 test/doc/core/{regular => }/is_denormal.cpp | 2 +- test/doc/core/{fuzzy => }/is_equal.cpp | 8 ++-- test/doc/core/{regular => }/is_eqz.cpp | 0 test/doc/core/{regular => }/is_even.cpp | 0 test/doc/core/{regular => }/is_finite.cpp | 6 +-- test/doc/core/{regular => }/is_flint.cpp | 5 ++- test/doc/core/{regular => }/is_gez.cpp | 5 ++- test/doc/core/is_greater.cpp | 27 +++++++++++ test/doc/core/{regular => }/is_gtz.cpp | 5 ++- test/doc/core/{regular => }/is_imag.cpp | 5 ++- test/doc/core/{regular => }/is_infinite.cpp | 5 ++- test/doc/core/{regular => }/is_less.cpp | 4 +- test/doc/core/{regular => }/is_less_equal.cpp | 8 ++-- .../doc/core/{regular => }/is_lessgreater.cpp | 7 +-- test/doc/core/{regular => }/is_lez.cpp | 5 ++- test/doc/core/{regular => }/is_ltz.cpp | 6 ++- test/doc/core/{regular => }/is_nan.cpp | 10 +++-- test/doc/core/{regular => }/is_negative.cpp | 5 ++- test/doc/core/{regular => }/is_nez.cpp | 5 ++- test/doc/core/{regular => }/is_ngez.cpp | 5 ++- test/doc/core/{regular => }/is_ngtz.cpp | 5 ++- test/doc/core/{regular => }/is_nlez.cpp | 5 ++- test/doc/core/{regular => }/is_nltz.cpp | 5 ++- test/doc/core/{regular => }/is_normal.cpp | 5 ++- .../core/{regular => }/is_not_denormal.cpp | 5 ++- test/doc/core/{fuzzy => }/is_not_equal.cpp | 16 ++++++- test/doc/core/{regular => }/is_not_finite.cpp | 6 +-- test/doc/core/{regular => }/is_not_flint.cpp | 3 +- .../doc/core/{regular => }/is_not_greater.cpp | 8 ++-- .../{regular => }/is_not_greater_equal.cpp | 8 ++-- test/doc/core/{regular => }/is_not_imag.cpp | 5 ++- .../core/{regular => }/is_not_infinite.cpp | 5 ++- test/doc/core/{regular => }/is_not_less.cpp | 8 ++-- .../core/{regular => }/is_not_less_equal.cpp | 3 +- test/doc/core/{regular => }/is_not_nan.cpp | 5 ++- test/doc/core/{regular => }/is_not_real.cpp | 5 ++- test/doc/core/{regular => }/is_odd.cpp | 5 ++- test/doc/core/{regular => }/is_ordered.cpp | 7 +-- test/doc/core/{regular => }/is_positive.cpp | 5 ++- test/doc/core/{regular => }/is_pow2.cpp | 5 ++- test/doc/core/{regular => }/is_real.cpp | 5 ++- test/doc/core/{regular => }/is_unit.cpp | 3 +- test/doc/core/{regular => }/is_unordered.cpp | 7 +-- test/doc/core/{regular => }/ldexp.cpp | 7 +-- test/doc/core/{masked => }/lerp.cpp | 11 ++++- test/doc/core/{regular => }/lo.cpp | 0 test/doc/core/{regular => }/logical_and.cpp | 0 .../doc/core/{regular => }/logical_andnot.cpp | 0 test/doc/core/{regular => }/logical_not.cpp | 0 .../doc/core/{regular => }/logical_notand.cpp | 0 test/doc/core/{regular => }/logical_notor.cpp | 0 test/doc/core/{regular => }/logical_or.cpp | 0 test/doc/core/{regular => }/logical_ornot.cpp | 0 test/doc/core/{regular => }/logical_xor.cpp | 0 test/doc/core/{regular => }/lohi.cpp | 0 test/doc/core/{regular => }/lookup.cpp | 0 test/doc/core/{regular => }/manhattan.cpp | 12 ++--- test/doc/core/{regular => }/mantissa.cpp | 0 test/doc/core/masked/abs.cpp | 17 ------- test/doc/core/masked/absmax.cpp | 19 -------- test/doc/core/masked/absmin.cpp | 19 -------- test/doc/core/masked/add.cpp | 15 ------- test/doc/core/masked/agm.cpp | 19 -------- test/doc/core/masked/all.cpp | 15 ------- test/doc/core/masked/any.cpp | 15 ------- test/doc/core/masked/average.cpp | 17 ------- test/doc/core/masked/bit-reverse.cpp | 21 --------- test/doc/core/masked/bit_and.cpp | 14 ------ test/doc/core/masked/bit_andnot.cpp | 14 ------ test/doc/core/masked/bit_ceil.cpp | 16 ------- test/doc/core/masked/bit_floor.cpp | 16 ------- test/doc/core/masked/bit_mask.cpp | 20 --------- test/doc/core/masked/bit_not.cpp | 15 ------- test/doc/core/masked/bit_notand.cpp | 14 ------ test/doc/core/masked/bit_notor.cpp | 14 ------ test/doc/core/masked/bit_or.cpp | 14 ------ test/doc/core/masked/bit_ornot.cpp | 14 ------ test/doc/core/masked/bit_shl.cpp | 14 ------ test/doc/core/masked/bit_shr.cpp | 14 ------ test/doc/core/masked/bit_swap_adjacent.cpp | 28 ------------ test/doc/core/masked/bit_xor.cpp | 14 ------ test/doc/core/masked/bitofsign.cpp | 15 ------- test/doc/core/masked/byte_reverse.cpp | 15 ------- test/doc/core/masked/byte_swap_adjacent.cpp | 28 ------------ test/doc/core/masked/ceil.cpp | 15 ------- test/doc/core/masked/clamp.cpp | 19 -------- test/doc/core/masked/conj.cpp | 15 ------- test/doc/core/masked/copysign.cpp | 19 -------- test/doc/core/masked/dec.cpp | 15 ------- test/doc/core/masked/div.cpp | 15 ------- test/doc/core/masked/fam.cpp | 24 ---------- test/doc/core/masked/fanm.cpp | 24 ---------- test/doc/core/masked/fdim.cpp | 17 ------- test/doc/core/masked/firstbitset.cpp | 15 ------- test/doc/core/masked/firstbitunset.cpp | 15 ------- test/doc/core/masked/floor.cpp | 15 ------- test/doc/core/masked/fma.cpp | 24 ---------- test/doc/core/masked/fmod.cpp | 17 ------- test/doc/core/masked/fms.cpp | 24 ---------- test/doc/core/masked/fnma.cpp | 24 ---------- test/doc/core/masked/fnms.cpp | 24 ---------- test/doc/core/masked/frac.cpp | 17 ------- test/doc/core/masked/fracscale.cpp | 16 ------- test/doc/core/masked/fsm.cpp | 24 ---------- test/doc/core/masked/fsnm.cpp | 24 ---------- test/doc/core/masked/inc.cpp | 19 -------- test/doc/core/masked/is_denormal.cpp | 17 ------- test/doc/core/masked/is_equal.cpp | 17 ------- test/doc/core/masked/is_eqz.cpp | 21 --------- test/doc/core/masked/is_even.cpp | 15 ------- test/doc/core/masked/is_finite.cpp | 16 ------- test/doc/core/masked/is_flint.cpp | 16 ------- test/doc/core/masked/is_gez.cpp | 15 ------- test/doc/core/masked/is_greater.cpp | 17 ------- test/doc/core/masked/is_greater_equal.cpp | 17 ------- test/doc/core/masked/is_gtz.cpp | 15 ------- test/doc/core/masked/is_imag.cpp | 15 ------- test/doc/core/masked/is_infinite.cpp | 16 ------- test/doc/core/masked/is_less.cpp | 17 ------- test/doc/core/masked/is_less_equal.cpp | 17 ------- test/doc/core/masked/is_lessgreater.cpp | 17 ------- test/doc/core/masked/is_lez.cpp | 15 ------- test/doc/core/masked/is_ltz.cpp | 15 ------- test/doc/core/masked/is_nan.cpp | 16 ------- test/doc/core/masked/is_negative.cpp | 16 ------- test/doc/core/masked/is_nez.cpp | 15 ------- test/doc/core/masked/is_ngez.cpp | 15 ------- test/doc/core/masked/is_ngtz.cpp | 15 ------- test/doc/core/masked/is_nlez.cpp | 15 ------- test/doc/core/masked/is_nltz.cpp | 15 ------- test/doc/core/masked/is_normal.cpp | 17 ------- test/doc/core/masked/is_not_denormal.cpp | 17 ------- test/doc/core/masked/is_not_equal.cpp | 18 -------- test/doc/core/masked/is_not_finite.cpp | 16 ------- test/doc/core/masked/is_not_flint.cpp | 16 ------- test/doc/core/masked/is_not_greater.cpp | 17 ------- test/doc/core/masked/is_not_greater_equal.cpp | 17 ------- test/doc/core/masked/is_not_imag.cpp | 15 ------- test/doc/core/masked/is_not_infinite.cpp | 16 ------- test/doc/core/masked/is_not_less.cpp | 17 ------- test/doc/core/masked/is_not_less_equal.cpp | 17 ------- test/doc/core/masked/is_not_nan.cpp | 16 ------- test/doc/core/masked/is_not_real.cpp | 16 ------- test/doc/core/masked/is_odd.cpp | 15 ------- test/doc/core/masked/is_ordered.cpp | 19 -------- test/doc/core/masked/is_positive.cpp | 16 ------- test/doc/core/masked/is_pow2.cpp | 16 ------- test/doc/core/masked/is_real.cpp | 16 ------- test/doc/core/masked/is_unit.cpp | 15 ------- test/doc/core/masked/is_unordered.cpp | 19 -------- test/doc/core/masked/ldexp.cpp | 19 -------- test/doc/core/masked/manhattan.cpp | 17 ------- test/doc/core/masked/mantissa.cpp | 16 ------- test/doc/core/masked/mask.cpp | 20 --------- test/doc/core/masked/max.cpp | 21 --------- test/doc/core/masked/maxabs.cpp | 21 --------- test/doc/core/masked/maxmag.cpp | 21 --------- test/doc/core/masked/min.cpp | 21 --------- test/doc/core/masked/minabs.cpp | 21 --------- test/doc/core/masked/minmag.cpp | 21 --------- test/doc/core/masked/minmax.cpp | 20 --------- test/doc/core/masked/minus.cpp | 16 ------- test/doc/core/masked/mul.cpp | 15 ------- test/doc/core/masked/nearest.cpp | 15 ------- test/doc/core/masked/negabsmax.cpp | 19 -------- test/doc/core/masked/negabsmin.cpp | 19 -------- test/doc/core/masked/negate.cpp | 17 ------- test/doc/core/masked/negatenz.cpp | 17 ------- test/doc/core/masked/negmaxabs.cpp | 19 -------- test/doc/core/masked/negminabs.cpp | 19 -------- test/doc/core/masked/next.cpp | 16 ------- test/doc/core/masked/nextafter.cpp | 17 ------- test/doc/core/masked/none.cpp | 16 ------- test/doc/core/masked/oneminus.cpp | 19 -------- test/doc/core/masked/prev.cpp | 16 ------- test/doc/core/masked/rec.cpp | 16 ------- test/doc/core/masked/rem.cpp | 15 ------- test/doc/core/masked/round.cpp | 19 -------- test/doc/core/masked/roundscale.cpp | 16 ------- test/doc/core/masked/rshl.cpp | 20 --------- test/doc/core/masked/rshr.cpp | 20 --------- test/doc/core/masked/rsqrt.cpp | 15 ------- test/doc/core/masked/saturate.cpp | 19 -------- test/doc/core/masked/shl.cpp | 20 --------- test/doc/core/masked/shr.cpp | 20 --------- test/doc/core/masked/sign.cpp | 16 ------- test/doc/core/masked/sign_alternate.cpp | 16 ------- test/doc/core/masked/signnz.cpp | 16 ------- test/doc/core/masked/sqr.cpp | 16 ------- test/doc/core/masked/sqr_abs.cpp | 16 ------- test/doc/core/masked/sqrt.cpp | 15 ------- test/doc/core/masked/sub.cpp | 13 ------ test/doc/core/masked/trunc.cpp | 15 ------- test/doc/core/{regular => }/max.cpp | 25 ++++++----- test/doc/core/{regular => }/maxabs.cpp | 5 ++- test/doc/core/{masked => }/maximum.cpp | 8 +++- test/doc/core/{regular => }/maxmag.cpp | 5 ++- test/doc/core/min.cpp | 43 ++++++++++++++++++ test/doc/core/{regular => }/minabs.cpp | 5 ++- test/doc/core/{masked => }/minimum.cpp | 7 ++- test/doc/core/{regular => }/minmag.cpp | 5 ++- test/doc/core/minmax.cpp | 41 +++++++++++++++++ test/doc/core/{regular => }/minus.cpp | 5 ++- test/doc/core/{regular => }/modf.cpp | 0 test/doc/core/{regular => }/mul.cpp | 5 ++- test/doc/core/{regular => }/nb_values.cpp | 0 test/doc/core/{regular => }/nearest.cpp | 5 ++- test/doc/core/{regular => }/negabsmax.cpp | 11 ++--- test/doc/core/{regular => }/negabsmin.cpp | 13 +++--- test/doc/core/{regular => }/negate.cpp | 3 +- test/doc/core/{regular => }/negatenz.cpp | 3 +- test/doc/core/{regular => }/negmaxabs.cpp | 12 ++--- test/doc/core/{regular => }/negminabs.cpp | 11 ++--- test/doc/core/{regular => }/next.cpp | 16 ++++--- test/doc/core/{regular => }/nextafter.cpp | 10 +++-- test/doc/core/{regular => }/none.cpp | 9 ++-- test/doc/core/{regular => }/oneminus.cpp | 5 ++- test/doc/core/pedantic/diff_of_prod.cpp | 21 --------- test/doc/core/pedantic/fam.cpp | 29 ------------ test/doc/core/pedantic/is_equal.cpp | 18 -------- test/doc/core/pedantic/is_not_equal.cpp | 25 ----------- test/doc/core/pedantic/manhattan.cpp | 17 ------- test/doc/core/pedantic/max.cpp | 22 --------- test/doc/core/pedantic/maxabs.cpp | 20 --------- test/doc/core/pedantic/maxmag.cpp | 21 --------- test/doc/core/pedantic/min.cpp | 22 --------- test/doc/core/pedantic/minabs.cpp | 21 --------- test/doc/core/pedantic/minmag.cpp | 21 --------- test/doc/core/pedantic/next.cpp | 16 ------- test/doc/core/pedantic/prev.cpp | 16 ------- test/doc/core/pedantic/signnz.cpp | 17 ------- test/doc/core/pedantic/sum_of_prod.cpp | 21 --------- test/doc/core/{regular => }/plus.cpp | 0 test/doc/core/{regular => }/popcount.cpp | 0 test/doc/core/{regular => }/prev.cpp | 13 +++--- test/doc/core/{regular => }/rat.cpp | 0 test/doc/core/raw/average.cpp | 21 --------- test/doc/core/{regular => }/rec.cpp | 5 ++- test/doc/core/{masked => }/reduce.cpp | 0 test/doc/core/regular/average.cpp | 42 ----------------- test/doc/core/regular/bit_and.cpp | 30 ------------- test/doc/core/regular/bit_andnot.cpp | 27 ----------- test/doc/core/regular/bit_flip.cpp | 22 --------- test/doc/core/regular/bit_or.cpp | 26 ----------- test/doc/core/regular/bit_ornot.cpp | 26 ----------- test/doc/core/regular/bit_set.cpp | 28 ------------ test/doc/core/regular/bit_shl.cpp | 25 ----------- test/doc/core/regular/bit_swap_pairs.cpp | 19 -------- test/doc/core/regular/bit_unset.cpp | 29 ------------ test/doc/core/regular/bitofsign.cpp | 21 --------- test/doc/core/regular/byte_reverse.cpp | 20 --------- test/doc/core/regular/byte_swap_pairs.cpp | 33 -------------- test/doc/core/regular/ceil.cpp | 21 --------- test/doc/core/regular/convert.cpp | 31 ------------- test/doc/core/regular/count_true.cpp | 22 --------- test/doc/core/regular/deco.cpp | 17 ------- test/doc/core/regular/diff_of_prod.cpp | 21 --------- test/doc/core/regular/div.cpp | 34 -------------- test/doc/core/regular/fanm.cpp | 36 --------------- test/doc/core/regular/first_true.cpp | 28 ------------ test/doc/core/regular/floor.cpp | 21 --------- test/doc/core/regular/fms.cpp | 40 ----------------- test/doc/core/regular/fnma.cpp | 36 --------------- test/doc/core/regular/fracscale.cpp | 23 ---------- test/doc/core/regular/frexp.cpp | 27 ----------- test/doc/core/regular/if_add.cpp | 35 --------------- test/doc/core/regular/if_allbits_else.cpp | 35 --------------- test/doc/core/regular/if_else_allbits.cpp | 35 --------------- test/doc/core/regular/if_else_mone.cpp | 35 --------------- test/doc/core/regular/if_else_one.cpp | 35 --------------- test/doc/core/regular/if_else_zero.cpp | 35 --------------- test/doc/core/regular/if_mone_else.cpp | 35 --------------- test/doc/core/regular/if_mul.cpp | 35 --------------- test/doc/core/regular/if_one_else.cpp | 35 --------------- test/doc/core/regular/if_sub.cpp | 35 --------------- test/doc/core/regular/if_zero_else.cpp | 35 --------------- test/doc/core/regular/ifrexp.cpp | 27 ----------- test/doc/core/regular/inc.cpp | 22 --------- test/doc/core/regular/int16_.cpp | 19 -------- test/doc/core/regular/int8_.cpp | 19 -------- test/doc/core/regular/is_equal.cpp | 17 ------- test/doc/core/regular/is_greater.cpp | 25 ----------- test/doc/core/regular/is_greater_equal.cpp | 25 ----------- test/doc/core/regular/is_not_equal.cpp | 25 ----------- test/doc/core/regular/lerp.cpp | 24 ---------- test/doc/core/regular/maximum.cpp | 20 --------- test/doc/core/regular/min.cpp | 39 ---------------- test/doc/core/regular/minimum.cpp | 20 --------- test/doc/core/regular/minmax.cpp | 38 ---------------- test/doc/core/regular/reduce.cpp | 29 ------------ test/doc/core/regular/rem.cpp | 24 ---------- test/doc/core/regular/round.cpp | 29 ------------ test/doc/core/regular/roundscale.cpp | 23 ---------- test/doc/core/regular/sum_of_prod.cpp | 21 --------- test/doc/core/regular/trunc.cpp | 22 --------- test/doc/core/regular/zip.cpp | 32 ------------- test/doc/core/{regular => }/reldist.cpp | 0 test/doc/core/rem.cpp | 29 ++++++++++++ .../core/{regular => }/replace_ignored.cpp | 0 test/doc/core/{regular => }/rotate.cpp | 0 test/doc/core/round.cpp | 34 ++++++++++++++ test/doc/core/roundings/div.cpp | 18 -------- test/doc/core/roundings/rem.cpp | 20 --------- test/doc/core/roundings/round.cpp | 17 ------- test/doc/core/{roundings => }/roundscale.cpp | 12 ++++- test/doc/core/{regular => }/rshl.cpp | 7 +-- test/doc/core/{regular => }/rshr.cpp | 7 +-- test/doc/core/{regular => }/rsqrt.cpp | 3 +- test/doc/core/{regular => }/saturate.cpp | 15 ++++--- test/doc/core/saturated/abs.cpp | 15 ------- test/doc/core/saturated/add.cpp | 25 ----------- test/doc/core/saturated/convert.cpp | 17 ------- test/doc/core/saturated/dec.cpp | 15 ------- test/doc/core/saturated/dist.cpp | 18 -------- test/doc/core/saturated/div.cpp | 16 ------- test/doc/core/saturated/inc.cpp | 15 ------- test/doc/core/saturated/minus.cpp | 15 ------- test/doc/core/saturated/mul.cpp | 15 ------- test/doc/core/saturated/next.cpp | 16 ------- test/doc/core/saturated/oneminus.cpp | 15 ------- test/doc/core/saturated/prev.cpp | 16 ------- test/doc/core/saturated/sub.cpp | 16 ------- test/doc/core/{regular => }/scatter.cpp | 0 test/doc/core/{regular => }/shl.cpp | 7 +-- test/doc/core/{regular => }/shr.cpp | 7 +-- test/doc/core/{regular => }/sign.cpp | 10 ++--- .../doc/core/{regular => }/sign_alternate.cpp | 0 test/doc/core/{regular => }/significants.cpp | 0 test/doc/core/{regular => }/signnz.cpp | 11 ++--- test/doc/core/{regular => }/sort.cpp | 0 test/doc/core/{regular => }/sqr.cpp | 2 +- test/doc/core/{regular => }/sqr_abs.cpp | 6 +-- test/doc/core/{regular => }/sqrt.cpp | 3 +- test/doc/core/{regular => }/sub.cpp | 12 ++--- test/doc/core/sum_of_prod.cpp | 22 +++++++++ test/doc/core/{regular => }/swap_if.cpp | 0 test/doc/core/{regular => }/swap_pairs.cpp | 0 test/doc/core/{fuzzy => }/trunc.cpp | 12 +++-- .../{regular => }/try_each_group_position.cpp | 0 test/doc/core/{regular => }/two_add.cpp | 0 test/doc/core/{regular => }/two_prod.cpp | 0 test/doc/core/{regular => }/uint16.cpp | 0 test/doc/core/{regular => }/uint32.cpp | 0 test/doc/core/{regular => }/uint64.cpp | 0 test/doc/core/{regular => }/uint8.cpp | 0 test/doc/core/{regular => }/uint_.cpp | 0 test/doc/core/{regular => }/ulpdist.cpp | 0 test/doc/core/{regular => }/upgrade.cpp | 0 test/doc/core/{masked => }/zip.cpp | 0 634 files changed, 1440 insertions(+), 5962 deletions(-) rename test/doc/core/{regular => }/abs.cpp (60%) rename test/doc/core/{regular => }/absmax.cpp (100%) rename test/doc/core/{regular => }/absmin.cpp (100%) rename test/doc/core/{regular => }/add.cpp (84%) rename test/doc/core/{regular => }/agm.cpp (65%) rename test/doc/core/{regular => }/all.cpp (59%) rename test/doc/core/{regular => }/any.cpp (59%) create mode 100644 test/doc/core/average.cpp rename test/doc/core/{regular => }/binarize.cpp (100%) rename test/doc/core/{regular => }/binarize_not.cpp (100%) create mode 100644 test/doc/core/bit_and.cpp create mode 100644 test/doc/core/bit_andnot.cpp rename test/doc/core/{regular => }/bit_cast.cpp (100%) rename test/doc/core/{regular => }/bit_ceil.cpp (66%) rename test/doc/core/{masked => }/bit_flip.cpp (60%) rename test/doc/core/{regular => }/bit_floor.cpp (66%) rename test/doc/core/{regular => }/bit_mask.cpp (56%) rename test/doc/core/{regular => }/bit_not.cpp (64%) rename test/doc/core/{regular => }/bit_notand.cpp (55%) rename test/doc/core/{regular => }/bit_notor.cpp (51%) rename test/doc/core/{regular => }/bit_reverse.cpp (100%) rename test/doc/core/{regular => }/bit_select.cpp (100%) rename test/doc/core/{masked => }/bit_set.cpp (52%) create mode 100644 test/doc/core/bit_shl.cpp rename test/doc/core/{regular => }/bit_shr.cpp (50%) rename test/doc/core/{regular => }/bit_swap_adjacent.cpp (100%) rename test/doc/core/{masked => }/bit_swap_pairs.cpp (68%) rename test/doc/core/{masked => }/bit_unset.cpp (56%) rename test/doc/core/{regular => }/bit_width.cpp (100%) rename test/doc/core/{regular => }/bit_xor.cpp (50%) rename test/doc/core/{regular => }/bitincrement.cpp (100%) rename test/doc/core/{regular => }/broadcast.cpp (100%) rename test/doc/core/{masked/bit_reverse.cpp => byte_reverse.cpp} (57%) rename test/doc/core/{regular => }/byte_swap_adjacent.cpp (100%) rename test/doc/core/{masked => }/byte_swap_pairs.cpp (100%) create mode 100644 test/doc/core/ceil.cpp rename test/doc/core/{regular => }/clamp.cpp (88%) rename test/doc/core/{regular => }/combine.cpp (100%) rename test/doc/core/{regular => }/conj.cpp (100%) rename test/doc/core/{regular => }/copysign.cpp (71%) rename test/doc/core/{masked => }/count_true.cpp (71%) rename test/doc/core/{regular => }/countl_one.cpp (100%) rename test/doc/core/{regular => }/countl_zero.cpp (100%) rename test/doc/core/{regular => }/countr_one.cpp (100%) rename test/doc/core/{regular => }/countr_zero.cpp (100%) rename test/doc/core/{regular => }/dec.cpp (51%) create mode 100644 test/doc/core/diff_of_prod.cpp rename test/doc/core/{regular => }/dist.cpp (88%) create mode 100644 test/doc/core/div.cpp rename test/doc/core/{regular => }/dot.cpp (100%) rename test/doc/core/{regular => }/exponent.cpp (100%) rename test/doc/core/{regular => }/fam.cpp (69%) create mode 100644 test/doc/core/fanm.cpp rename test/doc/core/{regular => }/fdim.cpp (90%) create mode 100644 test/doc/core/first_true.cpp rename test/doc/core/{regular => }/firstbitset.cpp (65%) rename test/doc/core/{regular => }/firstbitunset.cpp (64%) rename test/doc/core/{regular => }/float32.cpp (100%) rename test/doc/core/{regular => }/float64.cpp (100%) rename test/doc/core/{regular => }/floating_.cpp (100%) rename test/doc/core/{fuzzy => }/floor.cpp (72%) rename test/doc/core/{regular => }/fma.cpp (78%) rename test/doc/core/{regular => }/fmod.cpp (90%) create mode 100644 test/doc/core/fms.cpp create mode 100644 test/doc/core/fnma.cpp rename test/doc/core/{regular => }/fnms.cpp (51%) rename test/doc/core/{regular => }/frac.cpp (72%) rename test/doc/core/{roundings => }/fracscale.cpp (63%) rename test/doc/core/{masked => }/frexp.cpp (100%) rename test/doc/core/{regular => }/fsm.cpp (67%) rename test/doc/core/{regular => }/fsnm.cpp (67%) delete mode 100644 test/doc/core/fuzzy/ceil.cpp delete mode 100644 test/doc/core/fuzzy/is_greater.cpp delete mode 100644 test/doc/core/fuzzy/is_greater_equal.cpp delete mode 100644 test/doc/core/fuzzy/is_less.cpp delete mode 100644 test/doc/core/fuzzy/is_less_equal.cpp delete mode 100644 test/doc/core/fuzzy/is_not_greater.cpp delete mode 100644 test/doc/core/fuzzy/is_not_greater_equal.cpp delete mode 100644 test/doc/core/fuzzy/is_not_less.cpp rename test/doc/core/{regular => }/has_equal_in.cpp (100%) rename test/doc/core/{regular => }/hi.cpp (100%) rename test/doc/core/{regular => }/if_else.cpp (52%) rename test/doc/core/{regular => }/ifnot_else.cpp (50%) rename test/doc/core/{masked => }/ifrexp.cpp (100%) create mode 100644 test/doc/core/inc.cpp rename test/doc/core/{regular => }/int16.cpp (100%) rename test/doc/core/{regular => }/int32.cpp (100%) rename test/doc/core/{regular => }/int64.cpp (100%) rename test/doc/core/{regular => }/int8.cpp (100%) rename test/doc/core/{regular => }/int_.cpp (100%) rename test/doc/core/{regular => }/is_denormal.cpp (99%) rename test/doc/core/{fuzzy => }/is_equal.cpp (67%) rename test/doc/core/{regular => }/is_eqz.cpp (100%) rename test/doc/core/{regular => }/is_even.cpp (100%) rename test/doc/core/{regular => }/is_finite.cpp (71%) rename test/doc/core/{regular => }/is_flint.cpp (87%) rename test/doc/core/{regular => }/is_gez.cpp (67%) create mode 100644 test/doc/core/is_greater.cpp rename test/doc/core/{regular => }/is_gtz.cpp (66%) rename test/doc/core/{regular => }/is_imag.cpp (61%) rename test/doc/core/{regular => }/is_infinite.cpp (69%) rename test/doc/core/{regular => }/is_less.cpp (78%) rename test/doc/core/{regular => }/is_less_equal.cpp (55%) rename test/doc/core/{regular => }/is_lessgreater.cpp (63%) rename test/doc/core/{regular => }/is_lez.cpp (67%) rename test/doc/core/{regular => }/is_ltz.cpp (67%) rename test/doc/core/{regular => }/is_nan.cpp (54%) rename test/doc/core/{regular => }/is_negative.cpp (70%) rename test/doc/core/{regular => }/is_nez.cpp (65%) rename test/doc/core/{regular => }/is_ngez.cpp (65%) rename test/doc/core/{regular => }/is_ngtz.cpp (65%) rename test/doc/core/{regular => }/is_nlez.cpp (65%) rename test/doc/core/{regular => }/is_nltz.cpp (65%) rename test/doc/core/{regular => }/is_normal.cpp (77%) rename test/doc/core/{regular => }/is_not_denormal.cpp (75%) rename test/doc/core/{fuzzy => }/is_not_equal.cpp (61%) rename test/doc/core/{regular => }/is_not_finite.cpp (76%) rename test/doc/core/{regular => }/is_not_flint.cpp (85%) rename test/doc/core/{regular => }/is_not_greater.cpp (56%) rename test/doc/core/{regular => }/is_not_greater_equal.cpp (53%) rename test/doc/core/{regular => }/is_not_imag.cpp (60%) rename test/doc/core/{regular => }/is_not_infinite.cpp (68%) rename test/doc/core/{regular => }/is_not_less.cpp (56%) rename test/doc/core/{regular => }/is_not_less_equal.cpp (84%) rename test/doc/core/{regular => }/is_not_nan.cpp (70%) rename test/doc/core/{regular => }/is_not_real.cpp (64%) rename test/doc/core/{regular => }/is_odd.cpp (66%) rename test/doc/core/{regular => }/is_ordered.cpp (70%) rename test/doc/core/{regular => }/is_positive.cpp (70%) rename test/doc/core/{regular => }/is_pow2.cpp (66%) rename test/doc/core/{regular => }/is_real.cpp (65%) rename test/doc/core/{regular => }/is_unit.cpp (66%) rename test/doc/core/{regular => }/is_unordered.cpp (69%) rename test/doc/core/{regular => }/ldexp.cpp (71%) rename test/doc/core/{masked => }/lerp.cpp (56%) rename test/doc/core/{regular => }/lo.cpp (100%) rename test/doc/core/{regular => }/logical_and.cpp (100%) rename test/doc/core/{regular => }/logical_andnot.cpp (100%) rename test/doc/core/{regular => }/logical_not.cpp (100%) rename test/doc/core/{regular => }/logical_notand.cpp (100%) rename test/doc/core/{regular => }/logical_notor.cpp (100%) rename test/doc/core/{regular => }/logical_or.cpp (100%) rename test/doc/core/{regular => }/logical_ornot.cpp (100%) rename test/doc/core/{regular => }/logical_xor.cpp (100%) rename test/doc/core/{regular => }/lohi.cpp (100%) rename test/doc/core/{regular => }/lookup.cpp (100%) rename test/doc/core/{regular => }/manhattan.cpp (67%) rename test/doc/core/{regular => }/mantissa.cpp (100%) delete mode 100644 test/doc/core/masked/abs.cpp delete mode 100644 test/doc/core/masked/absmax.cpp delete mode 100644 test/doc/core/masked/absmin.cpp delete mode 100644 test/doc/core/masked/add.cpp delete mode 100644 test/doc/core/masked/agm.cpp delete mode 100644 test/doc/core/masked/all.cpp delete mode 100644 test/doc/core/masked/any.cpp delete mode 100644 test/doc/core/masked/average.cpp delete mode 100644 test/doc/core/masked/bit-reverse.cpp delete mode 100644 test/doc/core/masked/bit_and.cpp delete mode 100644 test/doc/core/masked/bit_andnot.cpp delete mode 100644 test/doc/core/masked/bit_ceil.cpp delete mode 100644 test/doc/core/masked/bit_floor.cpp delete mode 100644 test/doc/core/masked/bit_mask.cpp delete mode 100644 test/doc/core/masked/bit_not.cpp delete mode 100644 test/doc/core/masked/bit_notand.cpp delete mode 100644 test/doc/core/masked/bit_notor.cpp delete mode 100644 test/doc/core/masked/bit_or.cpp delete mode 100644 test/doc/core/masked/bit_ornot.cpp delete mode 100644 test/doc/core/masked/bit_shl.cpp delete mode 100644 test/doc/core/masked/bit_shr.cpp delete mode 100644 test/doc/core/masked/bit_swap_adjacent.cpp delete mode 100644 test/doc/core/masked/bit_xor.cpp delete mode 100644 test/doc/core/masked/bitofsign.cpp delete mode 100644 test/doc/core/masked/byte_reverse.cpp delete mode 100644 test/doc/core/masked/byte_swap_adjacent.cpp delete mode 100644 test/doc/core/masked/ceil.cpp delete mode 100644 test/doc/core/masked/clamp.cpp delete mode 100644 test/doc/core/masked/conj.cpp delete mode 100644 test/doc/core/masked/copysign.cpp delete mode 100644 test/doc/core/masked/dec.cpp delete mode 100644 test/doc/core/masked/div.cpp delete mode 100644 test/doc/core/masked/fam.cpp delete mode 100644 test/doc/core/masked/fanm.cpp delete mode 100644 test/doc/core/masked/fdim.cpp delete mode 100644 test/doc/core/masked/firstbitset.cpp delete mode 100644 test/doc/core/masked/firstbitunset.cpp delete mode 100644 test/doc/core/masked/floor.cpp delete mode 100644 test/doc/core/masked/fma.cpp delete mode 100644 test/doc/core/masked/fmod.cpp delete mode 100644 test/doc/core/masked/fms.cpp delete mode 100644 test/doc/core/masked/fnma.cpp delete mode 100644 test/doc/core/masked/fnms.cpp delete mode 100644 test/doc/core/masked/frac.cpp delete mode 100644 test/doc/core/masked/fracscale.cpp delete mode 100644 test/doc/core/masked/fsm.cpp delete mode 100644 test/doc/core/masked/fsnm.cpp delete mode 100644 test/doc/core/masked/inc.cpp delete mode 100644 test/doc/core/masked/is_denormal.cpp delete mode 100644 test/doc/core/masked/is_equal.cpp delete mode 100644 test/doc/core/masked/is_eqz.cpp delete mode 100644 test/doc/core/masked/is_even.cpp delete mode 100644 test/doc/core/masked/is_finite.cpp delete mode 100644 test/doc/core/masked/is_flint.cpp delete mode 100644 test/doc/core/masked/is_gez.cpp delete mode 100644 test/doc/core/masked/is_greater.cpp delete mode 100644 test/doc/core/masked/is_greater_equal.cpp delete mode 100644 test/doc/core/masked/is_gtz.cpp delete mode 100644 test/doc/core/masked/is_imag.cpp delete mode 100644 test/doc/core/masked/is_infinite.cpp delete mode 100644 test/doc/core/masked/is_less.cpp delete mode 100644 test/doc/core/masked/is_less_equal.cpp delete mode 100644 test/doc/core/masked/is_lessgreater.cpp delete mode 100644 test/doc/core/masked/is_lez.cpp delete mode 100644 test/doc/core/masked/is_ltz.cpp delete mode 100644 test/doc/core/masked/is_nan.cpp delete mode 100644 test/doc/core/masked/is_negative.cpp delete mode 100644 test/doc/core/masked/is_nez.cpp delete mode 100644 test/doc/core/masked/is_ngez.cpp delete mode 100644 test/doc/core/masked/is_ngtz.cpp delete mode 100644 test/doc/core/masked/is_nlez.cpp delete mode 100644 test/doc/core/masked/is_nltz.cpp delete mode 100644 test/doc/core/masked/is_normal.cpp delete mode 100644 test/doc/core/masked/is_not_denormal.cpp delete mode 100644 test/doc/core/masked/is_not_equal.cpp delete mode 100644 test/doc/core/masked/is_not_finite.cpp delete mode 100644 test/doc/core/masked/is_not_flint.cpp delete mode 100644 test/doc/core/masked/is_not_greater.cpp delete mode 100644 test/doc/core/masked/is_not_greater_equal.cpp delete mode 100644 test/doc/core/masked/is_not_imag.cpp delete mode 100644 test/doc/core/masked/is_not_infinite.cpp delete mode 100644 test/doc/core/masked/is_not_less.cpp delete mode 100644 test/doc/core/masked/is_not_less_equal.cpp delete mode 100644 test/doc/core/masked/is_not_nan.cpp delete mode 100644 test/doc/core/masked/is_not_real.cpp delete mode 100644 test/doc/core/masked/is_odd.cpp delete mode 100644 test/doc/core/masked/is_ordered.cpp delete mode 100644 test/doc/core/masked/is_positive.cpp delete mode 100644 test/doc/core/masked/is_pow2.cpp delete mode 100644 test/doc/core/masked/is_real.cpp delete mode 100644 test/doc/core/masked/is_unit.cpp delete mode 100644 test/doc/core/masked/is_unordered.cpp delete mode 100644 test/doc/core/masked/ldexp.cpp delete mode 100644 test/doc/core/masked/manhattan.cpp delete mode 100644 test/doc/core/masked/mantissa.cpp delete mode 100644 test/doc/core/masked/mask.cpp delete mode 100644 test/doc/core/masked/max.cpp delete mode 100644 test/doc/core/masked/maxabs.cpp delete mode 100644 test/doc/core/masked/maxmag.cpp delete mode 100644 test/doc/core/masked/min.cpp delete mode 100644 test/doc/core/masked/minabs.cpp delete mode 100644 test/doc/core/masked/minmag.cpp delete mode 100644 test/doc/core/masked/minmax.cpp delete mode 100644 test/doc/core/masked/minus.cpp delete mode 100644 test/doc/core/masked/mul.cpp delete mode 100644 test/doc/core/masked/nearest.cpp delete mode 100644 test/doc/core/masked/negabsmax.cpp delete mode 100644 test/doc/core/masked/negabsmin.cpp delete mode 100644 test/doc/core/masked/negate.cpp delete mode 100644 test/doc/core/masked/negatenz.cpp delete mode 100644 test/doc/core/masked/negmaxabs.cpp delete mode 100644 test/doc/core/masked/negminabs.cpp delete mode 100644 test/doc/core/masked/next.cpp delete mode 100644 test/doc/core/masked/nextafter.cpp delete mode 100644 test/doc/core/masked/none.cpp delete mode 100644 test/doc/core/masked/oneminus.cpp delete mode 100644 test/doc/core/masked/prev.cpp delete mode 100644 test/doc/core/masked/rec.cpp delete mode 100644 test/doc/core/masked/rem.cpp delete mode 100644 test/doc/core/masked/round.cpp delete mode 100644 test/doc/core/masked/roundscale.cpp delete mode 100644 test/doc/core/masked/rshl.cpp delete mode 100644 test/doc/core/masked/rshr.cpp delete mode 100644 test/doc/core/masked/rsqrt.cpp delete mode 100644 test/doc/core/masked/saturate.cpp delete mode 100644 test/doc/core/masked/shl.cpp delete mode 100644 test/doc/core/masked/shr.cpp delete mode 100644 test/doc/core/masked/sign.cpp delete mode 100644 test/doc/core/masked/sign_alternate.cpp delete mode 100644 test/doc/core/masked/signnz.cpp delete mode 100644 test/doc/core/masked/sqr.cpp delete mode 100644 test/doc/core/masked/sqr_abs.cpp delete mode 100644 test/doc/core/masked/sqrt.cpp delete mode 100644 test/doc/core/masked/sub.cpp delete mode 100644 test/doc/core/masked/trunc.cpp rename test/doc/core/{regular => }/max.cpp (52%) rename test/doc/core/{regular => }/maxabs.cpp (76%) rename test/doc/core/{masked => }/maximum.cpp (50%) rename test/doc/core/{regular => }/maxmag.cpp (76%) create mode 100644 test/doc/core/min.cpp rename test/doc/core/{regular => }/minabs.cpp (76%) rename test/doc/core/{masked => }/minimum.cpp (50%) rename test/doc/core/{regular => }/minmag.cpp (76%) create mode 100644 test/doc/core/minmax.cpp rename test/doc/core/{regular => }/minus.cpp (90%) rename test/doc/core/{regular => }/modf.cpp (100%) rename test/doc/core/{regular => }/mul.cpp (95%) rename test/doc/core/{regular => }/nb_values.cpp (100%) rename test/doc/core/{regular => }/nearest.cpp (67%) rename test/doc/core/{regular => }/negabsmax.cpp (64%) rename test/doc/core/{regular => }/negabsmin.cpp (58%) rename test/doc/core/{regular => }/negate.cpp (88%) rename test/doc/core/{regular => }/negatenz.cpp (87%) rename test/doc/core/{regular => }/negmaxabs.cpp (73%) rename test/doc/core/{regular => }/negminabs.cpp (65%) rename test/doc/core/{regular => }/next.cpp (55%) rename test/doc/core/{regular => }/nextafter.cpp (59%) rename test/doc/core/{regular => }/none.cpp (60%) rename test/doc/core/{regular => }/oneminus.cpp (82%) delete mode 100644 test/doc/core/pedantic/diff_of_prod.cpp delete mode 100644 test/doc/core/pedantic/fam.cpp delete mode 100644 test/doc/core/pedantic/is_equal.cpp delete mode 100644 test/doc/core/pedantic/is_not_equal.cpp delete mode 100644 test/doc/core/pedantic/manhattan.cpp delete mode 100644 test/doc/core/pedantic/max.cpp delete mode 100644 test/doc/core/pedantic/maxabs.cpp delete mode 100644 test/doc/core/pedantic/maxmag.cpp delete mode 100644 test/doc/core/pedantic/min.cpp delete mode 100644 test/doc/core/pedantic/minabs.cpp delete mode 100644 test/doc/core/pedantic/minmag.cpp delete mode 100644 test/doc/core/pedantic/next.cpp delete mode 100644 test/doc/core/pedantic/prev.cpp delete mode 100644 test/doc/core/pedantic/signnz.cpp delete mode 100644 test/doc/core/pedantic/sum_of_prod.cpp rename test/doc/core/{regular => }/plus.cpp (100%) rename test/doc/core/{regular => }/popcount.cpp (100%) rename test/doc/core/{regular => }/prev.cpp (62%) rename test/doc/core/{regular => }/rat.cpp (100%) delete mode 100644 test/doc/core/raw/average.cpp rename test/doc/core/{regular => }/rec.cpp (71%) rename test/doc/core/{masked => }/reduce.cpp (100%) delete mode 100644 test/doc/core/regular/average.cpp delete mode 100644 test/doc/core/regular/bit_and.cpp delete mode 100644 test/doc/core/regular/bit_andnot.cpp delete mode 100644 test/doc/core/regular/bit_flip.cpp delete mode 100644 test/doc/core/regular/bit_or.cpp delete mode 100644 test/doc/core/regular/bit_ornot.cpp delete mode 100644 test/doc/core/regular/bit_set.cpp delete mode 100644 test/doc/core/regular/bit_shl.cpp delete mode 100644 test/doc/core/regular/bit_swap_pairs.cpp delete mode 100644 test/doc/core/regular/bit_unset.cpp delete mode 100644 test/doc/core/regular/bitofsign.cpp delete mode 100644 test/doc/core/regular/byte_reverse.cpp delete mode 100644 test/doc/core/regular/byte_swap_pairs.cpp delete mode 100644 test/doc/core/regular/ceil.cpp delete mode 100644 test/doc/core/regular/convert.cpp delete mode 100644 test/doc/core/regular/count_true.cpp delete mode 100644 test/doc/core/regular/deco.cpp delete mode 100644 test/doc/core/regular/diff_of_prod.cpp delete mode 100644 test/doc/core/regular/div.cpp delete mode 100644 test/doc/core/regular/fanm.cpp delete mode 100644 test/doc/core/regular/first_true.cpp delete mode 100644 test/doc/core/regular/floor.cpp delete mode 100644 test/doc/core/regular/fms.cpp delete mode 100644 test/doc/core/regular/fnma.cpp delete mode 100644 test/doc/core/regular/fracscale.cpp delete mode 100644 test/doc/core/regular/frexp.cpp delete mode 100644 test/doc/core/regular/if_add.cpp delete mode 100644 test/doc/core/regular/if_allbits_else.cpp delete mode 100644 test/doc/core/regular/if_else_allbits.cpp delete mode 100644 test/doc/core/regular/if_else_mone.cpp delete mode 100644 test/doc/core/regular/if_else_one.cpp delete mode 100644 test/doc/core/regular/if_else_zero.cpp delete mode 100644 test/doc/core/regular/if_mone_else.cpp delete mode 100644 test/doc/core/regular/if_mul.cpp delete mode 100644 test/doc/core/regular/if_one_else.cpp delete mode 100644 test/doc/core/regular/if_sub.cpp delete mode 100644 test/doc/core/regular/if_zero_else.cpp delete mode 100644 test/doc/core/regular/ifrexp.cpp delete mode 100644 test/doc/core/regular/inc.cpp delete mode 100644 test/doc/core/regular/int16_.cpp delete mode 100644 test/doc/core/regular/int8_.cpp delete mode 100644 test/doc/core/regular/is_equal.cpp delete mode 100644 test/doc/core/regular/is_greater.cpp delete mode 100644 test/doc/core/regular/is_greater_equal.cpp delete mode 100644 test/doc/core/regular/is_not_equal.cpp delete mode 100644 test/doc/core/regular/lerp.cpp delete mode 100644 test/doc/core/regular/maximum.cpp delete mode 100644 test/doc/core/regular/min.cpp delete mode 100644 test/doc/core/regular/minimum.cpp delete mode 100644 test/doc/core/regular/minmax.cpp delete mode 100644 test/doc/core/regular/reduce.cpp delete mode 100644 test/doc/core/regular/rem.cpp delete mode 100644 test/doc/core/regular/round.cpp delete mode 100644 test/doc/core/regular/roundscale.cpp delete mode 100644 test/doc/core/regular/sum_of_prod.cpp delete mode 100644 test/doc/core/regular/trunc.cpp delete mode 100644 test/doc/core/regular/zip.cpp rename test/doc/core/{regular => }/reldist.cpp (100%) create mode 100644 test/doc/core/rem.cpp rename test/doc/core/{regular => }/replace_ignored.cpp (100%) rename test/doc/core/{regular => }/rotate.cpp (100%) create mode 100644 test/doc/core/round.cpp delete mode 100644 test/doc/core/roundings/div.cpp delete mode 100644 test/doc/core/roundings/rem.cpp delete mode 100644 test/doc/core/roundings/round.cpp rename test/doc/core/{roundings => }/roundscale.cpp (56%) rename test/doc/core/{regular => }/rshl.cpp (67%) rename test/doc/core/{regular => }/rshr.cpp (67%) rename test/doc/core/{regular => }/rsqrt.cpp (87%) rename test/doc/core/{regular => }/saturate.cpp (52%) delete mode 100644 test/doc/core/saturated/abs.cpp delete mode 100644 test/doc/core/saturated/add.cpp delete mode 100644 test/doc/core/saturated/convert.cpp delete mode 100644 test/doc/core/saturated/dec.cpp delete mode 100644 test/doc/core/saturated/dist.cpp delete mode 100644 test/doc/core/saturated/div.cpp delete mode 100644 test/doc/core/saturated/inc.cpp delete mode 100644 test/doc/core/saturated/minus.cpp delete mode 100644 test/doc/core/saturated/mul.cpp delete mode 100644 test/doc/core/saturated/next.cpp delete mode 100644 test/doc/core/saturated/oneminus.cpp delete mode 100644 test/doc/core/saturated/prev.cpp delete mode 100644 test/doc/core/saturated/sub.cpp rename test/doc/core/{regular => }/scatter.cpp (100%) rename test/doc/core/{regular => }/shl.cpp (70%) rename test/doc/core/{regular => }/shr.cpp (70%) rename test/doc/core/{regular => }/sign.cpp (66%) rename test/doc/core/{regular => }/sign_alternate.cpp (100%) rename test/doc/core/{regular => }/significants.cpp (100%) rename test/doc/core/{regular => }/signnz.cpp (61%) rename test/doc/core/{regular => }/sort.cpp (100%) rename test/doc/core/{regular => }/sqr.cpp (93%) rename test/doc/core/{regular => }/sqr_abs.cpp (66%) rename test/doc/core/{regular => }/sqrt.cpp (88%) rename test/doc/core/{regular => }/sub.cpp (72%) create mode 100644 test/doc/core/sum_of_prod.cpp rename test/doc/core/{regular => }/swap_if.cpp (100%) rename test/doc/core/{regular => }/swap_pairs.cpp (100%) rename test/doc/core/{fuzzy => }/trunc.cpp (69%) rename test/doc/core/{regular => }/try_each_group_position.cpp (100%) rename test/doc/core/{regular => }/two_add.cpp (100%) rename test/doc/core/{regular => }/two_prod.cpp (100%) rename test/doc/core/{regular => }/uint16.cpp (100%) rename test/doc/core/{regular => }/uint32.cpp (100%) rename test/doc/core/{regular => }/uint64.cpp (100%) rename test/doc/core/{regular => }/uint8.cpp (100%) rename test/doc/core/{regular => }/uint_.cpp (100%) rename test/doc/core/{regular => }/ulpdist.cpp (100%) rename test/doc/core/{regular => }/upgrade.cpp (100%) rename test/doc/core/{masked => }/zip.cpp (100%) diff --git a/include/eve/module/core/regular/abs.hpp b/include/eve/module/core/regular/abs.hpp index 406b1c5c01..e184e5728d 100644 --- a/include/eve/module/core/regular/abs.hpp +++ b/include/eve/module/core/regular/abs.hpp @@ -48,9 +48,9 @@ struct abs_t : elementwise_callable //! //! **Parameters** //! -//! * `x` : [SIMD or scalar arithmetic value](@ref eve::value). +//! * `x` : [SIMD or scalar value](@ref eve::value). //! -//! **Return value** +//! **Return value** //! //! The [elementwise](@ref glossary_elementwise) absolute value of `x`, if it is representable. //! More specifically, for signed integers : the absolute value of eve::valmin is not representable and @@ -63,7 +63,7 @@ struct abs_t : elementwise_callable //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/abs.cpp} +//! @godbolt{doc/core/abs.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -72,17 +72,12 @@ struct abs_t : elementwise_callable //! The call `eve::abs[mask](x)` provides a masked version of `eve::abs` which is //! equivalent to `if_else (mask, abs(x), x)`. //! -//! **Example** -//! @godbolt{doc/core/masked/abs.cpp} -//! //! * eve::saturated //! //! The call `eve::abs[eve::saturated](x)` computes a saturated version of eve::abs. //! More specifically, for any signed integer value `x`, the expression //! `eve::abs[eve::saturated](eve::valmin(as(x)))` evaluates to `eve::valmax(as(x))`. //! -//! **Example** -//! @godbolt{doc/core/saturated/abs.cpp} //! @} //====================================================================================================================== inline constexpr auto abs = functor; diff --git a/include/eve/module/core/regular/absmax.hpp b/include/eve/module/core/regular/absmax.hpp index 6f4b18a4ca..27bebe1091 100644 --- a/include/eve/module/core/regular/absmax.hpp +++ b/include/eve/module/core/regular/absmax.hpp @@ -61,8 +61,7 @@ namespace eve //! //! **Return value** //! -//! The absolute value of the maximal element -//! is returned. +//! The absolute value of the maximal element is returned. //! //! @note //! If any element of the inputs is a NaN, @@ -70,7 +69,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/absmax.cpp} +//! @godbolt{doc/core/absmax.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -79,15 +78,14 @@ namespace eve //! The call `eve::absmax[mask](x, ...)` provides a masked version of `eve::absmax` which is //! equivalent to `eve::if_else (mask, absmax(x, ...), x)` //! -//! **Example** +//! * eve::pedantic, eve::numeric, eve::saturated //! -//! @godbolt{doc/core/masked/absmax.cpp} -//! -//! * eve::pedantic, eve::numeric -//! -//! The call `d(eve::absmax)(...)`, where d is one of these two decorators, is equivalent to +//! The call `eve::absmax[d](...)`, where d is one of these two first decorators, is equivalent to //! `eve::abs (d( eve::max )(...))`. //! +//! The call `eve::absmax[d][saturated](...)`, where d is one of these two first decorators or is not present, is equivalent to +//! `eve::abs[saturated](d( eve::max )(...))`. +//! //! @} //================================================================================================ inline constexpr auto absmax = functor; diff --git a/include/eve/module/core/regular/absmin.hpp b/include/eve/module/core/regular/absmin.hpp index 1a34a98893..4e8729efa6 100644 --- a/include/eve/module/core/regular/absmin.hpp +++ b/include/eve/module/core/regular/absmin.hpp @@ -69,7 +69,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/absmin.cpp} +//! @godbolt{doc/core/absmin.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -78,15 +78,14 @@ namespace eve //! The call `eve::absmin[mask](x, ...)` provides a masked version of `eve::absmin` which is //! equivalent to `eve::if_else (mask, absmin(x, ...), x)` //! -//! **Example** +//! * eve::pedantic, eve::numeric, eve::saturated //! -//! @godbolt{doc/core/masked/absmin.cpp} -//! -//! * eve::pedantic, eve::numeric -//! -//! The call `d(eve::absmin)(...)`, where d is one of these two decorators, is equivalent to +//! The call `eve::absmin[d](...)`, where d is one of these two first decorators, is equivalent to //! `eve::abs (d( eve::min )(...))`. //! +//! The call `eve::absmin[d][saturated](...)`, where d is one of these two first decorators or is not present, is equivalent to +//! `eve::abs[saturated](d( eve::min )(...))`. +//! //! @} //================================================================================================ inline constexpr auto absmin = functor; diff --git a/include/eve/module/core/regular/add.hpp b/include/eve/module/core/regular/add.hpp index ee8c2bbf7d..7faf44f38e 100644 --- a/include/eve/module/core/regular/add.hpp +++ b/include/eve/module/core/regular/add.hpp @@ -52,32 +52,23 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/add.cpp} +//! @godbolt{doc/core/add.cpp} //! //! @groupheader{Semantic Modifiers} //! //! * Masked Call //! //! The call `eve::add[mask](x, ...)` provides a masked -//! version of `add` which is -//! equivalent to `if_else(mask, eve::add(x, ...), x)` -//! -//! **Example** -//! -//! @godbolt{doc/core/masked/add.cpp} +//! version of `add` which is equivalent to `if_else(mask, eve::add(x, ...), x)` //! //! * eve::saturated //! //! The call `eve::saturated(eve::add)(...)` computes //! a saturated version of `eve::add`. //! -//! Take care that for signed integral -//! entries this kind of addition is not associative at all. +//! Take care that for signed integral entries this kind of addition is not associative at all. //! This call perform saturated additions in reverse incoming order. //! -//! **Example** -//! -//! @godbolt{doc/core/saturated/add.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(add_, add); diff --git a/include/eve/module/core/regular/agm.hpp b/include/eve/module/core/regular/agm.hpp index 1b75f943a4..c41b78bdcf 100644 --- a/include/eve/module/core/regular/agm.hpp +++ b/include/eve/module/core/regular/agm.hpp @@ -70,7 +70,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/agm.cpp} +//! @godbolt{doc/core/agm.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -79,9 +79,6 @@ namespace eve //! The call `eve::agm[mask](x, ...)` provides a masked version of `agm` which is //! equivalent to `if_else(mask, agm(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/agm.cpp} //! @} //================================================================================================ inline constexpr auto agm = functor; diff --git a/include/eve/module/core/regular/all.hpp b/include/eve/module/core/regular/all.hpp index 113a327bd8..e39dff3bf4 100644 --- a/include/eve/module/core/regular/all.hpp +++ b/include/eve/module/core/regular/all.hpp @@ -49,7 +49,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/all.cpp} +//! @godbolt{doc/core/all.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -59,10 +59,6 @@ namespace eve //! version of `all` which is //! equivalent to : all not masked elements are not zero. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/all.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(all_, all); diff --git a/include/eve/module/core/regular/any.hpp b/include/eve/module/core/regular/any.hpp index 77540d6225..266a81d30c 100644 --- a/include/eve/module/core/regular/any.hpp +++ b/include/eve/module/core/regular/any.hpp @@ -52,7 +52,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/any.cpp} +//! @godbolt{doc/core/any.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -62,10 +62,6 @@ namespace eve //! version of `any` which is //! equivalent to : any not masked elements is not zero. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/any.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(any_, any); diff --git a/include/eve/module/core/regular/average.hpp b/include/eve/module/core/regular/average.hpp index 4288ea8672..a1e3681d1d 100644 --- a/include/eve/module/core/regular/average.hpp +++ b/include/eve/module/core/regular/average.hpp @@ -82,7 +82,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/average.cpp} +//! @godbolt{doc/core/average.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -92,19 +92,16 @@ namespace eve //! version of `average` which is //! equivalent to `if_else(mask, average(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/average.cpp} -//! //! * eve::raw //! //! when `raw(average)(x, args, ...)` is used, no provision is made to avoid //! overflows for more than 2 parameters. //! -//! **Example** +//! * eve::downward, eve::upward //! -//! @godbolt{doc/core/raw/average.cpp} -//! @} +//! only for two integral values, see above +//! +//!//! @} //================================================================================================ inline constexpr auto average = functor; diff --git a/include/eve/module/core/regular/binarize.hpp b/include/eve/module/core/regular/binarize.hpp index 3fdb200150..df2046e761 100644 --- a/include/eve/module/core/regular/binarize.hpp +++ b/include/eve/module/core/regular/binarize.hpp @@ -51,7 +51,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/binarize.cpp} +//! @godbolt{doc/core/binarize.cpp} //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/binarize_not.hpp b/include/eve/module/core/regular/binarize_not.hpp index 746061f4a6..6837479491 100644 --- a/include/eve/module/core/regular/binarize_not.hpp +++ b/include/eve/module/core/regular/binarize_not.hpp @@ -51,7 +51,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/binarize_not.cpp} +//! @godbolt{doc/core/binarize_not.cpp} //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/bit_and.hpp b/include/eve/module/core/regular/bit_and.hpp index a043f0f845..4ec561949f 100644 --- a/include/eve/module/core/regular/bit_and.hpp +++ b/include/eve/module/core/regular/bit_and.hpp @@ -56,7 +56,7 @@ namespace eve //! namespace eve //! { //! template< eve::value T, eve::value Ts... > -//! T bit_and(T x, Ts... xs) noexcept; +//! bit_value bit_and(T x, Ts... xs) noexcept; //! } //! @endcode //! @@ -67,8 +67,8 @@ namespace eve //! //! **Return value** //! -//! The value of the bitwise AND of its arguments in the type of the first one -//! is returned. +//! The value of the bitwise AND of its arguments converted to the bit_value +//! type is returned. //! //! @note //! @@ -78,7 +78,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_and.cpp} +//! @godbolt{doc/core/bit_and.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -88,9 +88,6 @@ namespace eve //! version of `bit_and` which is //! equivalent to `if_else(mask, bit_and(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_and.cpp} //! @} //================================================================================================ inline constexpr auto bit_and = functor; diff --git a/include/eve/module/core/regular/bit_andnot.hpp b/include/eve/module/core/regular/bit_andnot.hpp index c1f19384ce..56dd05ca8b 100644 --- a/include/eve/module/core/regular/bit_andnot.hpp +++ b/include/eve/module/core/regular/bit_andnot.hpp @@ -50,7 +50,7 @@ namespace eve //! namespace eve //! { //! template< eve::value T, eve::value Ts... > -//! T bit_andnot(T x, Ts... xs) noexcept; +//! bit_value bit_andnot(T x, Ts... xs) noexcept; //! } //! @endcode //! @@ -61,14 +61,16 @@ namespace eve //! //! **Return value** //! -//! * For two parameters it computes the bitwise ANDNOT of the two parameters -//! * For more than two parameters the call is semantically equivalent to to `bit_andnot(a0, -//! bit_and(xs...))` -//! * The value returned is in the type of the first parameter +//! * The return value type is bit_value Each parameter is converted +//! to this type and then: +//! +//! * For two parameters it computes the bitwise ANDNOT of the two parameters +//! * For more than two parameters the call is semantically equivalent to to `bit_andnot(a0, +//! bit_and(xs...))` //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_andnot.cpp} +//! @godbolt{doc/core/bit_andnot.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -78,9 +80,6 @@ namespace eve //! version of `bit_andnot` which is //! equivalent to `if_else(mask, bit_andnot(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_andnot.cpp} //! @} //================================================================================================ inline constexpr auto bit_andnot = functor; diff --git a/include/eve/module/core/regular/bit_cast.hpp b/include/eve/module/core/regular/bit_cast.hpp index 2b8847356b..7994229439 100644 --- a/include/eve/module/core/regular/bit_cast.hpp +++ b/include/eve/module/core/regular/bit_cast.hpp @@ -57,7 +57,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_cast.cpp} +//! @godbolt{doc/core/bit_cast.cpp} //! //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/bit_ceil.hpp b/include/eve/module/core/regular/bit_ceil.hpp index 59fdc88614..d6857d95c0 100644 --- a/include/eve/module/core/regular/bit_ceil.hpp +++ b/include/eve/module/core/regular/bit_ceil.hpp @@ -66,7 +66,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_ceil.cpp} +//! @godbolt{doc/core/bit_ceil.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -76,9 +76,6 @@ namespace eve //! version of `bit_ceil` which is //! equivalent to `if_else(mask, bit_ceil(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_ceil.cpp} //! @} //================================================================================================ inline constexpr auto bit_ceil = functor; diff --git a/include/eve/module/core/regular/bit_flip.hpp b/include/eve/module/core/regular/bit_flip.hpp index 9cfc5113a6..2460fb24d1 100644 --- a/include/eve/module/core/regular/bit_flip.hpp +++ b/include/eve/module/core/regular/bit_flip.hpp @@ -44,7 +44,7 @@ namespace eve //! @code //! namespace eve //! { -//! template< eunsigned_value T, integral_value I> +//! template //! T bit_flip(T x, I i) noexcept; //! } //! @endcode @@ -61,7 +61,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_flip.cpp} +//! @godbolt{doc/core/bit_flip.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -71,10 +71,6 @@ namespace eve //! version of `bit_flip` which is //! equivalent to `if_else(mask, bit_flip(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_flip.cpp} -//! //! @} //================================================================================================ inline constexpr auto bit_flip = functor; diff --git a/include/eve/module/core/regular/bit_floor.hpp b/include/eve/module/core/regular/bit_floor.hpp index 79d686dd3f..34133aeabc 100644 --- a/include/eve/module/core/regular/bit_floor.hpp +++ b/include/eve/module/core/regular/bit_floor.hpp @@ -68,7 +68,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_floor.cpp} +//! @godbolt{doc/core/bit_floor.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -78,9 +78,6 @@ namespace eve //! version of `bit_floor` which is //! equivalent to `if_else(mask, bit_floor(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_floor.cpp} //! @} //================================================================================================ inline constexpr auto bit_floor = functor; @@ -110,7 +107,7 @@ namespace eve else { return if_else(is_eqz(v), zero, T {1} << dec(bit_width(v))); - } + } } } } diff --git a/include/eve/module/core/regular/bit_mask.hpp b/include/eve/module/core/regular/bit_mask.hpp index ef4d5433ad..2ef3c41864 100644 --- a/include/eve/module/core/regular/bit_mask.hpp +++ b/include/eve/module/core/regular/bit_mask.hpp @@ -59,7 +59,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_mask.cpp} +//! @godbolt{doc/core/bit_mask.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -69,9 +69,6 @@ namespace eve //! version of `bit_mask` which is //! equivalent to `if_else(mask, bit_mask(x), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_mask.cpp} //! @} //================================================================================================ inline constexpr auto bit_mask = functor; diff --git a/include/eve/module/core/regular/bit_not.hpp b/include/eve/module/core/regular/bit_not.hpp index a2e8e8a275..e2a72c334e 100644 --- a/include/eve/module/core/regular/bit_not.hpp +++ b/include/eve/module/core/regular/bit_not.hpp @@ -43,7 +43,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_not.cpp} +//! @godbolt{doc/core/bit_not.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -53,10 +53,6 @@ namespace eve //! version of `bit_not` which is //! equivalent to `if_else(mask, bit_not(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_not.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(bit_not_, bit_not); diff --git a/include/eve/module/core/regular/bit_notand.hpp b/include/eve/module/core/regular/bit_notand.hpp index 5770e5368c..98b3856f20 100644 --- a/include/eve/module/core/regular/bit_notand.hpp +++ b/include/eve/module/core/regular/bit_notand.hpp @@ -49,7 +49,7 @@ namespace eve //! namespace eve //! { //! template< eve::value T, eve::value Ts... > -//! T bit_notand(T x, Ts... xs) noexcept; +//! bit_value bit_notand(T x, Ts... xs) noexcept; //! } //! @endcode //! @@ -60,14 +60,16 @@ namespace eve //! //! **Return value** //! -//! * For two parameters it computes the bitwise NOTAND of the two parameters -//! * For more than two parameters the call is semantically equivalent to to `bit_notand(a0, -//! bit_and(xs...))` -//! * The value returned is in the type of the first parameter +//! * The return value type is bit_value Each parameter is converted +// to this type and then: +//! +//! * For two parameters it computes the bitwise NOTAND of the two parameters +//! * For more than two parameters the call is semantically equivalent to to `bit_notand(a0, +//! bit_and(xs...))` //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_notand.cpp} +//! @godbolt{doc/core/bit_notand.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -77,9 +79,6 @@ namespace eve //! version of `bit_notand` which is //! equivalent to `if_else(mask, bit_notand(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_notand.cpp} //! @} //================================================================================================ inline constexpr auto bit_notand = functor; diff --git a/include/eve/module/core/regular/bit_notor.hpp b/include/eve/module/core/regular/bit_notor.hpp index 110ac70f6e..90f2ba9bd1 100644 --- a/include/eve/module/core/regular/bit_notor.hpp +++ b/include/eve/module/core/regular/bit_notor.hpp @@ -48,7 +48,7 @@ namespace eve //! namespace eve //! { //! template< eve::value T, eve::value Ts... > -//! T bit_notor(T x, Ts... xs) noexcept; +//! bit_value bit_notor(T x, Ts... xs) noexcept; //! } //! @endcode //! @@ -59,14 +59,16 @@ namespace eve //! //! **Return value** //! -//! * For two parameters it computes the bitwise NOTOR of the two parameters -//! * For more than two parameters the call is semantically equivalent to to `bit_notor(a0, -//! bit_or(xs...))` -//! * The value returned is in the type of the first parameter +//! * The return value type is bit_value Each parameter is converted +// to this type and then: +//! +//! * For two parameters it computes the bitwise ANDNOT of the two parameters +//! * For more than two parameters the call is semantically equivalent to to `bit_notand(a0, +//! bit_and(xs...))` //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_notor.cpp} +//! @godbolt{doc/core/bit_notor.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -76,9 +78,6 @@ namespace eve //! version of `bit_notor` which is //! equivalent to `if_else(mask, bit_notor(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_notor.cpp} //! @} //================================================================================================ inline constexpr auto bit_notor = functor; diff --git a/include/eve/module/core/regular/bit_or.hpp b/include/eve/module/core/regular/bit_or.hpp index 99c6bd6fd8..314c3f7230 100644 --- a/include/eve/module/core/regular/bit_or.hpp +++ b/include/eve/module/core/regular/bit_or.hpp @@ -67,8 +67,7 @@ namespace eve //! //! **Return value** //! -//! The value of the bitwise OR of its arguments in the type of the first one -//! is returned. +//! The value of the bitwise OR of its arguments converted to the bit_value //! //! @note //! Although the infix notation with `|` is supported for two parameters, the `|` operator on @@ -77,7 +76,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_or.cpp} +//! @godbolt{doc/core/bit_or.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -87,9 +86,6 @@ namespace eve //! version of `bit_or` which is //! equivalent to `if_else(mask, bit_or(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_or.cpp} //! @} //================================================================================================ inline constexpr auto bit_or = functor; diff --git a/include/eve/module/core/regular/bit_ornot.hpp b/include/eve/module/core/regular/bit_ornot.hpp index 9b51202f8b..1bce250743 100644 --- a/include/eve/module/core/regular/bit_ornot.hpp +++ b/include/eve/module/core/regular/bit_ornot.hpp @@ -48,7 +48,7 @@ namespace eve //! namespace eve //! { //! template< eve::value T, eve::value Ts... > -//! T bit_ornot(T x, Ts... xs) noexcept; +//! bit_value bit_ornot(T x, Ts... xs) noexcept; //! } //! @endcode //! @@ -59,14 +59,17 @@ namespace eve //! //! **Return value** //! -//! * For two parameters it computes the bitwise ORNOT of the two parameters -//! * For more than two parameters the call is semantically equivalent to to `bit_ornot(a0, -//! bit_or(xs...))` -//! * The value returned is in the type of the first parameter +//! * The return value type is bit_value Each parameter is converted +//! to this type and then: +//! +//! * For two parameters it computes the bitwise ORNOT of the two parameters +//! * For more than two parameters the call is semantically equivalent to to `bit_andnot(a0, +//! bit_and(xs...))` +//! //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_ornot.cpp} +//! @godbolt{doc/core/bit_ornot.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -76,9 +79,6 @@ namespace eve //! version of `bit_ornot` which is //! equivalent to `if_else(mask, bit_ornot(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_ornot.cpp} //! @} //================================================================================================ inline constexpr auto bit_ornot = functor; diff --git a/include/eve/module/core/regular/bit_reverse.hpp b/include/eve/module/core/regular/bit_reverse.hpp index bcc64f05c8..366cb0d09b 100644 --- a/include/eve/module/core/regular/bit_reverse.hpp +++ b/include/eve/module/core/regular/bit_reverse.hpp @@ -76,7 +76,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_reverse.cpp} +//! @godbolt{doc/core/bit_reverse.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -86,10 +86,6 @@ namespace eve //! version of `bit_reverse` which is //! equivalent to `if_else(mask, bit_reverse(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_reverse.cpp} -//! //! @} //================================================================================================ inline constexpr auto bit_reverse = functor; diff --git a/include/eve/module/core/regular/bit_select.hpp b/include/eve/module/core/regular/bit_select.hpp index 19a59a30c1..5e616b083d 100644 --- a/include/eve/module/core/regular/bit_select.hpp +++ b/include/eve/module/core/regular/bit_select.hpp @@ -70,7 +70,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_select.cpp} +//! @godbolt{doc/core/bit_select.cpp} //! //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/bit_set.hpp b/include/eve/module/core/regular/bit_set.hpp index dc983d9f2d..056e8d934d 100644 --- a/include/eve/module/core/regular/bit_set.hpp +++ b/include/eve/module/core/regular/bit_set.hpp @@ -62,7 +62,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_set.cpp} +//! @godbolt{doc/core/bit_set.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -72,10 +72,6 @@ namespace eve //! version of `bit_set` which is //! equivalent to `if_else(mask, bit_set(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_set.cpp} -//! //! @} //================================================================================================ inline constexpr auto bit_set = functor; diff --git a/include/eve/module/core/regular/bit_shl.hpp b/include/eve/module/core/regular/bit_shl.hpp index c060085406..e8e2f7a64a 100644 --- a/include/eve/module/core/regular/bit_shl.hpp +++ b/include/eve/module/core/regular/bit_shl.hpp @@ -56,7 +56,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_shl.cpp} +//! @godbolt{doc/core/bit_shl.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -66,9 +66,6 @@ namespace eve //! version of `bit_shl` which is //! equivalent to `if_else(mask, bit_shl(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_shl.cpp} //! @} //================================================================================================ EVE_ALIAS_CALLABLE(shl_, bit_shl); diff --git a/include/eve/module/core/regular/bit_shr.hpp b/include/eve/module/core/regular/bit_shr.hpp index bd25b49060..ba88a4d158 100644 --- a/include/eve/module/core/regular/bit_shr.hpp +++ b/include/eve/module/core/regular/bit_shr.hpp @@ -84,7 +84,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_shr.cpp} +//! @godbolt{doc/core/bit_shr.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -94,9 +94,6 @@ namespace eve //! version of `bit_shr` which is //! equivalent to `if_else(mask, bit_shr(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_shr.cpp} //! @} //================================================================================================ inline constexpr auto bit_shr = functor; diff --git a/include/eve/module/core/regular/bit_swap_adjacent.hpp b/include/eve/module/core/regular/bit_swap_adjacent.hpp index c06dacdce6..1cd653fb2a 100644 --- a/include/eve/module/core/regular/bit_swap_adjacent.hpp +++ b/include/eve/module/core/regular/bit_swap_adjacent.hpp @@ -61,7 +61,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_swap_adjacent.cpp} +//! @godbolt{doc/core/bit_swap_adjacent.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -71,10 +71,6 @@ namespace eve //! version of `bit_swap_adjacent` which is //! equivalent to `if_else(mask, bit_swap_adjacent(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_swap_adjacent.cpp} -//! //! @} //================================================================================================ inline constexpr auto bit_swap_adjacent = functor; diff --git a/include/eve/module/core/regular/bit_swap_pairs.hpp b/include/eve/module/core/regular/bit_swap_pairs.hpp index 1ad0bf03aa..220ca5baa7 100644 --- a/include/eve/module/core/regular/bit_swap_pairs.hpp +++ b/include/eve/module/core/regular/bit_swap_pairs.hpp @@ -46,7 +46,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_swap_pairs.cpp} +//! @godbolt{doc/core/bit_swap_pairs.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -56,10 +56,6 @@ namespace eve //! version of `bit_swap_pairs` which is //! equivalent to `if_else(mask, bit_swap_pairs(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_swap_pairs.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(bit_swap_pairs_, bit_swap_pairs); diff --git a/include/eve/module/core/regular/bit_unset.hpp b/include/eve/module/core/regular/bit_unset.hpp index adfd9d641f..65b645d4ca 100644 --- a/include/eve/module/core/regular/bit_unset.hpp +++ b/include/eve/module/core/regular/bit_unset.hpp @@ -62,7 +62,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_unset.cpp} +//! @godbolt{doc/core/bit_unset.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -72,10 +72,6 @@ namespace eve //! version of `bit_unset` which is //! equivalent to `if_else(mask, bit_unset(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_unset.cpp} -//! //! @} //================================================================================================ inline constexpr auto bit_unset = functor; diff --git a/include/eve/module/core/regular/bit_width.hpp b/include/eve/module/core/regular/bit_width.hpp index ca4e2938e1..d3c2df1adb 100644 --- a/include/eve/module/core/regular/bit_width.hpp +++ b/include/eve/module/core/regular/bit_width.hpp @@ -45,7 +45,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_width.cpp} +//! @godbolt{doc/core/bit_width.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(bit_width_, bit_width); diff --git a/include/eve/module/core/regular/bit_xor.hpp b/include/eve/module/core/regular/bit_xor.hpp index 9cb074c344..224e5ec6bf 100644 --- a/include/eve/module/core/regular/bit_xor.hpp +++ b/include/eve/module/core/regular/bit_xor.hpp @@ -56,7 +56,7 @@ namespace eve //! namespace eve //! { //! template< eve::value T, eve::value Ts... > -//! T bit_xor(T x, Ts... xs) noexcept; +//! bit_value bit_xor(T x, Ts... xs) noexcept; //! } //! @endcode //! @@ -67,12 +67,12 @@ namespace eve //! //! **Return value** //! -//! The value of the bitwise XOR of its arguments in the type of the first one -//! is returned. +//! The value of the bitwise XOR of its arguments converted to the bit_value +//! type is returned. //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bit_xor.cpp} +//! @godbolt{doc/core/bit_xor.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -82,9 +82,6 @@ namespace eve //! version of `bit_xor` which is //! equivalent to `if_else(mask, bit_xor(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/bit_xor.cpp} //! @} //================================================================================================ inline constexpr auto bit_xor = functor; diff --git a/include/eve/module/core/regular/bitofsign.hpp b/include/eve/module/core/regular/bitofsign.hpp index 2e1d8fa5dd..0e1500eadd 100644 --- a/include/eve/module/core/regular/bitofsign.hpp +++ b/include/eve/module/core/regular/bitofsign.hpp @@ -42,20 +42,20 @@ namespace eve //! The value of the bit of sign is returned. //! //! @note -//! * bitofsign does NOT return a [logical value](@ref eve::value) +//! * bitofsign does NOT return a [logical value](@ref eve::value) //! //! * In particular, take care that for [floating real values](@ref eve::value) bitofsign -//! does NOT return -//! a [logical value](@ref eve::value) that can be tested, but `mzero(as(x))` if `x` is +//! does NOT return a [logical value](@ref eve::value) that can be tested, but +//! `mzero(as(x))` if `x` is //! negative and `zero(as(x))` if `x` is positive, which both satisfy the eve::is_eqz //! predicate. //! //! * If you want to test if the bit of sign is set eve::is_negative is the right function to -//! call. +//! call. //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/bitofsign.cpp} +//! @godbolt{doc/core/bitofsign.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(bitofsign_, bitofsign); diff --git a/include/eve/module/core/regular/broadcast.hpp b/include/eve/module/core/regular/broadcast.hpp index a1281194e9..0a8a110345 100644 --- a/include/eve/module/core/regular/broadcast.hpp +++ b/include/eve/module/core/regular/broadcast.hpp @@ -50,7 +50,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/broadcast.cpp} +//! @godbolt{doc/core/broadcast.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(broadcast_, broadcast); diff --git a/include/eve/module/core/regular/byte_reverse.hpp b/include/eve/module/core/regular/byte_reverse.hpp index 2868eaf21f..b2b5a07051 100644 --- a/include/eve/module/core/regular/byte_reverse.hpp +++ b/include/eve/module/core/regular/byte_reverse.hpp @@ -47,7 +47,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/byte_reverse.cpp} +//! @godbolt{doc/core/byte_reverse.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -57,10 +57,6 @@ namespace eve //! version of `byte_reverse` which is //! equivalent to `if_else(mask, byte_reverse(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/byte_reverse.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(byte_reverse_, byte_reverse); diff --git a/include/eve/module/core/regular/byte_swap_adjacent.hpp b/include/eve/module/core/regular/byte_swap_adjacent.hpp index 7bce294677..2906215e62 100644 --- a/include/eve/module/core/regular/byte_swap_adjacent.hpp +++ b/include/eve/module/core/regular/byte_swap_adjacent.hpp @@ -52,7 +52,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/byte_swap_adjacent.cpp} +//! @godbolt{doc/core/byte_swap_adjacent.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -62,10 +62,6 @@ namespace eve //! version of `byte_swap_adjacent` which is //! equivalent to `if_else(mask, byte_swap_adjacent(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/byte_swap_adjacent.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(byte_swap_adjacent_, byte_swap_adjacent); diff --git a/include/eve/module/core/regular/byte_swap_pairs.hpp b/include/eve/module/core/regular/byte_swap_pairs.hpp index 266f08ff6f..9060013240 100644 --- a/include/eve/module/core/regular/byte_swap_pairs.hpp +++ b/include/eve/module/core/regular/byte_swap_pairs.hpp @@ -45,7 +45,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/byte_swap_pairs.cpp} +//! @godbolt{doc/core/byte_swap_pairs.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -55,10 +55,6 @@ namespace eve //! version of `byte_swap_pairs` which is //! equivalent to `if_else(mask, byte_swap_pairs(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/byte_swap_pairs.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(byte_swap_pairs_, byte_swap_pairs); diff --git a/include/eve/module/core/regular/ceil.hpp b/include/eve/module/core/regular/ceil.hpp index c627c9e666..b89ddec3a0 100644 --- a/include/eve/module/core/regular/ceil.hpp +++ b/include/eve/module/core/regular/ceil.hpp @@ -63,7 +63,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/ceil.cpp} +//! @godbolt{doc/core/ceil.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -72,23 +72,18 @@ namespace eve //! The call `eve;::ceil[mask](x)` provides a masked version of `eve::ceil` which is //! equivalent to `if_else (mask, ceil(x), x)`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/ceil.cpp} -//! //! * eve::tolerant //! -//! The expression `tolerant(ceil)(x, tol)` computes a tolerant ceil value for `x`, +//! The expression `ceil[tolerance = tol](x)` computes a tolerant ceil value for `x`, //! where `x` must be a floating value. //! //! * If `tol` is a floating value, computes the floor with a tolerance `tol` //! using Hagerty's FL5 function. //! * If `tol` is an integral value n, computes the floor of the next nth //! representable value in the `x` type. -//! * If `tol` is omitted, the tolerance is taken to 3 times the machine -//! \f$\epsilon\f$ in the `x` type (`3*eve::eps (eve::as (x))`). + +//! * ceil[tolerant](x) is equivalent to `ceil[tolerance = 3*eve::eps(eve::as (x))(x)`). //! -//! @godbolt{doc/core/fuzzy/ceil.cpp} //! @} //================================================================================================ inline constexpr auto ceil = functor; diff --git a/include/eve/module/core/regular/clamp.hpp b/include/eve/module/core/regular/clamp.hpp index 02f051aaf9..645ad1e013 100644 --- a/include/eve/module/core/regular/clamp.hpp +++ b/include/eve/module/core/regular/clamp.hpp @@ -67,7 +67,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/clamp.cpp} +//! @godbolt{doc/core/clamp.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -76,10 +76,6 @@ namespace eve //! The call `eve;::clamp[mask](x, ...)` provides a masked version of `eve::clamp` which is //! equivalent to `if_else (mask, clamp(x, ...), x)`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/clamp.cpp} -//! //! @} //================================================================================================ inline constexpr auto clamp = functor; diff --git a/include/eve/module/core/regular/combine.hpp b/include/eve/module/core/regular/combine.hpp index 2660c8228c..bda3f997ef 100644 --- a/include/eve/module/core/regular/combine.hpp +++ b/include/eve/module/core/regular/combine.hpp @@ -44,7 +44,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/combine.cpp} +//! @godbolt{doc/core/combine.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(combine_, combine); diff --git a/include/eve/module/core/regular/conj.hpp b/include/eve/module/core/regular/conj.hpp index cca0f4e78b..e23e26d930 100644 --- a/include/eve/module/core/regular/conj.hpp +++ b/include/eve/module/core/regular/conj.hpp @@ -55,7 +55,7 @@ struct conj_t : elementwise_callable //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/conj.cpp} +//! @godbolt{doc/core/conj.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -64,10 +64,6 @@ struct conj_t : elementwise_callable //! The call `eve;::conj[mask](x)` provides a masked version of `eve::conj` which is //! equivalent to `if_else (mask, conj(x), x)`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/conj.cpp} -//! //! @} //================================================================================================ inline constexpr auto conj = functor; diff --git a/include/eve/module/core/regular/convert.hpp b/include/eve/module/core/regular/convert.hpp index f19690be66..43e6cf51e0 100644 --- a/include/eve/module/core/regular/convert.hpp +++ b/include/eve/module/core/regular/convert.hpp @@ -51,18 +51,15 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/convert.cpp} +//! @godbolt{doc/core/convert.cpp} //! //! @groupheader{Semantic Modifiers} //! //! * eve::saturated //! -//! The expression `saturated(convert)(x,t)` computes a saturated conversion of `x` to +//! The expression `convert[saturated](x,t)` computes a saturated conversion of `x` to //! the type wrapped by `t`. //! -//! **Example** -//! -//! @godbolt{doc/core/saturated/convert.cpp} //! @} //================================================================================================ EVE_ALIAS_CALLABLE(convert_, convert); diff --git a/include/eve/module/core/regular/converter.hpp b/include/eve/module/core/regular/converter.hpp index 20e2463969..d5deb54dc3 100644 --- a/include/eve/module/core/regular/converter.hpp +++ b/include/eve/module/core/regular/converter.hpp @@ -124,7 +124,7 @@ template using converter_type = decorated()>; //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/float32.cpp} +//! @godbolt{doc/core/float32.cpp} //! @} //================================================================================================ inline constexpr converter_type const float32 = {}; @@ -169,7 +169,7 @@ inline constexpr converter_type const float32 = {}; //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/float64.cpp} +//! @godbolt{doc/core/float64.cpp} //! @} //================================================================================================ inline constexpr converter_type const float64 = {}; @@ -215,7 +215,7 @@ inline constexpr converter_type const float64 = {}; //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/uint8.cpp} +//! @godbolt{doc/core/uint8.cpp} //! @} //================================================================================================ inline constexpr converter_type const uint8 = {}; @@ -261,7 +261,7 @@ inline constexpr converter_type const uint8 = {}; //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/uint16.cpp} +//! @godbolt{doc/core/uint16.cpp} //! @} //================================================================================================ inline constexpr converter_type const uint16 = {}; @@ -307,7 +307,7 @@ inline constexpr converter_type const uint16 = {}; //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/uint32.cpp} +//! @godbolt{doc/core/uint32.cpp} //! @} //================================================================================================ inline constexpr converter_type const uint32 = {}; @@ -353,7 +353,7 @@ inline constexpr converter_type const uint32 = {}; //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/uint64.cpp} +//! @godbolt{doc/core/uint64.cpp} //! @} //================================================================================================ inline constexpr converter_type const uint64 = {}; @@ -399,7 +399,7 @@ inline constexpr converter_type const uint64 = {}; //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/int8.cpp} +//! @godbolt{doc/core/int8.cpp} //! @} //================================================================================================ inline constexpr converter_type const int8 = {}; @@ -445,7 +445,7 @@ inline constexpr converter_type const int8 = {}; //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/int16.cpp} +//! @godbolt{doc/core/int16.cpp} //! @} //================================================================================================ inline constexpr converter_type const int16 = {}; @@ -491,7 +491,7 @@ inline constexpr converter_type const int16 = {}; //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/int32.cpp} +//! @godbolt{doc/core/int32.cpp} //! @} //================================================================================================ inline constexpr converter_type const int32 = {}; @@ -537,7 +537,7 @@ inline constexpr converter_type const int32 = {}; //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/int64.cpp} +//! @godbolt{doc/core/int64.cpp} //! @} //================================================================================================ inline constexpr converter_type const int64 = {}; @@ -589,7 +589,7 @@ using int_converter = decorated()>; //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/int_.cpp} +//! @godbolt{doc/core/int_.cpp} //! @} //================================================================================================ inline constexpr int_converter const int_ = {}; @@ -638,7 +638,7 @@ using uint_converter = decorated()>; //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/int_.cpp} +//! @godbolt{doc/core/int_.cpp} //! @} //================================================================================================ inline constexpr uint_converter const uint_ = {}; @@ -687,7 +687,7 @@ using floating_converter = decorated()>; //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/floating_.cpp} +//! @godbolt{doc/core/floating_.cpp} //! @} //================================================================================================ inline constexpr floating_converter const floating_ = {}; @@ -734,7 +734,7 @@ using upgrade_converter = decorated()>; //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/upgrade.cpp} +//! @godbolt{doc/core/upgrade.cpp} //! @} //================================================================================================ inline constexpr upgrade_converter const upgrade_ = {}; diff --git a/include/eve/module/core/regular/copysign.hpp b/include/eve/module/core/regular/copysign.hpp index e74053aa08..b16426ee15 100644 --- a/include/eve/module/core/regular/copysign.hpp +++ b/include/eve/module/core/regular/copysign.hpp @@ -46,7 +46,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/copysign.cpp} +//! @godbolt{doc/core/copysign.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -56,10 +56,6 @@ namespace eve //! version of `copysign` which is //! equivalent to `if_else(mask, copysign(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/copysign.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(copysign_, copysign); diff --git a/include/eve/module/core/regular/count_true.hpp b/include/eve/module/core/regular/count_true.hpp index d7cf96e215..fb81e0ab8c 100644 --- a/include/eve/module/core/regular/count_true.hpp +++ b/include/eve/module/core/regular/count_true.hpp @@ -50,7 +50,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/count_true.cpp} +//! @godbolt{doc/core/count_true.cpp} //! @groupheader{Semantic Modifiers} //! //! * Masked Call @@ -58,9 +58,6 @@ namespace eve //! The call `eve::$name$[mask](x, ...)` provides a masked //! version of `count_true which count the non masked non zero element //! -//! **Example** -//! -//! @godbolt{doc/core/masked/count_true.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(count_true_, count_true); diff --git a/include/eve/module/core/regular/countl_one.hpp b/include/eve/module/core/regular/countl_one.hpp index ccbf9a2c04..09a79ed12d 100644 --- a/include/eve/module/core/regular/countl_one.hpp +++ b/include/eve/module/core/regular/countl_one.hpp @@ -45,7 +45,8 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/countl_one.cpp} +//! @godbolt{doc/core/countl_one.cpp} +//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(countl_one_, countl_one); diff --git a/include/eve/module/core/regular/countl_zero.hpp b/include/eve/module/core/regular/countl_zero.hpp index cb8c6b6839..74bda71fb9 100644 --- a/include/eve/module/core/regular/countl_zero.hpp +++ b/include/eve/module/core/regular/countl_zero.hpp @@ -45,7 +45,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/countl_zero.cpp} +//! @godbolt{doc/core/countl_zero.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(countl_zero_, countl_zero); diff --git a/include/eve/module/core/regular/countr_one.hpp b/include/eve/module/core/regular/countr_one.hpp index 51ee15bd49..b6d8a2029e 100644 --- a/include/eve/module/core/regular/countr_one.hpp +++ b/include/eve/module/core/regular/countr_one.hpp @@ -44,7 +44,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/countr_one.cpp} +//! @godbolt{doc/core/countr_one.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(countr_one_, countr_one); diff --git a/include/eve/module/core/regular/countr_zero.hpp b/include/eve/module/core/regular/countr_zero.hpp index c1368bdc3a..b1d8b12ca8 100644 --- a/include/eve/module/core/regular/countr_zero.hpp +++ b/include/eve/module/core/regular/countr_zero.hpp @@ -45,7 +45,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/countr_zero.cpp} +//! @godbolt{doc/core/countr_zero.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(countr_zero_, countr_zero); diff --git a/include/eve/module/core/regular/dec.hpp b/include/eve/module/core/regular/dec.hpp index eece866dc5..155331275a 100644 --- a/include/eve/module/core/regular/dec.hpp +++ b/include/eve/module/core/regular/dec.hpp @@ -55,7 +55,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/dec.cpp} +//! @godbolt{doc/core/dec.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -65,19 +65,12 @@ namespace eve //! version of `dec` which is //! equivalent to `if_else(mask, dec(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/dec.cpp} -//! //! * eve::saturated //! //! The call `saturated(dec)(x)` computes the saturated decrement of `x`. //! The only interest of this behaviour is that //! for integral type T the call `saturated(dec)(Valmin())` returns `Valmin()`. //! -//! **Example** -//! -//! @godbolt{doc/core/saturated/dec.cpp} //! @} //================================================================================================ inline constexpr auto dec = functor; diff --git a/include/eve/module/core/regular/diff_of_prod.hpp b/include/eve/module/core/regular/diff_of_prod.hpp index d699a5d335..a276e09df6 100644 --- a/include/eve/module/core/regular/diff_of_prod.hpp +++ b/include/eve/module/core/regular/diff_of_prod.hpp @@ -48,7 +48,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/diff_of_prod.cpp} +//! @godbolt{doc/core/diff_of_prod.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -62,10 +62,6 @@ namespace eve //! The call `eve::pedantic(eve::diff_of_prod)(x, y, z, t)` computes a pedantic //! version of eve::diff_of_prod ensuring better accuracy in any case. //! -//! **Example** -//! -//! @godbolt{doc/core/pedantic/diff_of_prod.cpp} -//! //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/dist.hpp b/include/eve/module/core/regular/dist.hpp index 1976e0c49d..8dd583f229 100644 --- a/include/eve/module/core/regular/dist.hpp +++ b/include/eve/module/core/regular/dist.hpp @@ -60,7 +60,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/dist.cpp} +//! @godbolt{doc/core/dist.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -76,9 +76,6 @@ namespace eve //! The call `pedantic(dist)(x, y)` computes a distance wich is nan if and only //! if a or b is a Nan. //! -//! **Example** -//! -//! @godbolt{doc/core/saturated/dist.cpp} //! @} //================================================================================================ inline constexpr auto dist = functor; diff --git a/include/eve/module/core/regular/div.hpp b/include/eve/module/core/regular/div.hpp index 64bfd68ec2..0a28c11b8e 100644 --- a/include/eve/module/core/regular/div.hpp +++ b/include/eve/module/core/regular/div.hpp @@ -53,7 +53,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/div.cpp} +//! @godbolt{doc/core/div.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -63,10 +63,6 @@ namespace eve //! version of `div` which is //! equivalent to `if_else(mask, div(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/div.cpp} -//! //! * eve::saturated //! //! The expression `eve::saturated(eve::div)(x, xs...)` computes the saturated @@ -80,10 +76,6 @@ namespace eve //! the division of [`eve::valmin(as(x))`](@ref eve::valmin) //! by -1 that produces [`eve::valmax(as(x))`](@ref eve::valmax). //! -//! **Example** -//! -//! @godbolt{doc/core/saturated/div.cpp} -//! //! * eve::toward_zero, eve::downward, eve::upward, eve::to_nearest //! //! The calls `d(div)(x, y)` where d is one of these 4 decorators produce respectively @@ -93,9 +85,6 @@ namespace eve //! * `eve::ceil (div(x, y))` for eve::upward. //! * `eve::nearest (div(x,y))`for eve::to_nearest. //! -//! **Example** -//! -//! @godbolt{doc/core/roundings/div.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(div_, div); diff --git a/include/eve/module/core/regular/dot.hpp b/include/eve/module/core/regular/dot.hpp index 5125cec569..8fa531342b 100644 --- a/include/eve/module/core/regular/dot.hpp +++ b/include/eve/module/core/regular/dot.hpp @@ -44,7 +44,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/dot.cpp} +//! @godbolt{doc/core/dot.cpp} //! //! //! @} diff --git a/include/eve/module/core/regular/exponent.hpp b/include/eve/module/core/regular/exponent.hpp index 48c24382ea..dfc5c6c229 100644 --- a/include/eve/module/core/regular/exponent.hpp +++ b/include/eve/module/core/regular/exponent.hpp @@ -50,7 +50,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/exponent.cpp} +//! @godbolt{doc/core/exponent.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(exponent_, exponent); diff --git a/include/eve/module/core/regular/fam.hpp b/include/eve/module/core/regular/fam.hpp index c551ab0a80..477ed04919 100644 --- a/include/eve/module/core/regular/fam.hpp +++ b/include/eve/module/core/regular/fam.hpp @@ -53,7 +53,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/fam.cpp} +//! @godbolt{doc/core/fam.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -63,10 +63,6 @@ namespace eve //! version of `fam` which is //! equivalent to `if_else(mask, fam(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/fam.cpp} -//! //! * eve::pedantic, eve::numeric //! //! * The call `pedantic(fam)(x,y,z)` ensures the one rounding property. @@ -75,7 +71,6 @@ namespace eve //! * The call `numeric(fam)(x,y,z)` ensures the full compliance to fam properties. //! This can be very expensive if the system has no hardware capability. //! -//! * see the above regular example. //! @} //================================================================================================ EVE_MAKE_CALLABLE(fam_, fam); diff --git a/include/eve/module/core/regular/fanm.hpp b/include/eve/module/core/regular/fanm.hpp index 2d01aac155..502a85d146 100644 --- a/include/eve/module/core/regular/fanm.hpp +++ b/include/eve/module/core/regular/fanm.hpp @@ -54,7 +54,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/fanm.cpp} +//! @godbolt{doc/core/fanm.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -64,10 +64,6 @@ namespace eve //! version of `fanm` which is //! equivalent to `if_else(mask, fanm(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/fanm.cpp} -//! //! * eve::pedantic, eve::numeric //! //! * The call `pedantic(fanm)(x,y,z)` ensures the one rounding property. @@ -76,7 +72,6 @@ namespace eve //! * The call `numeric(fanm)(x,y,z)` ensures the full compliance to fanm properties. //! This can be very expensive if the system has no hardware capability. //! -//! * see the above regular example. //! @} //================================================================================================ EVE_MAKE_CALLABLE(fanm_, fanm); diff --git a/include/eve/module/core/regular/fdim.hpp b/include/eve/module/core/regular/fdim.hpp index dadceebb91..5875f4dad7 100644 --- a/include/eve/module/core/regular/fdim.hpp +++ b/include/eve/module/core/regular/fdim.hpp @@ -47,7 +47,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/fdim.cpp} +//! @godbolt{doc/core/fdim.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -56,10 +56,6 @@ namespace eve //! The call `eve::fdim[mask](x)` provides a masked version of `eve::fdim` which is //! equivalent to `if_else (mask, fdim(x), x)`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/fdim.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(fdim_, fdim); diff --git a/include/eve/module/core/regular/first_true.hpp b/include/eve/module/core/regular/first_true.hpp index 701dec2d11..96ff61cb55 100644 --- a/include/eve/module/core/regular/first_true.hpp +++ b/include/eve/module/core/regular/first_true.hpp @@ -59,7 +59,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/first_true.cpp} +//! @godbolt{doc/core/first_true.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(first_true_, first_true); diff --git a/include/eve/module/core/regular/firstbitset.hpp b/include/eve/module/core/regular/firstbitset.hpp index 33e99b62ca..5b102e3468 100644 --- a/include/eve/module/core/regular/firstbitset.hpp +++ b/include/eve/module/core/regular/firstbitset.hpp @@ -46,7 +46,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/firstbitset.cpp} +//! @godbolt{doc/core/firstbitset.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -56,10 +56,6 @@ namespace eve //! version of `firstbitset` which is //! equivalent to `if_else(mask, firstbitset(x), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/firstbitset.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(firstbitset_, firstbitset); diff --git a/include/eve/module/core/regular/firstbitunset.hpp b/include/eve/module/core/regular/firstbitunset.hpp index 43f07c20e1..61c5e0f5a7 100644 --- a/include/eve/module/core/regular/firstbitunset.hpp +++ b/include/eve/module/core/regular/firstbitunset.hpp @@ -46,7 +46,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/firstbitunset.cpp} +//! @godbolt{doc/core/firstbitunset.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -56,10 +56,6 @@ namespace eve //! version of `firstbitunset` which is //! equivalent to `if_else(mask, firstbitunset(x), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/firstbitunset.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(firstbitunset_, firstbitunset); diff --git a/include/eve/module/core/regular/floor.hpp b/include/eve/module/core/regular/floor.hpp index 8090838da8..a6b5c52b7a 100644 --- a/include/eve/module/core/regular/floor.hpp +++ b/include/eve/module/core/regular/floor.hpp @@ -63,7 +63,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/floor.cpp} +//! @godbolt{doc/core/floor.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -72,10 +72,6 @@ namespace eve //! The call `eve;::floor[mask](x)` provides a masked version of `eve::floor` which is //! equivalent to `if_else (mask, floor(x), x)`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/floor.cpp} -//! //! * eve::tolerant //! //! The expression `tolerant(floor)(x, tol)` computes a tolerant floor value for `x`, @@ -88,7 +84,6 @@ namespace eve //! * If `tol` is omitted, the tolerance is taken to 3 times //! the machine \f$\epsilon\f$ in the `x` type (`3*eps(as(x))`). //! -//! @godbolt{doc/core/fuzzy/floor.cpp} //! @} //================================================================================================ inline constexpr auto floor = functor; diff --git a/include/eve/module/core/regular/fma.hpp b/include/eve/module/core/regular/fma.hpp index 651c1b4a04..cbb5da5a42 100644 --- a/include/eve/module/core/regular/fma.hpp +++ b/include/eve/module/core/regular/fma.hpp @@ -7,9 +7,6 @@ //====================================================================================================================== #pragma once - -#include "eve/traits/common_type.hpp" -#include "eve/traits/common_value.hpp" #include #include #include @@ -17,7 +14,7 @@ namespace eve { template -struct fma_t : elementwise_callable +struct fma_t : elementwise_callable { template requires(Options::contains(promote2)) @@ -51,8 +48,8 @@ struct fma_t : elementwise_callable -//! eve::common_value_t fma(T x, U y, V z) noexcept; +//! template +//! constexpr eve::common_value_t fma(T x, U y, V z) noexcept; //! } //! @endcode //! @@ -73,24 +70,22 @@ struct fma_t : elementwise_callable; diff --git a/include/eve/module/core/regular/fms.hpp b/include/eve/module/core/regular/fms.hpp index cf31298b25..5399e9b85a 100644 --- a/include/eve/module/core/regular/fms.hpp +++ b/include/eve/module/core/regular/fms.hpp @@ -54,7 +54,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/fms.cpp} +//! @godbolt{doc/core/fms.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -64,10 +64,6 @@ namespace eve //! version of `fms` which is //! equivalent to `if_else(mask, fms(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/fms.cpp} -//! //! * eve::pedantic, eve::numeric //! //! * The call `pedantic(fms)(x,y,z)` ensures the one rounding property. @@ -76,7 +72,6 @@ namespace eve //! * The call `numeric(fms)(x,y,z)` ensures the full compliance to fms properties. //! This can be very expensive if the system has no hardware capability. //! -//! * see the above regular example. //! @} //================================================================================================ EVE_MAKE_CALLABLE(fms_, fms); diff --git a/include/eve/module/core/regular/fnma.hpp b/include/eve/module/core/regular/fnma.hpp index 77ae314dd5..ec7511ebc2 100644 --- a/include/eve/module/core/regular/fnma.hpp +++ b/include/eve/module/core/regular/fnma.hpp @@ -54,7 +54,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/fnma.cpp} +//! @godbolt{doc/core/fnma.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -64,10 +64,6 @@ namespace eve //! version of `fnma` which is //! equivalent to `if_else(mask, fnma(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/fnma.cpp} -//! //! * eve::pedantic, eve::numeric //! //! * The call `pedantic(fnma)(x,y,z)` ensures the one rounding property. @@ -76,7 +72,6 @@ namespace eve //! * The call `numeric(fnma)(x,y,z)` ensures the full compliance to fnma properties. //! This can be very expensive if the system has no hardware capability. //! -//! * see the above regular example. //! @} //================================================================================================ EVE_MAKE_CALLABLE(fnma_, fnma); diff --git a/include/eve/module/core/regular/fnms.hpp b/include/eve/module/core/regular/fnms.hpp index bb5d73a7b8..a9d5b91be9 100644 --- a/include/eve/module/core/regular/fnms.hpp +++ b/include/eve/module/core/regular/fnms.hpp @@ -54,7 +54,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/fnms.cpp} +//! @godbolt{doc/core/fnms.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -64,10 +64,6 @@ namespace eve //! version of `fnms` which is //! equivalent to `if_else(mask, fnms(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/fnms.cpp} -//! //! * eve::pedantic, eve::numeric //! //! * The call `pedantic(fnms)(x,y,z)` ensures the one rounding property. diff --git a/include/eve/module/core/regular/frac.hpp b/include/eve/module/core/regular/frac.hpp index 57314a5546..53121e4748 100644 --- a/include/eve/module/core/regular/frac.hpp +++ b/include/eve/module/core/regular/frac.hpp @@ -52,7 +52,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/frac.cpp} +//! @godbolt{doc/core/frac.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -61,9 +61,6 @@ namespace eve //! The call `eve;::frac[mask](x)` provides a masked version of `eve::frac` which is //! equivalent to `if_else (mask, frac(x), x)`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/frac.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(frac_, frac); diff --git a/include/eve/module/core/regular/fracscale.hpp b/include/eve/module/core/regular/fracscale.hpp index b0df084a85..26d183bb78 100644 --- a/include/eve/module/core/regular/fracscale.hpp +++ b/include/eve/module/core/regular/fracscale.hpp @@ -52,7 +52,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/fracscale.cpp} +//! @godbolt{doc/core/fracscale.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -61,16 +61,11 @@ namespace eve //! The call `eve::fracscale[mask](x, scale)` provides a masked version of `eve::fracscale` //! which is equivalent to `if_else (mask, eve::fracscale(x, scale), x)`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/fracscale.cpp} -//! //! * eve::to_nearest, eve::toward_zero, eve::upward, eve::downward //! //! If d is one of these 4 decorators //! The call `d(eve:fracscale)(x, scale)`, call is equivalent to `a0-d(eve::roundscale)(a0, scale)` //! -//! @godbolt{doc/core/roundings/fracscale.cpp} //! @} //================================================================================================ namespace tag diff --git a/include/eve/module/core/regular/frexp.hpp b/include/eve/module/core/regular/frexp.hpp index 5c96880c77..5a3ce1d166 100644 --- a/include/eve/module/core/regular/frexp.hpp +++ b/include/eve/module/core/regular/frexp.hpp @@ -60,7 +60,7 @@ struct frexp_t : elementwise_callable; diff --git a/include/eve/module/core/regular/fsm.hpp b/include/eve/module/core/regular/fsm.hpp index b11d2855db..067459bc03 100644 --- a/include/eve/module/core/regular/fsm.hpp +++ b/include/eve/module/core/regular/fsm.hpp @@ -54,7 +54,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/fsm.cpp} +//! @godbolt{doc/core/fsm.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -64,10 +64,6 @@ namespace eve //! version of `fsm` which is //! equivalent to `if_else(mask, fsm(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/fsm.cpp} -//! //! * eve::pedantic, eve::numeric //! //! * The call `pedantic(fsm)(x,y,z)` ensures the one rounding property. @@ -76,7 +72,6 @@ namespace eve //! * The call `numeric(fsm)(x,y,z)` ensures the full compliance to fsm properties. //! This can be very expensive if the system has no hardware capability. //! -//! * see the above regular example. //! @} //================================================================================================ EVE_MAKE_CALLABLE(fsm_, fsm); diff --git a/include/eve/module/core/regular/fsnm.hpp b/include/eve/module/core/regular/fsnm.hpp index 3075b615d2..14e4e27d3f 100644 --- a/include/eve/module/core/regular/fsnm.hpp +++ b/include/eve/module/core/regular/fsnm.hpp @@ -54,7 +54,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/fsnm.cpp} +//! @godbolt{doc/core/fsnm.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -64,10 +64,6 @@ namespace eve //! version of `fsnm` which is //! equivalent to `if_else(mask, fsnm(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/fsnm.cpp} -//! //! * eve::pedantic, eve::numeric //! //! * The call `pedantic(fsnm)(x,y,z)` ensures the one rounding property. @@ -76,7 +72,6 @@ namespace eve //! * The call `numeric(fsnm)(x,y,z)` ensures the full compliance to fsnm properties. //! This can be very expensive if the system has no hardware capability. //! -//! * see the above regular example. //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/has_equal_in.hpp b/include/eve/module/core/regular/has_equal_in.hpp index 115be7506e..8c780d8463 100644 --- a/include/eve/module/core/regular/has_equal_in.hpp +++ b/include/eve/module/core/regular/has_equal_in.hpp @@ -41,7 +41,7 @@ namespace eve //! //! @groupheader{Example} //! - //! @godbolt{doc/core/regular/has_equal_in.cpp} + //! @godbolt{doc/core/has_equal_in.cpp} //! //================================================================================================ EVE_MAKE_CALLABLE(has_equal_in_, has_equal_in); diff --git a/include/eve/module/core/regular/hi.hpp b/include/eve/module/core/regular/hi.hpp index 1a4013a6f4..35497e3213 100644 --- a/include/eve/module/core/regular/hi.hpp +++ b/include/eve/module/core/regular/hi.hpp @@ -48,7 +48,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/hi.cpp} +//! @godbolt{doc/core/hi.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(hi_, hi); diff --git a/include/eve/module/core/regular/if_else.hpp b/include/eve/module/core/regular/if_else.hpp index e8de307436..8639d6e8aa 100644 --- a/include/eve/module/core/regular/if_else.hpp +++ b/include/eve/module/core/regular/if_else.hpp @@ -60,7 +60,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/if_else.cpp} +//! @godbolt{doc/core/if_else.cpp} //! //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/ifnot_else.hpp b/include/eve/module/core/regular/ifnot_else.hpp index 32e72b8861..a059eed007 100644 --- a/include/eve/module/core/regular/ifnot_else.hpp +++ b/include/eve/module/core/regular/ifnot_else.hpp @@ -44,7 +44,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/ifnot_else.cpp} +//! @godbolt{doc/core/ifnot_else.cpp} //! //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/ifrexp.hpp b/include/eve/module/core/regular/ifrexp.hpp index 5ecdbe7dce..7d6ab29c7d 100644 --- a/include/eve/module/core/regular/ifrexp.hpp +++ b/include/eve/module/core/regular/ifrexp.hpp @@ -61,7 +61,7 @@ struct ifrexp_t : elementwise_callable; diff --git a/include/eve/module/core/regular/inc.hpp b/include/eve/module/core/regular/inc.hpp index 4ce4af823f..98b78fa94d 100644 --- a/include/eve/module/core/regular/inc.hpp +++ b/include/eve/module/core/regular/inc.hpp @@ -55,7 +55,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/inc.cpp} +//! @godbolt{doc/core/inc.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -65,19 +65,12 @@ namespace eve //! version of `inc` which is //! equivalent to `if_else(mask, inc(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/inc.cpp} -//! //! * eve::saturated //! //! The call `saturated(inc)(x)` computes the saturated increment of `x`. //! The only interest of this behaviour is that //! for integral type T the call `saturated(inc)(Valmax())` returns `Valmax()`. //! -//! **Example** -//! -//! @godbolt{doc/core/saturated/inc.cpp} //! @} //================================================================================================ inline constexpr auto inc = functor; diff --git a/include/eve/module/core/regular/is_denormal.hpp b/include/eve/module/core/regular/is_denormal.hpp index 35870d5f6a..555d166b33 100644 --- a/include/eve/module/core/regular/is_denormal.hpp +++ b/include/eve/module/core/regular/is_denormal.hpp @@ -71,7 +71,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_denormal.cpp} +//! @godbolt{doc/core/is_denormal.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -81,10 +81,6 @@ namespace eve //! of `eve::is_denormal` which is //! equivalent to `if_else (mask, is_denormal(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_denormal.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_denormal = functor; diff --git a/include/eve/module/core/regular/is_equal.hpp b/include/eve/module/core/regular/is_equal.hpp index 0a12ef1395..d783ccaaea 100644 --- a/include/eve/module/core/regular/is_equal.hpp +++ b/include/eve/module/core/regular/is_equal.hpp @@ -53,7 +53,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_equal.cpp} +//! @godbolt{doc/core/is_equal.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -62,18 +62,10 @@ namespace eve //! The call `eve::is_equal[mask](x)` provides a masked version of `eve::is_equal` which is //! equivalent to `if_else (mask, is_equal(x, y), false_) //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_equal.cpp} -//! //! * eve::numeric //! //! The expression `numeric(is_equal)(x,y)` considers that Nan values are equal. //! -//! **Example** -//! -//! @godbolt{doc/core/pedantic/is_equal.cpp} -//! //! * `almost` //! //! The expression `almost(is_equal)(x, y, t)` where `x` and `y` must be floating point values, @@ -88,9 +80,6 @@ namespace eve //! - if `t` is omitted then the tolerance `t` is taken to 3 times the machine \f$\epsilon\f$ //! in the `x` type (`3*eps(as(x))`). //! -//! **Example** -//! -//! @godbolt{doc/core/fuzzy/is_equal.cpp} //! @} //================================================================================================ EVE_IMPLEMENT_CALLABLE(is_equal_, is_equal); diff --git a/include/eve/module/core/regular/is_eqz.hpp b/include/eve/module/core/regular/is_eqz.hpp index 499207318b..e8391bf63a 100644 --- a/include/eve/module/core/regular/is_eqz.hpp +++ b/include/eve/module/core/regular/is_eqz.hpp @@ -62,7 +62,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_eqz.cpp} +//! @godbolt{doc/core/is_eqz.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -71,14 +71,10 @@ namespace eve //! The call `eve;::is_eqz[mask](x)` provides a masked version of `eve::is_eqz` which is //! equivalent to `if_else (mask, is_eqz(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_eqz.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_eqz = functor; - + namespace detail { template diff --git a/include/eve/module/core/regular/is_even.hpp b/include/eve/module/core/regular/is_even.hpp index 6a72b07198..6f1c4b3bd8 100644 --- a/include/eve/module/core/regular/is_even.hpp +++ b/include/eve/module/core/regular/is_even.hpp @@ -70,7 +70,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_even.cpp} +//! @godbolt{doc/core/is_even.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -79,10 +79,6 @@ namespace eve //! The call `eve;::is_even[mask](x)` provides a masked version of `eve::is_even` which is //! equivalent to `if_else (mask, is_even(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_even.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_even = functor; diff --git a/include/eve/module/core/regular/is_finite.hpp b/include/eve/module/core/regular/is_finite.hpp index ca6f9fcd6a..8b6a260dc5 100644 --- a/include/eve/module/core/regular/is_finite.hpp +++ b/include/eve/module/core/regular/is_finite.hpp @@ -61,7 +61,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_finite.cpp} +//! @godbolt{doc/core/is_finite.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -70,10 +70,6 @@ namespace eve //! The call `eve;::is_finite[mask](x)` provides a masked version of `eve::is_finite` which is //! equivalent to `if_else (mask, is_finite(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_finite.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_finite = functor; diff --git a/include/eve/module/core/regular/is_flint.hpp b/include/eve/module/core/regular/is_flint.hpp index 31e1876c67..eaaea2e60a 100644 --- a/include/eve/module/core/regular/is_flint.hpp +++ b/include/eve/module/core/regular/is_flint.hpp @@ -66,7 +66,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_flint.cpp} +//! @godbolt{doc/core/is_flint.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -75,10 +75,6 @@ namespace eve //! The call `eve;::is_flint[mask](x)` provides a masked version of `eve::is_flint` which is //! equivalent to `if_else (mask, is_flint(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_flint.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_flint = functor; diff --git a/include/eve/module/core/regular/is_gez.hpp b/include/eve/module/core/regular/is_gez.hpp index 4389e6d2c4..5699ba6911 100644 --- a/include/eve/module/core/regular/is_gez.hpp +++ b/include/eve/module/core/regular/is_gez.hpp @@ -61,7 +61,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_gez.cpp} +//! @godbolt{doc/core/is_gez.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -70,10 +70,6 @@ namespace eve //! The call `eve;::is_gez[mask](x)` provides a masked version of `eve::is_gez` which is //! equivalent to `if_else (mask, is_gez(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_gez.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_gez = functor; diff --git a/include/eve/module/core/regular/is_greater.hpp b/include/eve/module/core/regular/is_greater.hpp index e8839b5674..17343b89d7 100644 --- a/include/eve/module/core/regular/is_greater.hpp +++ b/include/eve/module/core/regular/is_greater.hpp @@ -49,7 +49,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_greater.cpp} +//! @godbolt{doc/core/is_greater.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -58,10 +58,6 @@ namespace eve //! The call `eve;::is_greater[mask](x,y)` provides a masked version of `eve::is_greater` which //! is equivalent to `if_else (mask, is_greater(x), eve::false( eve::as(x,y)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_greater.cpp} -//! //! * `definitely` //! //! The expression `definitely(is_greater)(x, y, t)` where `x` and `y` must be @@ -72,9 +68,6 @@ namespace eve //! - if `t` is a positive integral_value then \f$x > \mbox{next}(y, t)\f$; //! - if `t` is omitted then the tolerance `t` default to `3*eps(as(x))`. //! -//! **Example** -//! -//! @godbolt{doc/core/fuzzy/is_greater.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(is_greater_, is_greater); diff --git a/include/eve/module/core/regular/is_greater_equal.hpp b/include/eve/module/core/regular/is_greater_equal.hpp index 412fdb29b1..5dbf8e78ba 100644 --- a/include/eve/module/core/regular/is_greater_equal.hpp +++ b/include/eve/module/core/regular/is_greater_equal.hpp @@ -48,7 +48,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_greater_equal.cpp} +//! @godbolt{doc/core/is_greater_equal.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -58,10 +58,6 @@ namespace eve //! `eve::is_greater_equal` which is equivalent to `if_else (mask, is_greater_equal(x), //! eve::false( eve::as(x,y)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_greater_equal.cpp} -//! //! * `almost` //! //! The expression `definitely(is_greater_equal)(x, y, t)` where `x` and `y` must be @@ -72,9 +68,6 @@ namespace eve //! - if `t` is a positive integral_value then \f$x > \mbox{prev}(y, t)\f$; //! - if `t` is omitted then the tolerance `t` default to `3*eps(as(x))`. //! -//! **Example** -//! -//! @godbolt{doc/core/fuzzy/is_greater_equal.cpp} //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/is_gtz.hpp b/include/eve/module/core/regular/is_gtz.hpp index 68bbdc2740..f537c990a9 100644 --- a/include/eve/module/core/regular/is_gtz.hpp +++ b/include/eve/module/core/regular/is_gtz.hpp @@ -71,10 +71,6 @@ namespace eve //! The call `eve;::is_gtz[mask](x)` provides a masked version of `eve::is_gtz` which is //! equivalent to `if_else (mask, is_gtz(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_gtz.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_gtz = functor; diff --git a/include/eve/module/core/regular/is_imag.hpp b/include/eve/module/core/regular/is_imag.hpp index 16f62903f0..81af4b89ac 100644 --- a/include/eve/module/core/regular/is_imag.hpp +++ b/include/eve/module/core/regular/is_imag.hpp @@ -60,7 +60,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_imag.cpp} +//! @godbolt{doc/core/is_imag.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -69,10 +69,6 @@ namespace eve //! The call `eve;::is_imag[mask](x)` provides a masked version of `eve::is_imag` which is //! equivalent to `if_else (mask, is_imag(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_imag.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_imag = functor; diff --git a/include/eve/module/core/regular/is_infinite.hpp b/include/eve/module/core/regular/is_infinite.hpp index c254569f4f..f47a6b68cb 100644 --- a/include/eve/module/core/regular/is_infinite.hpp +++ b/include/eve/module/core/regular/is_infinite.hpp @@ -63,7 +63,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_infinite.cpp} +//! @godbolt{doc/core/is_infinite.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -73,10 +73,6 @@ namespace eve //! version of `eve::is_infinite` which //! is equivalent to `if_else (mask, is_infinite(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_infinite.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_infinite = functor; diff --git a/include/eve/module/core/regular/is_less.hpp b/include/eve/module/core/regular/is_less.hpp index 0fcf7c6b3b..237a71564f 100644 --- a/include/eve/module/core/regular/is_less.hpp +++ b/include/eve/module/core/regular/is_less.hpp @@ -50,7 +50,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_less.cpp} +//! @godbolt{doc/core/is_less.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -59,10 +59,6 @@ namespace eve //! The call `eve;::is_less[mask](x,y)` provides a masked version of `eve::is_less` which is //! equivalent to `if_else (mask, is_less(x), eve::false( eve::as(x,y)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_less.cpp} -//! //! * `definitely` //! //! The expression `definitely(is_less)(x, y, t)` where `x` and `y` must be @@ -73,9 +69,6 @@ namespace eve //! - if `t` is a positive integral_value then \f$x < \mbox{prev}(y, t)\f$; //! - if `t` is omitted then the tolerance `t` default to `3*eps(as(x))`. //! -//! **Example** -//! -//! @godbolt{doc/core/fuzzy/is_less.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(is_less_, is_less); diff --git a/include/eve/module/core/regular/is_less_equal.hpp b/include/eve/module/core/regular/is_less_equal.hpp index 1b99cf6fd2..e76fa535b2 100644 --- a/include/eve/module/core/regular/is_less_equal.hpp +++ b/include/eve/module/core/regular/is_less_equal.hpp @@ -49,7 +49,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_less_equal.cpp} +//! @godbolt{doc/core/is_less_equal.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -58,10 +58,6 @@ namespace eve //! The call `eve;::is_less_equal[mask](x,y)` provides a masked version of `eve::is_less_equal` //! which is equivalent to `if_else (mask, is_less_equal(x), eve::false( eve::as(x,y)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_less_equal.cpp} -//! //! * `almost` //! //! The expression `definitely(is_less_equal)(x, y, t)` where `x` and `y` must be @@ -72,9 +68,6 @@ namespace eve //! - if `t` is a positive integral_value then \f$x < \mbox{next}(y, t)\f$; //! - if `t` is omitted then the tolerance `t` default to `3*eps(as(x))`. //! -//! **Example** -//! -//! @godbolt{doc/core/fuzzy/is_less_equal.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(is_less_equal_, is_less_equal); diff --git a/include/eve/module/core/regular/is_lessgreater.hpp b/include/eve/module/core/regular/is_lessgreater.hpp index 102f7513d7..d1e358327a 100644 --- a/include/eve/module/core/regular/is_lessgreater.hpp +++ b/include/eve/module/core/regular/is_lessgreater.hpp @@ -44,7 +44,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_lessgreater.cpp} +//! @godbolt{doc/core/is_lessgreater.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -54,10 +54,6 @@ namespace eve //! `eve::is_lessgreater` which is equivalent to `if_else (mask, is_lessgreater(x, y), //! eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_lessgreater.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(is_lessgreater_, is_lessgreater); diff --git a/include/eve/module/core/regular/is_lez.hpp b/include/eve/module/core/regular/is_lez.hpp index 1e4d42e22e..e584674309 100644 --- a/include/eve/module/core/regular/is_lez.hpp +++ b/include/eve/module/core/regular/is_lez.hpp @@ -67,10 +67,6 @@ namespace eve //! The call `eve;::is_lez[mask](x)` provides a masked version of `eve::is_lez` which is //! equivalent to `if_else (mask, is_lez(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_lez.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_lez = functor; diff --git a/include/eve/module/core/regular/is_ltz.hpp b/include/eve/module/core/regular/is_ltz.hpp index e3ed7d6d54..a1a2ea6d35 100644 --- a/include/eve/module/core/regular/is_ltz.hpp +++ b/include/eve/module/core/regular/is_ltz.hpp @@ -62,7 +62,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_ltz.cpp} +//! @godbolt{doc/core/is_ltz.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -71,10 +71,6 @@ namespace eve //! The call `eve;::is_ltz[mask](x)` provides a masked version of `eve::is_ltz` which is //! equivalent to `if_else (mask, is_ltz(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_ltz.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_ltz = functor; diff --git a/include/eve/module/core/regular/is_nan.hpp b/include/eve/module/core/regular/is_nan.hpp index 4007c1ab41..59d457ee9e 100644 --- a/include/eve/module/core/regular/is_nan.hpp +++ b/include/eve/module/core/regular/is_nan.hpp @@ -65,7 +65,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_nan.cpp} +//! @godbolt{doc/core/is_nan.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -74,10 +74,6 @@ namespace eve //! The call `eve;::is_nan[mask](x)` provides a masked version of `eve::is_nan` which is //! equivalent to `if_else (mask, is_nan(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_nan.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_nan = functor; diff --git a/include/eve/module/core/regular/is_negative.hpp b/include/eve/module/core/regular/is_negative.hpp index 06cb5ea998..04575cfa36 100644 --- a/include/eve/module/core/regular/is_negative.hpp +++ b/include/eve/module/core/regular/is_negative.hpp @@ -68,7 +68,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_negative.cpp} +//! @godbolt{doc/core/is_negative.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -77,10 +77,6 @@ namespace eve //! The call `eve;::is_negative[mask](x)` provides a masked version of `eve::is_negative` which //! is equivalent to `if_else (mask, is_negative(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_negative.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_negative = functor; diff --git a/include/eve/module/core/regular/is_nez.hpp b/include/eve/module/core/regular/is_nez.hpp index 3030c2831f..eb9bb363f7 100644 --- a/include/eve/module/core/regular/is_nez.hpp +++ b/include/eve/module/core/regular/is_nez.hpp @@ -59,7 +59,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_nez.cpp} +//! @godbolt{doc/core/is_nez.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -67,11 +67,6 @@ namespace eve //! //! The call `eve;::is_nez[mask](x)` provides a masked version of `eve::is_nez` which is //! equivalent to `if_else (mask, is_nez(x), eve::false( eve::as(x)))`. -//! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_nez.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_nez = functor; diff --git a/include/eve/module/core/regular/is_ngez.hpp b/include/eve/module/core/regular/is_ngez.hpp index e4b13799e4..2103b1c819 100644 --- a/include/eve/module/core/regular/is_ngez.hpp +++ b/include/eve/module/core/regular/is_ngez.hpp @@ -62,7 +62,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_ngez.cpp} +//! @godbolt{doc/core/is_ngez.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -71,9 +71,6 @@ namespace eve //! The call `eve;::is_ngez[mask](x)` provides a masked version of `eve::is_ngez` which is //! equivalent to `if_else (mask, is_ngez(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_ngez.cpp} //! @} //================================================================================================ inline constexpr auto is_ngez = functor; diff --git a/include/eve/module/core/regular/is_ngtz.hpp b/include/eve/module/core/regular/is_ngtz.hpp index 6d97a41f0c..fd2844c0e5 100644 --- a/include/eve/module/core/regular/is_ngtz.hpp +++ b/include/eve/module/core/regular/is_ngtz.hpp @@ -62,7 +62,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_ngtz.cpp} +//! @godbolt{doc/core/is_ngtz.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -71,9 +71,6 @@ namespace eve //! The call `eve;::is_ngtz[mask](x)` provides a masked version of `eve::is_ngtz` which is //! equivalent to `if_else (mask, is_ngtz(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_ngtz.cpp} //! @} //================================================================================================ inline constexpr auto is_ngtz = functor; diff --git a/include/eve/module/core/regular/is_nlez.hpp b/include/eve/module/core/regular/is_nlez.hpp index 2f9724c996..9958c68fef 100644 --- a/include/eve/module/core/regular/is_nlez.hpp +++ b/include/eve/module/core/regular/is_nlez.hpp @@ -62,7 +62,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_nlez.cpp} +//! @godbolt{doc/core/is_nlez.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -71,9 +71,6 @@ namespace eve //! The call `eve;::is_nlez[mask](x)` provides a masked version of `eve::is_nlez` which is //! equivalent to `if_else (mask, is_nlez(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_nlez.cpp} //! @} //================================================================================================ inline constexpr auto is_nlez = functor; diff --git a/include/eve/module/core/regular/is_nltz.hpp b/include/eve/module/core/regular/is_nltz.hpp index 2e8600b308..adb6142b6d 100644 --- a/include/eve/module/core/regular/is_nltz.hpp +++ b/include/eve/module/core/regular/is_nltz.hpp @@ -62,7 +62,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_nltz.cpp} +//! @godbolt{doc/core/is_nltz.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -71,9 +71,6 @@ namespace eve //! The call `eve;::is_nltz[mask](x)` provides a masked version of `eve::is_nltz` which is //! equivalent to `if_else (mask, is_nltz(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_nltz.cpp} //! @} //================================================================================================ inline constexpr auto is_nltz = functor; diff --git a/include/eve/module/core/regular/is_normal.hpp b/include/eve/module/core/regular/is_normal.hpp index 64ce0208a8..832f6f1901 100644 --- a/include/eve/module/core/regular/is_normal.hpp +++ b/include/eve/module/core/regular/is_normal.hpp @@ -70,7 +70,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_normal.cpp} +//! @godbolt{doc/core/is_normal.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -79,9 +79,6 @@ namespace eve //! The call `eve::is_normal[mask](x)` provides a masked version of `eve::is_normal` which is //! equivalent to `if_else (mask, is_normal(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_normal.cpp} //! //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/is_not_denormal.hpp b/include/eve/module/core/regular/is_not_denormal.hpp index 6cb6c3035f..9a092e5e41 100644 --- a/include/eve/module/core/regular/is_not_denormal.hpp +++ b/include/eve/module/core/regular/is_not_denormal.hpp @@ -44,7 +44,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_not_denormal.cpp} +//! @godbolt{doc/core/is_not_denormal.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -54,9 +54,6 @@ namespace eve //! of `eve::is_not_denormal` which is //! equivalent to `if_else (mask, is_not_denormal(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_denormal.cpp} //! //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/is_not_equal.hpp b/include/eve/module/core/regular/is_not_equal.hpp index d914bedde3..ee06f419c4 100644 --- a/include/eve/module/core/regular/is_not_equal.hpp +++ b/include/eve/module/core/regular/is_not_equal.hpp @@ -52,7 +52,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_not_equal.cpp} +//! @godbolt{doc/core/is_not_equal.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -61,18 +61,10 @@ namespace eve //! The call `eve::is_not_equal[mask](x)` provides a masked version of `eve::is_not_equal` which //! is equivalent to `if_else (mask, is_not_equal(x, y), false_ //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_not_equal.cpp} -//! //! * eve::numeric //! //! The expression `numeric(is_not_equal)(x,y)` considers that Nan values are not equal. //! -//! **Example** -//! -//! @godbolt{doc/core/pedantic/is_not_equal.cpp} -//! //! * `definitely` //! //! The expression `definitely(is_not_equal)(x, y, t)` where `x` and `y` must be floating point @@ -86,9 +78,6 @@ namespace eve //! * if `t` is omitted then the tolerance `t` is taken to 3 times the machine \f$\epsilon\f$ //! in the `x` type (`3*eps(as(x))`). //! -//! **Example** -//! -//! @godbolt{doc/core/fuzzy/is_not_equal.cpp} //! @} //================================================================================================ EVE_IMPLEMENT_CALLABLE(is_not_equal_, is_not_equal); diff --git a/include/eve/module/core/regular/is_not_finite.hpp b/include/eve/module/core/regular/is_not_finite.hpp index f952b88ecd..29584cbfd7 100644 --- a/include/eve/module/core/regular/is_not_finite.hpp +++ b/include/eve/module/core/regular/is_not_finite.hpp @@ -69,7 +69,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_not_finite.cpp} +//! @godbolt{doc/core/is_not_finite.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -78,10 +78,6 @@ namespace eve //! The call `is_not_finite[mask](x)` provides a masked version of eve::is_not_finite //! which is equivalent to `if_else (mask, is_not_finite(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_not_finite.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_not_finite = functor; diff --git a/include/eve/module/core/regular/is_not_flint.hpp b/include/eve/module/core/regular/is_not_flint.hpp index 9b257b0950..92129c8b9f 100644 --- a/include/eve/module/core/regular/is_not_flint.hpp +++ b/include/eve/module/core/regular/is_not_flint.hpp @@ -64,7 +64,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_not_flint.cpp} +//! @godbolt{doc/core/is_not_flint.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -73,10 +73,6 @@ namespace eve //! The call `eve;::is_not_flint[mask](x)` provides a masked version of `eve::is_not_flint` //! which is equivalent to `if_else (mask, is_not_flint(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_not_flint.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_not_flint = functor; diff --git a/include/eve/module/core/regular/is_not_greater.hpp b/include/eve/module/core/regular/is_not_greater.hpp index e78edd89c8..78c4314fa3 100644 --- a/include/eve/module/core/regular/is_not_greater.hpp +++ b/include/eve/module/core/regular/is_not_greater.hpp @@ -46,7 +46,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_not_greater.cpp} +//! @godbolt{doc/core/is_not_greater.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -56,10 +56,6 @@ namespace eve //! `eve::is_not_greater` which is equivalent to `if_else (mask, is_not_greater(x), eve::false( //! eve::as(x,y)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_not_greater.cpp} -//! //! * `almost` //! //! The expression `almost(is_not_greater)(x, y, t)` where `x` and `y` must be @@ -70,9 +66,6 @@ namespace eve //! * if `t` is a positive integral_value then \f$(x < \mbox{next}(y, t)\f$; //! * if `t` is omitted then the tolerance `t` default to `3*eps(as(x))`. //! -//! **Example** -//! -//! @godbolt{doc/core/fuzzy/is_not_greater.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(is_not_greater_, is_not_greater); diff --git a/include/eve/module/core/regular/is_not_greater_equal.hpp b/include/eve/module/core/regular/is_not_greater_equal.hpp index 29c1ed1e10..78fd0bc4c9 100644 --- a/include/eve/module/core/regular/is_not_greater_equal.hpp +++ b/include/eve/module/core/regular/is_not_greater_equal.hpp @@ -45,7 +45,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_not_greater_equal.cpp} +//! @godbolt{doc/core/is_not_greater_equal.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -55,10 +55,6 @@ namespace eve //! `eve::is_not_greater_equal` which is equivalent to `if_else (mask, is_not_greater_equal(x), //! eve::false( eve::as(x,y)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_not_greater_equal.cpp} -//! //! * `definitely` //! //! The expression `definitely(is_not_greater_equal)(x, y, t)` where `x` and `y` must be @@ -69,9 +65,6 @@ namespace eve //! * if `t` is a positive integral_value then \f$x < \mbox{prev}(y, t)\f$; //! * if `t` is omitted then the tolerance `t` default to `3*eps(as(x))`. //! -//! **Example** -//! -//! @godbolt{doc/core/fuzzy/is_not_greater_equal.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(is_not_greater_equal_, is_not_greater_equal); diff --git a/include/eve/module/core/regular/is_not_imag.hpp b/include/eve/module/core/regular/is_not_imag.hpp index d72beb5b2b..de35500149 100644 --- a/include/eve/module/core/regular/is_not_imag.hpp +++ b/include/eve/module/core/regular/is_not_imag.hpp @@ -56,7 +56,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_not_imag.cpp} +//! @godbolt{doc/core/is_not_imag.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -65,9 +65,6 @@ namespace eve //! The call `eve;::is_not_imag[mask](x)` provides a masked version of `eve::is_not_imag` which //! is equivalent to `if_else (mask, is_not_imag(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_not_imag.cpp} //! //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/is_not_infinite.hpp b/include/eve/module/core/regular/is_not_infinite.hpp index 399adcf414..e016bd87e8 100644 --- a/include/eve/module/core/regular/is_not_infinite.hpp +++ b/include/eve/module/core/regular/is_not_infinite.hpp @@ -64,7 +64,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_not_infinite.cpp} +//! @godbolt{doc/core/is_not_infinite.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -74,10 +74,6 @@ namespace eve //! `eve::is_not_infinite` which is equivalent to `if_else (mask, is_not_infinite(x), //! eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_not_infinite.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_not_infinite = functor; diff --git a/include/eve/module/core/regular/is_not_less.hpp b/include/eve/module/core/regular/is_not_less.hpp index d1dac2dba8..239d416968 100644 --- a/include/eve/module/core/regular/is_not_less.hpp +++ b/include/eve/module/core/regular/is_not_less.hpp @@ -45,7 +45,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_not_less.cpp} +//! @godbolt{doc/core/is_not_less.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -54,10 +54,6 @@ namespace eve //! The call `eve;::is_not_less[mask](x,y)` provides a masked version of `eve::is_not_less` //! which is equivalent to `if_else (mask, is_not_less(x), eve::false( eve::as(x,y)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_not_less.cpp} -//! //! * `almost` //! //! The expression `almost(is_not_less)(x, y, t)` where `x` and `y` must be @@ -68,9 +64,6 @@ namespace eve //! * if `t` is a positive integral_value then \f$(x \ge \mbox{prev}(y, t)\f$; //! * if `t` is omitted then the tolerance `t` default to `3*eps(as(x))`. //! -//! **Example** -//! -//! @godbolt{doc/core/fuzzy/is_not_less.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(is_not_less_, is_not_less); diff --git a/include/eve/module/core/regular/is_not_less_equal.hpp b/include/eve/module/core/regular/is_not_less_equal.hpp index b0b3800574..a4caf86625 100644 --- a/include/eve/module/core/regular/is_not_less_equal.hpp +++ b/include/eve/module/core/regular/is_not_less_equal.hpp @@ -44,7 +44,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_not_less_equal.cpp} +//! @godbolt{doc/core/is_not_less_equal.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -53,10 +53,6 @@ namespace eve //! The call `eve;::is_not_less_equal[mask](x,y)` provides a masked version of `eve::is_not_less_equal` //! which is equivalent to `if_else (mask, is_not_less_equal(x), eve::false( eve::as(x,y)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_not_less_equal.cpp} -//! //! * `definitely` //! //! The expression `definitely(is_not_less_equal)(x, y, t)` where `x` and `y` must be @@ -68,9 +64,6 @@ namespace eve //! - if `t` is a positive integral_value then \f$(x \ge \mbox{next}(y, t)\f$; //! - if `t` is omitted then the tolerance `t` default to `3*eps(as(x))`. //! -//! **Example** -//! -//! @godbolt{doc/core/fuzzy/is_not_less_equal.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(is_not_less_equal_, is_not_less_equal); diff --git a/include/eve/module/core/regular/is_not_nan.hpp b/include/eve/module/core/regular/is_not_nan.hpp index 2dcb3682a9..e335a62616 100644 --- a/include/eve/module/core/regular/is_not_nan.hpp +++ b/include/eve/module/core/regular/is_not_nan.hpp @@ -57,7 +57,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_not_nan.cpp} +//! @godbolt{doc/core/is_not_nan.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -66,10 +66,6 @@ namespace eve //! The call `eve;::is_not_nan[mask](x)` provides a masked version of `eve::is_not_nan` which is //! equivalent to `if_else (mask, is_not_nan(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_not_nan.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_not_nan = functor; diff --git a/include/eve/module/core/regular/is_not_real.hpp b/include/eve/module/core/regular/is_not_real.hpp index e6d715ff64..eddb34e1a0 100644 --- a/include/eve/module/core/regular/is_not_real.hpp +++ b/include/eve/module/core/regular/is_not_real.hpp @@ -62,7 +62,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_not_real.cpp} +//! @godbolt{doc/core/is_not_real.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -71,10 +71,6 @@ namespace eve //! The call `eve;::is_not_real[mask](x)` provides a masked version of `eve::is_not_real` which //! is equivalent to `if_else (mask, is_not_real(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_not_real.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_not_real = functor; diff --git a/include/eve/module/core/regular/is_odd.hpp b/include/eve/module/core/regular/is_odd.hpp index 7f1fe226b6..8b4a3d2fd5 100644 --- a/include/eve/module/core/regular/is_odd.hpp +++ b/include/eve/module/core/regular/is_odd.hpp @@ -66,7 +66,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_odd.cpp} +//! @godbolt{doc/core/is_odd.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -75,10 +75,6 @@ namespace eve //! The call `eve;::is_odd[mask](x)` provides a masked version of `eve::is_odd` which is //! equivalent to `if_else (mask, is_odd(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_odd.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_odd = functor; diff --git a/include/eve/module/core/regular/is_ordered.hpp b/include/eve/module/core/regular/is_ordered.hpp index ce5eed2546..dcd68ebe7a 100644 --- a/include/eve/module/core/regular/is_ordered.hpp +++ b/include/eve/module/core/regular/is_ordered.hpp @@ -45,7 +45,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_ordered.cpp} +//! @godbolt{doc/core/is_ordered.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -54,10 +54,6 @@ namespace eve //! The call `eve;::is_ordered[mask](x,y)` provides a masked version of `eve::is_ordered` which //! is equivalent to `if_else (mask, is_ordered(x), eve::false( eve::as(x,y)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_ordered.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(is_ordered_, is_ordered); diff --git a/include/eve/module/core/regular/is_positive.hpp b/include/eve/module/core/regular/is_positive.hpp index a2120e893f..5c5e5b0bd9 100644 --- a/include/eve/module/core/regular/is_positive.hpp +++ b/include/eve/module/core/regular/is_positive.hpp @@ -68,7 +68,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_positive.cpp} +//! @godbolt{doc/core/is_positive.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -77,10 +77,6 @@ namespace eve //! The call `eve;::is_positive[mask](x)` provides a masked version of `eve::is_positive` which //! is equivalent to `if_else (mask, is_positive(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_positive.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_positive = functor; diff --git a/include/eve/module/core/regular/is_pow2.hpp b/include/eve/module/core/regular/is_pow2.hpp index 49f4c0a07d..10c5c49899 100644 --- a/include/eve/module/core/regular/is_pow2.hpp +++ b/include/eve/module/core/regular/is_pow2.hpp @@ -29,10 +29,10 @@ namespace eve { return EVE_DISPATCH_CALL(t); } - + EVE_CALLABLE_OBJECT(is_pow2_t, is_pow2_); }; - + //================================================================================================ //! @addtogroup core_predicates //! @{ @@ -65,7 +65,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_pow2.cpp} +//! @godbolt{doc/core/is_pow2.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -74,14 +74,10 @@ namespace eve //! The call `eve;::is_pow2[mask](x)` provides a masked version of `eve::is_pow2` which is //! equivalent to `if_else (mask, is_pow2(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_pow2.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_pow2 = functor; - + namespace detail { template diff --git a/include/eve/module/core/regular/is_real.hpp b/include/eve/module/core/regular/is_real.hpp index 7bb70e608f..9e6f730797 100644 --- a/include/eve/module/core/regular/is_real.hpp +++ b/include/eve/module/core/regular/is_real.hpp @@ -57,7 +57,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_real.cpp} +//! @godbolt{doc/core/is_real.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -66,10 +66,6 @@ namespace eve //! The call `eve;::is_real[mask](x)` provides a masked version of `eve::is_real` which is //! equivalent to `if_else (mask, is_real(x), eve::false( eve::as(x)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_real.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_real = functor; diff --git a/include/eve/module/core/regular/is_unit.hpp b/include/eve/module/core/regular/is_unit.hpp index 08ab383383..f094490595 100644 --- a/include/eve/module/core/regular/is_unit.hpp +++ b/include/eve/module/core/regular/is_unit.hpp @@ -61,7 +61,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_unit.cpp} +//! @godbolt{doc/core/is_unit.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -70,10 +70,6 @@ namespace eve //! The call `eve;::is_unit[mask](x)` provides a masked version of `eve::is_unit` which is //! equivalent to `if_else (mask, is_unit(x), eve::false(eve::as())`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_unit.cpp} -//! //! @} //================================================================================================ inline constexpr auto is_unit = functor; diff --git a/include/eve/module/core/regular/is_unordered.hpp b/include/eve/module/core/regular/is_unordered.hpp index 9905b22426..d5ca068289 100644 --- a/include/eve/module/core/regular/is_unordered.hpp +++ b/include/eve/module/core/regular/is_unordered.hpp @@ -45,7 +45,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/is_unordered.cpp} +//! @godbolt{doc/core/is_unordered.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -54,10 +54,6 @@ namespace eve //! The call `eve;::is_unordered[mask](x,y)` provides a masked version of `eve::is_unordered` //! which is equivalent to `if_else (mask, is_unordered(x), eve::false( eve::as(x,y)))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/is_unordered.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(is_unordered_, is_unordered); diff --git a/include/eve/module/core/regular/ldexp.hpp b/include/eve/module/core/regular/ldexp.hpp index 004d773d78..415b1c9fbf 100644 --- a/include/eve/module/core/regular/ldexp.hpp +++ b/include/eve/module/core/regular/ldexp.hpp @@ -61,7 +61,7 @@ struct ldexp_t : elementwise_callable //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/ldexp.cpp} +//! @godbolt{doc/core/ldexp.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -69,9 +69,6 @@ struct ldexp_t : elementwise_callable //! //! The call `eve::ldexp[mask](x, n)` computes a value equivalent to `if_else(mask, ldexp(x, n), x)` //! -//! **Example** -//! @godbolt{doc/core/masked/ldexp.cpp} -//! //! * eve::pedantic //! //! The call `eve::ldexp[pedantic](x,n)` computes `eve::ldexp` but takes extra care to handling limit values. diff --git a/include/eve/module/core/regular/lerp.hpp b/include/eve/module/core/regular/lerp.hpp index 75fe069ea8..d94bf9e4f5 100644 --- a/include/eve/module/core/regular/lerp.hpp +++ b/include/eve/module/core/regular/lerp.hpp @@ -45,7 +45,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/lerp.cpp} +//! @godbolt{doc/core/lerp.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -55,9 +55,6 @@ namespace eve //! version of `lerp` which is //! equivalent to `if_else(mask, lerp(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/lerp.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(lerp_, lerp); diff --git a/include/eve/module/core/regular/lo.hpp b/include/eve/module/core/regular/lo.hpp index 26d2f84be7..a4c234af59 100644 --- a/include/eve/module/core/regular/lo.hpp +++ b/include/eve/module/core/regular/lo.hpp @@ -48,7 +48,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/lo.cpp} +//! @godbolt{doc/core/lo.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(lo_, lo); diff --git a/include/eve/module/core/regular/logical_and.hpp b/include/eve/module/core/regular/logical_and.hpp index 47393f8d42..ccc15d0d5c 100644 --- a/include/eve/module/core/regular/logical_and.hpp +++ b/include/eve/module/core/regular/logical_and.hpp @@ -54,7 +54,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/logical_and.cpp} +//! @godbolt{doc/core/logical_and.cpp} //! @} //================================================================================================ namespace tag diff --git a/include/eve/module/core/regular/logical_andnot.hpp b/include/eve/module/core/regular/logical_andnot.hpp index fd69e5d415..ec89f9e428 100644 --- a/include/eve/module/core/regular/logical_andnot.hpp +++ b/include/eve/module/core/regular/logical_andnot.hpp @@ -47,7 +47,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/logical_andnot.cpp} +//! @godbolt{doc/core/logical_andnot.cpp} //! @} //================================================================================================ namespace tag diff --git a/include/eve/module/core/regular/logical_not.hpp b/include/eve/module/core/regular/logical_not.hpp index cadfb6b7b4..6044d1d17b 100644 --- a/include/eve/module/core/regular/logical_not.hpp +++ b/include/eve/module/core/regular/logical_not.hpp @@ -52,7 +52,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/logical_not.cpp} +//! @godbolt{doc/core/logical_not.cpp} //! @} //================================================================================================ namespace tag diff --git a/include/eve/module/core/regular/logical_notand.hpp b/include/eve/module/core/regular/logical_notand.hpp index c2dba424a7..6774c322c6 100644 --- a/include/eve/module/core/regular/logical_notand.hpp +++ b/include/eve/module/core/regular/logical_notand.hpp @@ -47,7 +47,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/logical_notand.cpp} +//! @godbolt{doc/core/logical_notand.cpp} //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/logical_notor.hpp b/include/eve/module/core/regular/logical_notor.hpp index 7285e5b865..04c78ccb80 100644 --- a/include/eve/module/core/regular/logical_notor.hpp +++ b/include/eve/module/core/regular/logical_notor.hpp @@ -47,7 +47,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/logical_notor.cpp} +//! @godbolt{doc/core/logical_notor.cpp} //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/logical_or.hpp b/include/eve/module/core/regular/logical_or.hpp index 1fecfa9183..bcfb33553f 100644 --- a/include/eve/module/core/regular/logical_or.hpp +++ b/include/eve/module/core/regular/logical_or.hpp @@ -54,7 +54,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/logical_or.cpp} +//! @godbolt{doc/core/logical_or.cpp} //! @} //================================================================================================ namespace tag diff --git a/include/eve/module/core/regular/logical_ornot.hpp b/include/eve/module/core/regular/logical_ornot.hpp index 852ec0585b..3fc622a94e 100644 --- a/include/eve/module/core/regular/logical_ornot.hpp +++ b/include/eve/module/core/regular/logical_ornot.hpp @@ -48,7 +48,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/logical_ornot.cpp} +//! @godbolt{doc/core/logical_ornot.cpp} //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/logical_xor.hpp b/include/eve/module/core/regular/logical_xor.hpp index 01415aae7c..cee0648135 100644 --- a/include/eve/module/core/regular/logical_xor.hpp +++ b/include/eve/module/core/regular/logical_xor.hpp @@ -46,7 +46,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/logical_or.cpp} +//! @godbolt{doc/core/logical_or.cpp} //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/lohi.hpp b/include/eve/module/core/regular/lohi.hpp index 29bd36bba4..3043f3ecf1 100644 --- a/include/eve/module/core/regular/lohi.hpp +++ b/include/eve/module/core/regular/lohi.hpp @@ -66,7 +66,7 @@ struct lohi_t : elementwise_callable //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/lo.cpp} +//! @godbolt{doc/core/lo.cpp} //! @} //================================================================================================ inline constexpr auto lohi = functor; diff --git a/include/eve/module/core/regular/manhattan.hpp b/include/eve/module/core/regular/manhattan.hpp index b6ec695fe3..cf488bd6e1 100644 --- a/include/eve/module/core/regular/manhattan.hpp +++ b/include/eve/module/core/regular/manhattan.hpp @@ -65,7 +65,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/manhattan.cpp} +//! @godbolt{doc/core/manhattan.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -75,10 +75,6 @@ namespace eve //! version of `manhattan` which is //! equivalent to `if_else(mask, eve::manhattan(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/manhattan.cpp} -//! //! * eve::pedantic //! //! The call `eve::pedantic(eve::manhattan)(...)` computes @@ -86,9 +82,6 @@ namespace eve //! returning \f$\infty\f$ as soon as one of its parameter is infinite, //! regardless of possible `Nan` values. //! -//! **Example** -//! -//! @godbolt{doc/core/pedantic/manhattan.cpp} //! @} //================================================================================================ inline constexpr auto manhattan = functor; diff --git a/include/eve/module/core/regular/mantissa.hpp b/include/eve/module/core/regular/mantissa.hpp index 38bd5220db..8ff0ec7a59 100644 --- a/include/eve/module/core/regular/mantissa.hpp +++ b/include/eve/module/core/regular/mantissa.hpp @@ -50,7 +50,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/mantissa.cpp} +//! @godbolt{doc/core/mantissa.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(mantissa_, mantissa); diff --git a/include/eve/module/core/regular/max.hpp b/include/eve/module/core/regular/max.hpp index 25bdf2d505..895f6681dc 100644 --- a/include/eve/module/core/regular/max.hpp +++ b/include/eve/module/core/regular/max.hpp @@ -74,7 +74,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/max.cpp} +//! @godbolt{doc/core/max.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -84,10 +84,6 @@ namespace eve //! version of `max` which is //! equivalent to `if_else(mask, max(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/max.cpp} -//! //! * eve::pedantic, eve::numeric //! //! * The call `pedantic(max)(x,args,...)` ensures the conformity @@ -101,9 +97,6 @@ namespace eve //! inputs is not a `Nan`, the corresponding //! output element will not be a `Nan`. //! -//! **Example** -//! -//! @godbolt{doc/core/pedantic/max.cpp} //! @} //================================================================================================ inline constexpr auto max = functor; diff --git a/include/eve/module/core/regular/maxabs.hpp b/include/eve/module/core/regular/maxabs.hpp index c1dc871ebb..c3f160f246 100644 --- a/include/eve/module/core/regular/maxabs.hpp +++ b/include/eve/module/core/regular/maxabs.hpp @@ -67,7 +67,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/maxabs.cpp} +//! @godbolt{doc/core/maxabs.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -77,10 +77,6 @@ namespace eve //! version of `maxabs` which is //! equivalent to `if_else(mask, maxabs(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/maxabs.cpp} -//! //! * eve::pedantic, eve::numeric //! //! * The call `pedantic(maxabs)(x,args,...)` ensures the conformity @@ -94,9 +90,6 @@ namespace eve //! inputs is not a `Nan`, the corresponding //! output element will not be a `Nan`. //! -//! **Example** -//! -//! @godbolt{doc/core/pedantic/maxabs.cpp} //! @} //================================================================================================ inline constexpr auto maxabs = functor; diff --git a/include/eve/module/core/regular/maximum.hpp b/include/eve/module/core/regular/maximum.hpp index 571658baed..7e7405adaa 100644 --- a/include/eve/module/core/regular/maximum.hpp +++ b/include/eve/module/core/regular/maximum.hpp @@ -43,7 +43,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/maximum.cpp} +//! @godbolt{doc/core/maximum.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -53,10 +53,6 @@ namespace eve //! version of `maximum` which is //! equivalent to : ``maximum(if_else(mask, x, valmin(as(x))))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/maximum.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(maximum_, maximum); diff --git a/include/eve/module/core/regular/maxmag.hpp b/include/eve/module/core/regular/maxmag.hpp index 0e57530d24..df8b4207e1 100644 --- a/include/eve/module/core/regular/maxmag.hpp +++ b/include/eve/module/core/regular/maxmag.hpp @@ -77,7 +77,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/maxmag.cpp} +//! @godbolt{doc/core/maxmag.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -87,18 +87,11 @@ namespace eve //! version of `maxmag` which is //! equivalent to `if_else(mask, maxmag(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/maxmag.cpp} -//! //! * eve::pedantic, eve::numeric //! //! The behaviour of d(eve::maxmag)(x, y) (where d is one of these two decorators //! is identical except that if `|x| == |y|`, `d(max)` is used. //! -//! **Example** -//! -//! @godbolt{doc/core/pedantic/maxmag.cpp} //! @} //================================================================================================ inline constexpr auto maxmag = functor; diff --git a/include/eve/module/core/regular/min.hpp b/include/eve/module/core/regular/min.hpp index 5bbc789241..85463416e9 100644 --- a/include/eve/module/core/regular/min.hpp +++ b/include/eve/module/core/regular/min.hpp @@ -74,7 +74,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/min.cpp} +//! @godbolt{doc/core/min.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -84,10 +84,6 @@ namespace eve //! version of `min` which is //! equivalent to `if_else(mask, min(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/min.cpp} -//! //! * eve::pedantic, eve::numeric //! //! * The call `pedantic(min)(x,args,...)` ensures the conformity @@ -101,9 +97,6 @@ namespace eve //! inputs is not a `Nan`, the corresponding //! output element will not be a `Nan`. //! -//! **Example** -//! -//! @godbolt{doc/core/pedantic/min.cpp} //! @} //================================================================================================ inline constexpr auto min = functor; diff --git a/include/eve/module/core/regular/minabs.hpp b/include/eve/module/core/regular/minabs.hpp index d8c80b66cc..769158411d 100644 --- a/include/eve/module/core/regular/minabs.hpp +++ b/include/eve/module/core/regular/minabs.hpp @@ -67,7 +67,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/minabs.cpp} +//! @godbolt{doc/core/minabs.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -77,10 +77,6 @@ namespace eve //! version of `minabs` which is //! equivalent to `if_else(mask, minabs(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/minabs.cpp} -//! //! * eve::pedantic, eve::numeric //! //! * The call `pedantic(minabs)(x,args,...)` ensures the conformity @@ -94,9 +90,6 @@ namespace eve //! inputs is not a `Nan`, the corresponding //! output element will not be a `Nan`. //! -//! **Example** -//! -//! @godbolt{doc/core/pedantic/minabs.cpp} //! @} //================================================================================================ inline constexpr auto minabs = functor; diff --git a/include/eve/module/core/regular/minimum.hpp b/include/eve/module/core/regular/minimum.hpp index 64c21a9bc7..b425c7eaca 100644 --- a/include/eve/module/core/regular/minimum.hpp +++ b/include/eve/module/core/regular/minimum.hpp @@ -43,7 +43,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/minimum.cpp} +//! @godbolt{doc/core/minimum.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -53,10 +53,6 @@ namespace eve //! version of `minimum` which is //! equivalent to : ``minimum(if_else(mask, x, valmax(as(x))))`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/minimum.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(minimum_, minimum); diff --git a/include/eve/module/core/regular/minmag.hpp b/include/eve/module/core/regular/minmag.hpp index 87b335065c..2182bef451 100644 --- a/include/eve/module/core/regular/minmag.hpp +++ b/include/eve/module/core/regular/minmag.hpp @@ -76,7 +76,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/minmag.cpp} +//! @godbolt{doc/core/minmag.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -86,18 +86,11 @@ namespace eve //! version of `minmag` which is //! equivalent to `if_else(mask, minmag(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/minmag.cpp} -//! //! * eve::pedantic, eve::numeric //! //! The behaviour of d(eve::minmag)(x, y) (where d is one of these two decorators //! is identical except that if `|x| == |y|`, `d(max)` is used. //! -//! **Example** -//! -//! @godbolt{doc/core/pedantic/minmag.cpp} //! @} //================================================================================================ inline constexpr auto minmag = functor; diff --git a/include/eve/module/core/regular/minmax.hpp b/include/eve/module/core/regular/minmax.hpp index 97c3b1d11e..232b540b2e 100644 --- a/include/eve/module/core/regular/minmax.hpp +++ b/include/eve/module/core/regular/minmax.hpp @@ -80,7 +80,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/minmax.cpp} +//! @godbolt{doc/core/minmax.cpp} //! //! @groupheader{Semantic Modifiers} //! diff --git a/include/eve/module/core/regular/minus.hpp b/include/eve/module/core/regular/minus.hpp index ea0e3d299b..576345964f 100644 --- a/include/eve/module/core/regular/minus.hpp +++ b/include/eve/module/core/regular/minus.hpp @@ -50,7 +50,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/minus.cpp} +//! @godbolt{doc/core/minus.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -59,10 +59,6 @@ namespace eve //! The call `eve::minus[mask](x)` provides a masked version of `eve::minus` which is //! equivalent to `if_else (mask, eve::minus(x), x)`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/minus.cpp} -//! //! * eve::saturated //! //! The call `eve::saturated(eve::minus)(x)` computes a saturated version of eve::minus. @@ -70,10 +66,6 @@ namespace eve //! More specifically, for any signed integer value `x`, the expression //! `eve::saturated(eve::minus)(eve::valmin(as(x)))` evaluates to `eve::valmax(as(x))`. //! -//! **Example** -//! -//! @godbolt{doc/core/saturated/minus.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(minus_, minus); diff --git a/include/eve/module/core/regular/modf.hpp b/include/eve/module/core/regular/modf.hpp index 81fe12fb79..591c2fec92 100644 --- a/include/eve/module/core/regular/modf.hpp +++ b/include/eve/module/core/regular/modf.hpp @@ -69,7 +69,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/modf.cpp} +//! @godbolt{doc/core/modf.cpp} //! //! @groupheader{Semantic Modifiers} //! diff --git a/include/eve/module/core/regular/mul.hpp b/include/eve/module/core/regular/mul.hpp index eb21deac94..e805b3486c 100644 --- a/include/eve/module/core/regular/mul.hpp +++ b/include/eve/module/core/regular/mul.hpp @@ -48,7 +48,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/mul.cpp} +//! @godbolt{doc/core/mul.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -58,10 +58,6 @@ namespace eve //! version of `mul` which is //! equivalent to `if_else(mask, mul(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/mul.cpp} -//! //! * eve::saturated //! //! The call `saturated(mul)(args...)` computes the saturated multiplication `of the arguments. @@ -70,10 +66,6 @@ namespace eve //! converted to this type and the saturated multiplication applied recursively on all //! parameters. No overflow occurs. //! -//! **Example** -//! -//! @godbolt{doc/core/saturated/mul.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(mul_, mul); diff --git a/include/eve/module/core/regular/nb_values.hpp b/include/eve/module/core/regular/nb_values.hpp index d86fdc9fcb..589615e82e 100644 --- a/include/eve/module/core/regular/nb_values.hpp +++ b/include/eve/module/core/regular/nb_values.hpp @@ -45,7 +45,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/nb_values.cpp} +//! @godbolt{doc/core/nb_values.cpp} //================================================================================================ EVE_MAKE_CALLABLE(nb_values_, nb_values); } diff --git a/include/eve/module/core/regular/nearest.hpp b/include/eve/module/core/regular/nearest.hpp index e184a435f3..24d885aca5 100644 --- a/include/eve/module/core/regular/nearest.hpp +++ b/include/eve/module/core/regular/nearest.hpp @@ -69,7 +69,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/nearest.cpp} +//! @godbolt{doc/core/nearest.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -78,10 +78,6 @@ namespace eve //! The call `eve;::nearest[mask](x)` provides a masked version of `eve::nearest` which is //! equivalent to `if_else (mask, nearest(x), x)`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/nearest.cpp} -//! //! @} //================================================================================================ inline constexpr auto nearest = functor; diff --git a/include/eve/module/core/regular/negabsmax.hpp b/include/eve/module/core/regular/negabsmax.hpp index e365d5520d..e420a6c3f1 100644 --- a/include/eve/module/core/regular/negabsmax.hpp +++ b/include/eve/module/core/regular/negabsmax.hpp @@ -70,7 +70,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/negabsmax.cpp} +//! @godbolt{doc/core/negabsmax.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -79,10 +79,6 @@ namespace eve //! The call `eve::negabsmax[mask](x, ...)` provides a masked version of `eve::negabsmax` which //! is equivalent to `eve::if_else (mask, negabsmax(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/negabsmax.cpp} -//! //! * eve::pedantic, eve::numeric //! //! The call `d(eve::negabsmax)(...)`, where d is one of these two decorators, is equivalent to diff --git a/include/eve/module/core/regular/negabsmin.hpp b/include/eve/module/core/regular/negabsmin.hpp index 1165d1ad35..e52be9b0e8 100644 --- a/include/eve/module/core/regular/negabsmin.hpp +++ b/include/eve/module/core/regular/negabsmin.hpp @@ -70,7 +70,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/negabsmin.cpp} +//! @godbolt{doc/core/negabsmin.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -79,10 +79,6 @@ namespace eve //! The call `eve::negabsmin[mask](x, ...)` provides a masked version of `eve::negabsmin` which //! is equivalent to `eve::if_else (mask, negabsmin(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/negabsmin.cpp} -//! //! * eve::pedantic, eve::numeric //! //! The call `d(eve::negabsmin)(...)`, where d is one of these two decorators, is equivalent to diff --git a/include/eve/module/core/regular/negate.hpp b/include/eve/module/core/regular/negate.hpp index 0668a60107..00683f3d9a 100644 --- a/include/eve/module/core/regular/negate.hpp +++ b/include/eve/module/core/regular/negate.hpp @@ -46,7 +46,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/negate.cpp} +//! @godbolt{doc/core/negate.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -55,9 +55,6 @@ namespace eve //! The call `eve::negate[mask](x, ...)` provides a masked //! version of `negate` which is equivalent to `if_else(mask, negate(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/negate.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(negate_, negate); diff --git a/include/eve/module/core/regular/negatenz.hpp b/include/eve/module/core/regular/negatenz.hpp index b291ca363f..79e150adda 100644 --- a/include/eve/module/core/regular/negatenz.hpp +++ b/include/eve/module/core/regular/negatenz.hpp @@ -46,7 +46,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/negatenz.cpp} +//! @godbolt{doc/core/negatenz.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -55,9 +55,7 @@ namespace eve //! The call `eve::negatenz[mask](x, ...)` provides a masked //! version of `negatenz` which is //! equivalent to `if_else(mask, negatenz(x, ...), x)` -//! **Example** //! -//! @godbolt{doc/core/masked/negatenz.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(negatenz_, negatenz); diff --git a/include/eve/module/core/regular/negmaxabs.hpp b/include/eve/module/core/regular/negmaxabs.hpp index e3d67479d5..1b72f5f496 100644 --- a/include/eve/module/core/regular/negmaxabs.hpp +++ b/include/eve/module/core/regular/negmaxabs.hpp @@ -67,7 +67,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/negmaxabs.cpp} +//! @godbolt{doc/core/negmaxabs.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -76,10 +76,6 @@ namespace eve //! The call `eve::negmaxabs[mask](x, ...)` provides a masked version of `eve::negmaxabs` which //! is equivalent to `eve::if_else (mask, negmaxabs(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/negmaxabs.cpp} -//! //! * eve::pedantic, eve::numeric //! //! The call `d(eve::negmaxabs)(...)`, where d is one of these two decorators has the diff --git a/include/eve/module/core/regular/negminabs.hpp b/include/eve/module/core/regular/negminabs.hpp index a8c0b565a5..d5d166ad52 100644 --- a/include/eve/module/core/regular/negminabs.hpp +++ b/include/eve/module/core/regular/negminabs.hpp @@ -66,7 +66,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/negminabs.cpp} +//! @godbolt{doc/core/negminabs.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -75,10 +75,6 @@ namespace eve //! The call `eve::negminabs[mask](x, ...)` provides a masked version of `eve::negminabs` which //! is equivalent to `eve::if_else (mask, negminabs(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/negminabs.cpp} -//! //! * eve::pedantic, eve::numeric //! //! The call `d(eve::negminabs)(...)`, where d is one of these two decorators has the diff --git a/include/eve/module/core/regular/next.hpp b/include/eve/module/core/regular/next.hpp index 65f25cfc07..1e88afc5bb 100644 --- a/include/eve/module/core/regular/next.hpp +++ b/include/eve/module/core/regular/next.hpp @@ -55,7 +55,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/next.cpp} +//! @godbolt{doc/core/next.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -65,29 +65,17 @@ namespace eve //! version of `next` which is //! equivalent to `if_else(mask, next(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/next.cpp} -//! //! * eve::pedantic //! //! The call `eve::pedantic(eve::next)(x, ...)` provides a pedantic //! version of `next` which ensures that the successor of eve::mzero is eve::zero //! for floating points entries //! -//! **Example** -//! -//! @godbolt{doc/core/masked/next.cpp} -//! //! * eve::saturated //! //! The call `eve::pedantic(eve::next)(x, ...)` provides a pedantic //! version of `next` which ensures that eve::minf and eve::nan are fixed points. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/next.cpp} -//! //! @} //================================================================================================ namespace tag diff --git a/include/eve/module/core/regular/nextafter.hpp b/include/eve/module/core/regular/nextafter.hpp index 3c6a7a525b..050cc1c5a8 100644 --- a/include/eve/module/core/regular/nextafter.hpp +++ b/include/eve/module/core/regular/nextafter.hpp @@ -54,7 +54,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/nextafter.cpp} +//! @godbolt{doc/core/nextafter.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -64,10 +64,6 @@ namespace eve //! version of `nextafter` which is //! equivalent to `if_else(mask, nextafter(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/nextafter.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(nextafter_, nextafter); diff --git a/include/eve/module/core/regular/none.hpp b/include/eve/module/core/regular/none.hpp index 59f5bd9d6d..0de1984e80 100644 --- a/include/eve/module/core/regular/none.hpp +++ b/include/eve/module/core/regular/none.hpp @@ -51,7 +51,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/none.cpp} +//! @godbolt{doc/core/none.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -61,10 +61,6 @@ namespace eve //! version of `none` which is //! equivalent to : all not masked elements are zero. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/none.cpp} -//! //! @} //================================================================================================ EVE_MAKE_CALLABLE(none_, none); diff --git a/include/eve/module/core/regular/oneminus.hpp b/include/eve/module/core/regular/oneminus.hpp index 5010fcabe8..47efe78a37 100644 --- a/include/eve/module/core/regular/oneminus.hpp +++ b/include/eve/module/core/regular/oneminus.hpp @@ -48,7 +48,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/oneminus.cpp} +//! @godbolt{doc/core/oneminus.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -58,18 +58,11 @@ namespace eve //! version of `oneminus` which is //! equivalent to `if_else(mask, oneminus(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/oneminus.cpp} -//! //! * eve::saturated //! //! The call `saturated(oneminus)(x)` is semantically equivalent to `eve::saturated(eve::sub)( //! eve::one (as(x)), x)` and is never undefined. //! -//! **Example** -//! -//! @godbolt{doc/core/saturated/oneminus.cpp} //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/plus.hpp b/include/eve/module/core/regular/plus.hpp index c34f5de725..d77fdc369e 100644 --- a/include/eve/module/core/regular/plus.hpp +++ b/include/eve/module/core/regular/plus.hpp @@ -47,7 +47,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/plus.cpp} +//! @godbolt{doc/core/plus.cpp} //! //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/popcount.hpp b/include/eve/module/core/regular/popcount.hpp index 1ca7aabbe0..c80d68eb90 100644 --- a/include/eve/module/core/regular/popcount.hpp +++ b/include/eve/module/core/regular/popcount.hpp @@ -44,7 +44,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/popcount.cpp} +//! @godbolt{doc/core/popcount.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(popcount_, popcount); diff --git a/include/eve/module/core/regular/prev.hpp b/include/eve/module/core/regular/prev.hpp index 969d525622..fa7860de14 100644 --- a/include/eve/module/core/regular/prev.hpp +++ b/include/eve/module/core/regular/prev.hpp @@ -55,7 +55,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/prev.cpp} +//! @godbolt{doc/core/prev.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -65,10 +65,6 @@ namespace eve //! version of `prev` which is //! equivalent to `if_else(mask, prev(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/prev.cpp} -//! //! @} //================================================================================================ namespace tag diff --git a/include/eve/module/core/regular/rat.hpp b/include/eve/module/core/regular/rat.hpp index 8ea1826691..36cefcf843 100644 --- a/include/eve/module/core/regular/rat.hpp +++ b/include/eve/module/core/regular/rat.hpp @@ -75,7 +75,7 @@ struct rat_t : elementwise_callable //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/rat.cpp} +//! @godbolt{doc/core/rat.cpp} //! @} //================================================================================================ inline constexpr auto rat = functor; diff --git a/include/eve/module/core/regular/rec.hpp b/include/eve/module/core/regular/rec.hpp index 7102a2d12f..0e7484aa13 100644 --- a/include/eve/module/core/regular/rec.hpp +++ b/include/eve/module/core/regular/rec.hpp @@ -51,7 +51,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/rec.cpp} +//! @godbolt{doc/core/rec.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -60,10 +60,6 @@ namespace eve //! The call `eve;::rec[mask](x)` provides a masked version of `eve::rec` which is //! equivalent to `if_else (mask, rec(x), x)`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/rec.cpp} -//! //! * eve::raw //! //! The call `raw(rec)(x)`, call a proper system intrinsic if one exists, but with possibly diff --git a/include/eve/module/core/regular/reduce.hpp b/include/eve/module/core/regular/reduce.hpp index 94811606c7..a772ff3122 100644 --- a/include/eve/module/core/regular/reduce.hpp +++ b/include/eve/module/core/regular/reduce.hpp @@ -42,7 +42,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/reduce.cpp} +//! @godbolt{doc/core/reduce.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(reduce_, reduce); diff --git a/include/eve/module/core/regular/reldist.hpp b/include/eve/module/core/regular/reldist.hpp index be28feda1e..47ef930716 100644 --- a/include/eve/module/core/regular/reldist.hpp +++ b/include/eve/module/core/regular/reldist.hpp @@ -43,12 +43,8 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/reldist.cpp} +//! @godbolt{doc/core/reldist.cpp} //! -//! -//! **Example** -//! -//! @godbolt{doc/core/saturated/reldist.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(reldist_, reldist); diff --git a/include/eve/module/core/regular/rem.hpp b/include/eve/module/core/regular/rem.hpp index f1118ef3c4..b11438d555 100644 --- a/include/eve/module/core/regular/rem.hpp +++ b/include/eve/module/core/regular/rem.hpp @@ -53,7 +53,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/rem.cpp} +//! @godbolt{doc/core/rem.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -63,10 +63,6 @@ namespace eve //! version of `rem` which is //! equivalent to `if_else(mask, rem(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/rem.cpp} -//! //! * eve::toward_zero //! //! The call `toward_zero(rem)(x, y)` computes `x-towardzero_(div)(x, y)*y`. @@ -98,9 +94,6 @@ namespace eve //! * If `y` is \f$\pm0\f$, NaN is returned //! * If either argument is a Nan, NaN is returned //! -//! **Example** -//! -//! @godbolt{doc/core/roundings/rem.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(rem_, rem); diff --git a/include/eve/module/core/regular/rotate.hpp b/include/eve/module/core/regular/rotate.hpp index a1fe9223ae..7f25bd4956 100644 --- a/include/eve/module/core/regular/rotate.hpp +++ b/include/eve/module/core/regular/rotate.hpp @@ -49,7 +49,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/rotate.cpp} +//! @godbolt{doc/core/rotate.cpp} //! //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/round.hpp b/include/eve/module/core/regular/round.hpp index fc3b331a63..1601790666 100644 --- a/include/eve/module/core/regular/round.hpp +++ b/include/eve/module/core/regular/round.hpp @@ -44,7 +44,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/round.cpp} +//! @godbolt{doc/core/round.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -53,10 +53,6 @@ namespace eve //! The call `eve;::round[mask](x)` provides a masked version of `eve::round` which is //! equivalent to `if_else (mask, round(x), x)`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/round.cpp} -//! //! * eve::downward //! //! The expression `eve::downward(eve::round)(x)` is equivalent to `eve::floor(x)`. @@ -73,7 +69,6 @@ namespace eve //! //! The expression `eve::toward_zero(eve::round)(x)` is equivalent to `eve::trunc(x)`. //! -//! @godbolt{doc/core/roundings/round.cpp} //! @} //================================================================================================ EVE_MAKE_CALLABLE(round_, round); diff --git a/include/eve/module/core/regular/roundscale.hpp b/include/eve/module/core/regular/roundscale.hpp index bd31fa061b..dc5590dba3 100644 --- a/include/eve/module/core/regular/roundscale.hpp +++ b/include/eve/module/core/regular/roundscale.hpp @@ -51,7 +51,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/roundscale.cpp} +//! @godbolt{doc/core/roundscale.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -60,17 +60,12 @@ namespace eve //! The call `eve;::roundscale[mask](x, scale)` provides a masked version of `eve::roundscale` //! which is equivalent to `if_else (mask, roundscale(x, scale), x)`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/roundscale.cpp} -//! //! * eve::to_nearest, eve::toward_zero, eve::upward, eve::downward //! //! If d is one of these 4 decorators //! The call `d(roundscale)(x)`, call is equivalent to //! `eve::ldexp(d(eve::round)(eve::ldexp(a0,scale), -scale))` //! -//! @godbolt{doc/core/roundings/roundscale.cpp} //! @} //================================================================================================ namespace tag diff --git a/include/eve/module/core/regular/rshl.hpp b/include/eve/module/core/regular/rshl.hpp index 2bdba9905b..bf6c8be0e4 100644 --- a/include/eve/module/core/regular/rshl.hpp +++ b/include/eve/module/core/regular/rshl.hpp @@ -62,7 +62,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/rshl.cpp} +//! @godbolt{doc/core/rshl.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -72,9 +72,6 @@ namespace eve //! version of `rshl` which is //! equivalent to `if_else(mask, rshl(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/rshl.cpp} //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/rshr.hpp b/include/eve/module/core/regular/rshr.hpp index 53d9be5493..b37203db5a 100644 --- a/include/eve/module/core/regular/rshr.hpp +++ b/include/eve/module/core/regular/rshr.hpp @@ -62,7 +62,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/rshr.cpp} +//! @godbolt{doc/core/rshr.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -72,9 +72,6 @@ namespace eve //! version of `rshr` which is //! equivalent to `if_else(mask, rshr(x, ...), x)` //! -//! **Example** -//! -//! @godbolt{doc/core/masked/rshr.cpp} //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/rsqrt.hpp b/include/eve/module/core/regular/rsqrt.hpp index 42c5c55a4b..316ab61f2e 100644 --- a/include/eve/module/core/regular/rsqrt.hpp +++ b/include/eve/module/core/regular/rsqrt.hpp @@ -45,7 +45,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/rsqrt.cpp} +//! @godbolt{doc/core/rsqrt.cpp} //! //! @groupheader{Semantic Modifiers} //! @@ -54,10 +54,6 @@ namespace eve //! The call `eve;::rsqrt[mask](x)` provides a masked version of `eve::rsqrt` which is //! equivalent to `if_else (mask, rsqrt(x), x)`. //! -//! **Example** -//! -//! @godbolt{doc/core/masked/rsqrt.cpp} -//! //! * eve::raw //! //! The call `raw(rsqrt)(x)`, call a proper system intrinsic if one exists, but with possibly diff --git a/include/eve/module/core/regular/saturate.hpp b/include/eve/module/core/regular/saturate.hpp index c594e12055..1fd7a377a7 100644 --- a/include/eve/module/core/regular/saturate.hpp +++ b/include/eve/module/core/regular/saturate.hpp @@ -55,7 +55,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/saturate.cpp} +//! @godbolt{doc/core/saturate.cpp} //! //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/scatter.hpp b/include/eve/module/core/regular/scatter.hpp index f5e22478de..5a3159e9e2 100644 --- a/include/eve/module/core/regular/scatter.hpp +++ b/include/eve/module/core/regular/scatter.hpp @@ -83,7 +83,7 @@ struct scatter_t : callable; diff --git a/include/eve/module/core/regular/try_each_group_position.hpp b/include/eve/module/core/regular/try_each_group_position.hpp index 5fea6f5214..a4f2811878 100644 --- a/include/eve/module/core/regular/try_each_group_position.hpp +++ b/include/eve/module/core/regular/try_each_group_position.hpp @@ -43,7 +43,7 @@ namespace eve //! //! @groupheader{Example} //! - //! @godbolt{doc/core/regular/try_each_group_position.cpp} + //! @godbolt{doc/core/try_each_group_position.cpp} //! //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/two_add.hpp b/include/eve/module/core/regular/two_add.hpp index f825b7189d..b6f3e167d5 100644 --- a/include/eve/module/core/regular/two_add.hpp +++ b/include/eve/module/core/regular/two_add.hpp @@ -68,7 +68,7 @@ struct two_add_t : elementwise_callable //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/two_add.cpp} +//! @godbolt{doc/core/two_add.cpp} //! //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/two_prod.hpp b/include/eve/module/core/regular/two_prod.hpp index 66f56a83c6..0c0a4e3490 100644 --- a/include/eve/module/core/regular/two_prod.hpp +++ b/include/eve/module/core/regular/two_prod.hpp @@ -67,7 +67,7 @@ struct two_prod_t : elementwise_callable //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/two_prod.cpp} +//! @godbolt{doc/core/two_prod.cpp} //! //! @} //================================================================================================ diff --git a/include/eve/module/core/regular/ulpdist.hpp b/include/eve/module/core/regular/ulpdist.hpp index d1148894fa..91d23b3622 100644 --- a/include/eve/module/core/regular/ulpdist.hpp +++ b/include/eve/module/core/regular/ulpdist.hpp @@ -47,7 +47,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/ulpdist.cpp} +//! @godbolt{doc/core/ulpdist.cpp} //! //! @} //================================================================================================ diff --git a/include/eve/module/math/regular/significants.hpp b/include/eve/module/math/regular/significants.hpp index a3fc7706e4..7b9f26d729 100644 --- a/include/eve/module/math/regular/significants.hpp +++ b/include/eve/module/math/regular/significants.hpp @@ -63,7 +63,7 @@ namespace eve //! //! @groupheader{Example} //! -//! @godbolt{doc/core/regular/significants.cpp} +//! @godbolt{doc/core/significants.cpp} //! @} inline constexpr auto significants = functor; diff --git a/test/doc/CMakeLists.txt b/test/doc/CMakeLists.txt index bf1109d4a7..8aa9ab9da8 100644 --- a/test/doc/CMakeLists.txt +++ b/test/doc/CMakeLists.txt @@ -28,37 +28,15 @@ add_dependencies(doc.exe doc.combinatorial.exe ) glob_unit("doc" ${doc_root} "combinatorial/regular/*.cpp" ) glob_unit("doc" ${doc_root} "combinatorial/conversion/*.cpp" ) -##================================================================================================== -## GLOB and process complex doc tests -##================================================================================================== -# add_custom_target(doc.complex.exe ) -# add_dependencies(doc.exe doc.complex.exe ) -# glob_unit("doc" ${doc_root} "complex/regular/*.cpp" ) -# glob_unit("doc" ${doc_root} "complex/pedantic/*.cpp" ) - -##================================================================================================== -## GLOB and process quaternion doc tests -##================================================================================================== -# add_custom_target(doc.quaternion.exe ) -# add_dependencies(doc.exe doc.quaternion.exe ) -# glob_unit("doc" ${doc_root} "quaternion/regular/*.cpp" ) - ##================================================================================================== ## GLOB and process core doc tests ##================================================================================================== add_custom_target(doc.core.exe ) add_dependencies(doc.exe doc.core.exe ) -glob_unit("doc" ${doc_root} "core/compress/*.cpp" ) +glob_unit("doc" ${doc_root} "core/compress/*.cpp" ) glob_unit("doc" ${doc_root} "core/constant/*.cpp" ) -glob_unit("doc" ${doc_root} "core/fuzzy/*.cpp" ) -glob_unit("doc" ${doc_root} "core/masked/*.cpp" ) glob_unit("doc" ${doc_root} "core/named_shuffles/*.cpp" ) -glob_unit("doc" ${doc_root} "core/pedantic/*.cpp" ) -glob_unit("doc" ${doc_root} "core/raw/*.cpp" ) -glob_unit("doc" ${doc_root} "core/regular/*.cpp" ) -glob_unit("doc" ${doc_root} "core/roundings/*.cpp" ) -glob_unit("doc" ${doc_root} "core/saturated/*.cpp" ) -glob_unit("doc" é{doc_root} "core/*.cpp" ) +glob_unit("doc" ${doc_root} "core/*.cpp" ) ##================================================================================================== ## GLOB and process elliptic doc tests diff --git a/test/doc/core/regular/abs.cpp b/test/doc/core/abs.cpp similarity index 60% rename from test/doc/core/regular/abs.cpp rename to test/doc/core/abs.cpp index d9fb4745d4..5a1a9a380b 100644 --- a/test/doc/core/regular/abs.cpp +++ b/test/doc/core/abs.cpp @@ -11,10 +11,13 @@ int main() wide_it pi = {-1, 2, -3, -32768}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> abs(pf) = " << eve::abs(pf) << '\n' - << "<- pi = " << pi << '\n' - << "-> abs(pi) = " << eve::abs(pi) << '\n'; + << "<- pf = " << pf << '\n' + << "-> abs(pf) = " << eve::abs(pf) << '\n' + << "<- pi = " << pi << '\n' + << "-> abs(pi) = " << eve::abs(pi) << '\n' + << "-> eve::abs[saturated](pi) = " << eve::abs[eve::saturated](pi) << '\n' + << "-> abs[pi > -2](pi) = " << eve::abs[pi > -2](pi) << '\n'; + return 0; float xf = -32768.0f; std::int16_t xi = -32768; diff --git a/test/doc/core/regular/absmax.cpp b/test/doc/core/absmax.cpp similarity index 100% rename from test/doc/core/regular/absmax.cpp rename to test/doc/core/absmax.cpp diff --git a/test/doc/core/regular/absmin.cpp b/test/doc/core/absmin.cpp similarity index 100% rename from test/doc/core/regular/absmin.cpp rename to test/doc/core/absmin.cpp diff --git a/test/doc/core/regular/add.cpp b/test/doc/core/add.cpp similarity index 84% rename from test/doc/core/regular/add.cpp rename to test/doc/core/add.cpp index f870ec71d7..a5fbf9663a 100644 --- a/test/doc/core/regular/add.cpp +++ b/test/doc/core/add.cpp @@ -10,10 +10,11 @@ int main() wf_t pf = {3, 2.5, -32.7, 1327.43}, qf = {4.2, 1.5, -100.834, 10.02}; std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> add(pi, qi) = " << eve::add(pi, qi) << '\n' + << " <- pi = " << pi << '\n' + << " <- qi = " << qi << '\n' + << " -> add(pi, qi) = " << eve::add(pi, qi) << '\n' << " -> pi + qi = " << pi + qi << '\n' + << " -> add[pi < qi](pi, qi) = " << eve::add[pi < qi](pi, qi) << '\n' << " -> saturated(add)(pi, qi) = " << eve::saturated(eve::add)(pi, qi) << '\n' << " -> pf + qf = " << pf + qf << '\n'; diff --git a/test/doc/core/regular/agm.cpp b/test/doc/core/agm.cpp similarity index 65% rename from test/doc/core/regular/agm.cpp rename to test/doc/core/agm.cpp index f2e0159292..c0673ef397 100644 --- a/test/doc/core/regular/agm.cpp +++ b/test/doc/core/agm.cpp @@ -11,9 +11,10 @@ int main() wf_t qf = {4, 1, 1, eve::inf(eve::as())}; std::cout << "---- simd" << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> agm(pf, qf) = " << eve::agm(pf, qf) << '\n'; + << " <- pf = " << pf << '\n' + << " <- qf = " << qf << '\n' + << " -> agm(pf, qf) = " << eve::agm(pf, qf) << '\n' + << " -> agm[pf < qf](pf, qf) = " << eve::agm[pf < qf](pf, qf) << '\n'; double xi = 3, yi = 4; diff --git a/test/doc/core/regular/all.cpp b/test/doc/core/all.cpp similarity index 59% rename from test/doc/core/regular/all.cpp rename to test/doc/core/all.cpp index b6a63c5cbe..d25fcd3f38 100644 --- a/test/doc/core/regular/all.cpp +++ b/test/doc/core/all.cpp @@ -10,10 +10,11 @@ int main() wide_it qi = {-1.0f, 2.0f, -3.0f, -32768.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> all(pf) = " << eve::all(pf <= 0) << '\n' - << "<- qi = " << qi << '\n' - << "-> all(qi) = " << eve::all(qi <= 0) << '\n'; + << "<- pf = " << pf << '\n' + << "-> all(pf) = " << eve::all(pf <= 0) << '\n' + << "-> all[ignore_first(1)](pf > 0.5f) = " << eve::all[eve::ignore_first(1)](pf > 0.5) << '\n' + << "<- qi = " << qi << '\n' + << "-> all(qi) = " << eve::all(qi <= 0) << '\n'; float xf = -0.0f; float yf = -3.0f; diff --git a/test/doc/core/regular/any.cpp b/test/doc/core/any.cpp similarity index 59% rename from test/doc/core/regular/any.cpp rename to test/doc/core/any.cpp index 16490e60dd..12d18e04f0 100644 --- a/test/doc/core/regular/any.cpp +++ b/test/doc/core/any.cpp @@ -10,10 +10,11 @@ int main() wide_it qi = {-1.0f, 02.0f, -3.0f, -0.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> any(pf != 0) = " << eve::any(pf != 0) << '\n' - << "<- qi = " << qi << '\n' - << "-> any(qi != 0) = " << eve::any(qi != 0) << '\n'; + << "<- pf = " << pf << '\n' + << "-> any(pf != 0) = " << eve::any(pf != 0) << '\n' + << "-> any[ignore_first(1)](pf > 0.5f) = " << eve::any[eve::ignore_first(1)](pf > 0.5f) << '\n' + << "<- qi = " << qi << '\n' + << "-> any(qi != 0) = " << eve::any(qi != 0) << '\n'; float xf = -0.0f; float yf = -3.0f; diff --git a/test/doc/core/average.cpp b/test/doc/core/average.cpp new file mode 100644 index 0000000000..9dc9f1b878 --- /dev/null +++ b/test/doc/core/average.cpp @@ -0,0 +1,35 @@ +#include +#include +#include +#include + +int main() +{ + using w_t = eve::wide>; + w_t pi = {3, 2, 3, 3}; + w_t qi = {4, 1, 1, eve::valmax(eve::as())}; + + std::cout << "---- simd" << '\n' + << " <- pi = " << pi << '\n' + << " <- qi = " << qi << '\n' + << " -> average(pi, qi) = " << eve::average(pi, qi) << '\n'; + + + std::uint32_t xi = 3, yi = 4; + + std::cout << "---- scalar" << '\n' + << " xi = " << xi << '\n' + << " yi = " << yi << '\n' + << " -> average(xi, yi) = " << eve::average(xi, yi) << '\n'; + + using w_ft = eve::wide>; + w_ft pf = {3, 4, 3, 10}, qf = {4, 1, 1, 15};; + std::cout << "---- multi" << '\n' + << " <- pf = " << pf << '\n' + << " <- qf = " << qf << '\n' + << " -> average(pf, 0.0f, qf, pf, 11.0f) = " << eve::average(pf, 0.0f, qf, pf, 11.0f) << '\n' + << " -> average[raw](pf, 0.0f, pf, qf, 11.0f) = " << eve::average[eve::raw](pf, 0.0f, pf, qf, 11.0f) << '\n'; + + std::cout << "---- multi parameters" << '\n'; + return 0; +} diff --git a/test/doc/core/regular/binarize.cpp b/test/doc/core/binarize.cpp similarity index 100% rename from test/doc/core/regular/binarize.cpp rename to test/doc/core/binarize.cpp diff --git a/test/doc/core/regular/binarize_not.cpp b/test/doc/core/binarize_not.cpp similarity index 100% rename from test/doc/core/regular/binarize_not.cpp rename to test/doc/core/binarize_not.cpp diff --git a/test/doc/core/bit_and.cpp b/test/doc/core/bit_and.cpp new file mode 100644 index 0000000000..fa8da301c5 --- /dev/null +++ b/test/doc/core/bit_and.cpp @@ -0,0 +1,31 @@ + +#include +#include + +int main() +{ + using w_t = eve::wide>; + w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; + std::uint32_t z = 5; + std::cout << "---- simd" << '\n' + << " <- pi = " << pi << '\n' + << " <- qi = " << qi << '\n' + << " <- z = " << z << '\n' + << " -> bit_and(pi, qi) = " << eve::bit_and(pi, qi) << '\n' + << " -> bit_and(z, qi) = " << eve::bit_and(z, qi) << '\n' + << " -> bit_and(pi, z ) = " << eve::bit_and(pi, z) << '\n' + << " -> bit_and[pi bit_and(xi, mask) = " << eve::bit_and(xi, mask) << '\n'; + + std::cout << "---- multi parameters" << '\n' + << " -> bit_and(pi, qi, 3, 5) = " << eve::bit_and(pi, qi, 3, 5) << '\n'; + + return 0; +} diff --git a/test/doc/core/bit_andnot.cpp b/test/doc/core/bit_andnot.cpp new file mode 100644 index 0000000000..574e93ddff --- /dev/null +++ b/test/doc/core/bit_andnot.cpp @@ -0,0 +1,27 @@ + +#include +#include + +int main() +{ + using w_t = eve::wide>; + w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; + std::uint32_t z = 5; + std::cout << "---- simd" << '\n' + << " <- pi = " << pi << '\n' + << " <- qi = " << qi << '\n' + << " <- z = " << z << '\n' + << " -> bit_andnot(pi, qi) = " << eve::bit_andnot(pi, qi) << '\n' + << " -> bit_andnot(qi, z ) = " << eve::bit_andnot(qi, z) << '\n' + << " -> bit_andnot(pi, z ) = " << eve::bit_andnot(pi, z) << '\n' + << " -> bit_andnot[pi bit_andnot(xi, mask) = " << eve::bit_andnot(xi, mask) << '\n'; + return 0; +} diff --git a/test/doc/core/regular/bit_cast.cpp b/test/doc/core/bit_cast.cpp similarity index 100% rename from test/doc/core/regular/bit_cast.cpp rename to test/doc/core/bit_cast.cpp diff --git a/test/doc/core/regular/bit_ceil.cpp b/test/doc/core/bit_ceil.cpp similarity index 66% rename from test/doc/core/regular/bit_ceil.cpp rename to test/doc/core/bit_ceil.cpp index b9498c851f..749d60a9a7 100644 --- a/test/doc/core/regular/bit_ceil.cpp +++ b/test/doc/core/bit_ceil.cpp @@ -9,8 +9,9 @@ int main() wide_it pi = {14, 1, 3, 7, 20, 23000, 0, 27}; std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> bit_ceil(pi) = " << eve::bit_ceil(pi) << '\n'; + << "<- pi = " << pi << '\n' + << "-> bit_ceil[pi > 4](pi) = " << eve::bit_ceil[pi > 4](pi) << '\n' + << "-> bit_ceil(pi) = " << eve::bit_ceil(pi) << '\n'; std::uint32_t xf = 48; diff --git a/test/doc/core/masked/bit_flip.cpp b/test/doc/core/bit_flip.cpp similarity index 60% rename from test/doc/core/masked/bit_flip.cpp rename to test/doc/core/bit_flip.cpp index 940571959a..f755f4355f 100644 --- a/test/doc/core/masked/bit_flip.cpp +++ b/test/doc/core/bit_flip.cpp @@ -11,7 +11,12 @@ int main() wide_it pi = {1, 3, 7, 15, 31, 63, 127, 255}; std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' + << "<- pi = " << pi << '\n' + << "-> bit_flip(pi, 1) = " << eve::bit_flip(pi, 1) << '\n' + << "-> bit_flip(pi, 2) = " << eve::bit_flip(pi, 2) << '\n' + << "-> bit_flip(pi, 3) = " << eve::bit_flip(pi, 3) << '\n' + << "-> bit_flip(pi, 4) = " << eve::bit_flip(pi, 4) << '\n' + << "-> bit_flip(pi, 8) = " << eve::bit_flip(pi, 8) << '\n' << "-> bit_flip[pi > 15](pi, 1) = " << eve::bit_flip[pi > 15](pi, 1) << '\n' << "-> bit_flip[pi > 15](pi, 2) = " << eve::bit_flip[pi > 15](pi, 2) << '\n' << "-> bit_flip[pi > 15](pi, 3) = " << eve::bit_flip[pi > 15](pi, 3) << '\n' diff --git a/test/doc/core/regular/bit_floor.cpp b/test/doc/core/bit_floor.cpp similarity index 66% rename from test/doc/core/regular/bit_floor.cpp rename to test/doc/core/bit_floor.cpp index ef0a544446..d4e8d9b748 100644 --- a/test/doc/core/regular/bit_floor.cpp +++ b/test/doc/core/bit_floor.cpp @@ -9,8 +9,9 @@ int main() wide_it pi = {14, 1, 3, 7, 20, 23000, 0, 27}; std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> bit_floor(pi) = " << eve::bit_floor(pi) << '\n'; + << "<- pi = " << pi << '\n' + << "-> bit_floor(pi) = " << eve::bit_floor(pi) << '\n' + << "-> bit_floor[pi > 4](pi) = " << eve::bit_floor[pi > 4](pi) << '\n'; std::uint32_t xf = 48; diff --git a/test/doc/core/regular/bit_mask.cpp b/test/doc/core/bit_mask.cpp similarity index 56% rename from test/doc/core/regular/bit_mask.cpp rename to test/doc/core/bit_mask.cpp index 4ead7fc78a..1daa6b47e2 100644 --- a/test/doc/core/regular/bit_mask.cpp +++ b/test/doc/core/bit_mask.cpp @@ -11,10 +11,12 @@ int main() wide_ft pf = {14.0, 1.0, -0.0, 0.0, 16.0, 23000.0, eve::inf(eve::as()), 27.0}; std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "<- pf = " << pf << '\n' - << "-> bit_mask(pi) = " << eve::bit_mask(pi) << '\n' - << "-> bit_mask(pf) = " << eve::bit_mask(pf) << '\n'; + << "<- pi = " << pi << '\n' + << "<- pf = " << pf << '\n' + << "-> bit_mask(pi) = " << eve::bit_mask(pi) << '\n' + << "-> bit_mask(pf) = " << eve::bit_mask(pf) << '\n' + << "-> bit_mask[pi > 4](pi) = " << eve::bit_mask[pi > 4](pi) << '\n' + << "-> bit_mask[pf > 4](pf) = " << eve::bit_mask[pf > 4](pf) << '\n'; std::uint32_t xf = 48; diff --git a/test/doc/core/regular/bit_not.cpp b/test/doc/core/bit_not.cpp similarity index 64% rename from test/doc/core/regular/bit_not.cpp rename to test/doc/core/bit_not.cpp index 7cf6bec01c..401efcbffb 100644 --- a/test/doc/core/regular/bit_not.cpp +++ b/test/doc/core/bit_not.cpp @@ -8,8 +8,9 @@ int main() wide_it pi = {14, 1, 3, 0}; std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> bit_not(pi) = " << eve::bit_not(pi) << '\n'; + << "<- pi = " << pi << '\n' + << "-> bit_not(pi) = " << eve::bit_not(pi) << '\n' + << "-> bit_not[pi > 2](pi) = " << eve::bit_not[pi > 2](pi) << '\n'; std::uint32_t xf = 48; diff --git a/test/doc/core/regular/bit_notand.cpp b/test/doc/core/bit_notand.cpp similarity index 55% rename from test/doc/core/regular/bit_notand.cpp rename to test/doc/core/bit_notand.cpp index 4e219bbf84..c5a6455b6d 100644 --- a/test/doc/core/regular/bit_notand.cpp +++ b/test/doc/core/bit_notand.cpp @@ -8,12 +8,12 @@ int main() w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; std::uint32_t z = 5; std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " <- z = " << z << '\n' - << " -> bit_notand(pi, qi) = " << eve::bit_notand(pi, qi) << '\n' - // << " -> bit_notand(qi, z ) = " << eve::bit_notand(qi, z) << '\n' -// << " -> bit_notand(pi, z ) = " << eve::bit_notand(pi, z) << '\n' + << " <- pi = " << pi << '\n' + << " <- qi = " << qi << '\n' + << " <- z = " << z << '\n' + << " -> bit_notand(pi, qi) = " << eve::bit_notand(pi, qi) << '\n' + << " -> bit_notand(pi, z ) = " << eve::bit_notand(pi, z) << '\n' + << " -> bit_notand[pi bit_notor(pi, qi) = " << eve::bit_notor(pi, qi) << '\n' - << " -> bit_notor(qi, z) = " << eve::bit_notor(qi, z) << '\n' - << " -> bit_notor(pi, z ) = " << eve::bit_notor(pi, z) << '\n'; + << " <- pi = " << pi << '\n' + << " <- qi = " << qi << '\n' + << " <- z = " << z << '\n' + << " -> bit_notor(pi, qi) = " << eve::bit_notor(pi, qi) << '\n' + << " -> bit_notor(qi, z) = " << eve::bit_notor(qi, z) << '\n' + << " -> bit_notor(pi, z ) = " << eve::bit_notor(pi, z) << '\n' + << " -> bit_notor[pi bit_set(pi, 1) = " << eve::bit_set(pi, 1) << '\n' + << "-> bit_set(pi, 2) = " << eve::bit_set(pi, 2) << '\n' + << "-> bit_set(pi, 3) = " << eve::bit_set(pi, 3) << '\n' + << "-> bit_set(pi, 4) = " << eve::bit_set(pi, 4) << '\n' + << "-> bit_set(pi, 8) = " << eve::bit_set(pi, 8) << '\n' << "-> bit_set[pi > 15](pi, 1) = " << eve::bit_set[pi > 15](pi, 1) << '\n' << "-> bit_set[pi > 15](pi, 2) = " << eve::bit_set[pi > 15](pi, 2) << '\n' << "-> bit_set[pi > 15](pi, 3) = " << eve::bit_set[pi > 15](pi, 3) << '\n' << "-> bit_set[pi > 15](pi, 4) = " << eve::bit_set[pi > 15](pi, 4) << '\n' << "-> bit_set[pi > 15](pi, 8) = " << eve::bit_set[pi > 15](pi, 8) << '\n'; + + std::uint8_t xf = 48; + + std::cout << "---- scalar" << '\n' + << "<- xf = " << +xf << '\n' + << "-> bit_set(xf, 2) = " << +eve::bit_set(xf, 2) << '\n'; return 0; } diff --git a/test/doc/core/bit_shl.cpp b/test/doc/core/bit_shl.cpp new file mode 100644 index 0000000000..31e4247e59 --- /dev/null +++ b/test/doc/core/bit_shl.cpp @@ -0,0 +1,26 @@ +#include +#include + +int main() +{ + using w_t = eve::wide>; + w_t pi = {3, 2, 3, 4}, qi = {4, 1, 2, 0}; + std::uint32_t z = 5; + std::cout << "---- simd" << '\n' + << " <- pi = " << pi << '\n' + << " <- qi = " << qi << '\n' + << " <- z = " << z << '\n' + << " -> bit_shl(pi, qi) = " << eve::bit_shl(pi, qi) << '\n' + << " -> bit_shl(z, qi) = " << eve::bit_shl(z, qi) << '\n' + << " -> bit_shl(pi, z ) = " << eve::bit_shl(pi, z) << '\n' + << " -> bit_shl[pi bit_shl(a, n) = " << eve::bit_shl(a, n) << '\n'; + return 0; +} diff --git a/test/doc/core/regular/bit_shr.cpp b/test/doc/core/bit_shr.cpp similarity index 50% rename from test/doc/core/regular/bit_shr.cpp rename to test/doc/core/bit_shr.cpp index c83a62e397..f43bef1aa9 100644 --- a/test/doc/core/regular/bit_shr.cpp +++ b/test/doc/core/bit_shr.cpp @@ -8,12 +8,13 @@ int main() w_t pi = {3, 602, 3, 4001}, qi = {4, 1, 2, 0}; std::uint32_t z = 5; std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " <- z = " << z << '\n' - << " -> bit_shr(pi, qi) = " << eve::bit_shr(pi, qi) << '\n' - << " -> bit_shr(z, qi) = " << eve::bit_shr(z, qi) << '\n' - << " -> bit_shr(pi, z ) = " << eve::bit_shr(pi, z) << '\n'; + << " <- pi = " << pi << '\n' + << " <- qi = " << qi << '\n' + << " <- z = " << z << '\n' + << " -> bit_shr(pi, qi) = " << eve::bit_shr(pi, qi) << '\n' + << " -> bit_shr(z, qi) = " << eve::bit_shr(z, qi) << '\n' + << " -> bit_shr(pi, z ) = " << eve::bit_shr(pi, z) << '\n' + << " -> bit_shr[pi bit_swap_pairs(pi, 0, 15) = " << eve::bit_swap_pairs(pi, 0, 15) << '\n' + << "-> bit_swap_pairs(pi, 2, 7 ) = " << eve::bit_swap_pairs(pi, 2, 7) << '\n' << "-> bit_swap_pairs[pi > 7](pi, 0u, 15u)) = " << eve::bit_swap_pairs[pi > 7](pi, 0u, 15u) << '\n'; + return 0; } diff --git a/test/doc/core/masked/bit_unset.cpp b/test/doc/core/bit_unset.cpp similarity index 56% rename from test/doc/core/masked/bit_unset.cpp rename to test/doc/core/bit_unset.cpp index e71205de64..190e0c0b3f 100644 --- a/test/doc/core/masked/bit_unset.cpp +++ b/test/doc/core/bit_unset.cpp @@ -12,6 +12,12 @@ int main() std::cout << "---- simd" << '\n' << "<- pi = " << pi << '\n' + << "-> bit_unset(pi, 0) = " << eve::bit_unset(pi, 0) << '\n' + << "-> bit_unset(pi, 1) = " << eve::bit_unset(pi, 1) << '\n' + << "-> bit_unset(pi, 2) = " << eve::bit_unset(pi, 2) << '\n' + << "-> bit_unset(pi, 3) = " << eve::bit_unset(pi, 3) << '\n' + << "-> bit_unset(pi, 4) = " << eve::bit_unset(pi, 4) << '\n' + << "-> bit_unset(pi, 8) = " << eve::bit_unset(pi, 8) << '\n' << "-> bit_unset[pi > 15](pi, 0) = " << eve::bit_unset[pi > 15](pi, 0) << '\n' << "-> bit_unset[pi > 15](pi, 1) = " << eve::bit_unset[pi > 15](pi, 1) << '\n' << "-> bit_unset[pi > 15](pi, 2) = " << eve::bit_unset[pi > 15](pi, 2) << '\n' @@ -19,5 +25,11 @@ int main() << "-> bit_unset[pi > 15](pi, 4) = " << eve::bit_unset[pi > 15](pi, 4) << '\n' << "-> bit_unset[pi > 15](pi, 8) = " << eve::bit_unset[pi > 15](pi, 8) << '\n'; + + std::uint8_t xf = 48; + + std::cout << "---- scalar" << '\n' + << "<- xf = " << +xf << '\n' + << "-> bit_unset(xf, 5) = " << +eve::bit_unset(xf, 5) << '\n'; return 0; } diff --git a/test/doc/core/regular/bit_width.cpp b/test/doc/core/bit_width.cpp similarity index 100% rename from test/doc/core/regular/bit_width.cpp rename to test/doc/core/bit_width.cpp diff --git a/test/doc/core/regular/bit_xor.cpp b/test/doc/core/bit_xor.cpp similarity index 50% rename from test/doc/core/regular/bit_xor.cpp rename to test/doc/core/bit_xor.cpp index edadb9b4f2..7fee0605c9 100644 --- a/test/doc/core/regular/bit_xor.cpp +++ b/test/doc/core/bit_xor.cpp @@ -8,12 +8,13 @@ int main() w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; std::uint32_t z = 5; std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " <- z = " << z << '\n' - << " -> bit_xor(pi, qi) = " << eve::bit_xor(pi, qi) << '\n' - << " -> bit_xor(z, qi) = " << eve::bit_xor(z, qi) << '\n' - << " -> bit_xor(pi, z ) = " << eve::bit_xor(pi, z) << '\n'; + << " <- pi = " << pi << '\n' + << " <- qi = " << qi << '\n' + << " <- z = " << z << '\n' + << " -> bit_xor(pi, qi) = " << eve::bit_xor(pi, qi) << '\n' + << " -> bit_xor(z, qi) = " << eve::bit_xor(z, qi) << '\n' + << " -> bit_xor(pi, z ) = " << eve::bit_xor(pi, z) << '\n' + << " -> bit_xor[pi < qi](pi, qi) = " << eve::bit_xor[pi < qi](pi, qi) << '\n'; std::uint32_t mask = 1 >> 31; float xi = -3.4565; diff --git a/test/doc/core/regular/bitincrement.cpp b/test/doc/core/bitincrement.cpp similarity index 100% rename from test/doc/core/regular/bitincrement.cpp rename to test/doc/core/bitincrement.cpp diff --git a/test/doc/core/regular/broadcast.cpp b/test/doc/core/broadcast.cpp similarity index 100% rename from test/doc/core/regular/broadcast.cpp rename to test/doc/core/broadcast.cpp diff --git a/test/doc/core/masked/bit_reverse.cpp b/test/doc/core/byte_reverse.cpp similarity index 57% rename from test/doc/core/masked/bit_reverse.cpp rename to test/doc/core/byte_reverse.cpp index 4d1171c730..76bb15070b 100644 --- a/test/doc/core/masked/bit_reverse.cpp +++ b/test/doc/core/byte_reverse.cpp @@ -1,21 +1,24 @@ #include #include -#include - -using wide_it = eve::wide>; +using wide_it = eve::wide>; int main() { - wide_it pi = {-14, 1, 3, 0}; + wide_it pi = {257, 1, 3, 0}; std::cout << "---- simd" << '\n' << "<- pi = " << pi << '\n' + << "-> byte_reverse(pi) = " << eve::byte_reverse(pi) << '\n' << "-> bit_reverse[pi>0](pi) = " << eve::bit_reverse[pi>0](pi) << '\n' << "-> bit_reverse[pi>0](pi, 4) = " << eve::bit_reverse[pi>0](pi, 4)<< '\n' << "-> bit_reverse[pi>0](pi) = " << eve::bit_reverse[pi>0](pi)<< '\n' - << "-> bit_reverse[pi>0][pi > 2](pi, 4) = " << eve::bit_reverse[pi>0](pi, 4)<< '\n' - ; + << "-> bit_reverse[pi>0][pi > 2](pi, 4) = " << eve::bit_reverse[pi>0](pi, 4)<< '\n'; + + std::uint16_t xf = 48; + std::cout << "---- scalar" << '\n' + << "<- xf = " << +xf << '\n' + << "-> byte_reverse(xf) = " << +eve::byte_reverse(xf) << '\n'; return 0; } diff --git a/test/doc/core/regular/byte_swap_adjacent.cpp b/test/doc/core/byte_swap_adjacent.cpp similarity index 100% rename from test/doc/core/regular/byte_swap_adjacent.cpp rename to test/doc/core/byte_swap_adjacent.cpp diff --git a/test/doc/core/masked/byte_swap_pairs.cpp b/test/doc/core/byte_swap_pairs.cpp similarity index 100% rename from test/doc/core/masked/byte_swap_pairs.cpp rename to test/doc/core/byte_swap_pairs.cpp diff --git a/test/doc/core/ceil.cpp b/test/doc/core/ceil.cpp new file mode 100644 index 0000000000..5bf5ffc785 --- /dev/null +++ b/test/doc/core/ceil.cpp @@ -0,0 +1,23 @@ +#include +#include +#include + +using wide_ft = eve::wide>; + +int main() +{ + wide_ft pf = {-1.0f, -1.3f, -1.5f, -1.7f, 2.0f, 2.3f, 2.5f, 2.7f}; + + std::cout << "---- simd" << '\n' + << "<- pf = " << pf << '\n' + << "-> ceil(pf) = " << eve::ceil(pf) << '\n' + << "-> ceil[eve::tolerant]ceil(pf) = " << eve::ceil[eve::tolerant](pf) << '\n' + << "-> ceil[eve::tolerant]ceil(pf, 1.0)= " << eve::ceil[eve::tolerance = 1](pf) << '\n' + << "-> ceil[pf > -1.5f](pf) = " << eve::ceil[pf > -1.5f](pf) << '\n'; + float xf = -32.768f; + + std::cout << "---- scalar" << '\n' + << "<- xf = " << xf << '\n' + << "-> ceil(xf) = " << eve::ceil(xf) << '\n'; + return 0; +} diff --git a/test/doc/core/regular/clamp.cpp b/test/doc/core/clamp.cpp similarity index 88% rename from test/doc/core/regular/clamp.cpp rename to test/doc/core/clamp.cpp index cb1f558bdf..17498f0fed 100644 --- a/test/doc/core/regular/clamp.cpp +++ b/test/doc/core/clamp.cpp @@ -14,7 +14,8 @@ int main() << " <- xi = " << xi << '\n' << " <- lo = " << lo << '\n' << " <- hi = " << hi << '\n' - << " -> clamp(xi, lo, hi) = " << eve::clamp(xi, lo, hi) << '\n'; + << " -> clamp(xi, lo, hi) = " << eve::clamp(xi, lo, hi) << '\n' + << " -> clamp[xi > -2](xi, lo, hi) = " << eve::clamp[xi > -2](xi, lo, hi) << '\n'; float sxi = 3, slo = 3, shi = 4; std::cout << "---- scalar" << '\n' diff --git a/test/doc/core/regular/combine.cpp b/test/doc/core/combine.cpp similarity index 100% rename from test/doc/core/regular/combine.cpp rename to test/doc/core/combine.cpp diff --git a/test/doc/core/regular/conj.cpp b/test/doc/core/conj.cpp similarity index 100% rename from test/doc/core/regular/conj.cpp rename to test/doc/core/conj.cpp diff --git a/test/doc/core/regular/copysign.cpp b/test/doc/core/copysign.cpp similarity index 71% rename from test/doc/core/regular/copysign.cpp rename to test/doc/core/copysign.cpp index 256c2b21b3..9c08f4ada6 100644 --- a/test/doc/core/regular/copysign.cpp +++ b/test/doc/core/copysign.cpp @@ -12,9 +12,10 @@ int main() eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> copysign(pf, qf) = " << eve::copysign(pf, qf) << '\n'; + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> copysign(pf, qf) = " << eve::copysign(pf, qf) << '\n' + << "-> copysign[pf count_true(xf) = " << eve::count_true(xf) << '\n'; + wide_ft pf = {true,false,true,false}; std::cout << "---- simd" << '\n' @@ -13,5 +19,6 @@ int main() << "-> count_true(pf) = " << eve::count_true(pf) << '\n' << "-> count_true[ignore_first(2)](pf) = " << eve::count_true[eve::ignore_first(2)](pf) << '\n'; + return 0; } diff --git a/test/doc/core/regular/countl_one.cpp b/test/doc/core/countl_one.cpp similarity index 100% rename from test/doc/core/regular/countl_one.cpp rename to test/doc/core/countl_one.cpp diff --git a/test/doc/core/regular/countl_zero.cpp b/test/doc/core/countl_zero.cpp similarity index 100% rename from test/doc/core/regular/countl_zero.cpp rename to test/doc/core/countl_zero.cpp diff --git a/test/doc/core/regular/countr_one.cpp b/test/doc/core/countr_one.cpp similarity index 100% rename from test/doc/core/regular/countr_one.cpp rename to test/doc/core/countr_one.cpp diff --git a/test/doc/core/regular/countr_zero.cpp b/test/doc/core/countr_zero.cpp similarity index 100% rename from test/doc/core/regular/countr_zero.cpp rename to test/doc/core/countr_zero.cpp diff --git a/test/doc/core/regular/dec.cpp b/test/doc/core/dec.cpp similarity index 51% rename from test/doc/core/regular/dec.cpp rename to test/doc/core/dec.cpp index 29c0539135..7470359876 100644 --- a/test/doc/core/regular/dec.cpp +++ b/test/doc/core/dec.cpp @@ -3,14 +3,18 @@ #include using wide_ft = eve::wide>; +using wide_it = eve::wide>; int main() { wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f}; + wide_it pi = {0, 1, -127, -128}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> dec(pf) = " << eve::dec(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> dec(pf) = " << eve::dec(pf) << '\n' + << "-> dec[pf > 0.0f](pf) = " << eve::dec[pf > 0.0f](pf) << '\n' + << "-> dec[saturated]pi) = " << eve::dec[eve::saturated](pi) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/diff_of_prod.cpp b/test/doc/core/diff_of_prod.cpp new file mode 100644 index 0000000000..074062f5a6 --- /dev/null +++ b/test/doc/core/diff_of_prod.cpp @@ -0,0 +1,23 @@ +#include +#include +#include +#include + +int main() +{ + using wf_t = eve::wide>; + wf_t xf = {3, 2, 1, 0}, zf = {4, 1, 2, 100}; + wf_t tf = xf+4*eve::eps(eve::as()), yf = zf-4*eve::eps(eve::as()); + + std::cout << "---- simd" << std::setprecision(8) << '\n' + << " <- xf = " << xf << '\n' + << " <- yf = " << yf << '\n' + << " <- tf = " << tf << '\n' + << " <- zf = " << zf << '\n' + << " -> xf*yf-tf*zf = " << (xf*yf)-(tf*zf) << '\n' + << " -> diff_of_prod(xf, yf, tf, zf) = " << eve::diff_of_prod(xf, yf, tf, zf) << '\n' + << " -> diff_of_prod[pedantic](xf, yf, tf, zf) = " << eve::pedantic(eve::diff_of_prod)(xf, yf, tf, zf) << '\n'; + + + return 0; +} diff --git a/test/doc/core/regular/dist.cpp b/test/doc/core/dist.cpp similarity index 88% rename from test/doc/core/regular/dist.cpp rename to test/doc/core/dist.cpp index d0e9f37542..6a312681b1 100644 --- a/test/doc/core/regular/dist.cpp +++ b/test/doc/core/dist.cpp @@ -12,7 +12,8 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "<- qf = " << qf << '\n' - << "-> dist(pf, qf) = " << eve::dist(pf, qf) << '\n'; + << "-> dist(pf, qf) = " << eve::dist(pf, qf) << '\n' + << "-> saturated(dist)(pf, qf) = " << eve::dist[eve::saturated](pf, qf) << '\n'; int16_t xf = -eve::valmax(eve::as()); int16_t yf = eve::valmax(eve::as()); diff --git a/test/doc/core/div.cpp b/test/doc/core/div.cpp new file mode 100644 index 0000000000..76f11b020a --- /dev/null +++ b/test/doc/core/div.cpp @@ -0,0 +1,45 @@ +#include +#include +#include + +int main() +{ + using wf_t = eve::wide>; + wf_t pf = {3, 2, 3, 32700}, qf = {4, 1, 1, 100}; + + std::cout << "---- simd" << '\n' + << " <- pf = " << pf << '\n' + << " <- qf = " << qf << '\n' + << " -> div(pf, qf) = " << eve::div(pf, qf) << '\n' + << " -> pf / qf = " << pf / qf << '\n'; + + std::int16_t xi = -32768, yi = -1; + + std::cout << "---- scalar" << '\n' + << " xi = " << xi << '\n' + << " yi = " << yi << '\n' + << " -> div(xi, yi) = " << eve::div(xi, yi) << '\n' + << " -> xi / yi = " << xi / yi << '\n' // C++ promotion to int + << " -> std::int16_t( xi / yi) = " << std::int16_t( xi / yi) << '\n' + << " -> saturated(div(xi, yi)) = " << eve::saturated(eve::div)(xi, yi) << '\n' + << " -> div[pf> qf](pf, qf) = " << eve::div[pf>qf](pf, qf) << '\n'; + + wf_t rf = {3034, 200, 333, 32700}, sf = {4, 7, 13, 100}; + + std::cout << "---- simd" << '\n' + << " <- rf = " << rf << '\n' + << " <- sf = " << sf << '\n' + << " -> toward_zero(div)(rf, sf) = " << eve::toward_zero(eve::div)(rf, sf) << '\n' + << " -> downward(div)(rf, sf) = " << eve::downward(eve::div)(rf, sf) << '\n' + << " -> upward(div)(rf, sf) = " << eve::upward(eve::div)(rf, sf) << '\n' + << " -> to_nearest(div)(rf, sf) = " << eve::to_nearest(eve::div)(rf, sf) << '\n'; + + auto k = kumi::tuple{pf, pf, pf, 1}; + std::cout << "---- multi parameters" << '\n' + << " -> div(k) = " << eve::div(k) << '\n' + << " -> div(kumi::tuple{pf, pf}) = " << eve::div( kumi::tuple{pf, pf}) << '\n' + << " -> div(kumi::tuple{pf, 1.0f) = " << eve::div( kumi::tuple{pf, 1.0f}) << '\n' + << " -> div(kumi::tuple{1.0f, pf) = " << eve::div( kumi::tuple{1.0f, pf}) << '\n'; + + return 0; +} diff --git a/test/doc/core/regular/dot.cpp b/test/doc/core/dot.cpp similarity index 100% rename from test/doc/core/regular/dot.cpp rename to test/doc/core/dot.cpp diff --git a/test/doc/core/regular/exponent.cpp b/test/doc/core/exponent.cpp similarity index 100% rename from test/doc/core/regular/exponent.cpp rename to test/doc/core/exponent.cpp diff --git a/test/doc/core/regular/fam.cpp b/test/doc/core/fam.cpp similarity index 69% rename from test/doc/core/regular/fam.cpp rename to test/doc/core/fam.cpp index ec510d4f2d..be16f20108 100644 --- a/test/doc/core/regular/fam.cpp +++ b/test/doc/core/fam.cpp @@ -11,20 +11,22 @@ int main() float esm1 = es-1.0f; float esp1 = es+1.0f; float vm = eve::valmax(eve::as()); - wide_t qf = {2, -3, esp1, vm}; - wide_t pf = {3, -2, esm1, 2 }; + wide_t pf = {2, -3, esp1, vm}; + wide_t qf = {3, -2, esm1, 2 }; wide_t of = {4, -1, 1.0f, -vm}; std::cout << "---- simd" << '\n' << " <- of = " << of << '\n' << " <- pf = " << pf << '\n' << " <- qf = " << qf << '\n' + << " -> of*pf+qf = " << of*pf+qf << '\n' << " -> pedantic(fam)(of, pf, qf) = " << eve::pedantic(eve::fam)(of, pf, qf) << '\n' << " -> numeric(fam)(of, pf, qf) = " << eve::numeric(eve::fam)(of, pf, qf) << '\n' << " -> fam(of, pf, qf) = " << eve::fam(of, pf, qf) << '\n' - << "\n if the last fam result ends by '0, inf}', it is because\n" + << "\n if the previous fam result ends by '0, inf}', it is because\n" << " the system has no simd fam family intrinsics\n" - << " or is not configured to use them.\n\n"; + << " or is not configured to use them.\n\n" + << " -> fam[pf < qf](of, pf, qf) = " << eve::fam[pf < qf](of, pf, qf) << '\n'; std::cout << "---- scalar" << std::setprecision(10) << '\n' << " <- vm = " << vm << '\n' @@ -33,8 +35,8 @@ int main() << " -> fam(vm, 2.0f, -vm) = " << eve::fam(vm, 2.0f, -vm) << '\n' << " <- esm1 = " << esm1 << '\n' << " <- esp1 = " << esp1 << '\n' - << " -> pedantic(fam)(1.0f, esp1, esm1) = " << eve::pedantic(eve::fam)(1.0f, esp1, esm1) << '\n' - << " -> numeric(fam)(1.0f, esp1, esm1) = " << eve::numeric(eve::fam)(1.0f, esp1, esm1) << '\n' - << " -> fam(-1.0f, esp1, esm1) = " << eve::fam(-1.0f, esp1, esm1) << '\n'; + << " -> pedantic(fam)(esp1, esm1, 1.0f) = " << eve::pedantic(eve::fam)(esp1, esm1, 1.0f) << '\n' + << " -> numeric(fam)(esp1, esm1, 1.0f) = " << eve::numeric(eve::fam)(esp1, esm1, 1.0f) << '\n' + << " -> fam(esp1, esm1, -1.0f) = " << eve::fam(esp1, esm1, 1.0f) << '\n'; return 0; } diff --git a/test/doc/core/fanm.cpp b/test/doc/core/fanm.cpp new file mode 100644 index 0000000000..8ca87a78ca --- /dev/null +++ b/test/doc/core/fanm.cpp @@ -0,0 +1,42 @@ +#include +#include +#include +#include + +using wide_t = eve::wide>; + +int main() +{ + float es = eve::eps(eve::as()); + float esm1 = es-1.0f; + float esp1 = es+1.0f; + float vm = eve::valmax(eve::as()); + wide_t pf = {-2, 3, -esp1, -vm}; + wide_t qf = {3, -2, esm1, 2 }; + wide_t of = {4, -1, 1.0f, -vm}; + + std::cout << "---- simd" << '\n' + << " <- of = " << of << '\n' + << " <- pf = " << pf << '\n' + << " <- qf = " << qf << '\n' + << " -> of*pf+qf = " << of*pf+qf << '\n' + << " -> pedantic(fanm)(of, pf, qf) = " << eve::pedantic(eve::fanm)(of, pf, qf) << '\n' + << " -> numeric(fanm)(of, pf, qf) = " << eve::numeric(eve::fanm)(of, pf, qf) << '\n' + << " -> fanm(of, pf, qf) = " << eve::fanm(of, pf, qf) << '\n' + << "\n if the previous fanm result ends by '0, inf}', it is because\n" + << " the system has no simd fanm fanmily intrinsics\n" + << " or is not configured to use them.\n\n" + << " -> fanm[pf < qf](of, pf, qf) = " << eve::fanm[pf < qf](of, pf, qf) << '\n'; + + std::cout << "---- scalar" << std::setprecision(10) << '\n' + << " <- vm = " << vm << '\n' + << " -> pedantic(fanm)(vm, 2.0f, -vm) = " << eve::pedantic(eve::fanm)(vm, 2.0f, -vm) << '\n' + << " -> numeric(fanm)(vm, 2.0f, -vm) = " << eve::numeric(eve::fanm)(vm, 2.0f, -vm) << '\n' + << " -> fanm(vm, 2.0f, -vm) = " << eve::fanm(vm, 2.0f, -vm) << '\n' + << " <- esm1 = " << esm1 << '\n' + << " <- esp1 = " << esp1 << '\n' + << " -> pedantic(fanm)(esp1, esm1, 1.0f) = " << eve::pedantic(eve::fanm)(esp1, esm1, 1.0f) << '\n' + << " -> numeric(fanm)(esp1, esm1, 1.0f) = " << eve::numeric(eve::fanm)(esp1, esm1, 1.0f) << '\n' + << " -> fanm(esp1, esm1, -1.0f) = " << eve::fanm(esp1, esm1, 1.0f) << '\n'; + return 0; +} diff --git a/test/doc/core/regular/fdim.cpp b/test/doc/core/fdim.cpp similarity index 90% rename from test/doc/core/regular/fdim.cpp rename to test/doc/core/fdim.cpp index 8525b63608..92138bb416 100644 --- a/test/doc/core/regular/fdim.cpp +++ b/test/doc/core/fdim.cpp @@ -13,9 +13,7 @@ int main() << "<- pf = " << pf << '\n' << "<- qf = " << qf << '\n' << "-> fdim(pf, qf) = " << eve::fdim(pf, qf) << '\n' - - - << '\n'; + << "-> fdim[pf > qf](pf, qf) = " << eve::fdim[pf > qf](pf, qf) << '\n'; float xf = -eve::valmax(eve::as()); float yf = eve::valmax(eve::as()); diff --git a/test/doc/core/first_true.cpp b/test/doc/core/first_true.cpp new file mode 100644 index 0000000000..9b4c956fb1 --- /dev/null +++ b/test/doc/core/first_true.cpp @@ -0,0 +1,21 @@ +#include +#include +#include +#include + +using wide_it = eve::wide>; + +int main() +{ + wide_it pi = {1, 3, 7, 15, 31, 63, 127, 255}; + + std::cout << "---- simd" << '\n' + << "<- pi = " << pi << '\n' + << "-> first_true(pi > 1).value_or(-1) = " << eve::first_true(pi > 1).value_or(-1) << '\n' + << "-> first_true(pi > 2).value_or(-1) = " << eve::first_true(pi > 2).value_or(-1) << '\n' + << "-> first_true(pi > 35).value_or(-1) = " << eve::first_true(pi > 35).value_or(-1) << '\n' + << "-> first_true(pi > 1000).value_or(-1) = " << eve::first_true(pi > 1000).value_or(-1) << '\n' + << "-> first_true[eve::ignore_first(2)](pi<10).value_or(-1) = " << eve::first_true[eve::ignore_first(2)](pi< 10).value_or(-1) << '\n'; + + return 0; +} diff --git a/test/doc/core/regular/firstbitset.cpp b/test/doc/core/firstbitset.cpp similarity index 65% rename from test/doc/core/regular/firstbitset.cpp rename to test/doc/core/firstbitset.cpp index c552c7ec45..82e904bf51 100644 --- a/test/doc/core/regular/firstbitset.cpp +++ b/test/doc/core/firstbitset.cpp @@ -9,8 +9,9 @@ int main() wide_it pi = {14, 1, 3, 7, 20, 23000, 0, 27}; std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> firstbitset(pi) = " << eve::firstbitset(pi) << '\n'; + << "<- pi = " << pi << '\n' + << "-> firstbitset(pi) = " << eve::firstbitset(pi) << '\n' + << "-> firstbitset[pi > 4](pi) = " << eve::firstbitset[pi > 4](pi) << '\n'; std::uint32_t xf = 48; diff --git a/test/doc/core/regular/firstbitunset.cpp b/test/doc/core/firstbitunset.cpp similarity index 64% rename from test/doc/core/regular/firstbitunset.cpp rename to test/doc/core/firstbitunset.cpp index a8f31fdda7..5334e58bae 100644 --- a/test/doc/core/regular/firstbitunset.cpp +++ b/test/doc/core/firstbitunset.cpp @@ -9,8 +9,9 @@ int main() wide_it pi = {14, 1, 3, 7, 20, 23000, 0, 27}; std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> firstbitunset(pi) = " << eve::firstbitunset(pi) << '\n'; + << "<- pi = " << pi << '\n' + << "-> firstbitunset(pi ) = " << eve::firstbitunset(pi) << '\n' + << "-> firstbitunset[pi > 4](pi) = " << eve::firstbitunset[pi > 4](pi) << '\n'; std::uint32_t xf = 48; diff --git a/test/doc/core/regular/float32.cpp b/test/doc/core/float32.cpp similarity index 100% rename from test/doc/core/regular/float32.cpp rename to test/doc/core/float32.cpp diff --git a/test/doc/core/regular/float64.cpp b/test/doc/core/float64.cpp similarity index 100% rename from test/doc/core/regular/float64.cpp rename to test/doc/core/float64.cpp diff --git a/test/doc/core/regular/floating_.cpp b/test/doc/core/floating_.cpp similarity index 100% rename from test/doc/core/regular/floating_.cpp rename to test/doc/core/floating_.cpp diff --git a/test/doc/core/fuzzy/floor.cpp b/test/doc/core/floor.cpp similarity index 72% rename from test/doc/core/fuzzy/floor.cpp rename to test/doc/core/floor.cpp index 76f200fe17..63258275f4 100644 --- a/test/doc/core/fuzzy/floor.cpp +++ b/test/doc/core/floor.cpp @@ -15,6 +15,13 @@ int main() << "-> floor(pf) = " << eve::floor(pf) << '\n' << "-> floor[tolerant](pf) = " << eve::floor[eve::tolerant](pf) << '\n' << "-> floor[tolerance = 2*decr](pf) = " << eve::floor[eve::tolerance = 2*decr](pf) << '\n' - << "-> floor[tolerance = 4](pf) = " << eve::floor[eve::tolerance = 4](pf) << '\n'; + << "-> floor[tolerance = 4](pf) = " << eve::floor[eve::tolerance = 4](pf) << '\n' + << "-> floor[pf>1.5](pf) = " << eve::floor[pf>1.5](pf) << '\n'; + + float xf = -32.768f; + + std::cout << "---- scalar" << '\n' + << "<- xf = " << xf << '\n' + << "-> floor(xf) = " << eve::floor(xf) << '\n'; return 0; } diff --git a/test/doc/core/regular/fma.cpp b/test/doc/core/fma.cpp similarity index 78% rename from test/doc/core/regular/fma.cpp rename to test/doc/core/fma.cpp index 704b2c578f..93bb47b15d 100644 --- a/test/doc/core/regular/fma.cpp +++ b/test/doc/core/fma.cpp @@ -20,19 +20,20 @@ int main() << " <- pf = " << pf << '\n' << " <- qf = " << qf << '\n' << " -> of*pf+qf = " << of*pf+qf << '\n' - << " -> fma[pedantic](of, pf, qf) = " << eve::fma[eve::pedantic](of, pf, qf) << '\n' + << " -> pedantic(fma)(of, pf, qf) = " << eve::fma[eve::pedantic](of, pf, qf) << '\n' << " -> fma(of, pf, qf) = " << eve::fma(of, pf, qf) << '\n' - << "\n if the last fma result ends by '0, inf}', it is because\n" + << "\n if the previous fma result ends by '0, inf}', it is because\n" << " the system has no simd fma family intrinsics\n" - << " or is not configured to use them.\n\n"; + << " or is not configured to use them.\n\n" + << " -> fma[pf < qf](of, pf, qf) = " << eve::fma[pf < qf](of, pf, qf) << '\n'; std::cout << "---- scalar" << std::setprecision(10) << '\n' << " <- vm = " << vm << '\n' - << " -> fma[pedantic](vm, 2.0f, -vm) = " << eve::fma[eve::pedantic](vm, 2.0f, -vm) << '\n' + << " -> pedantic(fma)(vm, 2.0f, -vm) = " << eve::fma[eve::pedantic](vm, 2.0f, -vm) << '\n' << " -> fma(vm, 2.0f, -vm) = " << eve::fma(vm, 2.0f, -vm) << '\n' << " <- esm1 = " << esm1 << '\n' << " <- esp1 = " << esp1 << '\n' - << " -> fma[pedantic](esp1, esm1, 1.0f) = " << eve::fma[eve::pedantic](esp1, esm1, 1.0f) << '\n' + << " -> pedantic(fma)(esp1, esm1, 1.0f) = " << eve::fma[eve::pedantic](esp1, esm1, 1.0f) << '\n' << " -> fma(esp1, esm1, -1.0f) = " << eve::fma(esp1, esm1, 1.0f) << '\n'; return 0; } diff --git a/test/doc/core/regular/fmod.cpp b/test/doc/core/fmod.cpp similarity index 90% rename from test/doc/core/regular/fmod.cpp rename to test/doc/core/fmod.cpp index 28c9b1b3c1..116b5d7131 100644 --- a/test/doc/core/regular/fmod.cpp +++ b/test/doc/core/fmod.cpp @@ -13,9 +13,7 @@ int main() << "<- pf = " << pf << '\n' << "<- qf = " << qf << '\n' << "-> fmod(pf, qf) = " << eve::fmod(pf, qf) << '\n' - - - << '\n'; + << "-> fmod[pf > qf](pf, qf) = " << eve::fmod[pf > qf](pf, qf) << '\n'; float xf = -eve::valmax(eve::as()); float yf = eve::valmax(eve::as()); diff --git a/test/doc/core/fms.cpp b/test/doc/core/fms.cpp new file mode 100644 index 0000000000..f21ba1ce42 --- /dev/null +++ b/test/doc/core/fms.cpp @@ -0,0 +1,42 @@ +#include +#include +#include +#include + +using wide_t = eve::wide>; + +int main() +{ + float es = eve::eps(eve::as()); + float esm1 = es-1.0f; + float esp1 = es+1.0f; + float vm = eve::valmax(eve::as()); + wide_t of = {2, -3, esp1, vm}; + wide_t pf = {3, -2, esm1, 2 }; + wide_t qf = {-4, 1, -1.0f, vm}; + + std::cout << "---- simd" << '\n' + << " <- of = " << of << '\n' + << " <- pf = " << pf << '\n' + << " <- qf = " << qf << '\n' + << " -> of*pf+qf = " << of*pf+qf << '\n' + << " -> pedantic(fms)(of, pf, qf) = " << eve::pedantic(eve::fms)(of, pf, qf) << '\n' + << " -> numeric(fms)(of, pf, qf) = " << eve::numeric(eve::fms)(of, pf, qf) << '\n' + << " -> fms(of, pf, qf) = " << eve::fms(of, pf, qf) << '\n' + << "\n if the previous fms result ends by '0, inf}', it is because\n" + << " the system has no simd fms family intrinsics\n" + << " or is not configured to use them.\n\n" + << " -> fms[pf < qf](of, pf, qf) = " << eve::fms[pf < qf](of, pf, qf) << '\n'; + + std::cout << "---- scalar" << std::setprecision(10) << '\n' + << " <- vm = " << vm << '\n' + << " -> pedantic(fms)(vm, 2.0f, -vm) = " << eve::pedantic(eve::fms)(vm, 2.0f, -vm) << '\n' + << " -> numeric(fms)(vm, 2.0f, -vm) = " << eve::numeric(eve::fms)(vm, 2.0f, -vm) << '\n' + << " -> fms(vm, 2.0f, -vm) = " << eve::fms(vm, 2.0f, -vm) << '\n' + << " <- esm1 = " << esm1 << '\n' + << " <- esp1 = " << esp1 << '\n' + << " -> pedantic(fms)(esp1, esm1, 1.0f) = " << eve::pedantic(eve::fms)(esp1, esm1, 1.0f) << '\n' + << " -> numeric(fms)(esp1, esm1, 1.0f) = " << eve::numeric(eve::fms)(esp1, esm1, 1.0f) << '\n' + << " -> fms(esp1, esm1, -1.0f) = " << eve::fms(esp1, esm1, 1.0f) << '\n'; + return 0; +} diff --git a/test/doc/core/fnma.cpp b/test/doc/core/fnma.cpp new file mode 100644 index 0000000000..194999be1d --- /dev/null +++ b/test/doc/core/fnma.cpp @@ -0,0 +1,42 @@ +#include +#include +#include +#include + +using wide_t = eve::wide>; + +int main() +{ + float es = eve::eps(eve::as()); + float esm1 = es-1.0f; + float esp1 = es+1.0f; + float vm = eve::valmax(eve::as()); + wide_t of = {-2, 3, -esp1, -vm}; + wide_t pf = {3, -2, esm1, 2 }; + wide_t qf = {4, -1, 1.0f, -vm}; + + std::cout << "---- simd" << '\n' + << " <- of = " << of << '\n' + << " <- pf = " << pf << '\n' + << " <- qf = " << qf << '\n' + << " -> of*pf+qf = " << of*pf+qf << '\n' + << " -> pedantic(fnma)(of, pf, qf) = " << eve::pedantic(eve::fnma)(of, pf, qf) << '\n' + << " -> numeric(fnma)(of, pf, qf) = " << eve::numeric(eve::fnma)(of, pf, qf) << '\n' + << " -> fnma(of, pf, qf) = " << eve::fnma(of, pf, qf) << '\n' + << "\n if the previous fnma result ends by '0, inf}', it is because\n" + << " the system has no simd fnma fnmaily intrinsics\n" + << " or is not configured to use them.\n\n" + << " -> fnma[pf < qf](of, pf, qf) = " << eve::fnma[pf < qf](of, pf, qf) << '\n'; + + std::cout << "---- scalar" << std::setprecision(10) << '\n' + << " <- vm = " << vm << '\n' + << " -> pedantic(fnma)(vm, 2.0f, -vm) = " << eve::pedantic(eve::fnma)(vm, 2.0f, -vm) << '\n' + << " -> numeric(fnma)(vm, 2.0f, -vm) = " << eve::numeric(eve::fnma)(vm, 2.0f, -vm) << '\n' + << " -> fnma(vm, 2.0f, -vm) = " << eve::fnma(vm, 2.0f, -vm) << '\n' + << " <- esm1 = " << esm1 << '\n' + << " <- esp1 = " << esp1 << '\n' + << " -> pedantic(fnma)(esp1, esm1, 1.0f) = " << eve::pedantic(eve::fnma)(esp1, esm1, 1.0f) << '\n' + << " -> numeric(fnma)(esp1, esm1, 1.0f) = " << eve::numeric(eve::fnma)(esp1, esm1, 1.0f) << '\n' + << " -> fnma(esp1, esm1, -1.0f) = " << eve::fnma(esp1, esm1, 1.0f) << '\n'; + return 0; +} diff --git a/test/doc/core/regular/fnms.cpp b/test/doc/core/fnms.cpp similarity index 51% rename from test/doc/core/regular/fnms.cpp rename to test/doc/core/fnms.cpp index b38af364bd..fff513b916 100644 --- a/test/doc/core/regular/fnms.cpp +++ b/test/doc/core/fnms.cpp @@ -19,22 +19,24 @@ int main() << " <- of = " << of << '\n' << " <- pf = " << pf << '\n' << " <- qf = " << qf << '\n' + << " -> -of*pf+qf = " << -of*pf+qf << '\n' << " -> pedantic(fnms)(of, pf, qf) = " << eve::pedantic(eve::fnms)(of, pf, qf) << '\n' << " -> numeric(fnms)(of, pf, qf) = " << eve::numeric(eve::fnms)(of, pf, qf) << '\n' << " -> fnms(of, pf, qf) = " << eve::fnms(of, pf, qf) << '\n' - << "\n if the last fnms result ends by '0, -inf}', it means that\n" + << "\n if the previous fnms result ends by '-0, -inf}', it is because\n" << " the system has no simd fnms family intrinsics\n" - << " or is not configured to use them.\n\n"; + << " or is not configured to use them.\n\n" + << " -> fnms[pf < qf](of, pf, qf) = " << eve::fnms[pf < qf](of, pf, qf) << '\n'; std::cout << "---- scalar" << std::setprecision(10) << '\n' << " <- vm = " << vm << '\n' - << " -> pedantic(fnms)(vm, 2.0f, vm) = " << eve::pedantic(eve::fnms)(vm, 2.0f, -vm) << '\n' - << " -> numeric(fnms)(vm, 2.0f, vm) = " << eve::numeric(eve::fnms)(vm, 2.0f, -vm) << '\n' - << " -> fnms(vm, 2.0f, vm) = " << eve::fnms(vm, 2.0f, -vm) << '\n' - << " <- esm1 = " << esm1 << '\n' - << " <- esp1 = " << esp1 << '\n' - << " -> pedantic(fnms)(esp1, esm1, 1.0f) = " << eve::pedantic(eve::fnms)(esp1, esm1,1.0f) << '\n' - << " -> numeric(fnms)(esp1, esm1, 1.0f) = " << eve::numeric(eve::fnms)(esp1, esm1, 1.0f) << '\n' - << " -> fnms(esp1, esm1, 1.0f) = " << eve::fnms(esp1, esm1, 1.0f) << '\n'; + << " -> pedantic(fnms)(vm, 2.0f, -vm) = " << eve::pedantic(eve::fnms)(vm, 2.0f, -vm) << '\n' + << " -> numeric(fnms)(vm, 2.0f, -vm) = " << eve::numeric(eve::fnms)(vm, 2.0f, -vm) << '\n' + << " -> fnms(vm, 2.0f, -vm) = " << eve::fnms(vm, 2.0f, -vm) << '\n' + << " <- esm1 = " << esm1 << '\n' + << " <- esp1 = " << esp1 << '\n' + << " -> pedantic(fnms)(esp1, esm1, 1.0f) = " << eve::pedantic(eve::fnms)(esp1, esm1, 1.0f) << '\n' + << " -> numeric(fnms)(esp1, esm1, 1.0f) = " << eve::numeric(eve::fnms)(esp1, esm1, 1.0f) << '\n' + << " -> fnms(esp1, esm1, -1.0f) = " << eve::fnms(esp1, esm1, 1.0f) << '\n'; return 0; } diff --git a/test/doc/core/regular/frac.cpp b/test/doc/core/frac.cpp similarity index 72% rename from test/doc/core/regular/frac.cpp rename to test/doc/core/frac.cpp index f507312126..599fbdb121 100644 --- a/test/doc/core/regular/frac.cpp +++ b/test/doc/core/frac.cpp @@ -11,8 +11,9 @@ int main() 2.0f, 2.3f, eve::inf(eve::as()), eve::nan(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> frac(pf) = " << eve::frac(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> frac(pf) = " << eve::frac(pf) << '\n' + << "-> frac[pf!=2.3f](pf) = " << eve::frac[pf != 2.3f](pf) << '\n'; float xf = -327.68f; diff --git a/test/doc/core/roundings/fracscale.cpp b/test/doc/core/fracscale.cpp similarity index 63% rename from test/doc/core/roundings/fracscale.cpp rename to test/doc/core/fracscale.cpp index 95b8459210..b3ccdb7aa1 100644 --- a/test/doc/core/roundings/fracscale.cpp +++ b/test/doc/core/fracscale.cpp @@ -3,7 +3,7 @@ #include #include -using wide_ft = eve::wide>; +using wide_ft = eve::wide; int main() { @@ -15,5 +15,13 @@ int main() << " -> upward(fracscale)(pf, 4) = " << eve::downward(eve::fracscale)(pf, 4) << '\n' << " -> downward(fracscale)(pf, 4) = " << eve::upward(eve::fracscale)(pf, 4) << '\n' << " -> to_nearest(fracscale)(pf, 4) = " << eve::to_nearest(eve::fracscale)(pf, 4) << '\n'; - return 0; + + + float xf = 0x1.fffffep0f; + + std::cout << "---- scalar" << '\n' + << "<- xf = " << std::hexfloat << xf << '\n'; + for (int i = 0; i < 16; ++i) + std::cout << "-> toward_zero(fracscale)(xf," << std::setw(2) << i << ") = " << std::hexfloat << eve::toward_zero(eve::fracscale)(xf, i) << '\n'; + return 0; } diff --git a/test/doc/core/masked/frexp.cpp b/test/doc/core/frexp.cpp similarity index 100% rename from test/doc/core/masked/frexp.cpp rename to test/doc/core/frexp.cpp diff --git a/test/doc/core/regular/fsm.cpp b/test/doc/core/fsm.cpp similarity index 67% rename from test/doc/core/regular/fsm.cpp rename to test/doc/core/fsm.cpp index 9ba86b9811..5ae8823e9d 100644 --- a/test/doc/core/regular/fsm.cpp +++ b/test/doc/core/fsm.cpp @@ -11,20 +11,22 @@ int main() float esm1 = es-1.0f; float esp1 = es+1.0f; float vm = eve::valmax(eve::as()); - wide_t qf = {-2, 3, -esp1, -vm}; - wide_t pf = {3, -2, esm1, 2 }; - wide_t of = {4, -1, 1.0f, -vm}; + wide_t pf = {2, -3, esp1, vm}; + wide_t qf = {3, -2, esm1, 2 }; + wide_t of = {-4, 1, -1.0f, vm}; std::cout << "---- simd" << '\n' << " <- of = " << of << '\n' << " <- pf = " << pf << '\n' << " <- qf = " << qf << '\n' + << " -> of*pf+qf = " << of*pf+qf << '\n' << " -> pedantic(fsm)(of, pf, qf) = " << eve::pedantic(eve::fsm)(of, pf, qf) << '\n' << " -> numeric(fsm)(of, pf, qf) = " << eve::numeric(eve::fsm)(of, pf, qf) << '\n' << " -> fsm(of, pf, qf) = " << eve::fsm(of, pf, qf) << '\n' - << "\n if the last fsm result ends by '0, inf}', it is because\n" + << "\n if the previous fsm result ends by '0, inf}', it is because\n" << " the system has no simd fsm fsmily intrinsics\n" - << " or is not configured to use them.\n\n"; + << " or is not configured to use them.\n\n" + << " -> fsm[pf < qf](of, pf, qf) = " << eve::fsm[pf < qf](of, pf, qf) << '\n'; std::cout << "---- scalar" << std::setprecision(10) << '\n' << " <- vm = " << vm << '\n' @@ -33,8 +35,8 @@ int main() << " -> fsm(vm, 2.0f, -vm) = " << eve::fsm(vm, 2.0f, -vm) << '\n' << " <- esm1 = " << esm1 << '\n' << " <- esp1 = " << esp1 << '\n' - << " -> pedantic(fsm)(1.0f, esp1, esm1) = " << eve::pedantic(eve::fsm)(1.0f, esp1, esm1) << '\n' - << " -> numeric(fsm)(1.0f, esp1, esm1) = " << eve::numeric(eve::fsm)(1.0f, esp1, esm1) << '\n' - << " -> fsm(-1.0f, esp1, esm1) = " << eve::fsm(-1.0f, esp1, esm1) << '\n'; + << " -> pedantic(fsm)(esp1, esm1, 1.0f) = " << eve::pedantic(eve::fsm)(esp1, esm1, 1.0f) << '\n' + << " -> numeric(fsm)(esp1, esm1, 1.0f) = " << eve::numeric(eve::fsm)(esp1, esm1, 1.0f) << '\n' + << " -> fsm(esp1, esm1, -1.0f) = " << eve::fsm(esp1, esm1, 1.0f) << '\n'; return 0; } diff --git a/test/doc/core/regular/fsnm.cpp b/test/doc/core/fsnm.cpp similarity index 67% rename from test/doc/core/regular/fsnm.cpp rename to test/doc/core/fsnm.cpp index 27c6612ae1..c453c30862 100644 --- a/test/doc/core/regular/fsnm.cpp +++ b/test/doc/core/fsnm.cpp @@ -11,20 +11,22 @@ int main() float esm1 = es-1.0f; float esp1 = es+1.0f; float vm = eve::valmax(eve::as()); - wide_t qf = {2, -3, esp1, vm}; - wide_t pf = {3, -2, esm1, 2 }; - wide_t of = {4, -1, 1.0f, -vm}; + wide_t pf = {-2, 3, -esp1, -vm}; + wide_t qf = {3, -2, esm1, 2 }; + wide_t of = {-4, 1, -1.0f, vm}; std::cout << "---- simd" << '\n' << " <- of = " << of << '\n' << " <- pf = " << pf << '\n' << " <- qf = " << qf << '\n' + << " -> of*pf+qf = " << of*pf+qf << '\n' << " -> pedantic(fsnm)(of, pf, qf) = " << eve::pedantic(eve::fsnm)(of, pf, qf) << '\n' << " -> numeric(fsnm)(of, pf, qf) = " << eve::numeric(eve::fsnm)(of, pf, qf) << '\n' << " -> fsnm(of, pf, qf) = " << eve::fsnm(of, pf, qf) << '\n' - << "\n if the last fsnm result ends by '0, inf}', it is because\n" + << "\n if the previous fsnm result ends by '0, inf}', it is because\n" << " the system has no simd fsnm fsnmily intrinsics\n" - << " or is not configured to use them.\n\n"; + << " or is not configured to use them.\n\n" + << " -> fsnm[pf < qf](of, pf, qf) = " << eve::fsnm[pf < qf](of, pf, qf) << '\n'; std::cout << "---- scalar" << std::setprecision(10) << '\n' << " <- vm = " << vm << '\n' @@ -33,8 +35,8 @@ int main() << " -> fsnm(vm, 2.0f, -vm) = " << eve::fsnm(vm, 2.0f, -vm) << '\n' << " <- esm1 = " << esm1 << '\n' << " <- esp1 = " << esp1 << '\n' - << " -> pedantic(fsnm)(1.0f, esp1, esm1) = " << eve::pedantic(eve::fsnm)(1.0f, esp1, esm1) << '\n' - << " -> numeric(fsnm)(1.0f, esp1, esm1) = " << eve::numeric(eve::fsnm)(1.0f, esp1, esm1) << '\n' - << " -> fsnm(-1.0f, esp1, esm1) = " << eve::fsnm(-1.0f, esp1, esm1) << '\n'; + << " -> pedantic(fsnm)(esp1, esm1, 1.0f) = " << eve::pedantic(eve::fsnm)(esp1, esm1, 1.0f) << '\n' + << " -> numeric(fsnm)(esp1, esm1, 1.0f) = " << eve::numeric(eve::fsnm)(esp1, esm1, 1.0f) << '\n' + << " -> fsnm(esp1, esm1, -1.0f) = " << eve::fsnm(esp1, esm1, 1.0f) << '\n'; return 0; } diff --git a/test/doc/core/fuzzy/ceil.cpp b/test/doc/core/fuzzy/ceil.cpp deleted file mode 100644 index 86d7740132..0000000000 --- a/test/doc/core/fuzzy/ceil.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - float decr = eve::eps(eve::as()); - wide_ft pf = {-1.0f+decr, -1.0f+3*decr, -1.0f+5*decr, -1.7f, 2.0f, 2.0f+2*decr, 2.0f+5*decr, 2.7f}; - - std::cout << "---- simd" << std::setprecision(8) << '\n' - << "<- pf = " << pf << '\n' - << "-> ceil(pf) = " << eve::ceil(pf) << '\n' - << "-> ceil[tolerant](pf) = " << eve::ceil[eve::tolerant](pf) << '\n' - << "-> ceil[tolerance = 2*decr](pf) = " << eve::ceil[eve::tolerance = 2*decr](pf) << '\n' - << "-> ceil[tolerance = 4](pf) = " << eve::ceil[eve::tolerance = 4](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/fuzzy/is_greater.cpp b/test/doc/core/fuzzy/is_greater.cpp deleted file mode 100644 index 6cb811ddc8..0000000000 --- a/test/doc/core/fuzzy/is_greater.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, 0.0f, 3.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> definitely(is_greater)(pf, qf) = " << eve::definitely(eve::is_greater)(pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/fuzzy/is_greater_equal.cpp b/test/doc/core/fuzzy/is_greater_equal.cpp deleted file mode 100644 index a2a80db7da..0000000000 --- a/test/doc/core/fuzzy/is_greater_equal.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, 0.0f, 3.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> almost(is_greater_equal)(pf, qf) = " << eve::almost(eve::is_greater_equal)(pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/fuzzy/is_less.cpp b/test/doc/core/fuzzy/is_less.cpp deleted file mode 100644 index b5afaebafb..0000000000 --- a/test/doc/core/fuzzy/is_less.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, 0.0f, 3.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> definitely(is_less)(pf, qf) = " << eve::definitely(eve::is_less)(pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/fuzzy/is_less_equal.cpp b/test/doc/core/fuzzy/is_less_equal.cpp deleted file mode 100644 index 9a58441c49..0000000000 --- a/test/doc/core/fuzzy/is_less_equal.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, 0.0f, 3.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> almost(is_less_equal)(pf, qf) = " << eve::almost(eve::is_less_equal)(pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/fuzzy/is_not_greater.cpp b/test/doc/core/fuzzy/is_not_greater.cpp deleted file mode 100644 index b5179cd06a..0000000000 --- a/test/doc/core/fuzzy/is_not_greater.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, 0.0f, 3.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> almost(is_not_greater)(pf, qf) = " << eve::almost(eve::is_not_greater)(pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/fuzzy/is_not_greater_equal.cpp b/test/doc/core/fuzzy/is_not_greater_equal.cpp deleted file mode 100644 index 500b34d489..0000000000 --- a/test/doc/core/fuzzy/is_not_greater_equal.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, 0.0f, 3.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> definitely(is_not_greater_equal)(pf, qf) = " << eve::definitely(eve::is_not_greater_equal)(pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/fuzzy/is_not_less.cpp b/test/doc/core/fuzzy/is_not_less.cpp deleted file mode 100644 index ab3de22607..0000000000 --- a/test/doc/core/fuzzy/is_not_less.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, 0.0f, 3.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> almost(is_not_less)(pf, qf) = " << eve::almost(eve::is_not_less)(pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/has_equal_in.cpp b/test/doc/core/has_equal_in.cpp similarity index 100% rename from test/doc/core/regular/has_equal_in.cpp rename to test/doc/core/has_equal_in.cpp diff --git a/test/doc/core/regular/hi.cpp b/test/doc/core/hi.cpp similarity index 100% rename from test/doc/core/regular/hi.cpp rename to test/doc/core/hi.cpp diff --git a/test/doc/core/regular/if_else.cpp b/test/doc/core/if_else.cpp similarity index 52% rename from test/doc/core/regular/if_else.cpp rename to test/doc/core/if_else.cpp index 02ed3b1f35..80e6295f88 100644 --- a/test/doc/core/regular/if_else.cpp +++ b/test/doc/core/if_else.cpp @@ -14,12 +14,17 @@ int main() wide_lt lsi = {true, false, false, true}; std::cout << "---- simd" << '\n' - << " <- si = " << si << '\n' - << " <- lsi = " << lsi << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> eve::if_else(si, pi, qi) = " << eve::if_else(si, pi, qi) << '\n' - << " -> eve::if_else(lsi, pi, qi) = " << eve::if_else(lsi, pi, qi) << '\n'; + << " <- si = " << si << '\n' + << " <- lsi = " << lsi << '\n' + << " <- pi = " << pi << '\n' + << " <- qi = " << qi << '\n' + << " -> eve::if_else(si, pi, qi) = " << eve::if_else(si, pi, qi) << '\n' + << " -> eve::if_else(lsi, pi, qi) = " << eve::if_else(lsi, pi, qi) << '\n' + << " -> eve::if_else(lsi, pi, allbits) = " << eve::if_else(lsi, pi, eve::allbits) << '\n' + << " -> eve::if_else(lsi, pi, one) = " << eve::if_else(lsi, pi, eve::one) << '\n' + << " -> eve::if_else(lsi, pi, mone) = " << eve::if_else(lsi, pi, eve::mone) << '\n' + << " -> eve::if_else(lsi, pi, zero) = " << eve::if_else(lsi, pi, eve::zero) << '\n'; + iT ssi = 3, xi = 3, yi = 4; eve::logical lssi = false; diff --git a/test/doc/core/regular/ifnot_else.cpp b/test/doc/core/ifnot_else.cpp similarity index 50% rename from test/doc/core/regular/ifnot_else.cpp rename to test/doc/core/ifnot_else.cpp index d136ff2d6b..02e0e60bc8 100644 --- a/test/doc/core/regular/ifnot_else.cpp +++ b/test/doc/core/ifnot_else.cpp @@ -14,12 +14,18 @@ int main() wide_lt lsi = {true, false, false, true}; std::cout << "---- simd" << '\n' - << " <- si = " << si << '\n' - << " <- lsi = " << lsi << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> eve::ifnot_else(si, pi, qi) = " << eve::ifnot_else(si, pi, qi) << '\n' - << " -> eve::ifnot_else(lsi, pi, qi) = " << eve::ifnot_else(lsi, pi, qi) << '\n'; + << " <- si = " << si << '\n' + << " <- lsi = " << lsi << '\n' + << " <- pi = " << pi << '\n' + << " <- qi = " << qi << '\n' + << " -> eve::ifnot_else(si, pi, qi) = " << eve::ifnot_else(si, pi, qi) << '\n' + << " -> eve::ifnot_else(lsi, pi, qi) = " << eve::ifnot_else(lsi, pi, qi) << '\n'; +// TODO or suppress ifnot_else +// << " -> eve::ifnot_else(lsi, pi, allbits) = " << eve::ifnot_else(lsi, pi, eve::allbits) << '\n' +// << " -> eve::ifnot_else(lsi, pi, one) = " << eve::ifnot_else(lsi, pi, eve::one) << '\n' +// << " -> eve::ifnot_else(lsi, pi, mone) = " << eve::ifnot_else(lsi, pi, eve::mone) << '\n' +// << " -> eve::ifnot_else(lsi, pi, zero) = " << eve::ifnot_else(lsi, pi, eve::zero) << '\n'; + iT ssi = 3, xi = 3, yi = 4; eve::logical lssi = false; diff --git a/test/doc/core/masked/ifrexp.cpp b/test/doc/core/ifrexp.cpp similarity index 100% rename from test/doc/core/masked/ifrexp.cpp rename to test/doc/core/ifrexp.cpp diff --git a/test/doc/core/inc.cpp b/test/doc/core/inc.cpp new file mode 100644 index 0000000000..29093862a4 --- /dev/null +++ b/test/doc/core/inc.cpp @@ -0,0 +1,23 @@ +using wide_ft = eve::wide>; + +int main() +{ + wide_ft pi = {127, 1, -127, -128}; + + std::cout << "---- simd" << '\n' + << "<- pi = " << pi << '\n' + << "-> inc(pi) = " << eve::inc(pi) << '\n' + << "-> inc[saturated](pi) = " << eve::inc[eve::saturated](pi) << '\n' + << "-> eve::inc[pi<0] = " << eve::inc[pi < 0](pi) << '\n' + << "-> eve::inc[pi>0][saturated](pi) = " << eve::inc[pi < 0][eve::saturated](pi) << '\n'; + + return 0; + + float xf = 1.0f; + + std::cout << "---- scalar" << '\n' + << "<- xf = " << xf << '\n' + << "-> eve::inc(xf) = " << eve::inc(xf) << '\n'; + + return 0; +} diff --git a/test/doc/core/regular/int16.cpp b/test/doc/core/int16.cpp similarity index 100% rename from test/doc/core/regular/int16.cpp rename to test/doc/core/int16.cpp diff --git a/test/doc/core/regular/int32.cpp b/test/doc/core/int32.cpp similarity index 100% rename from test/doc/core/regular/int32.cpp rename to test/doc/core/int32.cpp diff --git a/test/doc/core/regular/int64.cpp b/test/doc/core/int64.cpp similarity index 100% rename from test/doc/core/regular/int64.cpp rename to test/doc/core/int64.cpp diff --git a/test/doc/core/regular/int8.cpp b/test/doc/core/int8.cpp similarity index 100% rename from test/doc/core/regular/int8.cpp rename to test/doc/core/int8.cpp diff --git a/test/doc/core/regular/int_.cpp b/test/doc/core/int_.cpp similarity index 100% rename from test/doc/core/regular/int_.cpp rename to test/doc/core/int_.cpp diff --git a/test/doc/core/regular/is_denormal.cpp b/test/doc/core/is_denormal.cpp similarity index 99% rename from test/doc/core/regular/is_denormal.cpp rename to test/doc/core/is_denormal.cpp index 72de7db417..1b0d96faa5 100644 --- a/test/doc/core/regular/is_denormal.cpp +++ b/test/doc/core/is_denormal.cpp @@ -14,7 +14,7 @@ int main() << "<- pf = " << pf << '\n' << "-> is_denormal(pf) = " << eve::is_denormal(pf) << '\n' << "-> is_denormal[pf > 0](pf) = " << eve::is_denormal[pf > 0](pf) << '\n'; - + float xf = 1.0f; float yf = eve::mindenormal(eve::as()); diff --git a/test/doc/core/fuzzy/is_equal.cpp b/test/doc/core/is_equal.cpp similarity index 67% rename from test/doc/core/fuzzy/is_equal.cpp rename to test/doc/core/is_equal.cpp index 9a0699b828..79b6d9a28c 100644 --- a/test/doc/core/fuzzy/is_equal.cpp +++ b/test/doc/core/is_equal.cpp @@ -6,14 +6,14 @@ using wide_ft = eve::wide>; int main() { - wide_ft pf = {1.0f, 1.0f, -1.0f, -2.0f}; - wide_ft qf = {1.0f, -1.0f, -1.0f, -2.0f}; - pf += 3*eve::eps(eve::as()); + wide_ft pf = {0.0f, 1.0f, eve::nan(eve::as()), eve::nan(eve::as())}; + wide_ft qf = {1.0f, 1.0f, eve::nan(eve::as()), -2.0f}; std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "<- qf = " << qf << '\n' - << "-> is_equal)(pf, qf) = " << eve::is_equal(pf, qf) << '\n' + << "-> is_equal(pf, qf) = " << eve::is_equal(pf, qf) << '\n' + << "-> numeric(is_equal)(pf, qf) = " << eve::numeric(eve::is_equal)(pf, qf) << '\n' << "-> almost(is_equal)(pf, qf) = " << eve::almost (eve::is_equal)(pf, qf) << '\n' << "-> almost(is_equal)(pf, qf, 2) = " << eve::almost (eve::is_equal)(pf, qf, 2) << '\n' << "-> almost(is_equal)(pf, qf, 2.0f) = " << eve::almost (eve::is_equal)(pf, qf, 2.0f) << '\n'; diff --git a/test/doc/core/regular/is_eqz.cpp b/test/doc/core/is_eqz.cpp similarity index 100% rename from test/doc/core/regular/is_eqz.cpp rename to test/doc/core/is_eqz.cpp diff --git a/test/doc/core/regular/is_even.cpp b/test/doc/core/is_even.cpp similarity index 100% rename from test/doc/core/regular/is_even.cpp rename to test/doc/core/is_even.cpp diff --git a/test/doc/core/regular/is_finite.cpp b/test/doc/core/is_finite.cpp similarity index 71% rename from test/doc/core/regular/is_finite.cpp rename to test/doc/core/is_finite.cpp index 3c2d3a9884..3e24af075b 100644 --- a/test/doc/core/regular/is_finite.cpp +++ b/test/doc/core/is_finite.cpp @@ -10,9 +10,9 @@ int main() eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_finite(pf) = " << eve::is_finite(pf) << '\n'; - + << "<- pf = " << pf << '\n' + << "-> is_finite(pf) = " << eve::is_finite(pf) << '\n' + << "-> is_finite[pf>0](pf) = " << eve::is_finite[pf>0](pf) << '\n'; float xf = 1.0f; std::cout << "---- scalar" << '\n' diff --git a/test/doc/core/regular/is_flint.cpp b/test/doc/core/is_flint.cpp similarity index 87% rename from test/doc/core/regular/is_flint.cpp rename to test/doc/core/is_flint.cpp index c225cbab75..8ab8381afc 100644 --- a/test/doc/core/regular/is_flint.cpp +++ b/test/doc/core/is_flint.cpp @@ -12,8 +12,9 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "-> is_flint(pf) = " << eve::is_flint(pf) << '\n' - << "-> is_flint[pedantic](pf) = " << eve::is_flint[eve::pedantic](pf) << '\n'; - + << "-> is_flint[pedantic](pf) = " << eve::is_flint[eve::pedantic](pf) << '\n' + << "-> is_flint[pf>0](pf) = " << eve::is_flint[pf>0](pf) << '\n'; + float xf = 1.0f; std::cout << "---- scalar" << '\n' diff --git a/test/doc/core/regular/is_gez.cpp b/test/doc/core/is_gez.cpp similarity index 67% rename from test/doc/core/regular/is_gez.cpp rename to test/doc/core/is_gez.cpp index 3d5ba9b744..d9013b61e4 100644 --- a/test/doc/core/regular/is_gez.cpp +++ b/test/doc/core/is_gez.cpp @@ -9,8 +9,9 @@ int main() wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_gez(pf) = " << eve::is_gez(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_gez(pf) = " << eve::is_gez(pf) << '\n' + << "-> is_gez[pf>0](pf) = " << eve::is_gez[pf>0](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/is_greater.cpp b/test/doc/core/is_greater.cpp new file mode 100644 index 0000000000..2e6854e5d4 --- /dev/null +++ b/test/doc/core/is_greater.cpp @@ -0,0 +1,27 @@ +#include +#include +#include + +using wide_ft = eve::wide>; + +int main() +{ + wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f}; + wide_ft qf = {1.0f, -1.0f, -1.0f, -2.0f}; + + std::cout << "---- simd" << '\n' + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> is_greater(pf, qf) = " << eve::is_greater(pf, qf) << '\n' + << "-> definitely(is_greater)(pf, qf) = " << eve::definitely(eve::is_greater)(pf, qf) << '\n' + << "-> is_greater[pf > 0](pf, qf) = " << eve::is_greater[pf > 0](pf, qf) << '\n'; + + float xf = 1.0f; + float yf = 2.0f; + + std::cout << "---- scalar" << '\n' + << "<- xf = " << xf << '\n' + << "<- yf = " << yf << '\n' + << "-> is_greater(xf, yf) = " << eve::is_greater(xf, yf) << '\n'; + return 0; +} diff --git a/test/doc/core/regular/is_gtz.cpp b/test/doc/core/is_gtz.cpp similarity index 66% rename from test/doc/core/regular/is_gtz.cpp rename to test/doc/core/is_gtz.cpp index 1efb2a832d..7a5dd7d470 100644 --- a/test/doc/core/regular/is_gtz.cpp +++ b/test/doc/core/is_gtz.cpp @@ -9,8 +9,9 @@ int main() wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_gtz(pf) = " << eve::is_gtz(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_gtz(pf) = " << eve::is_gtz(pf) << '\n' + << "-> is_gtz[pf > 0](pf) = " << eve::is_gtz[pf > 0](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_imag.cpp b/test/doc/core/is_imag.cpp similarity index 61% rename from test/doc/core/regular/is_imag.cpp rename to test/doc/core/is_imag.cpp index a3572356f2..742f83ff7e 100644 --- a/test/doc/core/regular/is_imag.cpp +++ b/test/doc/core/is_imag.cpp @@ -9,8 +9,9 @@ int main() wide_ft pf = {0.0f, 1.0f, -0.0f, -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_imag(pf) = " << eve::is_imag(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_imag(pf) = " << eve::is_imag(pf) << '\n' + << "-> is_imag[is_positive(pf)](pf) = " << eve::is_imag[eve::is_positive(pf)](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_infinite.cpp b/test/doc/core/is_infinite.cpp similarity index 69% rename from test/doc/core/regular/is_infinite.cpp rename to test/doc/core/is_infinite.cpp index b1b08e2ab6..8169d0ab1b 100644 --- a/test/doc/core/regular/is_infinite.cpp +++ b/test/doc/core/is_infinite.cpp @@ -10,8 +10,9 @@ int main() eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_infinite(pf) = " << eve::is_infinite(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_infinite(pf) = " << eve::is_infinite(pf) << '\n' + << "-> is_infinite[pf > 0](pf) = " << eve::is_infinite[pf > 0](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_less.cpp b/test/doc/core/is_less.cpp similarity index 78% rename from test/doc/core/regular/is_less.cpp rename to test/doc/core/is_less.cpp index 1823f3e535..943e5be52c 100644 --- a/test/doc/core/regular/is_less.cpp +++ b/test/doc/core/is_less.cpp @@ -12,7 +12,9 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "<- qf = " << qf << '\n' - << "-> is_less(pf, qf) = " << eve::is_less(pf, qf) << '\n'; + << "-> is_less[pf > 0](pf, qf) = " << eve::is_less[pf > 0](pf, qf) << '\n' + << "-> is_less(pf, qf) = " << eve::is_less(pf, qf) << '\n' + << "-> definitely(is_less)(pf, qf) = " << eve::definitely(eve::is_less)(pf, qf) << '\n'; float xf = 1.0f; float yf = 2.0f; diff --git a/test/doc/core/regular/is_less_equal.cpp b/test/doc/core/is_less_equal.cpp similarity index 55% rename from test/doc/core/regular/is_less_equal.cpp rename to test/doc/core/is_less_equal.cpp index 1823f3e535..458367391c 100644 --- a/test/doc/core/regular/is_less_equal.cpp +++ b/test/doc/core/is_less_equal.cpp @@ -10,9 +10,11 @@ int main() wide_ft qf = {1.0f, -1.0f, 0.0f, -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_less(pf, qf) = " << eve::is_less(pf, qf) << '\n'; + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> is_less(pf, qf) = " << eve::is_less(pf, qf) << '\n' + << "-> almost(is_less_equal)(pf, qf) = " << eve::almost(eve::is_less_equal)(pf, qf) << '\n' + << "-> is_less[pf > 0](pf, qf) = " << eve::is_less[pf > 0](pf, qf) << '\n'; float xf = 1.0f; float yf = 2.0f; diff --git a/test/doc/core/regular/is_lessgreater.cpp b/test/doc/core/is_lessgreater.cpp similarity index 63% rename from test/doc/core/regular/is_lessgreater.cpp rename to test/doc/core/is_lessgreater.cpp index 689171d93f..9675107230 100644 --- a/test/doc/core/regular/is_lessgreater.cpp +++ b/test/doc/core/is_lessgreater.cpp @@ -10,9 +10,10 @@ int main() wide_ft qf = {1.0f, -1.0f, 0.0f, -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_lessgreater(pf, qf) = " << eve::is_lessgreater(pf, qf) << '\n'; + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> is_lessgreater(pf, qf) = " << eve::is_lessgreater(pf, qf) << '\n' + << "-> is_lessgreater[pf>0](pf, qf) = " << eve::is_lessgreater[pf>0](pf, qf) << '\n'; float xf = 1.0f; float yf = 2.0f; diff --git a/test/doc/core/regular/is_lez.cpp b/test/doc/core/is_lez.cpp similarity index 67% rename from test/doc/core/regular/is_lez.cpp rename to test/doc/core/is_lez.cpp index 5abdf1c162..fbd3d0adbf 100644 --- a/test/doc/core/regular/is_lez.cpp +++ b/test/doc/core/is_lez.cpp @@ -9,8 +9,9 @@ int main() wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_lez(pf) = " << eve::is_lez(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_lez(pf) = " << eve::is_lez(pf) << '\n' + << "-> is_lez[pf>0](pf) = " << eve::is_lez[pf>0](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_ltz.cpp b/test/doc/core/is_ltz.cpp similarity index 67% rename from test/doc/core/regular/is_ltz.cpp rename to test/doc/core/is_ltz.cpp index 43a2b7f2c9..a9e9ca45e7 100644 --- a/test/doc/core/regular/is_ltz.cpp +++ b/test/doc/core/is_ltz.cpp @@ -9,8 +9,10 @@ int main() wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_ltz(pf) = " << eve::is_ltz(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_ltz(pf) = " << eve::is_ltz(pf) << '\n' + << "-> is_ltz[pf>0](pf) = " << eve::is_ltz[pf>0](pf) << '\n'; + float xf = 1.0f; diff --git a/test/doc/core/regular/is_nan.cpp b/test/doc/core/is_nan.cpp similarity index 54% rename from test/doc/core/regular/is_nan.cpp rename to test/doc/core/is_nan.cpp index 7243c4da9f..4bb4a230d8 100644 --- a/test/doc/core/regular/is_nan.cpp +++ b/test/doc/core/is_nan.cpp @@ -6,12 +6,14 @@ using wide_ft = eve::wide>; int main() { - wide_ft pf = {0.0f, 1.0f, -1.5f, -2.0f, eve::nan(eve::as()), - eve::inf(eve::as()), eve::minf(eve::as()), -eve::nan(eve::as())}; + wide_ft pf = {0.0f, 1.0f, -1.5f, 2.0f , eve::nan(eve::as()), + eve::inf(eve::as()), eve::minf(eve::as()), + -eve::nan(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_nan(pf) = " << eve::is_nan(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_nan(pf) = " << eve::is_nan(pf) << '\n' + << "-> is_nan[ignore_last(1)](pf) = " << eve::is_nan[eve::ignore_last(1)](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_negative.cpp b/test/doc/core/is_negative.cpp similarity index 70% rename from test/doc/core/regular/is_negative.cpp rename to test/doc/core/is_negative.cpp index 99ad870a14..71eaf09673 100644 --- a/test/doc/core/regular/is_negative.cpp +++ b/test/doc/core/is_negative.cpp @@ -10,8 +10,9 @@ int main() eve::inf(eve::as()), eve::minf(eve::as()), -eve::nan(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_negative(pf) = " << eve::is_negative(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_negative(pf) = " << eve::is_negative(pf) << '\n' + << "-> is_negative[pf < 2](pf) = " << eve::is_negative[pf < 2](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_nez.cpp b/test/doc/core/is_nez.cpp similarity index 65% rename from test/doc/core/regular/is_nez.cpp rename to test/doc/core/is_nez.cpp index ac81d311c5..b418956a34 100644 --- a/test/doc/core/regular/is_nez.cpp +++ b/test/doc/core/is_nez.cpp @@ -9,8 +9,9 @@ int main() wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_nez(pf) = " << eve::is_nez(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_nez(pf) = " << eve::is_nez(pf) << '\n' + << "-> is_nez[pf<-0.5](pf) = " << eve::is_nez[pf < -0.5](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_ngez.cpp b/test/doc/core/is_ngez.cpp similarity index 65% rename from test/doc/core/regular/is_ngez.cpp rename to test/doc/core/is_ngez.cpp index b4f71b182f..d3ae6d824e 100644 --- a/test/doc/core/regular/is_ngez.cpp +++ b/test/doc/core/is_ngez.cpp @@ -10,8 +10,9 @@ int main() wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; std::cout << "---- simd" << '\n' - << "<- pf =" << pf << '\n' - << "-> is_ngez(pf) = " << eve::is_ngez(pf) << '\n'; + << "<- pf =" << pf << '\n' + << "-> is_ngez(pf) = " << eve::is_ngez(pf) << '\n' + << "-> is_gez[pf<-0.5](pf) = " << eve::is_ngez[pf < -0.5](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_ngtz.cpp b/test/doc/core/is_ngtz.cpp similarity index 65% rename from test/doc/core/regular/is_ngtz.cpp rename to test/doc/core/is_ngtz.cpp index 41465bc982..5498068a2b 100644 --- a/test/doc/core/regular/is_ngtz.cpp +++ b/test/doc/core/is_ngtz.cpp @@ -9,8 +9,9 @@ int main() wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_ngtz(pf) = " << eve::is_ngtz(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_ngtz(pf) = " << eve::is_ngtz(pf) << '\n' + << "-> is_ngtz[pf<-0.5](pf) = " << eve::is_ngtz[pf<-0.5](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_nlez.cpp b/test/doc/core/is_nlez.cpp similarity index 65% rename from test/doc/core/regular/is_nlez.cpp rename to test/doc/core/is_nlez.cpp index 1874b40b72..d676a789d0 100644 --- a/test/doc/core/regular/is_nlez.cpp +++ b/test/doc/core/is_nlez.cpp @@ -9,8 +9,9 @@ int main() wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_nlez(pf) = " << eve::is_nlez(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_nlez(pf) = " << eve::is_nlez(pf) << '\n' + << "-> is_nlez[pf<-0.5](pf) = " << eve::is_nlez[pf < -0.5](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_nltz.cpp b/test/doc/core/is_nltz.cpp similarity index 65% rename from test/doc/core/regular/is_nltz.cpp rename to test/doc/core/is_nltz.cpp index bfcc82919e..e1db2a62fd 100644 --- a/test/doc/core/regular/is_nltz.cpp +++ b/test/doc/core/is_nltz.cpp @@ -9,8 +9,9 @@ int main() wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_nltz(pf) = " << eve::is_nltz(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_nltz(pf) = " << eve::is_nltz(pf) << '\n' + << "-> is_nltz[pf<-0.5](pf) = " << eve::is_nltz[pf < -0.5](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_normal.cpp b/test/doc/core/is_normal.cpp similarity index 77% rename from test/doc/core/regular/is_normal.cpp rename to test/doc/core/is_normal.cpp index 7d68ab40b6..4637b813e8 100644 --- a/test/doc/core/regular/is_normal.cpp +++ b/test/doc/core/is_normal.cpp @@ -11,8 +11,9 @@ int main() eve::minf(eve::as()), eve::nan(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_normal(pf) = " << eve::is_normal(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_normal(pf) = " << eve::is_normal(pf) << '\n' + << "-> is_normal[pf>0](pf) = " << eve::is_normal[pf > 0](pf) << '\n'; float xf = 1.0f; float yf = eve::mindenormal(eve::as()); diff --git a/test/doc/core/regular/is_not_denormal.cpp b/test/doc/core/is_not_denormal.cpp similarity index 75% rename from test/doc/core/regular/is_not_denormal.cpp rename to test/doc/core/is_not_denormal.cpp index 777345d597..7a97359ab0 100644 --- a/test/doc/core/regular/is_not_denormal.cpp +++ b/test/doc/core/is_not_denormal.cpp @@ -11,8 +11,9 @@ int main() eve::minf(eve::as()), eve::nan(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_not_denormal(pf) = " << eve::is_not_denormal(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_not_denormal(pf) = " << eve::is_not_denormal(pf) << '\n' + << "-> is_not_denormal[pf>0](pf) = " << eve::is_not_denormal[pf > 0](pf) << '\n'; float xf = 1.0f; float yf = eve::mindenormal(eve::as()); diff --git a/test/doc/core/fuzzy/is_not_equal.cpp b/test/doc/core/is_not_equal.cpp similarity index 61% rename from test/doc/core/fuzzy/is_not_equal.cpp rename to test/doc/core/is_not_equal.cpp index cc524b96ef..4b697adc94 100644 --- a/test/doc/core/fuzzy/is_not_equal.cpp +++ b/test/doc/core/is_not_equal.cpp @@ -6,8 +6,14 @@ using wide_ft = eve::wide>; int main() { - wide_ft pf = {1.0f, 1.0f, -1.0f, -2.0f}; + wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f}; wide_ft qf = {1.0f, -1.0f, -1.0f, -2.0f}; + + std::cout << "---- simd" << '\n' + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> is_not_equal(pf, qf) = " << eve::is_not_equal(pf, qf) << '\n'; + pf += 3*eve::eps(eve::as()); std::cout << "---- simd" << '\n' @@ -17,5 +23,13 @@ int main() << "-> definitely(is_not_equal)(pf, qf) = " << eve::definitely(eve::is_not_equal)(pf, qf) << '\n' << "-> definitely(is_not_equal)(pf, qf, 2) = " << eve::definitely(eve::is_not_equal)(pf, qf, 2) << '\n' << "-> definitely(is_not_equal)(pf, qf, 2.0f) = " << eve::definitely(eve::is_not_equal)(pf, qf, 2.0f) << '\n'; + + float xf = 1.0f; + float yf = 2.0f; + + std::cout << "---- scalar" << '\n' + << "<- xf = " << xf << '\n' + << "<- yf = " << yf << '\n' + << "-> is_not_equal(xf, yf) = " << eve::is_not_equal(xf, yf) << '\n'; return 0; } diff --git a/test/doc/core/regular/is_not_finite.cpp b/test/doc/core/is_not_finite.cpp similarity index 76% rename from test/doc/core/regular/is_not_finite.cpp rename to test/doc/core/is_not_finite.cpp index af90307765..4b04c90f50 100644 --- a/test/doc/core/regular/is_not_finite.cpp +++ b/test/doc/core/is_not_finite.cpp @@ -11,9 +11,9 @@ int main() eve::minf(eve::as()), eve::nan(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_not_finite(pf) = " << eve::is_not_finite(pf) << '\n'; - + << "<- pf = " << pf << '\n' + << "-> is_not_finite(pf) = " << eve::is_not_finite(pf) << '\n' + << "-> is_not_finite[pf>0](pf) = " << eve::is_not_finite[pf > 0](pf) << '\n'; float xf = 1.0f; float yf = eve::mindenormal(eve::as()); diff --git a/test/doc/core/regular/is_not_flint.cpp b/test/doc/core/is_not_flint.cpp similarity index 85% rename from test/doc/core/regular/is_not_flint.cpp rename to test/doc/core/is_not_flint.cpp index 6a993e4ca2..d7165bf9e5 100644 --- a/test/doc/core/regular/is_not_flint.cpp +++ b/test/doc/core/is_not_flint.cpp @@ -12,7 +12,8 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "-> is_not_flint(pf) = " << eve::is_not_flint(pf) << '\n' - << "-> is_not_flint[eve::pedantic](pf) = " << eve::is_not_flint[eve::pedantic](pf) << '\n' ; + << "-> is_not_flint[eve::pedantic](pf) = " << eve::is_not_flint[eve::pedantic](pf) << '\n' + << "-> is_not_flint[pf > 0](pf) = " << eve::is_not_flint[pf > 0](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_not_greater.cpp b/test/doc/core/is_not_greater.cpp similarity index 56% rename from test/doc/core/regular/is_not_greater.cpp rename to test/doc/core/is_not_greater.cpp index a5ee240286..0761f4b6ed 100644 --- a/test/doc/core/regular/is_not_greater.cpp +++ b/test/doc/core/is_not_greater.cpp @@ -10,9 +10,11 @@ int main() wide_ft qf = {1.0f, -1.0f, 0.0f, -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_not_greater(pf, qf) = " << eve::is_not_greater(pf, qf) << '\n'; + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> is_not_greater(pf, qf) = " << eve::is_not_greater(pf, qf) << '\n' + << "-> almost(is_not_greater)(pf, qf) = " << eve::almost(eve::is_not_greater)(pf, qf) << '\n' + << "-> is_not_greater[pf > 0](pf, qf) = " << eve::is_not_greater[pf > 0](pf, qf) << '\n'; float xf = 1.0f; float yf = 2.0f; diff --git a/test/doc/core/regular/is_not_greater_equal.cpp b/test/doc/core/is_not_greater_equal.cpp similarity index 53% rename from test/doc/core/regular/is_not_greater_equal.cpp rename to test/doc/core/is_not_greater_equal.cpp index a517ebf82d..f8292035a2 100644 --- a/test/doc/core/regular/is_not_greater_equal.cpp +++ b/test/doc/core/is_not_greater_equal.cpp @@ -10,9 +10,11 @@ int main() wide_ft qf = {1.0f, -1.0f, 0.0f, -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_not_greater_equal(pf, qf) = " << eve::is_not_greater_equal(pf, qf) << '\n'; + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> is_not_greater_equal(pf, qf) = " << eve::is_not_greater_equal(pf, qf) << '\n' + << "-> is_not_greater_equal[pf>0](pf, qf) = " << eve::is_not_greater_equal[pf > 0](pf, qf) << '\n' + << "-> definitely(is_not_greater_equal)(pf, qf) = " << eve::definitely(eve::is_not_greater_equal)(pf, qf) << '\n'; float xf = 1.0f; float yf = 2.0f; diff --git a/test/doc/core/regular/is_not_imag.cpp b/test/doc/core/is_not_imag.cpp similarity index 60% rename from test/doc/core/regular/is_not_imag.cpp rename to test/doc/core/is_not_imag.cpp index bb5b62ce80..d76f61db1c 100644 --- a/test/doc/core/regular/is_not_imag.cpp +++ b/test/doc/core/is_not_imag.cpp @@ -9,8 +9,9 @@ int main() wide_ft pf = {0.0f, 1.0f, -0.0f, -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_not_imag(pf) = " << eve::is_not_imag(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_not_imag(pf) = " << eve::is_not_imag(pf) << '\n' + << "-> is_not_imag[is_positive(pf)](pf) = " << eve::is_not_imag[eve::is_positive(pf)](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_not_infinite.cpp b/test/doc/core/is_not_infinite.cpp similarity index 68% rename from test/doc/core/regular/is_not_infinite.cpp rename to test/doc/core/is_not_infinite.cpp index 33c7e38039..2e1241a90d 100644 --- a/test/doc/core/regular/is_not_infinite.cpp +++ b/test/doc/core/is_not_infinite.cpp @@ -10,8 +10,9 @@ int main() eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_not_infinite(pf) = " << eve::is_not_infinite(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_not_infinite(pf) = " << eve::is_not_infinite(pf) << '\n' + << "-> is_not_infinite[pf > 0](pf) = " << eve::is_not_infinite[pf > 0](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_not_less.cpp b/test/doc/core/is_not_less.cpp similarity index 56% rename from test/doc/core/regular/is_not_less.cpp rename to test/doc/core/is_not_less.cpp index 930484647b..1cda87d36f 100644 --- a/test/doc/core/regular/is_not_less.cpp +++ b/test/doc/core/is_not_less.cpp @@ -10,9 +10,11 @@ int main() wide_ft qf = {1.0f, -1.0f, 0.0f, -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_not_less(pf, qf) = " << eve::is_not_less(pf, qf) << '\n'; + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> is_not_less(pf, qf) = " << eve::is_not_less(pf, qf) << '\n' + << "-> is_not_less[pf > 0](pf, qf) = " << eve::is_not_less[pf > 0](pf, qf) << '\n' + << "-> almost(is_not_less)(pf, qf) = " << eve::almost(eve::is_not_less)(pf, qf) << '\n'; float xf = 1.0f; float yf = 2.0f; diff --git a/test/doc/core/regular/is_not_less_equal.cpp b/test/doc/core/is_not_less_equal.cpp similarity index 84% rename from test/doc/core/regular/is_not_less_equal.cpp rename to test/doc/core/is_not_less_equal.cpp index 5951483c5a..e8f888d200 100644 --- a/test/doc/core/regular/is_not_less_equal.cpp +++ b/test/doc/core/is_not_less_equal.cpp @@ -12,7 +12,8 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = = " << pf << '\n' << "<- qf = " << qf << '\n' - << "-> is_not_less_equal(pf, qf) = " << eve::is_not_less_equal(pf, qf) << '\n'; + << "-> is_not_less_equal(pf, qf) = " << eve::is_not_less_equal(pf, qf) << '\n' + << "-> is_not_less_equal[pf > 0](pf, qf) = " << eve::is_not_less_equal[pf > 0](pf, qf) << '\n'; float xf = 1.0f; float yf = 2.0f; diff --git a/test/doc/core/regular/is_not_nan.cpp b/test/doc/core/is_not_nan.cpp similarity index 70% rename from test/doc/core/regular/is_not_nan.cpp rename to test/doc/core/is_not_nan.cpp index 0f5aa0ca4d..e2bb0cc50d 100644 --- a/test/doc/core/regular/is_not_nan.cpp +++ b/test/doc/core/is_not_nan.cpp @@ -10,8 +10,9 @@ int main() eve::inf(eve::as()), eve::minf(eve::as()), -eve::nan(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_not_nan(pf) = " << eve::is_not_nan(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_not_nan(pf) = " << eve::is_not_nan(pf) << '\n' + << "-> is_not_nan[pf > 0](pf) = " << eve::is_not_nan[pf > 0](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_not_real.cpp b/test/doc/core/is_not_real.cpp similarity index 64% rename from test/doc/core/regular/is_not_real.cpp rename to test/doc/core/is_not_real.cpp index 3d7e22d635..acc01ee9cf 100644 --- a/test/doc/core/regular/is_not_real.cpp +++ b/test/doc/core/is_not_real.cpp @@ -9,8 +9,9 @@ int main() wide_ft pf = {0.0f, 1.0f, -0.0f, -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_not_real(pf) = " << eve::is_not_real(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_not_real(pf) = " << eve::is_not_real(pf) << '\n' + << "-> is_not_real[pf > 0](pf) = " << eve::is_not_real[pf > 0](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_odd.cpp b/test/doc/core/is_odd.cpp similarity index 66% rename from test/doc/core/regular/is_odd.cpp rename to test/doc/core/is_odd.cpp index d95fd4e14f..59366b551d 100644 --- a/test/doc/core/regular/is_odd.cpp +++ b/test/doc/core/is_odd.cpp @@ -9,8 +9,9 @@ int main() wide_ft pf = {0.0f, 1.0f, -1.5f, -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_odd(pf) = " << eve::is_odd(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_odd(pf) = " << eve::is_odd(pf) << '\n' + << "-> is_odd[pf > 0](pf) = " << eve::is_odd[pf > 0](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_ordered.cpp b/test/doc/core/is_ordered.cpp similarity index 70% rename from test/doc/core/regular/is_ordered.cpp rename to test/doc/core/is_ordered.cpp index 866873748c..76b5b8b386 100644 --- a/test/doc/core/regular/is_ordered.cpp +++ b/test/doc/core/is_ordered.cpp @@ -12,9 +12,10 @@ int main() eve::nan(eve::as()), -2.0f, -eve::nan(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_ordered(pf, qf) = " << eve::is_ordered(pf, qf) << '\n'; + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> is_ordered(pf, qf) = " << eve::is_ordered(pf, qf) << '\n' + << "-> is_ordered[pf > qf](pf, qf) = " << eve::is_ordered[pf > qf](pf, qf) << '\n'; float xf = 4.0f; float yf = -1.0f; diff --git a/test/doc/core/regular/is_positive.cpp b/test/doc/core/is_positive.cpp similarity index 70% rename from test/doc/core/regular/is_positive.cpp rename to test/doc/core/is_positive.cpp index 1a0e15d444..4bf44529e8 100644 --- a/test/doc/core/regular/is_positive.cpp +++ b/test/doc/core/is_positive.cpp @@ -10,8 +10,9 @@ int main() eve::inf(eve::as()), eve::minf(eve::as()), -eve::nan(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_positive(pf) = " << eve::is_positive(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_positive(pf) = " << eve::is_positive(pf) << '\n' + << "-> is_positive[pf < 2](pf) = " << eve::is_positive[pf < 2](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_pow2.cpp b/test/doc/core/is_pow2.cpp similarity index 66% rename from test/doc/core/regular/is_pow2.cpp rename to test/doc/core/is_pow2.cpp index ec23ced3c3..cd7533bd2c 100644 --- a/test/doc/core/regular/is_pow2.cpp +++ b/test/doc/core/is_pow2.cpp @@ -9,8 +9,9 @@ int main() wide_it pi = {14, 1, 3, 0, 16, 23000, 0, 27}; std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> is_pow2(pi) = " << eve::is_pow2(pi) << '\n'; + << "<- pi = " << pi << '\n' + << "-> is_pow2(pi) = " << eve::is_pow2(pi) << '\n' + << "-> is_pow2[pi < 10](pi) = " << eve::is_pow2[pi < 10](pi) << '\n'; std::uint32_t xf = 48; diff --git a/test/doc/core/regular/is_real.cpp b/test/doc/core/is_real.cpp similarity index 65% rename from test/doc/core/regular/is_real.cpp rename to test/doc/core/is_real.cpp index cb09a18b06..07cb59f206 100644 --- a/test/doc/core/regular/is_real.cpp +++ b/test/doc/core/is_real.cpp @@ -9,8 +9,9 @@ int main() wide_ft pf = {0.0f, 1.0f, -0.0f, -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_real(pf) = " << eve::is_real(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> is_real(pf) = " << eve::is_real(pf) << '\n' + << "-> is_real[pf > 0](pf) = " << eve::is_real[pf > 0](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/regular/is_unit.cpp b/test/doc/core/is_unit.cpp similarity index 66% rename from test/doc/core/regular/is_unit.cpp rename to test/doc/core/is_unit.cpp index e9dfdc6161..e47e767e61 100644 --- a/test/doc/core/regular/is_unit.cpp +++ b/test/doc/core/is_unit.cpp @@ -10,6 +10,7 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' - << "-> is_unit(pf) = " << eve::is_unit(pf) << '\n'; + << "-> is_unit(pf) = " << eve::is_unit(pf) << '\n' + << "-> is_unit[pf > 0](pf) = " << eve::is_unit[pf > 0](pf) << '\n'; return 0; } diff --git a/test/doc/core/regular/is_unordered.cpp b/test/doc/core/is_unordered.cpp similarity index 69% rename from test/doc/core/regular/is_unordered.cpp rename to test/doc/core/is_unordered.cpp index 31d800bca0..467b16f3db 100644 --- a/test/doc/core/regular/is_unordered.cpp +++ b/test/doc/core/is_unordered.cpp @@ -12,9 +12,10 @@ int main() eve::nan(eve::as()), -2.0f, -eve::nan(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_unordered(pf, qf) = " << eve::is_unordered(pf, qf) << '\n'; + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> is_unordered(pf, qf) = " << eve::is_unordered(pf, qf) << '\n' + << "-> is_unordered[pf > qf](pf, qf) = " << eve::is_unordered[pf > qf](pf, qf) << '\n'; float xf = 4.0f; float yf = -1.0f; diff --git a/test/doc/core/regular/ldexp.cpp b/test/doc/core/ldexp.cpp similarity index 71% rename from test/doc/core/regular/ldexp.cpp rename to test/doc/core/ldexp.cpp index e6121a8f38..374ee99a11 100644 --- a/test/doc/core/regular/ldexp.cpp +++ b/test/doc/core/ldexp.cpp @@ -12,9 +12,10 @@ int main() wide_ft pf = {1.0f, -1.0f, 0.0f, -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qi = " << qi << '\n' - << "-> ldexp(pf, qi) = " << eve::ldexp(pf, qi) << '\n'; + << "<- pf = " << pf << '\n' + << "<- qi = " << qi << '\n' + << "-> ldexp[pf<0.0](pf, qi) = " << eve::ldexp[pf < 0.0](pf, qi) << '\n' + << "-> ldexp(pf, qi) = " << eve::ldexp(pf, qi) << '\n'; float xf = 2, mxf = -2; iT yi = 3; diff --git a/test/doc/core/masked/lerp.cpp b/test/doc/core/lerp.cpp similarity index 56% rename from test/doc/core/masked/lerp.cpp rename to test/doc/core/lerp.cpp index 2ae9240f05..0b05c5cfc0 100644 --- a/test/doc/core/masked/lerp.cpp +++ b/test/doc/core/lerp.cpp @@ -11,6 +11,15 @@ int main() << " <- pf = " << pf << '\n' << " <- qf = " << qf << '\n' << " <- tf = " << tf << '\n' - << " -> lerp[pf > 0](pf, qf, tf) = " << eve::lerp[pf > 0](pf, qf, tf) << '\n'; + << " -> lerp[pf > 0](pf, qf, tf) = " << eve::lerp[pf > 0](pf, qf, tf) << '\n' + << " -> lerp(pf, qf, tf) = " << eve::lerp(pf, qf, tf) << '\n'; + + double x = 10000, y = 32700, t = 0.5; + + std::cout << "---- scalar" << '\n' + << " <- x = " << x << '\n' + << " <- y = " << y << '\n' + << " <- t = " << t << '\n' + << " -> lerp(x, y, t) = " << eve::lerp(x, y, t) << '\n'; return 0; } diff --git a/test/doc/core/regular/lo.cpp b/test/doc/core/lo.cpp similarity index 100% rename from test/doc/core/regular/lo.cpp rename to test/doc/core/lo.cpp diff --git a/test/doc/core/regular/logical_and.cpp b/test/doc/core/logical_and.cpp similarity index 100% rename from test/doc/core/regular/logical_and.cpp rename to test/doc/core/logical_and.cpp diff --git a/test/doc/core/regular/logical_andnot.cpp b/test/doc/core/logical_andnot.cpp similarity index 100% rename from test/doc/core/regular/logical_andnot.cpp rename to test/doc/core/logical_andnot.cpp diff --git a/test/doc/core/regular/logical_not.cpp b/test/doc/core/logical_not.cpp similarity index 100% rename from test/doc/core/regular/logical_not.cpp rename to test/doc/core/logical_not.cpp diff --git a/test/doc/core/regular/logical_notand.cpp b/test/doc/core/logical_notand.cpp similarity index 100% rename from test/doc/core/regular/logical_notand.cpp rename to test/doc/core/logical_notand.cpp diff --git a/test/doc/core/regular/logical_notor.cpp b/test/doc/core/logical_notor.cpp similarity index 100% rename from test/doc/core/regular/logical_notor.cpp rename to test/doc/core/logical_notor.cpp diff --git a/test/doc/core/regular/logical_or.cpp b/test/doc/core/logical_or.cpp similarity index 100% rename from test/doc/core/regular/logical_or.cpp rename to test/doc/core/logical_or.cpp diff --git a/test/doc/core/regular/logical_ornot.cpp b/test/doc/core/logical_ornot.cpp similarity index 100% rename from test/doc/core/regular/logical_ornot.cpp rename to test/doc/core/logical_ornot.cpp diff --git a/test/doc/core/regular/logical_xor.cpp b/test/doc/core/logical_xor.cpp similarity index 100% rename from test/doc/core/regular/logical_xor.cpp rename to test/doc/core/logical_xor.cpp diff --git a/test/doc/core/regular/lohi.cpp b/test/doc/core/lohi.cpp similarity index 100% rename from test/doc/core/regular/lohi.cpp rename to test/doc/core/lohi.cpp diff --git a/test/doc/core/regular/lookup.cpp b/test/doc/core/lookup.cpp similarity index 100% rename from test/doc/core/regular/lookup.cpp rename to test/doc/core/lookup.cpp diff --git a/test/doc/core/regular/manhattan.cpp b/test/doc/core/manhattan.cpp similarity index 67% rename from test/doc/core/regular/manhattan.cpp rename to test/doc/core/manhattan.cpp index 02de62cc0c..19c8da5e0a 100644 --- a/test/doc/core/regular/manhattan.cpp +++ b/test/doc/core/manhattan.cpp @@ -6,8 +6,8 @@ using wide_ft = eve::wide>; int main() { - wide_ft pf = {-1.0f, 2.0f, -3.0f, -32768.0f}; - wide_ft qf = {-4, 3, -2, -12}; + wide_ft pf = {-1.0f, 2.0f, -3.0f, eve::inf(eve::as())}; + wide_ft qf = {-4, 3, -2, eve::nan(eve::as())}; std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' @@ -18,9 +18,11 @@ int main() float yf = 2.0f; std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "<- yf = " << yf << '\n' - << "-> eve::manhattan(xf, yf) = " << eve::manhattan(xf, yf) << '\n'; + << "<- xf = " << xf << '\n' + << "<- yf = " << yf << '\n' + << "-> eve::manhattan(xf, yf) = " << eve::manhattan(xf, yf) << '\n' + << "-> manhattan[pedantic](pf, qf) = " << eve::manhattan[eve::pedantic](pf, qf) << '\n' + << "-> eve::manhattan[pf > 0](pf, qf) = " << eve::manhattan[pf > 0](pf, qf) << '\n'; auto k = kumi::tuple{pf, qf, pf+qf, 1.0f}; std::cout << "---- multi parameters" << '\n' diff --git a/test/doc/core/regular/mantissa.cpp b/test/doc/core/mantissa.cpp similarity index 100% rename from test/doc/core/regular/mantissa.cpp rename to test/doc/core/mantissa.cpp diff --git a/test/doc/core/masked/abs.cpp b/test/doc/core/masked/abs.cpp deleted file mode 100644 index 0fa1ec2310..0000000000 --- a/test/doc/core/masked/abs.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {-1, 2, -3, -18}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> abs[ignore_first(2)](pi) = " << eve::abs[eve::ignore_first(2)](pi) << '\n' - << "-> abs[pi > -2](pi) = " << eve::abs[pi > -2](pi) << '\n' - ; - return 0; -} diff --git a/test/doc/core/masked/absmax.cpp b/test/doc/core/masked/absmax.cpp deleted file mode 100644 index 3e360ba9bb..0000000000 --- a/test/doc/core/masked/absmax.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, 1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, -3.0f, - eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> absmax[pf < -1.0f](pf, qf) = " << eve::absmax[pf < -1.0f](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/absmin.cpp b/test/doc/core/masked/absmin.cpp deleted file mode 100644 index 78a472681a..0000000000 --- a/test/doc/core/masked/absmin.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, 1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, -3.0f, - eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> absmin[pf < -1.0f](pf, qf) = " << eve::absmin[pf < -1.0f](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/add.cpp b/test/doc/core/masked/add.cpp deleted file mode 100644 index f28c3d3fdb..0000000000 --- a/test/doc/core/masked/add.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, -32700, 32700}, qi = {4, 1, -100, 100}; - - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> add[pi < qi](pi, qi) = " << eve::add[pi < qi](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/agm.cpp b/test/doc/core/masked/agm.cpp deleted file mode 100644 index e148e30ddf..0000000000 --- a/test/doc/core/masked/agm.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include -#include - - -int main() -{ - using wf_t = eve::wide>; - wf_t pf = {3, 2, 4, 3}; - wf_t qf = {4, 1, 3, eve::inf(eve::as())}; - - std::cout << "---- simd" << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> agm[pf < qf](pf, qf) = " << eve::agm[pf < qf](pf, qf) << '\n'; - - return 0; -} diff --git a/test/doc/core/masked/all.cpp b/test/doc/core/masked/all.cpp deleted file mode 100644 index 936ade1a3c..0000000000 --- a/test/doc/core/masked/all.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, 3.0f, 32768.0f}; - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> all[ignore_first(1)](pf > 0.5f) = " << eve::all[eve::ignore_first(1)](pf > 0.5) << '\n'; - - return 0; -} diff --git a/test/doc/core/masked/any.cpp b/test/doc/core/masked/any.cpp deleted file mode 100644 index 6241719b68..0000000000 --- a/test/doc/core/masked/any.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {1.0f, 0.0f, 0.0f, 0.0f}; - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> any[ignore_first(1)](pf > 0.5f) = " << eve::any[eve::ignore_first(1)](pf > 0.5f) << '\n'; - - return 0; -} diff --git a/test/doc/core/masked/average.cpp b/test/doc/core/masked/average.cpp deleted file mode 100644 index 29e136d21b..0000000000 --- a/test/doc/core/masked/average.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include -#include - - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 3}, qi = {4, 1, 1, ~0}; - - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> average[pi > qi](pi, qi) = " << eve::average[pi > qi](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/bit-reverse.cpp b/test/doc/core/masked/bit-reverse.cpp deleted file mode 100644 index 117a69fb03..0000000000 --- a/test/doc/core/masked/bit-reverse.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include - - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {-14, 1, 3, 0}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> bit_reverse[pi>0](pi) = " << eve::bit_reverse[pi>0](pi) << '\n' - << "-> bit_reverse[pi>0](pi, 4) = " << eve::bit_reverse[pi>0](pi, 4)<< '\n' - << "-> bit_reverse[pi>0][pi>2](pi) = " << eve::bit_reverse[pi>0](pi)<< '\n' - << "-> bit_reverse[pi>0][pi > 2](pi, 4) = " << eve::bit_reverse[pi>0](pi, 4)<< '\n' - ; - - return 0; -} diff --git a/test/doc/core/masked/bit_and.cpp b/test/doc/core/masked/bit_and.cpp deleted file mode 100644 index f8f9cc5408..0000000000 --- a/test/doc/core/masked/bit_and.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> bit_and[pi < qi](pi, qi) = " << eve::bit_and[pi < qi](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/bit_andnot.cpp b/test/doc/core/masked/bit_andnot.cpp deleted file mode 100644 index ad36c88e61..0000000000 --- a/test/doc/core/masked/bit_andnot.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> bit_andnot[pi < qi](pi, qi) = " << eve::bit_andnot[pi < qi](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/bit_ceil.cpp b/test/doc/core/masked/bit_ceil.cpp deleted file mode 100644 index f45b43585a..0000000000 --- a/test/doc/core/masked/bit_ceil.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {14, 1, 3, 7, 20, 23000, 0, 27}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> bit_ceil[pi > 4](pi) = " << eve::bit_ceil[pi > 4](pi) << '\n'; - - return 0; -} diff --git a/test/doc/core/masked/bit_floor.cpp b/test/doc/core/masked/bit_floor.cpp deleted file mode 100644 index f086369698..0000000000 --- a/test/doc/core/masked/bit_floor.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {14, 1, 3, 7, 20, 23000, 0, 27}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> bit_floor[pi > 4](pi) = " << eve::bit_floor[pi > 4](pi) << '\n'; - - return 0; -} diff --git a/test/doc/core/masked/bit_mask.cpp b/test/doc/core/masked/bit_mask.cpp deleted file mode 100644 index 557652f36a..0000000000 --- a/test/doc/core/masked/bit_mask.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide>; -using wide_ft = eve::wide>; - -int main() -{ - wide_it pi = {14, 1, 3, 0, 16, 23000, 0, 27}; - wide_ft pf = {14.0, 1.0, -0.0, 0.0, 16.0, 23000.0, eve::inf(eve::as()), 27.0}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "<- pf = " << pf << '\n' - << "-> bit_mask[pi > 4](pi) = " << eve::bit_mask[pi > 4](pi) << '\n' - << "-> bit_mask[pf > 4](pf) = " << eve::bit_mask[pf > 4](pf) << '\n'; - - return 0; -} diff --git a/test/doc/core/masked/bit_not.cpp b/test/doc/core/masked/bit_not.cpp deleted file mode 100644 index 66dcef7654..0000000000 --- a/test/doc/core/masked/bit_not.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {14, 1, 3, 0}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> bit_not[pi > 2](pi) = " << eve::bit_not[pi > 2](pi) << '\n'; - - return 0; -} diff --git a/test/doc/core/masked/bit_notand.cpp b/test/doc/core/masked/bit_notand.cpp deleted file mode 100644 index e7f88776e4..0000000000 --- a/test/doc/core/masked/bit_notand.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> bit_notand[pi < qi](pi, qi) = " << eve::bit_notand[pi < qi](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/bit_notor.cpp b/test/doc/core/masked/bit_notor.cpp deleted file mode 100644 index f45f9d22b3..0000000000 --- a/test/doc/core/masked/bit_notor.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> bit_notor[pi < qi](pi, qi) = " << eve::bit_notor[pi < qi](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/bit_or.cpp b/test/doc/core/masked/bit_or.cpp deleted file mode 100644 index d4b7afd468..0000000000 --- a/test/doc/core/masked/bit_or.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> bit_or[pi < qi](pi, qi) = " << eve::bit_or[pi < qi](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/bit_ornot.cpp b/test/doc/core/masked/bit_ornot.cpp deleted file mode 100644 index bd8360834e..0000000000 --- a/test/doc/core/masked/bit_ornot.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> bit_ornot[pi < qi](pi, qi) = " << eve::bit_ornot[pi < qi](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/bit_shl.cpp b/test/doc/core/masked/bit_shl.cpp deleted file mode 100644 index da12ed4855..0000000000 --- a/test/doc/core/masked/bit_shl.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 4}, qi = {4, 1, 2, 0}; - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> bit_shl[pi < qi]((pi, qi) = " << eve::bit_shl[pi < qi](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/bit_shr.cpp b/test/doc/core/masked/bit_shr.cpp deleted file mode 100644 index 49e8e6190d..0000000000 --- a/test/doc/core/masked/bit_shr.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 4}, qi = {4, 1, 2, 0}; - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> bit_shr[pi < qi]((pi, qi) = " << eve::bit_shr[pi < qi](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/bit_swap_adjacent.cpp b/test/doc/core/masked/bit_swap_adjacent.cpp deleted file mode 100644 index 6b122b6a9b..0000000000 --- a/test/doc/core/masked/bit_swap_adjacent.cpp +++ /dev/null @@ -1,28 +0,0 @@ - -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {0x0fU, 0xf0f0U, 0x0f0f0fU, 0xf0f0f0f0f0U}; - - using eve::is_odd; - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> byte_swap_adjacent[is_odd(pi)](pi, 0) = " << eve::byte_swap_adjacent[is_odd(pi)](pi, 0) << '\n' - << "-> byte_swap_adjacent[is_odd(pi)](pi, 1) = " << eve::byte_swap_adjacent[is_odd(pi)](pi, 1) << '\n' - << "-> byte_swap_adjacent[is_odd(pi)](pi, 2) = " << eve::byte_swap_adjacent[is_odd(pi)](pi, 2) << '\n' - << "-> byte_swap_adjacent[is_odd(pi)](pi, 4) = " << eve::byte_swap_adjacent[is_odd(pi)](pi, 4) << '\n'; - - - std::uint64_t xf = 0xff00ff00ff00ff00ULL; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << std::hex << "0x" << xf << '\n' - << "-> byte_swap_adjacent[is_odd(pi)](xf, 1) = " << std::hex << "0x0" << eve::byte_swap_adjacent[eve::is_odd(pi)](xf,1) << '\n' - << "-> byte_swap_adjacent[is_even(pi)](xf, 1) = " << std::hex << "0x00"<< eve::byte_swap_adjacent[eve::is_odd(pi)](xf,1) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/bit_xor.cpp b/test/doc/core/masked/bit_xor.cpp deleted file mode 100644 index 3434843fef..0000000000 --- a/test/doc/core/masked/bit_xor.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> bit_xor[pi < qi](pi, qi) = " << eve::bit_xor[pi < qi](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/bitofsign.cpp b/test/doc/core/masked/bitofsign.cpp deleted file mode 100644 index b22121c01b..0000000000 --- a/test/doc/core/masked/bitofsign.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, 0.0f, 3.0f, -0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> bitofsign[pf!= 3.0f](pf) = " << eve::bitofsign[pf!= 3.0f](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/byte_reverse.cpp b/test/doc/core/masked/byte_reverse.cpp deleted file mode 100644 index ad24ec7ed0..0000000000 --- a/test/doc/core/masked/byte_reverse.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {257, 1, 3, 0}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> byte_reverse[pi<2](pi) = " << eve::byte_reverse[pi<2](pi) << '\n'; - - return 0; -} diff --git a/test/doc/core/masked/byte_swap_adjacent.cpp b/test/doc/core/masked/byte_swap_adjacent.cpp deleted file mode 100644 index 6b122b6a9b..0000000000 --- a/test/doc/core/masked/byte_swap_adjacent.cpp +++ /dev/null @@ -1,28 +0,0 @@ - -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {0x0fU, 0xf0f0U, 0x0f0f0fU, 0xf0f0f0f0f0U}; - - using eve::is_odd; - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> byte_swap_adjacent[is_odd(pi)](pi, 0) = " << eve::byte_swap_adjacent[is_odd(pi)](pi, 0) << '\n' - << "-> byte_swap_adjacent[is_odd(pi)](pi, 1) = " << eve::byte_swap_adjacent[is_odd(pi)](pi, 1) << '\n' - << "-> byte_swap_adjacent[is_odd(pi)](pi, 2) = " << eve::byte_swap_adjacent[is_odd(pi)](pi, 2) << '\n' - << "-> byte_swap_adjacent[is_odd(pi)](pi, 4) = " << eve::byte_swap_adjacent[is_odd(pi)](pi, 4) << '\n'; - - - std::uint64_t xf = 0xff00ff00ff00ff00ULL; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << std::hex << "0x" << xf << '\n' - << "-> byte_swap_adjacent[is_odd(pi)](xf, 1) = " << std::hex << "0x0" << eve::byte_swap_adjacent[eve::is_odd(pi)](xf,1) << '\n' - << "-> byte_swap_adjacent[is_even(pi)](xf, 1) = " << std::hex << "0x00"<< eve::byte_swap_adjacent[eve::is_odd(pi)](xf,1) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/ceil.cpp b/test/doc/core/masked/ceil.cpp deleted file mode 100644 index 146e394b24..0000000000 --- a/test/doc/core/masked/ceil.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, -1.3f, -1.5f, -1.7f, 2.0f, 2.3f, 2.5f, 2.7f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> ceil[pf > -1.5f](pf) = " << eve::ceil[pf > -1.5f](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/clamp.cpp b/test/doc/core/masked/clamp.cpp deleted file mode 100644 index 62ec4ef1ba..0000000000 --- a/test/doc/core/masked/clamp.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_t = eve::wide>; - -int main() -{ - wide_t xi = {2, -3, 0, 4}; - wide_t lo = {3, -2, -10, 0}; - wide_t hi = {4, -1, 0, 5}; - - std::cout << "---- ximd" << '\n' - << " <- xi = " << xi << '\n' - << " <- lo = " << lo << '\n' - << " <- hi = " << hi << '\n' - << " -> clamp[xi > -2](xi, lo, hi) = " << eve::clamp[xi > -2](xi, lo, hi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/conj.cpp b/test/doc/core/masked/conj.cpp deleted file mode 100644 index 550f266dd2..0000000000 --- a/test/doc/core/masked/conj.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {-1, 2, -3, -18}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> conj[pi > -2](pi) = " << eve::conj[pi > -2](pi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/copysign.cpp b/test/doc/core/masked/copysign.cpp deleted file mode 100644 index 531b6caac7..0000000000 --- a/test/doc/core/masked/copysign.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, -0.0f, - eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> copysign[pf < qf](pf, qf) = " << eve::copysign[pf < qf](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/dec.cpp b/test/doc/core/masked/dec.cpp deleted file mode 100644 index 663a8ed864..0000000000 --- a/test/doc/core/masked/dec.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> dec[pf > 0.0f](pf) = " << eve::dec[pf > 0.0f](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/div.cpp b/test/doc/core/masked/div.cpp deleted file mode 100644 index 97afbfa2f9..0000000000 --- a/test/doc/core/masked/div.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -int main() -{ - using wf_t = eve::wide>; - wf_t pf = {31, 2, 3, 32700}, qf = {4, 8, 16, 100}; - - std::cout << "---- simd" << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> div[pf > qf](pf, qf) = " << eve::div[pf > qf](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/fam.cpp b/test/doc/core/masked/fam.cpp deleted file mode 100644 index 61b6474139..0000000000 --- a/test/doc/core/masked/fam.cpp +++ /dev/null @@ -1,24 +0,0 @@ -#include -#include -#include -#include - -using wide_t = eve::wide>; - -int main() -{ - float es = eve::eps(eve::as()); - float esm1 = es-1.0f; - float esp1 = es+1.0f; - float vm = eve::valmax(eve::as()); - wide_t qf = {2, -3, esp1, vm}; - wide_t pf = {3, -2, esm1, 2 }; - wide_t of = {4, -1, 1.0f, -vm}; - - std::cout << "---- simd" << '\n' - << " <- of = " << of << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> fam[pf+of > 0](of, pf, qf) = " << eve::fam[pf+of > 0](of, pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/fanm.cpp b/test/doc/core/masked/fanm.cpp deleted file mode 100644 index 42a15f2d44..0000000000 --- a/test/doc/core/masked/fanm.cpp +++ /dev/null @@ -1,24 +0,0 @@ -#include -#include -#include -#include - -using wide_t = eve::wide>; - -int main() -{ - float es = eve::eps(eve::as()); - float esm1 = es-1.0f; - float esp1 = es+1.0f; - float vm = eve::valmax(eve::as()); - wide_t qf = {2, -3, esp1, vm}; - wide_t pf = {3, -2, esm1, 2 }; - wide_t of = {4, -1, 1.0f, -vm}; - - std::cout << "---- simd" << '\n' - << " <- of = " << of << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> fanm[pf+of > 0](of, pf, qf) = " << eve::fanm[pf+of > 0](of, pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/fdim.cpp b/test/doc/core/masked/fdim.cpp deleted file mode 100644 index 3da754bf49..0000000000 --- a/test/doc/core/masked/fdim.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pf = {0, 1, -1, -eve::valmax(eve::as())}; - wide_it qf = {1, -1, 0, eve::valmax(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> fdim[pf > qf](pf, qf) = " << eve::fdim[pf > qf](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/firstbitset.cpp b/test/doc/core/masked/firstbitset.cpp deleted file mode 100644 index 793ac126c3..0000000000 --- a/test/doc/core/masked/firstbitset.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {14, 1, 3, 7, 20, 23000, 0, 27}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> firstbitset[pi > 4](pi) = " << eve::firstbitset[pi > 4](pi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/firstbitunset.cpp b/test/doc/core/masked/firstbitunset.cpp deleted file mode 100644 index 5cc081f48d..0000000000 --- a/test/doc/core/masked/firstbitunset.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {14, 1, 3, 7, 20, 23000, 0, 27}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> firstbitunset[pi > 4](pi) = " << eve::firstbitunset[pi > 4](pi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/floor.cpp b/test/doc/core/masked/floor.cpp deleted file mode 100644 index e00ef63b46..0000000000 --- a/test/doc/core/masked/floor.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, -1.3f, -1.5f, -1.7f, 2.0f, 2.3f, 2.5f, 2.7f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> floor[pf > -1.5](pf) = " << eve::floor[pf > -1.5](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/fma.cpp b/test/doc/core/masked/fma.cpp deleted file mode 100644 index 854436bf30..0000000000 --- a/test/doc/core/masked/fma.cpp +++ /dev/null @@ -1,24 +0,0 @@ -#include -#include -#include -#include - -using wide_t = eve::wide>; - -int main() -{ - float es = eve::eps(eve::as()); - float esm1 = es-1.0f; - float esp1 = es+1.0f; - float vm = eve::valmax(eve::as()); - wide_t of = {2, -3, esp1, vm}; - wide_t pf = {3, -2, esm1, 2 }; - wide_t qf = {4, -1, 1.0f, -vm}; - - std::cout << "---- simd" << '\n' - << " <- of = " << of << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> fma[pf < qf](of, pf, qf) = " << eve::fma[pf < qf](of, pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/fmod.cpp b/test/doc/core/masked/fmod.cpp deleted file mode 100644 index 2a0c87523c..0000000000 --- a/test/doc/core/masked/fmod.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pf = {0, 1, -1, -eve::valmax(eve::as())}; - wide_it qf = {1, -1, 0, eve::valmax(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n'; -// << "-> fmod[pf > qf](pf, qf) = " << eve::fmod[pf > qf](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/fms.cpp b/test/doc/core/masked/fms.cpp deleted file mode 100644 index e1a72d1255..0000000000 --- a/test/doc/core/masked/fms.cpp +++ /dev/null @@ -1,24 +0,0 @@ -#include -#include -#include -#include - -using wide_t = eve::wide>; - -int main() -{ - float es = eve::eps(eve::as()); - float esm1 = es-1.0f; - float esp1 = es+1.0f; - float vm = eve::valmax(eve::as()); - wide_t of = {2, -3, esp1, vm}; - wide_t pf = {3, -2, esm1, 2 }; - wide_t qf = {4, -1, -1.0f, vm}; - - std::cout << "---- simd" << '\n' - << " <- of = " << of << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> fms[pf < qf](of, pf, qf) = " << eve::fms[pf < qf](of, pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/fnma.cpp b/test/doc/core/masked/fnma.cpp deleted file mode 100644 index 663b19a8be..0000000000 --- a/test/doc/core/masked/fnma.cpp +++ /dev/null @@ -1,24 +0,0 @@ -#include -#include -#include -#include - -using wide_t = eve::wide>; - -int main() -{ - float es = eve::eps(eve::as()); - float esm1 = es-1.0f; - float esp1 = es+1.0f; - float vm = eve::valmax(eve::as()); - wide_t of = {2, -3, esp1, vm}; - wide_t pf = {3, -2, esm1, 2 }; - wide_t qf = {4, -1, 1.0f, -vm}; - - std::cout << "---- simd" << '\n' - << " <- of = " << of << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> fnma[pf < qf](of, pf, qf) = " << eve::fnma[pf < qf](of, pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/fnms.cpp b/test/doc/core/masked/fnms.cpp deleted file mode 100644 index c1fdcad25e..0000000000 --- a/test/doc/core/masked/fnms.cpp +++ /dev/null @@ -1,24 +0,0 @@ -#include -#include -#include -#include - -using wide_t = eve::wide>; - -int main() -{ - float es = eve::eps(eve::as()); - float esm1 = es-1.0f; - float esp1 = es+1.0f; - float vm = eve::valmax(eve::as()); - wide_t of = {2, -3, esp1, vm}; - wide_t pf = {3, -2, esm1, 2 }; - wide_t qf = {4, -1, 1.0f, -vm}; - - std::cout << "---- simd" << '\n' - << " <- of = " << of << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> fnms[pf < qf](of, pf, qf) = " << eve::fnms[pf < qf](of, pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/frac.cpp b/test/doc/core/masked/frac.cpp deleted file mode 100644 index 21920da0e6..0000000000 --- a/test/doc/core/masked/frac.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, -1.3f, -0.0f, 0.0f, - 2.0f, 2.3f, eve::inf(eve::as()), eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> frac[pf != 2.3f](pf) = " << eve::frac[pf != 2.3f](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/fracscale.cpp b/test/doc/core/masked/fracscale.cpp deleted file mode 100644 index d1c36db416..0000000000 --- a/test/doc/core/masked/fracscale.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf( [](auto i, auto) { return 1.2345678+i; } ); - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> fracscale[ignore_first(2)](pf, 4) = " << eve::fracscale[eve::ignore_first(2)](pf, 4) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/fsm.cpp b/test/doc/core/masked/fsm.cpp deleted file mode 100644 index 8f0cc6a386..0000000000 --- a/test/doc/core/masked/fsm.cpp +++ /dev/null @@ -1,24 +0,0 @@ -#include -#include -#include -#include - -using wide_t = eve::wide>; - -int main() -{ - float es = eve::eps(eve::as()); - float esm1 = es-1.0f; - float esp1 = es+1.0f; - float vm = eve::valmax(eve::as()); - wide_t qf = {2, -3, esp1, vm}; - wide_t pf = {3, -2, esm1, 2 }; - wide_t of = {4, -1, 1.0f, -vm}; - - std::cout << "---- simd" << '\n' - << " <- of = " << of << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> fsm[pf+of > 0](of, pf, qf) = " << eve::fsm[pf+of > 0](of, pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/fsnm.cpp b/test/doc/core/masked/fsnm.cpp deleted file mode 100644 index dd21f6a8d0..0000000000 --- a/test/doc/core/masked/fsnm.cpp +++ /dev/null @@ -1,24 +0,0 @@ -#include -#include -#include -#include - -using wide_t = eve::wide>; - -int main() -{ - float es = eve::eps(eve::as()); - float esm1 = es-1.0f; - float esp1 = es+1.0f; - float vm = eve::valmax(eve::as()); - wide_t qf = {2, -3, esp1, vm}; - wide_t pf = {3, -2, esm1, 2 }; - wide_t of = {4, -1, 1.0f, -vm}; - - std::cout << "---- simd" << '\n' - << " <- of = " << of << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> fsnm[pf+of > 0](of, pf, qf) = " << eve::fsnm[pf+of > 0](of, pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/inc.cpp b/test/doc/core/masked/inc.cpp deleted file mode 100644 index 6a7ead1c0b..0000000000 --- a/test/doc/core/masked/inc.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 10.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> eve::inc[pf < 5.0f][pf > 5.0f](pf) = " << eve::inc[pf < 5.0f][pf > 5.0f](pf) << '\n' - << "-> eve::inc[pf > 5.0f][pf < 5.0f](pf) = " << eve::inc[pf < 5.0f][pf > 5.0f](pf) << '\n' - << "-> eve::inc[pf > 5.0f] (pf) = " << eve::inc [pf > 5.0f](pf) << '\n' - << "-> eve::inc[pf < 5.0f] (pf) = " << eve::inc[pf < 5.0f] (pf) << '\n' - ; - return 0; -} diff --git a/test/doc/core/masked/is_denormal.cpp b/test/doc/core/masked/is_denormal.cpp deleted file mode 100644 index e62d6703a8..0000000000 --- a/test/doc/core/masked/is_denormal.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f,1.0f, -1.0f, -2.0f, - eve::mindenormal(eve::as()), -eve::mindenormal(eve::as()), - eve::minf(eve::as()), eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_denormal[pf > 0](pf) = " << eve::is_denormal[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_equal.cpp b/test/doc/core/masked/is_equal.cpp deleted file mode 100644 index 689685b31d..0000000000 --- a/test/doc/core/masked/is_equal.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, -1.0f, 2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_equal[pf > 0](pf, qf) = " << eve::is_equal[pf > 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_eqz.cpp b/test/doc/core/masked/is_eqz.cpp deleted file mode 100644 index 00e4a3a230..0000000000 --- a/test/doc/core/masked/is_eqz.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_eqz[is_positive(pf)](pf) = " << eve::is_eqz[eve::is_positive(pf)](pf) << '\n'; - - float xf = 1.0f; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "-> is_eqz(xf) = " << eve::is_eqz(xf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_even.cpp b/test/doc/core/masked/is_even.cpp deleted file mode 100644 index 4ea3124b42..0000000000 --- a/test/doc/core/masked/is_even.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.5f, -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_even[pf > 0](pf) = " << eve::is_even[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_finite.cpp b/test/doc/core/masked/is_finite.cpp deleted file mode 100644 index b534764b63..0000000000 --- a/test/doc/core/masked/is_finite.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.5f, -2.0f, -123.345f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_finite[pf > 0](pf) = " << eve::is_finite[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_flint.cpp b/test/doc/core/masked/is_flint.cpp deleted file mode 100644 index b189f94093..0000000000 --- a/test/doc/core/masked/is_flint.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.5f, -2.0f, eve::valmax(eve::as()), - eve::inf(eve::as()), eve::maxflint(eve::as())*2, eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_flint[pf > 0](pf) = " << eve::is_flint[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_gez.cpp b/test/doc/core/masked/is_gez.cpp deleted file mode 100644 index a318bfc71b..0000000000 --- a/test/doc/core/masked/is_gez.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_gez[pf > 0](pf) = " << eve::is_gez[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_greater.cpp b/test/doc/core/masked/is_greater.cpp deleted file mode 100644 index e72fbef833..0000000000 --- a/test/doc/core/masked/is_greater.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, -1.0f, 2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_greater[pf > 0](pf, qf) = " << eve::is_greater[pf > 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_greater_equal.cpp b/test/doc/core/masked/is_greater_equal.cpp deleted file mode 100644 index 6a9f5b5ef8..0000000000 --- a/test/doc/core/masked/is_greater_equal.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f}; - wide_ft qf = {1.0f, -1.0f, -1.0f, -3.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_greater_equal[pf > 0](pf, qf) = " << eve::is_greater_equal[pf > 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_gtz.cpp b/test/doc/core/masked/is_gtz.cpp deleted file mode 100644 index 8848fa66d4..0000000000 --- a/test/doc/core/masked/is_gtz.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_gtz[pf > 0](pf) = " << eve::is_gtz[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_imag.cpp b/test/doc/core/masked/is_imag.cpp deleted file mode 100644 index 1028a8ff7f..0000000000 --- a/test/doc/core/masked/is_imag.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -0.0f, -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_imag[is_positive(pf)](pf) = " << eve::is_imag[eve::is_positive(pf)](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_infinite.cpp b/test/doc/core/masked/is_infinite.cpp deleted file mode 100644 index c874ba6baa..0000000000 --- a/test/doc/core/masked/is_infinite.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.5f, -2.0f, -123.345f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_infinite[pf > 0](pf) = " << eve::is_infinite[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_less.cpp b/test/doc/core/masked/is_less.cpp deleted file mode 100644 index a9421c55af..0000000000 --- a/test/doc/core/masked/is_less.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, 0.0f, 3.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_less[pf > 0](pf, qf) = " << eve::is_less[pf > 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_less_equal.cpp b/test/doc/core/masked/is_less_equal.cpp deleted file mode 100644 index a9421c55af..0000000000 --- a/test/doc/core/masked/is_less_equal.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, 0.0f, 3.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_less[pf > 0](pf, qf) = " << eve::is_less[pf > 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_lessgreater.cpp b/test/doc/core/masked/is_lessgreater.cpp deleted file mode 100644 index a3a72c043c..0000000000 --- a/test/doc/core/masked/is_lessgreater.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -0.0f, -2.0f}; - wide_ft qf = {1.0f, -1.0f, 0.0f, 2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_lessgreater[pf > 0](pf, qf) = " << eve::is_lessgreater[pf > 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_lez.cpp b/test/doc/core/masked/is_lez.cpp deleted file mode 100644 index fc5781b40f..0000000000 --- a/test/doc/core/masked/is_lez.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_lez[pf > 0](pf) = " << eve::is_lez[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_ltz.cpp b/test/doc/core/masked/is_ltz.cpp deleted file mode 100644 index 9b4740a874..0000000000 --- a/test/doc/core/masked/is_ltz.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_ltz[pf > 0](pf) = " << eve::is_ltz[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_nan.cpp b/test/doc/core/masked/is_nan.cpp deleted file mode 100644 index 69e5465291..0000000000 --- a/test/doc/core/masked/is_nan.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.5f, -2.0f, eve::nan(eve::as()), - eve::inf(eve::as()), eve::minf(eve::as()), -eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_nan[pf > 0](pf) = " << eve::is_nan[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_negative.cpp b/test/doc/core/masked/is_negative.cpp deleted file mode 100644 index d4794f8bd7..0000000000 --- a/test/doc/core/masked/is_negative.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.5f, -0.0f, eve::nan(eve::as()), - eve::inf(eve::as()), eve::minf(eve::as()), -eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_negative[pf < 2](pf) = " << eve::is_negative[pf < 2](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_nez.cpp b/test/doc/core/masked/is_nez.cpp deleted file mode 100644 index a97d0f5ceb..0000000000 --- a/test/doc/core/masked/is_nez.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_nez[pf < -0.5](pf) = " << eve::is_nez[pf < -0.5](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_ngez.cpp b/test/doc/core/masked/is_ngez.cpp deleted file mode 100644 index e018fe6787..0000000000 --- a/test/doc/core/masked/is_ngez.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_gez[pf < -0.5](pf) = " << eve::is_ngez[pf < -0.5](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_ngtz.cpp b/test/doc/core/masked/is_ngtz.cpp deleted file mode 100644 index 876cfaa091..0000000000 --- a/test/doc/core/masked/is_ngtz.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_ngtz[pf < -0.5](pf) = " << eve::is_ngtz[pf < -0.5](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_nlez.cpp b/test/doc/core/masked/is_nlez.cpp deleted file mode 100644 index 01520b2bd0..0000000000 --- a/test/doc/core/masked/is_nlez.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_nlez[pf < -0.5](pf) = " << eve::is_nlez[pf < -0.5](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_nltz.cpp b/test/doc/core/masked/is_nltz.cpp deleted file mode 100644 index 7c423e858f..0000000000 --- a/test/doc/core/masked/is_nltz.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_nltz[pf < -0.5](pf) = " << eve::is_nltz[pf < -0.5](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_normal.cpp b/test/doc/core/masked/is_normal.cpp deleted file mode 100644 index 6c6fa5a700..0000000000 --- a/test/doc/core/masked/is_normal.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f,1.0f, -1.0f, -2.0f, - eve::mindenormal(eve::as()), -eve::mindenormal(eve::as()), - eve::minf(eve::as()), eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_normal[pf > 0](pf) = " << eve::is_normal[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_not_denormal.cpp b/test/doc/core/masked/is_not_denormal.cpp deleted file mode 100644 index cf7eff380f..0000000000 --- a/test/doc/core/masked/is_not_denormal.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f,1.0f, -1.0f, -2.0f, - eve::mindenormal(eve::as()), -eve::mindenormal(eve::as()), - eve::minf(eve::as()), eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_not_denormal[pf > 0](pf) = " << eve::is_not_denormal[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_not_equal.cpp b/test/doc/core/masked/is_not_equal.cpp deleted file mode 100644 index 32d5697914..0000000000 --- a/test/doc/core/masked/is_not_equal.cpp +++ /dev/null @@ -1,18 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f}; - wide_ft qf = {1.0f, -1.0f, -1.0f, -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_not_equal[pf > 0.0f](pf, qf) = " << eve::is_not_equal[pf > 0.0f](pf, qf) << '\n'; - - return 0; -} diff --git a/test/doc/core/masked/is_not_finite.cpp b/test/doc/core/masked/is_not_finite.cpp deleted file mode 100644 index b4c3768f52..0000000000 --- a/test/doc/core/masked/is_not_finite.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.5f, -2.0f, -123.345f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_not_finite[pf > 0](pf) = " << eve::is_not_finite[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_not_flint.cpp b/test/doc/core/masked/is_not_flint.cpp deleted file mode 100644 index 28765609ca..0000000000 --- a/test/doc/core/masked/is_not_flint.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.5f, -2.0f, eve::valmax(eve::as()), - eve::inf(eve::as()), eve::maxflint(eve::as())*2, eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_not_flint[pf > 0](pf) = " << eve::is_not_flint[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_not_greater.cpp b/test/doc/core/masked/is_not_greater.cpp deleted file mode 100644 index 03a798efef..0000000000 --- a/test/doc/core/masked/is_not_greater.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, -1.0f, 2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_not_greater[pf > 0](pf, qf) = " << eve::is_not_greater[pf > 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_not_greater_equal.cpp b/test/doc/core/masked/is_not_greater_equal.cpp deleted file mode 100644 index af7a9101e6..0000000000 --- a/test/doc/core/masked/is_not_greater_equal.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f}; - wide_ft qf = {1.0f, -1.0f, -1.0f, -3.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_not_greater_equal[pf > 0](pf, qf) = " << eve::is_not_greater_equal[pf > 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_not_imag.cpp b/test/doc/core/masked/is_not_imag.cpp deleted file mode 100644 index 316a64d831..0000000000 --- a/test/doc/core/masked/is_not_imag.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -0.0f, -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_not_imag[is_positive(pf)](pf) = " << eve::is_not_imag[eve::is_positive(pf)](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_not_infinite.cpp b/test/doc/core/masked/is_not_infinite.cpp deleted file mode 100644 index e8743cf679..0000000000 --- a/test/doc/core/masked/is_not_infinite.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.5f, -2.0f, -123.345f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_not_infinite[pf > 0](pf) = " << eve::is_not_infinite[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_not_less.cpp b/test/doc/core/masked/is_not_less.cpp deleted file mode 100644 index c67ced22f6..0000000000 --- a/test/doc/core/masked/is_not_less.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, 0.0f, 3.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_not_less[pf > 0](pf, qf) = " << eve::is_not_less[pf > 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_not_less_equal.cpp b/test/doc/core/masked/is_not_less_equal.cpp deleted file mode 100644 index 2099c077ef..0000000000 --- a/test/doc/core/masked/is_not_less_equal.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, 0.0f, 3.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_not_less_equal[pf > 0](pf, qf) = " << eve::is_not_less_equal[pf > 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_not_nan.cpp b/test/doc/core/masked/is_not_nan.cpp deleted file mode 100644 index f46e855c0d..0000000000 --- a/test/doc/core/masked/is_not_nan.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.5f, -2.0f, eve::nan(eve::as()), - eve::inf(eve::as()), eve::minf(eve::as()), -eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_not_nan[pf > 0](pf) = " << eve::is_not_nan[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_not_real.cpp b/test/doc/core/masked/is_not_real.cpp deleted file mode 100644 index 9aef23d4e0..0000000000 --- a/test/doc/core/masked/is_not_real.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -0.0f, -2.0f}; - - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_not_real[pf > 0](pf) = " << eve::is_not_real[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_odd.cpp b/test/doc/core/masked/is_odd.cpp deleted file mode 100644 index 773af211c1..0000000000 --- a/test/doc/core/masked/is_odd.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.5f, -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_odd[pf > 0](pf) = " << eve::is_odd[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_ordered.cpp b/test/doc/core/masked/is_ordered.cpp deleted file mode 100644 index e890778ca3..0000000000 --- a/test/doc/core/masked/is_ordered.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, -0.0f, - eve::nan(eve::as()), -2.0f, -eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_ordered[pf > qf](pf, qf) = " << eve::is_ordered[pf > qf](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_positive.cpp b/test/doc/core/masked/is_positive.cpp deleted file mode 100644 index aafb43c535..0000000000 --- a/test/doc/core/masked/is_positive.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.5f, -0.0f, eve::nan(eve::as()), - eve::inf(eve::as()), eve::minf(eve::as()), -eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_positive[pf < 2](pf) = " << eve::is_positive[pf < 2](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_pow2.cpp b/test/doc/core/masked/is_pow2.cpp deleted file mode 100644 index c961d58ca4..0000000000 --- a/test/doc/core/masked/is_pow2.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {14, 1, 3, 0, 16, 23000, 0, 27}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> is_pow2[pi < 10](pi) = " << eve::is_pow2[pi < 10](pi) << '\n'; - - return 0; -} diff --git a/test/doc/core/masked/is_real.cpp b/test/doc/core/masked/is_real.cpp deleted file mode 100644 index 8e1d83d59e..0000000000 --- a/test/doc/core/masked/is_real.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -0.0f, -2.0f}; - - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_real[pf > 0](pf) = " << eve::is_real[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_unit.cpp b/test/doc/core/masked/is_unit.cpp deleted file mode 100644 index a053ae85ac..0000000000 --- a/test/doc/core/masked/is_unit.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {4.0f, 1.0f, -1.0f, -0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> is_unit[pf < 3](pf) = " << eve::is_unit[pf < 3](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/is_unordered.cpp b/test/doc/core/masked/is_unordered.cpp deleted file mode 100644 index c78728ac86..0000000000 --- a/test/doc/core/masked/is_unordered.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, -0.0f, - eve::nan(eve::as()), -2.0f, -eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_unordered[pf > qf](pf, qf) = " << eve::is_unordered[pf > qf](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/ldexp.cpp b/test/doc/core/masked/ldexp.cpp deleted file mode 100644 index 493bd347ae..0000000000 --- a/test/doc/core/masked/ldexp.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using iT = std::int32_t; -using wide_it = eve::wide>; -using wide_ft = eve::wide>; - -int main() -{ - wide_it qi = {12, 2, -2, 3 }; - wide_ft pf = {1.0f, -1.0f, 0.0f, -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qi = " << qi << '\n' - << "-> ldexp[pf < 0.0](pf, qi) = " << eve::ldexp[pf < 0.0](pf, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/manhattan.cpp b/test/doc/core/masked/manhattan.cpp deleted file mode 100644 index e86d493eb0..0000000000 --- a/test/doc/core/masked/manhattan.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, 2.0f, -3.0f, -32768.0f}; - wide_ft qf = {-4, 3, -2, -12}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> eve::manhattan[pf > 0](pf, qf) = " << eve::manhattan[pf > 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/mantissa.cpp b/test/doc/core/masked/mantissa.cpp deleted file mode 100644 index 706c1bcf94..0000000000 --- a/test/doc/core/masked/mantissa.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, 0.0f, 367.0f, -1005600.0f, eve::mindenormal(eve::as()), - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> mantissa[pf > 0](pf) = " << eve::mantissa[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/mask.cpp b/test/doc/core/masked/mask.cpp deleted file mode 100644 index f68047ef08..0000000000 --- a/test/doc/core/masked/mask.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {-1, 2, -3, 4}; - wide_ft pf = {-1.0f, -2.0f, -3.0f, -32.0f}; - - std::cout << "<- pi = " << pi << '\n' - << "<- pf = " << pf << '\n' - << "-> eve::dec(pi) = " << eve::dec(pi) << '\n' - << "-> (eve::dec[pi > 0])(pi) = " << (eve::dec[pi > 0])(pi) << '\n' - << "-> eve::dec(pf) = " << eve::dec(pf) << '\n' - << "-> (eve::dec[pi < 2])(pf) = " << (eve::dec[pi < 2])(pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/max.cpp b/test/doc/core/masked/max.cpp deleted file mode 100644 index 5cf580241e..0000000000 --- a/test/doc/core/masked/max.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using eve::pedantic; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, eve::nan(eve::as()), - -0.0f, eve::nan(eve::as()), -2.0f}; - - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> maxmag[pf < 0](pf, qf) = " << eve::maxmag[pf < 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/maxabs.cpp b/test/doc/core/masked/maxabs.cpp deleted file mode 100644 index 87019c8b0f..0000000000 --- a/test/doc/core/masked/maxabs.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using eve::pedantic; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, eve::nan(eve::as()), - -0.0f, eve::nan(eve::as()), -2.0f}; - - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> maxabs[pf < 0](pf, qf) = " << eve::maxabs[pf > 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/maxmag.cpp b/test/doc/core/masked/maxmag.cpp deleted file mode 100644 index 5cf580241e..0000000000 --- a/test/doc/core/masked/maxmag.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using eve::pedantic; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, eve::nan(eve::as()), - -0.0f, eve::nan(eve::as()), -2.0f}; - - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> maxmag[pf < 0](pf, qf) = " << eve::maxmag[pf < 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/min.cpp b/test/doc/core/masked/min.cpp deleted file mode 100644 index f0c98e2a12..0000000000 --- a/test/doc/core/masked/min.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using eve::pedantic; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, eve::nan(eve::as()), - -0.0f, eve::nan(eve::as()), -2.0f}; - - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> min[pf < 0](pf, qf) = " << eve::min[pf < 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/minabs.cpp b/test/doc/core/masked/minabs.cpp deleted file mode 100644 index bf5d3da419..0000000000 --- a/test/doc/core/masked/minabs.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using eve::pedantic; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, eve::nan(eve::as()), - -0.0f, eve::nan(eve::as()), -2.0f}; - - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> minabs[pf < 0](pf, qf) = " << eve::minabs[pf < 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/minmag.cpp b/test/doc/core/masked/minmag.cpp deleted file mode 100644 index 46af1a183d..0000000000 --- a/test/doc/core/masked/minmag.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using eve::pedantic; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, eve::nan(eve::as()), - -0.0f, eve::nan(eve::as()), -2.0f}; - - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> minmag[pf < 0](pf, qf) = " << eve::minmag[pf < 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/minmax.cpp b/test/doc/core/masked/minmax.cpp deleted file mode 100644 index 0e3931462b..0000000000 --- a/test/doc/core/masked/minmax.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, eve::nan(eve::as()), - -0.0f, eve::nan(eve::as()), -2.0f}; - - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> minmax[pf < 0](pf, qf) = " << eve::minmax[pf < 0](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/minus.cpp b/test/doc/core/masked/minus.cpp deleted file mode 100644 index fde3a264ec..0000000000 --- a/test/doc/core/masked/minus.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using wide_it = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, 2.0f, -3.0f, -32768.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> minus[pf > -2](pf) = " << eve::minus[pf > -2](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/mul.cpp b/test/doc/core/masked/mul.cpp deleted file mode 100644 index d5fe531c6f..0000000000 --- a/test/doc/core/masked/mul.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 32700}, qi = {-4, 1, -1, 100}; - - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> mul[qi > 0](pi, qi) = " << eve::mul[qi > 0](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/nearest.cpp b/test/doc/core/masked/nearest.cpp deleted file mode 100644 index e62e4100ac..0000000000 --- a/test/doc/core/masked/nearest.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, -1.3f, -1.5f, -1.7f, 2.0f, 2.3f, 2.5f, 2.7f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> nearest[pf > -1](pf) = " << eve::nearest[pf > -1](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/negabsmax.cpp b/test/doc/core/masked/negabsmax.cpp deleted file mode 100644 index 4c5cc467c5..0000000000 --- a/test/doc/core/masked/negabsmax.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, 1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, -3.0f, - eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> negabsmax[pf < -1.0f](pf, qf) = " << eve::negabsmax[pf < -1.0f](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/negabsmin.cpp b/test/doc/core/masked/negabsmin.cpp deleted file mode 100644 index 6de57769d0..0000000000 --- a/test/doc/core/masked/negabsmin.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, 1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, -3.0f, - eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> negabsmin[pf < -1.0f](pf, qf) = " << eve::negabsmin[pf < -1.0f](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/negate.cpp b/test/doc/core/masked/negate.cpp deleted file mode 100644 index 6c66301e5c..0000000000 --- a/test/doc/core/masked/negate.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, -0.0f, 0.0f, -0.0f, 2.0f, -2.0f, 2.0f, 2.0f}; - wide_ft qf = {4.0f, 4.0f, -4.0f, -4.0, 4.0f, 4.0f, -0.0f, +0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> negate[pf < qf](pf, qf) = " << eve::negate[pf < qf](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/negatenz.cpp b/test/doc/core/masked/negatenz.cpp deleted file mode 100644 index 21109f4916..0000000000 --- a/test/doc/core/masked/negatenz.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, -0.0f, 0.0f, -0.0f, 2.0f, -2.0f, 2.0f, 2.0f}; - wide_ft qf = {4.0f, 4.0f, -4.0f, -4.0, 4.0f, 4.0f, -0.0f, +0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> negatenz[pf < qf](pf, qf) = " << eve::negatenz[pf < qf](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/negmaxabs.cpp b/test/doc/core/masked/negmaxabs.cpp deleted file mode 100644 index 3589d42cb8..0000000000 --- a/test/doc/core/masked/negmaxabs.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, 1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, -3.0f, - eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> negmaxabs[pf < -1.0f](pf, qf) = " << eve::negmaxabs[pf < -1.0f](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/negminabs.cpp b/test/doc/core/masked/negminabs.cpp deleted file mode 100644 index d0812cfa03..0000000000 --- a/test/doc/core/masked/negminabs.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, 1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, -3.0f, - eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> negminabs[pf < -1.0f](pf, qf) = " << eve::negminabs[pf < -1.0f](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/next.cpp b/test/doc/core/masked/next.cpp deleted file mode 100644 index c00bdddff3..0000000000 --- a/test/doc/core/masked/next.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-10.0f, 2.0f, eve::eps(eve::as()), 0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << std::setprecision(12) << pf << '\n' - << "-> next[pf > 0](pf) = " << eve::next[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/nextafter.cpp b/test/doc/core/masked/nextafter.cpp deleted file mode 100644 index f26124fbd1..0000000000 --- a/test/doc/core/masked/nextafter.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {0.0f, 1.0f, 1.0f-eve::eps(eve::as())/2, 1.0f}; - w_t qi = {-1.0f, -2.0f, 3.0f, eve::inf(eve::as())}; - - std::cout << "---- simd" << std::setprecision(9) << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> nextafter[pi < qi](pi, qi) = " << eve::nextafter[pi < qi](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/none.cpp b/test/doc/core/masked/none.cpp deleted file mode 100644 index 3fc5f71603..0000000000 --- a/test/doc/core/masked/none.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using wide_it = eve::wide>; - -int main() -{ - wide_it qi = {-3, 0, -30, -32768}; - - std::cout << "---- simd" << '\n' - << "<- qi = " << qi << '\n' - << "-> none[ignore_first(1)](qi != 0) = " << eve::none[eve::ignore_first(1)](qi != 0) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/oneminus.cpp b/test/doc/core/masked/oneminus.cpp deleted file mode 100644 index 97475494be..0000000000 --- a/test/doc/core/masked/oneminus.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide >; -using wide_ft = eve::wide >; - -int main() -{ - wide_it pi = { 0, 1, 2, 3, -1, -32766, -32767, -32768}; - wide_ft pf = { 0.2, 1, 2.4, 3, -1, -3.7, -327.67, -32768.4}; - - std::cout - << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> oneminus[pi < 0](pi) = " << eve::oneminus[pi < 0](pi) << '\n' - << "-> oneminus[pf < 0](pf)) = " << eve::oneminus[pf < 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/prev.cpp b/test/doc/core/masked/prev.cpp deleted file mode 100644 index 4ce7a43e93..0000000000 --- a/test/doc/core/masked/prev.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-10.0f, 2.0f, eve::eps(eve::as()), 0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf =" << std::setprecision(12) << pf << '\n' - << "-> prev[pf > 0](pf) =" << eve::prev[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/rec.cpp b/test/doc/core/masked/rec.cpp deleted file mode 100644 index eb41e82a33..0000000000 --- a/test/doc/core/masked/rec.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, 2.0f, 10.0f, 200.0f, 1000.0f, - eve::inf(eve::as()), eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> rec[pf > 1](pf) = " << eve::rec[pf > 1](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/rem.cpp b/test/doc/core/masked/rem.cpp deleted file mode 100644 index 28f4c283f8..0000000000 --- a/test/doc/core/masked/rem.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 32700}, qi = {4, 2, 0, 101}; - - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> rem[qi!= 0](pi, qi) = " << eve::rem[qi!= 0](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/round.cpp b/test/doc/core/masked/round.cpp deleted file mode 100644 index 5b90245aef..0000000000 --- a/test/doc/core/masked/round.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, -1.3f, -1.5f, -1.7f, 2.0f, 2.3f, 2.5f, 2.7f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> round[pf>-1.4f](pf) = " << eve::round[pf>-1.4f](pf) << '\n' - << "-> upward(round[pf>-1.4f])(pf) = " << eve::upward(eve::round[pf>-1.4f])(pf) << '\n' - << "-> downward(round[pf>-1.4f])(pf) = " << eve::downward(eve::round[pf>-1.4f])(pf) << '\n' - << "-> to_nearest(round[pf>-1.4f])(pf) = " << eve::to_nearest(eve::round[pf>-1.4f])(pf) << '\n' - << "-> toward_zero(round[pf>-1.4f])(pf) = " << eve::toward_zero(eve::round[pf>-1.4f])(pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/roundscale.cpp b/test/doc/core/masked/roundscale.cpp deleted file mode 100644 index 6a0d8f03ba..0000000000 --- a/test/doc/core/masked/roundscale.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf( [](auto i, auto) { return 1.2345678+i; } ); - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> roundscale[ignore_first(2)](pf, 4) = " << eve::roundscale[eve::ignore_first(2)](pf, 4) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/rshl.cpp b/test/doc/core/masked/rshl.cpp deleted file mode 100644 index 4ca58bb22f..0000000000 --- a/test/doc/core/masked/rshl.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include -#include - -using iT = std::int32_t; -using uiT = std::uint32_t; -using wide_it = eve::wide>; -using wide_uit = eve::wide>; - -int main() -{ - wide_uit pi = {100, 200, 2, 3}; - wide_it qi = {1, -2, 3, -1}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "<- qi = " << qi << '\n' - << "-> rshl[pi!= 200](pi, qi) = " << eve::rshl[pi!= 200](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/rshr.cpp b/test/doc/core/masked/rshr.cpp deleted file mode 100644 index 4e7a230dd2..0000000000 --- a/test/doc/core/masked/rshr.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include -#include - -using iT = std::int32_t; -using uiT = std::uint32_t; -using wide_it = eve::wide>; -using wide_uit = eve::wide>; - -int main() -{ - wide_uit pi = {100, 200, 2, 3}; - wide_it qi = {1, -2, 3, -1}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "<- qi = " << qi << '\n' - << "-> rshr[pi!= 200](pi, qi) = " << eve::rshr[pi!= 200](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/rsqrt.cpp b/test/doc/core/masked/rsqrt.cpp deleted file mode 100644 index 24b74e429b..0000000000 --- a/test/doc/core/masked/rsqrt.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {1.0f, 0.5f, -3.0f, eve::inf(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> rsqrt[pf > 0](pf) = " << eve::rsqrt[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/saturate.cpp b/test/doc/core/masked/saturate.cpp deleted file mode 100644 index 06697202a9..0000000000 --- a/test/doc/core/masked/saturate.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using wide_it = eve::wide>; -using int_16 = eve::as; -using int_64 = eve::as; - -int main() -{ - wide_ft pf = {-1.0f, 2.3f, 45000.7f, -64768.6f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> saturate[pf < 0](pf, int_64()_) = " << eve::saturate(pf, int_64()) << '\n' - << "-> saturate[pf < 0](pf, int_16()) = " << eve::saturate(pf, int_16()) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/shl.cpp b/test/doc/core/masked/shl.cpp deleted file mode 100644 index 1c985c631c..0000000000 --- a/test/doc/core/masked/shl.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include -#include - -using iT = std::int32_t; -using uiT = std::uint32_t; -using wide_it = eve::wide>; -using wide_uit = eve::wide>; - -int main() -{ - wide_uit pi = {100, 200, 2, 3}; - wide_it qi = {1, -2, 3, -1}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "<- qi = " << qi << '\n' - << "-> shl[pi!= 200](pi, qi) = " << eve::shl[pi!= 200](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/shr.cpp b/test/doc/core/masked/shr.cpp deleted file mode 100644 index 0926d8c2a8..0000000000 --- a/test/doc/core/masked/shr.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include -#include - -using iT = std::int32_t; -using uiT = std::uint32_t; -using wide_it = eve::wide>; -using wide_uit = eve::wide>; - -int main() -{ - wide_uit pi = {100, 200, 2, 3}; - wide_it qi = {1, -2, 3, -1}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "<- qi = " << qi << '\n' - << "-> shr[pi!= 200](pi, qi) = " << eve::shr[pi!= 200](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/sign.cpp b/test/doc/core/masked/sign.cpp deleted file mode 100644 index 27d6538897..0000000000 --- a/test/doc/core/masked/sign.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-0.0f, 1.0f, -3.0f, -32768.0f, - 0.0f, -1.0f, 3.0f, 32768.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> sign[abs(pf) < 2](pf) = " << eve::sign[eve::abs(pf) < 2](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/sign_alternate.cpp b/test/doc/core/masked/sign_alternate.cpp deleted file mode 100644 index cd13a58554..0000000000 --- a/test/doc/core/masked/sign_alternate.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide >; - -int main() -{ - wide_it pi = { 0, 1, 2, 3, -1, 32766, 32767, -32768}; - - std::cout - << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> sign_alternate[pi < 2](pi) = " << eve::sign_alternate[pi < 2](pi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/signnz.cpp b/test/doc/core/masked/signnz.cpp deleted file mode 100644 index 014dcb5f5a..0000000000 --- a/test/doc/core/masked/signnz.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-0.0f, 1.0f, -3.0f, -32768.0f, - 0.0f, -1.0f, 3.0f, 32768.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> signnz[abs(pf) < 2](pf) = " << eve::signnz[eve::abs(pf) < 2](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/sqr.cpp b/test/doc/core/masked/sqr.cpp deleted file mode 100644 index 155854d098..0000000000 --- a/test/doc/core/masked/sqr.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using wide_it = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, 2.0f, -3.0f, 182.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> sqr[pf < 0](pf) = " << eve::sqr[pf < 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/sqr_abs.cpp b/test/doc/core/masked/sqr_abs.cpp deleted file mode 100644 index 1c09fa5ca2..0000000000 --- a/test/doc/core/masked/sqr_abs.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using wide_it = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, 2.0f, -3.0f, 182.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> sqr_abs[pf < 0](pf) = " << eve::sqr_abs[pf < 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/sqrt.cpp b/test/doc/core/masked/sqrt.cpp deleted file mode 100644 index a0ae01a377..0000000000 --- a/test/doc/core/masked/sqrt.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {1.0f, 2.0f, -3.0f, eve::inf(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> sqrt[pf > 0](pf)= " << eve::sqrt(pf) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/sub.cpp b/test/doc/core/masked/sub.cpp deleted file mode 100644 index 9b61e402ab..0000000000 --- a/test/doc/core/masked/sub.cpp +++ /dev/null @@ -1,13 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, -32700, 32700}, qi = {4, 1, 100, -100}; - - std::cout << "---- simd" << '\n' - << " -> sub[pi > qi](pi, qi) = " << eve::sub[pi > qi](pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/masked/trunc.cpp b/test/doc/core/masked/trunc.cpp deleted file mode 100644 index baea7a0e15..0000000000 --- a/test/doc/core/masked/trunc.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, -1.3f, -1.5f, -1.7f, 2.0f, 2.3f, 2.5f, 2.7f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> trunc[pf > 0](pf) = " << eve::trunc[pf > 0](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/max.cpp b/test/doc/core/max.cpp similarity index 52% rename from test/doc/core/regular/max.cpp rename to test/doc/core/max.cpp index 780b458ff1..b55162f44f 100644 --- a/test/doc/core/regular/max.cpp +++ b/test/doc/core/max.cpp @@ -17,9 +17,10 @@ int main() << "<- pf = " << pf << '\n' << "<- qf = " << qf << '\n' << "-> max(pf, qf) = " << eve::max(pf, qf) << '\n' - << "-> max[eve::numeric](pf, qf) = " << eve::max[eve::numeric2](pf, qf) << '\n' + << "-> max[eve::numeric](pf, qf) = " << eve::max[eve::numeric](pf, qf) << '\n' << "-> max[eve::pedantic](pf, qf) = " << eve::max[eve::pedantic](pf, qf) << '\n' - << "-> max[eve::pedantic](qf, pf) = " << eve::max[eve::pedantic](qf, pf) << '\n'; + << "-> max[eve::pedantic](qf, pf) = " << eve::max[eve::pedantic](qf, pf) << '\n' + << "-> max[pf < 0](pf, qf) = " << eve::max[pf < 0](pf, qf) << '\n'; float xf = 1.0f; float yf = eve::nan(eve::as()); @@ -29,15 +30,15 @@ int main() << "<- yf = " << yf << '\n' << "-> max(xf, yf) = = " << eve::max(xf, yf) << '\n'; -// auto k = kumi::tuple{pf, qf, pf+qf, 1.0f}; -// std::cout << "---- multi parameters" << '\n' -// << " -> max(k) = " << eve::max(k) << '\n' -// << " -> max(kumi::tuple{pf, pf, 1.0f}) = " << eve::max( kumi::tuple{pf, qf, 1.0f}) << '\n' -// << " -> max(kumi::tuple{1.0f, pf, pf}) = " << eve::max( kumi::tuple{1.0f, pf, qf}) << '\n' -// << " -> max[numeric](kumi::tuple{1.0f, pf, qf)= " << eve::max[eve::numeric2]( kumi::tuple{1.0f, pf,qf}) << '\n' -// << " -> max(kumi::tuple{pf, 1.0f) = " << eve::max( kumi::tuple{pf, 1.0f}) << '\n' -// << " -> max(kumi::tuple{1.0f, pf) = " << eve::max( kumi::tuple{1.0f, pf}) << '\n' -// << " -> max[numeric](kumi::tuple{1.0f, pf) = " << eve::max[eve::numeric2]( kumi::tuple{1.0f, pf}) << '\n' -// << " -> max(eve::is_greater)(pf, qf) = " << eve::max(eve::is_greater)(pf, qf) << '\n'; + auto k = kumi::tuple{pf, qf, pf+qf, 1.0f}; + std::cout << "---- multi parameters" << '\n' + << " -> max(k) = " << eve::max(k) << '\n' + << " -> max(kumi::tuple{pf, pf, 1.0f}) = " << eve::max( kumi::tuple{pf, qf, 1.0f}) << '\n' + << " -> max(kumi::tuple{1.0f, pf, pf}) = " << eve::max( kumi::tuple{1.0f, pf, qf}) << '\n' + << " -> max[numeric](kumi::tuple{1.0f, pf, qf)= " << eve::max[eve::numeric]( kumi::tuple{1.0f, pf,qf}) << '\n' + << " -> max(kumi::tuple{pf, 1.0f) = " << eve::max( kumi::tuple{pf, 1.0f}) << '\n' + << " -> max(kumi::tuple{1.0f, pf) = " << eve::max( kumi::tuple{1.0f, pf}) << '\n' + << " -> max[numeric](kumi::tuple{1.0f, pf) = " << eve::max[eve::numeric]( kumi::tuple{1.0f, pf}) << '\n' + << " -> max(eve::is_greater)(pf, qf) = " << eve::max(eve::is_greater)(pf, qf) << '\n'; return 0; } diff --git a/test/doc/core/regular/maxabs.cpp b/test/doc/core/maxabs.cpp similarity index 76% rename from test/doc/core/regular/maxabs.cpp rename to test/doc/core/maxabs.cpp index 278078deb4..e44c6b2a81 100644 --- a/test/doc/core/regular/maxabs.cpp +++ b/test/doc/core/maxabs.cpp @@ -14,7 +14,10 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "<- qf = " << qf << '\n' - << "-> maxabs(pf, qf) = " << eve::maxabs(pf, qf) << '\n'; + << "-> maxabs(pf, qf) = " << eve::maxabs(pf, qf) << '\n' + << "-> maxabs[pedantic}(pf, qf) = " << eve::maxabs[eve::pedantic](pf, qf) << '\n' + << "-> maxabs[numeric](pf, qf) = " << eve::maxabs[eve::numeric](pf, qf) << '\n' + << "-> maxabs[pf>0](pf, qf) = " << eve::maxabs[pf>0](pf, qf) << '\n'; float xf = -4.0f; float yf = 1.0f; diff --git a/test/doc/core/masked/maximum.cpp b/test/doc/core/maximum.cpp similarity index 50% rename from test/doc/core/masked/maximum.cpp rename to test/doc/core/maximum.cpp index def77157d5..a65a8c5fde 100644 --- a/test/doc/core/masked/maximum.cpp +++ b/test/doc/core/maximum.cpp @@ -2,14 +2,20 @@ #include #include +using wide_ft = eve::wide>; using wide_it = eve::wide>; int main() { - wide_it pi = {-1, 2, -3, -18}; + wide_ft pf = {-1.0f, 2.0f, -3.0f, -68.0f}; + wide_it pi = {-1, 2, -3268, 3}; std::cout << "---- simd" << '\n' + << "<- pf = " << pf << '\n' + << "-> maximum(pf) = " << eve::maximum(pf) << '\n' << "<- pi = " << pi << '\n' + << "-> maximum(pi) = " << eve::maximum(pi) << '\n' << "-> maximum[pi > -2](pi) = " << eve::maximum[pi > -2](pi) << '\n'; + return 0; } diff --git a/test/doc/core/regular/maxmag.cpp b/test/doc/core/maxmag.cpp similarity index 76% rename from test/doc/core/regular/maxmag.cpp rename to test/doc/core/maxmag.cpp index 8982480f99..246ebd4cc7 100644 --- a/test/doc/core/regular/maxmag.cpp +++ b/test/doc/core/maxmag.cpp @@ -14,7 +14,10 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "<- qf = " << qf << '\n' - << "-> maxmag(pf, qf) = " << eve::maxmag(pf, qf) << '\n'; + << "-> maxmag(pf, qf) = " << eve::maxmag(pf, qf) << '\n' + << "-> maxmag[pedantic}(pf, qf) = " << eve::maxmag[eve::pedantic](pf, qf) << '\n' + << "-> maxmag[numeric](pf, qf) = " << eve::maxmag[eve::numeric](pf, qf) << '\n' + << "-> maxmag[pf < 0](pf, qf) = " << eve::maxmag[pf < 0](pf, qf) << '\n'; float xf = -4.0f; float yf = 1.0f; diff --git a/test/doc/core/min.cpp b/test/doc/core/min.cpp new file mode 100644 index 0000000000..b06b69950e --- /dev/null +++ b/test/doc/core/min.cpp @@ -0,0 +1,43 @@ +#include +#include +#include + +using wide_ft = eve::wide>; +using eve::pedantic; + +int main() +{ + wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, + eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; + wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, eve::nan(eve::as()), + -0.0f, eve::nan(eve::as()), -2.0f}; + + + std::cout << "---- simd" << '\n' + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> min(pf, qf) = " << eve::min(pf, qf) << '\n' + << "-> min[pedantic](pf, qf) = " << eve::min[eve::pedantic](pf, qf) << '\n' + << "-> min[numeric](pf, qf) = " << eve::min[eve::numeric](pf, qf) << '\n' + << "-> min[pf < 0](pf, qf) = " << eve::min[pf < 0](pf, qf) << '\n'; +; + + float xf = 1.0f; + float yf = eve::nan(eve::as()); + + std::cout << "---- scalar" << '\n' + << "<- xf = " << xf << '\n' + << "<- yf = " << yf << '\n' + << "-> min(xf, yf) = = " << eve::min(xf, yf) << '\n'; + + auto k = kumi::tuple{pf, qf, pf+qf, 1}; + std::cout << "---- multi parameters" << '\n' + << " -> min(k) = " << eve::min(k) << '\n' + << " -> min(kumi::tuple{pf, pf, 1}) = " << eve::min( kumi::tuple{pf, qf, 1}) << '\n' + << " -> min(kumi::tuple{1, pf, pf}) = " << eve::min( kumi::tuple{1, pf, qf}) << '\n' + << " -> numeric(min(kumi::tuple{1.0f, pf, qf) = " << eve::min[eve::numeric]( kumi::tuple{1.0f, pf,qf}) << '\n' + << " -> min(kumi::tuple{pf, 1.0f) = " << eve::min( kumi::tuple{pf, 1.0f}) << '\n' + << " -> min(kumi::tuple{1.0f, pf) = " << eve::min( kumi::tuple{1.0f, pf}) << '\n' + << " -> numeric(min(kumi::tuple{1.0f, pf) = " << eve::min[eve::numeric]( kumi::tuple{1.0f, pf}) << '\n'; + return 0; +} diff --git a/test/doc/core/regular/minabs.cpp b/test/doc/core/minabs.cpp similarity index 76% rename from test/doc/core/regular/minabs.cpp rename to test/doc/core/minabs.cpp index 03508811c9..ea7e34aa48 100644 --- a/test/doc/core/regular/minabs.cpp +++ b/test/doc/core/minabs.cpp @@ -14,7 +14,10 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "<- qf = " << qf << '\n' - << "-> minabs(pf, qf) = " << eve::minabs(pf, qf) << '\n'; + << "-> minabs(pf, qf) = " << eve::minabs(pf, qf) << '\n' + << "-> minabs[pedantic}(pf, qf) = " << eve::minabs[eve::pedantic](pf, qf) << '\n' + << "-> minabs[numeric](pf, qf) = " << eve::minabs[eve::numeric](pf, qf) << '\n' + << "-> minabs[pf < 0](pf, qf) = " << eve::minabs[pf < 0](pf, qf) << '\n'; float xf = -4.0f; float yf = 1.0f; diff --git a/test/doc/core/masked/minimum.cpp b/test/doc/core/minimum.cpp similarity index 50% rename from test/doc/core/masked/minimum.cpp rename to test/doc/core/minimum.cpp index 58d039d3c1..40431d9f03 100644 --- a/test/doc/core/masked/minimum.cpp +++ b/test/doc/core/minimum.cpp @@ -2,14 +2,19 @@ #include #include +using wide_ft = eve::wide>; using wide_it = eve::wide>; int main() { - wide_it pi = {-1, 2, -3, -18}; + wide_ft pf = {-1.0f, 2.0f, -3.0f, -32768.0f}; + wide_it pi = {-1, 2, -32768, 3}; std::cout << "---- simd" << '\n' + << "<- pf = " << pf << '\n' + << "-> minimum(pf) = " << eve::minimum(pf) << '\n' << "<- pi = " << pi << '\n' + << "-> minimum(pi) = " << eve::minimum(pi) << '\n' << "-> minimum[pi > -2](pi) = " << eve::minimum[pi > -2](pi) << '\n'; return 0; } diff --git a/test/doc/core/regular/minmag.cpp b/test/doc/core/minmag.cpp similarity index 76% rename from test/doc/core/regular/minmag.cpp rename to test/doc/core/minmag.cpp index 31113fc62f..e0bdc94b91 100644 --- a/test/doc/core/regular/minmag.cpp +++ b/test/doc/core/minmag.cpp @@ -14,7 +14,10 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "<- qf = " << qf << '\n' - << "-> minmag(pf, qf) = " << eve::minmag(pf, qf) << '\n'; + << "-> minmag(pf, qf) = " << eve::minmag(pf, qf) << '\n' + << "-> minmag[pedantic}(pf, qf) = " << eve::minmag[eve::pedantic](pf, qf) << '\n' + << "-> minmag[numeric](pf, qf) = " << eve::minmag[eve::numeric](pf, qf) << '\n' + << "-> minmag[pf < 0](pf, qf) = " << eve::minmag[pf < 0](pf, qf) << '\n'; float xf = -4.0f; float yf = 1.0f; diff --git a/test/doc/core/minmax.cpp b/test/doc/core/minmax.cpp new file mode 100644 index 0000000000..a758b66208 --- /dev/null +++ b/test/doc/core/minmax.cpp @@ -0,0 +1,41 @@ +#include +#include +#include + +using wide_ft = eve::wide>; +using eve::pedantic; + +int main() +{ + wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, + eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; + wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, eve::nan(eve::as()), + -0.0f, eve::nan(eve::as()), -2.0f}; + + auto[mn,mx] = eve::minmax(pf, qf); + auto[mn1, mx1] = eve::minmax[pf < 0](pf, qf); + std::cout << "---- simd" << '\n' + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> minmax(pf, qf) = {" << mn << ", " << mx << "}\n" + << "-> minmax[pf < 0](pf, qf) = {" << mn1<< ", " << mx1 << "}\n"; + + float xf = 1.0f; + float yf = eve::nan(eve::as()); + + std::cout << "---- scalar" << '\n' + << "<- xf = " << xf << '\n' + << "<- yf = " << yf << '\n' + << "-> minmax(xf, yf) = " << eve::minmax(xf, yf) << '\n'; + + auto prmm = [](auto st, auto k){ auto [mi, ma] = eve::minmax(k); std::cout << st << '{' << mi << ", " << ma << "}\n"; }; + auto k = kumi::tuple{pf, qf, pf+qf, 1}; + std::cout << "---- multi parameters" << '\n'; + prmm( " -> minmax(k) = ", k); + prmm( " -> minmax(kumi::tuple{pf, pf, 1}) = ", kumi::tuple{pf, qf, 1}); + prmm( " -> minmax(kumi::tuple{1, pf, pf}) = ", kumi::tuple{1, pf, qf}); + prmm( " -> minmax(kumi::tuple{pf, 1.0f) = ", kumi::tuple{pf, 1.0f}); + prmm( " -> minmax(kumi::tuple{1.0f, pf) = ", kumi::tuple{1.0f, pf}); + + return 0; +} diff --git a/test/doc/core/regular/minus.cpp b/test/doc/core/minus.cpp similarity index 90% rename from test/doc/core/regular/minus.cpp rename to test/doc/core/minus.cpp index 2f6c2bbef0..865f05f563 100644 --- a/test/doc/core/regular/minus.cpp +++ b/test/doc/core/minus.cpp @@ -13,10 +13,11 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "-> minus(pf) = " << eve::minus(pf) << '\n' - + << "<- pi = " << pi << '\n' << "-> minus(pi) = " << eve::minus(pi) << '\n' - << "-> saturated(minus)(pi) = " << eve::saturated(eve::minus)(pf) << '\n'; + << "-> saturated(minus)(pi) = " << eve::saturated(eve::minus)(pf) << '\n' + << "-> minus[pf > -2](pf) = " << eve::minus[pf > -2](pf) << '\n'; float xf = -32768.0f; std::int16_t xi = -32768; diff --git a/test/doc/core/regular/modf.cpp b/test/doc/core/modf.cpp similarity index 100% rename from test/doc/core/regular/modf.cpp rename to test/doc/core/modf.cpp diff --git a/test/doc/core/regular/mul.cpp b/test/doc/core/mul.cpp similarity index 95% rename from test/doc/core/regular/mul.cpp rename to test/doc/core/mul.cpp index faa16a1e08..a873f7bf2b 100644 --- a/test/doc/core/regular/mul.cpp +++ b/test/doc/core/mul.cpp @@ -18,8 +18,9 @@ int main() << " <- pf = " << pf << '\n' << " <- qf = " << qf << '\n' << " -> mul(pf, qf) = " << eve::mul(pf, qf) << '\n' - << " -> pf * qf = " << pf * qf << '\n'; - + << " -> pf * qf = " << pf * qf << '\n' + << " -> mul[qi > 0](pi, qi) = " << eve::mul[qi > 0](pi, qi) << '\n'; + std::int16_t xi = 100, yi = 32700; std::cout << "---- scalar" << '\n' diff --git a/test/doc/core/regular/nb_values.cpp b/test/doc/core/nb_values.cpp similarity index 100% rename from test/doc/core/regular/nb_values.cpp rename to test/doc/core/nb_values.cpp diff --git a/test/doc/core/regular/nearest.cpp b/test/doc/core/nearest.cpp similarity index 67% rename from test/doc/core/regular/nearest.cpp rename to test/doc/core/nearest.cpp index 2e55355beb..7622348c57 100644 --- a/test/doc/core/regular/nearest.cpp +++ b/test/doc/core/nearest.cpp @@ -9,8 +9,9 @@ int main() wide_ft pf = {-1.0f, -1.3f, -1.5f, -1.7f, 2.0f, 2.3f, 2.5f, 2.7f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> nearest(pf) = " << eve::nearest(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> nearest(pf) = " << eve::nearest(pf) << '\n' + << "-> nearest[pf > -1](pf) = " << eve::nearest[pf > -1](pf) << '\n'; float xf = -32.768f; diff --git a/test/doc/core/regular/negabsmax.cpp b/test/doc/core/negabsmax.cpp similarity index 64% rename from test/doc/core/regular/negabsmax.cpp rename to test/doc/core/negabsmax.cpp index 36bf0917be..65a9dbc482 100644 --- a/test/doc/core/regular/negabsmax.cpp +++ b/test/doc/core/negabsmax.cpp @@ -12,11 +12,12 @@ int main() eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> negabsmax(pf, qf) = " << eve::negabsmax(pf, qf) << '\n' - << "-> negabsmax[pedantic](pf, qf) = " << eve::negabsmax[eve::pedantic](pf, qf) << '\n' - << "-> negabsmax[numeric](pf, qf) = " << eve::negabsmax[eve::numeric](pf, qf) << '\n'; + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> negabsmax(pf, qf) = " << eve::negabsmax(pf, qf) << '\n' + << "-> negabsmax[pedantic](pf, qf) = " << eve::negabsmax[eve::pedantic](pf, qf) << '\n' + << "-> negabsmax[numeric](pf, qf) = " << eve::negabsmax[eve::numeric](pf, qf) << '\n' + << "-> negabsmax[pf < -1.0f](pf, qf) = " << eve::negabsmax[pf < -1.0f](pf, qf) << '\n'; float xf = -4.0f; float yf = 1.0f; diff --git a/test/doc/core/regular/negabsmin.cpp b/test/doc/core/negabsmin.cpp similarity index 58% rename from test/doc/core/regular/negabsmin.cpp rename to test/doc/core/negabsmin.cpp index 1970fcc43a..ccea53e8c4 100644 --- a/test/doc/core/regular/negabsmin.cpp +++ b/test/doc/core/negabsmin.cpp @@ -12,11 +12,12 @@ int main() eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> negabsmin(pf, qf) = " << eve::negabsmin(pf, qf) << '\n' - << "-> negabsmin[pedantic](pf, qf) = " << eve::negabsmin[eve::pedantic](pf, qf) << '\n' - << "-> negabsmin[numeric](pf, qf) = " << eve::negabsmin[eve::numeric](pf, qf) << '\n'; + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> negabsmin(pf, qf) = " << eve::negabsmin(pf, qf) << '\n' + << "-> negabsmin[pedantic](pf, qf) = " << eve::negabsmin[eve::pedantic](pf, qf) << '\n' + << "-> negabsmin[numeric](pf, qf) = " << eve::negabsmin[eve::numeric](pf, qf) << '\n' + << "-> negabsmin[pf < -1.0f](pf, qf) = " << eve::negabsmin[pf < -1.0f](pf, qf) << '\n'; float xf = -4.0f; float yf = 1.0f; @@ -24,7 +25,7 @@ int main() std::cout << "---- scalar" << '\n' << "<- xf = " << xf << '\n' << "<- yf = " << yf << '\n' - << "-> negabsmin(xf, yf) = " << eve::negabsmin(xf, yf) << '\n' + << "-> negabsmin(xf, yf) = " << eve::negabsmin(xf, yf) << '\n' << "-> negabsmin[pedantic](xf, yf) = " << eve::negabsmin[eve::pedantic](xf, yf) << '\n' << "-> negabsmin[numeric](xf, yf) = " << eve::negabsmin[eve::numeric](xf, yf) << '\n'; diff --git a/test/doc/core/regular/negate.cpp b/test/doc/core/negate.cpp similarity index 88% rename from test/doc/core/regular/negate.cpp rename to test/doc/core/negate.cpp index b5f07dd223..a11423c5e5 100644 --- a/test/doc/core/regular/negate.cpp +++ b/test/doc/core/negate.cpp @@ -12,7 +12,8 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "<- qf = " << qf << '\n' - << "-> negate(pf, qf) = " << eve::negate(pf, qf) << '\n'; + << "-> negate(pf, qf) = " << eve::negate(pf, qf) << '\n' + << "-> negate[pf < qf](pf, qf) = " << eve::negate[pf < qf](pf, qf) << '\n'; float xf = 4.0f; float yf = -1.0f; diff --git a/test/doc/core/regular/negatenz.cpp b/test/doc/core/negatenz.cpp similarity index 87% rename from test/doc/core/regular/negatenz.cpp rename to test/doc/core/negatenz.cpp index 948f51ebcd..c83e5787a5 100644 --- a/test/doc/core/regular/negatenz.cpp +++ b/test/doc/core/negatenz.cpp @@ -13,7 +13,8 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "<- qf = " << qf << '\n' - << "-> negatenz(pf, qf) = " << eve::negatenz(pf, qf) << '\n'; + << "-> negatenz(pf, qf) = " << eve::negatenz(pf, qf) << '\n' + << "-> negatenz[pf < qf](pf, qf) = " << eve::negatenz[pf < qf](pf, qf) << '\n'; float xf = 4.0f; float yf = -0.0f; diff --git a/test/doc/core/regular/negmaxabs.cpp b/test/doc/core/negmaxabs.cpp similarity index 73% rename from test/doc/core/regular/negmaxabs.cpp rename to test/doc/core/negmaxabs.cpp index 48a3476a93..d69b14bc6e 100644 --- a/test/doc/core/regular/negmaxabs.cpp +++ b/test/doc/core/negmaxabs.cpp @@ -12,19 +12,19 @@ int main() eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' << "-> negmaxabs(pf, qf) = " << eve::negmaxabs(pf, qf) << '\n' << "-> negmaxabs[pedantic}(pf, qf) = " << eve::negmaxabs[eve::pedantic](pf, qf) << '\n' - << "-> negmaxabs[numeric](pf, qf) = " << eve::negmaxabs[eve::numeric](pf, qf) << '\n'; - + << "-> negmaxabs[numeric](pf, qf) = " << eve::negmaxabs[eve::numeric](pf, qf) << '\n' + << "-> negmaxabs[pf<-1.0f](pf, qf) = " << eve::negmaxabs[pf < -1.0f](pf, qf) << '\n'; float xf = -4.0f; float yf = 1.0f; std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "<- yf = " << yf << '\n' + << "<- xf = " << xf << '\n' + << "<- yf = " << yf << '\n' << "-> negmaxabs(xf, yf) = " << eve::negmaxabs(xf, yf) << '\n' << "-> negmaxabs[pedantic}(xf, yf) = " << eve::negmaxabs[eve::pedantic](xf, yf) << '\n' << "-> negmaxabs[numeric](xf, yf) = " << eve::negmaxabs[eve::numeric](xf, yf) << '\n'; diff --git a/test/doc/core/regular/negminabs.cpp b/test/doc/core/negminabs.cpp similarity index 65% rename from test/doc/core/regular/negminabs.cpp rename to test/doc/core/negminabs.cpp index d01361ce4f..605896eba1 100644 --- a/test/doc/core/regular/negminabs.cpp +++ b/test/doc/core/negminabs.cpp @@ -12,11 +12,12 @@ int main() eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> negminabs(pf, qf) = " << eve::negminabs(pf, qf) << '\n' - << "-> negminabs[pedantic}(pf, qf) = " << eve::negminabs[eve::pedantic](pf, qf) << '\n' - << "-> negminabs[numeric](pf, qf) = " << eve::negminabs[eve::numeric](pf, qf) << '\n'; + << "<- pf = " << pf << '\n' + << "<- qf = " << qf << '\n' + << "-> negminabs(pf, qf) = " << eve::negminabs(pf, qf) << '\n' + << "-> negminabs[pedantic}(pf, qf) = " << eve::negminabs[eve::pedantic](pf, qf) << '\n' + << "-> negminabs[numeric](pf, qf) = " << eve::negminabs[eve::numeric](pf, qf) << '\n' + << "-> negminabs[pf<-1.0f](pf, qf) = " << eve::negminabs[pf < -1.0f](pf, qf) << '\n'; float xf = -4.0f; diff --git a/test/doc/core/regular/next.cpp b/test/doc/core/next.cpp similarity index 55% rename from test/doc/core/regular/next.cpp rename to test/doc/core/next.cpp index f3c8763be6..52570b3ef8 100644 --- a/test/doc/core/regular/next.cpp +++ b/test/doc/core/next.cpp @@ -3,20 +3,24 @@ #include #include -using wide_ft = eve::wide>; +using wide_ft = eve::wide>; using wide_it = eve::wide>; int main() { - wide_ft pf = {-0.0f, 2.0f, eve::eps(eve::as()), 0.0f}; - wide_it pi = {-1, 2, -3, -32}; + wide_ft pf = {-0.0f, 2.0f, eve::eps(eve::as()), 0.0f, 30.0f,eve::mindenormal(eve::as()), + eve::inf(eve::as()), eve::nan(eve::as())}; + wide_it pi = {-1, 2, -3, 32767}; - std::cout << "---- simd" << '\n' - << "<- pf = " << std::setprecision(12) << pf << '\n' + std::cout << "---- simd" << std::setprecision(12) << '\n' + << "<- pf = " << pf << '\n' << "-> next(pf) = " << eve::next(pf) << '\n' << "-> pedantic(next)(pf) = " << eve::pedantic(eve::next)(pf) << '\n' + << "-> next[pf > 0](pf) = " << eve::next[pf > 0](pf) << '\n' + << "-> saturated(next)(pf) = " << eve::saturated(eve::next)(pf) << '\n' << "<- pi = " << pi << '\n' - << "-> next(pi) = " << eve::next(pi) << '\n'; + << "-> next(pi) = " << eve::next(pi) << '\n' + << "-> saturated(next)(pi) = " << eve::saturated(eve::next)(pi) << '\n'; float xf = 0.0f; std::int16_t xi = -3; diff --git a/test/doc/core/regular/nextafter.cpp b/test/doc/core/nextafter.cpp similarity index 59% rename from test/doc/core/regular/nextafter.cpp rename to test/doc/core/nextafter.cpp index 395916f780..cff4d20721 100644 --- a/test/doc/core/regular/nextafter.cpp +++ b/test/doc/core/nextafter.cpp @@ -10,15 +10,17 @@ int main() w_t qi = {-1.0f, -2.0f, 3.0f, eve::inf(eve::as())}; std::cout << "---- simd" << std::setprecision(9) << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> nextafter(pi, qi) = " << eve::nextafter(pi, qi) << '\n'; + << " <- pi = " << pi << '\n' + << " <- qi = " << qi << '\n' + << " -> nextafter(pi, qi) = " << eve::nextafter(pi, qi) << '\n' + << " -> nextafter[pi < qi](pi, qi) = " << eve::nextafter[pi < qi](pi, qi) << '\n'; std::uint32_t xi = 3, yi = 7; std::cout << "---- scalar" << '\n' << " xi = " << xi << '\n' << " yi = " << yi << '\n' - << " -> nextafter(xi, yi) = " << eve::nextafter(xi, yi) << '\n'; + << " -> nextafter(xi, yi) = " << eve::nextafter(xi, yi) << '\n' + << " -> nextafter[pi < qi](pi, qi) = " << eve::nextafter[pi < qi](pi, qi) << '\n'; return 0; } diff --git a/test/doc/core/regular/none.cpp b/test/doc/core/none.cpp similarity index 60% rename from test/doc/core/regular/none.cpp rename to test/doc/core/none.cpp index 7fffc534a7..1d32dfa8c0 100644 --- a/test/doc/core/regular/none.cpp +++ b/test/doc/core/none.cpp @@ -11,10 +11,11 @@ int main() wide_it qi = {-1, 0, 30, -32768}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> none(pf != 0) = " << eve::none(pf != 0) << '\n' - << "<- qi = " << qi << '\n' - << "-> none(qi != 0) = " << eve::none(qi != 0) << '\n'; + << "<- pf = " << pf << '\n' + << "-> none(pf != 0) = " << eve::none(pf != 0) << '\n' + << "<- qi = " << qi << '\n' + << "-> none(qi != 0) = " << eve::none(qi != 0) << '\n' + << "-> none[ignore_first(1)](qi != 0) = " << eve::none[eve::ignore_first(1)](qi != 0) << '\n'; float xf = -0.0f; float yf = -3.0f; diff --git a/test/doc/core/regular/oneminus.cpp b/test/doc/core/oneminus.cpp similarity index 82% rename from test/doc/core/regular/oneminus.cpp rename to test/doc/core/oneminus.cpp index 052805fecd..3bebd23e8d 100644 --- a/test/doc/core/regular/oneminus.cpp +++ b/test/doc/core/oneminus.cpp @@ -14,7 +14,10 @@ int main() << "---- simd" << '\n' << "<- pi = " << pi << '\n' << "-> oneminus(pi) = " << eve::oneminus(pi) << '\n' - << "-> oneminus(pf)) = " << eve::oneminus(pf) << '\n'; + << "-> oneminus(pf)) = " << eve::oneminus(pf) << '\n' + << "-> oneminus[pi < 0](pi) = " << eve::oneminus[pi < 0](pi) << '\n' + << "-> oneminus[pf < 0](pf)) = " << eve::oneminus[pf < 0](pf) << '\n'; +; float xf = 2.0f; diff --git a/test/doc/core/pedantic/diff_of_prod.cpp b/test/doc/core/pedantic/diff_of_prod.cpp deleted file mode 100644 index 97ead5afac..0000000000 --- a/test/doc/core/pedantic/diff_of_prod.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include -#include - -int main() -{ - using wf_t = eve::wide>; - wf_t xf = {3, 2, 1, 0}, zf = {4, 1, 2, 100}; - wf_t tf = xf+4*eve::eps(eve::as()), yf = zf-4*eve::eps(eve::as()); - - std::cout << "---- simd" << std::setprecision(8) << '\n' - << " <- xf = " << xf << '\n' - << " <- yf = " << yf << '\n' - << " <- tf = " << tf << '\n' - << " <- zf = " << zf << '\n' - << " -> xf*yf-tf*zf = " << (xf*yf)-(tf*zf) << '\n' - << " -> pedantic(diff_of_prod)(xf, yf, tf, zf) = " << eve::pedantic(eve::diff_of_prod)(xf, yf, tf, zf) << '\n'; - - return 0; -} diff --git a/test/doc/core/pedantic/fam.cpp b/test/doc/core/pedantic/fam.cpp deleted file mode 100644 index 6a745f86a2..0000000000 --- a/test/doc/core/pedantic/fam.cpp +++ /dev/null @@ -1,29 +0,0 @@ -#include -#include -#include -#include - -using wide_t = eve::wide>; - -int main() -{ - float es = eve::eps(eve::as()); - float esm1 = es-1.0f; - float esp1 = es+1.0f; - float vm = eve::valmax(eve::as()); - wide_t qf = {2, -3, esp1, vm}; - wide_t pf = {3, -2, esm1, 2 }; - wide_t of = {4, -1, 1.0f, -vm}; - - std::cout << "---- simd" << '\n' - << " <- of = " << of << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> pedantic(fam)(of, pf, qf) = " << eve::pedantic(eve::fam)(of, pf, qf) << '\n' - << " -> numeric(fam)(of, pf, qf) = " << eve::numeric(eve::fam)(of, pf, qf) << '\n' - << " -> fam(of, pf, qf) = " << eve::fam(of, pf, qf) << '\n' - << "\n if the last fam result ends by '0, inf}', it is because\n" - << " the system has no simd fam family intrinsics\n" - << " or is not configured to use them.\n\n"; - return 0; -} diff --git a/test/doc/core/pedantic/is_equal.cpp b/test/doc/core/pedantic/is_equal.cpp deleted file mode 100644 index 3e6652c49a..0000000000 --- a/test/doc/core/pedantic/is_equal.cpp +++ /dev/null @@ -1,18 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, eve::nan(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {1.0f, 1.0f, eve::nan(eve::as()), -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> numeric(is_equal)(pf, qf) = " << eve::numeric(eve::is_equal)(pf, qf) << '\n'; - - return 0; -} diff --git a/test/doc/core/pedantic/is_not_equal.cpp b/test/doc/core/pedantic/is_not_equal.cpp deleted file mode 100644 index d8a84b890f..0000000000 --- a/test/doc/core/pedantic/is_not_equal.cpp +++ /dev/null @@ -1,25 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, eve::nan(eve::as(-2.0f))}; - wide_ft qf = {1.0f, -1.0f, -1.0f, eve::nan(eve::as(-2.0f))}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> eve::numeric(is_not_equal)(pf, qf) = " << eve::numeric(eve::is_not_equal)(pf, qf) << '\n'; - - float xf = 1.0f; - float yf = 2.0f; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "<- yf = " << yf << '\n' - << "-> eve::numeric(is_not_equal)(xf, yf) = " << eve::numeric(eve::is_not_equal)(xf, yf) << '\n'; - return 0; -} diff --git a/test/doc/core/pedantic/manhattan.cpp b/test/doc/core/pedantic/manhattan.cpp deleted file mode 100644 index e4ae700c0f..0000000000 --- a/test/doc/core/pedantic/manhattan.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, 2.0f, -3.0f, eve::inf(eve::as())}; - wide_ft qf = {-4 , 3 , -2 , eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> manhattan[pedantic](pf, qf) = " << eve::manhattan[eve::pedantic](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/pedantic/max.cpp b/test/doc/core/pedantic/max.cpp deleted file mode 100644 index bc90e778e5..0000000000 --- a/test/doc/core/pedantic/max.cpp +++ /dev/null @@ -1,22 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using eve::pedantic; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, eve::nan(eve::as()), - -0.0f, eve::nan(eve::as()), -2.0f}; - - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> max[pedantic](pf, qf) = " << eve::max[eve::pedantic](pf, qf) << '\n' - << "-> max[numeric](pf, qf) = " << eve::max[eve::numeric](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/pedantic/maxabs.cpp b/test/doc/core/pedantic/maxabs.cpp deleted file mode 100644 index 173a123249..0000000000 --- a/test/doc/core/pedantic/maxabs.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, 1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, -3.0f, - eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> maxabs[pedantic}(pf, qf) = " << eve::maxabs[eve::pedantic](pf, qf) << '\n' - << "-> maxabs[numeric](pf, qf) = " << eve::maxabs[eve::numeric](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/pedantic/maxmag.cpp b/test/doc/core/pedantic/maxmag.cpp deleted file mode 100644 index 9bec62d73e..0000000000 --- a/test/doc/core/pedantic/maxmag.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, 1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, -3.0f, - eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> maxmag[pedantic}(pf, qf) = " << eve::maxmag[eve::pedantic](pf, qf) << '\n' - << "-> maxmag[numeric](pf, qf) = " << eve::maxmag[eve::numeric](pf, qf) << '\n'; - - return 0; -} diff --git a/test/doc/core/pedantic/min.cpp b/test/doc/core/pedantic/min.cpp deleted file mode 100644 index 3f54c34f41..0000000000 --- a/test/doc/core/pedantic/min.cpp +++ /dev/null @@ -1,22 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using eve::pedantic; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, eve::nan(eve::as()), - -0.0f, eve::nan(eve::as()), -2.0f}; - - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> min[pedantic](pf, qf) = " << eve::min[eve::pedantic](pf, qf) << '\n' - << "-> min[numeric](pf, qf) = " << eve::min[eve::numeric](pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/pedantic/minabs.cpp b/test/doc/core/pedantic/minabs.cpp deleted file mode 100644 index 175ece3852..0000000000 --- a/test/doc/core/pedantic/minabs.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, 1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, -3.0f, - eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> minabs[pedantic}(pf, qf) = " << eve::minabs[eve::pedantic](pf, qf) << '\n' - << "-> minabs[numeric](pf, qf) = " << eve::minabs[eve::numeric](pf, qf) << '\n'; - - return 0; -} diff --git a/test/doc/core/pedantic/minmag.cpp b/test/doc/core/pedantic/minmag.cpp deleted file mode 100644 index 747019eae6..0000000000 --- a/test/doc/core/pedantic/minmag.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, 1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, -3.0f, - eve::nan(eve::as()), -eve::nan(eve::as()), -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> minmag[pedantic}(pf, qf) = " << eve::minmag[eve::pedantic](pf, qf) << '\n' - << "-> minmag[numeric](pf, qf) = " << eve::minmag[eve::numeric](pf, qf) << '\n'; - - return 0; -} diff --git a/test/doc/core/pedantic/next.cpp b/test/doc/core/pedantic/next.cpp deleted file mode 100644 index debe4f2b48..0000000000 --- a/test/doc/core/pedantic/next.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-0.0f, 2.0f, eve::eps(eve::as()), 0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << std::setprecision(12) << pf << '\n' - << "-> pedantic(next)(pf) = " << eve::pedantic(eve::next)(pf) << '\n'; - return 0; -} diff --git a/test/doc/core/pedantic/prev.cpp b/test/doc/core/pedantic/prev.cpp deleted file mode 100644 index bc760ed756..0000000000 --- a/test/doc/core/pedantic/prev.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-0.0f, 2.0f, eve::eps(eve::as()), 0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << std::setprecision(12) << pf << '\n' - << "-> pedantic(prev)(pf) = " << eve::pedantic(eve::prev)(pf) << '\n'; - return 0; -} diff --git a/test/doc/core/pedantic/signnz.cpp b/test/doc/core/pedantic/signnz.cpp deleted file mode 100644 index 62f52abd55..0000000000 --- a/test/doc/core/pedantic/signnz.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using wide_it = eve::wide>; - -int main() -{ - wide_ft pf = {-0.0f, 2.0f, -3.0f, -32768.0f, - 0.0f, -2.0f, 3.0f, 32768.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> pedantic(signnz)(pf) = " << eve::pedantic(eve::signnz)(pf) << '\n'; - return 0; -} diff --git a/test/doc/core/pedantic/sum_of_prod.cpp b/test/doc/core/pedantic/sum_of_prod.cpp deleted file mode 100644 index ad9e2dd898..0000000000 --- a/test/doc/core/pedantic/sum_of_prod.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include -#include - -int main() -{ - using wf_t = eve::wide>; - wf_t xf = {3, 2, 1, 0}, zf = {4, 1, 2, 100}; - wf_t tf = -(xf+4*eve::eps(eve::as())), yf = zf-4*eve::eps(eve::as()); - - std::cout << "---- simd" << std::setprecision(8) << '\n' - << " <- xf = " << xf << '\n' - << " <- yf = " << yf << '\n' - << " <- tf = " << tf << '\n' - << " <- zf = " << zf << '\n' - << " -> xf*yf+tf*zf = " << (xf*yf)+(tf*zf) << '\n' - << " -> pedantic(sum_of_prod)(xf, yf, tf, zf) = " << eve::pedantic(eve::sum_of_prod)(xf, yf, tf, zf) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/plus.cpp b/test/doc/core/plus.cpp similarity index 100% rename from test/doc/core/regular/plus.cpp rename to test/doc/core/plus.cpp diff --git a/test/doc/core/regular/popcount.cpp b/test/doc/core/popcount.cpp similarity index 100% rename from test/doc/core/regular/popcount.cpp rename to test/doc/core/popcount.cpp diff --git a/test/doc/core/regular/prev.cpp b/test/doc/core/prev.cpp similarity index 62% rename from test/doc/core/regular/prev.cpp rename to test/doc/core/prev.cpp index 4337044f94..ac69210f75 100644 --- a/test/doc/core/regular/prev.cpp +++ b/test/doc/core/prev.cpp @@ -3,20 +3,23 @@ #include #include -using wide_ft = eve::wide>; +using wide_ft = eve::wide>; using wide_it = eve::wide>; int main() { - wide_ft pf = {-0.0f, 2.0f, eve::eps(eve::as()), 0.0f}; - wide_it pi = {-1, 2, -3, -32}; + wide_ft pf = {-0.0f, 2.0f, eve::eps(eve::as()), 0.0f, + 30.0f, 2.0f, eve::minf(eve::as()), eve::nan(eve::as())}; + wide_it pi = {-1, 2, -3, -32768}; std::cout << "---- simd" << '\n' << "<- pf =" << std::setprecision(12) << pf << '\n' << "-> prev(pf) =" << eve::prev(pf) << '\n' - << "-> pedantic(prev)(pf) =" << eve::pedantic(eve::prev)(pf) << '\n' + << "-> pedantic(prev)(pf) =" << eve::pedantic(eve::prev)(pf) << '\n' + << "-> saturated(prev)(pf) = " << eve::saturated(eve::prev)(pf) << '\n' << "<- pi =" << pi << '\n' - << "-> prev(pi) =" << eve::prev(pi) << '\n'; + << "-> prev(pi) =" << eve::prev(pi) << '\n' + << "-> saturated(prev)(pf) = " << eve::saturated(eve::prev)(pf) << '\n'; float xf = 0.0f; std::int16_t xi = -3; diff --git a/test/doc/core/regular/rat.cpp b/test/doc/core/rat.cpp similarity index 100% rename from test/doc/core/regular/rat.cpp rename to test/doc/core/rat.cpp diff --git a/test/doc/core/raw/average.cpp b/test/doc/core/raw/average.cpp deleted file mode 100644 index 71785392e9..0000000000 --- a/test/doc/core/raw/average.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 3}, - qi = {4, 1, 1, eve::valmax(eve::as())}, - ri = {4, 1, 1, eve::valmax(eve::as())}; - - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " <- ri = " << ri << '\n' - << " -> raw(average)(pi, qi, ri) = " << eve::average[eve::raw](pi, qi, ri) << '\n' - << " -> average(pi, qi, ri) = " << eve::average(pi, qi, ri) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/rec.cpp b/test/doc/core/rec.cpp similarity index 71% rename from test/doc/core/regular/rec.cpp rename to test/doc/core/rec.cpp index 7a6abcecc0..199c71b337 100644 --- a/test/doc/core/regular/rec.cpp +++ b/test/doc/core/rec.cpp @@ -10,8 +10,9 @@ int main() eve::inf(eve::as()), eve::nan(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> rec)(pf) = " << eve::rec(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> rec(pf) = " << eve::rec(pf) << '\n' + << "-> rec[pf > 3](pf) = " << eve::rec[pf > 1](pf) << '\n'; float xf = 1.0f; diff --git a/test/doc/core/masked/reduce.cpp b/test/doc/core/reduce.cpp similarity index 100% rename from test/doc/core/masked/reduce.cpp rename to test/doc/core/reduce.cpp diff --git a/test/doc/core/regular/average.cpp b/test/doc/core/regular/average.cpp deleted file mode 100644 index 0f7080cde3..0000000000 --- a/test/doc/core/regular/average.cpp +++ /dev/null @@ -1,42 +0,0 @@ -#include -#include -#include -#include - -float mean(std::vector ary) { - float avg = 0; - int t = 1; - for (float x : ary) { - avg += (x - avg) / t; - ++t; - } - return avg; -} - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 3}, qi = {4, 1, 1, ~0}; - - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> average(pi, qi) = " << eve::average(pi, qi) << '\n'; - - std::uint32_t xi = 3, yi = 4; - - std::cout << "---- scalar" << '\n' - << " xi = " << xi << '\n' - << " yi = " << yi << '\n' - << " -> average(xi, yi) = " << eve::average(xi, yi) << '\n'; - - using w_ft = eve::wide>; - w_ft pf = {3, 4, 3, 10}, qf = {4, 1, 1, 15};; - std::cout << "---- multi" << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> average(pf, 0.0f, qf, pf, 11.0f) = " << eve::average(pf, 0.0f, qf, pf, 11.0f) << '\n'; - - std::cout << "---- multi parameters" << '\n'; - return 0; -} diff --git a/test/doc/core/regular/bit_and.cpp b/test/doc/core/regular/bit_and.cpp deleted file mode 100644 index 1afa6da200..0000000000 --- a/test/doc/core/regular/bit_and.cpp +++ /dev/null @@ -1,30 +0,0 @@ - -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; - std::uint32_t z = 5; - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " <- z = " << z << '\n' - << " -> bit_and(pi, qi) = " << eve::bit_and(pi, qi) << '\n' - << " -> bit_and(z, qi) = " << eve::bit_and(z, qi) << '\n' - << " -> bit_and(pi, z ) = " << eve::bit_and(pi, z) << '\n'; - - std::uint32_t mask = 1 >> 31; - float xi = -3.4565; - - std::cout << "---- scalar" << '\n' - << " <- xi = " << xi << '\n' - << " <- mask = " << mask << '\n' - << " -> bit_and(xi, mask) = " << eve::bit_and(xi, mask) << '\n'; - - std::cout << "---- multi parameters" << '\n' - << " -> bit_and(pi, qi, 3, 5) = " << eve::bit_and(pi, qi, 3, 5) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/bit_andnot.cpp b/test/doc/core/regular/bit_andnot.cpp deleted file mode 100644 index dbe2cf2f0a..0000000000 --- a/test/doc/core/regular/bit_andnot.cpp +++ /dev/null @@ -1,27 +0,0 @@ - -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; - std::uint32_t z = 5; - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " <- z = " << z << '\n' - << " -> bit_andnot(pi, qi) = " << eve::bit_andnot(pi, qi) << '\n' - << " -> bit_andnot(qi, z ) = " << eve::bit_andnot(qi, z) << '\n' - << " -> bit_andnot(pi, z ) = " << eve::bit_andnot(pi, z) << '\n' - ; - - std::uint32_t mask = 1 << 31; - float xi = -3.4565f; - - std::cout << "---- scalar" << '\n' - << " <- xi = " << xi << '\n' - << " <- mask = " << mask << '\n' - << " -> bit_andnot(xi, mask) = " << eve::bit_andnot(xi, mask) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/bit_flip.cpp b/test/doc/core/regular/bit_flip.cpp deleted file mode 100644 index 86bd13e9ff..0000000000 --- a/test/doc/core/regular/bit_flip.cpp +++ /dev/null @@ -1,22 +0,0 @@ - -#include -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {1, 3, 7, 15, 31, 63, 127, 255}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> bit_flip(pi, 1) = " << eve::bit_flip(pi, 1) << '\n' - << "-> bit_flip(pi, 2) = " << eve::bit_flip(pi, 2) << '\n' - << "-> bit_flip(pi, 3) = " << eve::bit_flip(pi, 3) << '\n' - << "-> bit_flip(pi, 4) = " << eve::bit_flip(pi, 4) << '\n' - << "-> bit_flip(pi, 8) = " << eve::bit_flip(pi, 8) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/bit_or.cpp b/test/doc/core/regular/bit_or.cpp deleted file mode 100644 index 0d1d42ab24..0000000000 --- a/test/doc/core/regular/bit_or.cpp +++ /dev/null @@ -1,26 +0,0 @@ - -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; - std::uint32_t z = 5; - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " <- z = " << z << '\n' - << " -> bit_or(pi, qi) = " << eve::bit_or(pi, qi) << '\n' - << " -> bit_or(z, qi) = " << eve::bit_or(z, qi) << '\n' - << " -> bit_or(pi, z ) = " << eve::bit_or(pi, z) << '\n'; - - std::uint32_t mask = 1 >> 31; - float xi = -3.4565; - - std::cout << "---- scalar" << '\n' - << " <- xi = " << xi << '\n' - << " <- mask = " << mask << '\n' - << " -> bit_or(xi, mask) = " << eve::bit_or(xi, mask) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/bit_ornot.cpp b/test/doc/core/regular/bit_ornot.cpp deleted file mode 100644 index b3c32b87d9..0000000000 --- a/test/doc/core/regular/bit_ornot.cpp +++ /dev/null @@ -1,26 +0,0 @@ - -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 4}, qi = {4, 1, 1, ~0}; - std::uint32_t z = 5; - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " <- z = " << z << '\n' - << " -> bit_ornot(pi, qi) = " << eve::bit_ornot(pi, qi) << '\n' - << " -> bit_ornot(qi, z ) = " << eve::bit_ornot(qi, z) << '\n' - << " -> bit_ornot(pi, z ) = " << eve::bit_ornot(pi, z) << '\n'; - - std::uint32_t mask = 1 >> 31; - float xi = -3.4565; - - std::cout << "---- scalar" << '\n' - << " <- xi = " << xi << '\n' - << " <- mask = " << mask << '\n' - << " -> bit_ornot(xi, mask) = " << eve::bit_ornot(xi, mask) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/bit_set.cpp b/test/doc/core/regular/bit_set.cpp deleted file mode 100644 index 4c0dc4b909..0000000000 --- a/test/doc/core/regular/bit_set.cpp +++ /dev/null @@ -1,28 +0,0 @@ - -#include -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {1, 3, 7, 15, 31, 63, 127, 255}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> bit_set(pi, 1) = " << eve::bit_set(pi, 1) << '\n' - << "-> bit_set(pi, 2) = " << eve::bit_set(pi, 2) << '\n' - << "-> bit_set(pi, 3) = " << eve::bit_set(pi, 3) << '\n' - << "-> bit_set(pi, 4) = " << eve::bit_set(pi, 4) << '\n' - << "-> bit_set(pi, 8) = " << eve::bit_set(pi, 8) << '\n'; - - - std::uint8_t xf = 48; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << +xf << '\n' - << "-> bit_set(xf, 2) = " << +eve::bit_set(xf, 2) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/bit_shl.cpp b/test/doc/core/regular/bit_shl.cpp deleted file mode 100644 index a8b9043ad9..0000000000 --- a/test/doc/core/regular/bit_shl.cpp +++ /dev/null @@ -1,25 +0,0 @@ -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 4}, qi = {4, 1, 2, 0}; - std::uint32_t z = 5; - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " <- z = " << z << '\n' - << " -> bit_shl(pi, qi) = " << eve::bit_shl(pi, qi) << '\n' - << " -> bit_shl(z, qi) = " << eve::bit_shl(z, qi) << '\n' - << " -> bit_shl(pi, z ) = " << eve::bit_shl(pi, z) << '\n'; - - std::uint32_t a = 1; - std::uint32_t n = 4; - - std::cout << "---- scalar" << '\n' - << " <- a = " << a << '\n' - << " <- n = " << n << '\n' - << " -> bit_shl(a, n) = " << eve::bit_shl(a, n) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/bit_swap_pairs.cpp b/test/doc/core/regular/bit_swap_pairs.cpp deleted file mode 100644 index c193ab49ab..0000000000 --- a/test/doc/core/regular/bit_swap_pairs.cpp +++ /dev/null @@ -1,19 +0,0 @@ - -#include -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {1, 3, 7, 15, 31, 63, 127, 255}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> bit_swap_pairs(pi, 0, 15) = " << eve::bit_swap_pairs(pi, 0, 15) << '\n' - << "-> bit_swap_pairs(pi, 2, 7 ) = " << eve::bit_swap_pairs(pi, 2, 7) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/bit_unset.cpp b/test/doc/core/regular/bit_unset.cpp deleted file mode 100644 index cb5b50c0ef..0000000000 --- a/test/doc/core/regular/bit_unset.cpp +++ /dev/null @@ -1,29 +0,0 @@ - -#include -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {1, 3, 7, 15, 31, 63, 127, 255}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> bit_unset(pi, 0) = " << eve::bit_unset(pi, 0) << '\n' - << "-> bit_unset(pi, 1) = " << eve::bit_unset(pi, 1) << '\n' - << "-> bit_unset(pi, 2) = " << eve::bit_unset(pi, 2) << '\n' - << "-> bit_unset(pi, 3) = " << eve::bit_unset(pi, 3) << '\n' - << "-> bit_unset(pi, 4) = " << eve::bit_unset(pi, 4) << '\n' - << "-> bit_unset(pi, 8) = " << eve::bit_unset(pi, 8) << '\n'; - - - std::uint8_t xf = 48; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << +xf << '\n' - << "-> bit_unset(xf, 5) = " << +eve::bit_unset(xf, 5) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/bitofsign.cpp b/test/doc/core/regular/bitofsign.cpp deleted file mode 100644 index 5368402a28..0000000000 --- a/test/doc/core/regular/bitofsign.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, 0.0f, 3.0f, -0.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> bitofsign(pf) = " << eve::bitofsign(pf) << '\n'; - - float xf = -32768.0f; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "-> bitofsign(xf) = " << eve::bitofsign(xf) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/byte_reverse.cpp b/test/doc/core/regular/byte_reverse.cpp deleted file mode 100644 index cb564f9775..0000000000 --- a/test/doc/core/regular/byte_reverse.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {257, 1, 3, 0}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> byte_reverse(pi) = " << eve::byte_reverse(pi) << '\n'; - - std::uint16_t xf = 48; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << +xf << '\n' - << "-> byte_reverse(xf) = " << +eve::byte_reverse(xf) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/byte_swap_pairs.cpp b/test/doc/core/regular/byte_swap_pairs.cpp deleted file mode 100644 index bf3ccce79a..0000000000 --- a/test/doc/core/regular/byte_swap_pairs.cpp +++ /dev/null @@ -1,33 +0,0 @@ - -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {1, 3, 7, 15, 31, 63, 127, 255}; - pi = eve::inc(pi); - constexpr auto _0 = eve::index<0>; - constexpr auto _1 = eve::index<1>; - constexpr auto _2 = eve::index<2>; - constexpr auto _3 = eve::index<3>; - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> byte_swap_pairs(pi, _0, _3) = " << eve::byte_swap_pairs(pi, _0, _3) << '\n' - << "-> byte_swap_pairs(pi, _1, _2) = " << eve::byte_swap_pairs(pi, _1, _2) << '\n'; - - - std::uint32_t xf = 0xffeeddcc; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << std::hex << xf << '\n' - << "-> byte_swap_pairs(xf, _0, _3) = " << std::hex << eve::byte_swap_pairs(xf, _0, _3) << '\n' - << "-> byte_swap_pairs(xf, _1, _3) = " << std::hex << eve::byte_swap_pairs(xf, _1, _3) << '\n' - << "-> byte_swap_pairs(xf, _1, _2) = " << std::hex << eve::byte_swap_pairs(xf, _1, _2) << '\n' - << "-> byte_swap_pairs(xf, _0, _2) = " << std::hex << eve::byte_swap_pairs(xf, _0, _2) << '\n' - ; - - return 0; -} diff --git a/test/doc/core/regular/ceil.cpp b/test/doc/core/regular/ceil.cpp deleted file mode 100644 index ef723c363a..0000000000 --- a/test/doc/core/regular/ceil.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, -1.3f, -1.5f, -1.7f, 2.0f, 2.3f, 2.5f, 2.7f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> ceil(pf) = " << eve::ceil(pf) << '\n'; - - float xf = -32.768f; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "-> ceil(xf) = " << eve::ceil(xf) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/convert.cpp b/test/doc/core/regular/convert.cpp deleted file mode 100644 index cb48d2a8dd..0000000000 --- a/test/doc/core/regular/convert.cpp +++ /dev/null @@ -1,31 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using wide_it = eve::wide>; -using int_16 = eve::as; -using int_64 = eve::as; - -int main() -{ - wide_ft pf = {-1.0f, 2.3f, 45000.7f, -64768.6f}; - wide_it pi = {-1, 2, -3, eve::valmax(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> convert(pf, int_64()) = " << eve::convert(pf, int_64()) << '\n' - << "-> convert(pf, int_16()) = = " << eve::convert(pf, int_16()) << '\n' - << "<- pi = " << pi << '\n' - << "-> convert(pi, as(eve::as())) = " << eve::convert(pi, eve::as()) << '\n'; - - double xf = -64768.4f; - std::int64_t xi = -64768; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "-> convert(xf, int_64()) = " << eve::convert(xf, int_64()) << '\n' - << "<- xi = " << xi << '\n' - << "-> convert(xi, eve::as()) = " << eve::convert(xi, eve::as()) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/count_true.cpp b/test/doc/core/regular/count_true.cpp deleted file mode 100644 index c7b4900a61..0000000000 --- a/test/doc/core/regular/count_true.cpp +++ /dev/null @@ -1,22 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::logical>>; - -int main() -{ - eve::logical xf = true; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "-> count_true(xf) = " << eve::count_true(xf) << '\n'; - - wide_ft pf = {true,false,true,false}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> count_true(pf) = " << eve::count_true(pf) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/deco.cpp b/test/doc/core/regular/deco.cpp deleted file mode 100644 index 6a17fe0f1d..0000000000 --- a/test/doc/core/regular/deco.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {-1, 2, -3, -32768}; - - std::cout << "---- simd" << '\n' - << "<- pi = = " << pi << '\n' - << "-> eve::abs(pi) = " << eve::abs(pi) << '\n' - << "-> eve::abs[saturated](pi) = " << eve::abs[eve::saturated](pi) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/diff_of_prod.cpp b/test/doc/core/regular/diff_of_prod.cpp deleted file mode 100644 index b81ac679f8..0000000000 --- a/test/doc/core/regular/diff_of_prod.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include -#include - -int main() -{ - using wf_t = eve::wide>; - wf_t xf = {3, 2, 1, 0}, zf = {4, 1, 2, 100}; - wf_t tf = xf+4*eve::eps(eve::as()), yf = zf-4*eve::eps(eve::as()); - - std::cout << "---- simd" << std::setprecision(8) << '\n' - << " <- xf = " << xf << '\n' - << " <- yf = " << yf << '\n' - << " <- tf = " << tf << '\n' - << " <- zf = " << zf << '\n' - << " -> xf*yf-tf*zf = " << (xf*yf)-(tf*zf) << '\n' - << " -> diff_of_prod(xf, yf, tf, zf) = " << eve::diff_of_prod(xf, yf, tf, zf) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/div.cpp b/test/doc/core/regular/div.cpp deleted file mode 100644 index debfd12980..0000000000 --- a/test/doc/core/regular/div.cpp +++ /dev/null @@ -1,34 +0,0 @@ -#include -#include -#include - -int main() -{ - using wf_t = eve::wide>; - wf_t pf = {3, 2, 3, 32700}, qf = {4, 1, 1, 100}; - - std::cout << "---- simd" << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> div(pf, qf) = " << eve::div(pf, qf) << '\n' - << " -> pf / qf = " << pf / qf << '\n'; - - std::int16_t xi = -32768, yi = -1; - - std::cout << "---- scalar" << '\n' - << " xi = " << xi << '\n' - << " yi = " << yi << '\n' - << " -> div(xi, yi) = " << eve::div(xi, yi) << '\n' - << " -> xi / yi = " << xi / yi << '\n' // C++ promotion to int - << " -> std::int16_t( xi / yi) = "<< std::int16_t( xi / yi) << '\n'; - - - auto k = kumi::tuple{pf, pf, pf, 1}; - std::cout << "---- multi parameters" << '\n' - << " -> div(k) = " << eve::div(k) << '\n' - << " -> div(kumi::tuple{pf, pf}) = " << eve::div( kumi::tuple{pf, pf}) << '\n' - << " -> div(kumi::tuple{pf, 1.0f) = " << eve::div( kumi::tuple{pf, 1.0f}) << '\n' - << " -> div(kumi::tuple{1.0f, pf) = " << eve::div( kumi::tuple{1.0f, pf}) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/fanm.cpp b/test/doc/core/regular/fanm.cpp deleted file mode 100644 index 85ef82e816..0000000000 --- a/test/doc/core/regular/fanm.cpp +++ /dev/null @@ -1,36 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide >; - -int main() -{ - wide_ft pf = { 0.0f, 1.0f, -1.0f, -0.5f}; - wide_ft qf = { 1.0f, -1.0f, -0.5f, 0.0f}; - wide_ft rf = { 1.0f, 2.0f, -5.0f, 0.1f}; - - std::cout - << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "<- rf = " << rf << '\n' - << " -> pedantic(fanm)(pf, qf, rf) = " << eve::pedantic(eve::fanm)(pf, qf, rf) << '\n' - << " -> numeric(fanm)(pf, qf, rf) = " << eve::numeric(eve::fanm)(pf, qf, rf) << '\n' - << " -> fanm(pf, qf, rf) = " << eve::fanm(pf, qf, rf) << '\n' - << "\n if the last fanm result ends by '0, inf}', it is because\n" - << " the system has no simd fanm fanmily intrinsics\n" - << " or is not configured to use them.\n\n"; - - - float xf = 0.5f; - float yf = 0.5f; - float zf = 0.1f; - std::cout - << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "<- yf = " << yf << '\n' - << "<- zf = " << yf << '\n' - << "-> fanm(xf, yf, zf) = " << eve::fanm(xf, yf, zf) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/first_true.cpp b/test/doc/core/regular/first_true.cpp deleted file mode 100644 index e4d2207469..0000000000 --- a/test/doc/core/regular/first_true.cpp +++ /dev/null @@ -1,28 +0,0 @@ -#include -#include - -using w_t = eve::wide>; - -int main() -{ - w_t x = {1, 2, 3, 4}; - - // logicals - - TTS_EQUAL(std::nullopt, eve::first_true(x == 0)); - TTS_EQUAL(0, eve::first_true(x == 1)); - TTS_EQUAL(1, eve::first_true(x == 2)); - - TTS_EQUAL(std::nullopt, eve::first_true[eve::ignore_first(1)](x == 1)); - TTS_EQUAL(2, eve::first_true[eve::ignore_first(2)](x < 5)); - - // top_bits - - eve::top_bits mmask{x >= 2}; - TTS_EQUAL(1, eve::first_true(mmask)); - - // scalar - - TTS_EQUAL(std::nullopt, eve::first_true(false)); - TTS_EQUAL(0, eve::first_true(true)); -} diff --git a/test/doc/core/regular/floor.cpp b/test/doc/core/regular/floor.cpp deleted file mode 100644 index d1535eef9b..0000000000 --- a/test/doc/core/regular/floor.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, -1.3f, -1.5f, -1.7f, 2.0f, 2.3f, 2.5f, 2.7f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> floor(pf) = " << eve::floor(pf) << '\n'; - - float xf = -32.768f; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "-> floor(xf) = " << eve::floor(xf) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/fms.cpp b/test/doc/core/regular/fms.cpp deleted file mode 100644 index 5d0a9f01bb..0000000000 --- a/test/doc/core/regular/fms.cpp +++ /dev/null @@ -1,40 +0,0 @@ -#include -#include -#include -#include - -using wide_t = eve::wide>; - -int main() -{ - float es = eve::eps(eve::as()); - float esm1 = es-1.0f; - float esp1 = es+1.0f; - float vm = eve::valmax(eve::as()); - wide_t of = {2, -3, esp1, vm}; - wide_t pf = {3, -2, esm1, 2 }; - wide_t qf = {4, -1, -1.0f, vm}; - - std::cout << "---- simd" << '\n' - << " <- of = " << of << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> pedantic(fms)(of, pf, qf) = " << eve::pedantic(eve::fms)(of, pf, qf) << '\n' - << " -> numeric(fms)(of, pf, qf) = " << eve::numeric(eve::fms)(of, pf, qf) << '\n' - << " -> fms(of, pf, qf) = " << eve::fms(of, pf, qf) << '\n' - << "\n if the last fms result ends by '0, inf}', it is because\n" - << " the system has no simd fms family intrinsics\n" - << " or is not configured to use them.\n\n"; - - std::cout << "---- scalar" << std::setprecision(10) << '\n' - << " <- vm = " << vm << '\n' - << " -> pedantic(fms)(vm, 2.0f, vm) = " << eve::pedantic(eve::fms)(vm, 2.0f, -vm) << '\n' - << " -> numeric(fms)(vm, 2.0f, vm) = " << eve::numeric(eve::fms)(vm, 2.0f, -vm) << '\n' - << " -> fms(vm, 2.0f, vm) = " << eve::fms(vm, 2.0f, -vm) << '\n' - << " <- esm1 = " << esm1 << '\n' - << " <- esp1 = " << esp1 << '\n' - << " -> pedantic(fms)(esp1, esm1, -1.0f) = " << eve::pedantic(eve::fms)(esp1, esm1, -1.0f) << '\n' - << " -> numeric(fms)(esp1, esm1, -1.0f) = " << eve::numeric(eve::fms)(esp1, esm1, -1.0f) << '\n' - << " -> fms(esp1, esm1, -1.0f) = " << eve::fms(esp1, esm1, -1.0f) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/fnma.cpp b/test/doc/core/regular/fnma.cpp deleted file mode 100644 index e7f65f9e3d..0000000000 --- a/test/doc/core/regular/fnma.cpp +++ /dev/null @@ -1,36 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide >; - -int main() -{ - wide_ft pf = { 0.0f, 1.0f, -1.0f, -0.5f}; - wide_ft qf = { 1.0f, -1.0f, -0.5f, 0.0f}; - wide_ft rf = { 1.0f, 2.0f, -5.0f, 0.1f}; - - std::cout - << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "<- rf = " << rf << '\n' - << " -> pedantic(fnma)(pf, qf, rf) = " << eve::pedantic(eve::fnma)(pf, qf, rf) << '\n' - << " -> numeric(fnma)(pf, qf, rf) = " << eve::numeric(eve::fnma)(pf, qf, rf) << '\n' - << " -> fnma(pf, qf, rf) = " << eve::fnma(pf, qf, rf) << '\n' - << "\n if the last fnma result ends by '0, inf}', it is because\n" - << " the system has no simd fnma fnmaily intrinsics\n" - << " or is not configured to use them.\n\n"; - - - float xf = 0.5f; - float yf = 0.5f; - float zf = 0.1f; - std::cout - << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "<- yf = " << yf << '\n' - << "<- zf = " << yf << '\n' - << "-> fnma(xf, yf, zf) = " << eve::fnma(xf, yf, zf) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/fracscale.cpp b/test/doc/core/regular/fracscale.cpp deleted file mode 100644 index 8406b99f22..0000000000 --- a/test/doc/core/regular/fracscale.cpp +++ /dev/null @@ -1,23 +0,0 @@ -#include -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf( [](auto i, auto) { return 1.2345678+i; } ); - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> fracscale(pf, 4) = " << eve::fracscale(pf, 4) << '\n'; - - float xf = 0x1.fffffep0f; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << std::hexfloat << xf << '\n'; - for (int i = 0; i < 16; ++i) - std::cout << "-> toward_zero(fracscale)(xf," << std::setw(2) << i << ") = " << std::hexfloat << eve::toward_zero(eve::fracscale)(xf, i) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/frexp.cpp b/test/doc/core/regular/frexp.cpp deleted file mode 100644 index 0f109106ec..0000000000 --- a/test/doc/core/regular/frexp.cpp +++ /dev/null @@ -1,27 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, 0.0f, 367.0f, -1005600.0f, eve::mindenormal(eve::as()), - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - - auto [m, e] = eve::frexp(pf); - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> frexp(pf) = [" << '\n' - << " " << m << ", \n" - << " " << e << '\n' - << " ]\n"; - - float xf = 2.3; - auto [sm, se] = eve::frexp(xf); - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "-> frexp(xf) = [" << sm << ", " << se << "]\n"; - return 0; -} diff --git a/test/doc/core/regular/if_add.cpp b/test/doc/core/regular/if_add.cpp deleted file mode 100644 index 1c2603dc84..0000000000 --- a/test/doc/core/regular/if_add.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#include -#include -#include - -using iT = std::int32_t; -using wide_it = eve::wide>; -using wide_lt = eve::as_logical_t; - -int main() -{ - wide_it pi = {3, -2, -10, 0}; - wide_it qi = {4, -1, 0, 5}; - wide_it si = {2, -3, 0, 4}; - wide_lt lsi = {true, false, false, true}; - - std::cout << "---- simd" << '\n' - << " <- si = " << si << '\n' - << " <- lsi = " << lsi << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> eve::add[si](pi, qi) = " << eve::add[ si ](pi, qi) << '\n' - << " -> eve::add[lsi](pi, qi) = " << eve::add[ lsi ](pi, qi) << '\n'; - - iT ssi = 3, xi = 3, yi = 4; - eve::logical lssi = false; - - std::cout << "---- scalar" << '\n' - << " ssi = " << ssi << '\n' - << " lssi = " << lssi << '\n' - << " xi = " << xi << '\n' - << " yi = " << yi << '\n' - << " -> eve::add[ssi](xi, yi) = " << eve::add[ ssi ](xi, yi) << '\n' - << " -> eve::add[(lssi](xi, yi) = " << eve::add[ lssi ](xi, yi) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/if_allbits_else.cpp b/test/doc/core/regular/if_allbits_else.cpp deleted file mode 100644 index 2b18661c35..0000000000 --- a/test/doc/core/regular/if_allbits_else.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#include -#include - -using iT = std::int32_t; -using wide_it = eve::wide>; -using wide_lt = eve::as_logical_t; - -int main() -{ - wide_it pi = {3, -2, -10, 0}; - wide_it si = {2, -3, 0, 4}; - wide_lt lsi = {true, false, false, true}; - - std::cout << "---- simd" << '\n' - << " <- si = " << si << '\n' - << " <- lsi = " << lsi << '\n' - << " <- pi = " << pi << '\n' - << " -> eve::if_else(si, eve::allbits, pi) = " - << eve::if_else(si, eve::allbits, pi) << '\n' - << " -> eve::if_else(lsi, eve::allbits, pi) = " - << eve::if_else(lsi, eve::allbits, pi) << '\n'; - - iT ssi = 3, xi = 3; - eve::logical lssi = false; - - std::cout << "---- scalar" << '\n' - << " ssi = " << ssi << '\n' - << " lssi = " << lssi << '\n' - << " xi = " << xi << '\n' - << " -> eve::if_else(ssi, eve::allbits, xi) = " - << eve::if_else(ssi, eve::allbits, xi) << '\n' - << " -> eve::if_else(lssi, xi, eve::allbits, xi) = " - << eve::if_else(lssi, eve::allbits, xi) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/if_else_allbits.cpp b/test/doc/core/regular/if_else_allbits.cpp deleted file mode 100644 index 27babf7221..0000000000 --- a/test/doc/core/regular/if_else_allbits.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#include -#include - -using iT = std::int32_t; -using wide_it = eve::wide>; -using wide_lt = eve::as_logical_t; - -int main() -{ - wide_it pi = {3, -2, -10, 0}; - wide_it si = {2, -3, 0, 4}; - wide_lt lsi = {true, false, false, true}; - - std::cout << "---- simd" << '\n' - << " <- si = " << si << '\n' - << " <- lsi = " << lsi << '\n' - << " <- pi = " << pi << '\n' - << " -> eve::if_else(si, pi, eve::allbits) = " - << eve::if_else(si, pi, eve::allbits) << '\n' - << " -> eve::if_else(lsi, pi, eve::allbits) = " - << eve::if_else(lsi, pi, eve::allbits) << '\n'; - - iT ssi = 3, xi = 3; - eve::logical lssi = false; - - std::cout << "---- scalar" << '\n' - << " ssi = " << ssi << '\n' - << " lssi = " << lssi << '\n' - << " xi = " << xi << '\n' - << " -> eve::if_else(ssi, xi, eve::allbits) = " - << eve::if_else(ssi, xi, eve::allbits) << '\n' - << " -> eve::if_else(lssi, xi, eve::allbits) = " - << eve::if_else(lssi, xi, eve::allbits) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/if_else_mone.cpp b/test/doc/core/regular/if_else_mone.cpp deleted file mode 100644 index 27babf7221..0000000000 --- a/test/doc/core/regular/if_else_mone.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#include -#include - -using iT = std::int32_t; -using wide_it = eve::wide>; -using wide_lt = eve::as_logical_t; - -int main() -{ - wide_it pi = {3, -2, -10, 0}; - wide_it si = {2, -3, 0, 4}; - wide_lt lsi = {true, false, false, true}; - - std::cout << "---- simd" << '\n' - << " <- si = " << si << '\n' - << " <- lsi = " << lsi << '\n' - << " <- pi = " << pi << '\n' - << " -> eve::if_else(si, pi, eve::allbits) = " - << eve::if_else(si, pi, eve::allbits) << '\n' - << " -> eve::if_else(lsi, pi, eve::allbits) = " - << eve::if_else(lsi, pi, eve::allbits) << '\n'; - - iT ssi = 3, xi = 3; - eve::logical lssi = false; - - std::cout << "---- scalar" << '\n' - << " ssi = " << ssi << '\n' - << " lssi = " << lssi << '\n' - << " xi = " << xi << '\n' - << " -> eve::if_else(ssi, xi, eve::allbits) = " - << eve::if_else(ssi, xi, eve::allbits) << '\n' - << " -> eve::if_else(lssi, xi, eve::allbits) = " - << eve::if_else(lssi, xi, eve::allbits) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/if_else_one.cpp b/test/doc/core/regular/if_else_one.cpp deleted file mode 100644 index 27babf7221..0000000000 --- a/test/doc/core/regular/if_else_one.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#include -#include - -using iT = std::int32_t; -using wide_it = eve::wide>; -using wide_lt = eve::as_logical_t; - -int main() -{ - wide_it pi = {3, -2, -10, 0}; - wide_it si = {2, -3, 0, 4}; - wide_lt lsi = {true, false, false, true}; - - std::cout << "---- simd" << '\n' - << " <- si = " << si << '\n' - << " <- lsi = " << lsi << '\n' - << " <- pi = " << pi << '\n' - << " -> eve::if_else(si, pi, eve::allbits) = " - << eve::if_else(si, pi, eve::allbits) << '\n' - << " -> eve::if_else(lsi, pi, eve::allbits) = " - << eve::if_else(lsi, pi, eve::allbits) << '\n'; - - iT ssi = 3, xi = 3; - eve::logical lssi = false; - - std::cout << "---- scalar" << '\n' - << " ssi = " << ssi << '\n' - << " lssi = " << lssi << '\n' - << " xi = " << xi << '\n' - << " -> eve::if_else(ssi, xi, eve::allbits) = " - << eve::if_else(ssi, xi, eve::allbits) << '\n' - << " -> eve::if_else(lssi, xi, eve::allbits) = " - << eve::if_else(lssi, xi, eve::allbits) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/if_else_zero.cpp b/test/doc/core/regular/if_else_zero.cpp deleted file mode 100644 index 3f5b6ebd9a..0000000000 --- a/test/doc/core/regular/if_else_zero.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#include -#include - -using iT = std::int32_t; -using wide_it = eve::wide>; -using wide_lt = eve::as_logical_t; - -int main() -{ - wide_it pi = {3, -2, -10, 0}; - wide_it si = {2, -3, 0, 4}; - wide_lt lsi = {true, false, false, true}; - - std::cout << "---- simd" << '\n' - << " <- si = " << si << '\n' - << " <- lsi = " << lsi << '\n' - << " <- pi = " << pi << '\n' - << " -> eve::if_else_zero(si, pi, eve::zero) = " - << eve::if_else(si, pi, eve::zero) << '\n' - << " -> eve::if_else(lsi, pi, eve::zero) = " << eve::if_else(lsi, pi, eve::zero) - << '\n'; - - iT ssi = 3, xi = 3; - eve::logical lssi = false; - - std::cout << "---- scalar" << '\n' - << " ssi = " << ssi << '\n' - << " lssi = " << lssi << '\n' - << " xi = " << xi << '\n' - << " -> eve::if_else(ssi, xi, eve::zero) = " << eve::if_else(ssi, xi, eve::zero) - << '\n' - << " -> eve::if_else(lssi, xi, eve::zero) = " - << eve::if_else(lssi, xi, eve::zero) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/if_mone_else.cpp b/test/doc/core/regular/if_mone_else.cpp deleted file mode 100644 index d84b629dec..0000000000 --- a/test/doc/core/regular/if_mone_else.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#include -#include - -using iT = std::int32_t; -using wide_it = eve::wide>; -using wide_lt = eve::as_logical_t; - -int main() -{ - wide_it pi = {3, -2, -10, 0}; - wide_it si = {2, -3, 0, 4}; - wide_lt lsi = {true, false, false, true}; - - std::cout << "---- simd" << '\n' - << " <- si = " << si << '\n' - << " <- lsi = " << lsi << '\n' - << " <- pi = " << pi << '\n' - << " -> eve::if_else(si, eve::mone, pi) = " - << eve::if_else(si, eve::mone, pi) << '\n' - << " -> eve::if_else(lsi, eve::mone, pi_) = " - << eve::if_else(lsi, eve::mone, pi) << '\n'; - - iT ssi = 3, xi = 3; - eve::logical lssi = false; - - std::cout << "---- scalar" << '\n' - << " ssi = " << ssi << '\n' - << " lssi = " << lssi << '\n' - << " xi = " << xi << '\n' - << " -> eve::if_else(ssi, eve::mone, xi) = " - << eve::if_else(ssi, eve::mone, xi) << '\n' - << " -> eve::if_else(lssi, xi, eve::mone, xi) = " - << eve::if_else(lssi, eve::mone, xi) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/if_mul.cpp b/test/doc/core/regular/if_mul.cpp deleted file mode 100644 index a1b63669fc..0000000000 --- a/test/doc/core/regular/if_mul.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#include -#include -#include - -using iT = std::int32_t; -using wide_it = eve::wide>; -using wide_lt = eve::as_logical_t; - -int main() -{ - wide_it pi = {3, -2, -10, 0}; - wide_it qi = {4, -1, 0, 5}; - wide_it si = {2, -3, 0, 4}; - wide_lt lsi = {true, false, false, true}; - - std::cout << "---- simd" << '\n' - << " <- si = " << si << '\n' - << " <- lsi = " << lsi << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> eve::mul[si](pi, qi) = " << eve::mul[ si ](pi, qi) << '\n' - << " -> eve::mul[lsi](pi, qi) = " << eve::mul[ lsi ](pi, qi) << '\n'; - - iT ssi = 3, xi = 3, yi = 4; - eve::logical lssi = false; - - std::cout << "---- scalar" << '\n' - << " ssi = " << ssi << '\n' - << " lssi = " << lssi << '\n' - << " xi = " << xi << '\n' - << " yi = " << yi << '\n' - << " -> eve::mul[ssi](xi, yi) = " << eve::mul[ ssi ](xi, yi) << '\n' - << " -> eve::mul[(lssi](xi, yi) = " << eve::mul[ lssi ](xi, yi) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/if_one_else.cpp b/test/doc/core/regular/if_one_else.cpp deleted file mode 100644 index 3f205cb066..0000000000 --- a/test/doc/core/regular/if_one_else.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#include -#include - -using iT = std::int32_t; -using wide_it = eve::wide>; -using wide_lt = eve::as_logical_t; - -int main() -{ - wide_it pi = {3, -2, -10, 0}; - wide_it si = {2, -3, 0, 4}; - wide_lt lsi = {true, false, false, true}; - - std::cout << "---- simd" << '\n' - << " <- si = " << si << '\n' - << " <- lsi = " << lsi << '\n' - << " <- pi = " << pi << '\n' - << " -> eve::if_else(si, eve::allbits, pi) = " - << eve::if_else(si, eve::allbits, pi) << '\n' - << " -> eve::if_else(lsi, eve::allbits, pi_) = " - << eve::if_else(lsi, eve::allbits, pi) << '\n'; - - iT ssi = 3, xi = 3; - eve::logical lssi = false; - - std::cout << "---- scalar" << '\n' - << " ssi = " << ssi << '\n' - << " lssi = " << lssi << '\n' - << " xi = " << xi << '\n' - << " -> eve::if_else(ssi, eve::allbits, xi) = " - << eve::if_else(ssi, eve::allbits, xi) << '\n' - << " -> eve::if_else(lssi, xi, eve::allbits, xi) = " - << eve::if_else(lssi, eve::allbits, xi) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/if_sub.cpp b/test/doc/core/regular/if_sub.cpp deleted file mode 100644 index cc3544b5a5..0000000000 --- a/test/doc/core/regular/if_sub.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#include -#include -#include - -using iT = std::int32_t; -using wide_it = eve::wide>; -using wide_lt = eve::as_logical_t; - -int main() -{ - wide_it pi = {3, -2, -10, 0}; - wide_it qi = {4, -1, 0, 5}; - wide_it si = {2, -3, 0, 4}; - wide_lt lsi = {true, false, false, true}; - - std::cout << "---- simd" << '\n' - << " <- si = " << si << '\n' - << " <- lsi = " << lsi << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> eve::sub[si](pi, qi) = " << eve::sub[ si ](pi, qi) << '\n' - << " -> eve::sub[lsi](pi, qi) = " << eve::sub[ lsi ](pi, qi) << '\n'; - - iT ssi = 3, xi = 3, yi = 4; - eve::logical lssi = false; - - std::cout << "---- scalar" << '\n' - << " ssi = " << ssi << '\n' - << " lssi = " << lssi << '\n' - << " xi = " << xi << '\n' - << " yi = " << yi << '\n' - << " -> eve::sub[ssi](xi, yi) = " << eve::sub[ ssi ](xi, yi) << '\n' - << " -> eve::sub[(lssi](xi, yi) = " << eve::sub[ lssi ](xi, yi) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/if_zero_else.cpp b/test/doc/core/regular/if_zero_else.cpp deleted file mode 100644 index f7fa6ee188..0000000000 --- a/test/doc/core/regular/if_zero_else.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#include -#include - -using iT = std::int32_t; -using wide_it = eve::wide>; -using wide_lt = eve::as_logical_t; - -int main() -{ - wide_it pi = {3, -2, -10, 0}; - wide_it si = {2, -3, 0, 4}; - wide_lt lsi = {true, false, false, true}; - - std::cout << "---- simd" << '\n' - << " <- si = " << si << '\n' - << " <- lsi = " << lsi << '\n' - << " <- pi = " << pi << '\n' - << " -> eve::if_zero_else(si, eve::zero, pi) = " - << eve::if_else(si, eve::zero, pi) << '\n' - << " -> eve::if_else(lsi, eve::zero, pi) = " << eve::if_else(lsi, eve::zero, pi) - << '\n'; - - iT ssi = 3, xi = 3; - eve::logical lssi = false; - - std::cout << "---- scalar" << '\n' - << " ssi = " << ssi << '\n' - << " lssi = " << lssi << '\n' - << " xi = " << xi << '\n' - << " -> eve::if_else(ssi, eve::zero, xi) = " << eve::if_else(ssi, eve::zero, xi) - << '\n' - << " -> eve::if_else(lssi, xi, eve::zero, xi) = " - << eve::if_else(lssi, eve::zero, xi) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/ifrexp.cpp b/test/doc/core/regular/ifrexp.cpp deleted file mode 100644 index 1cecf6792a..0000000000 --- a/test/doc/core/regular/ifrexp.cpp +++ /dev/null @@ -1,27 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, 0.0f, 367.0f, -1005600.0f, eve::mindenormal(eve::as()), - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - - auto [m, e] = eve::ifrexp(pf); - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> ifrexp(pf) = [" << '\n' - << " " << m << ", \n" - << " " << e << '\n' - << " ]\n"; - - float xf = 2.3; - auto [sm, se] = eve::ifrexp(xf); - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "-> ifrexp(xf) = [" << sm << ", " << se << "]\n"; - return 0; -} diff --git a/test/doc/core/regular/inc.cpp b/test/doc/core/regular/inc.cpp deleted file mode 100644 index ee8483d5e6..0000000000 --- a/test/doc/core/regular/inc.cpp +++ /dev/null @@ -1,22 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> eve::inc(pf) = " << eve::inc(pf) << '\n'; - - float xf = 1.0f; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "-> eve::inc(xf) = " << eve::inc(xf) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/int16_.cpp b/test/doc/core/regular/int16_.cpp deleted file mode 100644 index 7b4f4a2d0f..0000000000 --- a/test/doc/core/regular/int16_.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using wide_it = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, 2.3f, 45000.7f, -10.6f}; - wide_it pi = {-1, 2, -3, eve::valmax(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> int16(pf) = " << eve::int16(pf) << '\n' - << "<- pi = " << pi << '\n' - << "-> int16(pi) = " << eve::int16(pi) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/int8_.cpp b/test/doc/core/regular/int8_.cpp deleted file mode 100644 index 7a5089a1cb..0000000000 --- a/test/doc/core/regular/int8_.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using wide_it = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, 2.3f, 45000.7f, -10.6f}; - wide_it pi = {-1, 2, -3, eve::valmax(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> int8(pf) = " << eve::int8(pf) << '\n' - << "<- pi = " << pi << '\n' - << "-> int8(pi) = " << eve::int8(pi) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/is_equal.cpp b/test/doc/core/regular/is_equal.cpp deleted file mode 100644 index bf46e2408b..0000000000 --- a/test/doc/core/regular/is_equal.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, 2.0f}; - wide_ft qf = {1.0f, -1.0f, -1.0f, 2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_equal(pf, qf) = " << eve::is_equal(pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/is_greater.cpp b/test/doc/core/regular/is_greater.cpp deleted file mode 100644 index b43452d5fc..0000000000 --- a/test/doc/core/regular/is_greater.cpp +++ /dev/null @@ -1,25 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f}; - wide_ft qf = {1.0f, -1.0f, -1.0f, -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_equal(pf, qf) = " << eve::is_equal(pf, qf) << '\n'; - - float xf = 1.0f; - float yf = 2.0f; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "<- yf = " << yf << '\n' - << "-> is_equal(xf, yf) = " << eve::is_equal(xf, yf) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/is_greater_equal.cpp b/test/doc/core/regular/is_greater_equal.cpp deleted file mode 100644 index 82540f4aa5..0000000000 --- a/test/doc/core/regular/is_greater_equal.cpp +++ /dev/null @@ -1,25 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f}; - wide_ft qf = {1.0f, -1.0f, -1.0f, -3.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_greater_equal(pf, qf) = " << eve::is_greater_equal(pf, qf) << '\n'; - - float xf = 1.0f; - float yf = 2.0f; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "<- yf = " << yf << '\n' - << "-> is_greater_equal(xf, yf) = " << eve::is_greater_equal(xf, yf) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/is_not_equal.cpp b/test/doc/core/regular/is_not_equal.cpp deleted file mode 100644 index 8e3f641f09..0000000000 --- a/test/doc/core/regular/is_not_equal.cpp +++ /dev/null @@ -1,25 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f}; - wide_ft qf = {1.0f, -1.0f, -1.0f, -2.0f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> is_not_equal(pf, qf) = " << eve::is_not_equal(pf, qf) << '\n'; - - float xf = 1.0f; - float yf = 2.0f; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "<- yf = " << yf << '\n' - << "-> is_not_equal(xf, yf) = " << eve::is_not_equal(xf, yf) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/lerp.cpp b/test/doc/core/regular/lerp.cpp deleted file mode 100644 index 255f3aae19..0000000000 --- a/test/doc/core/regular/lerp.cpp +++ /dev/null @@ -1,24 +0,0 @@ -#include -#include -#include - -int main() -{ - using wf_t = eve::wide>; - wf_t pf = {3, 2.5, -32.7, 1327.43}, qf = {4.2, 1.5, -100.834, 10.02}, tf = {0, 0.1, -3, 1.0}; - - std::cout << "---- simd" << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " <- tf = " << tf << '\n' - << " -> lerp(pf, qf, tf) = " << eve::add(pf, qf, tf) << '\n'; - - double x = 10000, y = 32700, t = 0.5; - - std::cout << "---- scalar" << '\n' - << " <- x = " << x << '\n' - << " <- y = " << y << '\n' - << " <- t = " << t << '\n' - << " -> lerp(x, y, t) = " << eve::add(x, y, t) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/maximum.cpp b/test/doc/core/regular/maximum.cpp deleted file mode 100644 index cfbae0fd08..0000000000 --- a/test/doc/core/regular/maximum.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using wide_it = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, 2.0f, -3.0f, -68.0f}; - wide_it pi = {-1, 2, -3268, 3}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> maximum(pf) = " << eve::maximum(pf) << '\n' - << "<- pi = " << pi << '\n' - << "-> maximum(pi) = " << eve::maximum(pi) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/min.cpp b/test/doc/core/regular/min.cpp deleted file mode 100644 index 4bbab665a5..0000000000 --- a/test/doc/core/regular/min.cpp +++ /dev/null @@ -1,39 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using eve::pedantic; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, eve::nan(eve::as()), - -0.0f, eve::nan(eve::as()), -2.0f}; - - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> min(pf, qf) = " << eve::min(pf, qf) << '\n'; - - float xf = 1.0f; - float yf = eve::nan(eve::as()); - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "<- yf = " << yf << '\n' - << "-> min(xf, yf) = = " << eve::min(xf, yf) << '\n'; -// auto k = kumi::tuple{pf, qf, pf+qf, 1}; -// std::cout << "---- multi parameters" << '\n' -// << " -> min(k) = " << eve::min(k) << '\n' -// << " -> min(kumi::tuple{pf, pf, 1}) = " << eve::min( kumi::tuple{pf, qf, 1}) << '\n' -// << " -> min(kumi::tuple{1, pf, pf}) = " << eve::min( kumi::tuple{1, pf, qf}) << '\n' -// << " -> numeric(min(kumi::tuple{1.0f, pf, qf) = " << eve::numeric(eve::min)( kumi::tuple{1.0f, pf,qf}) << '\n' -// << " -> min(kumi::tuple{pf, 1.0f) = " << eve::min( kumi::tuple{pf, 1.0f}) << '\n' -// << " -> min(kumi::tuple{1.0f, pf) = " << eve::min( kumi::tuple{1.0f, pf}) << '\n' -// << " -> numeric(min(kumi::tuple{1.0f, pf) = " << eve::numeric(eve::min)( kumi::tuple{1.0f, pf}) << '\n' -// ; - return 0; -} diff --git a/test/doc/core/regular/minimum.cpp b/test/doc/core/regular/minimum.cpp deleted file mode 100644 index f10e7d36b5..0000000000 --- a/test/doc/core/regular/minimum.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using wide_it = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, 2.0f, -3.0f, -32768.0f}; - wide_it pi = {-1, 2, -32768, 3}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> minimum(pf) = " << eve::minimum(pf) << '\n' - << "<- pi = " << pi << '\n' - << "-> minimum(pi) = " << eve::minimum(pi) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/minmax.cpp b/test/doc/core/regular/minmax.cpp deleted file mode 100644 index 5f396f0fa3..0000000000 --- a/test/doc/core/regular/minmax.cpp +++ /dev/null @@ -1,38 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using eve::pedantic; - -int main() -{ - wide_ft pf = {0.0f, 1.0f, -1.0f, -2.0f, 2.0f, - eve::inf(eve::as()), eve::minf(eve::as()), eve::nan(eve::as())}; - wide_ft qf = {4.0f, 1.0f, -1.0f, 0.0f, eve::nan(eve::as()), - -0.0f, eve::nan(eve::as()), -2.0f}; - - auto[mn,mx] = eve::minmax(pf, qf); - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> minmax(pf, qf) = " << mn << ", " << mx << '\n'; - - float xf = 1.0f; - float yf = eve::nan(eve::as()); - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "<- yf = " << yf << '\n' - << "-> minmax(xf, yf) = " << eve::minmax(xf, yf) << '\n'; - - auto k = kumi::tuple{pf, qf, pf+qf, 1}; - std::cout << "---- multi parameters" << '\n' - << " -> minmax(k) = " << eve::minmax(k) << '\n' - << " -> minmax(kumi::tuple{pf, pf, 1}) = " << eve::minmax( kumi::tuple{pf, qf, 1}) << '\n' - << " -> minmax(kumi::tuple{1, pf, pf}) = " << eve::minmax( kumi::tuple{1, pf, qf}) << '\n' - << " -> minmax(kumi::tuple{pf, 1.0f) = " << eve::minmax( kumi::tuple{pf, 1.0f}) << '\n' - << " -> minmax(kumi::tuple{1.0f, pf) = " << eve::minmax( kumi::tuple{1.0f, pf}) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/reduce.cpp b/test/doc/core/regular/reduce.cpp deleted file mode 100644 index c4cac7bc70..0000000000 --- a/test/doc/core/regular/reduce.cpp +++ /dev/null @@ -1,29 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using wide_it = eve::wide>; - -int main() -{ - wide_ft pf = {0.5f,1.5f,2.5f,3.f}; - wide_it qi = {2,3,4,5}; - - auto const sum = [](auto a, auto b) { return a+b; }; - auto const prod = [](auto a, auto b) { return a*b; }; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> reduce(pf,sum) = " << eve::reduce(pf, sum) << '\n' - << "<- qi = " << qi << '\n' - << "-> reduce(qi,prod) = " << eve::reduce(qi, prod) << '\n'; - - std::cout << "---- simd with splat" << '\n' - << "<- pf = " << pf << '\n' - << "-> splat(reduce)(pf,sum) = " << eve::splat(eve::reduce)(pf, sum) << '\n' - << "<- qi = " << qi << '\n' - << "-> splat(reduce)(qi,prod) = " << eve::splat(eve::reduce)(qi, prod) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/rem.cpp b/test/doc/core/regular/rem.cpp deleted file mode 100644 index f109fa36e9..0000000000 --- a/test/doc/core/regular/rem.cpp +++ /dev/null @@ -1,24 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 32700}, qi = {4, 2, 2, 101}; - - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> rem(pi, qi) = " << eve::rem(pi, qi) << '\n' - << " -> pi % qi = " << pi % qi << '\n'; - - std::int16_t xi = 32700, yi = 101; - - std::cout << "---- scalar" << '\n' - << " xi = " << xi << '\n' - << " yi = " << yi << '\n' - << " -> rem(xi, yi) = " << eve::rem(xi, yi) << '\n' - << " -> xi % yi = " << xi % yi << '\n'; - return 0; -} diff --git a/test/doc/core/regular/round.cpp b/test/doc/core/regular/round.cpp deleted file mode 100644 index eb1450eff9..0000000000 --- a/test/doc/core/regular/round.cpp +++ /dev/null @@ -1,29 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, -1.3f, -1.5f, -1.7f, 2.0f, 2.3f, 2.5f, 2.7f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> round(pf) = " << eve::round(pf) << '\n' - << "-> upward(round)(pf) = " << eve::upward(eve::round)(pf) << '\n' - << "-> downward(round)(pf) = " << eve::downward(eve::round)(pf) << '\n' - << "-> to_nearest(round)(pf) = " << eve::to_nearest(eve::round)(pf) << '\n' - << "-> toward_zero(round)(pf) = " << eve::toward_zero(eve::round)(pf) << '\n'; - - float xf = -32.768f; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "-> round(xf) = " << eve::round(xf) << '\n' - << "-> upward(round)(xf) = " << eve::upward(eve::round)(xf) << '\n' - << "-> downward(round)(xf) = " << eve::downward(eve::round)(xf) << '\n' - << "-> to_nearest(round)(xf) = " << eve::to_nearest(eve::round)(xf) << '\n' - << "-> toward_zero(round)(xf) = " << eve::toward_zero(eve::round)(xf) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/roundscale.cpp b/test/doc/core/regular/roundscale.cpp deleted file mode 100644 index 0f66127496..0000000000 --- a/test/doc/core/regular/roundscale.cpp +++ /dev/null @@ -1,23 +0,0 @@ -#include -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf( [](auto i, auto) { return 1.2345678+i; } ); - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> roundscale(pf, 4) = " << eve::roundscale(pf, 4) << '\n'; - - float xf = 0x1.fffffep0f; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << std::hexfloat << xf << '\n'; - for (int i = 0; i < 16; ++i) - std::cout << "-> toward_zero(roundscale)(xf," << std::setw(2) << i << ") = " << std::hexfloat << eve::toward_zero(eve::roundscale)(xf, i) << '\n'; - return 0; -} diff --git a/test/doc/core/regular/sum_of_prod.cpp b/test/doc/core/regular/sum_of_prod.cpp deleted file mode 100644 index ea4f8dfc70..0000000000 --- a/test/doc/core/regular/sum_of_prod.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include -#include -#include -#include - -int main() -{ - using wf_t = eve::wide>; - wf_t xf = {3, 2, 1, 0}, zf = {4, 1, 2, 100}; - wf_t tf = -(xf+4*eve::eps(eve::as())), yf = zf-4*eve::eps(eve::as()); - - std::cout << "---- simd" << std::setprecision(8) << '\n' - << " <- xf = " << xf << '\n' - << " <- yf = " << yf << '\n' - << " <- tf = " << tf << '\n' - << " <- zf = " << zf << '\n' - << " -> xf*yf+tf*zf = " << (xf*yf)+(tf*zf) << '\n' - << " -> sum_of_prod(xf, yf, tf, zf) = " << eve::sum_of_prod(xf, yf, tf, zf) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/trunc.cpp b/test/doc/core/regular/trunc.cpp deleted file mode 100644 index 33ca349e30..0000000000 --- a/test/doc/core/regular/trunc.cpp +++ /dev/null @@ -1,22 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {-1.0f, -1.3f, -1.5f, -1.7f, 2.0f, 2.3f, 2.5f, 2.7f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> trunc(pf) = " << eve::trunc(pf) << '\n'; - - float xf = -32.768f; - - std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "-> trunc(xf) = " << eve::trunc(xf) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/zip.cpp b/test/doc/core/regular/zip.cpp deleted file mode 100644 index f852c328cc..0000000000 --- a/test/doc/core/regular/zip.cpp +++ /dev/null @@ -1,32 +0,0 @@ -#include -#include -#include -#include - -struct data_block : eve::struct_support -{ - friend std::ostream& operator<<(std::ostream& os, data_block const& d) - { - return os << "{" << get<0>(d) << " x " << get<1>(d) << " - " << get<2>(d) << "}"; - } -}; - -int main() -{ - using card_t = eve::cardinal_t>; - eve::wide wd = [](auto i, auto) { return 1.25 * (i+1); }; - - eve::wide wf = [](auto i, auto) { return 1.f/(1+i); }; - eve::wide wi = [](auto i, auto) { return i+1; }; - - std::cout << "---- values" << std::endl - << "wf = " << wf << std::endl - << "wi = " << wi << std::endl - << "wd = " << wd << std::endl << std::endl; - std::cout << "---- zip as tuple" << std::endl - << "-> zip(wf,wi,wd) = " << eve::zip(wf,wi,wd) << std::endl << std::endl; - std::cout << "---- zip as UDT" << std::endl - << "-> zip(wf,wi,wd) = " << eve::zip(eve::as(), wf,wi,wd) << std::endl; - - return 0; -} diff --git a/test/doc/core/regular/reldist.cpp b/test/doc/core/reldist.cpp similarity index 100% rename from test/doc/core/regular/reldist.cpp rename to test/doc/core/reldist.cpp diff --git a/test/doc/core/rem.cpp b/test/doc/core/rem.cpp new file mode 100644 index 0000000000..707df19264 --- /dev/null +++ b/test/doc/core/rem.cpp @@ -0,0 +1,29 @@ +#include +#include +#include + +int main() +{ + using w_t = eve::wide>; + w_t pi = {3, 2, 3, 32700}, qi = {4, 2, 1, 101}, ri = {4, 2, 0, 101}; + + std::cout << "---- simd" << '\n' + << " <- pi = " << pi << '\n' + << " <- qi = " << qi << '\n' + << " -> rem(pi, qi) = " << eve::rem(pi, qi) << '\n' + << " -> toward_zero(rem)(pi, qi) = " << eve::toward_zero(eve::rem)(pi, qi) << '\n' + << " -> upward(rem)(pi, qi) = " << eve::downward(eve::rem)(pi, qi) << '\n' + << " -> downward(rem)(pi, qi) = " << eve::upward(eve::rem)(pi, qi) << '\n' + << " -> to_nearest(rem)(pi, qi) = " << eve::to_nearest(eve::rem)(pi, qi) << '\n' + << " -> rem[ri!= 0](pi, ri) = " << eve::rem[ri!= 0](pi, ri) << '\n' + << " -> pi % qi = " << pi % qi << '\n'; + + std::int16_t xi = 32700, yi = 101; + + std::cout << "---- scalar" << '\n' + << " xi = " << xi << '\n' + << " yi = " << yi << '\n' + << " -> rem(xi, yi) = " << eve::rem(xi, yi) << '\n' + << " -> xi % yi = " << xi % yi << '\n'; + return 0; +} diff --git a/test/doc/core/regular/replace_ignored.cpp b/test/doc/core/replace_ignored.cpp similarity index 100% rename from test/doc/core/regular/replace_ignored.cpp rename to test/doc/core/replace_ignored.cpp diff --git a/test/doc/core/regular/rotate.cpp b/test/doc/core/rotate.cpp similarity index 100% rename from test/doc/core/regular/rotate.cpp rename to test/doc/core/rotate.cpp diff --git a/test/doc/core/round.cpp b/test/doc/core/round.cpp new file mode 100644 index 0000000000..3e069c1837 --- /dev/null +++ b/test/doc/core/round.cpp @@ -0,0 +1,34 @@ +#include +#include +#include + +using wide_ft = eve::wide>; + +int main() +{ + wide_ft pf = {-1.0f, -1.3f, -1.5f, -1.7f, 2.0f, 2.3f, 2.5f, 2.7f}; + + std::cout << "---- simd" << '\n' + << "<- pf = " << pf << '\n' + << "-> round(pf) = " << eve::round(pf) << '\n' + << "-> upward(round)(pf) = " << eve::upward(eve::round)(pf) << '\n' + << "-> downward(round)(pf) = " << eve::downward(eve::round)(pf) << '\n' + << "-> to_nearest(round)(pf) = " << eve::to_nearest(eve::round)(pf) << '\n' + << "-> toward_zero(round)(pf) = " << eve::toward_zero(eve::round)(pf) << '\n' + << "-> round[pf>-1.4f](pf) = " << eve::round[pf>-1.4f](pf) << '\n' + << "-> upward(round[pf>-1.4f])(pf) = " << eve::upward(eve::round[pf>-1.4f])(pf) << '\n' + << "-> downward(round[pf>-1.4f])(pf) = " << eve::downward(eve::round[pf>-1.4f])(pf) << '\n' + << "-> to_nearest(round[pf>-1.4f])(pf) = " << eve::to_nearest(eve::round[pf>-1.4f])(pf) << '\n' + << "-> toward_zero(round[pf>-1.4f])(pf) = " << eve::toward_zero(eve::round[pf>-1.4f])(pf) << '\n'; + + float xf = -32.768f; + + std::cout << "---- scalar" << '\n' + << "<- xf = " << xf << '\n' + << "-> round(xf) = " << eve::round(xf) << '\n' + << "-> upward(round)(xf) = " << eve::upward(eve::round)(xf) << '\n' + << "-> downward(round)(xf) = " << eve::downward(eve::round)(xf) << '\n' + << "-> to_nearest(round)(xf) = " << eve::to_nearest(eve::round)(xf) << '\n' + << "-> toward_zero(round)(xf) = " << eve::toward_zero(eve::round)(xf) << '\n'; + return 0; +} diff --git a/test/doc/core/roundings/div.cpp b/test/doc/core/roundings/div.cpp deleted file mode 100644 index b5c07df22b..0000000000 --- a/test/doc/core/roundings/div.cpp +++ /dev/null @@ -1,18 +0,0 @@ -#include -#include -#include - -int main() -{ - using wf_t = eve::wide>; - wf_t pf = {3034, 200, 333, 32700}, qf = {4, 7, 13, 100}; - - std::cout << "---- simd" << '\n' - << " <- pf = " << pf << '\n' - << " <- qf = " << qf << '\n' - << " -> toward_zero(div)(pf, qf) = " << eve::toward_zero(eve::div)(pf, qf) << '\n' - << " -> downward(div)(pf, qf) = " << eve::downward(eve::div)(pf, qf) << '\n' - << " -> upward(div)(pf, qf) = " << eve::upward(eve::div)(pf, qf) << '\n' - << " -> to_nearest(div)(pf, qf) = " << eve::to_nearest(eve::div)(pf, qf) << '\n'; - return 0; -} diff --git a/test/doc/core/roundings/rem.cpp b/test/doc/core/roundings/rem.cpp deleted file mode 100644 index 4fe3a74b9e..0000000000 --- a/test/doc/core/roundings/rem.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 32700}, qi = {4, 2, 2, 101}; - - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " <- toward_zero(rem)(pi, qi) = " << eve::toward_zero(eve::rem)(pi, qi) << '\n' - << " -> upward(rem)(pi, qi) = " << eve::downward(eve::rem)(pi, qi) << '\n' - << " -> downward(rem)(pi, qi) = " << eve::upward(eve::rem)(pi, qi) << '\n' - << " -> to_nearest(rem)(pi, qi) = " << eve::to_nearest(eve::rem)(pi, qi) << '\n' - << " -> pi % qi = " << pi % qi << '\n'; - - return 0; -} diff --git a/test/doc/core/roundings/round.cpp b/test/doc/core/roundings/round.cpp deleted file mode 100644 index 5299fafaab..0000000000 --- a/test/doc/core/roundings/round.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pf = {3.2, 2.5, 3.5, 3.6, 0.3, -2.4, -3.5, -3-2}; - - std::cout << "---- simd" << '\n' - << " <- pi = " << pf << '\n' - << " <- toward_zero(round)(pf) = " << eve::toward_zero(eve::round)(pf) << '\n' - << " -> upward(round)(pf) = " << eve::downward(eve::round)(pf) << '\n' - << " -> downward(round)(pf) = " << eve::upward(eve::round)(pf) << '\n' - << " -> to_nearest(round)(pf) = " << eve::to_nearest(eve::round)(pf) << '\n'; - return 0; -} diff --git a/test/doc/core/roundings/roundscale.cpp b/test/doc/core/roundscale.cpp similarity index 56% rename from test/doc/core/roundings/roundscale.cpp rename to test/doc/core/roundscale.cpp index 364efa9f51..c2aad8af8b 100644 --- a/test/doc/core/roundings/roundscale.cpp +++ b/test/doc/core/roundscale.cpp @@ -10,10 +10,18 @@ int main() wide_ft pf( [](auto i, auto) { return 1.2345678+i; } ); std::cout << "---- simd" << '\n' - << " <- pf = " << pf << '\n' + << " <- pf = " << pf << '\n' + << " -> roundscale(pf, 4) = " << eve::roundscale(pf, 4) << '\n' << " -> roundscale(pf, 4) = " << eve::roundscale(pf, 4) << '\n' << " -> upward(roundscale)(pf, 4) = " << eve::downward(eve::roundscale)(pf, 4) << '\n' << " -> downward(roundscale)(pf, 4) = " << eve::upward(eve::roundscale)(pf, 4) << '\n' << " -> to_nearest(roundscale)(pf, 4) = " << eve::to_nearest(eve::roundscale)(pf, 4) << '\n'; - return 0; + + float xf = 0x1.fffffep0f; + + std::cout << "---- scalar" << '\n' + << "<- xf = " << std::hexfloat << xf << '\n'; + for (int i = 0; i < 16; ++i) + std::cout << "-> toward_zero(roundscale)(xf," << std::setw(2) << i << ") = " << std::hexfloat << eve::toward_zero(eve::roundscale)(xf, i) << '\n'; + return 0; } diff --git a/test/doc/core/regular/rshl.cpp b/test/doc/core/rshl.cpp similarity index 67% rename from test/doc/core/regular/rshl.cpp rename to test/doc/core/rshl.cpp index 998d21364b..4702a03176 100644 --- a/test/doc/core/regular/rshl.cpp +++ b/test/doc/core/rshl.cpp @@ -13,9 +13,10 @@ int main() wide_it qi = {1, -2, 3, -1}; std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "<- qi = " << qi << '\n' - << "-> shl(pi, qi) = " << eve::rshl(pi, qi) << '\n'; + << "<- pi = " << pi << '\n' + << "<- qi = " << qi << '\n' + << "-> shl(pi, qi) = " << eve::rshl(pi, qi) << '\n' + << "-> rshl[pi!= 200](pi, qi) = " << eve::rshl[pi!= 200](pi, qi) << '\n'; uiT xi = 2, yi = 3; diff --git a/test/doc/core/regular/rshr.cpp b/test/doc/core/rshr.cpp similarity index 67% rename from test/doc/core/regular/rshr.cpp rename to test/doc/core/rshr.cpp index e4ba401712..d6b5dcf6c4 100644 --- a/test/doc/core/regular/rshr.cpp +++ b/test/doc/core/rshr.cpp @@ -13,9 +13,10 @@ int main() wide_it qi = {1, -2, 3, -1}; std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "<- qi = " << qi << '\n' - << "-> shl(pi, qi) = " << eve::rshr(pi, qi) << '\n'; + << "<- pi = " << pi << '\n' + << "<- qi = " << qi << '\n' + << "-> shl(pi, qi) = " << eve::rshr(pi, qi) << '\n' + << "-> rshr[pi!= 200](pi, qi) = " << eve::rshr[pi!= 200](pi, qi) << '\n'; uiT xi = 2, yi = 3; diff --git a/test/doc/core/regular/rsqrt.cpp b/test/doc/core/rsqrt.cpp similarity index 87% rename from test/doc/core/regular/rsqrt.cpp rename to test/doc/core/rsqrt.cpp index 56396e64a3..899bd2acce 100644 --- a/test/doc/core/regular/rsqrt.cpp +++ b/test/doc/core/rsqrt.cpp @@ -11,7 +11,8 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "-> rsqrt(pf) = " << eve::rsqrt(pf) << '\n' - << "-> raw(rsqrt)(pf) = " << eve::raw(eve::rsqrt)(pf) << '\n'; + << "-> raw(rsqrt)(pf) = " << eve::raw(eve::rsqrt)(pf) << '\n' + << "-> rsqrt[pf > 0](pf)= " << eve::rsqrt[pf > 0](pf) << '\n'; float xf = 32.768f; diff --git a/test/doc/core/regular/saturate.cpp b/test/doc/core/saturate.cpp similarity index 52% rename from test/doc/core/regular/saturate.cpp rename to test/doc/core/saturate.cpp index 67dac9223f..f180781164 100644 --- a/test/doc/core/regular/saturate.cpp +++ b/test/doc/core/saturate.cpp @@ -13,19 +13,20 @@ int main() wide_it pi = {-1, 2, -3, eve::valmax(eve::as())}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> saturate(pf, int_64()_) = " << eve::saturate(pf, int_64()) << '\n' - << "-> saturate(pf, int_16()) = " << eve::saturate(pf, int_16()) << '\n' - << "<- pi = " << pi << '\n' + << "<- pf = " << pf << '\n' + << "-> saturate(pf, int_64()) = " << eve::saturate(pf, int_64()) << '\n' + << "-> saturate(pf, int_16()) = " << eve::saturate(pf, int_16()) << '\n' + << "-> rsqrt[pf > 0](pf) = " << eve::rsqrt[pf > 0](pf) << '\n' + << "<- pi = " << pi << '\n' << "-> saturate(pi, as(eve::as())) = " << eve::saturate(pi, eve::as()) << '\n'; double xf = -64768.4f; std::int64_t xi = -64768; std::cout << "---- scalar" << '\n' - << "<- xf = " << xf << '\n' - << "-> saturate(xf, int_64()) = " << eve::saturate(xf, int_64()) << '\n' - << "<- xi = " << xi << '\n' + << "<- xf = " << xf << '\n' + << "-> saturate(xf, int_64()) = " << eve::saturate(xf, int_64()) << '\n' + << "<- xi = " << xi << '\n' << "-> saturate(xi, as(eve::as())) = " << eve::saturate(xi, eve::as()) << '\n'; return 0; } diff --git a/test/doc/core/saturated/abs.cpp b/test/doc/core/saturated/abs.cpp deleted file mode 100644 index b86fccb14c..0000000000 --- a/test/doc/core/saturated/abs.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pi = {-1, 2, -3, -32768}; - - std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "-> eve::abs[saturated](pi) = " << eve::abs[eve::saturated](pi) << '\n'; - return 0; -} diff --git a/test/doc/core/saturated/add.cpp b/test/doc/core/saturated/add.cpp deleted file mode 100644 index f2fe8ebbbc..0000000000 --- a/test/doc/core/saturated/add.cpp +++ /dev/null @@ -1,25 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, -32700, 32700}, qi = {4, 1, -100, 100}; - - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> saturated(add)(pi, qi) = " << eve::saturated(eve::add)(pi, qi) << '\n'; - - std::int16_t a = -32700; - std::int16_t b = -32767; - std::int16_t c = 32767; - std::cout << "---- scalar" << '\n' - << " <- a = " << a << '\n' - << " <- b = " << b << '\n' - << " <- c = " << c << '\n' - << " -> saturated(add)(a, b, c) = " << eve::saturated(eve::add)(a, b, c) << '\n' - << " -> saturated(add)(c, b, a) = " << eve::saturated(eve::add)(c, b, a) << '\n'; - return 0; -} diff --git a/test/doc/core/saturated/convert.cpp b/test/doc/core/saturated/convert.cpp deleted file mode 100644 index 5bcf363205..0000000000 --- a/test/doc/core/saturated/convert.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; -using int_16 = eve::as; - -int main() -{ - wide_ft pf = {-1.0f, 2.3f, 45000.7f, -64768.6f}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> convert(pf, int_16()_) = " << eve::convert(pf, int_16()) << '\n' - << "-> saturated(convert)(pf, int_16()) = " << eve::saturated(eve::convert)(pf, int_16()) << '\n'; - return 0; -} diff --git a/test/doc/core/saturated/dec.cpp b/test/doc/core/saturated/dec.cpp deleted file mode 100644 index 0f79fde498..0000000000 --- a/test/doc/core/saturated/dec.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0, 1, -127, -128}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> dec[saturated](pf) = " << eve::dec[eve::saturated](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/saturated/dist.cpp b/test/doc/core/saturated/dist.cpp deleted file mode 100644 index 498cc7961f..0000000000 --- a/test/doc/core/saturated/dist.cpp +++ /dev/null @@ -1,18 +0,0 @@ -#include -#include -#include - -using wide_it = eve::wide>; - -int main() -{ - wide_it pf = {0, 1, -1, -eve::valmax(eve::as())}; - wide_it qf = {1, -1, 0, eve::valmax(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "<- qf = " << qf << '\n' - << "-> dist[eve::saturated](pf, qf) = " << eve::dist[eve::saturated](pf, qf) - << '\n'; - return 0; -} diff --git a/test/doc/core/saturated/div.cpp b/test/doc/core/saturated/div.cpp deleted file mode 100644 index c68660f4cb..0000000000 --- a/test/doc/core/saturated/div.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -int main() -{ - std::int16_t xi = -32768, yi = -1; - - std::cout << "---- scalar" << '\n' - << " xi = " << xi << '\n' - << " yi = " << yi << '\n' - << " -> div(xi, yi) = " << eve::div(xi, yi) << '\n' - << " -> saturated(div(xi, yi)) = " << eve::saturated(eve::div)(xi, yi) << '\n'; - - return 0; -} diff --git a/test/doc/core/saturated/inc.cpp b/test/doc/core/saturated/inc.cpp deleted file mode 100644 index 174912589d..0000000000 --- a/test/doc/core/saturated/inc.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0, 1, -127, -128}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> inc[saturated](pf) = " << eve::inc[eve::saturated](pf) << '\n'; - return 0; -} diff --git a/test/doc/core/saturated/minus.cpp b/test/doc/core/saturated/minus.cpp deleted file mode 100644 index 198c192fe6..0000000000 --- a/test/doc/core/saturated/minus.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0, 1, -127, -128}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> saturated(minus)(pf) = " << eve::saturated(eve::minus)(pf) << '\n'; - return 0; -} diff --git a/test/doc/core/saturated/mul.cpp b/test/doc/core/saturated/mul.cpp deleted file mode 100644 index b77399966d..0000000000 --- a/test/doc/core/saturated/mul.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, 3, 32700}, qi = {4, 1, -1, 100}; - - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> saturated(mul)((pi, qi) = " << eve::saturated(eve::mul)(pi, qi) << '\n'; - return 0; -} diff --git a/test/doc/core/saturated/next.cpp b/test/doc/core/saturated/next.cpp deleted file mode 100644 index 6da998505f..0000000000 --- a/test/doc/core/saturated/next.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 2.0f, eve::inf(eve::as()), eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << std::setprecision(12) << pf << '\n' - << "-> saturated(next)(pf) = " << eve::saturated(eve::next)(pf) << '\n'; - return 0; -} diff --git a/test/doc/core/saturated/oneminus.cpp b/test/doc/core/saturated/oneminus.cpp deleted file mode 100644 index ad47e70e09..0000000000 --- a/test/doc/core/saturated/oneminus.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0, 1, 2, -128}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> saturated(oneminus)(pf) = " << eve::saturated(eve::oneminus)(pf) << '\n'; - return 0; -} diff --git a/test/doc/core/saturated/prev.cpp b/test/doc/core/saturated/prev.cpp deleted file mode 100644 index 3ae516582d..0000000000 --- a/test/doc/core/saturated/prev.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include -#include - -using wide_ft = eve::wide>; - -int main() -{ - wide_ft pf = {0.0f, 2.0f, eve::minf(eve::as()), eve::nan(eve::as())}; - - std::cout << "---- simd" << '\n' - << "<- pf = " << std::setprecision(12) << pf << '\n' - << "-> saturated(prev)(pf) = " << eve::saturated(eve::prev)(pf) << '\n'; - return 0; -} diff --git a/test/doc/core/saturated/sub.cpp b/test/doc/core/saturated/sub.cpp deleted file mode 100644 index c84b18d20c..0000000000 --- a/test/doc/core/saturated/sub.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include -#include -#include - -int main() -{ - using w_t = eve::wide>; - w_t pi = {3, 2, -32700, 32700}, qi = {4, 1, 100, -100}; - - std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> saturated(sub)(pi, qi) = " << eve::saturated(eve::sub)(pi, qi) << '\n'; - - return 0; -} diff --git a/test/doc/core/regular/scatter.cpp b/test/doc/core/scatter.cpp similarity index 100% rename from test/doc/core/regular/scatter.cpp rename to test/doc/core/scatter.cpp diff --git a/test/doc/core/regular/shl.cpp b/test/doc/core/shl.cpp similarity index 70% rename from test/doc/core/regular/shl.cpp rename to test/doc/core/shl.cpp index 1251736282..cb146b6396 100644 --- a/test/doc/core/regular/shl.cpp +++ b/test/doc/core/shl.cpp @@ -11,9 +11,10 @@ int main() wide_it qi = {1, 2, 3, 2}; std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "<- qi = " << qi << '\n' - << "-> eve::shl(pi, qi) = " << eve::shl(pi, qi) << '\n'; + << "<- pi = " << pi << '\n' + << "<- qi = " << qi << '\n' + << "-> eve::shl(pi, qi) = " << eve::shl(pi, qi) << '\n' + << "-> shl[pi!= 200](pi, qi) = " << eve::shl[pi!= 200](pi, qi) << '\n'; iT xi = 2, mxi = -2, yi = 3; diff --git a/test/doc/core/regular/shr.cpp b/test/doc/core/shr.cpp similarity index 70% rename from test/doc/core/regular/shr.cpp rename to test/doc/core/shr.cpp index 123797aebd..1602f42e29 100644 --- a/test/doc/core/regular/shr.cpp +++ b/test/doc/core/shr.cpp @@ -11,9 +11,10 @@ int main() wide_it qi = {1, 2, 3, 2}; std::cout << "---- simd" << '\n' - << "<- pi = " << pi << '\n' - << "<- qi = " << qi << '\n' - << "-> eve::shr(pi, qi) = " << eve::shr(pi, qi) << '\n'; + << "<- pi = " << pi << '\n' + << "<- qi = " << qi << '\n' + << "-> eve::shr(pi, qi) = " << eve::shr(pi, qi) << '\n' + << "-> shr[pi!= 200](pi, qi) = " << eve::shr[pi!= 200](pi, qi) << '\n'; iT xi = 2, mxi = -2, yi = 3; diff --git a/test/doc/core/regular/sign.cpp b/test/doc/core/sign.cpp similarity index 66% rename from test/doc/core/regular/sign.cpp rename to test/doc/core/sign.cpp index c7f59a49b7..030910e0f3 100644 --- a/test/doc/core/regular/sign.cpp +++ b/test/doc/core/sign.cpp @@ -12,11 +12,11 @@ int main() wide_it pi = { 0, 2, -3, -32768}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> sign(pf) = " << eve::sign(pf) << '\n' - - << "<- pi = " << pi << '\n' - << "-> sign(pi) = " << eve::sign(pi) << '\n'; + << "<- pf = " << pf << '\n' + << "-> sign(pf) = " << eve::sign(pf) << '\n' + << "-> sign[abs(pf) < 2](pf) = " << eve::sign[eve::abs(pf) < 2](pf) << '\n' + << "<- pi = " << pi << '\n' + << "-> sign(pi) = " << eve::sign(pi) << '\n'; float xf = -327.68f; std::int16_t xi = -328; diff --git a/test/doc/core/regular/sign_alternate.cpp b/test/doc/core/sign_alternate.cpp similarity index 100% rename from test/doc/core/regular/sign_alternate.cpp rename to test/doc/core/sign_alternate.cpp diff --git a/test/doc/core/regular/significants.cpp b/test/doc/core/significants.cpp similarity index 100% rename from test/doc/core/regular/significants.cpp rename to test/doc/core/significants.cpp diff --git a/test/doc/core/regular/signnz.cpp b/test/doc/core/signnz.cpp similarity index 61% rename from test/doc/core/regular/signnz.cpp rename to test/doc/core/signnz.cpp index ab858898d5..885626bc3d 100644 --- a/test/doc/core/regular/signnz.cpp +++ b/test/doc/core/signnz.cpp @@ -12,11 +12,12 @@ int main() wide_it pi = { 0, 2, -3, -32768}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> signnz(pf) = " << eve::signnz(pf) << '\n' - - << "<- pi = " << pi << '\n' - << "-> signnz(pi) = " << eve::signnz(pi) << '\n'; + << "<- pf = " << pf << '\n' + << "-> signnz(pf) = " << eve::signnz(pf) << '\n' + << "-> pedantic(signnz)(pf) = " << eve::pedantic(eve::signnz)(pf) << '\n' + << "-> signnz[abs(pf)<2](pf)= " << eve::signnz[eve::abs(pf)<2](pf) << '\n' + << "<- pi = " << pi << '\n' + << "-> signnz(pi) = " << eve::signnz(pi) << '\n'; float xf = -327.68f; std::int16_t xi = -328; diff --git a/test/doc/core/regular/sort.cpp b/test/doc/core/sort.cpp similarity index 100% rename from test/doc/core/regular/sort.cpp rename to test/doc/core/sort.cpp diff --git a/test/doc/core/regular/sqr.cpp b/test/doc/core/sqr.cpp similarity index 93% rename from test/doc/core/regular/sqr.cpp rename to test/doc/core/sqr.cpp index c79d17428a..c711aef1ef 100644 --- a/test/doc/core/regular/sqr.cpp +++ b/test/doc/core/sqr.cpp @@ -13,7 +13,7 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "-> sqr(pf) = " << eve::sqr(pf) << '\n' - + << "-> sqr[pf < 0](pf) = " << eve::sqr[pf < 0](pf) << '\n' << "<- pi = " << pi << '\n' << "-> saturated(sqr)(pi) = " << eve::saturated(eve::sqr)(pi) << '\n' << "-> sqr(pi) = " << eve::sqr(pi) << '\n'; diff --git a/test/doc/core/regular/sqr_abs.cpp b/test/doc/core/sqr_abs.cpp similarity index 66% rename from test/doc/core/regular/sqr_abs.cpp rename to test/doc/core/sqr_abs.cpp index 82567073d7..816f5a3c97 100644 --- a/test/doc/core/regular/sqr_abs.cpp +++ b/test/doc/core/sqr_abs.cpp @@ -9,12 +9,12 @@ int main() wide_ft pf = {-1.0f, 2.0f, -3.0f, 182.0f}; std::cout << "---- simd" << '\n' - << "<- pf = " << pf << '\n' - << "-> sqr_abs(pf) = " << eve::sqr_abs(pf) << '\n'; + << "<- pf = " << pf << '\n' + << "-> sqr_abs(pf) = " << eve::sqr_abs(pf) << '\n' + << "-> sqr_abs[pf < 0](pf) = " << eve::sqr_abs[pf < 0](pf) << '\n'; float xf = -32768.0f; - std::cout << "---- scalar" << '\n' << "<- xf = " << xf << '\n' << "-> sqr_abs(xf) = " << eve::sqr_abs(xf) << '\n'; diff --git a/test/doc/core/regular/sqrt.cpp b/test/doc/core/sqrt.cpp similarity index 88% rename from test/doc/core/regular/sqrt.cpp rename to test/doc/core/sqrt.cpp index 92e987e847..1586808dfa 100644 --- a/test/doc/core/regular/sqrt.cpp +++ b/test/doc/core/sqrt.cpp @@ -11,7 +11,8 @@ int main() std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "-> sqrt(pf) = " << eve::sqrt(pf) << '\n' - << "-> raw(sqrt)(pf) = " << eve::raw(eve::sqrt)(pf) << '\n'; + << "-> raw(sqrt)(pf) = " << eve::raw(eve::sqrt)(pf) << '\n' + << "-> sqrt[pf > 0](pf)= " << eve::sqrt[pf > 0](pf) << '\n'; float xf = 32.768f; diff --git a/test/doc/core/regular/sub.cpp b/test/doc/core/sub.cpp similarity index 72% rename from test/doc/core/regular/sub.cpp rename to test/doc/core/sub.cpp index 6e2b8c4011..e20cafeb3e 100644 --- a/test/doc/core/regular/sub.cpp +++ b/test/doc/core/sub.cpp @@ -10,11 +10,13 @@ int main() wf_t pf = {3, 2.5, -32.7, 1327.43}, qf = {-4.2, -1.5, 100.834, -10.02}; std::cout << "---- simd" << '\n' - << " <- pi = " << pi << '\n' - << " <- qi = " << qi << '\n' - << " -> sub(pi, qi) = " << eve::sub(pi, qi) << '\n' - << " -> pi - qi = " << pi - qi << '\n' - << " -> pf - qf = " << pf - qf << '\n'; + << " <- pi = " << pi << '\n' + << " <- qi = " << qi << '\n' + << " -> sub(pi, qi) = " << eve::sub(pi, qi) << '\n' + << " -> pi - qi = " << pi - qi << '\n' + << " -> pf - qf = " << pf - qf << '\n' + << " -> sub[pi > qi](pi, qi) = " << eve::sub[pi > qi](pi, qi) << '\n' + << " -> saturated(sub)(pi, qi) = " << eve::saturated(eve::sub)(pi, qi) << '\n'; std::int16_t xi = 100, yi = 32700; diff --git a/test/doc/core/sum_of_prod.cpp b/test/doc/core/sum_of_prod.cpp new file mode 100644 index 0000000000..b7aac50687 --- /dev/null +++ b/test/doc/core/sum_of_prod.cpp @@ -0,0 +1,22 @@ +#include +#include +#include +#include + +int main() +{ + using wf_t = eve::wide>; + wf_t xf = {3, 2, 1, 0}, zf = {4, 1, 2, 100}; + wf_t tf = -(xf+4*eve::eps(eve::as())), yf = zf-4*eve::eps(eve::as()); + + std::cout << "---- simd" << std::setprecision(8) << '\n' + << " <- xf = " << xf << '\n' + << " <- yf = " << yf << '\n' + << " <- tf = " << tf << '\n' + << " <- zf = " << zf << '\n' + << " -> xf*yf+tf*zf = " << (xf*yf)+(tf*zf) << '\n' + << " -> sum_of_prod(xf, yf, tf, zf) = " << eve::sum_of_prod(xf, yf, tf, zf) << '\n' + << " -> pedantic(sum_of_prod)(xf, yf, tf, zf) = " << eve::pedantic(eve::sum_of_prod)(xf, yf, tf, zf) << '\n'; + + return 0; +} diff --git a/test/doc/core/regular/swap_if.cpp b/test/doc/core/swap_if.cpp similarity index 100% rename from test/doc/core/regular/swap_if.cpp rename to test/doc/core/swap_if.cpp diff --git a/test/doc/core/regular/swap_pairs.cpp b/test/doc/core/swap_pairs.cpp similarity index 100% rename from test/doc/core/regular/swap_pairs.cpp rename to test/doc/core/swap_pairs.cpp diff --git a/test/doc/core/fuzzy/trunc.cpp b/test/doc/core/trunc.cpp similarity index 69% rename from test/doc/core/fuzzy/trunc.cpp rename to test/doc/core/trunc.cpp index de491522f3..00066f8cbb 100644 --- a/test/doc/core/fuzzy/trunc.cpp +++ b/test/doc/core/trunc.cpp @@ -1,20 +1,26 @@ #include #include #include -#include using wide_ft = eve::wide>; int main() { float decr = -eve::eps(eve::as()); - wide_ft pf = {-1.0f+decr, -1.0f+3*decr, -1.0f+5*decr, -1.7f, 2.0f, 2.0f+2*decr, 2.0f+5*decr, 2.7f}; + wide_ft pf = {-1.0f, -1.3f, -1.5f, -1.7f, 2.0f, 2.3f, 2.5f, 2.7f}; - std::cout << "---- simd" << std::setprecision(8) << '\n' + std::cout << "---- simd" << '\n' << "<- pf = " << pf << '\n' << "-> trunc(pf) = " << eve::trunc(pf) << '\n' << "-> trunc[tolerant](pf) = " << eve::trunc[eve::tolerant](pf) << '\n' << "-> trunc[tolerance = 2*decr](pf) = " << eve::trunc[eve::tolerance = 2*decr](pf) << '\n' << "-> trunc[tolerance = 4](pf) = " << eve::trunc[eve::tolerance = 4](pf) << '\n'; return 0; + float xf = -32.768f; + + std::cout << "---- scalar" << '\n' + << "<- xf = " << xf << '\n' + << "-> trunc(xf) = " << eve::trunc(xf) << '\n'; + + return 0; } diff --git a/test/doc/core/regular/try_each_group_position.cpp b/test/doc/core/try_each_group_position.cpp similarity index 100% rename from test/doc/core/regular/try_each_group_position.cpp rename to test/doc/core/try_each_group_position.cpp diff --git a/test/doc/core/regular/two_add.cpp b/test/doc/core/two_add.cpp similarity index 100% rename from test/doc/core/regular/two_add.cpp rename to test/doc/core/two_add.cpp diff --git a/test/doc/core/regular/two_prod.cpp b/test/doc/core/two_prod.cpp similarity index 100% rename from test/doc/core/regular/two_prod.cpp rename to test/doc/core/two_prod.cpp diff --git a/test/doc/core/regular/uint16.cpp b/test/doc/core/uint16.cpp similarity index 100% rename from test/doc/core/regular/uint16.cpp rename to test/doc/core/uint16.cpp diff --git a/test/doc/core/regular/uint32.cpp b/test/doc/core/uint32.cpp similarity index 100% rename from test/doc/core/regular/uint32.cpp rename to test/doc/core/uint32.cpp diff --git a/test/doc/core/regular/uint64.cpp b/test/doc/core/uint64.cpp similarity index 100% rename from test/doc/core/regular/uint64.cpp rename to test/doc/core/uint64.cpp diff --git a/test/doc/core/regular/uint8.cpp b/test/doc/core/uint8.cpp similarity index 100% rename from test/doc/core/regular/uint8.cpp rename to test/doc/core/uint8.cpp diff --git a/test/doc/core/regular/uint_.cpp b/test/doc/core/uint_.cpp similarity index 100% rename from test/doc/core/regular/uint_.cpp rename to test/doc/core/uint_.cpp diff --git a/test/doc/core/regular/ulpdist.cpp b/test/doc/core/ulpdist.cpp similarity index 100% rename from test/doc/core/regular/ulpdist.cpp rename to test/doc/core/ulpdist.cpp diff --git a/test/doc/core/regular/upgrade.cpp b/test/doc/core/upgrade.cpp similarity index 100% rename from test/doc/core/regular/upgrade.cpp rename to test/doc/core/upgrade.cpp diff --git a/test/doc/core/masked/zip.cpp b/test/doc/core/zip.cpp similarity index 100% rename from test/doc/core/masked/zip.cpp rename to test/doc/core/zip.cpp