raze/polymer/eduke32
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
..
Apple JFDuke3D port: OS X Startup Window, copied almost verbatim 2012-03-04 09:30:27 +00:00
build Optimization of C replacements of basic texture mapping functions, part 1 2012-03-04 20:12:30 +00:00
eobj
eobj_win
installer
obj
obj_win
psd Add the source .psd files for the EDuke32 logo and program icon to the repository. Though they are .psd, they are effectively vector because they utilize paths. 2012-02-25 02:57:59 +00:00
rsrc cosmetic: 2012-02-25 02:57:25 +00:00
samples Update samples/trueror1.map with some tests of sprites lying on TROR floors. 2012-02-16 19:25:56 +00:00
source Add APPLE_FRAMEWORKS Makefile variable which can be passed to the make invocation. 2012-03-04 09:31:37 +00:00
Windows Remove four self-assignments in backtrace.c that were added to avoid an unused parameter warning and add ATTRIBUTE((unused)) to the implicated parameters so they will not trigger the warning because they could not be removed. 2012-03-04 09:31:02 +00:00
backtrace.dll Pull in backtrace.c (pre-compiled as backtrace.dll and MinGW dependencies) from http://code.google.com/p/backtrace-mingw. When running debugging snapshots, this will print out a helpful backtrace in eduke32.crashlog. I had to disable stack protectors for debug builds as this was pulling in a dependency that I assume most people won't have. If anyone feels like merging that code into EDuke32 itself and find a way to remove the ugly libintl dependencies, be my guest. In the meantime, sorry for the awful commit. 2010-10-19 05:42:21 +00:00
buildlic.txt
ChangeLog
ChangeLog.html
eduke32.sln Source code "cleanup," herein referred to as "rape" 2010-05-02 23:27:30 +00:00
eduke32.vcproj Very few actual changes... mostly formatting fixes from astyle 2010-01-23 22:12:02 +00:00
eduke32.vcxproj Multiplayer improvements 2011-02-25 21:50:19 +00:00
eduke32.vcxproj.filters Multiplayer improvements 2011-02-25 21:50:19 +00:00
eduke32.vcxproj.user Source code "cleanup," herein referred to as "rape" 2010-05-02 23:27:30 +00:00
GNU.TXT
libiconv2.dll Pull in backtrace.c (pre-compiled as backtrace.dll and MinGW dependencies) from http://code.google.com/p/backtrace-mingw. When running debugging snapshots, this will print out a helpful backtrace in eduke32.crashlog. I had to disable stack protectors for debug builds as this was pulling in a dependency that I assume most people won't have. If anyone feels like merging that code into EDuke32 itself and find a way to remove the ugly libintl dependencies, be my guest. In the meantime, sorry for the awful commit. 2010-10-19 05:42:21 +00:00
libintl3.dll Pull in backtrace.c (pre-compiled as backtrace.dll and MinGW dependencies) from http://code.google.com/p/backtrace-mingw. When running debugging snapshots, this will print out a helpful backtrace in eduke32.crashlog. I had to disable stack protectors for debug builds as this was pulling in a dependency that I assume most people won't have. If anyone feels like merging that code into EDuke32 itself and find a way to remove the ugly libintl dependencies, be my guest. In the meantime, sorry for the awful commit. 2010-10-19 05:42:21 +00:00
m32help.hlp * Lazy hightile loading in Mapster32 tile selector (first display all as lowtiles, then load each one while allowing movement) 2011-03-23 17:41:01 +00:00
MakeDistributions Source code "cleanup," herein referred to as "rape" 2010-05-02 23:27:30 +00:00
Makefile Under Mac OS X, look for libvpx in /usr/local to add support for Homebrew in addition to MacPorts. 2012-03-04 09:32:57 +00:00
Makefile.common Add APPLE_FRAMEWORKS Makefile variable which can be passed to the make invocation. 2012-03-04 09:31:37 +00:00
Makefile.deps First Lunatic development bits. 2011-09-20 19:12:24 +00:00
Makefile.msvc Consolidate POLYMOST preprocessor define into USE_OPENGL, remove SUPERBUILD preprocessor define, add additional mode to neartag() to skip sprite searches and speed up processing (and enable for CON_OPERATE), fix issue with nearby single instance sounds not playing due to out of range sounds blocking their playback, fix issue with settings.cfg being reset to default bindings when running a mod that specifies its own cfg base name, improve CON structure member interface read/write performance, fix a bug with CON "move" pointer validation 2011-03-04 08:50:58 +00:00
names.h add two tile labels which Todd forgot to move from GAME.CON to DEFS.CON and therefore did not make it to names.h 2011-08-20 23:27:46 +00:00
nedmalloc.dll Rebuild nedmalloc.dll using newest git sources 2012-02-19 04:07:14 +00:00
osxbuild.sh synthesis.sh: 2012-03-04 09:33:23 +00:00
SEHELP.HLP Global thermonuclear code rape 2010-08-02 08:13:51 +00:00
STHELP.HLP Global thermonuclear code rape 2010-08-02 08:13:51 +00:00
tiles.cfg move tiles.cfg out of eduke32/samples/ into eduke32/ and update synthesis.sh to reflect that 2011-07-28 21:12:02 +00:00