Eric Anholt
0fd97db8b0
glsl2: Associate the GLenum for the type with builtin GLSL types.
2010-06-25 16:35:22 -07:00
Eric Anholt
bda27424cf
glsl2: Use the parser state as the talloc context for dead code elimination.
...
This cuts runtime by around 20% from talloc_parent() lookups.
2010-06-25 13:38:38 -07:00
Eric Anholt
364fcd8ee1
glsl2: Start integrating ir_to_mesa.cpp into shader_api.h
...
The compiler is now called by the driver, and generates program
instructions. Parameter lists are still not set up, so the driver
chokes on it shortly thereafter.
2010-06-25 12:37:21 -07:00
Eric Anholt
7f2bf62d25
glsl2: Use Mesa types instead of duping them into our program.h.
2010-06-25 12:25:19 -07:00
Eric Anholt
2a3d46dd46
glsl2: Fix dependencies. (at least partially)
2010-06-25 12:23:20 -07:00
Eric Anholt
0a1b54df7a
glsl2: Replace the GLSL compiler with the glsl2 project.
2010-06-24 17:23:21 -07:00
Eric Anholt
3d6012303c
glsl2: Wrap includes of C interfaces with extern "C".
2010-06-24 17:23:19 -07:00
Eric Anholt
f4869f3326
glsl2: Remove files that had been imported for standalone.
2010-06-24 17:14:00 -07:00
Eric Anholt
e82ddb781a
glsl2: Stop .gitignoring the old standalone build system.
2010-06-24 15:52:56 -07:00
Eric Anholt
9aa0b6d728
glsl2: Move the Mesa IR codegen into mesa/shader/
2010-06-24 15:49:18 -07:00
Eric Anholt
bcc13b7444
Merge branch 'glsl2-head' into glsl2
...
This brings in the standalone GLSL compiler that we are planning on
replacing the existing Mesa GLSL compiler. It currently targets GLSL
1.20 and the Mesa IR.
2010-06-24 15:47:40 -07:00
Eric Anholt
e5cf3aadb8
glsl2: Add a README file for the new compiler.
2010-06-24 15:46:53 -07:00
Eric Anholt
2928588267
glsl2: Move the compiler to the subdirectory it will live in in Mesa.
2010-06-24 15:36:00 -07:00
Kristian Høgsberg
a663a63718
glsl: Recject rect samplers when GL_ARB_texture_rectangle is disabled
2010-06-04 09:06:34 -04:00
Brian Paul
1f2b495b55
glsl: implement support for GL_EXT_texture_array
...
GL_EXT_texture_array is different from the existing GL_MESA_texture_array
support in that the former is only supported for GLSL, not fixed-function.
The shadow compare versions of the sampler functions haven't been tested
yet. The non-shadow versions have been tested with a new piglit test.
2010-02-25 20:11:55 -07:00
Vinson Lee
83a5b7e468
glsl/apps: Assert that ftell does not return an error.
2010-02-22 23:49:50 -08:00
Vinson Lee
d1aafb33b5
glsl/cl: Prevent possible buffer overflow.
2010-02-21 00:36:50 -08:00
Vinson Lee
ae41339d4c
glsl/cl: Prevent possible string overflow.
2010-02-20 23:27:07 -08:00
Brian Paul
5b392ff49a
glsl/apps: print usage info if insufficient args
2010-02-17 08:59:02 -07:00
Michal Krol
cb66e9f2b4
glsl/pp: Remove sl_pp_get_extension_state().
...
Parse extension tokens to track current state of extension enables.
2010-02-17 11:22:01 +01:00
Michal Krol
27a68bd14a
glsl/cl: Parse layout qualifiers only when an appropriate extension enabled.
2010-02-17 11:21:59 +01:00
Michal Krol
a21215a74e
glsl/cl: Properly emit layout qualifier list.
2010-02-17 11:21:58 +01:00
Brian Paul
de5928a615
sl/pp: re-do extension testing code
...
The #extension directive should not effect which extension preprocessor
symbols are defined/undefined; only whether/how the compiler accepts
language features defined by the extension.
2010-02-16 10:43:36 -07:00
Michal Krol
fa8acb0528
glsl/pp: Do not try to enable extension `all'.
2010-02-16 10:04:58 +01:00
Michal Krol
ee67167358
glsl/pp: Fix handling of if/elif/else cases.
...
Once if/elif evalutes to true, all subsequent conditions are always false.
2010-02-15 21:33:22 +01:00
Vinson Lee
f0e1499805
glsl/pp: Add asserts to check for null pointer deferences.
2010-02-15 00:30:31 -08:00
Brian Paul
46f788c2e5
glsl/cl: implement parsing for layout qualifiers
...
For GL_ARB_fragment_coord_conventions support.
2010-02-13 13:50:45 -07:00
Brian Paul
3b53b7e8b0
glsl/pp: fix incorrect extension enable flag for warn mode
2010-02-13 13:48:32 -07:00
Brian Paul
3251f31d59
glsl/pp: fix extension enable/disable options
...
Now the #extension name: disable/enable flags do the right thing.
Fixes glean/glsl1 "Preprocessor test (extension test 3)"
2010-02-10 10:49:50 -07:00
Michal Krol
8b1c332a77
Simplify GLSL extension mechanism.
...
Since extension name and extension name string are the same, collapse
them into one name.
2010-02-10 18:04:07 +01:00
Michal Krol
c1395a71ac
glsl/pp: Fix ifdef directive for extension names.
2010-02-10 17:55:29 +01:00
Vinson Lee
c73dbce891
glsl/pp: Silence GCC "no previous prototype" warning.
2010-01-26 00:47:31 -08:00
Brian Paul
4c041fac96
glsl: remove __inline directive
...
It makes no difference with gcc -O3, for example.
2010-01-18 11:06:57 -07:00
José Fonseca
cbb23523a8
glsl: Ignore programs.
2010-01-01 12:16:19 +00:00
Brian Paul
561a107df7
glsl: added default case in _fetch_token() to silence warnings
2009-12-29 08:47:40 -07:00
José Fonseca
7abdaf574a
scons: Fix xlib build.
...
After glsl rework merge.
2009-12-28 22:53:40 +00:00
Keith Whitwell
b2a615e3cd
glsl/pp: move static functions out of header file
2009-12-23 16:10:37 +00:00
Keith Whitwell
cdd25ab8cf
glsl/pp: quieten compiler about missing case statements
2009-12-23 16:10:37 +00:00
Dave Airlie
55c43ee315
glsl: make stack compile.
...
it would be nice if this stuff would be test built on mesa's primary
platform with mesa's primary build system.
Signed-off-by: Dave Airlie <airlied@redhat.com>
2009-12-21 09:10:21 +10:00
Michal Krol
1071ad70f5
glsl/apps: Update after glsl cl interface changes.
2009-12-20 21:19:10 +01:00
Michal Krol
d801c296c6
glsl: Do syntax parsing inline with processing.
2009-12-20 21:19:07 +01:00
Michal Krol
9c15948125
glsl/apps: Update after glsl pp interface changes.
2009-12-20 21:19:03 +01:00
Michal Krol
e0f57a37b2
glsl/apps: Do not print number of eaten tokens in version.
...
This is due to the glsl pp interface changes.
2009-12-20 21:19:02 +01:00
Michal Krol
0874ce48a6
glsl/apps: Print error line number in compile.
2009-12-20 21:19:01 +01:00
Michal Krol
d696cb279d
glsl/pp: Do processing inline with tokenisation.
2009-12-20 21:18:59 +01:00
Michal Krol
7631dca25b
glsl/pp: Remove outdated TODO.
...
Already implemented in mesa compiler using predefined symbols.
2009-12-20 21:18:58 +01:00
Michal Krol
e9aa65d2b7
glsl/pp: Report correct error line for purify and tokeniser errors.
2009-12-20 21:18:57 +01:00
Sedat Dilek
294bd53d4b
glsl/apps: Add dummy install target to fix 'make install'
...
Signed-off-by: Brian Paul <brianp@vmware.com>
2009-12-17 12:46:55 -07:00
José Fonseca
491f384c39
scons: Get GLSL code building correctly when cross compiling.
...
This is quite messy. GLSL code has to be built twice: one for the
host OS, another for the target OS.
2009-12-10 16:30:08 +00:00
Brian Paul
289eab5389
glsl/sl: fix _parse_boolconstant()
...
Need to emit the radix before the digits.
This fixes several glean/glgl1 regressions.
2009-12-10 09:16:39 -07:00