197
197
extern Export bif_return_trap_export;
199
#define ERTS_BIF_YIELD_RETURN(P, VAL, DEBUG_VAL) \
199
#define ERTS_BIF_PREP_YIELD_RETURN_X(RET, P, VAL, DEBUG_VAL) \
201
ERTS_VBUMP_ALL_REDS(P); \
202
ERTS_BIF_PREP_TRAP2(RET, &bif_return_trap_export, (P), (VAL), \
206
#define ERTS_BIF_PREP_YIELD_RETURN_X(RET, P, VAL, DEBUG_VAL) \
208
ERTS_VBUMP_ALL_REDS(P); \
209
ERTS_BIF_PREP_TRAP1(RET, &bif_return_trap_export, (P), (VAL)); \
213
#define ERTS_BIF_PREP_YIELD_RETURN(RET, P, VAL) \
214
ERTS_BIF_PREP_YIELD_RETURN_X(RET, (P), (VAL), am_undefined)
217
#define ERTS_BIF_YIELD_RETURN_X(P, VAL, DEBUG_VAL) \
201
219
ERTS_VBUMP_ALL_REDS(P); \
202
220
BIF_TRAP2(&bif_return_trap_export, (P), (VAL), (DEBUG_VAL)); \
205
#define ERTS_BIF_YIELD_RETURN(P, VAL, DEBUG_VAL) \
223
#define ERTS_BIF_YIELD_RETURN_X(P, VAL, DEBUG_VAL) \
207
225
ERTS_VBUMP_ALL_REDS(P); \
208
226
BIF_TRAP1(&bif_return_trap_export, (P), (VAL)); \
230
#define ERTS_BIF_RETURN_YIELD(P) ERTS_VBUMP_ALL_REDS((P))
232
#define ERTS_BIF_YIELD_RETURN(P, VAL) \
233
ERTS_BIF_YIELD_RETURN_X((P), (VAL), am_undefined)
213
235
#define ERTS_BIF_PREP_YIELD0(RET, TRP, P) \