Commit graph

342 commits

Author SHA1 Message Date
057033f2e3 Compiler - OP_{TEXTURE,PROFILE,CLEAR} 2017-11-13 10:02:16 +01:00
415d565d72 Compiler - More ops + code reorg + call args order 2017-11-13 09:25:32 +01:00
6c58e8669f Compiler - Conditionals 2017-11-12 22:20:11 +01:00
bf1c4aa1b0 Compiler - Metadata for operators' stack effects 2017-11-12 18:38:31 +01:00
dd4c1ba7cd Ops - Operator metadata 2017-11-12 17:46:47 +01:00
87b46284ab Compiler - Progress on bytecode generator
+ added a technical node for call arguments
2017-11-12 17:01:13 +01:00
f97bb9b596 Parser - Changes to AST for the if instruction
The "else" case is now specific (to value 0), while the "then" case
is the default.
2017-11-12 11:23:29 +01:00
e8460456e6 Parser - Technical nodes in conditional instructions 2017-11-12 11:13:38 +01:00
abb2c02d61 Compiler - Started work
Committing as I need to make a few adjustments to the AST in order to
simplify things.
2017-11-12 10:50:05 +01:00
8806cd81d2 Parser - Finished type checks
... I think. Unless I forgot something, which is likely.
2017-11-11 16:53:21 +01:00
773efeff54 Parser - Errors when using inputs in initialisation 2017-11-11 16:16:22 +01:00
5d3aa32e9d Parser - Some clean-up in previously added code 2017-11-11 16:14:04 +01:00
84cdfa38de Parser - Initial ugly impl of argument type resolution 2017-11-11 15:05:20 +01:00
3e184f5796 Syntax highlighting - time/width/height built-ins 2017-11-11 12:15:03 +01:00
5933179f43 Parser - Prevent built-ins from being declared local 2017-11-11 12:05:03 +01:00
4d54ffe9e8 Parser - Improved type checking re: locals 2017-11-11 12:00:20 +01:00
949e4099ec Parser - Type checking for inputs and global identifiers 2017-11-11 10:17:35 +01:00
36a3e5e26f Parser - Check local variable declarations 2017-11-11 09:54:38 +01:00
e21e5cefb2 Parser - Type checking 2017-11-11 09:18:45 +01:00
65cbebd150 Parser - Progress on type checking prototype 2017-11-10 23:16:04 +01:00
d944ff80f3 Parser - Clean-up in AST node definitions 2017-11-10 23:09:36 +01:00
7abf50ae61 Minor fixes to previous commit
* Restrict clear to frame
* Restrict viewport to frame, as it used to be
* Moved viewport clearing to render code
2017-11-10 22:12:24 +01:00
b98c2247ae Parser - clear instruction 2017-11-10 22:09:24 +01:00
a455f2ad40 Parser - main-output instruction 2017-11-10 21:56:28 +01:00
1ee448a4c0 Script - FXAA ported
A pair of missing instructions: clear and main-output
2017-11-10 21:46:15 +01:00
424dca64e9 Script - Combine pass ported 2017-11-10 21:24:47 +01:00
e0929d6ec4 Parser - Local variable declarations 2017-11-10 21:01:35 +01:00
9515d64400 Parser - Support for LODs in texture and framebuffers 2017-11-10 20:38:17 +01:00
9e583c1374 Ported bloom to script
Breaks the parser because we don't support LODs for textures and
framebuffers. Also we need a command for local variables.
2017-11-10 18:28:56 +01:00
46972c7e60 Parser - Sampler definition instruction 2017-11-10 17:18:29 +01:00
7e5b69e714 Vim syntax file for demo.srd 2017-11-10 16:02:30 +01:00
b6738aff95 Parser - Partial prototype for type registry 2017-11-10 14:29:36 +01:00
eae82f1f9a Parser - (odbg) instruction 2017-11-10 12:48:57 +01:00
448acdf16b Parser - Framebuffer definition command 2017-11-10 10:15:56 +01:00
d02ab91767 Parser - Support for (uniforms)/(uniforms-i) 2017-11-09 23:20:48 +01:00
351614123e Parser - Split parser off from nodes code 2017-11-09 18:27:28 +01:00
9cf7d8c434 Parser - Various new instructions implemented 2017-11-09 18:24:39 +01:00
c9155abd12 Shaders - Using T_Set in some places 2017-11-09 12:14:21 +01:00
d83743d072 Parser - Moved prototypes
Prototypes for
-> call graph generation, argument count check
-> enforcement of instruction restrictions
moved to main parser code
2017-11-09 12:13:08 +01:00
b0401c5134 Sets - Now in corelib 2017-11-09 09:41:28 +01:00
17810a58bf Sets - Index-backed implementation 2017-11-09 09:36:06 +01:00
752b4977e6 Sets - Free & clear (inb4 blood parasites) 2017-11-09 09:10:11 +01:00
e40417384d Sets - Copy/move cons/ass, comments 2017-11-09 08:51:07 +01:00
a6c068988b Sets - Prototyping (will be moved to corelib) 2017-11-08 18:00:33 +01:00
b4f448c21f Parser - Moved some constructors to the header 2017-11-08 12:29:03 +01:00
397f1c5c75 Parser - prototype - restrictions on instruction use 2017-11-08 11:48:24 +01:00
c093ba2213 Adaptations to changes in corelib 2017-11-08 09:09:21 +01:00
14288e3c87 Parser - Prototyping call checks 2017-11-07 13:24:01 +01:00
67b644ac54 Parser - Visitor test 2017-11-07 09:10:17 +01:00
103fbcb6f2 Parser - Input instruction 2017-11-07 07:43:18 +01:00