mesa.git
17 years agomove some functions, disable some code in preparation for removing assembly code
Brian [Fri, 2 Feb 2007 21:51:09 +0000 (14:51 -0700)]
move some functions, disable some code in preparation for removing assembly code

17 years agofix emit_tex() breakage
Brian [Fri, 2 Feb 2007 21:47:03 +0000 (14:47 -0700)]
fix emit_tex() breakage

17 years agoremove slang_export.c and related code
Brian [Fri, 2 Feb 2007 21:24:24 +0000 (14:24 -0700)]
remove slang_export.c and related code

17 years agoRemove old slang linker code.
Brian [Fri, 2 Feb 2007 21:05:55 +0000 (14:05 -0700)]
Remove old slang linker code.

17 years agoremove slang_link.c and slang_analyse.c
Brian [Fri, 2 Feb 2007 21:05:25 +0000 (14:05 -0700)]
remove slang_link.c and slang_analyse.c

17 years agoremove old linker stuff
Brian [Fri, 2 Feb 2007 21:04:58 +0000 (14:04 -0700)]
remove old linker stuff

17 years agoadded newline at end
Brian [Fri, 2 Feb 2007 20:54:24 +0000 (13:54 -0700)]
added newline at end

17 years agoRemove obsolete files.
Brian [Fri, 2 Feb 2007 20:53:28 +0000 (13:53 -0700)]
Remove obsolete files.

17 years agoremove slang_execute.c, slang_execute_x86.c
Brian [Fri, 2 Feb 2007 20:49:39 +0000 (13:49 -0700)]
remove slang_execute.c, slang_execute_x86.c

17 years agoRemove all dependencies on the old slang interpreter/executor.
Brian [Fri, 2 Feb 2007 20:49:07 +0000 (13:49 -0700)]
Remove all dependencies on the old slang interpreter/executor.

17 years agoreindent
Brian [Fri, 2 Feb 2007 19:08:26 +0000 (12:08 -0700)]
reindent

17 years ago_slang_evaluate_int() no longer used
Brian [Fri, 2 Feb 2007 19:07:57 +0000 (12:07 -0700)]
_slang_evaluate_int() no longer used

17 years agouse _slang_simplify() to evaluate array sizes
Brian [Fri, 2 Feb 2007 19:02:53 +0000 (12:02 -0700)]
use _slang_simplify() to evaluate array sizes

17 years agoMove guts of slang_lookup_constant() into a new function in slang_simplify.c
Brian [Fri, 2 Feb 2007 19:01:29 +0000 (12:01 -0700)]
Move guts of slang_lookup_constant() into a new function in slang_simplify.c

17 years agoreplace abort() with _mesa_problem()
Brian [Fri, 2 Feb 2007 18:42:04 +0000 (11:42 -0700)]
replace abort() with _mesa_problem()

17 years agofix maxInst argument
Brian [Fri, 2 Feb 2007 18:37:58 +0000 (11:37 -0700)]
fix maxInst argument

17 years agotry to simplify variable initializers
Brian [Fri, 2 Feb 2007 18:32:59 +0000 (11:32 -0700)]
try to simplify variable initializers

17 years agounroll inner loop of interpolate_varying()
Brian [Fri, 2 Feb 2007 18:23:16 +0000 (11:23 -0700)]
unroll inner loop of interpolate_varying()

17 years agosimplify derivative-related code
Brian [Fri, 2 Feb 2007 18:20:08 +0000 (11:20 -0700)]
simplify derivative-related code

17 years agosimplify interpolate_texcoords()
Brian [Fri, 2 Feb 2007 18:19:43 +0000 (11:19 -0700)]
simplify interpolate_texcoords()

17 years agoReplace color, z, w, texture interpolants with new generic attrib interpolants.
Brian [Fri, 2 Feb 2007 18:01:01 +0000 (11:01 -0700)]
Replace color, z, w, texture interpolants with new generic attrib interpolants.

17 years agoNew span attrStart/attrStepX/attrStepY fields to replace fog, specular, etc. fields...
Brian [Fri, 2 Feb 2007 16:46:43 +0000 (09:46 -0700)]
New span attrStart/attrStepX/attrStepY fields to replace fog, specular, etc. fields.  More to come.

