Commit Graph

42869 Commits

Author SHA1 Message Date
Ian Romanick 09a4ba0fc3 glsl: Process redeclarations before initializers
If an array redeclaration includes an initializer, the initializer
would previously be dropped on the floor.  Instead, directly apply the
initializer to the correct ir_variable instance and append the
generated instructions.

Fixes bugzilla #34374 and piglit tests glsl-{vs,fs}-array-redeclaration.

NOTE: This is a candidate for stable release branches.  0292ffb8 and
8e6cb9fe are also necessary.
2011-03-04 16:33:31 -08:00
Ian Romanick 0292ffb85c glsl: Refactor AST-to-HIR code handling variable initializers 2011-03-04 16:32:37 -08:00
Ian Romanick 8e6cb9fe51 glsl: Refactor AST-to-HIR code handling variable redeclarations 2011-03-04 16:32:37 -08:00
Christoph Bumiller b0698396dc nv50,nvc0: get format desc for TIC entry from sampler view format
Fixes piglit/tex-srgb.
2011-03-05 00:51:07 +01:00
Christoph Bumiller 1f5d6fc59b nv50,nvc0: share sampler state creation 2011-03-05 00:51:07 +01:00
Christoph Bumiller e4c968cdbb nv50,nvc0: update the format tables
Removed sampler view support for USCALED/SSCALED, the texture unit
refuses to convert to non-normalized float. The enums are treated
like UNORM.

Removed duplicate format related headers.
2011-03-05 00:51:07 +01:00
Christoph Bumiller f556b897eb nvc0: use m2mf for resource_copy_region if formats are equal
Which is always the case, but we'll keep the 2D engine blitter
nonetheless.
2011-03-05 00:51:07 +01:00
Christoph Bumiller 4fae7da9a3 nv50,nvc0: fix texture layer issues 2011-03-05 00:51:07 +01:00
Jakob Bornecrantz 9f0acfe138 i915g: Use tgsi_info from fragment shader instead 2011-03-05 00:23:27 +01:00
Daniel Vetter 98b418e56e i915g: use passthough shader for empty fragment programs
The hw doesn't like it - demos/shadowtex is broken. The emitted shader
isn't totally empty though, the depth write fixup gets emitted instead.
Maybe that one is somewhat fishy, too?

Idea for this patch from Jakob Bornecrantz.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2011-03-04 23:46:20 +01:00
Benjamin Franzke 22d9ae11bc egl_dri2: Fix incompatible vfunc-pointer warning 2011-03-04 16:36:37 -05:00
Benjamin Franzke e71920929e egl/wayland: Move wayland-egl into a subdir
This hopefully fixes wayland-egl's dependency
resolution for autogenerated wayland-drm headers.
2011-03-04 16:36:37 -05:00
Eric Anholt 1a57717bbe i965: Apply a workaround for the Ironlake "vertex flashing".
This is an awful hack and will hurt performance on Ironlake, but we're
at a loss as to what's going wrong otherwise.  This is the only common
variable we've found that avoids the problem on 4 applications
(CelShading, gnome-shell, Pill Popper, and my GLSL demo), while other
variables we've tried appear to only be confounding.  Neither the
specifications nor the hardware team have been able to provide any
enlightenment, despite much searching.

https://bugs.freedesktop.org/show_bug.cgi?id=29172
Tested by:	Chris Lord <chris@linux.intel.com> (Pill Popper)
Tested by:	Ryan Lortie <desrt@desrt.ca> (gnome-shell)
2011-03-04 12:04:42 -08:00
Marek Olšák bdb811772f r300g: preliminary implementation of clamping controls 2011-03-04 17:47:56 +01:00
Marek Olšák 10a893106b r300g: implement FP16 alpha test 2011-03-04 17:47:56 +01:00
Marek Olšák 910bac63df r300g: implement blending for some of non-RGBA8 formats
Blending is now fully supported with:
- R8_UNORM
- R8G8_UNORM
- B8G8R8A8_UNORM
- R16G16B16A16_FLOAT (r500-only)

Blending is partially supported (DST_ALPHA not working) with:
- L8A8_UNORM
- I8_UNORM
- B5G5R5A1_UNORM
- B10G10R10A2_UNORM

The other formats can't do blending.
2011-03-04 17:47:56 +01:00
José Fonseca 4a4f6a3901 draw: Silence tgsi_emit_sse2 failed messages. 2011-03-04 16:29:13 +00:00
José Fonseca 6838c9ce74 tgsi: Disable SSE2 code generation.
It's broken now that tgsi_exec_machine::Inputs/Ouputs are pointers.

Temporary if anybody still cares about tgsi_sse2.c. Permanent otherwise.
2011-03-04 14:54:24 +00:00
José Fonseca c8e904e159 scons: Unbreak mingw cross compilation. 2011-03-04 14:44:39 +00:00
Marek Olšák ba48811fa8 st/mesa: set PIPE_BIND_RENDER_TARGET for sRGB formats if UNORM is supported
Because the format can be changed to UNORM in a surface.

