glsl: Separate overlapping sentinel nodes in exec_list.
I do appreciate the cleverness, but unfortunately it prevents a lot more cleverness in the form of additional compiler optimizations brought on by -fstrict-aliasing. No difference in OglBatch7 (n=20). Co-authored-by: Davin McCall <davmac@davmac.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
@@ -344,7 +344,7 @@ ir_constant::clone(void *mem_ctx, struct hash_table *ht) const
|
||||
ir_constant *c = new(mem_ctx) ir_constant;
|
||||
|
||||
c->type = this->type;
|
||||
for (exec_node *node = this->components.head
|
||||
for (const exec_node *node = this->components.get_head_raw()
|
||||
; !node->is_tail_sentinel()
|
||||
; node = node->next) {
|
||||
ir_constant *const orig = (ir_constant *) node;
|
||||
|
Reference in New Issue
Block a user