Updated iteration tests for 512 maximum

This commit is contained in:
Edward Diener
2020-07-25 12:43:39 -04:00
parent 42a283d112
commit ea15d11d2f
3 changed files with 105 additions and 6 deletions

View File

@ -81,12 +81,12 @@ alias preprocessor_number_512
[ compile control.cpp : <define>BOOST_PP_LIMIT_MAG=512 : control_num ]
[ compile debug.cpp : <define>BOOST_PP_LIMIT_MAG=512 : debug_num ]
[ compile facilities.cpp : <define>BOOST_PP_LIMIT_MAG=512 : facilities_num ]
[ compile iteration.cpp : <define>BOOST_PP_LIMIT_MAG=512 : iteration_num ]
[ compile iteration.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_LIMIT_ITERATION=512 : iteration_num ]
[ compile list.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_LIMIT_FOR=512 : list_num ]
[ compile logical.cpp : <define>BOOST_PP_LIMIT_MAG=512 : logical_num ]
[ compile repetition.cpp : <define>BOOST_PP_LIMIT_MAG=512 : repetition_num ]
[ compile selection.cpp : <define>BOOST_PP_LIMIT_MAG=512 : selection_num ]
[ compile seq.cpp : <define>BOOST_PP_LIMIT_MAG=512 : seq_num ]
[ compile seq.cpp : <define>BOOST_PP_LIMIT_SEQ=512 : seq_num ]
[ compile slot.cpp : <define>BOOST_PP_LIMIT_MAG=512 : slot_num ]
[ compile stringize.cpp : <define>BOOST_PP_LIMIT_MAG=512 : stringize_num ]
[ compile tuple.cpp : <define>BOOST_PP_LIMIT_MAG=512 : tuple_num ]
@ -129,12 +129,12 @@ alias preprocessor_number_nvm_512
[ compile control.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : control_nvm_num ]
[ compile debug.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : debug_nvm_num ]
[ compile facilities.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : facilities_nvm_num ]
[ compile iteration.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : iteration_nvm_num ]
[ compile iteration.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_LIMIT_ITERATION=512 <define>BOOST_PP_VARIADICS=0 : iteration_nvm_num ]
[ compile list.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : list_nvm_num ]
[ compile logical.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : logical_nvm_num ]
[ compile repetition.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : repetition_nvm_num ]
[ compile selection.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : selection_nvm_num ]
[ compile seq.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : seq_nvm_num ]
[ compile seq.cpp : <define>BOOST_PP_LIMIT_SEQ=512 <define>BOOST_PP_VARIADICS=0 : seq_nvm_num ]
[ compile slot.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : slot_nvm_num ]
[ compile stringize.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : stringize_nvm_num ]
[ compile tuple.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : tuple_nvm_num ]
@ -247,7 +247,7 @@ alias preprocessor_c_number_512
: selection_c_num
]
[ compile seq.c
: <define>BOOST_PP_LIMIT_MAG=512
: <define>BOOST_PP_LIMIT_SEQ=512
: seq_c_num
]
[ compile slot.c
@ -374,7 +374,7 @@ alias preprocessor_c_nvm_num
]
[ compile seq.c
: <define>BOOST_PP_VARIADICS=0
<define>BOOST_PP_LIMIT_MAG=512
<define>BOOST_PP_LIMIT_SEQ=512
: seq_c_nvm_num
]
[ compile slot.c

View File

@ -23,6 +23,18 @@
# define BOOST_PP_LOCAL_LIMITS (5, 1)
# include BOOST_PP_LOCAL_ITERATE()
#
# if BOOST_PP_LIMIT_ITERATION > 256
#
# define BOOST_PP_LOCAL_MACRO(n) int BOOST_PP_CAT(int_li_f_,n) = n ;
# define BOOST_PP_LOCAL_LIMITS (0, BOOST_PP_LIMIT_ITERATION)
# include BOOST_PP_LOCAL_ITERATE()
#
# define BOOST_PP_LOCAL_MACRO(n) int BOOST_PP_CAT(int_li_r_,n) = n ;
# define BOOST_PP_LOCAL_LIMITS (BOOST_PP_LIMIT_ITERATION, 0)
# include BOOST_PP_LOCAL_ITERATE()
#
# endif
#
# define BOOST_PP_INDIRECT_SELF <libs/preprocessor/test/iteration.cpp>
# include BOOST_PP_INCLUDE_SELF()
#

View File

@ -12,7 +12,10 @@
# if !BOOST_PP_IS_ITERATING
#
# include <boost/preprocessor/cat.hpp>
# include <boost/preprocessor/comparison/equal.hpp>
# include <boost/preprocessor/control/expr_iif.hpp>
# include <boost/preprocessor/iteration.hpp>
# include <boost/preprocessor/logical/bitor.hpp>
# include <libs/preprocessor/test/test.h>
#
# define NO_FLAGS
@ -28,6 +31,60 @@
# define BOOST_PP_ITERATION_PARAMS_1 (4, (1, 5, <libs/preprocessor/test/iteration.h>, 0x0002))
# include BOOST_PP_ITERATE()
#
# if BOOST_PP_LIMIT_ITERATION > 256
#
# define ITER100S(n) \
BOOST_PP_BITOR \
( \
BOOST_PP_BITOR \
( \
BOOST_PP_EQUAL(n,100), \
BOOST_PP_EQUAL(n,200) \
), \
BOOST_PP_BITOR \
( \
BOOST_PP_BITOR \
( \
BOOST_PP_EQUAL(n,300), \
BOOST_PP_EQUAL(n,400) \
), \
BOOST_PP_EQUAL(n,500) \
) \
) \
/* */
#
# define BOOST_PP_ITERATION_PARAMS_1 (4, (0, 512, <libs/preprocessor/test/iteration.h>, 0x0003))
# include BOOST_PP_ITERATE()
#
# undef ITER100S
#
# define ITER50S(n) \
BOOST_PP_BITOR \
( \
BOOST_PP_BITOR \
( \
BOOST_PP_EQUAL(n,450), \
BOOST_PP_EQUAL(n,350) \
), \
BOOST_PP_BITOR \
( \
BOOST_PP_BITOR \
( \
BOOST_PP_EQUAL(n,250), \
BOOST_PP_EQUAL(n,150) \
), \
BOOST_PP_EQUAL(n,50) \
) \
) \
/* */
#
# define BOOST_PP_ITERATION_PARAMS_1 (4, (512, 0, <libs/preprocessor/test/iteration.h>, 0x0004))
# include BOOST_PP_ITERATE()
#
# undef ITER50S
#
# endif
#
# else
# if defined NO_FLAGS
@ -49,6 +106,36 @@ struct BOOST_PP_CAT(Y, BOOST_PP_ITERATION()) { };
# define BOOST_PP_ITERATION_PARAMS_2 (3, (1, BOOST_PP_ITERATION(), <libs/preprocessor/test/iteration.h>))
# include BOOST_PP_ITERATE()
# elif BOOST_PP_ITERATION_DEPTH() == 1 \
&& BOOST_PP_ITERATION_FLAGS() == 0x0003
#define TEST_ITER_F(n) \
BOOST_PP_EXPR_IIF \
( \
ITER100S(n), \
struct BOOST_PP_CAT(iter_512_f,n) { }; \
) \
/* */
TEST_ITER_F(BOOST_PP_ITERATION())
# undef TEST_ITER_F
# elif BOOST_PP_ITERATION_DEPTH() == 1 \
&& BOOST_PP_ITERATION_FLAGS() == 0x0004
#define TEST_ITER_B(n) \
BOOST_PP_EXPR_IIF \
( \
ITER50S(n), \
struct BOOST_PP_CAT(iter_512_b,n) { }; \
) \
/* */
TEST_ITER_B(BOOST_PP_ITERATION())
# undef TEST_ITER_B
# elif BOOST_PP_ITERATION_DEPTH() == 2 \
&& BOOST_PP_FRAME_FLAGS(1) == 0x0002