Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/usr.bin/make make(1): document inefficient cache lookup in D...
details: https://anonhg.NetBSD.org/src/rev/afb4a297b6ad
branches: trunk
changeset: 942458:afb4a297b6ad
user: rillig <rillig%NetBSD.org@localhost>
date: Sun Nov 08 11:57:49 2020 +0000
description:
make(1): document inefficient cache lookup in DirMatchFiles
diffstat:
usr.bin/make/dir.c | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
diffs (28 lines):
diff -r 04069c6b8b60 -r afb4a297b6ad usr.bin/make/dir.c
--- a/usr.bin/make/dir.c Sun Nov 08 11:37:46 2020 +0000
+++ b/usr.bin/make/dir.c Sun Nov 08 11:57:49 2020 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: dir.c,v 1.201 2020/11/08 09:34:55 rillig Exp $ */
+/* $NetBSD: dir.c,v 1.202 2020/11/08 11:57:49 rillig Exp $ */
/*
* Copyright (c) 1988, 1989, 1990 The Regents of the University of California.
@@ -134,7 +134,7 @@
#include "job.h"
/* "@(#)dir.c 8.2 (Berkeley) 1/2/94" */
-MAKE_RCSID("$NetBSD: dir.c,v 1.201 2020/11/08 09:34:55 rillig Exp $");
+MAKE_RCSID("$NetBSD: dir.c,v 1.202 2020/11/08 11:57:49 rillig Exp $");
#define DIR_DEBUG0(text) DEBUG0(DIR, text)
#define DIR_DEBUG1(fmt, arg1) DEBUG1(DIR, fmt, arg1)
@@ -589,6 +589,9 @@
Boolean isDot = dirName[0] == '.' && dirName[1] == '\0';
HashIter hi;
+ /* XXX: Iterating over all hash entries is inefficient. If the pattern
+ * is a plain string without any wildcards, a direct lookup is faster. */
+
HashIter_Init(&hi, &dir->files);
while (HashIter_Next(&hi) != NULL) {
const char *base = hi.entry->key;
Home |
Main Index |
Thread Index |
Old Index