diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-09-16 07:33:48 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-09-17 14:11:04 +0100 |
commit | 36b4fcde7a24ccefe0dabcbe5e8e6712187ff679 (patch) | |
tree | edfb0c8557fea78e4371ae6960997e30b0671fbc /bitbake/lib/bb/data.py | |
parent | f78db82e1aed5d8eefe03c57eb96fd14b44f52b7 (diff) | |
download | poky-36b4fcde7a24ccefe0dabcbe5e8e6712187ff679.tar.gz |
bitbake: data: Use direct iteration, not keys()
Profiling shows the creation of keys() has overhead and we're better using
an iterator rather than the memory associated with the huge list of keys
when iterating the whoe datastore. We minimise the number of times
we do this to twice only per recipe.
(Bitbake rev: e63448d9ee331b0f45fb9a0197d0dbee49eb2fa0)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/data.py')
-rw-r--r-- | bitbake/lib/bb/data.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/bitbake/lib/bb/data.py b/bitbake/lib/bb/data.py index e6d523210c..beaf089601 100644 --- a/bitbake/lib/bb/data.py +++ b/bitbake/lib/bb/data.py | |||
@@ -148,7 +148,7 @@ def expandKeys(alterdata, readdata = None): | |||
148 | readdata = alterdata | 148 | readdata = alterdata |
149 | 149 | ||
150 | todolist = {} | 150 | todolist = {} |
151 | for key in keys(alterdata): | 151 | for key in alterdata: |
152 | if not '${' in key: | 152 | if not '${' in key: |
153 | continue | 153 | continue |
154 | 154 | ||
@@ -341,7 +341,7 @@ def build_dependencies(key, keys, shelldeps, vardepvals, d): | |||
341 | 341 | ||
342 | def generate_dependencies(d): | 342 | def generate_dependencies(d): |
343 | 343 | ||
344 | keys = set(key for key in d.keys() if not key.startswith("__")) | 344 | keys = set(key for key in d if not key.startswith("__")) |
345 | shelldeps = set(key for key in keys if d.getVarFlag(key, "export") and not d.getVarFlag(key, "unexport")) | 345 | shelldeps = set(key for key in keys if d.getVarFlag(key, "export") and not d.getVarFlag(key, "unexport")) |
346 | vardepvals = set(key for key in keys if d.getVarFlag(key, "vardepvalue")) | 346 | vardepvals = set(key for key in keys if d.getVarFlag(key, "vardepvalue")) |
347 | 347 | ||