From edfb2ba32c5075e2df338a549021c634659f3225 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Wed, 27 Jun 2012 11:04:06 +0100 Subject: bitbake: 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. (Bitbake rev: 3190cb83e2af195a464f669c5aa8aedbf795160e) Signed-off-by: Richard Purdie --- bitbake/lib/bb/runqueue.py | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'bitbake/lib/bb/runqueue.py') diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py index 03766adfea..e09e8c8080 100644 --- a/bitbake/lib/bb/runqueue.py +++ b/bitbake/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) -- cgit v1.2.3-54-g00ecf