Sat, 30 Jan 2021 13:55:25 -0500 spirv: Work around OpLogicalNot being unsupported for ints default tip
Ethan Lee <flibitijibibo@flibitijibibo.com> [Sat, 30 Jan 2021 13:55:25 -0500] rev 1321
spirv: Work around OpLogicalNot being unsupported for ints
Sun, 10 Jan 2021 15:02:29 -0500 glsl: Move misc face/position variables to after main, fixes ES3 compatibility
Ethan Lee <flibitijibibo@flibitijibibo.com> [Sun, 10 Jan 2021 15:02:29 -0500] rev 1320
glsl: Move misc face/position variables to after main, fixes ES3 compatibility
Thu, 31 Dec 2020 15:56:57 -0500 glsl: Fix support for PSIZE1 and up
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 31 Dec 2020 15:56:57 -0500] rev 1319
glsl: Fix support for PSIZE1 and up
Wed, 11 Nov 2020 15:09:32 -0500 spirv: Fix PointCoord input using vec4 instead of vec2
Martin Krošlák <kroslakma@gmail.com> [Wed, 11 Nov 2020 15:09:32 -0500] rev 1318
spirv: Fix PointCoord input using vec4 instead of vec2
Tue, 10 Nov 2020 19:17:45 -0500 Replace SWAPDBL loop with memcpy, fixes MinGW Win64
Ethan Lee <flibitijibibo@flibitijibibo.com> [Tue, 10 Nov 2020 19:17:45 -0500] rev 1317
Replace SWAPDBL loop with memcpy, fixes MinGW Win64
Fri, 23 Oct 2020 23:35:41 -0400 Fix caller-defined swizzles for Shader Model 1 shaders.
Ryan C. Gordon <icculus@icculus.org> [Fri, 23 Oct 2020 23:35:41 -0400] rev 1316
Fix caller-defined swizzles for Shader Model 1 shaders.
Thu, 22 Oct 2020 10:57:02 -0400 vulkan: Decouple block size from block increment
Evan Hemsley <evan@moonside.games> [Thu, 22 Oct 2020 10:57:02 -0400] rev 1315
vulkan: Decouple block size from block increment
Thu, 15 Oct 2020 01:17:45 -0400 D3D11: Increase bool uniform buffer size (thanks @jeffphilp!)
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 15 Oct 2020 01:17:45 -0400] rev 1314
D3D11: Increase bool uniform buffer size (thanks @jeffphilp!)
Thu, 15 Oct 2020 01:03:56 -0400 Missed an increment...
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 15 Oct 2020 01:03:56 -0400] rev 1313
Missed an increment...
Thu, 15 Oct 2020 00:57:03 -0400 D3D11: bool constants are stored as int4 (thanks @jeffphilp!)
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 15 Oct 2020 00:57:03 -0400] rev 1312
D3D11: bool constants are stored as int4 (thanks @jeffphilp!)
Wed, 14 Oct 2020 16:43:03 -0400 opengl: Don't assert if vs_flip_loc == -1.
Ryan C. Gordon <icculus@icculus.org> [Wed, 14 Oct 2020 16:43:03 -0400] rev 1311
opengl: Don't assert if vs_flip_loc == -1. This can be -1 if the GLSL compiler removed it, or if you bound a program without a vertex shader at all.
Tue, 13 Oct 2020 01:23:44 -0400 glsl: better fix for incorrect SM1.1 defines.
Ryan C. Gordon <icculus@icculus.org> [Tue, 13 Oct 2020 01:23:44 -0400] rev 1310
glsl: better fix for incorrect SM1.1 defines.
Tue, 13 Oct 2020 01:23:19 -0400 Make sure attribute registers are declared correctly in weird SM1 case.
Ryan C. Gordon <icculus@icculus.org> [Tue, 13 Oct 2020 01:23:19 -0400] rev 1309
Make sure attribute registers are declared correctly in weird SM1 case.
Tue, 13 Oct 2020 01:03:20 -0400 glsl: for SM1.1, don't add incorrect gl_TexCoord defines.
Ryan C. Gordon <icculus@icculus.org> [Tue, 13 Oct 2020 01:03:20 -0400] rev 1308
glsl: for SM1.1, don't add incorrect gl_TexCoord defines. We handled this elsewhere.
Tue, 13 Oct 2020 01:02:07 -0400 utils: Added testglcompile.c, to see if the GL accepts our generated shaders.
Ryan C. Gordon <icculus@icculus.org> [Tue, 13 Oct 2020 01:02:07 -0400] rev 1307
utils: Added testglcompile.c, to see if the GL accepts our generated shaders.
Mon, 12 Oct 2020 15:33:01 -0400 assembler: Don't lose the TEXBEM opcode in the special ps_1_1 TEX detection.
Ryan C. Gordon <icculus@icculus.org> [Mon, 12 Oct 2020 15:33:01 -0400] rev 1306
assembler: Don't lose the TEXBEM opcode in the special ps_1_1 TEX detection.
Fri, 02 Oct 2020 14:48:29 -0400 d3d11: Fix possible leaks after compiling shaders
Ethan Lee <flibitijibibo@flibitijibibo.com> [Fri, 02 Oct 2020 14:48:29 -0400] rev 1305
d3d11: Fix possible leaks after compiling shaders
Wed, 30 Sep 2020 22:51:53 -0400 vulkan: Add support for multithreaded UBOs
Evan Hemsley <evan@moonside.games> [Wed, 30 Sep 2020 22:51:53 -0400] rev 1304
vulkan: Add support for multithreaded UBOs
Sun, 30 Aug 2020 21:35:31 -0400 spirv: Separate pixel shader outputs from inputs, fix linker accordingly
Ethan Lee <flibitijibibo@flibitijibibo.com> [Sun, 30 Aug 2020 21:35:31 -0400] rev 1303
spirv: Separate pixel shader outputs from inputs, fix linker accordingly
Thu, 27 Aug 2020 17:18:38 -0400 vulkan: Fix overlapping pixel/vertex shaders where one shader is NULL
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 27 Aug 2020 17:18:38 -0400] rev 1302
vulkan: Fix overlapping pixel/vertex shaders where one shader is NULL
Wed, 26 Aug 2020 14:37:18 -0400 Write locations for SPIR-V pixel shader outputs
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 26 Aug 2020 14:37:18 -0400] rev 1301
Write locations for SPIR-V pixel shader outputs
Tue, 25 Aug 2020 22:41:43 -0400 Handle MOJOSHADER_USAGE_UNKNOWN in SPIR-V linker
Ethan Lee <flibitijibibo@flibitijibibo.com> [Tue, 25 Aug 2020 22:41:43 -0400] rev 1300
Handle MOJOSHADER_USAGE_UNKNOWN in SPIR-V linker
Thu, 23 Jul 2020 18:16:22 -0400 Fix SM1 shaders on SPIR-V after TEX* opcodes changes:
Martin Krošlák <kroslakma@gmail.com> [Thu, 23 Jul 2020 18:16:22 -0400] rev 1299
Fix SM1 shaders on SPIR-V after TEX* opcodes changes: - Fix implicit input attribute on SPIR-V profile - Remove texcoord attribs from other TEX* opcodes
Thu, 23 Jul 2020 05:12:09 -0400 assembler: set the default source arg swizzle to the correct value.
Ryan C. Gordon <icculus@icculus.org> [Thu, 23 Jul 2020 05:12:09 -0400] rev 1298
assembler: set the default source arg swizzle to the correct value.
Mon, 20 Jul 2020 20:07:44 -0400 metal: Fix RCP and RSQ output to match GLSL.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 20:07:44 -0400] rev 1297
metal: Fix RCP and RSQ output to match GLSL.
Mon, 20 Jul 2020 20:07:06 -0400 d3d11: Only build the D3D11 glue code on Windows.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 20:07:06 -0400] rev 1296
d3d11: Only build the D3D11 glue code on Windows.
Mon, 20 Jul 2020 20:06:34 -0400 cmake: build the HLSL profile by default.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 20:06:34 -0400] rev 1295
cmake: build the HLSL profile by default.
Mon, 20 Jul 2020 19:24:46 -0400 Rebuilt the lexer with a much newer re2c.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 19:24:46 -0400] rev 1294
Rebuilt the lexer with a much newer re2c.
Mon, 20 Jul 2020 19:22:41 -0400 glsl: Correct RCP and RSQ output.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 19:22:41 -0400] rev 1293
glsl: Correct RCP and RSQ output.
Mon, 20 Jul 2020 19:02:27 -0400 glsl: Fix compiler warning.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 19:02:27 -0400] rev 1292
glsl: Fix compiler warning.
Mon, 20 Jul 2020 18:53:54 -0400 RSQ opcode requires replicate swizzle.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 18:53:54 -0400] rev 1291
RSQ opcode requires replicate swizzle.
Mon, 20 Jul 2020 16:14:43 -0400 The assembler needs to accept an implicit ".x" swizzle on RCP's source arg.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 16:14:43 -0400] rev 1290
The assembler needs to accept an implicit ".x" swizzle on RCP's source arg.
Mon, 20 Jul 2020 15:37:27 -0400 Minor replicate_swizzle optimization.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 15:37:27 -0400] rev 1289
Minor replicate_swizzle optimization. Do it in two tests instead of three, and with two shifts instead of five.
Mon, 20 Jul 2020 15:35:34 -0400 Clean up assembler writemask parsing a little.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 15:35:34 -0400] rev 1288
Clean up assembler writemask parsing a little.
Mon, 20 Jul 2020 15:18:14 -0400 List default writemasks for instructions.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 15:18:14 -0400] rev 1287
List default writemasks for instructions. This lets this line of assembly generate correct code: m3x3 r7, r4, c28 As this is legal, but the bytecode validator will throw it out for having a writemask of .xyzw on r7 when it requires .xyz. The assembler needs to know what the implicit writemask should be in this circumstance. (Some instructions might still be incorrect, but are left at the default of a full .xyzw writemask, so they continue to act as before until corrected.)
Mon, 20 Jul 2020 15:14:32 -0400 Fixed typo in error message.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 15:14:32 -0400] rev 1286
Fixed typo in error message.
Mon, 20 Jul 2020 14:54:14 -0400 Assembler now accepts "c[5]" as equivalent to "c5".
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 14:54:14 -0400] rev 1285
Assembler now accepts "c[5]" as equivalent to "c5". This only accepts a constant integers, you can't currently do something like "c[2+3]" even if the constants could be completely folded during assembly. I don't know if Microsoft's tools allow that, will have to revisit later if so.
Mon, 20 Jul 2020 14:52:00 -0400 Assembler now deals with scalar registers specifying a write mask better.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 14:52:00 -0400] rev 1284
Assembler now deals with scalar registers specifying a write mask better.
Mon, 20 Jul 2020 14:51:03 -0400 Don't make the MOJOSHADER_DO_INSTRUCTION_TABLE caller undef everything after.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 14:51:03 -0400] rev 1283
Don't make the MOJOSHADER_DO_INSTRUCTION_TABLE caller undef everything after.
Mon, 20 Jul 2020 14:50:10 -0400 For SM1.1 TEX, don't add texcoord attributes.
Ryan C. Gordon <icculus@icculus.org> [Mon, 20 Jul 2020 14:50:10 -0400] rev 1282
For SM1.1 TEX, don't add texcoord attributes. Other parts of the system will generate the tX registers as global variables, assign gl_TexCoord[X] to them, and overwrite them with the sampled pixels during the TEX instruction. Setting these as texcoord attributes causes it to _also_ generate a generic vertex attribute and cause all sorts of problems.
Sun, 19 Jul 2020 23:44:13 -0400 Correct the reported usage on SM1 vertex shader input registers.
Ryan C. Gordon <icculus@icculus.org> [Sun, 19 Jul 2020 23:44:13 -0400] rev 1281
Correct the reported usage on SM1 vertex shader input registers. They are hardcoded to mean specific things (v0 is POSITION0, v1 is BLENDWEIGHT, etc).
Tue, 07 Jul 2020 21:00:14 -0400 VS2010 buildfix
Caleb Cornett <caleb.cornett@outlook.com> [Tue, 07 Jul 2020 21:00:14 -0400] rev 1280
VS2010 buildfix
Tue, 07 Jul 2020 19:25:47 -0400 Metal uniform buffer overhaul.
Caleb Cornett <caleb.cornett@outlook.com> [Tue, 07 Jul 2020 19:25:47 -0400] rev 1279
Metal uniform buffer overhaul. 1. Metal now uses a single, ~1MB uniform buffer per frame that is shared among all shaders. From my testing this should be more than enough room for the FNA catalog (aside from possibly Little Racers Street with its memory leak). This is a major boon for Metal memory management since it only requires one buffer instead of 3,000 (in LRS's case)! And it simplifies the internal workings of mojoshader_metal dramatically. 2. Metal now has a MOJOSHADER_mtlMakeContextCurrent API to match GL and Vulkan. Other parts of the context API have been rewritten as well to match the behavior you'd expect. 3. The MOJOSHADER_mtlGetUniformBuffers function has been replaced with MOJOSHADER_mtlGetUniformData. Now that we only use a single uniform buffer, there's no need to return one for each of the shaders. 4. The MOJOSHADER_mtlGetFunctionHandle function no longer allocates memory. Instead, all MTLFunction handles are cached in the MOJOSHADER_mtlShader structs at library creation time. This removes the burden of memory management from the user. 5. A variety of formatting and documentation updates.
Tue, 07 Jul 2020 17:44:32 -0400 spirv: Fix bogus detection of PSIZE0
Ethan Lee <flibitijibibo@flibitijibibo.com> [Tue, 07 Jul 2020 17:44:32 -0400] rev 1278
spirv: Fix bogus detection of PSIZE0
Tue, 07 Jul 2020 17:19:45 -0400 Add dynamic linking support for SPIR-V modules
Ethan Lee <flibitijibibo@flibitijibibo.com> [Tue, 07 Jul 2020 17:19:45 -0400] rev 1277
Add dynamic linking support for SPIR-V modules
Mon, 06 Jul 2020 16:23:06 -0400 vulkan: Rework UBO allocation to use a single monolithic buffer
Evan Hemsley <evan@moonside.games> [Mon, 06 Jul 2020 16:23:06 -0400] rev 1276
vulkan: Rework UBO allocation to use a single monolithic buffer
Mon, 06 Jul 2020 12:51:28 -0400 vulkan: Fix uniform buffer copies for bools
Ethan Lee <flibitijibibo@flibitijibibo.com> [Mon, 06 Jul 2020 12:51:28 -0400] rev 1275
vulkan: Fix uniform buffer copies for bools
Fri, 03 Jul 2020 10:43:01 -0400 spirv: Fix support for FOG1
Martin Krošlák <kroslakma@gmail.com> [Fri, 03 Jul 2020 10:43:01 -0400] rev 1274
spirv: Fix support for FOG1
Thu, 02 Jul 2020 18:08:57 -0400 spirv: Fix texcoord use before load
Martin Krošlák <kroslakma@gmail.com> [Thu, 02 Jul 2020 18:08:57 -0400] rev 1273
spirv: Fix texcoord use before load
Thu, 02 Jul 2020 18:08:02 -0400 Fix include path for vulkan.h
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 02 Jul 2020 18:08:02 -0400] rev 1272
Fix include path for vulkan.h
Wed, 01 Jul 2020 04:29:09 -0400 Add support for Vulkan rendering.
Evan Hemsley <evan@moonside.games> [Wed, 01 Jul 2020 04:29:09 -0400] rev 1271
Add support for Vulkan rendering. Co-authors include: - Caleb Cornett <caleb.cornett@outlook.com> - Martin Krošlák <kroslakma@gmail.com> - Ethan Lee <flibitijibibo@flibitijibibo.com>
Thu, 25 Jun 2020 10:35:29 -0400 Add getError to effectShaderContext
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 25 Jun 2020 10:35:29 -0400] rev 1270
Add getError to effectShaderContext
Thu, 25 Jun 2020 10:10:52 -0400 Improve error handling in Effect implementation
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 25 Jun 2020 10:10:52 -0400] rev 1269
Improve error handling in Effect implementation
Wed, 24 Jun 2020 21:13:32 -0400 spirv: Fix asserts for pixel shader POSITION/PSIZE lengths
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 24 Jun 2020 21:13:32 -0400] rev 1268
spirv: Fix asserts for pixel shader POSITION/PSIZE lengths
Wed, 24 Jun 2020 21:02:33 -0400 spirv: Rework attrib offset/length organization
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 24 Jun 2020 21:02:33 -0400] rev 1267
spirv: Rework attrib offset/length organization
Wed, 24 Jun 2020 14:19:46 -0400 Note the usage index range for MOJOSHADER_usage enum
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 24 Jun 2020 14:19:46 -0400] rev 1266
Note the usage index range for MOJOSHADER_usage enum
Wed, 24 Jun 2020 14:19:28 -0400 spirv: Fix support for POSITION1+
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 24 Jun 2020 14:19:28 -0400] rev 1265
spirv: Fix support for POSITION1+
Wed, 24 Jun 2020 14:17:58 -0400 spirv: Have separate VPOS paths for GL/VK
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 24 Jun 2020 14:17:58 -0400] rev 1264
spirv: Have separate VPOS paths for GL/VK
Wed, 24 Jun 2020 12:45:53 -0400 spirv: Allow COLOR usages to go up to 4, not just 2
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 24 Jun 2020 12:45:53 -0400] rev 1263
spirv: Allow COLOR usages to go up to 4, not just 2
Wed, 24 Jun 2020 09:57:00 -0400 Disable D3D11 HLSL optimizations, as they break program behavior
Caleb Cornett <caleb.cornett@outlook.com> [Wed, 24 Jun 2020 09:57:00 -0400] rev 1262
Disable D3D11 HLSL optimizations, as they break program behavior
Wed, 03 Jun 2020 10:58:37 -0400 Fix vertex sampler reserved mask for 3D/cube textures
Bart van der Werf <bluelive@gmail.com> [Wed, 03 Jun 2020 10:58:37 -0400] rev 1261
Fix vertex sampler reserved mask for 3D/cube textures
Tue, 26 May 2020 08:08:52 -0400 Undo SPIR-V vpFlip changes (use KHR_maintenance1 instead)
Ethan Lee <flibitijibibo@flibitijibibo.com> [Tue, 26 May 2020 08:08:52 -0400] rev 1260
Undo SPIR-V vpFlip changes (use KHR_maintenance1 instead)
Mon, 25 May 2020 21:43:12 -0400 Copypaste error fix
Ethan Lee <flibitijibibo@flibitijibibo.com> [Mon, 25 May 2020 21:43:12 -0400] rev 1259
Copypaste error fix
Mon, 25 May 2020 21:41:31 -0400 Vulkan SPIR-V may want vpFlip as well
Ethan Lee <flibitijibibo@flibitijibibo.com> [Mon, 25 May 2020 21:41:31 -0400] rev 1258
Vulkan SPIR-V may want vpFlip as well
Fri, 22 May 2020 14:17:09 -0400 Include stdlib.h in SDL path, needed by Emscripten
Ethan Lee <flibitijibibo@flibitijibibo.com> [Fri, 22 May 2020 14:17:09 -0400] rev 1257
Include stdlib.h in SDL path, needed by Emscripten
Thu, 21 May 2020 16:33:35 -0400 Fix my typo in the D3D11 docs...
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 21 May 2020 16:33:35 -0400] rev 1256
Fix my typo in the D3D11 docs...
Thu, 21 May 2020 12:00:55 -0400 Implement HLSL emitter, MOJOSHADER_d3d11 API
Caleb Cornett <caleb.cornett@outlook.com> [Thu, 21 May 2020 12:00:55 -0400] rev 1255
Implement HLSL emitter, MOJOSHADER_d3d11 API
Mon, 04 May 2020 09:55:32 -0400 Store pixel shader input attributes, add type data to vertex attributes
Caleb Cornett <caleb.cornett@outlook.com> [Mon, 04 May 2020 09:55:32 -0400] rev 1254
Store pixel shader input attributes, add type data to vertex attributes
Sun, 03 May 2020 09:52:42 +0200 Add descriptor set assignment
Martin Krošlák <kroslakma@gmail.com> [Sun, 03 May 2020 09:52:42 +0200] rev 1253
Add descriptor set assignment
Sat, 02 May 2020 18:29:29 -0400 metal: Set ctx to NULL after free
Caleb Cornett <caleb.cornett@outlook.com> [Sat, 02 May 2020 18:29:29 -0400] rev 1252
metal: Set ctx to NULL after free
Sun, 26 Apr 2020 22:35:13 -0400 Put the vertex sampler offset firmly at TEXTURE16
Ethan Lee <flibitijibibo@flibitijibibo.com> [Sun, 26 Apr 2020 22:35:13 -0400] rev 1251
Put the vertex sampler offset firmly at TEXTURE16
Sun, 26 Apr 2020 10:02:35 -0700 Fix memory leak in mtlDeleteShader
Ethan Lee <flibitijibibo@flibitijibibo.com> [Sun, 26 Apr 2020 10:02:35 -0700] rev 1250
Fix memory leak in mtlDeleteShader
Sat, 25 Apr 2020 14:28:48 -0700 C buildfix
Ethan Lee <flibitijibibo@flibitijibibo.com> [Sat, 25 Apr 2020 14:28:48 -0700] rev 1249
C buildfix
Sat, 25 Apr 2020 09:28:02 +0200 Add uniform block support for vulkan
Martin Krošlák <kroslakma@gmail.com> [Sat, 25 Apr 2020 09:28:02 +0200] rev 1248
Add uniform block support for vulkan
Fri, 24 Apr 2020 09:23:20 -0400 Unused variables
Ethan Lee <flibitijibibo@flibitijibibo.com> [Fri, 24 Apr 2020 09:23:20 -0400] rev 1247
Unused variables
Fri, 24 Apr 2020 09:16:40 -0400 Forgot to commit the new testparse...
Ethan Lee <flibitijibibo@flibitijibibo.com> [Fri, 24 Apr 2020 09:16:40 -0400] rev 1246
Forgot to commit the new testparse...
Fri, 24 Apr 2020 09:13:10 -0400 Major refactor of the Effects API.
Ethan Lee <flibitijibibo@flibitijibibo.com> [Fri, 24 Apr 2020 09:13:10 -0400] rev 1245
Major refactor of the Effects API. The previous API was very GL-specific and had no abstraction at all, meaning new backends had to copypaste WAY too much code just to get started. Additionally, parsing/compiled were separate but still very tightly coupled, to the point where memory leaks in the GL implementation were inevitable. TL;DR: It was crap and nobody liked working with it. The new API provides only a compile function, and moves ALL the effect work to a common implementation. This is done by providing a shader context at compile time, with functions that map almost directly to the existing MojoShader GL API. This is MUCH less work to maintain and add to, to the point where you can see how a parse API is still possible in the updated testparse! It also means new shader backends no longer need to worry about the effects framework so much. The Metal work in this patch was done by Caleb Cornett, as always.
Fri, 24 Apr 2020 09:05:12 -0400 Use __cdecl instead of __stdcall
Ethan Lee <flibitijibibo@flibitijibibo.com> [Fri, 24 Apr 2020 09:05:12 -0400] rev 1244
Use __cdecl instead of __stdcall
Sun, 19 Apr 2020 11:49:16 -0400 Skip Gestalt when min version is 10.5+
Ethan Lee <flibitijibibo@flibitijibibo.com> [Sun, 19 Apr 2020 11:49:16 -0400] rev 1243
Skip Gestalt when min version is 10.5+
Sat, 18 Apr 2020 20:00:35 -0400 Buildfixes for CentOS, MinGW, osxcross
Ethan Lee <flibitijibibo@flibitijibibo.com> [Sat, 18 Apr 2020 20:00:35 -0400] rev 1242
Buildfixes for CentOS, MinGW, osxcross
Mon, 13 Apr 2020 22:14:42 -0400 iOS buildfixes
Caleb Cornett <caleb.cornett@outlook.com> [Mon, 13 Apr 2020 22:14:42 -0400] rev 1241
iOS buildfixes
Fri, 03 Apr 2020 12:40:20 -0400 Expose mtlShaderState to mojoshader_effects.h
Caleb Cornett <caleb.cornett@outlook.com> [Fri, 03 Apr 2020 12:40:20 -0400] rev 1240
Expose mtlShaderState to mojoshader_effects.h
Thu, 02 Apr 2020 15:06:14 -0400 VS2010 SDL_stdlib buildfixes
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 02 Apr 2020 15:06:14 -0400] rev 1239
VS2010 SDL_stdlib buildfixes
Wed, 01 Apr 2020 17:23:22 -0400 A few more stdlib macros for Apple
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 01 Apr 2020 17:23:22 -0400] rev 1238
A few more stdlib macros for Apple
Wed, 01 Apr 2020 17:12:48 -0400 Add MOJOSHADER_USE_SDL_STDLIB, to avoid C runtime dependencies
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 01 Apr 2020 17:12:48 -0400] rev 1237
Add MOJOSHADER_USE_SDL_STDLIB, to avoid C runtime dependencies
Wed, 01 Apr 2020 17:11:09 -0400 Move buffer_find to assembler.c, it isn't actually common
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 01 Apr 2020 17:11:09 -0400] rev 1236
Move buffer_find to assembler.c, it isn't actually common
Wed, 01 Apr 2020 12:13:39 -0400 -Wpedantic fixes
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 01 Apr 2020 12:13:39 -0400] rev 1235
-Wpedantic fixes
Tue, 24 Mar 2020 21:17:37 -0400 VS2010 buildfixes
Caleb Cornett <caleb.cornett@outlook.com> [Tue, 24 Mar 2020 21:17:37 -0400] rev 1234
VS2010 buildfixes
Fri, 21 Feb 2020 00:37:06 -0500 Use CMake built-in BUILD_SHARED_LIBS
Ethan Lee <flibitijibibo@flibitijibibo.com> [Fri, 21 Feb 2020 00:37:06 -0500] rev 1233
Use CMake built-in BUILD_SHARED_LIBS
Mon, 27 Jan 2020 09:27:23 -0500 Better value for max vertex_attrib_loc
Ethan Lee <flibitijibibo@flibitijibibo.com> [Mon, 27 Jan 2020 09:27:23 -0500] rev 1232
Better value for max vertex_attrib_loc
Mon, 27 Jan 2020 09:26:35 -0500 Add FIXME for preshader output registers
Ethan Lee <flibitijibibo@flibitijibibo.com> [Mon, 27 Jan 2020 09:26:35 -0500] rev 1231
Add FIXME for preshader output registers
Sun, 12 Jan 2020 17:26:54 -0500 -lobjc for Metal support
Ethan Lee <flibitijibibo@flibitijibibo.com> [Sun, 12 Jan 2020 17:26:54 -0500] rev 1230
-lobjc for Metal support
Sun, 12 Jan 2020 11:39:49 -0500 Metal Effect support!
Caleb Cornett <caleb.cornett@outlook.com> [Sun, 12 Jan 2020 11:39:49 -0500] rev 1229
Metal Effect support!
Fri, 10 Jan 2020 05:55:05 +0100 Fix SPIR-V FS output locations with MRTs
Martin Krošlák <kroslakma@gmail.com> [Fri, 10 Jan 2020 05:55:05 +0100] rev 1228
Fix SPIR-V FS output locations with MRTs
Thu, 09 Jan 2020 23:22:02 -0500 spv_output_location for COLOR0+ pixel shader output
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 09 Jan 2020 23:22:02 -0500] rev 1227
spv_output_location for COLOR0+ pixel shader output
Wed, 01 Jan 2020 10:58:53 -0500 Happy New Year!
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 01 Jan 2020 10:58:53 -0500] rev 1226
Happy New Year!
Tue, 31 Dec 2019 12:58:06 -0500 Add GLSPIRV profile, to allow for both GL- and VK-friendly SPIR-V output
Ethan Lee <flibitijibibo@flibitijibibo.com> [Tue, 31 Dec 2019 12:58:06 -0500] rev 1225
Add GLSPIRV profile, to allow for both GL- and VK-friendly SPIR-V output
Tue, 31 Dec 2019 12:22:44 -0500 Add support for emitting SPIR-V shaders.
Martin Krošlák <kroslakma@gmail.com> [Tue, 31 Dec 2019 12:22:44 -0500] rev 1224
Add support for emitting SPIR-V shaders. Co-authors include: - Angus Holder <aholder97@gmail.com> - Melker Narikka <meklu@meklu.org> - Caleb Cornett <caleb.cornett@outlook.com> - Ethan Lee <flibitijibibo@flibitijibibo.com>
Fri, 20 Dec 2019 15:52:48 -0500 Various style/redundancy fixes found during SPIR-V work
Martin Krošlák <kroslakma@gmail.com> [Fri, 20 Dec 2019 15:52:48 -0500] rev 1223
Various style/redundancy fixes found during SPIR-V work
Mon, 16 Dec 2019 00:08:35 -0500 MSVC buildfix (also removes redundant ES check)
Caleb Cornett <caleb.cornett@outlook.com> [Mon, 16 Dec 2019 00:08:35 -0500] rev 1222
MSVC buildfix (also removes redundant ES check)
Thu, 05 Dec 2019 12:11:01 -0500 Replicate D3D's div by 0 behavior for RCP/RSQ (GLSL Edition)
Caleb Cornett <caleb.cornett@outlook.com> [Thu, 05 Dec 2019 12:11:01 -0500] rev 1221
Replicate D3D's div by 0 behavior for RCP/RSQ (GLSL Edition)
Fri, 29 Nov 2019 15:41:54 -0500 Fix point_size type for MSL
Caleb Cornett <caleb.cornett@outlook.com> [Fri, 29 Nov 2019 15:41:54 -0500] rev 1220
Fix point_size type for MSL
Mon, 25 Nov 2019 20:21:41 -0500 Replicate D3D's div by 0 behavior for RCP/RSQ
Caleb Cornett <caleb.cornett@outlook.com> [Mon, 25 Nov 2019 20:21:41 -0500] rev 1219
Replicate D3D's div by 0 behavior for RCP/RSQ
Sat, 23 Nov 2019 21:54:01 -0500 Copy mainfn when duplicating parsedata
Caleb Cornett <caleb.cornett@outlook.com> [Sat, 23 Nov 2019 21:54:01 -0500] rev 1218
Copy mainfn when duplicating parsedata
Wed, 20 Nov 2019 13:36:32 -0500 Handle MOJOSHADER_USAGE_NORMAL in Metal profile
Caleb Cornett <caleb.cornett@outlook.com> [Wed, 20 Nov 2019 13:36:32 -0500] rev 1217
Handle MOJOSHADER_USAGE_NORMAL in Metal profile
Wed, 30 Oct 2019 00:29:02 -0400 USAGE_FOG is a float, not a vec4
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 30 Oct 2019 00:29:02 -0400] rev 1216
USAGE_FOG is a float, not a vec4
Tue, 29 Oct 2019 16:31:56 -0400 Fix USAGE_FOG for glsles, index values > 0
Ethan Lee <flibitijibibo@flibitijibibo.com> [Tue, 29 Oct 2019 16:31:56 -0400] rev 1215
Fix USAGE_FOG for glsles, index values > 0
Sun, 25 Aug 2019 13:00:18 -0400 Follow texture2DLod/ARB_shader_texture_lod spec more aggressively
Ethan Lee <flibitijibibo@flibitijibibo.com> [Sun, 25 Aug 2019 13:00:18 -0400] rev 1214
Follow texture2DLod/ARB_shader_texture_lod spec more aggressively
Wed, 21 Aug 2019 10:14:07 -0400 Split up glsl_texld, dramatically simplifies texldd/texldl
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 21 Aug 2019 10:14:07 -0400] rev 1213
Split up glsl_texld, dramatically simplifies texldd/texldl
Wed, 21 Aug 2019 09:30:54 -0400 GLSL: Implement texldl instruction
Katelyn Gadd <kg@luminance.org> [Wed, 21 Aug 2019 09:30:54 -0400] rev 1212
GLSL: Implement texldl instruction
Wed, 14 Aug 2019 09:33:57 -0400 Remove the floor from vpos calculation
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 14 Aug 2019 09:33:57 -0400] rev 1211
Remove the floor from vpos calculation
Thu, 25 Jul 2019 15:20:34 -0400 Replace glProgramViewportFlip with glProgramViewportInfo
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 25 Jul 2019 15:20:34 -0400] rev 1210
Replace glProgramViewportFlip with glProgramViewportInfo
Thu, 25 Jul 2019 15:17:31 -0400 Tabbing fix
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 25 Jul 2019 15:17:31 -0400] rev 1209
Tabbing fix
Tue, 09 Jul 2019 16:35:11 -0400 Only use gl_TexCoord for index values < 4
Ethan Lee <flibitijibibo@flibitijibibo.com> [Tue, 09 Jul 2019 16:35:11 -0400] rev 1208
Only use gl_TexCoord for index values < 4
Wed, 29 May 2019 16:53:06 -0400 Assert of unknown GLSL shader type (thanks Kate!)
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 29 May 2019 16:53:06 -0400] rev 1207
Assert of unknown GLSL shader type (thanks Kate!)
Wed, 29 May 2019 16:52:12 -0400 Assert on unknown operand type (thanks Kate!)
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 29 May 2019 16:52:12 -0400] rev 1206
Assert on unknown operand type (thanks Kate!)
Wed, 29 May 2019 16:48:58 -0400 Return statements for effectFind functions
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 29 May 2019 16:48:58 -0400] rev 1205
Return statements for effectFind functions
Mon, 27 May 2019 03:09:07 -0400 Matrix members inside struct parameters are also valid
Ethan Lee <flibitijibibo@flibitijibibo.com> [Mon, 27 May 2019 03:09:07 -0400] rev 1204
Matrix members inside struct parameters are also valid
Mon, 27 May 2019 03:08:46 -0400 Return after printing gl_FrontFacing variable, it does not need a define
Ethan Lee <flibitijibibo@flibitijibibo.com> [Mon, 27 May 2019 03:08:46 -0400] rev 1203
Return after printing gl_FrontFacing variable, it does not need a define
Sat, 27 Apr 2019 17:03:28 -0400 Disable COMPILER_SUPPORT by default
Ethan Lee <flibitijibibo@flibitijibibo.com> [Sat, 27 Apr 2019 17:03:28 -0400] rev 1202
Disable COMPILER_SUPPORT by default
Sat, 27 Apr 2019 22:57:40 +0200 Fixed macro clashing with crt function name in MSVC 2015 and newer.
Martin Krošlák <kroslakma@gmail.com> [Sat, 27 Apr 2019 22:57:40 +0200] rev 1201
Fixed macro clashing with crt function name in MSVC 2015 and newer.
Tue, 23 Apr 2019 14:55:13 -0400 Move the visibility pragmas below the includes.
Ethan Lee <flibitijibibo@flibitijibibo.com> [Tue, 23 Apr 2019 14:55:13 -0400] rev 1200
Move the visibility pragmas below the includes. This fixes some possible issues with the linker and the standard C runtime.
Tue, 23 Apr 2019 14:43:10 -0400 Reorganize profiles into their own files
Caleb Cornett <caleb.cornett@outlook.com> [Tue, 23 Apr 2019 14:43:10 -0400] rev 1199
Reorganize profiles into their own files
Tue, 23 Apr 2019 13:28:17 -0400 VS2010 buildfixes
Ethan Lee <flibitijibibo@flibitijibibo.com> [Tue, 23 Apr 2019 13:28:17 -0400] rev 1198
VS2010 buildfixes
Tue, 23 Apr 2019 01:42:58 -0400 Skip GL_PROGRAM_POINT_SIZE for ES contexts
Ethan Lee <flibitijibibo@flibitijibibo.com> [Tue, 23 Apr 2019 01:42:58 -0400] rev 1197
Skip GL_PROGRAM_POINT_SIZE for ES contexts
Tue, 23 Apr 2019 01:00:59 -0400 Copypaste typo fix
Ethan Lee <flibitijibibo@flibitijibibo.com> [Tue, 23 Apr 2019 01:00:59 -0400] rev 1196
Copypaste typo fix
Thu, 11 Apr 2019 11:20:47 -0400 Apply some MSC_VER special cases to WIN32 as well (thanks Vincent!)
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 11 Apr 2019 11:20:47 -0400] rev 1195
Apply some MSC_VER special cases to WIN32 as well (thanks Vincent!)
Sun, 07 Apr 2019 00:19:10 -0400 Add PROFILE_GLSLES CMake option
Caleb Cornett <caleb.cornett@outlook.com> [Sun, 07 Apr 2019 00:19:10 -0400] rev 1194
Add PROFILE_GLSLES CMake option
Wed, 06 Mar 2019 15:09:49 -0500 gl_Position only works for POSITION0
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 06 Mar 2019 15:09:49 -0500] rev 1193
gl_Position only works for POSITION0
Mon, 18 Feb 2019 21:49:03 -0500 iOS support (thanks Caleb!)
Ethan Lee <flibitijibibo@flibitijibibo.com> [Mon, 18 Feb 2019 21:49:03 -0500] rev 1192
iOS support (thanks Caleb!)
Mon, 18 Feb 2019 21:48:09 -0500 CMake: Make Hg dependency optional (thanks Chad!)
Ethan Lee <flibitijibibo@flibitijibibo.com> [Mon, 18 Feb 2019 21:48:09 -0500] rev 1191
CMake: Make Hg dependency optional (thanks Chad!)
Mon, 18 Feb 2019 21:47:17 -0500 Loop register should not have swizzling
Ethan Lee <flibitijibibo@flibitijibibo.com> [Mon, 18 Feb 2019 21:47:17 -0500] rev 1190
Loop register should not have swizzling
Mon, 18 Feb 2019 20:45:20 -0500 flibitCommit test...
Ethan Lee <flibitijibibo@flibitijibibo.com> [Mon, 18 Feb 2019 20:45:20 -0500] rev 1189
flibitCommit test...
Wed, 23 May 2018 11:07:59 -0400 Move zeromalloc trickery to internal malloc/free functions
Ethan Lee <flibitijibibo@flibitijibibo.com> [Wed, 23 May 2018 11:07:59 -0400] rev 1188
Move zeromalloc trickery to internal malloc/free functions
Thu, 17 May 2018 13:05:09 -0400 Add COMPILER_SUPPORT CMake flag, do not build effect/compiler files if disabled
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 17 May 2018 13:05:09 -0400] rev 1187
Add COMPILER_SUPPORT CMake flag, do not build effect/compiler files if disabled
Thu, 17 May 2018 12:16:22 -0400 Read SYMTYPE_TEXTURE* large objs and read their names (thanks Maik!)
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 17 May 2018 12:16:22 -0400] rev 1186
Read SYMTYPE_TEXTURE* large objs and read their names (thanks Maik!)
Thu, 17 May 2018 12:15:26 -0400 Use param name ptr for sampler_name
Ethan Lee <flibitijibibo@flibitijibibo.com> [Thu, 17 May 2018 12:15:26 -0400] rev 1185
Use param name ptr for sampler_name
Fri, 13 Oct 2017 11:28:07 -0400 Remove builtins hack for glsles
Ethan Lee <flibitijibibo@flibitijibibo.com> [Fri, 13 Oct 2017 11:28:07 -0400] rev 1184
Remove builtins hack for glsles
Fri, 03 Feb 2017 12:52:10 -0500 Minor fixes from FNA branch
Ethan Lee <flibitijibibo@flibitijibibo.com> [Fri, 03 Feb 2017 12:52:10 -0500] rev 1183
Minor fixes from FNA branch
Fri, 04 May 2018 17:45:20 -0400 Always return a non-NULL pointer for malloc(0).
Ryan C. Gordon <icculus@icculus.org> [Fri, 04 May 2018 17:45:20 -0400] rev 1182
Always return a non-NULL pointer for malloc(0). Some C runtimes, like musl, will return NULL in this case. It's more convenient to not get a NULL (which is meant to be interpreted as a failure), but instead get a non-NULL pointer that can't be dereferenced (because it's a pointer to zero bytes of memory).
Fri, 13 Oct 2017 00:47:22 -0400 Count constant arrays for the uniform_count. Fixes buffer overflow.
Ryan C. Gordon <icculus@icculus.org> [Fri, 13 Oct 2017 00:47:22 -0400] rev 1181
Count constant arrays for the uniform_count. Fixes buffer overflow. This one got found by AFL, too, but it's a legit bug that can happen with legit shaders.
Thu, 12 Oct 2017 16:35:50 -0400 A bunch of fixes for bugs that that American Fuzzy Lop exposed.
Ryan C. Gordon <icculus@icculus.org> [Thu, 12 Oct 2017 16:35:50 -0400] rev 1180
A bunch of fixes for bugs that that American Fuzzy Lop exposed. http://lcamtuf.coredump.cx/afl/ All of these bugs would never trigger on valid shaders, but it's conceivable that an attacker could hit a game that supports modding and craft a malicious shader to crash the game, so these were worth fixing in any case.
Sat, 09 Jul 2016 01:44:57 -0400 Sort register lists by register type first, then register number.
Ryan C. Gordon <icculus@icculus.org> [Sat, 09 Jul 2016 01:44:57 -0400] rev 1179
Sort register lists by register type first, then register number. This groups all the registers by type first, which is useful for packing heterogeneous uniform buffers later.
Sun, 29 May 2016 13:31:18 -0400 parse_preshader merge fixes
Ethan Lee <flibitijibibo@flibitijibibo.com> [Sun, 29 May 2016 13:31:18 -0400] rev 1178
parse_preshader merge fixes
Sun, 29 May 2016 03:51:36 -0400 Metal: fixed indentation for constant arrays.
Ryan C. Gordon <icculus@icculus.org> [Sun, 29 May 2016 03:51:36 -0400] rev 1177
Metal: fixed indentation for constant arrays.
Sun, 29 May 2016 03:03:15 -0400 Put a simple sanity check in to prevent buffer overflows.
Ryan C. Gordon <icculus@icculus.org> [Sun, 29 May 2016 03:03:15 -0400] rev 1176
Put a simple sanity check in to prevent buffer overflows.
Sun, 29 May 2016 02:59:29 -0400 Don't free ctx->mainfn if context build fails; it wasn't ever set.
Ryan C. Gordon <icculus@icculus.org> [Sun, 29 May 2016 02:59:29 -0400] rev 1175
Don't free ctx->mainfn if context build fails; it wasn't ever set.
Sun, 29 May 2016 02:43:38 -0400 Metal: Better fix for overly-long constant arrays: they shouldn't be global!
Ryan C. Gordon <icculus@icculus.org> [Sun, 29 May 2016 02:43:38 -0400] rev 1174
Metal: Better fix for overly-long constant arrays: they shouldn't be global! The Metal compiler seems to produce identical output at -O3, at least for my quick tests. We'll see.
Sat, 28 May 2016 22:45:59 -0400 GLSL: Use varyings when usage_str is NULL for vertex/pixel shaders
Ethan Lee <flibitijibibo@flibitijibibo.com> [Sat, 28 May 2016 22:45:59 -0400] rev 1173
GLSL: Use varyings when usage_str is NULL for vertex/pixel shaders GLSLES: Various fixes from Maik Macho, thanks! Effects: Store parameter staging buffers as vec4 values, per ID3DXEffect spec
Sun, 29 May 2016 00:31:36 -0400 Make Metal profile optional in the CMake project.
Ryan C. Gordon <icculus@icculus.org> [Sun, 29 May 2016 00:31:36 -0400] rev 1172
Make Metal profile optional in the CMake project.
Sun, 29 May 2016 00:26:44 -0400 Report the main function name in testparse.
Ryan C. Gordon <icculus@icculus.org> [Sun, 29 May 2016 00:26:44 -0400] rev 1171
Report the main function name in testparse.
Sun, 29 May 2016 00:21:34 -0400 Explicitly initial a bunch of bits of MOJOSHADER_out_of_mem_data.
Ryan C. Gordon <icculus@icculus.org> [Sun, 29 May 2016 00:21:34 -0400] rev 1170
Explicitly initial a bunch of bits of MOJOSHADER_out_of_mem_data.
Sun, 29 May 2016 00:13:13 -0400 Deal with Metal shaders with really long main function names.
Ryan C. Gordon <icculus@icculus.org> [Sun, 29 May 2016 00:13:13 -0400] rev 1169
Deal with Metal shaders with really long main function names. This is so lazy of me. :/
Sat, 28 May 2016 22:25:43 -0400 Give shaders in Effects files a unique main function name.
Ryan C. Gordon <icculus@icculus.org> [Sat, 28 May 2016 22:25:43 -0400] rev 1168
Give shaders in Effects files a unique main function name. This lets you generate Metal shaders that won't conflict in the same library.
Sat, 28 May 2016 22:08:22 -0400 Changed a magic mystery value from 24 to 16.
Ryan C. Gordon <icculus@icculus.org> [Sat, 28 May 2016 22:08:22 -0400] rev 1167
Changed a magic mystery value from 24 to 16. There was a logic bug in MOJOSHADER_parsePreshader() that was fixed in the merge, but it caused this mystery value to be wrong (before, we would step too far in an array and this value was covering for it). We still don't know what's at the end of this array, but at least we aren't crashing now and it appears to work as well as before. It's still a mystery.
Sat, 28 May 2016 16:11:12 -0400 Default to building with Effects framework support enabled.
Ryan C. Gordon <icculus@icculus.org> [Sat, 28 May 2016 16:11:12 -0400] rev 1166
Default to building with Effects framework support enabled.
Sat, 28 May 2016 16:04:57 -0400 Patched to compile with Effects support compiled in.
Ryan C. Gordon <icculus@icculus.org> [Sat, 28 May 2016 16:04:57 -0400] rev 1165
Patched to compile with Effects support compiled in.
Sat, 28 May 2016 15:58:05 -0400 MOJOSHADER_parsePreshader() cleanup.
Ryan C. Gordon <icculus@icculus.org> [Sat, 28 May 2016 15:58:05 -0400] rev 1164
MOJOSHADER_parsePreshader() cleanup. Merged Ethan's copied/improved code with the original, and documented the APIs. Changed MOJOSHADER_freePreshader() to not need explicit deallocators specified.
Sat, 28 May 2016 11:55:07 -0400 metal: make generated shader code slightly more readable.
Ryan C. Gordon <icculus@icculus.org> [Sat, 28 May 2016 11:55:07 -0400] rev 1163
metal: make generated shader code slightly more readable.
Fri, 27 May 2016 14:02:59 -0400 A few more Visual Studio warning fixes.
Ryan C. Gordon <icculus@icculus.org> [Fri, 27 May 2016 14:02:59 -0400] rev 1162
A few more Visual Studio warning fixes.
Fri, 27 May 2016 13:54:16 -0400 Fixed up a few Visual Studio warnings, compiling as C++, etc.
Ryan C. Gordon <icculus@icculus.org> [Fri, 27 May 2016 13:54:16 -0400] rev 1161
Fixed up a few Visual Studio warnings, compiling as C++, etc.
Tue, 24 May 2016 01:05:54 -0400 metal: Group all uniform arrays into one struct with explicit array sizes.
Ryan C. Gordon <icculus@icculus.org> [Tue, 24 May 2016 01:05:54 -0400] rev 1160
metal: Group all uniform arrays into one struct with explicit array sizes. This lets the Metal compiler know more about the data (such as array overflow risks and maybe optimization strategies), but also lets us mush all uniforms into one buffer index instead of splitting them across three.
Tue, 17 May 2016 16:13:20 -0400 Metal: Removed FIXME that already got fixed.
Ryan C. Gordon <icculus@icculus.org> [Tue, 17 May 2016 16:13:20 -0400] rev 1159
Metal: Removed FIXME that already got fixed.
Tue, 17 May 2016 16:13:05 -0400 Metal: Cleaned up output a little bit.
Ryan C. Gordon <icculus@icculus.org> [Tue, 17 May 2016 16:13:05 -0400] rev 1158
Metal: Cleaned up output a little bit.
Tue, 17 May 2016 16:01:06 -0400 Metal: make constant arrays have unique names.
Ryan C. Gordon <icculus@icculus.org> [Tue, 17 May 2016 16:01:06 -0400] rev 1157
Metal: make constant arrays have unique names. This lets us compile a bunch of shaders as one big file without conflicts!
Mon, 25 Apr 2016 02:55:29 -0400 Added support for producing shader language source code for Apple's Metal API.
Ryan C. Gordon <icculus@icculus.org> [Mon, 25 Apr 2016 02:55:29 -0400] rev 1156
Added support for producing shader language source code for Apple's Metal API.
Mon, 25 Apr 2016 02:54:04 -0400 glsl: texture*Proj() needs vec3 params for cubes and 3d textures.
Ryan C. Gordon <icculus@icculus.org> [Mon, 25 Apr 2016 02:54:04 -0400] rev 1155
glsl: texture*Proj() needs vec3 params for cubes and 3d textures.
Mon, 25 Apr 2016 02:51:45 -0400 Fixed some typos.
Ryan C. Gordon <icculus@icculus.org> [Mon, 25 Apr 2016 02:51:45 -0400] rev 1154
Fixed some typos.
Mon, 18 Apr 2016 12:06:17 -0400 Deal with quirks of MSVC's vsnprintf() implementation.
Baldur Karlsson <baldur@unity3d.com> [Mon, 18 Apr 2016 12:06:17 -0400] rev 1153
Deal with quirks of MSVC's vsnprintf() implementation.
Tue, 09 Feb 2016 00:05:18 -0500 Effect struct parameter support
Ethan Lee <flibitijibibo@flibitijibibo.com> [Tue, 09 Feb 2016 00:05:18 -0500] rev 1152
Effect struct parameter support
Fri, 01 Jan 2016 12:53:03 -0500 Updated copyright...like five years late. :)
Ryan C. Gordon <icculus@icculus.org> [Fri, 01 Jan 2016 12:53:03 -0500] rev 1151
Updated copyright...like five years late. :)
Fri, 01 Jan 2016 02:12:19 -0500 - Add ability to build MojoShader as a shared library
Ethan Lee <flibitijibibo@flibitijibibo.com> [Fri, 01 Jan 2016 02:12:19 -0500] rev 1150
- Add ability to build MojoShader as a shared library - Off by default, turn on BUILD_SHARED in CMake - Add ability to disable shader profiles from CMake - Add MOJOSHADER_glSetVertexAttribDivisor - Behaves like glSetVertexAttribute, but for glVertexAttribDivisor - Add MOJOSHADER_glGetVertexAttribLocation - Allows user to directly call glVertexAttribPointer in their program - Full Effect framework support - API is in a separate header, see mojoshader_effects.h for details - Off by default, turn on EFFECT_SUPPORT in CMake - #define MOJOSHADER_EFFECT_SUPPORT before including mojoshader.h - Add MOJOSHADER_PROFILE_GLSLES shader profile - Basically just GLSL120 without using builtins - Add ability to flip gl_Position via MOJOSHADER_glProgramViewportFlip - You probably shouldn't use this unless you're a project like FNA. - Off by default, turn on FLIP_VIEWPORT in CMake - #define MOJOSHADER_FLIP_RENDERTARGET before including mojoshader.h - Add ability to adjust Z coordinates for [0, 1]-like depth clipping - You probably shouldn't use this unless you're a project like FNA. - Off by default, turn on DEPTH_CLIPPING in CMake - Add ability to build MojoShader with XNA4 vertex texturing behavior - You probably shouldn't use this unless you're reimplementing XNA. - Off by default, turn on XNA4_VERTEXTEXTURE in CMake - Add DECLSPEC/MOJOSHADERCALL to functions/function pointers - This allows for easier interop with other languages, i.e. C# P/Invoke - Fix printing float values for locales where radix is not '.' - Various minor bugfixes, optimizations, Win32 buildfixes, etc.
Tue, 13 Oct 2015 12:08:55 -0400 Whoops, checked wrong variable here. Not that anything sane overflowed this.
Ryan C. Gordon <icculus@icculus.org> [Tue, 13 Oct 2015 12:08:55 -0400] rev 1149
Whoops, checked wrong variable here. Not that anything sane overflowed this.
Tue, 06 Oct 2015 07:22:47 -0500 Bytecode emit: Don't read starting from the end of the token buffer
Mischanix <mischanix@gmail.com> [Tue, 06 Oct 2015 07:22:47 -0500] rev 1148
Bytecode emit: Don't read starting from the end of the token buffer
Sat, 26 Sep 2015 23:34:00 -0400 Fixed a few outdated comments.
Ryan C. Gordon <icculus@icculus.org> [Sat, 26 Sep 2015 23:34:00 -0400] rev 1147
Fixed a few outdated comments.
Sat, 03 Jan 2015 00:50:43 -0500 Moved some simple things into mojoshader_common.c.
Ryan C. Gordon <icculus@icculus.org> [Sat, 03 Jan 2015 00:50:43 -0500] rev 1146
Moved some simple things into mojoshader_common.c. This lets you build without mojoshader.c at all, if you're doing just the compiler, etc, and don't need all the bytecode parsing.
Wed, 31 Dec 2014 16:49:59 -0500 Semantic analysis was reporting a NULL datatype for funcs with void retvals.
Ryan C. Gordon <icculus@icculus.org> [Wed, 31 Dec 2014 16:49:59 -0500] rev 1145
Semantic analysis was reporting a NULL datatype for funcs with void retvals.
Sun, 23 Nov 2014 21:21:25 -0500 Added a FIXME.
Ryan C. Gordon <icculus@icculus.org> [Sun, 23 Nov 2014 21:21:25 -0500] rev 1144
Added a FIXME.
Sat, 22 Nov 2014 22:15:38 -0500 Make parsing shaders possible without knowing the token buffer size.
Ryan C. Gordon <icculus@icculus.org> [Sat, 22 Nov 2014 22:15:38 -0500] rev 1143
Make parsing shaders possible without knowing the token buffer size. IDirect3D9Device::CreatePixelShader(), etc, don't specify buffer size. (They fixed that in D3D10.)
Thu, 02 Oct 2014 15:54:31 -0400 Allow multiline comments before preprocessor directives.
Ryan C. Gordon <icculus@icculus.org> [Thu, 02 Oct 2014 15:54:31 -0400] rev 1142
Allow multiline comments before preprocessor directives. Microsoft's preprocessor allows this, even though C/C++ doesn't.
Mon, 23 Jun 2014 14:56:00 -0400 Reduce malloc pressure in stringcache (thanks, Max!).
Ryan C. Gordon <icculus@icculus.org> [Mon, 23 Jun 2014 14:56:00 -0400] rev 1141
Reduce malloc pressure in stringcache (thanks, Max!).
Mon, 23 Jun 2014 14:50:56 -0400 Fixed incorrect variable in buffer_append_va (thanks, Max!).
Ryan C. Gordon <icculus@icculus.org> [Mon, 23 Jun 2014 14:50:56 -0400] rev 1140
Fixed incorrect variable in buffer_append_va (thanks, Max!). This bug only affected the heap-allocation path, so buffer appends <= 256 bytes wouldn't trigger the bug, as we did them on the stack.
Mon, 28 Apr 2014 14:15:17 -0400 Shader Model 1 doesn't use an extra token for relative addressing.
Ryan C. Gordon <icculus@icculus.org> [Mon, 28 Apr 2014 14:15:17 -0400] rev 1139
Shader Model 1 doesn't use an extra token for relative addressing. It's always addressed against a0.x.
Tue, 25 Feb 2014 17:14:59 -0500 Allow finderrors to troll through subdirectories.
Ryan C. Gordon <icculus@icculus.org> [Tue, 25 Feb 2014 17:14:59 -0500] rev 1138
Allow finderrors to troll through subdirectories.
Tue, 25 Feb 2014 14:10:15 -0500 Fixed Windows file finding.
Ryan C. Gordon <icculus@icculus.org> [Tue, 25 Feb 2014 14:10:15 -0500] rev 1137
Fixed Windows file finding.
Tue, 25 Feb 2014 14:05:12 -0500 Fixed buffer overflow.
Ryan C. Gordon <icculus@icculus.org> [Tue, 25 Feb 2014 14:05:12 -0500] rev 1136
Fixed buffer overflow.
Fri, 21 Feb 2014 12:41:39 -0500 Support OpenGL 3.0 and later.
Ryan C. Gordon <icculus@icculus.org> [Fri, 21 Feb 2014 12:41:39 -0500] rev 1135
Support OpenGL 3.0 and later.
Fri, 21 Feb 2014 12:41:25 -0500 Moved to SDL2.
Ryan C. Gordon <icculus@icculus.org> [Fri, 21 Feb 2014 12:41:25 -0500] rev 1134
Moved to SDL2.
Fri, 07 Feb 2014 15:57:54 -0500 Static analysis fix.
Ryan C. Gordon <icculus@icculus.org> [Fri, 07 Feb 2014 15:57:54 -0500] rev 1133
Static analysis fix.
Fri, 17 May 2013 15:01:09 -0400 Assembler: Pixel shader DCL opcodes only specify usage for samplers.
Ryan C. Gordon <icculus@icculus.org> [Fri, 17 May 2013 15:01:09 -0400] rev 1132
Assembler: Pixel shader DCL opcodes only specify usage for samplers.
Fri, 17 May 2013 15:00:34 -0400 Fixed whitespace.
Ryan C. Gordon <icculus@icculus.org> [Fri, 17 May 2013 15:00:34 -0400] rev 1131
Fixed whitespace.
Wed, 24 Apr 2013 21:49:39 -0400 Assembler: support ps_1_1 TEX instruction.
Ryan C. Gordon <icculus@icculus.org> [Wed, 24 Apr 2013 21:49:39 -0400] rev 1130
Assembler: support ps_1_1 TEX instruction.
Wed, 17 Apr 2013 23:32:53 -0400 Fixed compiler warning.
Ryan C. Gordon <icculus@icculus.org> [Wed, 17 Apr 2013 23:32:53 -0400] rev 1129
Fixed compiler warning.
Wed, 17 Apr 2013 23:30:10 -0400 Optimizations to preprocessor's find_define().
Ryan C. Gordon <icculus@icculus.org> [Wed, 17 Apr 2013 23:30:10 -0400] rev 1128
Optimizations to preprocessor's find_define(). - don't check for __FILE__ and __LINE__ until after we've checked our hash, since this is the less likely case. - Check against the hard-coded hash value of the strings "__FILE__" and "__LINE__" to avoid unnecessary strcmp() calls. This dropped the profile of this function from 20% of our total CPU time to 10%. Of that 10%, 70% is now the hashing function.
Tue, 16 Apr 2013 00:54:40 -0400 Added a unit test for the previous commit.
Ryan C. Gordon <icculus@icculus.org> [Tue, 16 Apr 2013 00:54:40 -0400] rev 1127
Added a unit test for the previous commit.
Tue, 16 Apr 2013 00:52:22 -0400 Let "#if ((0) + (1) < 2)" understand that '+' isn't a unary operation.
Ryan C. Gordon <icculus@icculus.org> [Tue, 16 Apr 2013 00:52:22 -0400] rev 1126
Let "#if ((0) + (1) < 2)" understand that '+' isn't a unary operation.
Mon, 25 Mar 2013 15:34:28 -0400 Don't use the extension entry point glGetInfoLogARB() in the core GL2 path.
Ryan C. Gordon <icculus@icculus.org> [Mon, 25 Mar 2013 15:34:28 -0400] rev 1125
Don't use the extension entry point glGetInfoLogARB() in the core GL2 path.
Sat, 23 Mar 2013 22:51:35 -0400 Leak fix: delete GLSL shader objects if we fail to compile.
Ryan C. Gordon <icculus@icculus.org> [Sat, 23 Mar 2013 22:51:35 -0400] rev 1124
Leak fix: delete GLSL shader objects if we fail to compile.
Fri, 15 Feb 2013 15:10:33 -0500 Fix (or just change?) how we report comments vs newlines.
Ryan C. Gordon <icculus@icculus.org> [Fri, 15 Feb 2013 15:10:33 -0500] rev 1123
Fix (or just change?) how we report comments vs newlines. Multi-line comments now swallow internal newlines and don't insert a fake one in the token stream, so this works like GNU cpp now: #if /* */1 This should be included by the preprocessor, believe it or not. #endif Single-line comments no longer swallow their terminating endline, which makes this case work: #if BLAH // The preprocessor expects a newline token here. #endif
Fri, 15 Feb 2013 15:01:50 -0500 Only turn on whitespace/comment reporting when not in a preprocessor handler.
Ryan C. Gordon <icculus@icculus.org> [Fri, 15 Feb 2013 15:01:50 -0500] rev 1122
Only turn on whitespace/comment reporting when not in a preprocessor handler. Things like "#define" handling need to manipulate that lexer state directly.
Thu, 14 Feb 2013 00:46:12 -0500 Allow preprocessor to pass through comments, like GNU cpp does.
Ryan C. Gordon <icculus@icculus.org> [Thu, 14 Feb 2013 00:46:12 -0500] rev 1121
Allow preprocessor to pass through comments, like GNU cpp does.
Thu, 14 Feb 2013 00:15:14 -0500 Let the preprocessor work more like C, without the Microsoft tools' quirks.
Ryan C. Gordon <icculus@icculus.org> [Thu, 14 Feb 2013 00:15:14 -0500] rev 1120
Let the preprocessor work more like C, without the Microsoft tools' quirks.
Fri, 02 Nov 2012 11:04:51 -0400 Patched to compile (thanks, Alexander!).
Ryan C. Gordon <icculus@icculus.org> [Fri, 02 Nov 2012 11:04:51 -0400] rev 1119
Patched to compile (thanks, Alexander!).
Wed, 10 Oct 2012 22:47:27 -0400 Whoops, dropped last extension from the list in legacy GL extension codepath.
Ryan C. Gordon <icculus@icculus.org> [Wed, 10 Oct 2012 22:47:27 -0400] rev 1118
Whoops, dropped last extension from the list in legacy GL extension codepath.
Wed, 10 Oct 2012 21:35:16 -0400 Allow looking up OpenGL extensions in the way appropriate for GL3+.
Ryan C. Gordon <icculus@icculus.org> [Wed, 10 Oct 2012 21:35:16 -0400] rev 1117
Allow looking up OpenGL extensions in the way appropriate for GL3+. Note that we use a StringCache for this now, which means we need to allocate memory, which means the API changed to allow custom allocators on some entry points.
Wed, 10 Oct 2012 21:33:36 -0400 Added stringcache_iscached().
Ryan C. Gordon <icculus@icculus.org> [Wed, 10 Oct 2012 21:33:36 -0400] rev 1116
Added stringcache_iscached().
Wed, 10 Oct 2012 21:32:58 -0400 Cleaned out a compiler warning for now.
Ryan C. Gordon <icculus@icculus.org> [Wed, 10 Oct 2012 21:32:58 -0400] rev 1115
Cleaned out a compiler warning for now.
Wed, 10 Oct 2012 21:32:40 -0400 Upgraded to newer glext.h
Ryan C. Gordon <icculus@icculus.org> [Wed, 10 Oct 2012 21:32:40 -0400] rev 1114
Upgraded to newer glext.h
Mon, 17 Sep 2012 12:37:22 -0400 Fixed logic error.
Ryan C. Gordon <icculus@icculus.org> [Mon, 17 Sep 2012 12:37:22 -0400] rev 1113
Fixed logic error.
Mon, 17 Sep 2012 12:37:09 -0400 Fixed a typo in the docs.
Ryan C. Gordon <icculus@icculus.org> [Mon, 17 Sep 2012 12:37:09 -0400] rev 1112
Fixed a typo in the docs.
Fri, 03 Aug 2012 13:39:36 -0400 Some static analysis fixes from Clang 4.0.
Ryan C. Gordon <icculus@icculus.org> [Fri, 03 Aug 2012 13:39:36 -0400] rev 1111
Some static analysis fixes from Clang 4.0.
Thu, 07 Jun 2012 04:31:01 -0400 Don't call GL entry points once we've blanked their pointers out.
Ryan C. Gordon <icculus@icculus.org> [Thu, 07 Jun 2012 04:31:01 -0400] rev 1110
Don't call GL entry points once we've blanked their pointers out.
Tue, 29 May 2012 06:17:49 -0400 GLSL and ARB1: Make sure Shader Model 1 TEX opcode handles non-2D textures.
Ryan C. Gordon <icculus@icculus.org> [Tue, 29 May 2012 06:17:49 -0400] rev 1109
GLSL and ARB1: Make sure Shader Model 1 TEX opcode handles non-2D textures.
Tue, 29 May 2012 05:12:40 -0400 ARB1: Make TEXM3X3* opcodes able to handle Cubemap or Volume samplers.
Ryan C. Gordon <icculus@icculus.org> [Tue, 29 May 2012 05:12:40 -0400] rev 1108
ARB1: Make TEXM3X3* opcodes able to handle Cubemap or Volume samplers.
Tue, 29 May 2012 05:03:21 -0400 GLSL: Make TEXM3X3* opcodes able to handle Cubemap or Volume samplers.
Ryan C. Gordon <icculus@icculus.org> [Tue, 29 May 2012 05:03:21 -0400] rev 1107
GLSL: Make TEXM3X3* opcodes able to handle Cubemap or Volume samplers.
Tue, 29 May 2012 04:58:11 -0400 More work on sampler remapping...3D should probably default to cubemaps, etc.
Ryan C. Gordon <icculus@icculus.org> [Tue, 29 May 2012 04:58:11 -0400] rev 1106
More work on sampler remapping...3D should probably default to cubemaps, etc.
Tue, 29 May 2012 03:20:28 -0400 Fixed NULL pointer access when linking without both a vertex and pixel shader.
Ryan C. Gordon <icculus@icculus.org> [Tue, 29 May 2012 03:20:28 -0400] rev 1105
Fixed NULL pointer access when linking without both a vertex and pixel shader.
Tue, 29 May 2012 02:43:24 -0400 Allow sampler type remapping.
Ryan C. Gordon <icculus@icculus.org> [Tue, 29 May 2012 02:43:24 -0400] rev 1104
Allow sampler type remapping. Allows workaround for Shader Model 1 not specifying what a sampler should be in the bytecode itself.
Sat, 19 May 2012 01:56:29 -0400 arb1 TEXM3X3SPEC fix: apparently, arb1 doesn't have a DIV instruction.
Ryan C. Gordon <icculus@icculus.org> [Sat, 19 May 2012 01:56:29 -0400] rev 1103
arb1 TEXM3X3SPEC fix: apparently, arb1 doesn't have a DIV instruction.
Mon, 23 Apr 2012 02:03:02 -0400 GLSL and ARB1: Implemented TEXM3X3 opcode.
Ryan C. Gordon <icculus@icculus.org> [Mon, 23 Apr 2012 02:03:02 -0400] rev 1102
GLSL and ARB1: Implemented TEXM3X3 opcode.
Mon, 23 Apr 2012 01:53:40 -0400 Handle implicit declaration of ps_1_1 v# registers.
Ryan C. Gordon <icculus@icculus.org> [Mon, 23 Apr 2012 01:53:40 -0400] rev 1101
Handle implicit declaration of ps_1_1 v# registers.
Mon, 23 Apr 2012 01:53:07 -0400 We already calculated this, don't derefence pointer again.
Ryan C. Gordon <icculus@icculus.org> [Mon, 23 Apr 2012 01:53:07 -0400] rev 1100
We already calculated this, don't derefence pointer again.
Mon, 23 Apr 2012 01:19:58 -0400 GLSL and ARB1: First shot at most of the TEXM3X2* and TEXM3X3* opcodes.
Ryan C. Gordon <icculus@icculus.org> [Mon, 23 Apr 2012 01:19:58 -0400] rev 1099
GLSL and ARB1: First shot at most of the TEXM3X2* and TEXM3X3* opcodes.
Wed, 18 Apr 2012 00:59:12 -0400 arb1: use MAD opcode for SRCMOD_SIGN instead of a SUB+MUL pair.
Ryan C. Gordon <icculus@icculus.org> [Wed, 18 Apr 2012 00:59:12 -0400] rev 1098
arb1: use MAD opcode for SRCMOD_SIGN instead of a SUB+MUL pair.
Wed, 18 Apr 2012 00:52:18 -0400 arb1: implement most of the srcmods.
Ryan C. Gordon <icculus@icculus.org> [Wed, 18 Apr 2012 00:52:18 -0400] rev 1097
arb1: implement most of the srcmods.
Wed, 18 Apr 2012 00:21:58 -0400 According to MSDN, _db and _da are legit srcmods, identical to _dz and _dw.
Ryan C. Gordon <icculus@icculus.org> [Wed, 18 Apr 2012 00:21:58 -0400] rev 1096
According to MSDN, _db and _da are legit srcmods, identical to _dz and _dw. Basically, it's to match rgba syntax, instead of xyzw.
Wed, 18 Apr 2012 00:19:32 -0400 glsl: Implemented most of the missing srcmods.
Ryan C. Gordon <icculus@icculus.org> [Wed, 18 Apr 2012 00:19:32 -0400] rev 1095
glsl: Implemented most of the missing srcmods. Reread the GLSL spec, and it turns out that "vec3(x,y,z) - 3.0" is legal syntactic sugar: the compiler knows to subtract 3.0 from each of the three components in that vec3. This made this simpler than having to tapdance to generate correct constant vectors ourselves, and it's easier to read.
Tue, 17 Apr 2012 03:08:51 -0400 glsl: Implemented SRCMOD_BIAS and SRCMOD_BIASNEGATE.
Ryan C. Gordon <icculus@icculus.org> [Tue, 17 Apr 2012 03:08:51 -0400] rev 1094
glsl: Implemented SRCMOD_BIAS and SRCMOD_BIASNEGATE.
Tue, 17 Apr 2012 02:51:58 -0400 Properly handle coissue instructions.
Ryan C. Gordon <icculus@icculus.org> [Tue, 17 Apr 2012 02:51:58 -0400] rev 1093
Properly handle coissue instructions.
Tue, 17 Apr 2012 02:34:33 -0400 arb1: Implemented CND opcode.
Ryan C. Gordon <icculus@icculus.org> [Tue, 17 Apr 2012 02:34:33 -0400] rev 1092
arb1: Implemented CND opcode.
Tue, 17 Apr 2012 02:22:08 -0400 arb1: Handle destination modifiers for TEXBEM/TEXBEML.
Ryan C. Gordon <icculus@icculus.org> [Tue, 17 Apr 2012 02:22:08 -0400] rev 1091
arb1: Handle destination modifiers for TEXBEM/TEXBEML. Note that we probably screw this up anyhow, since there's other places where we ignore this stuff.
Tue, 17 Apr 2012 00:07:33 -0400 First shot at GLSL/ARB1 support for TEXBEM and TEXBEML opcodes.
Ryan C. Gordon <icculus@icculus.org> [Tue, 17 Apr 2012 00:07:33 -0400] rev 1090
First shot at GLSL/ARB1 support for TEXBEM and TEXBEML opcodes.
Mon, 16 Apr 2012 23:46:42 -0400 Fixed arb1 version of ps_1_1 TEXLD opcode.
Ryan C. Gordon <icculus@icculus.org> [Mon, 16 Apr 2012 23:46:42 -0400] rev 1089
Fixed arb1 version of ps_1_1 TEXLD opcode.
Sun, 15 Apr 2012 05:52:03 -0400 Implement ps_1_1 TEX opcode for arb1 and glsl profiles.
Ryan C. Gordon <icculus@icculus.org> [Sun, 15 Apr 2012 05:52:03 -0400] rev 1088
Implement ps_1_1 TEX opcode for arb1 and glsl profiles.
Sun, 15 Apr 2012 02:03:00 -0400 Cut-and-paste error.
Ryan C. Gordon <icculus@icculus.org> [Sun, 15 Apr 2012 02:03:00 -0400] rev 1087
Cut-and-paste error.
Sun, 15 Apr 2012 01:23:16 -0400 Fixed CND state validation for ps_1_1.
Ryan C. Gordon <icculus@icculus.org> [Sun, 15 Apr 2012 01:23:16 -0400] rev 1086
Fixed CND state validation for ps_1_1.
Sun, 15 Apr 2012 01:07:45 -0400 Test for reading of uninitialized temp registers.
Ryan C. Gordon <icculus@icculus.org> [Sun, 15 Apr 2012 01:07:45 -0400] rev 1085
Test for reading of uninitialized temp registers.
Sun, 15 Apr 2012 01:08:24 -0400 Fail if Shader Model 1 pixel shaders don't write to r0.
Ryan C. Gordon <icculus@icculus.org> [Sun, 15 Apr 2012 01:08:24 -0400] rev 1084
Fail if Shader Model 1 pixel shaders don't write to r0.
Sat, 14 Apr 2012 23:45:34 -0400 Note whether a given register was written to by the shader.
Ryan C. Gordon <icculus@icculus.org> [Sat, 14 Apr 2012 23:45:34 -0400] rev 1083
Note whether a given register was written to by the shader.
Sat, 14 Apr 2012 23:23:25 -0400 Added some FIXMEs.
Ryan C. Gordon <icculus@icculus.org> [Sat, 14 Apr 2012 23:23:25 -0400] rev 1082
Added some FIXMEs.
(0) -1000 -240 tip