17 years agoget rid of unused span->start field
Brian [Fri, 2 Feb 2007 16:09:13 +0000 (09:09 -0700)]
get rid of unused span->start field

17 years agoFix logic in _slang_simplify(): vec2() constructor case wasn't getting used.
Brian [Fri, 2 Feb 2007 01:11:19 +0000 (18:11 -0700)]
Fix logic in _slang_simplify(): vec2() constructor case wasn't getting used.

17 years agocomments
Brian [Thu, 1 Feb 2007 17:08:07 +0000 (10:08 -0700)]
comments

17 years agoremove slang_label.c until it's ready
Brian [Thu, 1 Feb 2007 16:52:26 +0000 (09:52 -0700)]
remove slang_label.c until it's ready

17 years agoNew SWspanarrays attribs[] array.
Brian [Thu, 1 Feb 2007 16:51:48 +0000 (09:51 -0700)]
New SWspanarrays attribs[] array.

Replace texcoord[], varying[], etc. arrays with single attribs[] array, indexed
by FRAG_ATTRIB_* values.
Eliminates need to copy data into fragment program machine input registers.
Will lead to future clean-ups.

17 years agosilence uninitialized var warning
Brian [Thu, 1 Feb 2007 16:25:55 +0000 (09:25 -0700)]
silence uninitialized var warning

17 years agosilence uninitialized var warning
Brian [Thu, 1 Feb 2007 16:24:41 +0000 (09:24 -0700)]
silence uninitialized var warning

17 years agomove span-related types/tokens into s_span.h
Brian [Thu, 1 Feb 2007 15:24:02 +0000 (08:24 -0700)]
move span-related types/tokens into s_span.h

17 years agoadditional assertions, bump up MAX_EXEC
Brian [Thu, 1 Feb 2007 15:18:03 +0000 (08:18 -0700)]
additional assertions, bump up MAX_EXEC

17 years agodisable all x86 code, broken and will eventually be removed
Brian [Thu, 1 Feb 2007 00:01:52 +0000 (17:01 -0700)]
disable all x86 code, broken and will eventually be removed

17 years agoOverhaul handling of writemasks/swizzling. This fixes two problem cases:
Brian [Wed, 31 Jan 2007 23:34:54 +0000 (16:34 -0700)]
Overhaul handling of writemasks/swizzling.  This fixes two problem cases:
vec2 v;  v.x = v.y = 1.0;  // chained assignment
vec4 v;  v.zx = vec2(a,b);  // swizzled writemask

17 years agoNew asm instruction and IR_CLAMP node type to allow clamping to [0,1] with instructio...
Brian [Wed, 31 Jan 2007 15:55:10 +0000 (08:55 -0700)]
New asm instruction and IR_CLAMP node type to allow clamping to [0,1] with instruction saturate-write option.  Not finished yet.

17 years agoallow fragment-only and vertex-only programs
Brian [Wed, 31 Jan 2007 15:47:12 +0000 (08:47 -0700)]
allow fragment-only and vertex-only programs

17 years agofix _mesa_get_uniform_location() so it uses the given program handle
Brian [Tue, 30 Jan 2007 23:55:03 +0000 (16:55 -0700)]
fix _mesa_get_uniform_location() so it uses the given program handle

17 years agonoise() works now
Brian [Mon, 29 Jan 2007 02:02:03 +0000 (19:02 -0700)]
noise() works now

17 years agonoise functions
Brian [Mon, 29 Jan 2007 02:01:35 +0000 (19:01 -0700)]
noise functions

17 years agosimple noise test
Brian [Mon, 29 Jan 2007 02:01:04 +0000 (19:01 -0700)]
simple noise test

17 years agocombine emit_unop(), emit_binop(), emit_triop() into emit_arith()
Brian [Sun, 28 Jan 2007 23:26:09 +0000 (16:26 -0700)]
combine emit_unop(), emit_binop(), emit_triop() into emit_arith()

