summaryrefslogtreecommitdiffstats
path: root/src/mesa
Commit message (Collapse)AuthorAgeFilesLines
* mesa: add missing type check for function callsBrian Paul2008-11-261-0/+15
|
* mesa: add missing size check for assignment optimizationBrian Paul2008-11-261-1/+2
|
* mesa: remove debug codeBrian Paul2008-11-261-1/+0
|
* mesa: add some missing switch cases for generating state var stringsBrian Paul2008-11-261-10/+34
|
* mesa: added support for GLSL 1.20 array.length() methodBrian Paul2008-11-247-0/+112
| | | | This is the only method supported in GLSL 1.20 so we take a few short-cuts.
* mesa: support for GLSL 1.20 array typesBrian Paul2008-11-2411-2642/+2776
| | | | This allows syntax like "float[8] foo, bar;"
* mesa: add gl_program::Input/OutputFlags[] arrayBrian Paul2008-11-244-20/+33
| | | | | These arrays will indicate per-input or per-output options for vertex/fragment programs such as centroid-sampling and invariance.
* windows: replace free() with _mesa_unreference_framebuffer()Brian Paul2008-11-241-1/+1
| | | | Fixes invalid memory reference bug when exiting.
* mesa: copy centroid/invariance/precision info in parse_init_declarator()Brian Paul2008-11-241-1/+4
|
* mesa: check that varying variable qualifiers agreeBrian Paul2008-11-241-3/+28
|
* mesa: copy precision/variant/centroid info in slang_fully_specified_type_copy()Brian Paul2008-11-241-0/+3
|
* mesa: set flags for varying varsBrian Paul2008-11-241-4/+13
|
* mesa: rename program parameter flags to match other Mesa conventionsBrian Paul2008-11-242-8/+8
|
* mesa: copy Flags in _mesa_clone_parameter_list()Brian Paul2008-11-241-0/+1
|
* mesa: dump/debug varying vars listBrian Paul2008-11-241-0/+5
|
* mesa: added PROG_PARAM_ bits for invariant, flat/linear interpolationBrian Paul2008-11-242-2/+14
| | | | Plus, update the print/debug code.
* mesa: add Flags field to gl_program_parameterBrian Paul2008-11-244-24/+38
| | | | Only one flag defined so far: PROG_PARAM_CENTROID_BIT
* mesa: issue error, don't crash, when calling a prototyped, but undefined ↵Brian Paul2008-11-211-0/+7
| | | | | | function Bug #18659.
* mesa: better variable name: s/aux/store/Brian Paul2008-11-215-12/+15
|
* i965: Add support for accelerated CopyTexSubImage.Eric Anholt2008-11-213-68/+41
| | | | | | | | | | | There were hacks in EmitCopyBlit before to adjust offsets so that y=0 after the offsets had been adjusted for a negative pitch. It appears that those hacks were due to an unclear and surprising aspect of the hardware: inverting the pitch results in the blit into the specified rectangle being inverted, without the user needing to adjust y and base offset. Tested with piglit copytexsubimage test on 915GM and GM965. Should fix serious performance issues with ETQW and other applications.
* intel: Don't glBitmap fallback with scissoring enabled.Eric Anholt2008-11-211-6/+0
| | | | | The blit bitmap code already handles scissoring. This is a 15-100% speedup on blender benchmark.blend thanks to avoiding fallbacks. Bug #17951.
* i915: Don't overwrite i915's Viewport function from generic code.Eric Anholt2008-11-214-3/+12
| | | | Instead, have i965 and i915 both call the generic function from their Viewport.
* mesa: fix shadow sampling unit issue.Xiang, Haihao2008-11-201-1/+6
| | | | | texture comparison logic is bypassed if the currently bound texture is not a depth/depth_stencil texture.
* intel: fix i830 comment + backwards VB offsets.airlied2008-11-202-3/+3
| | | | According to Keith the docs have these offsets the other way around
* intel: fix i8xx vbo enable bitairlied2008-11-201-1/+1
|
* intel: add lots of i830 engine to intel_decode debugairlied2008-11-201-20/+110
|
* mesa: minor comment reformatttingBrian Paul2008-11-191-16/+13
|
* mesa: glsl compiler debug codeBrian Paul2008-11-191-141/+151
| | | | RETURN0 macro reports file/line before returning zero.
* mesa: rework GLSL array code generationBrian Paul2008-11-195-160/+371
| | | | | | | | | | | | | | We now express arrays in terms of indirect addressing. For example: dst = a[i]; becomes: MOV dst, TEMP[1 + TEMP[2].y]; At instruction-emit time indirect addressing is converted into ARL/ ADDR-relative form: ARL ADDR.x, TEMP[2].y; MOV dst, TEMP[1 + ADDR.x]; This fixes a number of array-related issues. Arrays of arrays and complex array/struct nesting works now. There may be some regressions, but more work is coming.
* mesa: don't realloc instruction buffer so oftenBrian Paul2008-11-191-13/+22
|
* mesa: updated commentBrian Paul2008-11-191-0/+2
|
* mesa: clamp luminance if needed.Xiang, Haihao2008-11-192-2/+10
| | | | | This fixes glReadPixels(GL_LUMINANCE, GL_FLOAT)/glGetTexImage(GL_LUMINANCE, GL_FLOAT) issue on fixed-point color buffers.
* mesa: no longer need Writemask field in GLSL IR nodesBrian Paul2008-11-134-69/+23
| | | | The Swizzle and Size fields carry all the info we need now.
* mesa: revamp GLSL instruction emit codeBrian Paul2008-11-131-244/+381
| | | | | | | | | | | | | | | This is a step toward better array handling code. In particular, when more than one operand of an instruction uses indirect addressing, we'll need some temporary instructions and registers. By converting IR storage to instruction operands all in one place (emit_instruction()) we can be smarter about this. Also, somewhat better handling of dst register swizzle/writemask handling. This results in tighter writemasks on some instructions which is good for SOA execution. And, cleaner instruction commenting with inst_comment(). Next: remove some more dead code and additional clean-ups...
* mesa: make writemask_string() non-staticBrian Paul2008-11-132-4/+7
|
* mesa: remove some do-nothing GLSL codeBrian Paul2008-11-131-16/+0
|
* mesa: fix accidental regression in GLSL built-in texture matrix lookupBrian Paul2008-11-131-0/+1
| | | | Was broken by commit 9aca9a4b72b2a7b378e50bd88f9c3324d07375ec.
* mesa: use the tighter definition of GLSL ftransform() from the gallium branchesBrian Paul2008-11-132-31/+40
|
* mesa: remove unused/obsolete __NormalMatrixTranspose matrixBrian Paul2008-11-133-188/+184
|
* mesa: fix bug in GLSL built-in matrix state lookupBrian Paul2008-11-131-2/+5
|
* mesa: tweak program register printing for RelAddr caseBrian Paul2008-11-131-1/+1
|
* mesa: fix generation of fixed function state when no vp existsAlan Hourihane2008-11-131-43/+41
|
* i965: Upload state on primitive switch, don't just prepare it.Eric Anholt2008-11-121-0/+1
| | | | | This was a regression in 59b2c2adbbece27ccf54e58b598ea29cb3a5aa85 that broke blender, among other apps.
* i965: Fix VB refcount leak on aperture overflow.Eric Anholt2008-11-121-0/+1
|
* i965: Fix up VS max_threads for G4X and removing a magic number.Eric Anholt2008-11-121-2/+14
| | | | | | As far as I can read in the docs, VS threads can be 1:1 with the pairs of VUE handles allocated for them. Also, G4X can run twice as many threads as before (though we won't unless the we bump the preferred URB entries for VS).
* i965: Fix up SF max_threads.Eric Anholt2008-11-121-1/+2
| | | | | | We were dividing the number of URB entries by two to get number of threads, which looks suspiciously like a copy'n'paste-o from brw_vs_state.c. Also, the maximum number of threads is 24, not 12.
* i965: Fix up clip min_nr_entries, preferred_nr_entries, and max_threads.Eric Anholt2008-11-122-2/+16
| | | | | | | | | The clip thread could potentially deadlock when processing tristrips since being moved back to dual-thread mode, as the two threads could each have 4 VUEs referenced and not be able to allocate another one since SF processing wasn't able to continue (needing 5 entries before it freed 2). In constrained URB mode, similar deadlock could even have occurred with polygons (so we cut back max_threads if we can't handle it any primitive type).
* i965: Update WM maximum threads for G4X.Eric Anholt2008-11-121-2/+7
|
* i965: Add a big comment explaining my understanding of URB management.Eric Anholt2008-11-121-1/+38
| | | | | It shouldn't offer anything new over what's in the docs (except for G4X notes), but here it's all in one place.
* mesa: allow relative indexing into all register files and indirect dst ↵Brian Paul2008-11-113-128/+128
| | | | register indexing