Brian Paul
b0c136cfb1
cell: remove old texture-related fields
2008-10-13 16:43:36 -06:00
Brian Paul
c05cabd646
cell: use fewer memory references in sample_texture4_bilinear_2()
2008-10-13 16:43:36 -06:00
Brian Paul
420e8cdf25
cell: remove more old texture code
2008-10-13 16:43:36 -06:00
Brian Paul
67425aaa09
cell: bilinear texture filtering using integer arithmetic
...
Fewer float/int conversions involved.
2008-10-13 16:43:36 -06:00
Brian Paul
c8fb368261
cell: remove old texture code
2008-10-13 16:43:35 -06:00
Brian Paul
3b07c28dee
cell: do texture sampling/filtering for four pixels at a time.
2008-10-13 16:43:35 -06:00
Brian Paul
734685549c
cell: added spu_unpack_A8R8G8B8_transpose4()
...
Plus, clearer shuffle masks in other funcs.
2008-10-13 16:43:35 -06:00
Alan Hourihane
5bc8ebb12b
mesa: when emitting an address load instruction, for
...
indexed elements ensure we write to a single register.
2008-10-13 12:30:40 +01:00
Brian Paul
ecac7996d4
cell: more instruction scheduling optimizations (MIN/MAX/LERP/etc)
...
Also, optimize register->memory stores.
2008-10-10 17:48:16 -06:00
Brian Paul
2a6c6fe01e
Merge commit 'origin/master' into gallium-0.2
2008-10-10 16:40:16 -06:00
Brian Paul
01e312a73b
cell: pass texture unit (sampler number) to txp() function
...
The glsl/multitex demo runs now.
2008-10-10 16:40:03 -06:00
Ian Romanick
33ff407874
intel: GLSL 1.20 is broken in Mesa, so disable it in the i965 driver
2008-10-10 16:40:03 -06:00
Eric Anholt
c011a9ca8c
i965: Add missing intel_pixel_draw.c symlink to fix build.
2008-10-10 16:40:03 -06:00
Brian Paul
24748268a3
mesa: fix asst. issues in _mesa_texstore_argb8888()
...
If we shift bytes into the texel word (or use the PACK_COLOR_8888 macro),
we don't have to worry about big vs. little endian. See comments about
texel formats in texformat.h.
Remove an unneeded/incorrect else-if clause that produced wrong results
on big-endian systems.
2008-10-10 16:34:08 -06:00
Brian Paul
bf9d9a9d01
mesa: include needed header
2008-10-10 16:34:08 -06:00
Brian Paul
f863ae1a04
mesa: remove unneeded includes
2008-10-10 16:34:08 -06:00
Brian Paul
85a3bf6dab
mesa: fix error codes in _mesa_GetObjectParameterivARB(), bug 17861
2008-10-10 16:34:08 -06:00
Brian Paul
3210a6d6c7
mesa: rename macro params to emphasize that there's no particular color ordering
2008-10-10 16:34:08 -06:00
Brian Paul
f63594bfef
mesa: remove unneeded includes
2008-10-10 16:34:08 -06:00
Brian Paul
d3403b5482
cell: add emit_RI10s() which does range checking on the 10-bit signed immediate field
...
This type of checking should be expanded to cover more instructions...
2008-10-10 14:57:57 -06:00
Brian Paul
f42ef6f39d
cell: additional 'offset' checking in spe_lqd(), spe_stqd()
2008-10-10 14:44:52 -06:00
Brian Paul
78c67a726f
cell: fix assertions in spe_lqd(), spe_stqd()
2008-10-10 14:36:18 -06:00
Brian Paul
53ae243869
cell: fix function prologue/epilogue code for large stack frames
...
The ai instruction is limited to a 10-bit signed immediate value.
2008-10-10 14:36:18 -06:00
Robert Ellison
adeed0f90f
CELL: fixing stencil bugs
...
These are the defects found and fixed so far. Several more have
been observed; I'm working on them.
- Fixed an error in spe_load_uint() that caused incorrect values to be
loaded if the given unsigned value had the low 18 bits as 0,
and that caused inefficient code to be emitted if the given value
had the high 14 bits as 0.
- Fixed a problem in stencil code generation where optional registers
weren't tracked correctly.
- Fixed a problem that the stencil function NEVER was acting as ALWAYS.
- Fixed several problems that could occur if stenciling were enabled but
depth was disabled.
- Fixed a problem with two-sided stencil writemask handling that could
cause a stencil writemask to not be applied.
- Fixed several state permutations that were incorrectly flagged as
not requiring stencil values to be calculated.
2008-10-10 14:15:51 -06:00
Ian Romanick
e700269441
intel: GLSL 1.20 is broken in Mesa, so disable it in the i965 driver
2008-10-10 11:47:43 -07:00
Brian Paul
02931db311
cell: call cell_flush_int() at end of cell_create_context()
...
Ensures that SPUs are initialized/ready before proceeding.
This fixes a spurious assertion failure when the SPU-side shader function info
hasn't been returned to the PPU before shader codegen.
2008-10-10 12:38:27 -06:00
Brian Paul
a13f61d34d
cell: fix LERP when dst reg is a src reg
...
Also, bump up frame size and fix some assertions.
2008-10-10 12:24:39 -06:00
Brian Paul
b3a68b24bd
replace 1.0/sqrt() with inversesqrt()
2008-10-10 12:04:49 -06:00
Brian Paul
a45d293fd9
cell: fix fm/fs copy & paste bug from a few commits ago
2008-10-10 12:04:19 -06:00
Brian Paul
e43af05311
cell: fix bug in emit_FLR() when src reg == dst reg
2008-10-10 11:56:03 -06:00
Brian Paul
dc7d213c54
cell: fix bug in emit_FRC() when src register == dst register.
...
With this fix, the glsl/brick demo runs.
2008-10-10 11:52:55 -06:00
Eric Anholt
5e9cb42aa6
i965: Add missing intel_pixel_draw.c symlink to fix build.
2008-10-10 09:43:15 -07:00
Brian Paul
086a56134f
cell: updates in response to draw's struct vertex_info changes
2008-10-10 08:44:29 -06:00
Keith Whitwell
3a3801c143
Merge commit 'origin/master' into gallium-0.2
...
Conflicts:
src/mesa/glapi/descrip.mms
src/mesa/shader/grammar/descrip.mms
2008-10-10 15:26:28 +01:00
Keith Whitwell
d7f1cb5b5a
Merge commit 'origin/gallium-0.1' into gallium-0.2
...
Conflicts:
src/gallium/auxiliary/gallivm/instructionssoa.cpp
src/gallium/auxiliary/gallivm/soabuiltins.c
src/gallium/auxiliary/rtasm/rtasm_x86sse.c
src/gallium/auxiliary/rtasm/rtasm_x86sse.h
src/mesa/main/texenvprogram.c
src/mesa/shader/arbprogparse.c
src/mesa/shader/prog_statevars.c
src/mesa/state_tracker/st_draw.c
src/mesa/vbo/vbo_exec_draw.c
2008-10-10 15:23:36 +01:00
Brian Paul
7ac1fc7766
cell: fix incorrect bitmask in spe_load_uint()
2008-10-09 19:54:46 -06:00
Brian Paul
02aea66b1a
mesa: toggle colormask values with r/g/b keys in tri-mask-tri.c
...
Plus misc clean-up.
2008-10-09 19:51:26 -06:00
Brian Paul
583098e3cb
cell: implement basic TXP instruction in fragment shaders
...
Lots of restrictions for now (one 2D texture, no mipmaps, etc.) for now
but basic texture demos work.
TEX, TXD, TXP do the same thing for the time being.
2008-10-09 19:51:26 -06:00
Brian Paul
f6e806a2b8
mesa: simple multiple textures test
2008-10-09 19:51:26 -06:00
Brian Paul
c201e357eb
cell: better immediate value allocation, better comments
2008-10-09 19:51:26 -06:00
Brian Paul
b9689791dd
cell: massage the emit functions to get better instruction scheduling
2008-10-09 19:51:26 -06:00
Brian Paul
2a3fa97be3
cell: more accurate comments
2008-10-09 19:51:26 -06:00
Alan Hourihane
ca5224945a
gallium: silence warning
2008-10-10 01:31:34 +01:00
Brian Paul
f7556fdd40
mesa: rasterizer state depends on ST_NEW_VERTEX_PROGRAM
...
Check for per-vertex point size must be done when vertex program changes.
2008-10-09 16:39:59 -06:00
Stephane Marchesin
db9de99925
Gallivm: cleanup soa storage.
2008-10-09 23:32:01 +02:00
Eric Anholt
7216679c19
i965: Accelerate depth textures with border color.
...
The fallback was introduced to fix bug #16697 , but made the test it was
fixing run excessively long.
2008-10-09 11:45:58 -07:00
Eric Anholt
91221483a6
i965: Actually hook up the accelerated DrawPixels support.
2008-10-09 10:23:47 -07:00
Eric Anholt
9aec1288ee
i915: Accelerate depth textures with border color.
...
The fallback was introduced to fix bug #16697 , but made the test it was
fixing run excessively long.
2008-10-08 23:55:58 -07:00
Brian Paul
d48a92e880
cell: implement function calls from shader code. fslight demo runs now.
...
Used for SIN, COS, EXP2, LOG2, POW instructions. TEX next.
Fixed some bugs in MIN, MAX, DP3, DP4, DPH instructions.
In rtasm code:
Special-case spe_lqd(), spe_stqd() functions so they take byte offsets but
low-order 4 bits are shifted out. This makes things consistant with SPU
assembly language conventions.
Added spe_get_registers_used() function.
2008-10-08 20:44:32 -06:00
Brian Paul
a4e477433f
cell: implement more built-in shader functions, link spu code with -lm
2008-10-08 20:34:35 -06:00