mesa.git
14 years agoi965g: update for u_format changes
Keith Whitwell [Tue, 22 Dec 2009 09:52:26 +0000 (09:52 +0000)]
i965g: update for u_format changes

14 years agoMerge branch 'i965g-restart'
Keith Whitwell [Tue, 22 Dec 2009 09:40:39 +0000 (09:40 +0000)]
Merge branch 'i965g-restart'

Conflicts:
configure.ac

14 years agonv50: correct the negation of DDY sources
Christoph Bumiller [Mon, 21 Dec 2009 20:50:21 +0000 (21:50 +0100)]
nv50: correct the negation of DDY sources

The state tracker now does the correct thing, so
interpret negation normally.

14 years agointel: Replace release info in DRIVER_DATE with "DEVELOPMENT"
Ian Romanick [Tue, 22 Dec 2009 02:46:17 +0000 (18:46 -0800)]
intel: Replace release info in DRIVER_DATE with "DEVELOPMENT"

14 years agoMerge branch 'mesa_7_7_branch'
Ian Romanick [Tue, 22 Dec 2009 02:45:31 +0000 (18:45 -0800)]
Merge branch 'mesa_7_7_branch'

Conflicts:
src/mesa/main/version.h

14 years agoAdd MD5 checksums for 7.6.1 release
Ian Romanick [Tue, 22 Dec 2009 02:32:32 +0000 (18:32 -0800)]
Add MD5 checksums for 7.6.1 release

14 years agoAdd MD5 checksums for 7.7 release
Ian Romanick [Tue, 22 Dec 2009 02:30:35 +0000 (18:30 -0800)]
Add MD5 checksums for 7.7 release

14 years agomesa: set version string to 7.7
Ian Romanick [Tue, 22 Dec 2009 02:28:32 +0000 (18:28 -0800)]
mesa: set version string to 7.7

14 years agointel: Bump driver date to reflect status as final Q4 driver RC
Ian Romanick [Tue, 22 Dec 2009 02:27:50 +0000 (18:27 -0800)]
intel: Bump driver date to reflect status as final Q4 driver RC

14 years agoMerge branch 'mesa_7_6_branch' into mesa_7_7_branch
Ian Romanick [Tue, 22 Dec 2009 02:27:24 +0000 (18:27 -0800)]
Merge branch 'mesa_7_6_branch' into mesa_7_7_branch

Conflicts:
scons/gallium.py
scons/generic.py
src/mesa/main/version.h

14 years agomesa: set version string to 7.6.1
Ian Romanick [Tue, 22 Dec 2009 02:25:30 +0000 (18:25 -0800)]
mesa: set version string to 7.6.1

14 years agoglsl: assorted clean-ups in slang_compile.c
Brian Paul [Tue, 22 Dec 2009 01:04:27 +0000 (18:04 -0700)]
glsl: assorted clean-ups in slang_compile.c

14 years agoprogs/perf: Fix MSVC build.
Vinson Lee [Sat, 10 Oct 2009 16:45:16 +0000 (10:45 -0600)]
progs/perf: Fix MSVC build.
(cherry picked from commit cbf46ed670ef5a5c8a641730234dd7ae964c3170)

14 years agomesa: Fix missing finite symbol error on Windows.
José Fonseca [Thu, 24 Sep 2009 11:36:11 +0000 (12:36 +0100)]
mesa: Fix missing finite symbol error on Windows.

Caused by some weird logic regarding the __WIN32__ define which made
the finite definition dependent on the header include order.
(cherry picked from commit 622bdecabd73167d2f2f3aff0e223a8c64433f99)

14 years agomesa: Include <unistd.h> only when one is available.
Michal Krol [Mon, 7 Sep 2009 07:31:17 +0000 (09:31 +0200)]
mesa: Include <unistd.h> only when one is available.
(cherry picked from commit 970823978c2f7d2cf0757aa6ddbd6289b34c476f)

14 years agodarwin: Build glsl
Jeremy Huddleston [Tue, 22 Dec 2009 01:48:59 +0000 (17:48 -0800)]
darwin: Build glsl
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
14 years agoosmesa: Fix a copy/paste error in building libOSMesa
Jeremy Huddleston [Tue, 22 Dec 2009 01:48:35 +0000 (17:48 -0800)]
osmesa: Fix a copy/paste error in building libOSMesa

Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
14 years agoMerge branch 'mesa_7_7_branch'
Brian Paul [Tue, 22 Dec 2009 01:35:54 +0000 (18:35 -0700)]
Merge branch 'mesa_7_7_branch'