17 years agoimplement mix() with LRP instruction
Brian [Sun, 28 Jan 2007 23:11:11 +0000 (16:11 -0700)]
implement mix() with LRP instruction

17 years agoLots of vartable clean-ups, fixes. Report an error message when we run out
Brian [Sun, 28 Jan 2007 19:49:47 +0000 (12:49 -0700)]
Lots of vartable clean-ups, fixes.  Report an error message when we run out
of registers, rather than crash.

17 years agominor clean-ups
Brian [Sun, 28 Jan 2007 19:13:27 +0000 (12:13 -0700)]
minor clean-ups

17 years agominor updates
Brian [Sun, 28 Jan 2007 19:11:10 +0000 (12:11 -0700)]
minor updates

17 years agoClean-up of var/temp allocation function parameters.
Brian [Sun, 28 Jan 2007 03:29:33 +0000 (20:29 -0700)]
Clean-up of var/temp allocation function parameters.

17 years agoImproved register allocation: allow four 'float' vars or temporaries to share a singl...
Brian [Sun, 28 Jan 2007 03:06:41 +0000 (20:06 -0700)]
Improved register allocation: allow four 'float' vars or temporaries to share a single register.  Clean-up needed.

17 years agoasst fixes, tranpose span->varying array indexes
Brian [Thu, 25 Jan 2007 17:54:52 +0000 (10:54 -0700)]
asst fixes, tranpose span->varying array indexes

17 years agofixes, clean-ups, transpose span->varying array indexing
Brian [Thu, 25 Jan 2007 17:52:48 +0000 (10:52 -0700)]
fixes, clean-ups, transpose span->varying array indexing

17 years agonew comments, ideas
Brian [Thu, 25 Jan 2007 17:51:53 +0000 (10:51 -0700)]
new comments, ideas

17 years agoremove some parenthesis
Brian [Wed, 24 Jan 2007 21:15:01 +0000 (14:15 -0700)]
remove some parenthesis

17 years agouse FRAG_BIT_TEX()
Brian [Wed, 24 Jan 2007 21:14:14 +0000 (14:14 -0700)]
use FRAG_BIT_TEX()

17 years agofix varying interpolation
Brian [Wed, 24 Jan 2007 21:13:36 +0000 (14:13 -0700)]
fix varying interpolation

17 years agoonly setup varying vars that will be used
Brian [Wed, 24 Jan 2007 21:13:02 +0000 (14:13 -0700)]
only setup varying vars that will be used

17 years agoadded FRAG_BIT_TEX() and FRAG_BIT_VAR() macros
Brian [Wed, 24 Jan 2007 21:12:08 +0000 (14:12 -0700)]
added FRAG_BIT_TEX() and FRAG_BIT_VAR() macros

17 years agoupdated comment
Brian [Wed, 24 Jan 2007 00:41:25 +0000 (17:41 -0700)]
updated comment

17 years agoindicate which opcodes are used by Mesa GLSL, updated comments
Brian [Wed, 24 Jan 2007 00:39:25 +0000 (17:39 -0700)]
indicate which opcodes are used by Mesa GLSL, updated comments

17 years agofix g++ warnings/errors
Brian [Tue, 23 Jan 2007 23:37:51 +0000 (16:37 -0700)]
fix g++ warnings/errors

17 years agoadded shading.html link
Brian [Sun, 21 Jan 2007 17:37:25 +0000 (10:37 -0700)]
added shading.html link

17 years agoAdded a page with shading language status, tips, etc.
Brian [Sat, 20 Jan 2007 20:40:57 +0000 (13:40 -0700)]
Added a page with shading language status, tips, etc.

17 years agoAdd a simple mechanism for annotating instructions for easier debugging.
Brian [Sat, 20 Jan 2007 17:47:10 +0000 (10:47 -0700)]
Add a simple mechanism for annotating instructions for easier debugging.

17 years agooptimization: emit MAD instructions when possible
Brian [Sat, 20 Jan 2007 16:46:02 +0000 (09:46 -0700)]
optimization: emit MAD instructions when possible

