mesa.git
16 years agogallium: if point size not computed per vertex, apply size clamp immediately.
Brian Paul [Fri, 14 Mar 2008 23:45:27 +0000 (17:45 -0600)]
gallium: if point size not computed per vertex, apply size clamp immediately.

Fixes glean pointAtten failure.

16 years agogallium: add explicit control for point sprites (convert points to textured quads)
Brian [Fri, 14 Mar 2008 22:13:35 +0000 (16:13 -0600)]
gallium: add explicit control for point sprites (convert points to textured quads)

New draw_enable_point_sprites() function.
Fixes spriteblast.c demo

16 years agogallium: remove DOS carriage returns
Brian [Fri, 14 Mar 2008 22:00:15 +0000 (16:00 -0600)]
gallium: remove DOS carriage returns

16 years agogallium: remove DOS carriage returns
Brian [Fri, 14 Mar 2008 21:54:02 +0000 (15:54 -0600)]
gallium: remove DOS carriage returns

16 years agotgsi: Use debug_printf().
Michal Krol [Fri, 14 Mar 2008 20:44:06 +0000 (21:44 +0100)]
tgsi: Use debug_printf().

16 years agoscons: Remove second occurence of draw_passthrough.c.
Michal Krol [Fri, 14 Mar 2008 20:40:02 +0000 (21:40 +0100)]
scons: Remove second occurence of draw_passthrough.c.

16 years agomesa: init tmpNode to zeros
Brian Paul [Fri, 14 Mar 2008 20:14:13 +0000 (14:14 -0600)]
mesa: init tmpNode to zeros

16 years agomesa: fix emit_clamp() so that we don't use an output register as temporary
Brian Paul [Fri, 14 Mar 2008 19:50:01 +0000 (13:50 -0600)]
mesa: fix emit_clamp() so that we don't use an output register as temporary

IR_CLAMP is decomposed into OPCODE_MIN+OPCODE_MAX.  Allocate a temporary
register for the intermediate value so we don't inadvertantly use an output
register (which are write-only on some GPUs).

16 years agomesa: call glColorMask(1,1,1,1) before glClear()
Brian Paul [Fri, 14 Mar 2008 17:35:57 +0000 (11:35 -0600)]
mesa: call glColorMask(1,1,1,1) before glClear()

Without this, second and subsequent redraws rendered incorrectly.
Plus comments.

16 years agogallium: print warning rather than assert(0) for LOG/EXP opcodes
Brian Paul [Fri, 14 Mar 2008 17:24:28 +0000 (11:24 -0600)]
gallium: print warning rather than assert(0) for LOG/EXP opcodes

Glean vertProg1 runs all the way through, rather than aborting.

16 years agogallium: added some debug code (disabled)
Brian [Fri, 14 Mar 2008 16:23:39 +0000 (10:23 -0600)]
gallium: added some debug code (disabled)

16 years agoi915: check for NULL const buffer ptr
Brian [Fri, 14 Mar 2008 16:23:11 +0000 (10:23 -0600)]
i915: check for NULL const buffer ptr

16 years agogallium: added dummy install target
Brian [Fri, 14 Mar 2008 16:22:53 +0000 (10:22 -0600)]
gallium: added dummy install target

16 years agomesa: revert fast-track glColor and similar calls when not immediate mode rendering
Brian [Fri, 14 Mar 2008 16:20:29 +0000 (10:20 -0600)]
mesa: revert fast-track glColor and similar calls when not immediate mode rendering

Revert commit d08cd68d3f5456b69ad504ede2b090c0bb6474db

This change caused some glean tests to fail.  The alpha value of colors was
always 1.0 instead of the value from glColor4fv().  The mesa color array
found in st_draw() has size=3 instead of size=4.

16 years agogallium: in st_program_string_notify() free shader tokens.
Brian [Fri, 14 Mar 2008 16:19:19 +0000 (10:19 -0600)]
gallium: in st_program_string_notify() free shader tokens.

When the shader instructions change, free the TGSI tokens.  This signals the
state tracker to recompile the shader.  Fixes a regression caused by recent
shader/state-tracker changes.

16 years agogallium: fix some compiler warnings
Keith Whitwell [Fri, 14 Mar 2008 08:42:45 +0000 (08:42 +0000)]
gallium: fix some compiler warnings

