raze-gles/polymer/eduke32/build/src
helixhorned 792ac2fdf0 Optimization of C replacements of basic texture mapping functions, part 1
Affected functions: hlineasm4, vlineasm1, mvlineasm1, tvlineasm1.

Optimizations:
 - declare all used variables as possibly const-qualified locals in each
   function. This removes unnecessary loads from memory in the loops.
 - rewrite "for (; cnt>=0; cnt--) {...}" to "cnt++; do {...} while (--cnt);"
   in the three last ones (yes, these function iterate cnt+1 times). This
   makes them functionally equivalent to the asm versions (madness ensues for
   cnt < 0) and allows the compiler to remove one 'test' instruction at the
   end of each loop.
 - in the translucence function, replace addition by ORing

Observations (system: Core2 Duo Linux x86_64):
 With a 1680x1050 window fully covered by the respective type of wall (simple,
 masked, trans. masked), fps increases by 3-4 from the baseline of approx. 60.

git-svn-id: https://svn.eduke32.com/eduke32@2405 1a8010ca-5511-0410-912e-c29ae57300e0
2012-03-04 20:12:30 +00:00
..
misc Moved build to a subdir underneath the eduke32 dir to avoid people trying to compile from the build src dir by mistake 2008-10-20 03:09:19 +00:00
tmp Moved build to a subdir underneath the eduke32 dir to avoid people trying to compile from the build src dir by mistake 2008-10-20 03:09:19 +00:00
util More utils tweaks. 2012-03-04 20:12:15 +00:00
a-c.c Optimization of C replacements of basic texture mapping functions, part 1 2012-03-04 20:12:30 +00:00
a.masm Source code "cleanup," herein referred to as "rape" 2010-05-02 23:27:30 +00:00
a.nasm Moved build to a subdir underneath the eduke32 dir to avoid people trying to compile from the build src dir by mistake 2008-10-20 03:09:19 +00:00
a.wasm Moved build to a subdir underneath the eduke32 dir to avoid people trying to compile from the build src dir by mistake 2008-10-20 03:09:19 +00:00
baselayer.c trivial tweaks: make stuff static, remove unused stuff, formatting... 2012-01-19 21:57:22 +00:00
build.c JFDuke3D port: OS X Startup Window, copied almost verbatim 2012-03-04 09:30:27 +00:00
cache1d.c cache1d.c: more meaning-preserving transformations, patch up one oob access. 2012-02-20 19:52:53 +00:00
compat.c Define Batoi/Batol to strtol(...) in compat.h and use these when necessary. 2012-02-20 21:17:39 +00:00
config.c Mapster32: new cfg var 'glusememcache', the same as r_memcache cvar. 2011-12-03 13:13:28 +00:00
crc32.c A bunch of multiplayer improvements 2009-12-14 05:23:29 +00:00
defs.c Two tweaks for USE_OPENGL=0 builds. 2012-01-27 15:03:18 +00:00
dynamicgtk.c Make the "Start" button of the GTK start-up window the default button of the window, which means pressing Enter now works at you'd expect. 2010-07-02 01:26:56 +00:00
engine.c Make 'dommxoverlay' and 'beforedrawrooms' static in engine.c. 2012-02-27 19:40:28 +00:00
engine_priv.h engine.c cleanup, making some variables static mostly 2012-01-26 21:58:08 +00:00
glbuild.c fix osx build: looks like it doesn't have the GL debugging functions 2011-10-11 16:52:53 +00:00
gtkbits.c git-svn-id: https://svn.eduke32.com/eduke32@1206 1a8010ca-5511-0410-912e-c29ae57300e0 2009-01-10 07:38:50 +00:00
hightile.c Fix mapster's command-line parsing and copy over some of the 'custom mod dir' logic, currently used in the sound board to also find files outside of GRPs. 2011-06-16 19:39:22 +00:00
kplib.c kplib.c without asm: I see an uninitialized access here, valgrind does not? 2012-01-28 14:37:08 +00:00
lzwnew.c Memory cleanups, use Bm/c/realloc/free everywhere (configured as nedmalloc version in compat.h), add large page support for Vista/7, tweak nedmalloc settings, add support for projecting textures from SE50 spotlights placed in maps via sprite owner member (manipulated through CONs via sprite htpicnum member), fix building Mapster32 with MSVC, increase PR_MAXLIGHTS to 1024 2009-10-07 06:47:35 +00:00
md4.c md4.c/h: add consts to appropriate arguments 2012-01-10 23:45:08 +00:00
mdsprite.c Remix mdsprite.c's updateanimation() to look prettier and clearer. 2012-02-13 21:37:46 +00:00
mutex.c Source code "cleanup," herein referred to as "rape" 2010-05-02 23:27:30 +00:00
nedmalloc.c fix some issues with compilation on mac osx; make B, N, M keys behave the same as KP1, KP2, KP3 when pointing at a polymer light (hack around keyboard strangeness) 2011-02-06 22:57:32 +00:00
osd.c Define Batoi/Batol to strtol(...) in compat.h and use these when necessary. 2012-02-20 21:17:39 +00:00
osxbits.m Moved build to a subdir underneath the eduke32 dir to avoid people trying to compile from the build src dir by mistake 2008-10-20 03:09:19 +00:00
polymer.c constify various cache1d and pragmas functions, some copybuf* -> memcpy/move. 2012-02-18 22:14:45 +00:00
polymost.c Define Batoi/Batol to strtol(...) in compat.h and use these when necessary. 2012-02-20 21:17:39 +00:00
pragmas.c constify various cache1d and pragmas functions, some copybuf* -> memcpy/move. 2012-02-18 22:14:45 +00:00
quicklz.c Run engine source through new version of astyle, add printf() call to OSD_Printf() to facilitate console access through stdin/stdout for dedicated server mode, minor changes to sdlayer to allow operating without actually initializing SDL 2011-01-16 02:50:27 +00:00
rawinput.c Make 5th mouse button functional in Windows. 2012-02-13 21:38:16 +00:00
scriptfile.c a couple more trivial tweaks 2012-01-10 23:45:34 +00:00
sdlayer.c Fix zero-size calloc when enumerating a joystick with no hats in SDL. 2012-02-11 11:51:34 +00:00
smalltextfont.c Moved build to a subdir underneath the eduke32 dir to avoid people trying to compile from the build src dir by mistake 2008-10-20 03:09:19 +00:00
startgtk.editor.c Patch from bioman to fix an issue with static linking GTK and to correct the alignment of the fullscreen checkbox in the startup window when building with POLYMER=0 2011-01-31 04:13:53 +00:00
StartupWinController.editor.m Moved build to a subdir underneath the eduke32 dir to avoid people trying to compile from the build src dir by mistake 2008-10-20 03:09:19 +00:00
startwin.editor.c Run engine source through new version of astyle, add printf() call to OSD_Printf() to facilitate console access through stdin/stdout for dedicated server mode, minor changes to sdlayer to allow operating without actually initializing SDL 2011-01-16 02:50:27 +00:00
textfont.c Run engine source through new version of astyle, add printf() call to OSD_Printf() to facilitate console access through stdin/stdout for dedicated server mode, minor changes to sdlayer to allow operating without actually initializing SDL 2011-01-16 02:50:27 +00:00
winlayer.c Fix zero-size calloc when enumerating a joystick with no hats in Windows. 2012-02-09 22:43:21 +00:00