profile/ivi/mesa.git
17 years agos/%f/%g/
Brian [Wed, 7 Feb 2007 23:09:13 +0000 (16:09 -0700)]
s/%f/%g/

17 years agoRemove old functions for generating BRA-based looping.
Brian [Wed, 7 Feb 2007 22:14:20 +0000 (15:14 -0700)]
Remove old functions for generating BRA-based looping.

17 years agoUse IR_LOOP to represent do-while and for-loops.
Brian [Wed, 7 Feb 2007 22:12:13 +0000 (15:12 -0700)]
Use IR_LOOP to represent do-while and for-loops.

Also, start moving high vs. low-level instruction selection into slang_emit.c

17 years agoBRK and CONT work the same
Brian [Wed, 7 Feb 2007 05:34:09 +0000 (22:34 -0700)]
BRK and CONT work the same

17 years agoImplement CONT, improve BRK.
Brian [Wed, 7 Feb 2007 05:31:19 +0000 (22:31 -0700)]
Implement CONT, improve BRK.

IR_LOOP's BranchNode ptr is the head of a linked list of CONT and BRK nodes.
After emitting loop, walk over the linked list, filling in the CONT/BRK
instruction's BranchTarget field (location of the ENDLOOP instruction, or
one past).

17 years agoreplace IR_BEGIN_LOOP/IR_END_LOOP with IR_LOOP
Brian [Wed, 7 Feb 2007 04:33:29 +0000 (21:33 -0700)]
replace IR_BEGIN_LOOP/IR_END_LOOP with IR_LOOP

17 years agonew_node[0123]() functions
Brian [Wed, 7 Feb 2007 03:53:09 +0000 (20:53 -0700)]
new_node[0123]() functions

17 years agoredo IR_IF node, removing IR_ELSE, IR_ENDIF
Brian [Wed, 7 Feb 2007 03:45:43 +0000 (20:45 -0700)]
redo IR_IF node, removing IR_ELSE, IR_ENDIF

17 years agoBRK instruction's BranchTarget field now used for efficiently breaking out of loops.
Brian [Tue, 6 Feb 2007 01:01:02 +0000 (18:01 -0700)]
BRK instruction's BranchTarget field now used for efficiently breaking out of loops.

BRK's BranchTarget field actually points to the top of the loop, not the
bottom, since we don't know the later's location yet.  In the interpreter,
basically do an indirect jump to update the PC.

17 years agoUse IR node's BranchNode field for IF/ELSE/ENDIF instructions.
Brian [Tue, 6 Feb 2007 00:18:10 +0000 (17:18 -0700)]
Use IR node's BranchNode field for IF/ELSE/ENDIF instructions.

This allows us to back-patch the IF/ELSE instruction's BranchTarget field
to point to the location of the ELSE/ENDIF instructions.  No longer have to
search for ELSE/ENDIF in the interpreter.  Also makes it trivial to translate
IF/ELSE instructions into conditional/unconditional BRA instructions.

17 years agominor formatting changes
Brian [Mon, 5 Feb 2007 22:17:06 +0000 (15:17 -0700)]
minor formatting changes

17 years agoset UseHighLevelInstructions = false for now
Brian [Mon, 5 Feb 2007 22:00:48 +0000 (15:00 -0700)]
set UseHighLevelInstructions = false for now

17 years agoInitial implementation of high-level flow-control instructions.
Brian [Mon, 5 Feb 2007 22:00:07 +0000 (15:00 -0700)]
Initial implementation of high-level flow-control instructions.

IF/ELSE/ENDIF and BEGIN_LOOP/END_LOOP/BREAK instructions seem to work.
Disabled by default though until better tested.
Implemented IR_NOT, but needs optimization.

17 years agoindentation for program instructions (if/else, loops)
Brian [Mon, 5 Feb 2007 21:58:15 +0000 (14:58 -0700)]
indentation for program instructions (if/else, loops)