Conflicts:
src/mesa/main/version.h
src/mesa/state_tracker/st_atom_shader.c

14 years agoscons: Define _USE_MATH_DEFINES on MSVC.
Vinson Lee [Tue, 22 Dec 2009 01:25:03 +0000 (17:25 -0800)]
scons: Define _USE_MATH_DEFINES on MSVC.

14 years agoMerge branch 'mesa_7_6_branch' into mesa_7_7_branch
Brian Paul [Tue, 22 Dec 2009 01:23:53 +0000 (18:23 -0700)]
Merge branch 'mesa_7_6_branch' into mesa_7_7_branch

Conflicts:
configure.ac
progs/demos/morph3d.c
progs/demos/textures.c
progs/glsl/shtest.c
progs/glsl/texaaline.c
progs/tests/packedpixels.c
progs/xdemos/corender.c
src/mesa/main/version.h

14 years agoconfigure.ac: fix for libdrm_radeon API changes.
Fabio Pedretti [Tue, 22 Dec 2009 00:43:35 +0000 (10:43 +1000)]
configure.ac: fix for libdrm_radeon API changes.

14 years agoconfigure.ac: fix for libdrm_radeon API changes.
Fabio Pedretti [Tue, 22 Dec 2009 00:43:35 +0000 (10:43 +1000)]
configure.ac: fix for libdrm_radeon API changes.

14 years agoconfigure.ac: fix for libdrm_radeon API changes.
Fabio Pedretti [Tue, 22 Dec 2009 00:43:35 +0000 (10:43 +1000)]
configure.ac: fix for libdrm_radeon API changes.

14 years agoradeon/r600: use new libdrm_radeon api
Dave Airlie [Thu, 17 Dec 2009 04:29:04 +0000 (14:29 +1000)]
radeon/r600: use new libdrm_radeon api

14 years agoradeon: drop assert accessing cref which is meant to be hidden
Dave Airlie [Thu, 17 Dec 2009 04:19:27 +0000 (14:19 +1000)]
radeon: drop assert accessing cref which is meant to be hidden

14 years agoradeon: drop unused members of radeon_state.
Dave Airlie [Thu, 17 Dec 2009 04:18:54 +0000 (14:18 +1000)]
radeon: drop unused members of radeon_state.

14 years agor600: move structs for legacy cmdbuf into cmdbuf C file.
Dave Airlie [Thu, 17 Dec 2009 04:23:08 +0000 (14:23 +1000)]
r600: move structs for legacy cmdbuf into cmdbuf C file.

these really shouldn't be exposed here

14 years agoradeon/r600: use new libdrm_radeon api
Dave Airlie [Thu, 17 Dec 2009 04:29:04 +0000 (14:29 +1000)]
radeon/r600: use new libdrm_radeon api

14 years agoradeon: drop assert accessing cref which is meant to be hidden
Dave Airlie [Thu, 17 Dec 2009 04:19:27 +0000 (14:19 +1000)]
radeon: drop assert accessing cref which is meant to be hidden

14 years agoradeon: drop unused members of radeon_state.
Dave Airlie [Thu, 17 Dec 2009 04:18:54 +0000 (14:18 +1000)]
radeon: drop unused members of radeon_state.

14 years agor600: move structs for legacy cmdbuf into cmdbuf C file.
Dave Airlie [Thu, 17 Dec 2009 04:23:08 +0000 (14:23 +1000)]
r600: move structs for legacy cmdbuf into cmdbuf C file.

these really shouldn't be exposed here

14 years agoprogs/redbook: Silence compiler warnings.
Vinson Lee [Mon, 21 Dec 2009 23:20:01 +0000 (15:20 -0800)]
progs/redbook: Silence compiler warnings.

14 years agoprogs/perf: added check for GL_ARB_framebuffer_object
Brian Paul [Mon, 21 Dec 2009 20:48:58 +0000 (13:48 -0700)]
progs/perf: added check for GL_ARB_framebuffer_object

