Brian Paul
c51c822ee0
i965: rewrite the code for handling shader subroutine calls
...
Previously, the prog_instruction::Data field was used to map original Mesa
instructions to brw instructions in order to resolve subroutine calls. This
was a rather tangled mess. Plus it's an obstacle to implementing dynamic
allocation/growing of the instruction buffer (it's still a fixed size).
Mesa's GLSL compiler emits a label for each subroutine and CAL instruction.
Now we use those labels to patch the subroutine calls after code generation
has been done. We just keep a list of all CAL instructions that needs patching
and a list of all subroutine labels. It's a simple matter to resolve them.
This also consolidates some redundant post-emit code between brw_vs_emit.c and
brw_wm_glsl.c and removes some loops that cleared the prog_instruction::Data
fields at the end.
Plus, a bunch of new comments.
2009-02-13 17:18:36 -07:00
Brian Paul
74b6d55864
i965: add missing break for OPCODE_RET case
...
This doesn't effect correctness, but we were emitting an extraneous ADD.
2009-02-13 17:18:36 -07:00
Brian Paul
97937e0ac8
i965: the return value of translate_insn() is never used. Make it void.
2009-02-13 17:18:36 -07:00
Brian Paul
2f2082bf16
i965: minor clean-ups
2009-02-13 17:18:36 -07:00
Brian Paul
2f78d4a2cd
i965: code clean-ups, comments, and minor refactoring
2009-02-13 17:18:36 -07:00
Brian Paul
7cffcaaba1
i965: updated comments
2009-02-13 17:18:35 -07:00
Brian Paul
643d940138
intel: turn on GL_ARB_shading_language_120
...
It's done in the Mesa GLSL compiler. The only part of it that might
matter in drivers is the centroid sampling option for MSAA.
2009-02-13 17:18:35 -07:00
Brian Paul
11b75eafc7
i965: more reformatting/clean-up
2009-02-13 17:18:35 -07:00
Brian Paul
1a693e90b5
i965: s/__inline/INLINE/
2009-02-13 17:18:35 -07:00
Brian Paul
984c9636ed
i965: formatting and indentation fixes
2009-02-13 17:18:35 -07:00
Brian Paul
14dc493733
i965: fix inconsistant indentation in brw_wm.c
2009-02-13 17:18:35 -07:00
Robert Ellison
88b702e8c4
i965: Eric Anholt's patch for bumping up texture sizes
...
I'm committing this because it fixes a conform failure; the failure occurs
on the TextureProxy test, where the test attempts to create proxy textures
at every level, but fails at the last level (border == 1, width == 1,
height == 1) because it's beyond MAX_TEXTURE_LEVELS.
Eric's original comment was:
idr said that in his review swrast was ready for it, and the 965 driver is
advertising it already though it has been resulting in many crashes due to
arrays using these defines not being big enough.
2009-02-13 15:19:04 -07:00
Corbin Simpson
073a73e4c7
r300-gallium: Various thingies.
...
Add formats to framebuffer emit, fix up shader function names,
make sure fragment format is emitted for r500.
2009-02-13 08:18:26 -08:00
Dan Nicholson
c273dfe6a2
Add dummy install target for glew to fix 'make install'
...
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-02-13 07:41:51 -08:00
Dan Nicholson
2977cee38e
autoconf: Add GLEW needed by progs when building GLUT
...
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-02-13 07:41:51 -08:00
Brian Paul
ac53b1b034
mesa: check if TNL state is null in _tnl_free_vertices() to avoid potential segfault
...
_tnl_free_vertices() is called from several places during context tear-down.
Depending on the order in which the swrast, swrast_setup and tnl context is
destroyed we could hit a null pointer here. This doesn't seem to be an
actual issue with any Mesa drivers, but let's be safe.
2009-02-13 08:11:01 -07:00
Brian Paul
6559107c7a
mesa: add additional texture size/limit assertions
2009-02-13 07:44:15 -07:00
Jakob Bornecrantz
afe24b94b3
egl: Doesn't depend on xorg or pixman
2009-02-12 03:59:07 +01:00
Corbin Simpson
8a2d0005af
r300-gallium: Take care of various bad dereferences in shader setup.
...
Unbreaks glxinfo.
2009-02-12 23:36:21 -08:00
Corbin Simpson
fe7863f3f8
r300-gallium: Fix linker error a few linker warnings.
...
A few prototypes, a missing header, a misspelled macro.
2009-02-12 20:47:15 -08:00
Corbin Simpson
1d2c31df41
r300-gallium: Fix build errors.
2009-02-12 20:35:17 -08:00
Joakim Sindholt
92661bcbad
r300-gallium: fix OUT_CS_ONE_REG and use where applicable
...
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
2009-02-12 20:24:27 -08:00
Corbin Simpson
0d60a3f33c
r300-gallium: r300 passthrough shader, static shader objects, and clear code.
2009-02-12 20:20:41 -08:00
Corbin Simpson
637b24a590
r300-gallium: Add r300 passthrough shader.
2009-02-12 20:01:09 -08:00
Joakim Sindholt
f2a36d334c
r300: minor fixes and clear up some surface_fill
...
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
2009-02-12 18:14:48 -08:00
Corbin Simpson
affe0311fa
r300-gallium: Add r500 passthrough shader assembly.
...
This allows a simple passthrough fragment shader to be provided on r500.
2009-02-12 18:09:14 -08:00
Corbin Simpson
08e324fff3
r300-gallium: Fix typo in texture buffer size request.
2009-02-12 18:09:03 -08:00
Jakob Bornecrantz
e46dca58b2
intel: Only build winsys with built state trackers
2009-02-13 01:21:51 +01:00
Jakob Bornecrantz
3ede3776e2
gallium: Add a bunch of autoconf options
...
./configure --help for more info
2009-02-13 01:21:51 +01:00
Benjamin Close
25ac2801d7
galium: Makefile fixes: -Werror=implicit-function-declaration -> -Werror-implicit-function-declaration
...
Found-By: Tinderbox
2009-02-13 10:12:17 +10:30
Jakob Bornecrantz
67fc3ace65
intel: Make gem export the drm_api_hocks
2009-02-12 22:05:37 +01:00
Jakob Bornecrantz
5ac8b4e4d9
intel: Remove the old depricated dri1 winsys
2009-02-12 22:05:37 +01:00
Jakob Bornecrantz
56d88aece9
intel: Remove the ttm backend
...
RIP ttm, its been fun knowing you.
2009-02-12 22:05:37 +01:00
Robert Ellison
5de5ab428c
glDrawBuffers(n==0) is valid
...
According to the GL spec, calling glDrawBuffers() with n == 0 is a
valid operation (and essentially prevents drawing to any buffers).
But _msa_DrawBuffersARB() was producing a GL_INVALID_VALUE error in
this case.
This fix adjusts the error check, and makes a small change to the
ctx->Driver.DrawBuffer() call below to ensure that, if n == 0,
Driver.DrawBuffer() is called with GL_NONE and that buffers[0] is
*not* referenced in this case (since we don't know whether it is valid).
Internal identifier: 365833
2009-02-12 13:47:36 -07:00
Brian Paul
f1a59a6dd7
mesa: use new ST_CALLOC_STRUCT() macro in gallium state tracker
2009-02-12 10:14:36 -07:00
Brian Paul
1a2f4dd876
mesa: consistantly use mesa memory-functions in gallium state tracker
...
Use _mesa_malloc(), _mesa_free(), etc everywhere, not malloc(), free(), etc.
Still using CALLOC_STRUCT() at this point.
2009-02-12 10:11:55 -07:00
Brian Paul
19dff5efc1
mesa: don't include m_xform.h where not needed
2009-02-12 09:23:46 -07:00
Brian Paul
987aedd7dc
mesa: move _mesa_transform_vector() from m_xform.c to m_matrix.c
...
m_xform.c is omitted from gallium builds but _mesa_transform_vector() is
still needed.
2009-02-12 09:23:46 -07:00
Brian Paul
f45fa84319
mesa: remove unused functions in m_xform.[ch]
...
The functions are:
_mesa_project_points()
_mesa_transform_bounds3()
_mesa_transform_bounds2()
_mesa_transform_point_sz()
2009-02-12 09:23:46 -07:00
Brian Paul
e8cd8be03b
mesa: restore FLUSH_VERTICES() in _mesa_notifySwapBuffers()
2009-02-12 09:23:46 -07:00
Brian Paul
9eff576c94
mesa: remove empty, unneeded mathmod.h header
2009-02-12 09:23:46 -07:00
José Fonseca
5ef5162103
glut: Fix broken font symbols when gcc visibility attributes used.
2009-02-12 15:50:33 +00:00
Jakob Bornecrantz
2c8c09edda
egl: Use only libdrm structs for kms
2009-02-11 16:56:30 +01:00
José Fonseca
7ef8e4e181
progs: Prevent clash with min macro.
2009-02-12 13:54:55 +00:00
José Fonseca
b5c901a730
glut: Don't try to guess system headers.
...
Just include them, especially such basic header as stdlib.h
2009-02-12 13:54:54 +00:00
Keith Whitwell
f5cca127b0
tgsi: keep immediate file info uptodate
...
Make sure the stats for TGSI_FILE_IMMEDIATE are uptodate. Previously
we just had immediate_count, but file_*[TGSI_FILE_IMMEDIATE] were
bogus.
2009-02-12 13:30:01 +00:00
José Fonseca
6fe421cf46
scons: Unbreak mingw builds.
2009-02-12 12:59:58 +00:00
José Fonseca
b93d305725
scons: Build xlib state tracker regardless of DRI settings.
2009-02-12 12:06:30 +00:00
José Fonseca
73ccabc124
scons: Build DLLs/EXEs with more memory debugger friendlier settings.
2009-02-12 12:06:30 +00:00
Brian Paul
492e61d94f
softpipe: asst clean-ups, const correctness, comments
2009-02-11 22:13:17 -07:00