mesa: Changes to 'refs/tags/mesa_20090313'
Tag 'mesa_20090313' created by Brian Paul <brianp@vmware.com> at 2009-03-13 15:35 +0000
Mesa snapshot 2009 Mar 13
Changes since mesa-6_5-20060712:
Aapo Tahkola (20):
fix #6991
support shorts as vertex data
gcc-4.1.1 compile fix
fix broken write-only depth setting. use early z where possible.
extend some DrawRangeElements cases to support rendering more than 65535 verts in one blast. ut2k4 cases in other words ...
remove duplicate pieces of code.
fix #8008
close #6318
Fix invalid enums passed to MapBuffer
Fix invalid enums passed to MapBuffer
typo fix. this case still fails.
support as much of GL_EXT_stencil_two_side as we can. untested.
Fix #10071 - wrong max_index in vbo draw_prims. (Papadakos Panagiotis)
Guess another unknown register in R300 command buffer initialization. (Oliver McFadden)
don't use hw to perform vertex transform etc. when using swtcl. This for compatibility with vertex programs and the fact that swtcl very rarely gets hit with tcl capable hw.
r300: fix primary color on rs480
r300: fix broken vbos
rs480: fix textures and secondary color(?). clipping is still busted. tested on r480
Merge branch 'master' of git+ssh://aapot@git.freedesktop.org/git/mesa/mesa
rs480: fix secondary color for real this time
Adam Jackson (20):
linux-indirect target fixes.
mkdir -> mkdir -p, since /usr/include might not exist in the installroot yet
Fix some && (logical) that should clearly have been & (bitwise).
Fix parallel make in r300 driver.
Make sure GLX entrypoints are marked PUBLIC.
Unbreak Linux builds with -fvisibility=hidden.
__driConfigOptions must be PUBLIC.
glxinfo: Fix multisample visual reporting.
Trivial SELinux awareness. Enable with --enable-selinux.
Add E7221 variant to i915.
Add IS_915(), simplify IS_9XX() a bit.
Fix build on ia64.
Fix sis_dri on ia64.
Fix parallel build by making symlinks before makedepend.
chmod a-x **/glslnoise.c
Install dri_interface.h in 'make install'.
Fix path to minstall in last commit.
Install dri_sarea.h in 'make install'
Drop unused 'entries' field from __glxHashTable.
Update to SGI FreeB 2.0.
Alan Coopersmith (4):
Fix builds with compilers other than gcc 3.0 & newer
Make minstall work with Solaris /bin/sh
Solaris port of Mesa 7.1 with autoconf support
Add Solaris to OS'es using PROT_EXEC mmap() to get executable heap space
Alan Hourihane (135):
Fix some breakage after the PROGRAM_UNDEFINED change
Fixup more PROGRAM_UNDEFINED problems.
Fix writemasks on texture arb fp instructions.
Fix bug 8010 - locking issues.
merge current trunk into vbo branch
Don't define as const's to avoid compiler optimization & warning.
use passed target parameter
Ensure we have a valid ReadBuffer for CopyTexSubImage, and
Add missing OSMesaColorClamp function
Only set R_MODE with NV_point_sprite
remove duplicate init func
Use drm_i915_sarea instead of drmI830Sarea and remove i830_common.h
remove redundant init
set outputs_safe to 0 as it's possible for the code generation
set outputs_safe to 0 as it's possible for the code generation
small cleanups
correct the return value
Fix error string
revert part of the previous cleanup - it only applies
include <X11/Xlib.h>
silence warning
build fix for xorg driver
Fix build problem with MSVC
Some changed for non-C99 compilers
inline -> INLINE
revert mode change back to 644
snprintf -> util_snprintf
declare atoms as extern
fix _mesa_ffs for alternative compilers
Build with -O2
Set the attribute as used.
Silence warning
Check for NULL pointer
Bring in DRI2 changes
small optimization
Hook gallium i915 up to DRI2
add missed files for DRI2 merge
fix legacy DRI
fix card_extensions
revert the DRI2 commits
Check in SwapBuffers for any new pending dri2 events
glcontextmodes.c is required remove the reference in .gitignore
check for winsys->destroy before calling
choose sane default for dri driver location
choose a 1024x768 resolution
rather than use CRTC 1 (aka LVDS), try and setup all connectors/encoders
consolidate intel directories.
if we can't find a mode, return first. At least we should
pick first mode
Merge branch 'master' of git+ssh://git.freedesktop.org/git/mesa/mesa into gallium-0.2
tree builds
add gallium dir
re-add MSAA support
fix for MSAA
bug fix to MSAA visuals
mesa: add missing FEATURE_attrib_stack around
add cso_hash_contains() function
link EGL demos with -lGL
egl: Add new EGL driver that wraps GLX.
egl: fudge with LIBGL_DRIVERS_PATH to pick up EGL specific DRI driver.
egl: switch to egl_glx.so as the default EGL driver for X.
egl: cleanup doublebuffer check
st: change from ** to * for st_unreference_framebuffer()
st: export st_get_framebuffer_dimensions() to retrieve
st: add prototype for st_get_framebuffer_dimensions()
gallium: silence warning
mesa: when emitting an address load instruction, for
dri: don't check the number of cliprects before swap, let
build "GLX" egl driver by default and egl demos
Merge commit 'origin/master' into gallium-0.2
disable OPENGL_BIT
Merge commit 'origin/master' into gallium-0.2
gallium: no renderbuffer, so just exit.
Merge commit 'origin/master' into gallium-0.2
mesa: fix generation of fixed function state when no vp exists
mesa: fix generation of fixed function state when no vp exists
build default set of progs + egl
mesa: fix build
add SRGB formats
Merge commit 'origin/master' into gallium-0.2
Merge commit 'origin/gallium-0.1' into gallium-0.2
Merge commit 'origin/master' into gallium-0.2
Merge commit 'origin/gallium-0.1' into gallium-0.2
Merge commit 'origin/master' into gallium-0.2
Merge commit 'origin/master' into gallium-0.2
fix conflict breakage
Merge commit 'origin/gallium-0.1' into gallium-0.2
Merge commit 'origin/master' into gallium-0.2
gallium: temporary check for > 65535 vertices
gallium: more vertex count checks
gallium: change 65535 to UNDEFINED_VERTEX_ID
gallium: catch vertex overflow higher up
mesa: when we have interleaved arrays, check bounds for both
mesa: move declaration
Merge commit 'origin/master' into gallium-0.2
Merge commit 'origin/master' into gallium-0.2
Merge commit 'origin/gallium-0.1' into gallium-0.2
gallium: fix some asserts
gallium: set ST_NEW_FRAMEBUFFER when setting new surfaces
egl: support GLXFBConfigs, pbuffers and pixmaps.
egl: fix startup query version
egl: fix egl closure
st: build fix
glsl: support sampler arrays.
glsl: fix a comment typo
glsl: support sampler arrays.
glsl: fix a comment typo
egl: fix makecurrent with null drawable/context
glsl: fix regression from sampler arrays commit
glsl: fix regression from sampler arrays commit
mesa: handle some cases of 0x0 render targets
mesa: add new samplers_array test
Merge commit 'origin/master' into gallium-0.2
mesa: check frambuffer complete status before rendering
mesa: revert partial commit for 0x0 render targets
mesa: small cleanup
mesa: check frambuffer complete status before rendering
mesa: tweak to formatting
Merge commit 'origin/master' into gallium-0.2
dri: add fake front definitions
dri: add fake front definitions
Merge commit 'origin/master' into gallium-0.2
gallium: change the st_get_framebuffer_surface/texture functions
mesa: fix offset problem with interleaved arrays
gallium: fix glean's vertProg1
mesa: remove old comment as it's fixed elsewhere now.
dri2: support glXWaitX & glXWaitGL by using fake front buffer.
demos: fix glxpixmap and call glXWaitGL before calling XCopyArea.
egl: error checking
egl: if a surface type isn't defined let's default to EGL_WINDOW_BIT
egl: glx updates for FBconfigs
glx: add support for a reallyFlush() function before swap occurs.
gallium: add winsys interface for viewport changes to support DRI2
mesa: only call update_buffer when it's available
xdemos: On termination with `esc` close the contexts correctly.
Alan Swanson (3):
radeon: Adapt cliprect fixes from r300.
r200: Adapt cliprect fixes from r300.
r200: Simplify r200SetCliprects like radeonSetCliprects in radeon and r300.
Alex Deucher (36):
R300: RV410 SE chips have half the pipes of regular RV410
Add new RV380 pci id
Radeon 9500 (0x4144) only has one pipe
R300: fix typo r300 fog reg
Merge branch 'r500test' of git://people.freedesktop.org/~airlied/mesa into r345-cleanup
R5xx: Add R5xx pci ids
R5xx: various updates
Update comment
R300: clean up VAP_PROG_STREAM_CNTL* register usage
R300: cleanup VAP_CLIP_CNTL
R300: fix VAP_OUTPUT_VTX_FMT_1 defines
R3/4/5: fix TCL on r5xx, cleanup PVS code
R5xx: Add R5xx pci ids
R5xx: various updates
Update comment
R300: clean up VAP_PROG_STREAM_CNTL* register usage
R300: cleanup VAP_CLIP_CNTL
R300: fix VAP_OUTPUT_VTX_FMT_1 defines
R3/4/5: fix TCL on r5xx, cleanup PVS code
R300: fix rebase conflicts
R500: add support for 4k textures
Merge branch 'r500-support' of git+ssh://agd5f@git.freedesktop.org/git/mesa/mesa into r500-support
R3xx: more PVS cleanup
R300: cleanup FS code and fill in missing details
R500: fixup r300EmitClearState() FP for r5xx
R300: clean up Fog registers
R300: clean up CB registers
R3xx: clean up ZB registers
R300: clean up GA registers
r500: write out the correct FP registers
r300: SC register naming cleanup
R3/4/5xx: update to use drm get_param for num gb pipes
R300: 1002:5657 is actually RV410
R300: update vap_cntl values for NUM_FPUS
R300: missing semicolon
R300: Add support for RS600 chips
Alex Neundorf (1):
added catamount-osmesa-pgi config
Alexey Sokolov (1):
define M_PI if needed
Andreas Micheler (1):
faster write_rgba_span_front()
Andrew Randrianasulu (1):
r200: accept PROGRAM_CONSTANT inputs due to mesa changes
Andrzej Trznadel (2):
Fix compat implementation of ffs() to return 1-based bit numbers.
[965] Fix fp temp reg release code to not usually release all temps.
Andy Skinner (1):
added -altopts to allow overriding all other opts
Arthur Huillet (1):
bumped nouveau DRM interface version number
Ben Skeggs (601):
Add start of vertex shader backend, will most likely not work correctly yet
Another TODO, so I don't forget..
A couple of quick fixes, the original had some half-finished
Kill all the current shader code.
fix typo
Dont call exit() from the DRI driver, with AIGLX this is particularly nasty
We need nmesa->driFd and friends setup before we call nouveauFifoInit
Some more nouveau_screen.c setup, not sure how correct it is yet though..
Fix segfault in nouveauCalcViewport
Add nv30InitStateFuncs
jkolb pointed out that face can also be FRONT_AND_BACK. Added stencil funcs
Adapt FIFO code to deal with cases where the base GET/PUT value isn't 0.
Use RENDERINPUTS macros to access render_inputs_bitset
poke the correct FIFO regs
Stupid bug..
More FIFO fixes.
Avoid sharing subchannels with the ddx until context switching is done
Fix nv30LineWidth, hw expects a ubyte.
Don't bother touching lighting stuff if shaders are in use
nouveauCreateDmaObject
Some missing state init
fix scissor
Incomplete shader stuff, should mostly work for NV40. Other cards, not so
Fix progs/fp/tri-xpd
Fix RSQ emulation
- Add InitInstruction to hw shader backend, and remove SetUnusedSource.
Fix a copy+paste'o that caused some *very* strange bugs..
Some work on buffer handling, most likely not entirely correct and
oops, we don't want this by default just yet...
Create visuals for modes the ddx provides
oops, typo
Implement a simple nv30Clear, and make sure we get a nouveau_renderbuffer
state cache is automagically flushed on a normal BEGIN_RING_SIZE
NV_44 uses nv30InitStateFuncs too
Skeletal extension handling across chipsets.
Some more voodoo to get 3D going with a minimal initial context.
0x4497 doesn't have NV30_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE
Improve SwapBuffers a bit.
NV1x/2x hw_func stubs.
Get nv10_swtcl.c working enough for glxgears on NV40.
Don't build passthrough shader on <NV40
nouveau: get 16bpp working
nouveau: Don't fill nrb->dPriv for private buffers
nouveau: maintain numClipRects/pClipRects in context.
nouveau: Modify span routines to use nouveau_renderbuffer instead of driRenderbuffer
nouveau: Kill some compile warnings.
nouveau: Add notifier support functions
nouveau: Wait on notifier to check for completion of previous commands.
nouveau: Make the notifier stuff actually work..
nouveau: Make use of NOUVEAU_DEBUG for shader disasm
nouveau: Add simple wrapper for NV_MEMORY_TO_MEMORY_FORMAT.
nouveau: Typo
nouveau: record *actual* type of memory that was alloc'd, not the requested types.
nouveau: add nouveau_mem_alloc/free debugging
nouveau: We'll need syncNotifier for NV_MEMORY_TO_MEMORY_FORMAT too.
nouveau: Initial buffer object support
nouveau: Use bufferobj interface for fragment program uploads
nouveau: bump drm patchlevel.
nouveau: allow the use of multiple subchannels/objects by default.
nouveau: fail CreateScreen on unknown cards instead of guessing.
nouveau: Add 0x0244 pciid manually for now..
nouveau: bump drm patchlevel
nouveau: shader backend branching support for all cards that support it.
nouveau: kill off shader pass1.
nouveau: rename pass0_arb to pass0.
nouveau: start converting shaders into a tree format again..
nouveau: reindent shader pass0/pass2
nouveau: unbreak nv40
nouveau: fill in condition info for instructions
nouveau: allow for card-specific shader infos to be kept
nouveau: DPH and CMP for NV40 which doesn't do it natively.
nouveau: some extra debug output
nouveau: and here's the "oops, I suck" commit :)
nouveau: add result scaling to shader backend, use it in RSQ emul for NV40.
nouveau: unbreak NOUVEAU_RING_DEBUG
nouveau: extend notifier interface to allow multiple notifiers in a memory block.
nouveau: initial GL_ARB_occlusion_query support
nouveau: fix nv30 line width
nouveau: unhardcode some more NV30TCL_FP_CONTROL values
nouveau: maintain a map of which vtxprog input corresponds to which array
nouveau: oops
nouveau: remove an unused table
nouveau: oops, build attrib map after we know how the final shader will look..
nouveau: rework shader param handling
nouveau: NV40 glClipPlane support.
nouveau: misc NV40 fixes
nouveau: argh
nouveau: new bufferobj code.
nouveau: fix a small bug in nv10 swtcl
nouveau: OUT_RINGp expects the size in dwords, not bytes.
nouveau: a couple of NV3x fixes
nouveau: drm interface changes
nouveau: avoid using uninitialised TexSrcUnit.
nouveau: NVSDBG macro
nouveau: fail translate if we use too many params somehow
nouveau: fix typo
nouveau: SwapBuffers() needs to perform a glFlush()
nouveau: update for drm interface changes (0.0.5)
nouveau: some swtcl fixes
nouveau: match drm version bump
nouveau: NV30_TCL viewport/scissor fixes
nouveau: match drm changes (0.0.7)
nouveau: match drm 0.0.9 interface
Play "nuke the typedef"
nouveau: Lets only do private buffers.
nouveau: reindent nouveau_buffers.c
nouveau: reindent nouveau_buffers.h
nouveau: Split nouveau_buffers into nouveau_mem and nouveau_fbo
nouveau: Always render offscreen, emulate front buffer rendering.
nouveau: Remove ALLOW_MULTI_SUBCHANNEL hack
nouveau: reindent nouveau_span.c
nouveau: Keep drm channel alloc struct around.
nouveau: Use half the notifier block for query objects.
nouveau: Very rough cut at gallium winsys + nv40 pipe driver.
nouveau: oops, when'd that disappear..
nv40: some very rough guesses for get_paramf()
nv40: support TXP again
nv40: fix thinko == fix 3d textures
nouveau: m2mf fallback path for region copies.
nouveau: update to latest header
nv40: remove use of temps for KILP, implement KIL
nv40: track pipe const id
Add support for Z24_S8 to GL state tracker.
nv40: use native Z24_S8 format for zeta buffer
nv40: fix a couple of typos
nv40: "rect" textures, anisotropic filtering
nouveau: temporary workaround for dodgy buffer code
nv40: force reupload of all consts on vtxprog change
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nv40: Better teximage layout, probably not 100% correct still.
nouveau: wait for sync after m2mf also, to be thourough.
nv40: support for keeping multiple vtxprogs on the hw at the same time.
nv40: fp arbitrary swizzling/negation
nv40: point sprites
nv40: remove unused stuff
nv40: be more flexible with render target setup
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nv40: fix build after gallium changes
nouveau: g8x winsys support, yay softpipe!
nv50: 3d driver skeleton
nouveau: adapt to gallium interface changes
nouveau: use "indirect" push buffers
nouveau: relocs are per-pushbuf, not per-channel
nouveau: downgrade hacked syncs to hacked flushes
Merge branch 'nouveau-gallium-0.1' into darktama-gallium-0.1
nouveau: give resources a start property
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nouveau: fix build
nouveau: add callbacks for signalled fences
nouveau: fix elusive dma bug
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nv40: more flexible vbo format translation
Correct user VBO size.
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nouveau: fix build
nv40: some forgotten adaptions
nv40: depth textures
nv40: allow reading from fragprog result regs
nv40: insanely stupid bug..
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nouveau: adapt
nv40: small bug
nv40: Fix bug in vtxprog + a few tweaks
nouveau: take jumps into account properly when debugging pushbuf
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nouveau: more adaption..
nouveau: mass renaming for consistency, no functional changes
nv40: Do all fp setup in nv40_fragprog.c
nv40: less dodgy vp const/insn handling
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nouveau: move extension stuff into nouveau_screen.c
nv40: make vbo state update static
nv40: destroy programs
nv40: grow fragprog as needed
nv40: fp support for TGSI_FILE_IMMEDIATE.
nv40: typo
nv40: fix culling
nouveau: some cleanups
nv40: don't use vertex buffers for static vertices.
nv40: colormask thinko
nouveau: bump pushbuf size a little, so a "full" packet can fit
nv40: clean state a bit
nv40: fix valgrind complaints
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nouveau: match latest gallium changes
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nouveau: remove sync hack, gallium got sort-of fixed.
nouveau: nuke subchan auto-assign.
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nouveau: match gallium changes
nouveau: some cleanups
nouveau: don't wait when deleting fences unless needed
nv40: seems we have stencil faces around the wrong way.
nouveau: speed up user buffers.
nv40: ensure all required buffers are accounted for during state validation
nouveau: pushbuf code, now with 50% less suck!
nv40: use index buffers rather than inline indices.
nouveau: header update
nouveau: remove fence_del(), _ref() can be used for the same purpose.
nouveau: allow unfenced read of buffers in a few situations
nouveau: track last validated offsets, so we know when relocs can be avoided.
nouveau: remove legacy stuff
nouveau: typo fix
nv40: untested fragprog mods for big-endian chips
nouveau: header update
nv40: s/READ/WRITE/
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nv40: some cleanups
nv40: bind textures based on fragprog usage.
nv40: do nothing for set_clip_state()
nouveau: share pushbuf interface code between pipe drivers
nv40: use a more "normal" 2x8bit format, the other is likely a HILO format.
nouveau: object header update
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nouveau: gallium changes..
nouveau: don't use GL headers at all
nv40: stronger type safety
nouveau: remove assertions from PIPE_ -> GL_
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nv40: clarify that tex code is fp-only, we'll do vertex textures eventually.
nouveau: small oops
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nouveau: quicky-port to gallium changes
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nouveau: ddx versioning changed to match nouveau.ko versioning
nouveau: support nv67
nouveau: 0xdeadc0de
nouveau: implement a bo_set_status()
nouveau: avoid relocations where possible.
nv40: the 0x4497 version of curie doesn't support index buffers.
nv40: cleanup state handling a bit
nv40: delay all state emit until before draw
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nouveau: interface updates
nv40: prep for multiple pipe contexts on a single hw channel
nouveau: memory leak
nv40: fix inline u08/u16 indices
nouveau: ddx versioning changed
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
nv40: remove use of pt->first_level
nv40: attempt at obeying sampler min_lod/max_lod/lod_bias
nouveau: 0xdeadc0de
nouveau: implement a bo_set_status()
nouveau: avoid relocations where possible.
nv40: the 0x4497 version of curie doesn't support index buffers.
nv40: cleanup state handling a bit
nv40: delay all state emit until before draw
nouveau: interface updates
nv40: prep for multiple pipe contexts on a single hw channel
nouveau: memory leak
nv40: fix inline u08/u16 indices
nv40: remove use of pt->first_level
nv40: attempt at obeying sampler min_lod/max_lod/lod_bias
nv40: always copy 4 float immediates for now.
nv30: fix build
nv30: more interface updates
nv40: fix non-debug builds + start on obeying portability guidelines.
nv40: over-zealous s/
Merge branch 'nouveau-gallium-0.1' into darktama-gallium-0.1
Merge branch 'upstream-gallium-0.1' into nouveau-gallium-0.1
nouveau: match gallium code reorginisation.
nouveau: fix potential userbuf crash.
Merge branch 'upstream-gallium-0.1' into nouveau-gallium-0.1
nv40: ensure scissor gets disabled where necessary
nv40: similar changes to polygon stipple as were done for scissor
nv40: obey polygon offset state
nouveau: header update
nv40: until gallium is fixed we'll need a fallback for user clip planes
nv40: move some things around
nv40: get fragprog onto new state mechanism
nv40: and vertprog..
nouveau: cleanups + fixes
nv40: keep track of generated context state vs current channel state
nv40: almost there..
nv40: fb state
Merge branch 'upstream-gallium-0.1' into nouveau-gallium-0.1
nouveau: fix build
nv40: rework fragment texture state
nv40: move hw_dirty
nv40: stateobj start out with 0 refcount
nv40: dump meaningful names for surface formats
nv40: construct vbo state the same way as the rest
nv40: remove pipe_state struct now.
Merge branch 'upstream-gallium-0.1' into nouveau-gallium-0.1
Merge branch 'upstream-gallium-0.1' into nouveau-gallium-0.1
nouveau: implement pipe_screen
nouveau: hand nouveau_winsys in with pipe_screen init
nv40: move "channel context" stuff into nv40_screen
Merge branch 'upstream-gallium-0.1' into nouveau-gallium-0.1
nouveau: turn pushbuf macros into inline functions
nouveau: enable multi-context/single-channel support for nv40
nv40: fix segv when app "skips" texture units.
Merge remote branch 'nouveau/gallium-0.1' into nouveau-gallium-0.1
nouveau: fix potential crash
nouveau: silence some warnings
nv40: nuke debug
nv40: re-do vtxbuf format code
nv30: a couple of vtxprog fixes
nouveau: another "argh gallium fscks with assert" fix
nv30: put the card into vtxprog mode + small cleanups/fixes
nv50: some forgotten changes
nv50: convert to hwctx-in-screen as nv40 is
nv50: create blend stateobj
nv50: crappy state validate/emit function
nv50: ouch, next_subchannel++ :)
nv50: depth_stencil_alpha stateobj
nv50: scissor/viewport/blend colour/stipple
nv50: rasterizer stateobj
nv50: start on fb state
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nouveau: match interface changes
nouveau: NV9X is basically a G80, fix issue with NV6X being detected as G80.
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nv10: fix build after merge
nv40: simple swtnl path (half broken, but getting there)
nv40: workaround main swtnl breakage
nouveau: create fence object when allocating pushbuf, instead of submit
nv40: a few more fp opcodes
nouveau: pass nvws to nvws->push_* functions, rather than nouveau_channel*
nv40: "implement" noise opcodes in fragprog
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nouveau: match gallium API changes
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nv40: use new pipe_framebuffer width/height fields
nouveau: try combining prev and next resources on free
nouveau: potentially delay buffer destruction
nouveau: use saved fence pointer, not head of unsignalled list
nouveau: do a retry if initial buffer alloc fails
nv40: use num_cbufs
nv40: align each level to 64 pixels
nv40: s/free/FREE/
nv40: oops
nv40: swtnl fallback on unsupported array format
nv40: call semi-magic 0x1d88 method
nv40: ensure vb relocs don't end up on list for swtnl
nv40: add 16-bit SSCALED vb formats
nv40: fix bug in query code
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nv40: add dxtn formats (disabled)
nv40: workaround fp result.data[0] clobberage
nv40: fp: fix multiple refs to a single const withing an instruction
nv40: catch fp extra-const cases where both const and immd have same idx
nv40: remove some badness from fp temp/result allocation
nv40: fix fp depth write
nv40: vp reg changes similar to recent fp changes
nouveau: fix infinite wait on space for userbuf.
nv40: respect rasterizer cso bypass_clipping flag
nv40: maintain pipe_surface status field
nouveau: refcount buffers on validate list.
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nv40: respect do_flip in surface_copy()
nv40: vp const/immd fix
nv40: vp 1/0/- swz
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nouveau: adapt to recent gallium changes
nv40: mark fp dirty even when only consts updated
nv40: track current scissor enable/disable state
nv40: support vp clip distance regs, unused currently.
nouveau: update object header
nv40: fix slight thinko
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nouveau: winsys printf disappeared :)
handle IsPositionInvariant flag
nv40: shorten zsa state lines
nv40: only update draw module state when using swtnl
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nv40: need to resubmit buffers if pushbuf gets flushed during draw
nv40: convert the inline idxbuf paths also
nv40: static attribs -> stateobj
nv40: remove redundant state_emit() calls
nouveau: in some cases don't create the buffer in local mem initially.
nv40: have test for hw idxbuf in single place
nouveau: create swizzled surface + scaled image objects
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nv40: kill some warnings
nv40: implement user clip planes
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nv40: use vb/ve counts rather than shader inputs for related loops
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nouveau: PIPE_ATTRIB_MAX -> PIPE_MAX_ATTRIBS
fix non-i386 builds
Merge branch 'upstream-gallium-0.1' into nouveau-gallium-0.1
nouveau: fix build
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nouveau: stub set_edgeflags for all nv pipe drivers
nv40: do full swtnl fallback when edge flags present.
nv40: enable DXTn formats
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nouveau: bitmap texcoord bias has been removed
nv50: report some supported formats to keep the state tracker from asserting.
nv50: slightly less skeletal texture funcs, prevents fun segfaults
nouveau: chipset is a device property, remove from nv/nvc.
nouveau: create objnull during channel creation
nouveau: make nouveau_device.h part of public API
nouveau: remove chipset fields in all nv pipe driver context/screen structs.
nouveau: remove winsys-related stuff from nouveau_local.h
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nv40: fix typo in one of the previous commits
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nouveau: remove final PIPE_FORMAT_U_* usage
nouveau: missed PCI case
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nouveau: very quick port to tex-surface changes.
nouveau: oops, more tex-surfaces fallout
nouveau: rework buffer validation a bit
nouveau: flush pending pushbuf if buffer on validate list at map/del
nv40: a couple of memory leaks
nouveau: fix warning
nouveau: kill off surface_alloc_storage()
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nouveau: update for interface changes + hack around gallium x86_64 bustage
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nouveau: major thinko
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
Revert "mesa: Use the appropriate relocation."
nouveau: adapt to cpp->pf_block changes
nv50: import current "state of the art" nv50 code
nv50: use "real" constbufs for shaders + tcb uploads
nv50: fucking horrible hack, I really hate G8x shaders..
nv50: implement SUB
nv50: DPH
nv50: split code/data upload out, fp will use it later on
nv50: drop the majority of the old shader code, reimplement, only MOV so far.
nv50: start using interpreter for fragprog too, not hardcoded passthrough
nv50: remove hardcoded fp stuff
nv50: checkpoint: shader code now exceeds caps of "old" code
nv50: some fixes + MIN/MAX
nv50: big fuckup, fix it
nv50: fix EX2.. somehow
nv50: DPH, XPD, some TODOs
nv50: small cleanup
nv50: SGE/SLT
nv50: FLR/FRC
nv50: ABS
nv50: DST
nv50: handle 0/1 SWZ
nv50: fixes + untested _SAT modifier
nv50: POW!
nv50: oops, copy+pasto
nv50: create emit_pow() - emit_lit() will need to use it
nv50: obey per-source abs (TGSI_UTIL_SIGN_CLEAR)
nv50: LIT - sort-of
nv50: obey writemask in a couple of places
nv50: hehe, damage from tex-surfaces.. surface_fill() reenabled now :)
nv50: note a critical bug
nv50: fix src1 & src2 == const
nv50: delayed write of fragprog result regs until end of program
nv50: remove NV50_PROG_{VERTEX,FRAGMENT}
nv50: use emit_flop() instead of building RCP manually on interp
nv50: note some things discovered during renouveau session
nv50: support the other TGSI_UTIL_SIGN modes
nv50: fix SGE/SLT when sources need swapping
nv50: quick hack so progs/fp/fp-tri works for the moment
nv50: LRP
nv50: various fixes + SCS
nv50: move some magics
Revert "nv50: move some magics"
nv50: move magics take 2
nv50: rename nv50_state.h to nv50_program.h
nv50: get vp working again, fp is broken regardless somehow..
nv50: carry instructions around in nv50_program_exec, not a flat array
nv50: allow relocating a shader's constants at upload time
nv50: use constbuf segment 0 for everything - I can't make the others work..
nv50: more efficient const upload + fixes (fp/* works now!)
nv50: remove some cruft, don't upload program unless really needed
nv50: support a couple more common VBO formats
nv50: draw_elements() - inline only for the moment
nv50: valgrind complaint
nv50: fix blend cso
nv50: another vbo format
nv50: comment on a so-far unseen bug
nv50: flag to indicate to winsys we want a surface for use as a zeta buffer
nv50: disable ztest for now - it doesn't work still
nv50: do tsc/tic upload + stub out shader TEX stuff
nv50: simplify interp crap a bit...
nv50: disable inline IMMD for now, IMMD+pred == BANG!
nv50: a couple more bits'n'pieces
nv50: abuse constbuf upload for program upload
nv50: hacks for stuff I don't really get yet
nv50: hack of a TEX opcode
nv50: use stateobjs for sampler/image_control uploads
nv50: fix blend colour
nv50: separate state validation and upload, similar to nv40
nv50: get tri-scissor-tri working
nv50: make TEX a halfie
nv50: some people are just born stupid.. really..
nv50: move surface_map/unmap into nv50_surface.c
nv50: R32_FLOAT vbo format
nv50: make sure static buffers (constbuf, tex control etc) get on reloc list
nv50: simplify emit_interp a bit
nv50: remove some debug
nv50: maintain pipe surface status field
nv50: turn on depth test/write again, not 100% but winsys handles it better
nv50: rework miptree/texture/texsurf code a bit
nv50: whoops
nv50: vpt translate/scale backwards
nv50: maybe some scissor fixes..
nv50: don't multiply polygon offset units by 2.0 like on nv40
nv50: fix line stipple
nv50: reverse stencil sides, header is wrong
nv50: fixes after rebase + commits note on the code that was just pushed.
nouveau: oops, bump the drm patchlevel back down again
Merge remote branch 'upstream/gallium-0.1' into gallium-0.1
nv50: make use of nouveau drm 0.0.11 to get 3d going
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nv50: more "abuse" by using libc malloc etc..
nouveau: update to latest object header
nv50: get clear-scissor working
nv50: enable GART usage for vertex buffers
nv50: add license headers to .c files
nv50: split tic construction out into own file
nv50: add some texture formats
nv50: demagic tex filter / wrap mode
nouveau: winsys surface funcs deprecated, remove them
nv50: quick hack to get textures untiled on map, and tiled on unmap
nv50: obey do_flip in surface_copy()
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nv50: add NV86 and NV94 to list of "supported" chips
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nouveau: is_format_supported() interface changes
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
Merge remote branch 'origin/gallium-0.1' into nouveau-gallium-0.1
nouveau: fix build
nv40/nv50: enable mirror wrap modes
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nouveau: pf_sprint_name -> pf_name
Merge remote branch 'origin/gallium-0.1' into nouveau-gallium-0.1
nv30/nv40: KIL/KILP swapped meanings
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nouveau: gallium directory structure changed again..
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
Merge remote branch 'nouveau/gallium-0.1' into nouveau-gallium-0.2
Merge remote branch 'upstream/gallium-0.2' into nouveau-gallium-0.2
Merge remote branch 'upstream/gallium-0.2' into nouveau-gallium-0.2
nouveau: rework nouveau_screen for latest and greatest changes
Merge remote branch 'upstream/gallium-0.2' into nouveau-gallium-0.2
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
nv50: hack surface alloc a bit for now
nv50: use 3D engine clears, 2D engine doesn't understand zeta formats
Merge remote branch 'origin/gallium-0.2' into gallium-0.2
nouveau: some small API changes
Merge remote branch 'origin/gallium-0.2' into gallium-0.2
Merge remote branch 'origin/gallium-0.2' into gallium-0.2
Merge remote branch 'nouveau/gallium-0.1' into gallium-0.2
nv40: rename some vars in texture layout code
Merge remote branch 'origin/gallium-0.2' into gallium-0.2
nouveau: pass object handle not pointer to GPU...
nv40: init pipe_surface correctly
nouveau: remove previous hack around x86_64 breakage
gallium: add st_set_teximage_surface for EXT_texture_from_pixmap
nouveau: return a value for PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS
nv40: apply ABS modifier to RSQ source in vp
nv50: ensure we actually get contiguous regs for TEX insn.
nv50: indentation for TEX is a little overenthusiastic
nv50: add TXP to TEX case.. not correct, but anyway..
nv50: slightly better miptree allocation
nv50: working towards 3D textures
nv50: fix crash in nv50_program_destroy
nv50: fill image unit index in TEX varients
nouveau: use usage, not uninitialised flags value...
nouveau: return buffer map to something sane.
nv50: create buffers for each image that makes up a texture
nv50: any cpu access to a texture is done on its backing images
nv50: disable shader debug
nv50: enable npot textures
nv50: fix a typo and a thinko
nv50: remove previous hack to manage tiled surfaces
nv50: fix assertion failure
nouveau: fix warning
nv50: another typo..
nv50: fix handling of depth textures
nv50: make rtt work again
nv50: implement KIL enough for progs/fp/kil to work
nv50: occlusion queries
nv50: aniso
nv50: shadow mapping
nv50: add DXTn formats
nv50: change some magic reg, makes more things work
nv50: get glxgears showing all 3 gears instead of 1!!
nv50: fix progs/tests/manytex
nouveau: link against libdrm_nouveau (installed with libdrm)
nouveau: get things building/running again after pipe_surface.buffer removal
nouveau: notifier timeout is a float now
nouveau: support getting "native" bo from winsys
nv50: move 2d blit/fill code into pipe driver
nv04-nv40: move 2d blit/fill code into pipe driver
nv50: stop using nouveau_push.h, it's evil
nv50: rework for texture_transfer changes
nv50: fix occlusion queries
nv50: remove unused variable
nouveau: reenable all the non-nv50 pipe drivers
nv50: delay uploads until transfer object is destroyed
nouveau: make stateobjs start off with refcount of 1
nouveau: fix more breakage from pipe_reference..
nv50: simplify tesla object selection
nouveau: use bo_handle_ref instead of bo_fake to get front-buffer bo
Benjamin Close (7):
i965: fix compilation
autogen: Make sure MAKEFLAGS is not set before running autoreconf
galium: Makefile fixes: -Werror=implicit-function-declaration -> -Werror-implicit-function-declaration
egl: Allow compilation to succeed with FreeBSD
egl: Use -dlopen rather than -dl which is non portable
gallium: Fix build when exiting CFLAGS contains a path with different gl.h
gallium: Add support for BSD operating systems, tested with FreeBSD
Benno Schulenberg (3):
fix Unichrome/Blender crash, bug 13142
remove commented-out code
code clean-ups, reformatting
Bernardo Innocenti (2):
remove static lib before building to make more bulletproof
always print error messages, unless LIBGL_DEBUG=quiet
Bernd Buschinski (1):
glx: Add missing include for XCB, fixing crash on 64-bit.
Blair Sadewitz (10):
mesa: also check for __NetBSD__
mesa: also check for __NetBSD__
mesa: extra braces
mesa: check for __INTERIX to typedef uintptr_t
mesa: added test for __NetBSD__
mesa: added test for __NetBSD__
additional preprocessor checks for stdint.h, inttypes.h, etc
mesa: added test for __NetBSD__
mesa: added test for __NetBSD__
additional preprocessor checks for stdint.h, inttypes.h, etc
Brad King (1):
mesa: fix param indexing
Brad Smith (2):
mesa: added checks for OpenBSD
mesa: added checks for OpenBSD
Brian (3418):
New info about Mesa's git repository.
New git repository info, links.
Removed/obsolete.
Replaced by .html files.
Replaced by .html file.
Updated with new mesa-commit list.
Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa
Use XDisplayName() when reporting errors (bug 8079).
Remove the xdemo.c program from PROGS since it doesn't work with GLX/DRI.
Checkpoint new GLSL compiler back-end to produce fp/vp-style assembly instructions.
Rewrite/simplify most built-in functions to use updated set of __asm instructions.
Checkpoint of work for new GLSL compiler back-end. Lots of assorted changes.
Checkpoint work for new GLSL compiler back-end.
Checkpoint for GLSL compiler changes.
Retire old GLSL shader code.
Move all the code for computing ctx->_TriangleCaps into state.c.
Not needed.
Obsolete.
Checkpoint GLSL compiler work. Add new sources, remove obsolete.
Remove unused 3Dlabs code.
Remove unused 3Dlabs code.
Obsolete.
Remove unneeded -I directories (3Dlabs headers).
Check in a long-misplaced spec update.
Remove include of s_arbshader.h
New functions for cloning programs and parameter lists.
The new linker actually does a few things right now:
Assorted fix-ups for the new linker.
Updates for new linker (merged varying/uniform vars).
Modify _mesa_strdup() so it handles NULL correctly.
Replace __extension__ with LONGSTRING.
Split the program.[ch] files into several new files.
Move many functions into new files.
Updated #includes after splitting program.h
Updated includes.
Updated includes.
chmod a-x
Updated includes.
Renamed from s_nvfragprog.[ch]
Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa
Move some code from prog_print.c to prog_instruction.c
Remove some moved extern decls.
include prog_print.h
remove some unneeded includes
remove unneded includes
remove unneeded includes
remove unneeded includes
Renamed s_nvfragprog.[ch] to s_fragprog.[ch], program_instruction.h to prog_instruction.h
Renamed s_nvfragprog.[ch] to s_fragprog.[ch]
change/add/rm several filenames
simple extension function wrangler
Use extfuncs.h helper. Added command line options for loading
Lots of assorted changes for new GLSL compiler backend.
more debug output
use MAX_VARYING
use MAX_VARYING
updated includes
updated includes
varying changes
varying var changes
varying var changes
vertex/fragment program field changes
redo mat4 addition, mat4 constructor from vec4s
Lots of assorted changes.
code movement
fix double-printing of comment info
added assertion to catch use of too many temporaries
start rewriting the matrix/vector functions
start implementing relational operators
don't allow fog when using a fragment shader (bug 9346)
initial release notes for 6.5.3
Don't update span->array->z[] values from SLANG_FRAGMENT_FIXED_FRAGDEPTH.
cases for NOP, BRA
added cases for BRA, NOP
print BRA instructions
Initial code for conditional constructs.
fix comment, handle NOP
comments
Use _mesa_free_linked_program_data()
GLSL API functions.
Implement if-conditionals and while loops, added temporary resolve-branches function in linker.
Generate IR code for for/while loops, break and continue statements.
Check for inst->CondUpdate, print .C suffix.
Added instruction counter to catch infinite loops (temporary).
Implement array indexing of simple vec2/3/4 types. A bit of a hack for now...
rewrite +=, -= etc for floats
new error msg
additional error checking
lots of clean-up and re-org
check for null Parameters ptr in _mesa_clone_program()
Massive re-org of GLSL-related API functions.
Overhaul of GLSL API functions, dispatching, etc.
Overhaul of GLSL API functions, dispatching, etc.
Clean-up and re-org of the main GLSL object types.
Fix shader object reference counting and hash table deallocation.
Minor clean-ups, reformatting, comment changes.
code re-org
use cast wrappers for sanity checking
New IR_COND node for evaluating conditional expressions (for if/while/for).
Reply to: