blender/intern
Sergey Sharybin 0d01cf4488 Cycles: Extra tweaks to performance of header expansion
Two main things here:

1. Replace all unsafe for #line directive characters into a single loop,
   avoiding multiple iterations and multiple temporary strings created.

2. Don't merge token char by char but calculate start and end point and
   then copy all substring at once.

This gives about 15% speedup of source processing time. At this point
(with all previous commits from today) we've shrinked down compiled
sources size from 108 MB down to ~5.5 MB and lowered processing time
from 4.5 sec down to 0.047 sec on my laptop running Linux (this was a
constant time which Blender will always spent first time loading kernel,
even if we've got compiled clbin).
2017-08-03 08:07:06 +02:00
..
atomic Cleanup: remove check for old GCC&PPC 2017-07-27 07:29:16 +10:00
audaspace Audaspace: Don't use strict flags 2017-05-30 10:58:12 +02:00
container Remove SCons building system 2016-01-04 14:20:48 +05:00
cycles Cycles: Extra tweaks to performance of header expansion 2017-08-03 08:07:06 +02:00
decklink Cleanup: code style & cmake 2017-03-12 02:47:53 +11:00
dualcon Remove MinGW support 2017-05-27 15:34:55 -04:00
eigen Remove SCons building system 2016-01-04 14:20:48 +05:00
elbeem Fix T51759: fluid simulation particles not remoevd when colliding with outflow objects. 2017-07-02 22:42:08 +02:00
ffmpeg Fix T51153: Video duration is detected wrong after FFmpeg update 2017-05-12 16:43:36 +02:00
ghost Fix T51948: pen pressure not detected with some Wacom tablets. 2017-07-24 13:54:36 +02:00
glew-mx Remove SCons building system 2016-01-04 14:20:48 +05:00
gpudirect Cleanup: comment blocks 2016-07-02 10:08:33 +10:00
guardedalloc Guarded allocator: Fix type in macro definition 2017-06-17 16:13:30 +02:00
iksolver FIX T49899: Add EIGEN_MAKE_ALIGNED_OPERATOR_NEW to classes that use eigen's data types , to force aligned on 16 byte boundaries. 2016-11-15 13:21:01 -07:00
itasc Cleanup: Reduce amount of misleading indentation 2016-09-01 12:14:16 +02:00
libmv Fix T51980: Motion Tracking - png image files appear in the Blender program directory when using refine 2017-07-07 09:27:24 +02:00
locale Add C internal version of msgfmt (similar to makesrna/dna binaries). 2017-04-24 10:49:54 +02:00
memutil Cleanup: doxygen comments 2017-06-19 10:04:30 +10:00
mikktspace mikktspace: minor optimization 2017-08-03 07:03:59 +10:00
moto BGE: Various render improvements. 2016-06-11 22:05:20 +02:00
opencolorio Remove MinGW support 2017-05-27 15:34:55 -04:00
opensubdiv Opensubdiv: Fix compilation error with older Opensubdiv versions 2017-07-11 11:05:39 +02:00
openvdb Fix T48236: OpenVDB smoke cache glitches out with smokeless flames. 2016-04-22 11:46:02 +02:00
rigidbody Remove SCons building system 2016-01-04 14:20:48 +05:00
smoke Cleanup: Strict CLang warning in Smoke module 2017-01-09 13:12:43 +01:00
string CMake: Use GCC7's -Wimplicit-fallthrough=5 2017-05-20 14:01:03 +10:00
utfconv C++ conformance fixes (MSVC /permissive-) 2017-02-06 10:44:56 +01:00
CMakeLists.txt Cleanup: code style & cmake 2017-03-12 02:47:53 +11:00