Commit Graph

18329 Commits

Author SHA1 Message Date
José Fonseca 5dc8e67078 tgsi: SSE2 optimized exp2, log2 and pow implementations.
Special care must be taken when calling compiler generated SSE2 functions
from the runtime generated SSE2: saving the xmm registers, and notify gcc
the stack is not 16byte aligned.

It would be more efficient to keep the stack pointer 16byte aligned, but
too hairy, and not consistent in all x86 architectures.

This has been tested in linux x86 and windows x86 userspace. Not tested on
x86-64 because it is broken for other reasons (even without this change).
2008-09-30 01:12:52 +09:00
José Fonseca 906336cd7c util: Header for SSE2 intrinsics portability. 2008-09-30 01:07:09 +09:00
José Fonseca 6607f2cf19 rtasm: Implement immediate group 1 instructions. Fix SIB emition. 2008-09-29 19:09:39 +09:00
Brian Paul fe1c9872ae cell: checkpoint: more work in emit_function_call()
Simple function call works now, but we don't save/restore the caller's registers yet.
2008-09-26 17:59:19 -06:00
Brian Paul 55b65d3b42 cell: stub-out sin/cos function bodies to avoid trashing caller's stack for now 2008-09-26 17:57:01 -06:00
Brian Paul 938e12c1ca gallium: SPU register comments 2008-09-26 17:06:22 -06:00
Brian Paul 9d00cd3fc7 cell: move command processing code into new spu_command.c file 2008-09-26 10:15:36 -06:00
Brian Paul bb01c1a78e cell: move debug-related declarations 2008-09-26 10:15:36 -06:00
Brian Paul f45d39fa34 cell: move debug macros into new spu_debug.h 2008-09-26 10:15:36 -06:00
Brian Paul a1189ea882 cell: move really_clear_tiles() 2008-09-26 10:15:35 -06:00
Brian Paul bac5900a14 cell: align instruction buffers to 8-byte, not 32-byte boundary 2008-09-26 10:15:35 -06:00
Brian Paul b5303446a8 cell: asst clean-up, var renaming 2008-09-26 10:15:35 -06:00
Brian Paul 6741739d1e cell: remove unneeded blend/depth_stencil subclasses 2008-09-26 10:15:35 -06:00
Brian Paul 164fb1299e cell: checkpoint: support for function calls in SPU shaders
Will be used for instructions like SIN/COS/POW/TEX/etc.  The PPU needs to
know the address of some functions in the SPU address space.  Send that
info to the PPU/main memory rather than patch up shaders on the SPU side.
Not finished/tested yet...
2008-09-26 10:15:35 -06:00
Brian Paul f5127909fb cell: inst reorder to save a cycle 2008-09-26 10:15:35 -06:00
Alan Hourihane 632055f831 st: add prototype for st_get_framebuffer_dimensions() 2008-09-26 15:08:57 +01:00
Alan Hourihane 6d3e2e7e92 st: export st_get_framebuffer_dimensions() to retrieve
the width & height of the fb
2008-09-26 15:05:01 +01:00
Brian Paul c7510ddc3f mesa: fix incorrect parameter order 2008-09-26 07:37:32 -06:00
Brian Paul 47bf268457 mesa: remove const qualifiers to match device driver interface function 2008-09-26 07:37:15 -06:00
Brian Paul 81234666fc gallium: rename tgsi_translate_mesa_program() to st_translate_mesa_program() 2008-09-26 07:31:42 -06:00
Brian Paul fad2dd8447 mesa: add some braces 2008-09-26 07:31:42 -06:00
Brian Paul f51cca72d3 mesa: fix/simplify initialization of vertex/fragment program limits
Defaults for program length, num ALU instructions, num indirections, etc.
basically indicate no limit for software rendering.  Driver should override
as needed.
2008-09-26 07:31:42 -06:00
Brian Paul b5e1a93036 mesa: increase MAX_INSTRUCTIONS 2008-09-26 07:31:42 -06:00
Brian Paul d01269a57f mesa: fix swizzle failure, fix typo 2008-09-26 07:31:42 -06:00
Brian Paul 6c72bc8089 mesa: fix default buffer object access value 2008-09-26 07:31:42 -06:00
Alan Hourihane e9c722b660 st: change from ** to * for st_unreference_framebuffer() 2008-09-26 14:20:15 +01:00
Keith Whitwell 6f83c30dd0 mesa: fix indenting 2008-09-26 14:09:20 +01:00
Keith Whitwell 9ee04ce4e4 dri: remove unused files present only on gallium-0.2 branch 2008-09-26 14:09:20 +01:00
Keith Whitwell fb8db63a89 Merge commit 'origin/master' into HEAD
Conflicts:

	src/mesa/vbo/vbo.h
	src/mesa/vbo/vbo_exec_api.c
	src/mesa/vbo/vbo_exec_draw.c
