#include <setjmp.h>

extern sigjmp_buf *exc;
void		use(void *p);
void		thrower(const char *a, const char *b, const char *c);

void
use(void *p)
{
	__asm__ __volatile__("" : : "r"(p) : "memory");
}

/* Jump back to victim() on the second call. */
void
thrower(const char *a, const char *b, const char *c)
{
	static int	calls = 0;

	__asm__ __volatile__("" : : "r"(a), "r"(b), "r"(c) : "memory");
	if (++calls == 2)
		siglongjmp(*exc, 1);
}