17 years agoremove unused swizzle parameter to -storage_to_src_reg()
Brian [Sat, 20 Jan 2007 16:29:04 +0000 (09:29 -0700)]
remove unused swizzle parameter to -storage_to_src_reg()

17 years agoInitial implementation of OPCODE_IF/ELSE/ENDIF instructions.
Brian [Sat, 20 Jan 2007 16:27:40 +0000 (09:27 -0700)]
Initial implementation of OPCODE_IF/ELSE/ENDIF instructions.

17 years agoReimplement && and || to do short-circuit evaluation.
Brian [Sat, 20 Jan 2007 16:22:13 +0000 (09:22 -0700)]
Reimplement && and || to do short-circuit evaluation.
Improved shader error handling.

17 years agorewrite more __postIncr functions
Brian [Sat, 20 Jan 2007 14:56:00 +0000 (07:56 -0700)]
rewrite more __postIncr functions

17 years agoImplement do/while loops. Replace IR_CJUMP with IR_CJUMP0 and IR_CJUMP1 so
Brian [Fri, 19 Jan 2007 20:13:15 +0000 (13:13 -0700)]
Implement do/while loops.  Replace IR_CJUMP with IR_CJUMP0 and IR_CJUMP1 so
we can either jump on zero, or non-zero predicate.

17 years agoRewrite normalize(vec3/vec4) to use one less register.
Brian [Fri, 19 Jan 2007 19:19:38 +0000 (12:19 -0700)]
Rewrite normalize(vec3/vec4) to use one less register.

17 years agoreport error message when something fails
Brian [Fri, 19 Jan 2007 19:02:31 +0000 (12:02 -0700)]
report error message when something fails

17 years agoprint error msg when there's a problem
Brian [Fri, 19 Jan 2007 19:02:06 +0000 (12:02 -0700)]
print error msg when there's a problem

17 years agoremove stray tab
Brian [Fri, 19 Jan 2007 17:31:52 +0000 (10:31 -0700)]
remove stray tab

17 years agoImplement fragment discard/kill.
Brian [Fri, 19 Jan 2007 17:15:34 +0000 (10:15 -0700)]
Implement fragment discard/kill.

17 years agochange while-loop to create new scope for loop body, per spec
Brian [Fri, 19 Jan 2007 17:02:58 +0000 (10:02 -0700)]
change while-loop to create new scope for loop body, per spec

17 years agoImplement constant sharing so that 4 float constants can share a single
Brian [Fri, 19 Jan 2007 00:29:23 +0000 (17:29 -0700)]
Implement constant sharing so that 4 float constants can share a single
float[4] register slot.

17 years ago_mesa_add_unnamed_constant() now tries to re-use constants already in
Brian [Fri, 19 Jan 2007 00:23:48 +0000 (17:23 -0700)]
_mesa_add_unnamed_constant() now tries to re-use constants already in
the parameter list.

17 years agoReimplement code for swizzling so that expressions like (p+q).x for vectors p and...
Brian [Thu, 18 Jan 2007 22:35:44 +0000 (15:35 -0700)]
Reimplement code for swizzling so that expressions like (p+q).x for vectors p and q works correctly.

17 years agorewrite a bunch of assignment operators (like +=)
Brian [Thu, 18 Jan 2007 22:33:13 +0000 (15:33 -0700)]
rewrite a bunch of assignment operators (like +=)

17 years agoremove debug code
Brian [Thu, 18 Jan 2007 22:23:45 +0000 (15:23 -0700)]
remove debug code

17 years agoremove swizzle param from new_var()
Brian [Thu, 18 Jan 2007 16:22:44 +0000 (09:22 -0700)]
remove swizzle param from new_var()

17 years agorewrite additional matrix-related functions to reduce register needs
Brian [Thu, 18 Jan 2007 01:37:20 +0000 (18:37 -0700)]
rewrite additional matrix-related functions to reduce register needs

17 years agorewrite mat4 * mat4 operator to use fewer temps
Brian [Thu, 18 Jan 2007 01:30:53 +0000 (18:30 -0700)]
rewrite mat4 * mat4 operator to use fewer temps

