pike.git
/
src
/
program.h
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/program.h:647:
#define PTR_FROM_INT(P, X) ((P)->identifier_references + \ CHECK_IDREF_RANGE((X), (P))) #define INHERIT_FROM_PTR(P,X) (dmalloc_touch(struct program *,(P))->inherits + (X)->inherit_offset) #define PROG_FROM_PTR(P,X) (dmalloc_touch(struct program *,INHERIT_FROM_PTR(P,X)->prog)) #define ID_FROM_PTR(P,X) (PROG_FROM_PTR(P,X)->identifiers+(X)->identifier_offset) #define INHERIT_FROM_INT(P,X) INHERIT_FROM_PTR(P, PTR_FROM_INT(P, X)) #define PROG_FROM_INT(P,X) PROG_FROM_PTR(P, PTR_FROM_INT(P, X)) #define ID_FROM_INT(P,X) ID_FROM_PTR(P, PTR_FROM_INT(P, X))
-
#define FIND_LFUN(P,N) ( dmalloc_touch(struct program *,(P))->flags & PROGRAM_FIXED && (N) < NUM_LFUNS ?((P)->lfuns[(N)]):find_lfun_fatal((P), (N)) )
+
#define QUICK_FIND_LFUN(P,N) (dmalloc_touch(struct program *,(P))->lfuns[N]) #ifdef DO_PIKE_CLEANUP PMOD_EXPORT extern int gc_external_refs_zapped; PMOD_EXPORT void gc_check_zapped (void *a, TYPE_T type, const char *file, int line); #endif #if defined (USE_DLL) && defined (DYNAMIC_MODULE) /* Use the function in modules so we don't have to export the block * alloc stuff. */
pike.git/src/program.h:1007:
struct program *a, struct program *b); void yyexplain_not_implements(int severity_level, struct program *a, struct program *b); PMOD_EXPORT void *parent_storage(int depth); PMOD_EXPORT void change_compiler_compatibility(int major, int minor); void make_area_executable (char *start, size_t len); void make_program_executable(struct program *p); /* Prototypes end here */ void count_memory_in_programs(size_t *, size_t *);
+
static INLINE int FIND_LFUN(struct program * p, int lfun) {
+
dmalloc_touch(struct program*, p);
+
if (lfun < 0 || lfun >= NUM_LFUNS) return find_lfun_fatal(p, lfun);
-
+
if (p->flags & PROGRAM_FIXED) return p->lfuns[lfun];
+
return low_find_lfun(p, lfun);
+
}
+
#ifndef PIKE_USE_MACHINE_CODE #define make_program_executable(X) #endif #define ADD_FUNCTION(NAME, FUNC, TYPE, FLAGS) \ quick_add_function(NAME, CONSTANT_STRLEN(NAME), FUNC, TYPE,\ CONSTANT_STRLEN(TYPE), FLAGS, \ OPT_SIDE_EFFECT|OPT_EXTERNAL_DEPEND) #define ADD_PROTOTYPE(NAME, TYPE, FLAGS) \