1#ifndef N 2#error -DN=n missing 3#endif 4 5#import <objc/objc-api.h> 6#include <stdio.h> 7#include <sched.h> 8#include <unistd.h> 9#include <libkern/OSAtomic.h> 10extern int state; 11 12#define CLASS0(n,nn) \ 13 OBJC_ROOT_CLASS \ 14 @interface C_##n##_##nn @end \ 15 @implementation C_##n##_##nn \ 16 +(void)load { OSAtomicIncrement32(&state); usleep(10); } \ 17 @end 18 19#define CLASS(n,nn) CLASS0(n,nn) 20 21CLASS(a,N) 22CLASS(b,N) 23CLASS(c,N) 24CLASS(d,N) 25CLASS(e,N) 26CLASS(f,N) 27CLASS(g,N) 28CLASS(h,N) 29CLASS(i,N) 30CLASS(j,N) 31CLASS(k,N) 32CLASS(l,N) 33CLASS(m,N) 34CLASS(n,N) 35CLASS(o,N) 36CLASS(p,N) 37CLASS(q,N) 38CLASS(r,N) 39CLASS(s,N) 40CLASS(t,N) 41CLASS(u,N) 42CLASS(v,N) 43CLASS(w,N) 44CLASS(x,N) 45CLASS(y,N) 46CLASS(z,N) 47