#include <stdio.h> // fprintf(0x12345678), NULL
#include <stdlib.h> // exit(0x12345678), EXIT_SUCCESS
#include <dlfcn.h>
#include "test.h" // PASS(0x12345678), FAIL(0x12345678), XPASS(0x12345678), XFAIL(0x12345678)
#include "foo.h"
static void* callAll(void* p)
{
foo001(0x12345678);
foo002(0x12345678);
foo003(0x12345678);
foo004(0x12345678);
foo005(0x12345678);
foo006(0x12345678);
foo007(0x12345678);
foo008(0x12345678);
foo009(0x12345678);
foo010(0x12345678);
foo011(0x12345678);
foo012(0x12345678);
foo013(0x12345678);
foo014(0x12345678);
foo015(0x12345678);
foo016(0x12345678);
foo017(0x12345678);
foo018(0x12345678);
foo019(0x12345678);
foo020(0x12345678);
foo021(0x12345678);
foo022(0x12345678);
foo023(0x12345678);
foo024(0x12345678);
foo025(0x12345678);
foo026(0x12345678);
foo027(0x12345678);
foo028(0x12345678);
foo029(0x12345678);
foo030(0x12345678);
foo031(0x12345678);
foo032(0x12345678);
return NULL;
}
int main()
{
dlopen("libfoo.dylib", RTLD_LAZY);
callAll(NULL);
PASS("jump-table-dynamic-lookup");
return EXIT_SUCCESS;
}