This fixes:
state_tracker/st_atom_framebuffer.c:163:update_framebuffer_state:
Assertion `framebuffer->cbufs[i]->texture->bind & (1 << 1)' failed.
2011-03-04 14:52:45 +01:00
José Fonseca 5378983417 scons: Get glsl2 and glcpp programs building correctly. 2011-03-04 13:11:49 +00:00
José Fonseca 12d17bcadf glsl/glcpp: Use stdio.h instead of unistd.h. 2011-03-04 12:53:14 +00:00
José Fonseca f52660c3dc glsl: Define YY_NO_UNISTD_H on MSVC. 2011-03-04 12:49:55 +00:00
José Fonseca d40b868db5 gallium: Define __func__ on MSVC. 2011-03-04 11:55:36 +00:00
Christoph Bumiller cf143c1f4d Merge remote branch 'origin/nvc0' 2011-03-04 11:02:10 +01:00
Chris Wilson 9d31138f53 i965: Fix extending VB packets
Computation of the delta of this array from the last had a silly little
bug and ignored any initial delta==0 causing grief in Nexuiz and
friends.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-03-04 09:58:31 +00:00
Chris Wilson 18dd7932c7 i965: Handle URB_FENCE erratum for Broadwater
There is a silicon bug which causes unpredictable behaviour if the
URB_FENCE command should cross a cache-line boundary. Pad before the
command to avoid such occurrences. As this command only applies to
gen4/5, do the fixup unconditionally as the specs do not actually state
for which chip it was fixed (and the cost is negligible)...

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-03-04 09:58:31 +00:00
Chris Wilson 1546291e5b i965: Align index to type size and flush if the type changes
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-03-04 09:58:31 +00:00
Chris Wilson 1c0d09cd4e intel: Add couple of missing gen6 commands to decode
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-03-04 09:58:31 +00:00
Chris Wilson b93684f5f3 i965: Prevent using a zero sized (or of unknown type) vertex array
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-03-04 09:58:30 +00:00
Dave Airlie 137d44e0f2 r600g: disable tiling by default again.
we still have a lot of corner cases that aren't working.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2011-03-04 08:47:10 +10:00
José Fonseca 9f3c59a350 tgsi: Update assert.
Elements(mach->Inputs) is wrong now that mach->Inputs is dynamically
allocated.
2011-03-03 19:23:04 +00:00
Kenneth Graunke 09e1bebc25 glcpp: Remove trailing contexts from #if rules.
These are now unnecessary.
2011-03-03 10:42:37 -08:00
Kenneth Graunke f20656e944 glcpp: Rework lexer to use a SKIP state rather than REJECT.
Previously, the rule deleted by this commit was matched every single
time (being the longest match).  If not skipping, it used REJECT to
continue on to the actual correct rule.

The flex manual advises against using REJECT where possible, as it is
one of the most expensive lexer features.  So using it on every match
seems undesirable. Perhaps more importantly, it made it necessary for
the #if directive rules to contain a look-ahead pattern to make them
as long as the (now deleted) "skip the whole line" rule.

This patch introduces an exclusive start state, SKIP, to avoid REJECTs.
Each time the lexer is called, the code at the top of the rules section
will run, implicitly switching the state to the correct one.

Fixes piglit tests 16384-consecutive-chars.frag and
16385-consecutive-chars.frag.
2011-03-03 10:42:37 -08:00
Kenneth Graunke b56f30c2b2 glcpp/tests: Update 063-comments.c.expected to match output.
The expected result has been out of sync with what glcpp produces for
some time; glcpp's actual result seems to be correct and is very close to
GCC's cpp.  Updating this will make it easier to catch regressions in
upcoming commits.
2011-03-03 10:42:37 -08:00
Jakob Bornecrantz 4bd27cfecc rbug: Fix depth stencil surface not being sent to the client 2011-03-03 18:29:17 +00:00
José Fonseca 5d0e8beaa2 scons: More tweaks to fix MinGW build. 2011-03-03 16:57:38 +00:00
José Fonseca dbfbb8cf6d scons: Ensure generated headers are in the include path. 2011-03-03 15:43:18 +00:00
José Fonseca 54d8c5e3c2 scons: Add human friendlier build messages for lex/yacc. 2011-03-03 15:42:58 +00:00
José Fonseca 8987109c27 scons: Always load lex/yacc tool.
lex/yacc is not loaded by default when toolchain is not default either,
e.g., when toolchain=crossmingw.
2011-03-03 15:28:36 +00:00
Christoph Bumiller 3bf92a281b nv50: check grclass instead of chipset for 3D caps 2011-03-03 12:32:40 +01:00
Christoph Bumiller 7048ad62f8 nv50: increase size of shader code bo
512 KiB should be quite enough, but dynamic resize might be nicer.
2011-03-03 12:32:40 +01:00
Ben Skeggs 6b4e3e8941 nouveau: allow pipe driver to define which buffers should start in sysmem
PIPE_BIND_CONSTANT_BUFFER alone was OK for nv50/nvc0, but nv30 will need
to be able to set others on certain chipsets.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-03 15:56:20 +10:00
Zou Nan hai 118ecb1a22 i965: SNB GT1 has only 32k urb and max 128 urb entries.
Signed-off-by: Zou Nan hai <nanhai.zou@intel.com>
2011-03-03 10:30:06 +08:00
Kenneth Graunke 2e756f3d6f glsl: Remove unused glcpp/Makefile.am.
This is a remnant of when glsl2 lived in its own repository.
2011-03-02 15:25:49 -08:00
Kenneth Graunke 8be828c3b3 glsl: Remove 'tests' subfolder.
These have long since moved to piglit and aren't useful to have here.
2011-03-02 15:25:49 -08:00
Christian König 8d9ea4c4e7 r600g: correct mega_fetch_count in fetch shader 2011-03-03 00:23:15 +01:00
Zack Rusin ff2a0faba0 tgsi: defer allocation of huge inputs/outputs until we have a gs 2011-03-02 17:45:22 -05:00
Ian Romanick d569cc4d44 docs: added news item for 7.9.2 and 7.10.1 releases 2011-03-02 14:37:59 -08:00
Ian Romanick 910820daf4 docs: All links to 7.9.2 and 7.10.1 release notes 2011-03-02 14:37:59 -08:00