14 years agoprogs/demos: report pixel rate in million pixels / sec
Brian Paul [Fri, 11 Dec 2009 22:22:17 +0000 (15:22 -0700)]
progs/demos: report pixel rate in million pixels / sec

14 years agoosmesa: added new GLSL libs
Brian Paul [Mon, 21 Dec 2009 20:37:49 +0000 (13:37 -0700)]
osmesa: added new GLSL libs

14 years agoprogs/osmes: add missing libGL dependency, remove unneeded lines
Brian Paul [Mon, 21 Dec 2009 20:37:11 +0000 (13:37 -0700)]
progs/osmes: add missing libGL dependency, remove unneeded lines

14 years agoi965g: fixes to build after merge of master
Keith Whitwell [Mon, 21 Dec 2009 19:50:05 +0000 (19:50 +0000)]
i965g: fixes to build after merge of master

14 years agoi965g: remove half-finished change to tgsi_parse
Keith Whitwell [Mon, 21 Dec 2009 19:22:45 +0000 (19:22 +0000)]
i965g: remove half-finished change to tgsi_parse

14 years agoi965g: back out unintentional changes to linux-dri
Keith Whitwell [Mon, 21 Dec 2009 19:21:09 +0000 (19:21 +0000)]
i965g: back out unintentional changes to linux-dri

14 years agoi965g: back out unintentional changes to gears
Keith Whitwell [Mon, 21 Dec 2009 19:19:01 +0000 (19:19 +0000)]
i965g: back out unintentional changes to gears

14 years agoMerge commit 'origin/master' into i965g-restart
Keith Whitwell [Mon, 21 Dec 2009 19:18:41 +0000 (19:18 +0000)]
Merge commit 'origin/master' into i965g-restart

Conflicts:
SConstruct
configs/default
configs/linux-dri

14 years agoutil: draw cube mipmaps with TEX CUBE
Christoph Bumiller [Mon, 21 Dec 2009 17:31:57 +0000 (18:31 +0100)]
util: draw cube mipmaps with TEX CUBE

14 years agopython: fix some pipe_format_simplify merge damage
Roland Scheidegger [Mon, 21 Dec 2009 17:20:31 +0000 (18:20 +0100)]
python: fix some pipe_format_simplify merge damage

14 years agosvga: fix typo
Roland Scheidegger [Mon, 21 Dec 2009 17:20:01 +0000 (18:20 +0100)]
svga: fix typo

14 years agows/i965: respect DEBUG_WINSYS flag
Keith Whitwell [Mon, 21 Dec 2009 16:58:14 +0000 (16:58 +0000)]
ws/i965: respect DEBUG_WINSYS flag

14 years agoi965g: hook vertex state emit up to PIPE_NEW_VERTEX_BUFFER
Keith Whitwell [Mon, 21 Dec 2009 16:57:37 +0000 (16:57 +0000)]
i965g: hook vertex state emit up to PIPE_NEW_VERTEX_BUFFER

14 years agoi965g: keep refcounts to bound vertex buffers
Keith Whitwell [Mon, 21 Dec 2009 16:56:46 +0000 (16:56 +0000)]
i965g: keep refcounts to bound vertex buffers

14 years agoi965g: add DEBUG_WINSYS flag
Keith Whitwell [Mon, 21 Dec 2009 16:55:40 +0000 (16:55 +0000)]
i965g: add DEBUG_WINSYS flag

14 years agor600: fix glFrontFace(GL_CW)
Dave Airlie [Mon, 21 Dec 2009 00:21:28 +0000 (10:21 +1000)]
r600: fix glFrontFace(GL_CW)

fd.o bug #25290

Suggested fix from Rafael Monica

14 years agoi965g: remove duplicate set_viewport_state, fixes samples/depth
Keith Whitwell [Mon, 21 Dec 2009 15:38:08 +0000 (15:38 +0000)]
i965g: remove duplicate set_viewport_state, fixes samples/depth

14 years agor600: support more of arb_point_sprite and also sprite_coord_origin
Andre Maasikas [Mon, 21 Dec 2009 13:19:21 +0000 (15:19 +0200)]
r600: support more of arb_point_sprite and also sprite_coord_origin

14 years agor600: disallow negative offsets for relative addressing for now
Andre Maasikas [Mon, 21 Dec 2009 09:47:12 +0000 (11:47 +0200)]
r600: disallow negative offsets for relative addressing for now

