Changeset 1862 for trunk/src/kmk/read.c


Ignore:
Timestamp:
Oct 14, 2008, 3:04:03 AM (17 years ago)
Author:
bird
Message:

kmk: some preliminary allocation caching. seems dep, variables, variable sets and files would be good candidates for generic alloc caches.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kmk/read.c

    r1861 r1862  
    30793079
    30803080      /* Add it to the front of the chain.  */
     3081#if !defined(KMK) || !defined(NO_ARCHIVES)
    30813082      new1 = xmalloc (size);
     3083#else
     3084      if (sizeof (struct dep) == size) /* use the cache */
     3085        new1 = (struct nameseq *)alloc_dep ();
     3086      else
     3087        new1 = xmalloc (size);
     3088#endif
    30823089      new1->name = name;
    30833090      new1->next = new;
     
    38893896#endif /* !NO_ARCHIVES */
    38903897                  {
     3898#if !defined(KMK) && !defined(NO_ARCHIVES)
    38913899                    struct nameseq *elt = xmalloc (size);
     3900#else
     3901                    struct nameseq *elt = size == sizeof(struct dep)
     3902                                        ? (void *)alloc_dep() : xmalloc (size);
     3903#endif
    38923904                    memset (elt, '\0', size);
    38933905                    elt->name = strcache_add (gl.gl_pathv[i]);
     
    39003912#endif
    39013913            globfree (&gl);
     3914#if !defined(KMK) && !defined(NO_ARCHIVES)
    39023915            free (old);
     3916#else
     3917            if (size == sizeof(struct dep))
     3918              free_dep ((struct dep *)old);
     3919            else
     3920              free (old);
     3921#endif
    39033922            break;
    39043923          }
Note: See TracChangeset for help on using the changeset viewer.