17 years agoInitial support of loop and subroutine instructions.
Brian [Mon, 5 Feb 2007 18:28:15 +0000 (11:28 -0700)]
Initial support of loop and subroutine instructions.

New high-level flow-control instructions, both at IR level and GPU instructions
for looping and subroutines.

17 years agoMerge SWvertex texcoord and varying fields into attrib[] array field.
Brian [Mon, 5 Feb 2007 17:10:01 +0000 (10:10 -0700)]
Merge SWvertex texcoord and varying fields into attrib[] array field.

Fragment texcoords and varying code is now unified in the point/line/triangle
rasterization code.  In the future, merge color, fog, etc. attribs.

17 years agoAdd literal_size field to slang_operation.
Brian [Sun, 4 Feb 2007 00:24:24 +0000 (17:24 -0700)]
Add literal_size field to slang_operation.

Used to track the number of components in a float/int/bool literal.
Helps with some typechecking things.
Fixes problems with calls such as "distance(v2, vec2(1.0, 2.0))"

17 years agominor tweaks to distance() funcs
Brian [Sun, 4 Feb 2007 00:21:33 +0000 (17:21 -0700)]
minor tweaks to distance() funcs

17 years agoremove unused slang_operation fields
Brian [Sat, 3 Feb 2007 23:25:44 +0000 (16:25 -0700)]
remove unused slang_operation fields

17 years agoshading language texture demo/test
Brian [Sat, 3 Feb 2007 18:36:16 +0000 (11:36 -0700)]
shading language texture demo/test

17 years agoadded FLUSH_VERTICES() in _mesa_use_program()
Brian [Sat, 3 Feb 2007 18:35:02 +0000 (11:35 -0700)]
added FLUSH_VERTICES() in _mesa_use_program()

17 years agoadded texdemo1
Brian [Sat, 3 Feb 2007 18:33:13 +0000 (11:33 -0700)]
added texdemo1

17 years agoAdd _NEW_PROGRAM flag to _MESA_NEW_NEED_EYE_COORDS.
Brian [Sat, 3 Feb 2007 17:31:16 +0000 (10:31 -0700)]
Add _NEW_PROGRAM flag to _MESA_NEW_NEED_EYE_COORDS.

This fixes a segfault in the texgen code that can occur after we've
disabled a vertex program.

17 years agoOnly glUniform1i() can be used to set sampler uniforms. Generate error otherwise.
Brian [Sat, 3 Feb 2007 01:05:43 +0000 (18:05 -0700)]
Only glUniform1i() can be used to set sampler uniforms.  Generate error otherwise.

17 years agoadd vec4_texcube to AsmInfo[]
Brian [Sat, 3 Feb 2007 01:00:26 +0000 (18:00 -0700)]
add vec4_texcube to AsmInfo[]

17 years agoadd _slang_multiply_swizzles()
Brian [Sat, 3 Feb 2007 01:00:03 +0000 (18:00 -0700)]
add _slang_multiply_swizzles()

17 years agoclean-ups
Brian [Fri, 2 Feb 2007 23:46:50 +0000 (16:46 -0700)]
clean-ups

17 years agoclean-ups
Brian [Fri, 2 Feb 2007 23:45:07 +0000 (16:45 -0700)]
clean-ups

17 years agoclean-ups
Brian [Fri, 2 Feb 2007 23:41:52 +0000 (16:41 -0700)]
clean-ups

17 years agoremove slang_builtin_vec4.gc
Brian [Fri, 2 Feb 2007 23:38:04 +0000 (16:38 -0700)]
remove slang_builtin_vec4.gc

17 years agoremove slang_builtin_vec4.gc
Brian [Fri, 2 Feb 2007 23:38:00 +0000 (16:38 -0700)]
remove slang_builtin_vec4.gc