2008-09-26 14:09:04 +01:00
Alan Hourihane bb6a69d169 egl: cleanup doublebuffer check 2008-09-26 12:27:29 +01:00
Alan Hourihane cc6bdf49ca egl: switch to egl_glx.so as the default EGL driver for X. 2008-09-26 12:18:59 +01:00
Alan Hourihane 192f45606a egl: fudge with LIBGL_DRIVERS_PATH to pick up EGL specific DRI driver. 2008-09-26 12:18:16 +01:00
Alan Hourihane 8015f3ae3b egl: Add new EGL driver that wraps GLX. 2008-09-26 11:20:21 +01:00
Alan Hourihane d142f216d2 link EGL demos with -lGL 2008-09-26 11:20:20 +01:00
Brian 1e3a44fab0 mesa: fix cast/conversion for optional code 2008-09-25 19:57:34 -06:00
José Fonseca 9f3e37de17 util: Update fast_log2 article url. 2008-09-26 10:47:04 +09:00
Brian Paul b3c3bc63f0 mesa: fix typo (s/feadback/feedback/). Fixes broken selection/feedback. 2008-09-25 18:55:52 -06:00
Brian Paul 8124faf89d mesa: fix float->int mapping for glGetIntegerv(GL_DEPTH_CLEAR_VALUE) 2008-09-25 11:54:00 -06:00
Brian Paul 6222eb3fcd mesa: fix some VBO buffer object issues
The VBO module may use a real VBO or a malloc'd buffer for vertex storage.
Be careful not to accidentally replace the later with the former when drawing.
Check if using a real VBO at destroy time to prevent a double-free.
2008-09-25 11:03:46 -06:00
Sam Hocevar 507ef82077 mesa: fix function params to match prototypes 2008-09-25 09:58:27 -06:00
Sam Hocevar 7be5411ce6 mesa: prevent the slang code generator from aborting when faced with a sampler variable redeclaration. 2008-09-25 09:53:09 -06:00
Sam Hocevar 561787e697 i965: support for sin() and cos() in vertex shaders. 2008-09-25 09:49:36 -06:00
Sam Hocevar 831bfb9053 i965: more meaningful message for unsupported opcodes. 2008-09-25 09:49:18 -06:00
Eric Anholt c5945c2d17 intel: Fix clears to depth_stencil texture attachments.
Broken by 0adfd10210, showed up as an assertion
failure in a software fallback in the shadowtex demo when we failed to
recognize the texture format.
2008-09-24 15:13:19 -07:00
Alan Hourihane 4fe186f8dc add cso_hash_contains() function 2008-09-24 20:43:56 +01:00
Brian 1fe385fdc9 set SamplerUnit[] entry in load_texture() just to be safe
(cherry picked from commit fce4612f8a)
2008-09-24 10:15:07 -07:00
Brian dff0b0e772 use PROGRAM_CONSTANT instead of PROGRAM_STATE_VAR when generating immediates/literals
(cherry picked from commit fdc8636bdc)
2008-09-24 10:13:46 -07:00
Brian 9b7e5a51f4 set program->SamplersUsed bit when using a texture instruction 2008-09-24 10:13:31 -07:00
Brian 93fef22d05 Remove ctx field from texenvprog_cache 2008-09-24 10:11:37 -07:00
Brian fb3c41f504 include programopt.h
(cherry picked from commit 83fad68ec1)
2008-09-24 10:04:31 -07:00