drm/i915: Use __ffs() in for_each_priolist for more compact code
Gcc has a slight preference if we use __ffs() to subtract one from the index once rather than each use: __execlists_submission_tasklet 2867 2847 -20 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20190226102404.29153-11-chris@chris-wilson.co.uk
This commit is contained in:
parent
d9948a10b9
commit
bd5d6781a0
@ -95,9 +95,11 @@ struct i915_priolist {
|
||||
list_for_each_entry(it, &(plist)->requests[idx], sched.link)
|
||||
|
||||
#define priolist_for_each_request_consume(it, n, plist, idx) \
|
||||
for (; (idx = ffs((plist)->used)); (plist)->used &= ~BIT(idx - 1)) \
|
||||
for (; \
|
||||
(plist)->used ? (idx = __ffs((plist)->used)), 1 : 0; \
|
||||
(plist)->used &= ~BIT(idx)) \
|
||||
list_for_each_entry_safe(it, n, \
|
||||
&(plist)->requests[idx - 1], \
|
||||
&(plist)->requests[idx], \
|
||||
sched.link)
|
||||
|
||||
void i915_sched_node_init(struct i915_sched_node *node);
|
||||
|
Loading…
Reference in New Issue
Block a user