16 years agotgsi: add debug_printf version of tgsi_dump
Keith Whitwell [Fri, 14 Mar 2008 08:42:08 +0000 (08:42 +0000)]
tgsi: add debug_printf version of tgsi_dump

16 years agogallium: need to all draw_flush() in softpipe_unmap_constant_buffers()
Brian [Fri, 14 Mar 2008 00:19:47 +0000 (18:19 -0600)]
gallium: need to all draw_flush() in softpipe_unmap_constant_buffers()

Otherwise, we won't have our constants when we run the fragment shader.
Fixes crash in glsl tests when SP_VBUF=1.

16 years agogallium: fix EMIT_HEADER case in draw_vf_set_vertex_info()
Brian [Thu, 13 Mar 2008 23:39:30 +0000 (17:39 -0600)]
gallium: fix EMIT_HEADER case in draw_vf_set_vertex_info()

16 years agogallium: plug in vertex passthrough code
Brian [Thu, 13 Mar 2008 23:10:28 +0000 (17:10 -0600)]
gallium: plug in vertex passthrough code

Based on a patch from Zack.
Basically, implement a new draw_arrays function that copies the incoming
user-vertices to the hardware vertex buffer, doing format/type conversion
as needed.
The vertex fetch/store code is totally temporary for now.

16 years agogallium: for TEST_DRAW_PASSTHROUGH, pass inClipCoords=FALSE to st_draw_vertices()
Brian [Thu, 13 Mar 2008 23:06:13 +0000 (17:06 -0600)]
gallium: for TEST_DRAW_PASSTHROUGH, pass inClipCoords=FALSE to st_draw_vertices()

When pass-through mode is fully supported we'll clean this up more.

16 years agogallium: fix bug in draw_num_vs_outputs()
Brian [Thu, 13 Mar 2008 23:04:56 +0000 (17:04 -0600)]
gallium: fix bug in draw_num_vs_outputs()

16 years agogallium: added EMIT_HEADER case
Brian [Thu, 13 Mar 2008 23:04:04 +0000 (17:04 -0600)]
gallium: added EMIT_HEADER case

16 years agogallium: in softpipe_get_vertex_info() generate a vbuf vertex_info with real attribs
Brian [Thu, 13 Mar 2008 22:57:57 +0000 (16:57 -0600)]
gallium: in softpipe_get_vertex_info() generate a vbuf vertex_info with real attribs

Can't use the EMIT_ALL shortcut/optimization anymore because of passthrough mode.

16 years agogallium: added EMIT_HEADER case in emit_vertex()
Brian [Thu, 13 Mar 2008 22:57:37 +0000 (16:57 -0600)]
gallium: added EMIT_HEADER case in emit_vertex()

16 years agogallium: added new EMIT_HEADER token
Brian [Thu, 13 Mar 2008 22:55:48 +0000 (16:55 -0600)]
gallium: added new EMIT_HEADER token

Used to emit the struct vertex_header info for softpipe.
Before we were using the EMIT_ALL token but that's insufficient for the
draw pass-through mode.  EMIT_ALL might get removed soon...

16 years agogallium: plug in new sp_vbuf_draw_arrays() function
Brian [Thu, 13 Mar 2008 22:53:44 +0000 (16:53 -0600)]
gallium: plug in new sp_vbuf_draw_arrays() function

Will be used for pass-through mode.
Also, call draw_set_render() to register the vbuf stage.  Should probably
rename that function to something like draw_set_vbuf_stage().

16 years agogallium: add some temporary code for testing draw module vertex passthrough
Brian [Thu, 13 Mar 2008 21:07:14 +0000 (15:07 -0600)]
gallium: add some temporary code for testing draw module vertex passthrough

Set TEST_DRAW_PASSTHROUGH=1, run progs/trivial/clear-scissor

16 years agogallium: set surface status to CLEAR or DEFINED in clearing/drawing code.
Brian [Thu, 13 Mar 2008 20:57:19 +0000 (14:57 -0600)]
gallium: set surface status to CLEAR or DEFINED in clearing/drawing code.

Otherwise, we were never setting these flags.  This confused the state tracker.
Fixes progs/demos/texenv.c, probably others.

16 years agoadd a way of removing an exact iterator from the hash
Zack Rusin [Thu, 13 Mar 2008 20:41:12 +0000 (16:41 -0400)]
add a way of removing an exact iterator from the hash

