diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-01-10 14:49:51 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-01-10 14:49:51 +0300 |
commit | 561419374549201845bdd58e7329f61eef574f7f (patch) | |
tree | cc2f7e759b13ef119480bfc239ae23cd4d3062a6 /source/blender/depsgraph | |
parent | 518c65460e8843e425fee2161b407e1f8e9e4281 (diff) |
Task scheduler: Use restrict pointer qualifier
Those pointers are never to be aliased, so let's be explicit about this and hope
compiler does save some CPU ticks.
Diffstat (limited to 'source/blender/depsgraph')
-rw-r--r-- | source/blender/depsgraph/intern/eval/deg_eval.cc | 7 | ||||
-rw-r--r-- | source/blender/depsgraph/intern/eval/deg_eval_flush.cc | 21 |
2 files changed, 16 insertions, 12 deletions
diff --git a/source/blender/depsgraph/intern/eval/deg_eval.cc b/source/blender/depsgraph/intern/eval/deg_eval.cc index 565bb041cb6..d8d4906a71a 100644 --- a/source/blender/depsgraph/intern/eval/deg_eval.cc +++ b/source/blender/depsgraph/intern/eval/deg_eval.cc @@ -107,9 +107,10 @@ typedef struct CalculatePengindData { unsigned int layers; } CalculatePengindData; -static void calculate_pending_func(void *data_v, - int i, - const ParallelRangeTLS * /*tls*/) +static void calculate_pending_func( + void *__restrict data_v, + int i, + const ParallelRangeTLS *__restrict /*tls*/) { CalculatePengindData *data = (CalculatePengindData *)data_v; Depsgraph *graph = data->graph; diff --git a/source/blender/depsgraph/intern/eval/deg_eval_flush.cc b/source/blender/depsgraph/intern/eval/deg_eval_flush.cc index 7650e907c0b..de4c60bc193 100644 --- a/source/blender/depsgraph/intern/eval/deg_eval_flush.cc +++ b/source/blender/depsgraph/intern/eval/deg_eval_flush.cc @@ -83,18 +83,20 @@ void lib_id_recalc_data_tag(Main *bmain, ID *id) DEG_id_type_tag(bmain, GS(id->name)); } -void flush_init_operation_node_func(void *data_v, - int i, - const ParallelRangeTLS * /*tls*/) +void flush_init_operation_node_func( + void *__restrict data_v, + int i, + const ParallelRangeTLS *__restrict /*tls*/) { Depsgraph *graph = (Depsgraph *)data_v; OperationDepsNode *node = graph->operations[i]; node->scheduled = false; } -void flush_init_id_node_func(void *data_v, - int i, - const ParallelRangeTLS * /*tls*/) +void flush_init_id_node_func( + void *__restrict data_v, + int i, + const ParallelRangeTLS *__restrict /*tls*/) { Depsgraph *graph = (Depsgraph *)data_v; IDDepsNode *id_node = graph->id_nodes[i]; @@ -293,9 +295,10 @@ void deg_graph_flush_updates(Main *bmain, Depsgraph *graph) flush_editors_id_update(bmain, graph); } -static void graph_clear_func(void *data_v, - int i, - const ParallelRangeTLS * /*tls*/) +static void graph_clear_func( + void *__restrict data_v, + int i, + const ParallelRangeTLS *__restrict /*tls*/) { Depsgraph *graph = (Depsgraph *)data_v; OperationDepsNode *node = graph->operations[i]; |