otherwise for example const[ADDR-3] gets us 253 - ALU_SRC_LITERAL which
expects immediate floats to follow and hangs

14 years agovega: Add missing actual argument.
Michal Krol [Mon, 21 Dec 2009 10:58:17 +0000 (11:58 +0100)]
vega: Add missing actual argument.

14 years agost/mesa: Check for single level mipmap trees.
Younes Manton [Mon, 21 Dec 2009 01:11:55 +0000 (20:11 -0500)]
st/mesa: Check for single level mipmap trees.

The assert in util_gen_mipmap() caught it, although
it does the right thing anyway.

14 years agodarwin: mklib: Use lipo rather than file to figure out architectures of object files
Jeremy Huddleston [Mon, 21 Dec 2009 05:34:27 +0000 (21:34 -0800)]
darwin: mklib: Use lipo rather than file to figure out architectures of object files
(cherry picked from commit ad7f9d71e22fb7667c90dbbc0558939b89a45154)

14 years agodarwin: Cleanup CPPFLAGS a bit
Jeremy Huddleston [Mon, 21 Dec 2009 05:32:35 +0000 (21:32 -0800)]
darwin: Cleanup CPPFLAGS a bit
(cherry picked from commit 4a1e103858a1db0fb037891b8d4a9426eff32b98)

14 years agodarwin: mklib: Use lipo rather than file to figure out architectures of object files
Jeremy Huddleston [Mon, 21 Dec 2009 05:34:27 +0000 (21:34 -0800)]
darwin: mklib: Use lipo rather than file to figure out architectures of object files

14 years agodarwin: Cleanup CPPFLAGS a bit
Jeremy Huddleston [Mon, 21 Dec 2009 05:32:35 +0000 (21:32 -0800)]
darwin: Cleanup CPPFLAGS a bit

14 years agor600: fix glFrontFace(GL_CW)
Dave Airlie [Mon, 21 Dec 2009 00:21:28 +0000 (10:21 +1000)]
r600: fix glFrontFace(GL_CW)

fd.o bug #25290

Suggested fix from Rafael Monica

14 years agor300g: Add a few more params.
Corbin Simpson [Sun, 20 Dec 2009 22:00:34 +0000 (14:00 -0800)]
r300g: Add a few more params.

14 years agoglsl: make stack compile.
Dave Airlie [Sun, 20 Dec 2009 23:10:21 +0000 (09:10 +1000)]
glsl: make stack compile.

it would be nice if this stuff would be test built on mesa's primary
platform with mesa's primary build system.

Signed-off-by: Dave Airlie <airlied@redhat.com>
14 years agoradeon/r600: use new libdrm_radeon api
Dave Airlie [Thu, 17 Dec 2009 04:29:04 +0000 (14:29 +1000)]
radeon/r600: use new libdrm_radeon api

14 years agoglsl/apps: Update after glsl cl interface changes.
Michal Krol [Sun, 20 Dec 2009 20:13:26 +0000 (21:13 +0100)]
glsl/apps: Update after glsl cl interface changes.

14 years agoslang: Update after glsl cl interface changes.
Michal Krol [Sun, 20 Dec 2009 20:11:58 +0000 (21:11 +0100)]
slang: Update after glsl cl interface changes.

14 years agoglsl: Do syntax parsing inline with processing.
Michal Krol [Sun, 20 Dec 2009 20:11:16 +0000 (21:11 +0100)]
glsl: Do syntax parsing inline with processing.

14 years agoslang: Add gitignore for autogenerated files.
Michal Krol [Sun, 20 Dec 2009 12:59:14 +0000 (13:59 +0100)]
slang: Add gitignore for autogenerated files.

14 years agoslang: Update after glsl pp changes.
Michal Krol [Sun, 20 Dec 2009 12:53:53 +0000 (13:53 +0100)]
slang: Update after glsl pp changes.

14 years agoglsl/apps: Update after glsl pp interface changes.
Michal Krol [Sun, 20 Dec 2009 12:53:17 +0000 (13:53 +0100)]
glsl/apps: Update after glsl pp interface changes.