16 years agogallium: added draw_need_pipeline() predicate function
Brian [Thu, 13 Mar 2008 20:34:35 +0000 (14:34 -0600)]
gallium: added draw_need_pipeline() predicate function

To test if we need any pipeline stage, or whether we can go into passthrough mode.

16 years agogallium: added draw_enable_line_stipple() function
Brian [Thu, 13 Mar 2008 20:33:57 +0000 (14:33 -0600)]
gallium: added draw_enable_line_stipple() function

Allows drivers that implement line stipple to turn off this drawing stage.

16 years agogallium: added bypass_vs flag to rasterizer state (may be temporary)
Brian [Thu, 13 Mar 2008 20:32:20 +0000 (14:32 -0600)]
gallium: added bypass_vs flag to rasterizer state (may be temporary)

16 years agocell: Fix to work with commit fa9e7e9a8debb68611909ac2ffab527c6c39a3e5
Ian Romanick [Thu, 13 Mar 2008 20:03:22 +0000 (13:03 -0700)]
cell: Fix to work with commit fa9e7e9a8debb68611909ac2ffab527c6c39a3e5

16 years agogallium: remove dead code related to shader semantic input/output info
Brian Paul [Thu, 13 Mar 2008 20:05:30 +0000 (14:05 -0600)]
gallium: remove dead code related to shader semantic input/output info

16 years agogallium: fix bug in stip_first_tri()
Brian Paul [Thu, 13 Mar 2008 19:22:24 +0000 (13:22 -0600)]
gallium: fix bug in stip_first_tri()

Need to compute num_samplers after binding/creating the fragment shader.

16 years agogallium: remove a debug printf
Brian Paul [Wed, 12 Mar 2008 22:28:33 +0000 (16:28 -0600)]
gallium: remove a debug printf

16 years agoReplicate TXP changes in the SPU version of TGSI exec
Ian Romanick [Thu, 13 Mar 2008 18:19:50 +0000 (11:19 -0700)]
Replicate TXP changes in the SPU version of TGSI exec

Replicate changes from commit ba75e82b6ebaf88dd2e4a8f764b2d296d715bf8a
in spu_exec.c

16 years agogallium: remove semantic info from pipe_shader_state
Brian Paul [Thu, 13 Mar 2008 18:08:18 +0000 (18:08 +0000)]
gallium: remove semantic info from pipe_shader_state

Brian's patch to clean up the shader interfaces.

16 years agogallium: make the windows config function more readable with 80-ish columns
Keith Whitwell [Thu, 13 Mar 2008 15:23:04 +0000 (15:23 +0000)]
gallium: make the windows config function more readable with 80-ish columns

16 years agotgsi: Drop pre-ps_2_0 opcodes.
Michal Krol [Thu, 13 Mar 2008 17:12:36 +0000 (18:12 +0100)]
tgsi: Drop pre-ps_2_0 opcodes.

16 years agotgsi: Remove OPCODE_TEXCOORD, OPCODE_TEXCRD aliases.
Michal Krol [Thu, 13 Mar 2008 11:59:48 +0000 (12:59 +0100)]
tgsi: Remove OPCODE_TEXCOORD, OPCODE_TEXCRD aliases.

16 years agogallium: General purpose hash table, which is actually just a convenient frontend...
José Fonseca [Thu, 13 Mar 2008 10:19:23 +0000 (10:19 +0000)]
gallium: General purpose hash table, which is actually just a convenient frontend to cso_hash.

16 years agogallium: Standardize most important error codes.
José Fonseca [Thu, 13 Mar 2008 09:59:29 +0000 (09:59 +0000)]
gallium: Standardize most important error codes.

16 years agogallium: Add a bit of documentation to cso_hash.
José Fonseca [Thu, 13 Mar 2008 09:58:29 +0000 (09:58 +0000)]
gallium: Add a bit of documentation to cso_hash.

16 years agogallium: Fix debug_mask_vprintf's example.
José Fonseca [Wed, 12 Mar 2008 22:39:44 +0000 (22:39 +0000)]
gallium: Fix debug_mask_vprintf's example.

16 years agogallium: Add a new handle_table_set that accepts an arbitrary handle.
José Fonseca [Wed, 12 Mar 2008 22:39:13 +0000 (22:39 +0000)]
gallium: Add a new handle_table_set that accepts an arbitrary handle.

