diff options
author | Campbell Barton <ideasman42@gmail.com> | 2012-04-22 07:25:48 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2012-04-22 07:25:48 +0400 |
commit | cd2b142ba0bf8305efd44db22068c39f4f935cd5 (patch) | |
tree | b842a03dbd4b322249d12b44b2fd02d17abe928d /source/blender | |
parent | ac5058b281b859917efbf4cf028767094fab7144 (diff) |
small speedup to VertDataMulN(av, n), when passed expressions to 'n' they were calculated 3 times, cuts 78 instructions from resulting assembly (gcc -O2).
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/blenkernel/intern/CCGSubSurf.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/CCGSubSurf.c b/source/blender/blenkernel/intern/CCGSubSurf.c index c76f1e6d07d..f5718974f9f 100644 --- a/source/blender/blenkernel/intern/CCGSubSurf.c +++ b/source/blender/blenkernel/intern/CCGSubSurf.c @@ -282,7 +282,7 @@ static int VertDataEqual(const float *a, const float *b) #define VertDataCopy(av, bv) { float *_a = (float *)av, *_b = (float *) bv; _a[0] = _b[0]; _a[1] = _b[1]; _a[2] = _b[2]; } #define VertDataAdd(av, bv) { float *_a = (float *)av, *_b = (float *) bv; _a[0] += _b[0]; _a[1] += _b[1]; _a[2] += _b[2]; } #define VertDataSub(av, bv) { float *_a = (float *)av, *_b = (float *) bv; _a[0] -= _b[0]; _a[1] -= _b[1]; _a[2] -= _b[2]; } -#define VertDataMulN(av, n) { float *_a = (float *)av; _a[0] *= n; _a[1] *= n; _a[2] *= n; } +#define VertDataMulN(av, n) { float *_a = (float *)av; float _n = n; _a[0] *= _n; _a[1] *= _n; _a[2] *= _n; } #define VertDataAvg4(tv, av, bv, cv, dv) \ { \ float *_t = (float *) tv, *_a = (float *) av, *_b = (float *) bv, *_c = (float *) cv, *_d = (float *) dv; \ |