14 years agoglsl/apps: Do not print number of eaten tokens in version.
Michal Krol [Sun, 20 Dec 2009 12:52:43 +0000 (13:52 +0100)]
glsl/apps: Do not print number of eaten tokens in version.

This is due to the glsl pp interface changes.

14 years agoglsl/apps: Print error line number in compile.
Michal Krol [Sun, 20 Dec 2009 12:51:38 +0000 (13:51 +0100)]
glsl/apps: Print error line number in compile.

14 years agoglsl/pp: Do processing inline with tokenisation.
Michal Krol [Sun, 20 Dec 2009 12:50:16 +0000 (13:50 +0100)]
glsl/pp: Do processing inline with tokenisation.

14 years agoglsl/pp: Remove outdated TODO.
Michal Krol [Sat, 19 Dec 2009 10:03:47 +0000 (11:03 +0100)]
glsl/pp: Remove outdated TODO.

Already implemented in mesa compiler using predefined symbols.

14 years agoglsl/pp: Report correct error line for purify and tokeniser errors.
Michal Krol [Sat, 19 Dec 2009 08:55:27 +0000 (09:55 +0100)]
glsl/pp: Report correct error line for purify and tokeniser errors.

14 years agoutil: util_format_get_blocksizebits() returns bits per block.
Christoph Bumiller [Sun, 20 Dec 2009 18:09:35 +0000 (19:09 +0100)]
util: util_format_get_blocksizebits() returns bits per block.

14 years agonv50: make address reg allocation a little less hacky
Christoph Bumiller [Sun, 20 Dec 2009 12:40:14 +0000 (13:40 +0100)]
nv50: make address reg allocation a little less hacky

Before I tried to distinguish int +0 and -0, and regs
relative to $a1 would have been considered reserved
for TGSI.
This would probably never occur, let it be fixed even so.

14 years agonv50: use BREAKADDR and BREAK for loops
Christoph Bumiller [Sun, 20 Dec 2009 11:04:26 +0000 (12:04 +0100)]
nv50: use BREAKADDR and BREAK for loops

This is easier, we don't have to record all the BRK branches
to fill in the address at ENDLOOP - which wasn't done before
and thus made all but the last BRK branch jump to the start.

Also, we don't risk reactivting threads that already left
the loop if we join threads after a conditional with a BRK
(although it might be wiser to remove the join altogether
in such cases).

14 years agonv50: handle TGSI_OPCODE_RET,KILP
Christoph Bumiller [Sun, 20 Dec 2009 13:12:35 +0000 (14:12 +0100)]
nv50: handle TGSI_OPCODE_RET,KILP

14 years agoprogs/tests: Silence compiler warnings.
Vinson Lee [Sun, 20 Dec 2009 09:01:00 +0000 (01:01 -0800)]
progs/tests: Silence compiler warnings.

14 years agor300g: add texture compare modes
Marek Olšák [Wed, 16 Dec 2009 05:07:39 +0000 (06:07 +0100)]
r300g: add texture compare modes

14 years agor300: minor blit rework
Maciej Cencora [Sat, 19 Dec 2009 13:25:53 +0000 (14:25 +0100)]
r300: minor blit rework

Use vert/tex coords instead of byte offsets for specyfing src/dst image offsets.
This will allow for blitting between tiled/untiled buffers.

14 years agor300: better fix for glCopyTexSubImage
Maciej Cencora [Tue, 15 Dec 2009 22:57:05 +0000 (23:57 +0100)]
r300: better fix for glCopyTexSubImage

14 years agoprogs/trivial: Use C-style comments.
Vinson Lee [Sat, 19 Dec 2009 08:28:01 +0000 (00:28 -0800)]
progs/trivial: Use C-style comments.

14 years agoprogs/xdemos: Use C-style comment.
Vinson Lee [Sat, 19 Dec 2009 08:00:56 +0000 (00:00 -0800)]
progs/xdemos: Use C-style comment.

14 years agoprogs/demos: Silence compiler warning in morph3d.c.
Vinson Lee [Sat, 19 Dec 2009 07:46:14 +0000 (23:46 -0800)]
progs/demos: Silence compiler warning in morph3d.c.

14 years agoprogs/glsl: Use C-style comments.
Vinson Lee [Sat, 19 Dec 2009 07:38:15 +0000 (23:38 -0800)]
progs/glsl: Use C-style comments.

