Module Name: src Committed By: rillig Date: Sat Nov 28 23:48:36 UTC 2020
Modified Files: src/usr.bin/make: make.c Log Message: make(1): reduce memory allocation in Make_ProcessWait To generate a diff of this commit: cvs rdiff -u -r1.224 -r1.225 src/usr.bin/make/make.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/usr.bin/make/make.c diff -u src/usr.bin/make/make.c:1.224 src/usr.bin/make/make.c:1.225 --- src/usr.bin/make/make.c:1.224 Sat Nov 28 23:45:25 2020 +++ src/usr.bin/make/make.c Sat Nov 28 23:48:36 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: make.c,v 1.224 2020/11/28 23:45:25 rillig Exp $ */ +/* $NetBSD: make.c,v 1.225 2020/11/28 23:48:36 rillig Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -102,7 +102,7 @@ #include "job.h" /* "@(#)make.c 8.1 (Berkeley) 6/6/93" */ -MAKE_RCSID("$NetBSD: make.c,v 1.224 2020/11/28 23:45:25 rillig Exp $"); +MAKE_RCSID("$NetBSD: make.c,v 1.225 2020/11/28 23:48:36 rillig Exp $"); /* Sequence # to detect recursion. */ static unsigned int checked_seqno = 1; @@ -1229,7 +1229,7 @@ Make_ProcessWait(GNodeList *targs) { GNode *pgn; /* 'parent' node we are examining */ GNodeListNode *owln; /* Previous .WAIT node */ - GNodeList *examine; /* List of targets to examine */ + GNodeList examine; /* List of targets to examine */ /* * We need all the nodes to have a common parent in order for the @@ -1257,13 +1257,13 @@ Make_ProcessWait(GNodeList *targs) /* Start building with the 'dummy' .MAIN' node */ MakeBuildChild(pgn, NULL); - examine = Lst_New(); - Lst_Append(examine, pgn); + Lst_Init(&examine); + Lst_Append(&examine, pgn); - while (!Lst_IsEmpty(examine)) { + while (!Lst_IsEmpty(&examine)) { GNodeListNode *ln; - pgn = Lst_Dequeue(examine); + pgn = Lst_Dequeue(&examine); /* We only want to process each child-list once */ if (pgn->flags & DONE_WAIT) @@ -1272,7 +1272,7 @@ Make_ProcessWait(GNodeList *targs) DEBUG1(MAKE, "Make_ProcessWait: examine %s\n", pgn->name); if (pgn->type & OP_DOUBLEDEP) - Lst_PrependAll(examine, &pgn->cohorts); + Lst_PrependAll(&examine, &pgn->cohorts); owln = pgn->children.first; for (ln = pgn->children.first; ln != NULL; ln = ln->next) { @@ -1281,12 +1281,12 @@ Make_ProcessWait(GNodeList *targs) add_wait_dependency(owln, cgn); owln = ln; } else { - Lst_Append(examine, cgn); + Lst_Append(&examine, cgn); } } } - Lst_Free(examine); + Lst_Done(&examine); } /*-