16 years agomesa: fix (harmless?) assignment in assert
Keith Whitwell [Thu, 13 Mar 2008 10:14:21 +0000 (10:14 +0000)]
mesa: fix (harmless?) assignment in assert

16 years agotgsi: replace erroneous use of FETCH with emit_tempf
Keith Whitwell [Thu, 13 Mar 2008 10:01:38 +0000 (10:01 +0000)]
tgsi: replace erroneous use of FETCH with emit_tempf

16 years agotgsi: bump MAX_SRC_REGS to 4, for TXD
Keith Whitwell [Thu, 13 Mar 2008 09:57:01 +0000 (09:57 +0000)]
tgsi: bump MAX_SRC_REGS to 4, for TXD

16 years agoadd code handling dependencies between generated code
Zack Rusin [Thu, 13 Mar 2008 02:51:57 +0000 (22:51 -0400)]
add code handling dependencies between generated code

16 years agoAdd some basic documentation for gallivm code
Zack Rusin [Thu, 13 Mar 2008 02:06:51 +0000 (22:06 -0400)]
Add some basic documentation for gallivm code

16 years agodocument hash collision resolutions
Zack Rusin [Thu, 13 Mar 2008 01:42:33 +0000 (21:42 -0400)]
document hash collision resolutions

16 years agogallium: fix polygon stipple
Brian [Thu, 13 Mar 2008 01:29:30 +0000 (19:29 -0600)]
gallium: fix polygon stipple

Was broken by commit 4528287e040415c2071012d02f20979ff995c754 (bind all
samplers/texures at once).

16 years agogallium: in clear_stencil_buffer() check surface format to determine stencil clear...
Brian [Thu, 13 Mar 2008 00:24:46 +0000 (18:24 -0600)]
gallium: in clear_stencil_buffer() check surface format to determine stencil clear value

... as we do for the Z and Z+stencil cases

16 years agoi915: handle NULL object in i915_bind_rasterizer_state()
Brian [Wed, 12 Mar 2008 22:56:12 +0000 (16:56 -0600)]
i915: handle NULL object in i915_bind_rasterizer_state()

16 years agomesa: set SamplersUsed bitmask when parsing ARB fragment programs
Brian [Wed, 12 Mar 2008 21:33:41 +0000 (15:33 -0600)]
mesa: set SamplersUsed bitmask when parsing ARB fragment programs

16 years agogallium: pass NULL to cso_single_sampler() when the sampler isn't used.
Brian [Wed, 12 Mar 2008 20:20:54 +0000 (14:20 -0600)]
gallium: pass NULL to cso_single_sampler() when the sampler isn't used.

This fixes an AA line crash/regression.
The aaline stage needs to find a free/unused sampler to do its thing.

16 years agoremove reference to obsolete ExtDivide
Brian [Wed, 12 Mar 2008 19:22:58 +0000 (13:22 -0600)]
remove reference to obsolete ExtDivide

16 years agogallium: use TXP rather than ExtDivide flag
Brian [Wed, 12 Mar 2008 19:21:41 +0000 (13:21 -0600)]
gallium: use TXP rather than ExtDivide flag

16 years agogallium: change draw_vertex_shader->state from pointer to struct
Brian [Wed, 12 Mar 2008 19:20:29 +0000 (13:20 -0600)]
gallium: change draw_vertex_shader->state from pointer to struct

We were sometimes keeping a pointer to a stack-allocated object.
Now make a copy of the pipe_shader_state object.
This should fix some seemingly random memory errors/crashes.

16 years agotgsi: Remove ExtDivide field from existence. Implement OPCODE_TXP.
Michal Krol [Wed, 12 Mar 2008 15:41:25 +0000 (16:41 +0100)]
tgsi: Remove ExtDivide field from existence. Implement OPCODE_TXP.

16 years agotgsi: Dump TXP opcode.
Michal Krol [Wed, 12 Mar 2008 14:29:39 +0000 (15:29 +0100)]
tgsi: Dump TXP opcode.

16 years agogallium: Generic handle table.
José Fonseca [Wed, 12 Mar 2008 15:02:11 +0000 (15:02 +0000)]
gallium: Generic handle table.

16 years agogallium: Change assert behavior on runtime (Mark Mueller).
José Fonseca [Wed, 12 Mar 2008 15:01:18 +0000 (15:01 +0000)]
gallium: Change assert behavior on runtime (Mark Mueller).

