summaryrefslogtreecommitdiffstats
path: root/lib/bb/runqueue.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2012-06-27 11:04:06 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-06-28 12:37:52 +0100
commit3190cb83e2af195a464f669c5aa8aedbf795160e (patch)
tree90c31b817b21075836ddb76a668e503b382b629e /lib/bb/runqueue.py
parente6ff1d4bab43fdcd8af1230f1d54615f53c1978e (diff)
downloadbitbake-3190cb83e2af195a464f669c5aa8aedbf795160e.tar.gz
taskdata: Add gettask_id_fromfnid helper function
This is like gettask_id but doesn't require translation of fnid -> fn first which the function then translates back. This gives a sizeable performance improvement since a significant number of lookups are avoided. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'lib/bb/runqueue.py')
-rw-r--r--lib/bb/runqueue.py12
1 files changed, 4 insertions, 8 deletions
diff --git a/lib/bb/runqueue.py b/lib/bb/runqueue.py
index 03766adfe..e09e8c808 100644
--- a/lib/bb/runqueue.py
+++ b/lib/bb/runqueue.py
@@ -406,9 +406,8 @@ class RunQueueData:
depdata = taskData.build_targets[depid][0]
if depdata is None:
continue
- dep = taskData.fn_index[depdata]
for taskname in tasknames:
- taskid = taskData.gettask_id(dep, taskname, False)
+ taskid = taskData.gettask_id_fromfnid(depdata, taskname)
if taskid is not None:
depends.append(taskid)
@@ -419,9 +418,8 @@ class RunQueueData:
depdata = taskData.run_targets[depid][0]
if depdata is None:
continue
- dep = taskData.fn_index[depdata]
for taskname in tasknames:
- taskid = taskData.gettask_id(dep, taskname, False)
+ taskid = taskData.gettask_id_fromfnid(depdata, taskname)
if taskid is not None:
depends.append(taskid)
@@ -469,8 +467,7 @@ class RunQueueData:
# Won't be in build_targets if ASSUME_PROVIDED
depdata = taskData.build_targets[depid][0]
if depdata is not None:
- dep = taskData.fn_index[depdata]
- taskid = taskData.gettask_id(dep, idependtask, False)
+ taskid = taskData.gettask_id_fromfnid(depdata, idependtask)
if taskid is None:
bb.msg.fatal("RunQueue", "Task %s in %s depends upon non-existent task %s in %s" % (taskData.tasks_name[task], fn, idependtask, dep))
depends.append(taskid)
@@ -482,8 +479,7 @@ class RunQueueData:
# Won't be in run_targets if ASSUME_PROVIDED
depdata = taskData.run_targets[depid][0]
if depdata is not None:
- dep = taskData.fn_index[depdata]
- taskid = taskData.gettask_id(dep, idependtask, False)
+ taskid = taskData.gettask_id_fromfnid(depdata, idependtask)
if taskid is None:
bb.msg.fatal("RunQueue", "Task %s in %s rdepends upon non-existent task %s in %s" % (taskData.tasks_name[task], fn, idependtask, dep))
depends.append(taskid)