Commit graph

117072 commits

Author SHA1 Message Date
Brian
eabb7e66bd New _slang_adapt_call() function.
This is used to modify function calls (when possible) to make the arguments
map to the function parameters.  This includes "unrolling" vector types
and doing casts.

Example:
   vec2 v2 = vec2(1.2, 3.4)
   ivec3 iv = ivec3(false, v2);
Is converted into:
   ivec3 iv = ivec3(int(false), int(v2[0]), int(v2[1]))
2007-01-17 16:11:50 -07:00
Brian
397b807ad5 code clean-up, re-org. Added IR_F_TO_I support. 2007-01-17 16:05:03 -07:00
Brian
bb53124fca added IR_F_TO_I, update comments 2007-01-17 15:58:24 -07:00
Brian
0bad236cfb Added OPCODE_INT to convert 4 floats to 4 ints. 2007-01-17 15:54:14 -07:00
Brian
46a9241248 add texturing, other options 2007-01-17 10:25:44 -07:00
Brian
811f54fa75 Fix/clean-up a number of things related to variable/temporary allocation. 2007-01-17 09:54:31 -07:00
Keith Whitwell
3bfbe63806 New debug config for linux-dri 2007-01-17 08:44:13 +00:00
Xiang, Haihao
747c9129c0 I965: fix bug#9625-get the correct PV for quardstrip
The order of vertices in payload for quardstrip is (0, 1, 3, 2),
so the PV for quardstrip is c->reg.vertex[2].
2007-01-17 10:39:50 +08:00
Xiang, Haihao
afba8f0d30 Fix bug#9673
Cast from pointer to unsinged long and cast to pointer from
 unsinged long
2007-01-17 10:17:10 +08:00
Brian
552a65e454 Implement codegen for the selection operator ( b ? x : y ) 2007-01-16 17:38:39 -07:00
Brian
3596903068 fix typo 2007-01-16 16:53:41 -07:00
Brian
271d504ed7 draw a box, press 'a' to animate 2007-01-16 15:27:11 -07:00
Brian
9d0ae967d4 added some VerteAttrib funcs 2007-01-16 14:57:12 -07:00
Brian
f44ba11815 Added toyball and bumpmap tests using shaders from the OpenGL Shading Language (orange) book. 2007-01-16 14:55:43 -07:00
Brian
9b5dc1358a when automatically binding vertex attributes, start with attrib 1, not 0 2007-01-16 14:52:22 -07:00
Brian
4f027a33b9 remove dead code 2007-01-16 14:19:37 -07:00
Brian
0f91310bf3 comments 2007-01-16 14:17:57 -07:00
Brian
d90c655b05 implement logical or, xor, not 2007-01-16 14:15:05 -07:00
Brian
99e788fe56 some additional vector constructors 2007-01-16 14:10:30 -07:00
Stephane Marchesin
7c8f311e40 nouveau: Use the most recent card list. 2007-01-16 21:43:54 +01:00
Brian
156e583a35 fix _slang_gen_subscript() for the case when a simple vector is accessed as an array: convert index to a swizzle/writemask 2007-01-16 10:45:34 -07:00
Keith Whitwell
fea6e5a695 Don't special-case index, edgeflag.
Remove display list opcodes for INDEX and EDGEFLAG, handle them
through the regular ATTRIB mechanism now that Mesa understands them
to just be regular attribs.
2007-01-16 13:30:04 +00:00
Keith Whitwell
c53df49b8b Additional display list tests 2007-01-16 13:29:01 +00:00
Keith Whitwell
3ad12fab45 Merge vbo_0_1_branch
Hopefully leaving behind the cruft generated by the CVS import.
2007-01-16 11:24:08 +00:00
Keith Whitwell
6a3fdc3a1e Merge branch 'master' of git+ssh://keithw@git.freedesktop.org/git/mesa/mesa into vbo-0.2
Conflicts:

	src/mesa/array_cache/sources
	src/mesa/drivers/dri/i965/brw_context.c
	src/mesa/drivers/dri/i965/brw_draw.c
	src/mesa/drivers/dri/i965/brw_fallback.c
	src/mesa/drivers/dri/i965/brw_vs_emit.c
	src/mesa/drivers/dri/i965/brw_vs_tnl.c
	src/mesa/drivers/dri/mach64/mach64_context.c
	src/mesa/main/extensions.c
	src/mesa/main/getstring.c
	src/mesa/tnl/sources
	src/mesa/tnl/t_save_api.c
	src/mesa/tnl/t_save_playback.c
	src/mesa/tnl/t_vtx_api.c
	src/mesa/tnl/t_vtx_exec.c
	src/mesa/vbo/vbo_attrib.h
	src/mesa/vbo/vbo_exec_api.c
	src/mesa/vbo/vbo_save_api.c
	src/mesa/vbo/vbo_save_draw.c
