9 #if __has_feature(ptrauth_calls)
10 # define SIGNED_METHOD_LIST_IMP "@AUTH(ia,0,addr) "
12 # define SIGNED_METHOD_LIST_IMP
16 #define str2(x) str(x)
23 ".section __DATA,__objc_data \n"
27 PTR "_OBJC_CLASS_$_NSObject \n"
28 #if EVIL_INSTANCE_METHOD
29 PTR "L_evil_methods \n"
31 PTR "L_good_methods \n"
34 PTR "L_evil_methods \n"
36 PTR "L_good_methods \n"
46 PTR "_abort" SIGNED_METHOD_LIST_IMP "\n"
47 // assumes that abort is inside the dyld shared cache
54 PTR "_nop" SIGNED_METHOD_LIST_IMP "\n"
57 "L_cat_name: .ascii \"Evil\\0\" \n"
58 "L_load: .ascii \"load\\0\" \n"
60 ".section __DATA,__objc_catlist \n"
65 ".section __DATA,__objc_nlcatlist \n"