Граф коммитов

17 Коммитов

Автор SHA1 Сообщение Дата
Hans-Kristian Arntzen 41f7e5b6a1 Add ability to have legacy-specific tests. 2017-01-16 09:08:06 +01:00
Hans-Kristian Arntzen 45c797d54c Improve debuggability of Travis CI when things go wrong. 2016-12-16 13:48:30 +01:00
Hans-Kristian Arntzen 706d3ead29 Always run spirv-val for SPIR-V files created.
Add way to disable testing if SPIR-V is not validating properly.
2016-09-12 20:11:30 +02:00
Hans-Kristian Arntzen b6847168b2 Update test suite for latest glslang. 2016-09-10 12:53:41 +02:00
Hans-Kristian Arntzen f61a5d1e5d Implement dead variable elimination. 2016-08-26 12:58:50 +02:00
Hans-Kristian Arntzen 042475e88e Add support for multiple entry points.
- Only consider I/O variables if part of OpEntryPoint.
- Keep a safe fallback if #entry-points is 1 to avoid potentially
  breaking previously working shaders.
2016-07-28 13:18:55 +02:00
Hans-Kristian Arntzen 2c7d2e4d3c Implement OpImageQuerySamples. 2016-07-11 12:47:46 +02:00
Hans-Kristian Arntzen 6aa2007cba Deal better with OpName and OpMemberName which alias.
OpName is only for debug information, so we must be very careful that
we do not reuse the same name for different variables.

This was previously done for local variables, but this commit extends
this to global variables as well.
2016-05-23 13:19:41 +02:00
Hans-Kristian Arntzen 45ad58a903 Implement more correct integer op handling.
In some cases we need to bitcast when dealing with int vs. uint.
SPIR-V allows inputs to be of different integer signedness, so we need
to deal with this somehow.

Add testing system to test SPIR-V assembly.
For now, test all possible combination for all major cases.

 - IAdd (which doesn't care about input type as long as they're equal)
 - SDiv/UDiv operations which case about input type.
 - Arith/Logical right shifts.
 - IEqual to test outputs to bvec, which shouldn't get output cast. Also
   tests casting in function-like calls.
2016-05-13 15:23:33 +02:00
Hans-Kristian Arntzen 8869a167d6 Drop --vulkan flag to test_shaders.py
We can infer shader types from file extensions.
2016-05-11 20:02:31 +02:00
Hans-Kristian Arntzen 78c9a80600 Make test_shaders.py more robust with out-of-tree builds.
Previous assumed that test script was run from root folder.
This doesn't work with out-of-tree builds.
2016-05-11 19:39:38 +02:00
Hans-Kristian Arntzen dbee4e4346 Add support for Vulkan GLSL as output target.
Mostly useful for debugging SPIR-V where it is useful to see the
"original" Vulkan GLSL constructs which created the SPIR-V.
2016-05-05 10:44:45 +02:00
Hans-Kristian Arntzen 7652c90802 Add support for separate samplers and textures.
This will not really make sense for plain GLSL/ESSL target, but other
backends might want it and useful to have for debugging.
2016-04-19 11:13:47 +02:00
Hans-Kristian Arntzen 147e53aeb2 Rename project to SPIRV-Cross.
Rename to coincide with moving the project to KhronosGroup.
2016-04-04 15:42:30 +02:00
Hans-Kristian Arntzen e50e04c247 Add --keep argument to test_shaders.py.
Improves debuggability when regressions are found.
2016-03-22 14:56:50 +01:00
Hans-Kristian Arntzen 0a5b3a6c78 Add --update flag and --malisc flag to test_shaders.py.
Avoids the hard dependency on malisc as well as making test_shaders.py
more suitable to regression testing.
2016-03-22 14:47:59 +01:00
Hans-Kristian Arntzen 75471fbb98 Initial commit. 2016-03-11 16:30:27 +01:00