Commit Graph

60 Commits

Author SHA1 Message Date
Hajime Hoshi
853c1f2b92 internal/shaderir/glsl: Bug fix: Remove uncalled functions
Some built-in functions like dFdx is not available in a vertex shader,
then a function that calls such built-in function should not be in
a vertex shader.

Closes #1701
2021-07-09 20:22:40 +09:00
Hajime Hoshi
77b51e4707 internal/shader: Add more tests and improve the comment
Updates #1192
2021-04-09 01:25:37 +09:00
Hajime Hoshi
1cdc6ea72b internal/shader: Bug fix: Treat multiple constant definitions in one statement correctly
Updates #1192
2021-04-09 01:18:38 +09:00
Hajime Hoshi
59a80cf953 internal/shader: Implement basic constants
Updates #1192
2021-04-09 00:00:49 +09:00
Hajime Hoshi
185e367295 shader: Implement cap function
Fixes #1361
2020-10-17 23:36:09 +09:00
Hajime Hoshi
3c71eba446 shaderir: Bug fix: Implement atan2 for Metal correctly
Fixes #1360
2020-09-22 04:29:34 +09:00
Hajime Hoshi
ab004031d0 shader: Reland: Bug fix: Checking unused variables defined with var 2020-09-17 17:46:35 +09:00
Hajime Hoshi
154f86e6c1 shader: Check unused local variables
Fixes #1328
2020-09-13 22:36:41 +09:00
Hajime Hoshi
d001f49ad7 shader: Bug fix: Treat multiple-context at return correctly 2020-09-12 17:44:04 +09:00
Hajime Hoshi
2fb1033183 shader: Initialize output parameters explicitly 2020-09-12 00:35:14 +09:00
Hajime Hoshi
337f44c916 shader: Add Metal tests
Fixes #1340
2020-09-10 01:19:02 +09:00
Hajime Hoshi
f61a916e4a shaderir/glsl: Bug fix: Calculate local variable indices correctly
Fixes #1339
2020-09-08 00:19:07 +09:00
Hajime Hoshi
4308bbbc31 shader: Check the existence of 'return' 2020-09-06 22:33:27 +09:00
Hajime Hoshi
55f0c983ba shader: Bug fix: Ignore blank identifiers for the duplication check
Fixes #1330
2020-09-03 03:03:06 +09:00
Hajime Hoshi
4ac11bf156 shader: Bug fix: Treat number literals in function calls correctly 2020-09-03 02:45:22 +09:00
Hajime Hoshi
0b1d29b6e7 shader: Bug fix: Returning value's integer literals were wrong 2020-09-03 02:10:52 +09:00
Hajime Hoshi
a9b94a183b shader: Implement swapping variables
Fixes #1248
2020-08-16 18:40:45 +09:00
Hajime Hoshi
06ed4f5444 shader: Implement len function
Fixes #1279
2020-08-16 02:07:39 +09:00
Hajime Hoshi
f6c3e0579f shaderir: Adopt the precision 10 for float literals
Adopted the same precision of (*math/big.Float).String().
2020-08-13 00:01:16 +09:00
Hajime Hoshi
50cd33ed9b shader: Bug fix: Use integer literals in the integer context
Fixes #1299
2020-08-12 13:47:22 +09:00
Hajime Hoshi
18732ca879 shader: Bug fix: Wrong type deduction with int(x)
Fixes #1298
2020-08-12 12:16:22 +09:00
Hajime Hoshi
ee049a19ac shader: Bug fix: Wrong local variable index in a block in the fragment entry point 2020-08-10 02:29:49 +09:00
Hajime Hoshi
9b6b306ca3 shader: Bug fix: Wrong local variable index in a block in an entry point 2020-08-10 02:22:09 +09:00
Hajime Hoshi
e534fe8246 shader: Add more tests using a for-loop 2020-08-10 01:14:42 +09:00
Hajime Hoshi
5d2606b6a5 shader: Bug fix: Wrong local variable indices in blocks 2020-08-10 01:09:02 +09:00
Hajime Hoshi
a0494210c3 shader: Bug fix: Wrong local variable index in a block 2020-08-09 23:14:28 +09:00
Hajime Hoshi
5dc0d4e1a4 shader: Add more tests about 'for' loops 2020-08-09 22:26:57 +09:00
Hajime Hoshi
dee8690502 shaderir/glsl: Bug fix: Copying an array did not work on GLSL
Fixes #1286
2020-08-09 22:18:58 +09:00
Hajime Hoshi
07514a37c8 shaderir/glsl: Bug fix: Initialize an array
Updates #1285
2020-08-09 04:59:29 +09:00
Hajime Hoshi
a4334c5464 shader: Use arrays at uniform variables
Fixes #1274
2020-08-01 17:22:10 +09:00
Hajime Hoshi
ac16564e95 shaderir: Add indexing
Fixes #1235
2020-07-29 23:49:57 +09:00
Hajime Hoshi
a0549820fd shadeir: Add array composite literals
Updates #1235
2020-07-29 23:49:54 +09:00
Hajime Hoshi
004b279e4f shader: Add array initialization
Updates #1235
2020-07-29 22:43:51 +09:00
Hajime Hoshi
d9c54bc0d0 shader: Implement an array variable
Updates #1235
2020-07-29 02:27:05 +09:00
Hajime Hoshi
a43efb66b2 shaderir: Bug fix: Function prototypes were required for GLSL
Fixes #1267
2020-07-28 00:04:03 +09:00
Hajime Hoshi
385ff8efdf shader: Bug fix: Wrong local variable names at for-loop
Fixes #1245
2020-07-13 22:49:15 +09:00
Hajime Hoshi
0e6f4fccc0 shader: Add break/continue 2020-07-13 02:59:11 +09:00
Hajime Hoshi
c02213e900 shader: Use the loop counters in the test 2020-07-13 01:48:00 +09:00
Hajime Hoshi
2ca551cdc6 shader: Implement 'for' statement
Fixes #1230
2020-07-13 01:44:05 +09:00
Hajime Hoshi
e15ee77e8e shader: Implement operators ++ and -- 2020-07-12 23:07:30 +09:00
Hajime Hoshi
4a8bd688a9 shader: Bug fix: index out of range at defining a var 2020-07-12 18:40:01 +09:00
Hajime Hoshi
98ae0826c7 shaderir: Bug fix: Early-returns in the entry points didn't work
Fixes #1238
2020-07-05 17:57:57 +09:00
Hajime Hoshi
f4a72165e4 shader: Bug fix: Comparison with constants didn't work 2020-07-05 17:33:10 +09:00
Hajime Hoshi
8369a4cc15 shader: Bug fix: Wrong out-params when returning is in a block 2020-07-05 04:30:14 +09:00
Hajime Hoshi
ce4732a7dc shader: Treat if's 'init' part correctly
Updates #1230
2020-07-05 04:08:57 +09:00
Hajime Hoshi
380b7382ac shader: Add 'if'
Updates #1230
2020-07-05 02:33:49 +09:00
Hajime Hoshi
f362455387 shader: Bug fix: correct type deduction from 'mat2*vec2'
Fixes #1236
2020-07-04 20:08:01 +09:00
Hajime Hoshi
f10263fff7 shader: Bug fix: Test failures 2020-06-21 22:32:54 +09:00
Hajime Hoshi
c36d2165e6 shader: Parse number literals in unary expressions correctly
Fixes #1190
2020-06-21 21:47:27 +09:00
Hajime Hoshi
29b70bea95 shader: Parse number literals in binary expressions correctly
Updates #1190
2020-06-21 21:32:40 +09:00