17 years agodo bounds check in _slang_push_var_table(), added comment
Brian [Thu, 18 Jan 2007 01:21:00 +0000 (18:21 -0700)]
do bounds check in _slang_push_var_table(), added comment

17 years agorewrite matrix constructors
Brian [Thu, 18 Jan 2007 01:06:40 +0000 (18:06 -0700)]
rewrite matrix constructors

17 years agohandle var size > 4 in _slang_pop_var_table()
Brian [Thu, 18 Jan 2007 01:02:44 +0000 (18:02 -0700)]
handle var size > 4 in _slang_pop_var_table()

17 years agominor fprintf() change
Brian [Wed, 17 Jan 2007 23:30:11 +0000 (16:30 -0700)]
minor fprintf() change

17 years agoRewrite a bunch of constructors. It's now important that the first
Brian [Wed, 17 Jan 2007 23:29:51 +0000 (16:29 -0700)]
Rewrite a bunch of constructors.  It's now important that the first
constructor for any given type be the one that takes the most parameters
as this is the constructor that'll be used when there's no perfect match
to the caller's arguments.
See the _slang_adapt_call() function for details.

17 years ago_slang_gen_function_call_name() now tries to adapt function calls (expand
Brian [Wed, 17 Jan 2007 23:14:03 +0000 (16:14 -0700)]
_slang_gen_function_call_name() now tries to adapt function calls (expand
vectors, insert casts) when a perfect match isn't found.

17 years agoNew _slang_adapt_call() function.
Brian [Wed, 17 Jan 2007 23:11:50 +0000 (16:11 -0700)]
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]))

17 years agocode clean-up, re-org. Added IR_F_TO_I support.
Brian [Wed, 17 Jan 2007 23:05:03 +0000 (16:05 -0700)]
code clean-up, re-org.  Added IR_F_TO_I support.

17 years agoadded IR_F_TO_I, update comments
Brian [Wed, 17 Jan 2007 22:58:24 +0000 (15:58 -0700)]
added IR_F_TO_I, update comments

17 years agoAdded OPCODE_INT to convert 4 floats to 4 ints.
Brian [Wed, 17 Jan 2007 22:54:14 +0000 (15:54 -0700)]
Added OPCODE_INT to convert 4 floats to 4 ints.

17 years agoadd texturing, other options
Brian [Wed, 17 Jan 2007 17:25:44 +0000 (10:25 -0700)]
add texturing, other options

17 years agoFix/clean-up a number of things related to variable/temporary allocation.
Brian [Wed, 17 Jan 2007 16:54:31 +0000 (09:54 -0700)]
Fix/clean-up a number of things related to variable/temporary allocation.

17 years agoImplement codegen for the selection operator ( b ? x : y )
Brian [Wed, 17 Jan 2007 00:38:39 +0000 (17:38 -0700)]
Implement codegen for the selection operator ( b ? x : y )

17 years agofix typo
Brian [Tue, 16 Jan 2007 23:53:41 +0000 (16:53 -0700)]
fix typo

17 years agodraw a box, press 'a' to animate
Brian [Tue, 16 Jan 2007 22:27:11 +0000 (15:27 -0700)]
draw a box, press 'a' to animate

17 years agoadded some VerteAttrib funcs
Brian [Tue, 16 Jan 2007 21:57:12 +0000 (14:57 -0700)]
added some VerteAttrib funcs

17 years agoAdded toyball and bumpmap tests using shaders from the OpenGL Shading Language (orang...
Brian [Tue, 16 Jan 2007 21:55:43 +0000 (14:55 -0700)]
Added toyball and bumpmap tests using shaders from the OpenGL Shading Language (orange) book.

17 years agowhen automatically binding vertex attributes, start with attrib 1, not 0
Brian [Tue, 16 Jan 2007 21:52:22 +0000 (14:52 -0700)]
when automatically binding vertex attributes, start with attrib 1, not 0

17 years ago remove dead code
Brian [Tue, 16 Jan 2007 21:19:37 +0000 (14:19 -0700)]
 remove dead code

17 years agocomments
Brian [Tue, 16 Jan 2007 21:17:57 +0000 (14:17 -0700)]
comments