diff options
author | Lukas Mai <l.mai@web.de> | 2013-08-11 00:44:09 +0200 |
---|---|---|
committer | James E Keenan <jkeenan@cpan.org> | 2013-08-11 01:27:52 +0200 |
commit | 03f05cb48515d5cc33c90b97a28e7b8111da5d32 (patch) | |
tree | 6df4a6ba7bd3dff4edf1e067d99508129b747e3f | |
parent | 1a066ce19c0aa4dc723633017794ce0bbaa4d7d3 (diff) | |
download | perl-03f05cb48515d5cc33c90b97a28e7b8111da5d32.tar.gz |
add adjust_size_and_find_bucket to embed.fnc
-rw-r--r-- | embed.fnc | 3 | ||||
-rw-r--r-- | embed.h | 3 | ||||
-rw-r--r-- | malloc.c | 14 | ||||
-rw-r--r-- | proto.h | 7 |
4 files changed, 22 insertions, 5 deletions
@@ -185,6 +185,9 @@ Anop |Free_t |mfree |Malloc_t where npR |MEM_SIZE|malloced_size |NN void *p npR |MEM_SIZE|malloc_good_size |size_t nbytes #endif +#if defined(PERL_IN_MALLOC_C) +sn |int |adjust_size_and_find_bucket |NN size_t *nbytes_p +#endif AnpR |void* |get_context Anp |void |set_context |NN void *t @@ -1399,6 +1399,9 @@ #define stdize_locale(a) S_stdize_locale(aTHX_ a) # endif # endif +# if defined(PERL_IN_MALLOC_C) +#define adjust_size_and_find_bucket S_adjust_size_and_find_bucket +# endif # if defined(PERL_IN_MG_C) #define magic_methcall1(a,b,c,d,e,f) S_magic_methcall1(aTHX_ a,b,c,d,e,f) #define magic_methpack(a,b,c) S_magic_methpack(aTHX_ a,b,c) @@ -1212,12 +1212,16 @@ cmp_pat_4bytes(unsigned char *s, size_t nbytes, const unsigned char *fill) # define FILLCHECK_DEADBEEF(s, n) ((void)0) #endif -int +STATIC int S_adjust_size_and_find_bucket(size_t *nbytes_p) { - MEM_SIZE shiftr; + MEM_SIZE shiftr; int bucket; - size_t nbytes = *nbytes_p; + size_t nbytes; + + PERL_ARGS_ASSERT_ADJUST_SIZE_AND_FIND_BUCKET; + + nbytes = *nbytes_p; /* * Convert amount of memory requested into @@ -1273,7 +1277,7 @@ Perl_malloc(size_t nbytes) croak("%s", "panic: malloc"); #endif - bucket = S_adjust_size_and_find_bucket(&nbytes); + bucket = adjust_size_and_find_bucket(&nbytes); MALLOC_LOCK; /* * If nothing in hash bucket right now, @@ -2173,7 +2177,7 @@ Perl_malloced_size(void *p) MEM_SIZE Perl_malloc_good_size(size_t wanted) { - return BUCKET_SIZE_REAL(S_adjust_size_and_find_bucket(&wanted)); + return BUCKET_SIZE_REAL(adjust_size_and_find_bucket(&wanted)); } # ifdef BUCKETS_ROOT2 @@ -5807,6 +5807,13 @@ STATIC char* S_stdize_locale(pTHX_ char* locs) # endif #endif +#if defined(PERL_IN_MALLOC_C) +STATIC int S_adjust_size_and_find_bucket(size_t *nbytes_p) + __attribute__nonnull__(1); +#define PERL_ARGS_ASSERT_ADJUST_SIZE_AND_FIND_BUCKET \ + assert(nbytes_p) + +#endif #if defined(PERL_IN_MG_C) STATIC SV* S_magic_methcall1(pTHX_ SV *sv, const MAGIC *mg, SV *meth, U32 flags, int n, SV *val) __attribute__nonnull__(pTHX_1) |