14 years agoprogs/demos: Use C-style comment.
Vinson Lee [Sat, 19 Dec 2009 07:34:28 +0000 (23:34 -0800)]
progs/demos: Use C-style comment.

14 years agor300g: Fix provoking vertex for non-quads.
Corbin Simpson [Sat, 19 Dec 2009 05:50:45 +0000 (21:50 -0800)]
r300g: Fix provoking vertex for non-quads.

Read the comments. In short, we can't possibly pass piglit's
glean/clipFlat without some help from Gallium and an API/spec change.

14 years agor300g: Respect provoking vertex for trifans.
Corbin Simpson [Sat, 19 Dec 2009 03:42:02 +0000 (19:42 -0800)]
r300g: Respect provoking vertex for trifans.

Fixes part of piglit's clipFlat test; next up is to get quads right.

14 years agor300g: Eliminate a couple more asserts.
Corbin Simpson [Fri, 18 Dec 2009 22:05:40 +0000 (14:05 -0800)]
r300g: Eliminate a couple more asserts.

14 years agor300g: Nuke r300_vbo.
Corbin Simpson [Fri, 18 Dec 2009 21:40:24 +0000 (13:40 -0800)]
r300g: Nuke r300_vbo.

14 years agoprogs/demos: fix glut initialization calls
Brian Paul [Fri, 18 Dec 2009 15:12:55 +0000 (08:12 -0700)]
progs/demos: fix glut initialization calls

Remove glutInitWindowPosition() calls to play nicer with window managers.

Move glutInitWindowSize() calls before glutInit() so the the default window
size can be overridden by the -geometry cmd line option.

14 years agoglsl: clear out shader code before compiling
Brian Paul [Fri, 18 Dec 2009 18:57:15 +0000 (11:57 -0700)]
glsl: clear out shader code before compiling

When we start compiling a shader, first free the existing gl_program.
This (mostly) fixes the piglit glsl-reload-source test.
Without this change, we were actually appending the new GPU code
onto the previous program.

14 years agoradeon: protect fbo allocation message with debug
Alex Deucher [Fri, 18 Dec 2009 15:57:37 +0000 (10:57 -0500)]
radeon: protect fbo allocation message with debug

fixes fdo bug 25708

Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
14 years agoutil: Add util_format_has_alpha(), enclose in extern C.
Michal Krol [Fri, 18 Dec 2009 13:15:21 +0000 (14:15 +0100)]
util: Add util_format_has_alpha(), enclose in extern C.

14 years agoutil/pack: Handle the remaining formats with generic u_format access functions.
Michal Krol [Tue, 15 Dec 2009 18:48:31 +0000 (19:48 +0100)]
util/pack: Handle the remaining formats with generic u_format access functions.

14 years agoutil: Update blitter for u_format changes.
Corbin Simpson [Fri, 18 Dec 2009 11:20:19 +0000 (03:20 -0800)]
util: Update blitter for u_format changes.

:T

14 years agoRevert "r300g: flush CS if a buffer being deleted is referenced by it"
Corbin Simpson [Fri, 18 Dec 2009 10:55:28 +0000 (02:55 -0800)]
Revert "r300g: flush CS if a buffer being deleted is referenced by it"

As requested by just about everybody. I'm going back to actually reading
patches before ACKing and pushing them.

This reverts commit 417ce06306962a9355cbb35cefcdea1951b0ce85.

Conflicts:

src/gallium/winsys/drm/radeon/core/radeon_buffer.c

14 years agoMerge branch 'pipe-format-simplify'
Michal Krol [Fri, 18 Dec 2009 08:08:26 +0000 (09:08 +0100)]
Merge branch 'pipe-format-simplify'

14 years agor600 : enable gl2, set R600_ENABLE_GLSL_TEST by default.
Richard Li [Fri, 18 Dec 2009 05:23:04 +0000 (00:23 -0500)]
r600 : enable gl2, set R600_ENABLE_GLSL_TEST by default.

14 years agoradeon: fix frontbuffer read/drawpixels
Dave Airlie [Fri, 18 Dec 2009 04:35:03 +0000 (14:35 +1000)]
radeon: fix frontbuffer read/drawpixels

Bug 25699

The main problem was the optimising flush wasn't doing the front
rendering checks properly.