Explain purpose for prefetches in getFirstChild
This commit is contained in:
@@ -1406,10 +1406,12 @@ TaggedNodePointer getChildGeq(Node *self, int child) {
|
|||||||
|
|
||||||
TaggedNodePointer getFirstChild(Node0 *) { return nullptr; }
|
TaggedNodePointer getFirstChild(Node0 *) { return nullptr; }
|
||||||
TaggedNodePointer getFirstChild(Node3 *self) {
|
TaggedNodePointer getFirstChild(Node3 *self) {
|
||||||
|
// Improves scan performance
|
||||||
__builtin_prefetch(self->children[1]);
|
__builtin_prefetch(self->children[1]);
|
||||||
return self->children[0];
|
return self->children[0];
|
||||||
}
|
}
|
||||||
TaggedNodePointer getFirstChild(Node16 *self) {
|
TaggedNodePointer getFirstChild(Node16 *self) {
|
||||||
|
// Improves scan performance
|
||||||
__builtin_prefetch(self->children[1]);
|
__builtin_prefetch(self->children[1]);
|
||||||
return self->children[0];
|
return self->children[0];
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user