Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2018-01-10 14:49:51 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2018-01-10 14:49:51 +0300
commit561419374549201845bdd58e7329f61eef574f7f (patch)
treecc2f7e759b13ef119480bfc239ae23cd4d3062a6 /source/blender/depsgraph
parent518c65460e8843e425fee2161b407e1f8e9e4281 (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.cc7
-rw-r--r--source/blender/depsgraph/intern/eval/deg_eval_flush.cc21
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];