16 years agotgsi: Introduce OPCODE_TXP. Depricate ExdDivide field.
Michal Krol [Wed, 12 Mar 2008 13:54:43 +0000 (14:54 +0100)]
tgsi: Introduce OPCODE_TXP. Depricate ExdDivide field.

16 years agoscons: Faithfully mimic every WINDDK builtin compiler/linker option.
José Fonseca [Wed, 12 Mar 2008 13:34:30 +0000 (13:34 +0000)]
scons: Faithfully mimic every WINDDK builtin compiler/linker option.

16 years agogallium: reduce signed/unsigned warnings
Keith Whitwell [Wed, 12 Mar 2008 10:43:53 +0000 (10:43 +0000)]
gallium: reduce signed/unsigned warnings

16 years agogallium: Add TEX_FILTER_ANISO img filter
Keith Whitwell [Wed, 12 Mar 2008 10:39:25 +0000 (10:39 +0000)]
gallium: Add TEX_FILTER_ANISO img filter

Hardware almost universally expects us to set a special filtering mode
when anisotropic filtering is enabled, as opposed to varying a max-aniso
values.  Do this once in the state tracker & simplify the driver code.

16 years agotgsi: Dump source register divide component.
Michal Krol [Wed, 12 Mar 2008 10:37:02 +0000 (11:37 +0100)]
tgsi: Dump source register divide component.

16 years agocell: check for NULL shader pointer in cell_bind_vs_state()
Brian [Wed, 12 Mar 2008 02:03:37 +0000 (20:03 -0600)]
cell: check for NULL shader pointer in cell_bind_vs_state()

16 years agogallium: dummy install target
Brian [Wed, 12 Mar 2008 01:02:51 +0000 (19:02 -0600)]
gallium: dummy install target

16 years agogallium: rework CSO-related code in state tracker
Brian [Wed, 12 Mar 2008 00:54:31 +0000 (18:54 -0600)]
gallium: rework CSO-related code in state tracker

Use the code in cso_context.c rather than st_cache.c.
Basically, binding of state objects now goes through the CSO module.
But Vertex/fragment shaders go through pipe->bind_fs/vs_state() since they're
not cached by the CSO module at this time.

Also, update softpipe driver to handle NULL state objects in various places.
This happens during context destruction.  May need to update other drivers...

16 years agogallium: Silence MSVC warnings.
José Fonseca [Tue, 11 Mar 2008 23:51:27 +0000 (23:51 +0000)]
gallium: Silence MSVC warnings.

16 years agogallium: Conditional debugging output.
José Fonseca [Tue, 11 Mar 2008 12:03:11 +0000 (12:03 +0000)]
gallium: Conditional debugging output.

Generalize the conditional debugging output code found trhought the gallium
drivers.

16 years agotgsi: Map OPCODE_TEXKILL to OPCODE_KILP.
Michal Krol [Tue, 11 Mar 2008 22:21:36 +0000 (23:21 +0100)]
tgsi: Map OPCODE_TEXKILL to OPCODE_KILP.

16 years agogallium: fix some cso_state_callback cast warnings
Brian [Tue, 11 Mar 2008 21:01:52 +0000 (15:01 -0600)]
gallium: fix some cso_state_callback cast warnings

16 years agogallium: fix fs/vs typo in cso_set_vertex_shader()
Brian [Tue, 11 Mar 2008 20:31:17 +0000 (14:31 -0600)]
gallium: fix fs/vs typo in cso_set_vertex_shader()

16 years agodraw: don't free our copy of the render stage -- just borrowing it from vbuf stage
Keith Whitwell [Tue, 11 Mar 2008 14:23:08 +0000 (14:23 +0000)]
draw: don't free our copy of the render stage -- just borrowing it from vbuf stage

16 years agogallium: missing file
Keith Whitwell [Tue, 11 Mar 2008 08:42:49 +0000 (08:42 +0000)]
gallium: missing file

16 years agofix double deletion
Zack Rusin [Tue, 11 Mar 2008 02:10:18 +0000 (22:10 -0400)]
fix double deletion
plus, if the current hash is bigger than max size make sure
we delete enough from it

16 years agofix compilation
Zack Rusin [Tue, 11 Mar 2008 02:10:07 +0000 (22:10 -0400)]
fix compilation

