Commit Graph

20 Commits

Author SHA1 Message Date
Lioncash
d1a1c0a011 picasso_frontend: Get rid of undefined behavior
Type-punning via a union is well-defined in C (specifically C99 and onwards), but not C++
2017-12-28 13:29:28 +01:00
fincs
4464084525 Fix some compilation warnings/errors 2017-06-10 13:36:30 +02:00
fincs
4c7129925d Support '$' in identifier names (translated to '.' in DVLE) 2017-03-18 00:45:58 +01:00
fincs
73e8119a43 Overhauled geoshader/outmap support, see details:
- GSH DVLEs now have each an independent uniform space.
- .gsh directive now accepts parameters to configure GSH mode.
- .out supports explicit outreg, outmasks are also now fixed.
- Added dummy attribute, removed 7 attribute.
- Back-compat mode is used for old code.
2016-07-20 17:20:48 +02:00
fincs
05d9e79095 Add auto-NOP insertion to work around flow-of-control PICA errata 2016-07-20 17:16:12 +02:00
fincs
08e77dad03 Add command line flag for retrieving the picasso version (fix #11) 2016-03-26 14:03:02 +01:00
fincs
7ae2c49768 Fix #4 2015-09-04 23:45:25 +02:00
fincs
011668baef Implement .setf/.seti/.setb with documentation 2015-08-22 13:30:33 +02:00
fincs
556fbe1d82 Ensure DVLEs are word aligned 2015-08-15 13:03:11 +02:00
fincs
04d3edce72 Proper argument parsing, reenable header file generation 2015-08-13 23:54:04 +02:00
fincs
e152f4e626 WIP multi-shader support, see details:
- picasso now accepts several input files, which are each compiled
  into DVLE objects inside the .shbin
- Uniform allocation is shared amongst all DVLEs.
- Constant allocation is private to each DVLE.
- Header file generation is temporarily disabled.
- New directives:
  .nodvle
    Disables the generation of a DVLE object for the current input file.
    This allows sharing code amongst shaders.
  .entry entryName
    Specifies the name of the entrypoint procedure of the current DVLE.
    By default it's 'main'.
2015-08-13 21:46:08 +02:00
fincs
b250513be0 Fix invalid string management [thanks to mtheall for pointing this out] 2015-03-06 21:16:00 +01:00
fincs
6e176f33c5 Geoshader support! 2015-03-04 22:42:34 +01:00
fincs
01104710fd Actually output whole opdesc 2015-03-02 18:07:06 +01:00
fincs
efa5faabd6 Fix .h header generation to support ivec and bool uniforms 2014-12-11 21:18:54 +01:00
fincs
694a07a8a1 Add support for integer vector uniforms/constants and boolean uniforms 2014-12-11 17:23:29 +01:00
fincs
d6485ea332 Correct uniform handling value [pointed out by smea] 2014-12-11 00:04:31 +01:00
fincs
b2e0b2b96e Downgrade to C++03 due to OSX's GCC being **MASSIVELY** out of date (4.0) 2014-12-10 22:29:42 +01:00
fincs
07099be5bb Add ARL & support for relative indexing, e.g: someArray[lcnt+1] 2014-11-19 18:28:41 +01:00
fincs
9d8ec29538 Initial commit 2014-11-16 18:59:54 +01:00