Brian [Tue, 12 Feb 2008 23:56:18 +0000 (16:56 -0700)]
Fix broken test.
As-is, if the texture was too large for the target, an assertion would fail.
Now check proxy texture first and if it works, then test non-proxy target.
Brian [Tue, 12 Feb 2008 23:38:56 +0000 (16:38 -0700)]
gallium: remove dead code
Brian [Tue, 12 Feb 2008 23:37:49 +0000 (16:37 -0700)]
gallium: added null ptr check
Brian [Tue, 12 Feb 2008 23:10:11 +0000 (16:10 -0700)]
gallium: rename st_fragment_program's fs field to cso to match st_vertex_program
Brian [Tue, 12 Feb 2008 23:06:51 +0000 (16:06 -0700)]
gallium: move gen-mipmap global/static vars into st_context
This fixes potential problems with multi-context programs.
Brian [Tue, 12 Feb 2008 22:53:37 +0000 (15:53 -0700)]
Set Min/MaxLod with glTexParameterf, not glTexParameteri
Brian [Mon, 11 Feb 2008 16:46:10 +0000 (09:46 -0700)]
press 0,1,2,etc keys for specific bias values
Brian [Tue, 12 Feb 2008 21:59:07 +0000 (14:59 -0700)]
tweak incr/decrements amounts for keyboard options
Brian [Tue, 12 Feb 2008 21:55:51 +0000 (14:55 -0700)]
gallium: remove unused first_level param from st_texture_create()
Brian [Tue, 12 Feb 2008 21:53:25 +0000 (14:53 -0700)]
gallium: clean-up, simplification of mipmapped textures
Remove pipe_texture->first_level (always implicitly zero). This means there's
never any unused mipmap levels at the top.
In the state tracker, we no longer re-layout mipmapped textures if the
MinLod/MaxLod texture parameters change. It's up to the driver to obey the
pipe_sampler->min/max_lod clamps.
Ben Skeggs [Tue, 12 Feb 2008 04:13:37 +0000 (15:13 +1100)]
nv40: fix inline u08/u16 indices
Brian [Mon, 11 Feb 2008 17:59:40 +0000 (10:59 -0700)]
gallium: take pitch/stride into account in mipmap generation
Brian [Mon, 11 Feb 2008 16:50:21 +0000 (09:50 -0700)]
gallium: comments about mipmap gen
Brian [Mon, 11 Feb 2008 16:43:30 +0000 (09:43 -0700)]
code refactoring, new next_mipmap_level_size() function
Brian [Mon, 11 Feb 2008 16:42:02 +0000 (09:42 -0700)]
gallium: implement software fallback for mipmap generation
This is used when we can't render to the surface type of the texture (such
as luminance/alpha).
Brian [Mon, 11 Feb 2008 16:38:36 +0000 (09:38 -0700)]
gallium: strip borders from textures passed to st_TexImage.
Manipulate the unpack params to skip the border. Gallium drivers won't support
texture borders.
Brian [Mon, 11 Feb 2008 16:35:28 +0000 (09:35 -0700)]
gallium: use _mesa_tex_target_to_face()
Brian [Mon, 11 Feb 2008 16:33:28 +0000 (09:33 -0700)]
added _mesa_tex_target_to_face()
Brian [Mon, 11 Feb 2008 15:56:18 +0000 (08:56 -0700)]
gallium: update comment about buffer map flags
Brian [Mon, 11 Feb 2008 15:18:43 +0000 (08:18 -0700)]
gallium: fix fragment/vertex typo
Brian [Fri, 8 Feb 2008 23:56:21 +0000 (16:56 -0700)]
refactor code, export _mesa_generate_mipmap_level()
Brian [Fri, 8 Feb 2008 23:46:12 +0000 (16:46 -0700)]
move _mesa_format_to_type_and_comps() to texformat.c
Brian [Fri, 8 Feb 2008 23:42:50 +0000 (16:42 -0700)]
reorder cases in do_row()
Brian [Fri, 8 Feb 2008 23:40:39 +0000 (16:40 -0700)]
re-indent do_row()
Brian [Fri, 8 Feb 2008 23:38:28 +0000 (16:38 -0700)]
checkpoint- consolidation in do_row()
Brian [Fri, 8 Feb 2008 23:35:44 +0000 (16:35 -0700)]
checkpoint- remove dependencies on gl_texture_format to make code re-usable by state tracker
Zack Rusin [Mon, 11 Feb 2008 15:47:28 +0000 (10:47 -0500)]
remove seperate llvm vs entry points
they're not necessary anymore. we use the same paths
as sse and tgsi code
Zack Rusin [Mon, 11 Feb 2008 14:43:59 +0000 (09:43 -0500)]
start genering soa type code in llvm paths
Zack Rusin [Wed, 6 Feb 2008 11:12:34 +0000 (06:12 -0500)]
disable llvm for fragment shaders for now
Zack Rusin [Tue, 5 Feb 2008 08:09:24 +0000 (03:09 -0500)]
rewrite the way cpu engine is handled
Zack Rusin [Mon, 4 Feb 2008 15:07:02 +0000 (10:07 -0500)]
rewrite the way we handle ir in llvm code
introduce intermediate step gallivm_ir before compiling it
down to the final llvm ir.
Zack Rusin [Fri, 25 Jan 2008 11:36:35 +0000 (06:36 -0500)]
add a stub of a lowering pass
Ben Skeggs [Sun, 10 Feb 2008 04:19:18 +0000 (15:19 +1100)]
nouveau: memory leak
Ben Skeggs [Sun, 10 Feb 2008 04:16:50 +0000 (15:16 +1100)]
nv40: prep for multiple pipe contexts on a single hw channel
Ben Skeggs [Sat, 9 Feb 2008 05:25:29 +0000 (16:25 +1100)]
nouveau: interface updates
Ben Skeggs [Sat, 9 Feb 2008 03:08:54 +0000 (14:08 +1100)]
nv40: delay all state emit until before draw
Brian [Fri, 8 Feb 2008 21:56:38 +0000 (14:56 -0700)]
gallium: include st_cb_drawpixels.h
Brian [Fri, 8 Feb 2008 21:55:33 +0000 (14:55 -0700)]
fix comment typos
Brian [Fri, 8 Feb 2008 21:54:18 +0000 (14:54 -0700)]
gallium: initial implemenation of auto mipmap generation in state tracker
Use hardware rendering to compute/render mipmap levels.
The fallback path (which will be used for non-renderable texture formats)
isn't working yet.
Brian [Fri, 8 Feb 2008 21:51:32 +0000 (14:51 -0700)]
gallium: added inClipCoords param to st_draw_vertices() to indicate coord system of vertices
Also, export st_make_passthrough_vertex_shader() from st_cb_drawpixels.c
Brian [Fri, 8 Feb 2008 21:46:47 +0000 (14:46 -0700)]
gallium: added draw_flush() call in softpipe_bind_sampler_state()
Brian [Fri, 8 Feb 2008 21:45:58 +0000 (14:45 -0700)]
Remove unused texunit parameter to ctx->Driver.GenerateMipmap()
Jerome Glisse [Fri, 8 Feb 2008 17:47:25 +0000 (18:47 +0100)]
intel_winsys: remove leftover code
Jerome Glisse [Fri, 8 Feb 2008 17:25:49 +0000 (18:25 +0100)]
failover: several fixes to failover pipe module
Michel Dänzer [Thu, 7 Feb 2008 19:44:42 +0000 (19:44 +0000)]
tgsi: Fall back to interpreter instead of assert(0) on unimplemented SSE code.
Michel Dänzer [Thu, 7 Feb 2008 19:43:34 +0000 (19:43 +0000)]
pipebuffer: Fix reversed assertion.
José Fonseca [Thu, 7 Feb 2008 10:59:17 +0000 (19:59 +0900)]
gallium: Conditionally use posix libraries/includes.
Brian [Wed, 6 Feb 2008 16:48:56 +0000 (09:48 -0700)]
Cell: silence unused var warnings
Brian [Wed, 6 Feb 2008 16:48:37 +0000 (09:48 -0700)]
gallium: #include p_debug.h since we use assert
Brian [Wed, 6 Feb 2008 16:35:33 +0000 (09:35 -0700)]
Cell: use mem_dup()
Brian [Wed, 6 Feb 2008 16:29:00 +0000 (09:29 -0700)]
gallium: use mem_dup()
Brian [Wed, 6 Feb 2008 16:28:20 +0000 (09:28 -0700)]
gallium: added mem_dup()
Brian [Wed, 6 Feb 2008 16:24:30 +0000 (09:24 -0700)]
gallium: change pipe->texture_create() to operate like the CSO functions
Now, pass in a template object and return a new object.
Brian [Wed, 6 Feb 2008 15:44:19 +0000 (08:44 -0700)]
clean-ups in guess_and_alloc_texture()
Brian [Wed, 6 Feb 2008 01:15:39 +0000 (18:15 -0700)]
plug in ctx->Driver.GenerateMipmap function
Brian [Wed, 6 Feb 2008 01:15:03 +0000 (18:15 -0700)]
Added ctx->Driver.GenerateMipmap() driver hook
Brian [Wed, 6 Feb 2008 01:13:28 +0000 (18:13 -0700)]
clean-ups
Brian [Wed, 6 Feb 2008 01:01:18 +0000 (18:01 -0700)]
added comment
Brian [Wed, 6 Feb 2008 00:55:16 +0000 (17:55 -0700)]
comments, clean-ups, consts
Brian [Wed, 6 Feb 2008 00:46:31 +0000 (17:46 -0700)]
clean-up
Brian [Tue, 5 Feb 2008 23:32:15 +0000 (16:32 -0700)]
gallium: add bitmap/drawpixels texcoord bias support
The state tracker will call pipe->get_paramf(PIPE_CAP_BITMAP_TEXCOORD_BIAS)
to get a bias factor for adjusting the texcoords used in bitmap/drawpixels.
This allows us to compensate for small differences in rasterization from
one device to another.
José Fonseca [Wed, 6 Feb 2008 16:07:49 +0000 (01:07 +0900)]
gallium: Bring latest fixes.
José Fonseca [Wed, 6 Feb 2008 05:37:49 +0000 (14:37 +0900)]
gallium: Use p_debug.h instead of non-portable stdio.h/assert.h functions.
José Fonseca [Wed, 6 Feb 2008 05:37:24 +0000 (14:37 +0900)]
gallium: Add forgotten return type.
José Fonseca [Wed, 6 Feb 2008 05:36:50 +0000 (14:36 +0900)]
gallium: Update scons instructions. Propagate user environment.
José Fonseca [Wed, 6 Feb 2008 04:27:49 +0000 (13:27 +0900)]
gallium: Cross-platform debugging helpers.
José Fonseca [Mon, 4 Feb 2008 08:02:08 +0000 (17:02 +0900)]
gallium: Portability guidelines.
Brian [Tue, 5 Feb 2008 22:12:18 +0000 (15:12 -0700)]
Cell: remove accidentally added OPT_FLAGS lines
Brian [Tue, 5 Feb 2008 22:07:36 +0000 (15:07 -0700)]
Cell: SIMD-ize tri_linear_coeff(), use vector float for vertex attributes in struct vertex_header
Brian [Tue, 5 Feb 2008 21:23:34 +0000 (14:23 -0700)]
Cell: re-enable inlined vertex buffers
Vertex data must be on a 16-byte address/offset so SIMD operations will work
properly in the SPU code.
Brian [Tue, 5 Feb 2008 21:21:48 +0000 (14:21 -0700)]
Cell: remove dummy fields, update/add some comments
Brian [Tue, 5 Feb 2008 21:21:01 +0000 (14:21 -0700)]
Cell: added cell_batch_alloc_aligned()
Ian Romanick [Tue, 5 Feb 2008 17:43:52 +0000 (09:43 -0800)]
Use _transpose_matrix4x4 from Cell SDK instead of my own version
Ian Romanick [Tue, 5 Feb 2008 00:03:55 +0000 (16:03 -0800)]
Add some debug messages
Ian Romanick [Sat, 2 Feb 2008 01:14:09 +0000 (17:14 -0800)]
More semi-trivial vectorization in the shader VM
Ian Romanick [Sat, 2 Feb 2008 01:12:20 +0000 (17:12 -0800)]
Vectorize vertex puller
Ian Romanick [Fri, 1 Feb 2008 22:58:38 +0000 (14:58 -0800)]
Vectorize all micro ops
Fold single instruction micro ops inline. Remove unused micro ops.
Ben Skeggs [Tue, 5 Feb 2008 13:26:49 +0000 (00:26 +1100)]
nv40: cleanup state handling a bit
Michal Krol [Tue, 5 Feb 2008 14:50:56 +0000 (07:50 -0700)]
gallium: Use align_free to free aligned memory.
Brian [Tue, 5 Feb 2008 01:05:37 +0000 (18:05 -0700)]
Cell: fix some alignment issues by aligning commands to 8-byte boundaries
Contributed by Ian Romanick.
Also, temporarily disable inlined vertex buffers. They need to be 16-byte
aligned...
Brian [Tue, 5 Feb 2008 01:03:05 +0000 (18:03 -0700)]
Cell: don't use VEC_LITERAL macro, doesn't work w/ SDK 3.0
Brian [Tue, 5 Feb 2008 01:02:21 +0000 (18:02 -0700)]
Cell: don't use VEC_LITERAL macro, doesn't work w/ SDK 3.0
Brian [Mon, 4 Feb 2008 23:48:36 +0000 (16:48 -0700)]
Cell: move float4 typedef (temporary datatype)
Brian [Mon, 4 Feb 2008 23:48:00 +0000 (16:48 -0700)]
Cell: fix small sampling error in sample_texture_bilinear()
Brian [Mon, 4 Feb 2008 23:06:51 +0000 (16:06 -0700)]
Cell: texture sampler functions always return vector float now
Texture colors look the same now, regardless of X display/pixel format
Brian [Mon, 4 Feb 2008 23:05:13 +0000 (16:05 -0700)]
Cell: added spu_unpack_A8R8G8B8()
Brian [Mon, 4 Feb 2008 23:04:50 +0000 (16:04 -0700)]
Cell: fix typo
Brian [Mon, 4 Feb 2008 22:17:50 +0000 (15:17 -0700)]
Cell: some basic blending code
Brian [Mon, 4 Feb 2008 22:10:35 +0000 (15:10 -0700)]
Cell: replace float 4 with vector float in eval_coeff()
Brian [Mon, 4 Feb 2008 22:06:10 +0000 (15:06 -0700)]
Cell: emit blend state to SPUs
Brian [Mon, 4 Feb 2008 20:23:07 +0000 (13:23 -0700)]
Cell: choose bilinear vs. nearest filtering according to sampler state
Brian [Mon, 4 Feb 2008 20:16:10 +0000 (13:16 -0700)]
Cell: improved bilinear filtering
avoid calling get_tex_tile() if all texels are in same tile
Brian [Mon, 4 Feb 2008 19:50:42 +0000 (12:50 -0700)]
Cell: implement basic bilinear texture sampler
Brian [Mon, 4 Feb 2008 19:50:16 +0000 (12:50 -0700)]
Cell: added spu_unpack_color(), spu_pack_R8G8B8A8()
Brian [Mon, 4 Feb 2008 18:02:47 +0000 (11:02 -0700)]
Cell: SIMD-ize more of texture sampling
Brian [Mon, 4 Feb 2008 16:54:21 +0000 (09:54 -0700)]
Cell: checkpoint: start to SIMD-ize texture sampling
Brian [Mon, 4 Feb 2008 15:53:18 +0000 (08:53 -0700)]
Cell: move tile clear code to flush_spans()
Brian [Mon, 4 Feb 2008 15:46:44 +0000 (08:46 -0700)]
Cell: clamp txmax, tymax in tile_bounding_box()
Also, added some debug printfs
Brian [Mon, 4 Feb 2008 15:45:33 +0000 (08:45 -0700)]
Cell: insert some draw_flush() calls
Ben Skeggs [Sun, 3 Feb 2008 14:37:07 +0000 (01:37 +1100)]
nv40: the 0x4497 version of curie doesn't support index buffers.