17 years agoremove slang_export.[ch]
Brian [Fri, 2 Feb 2007 23:14:55 +0000 (16:14 -0700)]
remove slang_export.[ch]

17 years agoreformat, clean-up comments
Brian [Fri, 2 Feb 2007 23:12:20 +0000 (16:12 -0700)]
reformat, clean-up comments

17 years agomove _slang_locate_function()
Brian [Fri, 2 Feb 2007 23:10:02 +0000 (16:10 -0700)]
move _slang_locate_function()

17 years agoremove multibyte chars
Brian [Fri, 2 Feb 2007 23:08:45 +0000 (16:08 -0700)]
remove multibyte chars

17 years agoremove unused field
Brian [Fri, 2 Feb 2007 22:33:16 +0000 (15:33 -0700)]
remove unused field

17 years agoremove slang_asm_string()
Brian [Fri, 2 Feb 2007 22:32:32 +0000 (15:32 -0700)]
remove slang_asm_string()

17 years agos/SLANG_ASSEMBLE_TYPEINFO_H/SLANG_TYPEINFO_H/
Brian [Fri, 2 Feb 2007 22:31:21 +0000 (15:31 -0700)]
s/SLANG_ASSEMBLE_TYPEINFO_H/SLANG_TYPEINFO_H/

17 years agos/slang_assembly_typeinfo/slang_typeinfo/
Brian [Fri, 2 Feb 2007 22:30:50 +0000 (15:30 -0700)]
s/slang_assembly_typeinfo/slang_typeinfo/

17 years agos/slang_assembly_name_space/slang_name_space/
Brian [Fri, 2 Feb 2007 22:29:48 +0000 (15:29 -0700)]
s/slang_assembly_name_space/slang_name_space/

17 years agoremove slang_library_texsample.[ch]
Brian [Fri, 2 Feb 2007 22:23:38 +0000 (15:23 -0700)]
remove slang_library_texsample.[ch]

17 years agoremove slang_library_texsample.[ch]
Brian [Fri, 2 Feb 2007 22:23:33 +0000 (15:23 -0700)]
remove slang_library_texsample.[ch]

17 years agorename slang_link2.c slang_link.c
Brian [Fri, 2 Feb 2007 22:22:05 +0000 (15:22 -0700)]
rename slang_link2.c slang_link.c

17 years agorename slang_link2.c slang_link.c
Brian [Fri, 2 Feb 2007 22:22:02 +0000 (15:22 -0700)]
rename slang_link2.c slang_link.c

17 years agorename slang_assemble_typeinfo.[ch] to slang_typeinfo.[ch]
Brian [Fri, 2 Feb 2007 22:19:58 +0000 (15:19 -0700)]
rename slang_assemble_typeinfo.[ch] to slang_typeinfo.[ch]

17 years agorename slang_assemble_typeinfo.[ch] to slang_typeinfo.[ch]
Brian [Fri, 2 Feb 2007 22:19:48 +0000 (15:19 -0700)]
rename slang_assemble_typeinfo.[ch] to slang_typeinfo.[ch]

17 years agoremove more slang assembly-related code
Brian [Fri, 2 Feb 2007 22:17:46 +0000 (15:17 -0700)]
remove more slang assembly-related code

17 years agoremove more slang assembly-related files, codee
Brian [Fri, 2 Feb 2007 22:16:51 +0000 (15:16 -0700)]
remove more slang assembly-related files, codee

17 years agoremoved obsolete shader assembly files
Brian [Fri, 2 Feb 2007 22:10:34 +0000 (15:10 -0700)]
removed obsolete shader assembly files

17 years agoremove more assembly-related code
Brian [Fri, 2 Feb 2007 22:05:46 +0000 (15:05 -0700)]
remove more assembly-related code

17 years agoremove slang_assemble*.c files
Brian [Fri, 2 Feb 2007 21:51:34 +0000 (14:51 -0700)]
remove slang_assemble*.c files

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