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/blenkernel/intern
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/blenkernel/intern')
-rw-r--r--source/blender/blenkernel/intern/CCGSubSurf_legacy.c36
-rw-r--r--source/blender/blenkernel/intern/colortools.c7
-rw-r--r--source/blender/blenkernel/intern/dynamicpaint.c168
-rw-r--r--source/blender/blenkernel/intern/mask_rasterize.c6
-rw-r--r--source/blender/blenkernel/intern/mesh_evaluate.c24
-rw-r--r--source/blender/blenkernel/intern/ocean.c6
-rw-r--r--source/blender/blenkernel/intern/particle_system.c16
-rw-r--r--source/blender/blenkernel/intern/pbvh.c18
-rw-r--r--source/blender/blenkernel/intern/shrinkwrap.c12
-rw-r--r--source/blender/blenkernel/intern/smoke.c20
-rw-r--r--source/blender/blenkernel/intern/tracking_auto.c7
-rw-r--r--source/blender/blenkernel/intern/tracking_stabilize.c4
12 files changed, 222 insertions, 102 deletions
diff --git a/source/blender/blenkernel/intern/CCGSubSurf_legacy.c b/source/blender/blenkernel/intern/CCGSubSurf_legacy.c
index 363b7cff453..d289f63dac1 100644
--- a/source/blender/blenkernel/intern/CCGSubSurf_legacy.c
+++ b/source/blender/blenkernel/intern/CCGSubSurf_legacy.c
@@ -136,8 +136,10 @@ typedef struct CCGSubSurfCalcSubdivData {
int curLvl;
} CCGSubSurfCalcSubdivData;
-static void ccgSubSurf__calcVertNormals_faces_accumulate_cb(void *userdata, int ptrIdx,
- const ParallelRangeTLS *UNUSED(tls))
+static void ccgSubSurf__calcVertNormals_faces_accumulate_cb(
+ void *__restrict userdata,
+ int ptrIdx,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
CCGSubSurfCalcSubdivData *data = userdata;
@@ -228,8 +230,10 @@ static void ccgSubSurf__calcVertNormals_faces_accumulate_cb(void *userdata, int
}
}
-static void ccgSubSurf__calcVertNormals_faces_finalize_cb(void *userdata, int ptrIdx,
- const ParallelRangeTLS *UNUSED(tls))
+static void ccgSubSurf__calcVertNormals_faces_finalize_cb(
+ void *__restrict userdata,
+ int ptrIdx,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
CCGSubSurfCalcSubdivData *data = userdata;
@@ -267,8 +271,10 @@ static void ccgSubSurf__calcVertNormals_faces_finalize_cb(void *userdata, int pt
}
}
-static void ccgSubSurf__calcVertNormals_edges_accumulate_cb(void *userdata, int ptrIdx,
- const ParallelRangeTLS *UNUSED(tls))
+static void ccgSubSurf__calcVertNormals_edges_accumulate_cb(
+ void *__restrict userdata,
+ int ptrIdx,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
CCGSubSurfCalcSubdivData *data = userdata;
@@ -414,8 +420,10 @@ static void ccgSubSurf__calcVertNormals(CCGSubSurf *ss,
}
-static void ccgSubSurf__calcSubdivLevel_interior_faces_edges_midpoints_cb(void *userdata, int ptrIdx,
- const ParallelRangeTLS *UNUSED(tls))
+static void ccgSubSurf__calcSubdivLevel_interior_faces_edges_midpoints_cb(
+ void *__restrict userdata,
+ int ptrIdx,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
CCGSubSurfCalcSubdivData *data = userdata;
@@ -502,8 +510,10 @@ static void ccgSubSurf__calcSubdivLevel_interior_faces_edges_midpoints_cb(void *
}
}
-static void ccgSubSurf__calcSubdivLevel_interior_faces_edges_centerpoints_shift_cb(void *userdata, int ptrIdx,
- const ParallelRangeTLS *UNUSED(tls))
+static void ccgSubSurf__calcSubdivLevel_interior_faces_edges_centerpoints_shift_cb(
+ void *__restrict userdata,
+ int ptrIdx,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
CCGSubSurfCalcSubdivData *data = userdata;
@@ -608,8 +618,10 @@ static void ccgSubSurf__calcSubdivLevel_interior_faces_edges_centerpoints_shift_
}
}
-static void ccgSubSurf__calcSubdivLevel_verts_copydata_cb(void *userdata, int ptrIdx,
- const ParallelRangeTLS *UNUSED(tls))
+static void ccgSubSurf__calcSubdivLevel_verts_copydata_cb(
+ void *__restrict userdata,
+ int ptrIdx,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
CCGSubSurfCalcSubdivData *data = userdata;
diff --git a/source/blender/blenkernel/intern/colortools.c b/source/blender/blenkernel/intern/colortools.c
index 46d06a3ac78..0fe429312db 100644
--- a/source/blender/blenkernel/intern/colortools.c
+++ b/source/blender/blenkernel/intern/colortools.c
@@ -1165,7 +1165,9 @@ typedef struct ScopesUpdateDataChunk {
float min[3], max[3];
} ScopesUpdateDataChunk;
-static void scopes_update_cb(void *userdata, const int y, const ParallelRangeTLS *tls)
+static void scopes_update_cb(void *__restrict userdata,
+ const int y,
+ const ParallelRangeTLS *__restrict tls)
{
const ScopesUpdateData *data = userdata;
@@ -1259,7 +1261,8 @@ static void scopes_update_cb(void *userdata, const int y, const ParallelRangeTLS
}
}
-static void scopes_update_finalize(void *userdata, void *userdata_chunk)
+static void scopes_update_finalize(void *__restrict userdata,
+ void *__restrict userdata_chunk)
{
const ScopesUpdateData *data = userdata;
const ScopesUpdateDataChunk *data_chunk = userdata_chunk;
diff --git a/source/blender/blenkernel/intern/dynamicpaint.c b/source/blender/blenkernel/intern/dynamicpaint.c
index 4b7193adc21..de96d7e3176 100644
--- a/source/blender/blenkernel/intern/dynamicpaint.c
+++ b/source/blender/blenkernel/intern/dynamicpaint.c
@@ -611,7 +611,9 @@ static void freeGrid(PaintSurfaceData *data)
bData->grid = NULL;
}
-static void grid_bound_insert_cb_ex(void *userdata, const int i, const ParallelRangeTLS *tls)
+static void grid_bound_insert_cb_ex(void *__restrict userdata,
+ const int i,
+ const ParallelRangeTLS *__restrict tls)
{
PaintBakeData *bData = userdata;
@@ -620,7 +622,8 @@ static void grid_bound_insert_cb_ex(void *userdata, const int i, const ParallelR
boundInsert(grid_bound, bData->realCoord[bData->s_pos[i]].v);
}
-static void grid_bound_insert_finalize(void *userdata, void *userdata_chunk)
+static void grid_bound_insert_finalize(void *__restrict userdata,
+ void *__restrict userdata_chunk)
{
PaintBakeData *bData = userdata;
VolumeGrid *grid = bData->grid;
@@ -631,7 +634,9 @@ static void grid_bound_insert_finalize(void *userdata, void *userdata_chunk)
boundInsert(&grid->grid_bounds, grid_bound->max);
}
-static void grid_cell_points_cb_ex(void *userdata, const int i, const ParallelRangeTLS *tls)
+static void grid_cell_points_cb_ex(void *__restrict userdata,
+ const int i,
+ const ParallelRangeTLS *__restrict tls)
{
PaintBakeData *bData = userdata;
VolumeGrid *grid = bData->grid;
@@ -650,7 +655,8 @@ static void grid_cell_points_cb_ex(void *userdata, const int i, const ParallelRa
s_num[temp_t_index[i]]++;
}
-static void grid_cell_points_finalize(void *userdata, void *userdata_chunk)
+static void grid_cell_points_finalize(void *__restrict userdata,
+ void *__restrict userdata_chunk)
{
PaintBakeData *bData = userdata;
VolumeGrid *grid = bData->grid;
@@ -664,7 +670,9 @@ static void grid_cell_points_finalize(void *userdata, void *userdata_chunk)
}
}
-static void grid_cell_bounds_cb(void *userdata, const int x, const ParallelRangeTLS *UNUSED(tls))
+static void grid_cell_bounds_cb(void *__restrict userdata,
+ const int x,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
PaintBakeData *bData = userdata;
VolumeGrid *grid = bData->grid;
@@ -1424,8 +1432,10 @@ typedef struct DynamicPaintSetInitColorData {
const bool scene_color_manage;
} DynamicPaintSetInitColorData;
-static void dynamic_paint_set_init_color_tex_to_vcol_cb(void *userdata, const int i,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_set_init_color_tex_to_vcol_cb(
+ void *__restrict userdata,
+ const int i,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintSetInitColorData *data = userdata;
@@ -1459,8 +1469,10 @@ static void dynamic_paint_set_init_color_tex_to_vcol_cb(void *userdata, const in
}
}
-static void dynamic_paint_set_init_color_tex_to_imseq_cb(void *userdata, const int i,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_set_init_color_tex_to_imseq_cb(
+ void *__restrict userdata,
+ const int i,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintSetInitColorData *data = userdata;
@@ -1498,8 +1510,10 @@ static void dynamic_paint_set_init_color_tex_to_imseq_cb(void *userdata, const i
pPoint[i].color[3] = texres.tin;
}
-static void dynamic_paint_set_init_color_vcol_to_imseq_cb(void *userdata, const int i,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_set_init_color_vcol_to_imseq_cb(
+ void *__restrict userdata,
+ const int i,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintSetInitColorData *data = userdata;
@@ -1719,8 +1733,10 @@ typedef struct DynamicPaintModifierApplyData {
MLoopCol *mloopcol_preview;
} DynamicPaintModifierApplyData;
-static void dynamic_paint_apply_surface_displace_cb(void *userdata, const int i,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_apply_surface_displace_cb(
+ void *__restrict userdata,
+ const int i,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintModifierApplyData *data = userdata;
@@ -1760,8 +1776,10 @@ static void dynamicPaint_applySurfaceDisplace(DynamicPaintSurface *surface, Deri
}
}
-static void dynamic_paint_apply_surface_vpaint_blend_cb(void *userdata, const int i,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_apply_surface_vpaint_blend_cb(
+ void *__restrict userdata,
+ const int i,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintModifierApplyData *data = userdata;
@@ -1772,8 +1790,10 @@ static void dynamic_paint_apply_surface_vpaint_blend_cb(void *userdata, const in
blendColors(pPoint[i].color, pPoint[i].color[3], pPoint[i].e_color, pPoint[i].e_color[3], fcolor[i]);
}
-static void dynamic_paint_apply_surface_vpaint_cb(void *userdata, const int p_index,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_apply_surface_vpaint_cb(
+ void *__restrict userdata,
+ const int p_index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintModifierApplyData *data = userdata;
Object *ob = data->ob;
@@ -1843,8 +1863,10 @@ static void dynamic_paint_apply_surface_vpaint_cb(void *userdata, const int p_in
}
}
-static void dynamic_paint_apply_surface_wave_cb(void *userdata, const int i,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_apply_surface_wave_cb(
+ void *__restrict userdata,
+ const int i,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintModifierApplyData *data = userdata;
@@ -2182,8 +2204,10 @@ typedef struct DynamicPaintCreateUVSurfaceData {
uint32_t *active_points;
} DynamicPaintCreateUVSurfaceData;
-static void dynamic_paint_create_uv_surface_direct_cb(void *userdata, const int ty,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_create_uv_surface_direct_cb(
+ void *__restrict userdata,
+ const int ty,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintCreateUVSurfaceData *data = userdata;
@@ -2280,8 +2304,10 @@ static void dynamic_paint_create_uv_surface_direct_cb(void *userdata, const int
}
}
-static void dynamic_paint_create_uv_surface_neighbor_cb(void *userdata, const int ty,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_create_uv_surface_neighbor_cb(
+ void *__restrict userdata,
+ const int ty,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintCreateUVSurfaceData *data = userdata;
@@ -3089,8 +3115,10 @@ typedef struct DynamicPaintOutputSurfaceImageData {
ImBuf *ibuf;
} DynamicPaintOutputSurfaceImageData;
-static void dynamic_paint_output_surface_image_paint_cb(void *userdata, const int index,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_output_surface_image_paint_cb(
+ void *__restrict userdata,
+ const int index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintOutputSurfaceImageData *data = userdata;
@@ -3110,8 +3138,10 @@ static void dynamic_paint_output_surface_image_paint_cb(void *userdata, const in
}
}
-static void dynamic_paint_output_surface_image_displace_cb(void *userdata, const int index,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_output_surface_image_displace_cb(
+ void *__restrict userdata,
+ const int index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintOutputSurfaceImageData *data = userdata;
@@ -3135,8 +3165,10 @@ static void dynamic_paint_output_surface_image_displace_cb(void *userdata, const
ibuf->rect_float[pos + 3] = 1.0f;
}
-static void dynamic_paint_output_surface_image_wave_cb(void *userdata, const int index,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_output_surface_image_wave_cb(
+ void *__restrict userdata,
+ const int index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintOutputSurfaceImageData *data = userdata;
@@ -3158,8 +3190,10 @@ static void dynamic_paint_output_surface_image_wave_cb(void *userdata, const int
ibuf->rect_float[pos + 3] = 1.0f;
}
-static void dynamic_paint_output_surface_image_wetmap_cb(void *userdata, const int index,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_output_surface_image_wetmap_cb(
+ void *__restrict userdata,
+ const int index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintOutputSurfaceImageData *data = userdata;
@@ -3679,8 +3713,10 @@ typedef struct DynamicPaintBrushVelocityData {
const float timescale;
} DynamicPaintBrushVelocityData;
-static void dynamic_paint_brush_velocity_compute_cb(void *userdata, const int i,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_brush_velocity_compute_cb(
+ void *__restrict userdata,
+ const int i,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintBrushVelocityData *data = userdata;
@@ -3836,7 +3872,9 @@ typedef struct DynamicPaintPaintData {
* Paint a brush object mesh to the surface
*/
static void dynamic_paint_paint_mesh_cell_point_cb_ex(
- void *userdata, const int id, const ParallelRangeTLS *UNUSED(tls))
+ void *__restrict userdata,
+ const int id,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintPaintData *data = userdata;
@@ -4281,7 +4319,9 @@ static int dynamicPaint_paintMesh(DynamicPaintSurface *surface,
* Paint a particle system to the surface
*/
static void dynamic_paint_paint_particle_cell_point_cb_ex(
- void *userdata, const int id, const ParallelRangeTLS *UNUSED(tls))
+ void *__restrict userdata,
+ const int id,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintPaintData *data = userdata;
@@ -4560,7 +4600,9 @@ static int dynamicPaint_paintParticles(DynamicPaintSurface *surface,
/* paint a single point of defined proximity radius to the surface */
static void dynamic_paint_paint_single_point_cb_ex(
- void *userdata, const int index, const ParallelRangeTLS *UNUSED(tls))
+ void *__restrict userdata,
+ const int index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintPaintData *data = userdata;
@@ -4710,8 +4752,10 @@ static int dynamicPaint_paintSinglePoint(
* Calculate current frame distances and directions for adjacency data
*/
-static void dynamic_paint_prepare_adjacency_cb(void *userdata, const int index,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_prepare_adjacency_cb(
+ void *__restrict userdata,
+ const int index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
PaintSurfaceData *sData = userdata;
PaintBakeData *bData = sData->bData;
@@ -4943,8 +4987,10 @@ typedef struct DynamicPaintEffectData {
* Prepare data required by effects for current frame.
* Returns number of steps required
*/
-static void dynamic_paint_prepare_effect_cb(void *userdata, const int index,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_prepare_effect_cb(
+ void *__restrict userdata,
+ const int index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintEffectData *data = userdata;
@@ -5054,8 +5100,10 @@ static int dynamicPaint_prepareEffectStep(
/**
* Processes active effect step.
*/
-static void dynamic_paint_effect_spread_cb(void *userdata, const int index,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_effect_spread_cb(
+ void *__restrict userdata,
+ const int index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintEffectData *data = userdata;
@@ -5100,8 +5148,10 @@ static void dynamic_paint_effect_spread_cb(void *userdata, const int index,
}
}
-static void dynamic_paint_effect_shrink_cb(void *userdata, const int index,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_effect_shrink_cb(
+ void *__restrict userdata,
+ const int index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintEffectData *data = userdata;
@@ -5151,8 +5201,10 @@ static void dynamic_paint_effect_shrink_cb(void *userdata, const int index,
}
}
-static void dynamic_paint_effect_drip_cb(void *userdata, const int index,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_effect_drip_cb(
+ void *__restrict userdata,
+ const int index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintEffectData *data = userdata;
@@ -5345,8 +5397,10 @@ static void dynamicPaint_doEffectStep(
}
}
-static void dynamic_paint_border_cb(void *userdata, const int b_index,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_border_cb(
+ void *__restrict userdata,
+ const int b_index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintEffectData *data = userdata;
@@ -5425,8 +5479,10 @@ static void dynamicPaint_doBorderStep(DynamicPaintSurface *surface)
&settings);
}
-static void dynamic_paint_wave_step_cb(void *userdata, const int index,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_wave_step_cb(
+ void *__restrict userdata,
+ const int index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintEffectData *data = userdata;
@@ -5593,8 +5649,10 @@ typedef struct DynamicPaintDissolveDryData {
const float timescale;
} DynamicPaintDissolveDryData;
-static void dynamic_paint_surface_pre_step_cb(void *userdata, const int index,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_surface_pre_step_cb(
+ void *__restrict userdata,
+ const int index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintDissolveDryData *data = userdata;
@@ -5717,8 +5775,10 @@ typedef struct DynamicPaintGenerateBakeData {
const bool new_bdata;
} DynamicPaintGenerateBakeData;
-static void dynamic_paint_generate_bake_data_cb(void *userdata, const int index,
- const ParallelRangeTLS *UNUSED(tls))
+static void dynamic_paint_generate_bake_data_cb(
+ void *__restrict userdata,
+ const int index,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
const DynamicPaintGenerateBakeData *data = userdata;
diff --git a/source/blender/blenkernel/intern/mask_rasterize.c b/source/blender/blenkernel/intern/mask_rasterize.c
index 6efcb27c0f5..093a1967ae8 100644
--- a/source/blender/blenkernel/intern/mask_rasterize.c
+++ b/source/blender/blenkernel/intern/mask_rasterize.c
@@ -1434,8 +1434,10 @@ typedef struct MaskRasterizeBufferData {
float *buffer;
} MaskRasterizeBufferData;
-static void maskrasterize_buffer_cb(void *userdata, int y,
- const ParallelRangeTLS *UNUSED(tls))
+static void maskrasterize_buffer_cb(
+ void *__restrict userdata,
+ int y,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
MaskRasterizeBufferData *data = userdata;
diff --git a/source/blender/blenkernel/intern/mesh_evaluate.c b/source/blender/blenkernel/intern/mesh_evaluate.c
index c1beaaaac75..b321065d84c 100644
--- a/source/blender/blenkernel/intern/mesh_evaluate.c
+++ b/source/blender/blenkernel/intern/mesh_evaluate.c
@@ -177,8 +177,10 @@ typedef struct MeshCalcNormalsData {
float (*vnors)[3];
} MeshCalcNormalsData;
-static void mesh_calc_normals_poly_cb(void *userdata, const int pidx,
- const ParallelRangeTLS *UNUSED(tls))
+static void mesh_calc_normals_poly_cb(
+ void *__restrict userdata,
+ const int pidx,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
MeshCalcNormalsData *data = userdata;
const MPoly *mp = &data->mpolys[pidx];
@@ -186,8 +188,10 @@ static void mesh_calc_normals_poly_cb(void *userdata, const int pidx,
BKE_mesh_calc_poly_normal(mp, data->mloop + mp->loopstart, data->mverts, data->pnors[pidx]);
}
-static void mesh_calc_normals_poly_prepare_cb(void *userdata, const int pidx,
- const ParallelRangeTLS *UNUSED(tls))
+static void mesh_calc_normals_poly_prepare_cb(
+ void *__restrict userdata,
+ const int pidx,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
MeshCalcNormalsData *data = userdata;
const MPoly *mp = &data->mpolys[pidx];
@@ -249,16 +253,20 @@ static void mesh_calc_normals_poly_prepare_cb(void *userdata, const int pidx,
}
}
-static void mesh_calc_normals_poly_accum_cb(void *userdata, const int lidx,
- const ParallelRangeTLS *UNUSED(tls))
+static void mesh_calc_normals_poly_accum_cb(
+ void *__restrict userdata,
+ const int lidx,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
MeshCalcNormalsData *data = userdata;
add_v3_v3(data->vnors[data->mloop[lidx].v], data->lnors_weighted[lidx]);
}
-static void mesh_calc_normals_poly_finalize_cb(void *userdata, const int vidx,
- const ParallelRangeTLS *UNUSED(tls))
+static void mesh_calc_normals_poly_finalize_cb(
+ void *__restrict userdata,
+ const int vidx,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
MeshCalcNormalsData *data = userdata;
diff --git a/source/blender/blenkernel/intern/ocean.c b/source/blender/blenkernel/intern/ocean.c
index 478b7ef21ef..0b4bc39627e 100644
--- a/source/blender/blenkernel/intern/ocean.c
+++ b/source/blender/blenkernel/intern/ocean.c
@@ -502,8 +502,10 @@ typedef struct OceanSimulateData {
float chop_amount;
} OceanSimulateData;
-static void ocean_compute_htilda(void *userdata, const int i,
- const ParallelRangeTLS *UNUSED(tls))
+static void ocean_compute_htilda(
+ void *__restrict userdata,
+ const int i,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
OceanSimulateData *osd = userdata;
const Ocean *o = osd->o;
diff --git a/source/blender/blenkernel/intern/particle_system.c b/source/blender/blenkernel/intern/particle_system.c
index 628939c6c18..c5cc7c28243 100644
--- a/source/blender/blenkernel/intern/particle_system.c
+++ b/source/blender/blenkernel/intern/particle_system.c
@@ -3371,7 +3371,9 @@ typedef struct DynamicStepSolverTaskData {
} DynamicStepSolverTaskData;
static void dynamics_step_sph_ddr_task_cb_ex(
- void *userdata, const int p, const ParallelRangeTLS *tls)
+ void *__restrict userdata,
+ const int p,
+ const ParallelRangeTLS *__restrict tls)
{
DynamicStepSolverTaskData *data = userdata;
ParticleSimulationData *sim = data->sim;
@@ -3405,7 +3407,9 @@ static void dynamics_step_sph_ddr_task_cb_ex(
}
static void dynamics_step_sph_classical_basic_integrate_task_cb_ex(
- void *userdata, const int p, const ParallelRangeTLS *UNUSED(tls))
+ void *__restrict userdata,
+ const int p,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
DynamicStepSolverTaskData *data = userdata;
ParticleSimulationData *sim = data->sim;
@@ -3421,7 +3425,9 @@ static void dynamics_step_sph_classical_basic_integrate_task_cb_ex(
}
static void dynamics_step_sph_classical_calc_density_task_cb_ex(
- void *userdata, const int p, const ParallelRangeTLS *tls)
+ void *__restrict userdata,
+ const int p,
+ const ParallelRangeTLS *__restrict tls)
{
DynamicStepSolverTaskData *data = userdata;
ParticleSimulationData *sim = data->sim;
@@ -3439,7 +3445,9 @@ static void dynamics_step_sph_classical_calc_density_task_cb_ex(
}
static void dynamics_step_sph_classical_integrate_task_cb_ex(
- void *userdata, const int p, const ParallelRangeTLS *tls)
+ void *__restrict userdata,
+ const int p,
+ const ParallelRangeTLS *__restrict tls)
{
DynamicStepSolverTaskData *data = userdata;
ParticleSimulationData *sim = data->sim;
diff --git a/source/blender/blenkernel/intern/pbvh.c b/source/blender/blenkernel/intern/pbvh.c
index 43ea1ad83a0..46bd310066f 100644
--- a/source/blender/blenkernel/intern/pbvh.c
+++ b/source/blender/blenkernel/intern/pbvh.c
@@ -938,8 +938,10 @@ typedef struct PBVHUpdateData {
int flag;
} PBVHUpdateData;
-static void pbvh_update_normals_accum_task_cb(void *userdata, const int n,
- const ParallelRangeTLS *UNUSED(tls))
+static void pbvh_update_normals_accum_task_cb(
+ void *__restrict userdata,
+ const int n,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
PBVHUpdateData *data = userdata;
@@ -992,8 +994,10 @@ static void pbvh_update_normals_accum_task_cb(void *userdata, const int n,
}
}
-static void pbvh_update_normals_store_task_cb(void *userdata, const int n,
- const ParallelRangeTLS *UNUSED(tls))
+static void pbvh_update_normals_store_task_cb(
+ void *__restrict userdata,
+ const int n,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
PBVHUpdateData *data = userdata;
PBVH *bvh = data->bvh;
@@ -1063,8 +1067,10 @@ static void pbvh_update_normals(PBVH *bvh, PBVHNode **nodes,
MEM_freeN(vnors);
}
-static void pbvh_update_BB_redraw_task_cb(void *userdata, const int n,
- const ParallelRangeTLS *UNUSED(tls))
+static void pbvh_update_BB_redraw_task_cb(
+ void *__restrict userdata,
+ const int n,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
PBVHUpdateData *data = userdata;
PBVH *bvh = data->bvh;
diff --git a/source/blender/blenkernel/intern/shrinkwrap.c b/source/blender/blenkernel/intern/shrinkwrap.c
index 0f12bb0a8da..4e887d21f4f 100644
--- a/source/blender/blenkernel/intern/shrinkwrap.c
+++ b/source/blender/blenkernel/intern/shrinkwrap.c
@@ -88,7 +88,9 @@ typedef struct ShrinkwrapCalcCBData {
* for each vertex performs a nearest vertex search on the tree
*/
static void shrinkwrap_calc_nearest_vertex_cb_ex(
- void *userdata, const int i, const ParallelRangeTLS *tls)
+ void *__restrict userdata,
+ const int i,
+ const ParallelRangeTLS *__restrict tls)
{
ShrinkwrapCalcCBData *data = userdata;
@@ -262,7 +264,9 @@ bool BKE_shrinkwrap_project_normal(
}
static void shrinkwrap_calc_normal_projection_cb_ex(
- void *userdata, const int i, const ParallelRangeTLS *tls)
+ void *__restrict userdata,
+ const int i,
+ const ParallelRangeTLS *__restrict tls)
{
ShrinkwrapCalcCBData *data = userdata;
@@ -506,7 +510,9 @@ static void shrinkwrap_calc_normal_projection(ShrinkwrapCalcData *calc, bool for
* NN matches for each vertex
*/
static void shrinkwrap_calc_nearest_surface_point_cb_ex(
- void *userdata, const int i, const ParallelRangeTLS *tls)
+ void *__restrict userdata,
+ const int i,
+ const ParallelRangeTLS *__restrict tls)
{
ShrinkwrapCalcCBData *data = userdata;
diff --git a/source/blender/blenkernel/intern/smoke.c b/source/blender/blenkernel/intern/smoke.c
index 9c245b444ee..3cf98b284b1 100644
--- a/source/blender/blenkernel/intern/smoke.c
+++ b/source/blender/blenkernel/intern/smoke.c
@@ -738,7 +738,10 @@ typedef struct ObstaclesFromDMData {
int *num_obstacles;
} ObstaclesFromDMData;
-static void obstacles_from_derivedmesh_task_cb(void *userdata, const int z, const ParallelRangeTLS *UNUSED(tls))
+static void obstacles_from_derivedmesh_task_cb(
+ void *__restrict userdata,
+ const int z,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
ObstaclesFromDMData *data = userdata;
SmokeDomainSettings *sds = data->sds;
@@ -1189,7 +1192,10 @@ typedef struct EmitFromParticlesData {
float hr_smooth;
} EmitFromParticlesData;
-static void emit_from_particles_task_cb(void *userdata, const int z, const ParallelRangeTLS *UNUSED(tls))
+static void emit_from_particles_task_cb(
+ void *__restrict userdata,
+ const int z,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
EmitFromParticlesData *data = userdata;
SmokeFlowSettings *sfs = data->sfs;
@@ -1578,7 +1584,10 @@ typedef struct EmitFromDMData {
int *min, *max, *res;
} EmitFromDMData;
-static void emit_from_derivedmesh_task_cb(void *userdata, const int z, const ParallelRangeTLS *UNUSED(tls))
+static void emit_from_derivedmesh_task_cb(
+ void *__restrict userdata,
+ const int z,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
EmitFromDMData *data = userdata;
EmissionMap *em = data->em;
@@ -2453,7 +2462,10 @@ typedef struct UpdateEffectorsData {
unsigned char *obstacle;
} UpdateEffectorsData;
-static void update_effectors_task_cb(void *userdata, const int x, const ParallelRangeTLS *UNUSED(tls))
+static void update_effectors_task_cb(
+ void *__restrict userdata,
+ const int x,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
UpdateEffectorsData *data = userdata;
SmokeDomainSettings *sds = data->sds;
diff --git a/source/blender/blenkernel/intern/tracking_auto.c b/source/blender/blenkernel/intern/tracking_auto.c
index 0874d645a34..d297a92f29e 100644
--- a/source/blender/blenkernel/intern/tracking_auto.c
+++ b/source/blender/blenkernel/intern/tracking_auto.c
@@ -432,9 +432,10 @@ AutoTrackContext *BKE_autotrack_context_new(MovieClip *clip,
return context;
}
-static void autotrack_context_step_cb(void *userdata,
- int track,
- const ParallelRangeTLS *UNUSED(tls))
+static void autotrack_context_step_cb(
+ void *__restrict userdata,
+ int track,
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
AutoTrackContext *context = userdata;
const int frame_delta = context->backwards ? -1 : 1;
diff --git a/source/blender/blenkernel/intern/tracking_stabilize.c b/source/blender/blenkernel/intern/tracking_stabilize.c
index fe850708547..bd83c2eb6dc 100644
--- a/source/blender/blenkernel/intern/tracking_stabilize.c
+++ b/source/blender/blenkernel/intern/tracking_stabilize.c
@@ -1504,9 +1504,9 @@ typedef struct TrackingStabilizeFrameInterpolationData {
} TrackingStabilizeFrameInterpolationData;
static void tracking_stabilize_frame_interpolation_cb(
- void *userdata,
+ void *__restrict userdata,
int j,
- const ParallelRangeTLS *UNUSED(tls))
+ const ParallelRangeTLS *__restrict UNUSED(tls))
{
TrackingStabilizeFrameInterpolationData *data = userdata;
ImBuf *ibuf = data->ibuf;