2007-01-16 11:22:57 +00:00
Keith Whitwell
0b412f8f15 Merge branch 'vbo_0_1_branch' into vbo-0.2 2007-01-16 09:47:35 +00:00
Keith Whitwell
5363e3331b Merge branch 'master-merge' into vbo-0.2 2007-01-16 09:47:26 +00:00
Brian
0d55346156 Use arrow keys to pan and z/Z to zoom in/out to explore the fractal. 2007-01-15 17:48:19 -07:00
Brian
2ccd264695 Added new directory of GL shading language demos: glsl 2007-01-15 17:27:24 -07:00
Brian
f6507157e2 Reimplement the post-increment/decrement functions.
Instead of defining functions with an extra dummy parameter to distinguish
from the pre-incr/decr functions, just use new function names: __postIncr
and __postDecr.
2007-01-15 16:54:38 -07:00
Brian
c410994653 Implement the ++var and --var operators, improve some constructors. 2007-01-15 16:38:12 -07:00
Brian
0a097675f1 added vec3 constructor code 2007-01-15 16:34:33 -07:00
Brian
82258b7af3 added IR_ELEMENT 2007-01-15 16:33:54 -07:00
Brian
04ac15fd80 checkpoint: ++, -- and && operators 2007-01-15 15:51:49 -07:00
Brian
83d3ff590d Redo the way array indexes are handled. Resolve storage location at code emit time, not codegen time. 2007-01-15 13:58:45 -07:00
Jerome Glisse
a03fc82771 mesa: Update _Current along Current on fragment program bound.
Same as a previously committed patch for vertex program, we
update fragment program ptr _Current along the Current one
so that _Current can't end up pointing to a no more valid
program.
2007-01-15 21:21:10 +01:00
Brian
c807169888 remove old globals 2007-01-15 11:10:11 -07:00
Brian
a5bbe206a8 comments 2007-01-15 11:08:10 -07:00
Brian
8de3dc1701 Move some global vars into slang_assemble_ctx. 2007-01-15 11:07:46 -07:00
Patrice Mandin
7520478eb0 nouveau:nv10: fix setting clip region 2007-01-15 18:58:24 +01:00
Brian
4f5901b265 fix the subassig, mulassign and divassign cases 2007-01-15 10:35:59 -07:00
Brian
629fd78f79 clean-up slang_allocate_storage() 2007-01-15 10:35:03 -07:00
Keith Whitwell
584def75ad Remove unused index buffer. 2007-01-15 16:57:01 +00:00
Keith Whitwell
6ff9b48fe2 Don't special-case FOG attribute initialization.
Initial fog value was being set to {0,0,0,0}.  This results in vector
size 4, but isn't necessary.  The regular {0,0,0,1} works fine.
2007-01-15 14:30:16 +00:00
Keith Whitwell
50f76b9d9b Correctly initialize current attribute sizes.
Some legacy attributes (eg color) have an initial value other than {0,0,0,1}
which means that their initial size != 1 either.
2007-01-15 14:20:21 +00:00
keithw
82152a2a8e Remove debug, reenable inplace splitting. 2007-01-15 14:10:42 +00:00
Keith Whitwell
5464cd0a60 Split too-large draw commands.
Use the vbo_split_ functionality to split incoming drawing command
to fit within the fixed-size buffers used by software t&l module.
2007-01-15 13:54:08 +00:00
Keith Whitwell
2421b25dd7 Remove special-case handling for index and edgeflag
This isn't required with the changes to core mesa and the new
attribute layout.
2007-01-15 13:40:38 +00:00
keithw
1b7c24c33c Hook in split functionality 2007-01-15 11:58:06 +00:00
keithw
4557dfe132 Add vbo_split files 2007-01-15 11:54:40 +00:00