16 years agofix Height2/Depth2 init problem when using texture borders
Brian [Mon, 10 Mar 2008 23:41:00 +0000 (17:41 -0600)]
fix Height2/Depth2 init problem when using texture borders

16 years agogallium: disable an unneeded assertion (hit with texwrap.c)
Brian [Tue, 4 Mar 2008 15:38:54 +0000 (08:38 -0700)]
gallium: disable an unneeded assertion (hit with texwrap.c)

16 years agoMove SPE register allocator to rtasm code
Ian Romanick [Mon, 10 Mar 2008 23:28:54 +0000 (16:28 -0700)]
Move SPE register allocator to rtasm code

Move the register allocator to a common location.  There is more code
on the way that will make use of this interface.

16 years agodraw: placeholder/prototype code for a passthrough draw path
Keith Whitwell [Mon, 10 Mar 2008 19:49:15 +0000 (19:49 +0000)]
draw: placeholder/prototype code for a passthrough draw path

16 years agomesa: fast-track glColor and similar calls when not immediate mode rendering
Keith Whitwell [Mon, 10 Mar 2008 19:44:54 +0000 (19:44 +0000)]
mesa: fast-track glColor and similar calls when not immediate mode rendering

Often these are mixed in with draw arrays calls, etc.  Try not to get
the whole immediate rendering state machine going when we receive one
of these on their own.

16 years agogallium: fix compiler warning
Keith Whitwell [Mon, 10 Mar 2008 19:41:51 +0000 (19:41 +0000)]
gallium: fix compiler warning

16 years agogallium: use the same bypass_clipping logic on all vs paths
Keith Whitwell [Mon, 10 Mar 2008 19:41:12 +0000 (19:41 +0000)]
gallium: use the same bypass_clipping logic on all vs paths

16 years agogallium: enable bug workaround in draw_vertex_cache_invalidate
Keith Whitwell [Mon, 10 Mar 2008 19:37:32 +0000 (19:37 +0000)]
gallium: enable bug workaround in draw_vertex_cache_invalidate

16 years agogallium: new surface/context tracker (sct) module
Brian [Mon, 10 Mar 2008 23:21:43 +0000 (17:21 -0600)]
gallium: new surface/context tracker (sct) module

Will be used for tracking the surfaces and textures which are bound/used by
contexts.

16 years agocell: sync up with sampler/texture state-setting changes
Brian [Mon, 10 Mar 2008 22:43:36 +0000 (16:43 -0600)]
cell: sync up with sampler/texture state-setting changes

16 years agogallium: Use hardcoded breakpoints on x86 targets.
José Fonseca [Mon, 10 Mar 2008 21:18:00 +0000 (21:18 +0000)]
gallium: Use hardcoded breakpoints on x86 targets.

16 years agoSome notes about debugging
José Fonseca [Mon, 10 Mar 2008 21:15:31 +0000 (21:15 +0000)]
Some notes about debugging

16 years agogallium: Import Dennis Smit cpu detection code.
José Fonseca [Mon, 10 Mar 2008 16:45:19 +0000 (16:45 +0000)]
gallium: Import Dennis Smit cpu detection code.

It still needs a slight code massasing to integrate with the rest of
gallium (namely mapping the OS_* ARCH_* defines), but I'm commiting anyway
so that it is available to be used when somebody needs it.

16 years agogallium: WinCE portability fixes.
José Fonseca [Mon, 10 Mar 2008 13:04:13 +0000 (13:04 +0000)]
gallium: WinCE portability fixes.

16 years agogallium: avoid deleting currently-bound CSO's on cache destruction
Keith Whitwell [Sun, 9 Mar 2008 20:21:45 +0000 (20:21 +0000)]
gallium: avoid deleting currently-bound CSO's on cache destruction

16 years agodraw: cope with binding NULL vertex shader (on context delete, for instance)
Keith Whitwell [Sun, 9 Mar 2008 20:17:02 +0000 (20:17 +0000)]
draw: cope with binding NULL vertex shader (on context delete, for instance)

16 years agocso: fix line endings
Keith Whitwell [Sun, 9 Mar 2008 16:06:20 +0000 (17:06 +0100)]
cso: fix line endings

16 years agocso: Use MALLOC
Keith Whitwell [Sun, 9 Mar 2008 16:05:46 +0000 (17:05 +0100)]
cso: Use MALLOC