Compare commits

...

9401 Commits

Author SHA1 Message Date
Julien Cristau
99f159339e Prepare changelog for upload 2009-04-01 20:25:25 +02:00
Timo Aaltonen
4830fab603 update the changelog. 2009-03-30 10:41:39 +03:00
Timo Aaltonen
1e142bf63d Merge commit 'mesa_7_4' into debian-experimental 2009-03-30 10:38:45 +03:00
Brian Paul
bf1e6581a5 docs: set 7.4 release date 2009-03-27 18:57:39 -06:00
Brian Paul
80ec7843bc mesa: set VERSION=7.4 2009-03-27 18:57:23 -06:00
Brian Paul
366d6e8cd1 mesa: set version to 7.4 2009-03-27 18:57:07 -06:00
Ian Romanick
63ed288396 intel: Add extra, stronger flushes around CopyTexSubImage blits 2009-03-27 15:22:27 -07:00
Eric Anholt
88ce34f400 swrast: Add support for x8r8g8b8 fbconfig.
This lets swrast produce an fbconfig suitable for the root visual now that
the server's not allowing mismatched fbconfigs.
(cherry picked from commit 529d1d720e)
2009-03-27 15:20:09 -07:00
Ian Romanick
f535de8721 Mark current bits as 2009Q1-RC2 for Intel driver. 2009-03-26 15:32:29 -07:00
Eric Anholt
1db913f687 i965: Fix glFrontFacing in twoside GLSL demo.
This also cuts instructions by just using the existing bit in the payload
rather than computing it from the determinant in the SF unit and passing it
as a varying down to the WM.  Something still goes wrong with getting the
backface color right, but a simpler shader appears to get the right result.
(cherry picked from commit 699db6d842)
2009-03-26 15:15:51 -07:00
Eric Anholt
0e5d1f43af i965: Fix fog coordinate g,b,a values when glFrontFacing isn't used.
Previously, we would sample (f,glFrontFacing,undef,undef) instead of the
(f,0,0,1) that fragment.fogcoord is supposed to return.  Due to
glFrontFacing's presence in FOGC.y, we'll still give bad results there when
glFrontFacing is used.

Bug #19122, piglit testcase fp-fog.
(cherry picked from commit 411d913cce)
2009-03-26 15:15:27 -07:00
Eric Anholt
09c587ae55 i965: Clean up a bit of mess with unneeded variables in emit_interp.
(cherry picked from commit b013f945d8)
2009-03-26 15:15:14 -07:00
Brian Paul
775d8431e9 i965: separate emit_op() and emit_tex_op() functions
(cherry picked from commit a79186e29e)
2009-03-26 15:14:56 -07:00
Brian Paul
3217ea8a1d i965: minor clean-up, comments, etc.
(cherry picked from commit 9e7903e492)
2009-03-26 15:14:22 -07:00
Brian Paul
00aea5853d docs: mention Solaris updates in release notes 2009-03-25 21:08:21 -06:00
Brian Paul
20d34b50b5 mesa: bump version to 7.4 rc2 2009-03-25 21:06:41 -06:00
Alan Coopersmith
9cff0acb36 define __builtin_expect for non-gcc compilers in two more glx files
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-03-25 16:26:03 -07:00
Alan Coopersmith
791b59493f mklib improvements for Solaris
Move flags for linking standard C/C++ libraries from configure.ac to mklib
Use -norunpath flag when linking with Sun C++ compiler
Convert mklib -exports list into a linker mapfile
Set FINAL_LIBS correctly when -noprefix is used

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-03-25 16:26:02 -07:00
Michel Dänzer
7dff7029fa Revert "dri2: Avoid round-tripping on DRI2GetBuffers for the same set of buffers."
This scheme breaks when the display connection doesn't receive ConfigureNotify
events. This caused reporoducible problems (cropped / misplaced output) when
starting a 3D application in a guest operating system in VMware Workstation.

This reverts commit dd1c68f151.

Conflicts:

	src/glx/x11/dri2_glx.c
(cherry picked from commit 11da7e02aa)
2009-03-25 15:55:20 +01:00
Brian Paul
f8fd9bc46b docs: update glext.h to version 48 2009-03-25 08:35:15 -06:00
Brian Paul
53f0e141c0 gl: update include/GL/glext.h to version 48 2009-03-25 08:35:02 -06:00
Julien Cristau
af3c568475 Prepare changelog for upload 2009-03-25 11:34:58 +01:00
Julien Cristau
7d01429512 Build-depend on linux-libc-dev >= 2.6.29 on linux archs.
The 2.6.28 kernel headers miss some compat defines.
2009-03-25 01:51:02 +01:00
Brian Paul
14a794300e demos: add LDFLAGS for corender target, bug 20844
(cherry picked from commit c4c4358e08)
2009-03-24 16:09:23 -06:00
Eric Anholt
912ec292c1 i965: Fix occlusion query when no other WM state updates occur.
Turns out that XXX comment was important.  We weren't flagging the WM to
re-update with the statistics enable, so we got zeroes out of our query.

Bug #20740, fixes piglit occlusion_query test.

Signed-off-by: Eric Anholt <eric@anholt.net>
(cherry picked from commit c0d6e07909)
2009-03-23 12:49:31 -07:00
Tom Fogal
e814b5ae2f mesa: fix _glxapi_get_proc_address() for mangled names
(cherry picked from commit 7399d56ec6)
2009-03-23 12:49:13 -07:00
Brian Paul
0fea05915a glapi: update find_entry() for mangled names
(cherry picked from commit 4447fddc82)
2009-03-23 12:49:05 -07:00
Brian Paul
dfa44f0ff9 mesa: regenerated gl_mange.h file
(cherry picked from commit fe0ccf323d)
2009-03-23 12:48:56 -07:00
Julien Cristau
8d088cd34f update changelog 2009-03-23 17:25:04 +01:00
Julien Cristau
094d627885 Merge tag 'mesa_7_4_rc1' into debian-experimental 2009-03-23 17:21:26 +01:00
Brian Paul
f850ff2bcc mesa: remove unused 'out' label 2009-03-23 08:27:00 -06:00
Brian Paul
66f972ab55 Add Solaris to OS'es using PROT_EXEC mmap() to get executable heap space
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>

(cherry picked from master, commit a06dd4de87)
2009-03-23 08:18:48 -06:00
Brian Paul
17db2db9dc docs: prep for 7.4 release 2009-03-20 17:34:54 -06:00
Brian Paul
dba79af9bc mesa: prep for 7.4-rc1 release 2009-03-20 17:26:04 -06:00
Brian Paul
b009a32bf4 r300: don't crash on sw tcl hw if point size vertex attrib is sent
(cherry picked from master, commit 005ad1a71d)
2009-03-20 08:49:39 -06:00
Brian Paul
7122490982 mesa: avoid setting texObj->_Complete = GL_FALSE when there's no state change
Avoid a little bit of unneeded state validation and fixes a bug where the
texture complete flags was set to false, but we didn't signal _NEW_TEXTURE.

Fixes piglit tex1d-2dborder failure.
(cherry picked from commit aad3f546a0)
2009-03-18 14:47:47 -07:00
Brian Paul
6ada1d47d9 mesa: add no-change testing for a few more texture parameters
(cherry picked from commit 37c768b36a)
2009-03-18 10:54:09 -07:00
Robert Ellison
55865335f4 i965: fix polygon stipple when rendering to FBO
The polygon stipple pattern, like the viewport and the
polygon face orientation, must be inverted on the i965
when rendering to a FBO (which itself has an inverted pixel
coordinate system compared to raw Mesa).

In addition, the polygon stipple offset, which orients
the stipple to the window system, disappears when rendering
to an FBO (because the window system offset doesn't apply,
and there's no associated FBO offset).

With these fixes, the conform triangle and polygon stipple
tests pass when rendering to texture.
(cherry picked from commit 29309b45b0)
2009-03-18 10:47:24 -07:00
Robert Ellison
918e5221ef i965: fix polygon face orientation when rendering to FBO
In the i965, the FBO coordinate system is inverted from the standard
OpenGL/Mesa coordinate system; that means that the viewport and the
polygon face orientation have to be inverted if rendering to a FBO.

The viewport was already being handled correctly; but polygon face
was not.  This caused a conform failure when rendering to texture with
two-sided lighting enabled.

This fixes the problem in the i965 driver, and adds to the comment about
the gl_framebuffer "Name" field so that this isn't a surprise to other
driver writers.
(cherry picked from commit 6dceeb2eb8)
2009-03-18 10:47:24 -07:00
Brian Paul
9feb26584a swrast: use better _swrast_compute_lambda() function
The MAX-based function can produce values that are non-monotonic for a span
which causes glitches in texture filtering.  The sqrt-based one avoids that.

This is perhaps slightly slower than before, but the difference
probably isn't noticable given we're doing software mipmap filtering.

Issue reported by Nir Radian <nirr@horizonsemi.com>

(cherry picked from master, commit c334ce273e)
2009-03-17 10:34:45 -06:00
Ian Romanick
a8528a2e86 Mark current bits as 2009Q1-RC1 for Intel driver. 2009-03-16 13:39:32 -07:00
Brian Paul
119360cccd i965: init dest reg CondMask = COND_TR (the proper default)
Plus fix up a debug printf.
(cherry picked from commit 20f49252e1)
2009-03-13 17:38:40 -07:00
Brian Paul
ac2216542d glsl: fix vec4_texp_rect IR code (need projective version) (cherry picked from commit ad2cfa4199) 2009-03-13 17:38:40 -07:00
Brian Paul
37e5c057f1 i965: check if we run out of GRF/temp registers
Before this change we would up emitting instructions with invalid register
numbers.  This typically (but not always) hung the GPU.  For now, just
prevent emitting bad instructions to avoid hangs.  Still need to do some
kind of proper error recovery.
(cherry picked from commit e60b3067d8)
2009-03-13 17:38:40 -07:00
Brian Paul
4d9b8e0f93 mesa: added _mesa_fprintf() wrapper (cherry picked from commit 596b8fbbbf) 2009-03-13 17:38:40 -07:00
Brian Paul
c1b71f46b5 i965: fix emit_math1() function used for scalar instructions
Instructions such as RCP, RSQ, LOG must smear the result of the function
across the dest register's X, Y, Z and W channels (subject to write masking).
Before this change, only the X component was getting written.

Among other things, this fixes cube map texture sampling in GLSL shaders
(since cube lookups involve normalizing the texcoord).
(cherry picked from commit 3485801978)
2009-03-13 17:38:39 -07:00
Brian Paul
4a25ac9564 i965: rewrite the code for handling shader subroutine calls
Previously, the prog_instruction::Data field was used to map original Mesa
instructions to brw instructions in order to resolve subroutine calls.  This
was a rather tangled mess.  Plus it's an obstacle to implementing dynamic
allocation/growing of the instruction buffer (it's still a fixed size).

Mesa's GLSL compiler emits a label for each subroutine and CAL instruction.
Now we use those labels to patch the subroutine calls after code generation
has been done.  We just keep a list of all CAL instructions that needs patching
and a list of all subroutine labels.  It's a simple matter to resolve them.

This also consolidates some redundant post-emit code between brw_vs_emit.c and
brw_wm_glsl.c and removes some loops that cleared the prog_instruction::Data
fields at the end.

Plus, a bunch of new comments.
(cherry picked from commit c51c822ee0)
2009-03-13 17:38:39 -07:00
Eric Anholt
35d965b39b intel: Fix bpp setting of blits to 8bpp targets.
This was causing hangs in cairogears, as we would blit to the 8bpp target
(A8 texture) as 16bpp, and stomp over state objects.
(cherry picked from commit 19e134051c)
2009-03-13 17:38:39 -07:00
Robert Ellison
d0aab00609 i965: add software fallback for conformant 3D textures and GL_CLAMP
The i965 hardware cannot do GL_CLAMP behavior on textures; an earlier
commit forced a software fallback if strict conformance was required
(i.e. the INTEL_STRICT_CONFORMANCE environment variable was set) and
2D textures were used, but it was somewhat flawed - it could trigger
the software fallback even if 2D textures weren't enabled, as long
as one texture unit was enabled.

This fixes that, and adds software fallback for GL_CLAMP behavior with
1D and 3D textures.

It also adds support for a particular setting of the INTEL_STRICT_CONFORMANCE
environment variable, which forces software fallbacks to be taken *all*
the time.  This is helpful with debugging.  The value is:
   export INTEL_STRICT_CONFORMANCE=2
(cherry picked from commit 3468315087)
2009-03-13 17:38:39 -07:00
Brian Paul
ef33d0f103 mesa: don't draw arrays if vertex position array is not enabled
For regular GL, we must have vertex positions in order to draw.  But ES2
doesn't have that requirement (positions can be computed from any array
of data).

See bug 19911.
(cherry picked from commit 97dd2ddbd9)
2009-03-13 17:38:39 -07:00
Robert Ellison
349b819768 i965: texture fixes: bordered textures, fallback rendering
i965 doesn't natively support GL_CLAMP; it treats it like
GL_CLAMP_TO_EDGE, which fails conformance tests.

This fix adds a clause to the check_fallbacks() test to check
whether GL_CLAMP is in use on any enabled 2D texture.  If so,
and if strict conformance is required (via INTEL_STRICT_CONFORMANCE),
a software fallback is mandated.

In addition, validate textures *before* checking for fallbacks,
rather than after; otherwise, the texture state is never validated
and can't be trusted.  (In particular, if texturing is enabled and
the sampler would access any level beyond level 0 of a texture, the
sampler will segfault, because texture validation sets the firstLevel
and lastLevel fields of a texture object so that the valid levels
will be mapped and accessed correctly.  If texture validation doesn't
occur, only level 0 is accessed correctly, and that only because
firstLevel and lastLevel happen to be set to 0.)
(cherry picked from commit 17c7852bf9)
2009-03-13 17:38:39 -07:00
Dave Airlie
50443db882 texmem: fix typo from brianp's changes.
Reported by cjb via tinderbox on irc
(cherry picked from commit 487a55af78)
2009-03-13 17:38:39 -07:00
Brian Paul
c503cacb53 mesa: use an array for current texture objects
Use loops to consolidate lots of texture object code.
(cherry picked from commit 9818734e01)
2009-03-13 17:38:39 -07:00
Brian Paul
e862b4e38f mesa: use an array for default texture objects
Replace Default1D/2D/3D/Cube/etc with DefaultTex[TEXTURE_x_INDEX].
The same should be done with the Current1D/2D/3D/etc pointers...
(cherry picked from commit 4d24b639d1)
2009-03-13 17:38:39 -07:00
Robert Ellison
e9dfc858fb Fix an i965 assertion failure on glClear()
While running conform with render-to-texture:

	conform -d 33 -v 2 -t -direct

the i965 driver failed this assertion:

intel_clear.c:77: intel_clear_tris: Assertion `(mask & ~((1 << BUFFER_BACK_LEFT) | (1 << BUFFER_FRONT_LEFT) | (1 << BUFFER_DEPTH) | (1 << BUFFER_STENCIL))) == 0' failed.

The problem is that intel_clear_tris() is called by intelClear() to
clear any and all of the available color buffers, but intel_clear_tris()
actually only handles the back left and front left color buffers; so
the assertion fails as soon as you try to clear a non-standard color
buffer.

The fix is to have intelClear() only call intel_clear_tris() with
buffers that intel_clear_tris() can support.  intelClear() already backs
down to _swrast_Clear() for all buffers that aren't handled explicitly.
(cherry picked from commit 0ccbc3c905)
2009-03-13 17:38:39 -07:00
Brian Paul
5efbca1e21 intel: fix datatype typo, s/GLboolean/GLuint/
Fixes mysterious failures in glean glsl1 test.
(cherry picked from commit da2b661ee4)
2009-03-13 17:38:39 -07:00
Kristian Høgsberg
d6d8663a88 intel: Fix intelSetTexBuffer miptree leak.
The intelImage also holds a reference to the miptree, so unref that as well.
(cherry picked from commit 5b354d39d4)
2009-03-13 17:38:39 -07:00
Eric Anholt
13990bd98a intel: tell libdrm whether we want a cpu-ready or gpu-ready BO for regions.
This lets us avoid allocing new buffers for renderbuffers, finalized miptrees,
and PBO-uploaded textures when there's an unreferenced but still active one
cached, while also avoiding CPU waits for batchbuffers and CPU-uploaded
textures.  The size of BOs allocated for a desktop running current GL
cairogears on i915 is cut in half with this.

Note that this means we require libdrm 2.4.5.
(cherry picked from commit 40dd024be6)
2009-03-13 17:38:39 -07:00
Eric Anholt
def630d0a2 i965: Fix render target read domains.
We were asking for something illegal (write_domain != 0 && read_domains !=
write_domain) because at the time of writing the region surfaces were used
for texturing occasionally as well, and we weren't really clear on the model
GEM was going to use.

This reliably triggered a kernel bug with domain handling, resulting in
oglconform mustpass.c failure.  Of course, it only became visible after
01bc4d441f cleaned up some gratuitous flushing.
(cherry picked from commit 078e8a61b2)
2009-03-13 17:38:39 -07:00
Eric Anholt
ca2564f1e6 intel: Don't do the extra MI_FLUSH in flushing except when doing glFlush().
Everything other than "make sure the last rendering ends up visible on the
screen" doesn't need that behavior.
(cherry picked from commit 01bc4d441f)
2009-03-13 17:38:38 -07:00
Eric Anholt
711a57f7c7 intel: don't crash when dri2 tells us about buffers we don't care about. (cherry picked from commit f82f1ffba9) 2009-03-13 17:38:38 -07:00
Eric Anholt
058cf2fff1 dri2: Initialize variables for the getbuffers round-trip reduction.
Missed setting the initial values which usually didn't hurt at runtime.
(cherry picked from commit 680c708dee)
2009-03-13 17:38:38 -07:00
Eric Anholt
715f509c5d intel: Fix tri clear to do FBO color attachments as well.
This is a 2% win in fbo_firecube, and would avoid a sw fallback for
masked clears.
(cherry picked from commit fd51cf1531)
2009-03-13 17:38:38 -07:00
Eric Anholt
e704e6c6f3 i965: Fix fallback on stencil drawing to fbo when the visual lacks stencil.
Noticed this with the fbotexture demo.
(cherry picked from commit c06f4e2a37)
2009-03-13 17:38:38 -07:00
Brian Paul
01f34e667a i965: need to disable current shader, if any, in intel_clear_tris()
Fixes bad background in all the progs/glsl/ tests.
(cherry picked from commit 60b3fe6c19)
2009-03-13 17:38:38 -07:00
Eric Anholt
4d0a7b33c5 intel: Speed up glDrawPixels(GL_ALPHA) by using an alpha texture format. (cherry picked from commit 0b63f6449e) 2009-03-13 17:38:38 -07:00
Eric Anholt
fb1d2ed34c intel: Fix some state leakage of {Client,}ActiveTexture in metaops.
Found while debugging cairo-gl.
(cherry picked from commit d11981e0d7)
2009-03-13 17:38:38 -07:00
Eric Anholt
9395fedf98 i965: Remove brw->attribs now that we can just always look in the GLcontext. (cherry picked from commit 052c1d66a1) 2009-03-13 17:38:38 -07:00
Eric Anholt
9abc0d80af i965: Delete old metaops code now that there are no remaining consumers. (cherry picked from commit 14321fcfde) 2009-03-13 17:38:38 -07:00
Brian Paul
90e89c01df i965: init array->Format fields (see bug 19708) (cherry picked from commit 628b52241b) 2009-03-13 17:38:38 -07:00
Eric Anholt
790d93e362 intel: If we're doing a depth clear with tris, do color with it.
This is a 10% win on the ever-important glxgears not-a-benchmark.
(cherry picked from commit 67ee22c89f)
2009-03-13 17:38:38 -07:00
Eric Anholt
e9f3783169 i915: Only call CalcViewport from DrawBuffers instead of Viewport.
This saves an inadvertent round-trip to the X Server on DrawBuffers, which was
hurting some metaops.
(cherry picked from commit ac0dfbdf0f)
2009-03-13 17:38:38 -07:00
Brian Paul
e41780fedc intel: move some driver functions around
A step toward consolidating i915/intel_state.c and i965/intel_state.c
(cherry picked from commit 84c8b5bbf9)
2009-03-13 17:38:38 -07:00
Eric Anholt
d0edbbb3f3 intel: replace custom metaops clear with generic.
No real-world impact on performance seen.  Even glxgears seems to be, if
anything, happier.
(cherry picked from commit c96bac0950)
2009-03-13 17:38:38 -07:00
Brian Paul
e10119c23e intel: make intelUpdateScreenFromSAREA() static (cherry picked from commit aae2729aeb) 2009-03-13 17:38:38 -07:00
Brian Paul
208c087f39 intel: remove unused var (cherry picked from commit 66c7f06413) 2009-03-13 17:38:38 -07:00
Shaohua Li
0c8b40b42b i915: Add support for a new G33-like chipset.
Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Eric Anholt <eric@anholt.net>
(cherry picked from commit 40290745ea)
2009-03-13 17:38:37 -07:00
Xiang, Haihao
5199f451bb i965: fix for RHW workaround
It is possible that an object whose vertices all are outside of a
view plane is passed to clip thread due to the RHW workaround. This
object should be rejected by clip thread. Fix bug #19879
(cherry picked from commit 68915fd6fa)
2009-03-13 17:38:37 -07:00
Brian Paul
dd7cde5230 i965: tell GLSL compiler to emit code using condition codes
The default for EmitCondCodes got flipped when gallium-0.2 was merged.
This fixes GLSL if/else/endif regressions.
Drivers that use GLSL should always explicitly set the flag to be safe.
(cherry picked from commit a9e753c84c)
2009-03-13 17:38:37 -07:00
Eric Anholt
ab5746e5d8 tdfx: Fix begin/endquery for current API. (cherry picked from commit 0cb295584f) 2009-03-13 17:38:37 -07:00
Brian Paul
3bd446c0ab i965: add missing break for OPCODE_RET case
This doesn't effect correctness, but we were emitting an extraneous ADD.
(cherry picked from commit 74b6d55864)
2009-03-13 17:38:37 -07:00
Brian Paul
9b78402ee4 mesa: more info in error messages (cherry picked from commit 1ca05a066b) 2009-03-13 17:38:37 -07:00
Brian Paul
cf1ef0f308 mesa: minor error msg improvement (cherry picked from commit 803504e69f) 2009-03-13 17:38:37 -07:00
Chris Wilson
fd1f65ba61 intel: Decode MI operands using specific length masks
The MI opcodes have different variable length masks, so use an operand
specific mask to decode the length.
(cherry picked from commit e92d97d75b)
2009-03-13 17:38:37 -07:00
Chris Wilson
967345b497 intel: Correct decoding of 3DSTATE_PIXEL_SHADER_CONSTANTS
A couple of minor typos that proclaimed an error in the wrong command, and
failed to offset the mask.
(cherry picked from commit 05d130a35a)
2009-03-13 17:38:37 -07:00
Ian Romanick
41ad853a6a glxgears: No, really. Fix the dyslexia. (cherry picked from commit 5b5ddfb89c) 2009-03-13 17:38:37 -07:00
Ian Romanick
842baa29cb Fix dyslexia. (cherry picked from commit 9d6880ec8d) 2009-03-13 17:38:37 -07:00
Ian Romanick
9556d870a1 glxgears: Log a message if synched to vblank
Tries to use either GLX_MESA_swap_control or GLX_SGI_video_sync to
detect whether the display is synchronized to the vertical blank.  If
it detects this, a message will be printed.  HOPEFULLY this will
prevent some of the bug reports such as "glxgears only gets 59.7fps.
What's wrong with my driver?"
(cherry picked from commit 58b9cd411f)
2009-03-13 17:38:37 -07:00
Brian Paul
42ce790086 mesa: refactor glTexParameter code (cherry picked from commit 318e53a4bf) 2009-03-13 17:38:37 -07:00
Robert Ellison
b17769af42 mesa: add missing texture_put_row_rgb() function in texrender.c
The wrap_texture() function doesn't set the renderbuffer PutRowRGB() method,
which is used to implement DrawPixels().  This fix adds an implementation
of this method.
(cherry picked from commit 523febe12e)
2009-03-13 17:38:37 -07:00
Brian Paul
9030277b0d intel: move glClear-related code into new intel_clear.c file (cherry picked from commit 4451eb2e75) 2009-03-13 17:38:37 -07:00
Brian Paul
a37a9bf769 intel: Move swap-related functions from intel_buffers.c to new intel_swapbuffers.c (cherry picked from commit 6fcebbe719) 2009-03-13 17:38:37 -07:00
Brian Paul
8afb8a8145 i965: scissor rect was inverted when rendering to texture (cherry picked from commit 3b23a8e07d) 2009-03-13 17:38:37 -07:00
Brian Paul
801f933694 mesa: consolidate glGetTexEnvi/f() code with new get_texenvi() helper (cherry picked from commit ad338c14c2) 2009-03-13 17:38:36 -07:00
Jesse Barnes
75ecd6ebbf intel: fix the mismerge of the vblank pipe enable sanity check
Fix the last merge fix, had the blocks ordered incorrectly.
(cherry picked from commit e57e398960)
2009-03-13 17:38:36 -07:00
Jesse Barnes
1cd7317fdb intel: move pipe enable sanity check to where it belongs
Bah, applied the patches in the wrong order, not Owain's fault...
(cherry picked from commit 216bff5fd4)
2009-03-13 17:38:36 -07:00
Owain Ainsworth
1865291701 intel: fix vblank crtc selection with DRI1 when only one pipe is enabled.
On Mobile chipsets, we often enable PipeB instead of PipeA, but the test
in here was insufficient, falling back to pipe A if the area
intersection returned zero. Therefore, in the case where a window went
off to the top of the left of the screen, it would freeze, waiting on
the wrong vblank.

Fix this mess by checking the sarea for a crtc being zero sized, and in
that case always default to the other one.
(cherry picked from commit 0b5266ff64)
2009-03-13 17:38:36 -07:00
Owain G. Ainsworth
3edbcce7d5 intel: Prevent an "irq is not working" printf when only pipe B is enabled.
intelMakeCurrent is called before intelWindowMoved (in fact, it calls
it), so calculation of the correct vblank crtc has not happened yet.
Fix this by making a function that fixes up a set of vblank flags and
call if from both functions.
(cherry picked from commit 39b4061bb9)
2009-03-13 17:38:36 -07:00
Robert Ellison
b1fb34d0ac i965: fix line stipple fallback for GL_LINE_STRIP primitives
When doing line stipple, the stipple count resets on each line segment,
unless the primitive is a GL_LINE_LOOP or a GL_LINE_STRIP.

The existing code correctly identifies the need for a software fallback
to handle conformant line stipple on GL_LINE_LOOP primitives, but
neglects to make the same assessment on GL_LINE_STRIP primitives.
This fixes it so they match.
(cherry picked from commit 73658ff04f)
2009-03-13 17:38:36 -07:00
Ian Romanick
606099f545 swrast: Enable GL_EXT_stencil_two_side (cherry picked from commit b5fbdef7ec) 2009-03-13 17:38:36 -07:00
Brian Paul
32e3142071 i965: minor improvements in brw_wm_populate_key() (cherry picked from commit 89fddf978c) 2009-03-13 17:38:36 -07:00
Brian Paul
66eea4e104 mesa: fix/update/restore comments related to two-sided stencil (cherry picked from commit a304cc6cca) 2009-03-13 17:38:36 -07:00
Brian Paul
e428cf3afd mesa: initialize ctx->Stencil._BackFace = 1
Back-face stencil operations didn't work correctly because this value was
zero.  It needs to be 1 or 2.  The only place it's set otherwise is in
glEnable/Disable(GL_STENCIL_TEST_TWO_SIDE_EXT).
(cherry picked from commit 2a968113a9)
2009-03-13 17:38:36 -07:00
Ian Romanick
842b5164d2 Track two sets of back-face stencil state
Track separate back-face stencil state for OpenGL 2.0 /
GL_ATI_separate_stencil and GL_EXT_stencil_two_side.  This allows all
three to be enabled in a driver.  One set of state is set via the 2.0
or ATI functions and is used when STENCIL_TEST_TWO_SIDE_EXT is
disabled.  The other is set by StencilFunc and StencilOp when the
active stencil face is set to BACK.  The GL_EXT_stencil_two_side spec has
more details.

http://opengl.org/registry/specs/EXT/stencil_two_side.txt
(cherry picked from commit dde7cb9628)
2009-03-13 17:38:36 -07:00
Brian Paul
a6f7e909a7 mesa: fix transposed red/blue in store_texel_rgb888/bgr888() functions
(cherry picked from master, commit 862dccd560)
2009-03-12 09:32:55 -06:00
Brian Paul
ca87e5a7bd mesa: add missing _glthread_INIT_MUTEX in _mesa_new_framebuffer()
(cherry picked from master, commit 81569c2f69)
2009-03-12 08:12:54 -06:00
Alan Hourihane
45c4b4dfbd xdemos: On termination with esc close the contexts correctly. 2009-03-11 13:36:26 +00:00
Brian Paul
2adaec1226 xmesa: set back-buffer's drawable field
Fixes back-buffer rendering when MESA_BACK_BUFFER=pixmap

(cherry picked from master, commit 22bac2a1a0)
2009-03-09 16:28:50 -06:00
Brian Paul
549586c319 i965: fix cube map lock-up / corruption
If we're using anything but GL_NEAREST sampling of a cube map, we need to
use the BRW_TEXCOORDMODE_CUBE texcoord wrap mode.  Before this, the GPU
would either lock up or subsequent texture filtering would be corrupted.

(cherry picked from master, commit 6f915b10d5)
2009-03-09 11:57:16 -06:00
Dan Nicholson
463ac421a5 autoconf: Restore _GNU_SOURCE for all Linux systems
This catches the linux-uclibc case and any others that were being set
prior to 98fcdf3f. Fixes bug 20345.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
(cherry picked from commit ac55db1d7d)
2009-03-06 07:59:00 -08:00
Brian Paul
6801240205 mesa: Reads must also be done with lock held.
Otherwise two threads might think each made the refcount go zero.

(cherry picked from master, commit 8bbb6b352a)
2009-03-06 07:51:18 -07:00
Brian Paul
a22088b7d5 mesa: Fix typo.
Windows threads block if one over-unlocks them.

(cherry picked from master, commit f6159ba4d5)
2009-03-06 07:50:55 -07:00
Brian Paul
e89c49147f docs: update glext.h to version 46 2009-03-05 08:25:17 -07:00
Brian Paul
67634240d1 gl: update glext.h to version 46 2009-03-05 08:25:09 -07:00
Brian Paul
819b028a8e mesa: fix sw fallback state validation bug
When a hw driver fell back to swrast, swrast wasn't always getting informed
of program changes.  When fixed function is translated into shaders, flags
like _NEW_LIGHT, _NEW_TEXTURE, etc. should really signal _NEW_PROGRAM.
In this case, swrast wasn't seeing _NEW_PROGRAM when new fragment shaders
were generated.

(cherry picked from master, commit de1caa5507)
2009-03-03 14:25:28 -07:00
Brian Paul
a43c30ef41 mesa: update fragResults array in arb_output_attrib_string()
Plus add some comments.

(cherry picked from master, commit a070937c00)
2009-02-27 13:49:58 -07:00
Brian Paul
b65bfde84d mesa: set bufObj->Pointer = NULL after unmapping
Also, ctx->Driver.UnmapBuffer can never be null, so remove conditional.

(cherry picked from master, commit 67025f7893)
2009-02-27 13:13:31 -07:00
Brian Paul
c39e6917ac mesa: if a buffer object is mapped when glDeleteBuffers() is called, unmap it
(cherry picked from master, commit a7f434b486)
2009-02-27 13:05:51 -07:00
Brian Paul
c79079895f mesa: fix incorrect error handling in glBufferDataARB()
If glBufferDataARB() is called while a buffer object is currently mapped
we're supposed to unmap the current buffer, then replace it.  Don't generate
an error.

(cherry picked from master, commit 75e3ccf6a5)
2009-02-27 12:58:07 -07:00
Alex Deucher
4480e631cd R300: Add support for RS600 chips 2009-02-25 17:48:45 -05:00
Brian Paul
c32661c3ce mesa: Build DRI by default on Linux/sparc
Signed-off-by: David S. Miller <davem@davemloft.net>

(cherry picked from master, commit 32dc28ac7a)
2009-02-24 20:08:00 -07:00
Brian Paul
d5c06bb812 glsl: yet another swizzled expression fix
This fixes swizzled conditional expressions such "(b ? p : q).x"

(cherry picked from master, commit 00f0b05d5f)
2009-02-24 08:32:01 -07:00
Brian Paul
9d5aa36239 glsl: fix another swizzle-related bug
This fixes the case of "infinitely" nested swizzles such as EXPR.wzyx.yxwz.xxyz
This doesn't appear in typical shaders but with function inlining and the
compiler's internal use of swizzles it can happen.
New glean glsl1 test case added for this.

(cherry picked from master, commit d9881356a6)
2009-02-24 08:31:02 -07:00
Brian Paul
e3050c1777 docs: Haiku fixes 2009-02-23 08:16:09 -07:00
Brian Paul
06295ddbdd mesa: fixes for building on Haiku
(cherry picked from master, commit 41172c0430)

Conflicts:
	src/mesa/main/dlopen.c
2009-02-23 08:15:43 -07:00
Brian Paul
e2092bb23c demos: update multitex.c GLSL demo to use vertex arrays or glVertex-mode
Press 'a' to toggle drawing mode.

(cherry picked from master, commit 8e8b25c26a)
2009-02-19 17:05:14 -07:00
Brian Paul
528836d0ad util: added more functions to extfuncs.h
(cherry picked from master, commit 4c5f390328)
2009-02-19 17:04:42 -07:00
Brian Paul
3511442e43 mesa: fix GLSL issue preventing use of all 16 generic vertex attributes
Only 15 actually worked before since we always reserved generic[0] as an
alias for vertex position.

The case of vertex attribute 0 is tricky.  The spec says that there is no
aliasing between generic vertex attributes 0..MAX_VERTEX_ATTRIBS-1 and the
conventional attributes.  But it also says that calls to glVertexAttrib(0, v)
are equivalent to glVertex(v).  The distinction seems to be in glVertex-mode
versus vertex array mode.

So update the VBO code so that if the shader uses generic[0] but not gl_Vertex,
route the attribute data set with glVertex() to go to shader input generic[0].

No change needed for the glDrawArrays/Elements() path.

This is a potentially risky change so regressions are possible.  All the usual
tests seem OK though.

(cherry picked from mesa, commit dea0d4d563)

Follow-up: This patch doesn't seem to be as risky as noted above.
There have been no known regressions on Mesa/master because of it.
2009-02-19 17:01:17 -07:00
Brian Paul
d20c53b511 glsl: update program->InputsRead when referencing input attributes
This info will be used in the linker for allocating generic vertex attribs.

(cherry picked from master, commit 1cb7cd1292)
2009-02-19 17:00:06 -07:00
Brian Paul
091cc122ad glsl: asst improvements, clean-ups in set_program_uniform()
Move the is_boolean/integer_type() calls out of the loops.
Move the is_sampler_type() function near the bool/int functions.
Add a bunch of comments.

(cherry picked from master, commit c4ffbf009e)
2009-02-18 17:53:08 -07:00
Brian Paul
c983abbb9e glsl: fix inequality in set_program_uniform()
We were off by one when checking for too many uniform values.

(cherry picked from master, commit b9d8f717d2)
2009-02-18 17:52:47 -07:00
Brian Paul
a0a81204c2 mesa: bump gl.h version comment to 7.4 (bug 20170) 2009-02-18 15:37:44 -07:00
Brian Paul
409d4f839c glsl: fix link failure for variable-indexed varying output arrays
If the vertex shader writes to a varying array with a variable index,
mark all the elements of that array as being written.

For example, if the vertex shader does:

   for (i = 0; i < 4; i++)
      gl_TexCoord[i] = expr;

Mark all texcoord outputs as being written, not just the first.

Linking will fail if a fragment shader tries to read an input that's not
written by the vertex shader.  Before this fix, this linker test could fail.

(cherry picked from master, commit dac19f17f3)
2009-02-18 14:29:46 -07:00
Brian Paul
0ab36958ea mesa: improved error msg
(cherry picked from master, commit 621c999d82)
2009-02-18 13:41:12 -07:00
Brian Paul
c2445f43a3 mesa: increase MAX_UNIFORMS to 1024 (of vec4 type)
Old limit was 256.  Note that no arrays are declared to this size.
The only place we have to be careful about raising this limit is the
prog_src/dst_register Index bitfields.  These have been bumped up too.

Added assertions to check we don't exceed the bitfield in the future too.

(cherry picked from master, commit 5b2f8dc013)
2009-02-18 13:40:57 -07:00
Brian Paul
f3d1c136b7 glsl: fix a swizzle-related regression
This new issue was exposed by commit 6eabfc27f1

(cherry picked from master, commit 212f41b80f)
2009-02-18 13:37:31 -07:00
Brian Paul
dd10a8b09d docs: 7.4 relnotes: report GLSL 1.20, fixed GLSL array index bug 2009-02-17 16:39:45 -07:00
Brian Paul
dd312366da glsl: silence some uninit var warnings
(cherry picked from master, commit 9d49802b7a)
2009-02-17 16:38:30 -07:00
Brian Paul
d2fe466ef3 mesa: turn on reporting of GLSL version 1.20
The new array features, precision/invariant/centroid qualifiers, etc. were
done a while back.  The glGetString(GL_SHADING_LANGUAGE_VERSION) query returns
"1.20" now (for drivers that support it anyway).

(cherry picked from master, commit f59719c6c7)
2009-02-17 16:37:41 -07:00
Brian Paul
fe5328bfad glsl: fix mistake in a comment
(cherry picked from master, commit be8dd01678)
2009-02-17 16:36:15 -07:00
Brian Paul
c0891dde07 glsl: fix an array indexing bug
This fixes a bug found with swizzled array indexes such as in "array[index.z]"
where "index" is an ivec4.

(cherry picked from master, commit 6eabfc27f1)
2009-02-17 16:35:59 -07:00
Brian Paul
0e6d9c1a55 docs: recent 7.4 bug fixes 2009-02-16 20:35:12 -07:00
Brian Paul
5f74a66132 glsl: allow setting arrays of samplers in set_program_uniform()
Arrays of sampler vars haven't been tested much and might actually be broken.
Will need to be revisited someday.

Another fix for bug 20056.

(cherry picked from master, commit 2b4f0216bf)
2009-02-16 20:30:49 -07:00
Brian Paul
46f8b62d5f glsl: raise GL_INVALID_OPERATION for glUniform(location < -1)
location = -1 is silently ignored, but other negative values should raise
an error.

Another fix for bug 20056.

(cherry picked from master, commit 234f03e90a)
2009-02-16 20:30:06 -07:00
Brian Paul
3e3e80c431 glsl: rework _mesa_get_uniform[fi]v() to avoid using a fixed size intermediate array
(cherry picked from master, commit 4ef7a93296)
2009-02-16 20:29:36 -07:00
Brian Paul
0486d117e4 glsl: fix glUniform() array bounds error checking
If too many array elements are specified, they're to be silently ignored (don't
raise a GL error).

Fixes another issue in bug 20056.

(cherry picked from master, commit 2c1ea0720d)
2009-02-16 20:28:57 -07:00
Brian Paul
29981c14da glsl: fix incorrect size returned by glGetActiveUniform() for array elements.
Fixes one of the issues in bug 20056.

(cherry picked from master, commit 369d1859d7)
2009-02-16 20:28:14 -07:00
Brian Paul
98d5efb2c5 glsl: use _slang_var_swizzle() in a few places to simplify the code.
(cherry picked from master, commit 285b500bb7)
2009-02-16 20:26:58 -07:00
Brian Paul
77a44aafaf mesa: another fix for program/texture state validation
This fixes a regression introduced in 46ae1abbac

Break program validation into two steps, do part before texture state
validation and do the rest after:
1. Determine Vertex/Fragment _Enabled state.
2. Update texture state.
3. Determine pointers to current Vertex/Fragment programs (which may involve
generating new "fixed-function" programs).

See comments in the code for more details of the dependencies.

(cherry picked from master, commit 537d3ed6f3)
2009-02-16 20:23:17 -07:00
Brian Paul
8278c70716 mesa: fix/change state validation order for program/texture state
Program state needs to be updated before texture state since the later depends
on the former.

Fixes piglit texgen failure.  The second time through the modes (press 't'
three times) we disable the fragment program and return to conventional texture
mode.  State validation failed here because update_texture() saw stale fragment
program state.

(cherry picked from master, commit 46ae1abbac)
2009-02-16 20:22:46 -07:00
Alan Hourihane
ac0955f5e2 demos: fix glxpixmap and call glXWaitGL before calling XCopyArea. 2009-02-16 11:55:47 +00:00
Alan Hourihane
4130c35ca8 dri2: support glXWaitX & glXWaitGL by using fake front buffer. 2009-02-16 11:48:24 +00:00
Brian Paul
d440647eb8 autoconf: Use include-fixed directory with makedepend on newer GCC
On newer GCC releases, the compiler's headers have been split between
the include and include-fixed directories. Add both if the directories
exist.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Signed-off-by: Julien Cristau <jcristau@debian.org>

(cherry picked from master, commit a3d223f0d2)
2009-02-13 09:10:09 -07:00
Brian Paul
7e8f2c56c0 mesa: fix logic error in computing enableBits in update_texture_state()
If we had a vertex shader but no fragment shader (i.e. fixed function) we
didn't get the right enabled texture targets.

Fixes blank/white texture problem.

(cherry picked from master, commit b46611633c)
2009-02-07 12:04:15 -07:00
Brian Paul
a0880a152f mesa: fix tnl->render_inputs_bitset setup for fragment program texcoords
Handle the case where there's no per-vertex texcoords but the fragment shader
needs texcoords.

Fixes piglit shaders/fp-generic/dph test.

(cherry picked from master, commit f6d23943cd)
2009-02-07 12:03:37 -07:00
Brian Paul
4608a9172f swrast: return (0,0,0,1) when sampling incomplete textures, not (0,0,0,0)
Fixes piglit shaders/fp-incomplete-tex test.

(cherry picked from master, commit 1df62651b2)

Conflicts:
	src/mesa/swrast/s_fragprog.c

Also updated the fetch_texel_lod(), fetch_texel_deriv() functions to match
those in git/master.
2009-02-07 12:02:22 -07:00
Brian Paul
d0e38f7ec0 glsl: replace assertion with conditional in _slang_pop_var_table()
We were hitting the assertion when we ran out of registers, which can happen.

Also, add some additional assertions and freshen up some comments.

(cherry picked from master, commit 0744805d58)
2009-02-07 11:57:43 -07:00
Brian Paul
a69bdbbbdd docs: fixed Windows build error, added MESA_GLX_FORCE_DIRECT env var 2009-02-03 15:40:16 -07:00
Brian Paul
88c97a2662 docs: document new MESA_GLX_FORCE_DIRECT env var for the Xlib driver
(cherry picked from master, commit 2f51be75c5)
2009-02-03 15:39:13 -07:00
Brian Paul
ce9c69ddbc xlib: use MESA_GLX_FORCE_DIRECT to make glXIsDirect() always return True
Some apps won't run w/ indirect rendering contexts.
Also, consolidate some context-init code in new init_glx_context() function.

(cherry-picked from master, commit 49e80bf6b1)
2009-02-03 15:38:44 -07:00
Eric Anholt
e430fcb716 dri2: Avoid round-tripping on DRI2GetBuffers for the same set of buffers.
We only wanted to request when asked for the same set of buffers when a resize
has happened.  We can just watch the protocol stream for a ConfigureNotify
and flag to do it then.

This is about a 5% win from doing two glViewport()s per frame in openarena.
2009-02-03 21:36:38 +00:00
Brian Paul
11a363e632 mesa: move code after decls. Fixes Window build failure.
(cherry picked from master, commit 92ced46eaf)
2009-02-02 07:50:31 -07:00
Julien Cristau
9a3a20b2b9 debian/rules: on lpia, only build the i915 and i965 dri drivers
Based on Ubuntu changes, modified to also build swrast.
2009-01-31 23:04:06 +01:00
Julien Cristau
4672811541 debian/control: build the dri drivers on lpia
add lpia to the Architecture field for libgl1-mesa-dri{,-dbg} to match Ubuntu.
2009-01-31 22:30:15 +01:00
Julien Cristau
3cad3d28a5 mangle upstream version in debian/watch
Fix watch file to make uscan not consider release candidates as newer than
actual releases.
2009-01-31 22:07:51 +01:00
Brian Paul
41e63fbdb2 docs: recent bug fixes for 7.4 2009-01-30 16:09:58 -07:00
Brian Paul
b543401a5c mesa: fix incorrect call to clear_teximage_fields() in _mesa_TexImage2D()
Fixes failed assertion / segfault for particular proxy texture tests.

(cherry picked from master, commit ea4b183b8c)
2009-01-30 16:06:52 -07:00
Brian Paul
8c4f08fbad mesa: add missing _mesa_reference_texobj() calls for texture array targets
(cherry picked from master, commit 7c48719a5f)
2009-01-30 16:06:21 -07:00
Brian Paul
f3081a34d2 mesa: remove incorrect refcounting adjustment in adjust_buffer_object_ref_counts()
Fixes bug 19835.  However, a more elaborate fix should be implemented someday
which uses proper reference counting for gl_array_object.

(cherry picked from master, commit 88e0b92a74)
2009-01-30 16:05:51 -07:00
Julien Cristau
cff0971f87 Prepare changelog for upload 2009-01-30 20:00:37 +01:00
Julien Cristau
5ac4c69d83 More superfluous directories 2009-01-30 19:56:29 +01:00
Julien Cristau
a314c40cc4 Document my changes in debian/changelog 2009-01-30 19:42:38 +01:00
Julien Cristau
959fd6b8f6 Add back progs/fbdev
It was added to the tarballs in 22b0b2f47e
2009-01-30 19:34:47 +01:00
Julien Cristau
937f0da04a Delete more directories that aren't in the tarball 2009-01-30 19:25:50 +01:00
Julien Cristau
73bc5967e2 Merge commit '5a458977113e4a0d3c389b03801cf6ce580d3935' into debian-experimental 2009-01-30 19:06:19 +01:00
Brian Paul
7b1d3cf392 docs: i965 fixes 2009-01-28 17:02:39 -07:00
Brian Paul
25515b557e i965: fix bug in pass0_precalc_mov()
Previously, "in-place" swizzles such as:
   MOV t, t.xxyx;
were handled incorrectly.  Fixed by splitting the one loop into two loops so we
get all the refs before assigning them (to avoid potential clobbering).

(cherry picked from master/commit faa48915d2)
2009-01-28 17:01:34 -07:00
Brian Paul
51625ff86e i965: widen per-texture bitfields for 16 texture image units
(cherry picked from master/commit f78c388b6c)
2009-01-28 17:01:03 -07:00
Brian Paul
4d8f661726 intel: check if stencil test is enabled in intel_stencil_drawpixels()
(cherry picked from master/commit 72ee0e247d)
2009-01-28 17:00:23 -07:00
Brian Paul
efa69a2f66 intel: save/restore GL matrix mode in intel_meta_set_passthrough_transform(), intel_meta_restore_transform()
(cherry picked from master, commit 723648f2ee)
2009-01-28 16:55:16 -07:00
Timo Aaltonen
a2dce49158 New changelog entry for 7.3 2009-01-25 17:51:16 +02:00
Timo Aaltonen
e4b28de803 Merge branch 'upstream-experimental' into debian-experimental 2009-01-25 17:30:47 +02:00
Brian Paul
30a6dd78d5 docs: fix typo 2009-01-22 10:39:05 -07:00
Brian Paul
9f75836308 mesa: set version to 7.4 for mesa_7_4_branch 2009-01-22 10:19:39 -07:00
Brian Paul
609cc9c139 docs: skeleton 7.4 release notes file 2009-01-22 10:18:04 -07:00
Brian Paul
e5aa89386d docs: 7.3 md5 sums 2009-01-22 10:14:39 -07:00
Brian Paul
5a45897711 mesa: set version to 7.3 2009-01-22 10:14:24 -07:00
Brian Paul
faa6d8af59 docs: set 7.3 release date 2009-01-22 10:01:17 -07:00
Brian Paul
b6c41fd933 docs: assorted updates, link fixes 2009-01-22 10:01:17 -07:00
Eric Anholt
b8bd0b0ddc i915: Add decode for PS in batchbuffers. 2009-01-21 14:03:56 -08:00
Eric Anholt
fc3971d800 i965: Remove gratuitous whitespace in INTEL_DEBUG=wm output. 2009-01-21 14:03:56 -08:00
Eric Anholt
046e88fc0b i965: Use _mesa_num_inst_src_regs() instead of keeping a copy of its contents. 2009-01-21 14:03:56 -08:00
Julien Cristau
f5c47105db Prepare changelog for upload 2009-01-21 19:01:24 +01:00
Julien Cristau
f1939c8685 Refresh patches 03 and 04. 2009-01-21 19:01:17 +01:00
Julien Cristau
3ac4d678ef Delete some more files which aren't in the tarballs 2009-01-21 18:51:07 +01:00
Kristian Høgsberg
194d039f1e [intel] Remove remaining references to intel_wait_flips().
Oops.
2009-01-21 11:47:01 -05:00
Thomas Henn
470e10dfaa windows: fix output dir for glut project file 2009-01-21 09:32:40 -07:00
Brian Paul
8c7135ee14 swrast: fix redundant texture application in affine_textured_triangle().
This function does simple texture mapping so disable normal texture mapping
before we call _swrast_write_rgba_span() so that we don't do it twice.
2009-01-21 09:05:02 -07:00
Brian Paul
4683cab29a mesa: add some debug assertions to detect null current texture object pointers
See bug #17895.  These assertions could be removed when this is resolved.
2009-01-21 08:18:07 -07:00
Karl Schultz
787a001a67 windows: another round of VC8 project file updates
New static configs generate DLLs that do not have a dependency on the MSCVR*
DLL's.
2009-01-21 07:59:11 -07:00
Brian Paul
dd92f483b0 Revert "windows: new VC8 projects statically linked against libcmt"
This reverts commit bbda892c55.

Static configs rolled into regular project files (in next commit).
Provided by Karl Schultz.
2009-01-21 07:57:45 -07:00
Brian Paul
65118a51b6 docs: document glXMakeContextCurrent() and Windows fixes 2009-01-20 15:36:01 -07:00
Ian Romanick
ab9b4e1f59 Fix issues with glXMakeContextCurrent and glXMakeCurrentReadSGI
There were several bugs in the infrastructure for these two routines.

1. GLX_ALIAS was incorrectly used.  The function and its alias must be
identical!  glXMakeContextCurrent / glXMakeCurrentReadSGI and
MakeContextCurrent had different parameters.  This caused the last
parameter of MakeContextCurrent to get random values.

2. We based the implementation of glXMakeContextCurrent on the manual
page instead of the GLX spec.  The GLX spec says that
glXMakeContextCurrent can be passed a Window as a drawable.  When this
happens, it will behave just like glXMakeCurrentReadSGI or
glXMakeCurrent.

3. If there was a problem finding or creating the DRI drawable,
MakeContextCurrent would crash instead of returning an error.

This commit fixes all three issues, and fixes bug #18367 and bug #19625.
2009-01-20 13:55:18 -08:00
Julien Cristau
fcfec66865 update changelog 2009-01-20 18:50:10 +00:00
Julien Cristau
53426d7113 Merge tag 'mesa_7_3_rc3' into debian-experimental
Conflicts:

	progs/tests/Makefile
2009-01-20 18:49:21 +00:00
Timo Aaltonen
39e6d0d810 [intel] Go back to using the typedef for the sarea struct
The upstream linux kernel headers and libdrm kernel headers disagree on the
tag name for the sarea struct: _drm_i915_sarea vs drm_i915_sarea.  They
both typedef it to drm_i915_sarea_t though, so just use that.
2009-01-20 11:52:32 -05:00
Owain G. Ainsworth
b5da7feee0 Remove intel pageflipping support in its entirety.
It's been broken and deprecated for a while, so it's time to die. This has the
wonderful benefit of cleaning up the code a fair amount; making it marginally
less twisty.

I'm unsure if the for loops in IntelWindowMoved are still needed.
2009-01-20 11:52:32 -05:00
Brian Paul
0f548dbc98 glsl: silence unused var warnings 2009-01-20 09:21:32 -07:00
Brian Paul
9d216be8cf mesa: silence uninitialized var warnings 2009-01-20 09:20:41 -07:00
Brian Paul
eb26cc6cf5 mesa: silence compiler warning at -O2 2009-01-20 09:17:12 -07:00
Brian Paul
bb63a663b1 mesa: bump version to 7.3-rc3 2009-01-20 09:13:41 -07:00
Brian Paul
dace4e3e2a mesa: inlclude whole windows/VC8/ directory in tarballs 2009-01-20 09:13:06 -07:00
Thomas Henn
bbda892c55 windows: new VC8 projects statically linked against libcmt 2009-01-20 09:07:01 -07:00
Karl Schultz
61a387dca1 windows: more VC8 project file updates
Make some compiler flags per-file.
Remove driverfuncs.c from osmesa project.
2009-01-20 09:07:01 -07:00
Thomas Hellstrom
437fa85ba3 Add a comment about _tnl_emit_indexed_vertices_to_buffer. 2009-01-20 11:40:51 +01:00
Thomas Hellstrom
b00477acf3 tnl: Add a utility to emit indexed vertices to a DMA buffer.
This utility is useful for hardware that doesn't support HW index buffers.
It's a bit inefficient but appears to give a substantial performance gain,
as we can emit tri strips that would otherwise be split into triangles.
2009-01-20 11:15:57 +01:00
Thomas Hellstrom
7374285f07 Fix store texel for argb4444. 2009-01-20 11:13:38 +01:00
Thomas Hellstrom
5c84a1032c Fix store texel for argb8888_rev. 2009-01-20 11:13:05 +01:00
Thomas Hellstrom
dbda49a9e6 Add RGBA4444 and RGBA5551 texture formats. 2009-01-20 11:12:17 +01:00
Thomas Hellstrom
11351f0c8a dri1: Add a macro to validate two dri drawables in one go.
Dri drivers often may validate first a write drawable and then a read
drawable ("readable"). However, the hardware lock may be unlocked when
validating the readable, causing the write drawable status to be stale.

Drivers should use this macro instead when validating two drawables.
2009-01-20 11:07:10 +01:00
Brian Paul
a5b5bc9f95 mesa: fix build of stand-alone glslcompiler driver 2009-01-19 17:50:44 -07:00
Brian Paul
f97792421b tests: test pseudo-XOR blend mode.
GL_XOR logicop mode can be approximated with blending by computing 1 - dst.
Here's a couple test programs for that.
2009-01-19 12:09:40 -07:00
Alan Hourihane
396711b840 dri: add fake front definitions 2009-01-19 15:41:19 +00:00
Thomas Henn
dbd8e4066b windows: updated VC8 project files 2009-01-19 08:23:22 -07:00
Brian Paul
b7f802eca2 glx: gcc 2.95 build fix (move declaration before code)
Adapted from patch by Matthieu Herbb <matthieu.herrb@laas.fr>
2009-01-18 10:00:34 -07:00
Timo Aaltonen
1d4756de06 Update the changelog. 2009-01-16 23:12:14 +02:00
Timo Aaltonen
c1abb821f9 Merge commit 'mesa_7_3_rc2' into debian-experimental 2009-01-16 23:05:20 +02:00
Brian Paul
a61a1a8181 i965: fix polygon culling bug when rendering to a texture/FBO
Since we use an inverted viewport transformation for render to texture, that
inverts front/back polygon orientation.
Now glCullFace(GL_FRONT / GL_BACK) works correctly.
2009-01-16 13:33:19 -07:00
Brian Paul
345a08a77f intel: added intel_rendering_to_texture() helper function.
When we're rendering to textures we have to invert the viewport transformation.
This helper cleans up that test and can be used elsewhere...
2009-01-16 13:31:04 -07:00
Brian Paul
12c6d28cc7 mesa: remove GL_DEPTH_TEST + no depth buffer test
One could enable depth testing before binding an FBO that has a depth buffer
so this test is no longer useful or correct.
2009-01-16 13:25:41 -07:00
Brian Paul
e442fe5ba5 glsl: fix broken sampler assignments 2009-01-16 09:30:58 -07:00
Xiang, Haihao
66a4f5cf9a i915: fallback on transfer mode 2009-01-16 16:06:33 +08:00
Karl Schultz
a740858fc0 windows: updated VC8 project file 2009-01-15 11:32:47 -07:00
Karl Schultz
e7c988d065 windows: updated mesa.def file 2009-01-15 07:05:31 -07:00
Brian Paul
4a8356209d glsl: use _mesa_sprintf() 2009-01-15 07:05:30 -07:00
Brian Paul
e1ba29ea19 glsl: move declaration before code 2009-01-15 07:05:30 -07:00
Alan Hourihane
fbf13bcb8a mesa: check frambuffer complete status before rendering 2009-01-15 11:56:00 +00:00
Brian Paul
8f8435637d mesa: bump version to 7.3-rc2 2009-01-14 17:05:26 -07:00
Brian Paul
7d08091767 glsl: fix comment 2009-01-14 17:05:26 -07:00
Brian Paul
b5f32e1d5a glsl: minor clean-up for rect sampler test 2009-01-14 17:05:26 -07:00
Brian Paul
0dffd22349 r300: work-around FRAG_BIT_FOGC warning/error
See bug 17929.

Fog doesn't actually work, but the often complained about warning is
silenced.
2009-01-14 16:49:24 -07:00
Brian Paul
947d1c5b2a i965: asst. fixes, work-arounds for FBOs and render to texture
OpenGL allows mixing and matching depth and stencil renderbuffers in
framebuffer objects while the hardware really only supports interleaved
depth/stencil buffers.  This makes for some tricky buffer management.

An extra wrinkle is the situation where the user allocates a 16bpp depth
texture or renderbuffer then tries to render to it along with a stencil
buffer.  We'd have to promote the 16bpp Z values to 24-bit Z values and
mix in the stencil values to setup the depth/stencil renderbuffer.

There's no support for that now, so always allocate 32bpp depth textures/
renderbuffers for now.
2009-01-14 16:49:24 -07:00
Brian Paul
c7f43543af i965: fix incorrect renderbuffer DataType assignment 2009-01-14 16:49:24 -07:00
Brian Paul
5912cdff3e i965: fix some FBO depth/stencil assertions 2009-01-14 16:49:24 -07:00
Ian Romanick
03188b09e0 intel: SW fallback maps texture images, not texture coordinates 2009-01-14 12:48:22 -08:00
Brian Paul
fae9604727 glsl: propagate pragma info down into compiler from preprocessor 2009-01-14 12:16:00 -07:00
Brian Paul
aac4a0509e windows: remove reference to swizzle.c file 2009-01-14 12:07:25 -07:00
Brian Paul
b5f89e5f17 glsl: simplify IR storage for samplers
Don't overload the Size field with the texture target, to avoid confusion.
2009-01-14 11:58:45 -07:00
Brian Paul
c12d24b513 mesa: fix incorrect transformation of GL_SPOT_DIRECTION
This was changed between GL 1.0 and 1.1.  Mesa still had the 1.0 behaviour.
2009-01-14 11:51:30 -07:00
Ian Romanick
2549c26a8b Treat image units and coordinate units differently.
Previously MaxTextureUnits was used to validate both texture image
units and texture coordinate units in fragment programs.  Instead, use
MaxTextureCoordUnits for texture coordinate units and
MaxTextureImageUnits for texture image units.

Fixes bugzilla #19468.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
2009-01-14 10:09:01 -08:00
Alan Hourihane
a98dccca36 glsl: fix regression from sampler arrays commit 2009-01-14 16:34:19 +00:00
Brian Paul
1b3e3e6b84 i965: indentation fixes 2009-01-14 08:34:07 -07:00
Brian Paul
49b53407c7 i965: allow larger AA points on fallback path 2009-01-14 08:34:06 -07:00
Brian Paul
d911e3e24f i965: fix indentation 2009-01-14 08:34:06 -07:00
Brian Paul
658ab3c3ae i965: comment for emit_kil() 2009-01-14 08:34:06 -07:00
Brian Paul
8f7349dbb4 mesa: put _NV suffix on a few opcodes 2009-01-14 08:34:06 -07:00
Brian Paul
d687476edd i965: fix indentation 2009-01-14 08:34:06 -07:00
Xiang, Haihao
c157a5bb91 intel: bump driver date 2009-01-14 09:32:55 +08:00
Alan Hourihane
14eca6b573 glsl: fix a comment typo 2009-01-14 00:12:59 +00:00
Alan Hourihane
ef0e0f2550 glsl: support sampler arrays. 2009-01-14 00:12:33 +00:00
Brian Paul
34d17d2bdc docs: #pragma now handled 2009-01-13 15:09:40 -07:00
Brian Paul
01a0938776 glsl: add preprocessor support for #pragma
Two forms are supported:

Pragmas are silently ignored at this time.
2009-01-13 15:09:40 -07:00
Ian Romanick
1f47388dfe Add language about implicit flush and command completion
Copied language from the glXSwapBuffers manual page about the implicit
glFlush and expected command completion.  This just codifies what
people already expect from glXCopySubBufferMESA.  The intention of
this command is to work like glXSwapBuffers but on a sub-rectangle of
the drawable.

Acked-by: Brian Paul <brianp@vmware.com>
2009-01-13 12:36:03 -08:00
Brian Paul
34500a6da5 docs: fixes since 7.3-rc1 2009-01-13 09:03:43 -07:00
Karl Schultz
00c02626d8 windows: try to create a context in wglCreateLayerContext() 2009-01-13 09:02:04 -07:00
Brian Paul
eeeed45c2c i965: fix glDrawPixels Z coordinate in intel_texture_drawpixels().
As for glBitmap, it needs to be an NDC coord in [-1,1].
2009-01-12 15:47:57 -07:00
Brian Paul
3a5463d158 i965: fix broken glBitmap + depth test
When we use the do_blit_bitmap() function, it seems the fragment Z is always
1.0.  If depth testing is on, that means that bitmap fragments are often
occluded by other rendering.  So, the bitmap doesn't appear even if
rasterpos.Z==0.
The fix is to use the intel_texture_bitmap() path when depth testing is on.
Also, fix the incorrect Z coordinate.  It needs to be an NDC value in [-1,1].
2009-01-12 15:43:54 -07:00
Brian Paul
de35989cde i965: fix broken ARB fp fog options
Just call _mesa_append_fog_code() if the fragment program's FogOption is
not GL_NONE.
This allows us to remove some unnecessary i965 fog code.
Note, the arbfplight.c demo can be used to test this (see DO_FRAGMENT_FOG).
2009-01-12 14:24:45 -07:00
Dan Nicholson
29f603a270 autoconf: Only _GNU_SOURCE feature test macro needed on gnu systems
According to feature_test_macros(7), _GNU_SOURCE encompasses all the
other feature macros we were setting, so we can just dispose of them.
2009-01-12 11:10:31 -08:00
Julien Cristau
7f7fc3e3af mesa: match against *-gnu* instead of *-gnu in configure.ac
Fixes build on arm-linux-gnueabi
2009-01-12 11:08:02 -08:00
Thomas Henn
a0318d7f8e windows: updated VC8 project files 2009-01-12 10:56:42 -07:00
Brian Paul
06fdb6a74c glsl: better fix for for-loop scope issue (commit 6333005f7a) 2009-01-12 08:52:54 -07:00
Brian Paul
88fdddcbbe windows: added new sources for 7.3 (may be more, needs testing) 2009-01-12 08:36:21 -07:00
Brian Paul
1598be5083 mesa: add osmesa.pc.in to tarball list 2009-01-12 08:36:21 -07:00
Matthieu Herrb
436024561a Build fixes for gcc 2.95 2009-01-11 16:56:34 -07:00
Matthieu Herrb
0f0922f93c Big endian fixes. 2009-01-11 16:44:54 -07:00
Matthieu Herrb
33f6dc3c33 build fix on big endian OpenBSD architectures. 2009-01-11 16:44:52 -07:00
Matthieu Herrb
356428d4e4 replace nearbyint() by rint() for now. 2009-01-11 16:44:50 -07:00
Owain G. Ainsworth
b4866f8a52 Fix build with GCC 2.95. 2009-01-11 16:44:40 -07:00
Matthieu Herrb
297a9606ea __builtin_expect is a gcc 3.x feature. define it out for gcc 2.95.
Patch suggested by miod@. Thanks.
2009-01-11 16:44:36 -07:00
Brian
44557bf065 mesa: require libdrm 2.4.3 in configure.ac 2009-01-10 16:32:32 -07:00
Julien Cristau
88083e9bab Prepare changelog for upload 2009-01-10 22:34:36 +01:00
Julien Cristau
47e54545ed Delete some now unused code from debian/rules. 2009-01-10 22:13:17 +01:00
Julien Cristau
54885ff0ad Delete unused configs/debian-*, and install-source.sh script.
We've switched to using autoconf, and mesa-swx11-source is gone.
2009-01-10 21:55:19 +01:00
Julien Cristau
502fbe7cb3 Merge branch 'debian-unstable' into debian-experimental
Conflicts:

	debian/changelog
	debian/rules
2009-01-10 21:42:57 +01:00
Julien Cristau
08fdb497fb Merge commit 'origin/upstream-unstable' into debian-experimental 2009-01-10 21:38:10 +01:00
Julien Cristau
2a6711c0e5 add bug closers 2009-01-10 21:02:55 +01:00
Julien Cristau
382a8f6e29 Require libdrm-dev 2.4.3. 2009-01-10 20:41:16 +01:00
Julien Cristau
a713ba4399 Update changelog 2009-01-10 20:31:20 +01:00
Julien Cristau
5359febc9b Merge tag 'mesa_7_3_rc1' into debian-experimental
Conflicts:

	progs/tests/Makefile
	progs/tests/floattex.c
2009-01-10 20:30:41 +01:00
Brian Paul
f1455ca5f4 mesa: omit old headers from tarball 2009-01-10 12:21:37 -07:00
Brian Paul
834db82153 docs: document deprecated/removed headers/interfaces 2009-01-10 12:09:08 -07:00
Brian Paul
ef193c10e7 mesa: remove old GLView.h header for BeOS 2009-01-10 12:07:58 -07:00
Brian Paul
c3a00a728b mesa: remove deprecated headers from Makefile.am 2009-01-10 12:06:29 -07:00
Brian Paul
287102ddcc mesa: deprecate GL/amesa.h header (allegro driver) 2009-01-10 12:04:39 -07:00
Brian Paul
f5979b0c15 mesa: deprecate the GL/fxmesa.h header 2009-01-10 12:01:40 -07:00
Brian Paul
d25cc16efa mesa: remove the ancient include/GL/ugl*.h headers 2009-01-10 12:00:27 -07:00
Brian Paul
1636328b0a xmesa: deprecate the "XMesa" interface
Move the include/GL/xmesa*.h files to src/mesa/drivers/x11/ so they're no
longer considered public.
2009-01-10 11:57:13 -07:00
Brian Paul
2c56dd7757 docs: prerequisite updates 2009-01-10 11:52:55 -07:00
Brian Paul
6333005f7a glsl: force creation of new scope for for-loop body
Fixes regression in progs/demos/convolution.c due to loop unrolling.
This also allows the following to be compiled correctly:
for (int i = 0; i < n; i++) {
   int i;
   ...
}
This fix is a bit of a hack, however.  The better fix would be to change
the slang_shader.syn grammar.  Will revisit that...
2009-01-10 11:40:20 -07:00
Brian Paul
1d352b42a1 glsl: replace 0/1 with GL_FALSE/GL_TRUE 2009-01-10 11:39:05 -07:00
Ian Romanick
9939a306f7 swrast: Fix GL_ATI_separate_stencil
GL_ATI_separate_stencil is enabled by default for software
rasterizers, but the extension functions weren't hooked up to the
dispatch table.
2009-01-09 16:44:08 -08:00
Brian Paul
ca03e881a8 glsl: make minimum struct size = 2, not 1
1-component structs such as "struct foo { float x; }" could get placed at
any position within a register.  This caused some trouble computing the
field offset which assumed all struct objects were placed at R.x.
It would be unusual to hit this case in normal shaders.
2009-01-09 09:59:49 -07:00
Brian Paul
4497a5a57d mesa: 7.3-rc-1 Makefile changes 2009-01-08 17:21:20 -07:00
Brian Paul
f7b4c2cca9 mesa: latest glxext.h header, no version change 2009-01-08 17:20:41 -07:00
Brian Paul
08fdc741bc mesa: import glext.h version 44 2009-01-08 17:20:18 -07:00
Brian Paul
d0c2cbd257 docs: dri2proto, libdrm tweaks 2009-01-08 17:19:51 -07:00
Brian Paul
acd99f67cc glsl: fix typo in the vec2 += operator function 2009-01-08 17:07:28 -07:00
Brian Paul
0713e9da73 mesa: set version string to 7.3-rc1 2009-01-08 16:16:36 -07:00
Brian Paul
2c0ce92e8a docs: updated Cell docs, from gallium-0.2 branch 2009-01-08 16:15:31 -07:00
Brian Paul
1ed9b1ec90 docs: more 7.3 doc updates 2009-01-08 16:14:19 -07:00
Brian Paul
11ade9a3d1 docs: import 7.2 relnotes, start on 7.3 relnotes 2009-01-08 16:12:23 -07:00
Brian Paul
730a407ca2 glsl: fix broken +=, -=, *=, /= operators
These functions need to return the final computed value.
Now expressions such as a = (b += c) work properly.
Also, no need to use __asm intrinsics in these functions.  The resulting
code is the same when using ordinary arithmetic operators and is more legible.
2009-01-08 15:35:23 -07:00
Brian Paul
19c877c327 mesa: fix off-by-one bug in _mesa_delete_instructions() 2009-01-08 15:35:23 -07:00
Eric Anholt
83a74521cf i965: Fix GLSL FS DPH to return the right value instead of src0.w * src1.w. 2009-01-07 20:35:25 -08:00
Eric Anholt
6d2cf395f4 i965: Remove worrisome comment about _NEW_PROGRAM signaling fp change.
Everything now depends on either BRW_NEW_FRAGMENT_PROGRAM or
BRW_NEW_VERTEX_PROGRAM.
2009-01-07 20:35:24 -08:00
Eric Anholt
8fb727548a mesa: Remove _Active and _UseTexEnvProgram flags from fragment programs.
There was a note in state.c about _Active deserving to die, and there were
potential issues with it due to i965 forgetting to set _UseTexEnvProgram.
Removing both simplifies things.

Reviewed-by: Brian Paul <brianp@vmware.com>
2009-01-07 20:34:46 -08:00
Eric Anholt
b9b482bd8d i965: Remove dead brw_vs_tnl.c 2009-01-07 20:34:43 -08:00
Brian Paul
f68f94c2bc i965: allow gl_FragData[0] usage when there's only one color buffer
If gl_FragData[0] is written but not gl_FragCOlor, use the former.
2009-01-07 18:45:49 -07:00
Brian Paul
bc7d2c4f51 mesa: additional case in file_string() 2009-01-07 18:44:41 -07:00
Brian Paul
9629be5e07 glsl: pass GLcontext::Extension info down into GLSL preprocessor
Now the #extension directives can be handled properly.
2009-01-07 18:44:00 -07:00
Brian Paul
176464b14b glsl: bump up MAX_FOR_LOOP_UNROLL_COMPLEXITY 2009-01-07 18:41:54 -07:00
Brian Paul
d1860bcd0a glsl: check that the fragment shader does not write both gl_FragColor and gl_FragData[] 2009-01-07 18:22:56 -07:00
Brian Paul
95fa98d61a i965: init dst reg RelAddr field to zero 2009-01-07 15:06:06 -07:00
Eric Anholt
8112c9e2cc i965: Note when we drop saturate mode on the floor in a VP. 2009-01-07 12:41:55 -08:00
Eric Anholt
f53d9913ac i965: Add support for LRP in VPs.
Bug #19226.
2009-01-07 12:40:16 -08:00
José Fonseca
b3c7f7466c mesa: Add _mesa_snprintf.
On Windows snprintf is renamed as _snprintf.

(cherry picked from commit f8f9a1b620)
2009-01-07 09:00:05 -07:00
Brian Paul
510ed7f51e glsl: disable some unused functions (but don't remove just yet) 2009-01-07 08:56:10 -07:00
Brian Paul
a8542200b3 glsl: also unroll loops with variable declarations such as "for (int i = 0; ..." 2009-01-07 08:54:09 -07:00
Brian Paul
cea7f7b763 glsl: remove dead code 2009-01-07 08:32:21 -07:00
Brian Paul
1a414a4dbe mesa: OSMesa Makefile fixes (use LIB_DIR) 2009-01-07 08:25:59 -07:00
Brian Paul
0b0d0dcdef glsl: loop unroll adjustments
Add a "max complexity" heuristic to allow unrolling long loops with small
bodies and short loops with large bodies.

The loop unroll limits may need further tweaking...
2009-01-06 17:36:20 -07:00
Brian Paul
1fa978c891 glsl: implement loop unrolling for simple 'for' loops
Loops such as this will be unrolled:
  for (i = 0; i < 4; ++i) {
      body;
  }
where 'body' isn't too large.

This also helps to fix the issue reported in bug #19190.  The problem there
is indexing vector types with a variable index.  For example:
  vec4 v;
  v[2] = 1.0;  // equivalent to v.z = 1.0
  v[i] = 2.0;  // variable index into vector!!

Since the for-i loop can be unrolled, we can avoid the problems associated
with variable indexing into a vector (at least in this case).
2009-01-06 17:24:23 -07:00
Brian Paul
338ae34d22 mesa: Move var declaration to top of scope.
(cherry picked from commit 3740a06e28)
2009-01-06 14:29:08 -07:00
Brian Paul
814bc5ccda mesa: fix GL_DEPTH_CLEAR_VALUE casting
(cherry picked from commit d14d494dcd)
2009-01-06 14:24:16 -07:00
Brian Paul
a8ee35c1c5 mesa: remove dri_sarea.h, add glcore.h in Makefile 2009-01-06 07:36:11 -07:00
Xiang, Haihao
f1f022dbb1 mesa: Fix the size per pixel for packed pixel format data type. 2009-01-06 15:37:45 +08:00
Xiang, Haihao
241c0bfc98 mesa: Fix the number of components for GL_UNSIGNED_SHORT_1_5_5_5_REV. (bug #19390) 2009-01-06 15:34:51 +08:00
Xiang, Haihao
7627c7f5df dri: correct the damage.
Fixes bug #17234
2009-01-06 11:22:19 +08:00
Brian Paul
c5c9241cca mesa: add GLushort cases for render to texture (Z-buffers) 2009-01-05 18:12:23 -07:00
Brian Paul
9736d8f033 mesa: fix a GLSL swizzled writemask bug
This fixes cases such as:
  vec4 v4;
  vec2 v2;
  v4.xz.yx = v2;
The last line now correctly compiles into MOV TEMP[1].xz, TEMP[0].yyxw;
Helps to fix the Humus Domino demo.  See bug 19189.
2009-01-05 13:16:09 -07:00
Brian Paul
0d797365de i965: implement OPCODE_TRUNC (round toward zero) on vertex path.
Also, fix some RNDD vs. RNDZ confusion elsewhere.
2009-01-05 10:09:28 -07:00
Tom Fogal
4469355df2 glu: Add mangled symbols to export list
This adds all of the `mglu' symbols to the list of symbol exports
for GLU.  Without this patch, mangled GLU symbols are considered
`internal' symbols, and calling any results in undefined references.
2009-01-05 08:00:16 -07:00
Brian Paul
724ed5b84b mesa: fix warning about possibly undefined var in GLSL compiler 2009-01-02 17:30:08 -07:00
Brian Paul
1fad6ccb75 mesa: fix another "out of samplers" problem
Now only the samplers that are actually used by texture() functions are
saved in the uniform variable list.  Before, we could run out of samplers
if too many were declared while only some of them were actually used.
2009-01-02 12:28:37 -07:00
Brian Paul
4a6ad999ea i965: increase number of texture samplers to 16
This lets GLSL shaders use up to 16 samplers.
Fixed function is still limited to 8 textures.
Tested with progs/glsl/samplers.c
2009-01-01 14:05:30 -07:00
Brian Paul
3b891a502b i965: comments, clean-ups, re-order some functions 2009-01-01 14:05:30 -07:00
Brian Paul
32e03c4a2f i965: added OPCODE_NRM3/4 2009-01-01 14:05:30 -07:00
Brian Paul
e262da8040 i965: fix comment 2009-01-01 14:05:30 -07:00
Brian Paul
914fcbafdb i965: indentation and formatting fixes 2009-01-01 14:05:30 -07:00
Brian Paul
131ac5b465 i965: implement OPCODE_NRM3/NRM4 2009-01-01 14:05:30 -07:00
Brian Paul
23b0ad4d7e i965: whitespace, comment changes 2009-01-01 14:05:30 -07:00
Brian Paul
1d03f2834f mesa: comments, whitespace changes 2009-01-01 14:05:30 -07:00
Brian Paul
46b8fe00c9 demos: added progs/glsl/samplers.c to test all available texture samplers 2009-01-01 14:02:17 -07:00
Brian Paul
dfada459aa mesa: updated comments about GLSL constants 2009-01-01 08:07:54 -07:00
Brian Paul
e9b34885b8 mesa: increase max texture image units and GLSL samplers to 16
The max texture coord units is still 8.  All the fixed-function paths are
still limited to 8 too.  But GLSL shaders can use more samplers now.

Note that some texcoord-related data structures are declared to be 16
elements in size rather than 8.  This just simplifies the code in a few
places; the extra elements aren't accessible to the user.

These changes haven't been extensively tested yet, but sanity checking has
been done.

It should be possible to increase the max image units/samplers to 32 without
doing anything special.  Beyond that we'll need longer bitfields in a few
places.
2008-12-31 12:00:17 -07:00
Eric Anholt
bfebeffc00 intel: Share passthrough transform setup between glBitmap and glDrawPixels.
The DrawPixels path was missing glViewport care, so blender's toolbar icons
would go to the wrong places.

Bug #19118.
2008-12-31 00:35:17 -08:00
Eric Anholt
e1a9217554 intel: Add support for glBitmap as metaops using GL calls.
This lets us avoid software fallbacks when clients forget to turn some state
off (engine demo) or just do crazy things to test conformance (OGLC).

This should probably be brought into mesa generic code so other drivers can
make use of it.

Bug #19016.
2008-12-31 00:10:29 -08:00
Brian Paul
e8d7db31e2 mesa: fix bug in evaluation of structure fields
Fixes incorrect size information.  See bug 19273.
2008-12-30 17:50:39 -07:00
Brian Paul
c6537ac8b8 mesa: allow variable indexing into the predefined uniform variable arrays
This allows code such as "vec4 a = gl_LightSource[i].ambient;" to work.

When a built-in uniform array is indexed with a variable index we need to
"unroll" the whole array into the parameter list (aka constant buffer) because
we don't know which elements may be accessed at compile-time.  In the case of
the gl_LightSource array of size [8], we emit 64 state references into the
parameter array (8 elements times 8 vec4s per gl_LightSourceParameters
struct).

Previously, we only allowed constant-indexed references to uniform arrays
(such as gl_LightSource[2].position) which resulted in a single state reference
being added to the parameter array, not 64.  We still optimize this case.

Users should be aware that using "gl_LightSource[i].ambient" in their shaders
is a bit expensive since state validation will involve updating all 64
light source entries in the parameter list.
2008-12-30 17:11:32 -07:00
Brian Paul
ca0540e25c mesa: better error message when running out of GLSL samplers 2008-12-30 17:03:09 -07:00
Brian Paul
6f346ec0b8 mesa: comments for some state vars 2008-12-30 17:00:36 -07:00
Brian Paul
432e9fa852 mesa: increase max constants/uniforms to 256 (vec4 vectors) 2008-12-30 17:00:06 -07:00
Brian Paul
49a3fabed8 mesa: updated compilation documentation 2008-12-30 07:57:16 -07:00
Brian Paul
c9122072fc demos: minor fixes to twoside.c glsl demo 2008-12-30 07:24:19 -07:00
Xiang, Haihao
0c4346e632 intel: disable ATI_texture_env_combine3 for i830( and related device).
Thanks to Eric for pointing it out.
2008-12-30 11:25:45 +08:00
Eric Anholt
6c01500228 dri: Fix driWaitForMSC32 when divisor >= 2 and msc < 0.
We'd come up with a negative remainder, while we were looking for the positive
version of it in the loop conditional.  And, since the "did we hit our target"
break was disabled for the target_msc == 0 ("Just make the divisor/remainder
work") path, we'd never exit.

Simplify the code by just using int64_t all over instead of trying to do it
in a u32 space.
2008-12-29 12:09:24 -08:00
Alex Deucher
c40cd2ccdd R300: missing semicolon 2008-12-29 12:28:12 -05:00
Xiang, Haihao
0674a23854 intel: enable ATI_texture_env_combine3. Fixes #17707 2008-12-29 09:32:51 +08:00
Dave Airlie
0d1f90c75e r300: remove the unknowns from the indx_buffer code 2008-12-28 16:48:36 +10:00
Xiang, Haihao
129b6bc4e3 i915: separate the fog term from the specular color term.
Previously fog parameter and specular color are packed into the
same dword. Note specular color should be packed in BGRA for device,
so if fog parameter and specular color all are present, fog parameter
will dirty the alpha term of specular color. This fixes rendering
issue when playing 'Yo Frankie' on 915/945.
2008-12-24 09:26:46 +08:00
Eric Anholt
15b2e0d138 intel: Fix glBitmap clipping for DRI1. 2008-12-23 15:01:53 -08:00
Dave Airlie
b359350017 Remove third buffer support from Mesa.
This is part of the deprecated pageflipping infrastructure.
2008-12-23 15:01:53 -08:00
Ian Romanick
f83f5ec8f5 Add do_row_3d for mipmapping 3D textures
Previously 3D textures were mipmapped using multiple passed through
the 2D mipmap generation code.  This had 3 disadvantages.  First, the
extra passes were slow.  Second, this required the allocation of a
temporary buffer to hold intermediate data.  Third, and most
important, the extra passes caused loss of additional bits due to
integer division / bit-shifting.

With this change, our mipmapgen conformance test passes for
non-compressed texture formats.
2008-12-19 13:06:53 -08:00
Ian Romanick
a330933bb7 Fix typeo in mipmap filter for GL_UNSIGNED_SHORT_1_5_5_5_REV 2008-12-19 13:06:53 -08:00
Ian Romanick
7e04272690 965 / GLSL: Use full precision for EXP instruction
The partial precision mode doesn't have quite enough bits of precision
to pass conformance tests.
2008-12-19 13:06:53 -08:00
Ian Romanick
962fa6bbc1 GLSL: The LOG2 macro doesn't have enough precision
It looks like the LOG2 macro only has 8 or 9 bits of precission, but
the ARB_vertex_program spec says "accurate to at least 10 bits".
2008-12-19 13:06:53 -08:00
Eric Anholt
1db6371304 intel: Fix glBitmap top/bottom clipping.
Bug #19139.
2008-12-19 13:05:50 -08:00
Eric Anholt
e67350da34 intel: Don't forget the source bitmap size when clipping the size we draw. 2008-12-19 13:04:29 -08:00
Eric Anholt
b9752a2bd6 intel: Update mesa state in blit operations that want post-scissor draw bounds. 2008-12-19 13:04:29 -08:00
Eric Anholt
d091ebd4e4 intel: don't clip to scissor-clipped read framebuffer bounds in copypixels. 2008-12-19 13:04:23 -08:00
Eric Anholt
1e7785fe07 intel: Move copyteximage source clipping out of copytexsubimage.
glCopyTexSubImage already gets the (correct) clipping for us, so it doesn't
need the path.  While moving the clipping out, replace the code with the mesa
path to do the same job.
2008-12-18 18:50:16 -08:00
Eric Anholt
d01c44aaca mesa: Clip copytexsubimage to read framebuffer bounds, not scissor region. 2008-12-18 18:32:07 -08:00
Eric Anholt
aa09e0a1d5 mesa: Correct _mesa_clip_to_region() off-by-one.
Note how if:
x + width == xmax + 0: width -= 0
x + width == xmax + 1: width -= 0
x + width == xmax + 2: width -= 1

So, the function was clipping to [xmin, xmax+1), not [xmin, xmax) like it was
supposed to.  Same for ymax.
2008-12-18 18:32:07 -08:00
Michal Krol
d9b92b112f glsl: Fix handling of nested parens in macro actual arguments. 2008-12-18 11:11:59 -07:00
Brian Paul
f43019b226 demos: all glutDestroyWindow() upon exit to test query object clean-up 2008-12-18 11:11:59 -07:00
Xiang, Haihao
cb453244ca i915: check WRAP_T instead of WRAP_R for cube map texture. 2008-12-18 12:59:43 +08:00
Xiang, Haihao
df73363ed1 i915: fix abort issue. (bug #19147) 2008-12-18 10:07:45 +08:00
Brian Paul
35aebf4667 mesa: remove unneeded _mesa_reference_fragprog() call
The subsequent if/else cases always call _mesa_reference_fragprog() anyway.
2008-12-17 18:05:03 -07:00
Jon Turney
8e7599892f dri: fix for Cygwin compilation, bug 19144 2008-12-17 18:01:16 -07:00
Brian Paul
20555835b6 mesa: updated comments 2008-12-17 14:54:46 -07:00
Brian Paul
1cb680d06b demos: add test of vertex-only and fragment-only shader programs 2008-12-17 13:58:31 -07:00
Brian Paul
637f06dcdc util: check for frag/vertShader=0 before attaching 2008-12-17 13:58:05 -07:00
Brian Paul
3be8d6db9e mesa: disable debug output 2008-12-16 15:25:58 -07:00
Brian Paul
368df1615e mesa: fix some GLSL array regressions
array.length() wasn't working.
Swizzle mask for accessing elements of float arrays was incorrect.
2008-12-16 14:29:52 -07:00
Brian Paul
702b5b076b mesa: rename slang_library_noise.[ch] to prog_noise.[ch] and rename functions
The noise functions were not glsl-specific.
Also, ran indent on the code to clean it up.
2008-12-15 18:37:39 -07:00
Brian Paul
c4341fe80a mesa: updated GLSL docs 2008-12-15 18:30:40 -07:00
Brian Paul
ec8cdc7113 Merge branch 'glsl-1.20-v2' 2008-12-15 18:25:43 -07:00
Brian Paul
4561307a27 mesa: bump glsl grammar revision
And update some copyrights.
2008-12-15 18:24:16 -07:00
Brian Paul
63fc119d6c mesa: in slang linker, replace assertion with link error when max samplers exceeded 2008-12-15 18:19:05 -07:00
Brian Paul
b8bfddf976 demos: updated tests/floattex.c (doesn't work just yet). 2008-12-15 18:19:05 -07:00
Brian Paul
c573b9f94a mesa: move _mesa_dlopen(), etc into separate dlopen.c file 2008-12-15 18:19:05 -07:00
Brian Paul
12219210af glut: added GLUT_PPM_FILE env var to dump first frame to a PPM file
Set GLUT_PPM_FILE to the desired filename.  The first frame rendered will
be written to that file.
2008-12-15 18:19:05 -07:00
Brian Paul
49543d7177 mesa: more re-org of variable declarations in glsl compiler 2008-12-15 18:18:08 -07:00
Brian Paul
a1229cc9e7 mesa: more comments, clean up 2008-12-15 16:57:37 -07:00
Brian Paul
a66ff046cc mesa: added comments, remove unused code 2008-12-15 16:49:32 -07:00
Brian Paul
aa1b904636 mesa: checkpoint: handle uniform vars in _slang_gen_var_decl()
This allows uniform declarations with scalar/array initializers.
The code is rough though, and will be cleaned up.
2008-12-15 16:44:55 -07:00
Eric Anholt
dc58da3e06 intel: stub out CompressedTexSubImage2D instead of segfaulting. 2008-12-15 15:10:18 -08:00
Eric Anholt
095c3a5cb1 i965: Update state before checking for fallbacks in brw_try_draw_prims.
This got flipped around in 7855b2aef6.

Bug #18907.  Thanks to idr for pointing me at a nicer testcase than blender.
2008-12-15 13:34:07 -08:00
Pierre Willenbrock
e72a442153 intel: Don't steal renderbuffer from caller in intel_miptree_create_for_region
Fixes double-frees of some regions, once from the renderbuffer code and
once from the miptree itself.

Bug #19062
2008-12-14 19:27:56 -08:00
Eric Anholt
0dfec4ab61 i965: Add decode of index/vertex buffer and primitive emit. 2008-12-14 19:27:56 -08:00
Eric Anholt
bc3b8a39a7 intel: Add batchbuffer assertions to hopefully catch future mistakes. 2008-12-14 19:27:55 -08:00
Ian Romanick
1126aa86bf Perform range checking on app supplied texture base level
It is possible for applications to specify any texture base level,
including trivially invalid values (i.e., 47000000).  When an app
specifies an invalide base level, we should gracefully disable the
texture instead of accessing memory outside the gl_texture_object.

This fixes an occasional segfault in one of our conformance tests.
2008-12-14 18:46:18 -08:00
Ian Romanick
63cca2ba10 GLX: Include glapi.h before glapitable.h
A previous commit (2dbc515a66) change
some of the interdependencies between these two header files.  Now
glapi.h must be included before glapitable.h.
2008-12-14 18:46:17 -08:00
Ian Romanick
2dd0c16f21 GLX: Change resulting from previous commit
Commit db61cbfa2aa241da49589331d8b6875d9a77d826 made modifications to
the protocol generator data and scripts.  This commit represents the
changes to the generated files resulting from the previous changes.

This is the client-side part of the fix for bugzilla #11003.
2008-12-14 18:46:17 -08:00
Neil Roberts
1709ab01ef Return 0 as the request size when the pixels parameter is NULL
img_null_flag was being ignored when calculating the size of a request
so a BadLength error gets thrown for glTexImage3D when the pixels
parameter is NULL.

See bug #11003
2008-12-14 18:46:17 -08:00
Ian Romanick
0f73302d24 GLX: Fix protocol for glTexSubImage#D
The TexSubImage commands do not have the "NULL image" flag that was
introduced with glTexImage3D.  However, there is a CARD32 pad element
where that flag would be.  Removing the img_null_flag causes the flag
to be removed from the protocol.  This changes the protocol and breaks
everything.

In order to prevent needing to hand-code all of the TexSubImage
functions, a new attribute was added to the param element.  This new
attribute, called "padding," is a boolean flag that selects whether or
not the parameter is a real parameter (default / false) or is protocol
padding (true) that does not appear in the function's parameter list.

This change resulted in a number of changes to other Python scripts.
In almost all cases parameters with the is_padding flag set should not
be emitted.

This patch only changes the the XML, the DTD, and the generator
scripts.  It does NOT include the resulting changes to the generated
code.  Generated code in the X server is also changed by the script /
XML changes in this patch.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2008-12-14 18:46:17 -08:00
Dan Nicholson
8be02fc8c6 Add OSMesa pkg-config file
This makes the GLU .pc file a little simpler, too.
2008-12-14 09:35:29 -08:00
Dan Nicholson
71e208bafe Add more package metadata to the pkg-config files
The pkg-config files have been filled in more thoroughly to allow users
to use mesa more effectively. By adding metadata to Requires.private,
Libs.private and Cflags, we can ensure that all the libraries and
headers will be found in all situations. However, the full substitutions
are only done when using the configure script.

This also fixes the glu pkg-config file to account for using GL or
OSMesa.

Fixes bug 18161.
2008-12-14 08:47:03 -08:00
Julien Cristau
85d882983f Prepare changelog for upload 2008-12-14 09:59:33 +05:30
Gary Wong
a42342cd90 Fix silly type mismatch error in multinoise demo. 2008-12-13 20:06:21 -07:00
Gary Wong
d28e852895 i965: Finish OPCODE_NOISEn instructions.
Added missing OPCODE_NOISE4, and use BRW_REGISTER_TYPE_D (instead of _UD)
in the initial RNDD instructions (which avoids saturating negative inputs
to 0).
2008-12-13 14:28:28 -07:00
Gary Wong
d427a2910f Add "multinoise" demo, to test 1/2/3/4 dimensional noise. 2008-12-13 14:28:04 -07:00
Gary Wong
0df3dfab82 Ensure p.w is initialised in noise demo. 2008-12-13 14:25:52 -07:00
Brian Paul
a9475cc240 mesa: use IFLOOR(x) instead of (int) FLOORF(x) 2008-12-12 18:03:48 -07:00
Brian Paul
3b61e9c6e6 mesa: place glsl constant arrays in constant memory
For example, a declaration like
   const float[3] xxx = float[3](1.1, 2.2, 3.3);
will place the array in the constant buffer whereas a regular, non-const array
would be placed in the temporary register file.
Next up: do the same thing for uniform arrays.
2008-12-12 18:00:47 -07:00
Brian Paul
0da44c62cc mesa: remove old size=4 limit 2008-12-12 18:00:19 -07:00
Brian Paul
d4be09fb2b mesa: code clean-up in glsl compiler 2008-12-12 16:20:31 -07:00
Brian Paul
240e211c71 mesa: remove unneeded swizzle init code in glsl compiler 2008-12-12 16:02:31 -07:00
Brian Paul
4d49fc83f1 mesa: disable glsl debug output 2008-12-12 15:34:58 -07:00
Brian Paul
81253be334 mesa: remove unused varpool code in glsl compiler 2008-12-12 15:11:08 -07:00
Brian Paul
5c0c5e5af9 mesa: basic array constructors work now
For example: float[3] xxx = float[3](1.1, 2.2, 3.3);

Optimizations for const-qualified arrays next.
2008-12-12 15:07:21 -07:00
Brian Paul
c20d00f04b mesa: copy array_len in slang_fully_specified_type_copy() 2008-12-12 15:01:00 -07:00
Brian Paul
9016331d0f mesa: remove incorrect array_len assignment 2008-12-12 15:00:06 -07:00
Brian Paul
87a00959ba mesa: array size fix in _slang_typeof_operation() 2008-12-12 13:18:30 -07:00
Brian Paul
8571401d7d mesa: fix some more GLSL 1.20 array things.
Function that return arrays should work now.
2008-12-12 13:05:29 -07:00
Brian Paul
d5367622a3 mesa: more glsl function renaming 2008-12-12 10:32:56 -07:00
Brian Paul
b4019483de mesa: use _slang_alloc() 2008-12-12 10:29:15 -07:00
Brian Paul
456a4e274f mesa: glsl compiler function renaming 2008-12-12 10:22:47 -07:00
Brian Paul
9a174ef409 mesa: more glsl type/function movement 2008-12-12 10:17:58 -07:00
Brian Paul
aeeb9bca27 mesa: move some glsl compiler functions to different files to be more consistant 2008-12-12 10:11:41 -07:00
Brian Paul
ea9dc3879f mesa: move _slang_locate_function() to different file 2008-12-12 10:03:31 -07:00
Brian Paul
19ca2908be mesa: remove unused fixup table code in glsl compiler 2008-12-12 09:58:18 -07:00
Brian Paul
ade777ea1b mesa: checkpoint: GLSL 1.20 array constructors 2008-12-12 09:56:13 -07:00
Brian Paul
1737f2dbdd mesa: consolidate variable declaration initializer code for globals too 2008-12-11 19:34:43 -07:00
Brian Paul
2760bca1e1 mesa: move variable initializer IR generation into _slang_gen_var_decl()
More code consolidation coming...
2008-12-11 19:28:22 -07:00
Brian Paul
05ed9f7fe9 mesa: simplify some glsl variable declaration code 2008-12-11 19:10:58 -07:00
Xiang, Haihao
8b69c42b35 intel: check for null texture. (fix #13902) 2008-12-12 10:02:05 +08:00
Brian Paul
929eb00b32 mesa: glsl clean-ups 2008-12-11 18:49:28 -07:00
Brian Paul
2dc3de016c mesa: checkpoint commit of GLSL 1.20 array syntax.
This allows things like float[3] x = float[3](1., 2., 3.);

Parsing and AST construction now.  Codegen not working yet.
2008-12-11 18:02:19 -07:00
Xiang, Haihao
c8b505d826 i915: fallback for cube map texture.
The i915 (and related graphics cores) only support TEXCOORDMODE_CLAMP and
TEXCOORDMODE_CUBE when using cube map texture coordinates, so fall back to
software rendering for other modes to avoid potential gpu hang issue. This
fixes scorched3d issue on 945GM(see bug 14539).
2008-12-11 14:03:00 +08:00
Brian Paul
e8f5c1a5e8 mesa: in slang linker, replace assertion with link error when max samplers exceeded 2008-12-09 14:30:42 -07:00
Brian Paul
3c7419d57b demos: updated tests/floattex.c (doesn't work just yet). 2008-12-09 14:29:14 -07:00
Brian Paul
c89690f765 mesa: move _mesa_dlopen(), etc into separate dlopen.c file 2008-12-09 14:26:02 -07:00
Guillaume Melquiond
3b9bc821e1 tnl: Fix zeroing of the 3ub part of a 3ub+1ub attrib pair in SSE.
Bug #16520.
2008-12-09 13:18:02 -08:00
Guillaume Melquiond
b66495a0d9 tnl: Optimize SSE load[23]f_1 since they don't need the identity swizzle.
SSE movss from memory zeroes out everything above the destination dword, so
we get the (a, 0) or (a, 0, 0) result that these functions needed.

Bug #16520.
2008-12-09 13:17:48 -08:00
Guillaume Melquiond
6e29a3c8e2 tnl: Fix typo that resulted in fallback from SSE for EMIT_3UB_3F_RGB/BGR.
Bug #16520
2008-12-09 11:42:24 -08:00
Guillaume Melquiond
d507cd749b tnl: Avoid undefined input value use in insert_3f_viewport_2().
Bug #16520.
2008-12-09 09:29:08 -08:00
Brian Paul
5295f9a033 glut: added GLUT_PPM_FILE env var to dump first frame to a PPM file
Set GLUT_PPM_FILE to the desired filename.  The first frame rendered will
be written to that file.
2008-12-09 10:23:14 -07:00
Timo Aaltonen
5387880f18 delete progs/trivial/ 2008-12-09 02:16:44 +02:00
Timo Aaltonen
a7a9398411 Build-depend on x11proto-dri2-dev (>= 1.99.3) 2008-12-09 02:01:40 +02:00
Timo Aaltonen
7593023f0b Update the changelog for the snapshot
also drop 01_disable-intel-classic-warn.diff since it's obsolete now.
2008-12-09 01:57:44 +02:00
Timo Aaltonen
92d9a71f60 Merge commit 'origin/debian-experimental' into debian-experimental
Conflicts:
	include/GLES/egltypes.h
	progs/miniglx/glfbdevtest.c
	progs/miniglx/manytex.c
	progs/miniglx/sample_server.c
	progs/miniglx/sample_server2.c
	progs/miniglx/texline.c
	progs/tests/Makefile.win
	progs/tests/antialias.c
	progs/tests/cva.c
	progs/tests/dinoshade.c
	progs/tests/getprocaddress.py
	progs/tests/jkrahntest.c
	progs/tests/manytex.c
	progs/tests/multipal.c
	progs/tests/multiwindow.c
	progs/tests/sharedtex.c
	progs/tests/texline.c
	progs/tests/texrect.c
	progs/tests/texwrap.c
	progs/trivial/Makefile
2008-12-09 01:38:08 +02:00
Timo Aaltonen
661890211e Merge commit 'mesa_7_2' into debian-experimental 2008-12-09 01:36:36 +02:00
Pierre Willenbrock
a0d5c3cfe6 intel: Require the right amount of space in glBitmap blit acceleration.
This leads to problems when the batchbuffer is flushed, but the bitmap
data could not fit into it.
2008-12-08 14:06:51 -08:00
Eric Anholt
f849d364c2 mesa: Fix GenerateMipmapEXT(GL_TEXTURE_CUBE_MAP_ARB).
The ctx->Driver.GenerateMipmap() hook only expects cubemap face enums, not
CUBE_MAP_ARB, so walk all faces when we encounter that.  Fixes oglconform
fbo.c segfault with both swrast and i965 drivers.
2008-12-06 22:41:52 -08:00
Eric Anholt
8b661a5d33 intel: Fall back on rendering to a texture attachment with a border.
Fixes a segfault in oglconform fbo.c test.
2008-12-06 22:41:52 -08:00
Eric Anholt
75b26e18a6 intel: Fix crash in automatic mipmap generation for glCopyTex{Sub,}Image.
The images aren't mapped at this point, so we want the generic Mesa path for
GenerateMipmapEXT that does the mapping/unmapping for us.  Ideally Mesa would
just call it for us.
2008-12-06 22:41:52 -08:00
Eric Anholt
a0625fa281 intel: Fix glCopyPixels blit acceleration for FBO destinations.
This was another opportunity to either get clipped to screen size or not get
clipped enough and draw outside of object boundaries.
2008-12-06 22:41:51 -08:00
Eric Anholt
cb433d91c6 intel: Fix glBitmap blit acceleration for FBO destinations.
Bug #18914.  Fixes fbo_firecube hang due to drawing outside the FBO bounds.
Thanks to Pierre Willenbrock for debugging the issue.
2008-12-06 22:41:51 -08:00
Eric Anholt
bdc8ac4426 intel: Put CopyTexImage fallback under DEBUG_FALLBACKS not DEBUG_TEXTURE. 2008-12-06 22:41:51 -08:00
Brian
6e0f8b174d mesa: assorted clean-ups, updated comments, etc. 2008-12-05 09:20:06 -07:00
Brian
249e1e4d30 mesa: replace large macros with inline functions 2008-12-05 09:20:06 -07:00
Brian
39091cc638 demos: added simple vertex shader texture test.
Draw a quadmesh where Z coord is taken from a texture map.
2008-12-03 18:55:25 -07:00
Jeremy Huddleston
f18880038b darwin: Use -Os instead of -O2
(cherry picked from commit 456dbb143a0d11b69d8af0d493cd84efb0596273)
2008-12-03 17:03:35 -08:00
Eric Anholt
264cba6f70 i965: Fix failure to upload new constant data when changing programs.
This is fallout from the ffvertex_prog.c work.  It doesn't call
ProgramStringNotify, so we don't set param_state, so we wouldn't track when
VP parameters changed, and constants wouldn't get uploaded.  Instead, remove
param_state entirely and just use the real value that we want to be tracking.

Fixes rendering in openarena since BRW_NEW_BATCH got disentangled from
BRW_NEW_INDICES.

Bug #18822.
2008-12-03 11:45:16 -08:00
Eric Anholt
8a1e7086c7 i965: Fix stray character that the compile whined about. 2008-12-03 11:30:58 -08:00
Kristian Høgsberg
154a9e5317 Bump dri2proto requirement to 1.99.3, drop CopyRegion bitmask from protocol. 2008-12-01 21:44:03 -05:00
Dave Airlie
cd031749a7 intel: restore old vertex submit paths for i8xx hardware.
Intel docs state that only 830/845 have VBOs, 855/865 don't. So
lets just not use them on i8xx at all.

This restores the old pre-vbo code and uses it on all 8xx hw.
2008-12-02 20:31:14 +10:00
Brian
1e2f574251 mesa: fix conditional in save_Lightfv(), bug 18838 2008-12-01 18:32:47 -07:00
Eric Anholt
e476acb105 i965: Add a new state flag BRW_NEW_NR_SURFACES instead of CACHE_NEW_SURFACE
The CACHE_NEW_SURFACE bit always gets spammed since we get many different
surface BOs per state emit, but the only consumer of it wanted to just know
how many surfaces were enabled.
2008-11-28 17:09:46 -08:00
Eric Anholt
8e5639577c i965: Fix clashing enums for BRW_NEW_INDICES/VERTICES versus BATCH/DEPTH_BUFFER.
Fixes upload of large amounts of state for every new primitive emit.
2008-11-28 17:09:46 -08:00
Eric Anholt
287d719a93 i965: Remove BRW_WM_LOCK dirty bit, introduced to work around lack of relocs.
This was causing a prepare of wm state at every primitive emit.
2008-11-28 17:09:46 -08:00
Eric Anholt
3f973de07c i965: Add debug code for dumping how frequently different dirty bits are set. 2008-11-28 17:09:46 -08:00
Eric Anholt
8e76ac070d i915: Remove dead early z enable bit which was always on. 2008-11-28 17:09:46 -08:00
Eric Anholt
7855b2aef6 i965: Reduce fast-pathiness of brw_try_draw_prims, bringing in important checks.
Later primitives, even if they caused a full state validate, wouldn't check
that there was enough space in the batchbuffer, occasionally triggering the
sanity check.  We also skipped the aperture space check, even if it would
mean bringing in new programs and associated state.
2008-11-28 17:09:45 -08:00
Brian Paul
baaf9779f1 mesa: add missing break statements 2008-11-28 16:17:57 -07:00
Brian Paul
166d5ac170 mesa: enable texture compression extensions for software drivers when possible 2008-11-28 14:08:04 -07:00
Phillip Klaus Krause
3b5cd7d74a mesa: remove unneeded compressed texure size checks 2008-11-28 13:54:08 -07:00
Brian Paul
ec17001cd4 mesa: fix default switch case in append_token(), see bug 18734 2008-11-28 13:50:41 -07:00
Brian Paul
c303e7299b mesa: remove an assertion (see bug 18734) 2008-11-27 11:01:30 -07:00
RALOVICH, Kristóf
8c2b4b33c5 Revert "glx: xcbified visual and FBConfig choosing"
This reverts commit 62688f1135.
2008-11-27 07:20:38 -07:00
RALOVICH, Kristóf
80d1531ebe Revert "glx: revert using nonexsisten XCB version of glXGetFBConfigsSGIX"
This reverts commit 5369876501.
2008-11-27 07:20:35 -07:00
RALOVICH, Kristóf
5369876501 glx: revert using nonexsisten XCB version of glXGetFBConfigsSGIX
This uses a GLX VendorPrivate request. VendorPrivates are real GLX API
calls but use the same protocol request. XCB does not currently
support specific VendorPrivetes directly. See eg.:
http://lists.freedesktop.org/archives/xcb/2008-November/004036.html
for more information.
2008-11-26 10:02:11 -07:00
RALOVICH, Kristóf
1e167f6b5c glx: remove XCB debug leftover 2008-11-26 10:02:11 -07:00
RALOVICH, Kristóf
ff3fa92eaa glx: xcbified glXSwapBuffers 2008-11-26 10:02:11 -07:00
RALOVICH, Kristóf
62688f1135 glx: xcbified visual and FBConfig choosing 2008-11-26 10:02:11 -07:00
RALOVICH, Kristóf
66db1b64e8 glx: xcbified __glXClientInfo 2008-11-26 10:02:11 -07:00
RALOVICH, Kristóf
5f19f5c586 configure.ac: advertise XCB 2008-11-26 10:02:11 -07:00
RALOVICH, Kristóf
6d1d157606 glx: no graphics context during initialization 2008-11-26 10:02:11 -07:00
RALOVICH, Kristóf
9c7aaa7afb glx: xcbified __glXIsDirect 2008-11-26 10:02:10 -07:00
RALOVICH, Kristóf
00f22f972f glx: missing static on local function 2008-11-26 10:02:10 -07:00
RALOVICH, Kristóf
f0d015cccb glx: use __glXGetString 2008-11-26 10:00:58 -07:00
RALOVICH, Kristóf
9c98e35ff6 glx: use __glXQueryServerString 2008-11-26 10:00:58 -07:00
RALOVICH, Kristóf
24b8a8cfe8 glx: implement __glXGetString, hide __glXGetStringFromServer 2008-11-26 10:00:58 -07:00
RALOVICH, Kristóf
fd52001c5c glx: implement QueryVersion using XCB 2008-11-26 10:00:58 -07:00
RALOVICH, Kristóf
5444424562 glx: implement __glXQueryServerString using XCB 2008-11-26 10:00:58 -07:00
Thomas Henn
55aeeef547 windows: fix visual object memleak 2008-11-26 09:51:29 -07:00
Thomas Henn
279343059f windows: fix _mesa_unreference_framebuffer() to pass ** type. 2008-11-26 09:49:32 -07:00
Brian Paul
001b1cbb0d mesa: add missing type check for function calls 2008-11-26 09:35:26 -07:00
Brian Paul
aa40de5c6f mesa: add missing size check for assignment optimization 2008-11-26 09:35:08 -07:00
Brian Paul
fea3a32e17 mesa: remove debug code 2008-11-26 09:02:37 -07:00
Brian Paul
e23122d309 demos: press SPACE to toggle fbo_firecube animation 2008-11-26 09:00:44 -07:00
Brian Paul
11701b4c15 mesa: add some missing switch cases for generating state var strings 2008-11-26 07:21:12 -07:00
Daniel Zimmermann
c03af8e780 fix possible memory leak in bezierPatchMeshMake 2008-11-26 07:20:02 -07:00
Brian Paul
8d95e66cf7 mesa: added support for GLSL 1.20 array.length() method
This is the only method supported in GLSL 1.20 so we take a few short-cuts.
2008-11-24 17:18:56 -07:00
Brian Paul
0fab514ff5 mesa: support for GLSL 1.20 array types
This allows syntax like "float[8] foo, bar;"
2008-11-24 15:28:21 -07:00
Brian Paul
b730d0d3e9 mesa: add gl_program::Input/OutputFlags[] array
These arrays will indicate per-input or per-output options for vertex/fragment
programs such as centroid-sampling and invariance.
2008-11-24 13:05:54 -07:00
Bernd Buschinski
d52e8543b6 glx: Add missing include for XCB, fixing crash on 64-bit.
Bug #18689
2008-11-24 11:40:38 -08:00
Brian Paul
153cc70ddb windows: replace free() with _mesa_unreference_framebuffer()
Fixes invalid memory reference bug when exiting.
2008-11-24 11:10:58 -07:00
Brian Paul
a203713738 mesa: copy centroid/invariance/precision info in parse_init_declarator() 2008-11-24 09:28:25 -07:00
Brian Paul
dc1107c08d mesa: check that varying variable qualifiers agree 2008-11-24 09:25:05 -07:00
Brian Paul
0e2f757413 mesa: copy precision/variant/centroid info in slang_fully_specified_type_copy() 2008-11-24 09:13:14 -07:00
Brian Paul
3197954554 mesa: set flags for varying vars 2008-11-24 09:05:49 -07:00
Brian Paul
f490ec9797 mesa: rename program parameter flags to match other Mesa conventions 2008-11-24 09:04:52 -07:00
Brian Paul
08b825a771 mesa: copy Flags in _mesa_clone_parameter_list() 2008-11-24 09:04:11 -07:00
Brian Paul
3f6668a4bf mesa: dump/debug varying vars list 2008-11-24 09:03:47 -07:00
Brian Paul
777a5c4f2e mesa: added PROG_PARAM_ bits for invariant, flat/linear interpolation
Plus, update the print/debug code.
2008-11-24 08:43:38 -07:00
Brian Paul
0f228d7ab3 mesa: add Flags field to gl_program_parameter
Only one flag defined so far: PROG_PARAM_CENTROID_BIT
2008-11-24 08:33:49 -07:00
Brian Paul
5464667874 docs: update webmaster email addr 2008-11-24 08:14:28 -07:00
Brian Paul
4f05893415 mesa: issue error, don't crash, when calling a prototyped, but undefined function
Bug #18659.
2008-11-21 17:22:16 -07:00
Brian Paul
b63a31b36f mesa: better variable name: s/aux/store/ 2008-11-21 14:24:28 -07:00
Brian Paul
c45c5c4ca4 added progs/demos/fragcoord.c - tests gl_FragCoord attribute in fragment shader
Fragment's red/greenb/blue is a function gl_FragCoord.xyz
2008-11-21 10:04:37 -07:00
Eric Anholt
3e0164aabb i965: Add support for accelerated CopyTexSubImage.
There were hacks in EmitCopyBlit before to adjust offsets so that y=0 after
the offsets had been adjusted for a negative pitch.  It appears that those
hacks were due to an unclear and surprising aspect of the hardware: inverting
the pitch results in the blit into the specified rectangle being inverted,
without the user needing to adjust y and base offset.

Tested with piglit copytexsubimage test on 915GM and GM965.  Should fix
serious performance issues with ETQW and other applications.
2008-11-21 17:35:33 +08:00
Eric Anholt
a6aa926e3f intel: Don't glBitmap fallback with scissoring enabled.
The blit bitmap code already handles scissoring.  This is a 15-100% speedup on
blender benchmark.blend thanks to avoiding fallbacks. Bug #17951.
2008-11-21 13:25:10 +08:00
Eric Anholt
2adef553f2 i915: Don't overwrite i915's Viewport function from generic code.
Instead, have i965 and i915 both call the generic function from their Viewport.
2008-11-21 13:23:46 +08:00
Xiang, Haihao
b6bb5e09e0 mesa: fix shadow sampling unit issue.
texture comparison logic is bypassed if the currently bound texture is not
a depth/depth_stencil texture.
2008-11-20 16:54:16 +08:00
airlied
1412ca0be2 intel: fix i830 comment + backwards VB offsets.
According to Keith the docs have these offsets the other way around
2008-11-20 21:27:45 +10:00
airlied
1ea414fdeb intel: fix i8xx vbo enable bit 2008-11-20 21:14:45 +10:00
airlied
b17e343bdd intel: add lots of i830 engine to intel_decode debug 2008-11-20 18:18:20 +10:00
Brian Paul
bab4e78734 mesa: minor comment reformattting 2008-11-19 16:04:37 -07:00
Brian Paul
bf7f9d2143 mesa: glsl compiler debug code
RETURN0 macro reports file/line before returning zero.
2008-11-19 15:08:46 -07:00
Brian Paul
ae0ff8097b mesa: rework GLSL array code generation
We now express arrays in terms of indirect addressing.  For example:
  dst = a[i];
becomes:
  MOV dst, TEMP[1 + TEMP[2].y];
At instruction-emit time indirect addressing is converted into ARL/
ADDR-relative form:
  ARL ADDR.x, TEMP[2].y;
  MOV dst, TEMP[1 + ADDR.x];
This fixes a number of array-related issues.  Arrays of arrays and complex
array/struct nesting works now.
There may be some regressions, but more work is coming.
2008-11-19 14:12:25 -07:00
Brian Paul
e709d68d92 mesa: don't realloc instruction buffer so often 2008-11-19 09:12:47 -07:00
Brian Paul
d9fa9e3290 mesa: updated comment 2008-11-19 09:12:47 -07:00
Xiang, Haihao
2f9ceb158a mesa: clamp luminance if needed.
This fixes glReadPixels(GL_LUMINANCE, GL_FLOAT)/glGetTexImage(GL_LUMINANCE, GL_FLOAT) issue
on fixed-point color buffers.
2008-11-19 11:30:30 +08:00
Brian Paul
80d6379722 mesa: no longer need Writemask field in GLSL IR nodes
The Swizzle and Size fields carry all the info we need now.
2008-11-13 18:19:12 -07:00
Brian Paul
3a7ed9779b mesa: revamp GLSL instruction emit code
This is a step toward better array handling code.  In particular, when more
than one operand of an instruction uses indirect addressing, we'll need some
temporary instructions and registers.  By converting IR storage to instruction
operands all in one place (emit_instruction()) we can be smarter about this.

Also, somewhat better handling of dst register swizzle/writemask handling.
This results in tighter writemasks on some instructions which is good for
SOA execution.

And, cleaner instruction commenting with inst_comment().

Next: remove some more dead code and additional clean-ups...
2008-11-13 18:19:12 -07:00
Brian Paul
610c2461ce mesa: make writemask_string() non-static 2008-11-13 18:19:12 -07:00
Brian Paul
4c167f8fc1 mesa: remove some do-nothing GLSL code 2008-11-13 18:19:12 -07:00
Brian Paul
fe984aed5a mesa: fix accidental regression in GLSL built-in texture matrix lookup
Was broken by commit 9aca9a4b72b2a7b378e50bd88f9c3324d07375ec.
2008-11-13 18:19:12 -07:00
Brian Paul
d835f415c6 mesa: use the tighter definition of GLSL ftransform() from the gallium branches 2008-11-13 18:19:12 -07:00
Brian Paul
e556cc82f8 mesa: remove unused/obsolete __NormalMatrixTranspose matrix 2008-11-13 18:19:12 -07:00
Brian Paul
47b883e42b mesa: fix bug in GLSL built-in matrix state lookup 2008-11-13 18:19:12 -07:00
Brian Paul
557fde9531 mesa: tweak program register printing for RelAddr case 2008-11-13 18:19:12 -07:00
Alan Hourihane
e4c9aeed8b mesa: fix generation of fixed function state when no vp exists 2008-11-13 13:31:10 +00:00
Eric Anholt
c30eb2c104 i965: Upload state on primitive switch, don't just prepare it.
This was a regression in 59b2c2adbb that broke
blender, among other apps.
2008-11-12 13:37:16 -08:00
Eric Anholt
2fc9d671e0 i965: Fix VB refcount leak on aperture overflow. 2008-11-12 13:34:20 -08:00
Eric Anholt
72bbc89534 Add glsync demo program from jbarnes for testing vblank synchronization. 2008-11-12 13:07:23 -08:00
Eric Anholt
62ff7ab720 i965: Fix up VS max_threads for G4X and removing a magic number.
As far as I can read in the docs, VS threads can be 1:1 with the pairs of
VUE handles allocated for them.  Also, G4X can run twice as many threads as
before (though we won't unless the we bump the preferred URB entries for VS).
2008-11-12 13:07:23 -08:00
Eric Anholt
9dadfc09a9 i965: Fix up SF max_threads.
We were dividing the number of URB entries by two to get number of threads,
which looks suspiciously like a copy'n'paste-o from brw_vs_state.c.  Also, the
maximum number of threads is 24, not 12.
2008-11-12 13:07:23 -08:00
Eric Anholt
82eb7c235d i965: Fix up clip min_nr_entries, preferred_nr_entries, and max_threads.
The clip thread could potentially deadlock when processing tristrips since
being moved back to dual-thread mode, as the two threads could each have 4 VUEs
referenced and not be able to allocate another one since SF processing
wasn't able to continue (needing 5 entries before it freed 2).
In constrained URB mode, similar deadlock could even have occurred with
polygons (so we cut back max_threads if we can't handle it any primitive type).
2008-11-12 13:07:22 -08:00
Eric Anholt
5cb7ba10cc i965: Update WM maximum threads for G4X. 2008-11-12 13:07:22 -08:00
Eric Anholt
d70d62c561 i965: Add a big comment explaining my understanding of URB management.
It shouldn't offer anything new over what's in the docs (except for G4X notes),
but here it's all in one place.
2008-11-12 13:07:22 -08:00
Kristian Høgsberg
e1fbb30211 glFlush before CopySubBuffer, fix coordinates and extension name typo. 2008-11-12 15:26:25 -05:00
Hanno Böck
becf3d9272 glx: fix xcb build 2008-11-12 06:56:42 -07:00
Brian Paul
90246d3ea5 mesa: fix version check in dinoshade.c 2008-11-11 14:35:39 -07:00
Brian Paul
f4361540f8 mesa: allow relative indexing into all register files and indirect dst register indexing 2008-11-11 14:35:39 -07:00
Kristian Høgsberg
57d78067bd Don't mess with emacs tab width. 2008-11-11 13:41:43 -05:00
Xiang, Haihao
09623fe551 intel: reset cliprect_mode to IGNORE_CLIPRECTS.
This ensures all batchbuffers have a same cliprect mode after calling
_intel_batchbuffer_flush even if there aren't invalid commands in the
current batch buffer. (fix bug#18362).
2008-11-11 13:58:15 +08:00
Xiang, Haihao
8412b06b67 mesa: restore the negate flag of dots in build_lighting.
Dots is re-used if more than one light is enabled. Previously
the negate flag of dots may affect next light.
2008-11-11 13:36:32 +08:00
Xiang, Haihao
064b04d464 mesa: update new state for RasterPos like other operations.
This fixes a lighting issue when drawing a bitmap.
2008-11-11 13:35:51 +08:00
Brian
be1b8e5d6c mesa: new _mesa_is_pow_two() function 2008-11-10 20:16:00 -07:00
Brian Paul
8df4f6667f mesa: restore glapi/ prefix on #include 2008-11-10 16:38:47 -07:00
Brian Paul
59cc973940 mesa: fix some misc breakage caused by editing auto-generated files rather than the python generators
Specifically:
  #include "glapitable.h" in src/mesa/main/glapi/dispatch.h
  Call _mesa_bsearch() in src/mesa/main/enums.c.
2008-11-10 14:42:02 -07:00
Brian Paul
13f96c5401 GLX: fix out-of-bounds memory issue in indirect glAreTexturesResident()
See bug 18445.
When getting array results, __glXReadReply() always reads a multiple of
four bytes.  This can cause writing to invalid memory when 'n' is not a
multiple of four.

Special-case the glAreTexturesResident() functions now.
To fix the bug, we use a temporary buffer that's a multiple of four bytes
in length.

NOTE: this commit also reverts part of commit 919ec22ecf
(glx/x11: Added some #ifdef GLX_DIRECT_RENDERING protection) which
directly edited the indirect.c file rather than the python generator!
I'm not repairing that issue at this time.
2008-11-10 14:27:42 -07:00
Brian Paul
6186e7a206 dri: alloc __DRIscreen object with calloc() 2008-11-10 12:39:36 -07:00
Brian Paul
2d76a0d77a mesa: track initialization status of uniform variables. Plus, asst clean-ups. 2008-11-10 12:39:36 -07:00
Brian Paul
379ff8c956 mesa: initial support for uniform variable initializers.
This lets one specify initial values for uniforms in the code, avoiding
the need to call glUniform() in some cases.
2008-11-10 12:39:36 -07:00
Brian Paul
242c0cb543 mesa: fix logic error in GLSL linker when looking for main() shaders 2008-11-10 12:39:36 -07:00
Brian Paul
80c8017a64 mesa: allows 'f' suffix on GLSL float literals 2008-11-10 12:39:36 -07:00
Brian Paul
e5359401d6 undo accidental changes to multitex.frag shader 2008-11-10 12:39:36 -07:00
Brian
f1c9016af1 mesa: remove OPCODE_INT #define 2008-11-08 10:33:30 -07:00
Brian
e24afc808f mesa: use NRM3 in emit_normalize_vec3() when drivers are ready 2008-11-08 10:29:03 -07:00
Brian Paul
87d1a26ba3 mesa: add support for 'centroid' qualifier in GLSL 1.20 2008-11-07 16:08:21 -07:00
Brian Paul
448156f769 mesa: add support for 'invariant' keyword for GLSL 1.20 2008-11-07 15:51:10 -07:00
Brian Paul
b632e5aa7f mesa: reformat comments, rewrap lines, etc for a little better readability 2008-11-07 14:28:00 -07:00
Brian Paul
22459e7a9c mesa: forgot sqrt in NRM3/4 instructions 2008-11-07 12:59:36 -07:00
Brian Paul
6dc91b8371 mesa: fix opcode table order bug 2008-11-07 12:59:08 -07:00
Brian Paul
a98a25c25f mesa: add GLSL support for DP2, NRM3, NRM4 instructions (not actually emitted yet though) 2008-11-07 09:51:25 -07:00
Brian Paul
65cb74ecc0 mesa: added DP2, DP2A instructions 2008-11-07 09:51:25 -07:00
Brian Paul
37eef7b474 mesa: added AND/OR/NOT/XOR instructions 2008-11-07 09:51:25 -07:00
Brian Paul
d93072782a mesa: include shader/prog_instruction.h
Seems to fix a mysteriously missing build dependency.
2008-11-07 09:51:25 -07:00
Brian Paul
f6ead50827 mesa: added OPCODE_NRM3/NRM4 instructions for vector normalization.
We may emit these instructions from GLSL instead of DP3/RCP/MUL.

Also, implement SSG (set sign) instruction in the interpreter.
2008-11-07 09:51:25 -07:00
Xiang, Haihao
4550b0562d mesa: use _bfc0 instead of _col0 when building back face lighting. 2008-11-07 14:58:04 +08:00
Brian Paul
035c0cf71a mesa: rename OPCODE_INT -> OPCODE_TRUNC
Trunc is a more accurate description; there's no type conversion involved.
2008-11-06 17:14:33 -07:00
Brian Paul
517401af07 mesa: update the shader programs->TexturesUsed array at link time
If an application never calls glUniform() to set sampler variable values
they'll remain 0 (the default value/unit).
Now call _mesa_update_shader_textures_used() at link time in case glUniform()
is never called.  program->TextureUsed[] will then be correct for state
validation.
2008-11-06 15:24:18 -07:00
Xiang, Haihao
df94fd1764 i965: Always check vertex program.
Now i965 also uses the vertex program created by Mesa Core, but this vertex program
is not only depend on mesa state _NEW_PROGRAM, so always check the current vertex
program is updated or not. This fixes broken demo cubemap.
2008-11-06 15:25:55 +08:00
Gary Wong
0060d41549 i965: Implement missing OPCODE_NOISE3 instruction in fragment shaders.
OPCODE_NOISE4 coming later.
2008-11-05 20:38:05 -05:00
Brian Paul
1bfdab781b mesa: Fix compiler warnings on Windows.
cherry-picked subset of a77976d2ee
2008-11-05 16:04:40 -07:00
Brian Paul
50beb4e6fd mesa: fix a GLSL array indexing codegen bug
Expressions like array[i] + array[j] didn't work properly before.
2008-11-05 16:02:16 -07:00
Brian Paul
dea4826b84 mesa: remove extra \n from printf string 2008-11-05 09:34:15 -07:00
Brian Paul
949e7383b5 mesa: add Initialized field to gl_uniform struct, for debugging purposes only 2008-11-05 09:17:55 -07:00
Brian Paul
aab429c8df added glsl/skinning.c test to test matrix blending/weighting 2008-11-04 16:56:59 -07:00
Brian Paul
6c8274078d mesa: fix float-valued GLSL vertex attribute variables
The swizzle mask for such variables wasn't set up properly.
2008-11-04 16:55:18 -07:00
Brian Paul
35a9f1bccf print err msg if unable to open shader file 2008-11-04 16:55:18 -07:00
Brian Paul
d3222cb1d4 remove old debug glFlush/Finish calls from demos 2008-11-04 16:55:18 -07:00
Eric Anholt
4be624d693 i965: Clean up stale NDC comment. 2008-11-02 12:30:01 -08:00
Eric Anholt
9fd4c27ae3 i965: Avoid vs header computation for negative rhw on G4X.
This cuts one MOV out when setting a zero header.
2008-11-02 12:30:01 -08:00
Eric Anholt
34b1776e8d i965: Merge GM45 into the G4X chipset define.
The mobile and desktop chipsets are the same, and having them separate is
more typing and more chances to screw up.
2008-11-02 12:30:00 -08:00
Eric Anholt
d758c48761 i965: Fix copy'n'paste issue that made brw->urb.constrained useless.
Also, add a comment explaining what brw->urb.constrained tries to do.
2008-11-02 12:30:00 -08:00
Brian Paul
bbffed0857 mesa: silence warnings 2008-11-01 16:05:40 -06:00
Brian Paul
b625a0a475 mesa: do scope replacement for while/for loops too
This fixes a function inlining bug involving vars declared inside loop bodies.
2008-11-01 16:05:40 -06:00
Brian Paul
3d0d803313 mesa: glsl tree print improvements 2008-11-01 16:05:40 -06:00
Brian Paul
1e1ba54a94 mesa: fix assignment / parameter passing of sampler types 2008-11-01 16:05:40 -06:00
Brian Paul
131d42573c mesa: additional debug flags for glsl debug/disassembly 2008-11-01 16:05:40 -06:00
Keith Packard
72c914805b Fix for 58dc8b7: dest regions must not use HorzStride 0 in ExecSize 1
Quoting section 11.3.10, paragraph 10.2 of the 965PRM:

10.2. 	If ExecSize is 1, dst.HorzStride must not be 0. Note that this is
	relaxed from rule 10.1.2. Also note that this rule for destination
	horizontal stride is different from that for source as stated in
	rule #7.

GM45 gets very angry when rule 10.2 is violated.

Patch 58dc8b7 (i965: support destination horiz strides in align1 access mode)
added support for additional horizontal strides in the ExecSize 1 case, but
failed to notice that mesa occasionally re-purposes a register as a
temporary destination, even though it was constructed as a repeating source
with HorzStride = 0.

While, ideally, we should probably fix the code using these register
specifications, this patch simply rewrites them to use HorzStride 1 as the
pre-58dc8b7 code did.

Signed-off-by: Keith Packard <keithp@keithp.com>
2008-11-01 14:38:19 -07:00
Brian Paul
06fe728e5b mesa: fix some bugs with precision qualifier parsing 2008-10-31 17:42:26 -06:00
Brian Paul
90711775d7 mesa: do scope replacement for variable initializers too 2008-10-31 17:42:26 -06:00
Brian Paul
89bca902b3 mesa: fix copy/paste error in GLSL error msg 2008-10-31 17:42:25 -06:00
Eric Anholt
69e10084cd intel: pixelzoom doesn't apply to glBitmap, so disable the fallback. 2008-10-31 16:04:50 -07:00
Eric Anholt
018088996a intel: Remove fallback for glDrawPixels(GL_COLOR_INDEX)
GL_COLOR_INDEX mode is just like other normal formats (that is, not
depth/stencil) and is uploaded fine by TexImage.
2008-10-31 16:04:50 -07:00
Eric Anholt
ed478a5fde intel: Add more fallback debugging for glDrawPixels. 2008-10-31 16:04:50 -07:00
Gary Wong
ab3e9c481f i965: implement the missing OPCODE_NOISE1 and OPCODE_NOISE2 instructions.
(Only in fragment shaders, so far.  Support for NOISE3 and NOISE4 to come.)
2008-10-31 17:37:26 -04:00
Gary Wong
58dc8b7db5 i965: support destination horiz strides in align1 access mode.
This is required for scatter writes in destination regions to work.
2008-10-31 17:34:32 -04:00
Xiang, Haihao
963071ffea mesa: fix a typo in the previous commit 2008-10-31 09:24:27 +08:00
Xiang, Haihao
bccc09e6bf mesa: fix an issue in _mesa_PointParameterfv(). 2008-10-30 10:40:51 +08:00
Brian Paul
239ce2240a glx: added PFNGL*PROC typedefs for GLX 1.3 functions
Since we define GLX_VERSION_1_3 in glx.h, the typedefs in the glxext.h header
were getting skipped.
2008-10-29 15:49:19 -06:00
Nigel Stewart
cd1283f515 glu: fix compilation problem when using Windows gl.h (sf bug 2204589) 2008-10-29 09:23:48 -06:00
Eric Anholt
26c1c04fd0 intel: Fix glDrawPixels with 4d RasterPos. 2008-10-28 22:52:38 -07:00
Eric Anholt
59b2c2adbb i965: Fix check_aperture calls to cover everything needed for the prim at once.
Previously, since my check_aperture API change, we would check each piece of
state against the batchbuffer individually, but not all the state against the
batchbuffer at once.  In addition to not being terribly useful in assuring
success, it probably also increased CPU load by calling check_aperture many
times per primitive.
2008-10-28 22:52:38 -07:00
Brian Paul
835a9fef05 mesa: include glslcompiler driver in tarball 2008-10-28 18:27:21 -06:00
Brian Paul
1100866aa1 mesa: fix stand-alone glslcompiler build 2008-10-28 17:03:49 -06:00
Eric Anholt
0cade4de4f intel: Don't keep intel->pClipRects, and instead just calculate it when needed.
This avoids issues with dereferencing stale cliprects around intel_draw_buffer
time.  Additionally, take advantage of cliprects staying constant for FBOs and
DRI2, and emit cliprects in the batchbuffer instead of having to flush batch
each time they change.
2008-10-28 13:23:33 -07:00
Gary Wong
e92a457ac0 i965: Allocate temporaries contiguously with other regs in fragment shaders.
This is required for threads to be spawned with correctly sized GRF
register blocks.
2008-10-28 15:03:14 -04:00
Julien Cristau
98fcdf3f49 configure.ac: Add support for gnu/kfreebsd
Check for *-gnu instead of linux* to set DEFINES.
Change some freebsd* checks to *freebsd*.
2008-10-28 11:45:05 -07:00
Eric Anholt
bcfba0d91e i965: Fix compiler warning from unused var. 2008-10-27 11:53:06 -07:00
Eric Anholt
a74b1e149d i965: Remove dead brw->wrap flag. 2008-10-27 11:53:06 -07:00
Eric Anholt
dd17cd600a intel: Use dri_bo_get_tiling to get tiling mode of buffers we get from names.
Previously, we were trying to pass a name to the GEM GET_TILING_IOCTL,
which needs a handle, and failing.  None of our buffers were tiled yet, but
they will be at some point with DRI2 and UXA.
2008-10-27 11:53:06 -07:00
Julien Cristau
0206e20240 Also build the x86-specific dri drivers on kfreebsd (closes: #492894). 2008-10-26 15:58:46 +01:00
Julien Cristau
83a4719056 Update changelog 2008-10-26 15:34:37 +01:00
Ian Romanick
6cfe871c75 Use 3Dnow! x86-64 routines only on processors that support 3Dnow!
Added an x86-64 CPUID function and use it to detect 3Dnow!  If 3Dnow!
is available, use _mesa_3dnow_transform_points4_3d_no_rot,
_mesa_3dnow_transform_points4_perspective,
_mesa_3dnow_transform_points4_2d_no_rot, and _mesa_3dnow_transform_points4_2d.

This fixes long standing bug #8724.
(cherry picked from commit 2b8d8989fb)
2008-10-26 15:23:27 +01:00
Xiang, Haihao
2a877411db intel: GL_FALSE on a BO if it won't be modified when mapping this BO. (thanks Eric). 2008-10-26 06:38:27 +08:00
Xiang, Haihao
ec8076264e i965: don't emit state when dri_bufmgr_check_aperture_space fails.
This ensures there is an unfilled batchbuffer used for emitting states again. Partial fix for #17964.
2008-10-24 16:05:48 +08:00
Xiang, Haihao
f657c81911 intel: fallback for intelEmitCopyBlit.
Use _mesa_copy_rect instead of BLT operation if dri_bufmgr_check_aperture_space
still fails after flushing batchbuffer. Partial fix for #17964.
2008-10-24 15:55:32 +08:00
Brian Paul
8c20c913f8 mesa: version 43 of glext.h 2008-10-23 11:23:36 -06:00
Brian Paul
3efd3b1512 mesa: version 21 of glxext.h 2008-10-23 11:21:32 -06:00
Brian Paul
ea6ddcbe0e mesa: remove calls to _mesa_adjust_image_for_convolution(), use texImage fields
The texImage->Width/Height fields will have the post-convolution width/height.
2008-10-23 10:49:51 -06:00
Brian Paul
95c04cccfe mesa: move convolution image adjustment code for glCopyTexSubImage1/2/3D()
Do it after initial error checking, after we know the texture's internal format.
2008-10-22 07:53:26 -06:00
Brian Paul
9dfd54fa83 mesa: some re-org of glCopyTexSubImage1/2/3D() error checking 2008-10-22 07:48:37 -06:00
Brian Paul
22e442544b mesa: in textore.c, only adjust image for convolution if image is a color format
Makes things consistant with the code in teximage.c.
We only want to apply convolution to color formats (not depth/index formats)
2008-10-22 07:36:33 -06:00
Kristof Ralovich
0970de3171 glx: updated comment 2008-10-21 08:20:43 -06:00
Xiang, Haihao
b4bf9acc32 i915: fix carsh in i830_emit_state. (bug #17766) 2008-10-21 10:30:39 +08:00
Brian Paul
893ea47e44 glxswapcontrol: added -fullscreen option 2008-10-16 14:33:27 -06:00
Brian Paul
9a84d78c18 glxgears: for fullscreen, disable window borders the right way 2008-10-16 14:33:27 -06:00
Roland Scheidegger
73e1193632 fix span issue with really old ddx and non-tcl r100 chips 2008-10-16 16:25:52 +02:00
Brian Paul
a7b24ac02f mesa: fix error codes in _mesa_GetObjectParameterivARB(), bug 17861 2008-10-16 08:23:53 -06:00
Kristian Høgsberg
4830809524 Update DRI2 implementation according to new specification. 2008-10-14 23:07:55 -04:00
Kristian Høgsberg
77c7f90ed4 Revert pointless reindents to avoid merge conflicts.
Why are we reindenting code that's work in progress...
2008-10-14 23:07:42 -04:00
RALOVICH, Kristóf
351de8aecc glx: indent -br -i3 -npcs --no-tabs glxclient.h 2008-10-13 16:53:41 -06:00
RALOVICH, Kristóf
03b471d389 glx: indent -br -i3 -npcs --no-tabs glcontextmodes.h 2008-10-13 16:53:41 -06:00
RALOVICH, Kristóf
843a09cf5c glx: indent -br -i3 -npcs --no-tabs glxextensions.c 2008-10-13 16:53:41 -06:00
RALOVICH, Kristóf
80c83c97fc glx: indent -br -i3 -npcs --no-tabs glxextensions.h 2008-10-13 16:53:41 -06:00
RALOVICH, Kristóf
1d0a9e4377 glx: indent -br -i3 -npcs --no-tabs xfont.c 2008-10-13 16:53:41 -06:00
RALOVICH, Kristóf
4a3ccc6ca5 glx: indent -br -i3 -npcs --no-tabs xf86dristr.h 2008-10-13 16:53:41 -06:00
RALOVICH, Kristóf
4d2a381114 glx: indent -br -i3 -npcs --no-tabs XF86dri.c 2008-10-13 16:53:41 -06:00
RALOVICH, Kristóf
04a810beac glx: indent -br -i3 -npcs --no-tabs xf86dri.h 2008-10-13 16:53:41 -06:00
RALOVICH, Kristóf
4c4cb1b5d1 glx: kill old K&R syntax in XF86dri.c 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
b9a2d35429 glx: indent -br -i3 -npcs --no-tabs vertarr.c 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
64085b2c2c glx: indent -br -i3 -npcs --no-tabs singlepix.c 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
dd0edeb887 glx: indent -br -i3 -npcs --no-tabs single2.c 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
507808875d glx: indent -br -i3 -npcs --no-tabs renderpix.c 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
6bfd57ecde glx: indent -br -i3 -npcs --no-tabs render2.c 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
40c481dc91 glx: indent -br -i3 -npcs --no-tabs pixelstore.c 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
6581071c1d glx: indent -br -i3 -npcs --no-tabs pixel.c 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
cfe7f20d0e glx: indent -br -i3 -npcs --no-tabs packsingle.h 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
0cff716e70 glx: indent -br -i3 -npcs --no-tabs packrender.h 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
68583292b1 glx: indent -br -i3 -npcs --no-tabs indirect_window_pos.c 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
ccc03b427a glx: indent -br -i3 -npcs --no-tabs indirect_vertex_program.c 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
1c916736b8 glx: indent -br -i3 -npcs --no-tabs indirect_vertex_array_priv.h 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
9389aa3c0b glx: indent -br -i3 -npcs --no-tabs indirect_vertex_array.h 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
c868ab3dd1 glx: indent -br -i3 -npcs --no-tabs indirect_vertex_array.c 2008-10-13 16:53:40 -06:00
RALOVICH, Kristóf
39df336635 glx: indent -br -i3 -npcs --no-tabs indirect_transpose_matrix.c 2008-10-13 16:53:39 -06:00
RALOVICH, Kristóf
64d1c10e6c glx: indent -br -i3 -npcs --no-tabs indirect_texture_compression.c 2008-10-13 16:53:39 -06:00
RALOVICH, Kristóf
6020e6e66a glx: indent -br -i3 -npcs --no-tabs glx_query.c 2008-10-13 16:53:39 -06:00
RALOVICH, Kristóf
2d4c26b85e glx: indent -br -i3 -npcs --no-tabs glx_pbuffer.c 2008-10-13 16:53:39 -06:00
RALOVICH, Kristóf
bd6a3d5975 glx: indent -br -i3 -npcs --no-tabs glxhash.c 2008-10-13 16:53:39 -06:00
RALOVICH, Kristóf
39c958944c glx: indent -br -i3 -npcs --no-tabs glxhash.h 2008-10-13 16:53:39 -06:00
RALOVICH, Kristóf
acb7e52430 glx: indent -br -i3 -npcs --no-tabs glxext.c 2008-10-13 16:53:39 -06:00
RALOVICH, Kristóf
3a2d2fcd8a glx: indent -br -i3 -npcs --no-tabs glxcurrent.c 2008-10-13 16:53:39 -06:00
RALOVICH, Kristóf
1293356c60 glx: indent -br -i3 -npcs --no-tabs glxcmds.c 2008-10-13 16:53:39 -06:00
RALOVICH, Kristóf
07c9bd246d glx: indent -br -i3 -npcs --no-tabs glcontextmodes.c 2008-10-13 16:53:39 -06:00
RALOVICH, Kristóf
f76724b767 glx: indent -br -i3 -npcs --no-tabs eval.c 2008-10-13 16:53:39 -06:00
RALOVICH, Kristóf
60aa0918a1 glx: indent -br -i3 -npcs --no-tabs drisw_glx.c 2008-10-13 16:53:39 -06:00
RALOVICH, Kristóf
4e88ae5639 glx: indent -br -i3 -npcs --no-tabs dri_glx.c 2008-10-13 16:53:39 -06:00
RALOVICH, Kristóf
09c889b318 glx: indent -br -i3 -npcs --no-tabs dri_common.h 2008-10-13 16:53:39 -06:00
RALOVICH, Kristóf
4d86228321 glx: indent -br -i3 -npcs --no-tabs dri_common.c 2008-10-13 16:53:38 -06:00
RALOVICH, Kristóf
2e8d62be61 glx: indent -br -i3 -npcs --no-tabs dri2.h 2008-10-13 16:53:38 -06:00
RALOVICH, Kristóf
bca6e79a45 glx: indent -br -i3 -npcs --no-tabs dri2_glx.c 2008-10-13 16:53:38 -06:00
RALOVICH, Kristóf
66cc150770 glx: indent -br -i3 -npcs --no-tabs dri2.c 2008-10-13 16:53:38 -06:00
RALOVICH, Kristóf
f788a8ed69 glx: indent -br -i3 -npcs --no-tabs compsize.c 2008-10-13 16:53:38 -06:00
RALOVICH, Kristóf
ee3a6cec36 glx: indent -br -i3 -npcs --no-tabs clientattrib.c 2008-10-13 16:53:38 -06:00
RALOVICH, Kristóf
58b72103d3 glx: add a line of Emacs helping variables 2008-10-13 16:53:38 -06:00
RALOVICH, Kristóf
61eb4f50eb glx: No need to zero a local variable.
My previous commit e206034863 introduced this.
2008-10-13 16:53:38 -06:00
RALOVICH, Kristóf
0b188d1cdc glx: make INIT_MESA_SPARC more robust
Embed the macro body into do { ... } while(0) .
2008-10-13 16:53:38 -06:00
Xiang, Haihao
c238098bbc i915: Texture instructions use r/t/oC/oD register as texture coordinate.
Fix http://bugs.freedesktop.org/show_bug.cgi?id=16287.
2008-10-13 13:04:04 +08:00
Eric Anholt
5c39bad220 intel: Add acceleration for glDrawPixels(GL_STENCIL_INDEX).
This is nasty because there's no way in GL to output data to the stencil
buffer directly, so we have to do a dance to wrap the depth/stencil buffer
in an ARGB renderbuffer.

Improves performance of several oglconform testcases by better than a factor
of 2.
2008-10-11 03:17:08 -07:00
Brian Paul
24748268a3 mesa: fix asst. issues in _mesa_texstore_argb8888()
If we shift bytes into the texel word (or use the PACK_COLOR_8888 macro),
we don't have to worry about big vs. little endian.  See comments about
texel formats in texformat.h.
Remove an unneeded/incorrect else-if clause that produced wrong results
on big-endian systems.
2008-10-10 16:34:08 -06:00
Brian Paul
bf9d9a9d01 mesa: include needed header 2008-10-10 16:34:08 -06:00
Brian Paul
f863ae1a04 mesa: remove unneeded includes 2008-10-10 16:34:08 -06:00
Brian Paul
85a3bf6dab mesa: fix error codes in _mesa_GetObjectParameterivARB(), bug 17861 2008-10-10 16:34:08 -06:00
Brian Paul
3210a6d6c7 mesa: rename macro params to emphasize that there's no particular color ordering 2008-10-10 16:34:08 -06:00
Brian Paul
f63594bfef mesa: remove unneeded includes 2008-10-10 16:34:08 -06:00
Ian Romanick
e700269441 intel: GLSL 1.20 is broken in Mesa, so disable it in the i965 driver 2008-10-10 11:47:43 -07:00
Eric Anholt
5e9cb42aa6 i965: Add missing intel_pixel_draw.c symlink to fix build. 2008-10-10 09:43:15 -07:00
Eric Anholt
7216679c19 i965: Accelerate depth textures with border color.
The fallback was introduced to fix bug #16697, but made the test it was
fixing run excessively long.
2008-10-09 11:45:58 -07:00
Eric Anholt
91221483a6 i965: Actually hook up the accelerated DrawPixels support. 2008-10-09 10:23:47 -07:00
Eric Anholt
9aec1288ee i915: Accelerate depth textures with border color.
The fallback was introduced to fix bug #16697, but made the test it was
fixing run excessively long.
2008-10-08 23:55:58 -07:00
Brian Paul
a71b1af5ad mesa: vertex emit debug code (disabled) 2008-10-08 09:33:56 -06:00
Brian Paul
5462d447aa mesa: fix vertex format/attribute bug
If the tnl output attributes matches the swsetup input attributes we still
need to check if the desired vertex color type (float vs. chan) has changed
so that we use the right emit functions.

Fixes a conformance failure found with logicop test at pathlevel 3.
2008-10-08 09:33:56 -06:00
Eric Anholt
902727b7e3 mesa: Pass the context to query object delete cb to avoid null dereference. 2008-10-07 18:52:12 -07:00
Eric Anholt
c157cfc637 i965: Add ARB_occlusion_query support. 2008-10-07 18:52:12 -07:00
Eric Anholt
fc19536aa9 intel: Push flushing for cliprects changes down into the cliprects changes.
This lets us short-circuit when we're leaving the same cliprects in place,
which becomes quite common with metaops clears, and may be useful for some of
our FBO paths.
2008-10-07 18:52:12 -07:00
Xiang, Haihao
94d3a30df7 i965: Fix a potential assertion failure. 2008-10-08 09:30:12 +08:00
Brian Paul
7cb723a3fd mesa: pass 'mask', not NULL to renderbuffer->Put functions
Fixes bug 17800.
2008-10-07 16:52:47 -06:00
Brian
4f4147eadd mesa: fix convolve/convolution mix-ups 2008-10-06 17:10:22 -06:00
Brian Paul
f8baad2d25 mesa: set FRAG_BIT_FOGC bit in InputsUsed if FogOption!=GL_NONE 2008-10-06 12:29:29 -06:00
Brian Paul
6e34fc0d37 mesa: adjust texcoords for swrast sprite points.
Fixes glean pointSprite test w/ software rendering
2008-10-06 11:34:01 -06:00
Brian Paul
145d49838f mesa: fix static library construction
If the .a is made of other .a files, extract the objects from the later.
2008-10-06 11:01:31 -06:00
Brian Paul
b0ca50bd38 mesa: updated _mesa_delete_query() comments 2008-10-06 09:32:33 -06:00
Brian Paul
382911bdbc mesa: add missing GLcontext param to _mesa_delete_query().
Fixes vtk crash and others.
2008-10-06 09:26:45 -06:00
Eric Anholt
91d0020eec i915: Refine the texture indirect lookup accounting.
Without this, we would reject programs which sampled multiple times from
registers defined in the same phase (block of instructions with the same
texture indirection count), as each sample would count as a new phase
beginning.  Instead, keep track of which phases registers were written in,
and only bump phase when we're reading from one generated in this phase.

On the other hand, we failed to count oC or oD texture samples as being new
phases.

Bug #17865.
2008-10-04 18:40:32 -07:00
Ian Romanick
db9ba91971 intel: Don't advertise unsupported extensions on pre-965 hardware
Move GL_ARB_texture_non_power_of_two and GL_ATI_separate_stencil
from the generic extension list to the 965-specific list.  Neither
extension is supported on i830-class hardware, and
GL_ATI_separate_stencil is not supported on i915-class hardare.
GL_ARB_texture_non_power_of_two is supported on i915-class hardare and
is already in the i915-specific list.
2008-10-03 12:16:04 -07:00
Ian Romanick
4741dbcbbc Unify ARB_depth_texture and SGIX_depth_texture
The ARB extension is a superset of the older SGIX extension.  Any
hardware that can support the SGIX version can also support the ARB
version.  In Mesa, any driver that supports one also supports the
other.  This unification just simplifies some bits of code.
2008-10-01 20:38:10 -07:00
Eric Anholt
17fdd1ab3b i965: sampler default color ends up in texture cache, not instructions.
See volume 4, SAMPLER_BORDER_COLOR_STATE programming notes.
2008-10-01 16:59:16 -07:00
Eric Anholt
df6ae3f0a3 i965: Fix overwriting of depth override for SetTexOffset.
Fixes black borders around windows in compiz.  Bug #17233.
2008-10-01 14:15:17 -07:00
Ian Romanick
08b9e29c1d intel: Clean-up the extension string madness!
- Sort extensions by ARB, then EXT, then vendor by name
- Remove redundant (only one of GL_{ARB,EXT,NV}_texture_rectangle) or
  duplicate extension strings
2008-09-29 18:50:05 -07:00
Ian Romanick
3ab4b2066f GLSL: Implement GL_OBJECT_TYPE_ARB query
The GL_OBJECT_TYPE_ARB query is handled directly in
_mesa_GetObjectParamterivARB because it is only supported in the
extension version of the shanding language API.  glGetProgramiv and
glGetShaderiv should not accept this enum.
2008-09-29 12:30:05 -07:00
Ian Romanick
905d8e0742 GLSL: Implement _mesa_get_handle
Implementing _mesa_get_handle in using
glGetIntegerv(GL_CURRENT_PROGRAM, ...) allows glGetHandleARB to work.
2008-09-29 12:27:00 -07:00
Ian Romanick
d806d451e6 GLSL: AttachShader returns INVALID_OPERATION for repeated attach
The GL_ARB_shader_objects spec says that glAttachShaderARB is supposed
to return GL_INVALID_OPERATION if a shader is attached to a program
where it is already attached.  _mesa_attach_shader perviously returned
without error in this case.
2008-09-29 12:18:06 -07:00
Jouk Jansen
fc13269b82 mesa: asst updates for VMS 2008-09-29 08:35:05 -06:00
Shunichi Fuji
e095d5812a mesa: drop calloc from _mesa_get_fixed_func_vertex_program
Signed-off-by: Shunichi Fuji <palglowr@gmail.com>
2008-09-29 10:38:45 +01:00
Ian Romanick
2b8d8989fb Use 3Dnow! x86-64 routines only on processors that support 3Dnow!
Added an x86-64 CPUID function and use it to detect 3Dnow!  If 3Dnow!
is available, use _mesa_3dnow_transform_points4_3d_no_rot,
_mesa_3dnow_transform_points4_perspective,
_mesa_3dnow_transform_points4_2d_no_rot, and _mesa_3dnow_transform_points4_2d.

This fixes long standing bug #8724.
2008-09-28 20:32:05 -07:00
Ian Romanick
b5d59222cc Remove TNL-to-VP tracking from i965
The i965 driver previously had it's own set of code to convert
fixed-function TNL state to a vertex program.  Core Mesa has code to
do this, so there is no reason to duplicate that effort in the driver.
In fact, this duplication leads to bugs when other aspects of the Mesa
infrastructure change.
2008-09-28 20:32:05 -07:00
Tobias Jakobi
2e5d717007 glapi: add DISPATCH_FUNCTION_SIZE 2008-09-27 08:51:45 +01:00
Tobias Jakobi
a23026effc glapi: add gl_dispatch_functions_start and end 2008-09-27 08:47:55 +01:00
Eric Anholt
7d99ddcb2b intel: Fix a number of memory leaks on context destroy. 2008-09-26 15:39:20 -07:00
Jeremy Huddleston
8338cc25f9 configs: darwin: Don't build GLw
(cherry picked from commit ef688ba1ee366a8937a41075cbe8b76a9bf75013)
2008-09-26 12:37:31 -07:00
Brian Paul
a4a5a37f27 mesa: remove invalid assertions that programs have parameters
Fixes failure with demos/fplight.c
2008-09-26 07:45:06 -06:00
Brian Paul
4bc39c58eb mesa: fix assertion in _mesa_reference_program() 2008-09-26 07:40:45 -06:00
Brad King
ee80c64be8 mesa: fix param indexing 2008-09-26 07:40:05 -06:00
Brian
1e3a44fab0 mesa: fix cast/conversion for optional code 2008-09-25 19:57:34 -06:00
Brian Paul
b3c3bc63f0 mesa: fix typo (s/feadback/feedback/). Fixes broken selection/feedback. 2008-09-25 18:55:52 -06:00
Brian Paul
8124faf89d mesa: fix float->int mapping for glGetIntegerv(GL_DEPTH_CLEAR_VALUE) 2008-09-25 11:54:00 -06:00
Brian Paul
6222eb3fcd mesa: fix some VBO buffer object issues
The VBO module may use a real VBO or a malloc'd buffer for vertex storage.
Be careful not to accidentally replace the later with the former when drawing.
Check if using a real VBO at destroy time to prevent a double-free.
2008-09-25 11:03:46 -06:00
Sam Hocevar
507ef82077 mesa: fix function params to match prototypes 2008-09-25 09:58:27 -06:00
Sam Hocevar
7be5411ce6 mesa: prevent the slang code generator from aborting when faced with a sampler variable redeclaration. 2008-09-25 09:53:09 -06:00
Sam Hocevar
561787e697 i965: support for sin() and cos() in vertex shaders. 2008-09-25 09:49:36 -06:00
Sam Hocevar
831bfb9053 i965: more meaningful message for unsupported opcodes. 2008-09-25 09:49:18 -06:00
Eric Anholt
c5945c2d17 intel: Fix clears to depth_stencil texture attachments.
Broken by 0adfd10210, showed up as an assertion
failure in a software fallback in the shadowtex demo when we failed to
recognize the texture format.
2008-09-24 15:13:19 -07:00
Brian
1fe385fdc9 set SamplerUnit[] entry in load_texture() just to be safe
(cherry picked from commit fce4612f8a)
2008-09-24 10:15:07 -07:00
Brian
dff0b0e772 use PROGRAM_CONSTANT instead of PROGRAM_STATE_VAR when generating immediates/literals
(cherry picked from commit fdc8636bdc)
2008-09-24 10:13:46 -07:00
Brian
9b7e5a51f4 set program->SamplersUsed bit when using a texture instruction 2008-09-24 10:13:31 -07:00
Brian
93fef22d05 Remove ctx field from texenvprog_cache 2008-09-24 10:11:37 -07:00
Brian
fb3c41f504 include programopt.h
(cherry picked from commit 83fad68ec1)
2008-09-24 10:04:31 -07:00
Brian
c81cce7831 Disable vertex shader fog, compute fog in fragment shader. 2008-09-24 10:04:17 -07:00
Brian
19d77d6cfa temporarily set the FRAG_BIT_FOGC bit in InputsRead when fog is enabled
(cherry picked from commit 63be96bdc7)
2008-09-24 10:03:27 -07:00
Julien Cristau
84bb8fc695 Prepare changelog for upload 2008-09-24 14:28:28 +02:00
Julien Cristau
872cb1a0dd intel: don't warn about TTM init failure. 2008-09-24 14:25:30 +02:00
Julien Cristau
ee80a3a623 Remove the build-dep on dri2proto, DRI2 support has been removed. 2008-09-24 12:55:15 +02:00
Keith Whitwell
8e7d941d7a mesa: fix main/ prefix in include 2008-09-23 21:08:50 -07:00
Keith Whitwell
33fef8be82 vbo: unmap and remap immediate vbo before/after each draw.
Also use BufferData(NULL) to get fresh storage and avoid synchronous
operation where we would have to flush and wait for the fence after each
draw because of the map.

This will chew through a whole load of buffer space on small draws, so
it isn't a proper solution.  Need to support a no-fence or append mapping
mode to do this right, or use user buffers.
2008-09-23 18:26:17 -07:00
Brian
6f765fbde4 added vbo_use_buffer_objects() to specify that immediate mode data should be put into bufferobjects 2008-09-23 18:26:00 -07:00
Keith Whitwell
b36bc54d3c vbo: seed initial max_element value with a more likely candidate
(cherry picked from commit 026e7731e5)
2008-09-23 18:05:48 -07:00
Brian Paul
9acf207277 mesa: s/GL_POLYGON+1/PRIM_OUTSIDE_BEGIN_END/
(cherry picked from commit 8a369b909a)
2008-09-23 17:36:01 -07:00
Brian Paul
5b98236e75 mesa: glsl: fix glGetUniform for matrix queries
(cherry picked from commit 7a6eba54d0)
2008-09-23 17:34:59 -07:00
Brian Paul
eda291e316 mesa: glsl: fix a number of glUniform issues
Additional error checking.
Allow setting elements of uniform arrays.  This involves encoding both
a uniform location and a parameter offset in the value returned by
glGetUniformLocation().
Limit glUniform[if]v()'s count to the size of the uniform array.
When setting bool-valued uniforms, convert all float/int values to 0 or 1.
2008-09-23 17:33:49 -07:00
Brian Paul
bda6ad273d mesa: glsl: fix error check in get_uniformfv()
(cherry picked from commit 18cd9c229a)
2008-09-23 17:33:19 -07:00
José Fonseca
452a592ca4 mesa: Apply MSVC portability fixes from Alan Hourihane. 2008-09-23 17:20:38 -07:00
Brian Paul
9118b02fd0 mesa: update program->NumAddressRegs field in _slang_update_inputs_outputs() 2008-09-23 17:11:25 -07:00
Brian Paul
c79779aff0 mesa: add fwd decl of fill_in_entrypoint_offset()
(cherry picked from commit b1eff0228b)
2008-09-23 17:09:24 -07:00
Brian Paul
ec76910187 mesa: new gl_fragment_program fields indicating use of fog, front-facing, point coord
(cherry picked from commit d7a7b0a10d)
2008-09-23 17:01:05 -07:00
Brian
03bafd1f9f Added new _mesa_clip_copytexsubimage() function to do avoid clipping down in the drivers.
This should probably be pulled into main-line Mesa...
(cherry picked from commit 324ecadbfd)
2008-09-23 16:59:56 -07:00
Brian Paul
a97226352f mesa: refactor: move GetProcAddress code from glapi.c into new glapi_getproc.c file 2008-09-23 16:56:23 -07:00
Eric Anholt
d533da2db8 i965: Cope with batch getting flushed in the middle of batchbuffer emits.
This isn't required for GEM (at least, yet), but the check_aperture code
for non-GEM results in batch getting flushed during emit.  brw_state_upload
restarts state emits, but a bunch of the state emit functions were assuming
that they would be called exactly once, after prepare and before new_batch.

Bug #17179.
2008-09-23 15:53:29 -07:00
Eric Anholt
4b038e24b0 intel: Add missing include files for meta drawpixels since mesa shuffling. 2008-09-23 15:32:41 -07:00
Eric Anholt
f85ea6837d intel: Replace pbo-only drawpixels function with a generic Mesa metaops.
Improves performance of some oglconform regression tests 9x.
2008-09-23 13:31:19 -07:00
Eric Anholt
15487e46a2 i915: Fix overlapping CopyPixels with negative pixel zoom.
Fixes a failure in pixel-pos.c oglconform test.
2008-09-23 13:31:12 -07:00
Eric Anholt
b9532f078a i915: fix crash in flush_prim -> wait_flips -> flush_batch -> flush_prim. 2008-09-23 13:30:03 -07:00
Timo Aaltonen
e700c5ad99 Update the changelog, refresh patch 04. 2008-09-23 16:09:00 +03:00
Timo Aaltonen
08c0ec7a89 Merge commit 'mesa_7_2' into debian-experimental
Conflicts:

	include/GLES/egl.h
2008-09-23 16:06:40 +03:00
Ian Romanick
2511d57fa4 i965: Adapt to new TNL program tracking semantics
This fixes bugzilla #17718.
2008-09-22 17:23:40 -07:00
Michel Dänzer
ed4c6cbe01 r300: Adapt to the removal of _tnl_ProgramCacheInit() and friends. 2008-09-22 11:49:34 +02:00
Michel Dänzer
78f4a695ad Remove incorrect test from mmAllocMem.
0 is a perfectly valid alignment shift, see e.g. driTexturesGone() which was
broken by this.
2008-09-22 11:48:26 +02:00
Brian Paul
6fd15dd806 mesa: allow for extra per-context init
(cherry picked from commit 815cdcfbc0)
2008-09-21 22:13:57 -07:00
Brian Paul
1b7e909845 mesa: texture crop rect state
(cherry picked from commit c01fbc7866)
2008-09-21 22:13:57 -07:00
Brian Paul
93c90d34d1 mesa: set point state
(cherry picked from commit af3d9dba56)
2008-09-21 22:13:57 -07:00
Brian Paul
868c09a267 mesa: fix some feature tests
(cherry picked from commit 74b14fe6dd)
2008-09-21 22:13:57 -07:00
Brian Paul
8122ab2dfd mesa: fix some pixel transfer state tests for depth formats
(cherry picked from commit 966e199e40)
2008-09-21 22:13:57 -07:00
Brian Paul
6bc8749cd5 mesa: fix issues causing warnings on Windows 2008-09-21 22:13:57 -07:00
Michal Krol
9614eac85d mesa: Silence compiler warnings on Windows. 2008-09-21 22:13:57 -07:00
Brian Paul
ce1685ce94 mesa: comments about vectors vs components 2008-09-21 22:13:57 -07:00
Brian Paul
eb10fa3ed6 mesa: remove debug code 2008-09-21 22:13:57 -07:00
Brian Paul
6246dd890f mesa: implement glGetUniformiv() with new ctx->Driver function
The old implementation could overwrite the caller's param buffer.
2008-09-21 22:13:56 -07:00
Brian Paul
48cba703fa mesa: added case for fixed pt 2008-09-21 22:13:56 -07:00
Brian Paul
1cf2c8a043 mesa: point size arrays 2008-09-21 22:13:56 -07:00
José Fonseca
f8e50dd796 mesa: Replace deprecated __MSC__ macro. 2008-09-21 22:13:56 -07:00
José Fonseca
60325331a8 mesa: More signed/unsigned float/integer fixes. 2008-09-21 22:13:56 -07:00
José Fonseca
457d7218b8 mesa: Use appropriate unsigned/signed, float/integer types. 2008-09-21 22:13:56 -07:00
José Fonseca
88f729e4ec mesa: Use _mesa_bsearch. 2008-09-21 22:13:56 -07:00
José Fonseca
baa76e9aa2 mesa: bsearch implementation for WinCE. 2008-09-21 22:13:56 -07:00
José Fonseca
2e8af5ffcf mesa: ASSERT macro is already defined by WinCE headers.
Even when just the standard headers are used....
2008-09-21 22:13:56 -07:00
Brian Paul
c115616bda mesa: init ctx->RenderMode 2008-09-21 22:13:56 -07:00
Brian Paul
d17485fef9 mesa: GL_BYTE vertex/texcoord arrays 2008-09-21 22:13:55 -07:00
Brian Paul
394c1d1c53 mesa: initial support for fixed-pt vertex arrays 2008-09-21 22:13:55 -07:00
Brian Paul
bb00f09f1b mesa: refactor: move initialization of DefaultPacking state. 2008-09-21 22:13:55 -07:00
Brian Paul
9b8b58b79a mesa: fix errors in prev commit 2008-09-21 22:13:55 -07:00
Brian Paul
3a4bed8f08 mesa: revamp glBlendFunc loopback 2008-09-21 22:13:55 -07:00
Brian Paul
85f553d3c1 mesa: fix some FEATURE_x tests 2008-09-21 22:13:55 -07:00
Brian Paul
b51d73dd94 mesa: test for FEATURE_ATI_fragment_shader 2008-09-21 22:13:55 -07:00
Brian Paul
715715e230 mesa: fix ReadBuffer initialization 2008-09-21 22:13:55 -07:00
Brian Paul
cd4d4f590f mesa: FEATURE_dispatch to control dispatch table usage 2008-09-21 22:13:55 -07:00
Brian Paul
2dbc515a66 mesa: move some glapi bits around
Move _glapi_proc typedef from glapitable.h to glapi.h
Also, don't include glapitable.h from glapi.h
Before we were including the huge glapitable.h file in every .c file.
2008-09-21 22:13:55 -07:00
Brian Paul
d22ef6bcba mesa: remove some temp debug code 2008-09-21 22:13:54 -07:00
Brian Paul
4e3ae76fea mesa: check FEATURE_ARB_occlusion_query 2008-09-21 22:13:54 -07:00
Brian Paul
049a59a87c mesa: fix typo: s/stacks/stack/ 2008-09-21 22:13:54 -07:00
Brian
74c64fa748 code refactoring, new next_mipmap_level_size() function
(cherry picked from commit c22d9152e3)
2008-09-21 22:13:54 -07:00
Brian
e93243f8b7 added _mesa_tex_target_to_face()
(cherry picked from commit b52ce6341f)
2008-09-21 22:13:54 -07:00
Brian
abb465cdc7 refactor code, export _mesa_generate_mipmap_level() 2008-09-21 22:13:54 -07:00
Brian
12dc9c99b9 move _mesa_format_to_type_and_comps() to texformat.c
(cherry picked from commit 42eac65da4)
2008-09-21 22:13:54 -07:00
Keith Whitwell
b082002379 mesa: pull in mipmap.c changes from gallium-0.2 2008-09-21 22:13:54 -07:00
Brian Paul
facfb44d37 mesa: remove unneeded #include
(cherry picked from commit 6363960db5)
2008-09-21 22:13:54 -07:00
Brian Paul
ddd630ef90 mesa: refactor: move various ENUM_TO_x macros into macros.h 2008-09-21 22:13:53 -07:00
Brian Paul
ae1fdc1523 mesa: refactor: move glTexParameter-related functions into new texparam.c file 2008-09-21 22:13:53 -07:00
Brian Paul
11ebfd22bb mesa: refactor: move glTexEnv-related functions into new texenv.c file
(cherry picked from commit 7ecac78ab5)
2008-09-21 22:13:52 -07:00
Brian Paul
10db6c2d81 mesa: refactor: move glTexGen-related functions into new texgen.c file
(cherry picked from commit 27049189d6)
2008-09-21 22:13:52 -07:00
Brian Paul
4fc71f3ec2 mesa: refactor: fix some FEATURE_ typos, mistakes
(cherry picked from commit e4cfe0854a)
2008-09-21 22:13:52 -07:00
Keith Whitwell
34a61c66fd mesa: refactor: move #define FEATURE flags into new mfeatures.h file
Also, check the FEATURE flags in many places.
(cherry picked from commit 40d1a40f29)

Conflicts:

	src/mesa/main/config.h
	src/mesa/main/context.c
	src/mesa/main/texobj.c
	src/mesa/main/texstate.c
	src/mesa/main/texstore.c
2008-09-21 22:13:52 -07:00
Brian Paul
24172fe595 mesa: refactor: move _mesa_update_minmax/histogram() into image.c
(cherry picked from commit eded7f010d)
2008-09-21 22:13:52 -07:00
Brian Paul
c132e2b1db mesa: refactor: move multisample-related functions into new multisample.c file 2008-09-21 22:13:52 -07:00
Brian Paul
e48defc980 mesa: refactor: move _mesa_resizebuffers(), _mesa_ResizeBuffersMESA() to framebuffer.c
(cherry picked from commit 9091015a97)
2008-09-21 22:13:51 -07:00
Brian Paul
5ab1d0acea mesa: refactor: move glClear, glClearColor into new clear.c file. 2008-09-21 22:13:51 -07:00
Brian Paul
55e341c4c2 mesa: refactor: move scissor functions into new scissor.c file
(cherry picked from commit 4be7296bfc)
2008-09-21 22:13:51 -07:00
Brian Paul
18d2822905 mesa: refactor: move pixel map/scale/bias code into image.c
pixel.c is just the API-related code now.
2008-09-21 22:13:51 -07:00
Brian Paul
533c1dbe75 mesa: refactor: new _mesa_init_pixelstore() function
(cherry picked from commit 5f91007f99)
2008-09-21 22:13:51 -07:00
Brian Paul
c9e5671691 mesa: refactor: move _mesa_init_exec_table() into new api_exec.c file
(cherry picked from commit b36e6f0baf)
2008-09-21 22:13:51 -07:00
Brian Paul
28876dd511 mesa: refactor: move glReadPixels code into new readpix.c file 2008-09-21 22:13:51 -07:00
Brian
87534210bb Add some FLUSH_CURRENT() calls.
Without these we can find ourselves in _mesa_load_state_parameters()
computing derived lighting/material values whhen the current material
properties haven't been updated from the VBO.
This may be a somewhat wide-spread problem that needs more attention...
(cherry picked from commit 49adf51eee)
2008-09-21 22:13:51 -07:00
Brian Paul
411d6672a6 mesa: refactor: move glPixelStore function into new pixelstore.c file 2008-09-21 22:13:51 -07:00
Brian Paul
9228f1c881 mesa: remove EXT/NV suffixes from _mesa_PointParameter functions 2008-09-21 22:13:50 -07:00
José Fonseca
d1e1a76f62 glut: Remove EOF characters. 2008-09-22 12:09:58 +09:00
Benjamin Close
7c1fda71ac i965: fix compilation
Found By: Tinderbox
2008-09-22 12:04:16 +09:30
Chris Rankin
a7573d805e Fix X86 compilation. 2008-09-21 23:56:17 +02:00
Keith Whitwell
45efcc44c7 Remove CVS keywords.
Cherry-picked from gallium-0.1

Conflicts:

	src/glu/sgi/libnurbs/interface/bezierEval.h
	src/glu/sgi/libnurbs/interface/bezierPatch.h
	src/glu/sgi/libnurbs/interface/bezierPatchMesh.h
	src/glu/sgi/libnurbs/internals/dataTransform.h
	src/glu/sgi/libnurbs/internals/displaymode.h
	src/glu/sgi/libnurbs/internals/sorter.h
	src/glu/sgi/libnurbs/nurbtess/definitions.h
	src/glu/sgi/libnurbs/nurbtess/directedLine.h
	src/glu/sgi/libnurbs/nurbtess/gridWrap.h
	src/glu/sgi/libnurbs/nurbtess/monoChain.h
	src/glu/sgi/libnurbs/nurbtess/monoPolyPart.h
	src/glu/sgi/libnurbs/nurbtess/monoTriangulation.h
	src/glu/sgi/libnurbs/nurbtess/partitionX.h
	src/glu/sgi/libnurbs/nurbtess/partitionY.h
	src/glu/sgi/libnurbs/nurbtess/polyDBG.h
	src/glu/sgi/libnurbs/nurbtess/polyUtil.h
	src/glu/sgi/libnurbs/nurbtess/primitiveStream.h
	src/glu/sgi/libnurbs/nurbtess/quicksort.h
	src/glu/sgi/libnurbs/nurbtess/rectBlock.h
	src/glu/sgi/libnurbs/nurbtess/sampleComp.h
	src/glu/sgi/libnurbs/nurbtess/sampleCompBot.h
	src/glu/sgi/libnurbs/nurbtess/sampleCompRight.h
	src/glu/sgi/libnurbs/nurbtess/sampleCompTop.h
	src/glu/sgi/libnurbs/nurbtess/sampleMonoPoly.h
	src/glu/sgi/libnurbs/nurbtess/sampledLine.h
	src/glu/sgi/libnurbs/nurbtess/searchTree.h
	src/glu/sgi/libnurbs/nurbtess/zlassert.h
	src/glu/sgi/libutil/error.c
	src/glu/sgi/libutil/glue.c
	src/glu/sgi/libutil/gluint.h
	src/glu/sgi/libutil/project.c
	src/glu/sgi/libutil/registry.c
	src/glx/x11/glxclient.h
	src/glx/x11/glxext.c
	src/mesa/drivers/dri/ffb/ffb_dd.h
	src/mesa/drivers/dri/ffb/ffb_points.h
	src/mesa/drivers/dri/gamma/gamma_context.h
	src/mesa/drivers/dri/gamma/gamma_macros.h
	src/mesa/drivers/dri/i810/i810context.h
	src/mesa/drivers/dri/r128/r128_dd.h
	src/mesa/drivers/dri/tdfx/tdfx_dd.h
2008-09-21 11:00:44 -07:00
José Fonseca
64dc397d8b mesa: Prefix main includes with dir to avoid conflicts.
Eliminate a couple of differences with gallium-0.2
2008-09-21 10:48:40 -07:00
Keith Whitwell
2ea3ef9a80 mesa: remove dead file 2008-09-21 10:34:04 -07:00
Keith Whitwell
c07e274f44 mesa: add explict float casts 2008-09-21 10:31:15 -07:00
Keith Whitwell
32ef6e7583 mesa: move fixed function vertex program builder from tnl to core mesa
Also unify caching of fragment and vertex programs in shader/prog_cache.c`

Brought across from gallium-0.2
2008-09-21 09:46:00 -07:00
Brian Paul
e019ead5d7 mesa: add parenthesis
(cherry picked from commit c366fd83b6)
2008-09-21 09:45:41 -07:00
Keith Whitwell
5a46e17671 mesa: standardize on C99's uint*_t instead of u_int*_t 2008-09-21 09:45:00 -07:00
José Fonseca
3474e9de92 mesa: Remove assyntax.h include from generated matypes.h.
matypes.h doesn't really depend on assyntax.h; assyntax.h is only present
on x86; and this way we remove the need of grep being available (which is
relevant for scons and non-unix platforms).
(cherry picked from commit fc286ff3ba)
2008-09-21 09:44:37 -07:00
Keith Whitwell
6b146214dc mesa: move rastpos helper to tnl 2008-09-21 09:44:30 -07:00
Keith Whitwell
7ce597508e mesa: improved driver query interface
Brought over from gallium-0.2 branch.
2008-09-21 09:44:25 -07:00
Brian Paul
35fe0e56e6 mesa: docs: remove parenthesis 2008-09-20 09:28:22 -06:00
Brian Paul
69e5311ad3 mesa: set 7.2 version for tarballs 2008-09-20 09:24:17 -06:00
Brian Paul
e884c4db2b mesa: prep for 7.2 release 2008-09-20 09:23:50 -06:00
Adam Jackson
e681bee04e Update to SGI FreeB 2.0.
Under the terms of version 1.1, "once Covered Code has been published
under a particular version of the License, Recipient may, for the
duration of the License, continue to use it under the terms of that
version, or choose to use such Covered Code under the terms of any
subsequent version published by SGI."

FreeB 2.0 license refers to "dates of first publication".  They are here
taken to be 1991-2000, as noted in the original license text:

 ** Original Code. The Original Code is: OpenGL Sample Implementation,
 ** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
 ** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
 ** Copyright in any portions created by third parties is as indicated
 ** elsewhere herein. All Rights Reserved.

Official FreeB 2.0 text:

http://oss.sgi.com/projects/FreeB/SGIFreeSWLicB.2.0.pdf

As always, this code has not been tested for conformance with the OpenGL
specification.  OpenGL conformance testing is available from
http://khronos.org/ and is required for use of the OpenGL logo in
product advertising and promotion.
2008-09-20 09:21:34 -06:00
Julien Cristau
07c1fcc604 Prepare changelog for upload 2008-09-20 16:32:02 +02:00
Adam Jackson
dc8058c337 Update to SGI FreeB 2.0.
Under the terms of version 1.1, "once Covered Code has been published
under a particular version of the License, Recipient may, for the
duration of the License, continue to use it under the terms of that
version, or choose to use such Covered Code under the terms of any
subsequent version published by SGI."

FreeB 2.0 license refers to "dates of first publication".  They are here
taken to be 1991-2000, as noted in the original license text:

 ** Original Code. The Original Code is: OpenGL Sample Implementation,
 ** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
 ** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
 ** Copyright in any portions created by third parties is as indicated
 ** elsewhere herein. All Rights Reserved.

Official FreeB 2.0 text:

http://oss.sgi.com/projects/FreeB/SGIFreeSWLicB.2.0.pdf

As always, this code has not been tested for conformance with the OpenGL
specification.  OpenGL conformance testing is available from
http://khronos.org/ and is required for use of the OpenGL logo in
product advertising and promotion.
2008-09-19 17:16:53 -04:00
Julien Cristau
7959b95efa Update debian/copyright to the SGI Free Software License B, version 2.0.
It now mirrors the free X11 license used by X.Org (closes: #368560).
http://www.sgi.com/company_info/newsroom/press_releases/2008/september/opengl.html
2008-09-19 18:03:59 +02:00
Brian
19d9c81b8c glx: re-add glapi/ path 2008-09-18 21:22:08 -06:00
Brian
cfc4b4c989 mesa: remove unneeded s_drawpix.h header 2008-09-18 20:31:05 -06:00
Brian
4eb95ce807 glx: added "glapi/" prefix to include 2008-09-18 20:27:16 -06:00
Chris Rankin
8d41e4536d mesa: fix asst path/include mistakes in prev commits 2008-09-18 16:48:11 -06:00
Brian Paul
58dce864e6 mesa: fix null ptr deref bug in _tnl_InvalidateState(), bug 15834 2008-09-18 15:29:57 -06:00
Brian Paul
3dd48d903f document _tnl_InvalidateState() fix 2008-09-18 15:28:31 -06:00
Brian Paul
e0ea4337fc mesa: fix null ptr deref bug in _tnl_InvalidateState(), bug 15834 2008-09-18 15:27:55 -06:00
Brian Paul
ecadb51bbc mesa: added "main/" prefix to includes, remove some -I paths from Makefile.template 2008-09-18 15:17:05 -06:00
Brian Paul
374e7fd6cc mesa: prefix more #includes with "main/" 2008-09-18 13:46:47 -06:00
Brian Paul
06370a91b3 mesa: remove a bunch of -I paths from INCLUDE_DIRS 2008-09-18 13:34:57 -06:00
Brian Paul
a25e1aa0aa glx: remove #include "glheader.h" lines
Was only used to get the PUBLIC/USED macros.
Also, replace "GL_FALSE" with "False" in a couple places.
2008-09-18 13:26:30 -06:00
Brian Paul
3537da87de glx: remove depency on glheader.h and GLboolean type in XF86DRI code
Return Bool instead of GLboolean to match other functions.
Define PUBLIC/USED macros locally.
2008-09-18 13:23:06 -06:00
Brian Paul
bbd287103d mesa: prefix a bunch of #include lines with "main/".
This is another step toward removing a whole bunch of -I flags from
the cc commands.  Still need to address driver code...
2008-09-18 12:26:54 -06:00
Brian Paul
5e530d8384 mesa: fix bug in previous changes to _slang_resolve_attributes() 2008-09-17 09:13:55 -06:00
Brian Paul
6290d7fd29 mesa: fix bug in previous changes to _slang_resolve_attributes() 2008-09-17 09:13:28 -06:00
Eric Anholt
904f31a624 intel: Destroy bufmgr in screen destroy, not context.
Caused server crashes on second context creation since
7e0bbdcf03.

Bug #17600.
2008-09-16 17:02:41 -07:00
Brian Paul
84ad182ab8 document glBindAttribLocation fixes 2008-09-16 16:37:17 -06:00
Brian Paul
27341a97a1 mesa: rework GLSL vertex attribute binding
Calls to glBindAttribLocation() should not take effect until the next time
that glLinkProgram() is called.
gl_shader_program::Attributes now just contains user-defined bindings.
gl_shader_program::VertexProgram->Attributes contains the actual/final bindings.
2008-09-16 16:28:36 -06:00
Brian Paul
a155ead515 mesa: rework GLSL vertex attribute binding
Calls to glBindAttribLocation() should not take effect until the next time
that glLinkProgram() is called.
gl_shader_program::Attributes now just contains user-defined bindings.
gl_shader_program::VertexProgram->Attributes contains the actual/final bindings.
2008-09-16 15:58:05 -06:00
Brian Paul
5b0f652456 mesa: fix display list regression (check if save->prim_count > 0 in vbo_save_EndList()) 2008-09-16 13:32:13 -06:00
Brian Paul
d43951192b mesa: fix display list regression (check if save->prim_count > 0 in vbo_save_EndList()) 2008-09-16 13:23:01 -06:00
Brian Paul
1be50e1638 fix msaa enable/disable bug 2008-09-15 17:15:51 -06:00
Brian Paul
9d48a7832b mesa: fix MSAA enable state in update_multisample() 2008-09-15 17:14:53 -06:00
Brian Paul
4fefa29d8c mesa: fix MSAA enable state in update_multisample() 2008-09-15 17:14:41 -06:00
Brian Paul
ef479d9f2a document display list bug fix 2008-09-15 09:22:07 -06:00
Brian Paul
fc04604856 mesa: remove some assertions that are invalid during context tear-down 2008-09-15 09:20:30 -06:00
Keith Whitwell
ef2bd7860f mesa: get another class of degenerate dlists working
Primitive begin in one dlist, end in another.
2008-09-15 09:20:23 -06:00
Brian Paul
d36f4ef16b mesa: remove some assertions that are invalid during context tear-down 2008-09-15 09:07:32 -06:00
Keith Whitwell
bd953e872f mesa: get another class of degenerate dlists working
Primitive begin in one dlist, end in another.
2008-09-15 13:49:04 +01:00
Keith Whitwell
a30d2c5727 add dlist-degenerate test case 2008-09-15 13:49:04 +01:00
Shane Blackett
dca8b4c964 glut: s/glut_fbc.c/glut_fcb.c/ 2008-09-14 17:51:53 -06:00
Shane Blackett
641b80275b glut: s/glut_fbc.c/glut_fcb.c/ 2008-09-14 17:51:01 -06:00
Brian Paul
419353dc2f mesa: Makefile: 7.2 release candidate 1 2008-09-13 16:06:12 -06:00
Brian Paul
38d3b2262b mesa: documentation updates for 7.2 release 2008-09-13 14:43:54 -06:00
Brian Paul
4db2a7f36c updated Cell driver info 2008-09-13 14:39:39 -06:00
Brian Paul
1145042fd2 Mesa: version bumps for 7.2 release 2008-09-13 14:36:35 -06:00
Brian Paul
772131280a document 7.2 bug fixes, etc 2008-09-13 14:36:17 -06:00
Jakub Bogusz
68a19e353e tdfx: fix crash and lack of visuals bug 2008-09-13 14:35:02 -06:00
Jakub Bogusz
ee913c0fcc tdfx: fix crash and lack of visuals bug 2008-09-13 14:34:51 -06:00
Guillaume Melquiond
cd1804c43a i915: fix himask constant init for 64-bit build 2008-09-13 14:26:35 -06:00
Guillaume Melquiond
253784d45e glx: fix 64-bit datatype issue 2008-09-13 14:26:25 -06:00
Guillaume Melquiond
463d19d477 mesa: return after _mesa_problem() calls 2008-09-13 14:26:18 -06:00
Guillaume Melquiond
6e4fd90ca5 mesa: #include <stdio.h> 2008-09-13 14:26:13 -06:00
Guillaume Melquiond
06188c0c5c remove invalid XDestroyWindow() call 2008-09-13 14:26:06 -06:00
Guillaume Melquiond
dec9097647 silence warning 2008-09-13 14:25:59 -06:00
Guillaume Melquiond
e234339dba GLU: fix asst warnings 2008-09-13 14:25:53 -06:00
Guillaume Melquiond
87ccb9504d i915: fix himask constant init for 64-bit build 2008-09-13 14:25:02 -06:00
Guillaume Melquiond
811d8b86eb glx: fix 64-bit datatype issue 2008-09-13 14:24:31 -06:00
Guillaume Melquiond
11a889db8f mesa: return after _mesa_problem() calls 2008-09-13 14:23:39 -06:00
Guillaume Melquiond
d2e0504d4e mesa: #include <stdio.h> 2008-09-13 14:23:14 -06:00
Guillaume Melquiond
5d4c8ec5e0 remove invalid XDestroyWindow() call 2008-09-13 14:22:15 -06:00
Guillaume Melquiond
ee2c8d6d3e silence warning 2008-09-13 14:21:50 -06:00
Guillaume Melquiond
6e51febc6b GLU: fix asst warnings 2008-09-13 14:20:14 -06:00
Eric Anholt
8db761409d intel: Add a width field to regions, and use it for making miptrees in TFP.
Otherwise, we would use the pitch as width of the texture, and compiz would
render the pitch padding on the right hand side.
2008-09-12 15:48:13 -07:00
Eric Anholt
bdc8ac4ae2 Finish off the previous fix for TFP.
A couple of those lines of debug printfs I deleted weren't actually debug
printfs.
2008-09-12 15:09:43 -07:00
Eric Anholt
34bba445a1 intel: Don't segfault on TFP from a bad drawable. 2008-09-12 13:49:23 -07:00
Eric Anholt
201d3419a6 intel: Remove dead allow_batchbuffer param. 2008-09-12 13:49:23 -07:00
Ian Romanick
bb09d23e92 Remove DRI2 support
Remove support for the original incarnation of DRI2.  This version has
since been abandoned and will never ship.  This eliminates a build
dependency on a component that only exists in Fedora 9 and in now-dead
up-stream development trees.

I also recommend that we spin a Mesa 7.1.1 release with this patch.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2008-09-12 13:48:14 -07:00
George Sapountzis
d3dc95e26a dri/swrast: fix swapBuffers after dri2 2008-09-12 12:43:10 +03:00
Xiang, Haihao
1ffbcddb6f i965: Add support for G41 chipset which is another 4 series.
(cherry picked from commit b2e083eba2)
2008-09-12 09:29:00 +08:00
Xiang, Haihao
b2e083eba2 i965: Add support for G41 chipset which is another 4 series. 2008-09-12 09:25:34 +08:00
Brice Goglin
5cd892a4e4 Fix grammar and punctuation in glxinfo(1) 2008-09-11 19:13:46 +02:00
Shane Blackett
4d42c5bebf added 24bpp support 2008-09-11 08:36:03 -06:00
Shane Blackett
bc3b2a5d7a Fixes for Mingw 2008-09-11 08:36:03 -06:00
Shane Blackett
33cf8f5c06 added 24bpp support 2008-09-11 08:35:37 -06:00
Eric Anholt
35fd72756a intel: track move of bo_exec from drivers to bufmgr. 2008-09-10 13:59:45 -07:00
Eric Anholt
3628185f56 intel: track bufmgr move to libdrm_intel and bufmgr_fake irq emit/wait change. 2008-09-10 13:59:45 -07:00
Eric Anholt
7e0bbdcf03 intel: Move the bufmgr back to the screen.
Mesa requires that we be able to share objects between contexts, which means
that the objects need to be created by the same bufmgr, and the bufmgr
internally requires pthread protection for thread safety.
Rely on the bufmgr having appropriate locking.
2008-09-10 13:59:45 -07:00
Shane Blackett
7b8d878bed Fixes for Mingw 2008-09-10 08:23:19 -06:00
Brian Paul
86ae34fbb4 mesa: replace MALLOC w/ CALLOC to fix memory error in glPushClientAttrib() 2008-09-05 08:07:07 -06:00
Brian Paul
11d694b1bb mesa: replace MALLOC w/ CALLOC to fix memory error in glPushClientAttrib() 2008-09-05 08:06:59 -06:00
Brian Paul
9246c2fad4 mesa: replace MALLOC w/ CALLOC to fix valgrind warning 2008-09-05 08:06:24 -06:00
Dave Airlie
06537296f1 intel: only enable occlusion query if the drm has defines.
This interface has to be re-written to not be dumb and to work
for multiple apps.
2008-09-05 13:48:51 +10:00
Brian Paul
16f3461fd6 mesa: improved gl_buffer_object reference counting
Use new _mesa_reference_buffer_object() function wherever possible.
Fixes buffer object/display list crash reported in ParaView.
2008-09-04 15:26:07 -06:00
Brian Paul
37c74af01c mesa: improved gl_buffer_object reference counting
Use new _mesa_reference_buffer_object() function wherever possible.
Fixes buffer object/display list crash reported in ParaView.
2008-09-04 14:59:40 -06:00
Kristian Høgsberg
4a32f0c638 configure.ac: bump dri2proto requirement, drop TTM_API define. 2008-09-04 06:23:14 -04:00
Xiang, Haihao
0ac8886b51 intel: Fix depth_stencil texture.
(cherry picked from commit 0adfd10210)
2008-09-04 11:54:31 +08:00
Xiang, Haihao
1729d37223 mesa: merge stencil values into depth values for MESA_FORMAT_S8_Z24
(cherry picked from commit 218df7f9c5)
2008-09-04 11:54:21 +08:00
Jakob Bornecrantz
81edef6f9f mesa: Support for MESA_FORMAT_S8_Z24 texture
cherry-picked from gallium-0.1
(cherry picked from commit dc44bb8e92)
2008-09-04 11:54:08 +08:00
Xiang, Haihao
0adfd10210 intel: Fix depth_stencil texture. 2008-09-04 11:36:04 +08:00
Xiang, Haihao
218df7f9c5 mesa: merge stencil values into depth values for MESA_FORMAT_S8_Z24 2008-09-04 11:32:52 +08:00
Jakob Bornecrantz
dc44bb8e92 mesa: Support for MESA_FORMAT_S8_Z24 texture
cherry-picked from gallium-0.1
2008-09-04 10:35:01 +08:00
Eric Anholt
a04aeea5c0 intel: Fix prototype warning. 2008-09-03 16:13:18 +01:00
Eric Anholt
e32721c46a intel: Fix refcounting on depth buffer initialization in DRI2.
(Reverts a change to work around the problem on 965).
2008-09-03 13:31:44 +01:00
Xiang, Haihao
3bb2a24921 intel: Fix a crash if dri2 is disabled. 2008-09-03 14:47:36 +08:00
Brian Paul
e040e18c7b fix BUFFER_DEPTH/BUFFER_ACCUM mix-up 2008-09-02 18:13:53 -06:00
Brian Paul
0fd1a8c4a1 fix BUFFER_DEPTH/BUFFER_ACCUM mix-up 2008-09-02 18:10:51 -06:00
Roland Scheidegger
14d186644b fix no error generated when calling glLight{if}[v] inside begin/end (bug 17408) 2008-09-02 15:49:35 +02:00
Roland Scheidegger
418b603513 fix no error generated when calling glLight{if}[v] inside begin/end (bug 17408) 2008-09-02 15:48:50 +02:00
Michel Dänzer
55270310c5 Fix build by removing #include of removed dri_sarea.h.
Thanks to JohnFlux on IRC for pointing out the problem.
2008-09-01 11:43:29 +02:00
Kristian Høgsberg
f56b569e9a DRI2: Drop sarea, implement swap buffers in the X server. 2008-08-29 12:13:14 -04:00
Xiang, Haihao
e4535e4d5e i965: force thread switch after IF/ELSE/ENDIF. partial fix for #16882.
A thread switch is implicitly invoked after the issuance of an IF/ELSE/ENDIF
instruction if necessary. Unfortunately it seems sometimes a forced thread
switch is needed.
2008-08-29 10:30:12 +08:00
Xiang, Haihao
a008813890 i965: mask control for BREAK/CONT/DO/WHILE. partial fix fox #16882 2008-08-29 10:30:03 +08:00
Xiang, Haihao
da50dc7bb3 i965: Push/pop instruction state. partial fix for #16882 2008-08-29 10:29:57 +08:00
Xiang, Haihao
7a2ab6d055 i965: force thread switch after IF/ELSE/ENDIF. partial fix for #16882.
A thread switch is implicitly invoked after the issuance of an IF/ELSE/ENDIF
instruction if necessary. Unfortunately it seems sometimes a forced thread
switch is needed.
2008-08-29 09:49:16 +08:00
Xiang, Haihao
6073b49c79 i965: mask control for BREAK/CONT/DO/WHILE. partial fix fox #16882 2008-08-29 09:28:08 +08:00
Xiang, Haihao
fd81433a4e i965: Push/pop instruction state. partial fix for #16882 2008-08-29 09:23:25 +08:00
Brian Paul
7f628d9cbc mesa: bump MAX_INSN to 350 2008-08-28 15:16:33 -06:00
Brian Paul
6138ee9de0 mesa: bump MAX_INSN to 350 2008-08-28 15:15:00 -06:00
Julien Cristau
f9affb3059 Prepare changelog for upload 2008-08-27 19:52:30 +02:00
Julien Cristau
fd7cc514d2 Some more parallel build updates. 2008-08-27 19:52:14 +02:00
Julien Cristau
f6a927b45f Update changelog 2008-08-27 17:29:28 +02:00
Julien Cristau
8772e02b68 Merge tag 'mesa_7_1' into debian-experimental 2008-08-27 17:28:31 +02:00
Brian Paul
b2ffd0be03 placeholder for upcoming 7.2 release notes 2008-08-26 16:24:37 -06:00
Brian Paul
bafefccff8 mesa: don't check for GLSL 1.2 to advertise GL 2.1
The GLSL 1.2 features are minor...
2008-08-26 16:13:39 -06:00
Brian Paul
9aeb6e7825 added 7.1 MD5 sums 2008-08-26 16:12:29 -06:00
Brian Paul
912b16c689 added 7.1 MD5 sums 2008-08-26 16:11:56 -06:00
Brian Paul
019b9529e5 change MESA_MINOR to 3 2008-08-26 15:59:06 -06:00
Brian Paul
17e9bbd5a4 7.1 updates from 7.2 branch 2008-08-26 15:58:42 -06:00
Brian Paul
6d9b25e522 mesa: don't check for GLSL 1.2 to advertise GL 2.1
The GLSL 1.2 features are minor...
2008-08-26 15:50:11 -06:00
Corbin Simpson
31bad23f0f note ATI R500 series support 2008-08-26 12:39:27 -06:00
Timo Jyrinki
385d6b2e68 asst. html doc updates 2008-08-26 12:36:39 -06:00
Timo Jyrinki
29b9b25e72 asst. html doc updates 2008-08-26 12:36:23 -06:00
Brian Paul
e794f496c6 mesa: assorted updates/prep for 7.1 release 2008-08-25 14:09:14 -06:00
Brian Paul
80af50b35b mesa: glsl: regenerated file 2008-08-25 09:20:26 -06:00
Brian Paul
2d5087bf74 mesa: glsl: grab latest fixes from gallium-0.1 branch
Includes:
1. Fixes failed asserting about bad swizzles in src reg emit.
2. Tracks uniform var usage.
3. Emit exp() in terms of EXP2 instruction.
2008-08-25 09:20:00 -06:00
Brian Paul
d6df735f1c mesa: set version string to 7.3-devel 2008-08-25 09:18:33 -06:00
Brian Paul
68067c66d3 mesa: glsl: regenerated file 2008-08-25 09:16:21 -06:00
Brian Paul
ad5474e995 mesa: glsl: grab latest fixes from gallium-0.1 branch
Includes:
1. Fixes failed asserting about bad swizzles in src reg emit.
2. Tracks uniform var usage.
3. Emit exp() in terms of EXP2 instruction.
2008-08-25 09:15:16 -06:00
Julien Cristau
ac8771ee99 Update changelog 2008-08-24 17:38:03 +02:00
Julien Cristau
16358bb3cc Merge branch 'mesa_7_2_branch' of git.freedesktop.org:/git/mesa/mesa into debian-experimental 2008-08-24 17:34:47 +02:00
Dave Airlie
f75843a517 Revert "Revert "Merge branch 'drm-gem'""
This reverts commit 7c81124d7c.
2008-08-24 17:59:10 +10:00
Dave Airlie
7c81124d7c Revert "Merge branch 'drm-gem'"
This reverts commit 53675e5c05.

Conflicts:

	src/mesa/drivers/dri/i965/brw_wm_surface_state.c
2008-08-24 17:52:40 +10:00
Krzysztof Czurylo
a35002c167 965: Fix incorrect backface culling
Fix incorrect backface culling for OGL tunnel in wireframe and
point mode.
2008-08-21 15:01:59 -07:00
Krzysztof Czurylo
6f4fd3a432 Call _ae_update_state when array enable state changes
Basically, the application enables client vertex and color arrays,
renders something, then disables color array, and renders something
else (using vertex array only).  Even though the color array is
disabled (and the pointer is no longer valid), the driver still tries
to read color data from this array (which results in an exception).

This is because enabling/disabling array does not trigger
_ae_update_state() and the list of enabled arrays is not updated.
_ae_update_state() it's called on the first state validation only (as
all the "dirty" flags are set at the beginning). Any further change to
client arrays' state has no effect.
2008-08-21 15:01:59 -07:00
Krzysztof Czurylo
be30fddc7c 965: Fix color clamping issues
Patch is correctly applied this time.
2008-08-21 15:01:59 -07:00
Ian Romanick
1a244cd9e2 Formatting changes to ease application of patches 2008-08-21 15:01:59 -07:00
Eric Anholt
687cd467b3 i965: use dri_bo_subdata in vertex upload to get pwrite used.
Otherwise, we would ping-pong objects to GTT and back as we did pwrite on
indices (flushed and mapped to GTT) and mapped for vertices (moved back to
CPU domain).

Fixes bug #17180.
2008-08-21 12:15:17 -07:00
Eric Anholt
021ce883e6 Flush vertices when updating texObj->GenerateMipmap state.
Caught by texturing/gen-teximage test in piglit.
2008-08-21 11:21:22 -07:00
Peter Hutterer
3a94b25538 Report damage before modifying the area, not after.
If we copy the area before reporting the damage in this area, the server may
restore buffered data over the new data, leading to artefacts on the screen.
Reproducable with two cursors (second of which is SW rendered) and moving
windows around in compiz.

Fixes http://bugs.freedesktop.org/show_bug.cgi?id=16384 .
2008-08-21 11:22:40 +02:00
Eric Anholt
495c02262e intel: Fix SGIS_generate_mipmap after a miptree had been validated.
Previously, the updated images would be ignored because the miptree in the
image matched the miptree in the object, even though Mesa core had just attached
updated contents in ->Data.  Additionally, Mesa core could have tried to
free inside our miptree if it had already been validated.

Fixes bug #17077.
2008-08-20 23:18:02 -07:00
Brian Paul
8f1d5ca086 use ftransform() 2008-08-20 15:33:03 -06:00
Kristof Ralovich
8434c65bb9 glx: free driScreen in FreeScreenConfigs() 2008-08-20 15:33:03 -06:00
Kristof Ralovich
8b51278134 glx: free context in driDestroyContext() 2008-08-20 15:33:03 -06:00
Kristof Ralovich
e206034863 glx: free vertex array state when context is destroyed 2008-08-20 15:33:03 -06:00
Kristof Ralovich
fb36a54a1c fix mem leak (free psc->visuals) 2008-08-20 15:33:03 -06:00
Mark Anderson
145f5f60f1 mesa: fix float blend bug 2008-08-20 15:33:03 -06:00
Brian Paul
2848b55ed5 mesa: move old/obsolete MESA extensions specs to OLD/ directory 2008-08-20 15:33:03 -06:00
Dave Airlie
9cc13eba3e i965: fixup format for TFP zero copy
(cherry picked from commit 9bc9e0ecb0 which
was lost in a merge)
2008-08-20 11:28:39 -07:00
Dave Airlie
ce61660ab9 i965: make tex offset override work..
should fix fd.o 14441

(cherry-picked from commit d4244683a6 which was
lost in a merge)
2008-08-20 11:28:39 -07:00
Xiang, Haihao
b17b110716 i965: Enable GL_ARB_fragment_program_shadow and fix key->shadowtex_mask. (bug #16852, #16853) 2008-08-20 15:54:41 +08:00
Corbin Simpson
a667d67cd6 r5xx: Final fog option fix.
Is there some kind of git hook we could use to keep me from committing
after like 10PM or so?
2008-08-19 09:24:27 -07:00
Corbin Simpson
7855ea2af2 r5xx: Don't squish GL context when using FogOption 2008-08-19 03:40:27 -07:00
Corbin Simpson
12e84a8b84 r5xx: Enable fog options.
This uses fog HW instead of fragment programs.
If it breaks you, let me know!
2008-08-18 16:38:21 -07:00
Henri Verbeet
e438827dec fix byte vs. pixel offset bug for 3D textures (see bug 17170) 2008-08-18 09:30:52 -06:00
Brian Paul
6a00625fbb mesa: rearrange some code in _mesa_BindTexture() to fix error detection bug 17173
Also, move GL_TEXTURE_RECTANGLE init code into separate function.
2008-08-18 08:55:13 -06:00
Corbin Simpson
c5d25c8509 r5xx: Add DDX and DDY instructions.
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
2008-08-17 22:36:17 -07:00
Brian Paul
b7ff70e16a bring in docs from 7.0.4 release/branch 2008-08-16 11:09:49 -06:00
Corbin Simpson
567d87744a added test for ARB GLSL extensions 2008-08-16 11:07:51 -06:00
Julien Cristau
ef160330e5 Merge tag 'mesa_7_1_rc4' into debian-experimental
Conflicts:

	progs/fp/Makefile
	progs/slang/Makefile
	progs/tools/trace/gltrace_support.cc
	progs/trivial/Makefile
2008-08-16 18:43:53 +02:00
Brian Paul
5d762e1613 added glu.exports files to tarballs list 2008-08-16 10:09:38 -06:00
Brian Paul
35479fd4b4 fix convolutions test to consistanty use the ARB shader extension functions
Was using a mix of the ARB functions and the OpenGL 2.0 shader functions.
2008-08-16 09:54:07 -06:00
Brian Paul
7970b2a908 prep for 7.1 rc4 2008-08-16 09:39:10 -06:00
Brian Paul
c0dd9122fd remove .txt suffix from shader source files 2008-08-16 09:36:46 -06:00
Brian Paul
ce00d232f3 mesa: added glsl/convolutions test from gallium branch 2008-08-16 09:34:12 -06:00
Brian Paul
db1103ebe8 mesa: turn off 'x' bit misset on a few .h and .syn files 2008-08-16 09:31:27 -06:00
Brian Paul
1f4997c2aa mesa: import latest GLSL code from gallium-0.1 branch 2008-08-16 09:30:14 -06:00
Brian Paul
1b39b92e6d draw a tristrip ring instead of a single quad 2008-08-15 17:02:09 -06:00
Brian Paul
37f452096b don't need to use LOD version of texture2D() funcs 2008-08-15 17:02:09 -06:00
Dave Airlie
2e79b491fc intel: remove unneeded mem type and args 2008-08-14 21:43:34 +10:00
Michel Dänzer
57acb0fad9 r300: Fix 3D texture support. 2008-08-14 10:40:03 +02:00
Brian Paul
505606349e mesa: fix a swrast state validation bug
Fixes progs/glsl/points.c
2008-08-13 10:28:38 -06:00
Brian Paul
b9c6f2b133 mesa: added new glsl/pointcoord.c test 2008-08-13 08:49:39 -06:00
Brian Paul
60b92129b1 mesa: clear the unused upper-left region to black instead of leaving it undefined 2008-08-13 08:46:50 -06:00
Jeremy Huddleston
f911ca0834 Removed broken/unsupported darwin-static configs
Fixed typo in darwin config
2008-08-12 11:04:19 -07:00
Jeremy Huddleston
98e7c1cf38 Fixed 'make install' for darwin 2008-08-12 10:59:40 -07:00
Jeremy Huddleston
c61f4e2cce Apple: More cleanup of the darwin config in 7.1 2008-08-12 09:45:04 -07:00
Brian Paul
8c51e0002a mesa: glsl: add missing sampler types in sizeof_glsl_type(), bug 17079 2008-08-11 15:12:42 -06:00
Brian Paul
7536f39622 version 41 of glext.h 2008-08-11 15:12:42 -06:00
Brian Paul
d80d0bb4d6 version 20 of glxext.h 2008-08-11 15:12:42 -06:00
Brian Paul
3a428aca93 mesa: added comment about gl_PointCoord 2008-08-11 15:12:42 -06:00
Jeremy Huddleston
ac0d19601c Apple: Cleaned up some linking and dylib ids issues 2008-08-11 09:17:06 -07:00
Dave Miller
1724334d7c dri: fix crash in driGetConfigAttribIndex
Accessing a GLboolean via an int pointer on big-endian == bad.
2008-08-09 16:44:10 +10:00
Eric Anholt
53675e5c05 Merge branch 'drm-gem'
Conflicts:

	src/mesa/drivers/dri/intel/intel_span.c
	src/mesa/main/fbobject.c

This converts the i915 driver to use the GEM interfaces for object management.
2008-08-08 15:32:24 -07:00
Eric Anholt
d2796939f1 intel-gem: Update to new check_aperture API for classic mode.
To do this, I had to clean up some of 965 state upload stuff.  We may end
up over-emitting state in the aperture overflow case, but that should be rare,
and I'd rather have the simplification of state management.
2008-08-08 14:00:43 -07:00
Eric Anholt
527e1cf172 965: cleanups to state emission from aperture checking and state ordering. 2008-08-08 10:53:25 -07:00
Brian Paul
501338d70e mesa: fix out-of-bounds memory reads in swizzle_copy() 2008-08-08 09:05:41 -06:00
Jeremy Huddleston
919ec22ecf glx/x11: Added some #ifdef GLX_DIRECT_RENDERING protection 2008-08-08 02:52:10 -07:00
Jeremy Huddleston
ec770150ed glx/x11: Fix missing __GL_EXT_BYTES declaration 2008-08-08 02:37:14 -07:00
Jeremy Huddleston
01ac4540f0 Apple: Some changes to fix compilation problems on OSX 2008-08-08 02:19:52 -07:00
Brian Paul
ee8dfdf4c9 mesa: fix glBindTexture error string (bug 17005) 2008-08-07 07:54:53 -06:00
Brian Paul
523ee3ddbe disable debug code accidentally enabled by prev commit 2008-08-06 09:02:39 -06:00
Haihao Xiang
5f46093938 mesa: glsl: count number of temp regs used 2008-08-06 09:01:34 -06:00
Brian Paul
fb71a48413 mesa: fix comment about texture targets (bug 17005) 2008-08-06 08:52:56 -06:00
Brian Paul
f1e4ca776f fix some FBO/texture queries (bug 15296) 2008-08-06 08:40:25 -06:00
Xiang, Haihao
c20a173656 i965: update TexSrcUnit for OPCODE_TXB 2008-08-06 14:17:08 +08:00
Xiang, Haihao
8e8019b49a dri: Fix write/read depth buffer issue under 16bpp mode. See bug #16646 2008-08-05 11:34:26 +08:00
Xiang, Haihao
a3024caff1 i965: Use program->SamplerUnits[] to get the appropriate texture unit.
inst->TexSrcUnit is used as an index into program->SamplerUnits[] since
the commit ade508312c, and program->SamplerUnits
is a sampler-to-texture-unit mapping.
2008-08-05 10:18:56 +08:00
Adam Jackson
62fb5f7b9a Drop unused 'entries' field from __glxHashTable. 2008-08-04 15:44:34 -04:00
Julien Cristau
332dcfb60b Add parallel build support. 2008-08-04 12:49:03 +02:00
Brian Paul
61b3ce8f97 added null ptr check (fix bug 16959) 2008-08-03 11:13:12 -06:00
Eric Anholt
ded9414024 intel-gem: Always build GEM execbuffer code. 2008-07-31 14:13:30 -07:00
Jesse Barnes
e9bf3e4cc9 intel: sync to vblank by default
Effectively default to vblank_mode=3 on Intel to avoid tearing by default.
Users wanting to go "as fast as possible" (despite not being able to see frames
faster than their refresh rate allows) can still set the vblank_mode manually.
2008-07-31 11:50:37 -07:00
Eric Anholt
c9120a0d19 intel-gem: Use new getparam to detect kernel GEM support. 2008-07-30 14:16:33 -07:00
Guillaume Melquiond
3e8e292db0 Always pass CFLAGS when compiling or linking demos
To ensure that the correct architecture flags are used, always pass the
user's CFLAGS when compiling or linking the demos. Fixes #16860.
2008-07-30 07:56:42 -07:00
Brian Paul
b068ab62a0 updated GLSL bug fixes 2008-07-29 17:50:43 -06:00
Brian Paul
1bdb134570 mesa: glsl: remove old assertion (fixes glsl/bitmap.c) 2008-07-29 17:49:38 -06:00
Brian Paul
40f7e5f674 mesa: disable debug code 2008-07-29 17:47:52 -06:00
Brian Paul
ff916d718a mesa: regenerated files 2008-07-29 17:45:46 -06:00
Brian Paul
016701f686 mesa: Silence compiler warnings on Windows. 2008-07-29 17:43:35 -06:00
Brian Paul
b26a80aa12 mesa: cast to fix warning 2008-07-29 17:37:55 -06:00
Brian Paul
a7dd701421 mesa: fix bug/failure in recursive function inlining
Fixes a failure for cases such as y = f(a, f(a, b))
All the usual tests still pass but regressions are possible...
2008-07-29 17:37:13 -06:00
Brian Paul
6045f17138 mesa: glsl: silence warning (s/int/GLuint) 2008-07-29 17:33:52 -06:00
Brian Paul
a75015ef03 mesa: remove stray debug code 2008-07-29 17:32:35 -06:00
Brian Paul
1638edb325 mesa: glsl: assorted fixes for resolving polymorphic functions
Plus,
- fix some issues in casting function arguments to format param types.
- fix some vec/mat constructor bugs
- find/report more syntax/semantic errors
2008-07-29 17:29:30 -06:00
Brian Paul
6225e51a73 mesa: glsl: re-order some constructors 2008-07-29 17:27:59 -06:00
Brian Paul
d9b6425e00 mesa: glsl: remove unneeded operators 2008-07-29 17:27:54 -06:00
Brian Paul
91e1918f48 mesa: glsl: added null ptr check 2008-07-29 17:27:44 -06:00
Brian Paul
6f1abb9c21 mesa: fix issues causing warnings on Windows 2008-07-29 17:27:22 -06:00
Brian Paul
1b465f287f mesa: glsl: additional error detection
Plus begin some fixes for vec/matrix constructors.
2008-07-29 17:25:44 -06:00
Brian Paul
16dc993d4f mesa: gls: fix broken else clause of conditional break/continue
In the following case:

   for () {
      if (cond)
         break;  // or continue;
      else
         something;
   }

The "something" block didn't get emitted.
2008-07-29 17:23:52 -06:00
Brian Paul
3d500f00d2 mesa: glsl: only try to link shaders defining main() 2008-07-29 17:23:37 -06:00
Michal Krol
56bac7a35c mesa: Silence compiler warning on windows. 2008-07-29 17:23:19 -06:00
Brian Paul
5d9b33095a mesa: glsl: fix/simplify array element handling
Also fix bug in comparing large structs/arrays.
2008-07-29 17:22:58 -06:00
Brian Paul
d4c73c619a mesa: glsl: mark constructor params as const 2008-07-29 17:20:43 -06:00
Brian Paul
01c0558f70 mesa: glsl: rework swizzle storage handling
Build on the heirarchal approach implemented for arrays/structs.
2008-07-29 17:20:30 -06:00
Brian Paul
fb3422a241 mesa: fix uninitialized var 2008-07-29 17:20:22 -06:00
Brian Paul
7af8dddf27 mesa: glsl: implement constructor functions for user-defined types 2008-07-29 17:20:14 -06:00
Brian Paul
a9412ca2e8 mesa: remove stray debug assertion 2008-07-29 17:20:06 -06:00
Brian
b36749d066 mesa: fix glUniform error checking for samplers 2008-07-29 17:19:40 -06:00
Brian Paul
b7eea9a1ce mesa: refactor: move _mesa_Bind/Gen/DeleteProgram() to arbprogram.c
No API-level functions now in program.c.
2008-07-29 17:19:25 -06:00
Brian Paul
ff9b6a0ae2 mesa: initial support for GLSL struct/array comparisons 2008-07-29 17:17:22 -06:00
Brian Paul
65db8c9518 mesa: added null ptr check (error handling case) 2008-07-29 17:17:12 -06:00
Brian Paul
19d44b95fe mesa: fix +=, -=, etc. operators 2008-07-29 17:16:59 -06:00
Brian Paul
be50c48101 mesa: remove an error check for NV_v_p that doesn't apply to ARB_v_p 2008-07-29 17:16:50 -06:00
Brian Paul
bc985b5790 mesa: fix some issues in _mesa_validate_program() 2008-07-29 17:16:33 -06:00
Brian Paul
ffbc66bf61 mesa: assorted glsl uniform/attribute fixes
Fix incorrect uniform/attribute size query results.
Add missing error checking for glUniform, glUniformMatrix params
Fix an array size/allocation error.
2008-07-29 17:16:17 -06:00
Brian Paul
74a19b0abd mesa: glsl: various writemask/swizzle improvements and clean-ups 2008-07-29 17:15:27 -06:00
Brian Paul
38a62ede6c mesa: rework array/struct addressing code.
The slang_ir_storage type now has a pointer to parent storage to represent
storage of an array element within an array, or a field within a struct.
This fixes some problems related to addressing of fields/elements in non-
trivial cases.  More work to follow.
2008-07-29 17:15:08 -06:00
Brian Paul
378017417a mesa: fix some GLSL /= int operators
plus add a few more special constructors to improve code quality.
2008-07-29 17:14:14 -06:00
Brian Paul
f45ed0eb8d mesa: fix set_program_uniform_matrix(): need to loop over matrix count 2008-07-29 17:13:54 -06:00
Brian Paul
5bfbcf7265 mesa: implement grammar/parsing for precision/invariant syntax
Plus, fix some issues with pre-defined preprocessor symbols and version checking.
2008-07-29 17:12:19 -06:00
Brian Paul
c3ad176158 mesa: Silence compiler warnings on Windows. 2008-07-29 17:09:40 -06:00
Brian Paul
153407f72d mesa: fix some function inlining bugs
Need to add local vars of original function to the new scope's variable
list (though the DECLs were already present).
In slang_operation_copy() call slang_replace_scope() for SLANG_OPER_BLOCK_NEW_SCOPE opers.
2008-07-29 17:05:54 -06:00
Brian Paul
527e1357b5 mesa: improved printing 2008-07-29 17:04:53 -06:00
Brian Paul
1a5c99f4b5 document GLSL 1.20 status 2008-07-29 16:46:08 -06:00
Brian Paul
44c7f37b44 disable GL_ARB_shading_language_120 until 1.20 features are complete 2008-07-29 07:47:56 -06:00
Florent Thoumie
b5095ab97f autoconf: disable dri drivers build if being asked
Allow --with-dri-drivers={,no} to disable DRI drivers build.

Signed-off-by: Florent Thoumie <flz@FreeBSD.org>
Signed-off-by: Robert Noland <rnoland@2hip.net>
2008-07-28 11:04:41 -04:00
Michel Dänzer
57aea290e1 r300: Fix off-by-one error in calculation of scissor cliprect.
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=16123 .
2008-07-28 10:49:43 +02:00
Nicolai Haehnle
c1fb448ce8 r300: Fix a crash related to depth textures (triggered by Glest w/ shadowmaps) 2008-07-27 21:40:17 +02:00
Nicolai Haehnle
c117d0efd2 r300: Implement ARB_shadow_ambient; add STATE_SHADOW_AMBIENT 2008-07-27 21:31:49 +02:00
Nicolai Haehnle
e88be7d375 r300: Fix point minmax size
There are 6 subpixel units per pixel, not 16.
2008-07-27 21:18:29 +02:00
Nicolai Haehnle
322677b878 r300: Implement hardware acceleration for ColorLogicOp 2008-07-27 18:18:59 +02:00
Nicolai Haehnle
0973d348d7 r500: Handle non-native swizzles in texture instructions
This fixes piglit's fp-kil and fp-generic/kil-swizzle tests.
2008-07-27 16:48:24 +02:00
Nicolai Haehnle
1bdf5e09a0 r500: Redirect TEX writes to output registers
While R500 fragment program texture instructions appear to support writemasks,
they cannot write to the output FIFO immediately, so we need to insert a MOV
for these instructions.

This fixes piglit's fp-fragment-position and fp-incomplete-tex tests.
2008-07-27 15:14:07 +02:00
Eric Anholt
902e401a38 intel: Don't return a renderbuffer with alpha when just GL_RGB is requested.
Fixes oglconform rbGetterFuncs testcase.  The span code for this mode hasn't
actually been tested.
2008-07-26 17:39:23 -07:00
Nicolai Haehnle
85e44fcd51 r200: Do not set second coordinate clamping for 1D textures
Fixes piglit's tex1d-border test.
2008-07-26 16:16:23 +02:00
Nicolai Haehnle
477fa8fe12 r300: Always emit LOAD_VBPNTR immediately before index-based rendering
This fixes one type of lockup I've been seeing on my test system.
2008-07-26 16:15:33 +02:00
Ian Romanick
1e645b3659 Merge branch 'master' into drm-gem
Conflicts:

	src/mesa/drivers/dri/common/dri_bufmgr.c
	src/mesa/drivers/dri/i965/brw_wm_surface_state.c
2008-07-25 18:31:44 -07:00
Eric Anholt
e5022c3fdf mesa: Return 0 for cube map face of non-cubemap framebuffer attachments.
Fixes some oglconform fbo testcases.
2008-07-25 12:40:49 -07:00
Eric Anholt
ff60e3fa03 intel: If a tex image doesn't fit in the object's tree, make a temporary tree.
Previously, we would just store the data as malloced memory hanging off the
object, which would get memcpyed in at validate time.  This broke an
oglconform render-to-texture test, since validate wasn't called but a miptree
was expected.
2008-07-25 12:19:50 -07:00
Dave Airlie
9bc9e0ecb0 i965: fixup format for TFP zero copy 2008-07-25 20:32:22 +10:00
Dave Airlie
04c98089d1 Revert "intel: disable zero-copy TFP."
This reverts commit 94979950e8.

I've fixed it instead
2008-07-25 19:57:35 +10:00
Dave Airlie
d4244683a6 i965: make tex offset override work..
should fix fd.o 14441
2008-07-25 19:56:56 +10:00
Dave Airlie
94979950e8 intel: disable zero-copy TFP.
patch from Fedora. maybe someone can fix this later but for now
lets try and release Mesa so ajax can live his life and get Xorg 7.4 out.
2008-07-25 16:31:38 +10:00
Brian Paul
948f6e302c mesa: move extensions->version code into separate function 2008-07-24 15:11:11 -06:00
Brian Paul
d8ababdcc2 mesa: don't include Mesa version in GL_SHADING_LANGUAGE_VERSION string 2008-07-24 15:11:11 -06:00
Brian Paul
51bfb6aa99 query/print GLSL version string 2008-07-24 15:11:11 -06:00
Jesse Barnes
9a4be9785f intel: remove buffer swap debug output
Accidentally pushed as part of the last commit.
2008-07-24 11:46:08 -07:00
Ian Romanick
6118d830a6 Revert "965: Fix color clamping issues"
This reverts commit b993d539a7.  The
patch was applied incorrectly.  Actual fix coming soon.  Sorry for the
noise.
2008-07-24 08:40:22 -07:00
Thomas Hellstrom
7c2d7f8cf5 Fix a typo. 2008-07-24 13:35:35 +02:00
Thomas Hellstrom
9dd73d58ae Add new demo "fbo_firecube".
Tests fbo render-to-texture for various internal texture image formats.
2008-07-24 13:32:59 +02:00
Pawel Pieczul
117533759f 965: Fix partially transparent textures in Doom 3 engine games
Numbers of destination depth registers corrected (destination stencil
register was sent as depth register).
2008-07-23 15:43:23 -07:00
Eric Anholt
2e37143800 intel: Add a little span cache to spead up readpixels by cutting syscalls. 2008-07-23 10:21:25 -07:00
Eric Anholt
d2d5abfaeb intel-gem: Use pread/pwrite for span access.
This will avoid clflushing entire buffers for small acesses, such as those
commonly used by regression tests.
2008-07-23 10:21:25 -07:00
Eric Anholt
f0ca917924 intel: improve 2d batchbuffer debug output. 2008-07-23 10:21:25 -07:00
Eric Anholt
1c8791c581 intel: Fix CopyTexSubImage's src tiling arg for the blit.
Didn't hurt 915, but needed for 965.
2008-07-23 10:21:25 -07:00
Eric Anholt
bdaa06ad63 intel: move renderbuffer mapping to separate functions.
This lets us avoid duplicated code for doing so, including the depthstencil
paths that aren't covered by SpanRenderStart/Finish.  Those paths were
missing the span funcs setup, leading to a null dereference in the fbotexture
demo.
2008-07-23 10:21:24 -07:00
Jesse Barnes
97988ccc46 intel: fix buffer swaps and enable page flipping on 965
Some buffer swap intel render buffer fields (pf_num_pages & vbl_pending) are
also used for page flipping, so enable the code that sets & updates them on
965.  This allows buffer swaps and page flips to work on 965 and prevents hangs
in LOCK_HARDWARE in the buffer swap case due to an uninitialized vbl_pending
field.

Fixes FDO #16118.
2008-07-22 09:39:23 -07:00
Pawel Pieczul
b993d539a7 965: Fix color clamping issues 2008-07-21 10:57:20 -07:00
Brian Paul
77497eb73b mesa: revert building glslcompiler by default 2008-07-21 09:01:34 -06:00
Ian Romanick
99fe0c222c intel-gem: Bump driver date
Bump the driver date and insert the string "GEM".  When running tests,
this make it much easier to know that the right driver is being used.
2008-07-18 12:40:04 -07:00
Dan Nicholson
776c60d3c3 autoconf: Support Motif widgets in GLw with --enable-motif
Add an --enable-motif option, which will enable the Motif widgets in
libGLw and link it with libXm. The Motif installation information will
be gathered from the motif-config script (this comes with LessTif) or
fallback to the standard autoconf checks.

To allow the location of the Motif headers to be set from configure, the
default setting of -I/usr/include/Motif1.2 has been moved into
configs/default and then passed to the Makefile through the MOTIF_CFLAGS
variable.
2008-07-18 08:07:07 -07:00
Xiang, Haihao
b4b7326717 intel: fix texture border issue. (bug #16697) 2008-07-18 17:40:11 +08:00
Brian Paul
3bfedb7ed4 mesa: build the stand-alone glslcompiler by default, update the docs 2008-07-17 15:40:10 -06:00
Brian Paul
73b8ee4121 mesa: regenerated file 2008-07-17 10:09:04 -06:00
Brian Paul
d9f4d04111 mesa: fix/improve the atan(y,x) function 2008-07-17 10:08:14 -06:00
Brad Smith
f49d345a51 mesa: added checks for OpenBSD 2008-07-17 08:15:57 -06:00
Brian Paul
0138435643 mesa: regenerated file 2008-07-16 16:27:14 -06:00
Brian Paul
33a25729e8 mesa: fix temp re-use bug in emit_arith() 2008-07-16 16:20:25 -06:00
Brian Paul
082cde143b mesa: fix copy&paste errors in degrees() functions 2008-07-16 16:20:07 -06:00
Ian Romanick
29cb89d0c2 intel: Clean-up ARB_texture_env_crossbar
Enable support for ARB_texture_env_crossbar in the master extension
list instead of in every single device-specific list.
2008-07-16 10:37:49 -07:00
Ian Romanick
442c195c4a Remove redundant initalization of MaxTextureUnits 2008-07-16 09:43:03 -07:00
Brian Paul
7d13dded5c mesa: add GL_POLYGON_OFFSET_POINT/LINE/FILL queries, remove GL_TEXTURE_ENV_COLOR, GL_TEXTURE_ENV_MODE
Issues found by Bob Ellison.
2008-07-16 10:23:28 -06:00
Blair Sadewitz
b7c54945fe additional preprocessor checks for stdint.h, inttypes.h, etc
The patches to glext.h and glxext.h have been sent to Khronos/bugzilla.
2008-07-15 17:21:56 -06:00
Blair Sadewitz
ece7183ff1 mesa: added test for __NetBSD__ 2008-07-15 17:12:23 -06:00
Blair Sadewitz
4c6dcbf091 mesa: added test for __NetBSD__ 2008-07-15 17:11:54 -06:00
Blair Sadewitz
e6218d071d mesa: check for __INTERIX to typedef uintptr_t 2008-07-15 17:06:17 -06:00
Blair Sadewitz
546c7fb221 mesa: extra braces 2008-07-15 17:05:28 -06:00
Brian Paul
461e178806 mesa: regenerated file 2008-07-15 16:55:23 -06:00
Brian Paul
716f70d782 mesa: add missing IR_LOG2 case 2008-07-15 16:41:35 -06:00
Brian Paul
b0d173f405 mesa: fix some broken /= operators 2008-07-15 16:41:19 -06:00
Brian Paul
8c653f6e09 mesa: fix some broken bool, bvec2, bvec3, bvec4 constructors 2008-07-15 16:40:51 -06:00
Brian Paul
7d7d114e59 mesa: fix storage size computation in emit_arith() 2008-07-15 16:40:38 -06:00
Eric Anholt
a5f02368d2 intel-gem: Disable spantmp sse/mmx functions when tile swizzling.
Those functions rely on being able to treat the GET_PTR returned value as an
array indexed by x, but that's not the case for our tiling.

Bug #16387
2008-07-15 13:21:37 -07:00
Ian Romanick
27e3f7f21d glx: Update my e-mail address. :) 2008-07-15 11:06:31 -07:00
Ian Romanick
67108adb48 glx: Trivial clean-ups to __glXSetArrayEnable 2008-07-15 11:06:04 -07:00
Brian Paul
f214a848ab mesa: assemble main() after all other functions
Before, main() had to come after any functions it called.
2008-07-14 15:59:44 -06:00
Eric Anholt
946abd9b5a i915: fix build after previous commit. 2008-07-14 13:55:37 -07:00
Brian Paul
c62cb6be6c mesa: fix stencil state problem when GL_ATI_separate_stencil wasn't enabled
In glStencilFunc/Op/Mask() set both the front and back-face state, unless
GL_EXT_stencil_two_side is enabled.  Before, we only set the front+back state
if GL_ATI_separate_stencil was enabled.

Ultimately, we probably should remove GL_EXT_stencil_two_side since it's
incompatible with GL 2.x.
2008-07-14 09:51:35 -06:00
Guillaume Melquiond
4430597bf6 fix gltrace (bug 16691) 2008-07-14 08:50:36 -06:00
Julien Cristau
0a7df3794c glu: only export public symbols 2008-07-14 08:37:49 -06:00
Julien Cristau
f7eb0cec69 mklib: don't version symbols when using --exports
Use the default version instead of one based on the library SONAME
in the version script created by --exports.
2008-07-14 08:37:38 -06:00
Blair Sadewitz
a63b90712a mesa: also check for __NetBSD__ 2008-07-14 08:15:10 -06:00
Brian Paul
62db707a3d mesa: check for null shader->Source 2008-07-14 08:13:52 -06:00
Chris Rankin
5e600209f4 radeon: SetTexOffset support
This patch is a straightforward duplication of the R200 SetTexOffset code,
except that there is no big-endian tx_table[] array.
2008-07-14 10:11:20 +02:00
Stephane Marchesin
93115c4b23 nouveau: say goodbye to the old DRI driver... 2008-07-14 01:03:07 +02:00
Julien Cristau
a8dde163dc Prepare changelog for upload 2008-07-13 19:42:01 +02:00
Julien Cristau
868d0accef update changelog and patches
01_fix-installdir.patch dropped, applied upstream
04_osmesa_version.diff needed fixing
2008-07-13 19:36:56 +02:00
Julien Cristau
64e57ed257 Merge branch 'master' of git://anongit.freedesktop.org/git/mesa/mesa into debian-experimental
Conflicts:

	progs/tests/antialias.c
	progs/tools/trace/Makefile
2008-07-13 19:20:03 +02:00
Dave Airlie
4fab47b13c glx/dri: only report DRI2 extensions when DRI2 is enabled.
Fixes bug 15477
2008-07-13 19:00:46 +10:00
Nicolai Haehnle
e81ba58bf4 r300_fragprog: Use nqssa+dce and program_pair for emit
Share almost all code with r500_fragprog now.

This also fixes Piglit's texrect-many test, which means that the compiz
bicubic plugin should work with hardware acceleration now.
2008-07-12 21:16:16 +02:00
Dan Nicholson
3b8081603b Always pass -linker and -ldflags to mklib for shared libraries
This just makes the use of mklib more consistent throughout Mesa where
we always want to pass the linker and LDFLAGS when we might be making a
shared library.
2008-07-12 10:25:40 -07:00
Dan Nicholson
db072baaaf Call mklib with $(SHELL) so the user controls the interpreter
Respect the user's choice of shell when running mklib rather than always
using /bin/sh.
2008-07-12 10:25:40 -07:00
Dan Nicholson
4f5d97ee9e Call minstall with $(SHELL) so the user controls the interpreter
Running minstall directly means that /bin/sh is always used as hte
interpreter. If the user needs or wants to use a different shell fo
minstall, they can use the SHELL make variable.
2008-07-12 10:25:40 -07:00
Dan Nicholson
9eee7f260f Set $(SHELL) for all configs
Most make implementations will use /bin/sh as the interpreter for
commands and only use a different shell when the $(SHELL) make variable
is set. This makes the setting explicit and allows $(SHELL) to be used
in the commands themselves.
2008-07-12 10:25:40 -07:00
Dan Nicholson
bfb27b5fc0 autoconf: Subsitute SHELL for all platforms
Establish the shell that make will use from configure. This is exactly
how autoconf/automake operate, with the environment variable
CONFIG_SHELL respected to override the autoconf checks. In the usual
case where the user just executes `./configure', autoconf will pick a
shell from the current shell, sh, bash, ksh or sh5 that meets its base
criteria.

The special Solaris case of looking for a POSIX shell has been changed
to just set the SHELL variable since autoconf substitutes this already.
The EXTRA_CONFIG_LINES substitution is dropped as it should no longer be
needed.
2008-07-12 10:25:40 -07:00
Julien Cristau
e325b76444 Prepare changelog for upload 2008-07-12 18:56:22 +02:00
Julien Cristau
34eedc6a98 update changelog 2008-07-12 18:55:55 +02:00
Julien Cristau
8c21c2e07e Merge branch 'mesa_7_0_branch' of git://anongit.freedesktop.org/git/mesa/mesa into debian-unstable 2008-07-12 17:21:50 +02:00
Nicolai Haehnle
2d766923c4 r300: Fix saturate mode handling in radeon_program_alu 2008-07-12 12:20:28 +02:00
Nicolai Haehnle
cf0ae102db r500: Set Saturate correctly in radeon_program_pair 2008-07-12 12:04:28 +02:00
Nicolai Haehnle
8774fcd89a r300: Fix input register allocation in radeon_program_pair
When an input is marked in gl_program.InputsRead but is not actually read
in the final program (due to dead-code elimination or whatever), the order
of input registers must still match gl_program.InputsRead. This is done
even more explicitly now.
2008-07-12 11:11:59 +02:00
Nicolai Haehnle
11d711df36 r300: Explicitly set absolute value for the argument of RSQ
This fixes the last r500 bug related to glean/fragProg1.
2008-07-12 09:36:02 +02:00
Nicolai Haehnle
b6765c3499 r500_fragprog: Major refactoring of final emit
Use an abstracted instruction scheduling and register allocation algorithm
that we will be able to share with r300_fragprog.

Unlike the original emit code, this code tries to pair instructions that
only use the RGB part of the ALU with instructions that only use the alpha
part. However, the pairing algorithm still has some shortcomings;
for example, it doesn't generate optimal code for the emulation of LIT.
2008-07-12 09:36:02 +02:00
Nicolai Haehnle
d8d086c20b r500: Add "Not quite SSA" and dead code elimination pass
In addition, this pass fixes non-native swizzles.
2008-07-12 09:36:02 +02:00
Nicolai Haehnle
7904c9fad4 r500_fragprog: Transform trigonometric functions in first pass 2008-07-12 09:36:02 +02:00
Eric Anholt
2e841880cf drm-gem: Use new GEM ioctls for tiling state, and support new swizzle modes. 2008-07-11 18:58:19 -07:00
Alex Deucher
b0ef353b46 R300: update vap_cntl values for NUM_FPUS
based on info from hw team
2008-07-11 19:23:06 -04:00
Dan Nicholson
6c44c6d020 Remove generated pkg-config files on `make clean' 2008-07-11 10:43:29 -07:00
Dan Nicholson
99803a4ec9 autoconf: Add information about the --x-* options to --help output
Try to tell the user that the --x-* options are only used when the X
libraries can't be found by pkg-config.
2008-07-11 10:04:46 -07:00
Dan Nicholson
e97ab72b59 autoconf: Tell the user about docs/autoconf.html in --help output
The documentation in autoconf.html is much more explicit about how the
different configure options control the build. This adds a notice at the
end of the `./configure --help' output to tell the user about it.
2008-07-11 10:04:46 -07:00
Dave Airlie
b52398571b intel: fix batch flushing problem with cliprects handling.
pointed out and debugged by stringfellow on #dri-devel
2008-07-11 07:28:55 +10:00
Brian Paul
27425708f5 mesa: return -1, not GL_FALSE if _glapi_add_dispatch() fails name sanity check 2008-07-09 15:06:49 -06:00
Brian Paul
ac05da56ec mesa: return -1, not GL_FALSE if _glapi_add_dispatch() fails name sanity check 2008-07-09 15:06:36 -06:00
Brian Paul
fc07b6cda0 ARB program, GLSL fixes 2008-07-09 08:58:47 -06:00
Brian Paul
562ed27eb5 mesa: remove debug code 2008-07-09 08:52:44 -06:00
Brian Paul
0a0e09078d mesa: implement glGetUniformiv() with new ctx->Driver function
The old implementation could overwrite the caller's param buffer.

cherry-picked from master
2008-07-09 08:51:35 -06:00
Brian Paul
50bc5a75a7 mesa: fix state.clip[n].plane parsing bug (bug 16611) 2008-07-09 08:42:49 -06:00
Brian Paul
6661f53eb3 mesa: check for OpenBSD (bug 15604)
cherry-picked from master
2008-07-09 08:42:28 -06:00
Brian Paul
4ca0af1882 mesa: fix state.clip[n].plane parsing bug (bug 16611) 2008-07-09 08:39:25 -06:00
Brian Paul
a2e435054c mesa: check for OpenBSD (bug 15604) 2008-07-09 08:39:25 -06:00
Xiang, Haihao
b8782affc8 i915: fall back to software rendering when shadow comparison is
enabled for 1D texture. fix #12176

Cherry-picked from commit 75e4db1804
2008-07-09 13:44:13 +08:00
Xiang, Haihao
75e4db1804 i915: fall back to software rendering when shadow comparison is
enabled for 1D texture. fix #12176
2008-07-09 13:10:46 +08:00
Brian Paul
2f1b5ffcda mesa: remove debug code 2008-07-08 16:52:45 -06:00
Brian Paul
e4d9cc94b8 add yet another Makefile 2008-07-08 16:28:33 -06:00
Brian Paul
ee2a101123 bump version to rc3 2008-07-08 16:26:28 -06:00
Brian Paul
7d3feef9d6 added more Makefiles to file list 2008-07-08 16:26:06 -06:00
Brian Paul
2be54a8e8c mesa: implement glGetUniformiv() with new ctx->Driver function
The old implementation could overwrite the caller's param buffer.
2008-07-08 16:17:04 -06:00
Brian Paul
44029f15a8 added src/mesa/drivers/Makefile to file list 2008-07-08 16:16:57 -06:00
Brian Paul
9a9e839b9b added null texObj ptr check (bug 15567) 2008-07-08 15:13:23 -06:00
Brian Paul
6fe7857629 mesa: bump version to rc2 2008-07-08 15:12:48 -06:00
Brian Paul
c71fa34728 added null texObj ptr check (bug 15567) 2008-07-08 15:11:53 -06:00
Brian Paul
fd6cb1b11d mesa: more debug output 2008-07-08 15:11:53 -06:00
Brian Paul
d14b7890a4 mesa: compute global var size before doing codegen 2008-07-08 15:11:53 -06:00
Brian Paul
477d597df6 mesa: add missing VARYING case to storage_string() 2008-07-08 15:11:53 -06:00
Julien Cristau
b04ccc9a03 Disable the i915tex driver, it doesn't build against libdrm 2.3.1. 2008-07-08 18:18:56 +02:00
Xiang, Haihao
aa522e14ee i965: official name for GM45 chipset 2008-07-08 14:39:01 +08:00
Xiang, Haihao
92c075eeb7 i965: official name for GM45 chipset 2008-07-08 14:14:04 +08:00
George Sapountzis
a36bf890e8 glx: add LIBGL_ALWAYS_SOFTWARE
this disables accelerated DRI and fallbacks to client-side software rendering.

compile-tested only.
2008-07-07 18:34:17 +03:00
Dan Nicholson
e6e4f25aa5 autoconf: Allow commas or spaces to separate DRI drivers
Explicitly allow the argument to --with-dri-drivers to contain
comma-separated or space-separated drivers. A space-separated driver
list worked by chance before.
2008-07-06 14:17:54 -07:00
Dan Nicholson
11ac5b2456 Set library and header installation directories from configuration
Currently the installation directories for libraries and headers are
resolved within the install commands. For instance, the libraries will
be installed to $(INSTALL_DIR)/$(LIB_DIR). This limits the flexibility
of the installation, such as when the libraries should be installed to a
subdirectory like /usr/lib/tls.

This adds the make variables $(INSTALL_LIB_DIR) and $(INSTALL_INC_DIR)
to define the locations that the libraries and headers are installed.
For the static configs, this resolves exactly as before to
$(INSTALL_DIR)/include and $(INSTALL_DIR)/$(LIB_DIR). For autoconf, they
are derived directly from the --libdir and --includedir settings.
2008-07-06 14:15:40 -07:00
Nicolai Haehnle
056689d457 r500_fragprog: Fix RSQ with negative parameters 2008-07-06 16:39:31 +02:00
Julien Cristau
dabd09f5a9 some more debian/rules adjustments
build the software libGL with --disable-gl-osmesa, and try to fix some
rules dependencies
2008-07-06 14:03:58 +02:00
Nicolai Haehnle
2b2cb56656 r300_fragprog: Emulate trigonometric functions in radeon_program_alu 2008-07-06 10:00:35 +02:00
Nicolai Haehnle
4746752f16 r300: Translate fragment program DST in radeon_program_alu 2008-07-06 10:00:35 +02:00
Nicolai Haehnle
03abd021f2 r300: Translate fragment program LRP in radeon_program_alu.c 2008-07-06 10:00:35 +02:00
Nicolai Haehnle
62bccd6df0 r300: Allow adding parameters during fragprog transform, share LIT code 2008-07-06 09:59:43 +02:00
Nicolai Haehnle
77fdfaa23a r300: Correctly scan for used temporary registers
This fixes a regression introduced by dea8719f0...
2008-07-05 20:01:20 +02:00
Nicolai Haehnle
364d45a3e1 r500: Major refactoring of fragment program emit
Use the common facilities to convert non-native instructions into native ones.
Worked hard to make the code easier to read (hopefully), by using helper
functions instead of direct manipulation of the machine code.
Fixes two bugs related to FLR and XPD.
2008-07-05 18:04:10 +02:00
Nicolai Haehnle
dea8719f00 r300: Remove clause stuff for now in favour of a cloned generic gl_program 2008-07-05 18:04:10 +02:00
Nicolai Haehnle
85b46fbe9c r500_fragprog: Cleanup some unused variables and code. 2008-07-05 18:04:10 +02:00
Nicolai Haehnle
13c44679ad r500: Fix a mixup in fragment program LRP instruction emit 2008-07-05 18:04:10 +02:00
Nicolai Haehnle
09e587fcf3 r500: Fix blend color. 2008-07-05 18:04:09 +02:00
Nicolai Haehnle
82635aad42 _mesa_clone_program: Copy ShadowSamplers 2008-07-05 18:04:04 +02:00
Julien Cristau
46ffb3c0b1 debian/rules cleanup and fixes
* tell configure which dri drivers we want to build, based on the old
  configs/debian-dri-default
* disable direct rendering for the glx libGL on the hurd
* make sure patches are applied before we run autoreconf, and autoreconf
  runs before all builds
2008-07-05 14:03:57 +02:00
Julien Cristau
4b9b01f0a5 Use --with-driver=dri for the dri config
the default is xlib on some architectures and dri on others, so we
need to set that explicitly
2008-07-05 12:59:14 +02:00
Nicolai Haehnle
e187627c1d r300: Fix depth texture in compare mode
Missed the homogenous divide of R by Q before...
2008-07-04 18:22:16 +02:00
Nicolai Haehnle
845e3f701d Enable TexGen based on InputsRead when a fragment program is active
The old behaviour depended on which texture images the fragment program
reads from, which seems to contradict the shader specifications.

Note: Piglit's general/texgen test checks for this problem.
2008-07-04 18:22:15 +02:00
Brian Paul
1f4d0748ba GLSL-related bug fixes 2008-07-04 10:05:39 -06:00
Brian Paul
e06565b103 mesa: generate GL_INVALID_OPERATION in _mesa_get_uniform_location() if program isn't linked 2008-07-04 10:04:03 -06:00
Brian Paul
b931a0c1d9 mesa: remove incorrect assertion 2008-07-04 10:04:03 -06:00
Alan Hourihane
9157b1e09a glcontextmodes.c is required remove the reference in .gitignore 2008-07-04 13:54:49 +01:00
Timo Aaltonen
0261355a03 Fix confflags CFLAGS and clean up confflags-dri. 2008-07-04 11:50:09 +03:00
Timo Aaltonen
beb8547c71 Delete two files not available on the tarball.
docs/gears.png
src/glut/os2/src-glut_os2pm.zip
2008-07-04 11:50:08 +03:00
Timo Aaltonen
4aa518a2d7 Add a patch from upstream to set installdir properly.
this also replaces 01_fix-libdir.patch and the need to set --libdir for
every target.
2008-07-04 11:50:08 +03:00
root
08af66d57e Revert "Remove configs/current on clean."
This reverts commit 2380f8bd93.

Conflicts:

	debian/changelog
2008-07-04 11:50:08 +03:00
root
38eb154b39 Use --enable-glx-tls for dri. 2008-07-04 11:50:08 +03:00
Timo Aaltonen
2954e4c3d7 Disable glut for swx11 targets.
It was not built before either and would need new build-deps (xi xmu).
2008-07-04 11:50:08 +03:00
Xiang, Haihao
0c1e96e6d3 mesa: fix polygon offset issue (bug #12061) 2008-07-04 09:53:51 +08:00
Brian Paul
530df581dd mesa: fix various error codes 2008-07-03 16:21:11 -06:00
Brian Paul
011185396b mesa: fix some error codes in _mesa_ShaderSourceARB() 2008-07-03 16:02:05 -06:00
Brian Paul
3dc6591a7c mesa: fix problem freeing framebuffer/renderbuffer objects
Basically, set up no-op Delete() methods for the DummyFrame/Renderbuffer objects.
2008-07-03 15:40:38 -06:00
Brian Paul
7acb7c1ac0 mesa: additional error checking, fix error codes 2008-07-03 13:49:48 -06:00
Brian Paul
d866cb3712 mesa: regenerated file 2008-07-03 13:24:28 -06:00
Brian Paul
7f4f2ac39d mesa: additional vec4 constructor 2008-07-03 13:24:19 -06:00
Brian Paul
6e46c121f9 mesa: fix array storage allocation bug 2008-07-03 13:05:28 -06:00
Brian Paul
1dc20c7916 mesa: fix incorrect array size, added assertion 2008-07-03 13:03:35 -06:00
Julien Cristau
213803b4d4 fix libOSMesa versioning, to revert accidental SONAME bump. 2008-07-03 18:30:35 +02:00
Timo Aaltonen
2380f8bd93 Remove configs/current on clean. 2008-07-03 18:37:28 +03:00
Timo Aaltonen
e846ebc1a1 don't chmod configure which does not exist. 2008-07-03 18:14:25 +03:00
Timo Aaltonen
6dedd60350 Further autoconf changes:
add automake & autoconf to build-deps
add some cleanup rules
2008-07-03 15:53:19 +03:00
Timo Aaltonen
063a487fe1 Fix the configure.ac patch somewhat
workaround the problems by setting --libdir for all flavours, otherwise
the path used is /usr/usr/lib.
2008-07-03 13:20:21 +03:00
Timo Aaltonen
99a35fd4e1 01_fix-libdir.patch: libdir handling is broken in configure.ac, fix it. 2008-07-03 09:31:23 +03:00
Timo Aaltonen
cbaac82c2c Further tweaks to the autoconf stuff. Getting closer but still not there 2008-07-03 09:26:46 +03:00
Brian Paul
b3e1f9bd52 mesa: fix vertex array validation test for attribute 0 (vert pos)
We don't actually need vertex array[0] enabled when using a vertex
program/shader.
2008-07-02 19:17:11 -06:00
Brian Paul
2c9e332bce mesa: when linking a shader program, make sure all the shaders compiled OK
cherry-picked from master
2008-07-02 17:05:01 -06:00
Brian Paul
e89deed74d mesa: fix error codes in _mesa_shader_source(), _mesa_get_shader_source()
cherry-picked from master
If the 'shader' parameter is wrong, need to either generate GL_INVALID_VALUE
or GL_INVALID_OPERATION.  It depends on whether 'shader' actually names a
'program' or is a totally unknown ID.
There might be other cases to fix...
2008-07-02 17:02:41 -06:00
Brian Paul
5cb6f5515f mesa: regenerated file 2008-07-02 17:02:14 -06:00
Brian Paul
c5024d4a5c mesa: added some missing equal() notEqual() intrinsics
cherry-picked from master
2008-07-02 17:01:26 -06:00
Brian Paul
1726b7d1d3 mesa: when linking a shader program, make sure all the shaders compiled OK 2008-07-02 16:51:49 -06:00
Brian Paul
cb79c5c7c6 mesa: added some debug code (disabled) 2008-07-02 16:50:52 -06:00
Brian Paul
36a5826411 mesa: fix error codes in _mesa_shader_source(), _mesa_get_shader_source()
If the 'shader' parameter is wrong, need to either generate GL_INVALID_VALUE
or GL_INVALID_OPERATION.  It depends on whether 'shader' actually names a
'program' or is a totally unknown ID.
There might be other cases to fix...
2008-07-02 16:40:24 -06:00
Brian Paul
a405d69063 mesa: regenerated 2008-07-02 16:39:48 -06:00
Brian Paul
a2cddf58d2 mesa: added some missing equal() notEqual() intrinsics 2008-07-02 16:39:26 -06:00
Timo Aaltonen
9d72de1fb2 Run autoreconf before building the various flavours. 2008-07-03 00:20:58 +03:00
Eric Anholt
def6e4f420 intel: span rendering requires just a flush before starting, not finish.
The dri_bo_map()s that follow will take care of idling the hardware as needed.
2008-07-02 11:49:10 -07:00
Brian Paul
62626467b4 fixes some GLSL bugs 2008-07-02 12:45:16 -06:00
Brian Paul
c55a72ef48 mesa: regenerated files 2008-07-02 12:42:52 -06:00
Brian Paul
8a353c4020 mesa: fix all(bvec2) function typo, add missing bvec2/3/4() constuctors
cherry-picked from master
2008-07-02 12:42:12 -06:00
Brian Paul
918f3b17e5 mesa: regenerated files 2008-07-02 12:38:48 -06:00
Brian Paul
18adc71822 mesa: fix all(bvec2) function typo, add missing bvec2/3/4() constuctors 2008-07-02 12:38:48 -06:00
Roland Scheidegger
5ef4e4ffb8 mesa: fix issues around multisample enable
multisample enable is enabled by default, however gl mandates multisample
rendering rules only apply if there's also a multisampled buffer.
2008-07-02 20:21:06 +02:00
Eric Anholt
a995bdced2 intel-gem: Emit an MI_FLUSH at glFlush() so frontbuffer rendering is flushed.
We have something similar in the X Server that covers X Server rendering, this
is the equivalent here for rendering to the front buffer.  If we cared about
avoiding this at glFlush time, we could only do this when some actual
frontbuffer rendering had occurred.

Bug #16392.
2008-07-02 11:16:30 -07:00
Eric Anholt
4b3ed4d2d1 intel-gem: Fix y-tile swizzling for our G965 with swizzle_mode=1.
Apparently in Y mode we get bit 6 ^ bit 9.  The reflect demo in 'd' mode now
displays correctly.
2008-07-02 10:21:44 -07:00
Eric Anholt
19f585a3cf intel-gem: Fix Y-tiling span setup.
The boolean that the server gives us for whether the region is tiled was
getting used as the enum for what tiling mode.  Instead, guess the correct
tiling in screen setup.

Also, fix the Y-tiling pitch setup.  The pitch to the next tile in Y is
32 scanlines, not 8.
2008-07-02 09:10:21 -07:00
Brian Paul
6befdca6a3 generate a link error if the vertex shader references too many textures 2008-07-02 09:16:10 -06:00
Brian Paul
43346fb1fb set ctx->Const.MaxVertexTextureImageUnits = 0
This disallows vertex shader texture sampling.  See bugs 16157, 13838.
2008-07-02 09:14:53 -06:00
Brian Paul
8261c40bb9 mesa: init default span fog if fragprog uses fog input register
See bug #16194 for original patch.  Cleaned up a bit here.
2008-07-02 08:58:32 -06:00
Timo Aaltonen
053bf7f5db rules: Replace the old build system with the new autotools-based system. 2008-07-02 17:56:51 +03:00
Ian Romanick
ea190fe050 VBO: Regenerate files based on recent changes to gl_API.xml
Since GL_ARB_vertex_buffer_object protocol isn't supported yet, these
changes are innocuous.
2008-07-02 06:26:11 -07:00
Paulo Cesar Pereira de Andrade
abd71144f0 Bring over commit 8d4d0b47a07a298a20ffae9fefe96c8c7ca9dccc from xserver tree 2008-07-02 06:22:47 -07:00
Timo Aaltonen
e6a5e6512f Add gl.pc to libgl1-mesa-dev 2008-07-02 14:07:23 +03:00
Ian Romanick
21e0d47514 VBO: Add missing functions related to VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB 2008-07-01 19:30:32 -07:00
Ian Romanick
c52d6ad465 VBO: add GLX related annotations 2008-07-01 18:20:21 -07:00
Brian Paul
028739faed mesa: fix a GLSL vector subscript/writemask bug
This fixes a failure for cases like:
   vec4 v;
   v[1] *= 2.0;

The v[1] actually acts like a writemask, equivalent to v.y
The fix is a bit convoluted, but will do for now.
2008-07-01 17:59:07 -06:00
Brian Paul
e19af171cf mesa: move some functions 2008-07-01 17:52:31 -06:00
Brian Paul
9ae4d778d8 mesa: make _slang_swizzle_swizzle() non-private 2008-07-01 17:50:14 -06:00
Eric Anholt
e74f54793e intel-gem: Move bit 6 x tiling swizzle to a driconf option, and add new mode.
It turns out that it's not just deviceID dependent, and there's some additional
undefined factor that determines the bit 6 swizzling.  It's now controllable
with swizzle_mode=[012] until we get a response on how to automatically detect.
2008-07-01 16:14:08 -07:00
Brian Paul
32a5c40336 mesa: better function inlining in the presence of 'return' statements
Before, the presence of a 'return' statement always prevented inlining
a function.  This was because we didn't want to accidentally return from
the _calling_ function.  We still need the semantic of 'return' when inlining
but we can't always use unconditional branches/jumps (GPUs don't always
support arbitrary branching).

Now, we allow inlining functions w/ return if the return is the last
statement in the function.  This fixes the common case of a function
that returns a value, such as:

vec4 square(const in vec4 x)
{
   return x * x;
}

which effectively compiles into:

vec4 square(const in vec4 x)
{
   __retVal = x * x;
   return;
}

The 'return' can be no-op'd now and we can inline the function.
2008-07-01 11:41:21 -06:00
Brian Paul
b2247c7d29 mesa: add/fix some IrInfo entries for debugging purposes 2008-07-01 11:41:02 -06:00
Timo Aaltonen
bc32cd7fc8 Add dri_interface.h to mesa-common-dev. 2008-07-01 18:58:17 +03:00
Timo Aaltonen
24fde3cf34 Drop mesa-swx11-source. 2008-07-01 18:56:38 +03:00
Timo Aaltonen
7ceaa0916a Re-add linux-osmesa-static and linux-osmesa32-static
they were dropped by mistake during the merge.
2008-07-01 18:51:01 +03:00
Brian Paul
011b0e51e4 link to DRM 2.3.1 2008-07-01 09:02:10 -06:00
Brian Paul
2ce4b985a5 press 'm' to toggle multisample enable/disable 2008-07-01 08:49:12 -06:00
Brian Paul
634d2af2b0 init machine->Samplers (fixes vertex program texture fetches) 2008-07-01 08:49:12 -06:00
Timo Aaltonen
4c958fbfb4 Build-depend on x11proto-dri2-dev. 2008-07-01 16:24:46 +03:00
Timo Aaltonen
9795ef4348 Refresh patches, and drop obsolete 00_create-libdir.patch and 01_fix-makefile.patch 2008-07-01 16:07:17 +03:00
Julien Cristau
768d8e0563 update changelog and require libdrm 2.3.1 2008-07-01 13:46:54 +02:00
Julien Cristau
374be37dd9 Merge branch 'master' of git.freedesktop.org:/git/mesa/mesa into debian-experimental
Conflicts:

	.gitignore
	Makefile
	bin/mklib
	configs/.gitignore
	configs/default
	configs/freebsd
	configs/freebsd-dri
	configs/linux-osmesa
	configs/linux-osmesa16
	configs/linux-osmesa16-static
	configs/linux-osmesa32
	docs/download.html
	docs/install.html
	docs/news.html
	docs/relnotes.html
	doxygen/Makefile
	doxygen/doxy.bat
	doxygen/header.html
	doxygen/header_subset.html
	include/GL/internal/dri_interface.h
	progs/demos/.gitignore
	progs/directfb/Makefile
	progs/egl/Makefile
	progs/fbdev/Makefile
	progs/fbdev/glfbdevtest.c
	progs/fp/Makefile
	progs/glsl/.gitignore
	progs/glsl/Makefile
	progs/glsl/bump.c
	progs/glsl/mandelbrot.c
	progs/glsl/noise.c
	progs/glsl/toyball.c
	progs/miniglx/Makefile
	progs/samples/.gitignore
	progs/slang/Makefile
	progs/tests/.gitignore
	progs/tests/Makefile
	progs/tests/arbnpot.c
	progs/tests/cva.c
	progs/tests/dinoshade.c
	progs/tests/drawbuffers.c
	progs/tests/fbotest2.c
	progs/tests/fbotexture.c
	progs/tests/getprocaddress.c
	progs/tests/mipmap_limits.c
	progs/tests/multipal.c
	progs/tests/texline.c
	progs/tools/trace/Makefile
	progs/trivial/Makefile
	progs/trivial/dlist-edgeflag-dangling.c
	progs/trivial/dlist-edgeflag.c
	progs/trivial/point-param.c
	progs/trivial/quad-clip-nearplane.c
	progs/trivial/tri.c
	progs/vp/Makefile
	progs/xdemos/.gitignore
	progs/xdemos/Makefile
	progs/xdemos/glthreads.c
	src/egl/Makefile
	src/egl/drivers/demo/Makefile
	src/egl/drivers/dri/Makefile
	src/egl/main/Makefile
	src/glu/mesa/Makefile
	src/glu/mesa/Makefile.m32
	src/glu/mesa/project.c
	src/glu/mini/project.c
	src/glut/directfb/Makefile
	src/glut/directfb/callback.c
	src/glut/directfb/events.c
	src/glut/directfb/internal.h
	src/glut/directfb/window.c
	src/glut/os2/Makefile
	src/glut/os2/WarpWin.cpp
	src/glut/os2/glutOverlay.cpp
	src/glut/os2/glut_8x13.cpp
	src/glut/os2/glut_9x15.cpp
	src/glut/os2/glut_bitmap.cpp
	src/glut/os2/glut_cindex.cpp
	src/glut/os2/glut_cmap.cpp
	src/glut/os2/glut_cursor.cpp
	src/glut/os2/glut_event.cpp
	src/glut/os2/glut_ext.cpp
	src/glut/os2/glut_fullscrn.cpp
	src/glut/os2/glut_gamemode.cpp
	src/glut/os2/glut_get.cpp
	src/glut/os2/glut_hel10.cpp
	src/glut/os2/glut_hel12.cpp
	src/glut/os2/glut_hel18.cpp
	src/glut/os2/glut_init.cpp
	src/glut/os2/glut_input.cpp
	src/glut/os2/glut_key.cpp
	src/glut/os2/glut_keyctrl.cpp
	src/glut/os2/glut_keyup.cpp
	src/glut/os2/glut_mesa.cpp
	src/glut/os2/glut_modifier.cpp
	src/glut/os2/glut_roman.cpp
	src/glut/os2/glut_shapes.cpp
	src/glut/os2/glut_stroke.cpp
	src/glut/os2/glut_swap.cpp
	src/glut/os2/glut_teapot.cpp
	src/glut/os2/glut_tr24.cpp
	src/glut/os2/glut_util.cpp
	src/glut/os2/glut_vidresize.cpp
	src/glut/os2/glut_warp.cpp
	src/glut/os2/glut_win.cpp
	src/glut/os2/glut_winmisc.cpp
	src/glut/os2/glutbitmap.h
	src/glut/os2/glutstroke.h
	src/glut/os2/layerutil.h
	src/glut/os2/libGlut.DEF
	src/glut/os2/os2_glx.cpp
	src/glut/os2/os2_menu.cpp
	src/glut/os2/os2_winproc.cpp
	src/glw/Makefile
	src/glx/mini/Makefile
	src/glx/mini/miniglx.c
	src/glx/x11/glxext.c
	src/mesa/Makefile
	src/mesa/drivers/allegro/amesa.c
	src/mesa/drivers/allegro/direct.h
	src/mesa/drivers/allegro/generic.h
	src/mesa/drivers/d3d/D3DCAPS.CPP
	src/mesa/drivers/d3d/D3DHAL.H
	src/mesa/drivers/d3d/D3DInit.cpp
	src/mesa/drivers/d3d/D3DMESA.H
	src/mesa/drivers/d3d/D3DRaster.cpp
	src/mesa/drivers/d3d/D3DTEXT.CPP
	src/mesa/drivers/d3d/D3DTextureMgr.cpp
	src/mesa/drivers/d3d/D3DTextureMgr.h
	src/mesa/drivers/d3d/D3DUTILS.CPP
	src/mesa/drivers/d3d/DDrawPROCS.c
	src/mesa/drivers/d3d/DEBUG.C
	src/mesa/drivers/d3d/DEBUG.H
	src/mesa/drivers/d3d/DbgEnv.bat
	src/mesa/drivers/d3d/MAKEFILE
	src/mesa/drivers/d3d/OPENGL32.DEF
	src/mesa/drivers/d3d/WGL.C
	src/mesa/drivers/dri/Makefile.template
	src/mesa/drivers/dri/common/dri_bufmgr.c
	src/mesa/drivers/dri/common/dri_drmpool.c
	src/mesa/drivers/dri/common/dri_util.c
	src/mesa/drivers/dri/common/dri_util.h
	src/mesa/drivers/dri/common/xmlconfig.c
	src/mesa/drivers/dri/glcore/Makefile
	src/mesa/drivers/dri/i915/i915_fragprog.c
	src/mesa/drivers/dri/i915/i915_program.h
	src/mesa/drivers/dri/i915/i915_texprog.c
	src/mesa/drivers/dri/i915/i915_texstate.c
	src/mesa/drivers/dri/i915/i915_vtbl.c
	src/mesa/drivers/dri/i915/intel_context.c
	src/mesa/drivers/dri/i915/intel_context.h
	src/mesa/drivers/dri/i915/intel_pixel.c
	src/mesa/drivers/dri/i915/intel_render.c
	src/mesa/drivers/dri/i915/intel_screen.c
	src/mesa/drivers/dri/i915/intel_state.c
	src/mesa/drivers/dri/i915/intel_tex.c
	src/mesa/drivers/dri/i915/intel_tris.c
	src/mesa/drivers/dri/i915tex/i830_reg.h
	src/mesa/drivers/dri/i915tex/i830_texstate.c
	src/mesa/drivers/dri/i915tex/i830_vtbl.c
	src/mesa/drivers/dri/i915tex/i915_fragprog.c
	src/mesa/drivers/dri/i915tex/i915_metaops.c
	src/mesa/drivers/dri/i915tex/i915_tex_layout.c
	src/mesa/drivers/dri/i915tex/i915_texstate.c
	src/mesa/drivers/dri/i915tex/i915_vtbl.c
	src/mesa/drivers/dri/i915tex/intel_render.c
	src/mesa/drivers/dri/i915tex/intel_screen.c
	src/mesa/drivers/dri/i915tex/intel_tris.c
	src/mesa/drivers/dri/i965/brw_aub.c
	src/mesa/drivers/dri/i965/brw_aub_playback.c
	src/mesa/drivers/dri/i965/brw_cc.c
	src/mesa/drivers/dri/i965/brw_clip.c
	src/mesa/drivers/dri/i965/brw_clip_state.c
	src/mesa/drivers/dri/i965/brw_clip_util.c
	src/mesa/drivers/dri/i965/brw_context.c
	src/mesa/drivers/dri/i965/brw_curbe.c
	src/mesa/drivers/dri/i965/brw_defines.h
	src/mesa/drivers/dri/i965/brw_draw.c
	src/mesa/drivers/dri/i965/brw_draw_upload.c
	src/mesa/drivers/dri/i965/brw_eu.h
	src/mesa/drivers/dri/i965/brw_eu_emit.c
	src/mesa/drivers/dri/i965/brw_gs_state.c
	src/mesa/drivers/dri/i965/brw_misc_state.c
	src/mesa/drivers/dri/i965/brw_sf_emit.c
	src/mesa/drivers/dri/i965/brw_sf_state.c
	src/mesa/drivers/dri/i965/brw_state_cache.c
	src/mesa/drivers/dri/i965/brw_state_pool.c
	src/mesa/drivers/dri/i965/brw_tex.c
	src/mesa/drivers/dri/i965/brw_tex_layout.c
	src/mesa/drivers/dri/i965/brw_vs_state.c
	src/mesa/drivers/dri/i965/brw_vs_tnl.c
	src/mesa/drivers/dri/i965/brw_wm.c
	src/mesa/drivers/dri/i965/brw_wm.h
	src/mesa/drivers/dri/i965/brw_wm_glsl.c
	src/mesa/drivers/dri/i965/brw_wm_sampler_state.c
	src/mesa/drivers/dri/i965/brw_wm_state.c
	src/mesa/drivers/dri/i965/brw_wm_surface_state.c
	src/mesa/drivers/dri/i965/bufmgr_fake.c
	src/mesa/drivers/dri/i965/intel_batchbuffer.c
	src/mesa/drivers/dri/i965/intel_batchbuffer.h
	src/mesa/drivers/dri/i965/intel_blit.c
	src/mesa/drivers/dri/i965/intel_blit.h
	src/mesa/drivers/dri/i965/intel_buffers.c
	src/mesa/drivers/dri/i965/intel_context.c
	src/mesa/drivers/dri/i965/intel_context.h
	src/mesa/drivers/dri/i965/intel_mipmap_tree.c
	src/mesa/drivers/dri/i965/intel_mipmap_tree.h
	src/mesa/drivers/dri/i965/intel_pixel_bitmap.c
	src/mesa/drivers/dri/i965/intel_pixel_copy.c
	src/mesa/drivers/dri/i965/intel_screen.c
	src/mesa/drivers/dri/i965/intel_tex_validate.c
	src/mesa/drivers/dri/i965/server/i830_common.h
	src/mesa/drivers/dri/intel/intel_batchbuffer.c
	src/mesa/drivers/dri/intel/intel_batchbuffer.h
	src/mesa/drivers/dri/intel/intel_blit.c
	src/mesa/drivers/dri/intel/intel_buffers.c
	src/mesa/drivers/dri/intel/intel_context.c
	src/mesa/drivers/dri/intel/intel_context.h
	src/mesa/drivers/dri/intel/intel_mipmap_tree.c
	src/mesa/drivers/dri/intel/intel_mipmap_tree.h
	src/mesa/drivers/dri/intel/intel_screen.h
	src/mesa/drivers/dri/r200/r200_texstate.c
	src/mesa/drivers/dri/r300/r300_cmdbuf.c
	src/mesa/drivers/dri/r300/r300_context.h
	src/mesa/drivers/dri/r300/r300_ioctl.c
	src/mesa/drivers/dri/r300/r300_reg.h
	src/mesa/drivers/dri/r300/r300_state.c
	src/mesa/drivers/dri/r300/r300_tex.h
	src/mesa/drivers/dri/r300/r300_texstate.c
	src/mesa/drivers/dri/radeon/radeon_screen.c
	src/mesa/drivers/windows/gdi/wmesa.c
	src/mesa/drivers/x11/fakeglx.c
	src/mesa/drivers/x11/xm_dd.c
	src/mesa/glapi/Makefile
	src/mesa/glapi/dispatch.h
	src/mesa/glapi/glapioffsets.h
	src/mesa/glapi/glapitable.h
	src/mesa/glapi/glapitemp.h
	src/mesa/glapi/glprocs.h
	src/mesa/main/api_validate.c
	src/mesa/main/attrib.c
	src/mesa/main/config.h
	src/mesa/main/context.c
	src/mesa/main/context.h
	src/mesa/main/dlist.c
	src/mesa/main/drawpix.c
	src/mesa/main/enums.c
	src/mesa/main/fbobject.c
	src/mesa/main/image.c
	src/mesa/main/imports.h
	src/mesa/main/mtypes.h
	src/mesa/main/points.c
	src/mesa/main/state.c
	src/mesa/main/texcompress_fxt1.c
	src/mesa/main/texenvprogram.c
	src/mesa/main/teximage.c
	src/mesa/main/texobj.c
	src/mesa/main/texstate.c
	src/mesa/main/version.h
	src/mesa/shader/prog_execute.c
	src/mesa/shader/program.c
	src/mesa/shader/shader_api.c
	src/mesa/shader/slang/library/slang_core.gc
	src/mesa/shader/slang/library/slang_core_gc.h
	src/mesa/shader/slang/slang_codegen.c
	src/mesa/sources
	src/mesa/sparc/glapi_sparc.S
	src/mesa/swrast/s_aalinetemp.h
	src/mesa/swrast/s_aatriangle.c
	src/mesa/swrast/s_aatritemp.h
	src/mesa/swrast/s_context.c
	src/mesa/swrast/s_copypix.c
	src/mesa/swrast/s_drawpix.c
	src/mesa/swrast/s_fragprog.c
	src/mesa/swrast/s_pointtemp.h
	src/mesa/swrast/s_readpix.c
	src/mesa/swrast/s_span.c
	src/mesa/swrast/s_texfilter.c
	src/mesa/swrast/s_tritemp.h
	src/mesa/swrast/s_zoom.c
	src/mesa/tnl/t_draw.c
	src/mesa/tnl/t_vb_fog.c
	src/mesa/tnl/t_vb_program.c
	src/mesa/tnl/t_vp_build.c
	src/mesa/vbo/vbo_split_copy.c
	src/mesa/x86-64/xform4.S
	src/mesa/x86/common_x86.c
	src/mesa/x86/glapi_x86.S
	windows/VC6/mesa/mesa/mesa.dsp
2008-07-01 13:18:27 +02:00
Dave Airlie
d3f7b463c3 dri: drop asserts to make build against stable libdrm
These asserts are of questionable use at the moment with things in flux.
2008-07-01 18:22:12 +10:00
Xiang, Haihao
bcc2a3d7e3 dri: Take the base image size into account when computing
first level of the mipmap.  fix #16210
2008-07-01 11:50:50 +08:00
Xiang, Haihao
9fa552eb0f dri: Take the base image size into account when computing
first level of the mipmap. fix #16421
2008-07-01 11:50:11 +08:00
Dan Nicholson
5cae1b747b autoconf: Improve the visibility of the swrast DRI driver
Improve the --with-dri-drivers help text so that users are aware that
they should install the swrast DRI driver.
2008-06-30 11:16:09 -07:00
Corbin Simpson
bb1744970d r3xx/r5xx: Enable ARB_point_parameters.
This isn't complete yet. It does cover the two most common usage cases,
though, and at least the third one (POINT_DISTANCE_ATTENUATION) is possible,
so I'll do that later.
2008-06-30 11:12:51 -07:00
Nicolai Haehnle
23e9b43ce4 r300: Fix dumb mistake in LOD bias translation 2008-06-30 08:37:37 +02:00
Nicolai Haehnle
4002b75e62 r300: Cleanup LodBias support
. There is both a per-texture unit and a per-texture object (at least for
OpenGL 1.4); this should now be supported properly.
. The LOD bias calculation in r300_state has been simplified and corrected
  (need to multiply by 32 instead of 31, and ensure clamping)
. do not clamp LOD bias in TexEnv, as that behaviour conflicts with what
  the spec says
. set Const.MaxTextureLodBias properly
. remove the no_neg_lod_bias property; if somebody can explain what
  it's good for, we can add it back in, but according to Google, nobody
  seems to use it
. removed some dead code and unused variables
2008-06-30 00:49:00 +02:00
Corbin Simpson
a74d22ba71 r300: Change LOD bias emission to more closely follow per-tex rules.
Okay, this time it's for real, and for good. This should be a perma-fix.
2008-06-29 10:32:19 -07:00
Corbin Simpson
543893eefd Revert accidental edit to progs/demos/lodbias.
*puts yet another paper bag over head*
2008-06-29 10:32:19 -07:00
Nicolai Haehnle
0918023c28 demos/shadowtex: Don't set TEXTURE_WRAP_T for 1D texture
The operation doesn't really make sense. It triggered a bug in the r300 DRI
driver (and possibly other drivers that simulate 1D textures via 2D textures).
I've added an isolated test case for this bug to Piglit, so everybody wins.
2008-06-29 17:34:14 +02:00
Nicolai Haehnle
bc775066aa r300: Fix wrap mode for 1D textures 2008-06-29 17:28:13 +02:00
Brian Paul
5f8ad807be s/GL_INVALID_VALUE/GL_INVALID_OPERATION/ in _mesa_get_uniformfv() 2008-06-28 16:50:07 -06:00
Brian Paul
6cb1270491 s/GL_INVALID_VALUE/GL_INVALID_OPERATION/ in _mesa_get_uniformfv() 2008-06-28 16:48:58 -06:00
Brian Paul
b429e9b2d7 mesa: added null ptr checks 2008-06-28 16:48:58 -06:00
Dan Nicholson
f6da1453c5 DRI-specific pkg-config file
Since the gl pkg-config file doesn't convey any specifics about the
backend in use, this adds a new pkg-config file for when DRI is in use.
This can be used by the xserver build to determine if the DRI and/or
GLX extensions are appropriate.
2008-06-27 16:25:28 -07:00
Dan Nicholson
985e1cdfe8 autoconf: Check for posix_memalign
Rather than just defining HAVE_POSIX_MEMALIGN on Linux, check whether
the function exists on all platforms and define the macro if it is.
2008-06-27 16:24:42 -07:00
Eric Anholt
f059a33022 intel: Fix locking when doing intel_region_cow().
This was broken in the merge of 965 blit support.  It tried to lock only
when things were already locked.
2008-06-26 15:34:27 -07:00
Eric Anholt
93f701bc36 intel: Replace sprinkled intel_batchbuffer_flush with MI_FLUSH or nothing.
Most of these were to ensure that caches got synchronized between 2d (or meta)
rendering and later use of the target as a source, such as for texture
miptree setup.  Those are replaced with intel_batchbuffer_emit_mi_flush(),
which just drops an MI_FLUSH.  Most of the remainder were to ensure that
REFERENCES_CLIPRECTS batchbuffers got flushed before the lock was dropped.
Those are now replaced by automatically flushing those when dropping the lock.
2008-06-26 15:29:28 -07:00
Alan Hourihane
3b132b297f Check in SwapBuffers for any new pending dri2 events 2008-06-26 22:53:29 +01:00
Eric Anholt
f6abe8f0f2 Merge commit 'origin/master' into drm-gem 2008-06-24 14:08:08 -07:00
Eric Anholt
5174b85a0c intel: Fix glCopyPixels when x or y are < 0 in hw coordinates.
Nothing would get drawn as the negative coordinates broke the rectangle
intersection code that used unsigned ints.  Tested with copypix demo and
sliding the copy to the upper left.
2008-06-24 14:04:11 -07:00
Eric Anholt
9a0d773116 i965: Use the shared intel_pixel_copy.c.
This disables the textured copy implementation on 965, which didn't appear
to work (mesa copypix demo, disable the blit path, move so that regions don't
overlap and textured is used, and you get garbage).  If we resurrect this for
i965, I'd rather it used the 915-style metaops instead.  Current metaops code
left in place so that whoever picks it up has a reference.
2008-06-24 13:18:40 -07:00
Eric Anholt
744357e29c intel: Same pixel function init for everyone now. 2008-06-24 11:49:21 -07:00
Eric Anholt
f5eb62a116 intel: Avoid glBitmap software fallback for blending when no blending occurs.
Mesa demos tend to leave blending on but in GL_ONE/GL_ZERO, or
GL_SRC_ALPHA/GL_ONE_MINUS_SRC_ALPHA with a source alpha of 1.0.
2008-06-24 11:44:42 -07:00
Eric Anholt
f23adc504d intel: Merge check_blit_fragment_ops between i915/i965.
Both had some useful bits for the other.
2008-06-24 11:34:42 -07:00
Eric Anholt
90d33edf37 intel: Note reasons for blit pixel op fallbacks under INTEL_DEBUG=pix. 2008-06-24 10:50:10 -07:00
Eric Anholt
eda68cccc0 i915: Add support for accelerated glBitmap, shared from 965. 2008-06-24 10:26:57 -07:00
Eric Anholt
5989098779 i915: Fix read != draw drawable for glCopyPixels.
Taken from commit bad6e175cf.
2008-06-24 10:25:19 -07:00
Eric Anholt
98fa0aec36 i915: Allow accelerated pixel ops to be disabled with INTEL_NO_BLIT.
This matches 965.
2008-06-24 10:24:32 -07:00
Eric Anholt
a42dac1879 i915: Accumulate the VB into a local buffer and subdata it in.
This lets GEM use pwrite, for an additional 4% or so speedup.
2008-06-23 15:44:10 -07:00
Eric Anholt
62d66caeba i915: Convert to using VBs instead of inline prims. 2008-06-23 14:45:13 -07:00
Zou Nan hai
b6e165d661 optimize 965 clip
1. increase clip thread number to 2
  2. do cliptest for -rhw

Cherry-picked from commits b47c9f8c91,
aa88d11e7d.
2008-06-23 15:16:11 +08:00
Dan Nicholson
fe3b62b5b1 Ensure all objects are built when installing DRI 2008-06-22 20:29:45 -07:00
Dan Nicholson
5aa4d5a87d Don't make libmesa.a or libglapi.a depend on asm_subdirs
Since the asm_subdirs target does not actually create a file, make will
always consider that it needs to be rebuilt. If libmesa.a and libglapi.a
have asm_subdirs as a prerequisite, then they will always need to be
rebuilt, too. The correct order will be preserved by the default target,
though.

This should fix #16358.
2008-06-22 20:27:00 -07:00
Dan Nicholson
7ec5e6a032 Create $(TOP)/$(LIB_DIR) for install, too
If `make install' is run without running `make' first, the $(LIB_DIR)
will not be created. This also changes the mkdir a little bit so that it
isn't run if necessary and added `-p' so that it is immune to races.
2008-06-22 20:19:35 -07:00
Brian Paul
71d2578ac5 replace __inline and __inline__ with INLINE macro 2008-06-21 10:55:24 -06:00
Brian Paul
ba97ed2b74 replace __inline and __inline__ with INLINE macro 2008-06-21 10:52:40 -06:00
Brian Paul
cc96d54920 replace __inline and __inline__ with INLINE macro 2008-06-21 10:52:32 -06:00
Brian Paul
37f19b94ac replace __inline and __inline__ with INLINE macro 2008-06-21 10:49:45 -06:00
Brian Paul
402e7f76b1 #undef DEBUG to silence warnings 2008-06-21 10:49:40 -06:00
Brian Paul
5ee7b7912c replace __inline and __inline__ with INLINE macro 2008-06-21 10:34:38 -06:00
Brian Paul
055ab81920 replace __inline and __inline__ with INLINE macro 2008-06-21 10:34:00 -06:00
Brian Paul
24197b4901 replace __inline and __inline__ with INLINE macro 2008-06-21 10:30:01 -06:00
Brian Paul
7899270b9f replace __inline and __inline__ with INLINE macro 2008-06-21 10:27:36 -06:00
Brian Paul
2e922b0e35 replace __inline and __inline__ with INLINE macro 2008-06-21 10:24:43 -06:00
Brian Paul
2c1bead069 s/inline/INLINE 2008-06-21 10:20:54 -06:00
Brian Paul
77d917a74a remove old comments 2008-06-21 10:20:31 -06:00
Alan Coopersmith
e1f9adc274 Solaris port of Mesa 7.1 with autoconf support
Signed-off-by: Brian Paul <brian.paul@tungstengraphics.com>
2008-06-21 10:19:45 -06:00
Daniel Zhu
f30e4af734 Rename quad function to quadr to avoid clash with Solaris quad typedef
Signed-off-by: Brian Paul <brian.paul@tungstengraphics.com>
2008-06-21 10:19:45 -06:00
Alan Coopersmith
1043a7c71a Make minstall work with Solaris /bin/sh
Solaris /bin/sh doesn't set $PWD for you

Signed-off-by: Brian Paul <brian.paul@tungstengraphics.com>
2008-06-21 10:19:45 -06:00
Alan Coopersmith
4ba39c40ae Fix builds with compilers other than gcc 3.0 & newer
Add #include "glheader.h" for definition of __builtin_expect for compilers
that don't support it.

Signed-off-by: Brian Paul <brian.paul@tungstengraphics.com>
2008-06-21 10:19:45 -06:00
Brian Paul
3491cbea88 added pointer to beta/release candidates 2008-06-21 10:19:45 -06:00
Alex Deucher
dc25661099 R300: 1002:5657 is actually RV410
See bug 14289
2008-06-21 10:52:49 -04:00
Roland Scheidegger
b3f1aac95e r200: fix typo in r200TryDrawPixels parameter validation (bug 16406) 2008-06-21 02:54:14 +02:00
Roland Scheidegger
afbb645906 r200: fix typo in r200TryDrawPixels parameter validation (bug 16406) 2008-06-21 02:52:18 +02:00
Brian Paul
21177c8764 mesa: tweak mipmap level selection for cube maps
This is just a hack.  After we convert the 3D texcoord into a face plus 2D
texcoord we need to recompute the partial derivatives and mipmap LOD.
But we don't have the info to do that.  Adjusting the original mipmap
level by -1 seems to give somewhat better results than before though.
2008-06-19 14:37:50 -06:00
Eric Anholt
0da9bc6a69 i915: Note the non-PBO fallback for textured drawpixels under DEBUG_PIXEL. 2008-06-18 14:35:59 -07:00
Eric Anholt
bbe80af457 i915: Restore the accelerated PBO pixel path functions after GEM changes.
The fencing code is not required, and waiting on the fences defeated one of
the purposes of the extension, which is to allow asynchronous readpixels.
2008-06-18 14:19:18 -07:00
Eric Anholt
654258a4fe Merge commit 'origin/master' into drm-gem 2008-06-18 14:07:38 -07:00
Eric Anholt
cf29ab3ba0 i915: Bug #14313: Fix accelerated (PBO) ReadPixels.
Refactoring of mine in 02d5ba8491 broke it
by failing to understand that the masking was about sign extension.
2008-06-18 13:50:49 -07:00
Brice Goglin
2b831e73f5 Prepare changelog for upload 2008-06-18 20:59:24 +02:00
Brice Goglin
6ec170290c Put all configs/ changes into the .diff.gz
Put back our configs/ changes into the .diff.gz since choose-configs
needs them before quilt is invoked. Put 04_cleanup-osmesa-configs.patch
there as well for #485161.
2008-06-18 20:59:09 +02:00
Brice Goglin
7c8ea0899a Revert "Move our configs/ changes from the .diff.gz into our quilt patches"
This reverts commit 03970183fc.

Conflicts:

	debian/changelog
2008-06-18 20:55:42 +02:00
Brice Goglin
f81070dbd5 Pull from mesa_7_0_branch 2008-06-18 20:55:00 +02:00
Brice Goglin
955c2ef48f Merge branch 'mesa_7_0_branch' of git://git.freedesktop.org/git/mesa/mesa into debian-unstable 2008-06-18 20:52:25 +02:00
Xiang, Haihao
2ac4919d24 i965: add support for Intel 4 series chipsets 2008-06-18 15:48:45 +08:00
Xiang, Haihao
3e8aadee8b i965: add support for Intel 4 series chipsets 2008-06-18 15:33:33 +08:00
Xiang, Haihao
3ed89025f3 i915: The pitch passed to intelEmitCopyBlitLocked should be in pixels,
not in bytes. Reported by Christopher Dissauer.
2008-06-18 13:52:04 +08:00
Xiang, Haihao
5b42bbce70 i915: fix data size in intelTryDrawPixels. Reported by Christopher Dissauer 2008-06-18 13:40:22 +08:00
Brian Paul
3064069540 mesa: fix inconsistent use of GL_UNSIGNED_INT vs. GL_UNSIGNED_INT_24_8_EXT for Z unpacking 2008-06-17 16:44:04 -06:00
Brian Paul
d2e0a11aab mesa: fix inconsistent use of GL_UNSIGNED_INT vs. GL_UNSIGNED_INT_24_8_EXT for Z unpacking 2008-06-17 16:44:00 -06:00
Eric Anholt
64adeb163d [intel] Fix no_rast option on non-965.
The no_rast fallback was getting partially overwritten by later TNL init,
resulting in a segfault when things were in a mixed-up state.
2008-06-17 14:14:02 -07:00
Eric Anholt
e2baf564d1 [intel-gem] Bug #16326: Fix X tile unswizzling on 965.
Apparently a bit gets flipped in the addressing for some rows of each tile.
2008-06-17 11:18:02 -07:00
Brice Goglin
5033e5b36d Prepare changelog for upload 2008-06-17 20:01:01 +02:00
Brice Goglin
6a6a9c1c5a Pull from mesa_7_0_branch 2008-06-17 20:00:37 +02:00
Brice Goglin
3d6aa2e06f Merge branch 'mesa_7_0_branch' of git://git.freedesktop.org/git/mesa/mesa into debian-unstable 2008-06-17 19:54:47 +02:00
Brice Goglin
03970183fc Move our configs/ changes from the .diff.gz into our quilt patches
with 04_cleanup-osmesa-configs.patch renamed into 04_debian-configs.patch
2008-06-17 19:32:21 +02:00
Brian Paul
47d046c93f mesa: make mm.c use unsigned ints for offsets.
If you have a GPU using this code and it has the offsets up in this space,
this fails.

cherry-picked from master
2008-06-17 10:10:53 -06:00
Wilfried Holzke
5b5bf21874 assorted glide driver fixes 2008-06-17 10:08:22 -06:00
Brian Paul
51ad6e3425 glu: silence warnings 2008-06-17 10:08:22 -06:00
Wilfried Holzke
718724deeb assorted glide driver fixes/updates 2008-06-17 10:03:03 -06:00
Brian Paul
85c325c36c add hyphen to rm command 2008-06-17 10:02:10 -06:00
Brian Paul
7e6d99f5ec glu: silence warnings 2008-06-17 09:01:40 -06:00
Dave Airlie
a1523c61ea mesa: make mm.c use unsigned ints for offsets.
If you have a GPU using this code and it has the offsets up in this space,
this fails.
2008-06-17 16:29:45 +10:00
Corbin Simpson
27b7f896d4 r300: Make LOD bias a persistent environment variable.
Per airlied's suggestion.
2008-06-16 11:40:34 -07:00
H. Verbeet
e9d1889891 Compute/setup fog coordinates even if vertex program is enabled.
Only when fog's enabled, of course.
In the usual case, this is just a pass-through operation.
2008-06-16 10:40:32 -06:00
Brian Paul
6ce6dc961b bump version to 7.0.4 2008-06-16 10:19:29 -06:00
Brian Paul
186883611e fix glPixelZoom stack over flow on Windows 2008-06-16 10:19:28 -06:00
Brian Paul
48b3c59cb9 mesa: allocate pixel zoom arrays on heap, not stack
Fixes stack overflow on Windows.

cherry-picked from master
2008-06-16 10:19:28 -06:00
Brian Paul
04b9d5bc23 Fix _mesa_new_program() recursive call regression
This was introduced by the "i965 GLSL merge" from master (ce7a9efb09)
2008-06-16 10:19:28 -06:00
Brian Paul
91707e9020 fix GLSL generic vertex attrib linking bug 2008-06-16 10:19:28 -06:00
Brian Paul
ec2d0decbd mesa: allocate pixel zoom arrays on heap, not stack
Fixes stack overflow on Windows.
2008-06-16 10:03:05 -06:00
H. Verbeet
bbce58802d Don't compute vertex fog when fragment program is active. 2008-06-16 09:41:08 -06:00
Corbin Simpson
588abd6696 r300: Fix new incarnation of bug 3195.
tests/bug_3195 doesn't render right, but at least it doesn't segfault this way.
2008-06-16 01:21:42 -07:00
Corbin Simpson
1738a9a535 r300: Forgot to clear old state before writing new state.
Oooops. Hehe.
2008-06-16 01:02:16 -07:00
Corbin Simpson
776580a6af r300: Enable LOD bias state emission.
Properly set t->filter_1 for r300_state to emit.
Expect buggies as people see LOD bias enabled for the first time...
2008-06-15 23:54:32 -07:00
Corbin Simpson
f7b8a13d65 Oops, misordered a few instructions.
Not like it matters, though, since it's not taking effect yet.
2008-06-15 17:30:07 -07:00
Corbin Simpson
6e6ca40f29 r300: Unbreak LOD biasing, a bit.
Needs a bit more work on submission.
2008-06-15 17:14:07 -07:00
Dan Nicholson
4fc66be296 No more drivers/xorg
Don't try to clean in xorg since GLcore is gone.
2008-06-15 09:06:27 -07:00
Corbin Simpson
f1ae5d4b44 r5xx: Enable fragment.position, partial ARB_shadow.
I don't like PROGRAM_BUILTIN; could we either patch Mesa or just use a different constant?
2008-06-14 19:32:33 -07:00
Corbin Simpson
7413c55d93 r5xx: Detangle FP fallback and translation switches.
r5xx should fallback if it encounters a bad FP.
TODO: Re-enable the dumb shader so we don't have to completely fallback.
2008-06-14 17:59:10 -07:00
Nicolai Haehnle
43da118961 r300: Add radeonTransformALU and fix a bug in r300_fragprog DPH
This new generic transform replaces "special" instructions by more generic
variants. Hopefully, we will be able to share this code between r300 and r500.
2008-06-14 23:09:15 +02:00
Nicolai Haehnle
825fdfd0c1 r300_fragprog: Use less complex instructions
MOV, ADD and MUL do not fit the hardware as well as MAD, but they are less
complex and thus leave more room for future optimizations.
2008-06-14 20:26:10 +02:00
Corbin Simpson
b97e48ffe3 r5xx: More FP rewriting; fix texrect FP insts. 2008-06-14 08:56:03 -07:00
Corbin Simpson
69004fb758 r5xx: New FP code, take two.
Add the code emission source file, and comment out unneeded tex de-swizzling.
2008-06-14 07:21:40 -07:00
Corbin Simpson
0a341ef296 r5xx: FP refactor, take one.
Yes, I know it's massive. Imagine how I felt, auditing 3000 lines of code.
2008-06-14 07:03:08 -07:00
Corbin Simpson
9704414d13 r3xx/r5xx: Don't force aniso.
*Pulls paper bag down over head*
2008-06-14 04:37:09 -07:00
Nicolai Haehnle
a1c0c56d70 r300: Implement GL_ARB_shadow and GL_EXT_shadow_funcs 2008-06-14 04:15:42 +02:00
Nicolai Haehnle
83ad2a756e texenvprogram: Mark textures using ARB_shadow as ShadowSamplers
Since ARB_fragment_program and friends are defined to ignore the setting of
the GL_TEXTURE_COMPARE_FUNC parameter, we have to explicitly enable the
shadow comparison by marking the texture unit in ShadowSamplers when
appropriate.
2008-06-14 04:15:31 +02:00
Nicolai Haehnle
2882e51625 r300: Add radeonCompilerDump for debugging 2008-06-14 04:15:20 +02:00
Nicolai Haehnle
e34dc8227c r300_fragprog: Refactor TEX transformation
Streamlining source and destination registers, as well as texcoord scaling for
RECT textures is now done in a radeon_program based transformation.

The idea is that this will allow us to optimize away unnecessary indirections
more easily.
2008-06-14 04:14:56 +02:00
Nicolai Haehnle
b5170bc9d3 r300: Add radeon_program and trivial refactoring of r300_fragprog to use it
The idea/hope is that radeon_program will serve as an intermediate
representation for r3xx up to r6xx fragment and vertex programs.
Right now, it is nothing more than a simplistic wrapper around Mesa's
prog_instruction, together with the notion of clauses, taken from r6xx docs.

The clauses will eventually be used to represent the nodes that are used in
r300 family fragment programs.
2008-06-14 04:14:05 +02:00
Nicolai Haehnle
e2aa45c2f9 r300: Do not include r300_fragprog.h from r300_context.h and other cleanups 2008-06-14 04:11:21 +02:00
Nicolai Haehnle
caeabb1ebe r300_fragprog: Remove dead declarations, move NOP declarations into source 2008-06-14 04:11:13 +02:00
Nicolai Haehnle
4ba1c7d848 r300_fragprog: Refactoring and cleanup
Refactor so that r300_pfs_compile_state "owns"/holds a pointer to
r300_fragment_program instead of the other way round. This is more natural from
an object orientation point of view.

Move the compiled hardware state into r300_fragment_program_code, in
anticipation of on-the-fly program recompilation based on external OpenGL
state.
2008-06-14 04:11:05 +02:00
Nicolai Haehnle
defadd9c03 r300_fragprog: Remove dead code 2008-06-14 04:10:52 +02:00
Nicolai Haehnle
b7669e4a86 r300/r500: Separate fragprog compiler structures
r500 code still used r300_pfs_compile_state, which contains some fields that
really only make sense on r3xx type hardware. In order to allow both fragprog
implementations to go forward without disturbing each other, I've pushed this
structure down into the respective r[3|5]00_fragprog.c
2008-06-13 20:51:20 +02:00
Nicolai Haehnle
4919cc3a2c r300: Fix depth texture GL_LUMINANCE vs. GL_INTENSITY mixup 2008-06-13 19:36:03 +02:00
Nicolai Haehnle
b1056b6127 r300: Reenable t->filter_1 (though currently not used) 2008-06-13 19:36:02 +02:00
George Sapountzis
1087cc61b3 glx: load swrast_dri.so
caveats:

- does not work with old (i.e. libGLcore) xserver:

- made unbindContext a noop

- extensions:

  GLX_SGI_make_current_read
  GLX_EXT_texture_from_pixmap
  GLX_MESA_copy_sub_buffer
2008-06-13 15:54:08 +03:00
George Sapountzis
7ffb1230b3 dri/swrast: make unbind a noop
This is for loading swrast_dri.so from libGL.

MakeContextCurrent() seems to unbind the context right after binding it and
DRI drivers also have a noop DriverAPI.UnbindContext ...
2008-06-13 15:52:32 +03:00
George Sapountzis
341987f688 dri/swrast: add OpenGL 2.1 functions 2008-06-13 15:48:34 +03:00
George Sapountzis
4297413656 glx: use ErrorMessageF 2008-06-13 15:48:06 +03:00
Xiang, Haihao
82a0e82232 i965: fix intel_batchbuffer_space. (bug#14709) 2008-06-13 13:53:46 +08:00
Brice Goglin
fe4264bf45 Prepare changelog for upload 2008-06-13 06:53:55 +02:00
Zack Rusin
95b34baa8f silly bug: it's PROGRAM_VARYING 2008-06-12 19:43:10 -04:00
Zack Rusin
928ec5cd3b glsl: make sure we replace all output reads with temporaries
test in if.glsl
2008-06-12 19:39:20 -04:00
Zack Rusin
53f5b9741a glsl: allow uniforms 2008-06-12 19:37:26 -04:00
Zack Rusin
effb73befa glsl: fix array size initialiazers using const variables
e.g.
const int kernelSize = 9;
uniform vec2 kernel[kernelSize];
2008-06-12 15:15:34 -04:00
Zack Rusin
19659a50f9 almost forgot - RelAddr is a boolean so use it here 2008-06-12 15:08:58 -04:00
Zack Rusin
2542c59c55 shaders: fix allocation of arrays of parameters 2008-06-12 15:08:27 -04:00
Zack Rusin
74964ff04d glsl: implement variable array indexes 2008-06-12 15:08:12 -04:00
Dan Nicholson
0440f5a187 Update .gitignore for progs/glsl 2008-06-12 06:37:45 -07:00
Dave Airlie
41bdb88f27 sparc: add swrast to dri drivers 2008-06-12 16:26:46 +10:00
Dave Airlie
2b0e75ea7a sparc: add DRI drivers for sparc patch from Fedora 2008-06-12 12:06:50 +10:00
Brian Paul
3f3e4f645d remove obsoleted doxygen \param comments
Someone changed the function parameters but didn't bother to update the
comments.

Also, whitespace changes, clean-ups.
2008-06-11 19:33:30 -06:00
Brian Paul
8d976aedc4 comments 2008-06-11 19:33:14 -06:00
Eric Anholt
407ce3da3c [intel-gem] Chase domain flag renaming in the DRM.
This is an API breakage only.
2008-06-11 14:44:48 -07:00
Eric Anholt
0227d91a9e [gem] Enable bo_reuse by default.
The objects are swappable, so we're less concerned by excessive object
allocation now, and it's about a 20% performance improvement.  If we get
concerns about the memory consumption from others, we can look into a
compromise position later.
2008-06-11 11:46:29 -07:00
Brice Goglin
2fa795a213 Pull from mesa_7_0_branch 2008-06-11 18:59:59 +02:00
Brice Goglin
e32aaf5da8 Merge branch 'mesa_7_0_branch' of git://git.freedesktop.org/git/mesa/mesa into debian-unstable 2008-06-11 18:58:59 +02:00
Brian
03447de338 disable ctx->Driver.NewProgram() call in _mesa_new_program()
This was causing infinite recursive calls w/ software drivers.
All vertex/fragment shaders should be allocated by calling
ctx->Driver.NewProgram(), not by calling _mesa_new_program().

(Cherry picked from commit 40133487db,
351a83163a).
2008-06-11 17:03:47 +08:00
Dave Airlie
ee5f4a4caf r300: disable the lowimpact fallbacks by default.
because really we should be able to just fix the driver.
(cherry picked from commit 7013eecf28)

There are actually even better reasons for this, the bottom line being that
enabling these fallbacks makes a lot of apps unusable mostly for no gain
whatsoever.
2008-06-11 10:42:16 +02:00
Xiang, Haihao
c04f3933ab i915: fix fd.o #14966 2008-06-11 11:36:01 +08:00
Xiang, Haihao
8f328c45e5 i915: Keith Whitwell's swizzling TEX patch. fix #8283
Cherry picked from commit 3369cd9a6f
2008-06-11 11:32:12 +08:00
Brice Goglin
9676f0cffc Pull from mesa_7_0_branch 2008-06-10 23:18:28 +02:00
Brice Goglin
2d0ca23319 Merge branch 'mesa_7_0_branch' of git://git.freedesktop.org/git/mesa/mesa into debian-unstable 2008-06-10 22:48:43 +02:00
Brian Paul
9563449c14 remove unnecessary swrast, tnl includes 2008-06-10 12:08:30 -06:00
Brian Paul
c233b4245f add some missing rule dependencies 2008-06-10 10:10:12 -06:00
Roland Scheidegger
17ec0dbd75 copy msaa visuals capability 2008-06-10 15:45:20 +02:00
Dan Nicholson
fbb96a0301 Distribute version.mk in case autoconf needs to be run again
Users may need to rebuild the configure script, so we need to distribute
version.mk so autoconf can run successfully.
2008-06-10 06:06:40 -07:00
Xiang, Haihao
6f4c8b5b50 i965: apply commit 6c1a98e97a to glsl
(cherry picked from commit a742bed99a)
2008-06-10 16:46:02 +08:00
Xiang, Haihao
a742bed99a i965: apply commit 6c1a98e97a to glsl 2008-06-10 16:31:36 +08:00
Michal Wajdeczko
f8bd9cc30f Add support for ATI_separate_stencil in display lists.
(cherry picked from commit 7f747204ea)
2008-06-10 16:28:06 +08:00
Michal Wajdeczko
d9f9b1cd0b [965] Correctly set read mask for OPCODE_SWZ in pass1.
While OPCODE_SWZ has usually been optimized away in pass0, it may still
exist if a SWZ with dst saturate was emitted in pass_fp.  Fixes an error
in oglconform fpalu.c.
(cherry picked from commit 13a6f73a64)
2008-06-10 16:21:31 +08:00
Michal Wajdeczko
eca283976b [965] Avoid emitting dead code for DPx/math instructions.
The pass1 optimization stage clears out writemasks and registers, but the
instructions themselves are still being processed at this stage, and could
have resulted in them still being emitted.
(cherry picked from commit c60b5dfde8)
2008-06-10 16:18:48 +08:00
Michal Wajdeczko
2176259ca6 [965] Improve pinterp performance by delaying reads of just-written regs.
(cherry picked from commit bb419970ef)
2008-06-10 16:18:09 +08:00
Michal Wajdeczko
8fe6fcb900 [965] Fix negating of unsigned value in emit_wpos_xy.
(cherry picked from commit 6c1a98e97a)
2008-06-10 16:16:52 +08:00
Michal Wajdeczko
76d6edcc38 [965] Add MVP code for position invariant vertex programs.
This fixes the arbvptorus demo.
(cherry picked from commit 5f10438f2d)
2008-06-10 16:13:06 +08:00
Michal Wajdeczko
98d6c671f5 [win32] Use native aligned memory allocation functions.
(cherry picked from commit 31fe7cf5e3)
2008-06-10 16:12:18 +08:00
Andrzej Trznadel
f652811df4 [965] Fix fp temp reg release code to not usually release all temps.
Also, use wrapped ffs() instead of native.
(cherry picked from commit 3105bc1d88)
2008-06-10 15:45:11 +08:00
Andrzej Trznadel
e279f4601d Fix compat implementation of ffs() to return 1-based bit numbers.
(cherry picked from commit e9809a36aa)
2008-06-10 15:44:53 +08:00
Keith Packard
87a30337a1 [i965] short immediate values must be replicated to both halves of the dword
The 32-bit immediate value in the i965 instruction word must contain two
copies of any 16-bit constants. brw_imm_uw and brw_imm_w just needed to
copy the value into both halves of the immediate value instruction field.
(cherry picked from commit ca73488f48)
2008-06-10 15:37:11 +08:00
Eric Anholt
9c2047b275 [965] Don't let the negate flags of src0 affect 1 constants in precalc_dst/lit
This patch is a variant of a submission by Michal Wajdeczko to fix
oglconform fpalu failures.
(cherry picked from commit b4cbf6983e)
2008-06-10 15:32:53 +08:00
Zou Nan hai
1dcb0433a3 [i915] fix fragment.position 2008-06-10 15:28:07 +08:00
Zou Nan hai
5ff27e02b3 [i965] fix wpos height 1 pixel higher
(cherry picked from commit b0f681b458)
2008-06-10 15:25:20 +08:00
Eric Anholt
4beee58e57 [965] Bug #9151: make fragment.position return window coords not screen coords.
(cherry picked from commit 9c8f27ba13)
2008-06-10 15:22:08 +08:00
Eric Anholt
1f9de20719 [915] Fix COS function using same plan as SIN.
The previous COS function failed badly outside of [-pi/2, pi/2].
2008-06-10 14:55:52 +08:00
Eric Anholt
d05a8d9750 [915] Use a quartic term to improve the accuracy of SIN results.
This is described in the link in the comment, and is the same technique that
r300 uses.
2008-06-10 14:46:12 +08:00
Eric Anholt
db5f206c00 [915] Fix fp SIN function, and use a quadratic approximation instead of Taylor.
The Taylor series notably fails at producing sin(pi) == 0, which leads to
discontinuity every 2*pi.  The quadratic gets us sin(pi) == 0 behavior, at the
expense of going from 2.4% THD with working Taylor series to 3.8% THD (easily
seen on comparative graphs of the two).  However, our previous implementation
was producing sin(pi) < -1 and worse, so any reasonable approximation is an
improvement.  This also fixes the repeating behavior, where the previous
implementation would repeat sin(x) for x>pi as sin(x % pi) and the opposite
for x < -pi.
2008-06-10 14:22:36 +08:00
Eric Anholt
9dface8347 [965] Fix potential segfaults from bad realloc.
C has no order of evaluation restrictions on function arguments, so we
attempted to realloc from new-size to new-size.
(cherry picked from commit e747e9a072)
2008-06-10 13:54:01 +08:00
Eric Anholt
32f4940883 [965] Fix inversion of SLT/SGE results in vertex programs.
The WM code had this right, so copy its behavior.  This reverts a flipping
of the arguments to SLT in brw_vs_tnl which came in with the GLSL code that
probably occurred to work around the flipped results, and brings the code back
in line with t_vp_build.c.
(cherry picked from commit 9bae03a583)
2008-06-10 13:44:54 +08:00
Eric Anholt
a7969a9b93 [965] Fix and enable separate stencil.
Note that this does not enable GL_EXT_stencil_two_side, because Mesa's computed
_TestTwoSide ends up respecting only STENCIL_TEST_TWO_SIDE_EXT (defaults to
GL_FALSE), even if the application uses only GL 2.0 / ATI entrypoints.
(cherry picked from commit 9136e1f2c8)
2008-06-10 13:30:25 +08:00
Eric Anholt
ad88130df5 [965] Replace our own depth constants in intel context with GL context ones. 2008-06-10 13:08:09 +08:00
Eric Anholt
d1e71bc08b [965] Remove dead code in upload_wm_surfaces.
(cherry picked from commit 3ecdae82d7)
2008-06-10 11:19:53 +08:00
Brian Paul
72f87b6947 fix Xlib libGL.so build problem.
Also, build driverfuncs.c into libmesa.a since it's always needed.
2008-06-09 16:06:44 -06:00
Brian Paul
f6246f85d7 s/SOLO/MESA/ 2008-06-09 14:09:09 -06:00
Brian Paul
910b3bfaeb Makefile clean-ups 2008-06-09 13:52:22 -06:00
Brian Paul
a80ccaadc7 more old stuff, rename SOLO->MESA, etc 2008-06-09 13:52:22 -06:00
Brian Paul
08c07b60be Makefile clean-ups 2008-06-09 13:52:22 -06:00
Brian Paul
376203cff8 document makefile changes 2008-06-09 13:52:22 -06:00
Alan Hourihane
5cf69fe511 Check for NULL pointer 2008-06-09 16:25:01 +01:00
George Sapountzis
906e189bd3 glx: use goto's vs. nested if's ala xserver
compile tested only
2008-06-09 17:47:49 +03:00
George Sapountzis
0793457039 glx: add dri_common.c ala xserver
also drop driFilterModes which is unused

in preparation of loading swrast_dri.so
2008-06-09 17:47:09 +03:00
George Sapountzis
4c7e02298f dri/swrast: minor cosmetic 2008-06-09 17:46:39 +03:00
Nicolai Haehnle
0009973119 r300: Workaround hardware readcache problem
This workaround is similar to the one found in r200_span.c.
It seems like some part of the read hardware doesn't realize that
VRAM has changed. By reading from an arbitrary position, this is fixed.

The piglit test bugs/r300-readcache is a regression test for this bug.
2008-06-08 22:38:58 +02:00
Brian
f440b0ddd9 remove realglx.[ch] from build 2008-06-08 11:25:30 -06:00
Roland Scheidegger
28c28f72fd i965: fix OPCODE_TEX when additional ops are needed 2008-06-08 14:05:07 +02:00
Roland Scheidegger
fa58fe247c i965: fix OPCODE_TEX when additional ops are needed 2008-06-08 14:04:39 +02:00
Corbin Simpson
21f50818b0 r300: Allow driconf to set a default anisotropy.
If an app does not use GL_EXT_tex_filter_aniso, this lets driconf set it instead.
2008-06-07 12:37:31 -07:00
Nicolai Haehnle
cb16876608 r300: Some cleanups in depth and stencil state handling
This also fixes a bug with Zfunc set to GL_NEVER in glean/paths.
2008-06-07 21:08:43 +02:00
Nicolai Haehnle
7cb63a25de r300: Apply writemask when clearing stencil buffer
This fixes the glean/maskedClear test.
2008-06-07 20:34:06 +02:00
Nicolai Haehnle
731686b713 r300: Fix stencil buffer clear
The glean/readPixSanity test passes now.
2008-06-07 20:28:04 +02:00
Nicolai Haehnle
75bfe630ff r300: Further anisotropic filtering fixes
Thanks to Corbin for the initial cut today. Fixed some minor stuff (in
particular, make sure we still use a MIP_LINEAR filtering mode; anisotropy
without MIP_LINEAR filtering is not the truly pleasing anisotropy).
2008-06-07 18:56:55 +02:00
Nicolai Haehnle
bf1a7c884d r300: Update LOD_BIAS register constants 2008-06-07 18:34:44 +02:00
Corbin Simpson
5e58e5d777 r5xx: Unbreak anisotropic filtering?
Not quite finished, maybe? Not sure.
2008-06-07 01:37:35 -07:00
Corbin Simpson
f39780242e r5xx: Fix speedy LIT once and for all.
To do: Add a slightly more accurate LIT. Will do later.
2008-06-06 22:07:18 -07:00
Jose Fonseca
ae18cbcfc5 Fix CRLF line endings. 2008-06-07 12:34:45 +09:00
Jose Fonseca
9286a14fbe Fix CRLF line endings. 2008-06-07 12:33:47 +09:00
Nicolai Haehnle
fa1bc0d7d6 r300: Improve texture layout calculations
The texture layout calculations for mipmapped cubemaps used to be completely
wrong, since the GPU expects images to be grouped by miplevel instead of by
face number.

This has been fixed now, though the memory layout is still slightly incorrect
for the smaller miplevels. Unfortunately, the docs are lacking in that area.
2008-06-06 23:47:46 +02:00
Keith Packard
f5d03af109 [intel-gem] Call the new throttle ioctl from swap buffers
Swap buffers is a fairly reasonable time to wait for the hardware for a
while; this keeps us from overrunning the ring.
2008-06-06 13:05:46 -07:00
Nicolai Haehnle
03a1144cd1 r300: Cleanup TX_MIN_FILTER defines
This commit should not affect the functionality at all, just cleanup
some of the original texture filter guesswork using information from
the register documentation.
2008-06-06 21:34:34 +02:00
Nicolai Haehnle
665605234d r300: Remove unused variable r300_tex_obj::dirty_state and related defines
This variable was only ever written to, but nobody used its value.
2008-06-06 21:34:34 +02:00
Brian Paul
0b72fada6a s/subdirs/asm_subdirs/ 2008-06-06 12:27:55 -06:00
Brian Paul
1d5b51abc8 move the install rules 2008-06-06 12:27:14 -06:00
Brian Paul
bde6b57e48 remove stray semicolon 2008-06-06 12:25:24 -06:00
Brian Paul
847f54e2fa move a beos-ism down into drivers/beos/Makefile 2008-06-06 12:24:44 -06:00
Brian Paul
dd750e0763 Remove the old, complicated default build rule; use the new driver_subdirs rule
Also, all the old driver-specific rules are now gone.
2008-06-06 12:18:40 -06:00
Brian Paul
358dcd7178 remove more old stuff, insert new driver_subdir build rules (but not enabled yet) 2008-06-06 12:12:59 -06:00
Brian Paul
04c6ca99dd new drivers/Makefile with simple default/clean/install rules 2008-06-06 12:09:55 -06:00
Brian Paul
c9739b2055 move directfb-libgl into drivers/directfb/Makefile 2008-06-06 12:09:01 -06:00
Brian Paul
f8563ddddb Move fbdev driver construction into src/mesa/drivers/fbdev/Makefile 2008-06-05 16:44:11 -06:00
Brian Paul
b55694512a reorder some lines, more make clean cmds 2008-06-05 16:28:00 -06:00
Brian Paul
4a68b62b86 remove X11, Glide, OSMesa sources 2008-06-05 16:27:43 -06:00
Brian Paul
e89e94e01a added dependencies 2008-06-05 16:26:15 -06:00
Brian Paul
2b84b22bad Move building of stand-alone Mesa into drivers/x11/Makefile
Also, some re-org, renaming, and general clean-up.
We're just a few steps away from removing the all the special case rules
for building drivers.
2008-06-05 16:08:42 -06:00
Brian Paul
ea7eb9a374 new Makefile for building "stand-alone", Xlib-based libGL 2008-06-05 16:06:17 -06:00
Brian Paul
bf5e573926 prefix some includes with mesa/ or glapi/ 2008-06-05 16:05:02 -06:00
Brian Paul
f8c6b6628d minor changes 2008-06-05 15:37:17 -06:00
Brian Paul
18906b7904 Move construction of libOSMesa.so into src/mesa/drivers/osmesa/Makefile
This removes some cruft from src/mesa/Makefile.
Something similar could be done for stand-alone / Xlib-Mesa libGL...
2008-06-05 15:36:07 -06:00
Brian Paul
91b491debe insert mesa/ before include files 2008-06-05 15:26:11 -06:00
Alan Hourihane
b2a9788ec6 Silence warning 2008-06-05 11:47:20 +01:00
Brian Paul
4c7a17c251 fix event handling issues (such as when resizing when not animating) 2008-06-04 16:11:24 -06:00
Brian Paul
6d9c3fa0c2 press 'a' to toggle animation 2008-06-04 16:04:04 -06:00
Brian Paul
c35e021f37 code refactoring (draw_frame(0, handle_event()) 2008-06-04 16:01:47 -06:00
Brian Paul
c5342ad0d0 remove references to incorrect -winwidth/-winheight, replace with -geometry 2008-06-04 15:56:30 -06:00
Brian Paul
4b71478326 Set the attribute as used.
Cherry-picked from gallium-0.1
2008-06-04 14:42:55 -06:00
Brian Paul
028fd5594c Set the attribute as used.
cherry-picked from gallium-0.1
2008-06-04 14:41:33 -06:00
Dan Nicholson
871125a68d autoconf: Collect arch/platform settings in one location
The architecture- and platorm-specific settings were scattered
throughout the configure script. This moves them near the beginning
before any of the driver-specific settings.
2008-06-04 13:00:35 -07:00
Brian Paul
0d8676822d remove old/unused foomesa.h example header 2008-06-04 09:33:02 -06:00
Brian Paul
f34767f04c call glutDestroyWindow() before exit 2008-06-04 09:30:32 -06:00
Zou Nan hai
0989471fdb [i915] GL_DEPTH_TEXTURE_MODE fix
Cherry picked from commit 7233eabaf0
with manual changes.
2008-06-04 15:57:37 +08:00
Xiang, Haihao
9e95fad02e i915: Fix GL_DEPTH_TEXTURE_MODE issue. (bug #16221) 2008-06-04 15:44:38 +08:00
Keith Packard
dbf3c5247c Merge commit 'origin/master' into drm-gem
Conflicts:

	src/mesa/drivers/dri/common/dri_bufmgr.h
	src/mesa/drivers/dri/intel/intel_bufmgr_ttm.c
	src/mesa/drivers/dri/intel/intel_bufmgr_ttm.h
	src/mesa/drivers/dri/intel/intel_ioctl.c
2008-06-03 22:56:25 -07:00
Dave Airlie
0b734bd7cf mesa/drm/ttm: allow build against non-TTM aware libdrm
I'll release a libdrm 2.3.1 without TTM apis included from a special
drm branch that should allow mesa 7.1 to build against it.

I've had to turn off DRI2 stuff.
2008-06-04 14:08:27 +10:00
Xiang, Haihao
696140bd1d i965: handle source depth to render target for glsl,
(cherry picked from commit d2540e6d4b)
2008-06-04 11:54:25 +08:00
Brian
380d15b7fe replace // comment with /* */ (bug 14916)
(cherry picked from commit eecb3ab7c6)
2008-06-04 11:52:38 +08:00
Xiang, Haihao
41261d64b2 i965: use _Current pointer instead of Current pointer.
Cherry picked from commit de1e9880f8
2008-06-04 11:51:19 +08:00
Zou Nan hai
ce7a9efb09 [i965] Add support for GL shading language in I965 driver.
Cherry picked from commit 6ef27b88e6,
d0ebdca4fa.
2008-06-04 11:47:08 +08:00
Eric Anholt
4b5b008d54 [intel] Convert drivers to using libdrm bufmgr code. 2008-06-03 14:43:48 -07:00
Zou Nan hai
8a38ebe328 [i965] This is to fix random crash in some maps of Ut2004 demo.
e.g. bridge of fate.
 	If vs output is big, driver may fall back to use 8 urb entries for vs,
	unfortunally, for some unknown reason, if vs is working at 4x2 mode,
	8 entries is not enough, may lead to gpu hang.

Cherry picked from commmit c9c64a100d
2008-06-03 11:30:41 +08:00
Zou Nan hai
dcc6671b85 [i915] don't use 4x4 filter for 1D shadowmap
Cherry picked from commit d24a5254c2
2008-06-03 11:23:44 +08:00
Zou Nan hai
b53b7581e4 [i965] fix fd.o bug #11471 and #11478
1. Follow EXT_texture_rectangle with YCbCr texture
	2. swap UV component for MESA_FORMAT_YCBCR

Cherry picked from commit 7676980d38.
2008-06-03 11:04:10 +08:00
Zou Nan hai
64a4a03c2a EXT_texture_sRGB support on i965
Cherry picked from commit 6bf81a5edf,
246d1d2522.
2008-06-03 10:09:33 +08:00
Ian Romanick
f688827ebd bug #16503: use INSTALL macro instead of hard-coding to bin/minstall
This is only part of the fix.  Someone with more autoconf-fu will have
to fix the rest
2008-06-02 11:19:35 -07:00
Nicolai Haehnle
96adcc2e21 [t_vp_build] Fix refcounting-related memory leak
This memory leak is identical to the earlier one in texenvprogram.
Fixed by not creating an additional reference to new programs in cache_item.

On top of that, remove some duplicated state setting.
2008-06-02 18:42:52 +02:00
Nicolai Haehnle
934a53eb44 [texenvprogram] Fix refcounting-related memory leak.
All newly created programs have RefCount == 1, but the fragment program cache
added an additional reference in cache_item, with the result being that none
of the programs were ever freed.

Solve the problem by not creating the additional reference in cache_item.
2008-06-02 18:42:49 +02:00
Brian Paul
b878c3f518 i915tex: fix fragment fog swizzle (from master) (bug 16195) 2008-06-02 09:29:22 -06:00
Brian Paul
6164163ca8 glDrawElement + VBO bug fix 2008-06-02 09:28:31 -06:00
Zou Nan hai
e92a53cd92 [i965] flip point sprite
Cherry picked from commit 1202c434d9
2008-06-02 17:05:57 +08:00
Zou Nan hai
2467af98b1 ARB sprite point support on i965
Cherry picked from commmit 60179434d1,
505453a04e with manual changes.
2008-06-02 17:01:31 +08:00
Xiang, Haihao
6f851d8875 _generic_read_RGBA_span_BGRA8888_REV_SSE2: It should adjust the source
and target pointers after do the first 2 pixels. fix bug #15850

Cherry-picked from commit 4b7d301c94
2008-06-02 14:28:42 +08:00
Xiang, Haihao
9b99bf89c4 i965: depth offset on glPolygonMode(GL_LINE/GL_POINT)
Cherry picked from 184cf464f4
2008-06-02 14:20:23 +08:00
Xiang, Haihao
7346fca083 965: use RGB565 to render a bitmap if Depth is 16
Cherry-picked from commit 5982d39799.
2008-06-02 14:15:24 +08:00
Xiang, Haihao
7facbb69c6 i965: don't swizzle fogcoord if FogOption is FOG_NONE.
fix #10788 issue on 965.

Cherry picked from commit 83068115e2
2008-06-02 14:08:26 +08:00
Xiang, Haihao
f59267d650 i915: set fogcoord to (f,0,0,1). fix #10788 issue on 915.
Cherry picked from commit 7eef52e975
2008-06-02 14:06:14 +08:00
Xiang, Haihao
71cb014195 mesa: fix a bad cast in put_values_z24.
The values passed to put_values_z24 are GLuint,
not GLubyte. fix #13543

Cherry picked from commit cf46aee14a
2008-06-02 13:59:51 +08:00
Xiang, Haihao
6c0f8db9c2 i965: The jump instruction count is added
to IP pre-increment, and should point to
the first instruction after the do instruction
of the do-while block of code

Cherry picked from commit 46e03d584a
2008-06-02 13:54:45 +08:00
Xiang, Haihao
49f1e2fc4c i965: fix an error in brw_vs_tnl.c
Update the tnl program if the state of TEXMAT is changed.
2008-06-02 13:46:31 +08:00
Eric Anholt
2d26e19535 [965] Clarify a bit of index buffer upload code.
Cherry picked from commit 5a49e84fcd
2008-06-02 13:18:00 +08:00
Xiang, Haihao
5b0c6cd49a i965: align the address of the first element within
the index buffer. (fix#11910)

Cherry picked from ea07a0df9a
2008-06-02 13:16:53 +08:00
Xiang, Haihao
c3ee8e46cc i965: fix projtex_mask
projtex_mask is only an 8bit field, and wm.input_size_masks includes
other attributes' information, therefore right shift is needed.

Cherry picked from 88451b04e9
2008-06-02 13:01:11 +08:00
Xiang, Haihao
46aac24261 i965: fix bad casts in do_blit_bitmap to support WindowPos correctly
Cherry picked from commit e66757c8ba
2008-06-02 11:54:35 +08:00
Xiang, Haihao
e1032ce718 i965: fix DEPTH_TEXTURE_MODE
Cherry picked from commit 6e620162a1 with
manual changes
2008-06-02 11:52:36 +08:00
Dave Airlie
7ead1c5d06 r500: add missing brackets around depth testing 2008-06-02 07:18:21 +10:00
Corbin Simpson
915e49e0fd r5xx: Enable depth write emission.
Thanks to nh for the r3xx version.
2008-06-01 11:45:30 -07:00
Nicolai Haehnle
c9ea62444c r300: Writing to result.depth in fragment programs (R3xx; only stub for R5xx)
Setup fg_depth_src for depth writing programs and change early Z (ztop)
semantics.

Piglit's version of glean/fragprog test passes now (unlike Glean, its
dependency on EXT_fog_coord, which we don't support, is optional).

R3xx only at the moment, but should be straightforward to adapt to R5xx
(I don't own an R5xx, and I don't want to break anything.)
2008-06-01 19:59:42 +02:00
Nicolai Haehnle
d9c7c5f071 [r300] Fix KIL instruction and swizzling of texture coordinates
The KIL instruction only works if at least one texture unit is enabled
in hardware.

Texture instructions do not support swizzles, negations etc. natively,
so we now emit an explicit swizzling etc. operation when the texture coordinate
requires it.

This fixes the Piglit fp-kil test.
2008-06-01 13:23:53 +02:00
Corbin Simpson
3225e2cdb6 r5xx: Add OPCODE_FLR.
Why didn't anybody tell me we were missing this one? I thought I committed it ages ago!
2008-06-01 03:23:00 -07:00
Corbin Simpson
9a34c68faf r5xx: Last emit_sop() for now.
This should also clean up LIT later on.
2008-05-31 22:41:54 -07:00
Corbin Simpson
bffa0909cb r5xx: More emit_sop(), stage 2.
SIN/COS.
2008-05-31 22:23:11 -07:00
Corbin Simpson
ea58dceb1c r5xx: Cleanup SOP with emit_sop().
I wish I had a snarky commit message, but I'll save that for after I get the
trig working with this.
2008-05-31 22:09:38 -07:00
Corbin Simpson
c9679ce1d2 r5xx: Dump shader constants when dumping program assembly. 2008-05-31 20:48:15 -07:00
Dave Airlie
7013eecf28 r300: disable the lowimpact fallbacks by default.
because really we should be able to just fix the driver.
2008-06-01 09:32:55 +10:00
Markus Amsler
a947c1a3fe r500: Use 8bit fog alpha compare value.
This fixes transparency issues on r500 by enabling
backwards compatibility with the r300 alpha compare value.
2008-05-31 03:10:21 +02:00
Eric Anholt
fccc427aac [intel-gem] Remember last offset of reused BOs to avoid more kernel relocs.
This is good for about 5% on ipers on 965, and should help any cpu-bound app.
2008-05-30 15:12:48 -07:00
Brian Paul
ce636f36f2 Fix segfault in _save_OBE_DrawElements() when using VBO and display list (bug 16156)
This was previously fixed in master by commit 982dcb74fd by Haihao Xiang.
2008-05-30 08:46:51 -06:00
Luc Verhaegen
4a69c4173d Fix segfault on exit in unichrome driver (bug 16150) 2008-05-29 11:00:06 -06:00
Brian Paul
ef56a563a1 undo prev change to this VC7 project file
Meant to update the VC8 project file.
2008-05-29 10:46:39 -06:00
Karl Schultz
1190261c47 added prog_uniform.[ch] 2008-05-29 10:43:48 -06:00
Brian Paul
645c131264 Assorted Windows fixes (Karl Schultz) 2008-05-29 10:42:02 -06:00
Brian Paul
a1a0e51043 Use the GLuint64EXT type defined by GL_EXT_timer_query
Removes some compiler #ifdef stuff.
2008-05-29 10:42:02 -06:00
Dennis Kasprzyk
328621509f R1/2/3/4/5xx: fixed calculation of cliprects in CopyBuffer. 2008-05-29 11:25:21 +02:00
Dennis Kasprzyk
377016d728 Report correct damage rectangle in CopySubBuffer. 2008-05-29 11:24:16 +02:00
Xiang, Haihao
93f2eec6b3 i965: roland's DXTn format texture patch(bug10347)
Cherry picked from commit db928291dc
2008-05-29 15:50:06 +08:00
Eric Anholt
46ef09d787 [965] Replace various alignment code with a shared ALIGN() macro.
In the process, fix some alignment issues:
- Scratch space allocation was aligned into units of 1KB, while the allocation
  wanted units of bytes, so we never allocated enough space for scratch.
- GRF register count was programmed as ALIGN(val - 1, 16) / 16 instead of
  ALIGN(val, 16) / 16 - 1, which overcounted for val != 16n+1.

Cherry picked from commit 77e0523fb7
2008-05-29 15:48:47 +08:00
Xiang, Haihao
7487ec0ff0 i965: align width/height for volume texture
Cherry picked from commit 00b86ecf6f
2008-05-29 15:45:12 +08:00
Xiang, Haihao
a25549866f intel: applying right alignment to compressed texture,
which make small textures(4x4,2x2,1x1) work well.

Cherry picked from commit 8ea66fa2ec
2008-05-29 15:43:31 +08:00
Xiang, Haihao
558cc6e38f i965: set mt->cpp differently with compressed texture
Cherry picked from commit 2cafd749b8
2008-05-29 15:40:44 +08:00
Keith Packard
d8395f9d9e [intel-gem] Once mapped, leave buffers mapped.
Mapping and unmapping buffers is expensive, and having the map around isn't
harmful (other than consuming address space). So, once mapped, just leave
buffers mapped in case they get re-used.
2008-05-28 23:28:46 -07:00
Markus Amsler
74a217fbcd r300: fix R300_FG_ALPHA_FUNC_VAL_MASK 2008-05-29 02:14:26 +02:00
Brian Paul
5adc763898 updated function list 2008-05-28 09:06:28 -06:00
Brian Paul
5429d4a04a replace make with $(MAKE) (bug 16133) 2008-05-28 08:53:53 -06:00
Xiang, Haihao
feb1fa1e83 i965: use BRW_TEXCOORDMODE_CLAMP instead of BRW_TEXCOORDMODE_CLAMP_BORDER
to implement GL_CLAMP

Cherry picked from commit ab99960858. fix #16005
2008-05-28 16:29:17 +08:00
Dave Airlie
3e6c791390 r300: disable cmdbuf debug again 2008-05-28 10:23:25 +10:00
Dave Airlie
261a15cf63 Merge branch 'r500-support'
Bring in all the r500 3D code into master should be as stable as the r300
code it is landing on top off.

Conflicts:

	src/mesa/drivers/dri/r300/r300_reg.h
	src/mesa/drivers/dri/r300/r300_state.c
	src/mesa/drivers/dri/radeon/radeon_screen.c
2008-05-28 10:20:14 +10:00
Dave Airlie
85af4fde7f r500: remove warnings and only start on newer drms.
This removes lots of warnings to the user, and only allows the driver
to run on > .29 drms for r500 cards.
2008-05-28 10:11:41 +10:00
Alex Deucher
867f5aac53 R3/4/5xx: update to use drm get_param for num gb pipes 2008-05-28 10:11:14 +10:00
Dave Airlie
5552500cdf r500: cleanup warnings and include files 2008-05-28 10:03:10 +10:00
Brian Paul
8bd70a7bbe update, re-org build/install instructions 2008-05-27 13:27:57 -06:00
Brian Paul
6525d250a8 set version string to 7.1 rc1 2008-05-27 12:51:37 -06:00
Brian Paul
5173fc6669 updates for 7.1 release 2008-05-27 12:51:10 -06:00
Brian Paul
0128703f03 prep for 7.1 RC1 2008-05-27 12:50:59 -06:00
Brian Paul
f32462343d allow GLX_SAMPLES_ARB==0 (bug 16073) 2008-05-27 09:49:44 -06:00
Brian Paul
e903f51bc4 allow GLX_SAMPLES_ARB==0 (bug 16073) 2008-05-27 09:49:18 -06:00
Jouk Jansen
0ccffacee2 updated for latest sources 2008-05-27 08:58:39 -06:00
Karl Schultz
9d3359d12a dependency fixes (bug 13544) 2008-05-27 08:50:47 -06:00
Brian Paul
08ef1b379a added sampler types to sizeof_glsl_type() 2008-05-27 08:50:15 -06:00
Karl Schultz
1e79831b56 dependency fixes (bug 13544) 2008-05-27 08:50:14 -06:00
Corbin Simpson
8c39e24ec3 r5xx: Add OPCODE_XPD. In working condition, I might add.
And we're officially finished with the ARB_fragment_program
instruction set. It's worth noting that LIT is still not reliable.
SIN and COS were fixed a few commits ago. We're finished with stage 1!
Whoohoo!
2008-05-27 02:12:10 -07:00
Corbin Simpson
a242b331c6 r5xx: Just a few small LIT fixes.
Still broken; will fix tomorrow.
2008-05-27 01:36:25 -07:00
Corbin Simpson
9412aee4dc r5xx: Fix emit_mov() regression.
Specifically, fix improper swizzling.
2008-05-27 01:36:25 -07:00
Dave Airlie
eee53dfb22 r500: the cs is shared per context - doh so don't use for program upload.
Also remove some unused bits of the r500 fragprog struct
2008-05-27 18:15:14 +10:00
Dave Airlie
7278266612 r500: need to re-setup inst offset/end for translated programs
this fixes texenv
2008-05-27 17:39:35 +10:00
Dave Airlie
774b3bc5a5 r500: reset fp/fp_const counts 2008-05-27 17:11:04 +10:00
Dave Airlie
4af22c9076 r300/r500: emit flush inside vap_cntl state atom
Not sure if this is a good or bad plan, it certainly doesn't make things worse here.
2008-05-27 17:08:03 +10:00
Dave Airlie
8eb7df6302 r500: hopefully fix 4096 texture harder 2008-05-27 15:29:39 +10:00
Corbin Simpson
b5372746ff r5xx: Fix FP temp counting.
One of the ref counters wasn't being added to the temp counter.
Yet another product of late-night coding...
2008-05-26 22:12:24 -07:00
Dave Airlie
9f03e93de9 r500: remove debugging 2008-05-27 12:46:44 +10:00
Dave Airlie
7b88f40116 r300/r500: fix r500 fragment program texture unit references 2008-05-27 12:45:15 +10:00
Dave Airlie
5a5ba35069 r500: initial support for tmu mappings 2008-05-27 10:59:42 +10:00
Corbin Simpson
b57ba7c5b0 r5xx: Enhance emit_mov().
Now we can add arbitrary sources and swizzles. Will make many things smoother.
2008-05-26 16:00:05 -07:00
Corbin Simpson
5499685931 r5xx: Moar LIT.
Still not working, but getting closer.
2008-05-26 15:18:41 -07:00
Corbin Simpson
a2db33219d r5xx: First stab at LIT. 2008-05-26 12:35:39 -07:00
Keith Packard
924eaa2f95 [intel] all flushing in intelEmitCopyBlit
Add both MI_FLUSH and intel_batchbuffer_flush to intelEmitCopyBlit.
This ensures that the data are flushed *and* the gem kernel driver sees the
various memory domain transitions.
2008-05-26 00:19:20 -07:00
Corbin Simpson
21b352bb14 Replace copyright on r500_fragprog.c
Huh, could have sworn I already did this once before...
Maybe I forgot to commit it?
2008-05-25 22:50:00 -07:00
Keith Packard
8ba91b4636 [intel] Enable buffer re-use for gem
Use the new DRM_IOCTL_I915_GEM_BUSY ioctl to detect
idle buffers for re-use.
2008-05-25 20:50:01 -07:00
Corbin Simpson
27d8fcd506 r5xx: Unbreak texture swizzling. 2008-05-25 19:53:48 -07:00
Corbin Simpson
f776f693c0 r5xx: Massive MAD cleanup.
Common uses of MAD now use emit_mad(), the two common negation masks work,
and fixed a few off-by-one errors.
2008-05-25 11:46:16 -07:00
Corbin Simpson
594760148c r5xx: Negation masks for every inst except SWZ.
Yay?
2008-05-25 11:35:54 -07:00
Corbin Simpson
bd74d2aa26 r5xx: More emit_alu().
Converted ADD.
2008-05-25 11:35:20 -07:00
Corbin Simpson
810270ad11 r5xx: Add emit_mad() for FP.
If it uses MAD, emit it with emit_mad()!
(Now available at your local grocer's. Multiply and add responsibly.)
2008-05-25 11:07:51 -07:00
Corbin Simpson
f1d04cd766 r5xx: Consolidate FP tex insts.
They're all the same, really.
2008-05-24 11:30:57 -07:00
Corbin Simpson
b6b5190682 r5xx: Fix SGE/SLT. 2008-05-24 10:25:22 -07:00
Corbin Simpson
6f918a9fda r5xx: Remove some debugging cruft. 2008-05-24 10:25:22 -07:00
Tormod Volden
7a29164f70 dri: vblank_mode warning
From what I can see the environment variables LIBGL_THROTTLE_REFRESH
and LIBGL_SYNC_REFRESH were taken out like 3 years ago, but this
warning was never updated.
2008-05-24 18:34:27 +02:00
Tormod Volden
de27760a3c dri: vblank_mode warning
From what I can see the environment variables LIBGL_THROTTLE_REFRESH
and LIBGL_SYNC_REFRESH were taken out like 3 years ago, but this
warning was never updated.
2008-05-24 18:32:03 +02:00
Dave Airlie
af77de66d9 r500: missed a couple of inst4s. 2008-05-24 18:18:18 +10:00
Dave Airlie
e9031d6f63 r500: add depth output write
Not sure how well this works yet, but we need to set the alpha to w_omask
2008-05-24 18:12:26 +10:00
George Sapountzis
95eb6422c7 dri/swrast: cosmetic, mainly generic vs. xorg terminology 2008-05-23 22:55:36 +03:00
George Sapountzis
73d66a3c63 dri/swrast: add dithering support 2008-05-23 22:55:12 +03:00
George Sapountzis
c1d4644f48 dri/swrast: add support for r3g3b2 2008-05-23 22:54:54 +03:00
George Sapountzis
b4a4829cd5 dri: add support for generating 3_3_2 configs 2008-05-23 22:52:52 +03:00
George Sapountzis
6e13d6d17e dri/swrast: split out common pixel macros 2008-05-23 22:52:36 +03:00
George Sapountzis
44e05f0870 dri/swrast: drop TODO list 2008-05-23 22:52:19 +03:00
George Sapountzis
d4510e53d8 drop GLcore 2008-05-23 22:48:55 +03:00
Eric Anholt
200fd13d4a Remove stale comment about glFlush().
We don't need an MI_FLUSH there, because everything that's been flushed in the
batch will eventually hit the hardware.
2008-05-23 12:43:05 -07:00
Eric Anholt
a74bf4ef34 Emit a flush after the swapbuffers blit, so contents end up on the screen.
Otherwise, since the MI_FLUSH at the end of every batch had been removed,
non-automatic-flushing chips (965) wouldn't get flushed and apps with static
rendering would get partial screen contents until the server's blockhandler
flush kicked in.
2008-05-23 12:18:50 -07:00
Corbin Simpson
9ab7a2df03 r5xx: Clean up some compiler warnings. 2008-05-23 00:18:14 -07:00
Corbin Simpson
30e61500e1 r5xx: Move dumb_shader.
Was getting ticked having to scroll around it, lawl.
2008-05-23 00:18:14 -07:00
Corbin Simpson
34010bcc91 r5xx: Add OPCODE_DST.
Works completely, swizzles and everything.
2008-05-23 00:18:14 -07:00
Corbin Simpson
d4e93864b8 r5xx: More trig work.
SCS now works. COS/SIN have slight issues still.
2008-05-23 00:18:14 -07:00
Eric Anholt
6cefae5354 Add back a mostly-correct glFinish for GEM and fake.
The right solution would probably be keeping a list of regions which have been
rendered to.
2008-05-22 10:46:58 -07:00
Keith Packard
76286bc76c [intel-gem] Make sure set_domain is called often enough.
The write_domain needs to be set after any batch buffer uses an object,
track when that happens in the new 'cpu_domain_set' field.
2008-05-22 10:44:47 -07:00
Dave Airlie
a01816da59 r500: bump state atom size up for fp and fp constants 2008-05-22 17:09:58 +10:00
Corbin Simpson
4f9dcdc35b r5xx: Fixed LRP.
Works perfectly. It's a complex one, though, so it might fail in weird ways...
2008-05-21 23:35:43 -07:00
Corbin Simpson
0dfbe9cdd7 r5xx: Change debug info for readability.
It's weird seeing the compiled program before the assembly, that's all.
2008-05-21 23:33:13 -07:00
Jesse Barnes
6c56e0e1fb Add cscope files to .gitignore 2008-05-21 15:36:08 -07:00
Corbin Simpson
d06f4edb14 r5xx: Initial (broken) OPCODE_LRP.
Will compile, run, and not eat your kids, but the math is wrong.
2008-05-21 13:51:32 -07:00
Dan Nicholson
e57f1b702e Follow along GL/glx -> glx renaming in xserver
The xserver glx modules were lifted up to the top level, so this changes
the glapi generation to look in the new location.
2008-05-21 10:55:49 -07:00
Kristian Høgsberg
fe7e01c834 Add remaining glapi generated server headers.
This adds all the headers needed by the xserver glx module and also adds
a rule to copy over the shared glapi.[ch] and glthread.[ch] files.

Specifying an xserver path (set XORG_BASE on the make command line) is
now mandatory when regenerating the glapi files.
2008-05-21 12:13:39 -04:00
Kristian Høgsberg
c30fe8fd7c Make the shared glapi files not include glheader.h. 2008-05-21 12:13:39 -04:00
Kristian Høgsberg
1b359bc88e Revert "glapi: Generate xserver glapi sources in the mesa tree"
This reverts commit 7688791fc5, and takes
us back to generating the glapi files straight into the xserver tree.

Conflicts:

	src/glx/x11/indirect_size_get.c
2008-05-21 12:13:39 -04:00
Corbin Simpson
1e2907f170 r5xx: Add OPCODE_POW.
Necessary for Google Earth, among other things.
2008-05-21 08:24:28 -07:00
George Sapountzis
2217158c37 dri/swrast: use Makefile.template 2008-05-21 18:21:50 +03:00
George Sapountzis
53784e786d dri/swrast: fb configs tweaks
@32: provide configs with depth=0, stencil=8
@16: provide configs with depth=0, stencil=8 and depth=16, stencil=8
2008-05-21 18:20:54 +03:00
George Sapountzis
d0c7ef4358 dri/swrast: re-indent FillInModes 2008-05-21 18:19:49 +03:00
Brian
2ec318640f added readtex.h dependency 2008-05-21 07:05:29 -06:00
Dave Airlie
bb57c30a53 r500: print out opcode string 2008-05-21 16:00:18 +10:00
Dave Airlie
b453b0e2e1 r500: set the RS unit register for R500 not R300 dangnammit..
So this appears to be my BUG. damn it to hell.

also fix sec color to be more like spec says.
2008-05-21 12:14:42 +10:00
Dave Airlie
9ec2b1c83f r500: finish main texture instruction decoding 2008-05-21 10:49:26 +10:00
George Sapountzis
280bf89bd4 Add DRI driver that uses the mesa swrast module. 2008-05-20 16:03:44 -04:00
George Sapountzis
c95e66120b Make utils.h self-contained.
Move stuff with drm dependencies to dri_util.h, and move a couple of
types without drm dependencies to utils.h.
2008-05-20 16:03:44 -04:00
Brian Paul
b539b61321 copy StateFlags in _mesa_clone_parameter_list() 2008-05-20 11:29:16 -06:00
Brian Paul
4978953c79 new multi-texture GLSL test 2008-05-20 11:01:17 -06:00
Brian Paul
b6fb0940c2 fix incorrect sampler numbering/indexing.
All samplers indexes were zero.
2008-05-20 10:59:18 -06:00
Corbin Simpson
2bda1a9502 r5xx: Count refs so we don't have to guess on temp reg allocation.
As a bonus, we can now have multiple temp temps, by slot.
2008-05-20 09:47:50 -07:00
Corbin Simpson
94994b13c5 r5xx: Fixup SOP insts.
Use the correct swizzle for alpha/SOP stuff.
2008-05-19 23:56:53 -07:00
Corbin Simpson
78fa506059 r5xx: New fix for COS/SIN/SCS.
Not perfect yet, but getting better.
2008-05-19 23:56:53 -07:00
Dave Airlie
f0d76d526b r300/r500: fixup some of the register write sizes 2008-05-20 16:30:36 +10:00
Dave Airlie
2005de48f9 r300: some ctrl-m's wierd. 2008-05-20 16:02:19 +10:00
Dave Airlie
282cdc8b5c r300/r500: fix RS col fmt bits 2008-05-20 15:59:56 +10:00
Xiang, Haihao
c6b36e5498 i965: Check fallback before accounting for index/vertex buffer size. fix #16028. 2008-05-20 13:28:42 +08:00
Brian Paul
e469d78d33 fix tempReg test in _mesa_combine_programs() 2008-05-19 16:03:43 -06:00
Corbin Simpson
476248befe r5xx: Fixup emit_tex, add debugging info, enable temp temps.
emit_tex now chases itself with an OUT if needed.
Added airlied's dump_program, with some fixes.
2008-05-19 11:06:41 -07:00
Brian Paul
fbfe2a58de Fix program refcounting assertion failure during context tear-down
When purging the program hash table, the refcount _should_ be one since
the program is referenced by the hash table.  Need to explicitly set to
zero before calling delete().

Also, purge high-level shader hash tables before low-level program hash tables.
2008-05-19 08:43:36 -06:00
Dave Airlie
03b3fed8f1 r500: add more input srcs 2008-05-19 21:58:28 +10:00
Dave Airlie
ac315792bf r500: fix swz gets and some returns 2008-05-19 21:40:40 +10:00
Dave Airlie
60b8e1f524 r500: add mask debugging 2008-05-19 21:11:55 +10:00
Dave Airlie
cddab021e3 r500: add fragment program debug dumper 2008-05-19 20:24:09 +10:00
Corbin Simpson
c60bdcf8a8 r5xx: Fix magic offsets for output fifo write masks.
Well, this sure explains a lot.
2008-05-19 00:00:08 -07:00
Corbin Simpson
2708d7f700 r5xx: Swap sources for CMP.
Follows the same pattern as the op on r3xx/r4xx. Thanks airlied.
2008-05-18 23:52:54 -07:00
Corbin Simpson
a6c38f2f64 r5xx: Fix typo of epic proportions. 2008-05-18 23:35:07 -07:00
Corbin Simpson
2225b9bdb0 r5xx: ALU/OUT fixups.
Lots of small changes. Intentionally breaks some tex stuffs.
2008-05-18 22:38:28 -07:00
Brian Paul
fd59f19cd2 Move _mesa_init_glsl_driver_functions() into shader_api.c
This allows making a bunch of functions static, and removes a state
tracker dependency on driverfuncs.c

cherry-picked from gallium-0.1
2008-05-18 16:04:55 -06:00
Brian Paul
88c0a74633 additional fog/color matrix changes from gallium-0.1 2008-05-18 15:55:24 -06:00
Brian Paul
6e92968d75 add state vars for color matrix, pixel transfer scale&bias
cherry-picked from gallium-0.1 (068c7bd912)
2008-05-18 15:52:13 -06:00
Brian Paul
2f8fc325ac mesa: added internal post color matrix scale/bias vars
cherry-picked from gallium-0.1 (302daeb2ec)
2008-05-18 15:50:20 -06:00
Brian Paul
0c78c766e4 fixes to _mesa_combine_programs(), from gallium-0.1 2008-05-18 15:46:26 -06:00
Brian Paul
5976a6a75c added div by zero check for Fog.End/Start (from gallium-0.1) 2008-05-18 15:41:36 -06:00
Brian Paul
4b6b0fd526 clean-ups / additions from gallium-0.1 branch 2008-05-18 15:41:01 -06:00
Dave Airlie
bdfd5d95c5 r300: fixup US_OUT_FMT bits 2008-05-18 17:58:29 +10:00
Keith Packard
8b49cc104d [intel-gem] Don't calloc reloc buffers
Only a few relocations are typically used, so don't clear the
whole thing.
2008-05-17 23:34:47 -07:00
Dave Airlie
126673261d r500: you can have a single texcoord 2008-05-18 15:25:08 +10:00
Corbin Simpson
0910d9d4d6 r5xx: Add OPCODE_KIL. 2008-05-17 13:38:35 -07:00
Corbin Simpson
c57b3b1d2c r5xx: Added OPCODE_DPH.
Like DP4, but with one swizzle change.
2008-05-17 12:45:46 -07:00
Corbin Simpson
6dd3c0ed96 r5xx: Fix FRC.
This makes tri-frc work.
(Remind me again why I'm allowed near a compiler, lawl.)
2008-05-17 09:27:35 -07:00
Corbin Simpson
16cc362f0b r5xx: Fix SCS.
Output instructions need to be marked OUT so they can write to the fifo.
Also, negation doesn't work with SWZ yet.
2008-05-17 07:12:38 -07:00
Corbin Simpson
c11a33fe76 r5xx: Add OPCODE_SWZ.
It's so easy!
2008-05-17 07:12:37 -07:00
Corbin Simpson
d5aa421661 r5xx: Add OPCODE_SCS.
It's disabled, though, because it doesn't work. I'll figure it out later...
2008-05-17 07:12:37 -07:00
Corbin Simpson
405ee871c5 r5xx: Adding more opcodes.
EX2, FRC, LG2, SIN, RCP, and RSQ, if you care.
All of these except FRC are like COS. This pretty much rounds out the set of
opcodes which can be done in one ALU inst.
2008-05-17 07:12:37 -07:00
Corbin Simpson
0de02f1716 r5xx: First swing at OPCODE_COS. 2008-05-17 07:12:37 -07:00
Corbin Simpson
d8529d9b00 r5xx: Unbreak MAX and MIN.
Both of them had faulty copypasta.
2008-05-17 07:12:37 -07:00
Dave Airlie
5e075fb809 r500: set fragprog end to correct place 2008-05-17 13:31:14 +10:00
Alex Deucher
ba50c3fed3 r300: SC register naming cleanup 2008-05-17 10:40:47 +10:00
Alex Deucher
791c95230c r500: write out the correct FP registers 2008-05-17 10:29:52 +10:00
Brian Paul
896c0cc8ec bring in fixes/changes from gallium-0.1 2008-05-16 15:47:55 -06:00
Brian Paul
f2533e787e AA tri and glMaterial fixes 2008-05-16 15:35:19 -06:00
Brian Paul
b2ccd5c1ae fix memory access error in vbo_bind_vertex_list
Picked from master (commit 8fc1a6808d)
2008-05-16 15:35:19 -06:00
Brian Paul
6f63543dd7 fix an attr/src mix-up when setting-up/binding vertex arrays
This fixes problems with incorrect material coefficients when glMaterial
is called per-vertex.
2008-05-16 15:35:19 -06:00
Brian Paul
c966f1629b fix segfault in AA triangle code when using certain shaders 2008-05-16 15:35:19 -06:00
Brian Paul
a2e6beade1 fix an attr/src mix-up when setting-up/binding vertex arrays
This fixes problems with incorrect material coefficients when glMaterial
is called per-vertex.
2008-05-16 15:23:04 -06:00
Brian Paul
f27c6f3139 fix merge collision 2008-05-16 15:17:35 -06:00
Brian Paul
f2632212ad silence warning, new assertion 2008-05-16 15:16:06 -06:00
Shunichi Fuji
e291cf6f8d free(key) in _tnl_UpdateFixedFunctionProgram() 2008-05-16 15:16:06 -06:00
Brian Paul
8bdf5b6e64 Fix a program refcounting error, don't share program parameter lists.
The refcounting bug was causing a memleak (unfreed programs).
The old parameter list sharing is not needed since the change in how
uniforms are handled.
2008-05-16 15:16:06 -06:00
Brian Paul
a3e86d43e6 minor changes to aid debugging 2008-05-16 15:16:06 -06:00
Brian Paul
eb4271ea8b remove stray, left-over RefCount++ 2008-05-16 15:16:06 -06:00
Brian Paul
6de6999edc whitespace/formatting 2008-05-16 15:16:06 -06:00
Brian Paul
1af2b14514 init SamplersUsed bits in _mesa_parse_arb_fragment_program 2008-05-16 15:16:06 -06:00
Brian Paul
885cc592df fix assertion typo: s/=/==/ 2008-05-16 15:16:06 -06:00
Shunichi Fuji
e6cd9d88d3 Fix memory leak in _tnl_UpdateFixedFunctionProgram 2008-05-16 13:18:25 -07:00
Brian Paul
0639998ee8 Fix DRI build 2008-05-16 13:15:03 -07:00
Dave Airlie
d6333af7e9 r500: default rsunit swizzle like fglrx 2008-05-15 20:38:41 +10:00
Dave Airlie
9aa62c7238 r500: shift tex src properly 2008-05-15 18:40:07 +10:00
Dave Airlie
76f32499d2 r500: fixup r500 rs unit texture coordinate counting 2008-05-15 18:40:07 +10:00
Dave Airlie
a0bc6d2fb2 r500: remove some debugging 2008-05-15 18:40:07 +10:00
Dave Airlie
73af48fff5 r500: split output/pixel masks and emit in the correct places 2008-05-15 18:40:07 +10:00
Dave Airlie
c9d5d11d2d r3/500: emit RS state before VAP 2008-05-15 18:40:07 +10:00
Dave Airlie
412c850eab r500: fixup the program allocations to be the correct sizes 2008-05-15 18:40:07 +10:00
Dave Airlie
350c80fa99 r300: set screen so that context init can find out chip ids 2008-05-15 18:40:07 +10:00
Dave Airlie
e1bffd0318 r500: add cmp support in theory 2008-05-15 18:40:07 +10:00
Dave Airlie
10e0a36a49 r500: some trivial fixups to get tri working.
the counter was being used one instruction over the end
2008-05-15 18:40:07 +10:00
Dave Airlie
375656440b r500: we just need to emit a colour for clear drop tex instruction 2008-05-15 18:40:07 +10:00
Brian Paul
ade508312c Updated GLSL uniform/sampler handling from gallium-0.1 branch
Previously, the shader linker combined the uniforms used by the vertex and
fragment shaders into a combined set of uniforms.  This made the implementation
of glUniform*() simple, but was rather inefficient otherwise.  Now each shader
gets its own set of uniforms (no more modelview matrix showing up in the
fragment shader uniforms, for example).

cherry-picked by hand from gallium-0.1 branch
2008-05-14 16:09:46 -06:00
Brian Paul
c807c1a23f mesa: new functions for managing list/index of uniforms
cherry-picked from gallium-0.1
2008-05-14 13:12:44 -06:00
Brian Paul
e0f160663e clean-up swizzle fields in fog code, fix NegateBase
cherry-picked from gallium-0.1
2008-05-14 13:01:13 -06:00
Brian Paul
bff695b926 sync up with gallium-0.1 changes
New _mesa_num_inst_dst_regs(), _mesa_is_tex_instruction() functions
2008-05-14 13:00:27 -06:00
Brian Paul
6ca948a303 added _mesa_combine_parameter_lists()
cherry-picked from gallium-0.1
2008-05-14 12:53:03 -06:00
Brian Paul
19ad9cf774 mesa: added _mesa_insert_instructions()
Also, use new _mesa_free_instructions() in a few places.

cherry-picked from gallium-0.1
2008-05-14 12:39:41 -06:00
Brian Paul
450136d368 mesa: added _mesa_free_instructions()
cherry-picked from gallium-0.1
2008-05-14 12:37:07 -06:00
Brian Paul
57e222d6e5 fix some additional program refcounting bugs 2008-05-14 12:11:17 -06:00
Xiang, Haihao
709f24adbb intel: Set right cliprects for the current draw region. fix #15057 2008-05-14 15:01:44 +08:00
Xiang, Haihao
4b7d301c94 _generic_read_RGBA_span_BGRA8888_REV_SSE2: It should adjust the source
and target pointers after do the first 2 pixels. fix bug #15850
2008-05-14 09:55:08 +08:00
Alex Deucher
f86baae1a7 R300: clean up GA registers 2008-05-13 16:12:57 -04:00
Alex Deucher
de3fc8b1c4 R3xx: clean up ZB registers 2008-05-13 15:46:23 -04:00
Alex Deucher
c5b7a1ee3c R300: clean up CB registers 2008-05-13 14:32:30 -04:00
Eric Anholt
cba90d4a77 [GEM] Actually include the presumed offset in initial relocations.
This avoids kernel relocations for most batchbuffer relocs.
2008-05-13 11:30:18 -07:00
Alex Deucher
8d70181b03 R300: clean up Fog registers 2008-05-13 14:02:29 -04:00
Alex Deucher
d09aa2138b R500: fixup r300EmitClearState() FP for r5xx 2008-05-13 13:38:30 -04:00
Alex Deucher
9ef4126d48 R300: cleanup FS code and fill in missing details 2008-05-13 08:37:58 -04:00
Alex Deucher
0cc8ed5ccc R3xx: more PVS cleanup 2008-05-13 06:09:55 -04:00
Alex Deucher
e000f2ab6e Merge branch 'r500-support' of git+ssh://agd5f@git.freedesktop.org/git/mesa/mesa into r500-support 2008-05-12 11:58:35 -04:00
Alex Deucher
2a4d1085cb R500: add support for 4k textures 2008-05-12 11:57:08 -04:00
Keith Packard
145523ba3a [intel] update GEM api. Add bo_subdata and bo_get_subdata driver hooks.
Track DRM GEM name changes.
Add driver hooks for bo_subdata and bo_get_subdata so that GEM can use pread
and pwrite.
2008-05-11 00:16:25 -07:00
Dan Nicholson
738d811b04 Don't link demos directly to X libraries
Since the linker will just pull in the libraries needed from libGL, we
don't need to link the demos directly to the X libraries. Fixes #15886.
2008-05-09 16:19:50 -07:00
Dan Nicholson
2d709fe272 autoconf: Allow XCB to be used for GLX
Adds an --enable-xcb switch to use XCB in GLX. This only has an effect
when the driver is DRI.
2008-05-09 07:10:24 -07:00
Dan Nicholson
5dbbde5b22 Default DRI driver directory to match X.Org xserver
Since the only valid consumer of the DRI drivers is the X.Org xserver,
this changes the default DRI driver directory to match xorg-server:
${libdir}/dri. The old default of /usr/X11R6/modules/dri was wrong for
nearly all current systems.
2008-05-09 07:06:52 -07:00
Dan Nicholson
d368eed9c7 autoconf: Attempt to figure out the PIC flags for the platform
This commit adds an autoconf macro, MESA_PIC_FLAGS, which sets the
PIC flags according to platform and static/shared setting. The platform
specifics are taken straight from libtool.m4 and stripped down to just
the flags and platforms we cover in Mesa. This should hopefully make it
possible to use autoconf on non-GCC platforms.

The macro is added external to configure.ac in acinclude.m4 since it's
pretty bloated.

Note to BSDers: Previously, x86 defaulted to non-PIC on FreeBSD. I
didn't carry that preference into this macro. Instead, you can just use
--disable-pic where desired.
2008-05-09 07:05:16 -07:00
Dave Airlie
0dbd5c8640 intel: use new mipmap generation hooks in driver. 2008-05-09 13:51:37 +10:00
Dave Airlie
86bd98c6aa swrast/dri: switch over users of generate_mipmap to new interface 2008-05-09 13:41:02 +10:00
Dave Airlie
0449bab2f8 Revert "mesa/intel: map/unmap texture objects around mipmap generation function."
This reverts commit c50ffc4cb8.

I'll fix this using the mipmap hooks I just picked from gallium-0.1
2008-05-09 13:33:56 +10:00
Brian
d4e1d85dba Remove unused texunit parameter to ctx->Driver.GenerateMipmap()
(cherry picked from commit c3395f4473)
2008-05-09 13:33:29 +10:00
Dave Airlie
a638676473 Added ctx->Driver.GenerateMipmap() driver hook
(cherry picked from commit 4c2f3dbca9)

Conflicts:

	src/mesa/drivers/common/driverfuncs.c
2008-05-09 13:33:06 +10:00
Dave Airlie
c50ffc4cb8 mesa/intel: map/unmap texture objects around mipmap generation function.
This at least stops the compiz brain explosion we were seeing, I do wonder
though if we should somehow be calling intel_generate_mipmap somehow.
2008-05-09 13:02:41 +10:00
Kristian Høgsberg
990e010394 Add RS690M PCI ID. 2008-05-08 19:48:32 -04:00
Keith Packard
0cb006c1fd [intel-gem] move domains to relocations. add set_domain to bo_map.
Fix the kernel API to place the read/write domain information in the
relocation instead of the buffer.
2008-05-08 10:38:55 -07:00
Keith Packard
fda5687241 [intel] intel_batchbuffer_flush using uninit 'used' to check for buffer empty
Make sure 'used' tracks the right value through the whole function.
Also, use GLint for intel_batchbuffer_space in case we do bad things
in the future.
2008-05-08 10:37:23 -07:00
Brian Paul
b4e75d6c41 disable debug printfs 2008-05-08 10:59:31 -06:00
Brian Paul
4566880656 disable GL_DEPTH_TEST before glDrawPixels in case window has unrequested depth buffer 2008-05-08 08:39:30 -06:00
Brian Paul
6a3fac8711 call glutDestroyWindow() 2008-05-08 08:37:52 -06:00
Xiang, Haihao
9508293e01 mesa: Call RENDER_FINISH on the zero pixel case. 2008-05-08 11:52:57 +08:00
Keith Packard
68a9161832 Merge commit 'anholt/drm-gem' into drm-gem 2008-05-07 20:20:26 -07:00
Brian Paul
5b5c931527 fix refcounting bugs in tnl/tex program caches 2008-05-07 18:51:44 -06:00
Brian Paul
12a317b93a updated options/help 2008-05-07 18:11:06 -06:00
Eric Anholt
ead798eb10 GEM: Remove already-disabled PIPE_CONTROL command.
This existed to get the icache flushed.  However, GEM handles this for us
now for sure, and we had disabled it prematurely anyway.
2008-05-07 14:01:18 -07:00
Eric Anholt
ab50ddaa91 GEM: Make dri_emit_reloc take GEM domain flags instead of TTM flags.
The GEM flags are much more descriptive for what we need.  Since this makes
bufmgr_fake rather device-specific, move it to the intel common directory.
We've wanted to do device-specific stuff to it before.
2008-05-07 13:51:29 -07:00
Dan Nicholson
a6464b3cb0 Never fail `make clean'
Mostly some pedantic changes such that `make clean' always ignores
errors. Also changed the top clean target to do the `touch
configs/current' dance instead of realclean.
2008-05-07 11:35:23 -07:00
Dan Nicholson
df8134c3cf Run `make clean' in drivers/xorg, too 2008-05-07 10:22:32 -07:00
Eric Anholt
8b2a7f08bc GEM: Don't emit an extra MI_FLUSH in the batch since GEM handles it. 2008-05-07 10:01:14 -07:00
Brian Paul
52fe7ea3d1 mesa: free shader program data before deleting shader objects.
Picked from master.
Fixes mem corruption seen when glean/api2 test exits.
2008-05-07 16:10:32 +01:00
Dan Nicholson
e8c2b9967f Refactor installation targets
Currently, there is a single path in src/mesa/Makefile to install that
has a few conditionals in it. This commit changes install to act like
default where we loop over $(DRIVER_DIRS), deciding what to do.

A new target, install-headers, has been broken out to accomodate
installing a standalone OSMesa where neither libGL or gl.pc are wanted.
2008-05-07 07:48:29 -07:00
Dan Nicholson
ec813878e4 Ensure recursive makes always propagate errors
There were a couple spots left where a recursive make could fail in a
chain of commands without stopping.
2008-05-07 07:11:49 -07:00
Dave Airlie
3d15280278 r500: cleanup r500 RS setup 2008-05-07 17:48:17 +10:00
Dave Airlie
53a7ccc08b r500: for rectangular textures set to unscaled coordinates. 2008-05-07 17:48:17 +10:00
Corbin Simpson
1da094c9ad r5xx: Fix FP inputs. (For good?)
FP inputs are now counted and mapped correctly, and temps
are allocated tightly and correctly.
2008-05-07 00:06:26 -07:00
Corbin Simpson
49c30ce958 r5xx: Fix false error with DP3/DP4.
DP3/DP4 only takes two arguments, but tried to load three, causing
a false fallback to the dumb shader.
2008-05-06 23:36:50 -07:00
Xiang, Haihao
44f6a6f9c4 i915: Add E7221 variant to i915.
Cherry picked from commit 39bcbe0921
2008-05-07 14:09:28 +08:00
Corbin Simpson
dc24fb51a3 r5xx: Index inputs and temps.
This is not the same as r3xx indexing. It only tries to protect inputs on
the pixel stack from getting clobbered by temps or texs.

Texs don't need special treatment since they read from special input regs
and write to the same temp regs as ALU/FC instructions.
2008-05-06 22:18:28 -07:00
Brian
df43fb661b implement full reference counting for vertex/fragment programs
Use _mesa_reference_vert/fragprog() wherever we assign program pointers.
Fixes a memory corruption bug found with glean/api2 test.
2008-05-06 23:08:51 -06:00
Keith Packard
c75b2d74d8 Merge commit 'anholt/drm-gem' into drm-gem 2008-05-06 22:07:58 -07:00
Keith Packard
a2ec8570ae [intel-GEM] partial support for memory domains.
Doesn't deal with local modifications yet (need new kernel set_domain ioctl
for that to work). Also, guesses what domains are affected based on the
read/write bits set in the flags. Works for 915, probably not so much for
965.
2008-05-06 22:06:41 -07:00
Corbin Simpson
40db59038c r5xx: FP: Add OPCODE_TXB.
Tex lookup with biased LOD. Should magically work.
2008-05-06 18:14:21 -07:00
Corbin Simpson
20baf128ef r5xx: FP: Make MOV/ABS look pretty.
We can't really do anything like emit_alu, so we're doing emit_mov instead.
2008-05-06 17:21:30 -07:00
Dan Nicholson
38c5b14853 Update make output for autoconf help 2008-05-06 15:46:40 -07:00
Eric Anholt
42d4f89264 GEM: Fix previous commit to avoid asserting when we run into reserved space.
These are the dwords that the reserved space is for.
2008-05-06 15:25:51 -07:00
Dan Nicholson
8eee0146f2 Merge branch 'master' of ssh://git.freedesktop.org/git/mesa/mesa 2008-05-06 14:29:59 -07:00
Dan Nicholson
9f948b8c33 Prevent makedepend from running multiple times
The default target in src/mesa/Makefile calls a recursive $(MAKE). With
parallel jobs, this causes makedepend to run twice. Instead, block on
the first make until depend has been created.
2008-05-06 14:29:10 -07:00
Dan Nicholson
c5e2b850ad Always cleanup the makedepend backup files
Consistently cleanup the depend.bak files created by makedepend. Also,
realclean has been changed to use a single find command, which speeds it
up considerably.
2008-05-06 14:00:43 -07:00
Eric Anholt
96f52f089f GEM: Don't emit an extra MI_FLUSH in the batch since GEM handles it. 2008-05-06 13:57:08 -07:00
Michal Wajdeczko
7f747204ea Add support for ATI_separate_stencil in display lists. 2008-05-06 13:02:06 -07:00
Corbin Simpson
1562dd2c26 r5xx: Emit an OUT instruction at the end of execution.
This should make TEX/TXP work right. (Note: "Should" is not "does.")
2008-05-06 12:44:53 -07:00
Corbin Simpson
fa465fb2b1 r5xx: We update max_temp_idx now, so no need to hard-code it.
This roughly doubles the speed of glxgears (GINAB) by allowing
more pixels to run concurrently.
2008-05-06 12:42:40 -07:00
Dan Nicholson
cba14d85a8 Error consistently when running recursive make
When changing directories and running a sub-make, ensure that both the
cd and make commands propagate errors to the parent make.
2008-05-06 12:29:53 -07:00
Corbin Simpson
171ba1d0d1 r5xx: Fix typo.
Gotta be more careful with my cut'n'paste, lawl.
2008-05-06 12:18:07 -07:00
Corbin Simpson
06e2e1b87c r5xx: Use max_temp_idx. 2008-05-06 12:03:28 -07:00
Dan Nicholson
50f7e6fb5f Add .PHONY targets to top Makefile for non-file targets
When a make target doesn't result in a file of the same name, adding it
to a .PHONY target means make won't look for such a file, speeding the
build up a bit. This allows `make doxygen' to work since otherwise make
will consider the doxygen directory as up to date.
2008-05-06 11:52:34 -07:00
Dan Nicholson
e14ebbce41 autoconf: Replace the configs/current symlink from config.status
Minor tweak so that running config.status will entirely recreate the
configure settings by replacing the configs/current symlink.
2008-05-06 11:28:43 -07:00
Keith Packard
537bbe6dec [intel-GEM] Add tiling support to swrast.
Accessing tiled surfaces without using the fence registers requires that
software deal with the address swizzling itself.
2008-05-06 10:51:08 -07:00
Dave Airlie
17adf04e5c i965: fix googleearth in classic mode.
In classic mode googleearth triggered a case where vbos weren't getting accounted properly.
2008-05-06 18:52:47 +10:00
Keith Packard
df4b49c2ce Dump buffer tiled status from intelPrintSAREA 2008-05-05 22:08:05 -07:00
Dan Nicholson
7d016b76e2 autoconf: Sanitize asm build for cross-compiling and --enable-*-bit
Two fixes to the asm configuration:
 - Disable when the user is cross-compiling for x86 or x86_64 since it
   requires running an executable compiled for the target host.
 - If the user has specified --enable-32-bit on x86_64 or --enable-64-bit
   on x86, respect that and choose the correct asm architecture.
2008-05-05 16:57:07 -07:00
Markus Amsler
113f5b14cb r300: fragment.position input needs no blanking out, it's correctly handled in insert_wpos.
fixes bug 15447
2008-05-06 01:32:40 +02:00
Dan Nicholson
cc77e8f113 autoconf: Error for incompatible version of libdrm
The DRI modules can only be built against libdrm master (currently
version 2.3.1), so this should be enforced to save people from trying to
build against older versions.

Added a section at the top of the script to consolidate all required
versions.
2008-05-05 15:45:20 -07:00
Eric Anholt
e9a2a67745 GEM: Allocate the right number of relocs, avoiding heap smashing. 2008-05-05 15:45:15 -07:00
Eric Anholt
1decab06d1 GEM: Include target buffer handle in relocation debug. 2008-05-05 15:44:49 -07:00
Dan Nicholson
297e16cc7a autoconf: More quoting, just to be safe 2008-05-05 15:42:53 -07:00
Dan Nicholson
a2b73c74b0 Ignore xdemos/sharedtex 2008-05-05 15:16:52 -07:00
Dan Nicholson
e6a0609f2e autoconf: Allow non-pkg-config builds to succeed
The variable no_x was being set to yes when libX11 was not found through
pkg-config. This causes AC_PATH_XTRA to skip its search for the X11
libraries, which was not the intended effect. Also switched to using the
PKG_CHECK_EXISTS autoconf macro.
2008-05-05 15:16:22 -07:00
Dan Nicholson
00994ac08c autoconf: Scrape the version from configs/default
Added the make script version.mk to print the various version numbers
from configs/default. This is used to substitute the version in autoconf
rather than duplicating it in both places.
2008-05-05 14:21:28 -07:00
Eric Anholt
01d1a292bf GEM: Set validate index to keep the same buffer from being duped on the list. 2008-05-05 14:20:18 -07:00
Eric Anholt
be59d52ca0 Print GEM handles instead of BO pointers in debugging.
small integers are much prettier, and let me correlate to DRM debug output.
2008-05-05 14:15:40 -07:00
Eric Anholt
5290ec4756 Initialize bufmgr_gem->validate_array[i].offset.
This is just cosmetic, to produce less scary values when the ioctl fails and
doesn't return values there.
2008-05-05 13:45:45 -07:00
Eric Anholt
1f810b85b1 Make intel_{batch,exec}_ioctl return an error code so we can recover better. 2008-05-05 13:40:50 -07:00
Keith Packard
87ccc03736 Add intel_bufmgr_gem.c to i915 2008-05-05 10:46:27 -07:00
Keith Packard
367b1e35dc Temporarily disable intel pixel ops on i915 for GEM
Instead of attempting to fix these for GEM, just disable until GEM is
working.
2008-05-05 10:45:30 -07:00
George Sapountzis
2ed0f7278e glcore: Set all external variables in configuration
based on patch by Dan Nicholson <dbn.lists@gmail.com>
2008-05-05 18:14:52 +03:00
Dave Airlie
66a49df9cb r500: consolidate tex instructions
you cannot change a tex into an output so this means we have to actually
do another instruction after this one to mov if its an output
2008-05-05 18:42:27 +10:00
Dave Airlie
697680d687 r500: mov cleanup macros 2008-05-05 18:15:40 +10:00
Dave Airlie
3816ae9ce8 r500: make tri-param work
This makes constant work which are 32-bit on r500 unlike r300.

Switch MOV to using MAD no idea if we might have negative things MAX 0,-5 is
likely to do the wrong thing..
2008-05-05 18:05:59 +10:00
Dave Airlie
1f420b008b r500: make sure we emit max temp atom.
We don't appear to update max_temp_idx yet anywhere though
2008-05-05 16:41:07 +10:00
Dave Airlie
66a5562ce2 r300: fix swtcl texrect path properly.
We really need to update the shader state so the texrect parameters work.

This should fix compiz looking crappy on rs480 and rs690
2008-05-05 23:49:50 +10:00
Xiang, Haihao
2fa2dd3908 i965: Don't cast the result of brw_prepare_vertices to an unsigned value.
Negative value means other errors, not aperture overflow. fix bug #15752
2008-05-05 13:15:28 +08:00
Dave Airlie
a7016949f2 r300: fix swtcl texrect path properly.
We really need to update the shader state so the texrect parameters work.

This should fix compiz looking crappy on rs480 and rs690
(cherry picked from commit 66a5562ce2)
2008-05-05 23:50:45 +10:00
Dave Airlie
2f0a75f004 r300: add R300_NO_TCL to allow testing of non-tcl on tcl cards
(cherry picked from commit 026ef8111a)
2008-05-05 23:47:01 +10:00
Markus Amsler
acb47dee69 r300: Set correct VAP_CNTL per vertex program. 2008-05-04 11:11:38 +00:00
Markus Amsler
63503f2848 r300: Set correct VAP_CNTL per vertex program.
adapted from Markus' patch on bug 15386 with updates for non-TCL
and R500.
2008-05-03 12:55:45 -04:00
Corbin Simpson
b79a769b2d r5xx: Fix for loops.
Thanks to dli in IRC for pointing this out.
2008-05-03 09:09:57 -07:00
Corbin Simpson
4ef195a369 r5xx: Fix dumb shader.
For some reason, FGLRX doesn't actually set R500_US_INST_TEX.
Let us not make that same mistake.
2008-05-03 09:08:07 -07:00
Corbin Simpson
0f07e0aea3 Merge branch 'r500test' of git://people.freedesktop.org/~csimpson/mesa into r500-support 2008-05-03 08:39:15 -07:00
Dave Airlie
a03e261193 r300: remove debugging code 2008-05-04 04:17:15 +10:00
Dave Airlie
d3eb5df259 r300: setup vte according to inputs 2008-05-04 04:13:56 +10:00
Brian Paul
97709950e7 Press <space> to reset limit/bias values, clean-up limit/bias printf 2008-05-03 09:09:40 -06:00
Dave Airlie
37924cf175 r300: update r300 rs unit for swtcl need to fix r500 most likely 2008-05-03 22:08:11 +10:00
Dave Airlie
cea4f1464b r300: recombine the vap input route 0 code and clean
This gets non-tcl cards working again on this branch..

at least texrect and glxgears
2008-05-03 21:31:47 +10:00
Dave Airlie
026ef8111a r300: add R300_NO_TCL to allow testing of non-tcl on tcl cards 2008-05-03 21:31:22 +10:00
Corbin Simpson
e081603850 Merge branch 'r500-support' into r500test
Bringing the FPS code up-to-date.
Conflicts:

	src/mesa/drivers/dri/r300/r300_emit.c
	src/mesa/drivers/dri/r300/r300_ioctl.c
	src/mesa/drivers/dri/r300/r300_state.c
	src/mesa/drivers/dri/r300/r300_swtcl.c
	src/mesa/drivers/dri/r300/r500_fragprog.c
	src/mesa/drivers/dri/r300/r500_fragprog.h
2008-05-02 20:49:13 -07:00
Eric Anholt
81ec0545c9 Don't forget to set handle of shared buffers.
(And fix a nearby whitespace nit)
2008-05-02 18:25:00 -07:00
Eric Anholt
3d19a095cd Fix GEM execbuf ioctl argument. 2008-05-02 18:24:13 -07:00
Eric Anholt
7349f218b4 Fix to use GEM execbuf instead of TTM. 2008-05-02 17:13:45 -07:00
Eric Anholt
ef33e76ceb Minor fixups to get GEM to the point of execbuf ioctl. 2008-05-02 17:00:47 -07:00
Corbin Simpson
568d369d77 Merge branch 'r345-cleanup' of git://people.freedesktop.org/~agd5f/mesa into r500test
Adding Alex's cleanup patches. This adds r5xx TCL! Whoo-hoo!
Conflicts:

	src/mesa/drivers/dri/r300/r300_state.c
	src/mesa/drivers/dri/radeon/radeon_chipset.h
	src/mesa/drivers/dri/radeon/radeon_screen.c
2008-05-02 15:57:57 -07:00
Corbin Simpson
92a0e93ac3 Make radeon stuff build again.
Yet more evidence that I am incompetent with git.
2008-05-02 15:33:02 -07:00
Eric Anholt
eb10cdc838 [intel] Fix build for GEM. TTM is now disabled, and fencing is gone.
Fencing was used in two places: ensuring that we didn't get too many frames
ahead of ourselves, and glFinish.  glFinish will be satisfied by waiting on
buffers like we would do for CPU access on them.  The "don't get too far ahead"
is now the responsibility of the execution manager (kernel).
2008-05-02 14:11:19 -07:00
Eric Anholt
89bba44e96 Add intel_bufmgr_gem for new graphics execution manager. 2008-05-02 12:58:25 -07:00
Eric Anholt
3323ccb803 [intel] Warnings fixes. 2008-05-02 12:25:48 -07:00
Eric Anholt
6acb94f89e [intel] Merge intel_ioctl.h. Not sure how this slipped by in the .c merge. 2008-05-02 12:25:12 -07:00
Alex Deucher
ae09292a6e R300: fix rebase conflicts 2008-05-02 15:20:28 -04:00
Corbin Simpson
9a82fde43a Merge branch 'r500test' of git://people.freedesktop.org/~airlied/mesa into r500test
Conflicts:

	src/mesa/drivers/dri/r300/r300_cmdbuf.c
	src/mesa/drivers/dri/r300/r300_ioctl.c
	src/mesa/drivers/dri/r300/r300_state.c
	src/mesa/drivers/dri/r300/r500_fragprog.c
	src/mesa/drivers/dri/r300/r500_fragprog.h
	src/mesa/drivers/dri/radeon/radeon_chipset.h
	src/mesa/drivers/dri/radeon/radeon_screen.c
2008-05-02 12:15:44 -07:00
Alex Deucher
9e7ae34da5 R3/4/5: fix TCL on r5xx, cleanup PVS code 2008-05-02 15:13:49 -04:00
Alex Deucher
a94cd0d774 R300: fix VAP_OUTPUT_VTX_FMT_1 defines 2008-05-02 15:13:49 -04:00
Alex Deucher
d5448ceb95 R300: cleanup VAP_CLIP_CNTL 2008-05-02 15:13:49 -04:00
Alex Deucher
e61dadf3de R300: clean up VAP_PROG_STREAM_CNTL* register usage 2008-05-02 15:13:49 -04:00
Alex Deucher
2bd26f4afa Update comment 2008-05-02 15:13:49 -04:00
Alex Deucher
e3721a3b3f R5xx: various updates
- fixup VAP_CNTL setup
- remove extra instruction in r5xx passthrough shader
- add notes about pipe config
2008-05-02 15:13:48 -04:00
Alex Deucher
831fc138c1 R5xx: Add R5xx pci ids 2008-05-02 15:13:48 -04:00
Dave Airlie
28904e54d2 fixup r500 bits for renaming 2008-05-02 15:13:48 -04:00
Dave Airlie
de9c1c3627 r500: fixup fake shader to keep gears going 2008-05-02 15:13:48 -04:00
Dave Airlie
fbab11e9b0 r500: enable gb tiling for r5xx 2008-05-02 15:13:48 -04:00
Dave Airlie
6864220c28 r500: fixup support for emitting fragment program to hardware.
Also fixup the constant emission

this breaks glxgears from what I can see but its another step to correctness
2008-05-02 15:13:48 -04:00
Dave Airlie
3b7c5bfb98 r500: setup fragment program constant emission atom 2008-05-02 15:13:48 -04:00
Dave Airlie
6443da0865 r300: add rv530 pci id for the t60p laptop 2008-05-02 15:13:48 -04:00
Dave Airlie
c07534dc71 r300: this code really shouldn't be here.
For R500 just ignore it for now while I do something interesting like
run glxgears.
2008-05-02 15:13:48 -04:00
Dave Airlie
c0cb9bc84c mesa: cleanup state emission and rs for r500
trivial clear app now renders
2008-05-02 15:13:48 -04:00
Dave Airlie
a453b3154e r500 RS unit setup 2008-05-02 15:13:47 -04:00
Dave Airlie
ed1584aed8 more r500 vs r300 kickin 2008-05-02 15:13:47 -04:00
Dave Airlie
5a143e91dc some basic r500 portage 2008-05-02 15:12:37 -04:00
Dave Airlie
8aa98a409b r500: fragprog 2008-05-02 15:11:03 -04:00
Corbin Simpson
b15c49e59b r5xx: Fragprog shader now handles TEX/TXP correctly. 2008-05-02 12:06:21 -07:00
Corbin Simpson
029cb1fd0f Start of TEX/TXP support.
Still having problems with temps and consts, though...
2008-05-02 12:06:21 -07:00
Corbin Simpson
b5246de562 Added OPCODE_ABS, slightly fixed ADD/SUB 2008-05-02 12:06:21 -07:00
Corbin Simpson
6e96ea535a Initial r5xx fragment program compiler support.
Includes fallback shader and a handful of working opcodes.
2008-05-02 12:06:21 -07:00
Corbin Simpson
c02d1863d1 Add chip id 71D5 (RV530 M66) to radeon_chipset.h 2008-05-02 12:06:21 -07:00
Dave Airlie
d06e61aa80 fixup r500 bits for renaming 2008-05-02 12:06:21 -07:00
Dave Airlie
a3996ba2d1 r500: fixup fake shader to keep gears going 2008-05-02 12:06:21 -07:00
Dave Airlie
8e33a83b68 r500: enable gb tiling for r5xx 2008-05-02 12:06:21 -07:00
Dave Airlie
70335540c6 r500: fixup support for emitting fragment program to hardware.
Also fixup the constant emission

this breaks glxgears from what I can see but its another step to correctness
2008-05-02 12:06:21 -07:00
Dave Airlie
14c3bdb3f7 r500: setup fragment program constant emission atom 2008-05-02 12:06:21 -07:00
Dave Airlie
e46c3d7bcf r300: add rv530 pci id for the t60p laptop 2008-05-02 12:06:21 -07:00
Dave Airlie
99e75135ee r300: this code really shouldn't be here.
For R500 just ignore it for now while I do something interesting like
run glxgears.
2008-05-02 12:06:21 -07:00
Dave Airlie
9d9f66cc8d mesa: cleanup state emission and rs for r500
trivial clear app now renders
2008-05-02 12:06:21 -07:00
Dave Airlie
a87914993d r500 RS unit setup 2008-05-02 12:06:21 -07:00
Dave Airlie
55418dc87d more r500 vs r300 kickin 2008-05-02 12:06:21 -07:00
Dave Airlie
2ffa112ed3 some basic r500 portage 2008-05-02 12:05:28 -07:00
Dave Airlie
cd66f0e2d9 r500: fragprog 2008-05-02 12:04:04 -07:00
Alex Deucher
1226aba119 R3/4/5: fix TCL on r5xx, cleanup PVS code 2008-05-02 13:56:56 -04:00
Alex Deucher
25d9f2dd24 R300: fix VAP_OUTPUT_VTX_FMT_1 defines 2008-05-02 13:03:48 -04:00
Alex Deucher
734ef96d5f R300: cleanup VAP_CLIP_CNTL 2008-05-02 12:48:39 -04:00
Alex Deucher
db1fc51ccc R300: clean up VAP_PROG_STREAM_CNTL* register usage 2008-05-02 12:29:40 -04:00
Alex Deucher
45077fc323 Update comment 2008-05-02 10:54:20 -04:00
Alex Deucher
279ea105d8 R5xx: various updates
- fixup VAP_CNTL setup
- remove extra instruction in r5xx passthrough shader
- add notes about pipe config
2008-05-02 10:51:40 -04:00
Brian Paul
6e19f82c37 fix conversion of GLfloat display list IDs
Use floor() to convert to int (per Mark Kildard and the SI).
Also, change translate_id() to return a signed integer since we may be
offsetting from GL_LIST_BASE.
2008-05-01 14:59:34 -06:00
Alex Deucher
f25b37c1da R5xx: Add R5xx pci ids 2008-05-01 16:02:58 -04:00
Alex Deucher
44791e2d78 Merge branch 'r500test' of git://people.freedesktop.org/~airlied/mesa into r345-cleanup 2008-05-01 14:51:26 -04:00
Brian Paul
ac88b3dd16 Add support for GL_REPLACE_EXT texture env mode.
GL_REPLACE_EXT comes from the ancient GL_EXT_texture extension.  Found an old demo that
actually uses it.
The values of the GL_REPLACE and GL_REPLACE_EXT tokens is different, unfortunately.
2008-04-30 16:08:28 -06:00
Brian Paul
5f0fa82f68 Add support for GL_REPLACE_EXT texture env mode.
GL_REPLACE_EXT comes from the ancient GL_EXT_texture extension.  Found an old demo that
actually uses it.
The values of the GL_REPLACE and GL_REPLACE_EXT tokens is different, unfortunately.
2008-04-30 16:07:33 -06:00
Dan Nicholson
7154d661a6 autoconf: Fail from autoconf if the pkg-config macros aren't defined
Instead of postponing the error from missing pkg-config macros to when
configure is run, make autoconf exit by using m4 macros.
2008-04-30 14:05:57 -07:00
Brian Paul
9a43570f8c added xdemos/sharedtex.c test
Test that modifications to a texture object in one rendering context are seen
in a second rendering context.
Press 't' to change the texture's image/colors.
2008-04-30 14:45:58 -06:00
Dan Nicholson
80f68e1b6a autoconf: Don't substitute MESA_MAJOR and friends
Since the autoconf config inherits from default, we don't need to
duplicate and substitute the MESA_* version numbers in configure.ac.
The version number is only needed in configure for the help text.
2008-04-30 13:31:44 -07:00
Xiang, Haihao
d12fa3511d intel: test cpp to ensure mipmap tree matches texture image. 2008-04-30 16:27:52 +08:00
Brian Paul
27b6fa5615 mesa: adjust glBitmap coords by a small epsilon
Fixes problem with bitmaps jumping around by one pixel depending on window
size.  The rasterpos is often X.9999 instead of X+1.
Run progs/redbook/drawf and resize window to check.

Cherry picked from gallium-0.1 branch
2008-04-29 18:38:26 -06:00
Brian Paul
68eb76dfb7 Enabled GL_EXT_multi_draw_arrays extension in R200/R300 drivers 2008-04-29 18:38:26 -06:00
Brian Paul
aef4ca647d disable GL_TEXTURE_1D at end of frame to fix failed assertion 2008-04-29 18:37:41 -06:00
Brian Paul
4e0e02ae68 mesa: adjust glBitmap coords by a small epsilon
Fixes problem with bitmaps jumping around by one pixel depending on window
size.  The rasterpos is often X.9999 instead of X+1.
Run progs/redbook/drawf and resize window to check.

Cherry picked from gallium-0.1 branch
2008-04-29 18:37:41 -06:00
Ove Kaaven
4f474c7d1e r200: fix state submission issue causing bogus textures (bug 15730) 2008-04-29 22:14:05 +02:00
Ove Kaaven
392760ee0c r200: fix state submission issue causing bogus textures (bug 15730) 2008-04-29 22:11:23 +02:00
Michel Dänzer
063b60a51f Change default of driconf "allow_large_textures" to announce hardware limits.
The previous default these days served mostly to cause artifical problems with
GLX compositing managers like compiz (see e.g.
http://bugs.freedesktop.org/show_bug.cgi?id=10501).

(cherry picked from commit acba9c1771)
2008-04-29 19:03:44 +02:00
Michel Dänzer
acba9c1771 Change default of driconf "allow_large_textures" to announce hardware limits.
The previous default these days served mostly to cause artifical problems with
GLX compositing managers like compiz (see e.g.
http://bugs.freedesktop.org/show_bug.cgi?id=10501).
2008-04-29 18:43:28 +02:00
Alan Hourihane
62a32b0d68 build fix for xorg driver 2008-04-28 22:41:42 +01:00
Keith Packard
ca73488f48 [i965] short immediate values must be replicated to both halves of the dword
The 32-bit immediate value in the i965 instruction word must contain two
copies of any 16-bit constants. brw_imm_uw and brw_imm_w just needed to
copy the value into both halves of the immediate value instruction field.
2008-04-25 16:08:50 -07:00
Dan Nicholson
10d70e2f2c glcore: Respect DESTDIR 2008-04-25 11:36:55 -07:00
George Sapountzis
004922b141 fix make tarballs 2008-04-25 17:20:05 +03:00
Alan Hourihane
118de7a013 silence warning 2008-04-25 10:39:52 +01:00
Brian Paul
7b676192e9 enable GL_EXT_multi_draw_arrays (see bug 15670) 2008-04-24 16:31:28 -06:00
Pierre Beyssac
fddb0f6e4f enable GL_EXT_multi_draw_arrays (see bug 15670) 2008-04-24 16:29:34 -06:00
Alan Hourihane
6497d50924 include <X11/Xlib.h> 2008-04-23 15:59:23 +01:00
Brian Paul
138e0010eb added FreeBSD static config 2008-04-23 08:23:18 -06:00
Anatolij Shkodin
36bad2b478 added freebsd-static 2008-04-23 08:23:18 -06:00
George Sapountzis
f6f9f5e481 drop stray includes of glapi 2008-04-23 11:12:31 +03:00
George Sapountzis
f027f8d3a8 glx: nitpick renames 2008-04-23 11:12:31 +03:00
George Sapountzis
df04ffbf02 glx: split out current context code
also clean header inclusion after code movement
2008-04-23 11:12:31 +03:00
George Sapountzis
37be884875 glcore: drop outdated sources files intented for xorg 2008-04-23 11:12:31 +03:00
George Sapountzis
750f52169c glcore: tree sharing for DRI and XMesa 2008-04-23 11:12:30 +03:00
George Sapountzis
32a2a095f4 glcore: build from mesa 2008-04-23 11:12:30 +03:00
Alan Hourihane
f6d6fc603e revert 2008-04-22 23:08:35 +01:00
Alan Hourihane
b3efd35f4b revert part of the previous cleanup - it only applies
to the 7.0 branch
2008-04-22 23:05:11 +01:00
Alan Hourihane
936dba1de5 Fix error string 2008-04-22 20:32:06 +01:00
Alan Hourihane
c8666cfb0b correct the return value 2008-04-22 20:31:58 +01:00
Alan Hourihane
eec20c359d small cleanups 2008-04-22 20:30:38 +01:00
Alan Hourihane
5545b46571 small cleanups 2008-04-22 20:29:42 +01:00
Alan Hourihane
06b0a7acce correct the return value 2008-04-22 20:29:00 +01:00
Alan Hourihane
534f30064d Fix error string 2008-04-22 20:28:35 +01:00
Xiang, Haihao
6e620162a1 i965: fix DEPTH_TEXTURE_MODE (bug #14220) 2008-04-22 16:25:23 +08:00
Zou Nan hai
c9c64a100d [i965] This is to fix random crash in some maps of Ut2004 demo.
e.g. bridge of fate.
 	If vs output is big, driver may fall back to use 8 urb entries for vs,
	unfortunally, for some unknown reason, if vs is working at 4x2 mode,
	8 entries is not enough, may lead to gpu hang.
2008-04-22 15:50:40 +08:00
Xiang, Haihao
f61e51ee98 i965: save the offset of target buffer after last execution, not relocatee buffer. 2008-04-22 11:11:42 +08:00
Xiang, Haihao
7c2a3fced8 intel: fix an assertion failure. fix bug #15575 2008-04-21 17:34:00 +08:00
Xiang, Haihao
33107357a1 i965: clear the PRESUMED_OFFSET flag from bo_req.hint, not bo_req.flags. fix #15574 2008-04-21 14:02:50 +08:00
Eric Anholt
711222bb7b autoconf: Default the build to DRI on OS+CPU combos where it's expected. 2008-04-18 15:04:21 -07:00
Dave Airlie
27e06a5234 i965: fixup depth buffer check 2008-04-18 15:37:54 +10:00
Dave Airlie
fda4895d26 i965: fix vb aperture space check 2008-04-18 15:14:48 +10:00
Dave Airlie
e92e3848e7 965: fix vb upload size check 2008-04-18 15:09:46 +10:00
Dave Airlie
e149e1b953 i965: fix gs_prog aperture check 2008-04-18 15:09:46 +10:00
Dave Airlie
f2a6404ef3 i915: check for depth region before accounting its buffer size
fd.o bz #15573
2008-04-18 12:13:13 +10:00
Dave Airlie
008653ac55 i965: initial attempt at fixing the aperture overflow
Makes state emission into a 2 phase, prepare sets things up and accounts
the size of all referenced buffer objects. The emit stage then actually
does the batchbuffer touching for emitting the objects.

There is an assert in dri_emit_reloc if a reloc occurs for a buffer
that hasn't been accounted yet.
2008-04-18 11:57:38 +10:00
Xiang, Haihao
08f9b190a7 Revert "[i965] renable regative rhw test"
This reverts commit 3158e981f5.
rhw issue has gone away on IGD.
2008-04-17 16:50:42 +08:00
Andrew Randrianasulu
8642dd30f9 r200: accept PROGRAM_CONSTANT inputs due to mesa changes 2008-04-17 02:51:30 +02:00
Dave Airlie
eff6f12032 fixup r500 bits for renaming 2008-04-16 20:42:15 +10:00
Dave Airlie
09df5eaff2 Merge branch 'master' into r500test
Conflicts:

	src/mesa/drivers/dri/r300/r300_cmdbuf.c
	src/mesa/drivers/dri/r300/r300_ioctl.c
2008-04-16 20:25:08 +10:00
Dave Airlie
b64448b3e4 bufmgr_fake: disable debugging again 2008-04-16 16:49:32 +10:00
Dave Airlie
96338dd147 intel: fix _mesa_error ctx I introduced at lsat minute 2008-04-16 16:37:13 +10:00
Dave Airlie
7cc7ff7051 intel/fake_bufmgr: Attempt to restrict references to objects in a batchbuffer > aperture size.
So with compiz on Intel hw with fake bufmgr, opening 4 firefox windows at 1680x1050 and hitting alt-tab, could cause the batchbuffer to try and reference more than the 32MB of RAM allocated.

Fix 1:
Fix 1 is to pre-verify the list of buffers against the current batchbuffer and if it can't possibly fit in the aperture to flush the batchbuffer to the hardware
and try again. If the buffers still can't fit well then you are hosed as I'm not sure there is a nice way to tell anyone.

Fix 2:
Next problem was that even with a simple check for total < aperture, we ran
into fragmentation issues, this meant that half way down a set of buffers,
we would fail as no blocks were available. Fix this by nuking the memory
manager from orbit and letting it start again and relayout the blocks in a
manner that fits.

Fix 3:
Finally the initial problem we were seeing was a memcpy to a NULL backing store.
We seem to end up with a texture at some point that never gets mapped but ends up with data in it. compiz al-tab icons have this property. So I created a card dirty bit that memcpy's any buffer that is !static and is written to back to memory. This probably is wrong but it makes compiz work for now.

Caveats:
965 support is still fail.
2008-04-16 16:22:05 +10:00
Brian
bbb042f0b8 fix multi-draw buffer regression 2008-04-14 21:02:34 -06:00
Brian Paul
118c2bc860 only use __x86_64__, not __amd64__ (bug 15503) 2008-04-14 14:10:32 -06:00
Brian Paul
6c9e1b2337 fix GL_ARB_texture_rectangle breakage 2008-04-14 13:44:05 -06:00
Brian Paul
8fd2b7d9dd fix GL_ARB_texture_rectangle breakage 2008-04-14 13:43:24 -06:00
Brian Paul
3403f9fe13 check for _WIN32 and __WIN32__ 2008-04-14 13:41:39 -06:00
David Flynn
7be8d5664a define #extension GL_ARB_texture_rectangle 2008-04-14 13:41:39 -06:00
Brian Paul
62c67576e0 fixed WIN32 compile problem in libGLU 2008-04-14 13:41:17 -06:00
Brian Paul
91d59e4cb9 check for _WIN32 and __WIN32__ 2008-04-14 13:40:39 -06:00
Brian Paul
8de268bb3c add -Wl case (part of prev DragonFly patch) 2008-04-14 12:58:51 -06:00
Brian Paul
4fd7f6047c define #extension GL_ARB_texture_rectangle 2008-04-14 12:58:51 -06:00
David Flynn
ff3033e190 define #extension GL_ARB_texture_rectangle 2008-04-14 12:58:51 -06:00
Roland Scheidegger
18404076e3 r200: fix XPD vertex program instruction when using temps as inputs
due to the two read ports limit into temp memory may need the MAD_2 instruction
for the second instruction of the decomposed XPD.
While here, also try to avoid MAD_2 for MAD if all 3 inputs are temps but the
temps aren't actually distinct.
2008-04-12 02:40:44 +02:00
Roland Scheidegger
32134b5508 r200: fix XPD vertex program instruction when using temps as inputs
due to the two read ports limit into temp memory may need the MAD_2 instruction
for the second instruction of the decomposed XPD.
While here, also try to avoid MAD_2 for MAD if all 3 inputs are temps but the
temps aren't actually distinct.
2008-04-12 02:40:27 +02:00
Brian Paul
51ad219d6f fix failed assertion (parameter can be a PROGRAM_CONSTANT) 2008-04-11 09:35:18 -06:00
Brian Paul
b69eb0360a add missing glViewport calls 2008-04-11 08:59:39 -06:00
Brian Paul
3f4e80c06b comments 2008-04-11 08:59:39 -06:00
Brice Goglin
59c9c40c01 Prepare changelog for upload 2008-04-11 08:42:55 +02:00
Brice Goglin
666e0635da New upstream release 2008-04-11 08:41:32 +02:00
Brice Goglin
f9968a0346 Merge tag 'mesa_7_0_3' into debian-unstable 2008-04-11 08:38:26 +02:00
Michel Dänzer
23635510e3 Get the default GLXPixmap texture target from the server when appropriate.
Fixes compiz with direct rendering when both GLX_TEXTURE_2D_EXT and
GLX_TEXTURE_RECTANGLE_EXT are supported for a GLXPixmap and the
application didn't specify the texture target as a GLX drawable attribute
when creating the GLX drawable.
2008-04-10 15:47:46 -04:00
Brian
842b8b4c33 more make clean items 2008-04-09 22:30:42 -06:00
Brian
26f0b8f506 use InitUniforms() 2008-04-09 22:30:42 -06:00
Brian
2dca3373ae Replace duplicated code with new shaderutil.c functions 2008-04-09 22:30:42 -06:00
Brian
90caba3d76 shader utility functions 2008-04-09 22:30:42 -06:00
Hasso Tepper
39dca05d1d New dragonfly configs
A re-do commit, this time with the intended commit message.
2008-04-09 19:05:59 -06:00
Brian Paul
f51b76b670 Revert "Hasso Tepper <hasso@estpak.ee>"
This reverts commit 40ee989db5.
2008-04-09 19:04:36 -06:00
Brian Paul
40ee989db5 Hasso Tepper <hasso@estpak.ee> 2008-04-09 19:02:41 -06:00
Brian Paul
ef76dfc7a0 add link to 7.0.4 relnotes 2008-04-09 19:01:07 -06:00
Brian Paul
02ddc08353 initial 7.0.4 relnotes 2008-04-09 19:00:53 -06:00
Hasso Tepper
4b24d5261a patches for DragonFly OS 2008-04-09 18:59:19 -06:00
Hasso Tepper
f9c8af31c5 Add support for dfbsd to mklib script. 2008-04-09 11:03:05 -07:00
Hasso Tepper
43887cf396 Add $(X11_INCLUDES) to shut makedepend up. 2008-04-09 10:56:12 -07:00
Hasso Tepper
9f8df2d07f autoconf: Add dfbsd support. 2008-04-09 10:51:21 -07:00
Jie Luo
2771862adc Handle fbconfig comparison correctly for attributes the X server didn't send. 2008-04-08 19:17:06 -04:00
Kristian Høgsberg
c016f329ab Only convert configs if screen creation was successful.
Thanks to Adam Jackson for pointing it out.
2008-04-08 18:31:07 -04:00
Michel Dänzer
da3e48186d r300: Fix r300VAPInputRoute{0,1} for big endian platforms. 2008-04-07 10:28:42 +02:00
Brian
5d73502625 7.0.3 updates 2008-04-04 19:28:33 -06:00
Brian
fad7933c44 updated w/ 7.0.3 release 2008-04-04 19:28:33 -06:00
Brian
6eddb4cb20 import 7.0.3 relnotes from 7.0 branch 2008-04-04 19:28:33 -06:00
Brian
c3240b5ff8 added glGetActiveUniform_func 2008-04-04 19:28:33 -06:00
Brian
40905c909d mesa: add missing glPush/PopMatrix() calls 2008-04-04 19:28:33 -06:00
Brian
ae0ea14ff6 mesa: add missing glPush/PopMatrix() calls 2008-04-04 19:28:33 -06:00
Brian
4b96a39c48 added MD5 sums for 7.0.3 2008-04-04 19:24:32 -06:00
Brian
48616e71d2 final prep/changes for 7.0.3 release 2008-04-04 19:06:30 -06:00
Brian
1757acc293 rewrite some of the mat*mat, mat*vec intrinsics
Also, remove obsolete matrix codegen code.
2008-04-03 21:51:31 -06:00
Brian
96b4ac05be silence warning 2008-04-03 20:12:32 -06:00
Kristian Høgsberg
e786924bf0 Pick up dri2proto from the standard proto header include path. 2008-04-02 19:17:31 -04:00
Kristian Høgsberg
dc836edf49 Initialize GLX_EXT_texture_from_pixmap attributes correctly. 2008-04-02 19:05:43 -04:00
Brian
70d227ac62 7.0.3 release candidate 3 2008-04-01 18:04:13 -06:00
Eric Anholt
7f2c4f96f5 Bug #13492: Only call ProgramStringNotify if program parsing succeeded.
Wine intentionally tries some out-of-spec programs to test strictness, and
calling ProgramStringNotify on the results of a failed program parse resulted
in crashes in the 965 driver.
(cherry picked from commit 185320ae13)
2008-04-01 16:27:48 -07:00
Roland Scheidegger
667f0f60fc fix mistakenly set ATIFragmentShader._Enabled bit (bug 15269) 2008-04-01 23:25:04 +02:00
Roland Scheidegger
28dfb0613b fix mistakenly set ATIFragmentShader._Enabled bit (bug 15269) 2008-04-01 23:24:11 +02:00
Brian
5c4ca968fa added some missing calls to _mesa_enable_x_y_extensions() 2008-04-01 08:43:34 -06:00
Brian
7592b8cc10 added some missing calls to _mesa_enable_x_y_extensions() 2008-04-01 08:41:24 -06:00
Dan Nicholson
b645942df9 Use AC_CHECK_PROGS to find alternate make programs
The autoconf macro AC_PATH_PROGS handles the case of searching for
multiple program names already, so we don't need to open code it. Also
changed the search to AC_CHECK_PROGS so that it doesn't set the full
path unless the user specified. Finally, report back the found value at
the end for what the user should run.
2008-03-31 17:00:00 -07:00
Brian
f55b831859 fix ARB f/v program comment parsing bug 2008-03-31 15:00:18 -06:00
Markus Amsler
217f7f7e5d fix parsing bug involving comments at the end of ARB v/f programs 2008-03-31 15:00:18 -06:00
Markus Amsler
3ea80c1128 fix parsing bug involving comments at the end of ARB v/f programs 2008-03-31 14:58:48 -06:00
Kristian Høgsberg
e82dd8c6e1 DRI interface changes and DRI2 direct rendering support.
Add DRI2 direct rendering support to libGL and add DRI2 client side
protocol code.  Extend the GLX 1.3 create drawable functions in
glx_pbuffer.c to call into the DRI driver when possible.

Introduce __DRIconfig, opaque struct that represents a DRI driver
configuration.  Get's rid of the open coded __GLcontextModes in the
DRI driver interface and the context modes create and destroy
functions that the loader was requires to provide.  glcore.h is no
longer part of the DRI driver interface.  The DRI config is GL binding
agnostic, that is, not specific to GLX, EGL or other bindings.

The core API is now also an extension, and the driver exports a list
of extensions as the symbol __driDriverExtensions, which the loader
must dlsym() for.  The list of extension will always include the DRI
core extension, which allows creating and manipulating DRI screens,
drawables and contexts.  The DRI legacy extension, when available,
provides alternative entry points for creating the DRI objects that
work with the XF86DRI infrastructure.

Change DRI2 client code to not use drm drawables or contexts.  We
never used drm_drawable_t's and the only use for drm_context_t was as
a unique identifier when taking the lock.  We now just allocate a
unique lock ID out of the DRILock sarea block.  Once we get rid of the
lock entirely, we can drop this hack.

Change the interface between dri_util.c and the drivers, so that the
drivers now export the DriverAPI struct as driDriverAPI instead of the
InitScreen entry point.  This lets us avoid dlsym()'ing for the DRI2
init screen function to see if DRI2 is supported by the driver.
2008-03-31 16:51:26 -04:00
Julien Cristau
2e5a63f365 Prepare changelog for upload 2008-03-31 16:47:34 +02:00
Julien Cristau
7c614b4666 Fix libgl1-mesa-swx11-i686's dependencies
Change libgl1-mesa-swx11-i686's pre-dependency on libgl1-mesa-swx11 to a
regular versioned dependency, and add ${shlibs:Depends}.
I'm not sure why this used Pre-Depends in the first place, I don't think
that's needed.
2008-03-31 16:47:17 +02:00
Julien Cristau
b23d908829 Update 02_use-ieee-fp-on-s390-and-m68k.patch. 2008-03-31 13:17:24 +02:00
Julien Cristau
5379b84e63 Update changelog and add bug closer 2008-03-31 13:11:59 +02:00
Julien Cristau
32c913308e Merge branch 'mesa_7_0_branch' of git.freedesktop.org:/git/mesa/mesa into debian-unstable 2008-03-31 13:00:20 +02:00
Xiang, Haihao
63d8a8417d mesa: Free all shader program data before deleting all
shader/shader program objects to avoid memory access error.
2008-03-31 17:17:34 +08:00
Xiang, Haihao
aef47c4dc8 Revert "mesa: separate shader program object from shader object." (bug#15244)
This reverts commit 3ffd11f71d.
2008-03-31 16:27:47 +08:00
Xiang, Haihao
d30d9e42b7 i915: texture object's lod bias. fix bug #15192 2008-03-31 13:45:06 +08:00
Xiang, Haihao
1e83d70b6d i965: Apply -ve rhw to 965. Fix the regression introduced by
commit da476ff02d. (bug#14940)
2008-03-31 09:37:55 +08:00
Markus Amsler
d9367842e5 r300: Copy-and-paste error from the vertex program branch. 2008-03-30 16:12:47 +00:00
Markus Amsler
85e816882d r300: Take PROGRAM_CONSTANT into account.
This bug was introduced by commit 978145a075.
2008-03-30 16:10:47 +00:00
Oliver McFadden
3e0797f3b7 Merge branch 'r300-vertprog-branch' of ssh://people.freedesktop.org/~z3ro/mesa 2008-03-29 14:46:32 +00:00
Brian
767dfa5b9c fix texture/renderbuffer mix-up in test_attachment_completeness() 2008-03-28 13:25:25 -06:00
Brian
635e964712 fix texture/renderbuffer mix-up in test_attachment_completeness() 2008-03-28 13:24:39 -06:00
Xiang, Haihao
184cf464f4 i965: depth offset on glPolygonMode(GL_LINE/GL_POINT) 2008-03-28 17:32:45 +08:00
Dave Airlie
6054788f36 r300: finish conversion of RS_INST regs 2008-03-28 13:16:33 +11:00
Dave Airlie
a9802328cd r300: move to using RS_INST names 2008-03-28 13:06:28 +11:00
Brian
7d2b6a0466 consolidate some parsing functions that were pretty much identical for vertex/fragment programs 2008-03-27 16:17:37 -06:00
Brian
21454f8636 when negating scalar src args, use NEGATE_XYZW, not NEGATE_X
This makes things easier on the back-end when generating GPU code.
cherry-picked from gallium-0.1
2008-03-27 16:06:36 -06:00
Brian
978145a075 Set param_var->param_binding_type = PROGRAM_CONSTANT
cherry-picked from gallium-0.1
2008-03-27 16:06:36 -06:00
Eric Anholt
227af94cce Add a couple of test apps for line/unfilled polygon clipping. 2008-03-27 11:57:08 -07:00
Alan Hourihane
7ff5b38126 Fix build problems 2008-03-27 16:36:12 +00:00
Michal Wajdeczko
0500467044 [965] Fix massively broken state cache dirty flagging.
It was flagging a last_bo update even when last_bo didn't change, but
another part was failing to update last_bo when it should have.
2008-03-26 13:43:16 -07:00
Michal Wajdeczko
76430815a7 [intel] Use mesa texmemory functions to allocate teximage Data.
Failure to consistently do so resulted in mismatched aligned versus
unaligned alloc/free.
2008-03-26 13:33:34 -07:00
Eric Anholt
b4cbf6983e [965] Don't let the negate flags of src0 affect 1 constants in precalc_dst/lit
This patch is a variant of a submission by Michal Wajdeczko to fix
oglconform fpalu failures.
2008-03-26 13:23:43 -07:00
Michal Wajdeczko
13a6f73a64 [965] Correctly set read mask for OPCODE_SWZ in pass1.
While OPCODE_SWZ has usually been optimized away in pass0, it may still
exist if a SWZ with dst saturate was emitted in pass_fp.  Fixes an error
in oglconform fpalu.c.
2008-03-26 13:00:03 -07:00
Eric Anholt
5cc56cbad8 [965] Clean up whitespace and dead code from do_unfilled change. 2008-03-26 12:59:17 -07:00
Oliver McFadden
e49ec6e2a4 r300: Indented the vertex program code... 2008-03-26 08:01:13 +00:00
Oliver McFadden
82770b8c83 r300: Cleaned up the default vertex program code with longer lines. 2008-03-26 07:53:16 +00:00
Oliver McFadden
a2c1aad27d r300: Removed the last of the duplicate vertex program macros. 2008-03-26 07:28:29 +00:00
Oliver McFadden
863ab98ac7 r300: Added Copyright lines to the vertex program code. 2008-03-26 07:09:21 +00:00
Zou Nan hai
d24a5254c2 [i915] don't use 4x4 filter for 1D shadowmap 2008-03-26 14:40:30 +08:00
Oliver McFadden
42a04ada10 r300: Renamed the Mesa opcode translation functions. 2008-03-26 06:31:33 +00:00
Oliver McFadden
2ac2911554 r300: Renamed the destination-and-opcode/source macros to more appropriate names. 2008-03-26 06:24:48 +00:00
Brian
d3ebaa41f5 implement glGet/BindAttribLocationARB() for display lists
More such shader functions are needed...
2008-03-25 14:03:52 -06:00
Brian
4e6c2c4f85 updated to version 40 2008-03-25 08:12:19 -06:00
Brian
e209f5300d updated glext.h to version 40 2008-03-25 08:11:47 -06:00
Brian
3c4b50c352 updated to version 40 2008-03-25 08:11:36 -06:00
Xiang, Haihao
0e34dcc6df intel: fix the issue "VBO: Cannot allocate memory for a BO" on
965 after merging intel_context.c from i915 and i965. fix bug# 15152.
2008-03-25 17:29:38 +08:00
Brian
816fbeaa81 add GL_READ_FRAMEBUFFER_BINDING_EXT case, regenerate get.c file 2008-03-24 19:56:30 -06:00
Brian
7048545c44 fix wrong values for GL_READ/DRAW_FRAMEBUFFER_BINDING_EXT tokens 2008-03-24 19:56:30 -06:00
Brian
4e7c2fcf18 add GL_READ_FRAMEBUFFER_BINDING_EXT case, regenerate get.c file 2008-03-24 19:55:46 -06:00
Brian
22534f94f5 fix wrong values for GL_READ/DRAW_FRAMEBUFFER_BINDING_EXT tokens 2008-03-24 19:55:04 -06:00
Alex Deucher
b469e9e93c R300: fix typo r300 fog reg
Noticed by pzad on IRC
2008-03-24 14:49:43 -04:00
Oliver McFadden
74aee365e3 r300: Merged the constant zero/one source macros. 2008-03-24 12:53:57 +00:00
Oliver McFadden
c75ffff84a r300: Merged the Vector and Math Engine opcode macros. 2008-03-24 12:53:57 +00:00
Eric Anholt
c986421694 autoconf: Add a workaround for second AC_PROG_PATH not overwriting results. 2008-03-22 11:03:16 -07:00
Brian
1a6928fdbe use ctx->Driver.DeleteProgram() in a few more places 2008-03-22 10:27:08 -06:00
Brian
dc6fab90b4 use ctx->Driver.DeleteProgram() in a few more places 2008-03-22 10:27:03 -06:00
Brian
731dec1bd5 delete default programs with ctx->Driver.DeleteProgram() 2008-03-22 09:13:28 -06:00
Brian
325dbbac47 delete default programs with ctx->Driver.DeleteProgram() 2008-03-22 09:11:35 -06:00
Dave Airlie
9566cf0e2f r500: fixup fake shader to keep gears going 2008-03-22 11:00:25 +10:00
Dave Airlie
4feac4e40e r500: enable gb tiling for r5xx 2008-03-22 10:56:48 +10:00
Dave Airlie
583ed4bde3 r500: fixup support for emitting fragment program to hardware.
Also fixup the constant emission

this breaks glxgears from what I can see but its another step to correctness
2008-03-22 10:55:32 +10:00
Michal Wajdeczko
c60b5dfde8 [965] Avoid emitting dead code for DPx/math instructions.
The pass1 optimization stage clears out writemasks and registers, but the
instructions themselves are still being processed at this stage, and could
have resulted in them still being emitted.
2008-03-21 14:19:30 -07:00
Michal Wajdeczko
bb419970ef [965] Improve pinterp performance by delaying reads of just-written regs. 2008-03-21 14:19:30 -07:00
Michal Wajdeczko
6c1a98e97a [965] Fix negating of unsigned value in emit_wpos_xy. 2008-03-21 14:19:30 -07:00
Michal Wajdeczko
5f10438f2d [965] Add MVP code for position invariant vertex programs.
This fixes the arbvptorus demo.
2008-03-21 14:19:30 -07:00
Michal Wajdeczko
31fe7cf5e3 [win32] Use native aligned memory allocation functions. 2008-03-21 14:19:30 -07:00
Michal Wajdeczko
aa8a7ef823 [965] Shuffle state flags to match the order we initialize them in. 2008-03-21 14:19:30 -07:00
Michal Wajdeczko
9f6e8e89c8 intel: Use _mesa_ffs wrapper, and fix a use-after-free with INTEL_DEBUG=buf. 2008-03-21 14:19:30 -07:00
Eric Anholt
050c533cbf autoconf: automatically detect if -ldl is required.
This logic was copied from the xserver.
2008-03-21 14:19:30 -07:00
Eric Anholt
bcb61987fb Fix xdemos build on FreeBSD: <sys/types.h> before <netinet/tcp.h> 2008-03-21 14:19:30 -07:00
Eric Anholt
5ad06156b2 Fix autoconf build on FreeBSD: detect gmake, and put -D*_SOURCE under linux. 2008-03-21 14:19:29 -07:00
Brian
d933be6baf Refactor PBO validate/map code.
We always need to do PBO validation, so do that in core Mesa before calling driver routine.
2008-03-21 14:19:28 -06:00
Brian
3c9862d337 include varray.h to silence warning 2008-03-21 13:42:36 -06:00
Brian
a429a25cd5 add a number of PBO validate/map/unmap functions
Helper functions for (some) drivers, including swrast.
2008-03-21 13:41:00 -06:00
Brian
85ea7ff25c Fix some PBO breakage.
In _mesa_Bitmap, can't early return if bitmap ptr is NULL, it may be an offset
into a PBO.  Similarly for _mesa_GetTexImage.
2008-03-21 12:33:28 -06:00
Brian
39ac6b0481 Fix some PBO breakage.
In _mesa_Bitmap, can't early return if bitmap ptr is NULL, it may be an offset
into a PBO.  Similarly for _mesa_GetTexImage.
2008-03-21 12:32:29 -06:00
Zou Nan hai
7936c614ab [i965] multiple rendering target fix 2008-03-21 18:16:11 +08:00
Dave Airlie
3eb8e5871f r500: setup fragment program constant emission atom 2008-03-21 17:05:29 +10:00
Zou Nan hai
7233eabaf0 [i915] GL_DEPTH_TEXTURE_MODE fix 2008-03-20 17:47:02 +08:00
Dave Airlie
ed18005a99 r300: add rv530 pci id for the t60p laptop 2008-03-20 14:34:04 +10:00
Dave Airlie
d019f101e8 r300: this code really shouldn't be here.
For R500 just ignore it for now while I do something interesting like
run glxgears.
2008-03-20 14:30:59 +10:00
Dave Airlie
2b8e422b31 mesa: cleanup state emission and rs for r500
trivial clear app now renders
2008-03-20 14:21:10 +10:00
Dave Airlie
9e6e4ae49a r500 RS unit setup 2008-03-20 13:57:22 +10:00
Xiang, Haihao
bff94a91c6 mesa: The span array is only populated in single-pixel
point drawing function.
2008-03-20 11:34:14 +08:00
Eric Anholt
7183ccaa9d [965] Initialize region surface key structure padding.
Fixes valgrind warnings, and potential performance loss from cache misses.
2008-03-19 17:54:06 -07:00
Eric Anholt
7d5f713fa5 [intel] Fix an uninitialized variable access in PRESUMED_OFFSET clearing.
It was harmless, as the only time we need to clear PRESUMED_OFFSET, the
variable had been initialized already.
2008-03-19 17:54:06 -07:00
Brian
e03dd83209 fix IEEE_ONE definition for ICC compiler (bug 15134) 2008-03-19 17:25:50 -06:00
Brian
46cc4854e9 fix IEEE_ONE definition for ICC compiler (bug 15134) 2008-03-19 17:25:18 -06:00
Alex Deucher
65c4ced1cc Radeon 9500 (0x4144) only has one pipe
confirmed by Reid Linnemann <lreid@cs.okstate.edu>
2008-03-19 18:10:47 -04:00
Brian
b5292b4d99 x86_init_func_size() returns int to indicate success/fail (bug 15119) 2008-03-19 09:52:08 -06:00
Brian
29054676a0 s/x86_init_func/x86_init_func_size (fixes bug 15119) 2008-03-19 08:38:28 -06:00
Zou Nan hai
947312e464 [i915] arb point sprite only support in i965 2008-03-19 16:32:29 +08:00
Zou Nan hai
c62f504eb6 [i915] fix fragment.position 2008-03-19 16:29:47 +08:00
Dave Airlie
57028236c8 more r500 vs r300 kickin 2008-03-19 16:29:11 +10:00
Eric Anholt
b790b24ff9 [i915] Bug #13634: Fix bugs in 945 cube mipmap layout.
The most egregious, and the one the bug report and failure in the cubemap
demo were about was introduced with intel_mipmap_pitch_align(), where a
"* 2" for the pitch calculation was lost.  The base size < 32 case also
failed to align, which may have caused problems with render to texture.
Another bug would have broken 2x2/1x1 base mipmap levels by placing the
data where the hardware wouldn't look for it.

Other bugs remain with the layout of the small mipmap faces (hardware looks
for them in X,Y,Z,-X,-Y,-Z order along the bottom row, but we lay them out
X,-X,Y,-Y,Z,-Z).
2008-03-18 20:17:56 -07:00
Eric Anholt
c2814f2a3f [i915] Add comments about how cube texture layout works. 2008-03-18 20:17:56 -07:00
Eric Anholt
45adf29ed0 [i915] Move miptree layout code into separate functions per target.
Also clean up some other miscellaneous formatting nits while I'm at it.
2008-03-18 20:17:56 -07:00
Eric Anholt
e5f50f2fa3 [intel] Clarify miptree layout by using byte offsets to images. 2008-03-18 20:17:56 -07:00
Eric Anholt
363d878519 [945] Remove conditional in 945 3D mipmap layout checking for cube layout. 2008-03-18 20:17:55 -07:00
Alan Hourihane
a3b5ae783e set outputs_safe to 0 as it's possible for the code generation
to slip over the allocated memory for the vb.

pull in sse fixes from gallium-0.1
2008-03-19 01:04:32 +00:00
Alan Hourihane
f93882512e set outputs_safe to 0 as it's possible for the code generation
to slip over the allocated memory for the vb.

pull in sse fixes from gallium-0.1
2008-03-19 01:03:48 +00:00
Zou Nan hai
f7cfc51b05 Revert "[i965] make stipple pattern continue across GL_LINE_LOOP and GL_LINE_STRIP"
There is no information in GS to determinate when to reset line stipple count, still fallback to software
This reverts commit 5a0314b431.
2008-03-18 17:37:25 +08:00
Xiang, Haihao
ae2c31ed66 glx: Add isDirect back to __GLXcontextRec. It is needed
to check whether oldGC is used for direct rendering in
function MakeContextCurrent. However it is possible
oldGC->driContext is already freed. fix bug #14926.
2008-03-18 15:02:57 +08:00
Zou Nan hai
5a0314b431 [i965] make stipple pattern continue across GL_LINE_LOOP and GL_LINE_STRIP 2008-03-18 10:27:20 +08:00
Dave Airlie
48efb769e9 r300: add new rs690 pci id 2008-03-18 10:29:16 +10:00
Andrzej Trznadel
3105bc1d88 [965] Fix fp temp reg release code to not usually release all temps.
Also, use wrapped ffs() instead of native.
2008-03-17 15:56:26 -07:00
Andrzej Trznadel
e9809a36aa Fix compat implementation of ffs() to return 1-based bit numbers. 2008-03-17 15:52:08 -07:00
Markus Amsler
0dee2a4f6f only set InputsRead bit if input is really used 2008-03-17 08:35:34 -06:00
Markus Amsler
f2b914298f only set InputsRead bit if input is really used 2008-03-17 08:35:27 -06:00
Markus Amsler
d787850ae6 mesa: Add vertex.attrib 0-15 to arb_input_attrib_string. 2008-03-17 12:11:11 +01:00
Dave Airlie
1c71ec4d45 some basic r500 portage 2008-03-17 21:09:49 +10:00
Markus Amsler
c48212fe58 r300: Simplify r300VAPInputRoute1. 2008-03-17 12:03:54 +01:00
Markus Amsler
f0c8863dbb r300: Simplify r300VAPInputRoute0, check for valid input. 2008-03-17 12:02:56 +01:00
Zou Nan hai
8d5231a358 [i965] round pointsize to nearest int according to spec 2008-03-17 17:52:26 +08:00
Dave Airlie
5da8289e9c r500: fragprog 2008-03-17 19:05:44 +10:00
Xiang, Haihao
4a556bcb17 intel: fix the error in commit 7ed1fd5d84 2008-03-17 17:02:42 +08:00
Xiang, Haihao
4478926b3a intel: It is needed to allocating texture memory to accommodate
a texture when calling TexImage with pixels set to NULL pointer.
2008-03-17 16:52:07 +08:00
Xiang, Haihao
7ed1fd5d84 intel: Remove an assertion from intel_miptree_create. TexImage
call with zero width/height/depth matches GL spec.
2008-03-17 16:50:20 +08:00
Xiang, Haihao
0819b25dfb mesa: avoid to unlock an unlocked array in _mesa_PopClientAttrib 2008-03-17 16:48:36 +08:00
Xiang, Haihao
07ff7c2285 mesa: Follow GL spec to draw DEPTH_COMPONENT pixels when
there's no depth buffer. Fix bug #11580
2008-03-17 16:47:42 +08:00
Zou Nan hai
b0f681b458 [i965] fix wpos height 1 pixel higher 2008-03-17 16:39:10 +08:00
Kristian Høgsberg
98e13fecd0 Test createNewScreen for NULL, not createNewScreenName in driCreateScreen(). 2008-03-15 14:06:42 -04:00
Brian
3cebc35669 init tmpNode to zeros 2008-03-14 14:16:00 -06:00
Brian
e80a2888bb init tmpNode to zeros 2008-03-14 14:15:55 -06:00
Brian
868193d54e 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).
2008-03-14 13:59:32 -06:00
Brian Paul
e75a204fb9 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).
2008-03-14 13:57:53 -06:00
Xiang, Haihao
42c279a03b glx: fix rotation regression. bug #14963 2008-03-14 15:27:15 +08:00
Xiang, Haihao
f94d317d7a intel: fix abort issue with shadowtex demo when use
DEPTH_STENCIL texture. (bug#14952).
2008-03-14 11:50:11 +08:00
Roland Scheidegger
ac06a5c16a fix state.lightprod ambient/specular w value (bug #14983) 2008-03-13 12:43:53 +01:00
Roland Scheidegger
142fcd3a13 fix state.lightprod ambient/specular w value (bug #14983) 2008-03-13 12:43:04 +01:00
Zou Nan hai
fcb7cb9e72 [i965] multiple rendering target support 2008-03-13 14:46:38 +08:00
Kristian Høgsberg
9110425c72 libGL: Pull the drawable hash back out in the generic code.
This will be shared between dri and dri2 code.
2008-03-12 02:18:12 -04:00
Kristian Høgsberg
94f39f2e7c Add another missing check for uninitialized DRI.
Spotted by Chris Taylor.
2008-03-12 02:04:16 -04:00
Dan Nicholson
f1e1267372 Fix include path for rain demo so glut.h is found 2008-03-11 06:24:56 -07:00
Dan Nicholson
ed758fee0c Merge branch '7.0-glx' into mesa_7_0_branch 2008-03-10 16:45:49 -07:00
Dan Nicholson
b957655a91 autoconf: Enable xdemos by default when we build libGL
Since the xdemos only link to libGL now, we can enable them for all but
the osmesa driver target.
2008-03-10 16:11:04 -07:00
Jeremy Huddleston
4dfd2dcbe7 Darwin: Fixed small error in darwin config files
(cherry picked from commit a21c61ee8b)
2008-03-10 16:03:29 -07:00
Jeremy Huddleston
a21c61ee8b Darwin: Fixed small error in darwin config files 2008-03-10 16:02:55 -07:00
Kristian Høgsberg
fe23dc5eca Move make install logic for libGL back into src/mesa/Makefile.
This makes make install work again for non-glx libGL implementations.
The make install logic is split into three sub-targets: install-libgl,
install-osmesa, install-drivers.  The install target in src/glx/x11
is then implemented using the src/mesa make install-libgl rule.

Thanks to Dan Nicholson for pointing out the breakage.
2008-03-10 18:46:19 -04:00
Kristian Høgsberg
3731159ec6 Only try to call DRI function if DRI got initialized properly. 2008-03-10 18:46:19 -04:00
Jeremy Huddleston
7c7fece977 Darwin: Config/source fixes to now build glxdemo apps and OSMesa
Also added darwin-fat-32bit darwin-fat-all configs and deleted old darwin-x86ppc config
(cherry picked from commit 7120c0089d)
2008-03-10 15:21:39 -07:00
Dan Nicholson
24697da20e glapi: Resync generated files with 7.0 branch
The previous commits pulled in the generated files from master. This
regenerates the files from the source on the 7.0 branch.
2008-03-10 15:17:59 -07:00
Jeremy Huddleston
7120c0089d Darwin: Config/source fixes to now build glxdemo apps and OSMesa
Also added darwin-fat-32bit darwin-fat-all configs and deleted old darwin-x86ppc config
2008-03-10 15:13:44 -07:00
Dan Nicholson
88a436a8f7 glapi: Generate xserver glapi sources in the mesa tree
Instead of generating the glapi sources for the xserver and commiting
them to the xserver tree, we can keep them in the mesa tree and change
the xserver build to use the files from the mesa tree.

This makes the xserver glx build more robust as it reduces the chances
for mismatches of the glX API used in the xserver vs. in mesa.
(cherry picked from commit 7688791fc5)
2008-03-10 15:03:13 -07:00
Dan Nicholson
2fdb5a245d glapi: Correct prerequisites for gl_and_glX_API.xml
The indirect_dispatch.h and indirect_table.c source files use
gl_and_glX_API.xml in their generation rather than glX_API.xml, but it
wasn't listed in their prerequisites. In turn, gl_and_glX_API.xml uses
glX_API.xml, but this is already listed in $(COMMON_GLX).
(cherry picked from commit 929b6d2ebf)
2008-03-10 15:03:01 -07:00
Dan Nicholson
8441b53538 glapi: Use make automatic variables to clean up the commands
Make use of the make automatic variables $@ (the target) and $< (first
prerequisite) to clean up the commands for the glapi generation. This
improves readability and guards against typos since words are repeated
less frequently.
(cherry picked from commit fc67d47708)
2008-03-10 15:02:51 -07:00
Dan Nicholson
d336df8b73 glapi: Use variable for indent and flags
Put the path to indent and the flags to call it with in configs/default
rather than in the Makefile. This makes it easier to change the values
globally.
(cherry picked from commit 817af9bec2)
2008-03-10 15:02:36 -07:00
Dan Nicholson
460d25dca1 autoconf: Add autogen.sh from Xorg for easier setup from git
The defacto method to rebuild the autotools and run the generated
configure is an autogen.sh script. It is much more discoverable than the
custom `make configure' used here. The Makefile targets are still useful
for creating tarballs, though. This autogen.sh is copied from Xorg.
2008-03-10 12:36:57 -07:00
Dan Nicholson
ab5750f143 Ignore more demo programs 2008-03-10 12:36:10 -07:00
Brian
9162bc8f48 remove extra #include of assert.h (bug 14932) 2008-03-10 07:43:40 -06:00
Brian
dd0a9203e3 fix parsing of state.texenv.color (bug 14931) 2008-03-10 07:43:40 -06:00
Brian
8aaf805b8a fix parsing of state.texenv.color (bug 14931) 2008-03-10 07:41:31 -06:00
Dave Airlie
20e0a8a1ca dri: fix function call to add new parameter.
This may not be correct but it should get the build going.
2008-03-10 19:13:34 +10:00
Kristian Høgsberg
dcbe215c01 DRI2: Make setTexBuffer take a __DRIdrawable instead of a BO handle.
This fixes a problem where texturing from the same Pixmap more than
once per batchbuffer would hang the DRI driver.  We just use the region
associated with the front left renderbuffer of the __DRIdrawable for
texturing, which avoids creating different regions for the same BO.

This change also make GLX_EXT_texture_from_pixmap work for direct
rendering, since tracking the __DRIdrawable -> BO handle now uses
the standard DRI2 event buffer.  Of course, DRI2 direct rendering
doesn't exist yet.

Finally, this commit bumps the DRI interface version again, accounting
for the change in the DRI_TEX_BUFFER extension and the change in
commit 0bba0e5be7 to pass in the
event buffer head index on drawable creation.
2008-03-09 21:28:04 -04:00
Kristian Høgsberg
180b41594c DRI2: Drop DriverAPI.UpdateBuffer.
__dri2ParseEvents() would determine the kind of event, but then call
UpdateBuffer() in either case, and UpdateBuffer() would then have to
figure that out again to dispatch to HandleBufferAttach() or
HandleDrawableConfig().  Pretty pointless.
2008-03-09 21:22:49 -04:00
Kristian Høgsberg
2d5ea175f7 DRI2: Pass the context instead of the screen to __dri2ParseEvents().
Makes a lot more sense, since the screen is always implicit in the
DRI drawable, but it may not be possible to track down a context from
just a drawable.
2008-03-09 21:19:17 -04:00
Kristian Høgsberg
0bba0e5be7 DRI2: Add event buffer head as an argument to driCreateNewDrawable().
The DRI driver needs to know where in the buffer to start reading.
2008-03-09 21:16:30 -04:00
Brian
810e0549af fix botched test for clearing color buffers (should fix depth peeling regression) 2008-03-09 18:30:07 -06:00
Markus Amsler
29fbf72dbf Set normalized flag for GLubyte arrays in _mesa_VertexAttribPointerNV() 2008-03-09 17:54:32 -06:00
Markus Amsler
507da24767 init vertex weight attrib to (1,0,0,0) 2008-03-09 17:54:32 -06:00
Brian
882e0e0179 fix __builtin_expect() definition test for IBM XLC (sf bug 1909832) 2008-03-09 17:54:32 -06:00
Markus Amsler
8161fd2785 Set normalized flag for GLubyte arrays in _mesa_VertexAttribPointerNV() 2008-03-09 17:53:00 -06:00
Markus Amsler
2f23025dfe init vertex weight attrib to (1,0,0,0) 2008-03-09 17:51:21 -06:00
Kristian Høgsberg
b0f8025434 Properly revert the libGL loader path breakage. 2008-03-09 19:02:56 -04:00
Kristian Høgsberg
03db9c8acb libGL: Fall back to DEFAULT_DRIVER_DIR properly.
After commit 6fd82f6fbd, we would
overwrite the libPath default value with NULL if libGL was running
non-setuid and none of the env vars were set.

Thanks to Magnus Kessler <Magnus.Kessler@gmx.net> for spotting it.
2008-03-09 16:29:17 -04:00
Brian
1867eac230 fix __builtin_expect() definition test for IBM XLC (sf bug 1909832) 2008-03-09 10:54:50 -06:00
Brian
eecb3ab7c6 replace // comment with /* */ (bug 14916) 2008-03-09 10:41:50 -06:00
Brian
99a1260985 added info about checking out gallium-0.1 for cell code 2008-03-09 10:39:00 -06:00
Kristian Høgsberg
3d28a2690f Use _X_HIDDEN to hide a bunch of leaked symbols. 2008-03-08 22:28:01 -05:00
Kristian Høgsberg
020c64b2cf Move DRI context functions into dri_glx.c.
Also drop isDirect flag; if gc->driContext is non-NULL, it's direct.
2008-03-08 21:57:29 -05:00
Kristian Høgsberg
20b9230ce1 Move DRI drawable creation into dri_glx.c. 2008-03-08 21:02:23 -05:00
Kristian Høgsberg
92d2a78f8d Introduce __GLXDRIscreen so we can start moving function pointers in there.
Temporarily rename the __DRIscreen member to __driScreen.  Eventually,
we'll move that into __GLXDRIscreen and only access it in dri_glx.c.
2008-03-08 20:34:24 -05:00
Kristian Høgsberg
53dc863636 Move DRI specific parts of CreateContext into dri_glx.c. 2008-03-08 20:02:22 -05:00
Kristian Høgsberg
a1ea6f6198 Convert driCreateScreen and driDestroyScreen to function pointers.
We avoid leaking the symbols and will be able to replace them with
DRI2 implementation later on.
2008-03-08 19:15:50 -05:00
Kristian Høgsberg
425f9ed44e Abstract __DRIdisplayPrivateRec away in dri_glx.c.
This patch moves __DRIdisplayPrivateRec definition into dri_glx.c and
let's dri_glx.c allocate the __DRIdisplay struct pointer to from
__GLXdisplayPrivate.

A small step towards moving more of the dri functionality into dri_glx.c.
2008-03-08 19:10:21 -05:00
Kristian Høgsberg
f585cb29b8 Make __glXCloseDisplay static instead of prototyping it to avoid warning. 2008-03-08 17:38:02 -05:00
Kristian Høgsberg
47d563006d Move libGL install target to the libGL Makefile. 2008-03-08 17:19:39 -05:00
Kristian Høgsberg
6fd82f6fbd Simplify LIBGL_DRIVERS_PATH walking. 2008-03-08 16:19:39 -05:00
Kristian Høgsberg
0f2723cacb Simplify dri loading code by eliminating dlopen "cache".
No need to jump through hoops to track __DRIdrivers and avoid dlopening the
same .so more than twice, dlopen() does this internally.  Besides, we
were already bypassing this and dlopening drivers for each screen,
whether or not they were already dlopened.
2008-03-08 16:19:39 -05:00
Kristian Høgsberg
890d44e54f libGL: Consolidate DRI initialization in dri_glx.c
Move a lot of code over from glx_ext.c.
2008-03-08 16:19:39 -05:00
Dan Nicholson
db7fc63110 autoconf: Print GCC include path directly and be more robust using it
Rather than constructing the GCC include path from `-print-search-dirs',
we can get the path directly from `-print-file-name=include'. This is
used in the Linux kernel build, for example. If no output is returned
from the command, then we don't append a -I path the the makedepend
options.
2008-03-07 11:48:09 -08:00
Kristian Høgsberg
1e6943cf55 [intel] Only enable GL_EXT_texture_sRGB on i965.
Fixes #14799.
2008-03-07 13:46:05 -05:00
Zou Nan hai
7676980d38 [i965] fix fd.o bug #11471 and #11478
1. Follow EXT_texture_rectangle with YCbCr texture
	2. swap UV component for MESA_FORMAT_YCBCR
2008-03-07 15:11:28 +08:00
Xiang, Haihao
5982d39799 i965: use RGB565 to render a bitmap if Depth is 16 2008-03-07 09:48:11 +08:00
Xiang, Haihao
d76545de57 i965: Fix double free issue to pass glean/maskedClear test 2008-03-06 13:23:27 +08:00
Xiang, Haihao
771ba66629 i965:fix segfault issue when clearing the window which
is created with mode GLUT_SINGLE|GLUT_RGB|GLUT_DEPTH.
This issue is introduced by 20b8bff49c
2008-03-06 09:45:51 +08:00
Eric Anholt
fe91c05b54 [intel] Add a driconf option to cache freed buffer objects for reuse.
This is defaulted off as it has potentially large memory costs for a modest
performance gain.  Ideally we will improve DRM performance to the point where
this optimization is not worth the memory cost in any case, or find some
middle ground in caching only limited numbers of certain buffers.  For now,
this provides a modest 4% improvement in openarena on GM965 and 10% in openarena
on GM945.
2008-03-05 16:29:14 -08:00
Christoph Brill
fc21e9cdd0 r300: replace some hard coded mask by define in stencil area 2008-03-04 21:52:49 +01:00
Christoph Brill
701ccf6f29 r300: Fix some issues with masks in stencil buffer area 2008-03-04 21:37:56 +01:00
Kristian Høgsberg
3d608c7a2d [dri2] Add tail pointer to reemitDrawableInfo callback.
When the DRI doesn't parse the event buffer for a while, the X server
may overwrite data that the driver didn't get a chance to look at.  The
reemitDrawableInfo callback requests that the X server reemit all info
for the specified drawable.  To make use of this, the drive needs to know
the new tail pointer so it know where to start reading from.
2008-03-03 19:16:20 -05:00
Kristian Høgsberg
4f7a75cc8a [dri2] Optimize event parsing to skip obsolete events.
This also fixes the problem where the X server does multiple resizes before
the DRI driver gets the events.  The obsolete buffer attach events then
reference already destroyed buffer objects.
2008-03-03 19:16:20 -05:00
Kristian Høgsberg
36c26d321b [intel] Silence unused variable warning when compiling for i965. 2008-03-03 19:15:52 -05:00
Patrice Mandin
f59d59a95f nouveau: compilation fixes 2008-03-02 12:16:23 +01:00
Oliver McFadden
47f08a9fb5 r300: Corrected a bug with the SUB instruction. 2008-03-02 09:34:43 +00:00
Oliver McFadden
e239871d5b r300: Corrected a bug with the MAD instruction.
The PVS_VECTOR_OPCODE macro should be modified to support macro instructions,
too.
2008-03-02 06:35:44 +00:00
Oliver McFadden
c30cc5904d r300: Added the PVS_SRC_OPERAND documentation from AMD. 2008-03-01 06:33:07 +00:00
Oliver McFadden
3129d8b512 r300: Added the PVS_OP_DST_OPERAND documentation from AMD. 2008-03-01 06:33:07 +00:00
Oliver McFadden
9a3d4b14e9 r300: Added a TODO comment for registers missing from AMD's documentation. 2008-03-01 06:33:07 +00:00
Oliver McFadden
916a53088e r300: Moved the vertex program shift/mask defines into the appropriate file. 2008-03-01 06:33:07 +00:00
Oliver McFadden
038e13b1ee r300: Indented the vertex program code with longer lines. 2008-03-01 06:33:07 +00:00
Oliver McFadden
5dcbdc09f3 r300: Moved the PREFER_DP4 define near the position invariant function. 2008-03-01 06:33:07 +00:00
Oliver McFadden
bbab0f97b8 r300: Added a TODO comment for the MAD opcodes. 2008-03-01 06:33:07 +00:00
Oliver McFadden
2a8b6c62a7 r300: Use the VE_ADD hardware opcode for the SUB opcode. 2008-03-01 06:33:07 +00:00
Oliver McFadden
a6d772ed16 r300: Use the VE_MULTIPLY hardware opcode for the MUL opcode. 2008-03-01 06:33:07 +00:00
Oliver McFadden
f80223d9ff r300: Cleaned up the XPD opcode temporary register usage. 2008-03-01 06:33:06 +00:00
Oliver McFadden
b795e8db5f r300: Cleaned up extra white space. 2008-03-01 06:33:06 +00:00
Oliver McFadden
dda906fcdb r300: Prefer to use the VE_ADD for simple MOV style opcodes.
The VE_MULTIPLY_ADD has further restrictions on reading temporary memory which
may complicate things. See AMD's documentation.
2008-03-01 06:33:06 +00:00
Oliver McFadden
7504981074 r300: Removed the (undocumented) MAD_2 opcode.
This opcode is likely a mistake from reverse engineering. MAD_2 isn't included
in AMD's documentation, and my testing reviles there is no problem using the
documented MAD opcode.
2008-03-01 06:33:06 +00:00
Oliver McFadden
7e1878cdad r300: Cleaned up the MAD/MAD_2 opcode selection. 2008-03-01 06:33:06 +00:00
Oliver McFadden
bb4188b85b r300: Renamed some misleading macro arguments. 2008-03-01 06:33:06 +00:00
Oliver McFadden
fb0947ed33 r300: Cleaned up the vertex program macros. 2008-03-01 06:33:06 +00:00
Oliver McFadden
e3a0a8dc7d r300: Removed duplicate component selection defines. 2008-03-01 06:33:06 +00:00
Oliver McFadden
2fdd6d87f4 r300: Removed duplicate source register class defines. 2008-03-01 06:33:06 +00:00
Oliver McFadden
95604e88e7 r300: Renamed the vertex program source register macro. 2008-03-01 06:33:06 +00:00
Oliver McFadden
9c74291197 r300: Removed the (obsolete) special source register macros. 2008-03-01 06:33:06 +00:00
Oliver McFadden
440a6fbf6e r300: Cleaned up the special vertex program source register macros. 2008-03-01 06:33:06 +00:00
Oliver McFadden
8c4d811295 r300: Added the vertex program swizzle (aka selection) defines. 2008-03-01 06:33:06 +00:00
Oliver McFadden
b2c02a4a7c r300: Converted to the new src/dest register defines. 2008-03-01 06:33:06 +00:00
Oliver McFadden
b0e81fd19e r300: Removed an obsolete comment from the vertex program header file. 2008-03-01 06:33:06 +00:00
Oliver McFadden
41c3ae5778 r300: Converted to the new Math Engine defines. 2008-03-01 06:33:06 +00:00
Oliver McFadden
0ced26099d r300: Added the Math Engine opcode macro. 2008-03-01 06:33:06 +00:00
Oliver McFadden
7c4add02f8 r300: Renamed the Vector Engine opcode macro. 2008-03-01 06:33:06 +00:00
Oliver McFadden
bd46a482c4 r300: Converted to the new Vector Engine defines. 2008-03-01 06:33:06 +00:00
Oliver McFadden
66952fa5ae r300: Removed the duplicate dest register defines. 2008-03-01 06:33:05 +00:00
Oliver McFadden
8a646b80ef r300: Removed the duplicate "easy" vertex program macros. 2008-03-01 06:33:05 +00:00
Oliver McFadden
ea8299040f r300: Added the vertex program src/dest register defines. 2008-03-01 06:33:05 +00:00
Oliver McFadden
bccb56d5f3 r300: Added the Vector Engine and Math Engine defines from AMD's documentation. 2008-03-01 06:33:05 +00:00
Oliver McFadden
e0a5194a54 r300: Moved the vertex and fragment program macros into the appropriate files. 2008-03-01 06:33:05 +00:00
Roland Scheidegger
096e35d05f state.depth.range alpha value should be 1, not 0 (bug #14733) 2008-03-01 02:57:01 +01:00
Roland Scheidegger
642d5ee8c5 state.depth.range alpha value should be 1, not 0 (bug #14733) 2008-03-01 02:56:08 +01:00
Kristian Høgsberg
3c5a1e4c2d Update libGL DRI loader to latest DRI interface changes. 2008-02-29 16:42:29 -05:00
Kristian Høgsberg
51cd168da4 glxgears: oops, remove accidental commit of glFinish() hack. 2008-02-29 15:33:40 -05:00
Kristian Høgsberg
6cb3f5c4d8 Use __DRIextension mechanism providing loader functionality to the driver.
Instead of passing in a fixed struct, the loader now passes in a list
of __DRIextension structs, to advertise the functionality it can provide
to the driver.  Each extension is individually versioned and can be
extended or phased out as the interface develops.
2008-02-29 15:05:39 -05:00
Kristian Høgsberg
16242a8007 Reduce the versioning madness required to create a DRI2 screen.
Right now the DRI2 screen constructor takes 3 different versions:
DRI, DDX and DRM.  This is mostly useless, though:

  DRI: The DRI driver doesn't actually care about the DRI protocol,
  it only talks to the loader, which in turn speaks DRI protocol.  Thus,
  the DRI protocol version is of not interest to the DRI driver, but it
  needs to know what functionality the loader provides.  At this point
  that's reflected in the __DRIinterfaceMethods struct and the
  internal_version integer.

  DDX: The DDX version number is essentially used to track extensions
  to the SAREA.  With DRI2 the SAREA consists of a number of versioned,
  self-describing blocks, so the DDX version is no longer interesting.

  DRM: We have the fd, lets just ask the kernel ourselves.
2008-02-29 15:05:39 -05:00
Kristian Høgsberg
5197a31b8e intel: Set the lock flag early to avoid deadlock.
Another regression from the intel_context.c merge.
2008-02-29 15:05:39 -05:00
Xiang, Haihao
de1e9880f8 i965: use _Current pointer instead of Current pointer.
fix double free issue(bug#14710). It also corrects glsl/bitmap demo behavior.
2008-02-29 11:16:21 +08:00
Eric Anholt
b39f15b88f [965] Fix conditional sequencing to allow the frame_buffer_texobj case.
Previously the frame_buffer_texobj case would have been bound as a normal
texture, at best resulting in no surface data being associated with it.
2008-02-28 16:04:54 -08:00
Eric Anholt
ec5ca6844b [intel] Bug #14575: Unmap buffers when deleting/dataing as required.
Otherwise, we would assertion error when doing the final unreference of the
buffer with an outstanding map (catching the memory leak).
2008-02-28 16:01:15 -08:00
Christoph Brill
981b7da8a7 r300: R5xx and R3xx use different registers for RS_IP and RS_INST
These changes are taken from the xf86-video-ati driver. They update the header
file accordingly and also remove some UNKOWN variables.
2008-02-28 22:37:15 +01:00
Eric Anholt
9c8f27ba13 [965] Bug #9151: make fragment.position return window coords not screen coords. 2008-02-28 13:18:48 -08:00
Eric Anholt
3f0301d7bc [965] Fix serious copy'n'paste failure in brw state dumping. 2008-02-28 13:18:48 -08:00
Brian
ddbfa8c462 added git on Windows section 2008-02-28 08:03:34 -07:00
Brian
cef71f58c9 a few words about how the cell driver works. 2008-02-28 08:03:34 -07:00
Xiang, Haihao
3ffd11f71d mesa: separate shader program object from shader object.
Currently a callback delete_shader_cb is used for deleting shader
and shader program objects. Mesa detaches all attached shaders in
_mesa_free_shader_program_data when deleting shader program objects. However
it is likely that these shaders have been freed in _mesa_free_shader,
which will result in unexpected behaviour. This fix uses a single callback for
shader program objects and deletes shader program objects before shader objects.
2008-02-28 21:32:36 +08:00
Xiang, Haihao
8998f52b97 Don't Swap buffer if a DRIDrawable is entirely obscured by another window. 2008-02-28 11:43:54 +01:00
Zou Nan hai
0da03c0aa9 [intel] fix compressed image height 2008-02-28 16:49:38 +08:00
José Fonseca
60159c1b09 Convert crlf->lf line endings.
Windows/DOS users should enable core.autocrlf from now on:

  git config --global core.autocrlf true
2008-02-28 16:34:32 +09:00
Jose Fonseca
90a036b337 Disable autocrlf for Visual Studio project files. 2008-02-28 12:34:01 +09:00
Brian
cabcee9ea9 document cell -DSPU_MAIN_PARAM_LONG_LONG flag 2008-02-27 18:02:23 -07:00
Christoph Brill
00bc91ac64 r300: properly handle GL_POINT in glPolygonMode
Until now the polygon mode was completely turned of when you used
GL_POINT. For me it looked buggy to completely disable the polygon
mode for FrontMode and BackMode if any of these was GL_POINT.
2008-02-27 22:06:38 +01:00
Kristian Høgsberg
60c0f09abb intel: Always use intelInitExtensions() for initializing extensions. 2008-02-27 11:24:29 -05:00
Markus Amsler
c34b024cf4 r300: add artificial output to match fragment program input 2008-02-27 02:06:17 +01:00
Markus Amsler
12a4a74e94 mesa: set input read only on success 2008-02-27 02:04:06 +01:00
Kristian Høgsberg
20b8bff49c i965: Setup framebuffer texture in meta_draw_region.
With DRI2 we there is no screen region until a drawable is bound to
the context.  Set up the framebuffer texture in meta_draw_region instead
which should also handle the case where the draw region changes as a
result of resizing a redirected window or resizing the screen.
2008-02-26 18:01:13 -05:00
Eric Anholt
451bd1941e [965] Don't segfault on INTEL_DEBUG=batch when a surface buffer is NULL. 2008-02-26 13:58:01 -08:00
Eric Anholt
09aa4b3690 [965] remove dead brw_parameter_list_state_flags.
This was replaced by Mesa core code.
2008-02-26 13:57:49 -08:00
Christoph Brill
6e3dde8a54 [r300] fix wow-pinkness regression. Fixed by Markus Amsler 2008-02-26 22:10:54 +01:00
Christoph Brill
bfb7cd653a [r300] Document based on chapter 10.4 and 10.5
This commit adds most of the graphics backend registers and of the rasterizer
registers. Again, some minor bugs were found and marked with TODO or even
fixed.
2008-02-26 21:45:58 +01:00
Zou Nan hai
9bd2cb7f90 [i915] fix texture size exceed limit case when running celestia 2008-02-26 17:20:12 +08:00
Thomas Hellstrom
32879e1461 [intel] Handle -EAGAINs correctly in execbuffer.
Dont stop on fence creation errors.
2008-02-26 09:19:27 +01:00
Kristian Høgsberg
f1c82bf9a4 A few more fixes to the dlsym() fix.
Argh, seriously, I did test that, I just forgot to amend the commit
before pushing.
2008-02-25 22:24:09 -05:00
Dave Airlie
0a64ffb308 dri2: dlsym requires some quotes.. 2008-02-26 12:28:45 +10:00
Kristian Høgsberg
129b9ad16f Use dlsym() to avoid referencing __dri2DriverInitScreen.
Sort-of a stop-gap workaround.  There are a couple of nicer ways to
do this that doesn't require dlfcn.h, but they're more invasive.
2008-02-25 20:02:25 -05:00
Kristian Høgsberg
bcecea6ea6 autoconf: Add gcc search patch to MKDEP_OPTIONS to eliminate warnings.
Also, use -include to avoid error message when make initially fails to
include the non-existent depend file.
2008-02-25 19:02:07 -05:00
Kristian Høgsberg
7381ccab44 intel: Add missing include file to silence last couple of warnings. 2008-02-25 19:02:07 -05:00
Kristian Høgsberg
54bd506c0f intel: Initialize color and spec arrays in LOCAL_VARS macro.
Avoids spamming compilation output with tons of warnings about
use of possibly uninitialized variables.
2008-02-25 19:02:06 -05:00
Kristian Høgsberg
61c3c2c363 Change GetCompressedTexImage in dd_function_table to not take const pointers.
They're changed by the intel driver implementation and thus not const.
Fixes compilation warning.
2008-02-25 19:02:06 -05:00
Kristian Høgsberg
6e8d21d72f Remove GetMSC DriverAPI function.
The DriverAPI is internal to the DRI drivers and GetDrawableMSC
obsoletes GetMSC.  Also, since the DRI driver interface has not yet
been released, just drop the getMSC function from the DRI interface
instead using the ABI preserving version mechanism.

Finally, using void pointer privates in the DRI interface is not allowed,
always pass the actual types around (__DRIdrawable in this case) to
enhance type safety and readability of the code.
2008-02-25 19:02:06 -05:00
Kristian Høgsberg
b49a8f805a Remove now unused setTexOffset from __DriverAPIRec. 2008-02-25 19:02:06 -05:00
Oliver McFadden
57f310b2c9 r300: Corrected a cache flush bug in r300EmitCacheFlush.
Corrects commit 74ae5a875d.
2008-02-25 23:18:15 +00:00
Oliver McFadden
40a3b16183 r300: Moved the state code into separate functions. 2008-02-25 22:52:27 +00:00
Christoph Brill
0253357e16 [r300] revert complete stupid changes 2008-02-25 23:20:23 +01:00
Christoph Brill
7d83618f99 [r300] Document registers completed 10.1 to 10.3 2008-02-25 23:08:02 +01:00
Christoph Brill
4cba59f8e7 [r300] Add more register from the AMD spec 2008-02-25 23:04:17 +01:00
Christoph Brill
ed29d145f4 [r300] Document POLY_MODE and add some TODOs that might have triggered some bugs 2008-02-25 22:55:13 +01:00
Christoph Brill
090e2adaa8 [r300] Document some registers in the POINT area 2008-02-25 22:45:36 +01:00
Christoph Brill
a7fa3e093c [r300] Further document and add register definitions (found bugs in LINE handling) 2008-02-25 22:36:16 +01:00
Christoph Brill
60e1703727 [r300] Sync fog color register names 2008-02-25 21:48:25 +01:00
Christoph Brill
fa088bfe9d [r300] Sync fog register names to the AMD spec 2008-02-25 21:44:11 +01:00
Christoph Brill
d08b1fe2a4 [r300] Further document FG_ALPHA_FUNC (renamed from R300_PP_ALPHA_TEST) and finally add some information to R300_RB3D_DSTCACHE_CTLSTAT 2008-02-25 21:35:13 +01:00
Christoph Brill
f399ed7d55 [r300] Document R300_RB3D_COLORMASK properly and rename it to RB3D_COLOR_CHANNEL_MASK 2008-02-25 21:04:23 +01:00
Christoph Brill
6087b00b27 [r300] Add register definitions based on AMD spec starting with chapter 10 2008-02-25 20:54:23 +01:00
Christoph Brill
a195f7162a [r300] Add some more register from the AMD spec in the area of AARESOLVE 2008-02-25 20:30:40 +01:00
Christoph Brill
74ae5a875d [r300] Sync the names for Z-Buffer registers with the AMD spec
This patch tries to get the Z-Buffer register names in sync with the AMD spec
so that talking to AMD engineers is much simpler.
2008-02-25 20:24:00 +01:00
Christoph Brill
1b51c135fc [r300] Add more struct names for r300_hw_state 2008-02-25 20:20:59 +01:00
Christoph Brill
02926a2977 [r300] rename all unkown structs r300_hw_state to readable names 2008-02-25 20:18:10 +01:00
Christoph Brill
86039ae413 [r300] Add RB3D_DISCARD_SRC_PIXEL_LTE_THRESHOLD and some HyperZ defintions 2008-02-25 20:15:20 +01:00
Christoph Brill
df344b171c [r300] Replace more magic number by register definitions from AMD 2008-02-25 20:11:46 +01:00
Christoph Brill
a3cee7cafb [r300] clean some more magic registers based on AMD spec 2008-02-25 20:08:33 +01:00
Christoph Brill
6051e68a64 [r300] Update some magic registers to real names 2008-02-25 20:03:35 +01:00
Christoph Brill
d1f2d56a75 [r300] Document Z-buffer related register ZB_BW_CNTL 2008-02-25 20:01:27 +01:00
Christoph Brill
091225eebb [r300] document VAP_CNTL based on AMD spec 2008-02-25 19:50:05 +01:00
Christoph Brill
059aca86ba [r300] Document some of the wild guesses in VAP_OUTPUT_VTX_FMT based on AMD spec 2008-02-25 19:39:16 +01:00
Christoph Brill
ff8bb004b1 [r300] document type 3 packets to draw primitives based on AMD spec 2008-02-25 19:32:05 +01:00
Brian
93d1ecdbd6 Obsolete, replaced by glut_fcb.c (fortran callbacks) 2008-02-25 11:01:23 -07:00
Brian
65685785fa Replace glut_fbc.c with glut_fcb.c (cb=callback) 2008-02-25 11:01:23 -07:00
Brian
0fd38dcc83 Replace glut_fbc.c with glut_fcb.c (cb=callback) 2008-02-25 10:57:54 -07:00
Kristian Høgsberg
45a800a2e7 intel: Only enable GL_ARB_occlusion_query on i965. 2008-02-25 12:03:28 -05:00
Zou Nan hai
1d14da9a89 [intel] fix random ut2004 crash on some machine, for cubemap textures,
image offset is already considered when map, add it again in
        StoreImage may lead to wrong result and crash.
2008-02-25 15:27:47 +08:00
Xiang, Haihao
5b6ca237ee i965: fix assertion failure caused by commit dd1d66fc4a. 2008-02-25 11:04:59 +08:00
Julien Cristau
d89cf0649e Add bug closer for #408679. 2008-02-24 10:23:17 +01:00
Julien Cristau
31e9d9d4f8 Prepare changelog for upload. 2008-02-23 18:18:42 +01:00
Julien Cristau
ea9c6d3d9e 03_optional-progs-and-install.patch: partly applied upstream, fixed up 2008-02-23 16:08:53 +01:00
Dave Airlie
d7cf6a8a69 r300: fixup some more names 2008-02-23 19:17:00 +10:00
Dave Airlie
df6e9e40a9 r300: some initial register info from doc drop 2008-02-23 18:54:07 +10:00
Kristian Høgsberg
dd1d66fc4a intel: Merge intel_context.c from i915 and i965. 2008-02-22 21:44:00 -05:00
Brian
ff63cf8068 bump libGL.so version number 2008-02-22 07:59:39 -07:00
Julien Cristau
eaac94c35a Update changelog. 2008-02-22 12:16:27 +01:00
Julien Cristau
9291506af0 Merge branch 'mesa_7_0_branch' of git.freedesktop.org:/git/mesa/mesa into debian-unstable
Conflicts:

	src/glx/mini/Makefile
2008-02-22 12:09:35 +01:00
Kristian Høgsberg
c99fa92ff8 Merge {i915,i965}/intel_context.h as intel/intel_context.h 2008-02-22 00:51:52 -05:00
Alan Hourihane
1c718c0d78 Use drm_i915_sarea instead of drmI830Sarea and remove i830_common.h 2008-02-22 00:20:27 +00:00
Brian
4716670de9 prep for 7.0.3 rc-2 2008-02-21 16:59:20 -07:00
Dan Nicholson
758b998941 autoconf: Fix thinko when checking freebsd CPU types 2008-02-21 10:32:04 -08:00
Dan Nicholson
112a40ec02 autoconf: Set the default drivers after checking platform specifics
The platform-specific overrides to the DRI drivers were being ignored
because the default was being set first. Instead, have the default be a
fallback after the platform checks.
2008-02-21 10:19:55 -08:00
Brian
33c5b38034 latest bug fixes 2008-02-20 09:39:59 -07:00
Brian
5737d6c565 Fix point rasterization regression caused by commit 95a2eb9767
Even-sized, non-AA points need 0.5 bias in position to hit the right pixels.
Test program from bug report 11016 retested and is OK.
2008-02-20 09:38:16 -07:00
Brian
08a7f56c6a raise GL_INVALID_OPERATION if glProgramString compilation fails
cherry picked from master.
2008-02-20 09:00:49 -07:00
Brian
7916f2b4aa Fix glBegin-time test for invalid programs/shaders.
Cherry picked from master.
2008-02-20 08:56:20 -07:00
Brian
4e9c8166b0 Fix glBegin-time test for invalid programs/shaders. 2008-02-20 08:54:15 -07:00
Brian
3075f267cd raise GL_INVALID_OPERATION if glProgramString compilation fails 2008-02-20 08:53:41 -07:00
Brian
193d303ac7 Added <size name="Get" mode="get"/> lines for point parameter tokens.
Cherry picked from master
2008-02-19 08:46:39 -07:00
Brian
a3a480979b Regenerated (see bug 11893) 2008-02-19 08:39:12 -07:00
Brian
ce865fd2fd Added <size name="Get" mode="get"/> lines for point parameter tokens.
See bug 11893.  This allows GL_POINT_SIZE_MIN/MAX/etc to be queried with
indirect rendering.
2008-02-19 08:38:42 -07:00
Brian
fda62a6f2f Regenerated (raise GL_INVALID_VALUE if counter param is negative) 2008-02-19 08:29:17 -07:00
Brian
a52ce9de7d If parameter is a 'counter', raise GL_INVALID_VALUE if value is negative
Fixes bug 10984.
2008-02-19 08:29:16 -07:00
Jeremy Huddleston
9993ccce69 Apple: Pulled in changes from Apple's patchset to allow mesa to build on darwin again
(cherry picked from commit e70609b7b8)
2008-02-19 00:55:11 -08:00
Jeremy Huddleston
e70609b7b8 Apple: Pulled in changes from Apple's patchset to allow mesa to build on darwin again 2008-02-19 00:54:35 -08:00
Xiang, Haihao
da476ff02d i965: new integrated graphics chipset support 2008-02-19 15:59:50 +08:00
Zou Nan hai
d8c187fed7 fix compile for previous commit 2008-02-19 14:53:58 +08:00
Zou Nan hai
689ff273d1 [i965] fix broken glsl texdemo1 2008-02-19 14:47:57 +08:00
Adam Jackson
ba38909be2 Install dri_sarea.h in 'make install' 2008-02-18 11:45:40 -05:00
Dan Nicholson
8c8107118e Ignore glxgears_pixmap 2008-02-17 19:34:48 -08:00
Dan Nicholson
930c253947 Distribute dri_sarea.h with the tarballs
The GL/internal/dri_sarea.h header was missing from the tarballs,
causing the build to bomb for DRI2.
2008-02-17 18:10:15 -08:00
Dan Nicholson
7688791fc5 glapi: Generate xserver glapi sources in the mesa tree
Instead of generating the glapi sources for the xserver and commiting
them to the xserver tree, we can keep them in the mesa tree and change
the xserver build to use the files from the mesa tree.

This makes the xserver glx build more robust as it reduces the chances
for mismatches of the glX API used in the xserver vs. in mesa.
2008-02-17 17:40:43 -08:00
Brian
15f0015df4 Fix potential glDrawPixels(GL_DEPTH_COMPONENT) crashes (bug 13915)
Also, general clean-up of the Xlib-optimized glDraw/CopyPixels code.
2008-02-16 09:57:50 -07:00
Brian
3955bbc303 Added minmag.c test
Test that different minification and magnification filters are chosen for the
non-mipmapped texture case.
2008-02-16 09:57:50 -07:00
Brian
77e3b5d28b Fix potential glDrawPixels(GL_DEPTH_COMPONENT) crashes (bug 13915)
Also, general clean-up of the Xlib-optimized glDraw/CopyPixels code.
2008-02-16 09:56:26 -07:00
Adam Jackson
6ffe45bfd4 Fix path to minstall in last commit. 2008-02-15 17:22:09 -05:00
Adam Jackson
3f5a9a3a9e Install dri_interface.h in 'make install'. 2008-02-15 17:17:03 -05:00
Eric Anholt
c741d287ec [intel] Allow attIndex to be negative to avoid defeating the >= 0 check.
Otherwise, we would go wildly out of bounds if passed -1 (no renderbuffer), such
as while doing LOCK_HARDWARE with glDrawBuffer(GL_NONE).
2008-02-15 13:48:11 -08:00
Eric Anholt
eed5e6f40f [915] Don't attempt our accelerated drawpixels if no color buffer is attached.
Otherwise, glDrawBuffer(GL_NONE); glDrawPixels() results in a segfault when
we try to emit the color buffer state during setup.
2008-02-15 13:43:29 -08:00
Eric Anholt
19420e6c25 [915] Revert broken context creation change from IS_915 commit.
The IS_945 case was left to fall through to the 830 case, along with the
not-recognized-at-all case, making that dead code.
2008-02-15 13:18:09 -08:00
Brian
bf97ca448c Fix glBindTexture crash (bug 14514) 2008-02-15 13:42:19 -07:00
Brian
1d0ddea92f Fix glBindTexture crash (bug 14514) 2008-02-15 13:42:12 -07:00
Adam Jackson
4955325ae9 chmod a-x **/glslnoise.c 2008-02-15 15:05:42 -05:00
Adam Jackson
37e45b9b78 Fix parallel build by making symlinks before makedepend. 2008-02-15 14:59:30 -05:00
Adam Jackson
3ddd339ce3 Fix sis_dri on ia64. 2008-02-15 14:57:51 -05:00
Adam Jackson
49a3483756 Fix build on ia64. 2008-02-15 14:56:32 -05:00
Adam Jackson
cf0d91ae1d Add IS_915(), simplify IS_9XX() a bit. 2008-02-15 14:52:58 -05:00
Eric Anholt
c51eb3ec40 [intel] Bug #13636: Allow recursive buffer mapping in bufmgr_ttm. 2008-02-15 11:51:32 -08:00
Adam Jackson
39bcbe0921 Add E7221 variant to i915. 2008-02-15 14:46:25 -05:00
Adam Jackson
66611f2298 Trivial SELinux awareness. Enable with --enable-selinux.
Avoids AVC warnings when allocating executable memory by first checking
if the current process has permission to do so.
2008-02-15 13:49:12 -05:00
Roland Scheidegger
c5f8ff8b32 fix bug with generated fragment programs if vertex shader is active
When generating a fragment program from fixed function, checking
texUnit->_ReallyEnabled is not sufficient, need texUnit->Enabled too
since the former also represents texture enables from an active vertex
shader.
2008-02-15 17:26:58 +01:00
Roland Scheidegger
bf4a0fafc8 fix bug with generated fragment programs if vertex shader is active
When generating a fragment program from fixed function, checking
texUnit->_ReallyEnabled is not sufficient, need texUnit->Enabled too
since the former also represents texture enables from an active vertex
shader.
2008-02-15 17:26:06 +01:00
Xiang, Haihao
83068115e2 i965: don't swizzle fogcoord if FogOption is FOG_NONE.
fix #10788 issue on 965.
2008-02-15 16:13:11 +08:00
Xiang, Haihao
7eef52e975 i915: set fogcoord to (f,0,0,1). fix #10788 issue on 915. 2008-02-15 15:20:45 +08:00
Kristian Høgsberg
6d48779c7e Add TTM buffer object based texture from pixmap implementation.
Currently only implemented for intel hw.
2008-02-14 22:12:51 -05:00
Kristian Høgsberg
5961ed5fbc Add GLXPixmap version of glxgears to show case new GLX Pixmap functionality. 2008-02-14 22:05:55 -05:00
Kristian Høgsberg
c5c73c1b60 Hook up i915 driver to new DRI2 infrastructure. 2008-02-14 17:56:44 -05:00
Kristian Høgsberg
7da5705b09 Add new DRI2 infrastructure. 2008-02-14 17:56:42 -05:00
caner
50465766d1 miniglx doc updates 2008-02-14 09:34:08 -07:00
caner
5047a8ae19 miniglx doc updates 2008-02-14 09:33:26 -07:00
Xiang, Haihao
4813946d36 i965: use setup attributes as inputs when allocating registers
for WM payload.  fix #10767
2008-02-14 13:24:27 +08:00
Zou Nan hai
1202c434d9 [i965] flip point sprite 2008-02-14 11:01:34 +08:00
Zou Nan hai
08fd2488b0 [i965] gl_FrontFacing support 2008-02-14 10:12:03 +08:00
Dave Airlie
eb9da9706e i965: remove unused hal hooks
These don't appear to have ever been used.
2008-02-14 10:44:43 +10:00
Eric Anholt
85063f14ea [965] Fix ARB_occlusion_query from intel_screen.c merge.
It wasn't being initialized at screen setup, so we were getting stub
entrypoints even though it was exposed as enabled.  Fixes arbocclude mesa demo.
2008-02-13 16:08:35 -08:00
Eric Anholt
822b2481ff [intel] Fix 965 rendering with non-TTM by merging intel_ioctl between 915/965.
The 965 path wasn't setting pClipRects for batch submission since it didn't
want kernel cliprect handling before.  The 915 path also grew the INTEL_NO_HW=1
option for testing just driver overhead.
2008-02-13 10:38:05 -08:00
Eric Anholt
ee781a41af When mapping, wait on the buffer's fence, not hardware idle, in bufmgr_fake 2008-02-13 10:34:48 -08:00
Eric Anholt
ee8dfa8964 Remove O(n^2) debugging code from non-debug path of dri_bufmgr_fake. 2008-02-13 10:34:48 -08:00
Xiang, Haihao
7d8df58a63 _mesa_swizzle_ubyt_image: Don't use single swizzle_copy call
if components don't match. fix #13508
2008-02-13 07:07:47 -07:00
Xiang, Haihao
e45e338542 _mesa_swizzle_ubyt_image: Don't use single swizzle_copy call
if components don't match. fix #13508
2008-02-13 16:00:25 +08:00
Eric Anholt
9365738c36 [intel] Remove cached reloc data buffer now that it's not a BO.
It's not worth the extra effort to avoid a free/malloc, and we'd rather
auto-size the reloc data buffer at some point so we don't need to have
max_relocs.
2008-02-12 16:06:02 -08:00
Eric Anholt
4e2a0b6aa6 [intel] Fix type of some more flags variables for uint64_t flags.
Harmless since we don't yet have any bits above 31 for flags.
2008-02-12 16:06:02 -08:00
Eric Anholt
da428c709a [intel] Note when BO map/unmap fail with TTM. 2008-02-12 16:06:02 -08:00
Eric Anholt
7ea767f9fa [intel] Fix INTEL_DEBUG=bufmgr after relocation interface fixups. 2008-02-12 16:06:02 -08:00
Eric Anholt
1fd82451eb [965] Remove stale brw_state_cache.c comment and function export. 2008-02-12 16:06:02 -08:00
Brian
22ab7fa466 Fix broken test.
As-is, if the texture was too large for the target, an assertion would fail.
Now check proxy texture first and if it works, then test non-proxy target.
2008-02-12 16:56:18 -07:00
Brian
edc7cfa6e6 Set Min/MaxLod with glTexParameterf, not glTexParameteri 2008-02-12 15:53:37 -07:00
Brian
fb3ca7ee2d tweak incr/decrements amounts for keyboard options 2008-02-12 15:00:14 -07:00
Brian
76295f0c31 press 0,1,2,etc keys for specific bias values 2008-02-12 15:00:14 -07:00
Dan Nicholson
929b6d2ebf glapi: Correct prerequisites for gl_and_glX_API.xml
The indirect_dispatch.h and indirect_table.c source files use
gl_and_glX_API.xml in their generation rather than glX_API.xml, but it
wasn't listed in their prerequisites. In turn, gl_and_glX_API.xml uses
glX_API.xml, but this is already listed in $(COMMON_GLX).
2008-02-12 06:43:23 -08:00
Dan Nicholson
fc67d47708 glapi: Use make automatic variables to clean up the commands
Make use of the make automatic variables $@ (the target) and $< (first
prerequisite) to clean up the commands for the glapi generation. This
improves readability and guards against typos since words are repeated
less frequently.
2008-02-12 06:43:23 -08:00
Dan Nicholson
817af9bec2 glapi: Use variable for indent and flags
Put the path to indent and the flags to call it with in configs/default
rather than in the Makefile. This makes it easier to change the values
globally.
2008-02-12 06:43:23 -08:00
Ben Skeggs
532828b1d3 nouveau: ddx versioning changed 2008-02-12 17:28:31 +11:00
Claudio Ciccani
2c9fdaf729 [directfb] Added RGB444 and RGB555.
Also added color expansion for RGB16, ARGB1555 and ARGB4444.
2008-02-08 12:36:45 +01:00
Claudio Ciccani
c231f8ff35 [glut-directfb] Fixed displaying of single buffered window. 2008-02-08 12:35:08 +01:00
Claudio Ciccani
5edede94bb [glut-directfb] When converting microseconds to milliseconds, round to the next integer. 2008-02-08 12:03:53 +01:00
Eric Anholt
70908a793b [965] Flush icache on new batch, not just new context.
This is required since our buffer manager may now move our
instruction-containing buffers at any batchbuffer emit.
2008-02-07 13:14:59 -08:00
Andy Skinner
5c0c883104 added -altopts to allow overriding all other opts 2008-02-07 13:21:14 -07:00
Andy Skinner
762c074012 added -altopts to allow overriding all other opts 2008-02-07 13:19:55 -07:00
Eric Anholt
700a77fb48 [915] Fix COS function using same plan as SIN.
The previous COS function failed badly outside of [-pi/2, pi/2].
2008-02-06 15:43:05 -08:00
Eric Anholt
2551a5ee80 [915] Use a quartic term to improve the accuracy of SIN results.
This is described in the link in the comment, and is the same technique that
r300 uses.
2008-02-06 15:40:32 -08:00
Eric Anholt
d98abcbef0 [915] Fix fp SIN function, and use a quadratic approximation instead of Taylor.
The Taylor series notably fails at producing sin(pi) == 0, which leads to
discontinuity every 2*pi.  The quadratic gets us sin(pi) == 0 behavior, at the
expense of going from 2.4% THD with working Taylor series to 3.8% THD (easily
seen on comparative graphs of the two).  However, our previous implementation
was producing sin(pi) < -1 and worse, so any reasonable approximation is an
improvement.  This also fixes the repeating behavior, where the previous
implementation would repeat sin(x) for x>pi as sin(x % pi) and the opposite
for x < -pi.
2008-02-06 15:26:00 -08:00
Brian
51f2ee3bfb fix bug 9871 2008-02-06 07:55:26 -07:00
Brian
b5cd34aa21 Fix bug 9871: enable user-defined clip planes for R300
Patch provided by Erkin Bahceci <erkinbah@gmail.com>
2008-02-06 07:54:24 -07:00
Eric Anholt
c0e026c809 [965] Bug 14314: assertion failure with with !AIGLX and depth=24 visual. 2008-02-05 11:01:14 -08:00
Eric Anholt
d14d36f9cc [965] Fix TTM relocation caching overzealousness.
The failure mode that was a available was:
reloc 1 -> target_buf
exec: PRESUMED_OFFSET wrong, buffer migrates, r1 entry updated.
reloc 2 -> target_buf
exec: suppose buffer migrates again.  PRESUMED_OFFSET wrong. r2 entry updated.
reloc 1 -> target_buf
exec: suppose buffer doesn't migrate.  PRESUMED_OFFSET right. no relocations
      performed.  r1 has stale pointer at original location.

Failures were reported with OGLconform's VBO test and SPECviewperf90, though
I haven't confirmed that this fixes it.
2008-02-05 11:01:14 -08:00
Tony DeFeo
ae5c6dcd42 [965] Fix memory leak when deleting buffers with backing store. 2008-02-05 10:49:44 -08:00
Xiang, Haihao
89faa648a5 i965: adjust the byte order of clear color. fix #14165 2008-02-05 15:17:58 +08:00
Eric Anholt
fd776e10b3 Replace usage of DRM_BO_FLAG_MEM_TT in intel_regions.c with local/cached.
In addition to potentially binding when it was about to be mapped anyway,
failure to use CACHED_MAPPED means eating a full wbinvd on validate.  Thanks to
airlied for catching this.
2008-02-04 18:24:16 -08:00
Eric Anholt
745df749cc Include glext.h in the cva test so that it actually uses CVAs. 2008-02-04 18:24:16 -08:00
Eric Anholt
5857e988be Allow first != 0 in mesa CVA handling, and add more error checking. 2008-02-04 18:24:16 -08:00
Eric Anholt
2abcc512a3 [965] Convert brw_draw_upload to managing dri_bos, not gl_buffer_objects.
This helps us avoid a bunch of mess with gl_client_arrays that we filled
with unused data and confused readers.
2008-02-04 18:24:16 -08:00
Eric Anholt
0907c639c8 [965] Remove dead structure in brw_draw_upload.c. 2008-02-04 18:24:16 -08:00
Eric Anholt
7b8892f504 [965] Move temporary vbo array storage into the function using it. 2008-02-04 18:24:16 -08:00
Eric Anholt
c86ec87830 [965] Remove dead brw_vertex_element members. 2008-02-04 18:24:16 -08:00
Eric Anholt
4e13067d0f [965] Add a wrapper around interleaved copy_array_to_vbo_array for profiling.
If compiled with optimization, it shouldn't appear at all, and helps me for
now.
2008-02-04 18:24:16 -08:00
Eric Anholt
df44fefced [965] Avoid overloaded use of the term 'input' for clarity. 2008-02-04 18:24:16 -08:00
Eric Anholt
931685e243 [965] Replace VEP/VBP state structures with inline batch emits. 2008-02-04 18:24:15 -08:00
Dave Airlie
4dfcb09960 r300: fix isosurf on rs690 2008-02-04 21:59:26 +11:00
Xiang, Haihao
e36857d841 i965: fix potential NULL pointer dereference. The third region
isn't created at all for 965
2008-02-03 20:36:17 +08:00
Eric Anholt
30c9d96ebf [965] Fix indentation. 2008-02-01 16:05:10 -08:00
Eric Anholt
f85d34e425 Revert "intel: don't apply the relocation optimization if a target"
This reverts commit e2cb905bc6.

It was a reversion of an optimization hidden as otherwise.
pre_target_buf_handle was always NULL, so the optimization was never enabled,
rather than fixing the important optimization (resulting in 25-50% performance
loss).
2008-02-01 16:02:37 -08:00
Eric Anholt
7eca6be25f [965] Replace XXX comment about constant swizzle with an assert. 2008-02-01 16:02:37 -08:00
Eric Anholt
61760105df [965] Fix some indentation in brw_vs_tnl.c. 2008-02-01 16:02:36 -08:00
Xiang, Haihao
ca8d91610f mesa: re-define NEED_SECONDARY_COLOR. fix #14310. 2008-02-02 00:56:51 +08:00
Zou Nan hai
746db75cfb [intel] fix for previous fix 2008-02-01 20:28:26 +08:00
Zou Nan hai
a9a483b43e [intel] use _mesa_copy_rect for upload compressed texture,
this fix bad texture issue in some games(UT and quake).
2008-02-01 17:36:56 +08:00
Xiang, Haihao
71f53a22d0 i965: Don't emit state if fall back to software rendering. fix #14116 2008-02-01 16:48:16 +08:00
Zou Nan hai
3158e981f5 [i965] renable regative rhw test 2008-01-31 18:22:19 +08:00
Xiang, Haihao
e2cb905bc6 intel: don't apply the relocation optimization if a target
buffer is used for a relocatee in the former relocation process
then another target buffer is used for this relocatee at the same
offset in the current relocation process.
2008-01-31 17:29:52 +08:00
Roland Scheidegger
01f59153b5 regenerate glsl library functions 2008-01-31 01:43:13 +01:00
Roland Scheidegger
4cc0663564 fix w component of glsl vec4 asin 2008-01-31 01:43:13 +01:00
Roland Scheidegger
97196d0c8c regenerate glsl library functions 2008-01-31 01:36:23 +01:00
Roland Scheidegger
f6de56b88a fix w component of glsl vec4 asin 2008-01-31 01:35:52 +01:00
Brian
2f7c804952 check if fb->Delete is null (bugs 13507,14293) 2008-01-30 08:12:42 -07:00
Brian
d64ea43b76 fix bugs 13507, 14293 2008-01-30 08:12:06 -07:00
Brian
2deaf93d24 check if fb->Delete is null (bugs 13507,14293) 2008-01-30 08:12:06 -07:00
Alex Deucher
a107ec8300 Add new RV380 pci id
bug 14289
(cherry picked from commit 80efe27560)
2008-01-29 10:15:32 -05:00
Alex Deucher
80efe27560 Add new RV380 pci id
bug 14289
2008-01-29 10:14:04 -05:00
Alex Deucher
120a1f9508 Merge branch 'mesa_7_0_branch' of git+ssh://agd5f@git.freedesktop.org/git/mesa/mesa into mesa_7_0_branch 2008-01-29 09:50:26 -05:00
Alex Deucher
bb84007a57 R300: RV410 SE chips have half the pipes of regular RV410
This fixes 3D rendering on x700 SE chips.  Reported
by Kano.
(cherry picked from commit 0b7e0f8159)
2008-01-29 09:46:48 -05:00
Xiang, Haihao
8e444fb9e2 i965: new integrated graphics chipset support 2008-01-29 11:13:53 +08:00
Brian
f09b2382e9 push out far clip plane to 200 2008-01-28 12:41:47 -07:00
Brian
e7007c6fb0 Added d/D keys to change viewing distance, 'a' to toggle animation 2008-01-28 12:36:01 -07:00
Alan Hourihane
86234e55a6 pull some more fixes for pbo access from trunk 2008-01-28 11:23:53 +00:00
Alan Hourihane
61972077cd fix some pbo path problems 2008-01-28 11:15:53 +00:00
Dave Airlie
3bfef64800 r300: add initial rs690 support to Mesa
The rs690 has an rs4xx style vertex-shader less 3D engine. It uses the new
r500 output engine though. It also needs a new drm with rs690 support,
which is just getting cleaned up.
2008-01-27 12:16:06 +10:00
Xiang, Haihao
5a7feb8ea2 i965: valid message length includes message header. 2008-01-25 17:23:55 +08:00
Xiang, Haihao
4b4c131cd0 i965: re-define the type of reg.loopcount.
avoid some issues such that 1 + (-2) gets a big
positive value.
2008-01-25 17:23:15 +08:00
Xiang, Haihao
da60fd1291 i965: valid message length includes message header. 2008-01-25 16:52:08 +08:00
Xiang, Haihao
fc81f42817 i965: re-define the type of reg.loopcount.
avoid some issues such that 1 + (-2) gets a big
positive value.
2008-01-25 16:38:38 +08:00
Julien Cristau
67617c8f89 Drop -O0 workaround on hppa.
Stop building with -O0 on hppa. Bug #451047 should be fixed in recent gcc
versions.
2008-01-24 22:52:48 +01:00
Eric Anholt
f0310f7636 Bufmgr cleanup from intel-batchbuffer branch of 2d driver. 2008-01-24 13:00:13 -08:00
Eric Anholt
5f0d76204d Clean up comments/dead code from relocation buffer change. 2008-01-24 12:29:04 -08:00
Eric Anholt
8931585d2c Merge commit 'airlied/i915-ttm-cfu'
This requires current DRM which changes the relocation buffer from being a
buffer object to plain malloced memory.
2008-01-24 12:28:42 -08:00
Brian
b87c1ab2c0 Bring in previous 7.0.1/2 release notes, added Cell driver page. 2008-01-24 09:15:31 -07:00
Dave Airlie
a018abd446 i915: move to using copy from user for relocations 2008-01-24 14:38:50 +10:00
Brian
0fd23f01c6 Assorted patches for miniglx/linux-solo (Gavin Li <codeview@gmail.com>) 2008-01-23 16:04:02 -07:00
Brian
4875b40304 Assorted patches for miniglx/linux-solo (Gavin Li <codeview@gmail.com>) 2008-01-23 16:03:19 -07:00
Brian
2a077500a8 Fix some issues with glDrawBuffer(GL_NONE), bug 14198
Set _ColorDrawBuffers[0] = NULL if no renderbuffers enabled.
Check that _ColorDrawBuffers[0] is non-null before dereferencing in a few places.
2008-01-22 21:11:55 -07:00
Adam Jackson
557b0d9df7 glxinfo: Fix multisample visual reporting.
strstr() == 0 tests for the string _not_ being present.  Originally
Red Hat bug #351871.
2008-01-22 14:04:39 -07:00
Adam Jackson
e1ae5b89fc glxinfo: Fix multisample visual reporting.
strstr() == 0 tests for the string _not_ being present.  Originally
Red Hat bug #351871.
2008-01-22 14:57:20 -05:00
Kristian Høgsberg
46eb02b609 [intel] Clean up references to screen buffer metrics.
The screen wide info such as pitch and cpp are obsoleted by the FBO
changes, so clean up the last few references to those, except for
setting up the legacy screen regions.
2008-01-22 12:14:59 -05:00
Brian
888f4380cf fix GLX vertex array bug 14197 2008-01-22 08:41:22 -07:00
Brian
5c82549d9e fix pc vs. gc->ps usage (bug 14197) 2008-01-22 08:40:29 -07:00
Brian
3266c5e95a fix pc vs. gc->ps usage (bug 14197) 2008-01-22 08:38:48 -07:00
Brian
6bd32cbcf3 Don't build yuvrect_client by default
Added 'extra' rule to build optional yuvrect_client, shape, xdemo programs
2008-01-22 07:57:33 -07:00
Brian
60dd3b1d9a remove unused var 2008-01-22 07:57:33 -07:00
Alexey Sokolov
e58c365cda define M_PI if needed 2008-01-22 07:57:33 -07:00
Brian
834decdaae Don't build yuvrect_client by default
Added 'extra' rule to build optional yuvrect_client, shape, xdemo programs
2008-01-22 07:56:31 -07:00
Brian
18b2d83173 remove unused var 2008-01-22 07:54:37 -07:00
Alexey Sokolov
30c65c3c62 define M_PI if needed 2008-01-22 07:42:40 -07:00
Brian
04fcc4cf1e prep for 7.0.3 release 2008-01-21 16:21:39 -07:00
Eric Anholt
d0774eae30 [965] Fix WM unit cache keying that broke line stipple and polygon offset. 2008-01-19 23:22:45 -08:00
Eric Anholt
02d5ba8491 [intel] Fix memory leak with fake bufmgr. 2008-01-18 11:39:35 -08:00
Eric Anholt
2afe5344df [965] Do a little bit rotation in state hash to reduce collisions.
This was around 3% improvement in OA.
2008-01-18 10:15:28 -08:00
Eric Anholt
8c56418f97 [intel] Use a static array for the validation list instead of a linked list.
Around 10% of a CPU was being wasted to create the linked list which we
threw out immediately after passing it to the kernel.
2008-01-18 08:52:00 -08:00
Eric Anholt
a0e453a5ec [intel] Make the no_rast option be standard driconf instead of INTEL_NO_RAST. 2008-01-17 14:23:04 -08:00
Eric Anholt
8517079cbc [i915] Fix driver from cliprects changes, and clean up state emission.
The fix for pageflipping with cliprects ended up causing a batch flush at
an inopportune time, which is fixed by moving it up.

Additionally, the recovery code for handling batch wraps at bad times is
replaced by just checking for the space up front, and using a no_batch_wrap
assert like on 965 to make sure that we weren't wrong about how much space that
was.
2008-01-17 13:55:42 -08:00
Julien Cristau
09504dde1f Update changelog; add Vcs-* and Homepage fields in debian/control. 2008-01-17 22:26:48 +01:00
Eric Anholt
faeb1bc9f9 [965] Fix whitespace in c9b1fef0c9 2008-01-17 11:47:02 -08:00
Eric Anholt
e747e9a072 [965] Fix potential segfaults from bad realloc.
C has no order of evaluation restrictions on function arguments, so we
attempted to realloc from new-size to new-size.
2008-01-17 11:46:58 -08:00
Xiang, Haihao
c9b1fef0c9 i965: always call dri_emit_reloc when creating clip unit state
This fix ensures it gets the starting location of the clip program
if a clip unit state is same as a unit which is created when metaops
is actived and it doesn't impact metaops because the clip state offset
isn't emitted when metaops is actived.
2008-01-17 11:08:56 +08:00
Eric Anholt
9bae03a583 [965] Fix inversion of SLT/SGE results in vertex programs.
The WM code had this right, so copy its behavior.  This reverts a flipping
of the arguments to SLT in brw_vs_tnl which came in with the GLSL code that
probably occurred to work around the flipped results, and brings the code back
in line with t_vp_build.c.
2008-01-16 15:19:29 -08:00
Eric Anholt
6a5e86b344 [965] Rename depth_mask in CC key to depth_write, since it's a boolean enable. 2008-01-16 10:50:28 -08:00
Eric Anholt
93ec89e565 [965] Fix the type of alpha_ref in CC key, fixing ppracer rendering. 2008-01-16 10:49:56 -08:00
Dan Nicholson
0c275b6a41 autoconf: Use -fno-strict-aliasing on GCC
This change adds -fno-strict-aliasing when using gcc and g++, just like
the existing configs.
2008-01-15 22:53:18 -08:00
Eric Anholt
b039b785e2 Fix the compile of disabled DEBUG_PARSING code. 2008-01-15 15:10:54 -08:00
Eric Anholt
185320ae13 Bug #13492: Only call ProgramStringNotify if program parsing succeeded.
Wine intentionally tries some out-of-spec programs to test strictness, and
calling ProgramStringNotify on the results of a failed program parse resulted
in crashes in the 965 driver.
2008-01-15 15:10:39 -08:00
Eric Anholt
4652e351a2 [965] Increase max relocation count, fixing assertions by blender. 2008-01-15 10:12:38 -08:00
Kristian Høgsberg
bb73cf9ec0 [i915] Prevent recursive batchbuffer flushing.
Workaround for recursive batchbuffer flushing: If the window is
moved, we can get into a case where we try to flush during a
flush.  What happens is that when we try to grab the lock for
the first flush, we detect that the window moved which then
causes another flush (from the intel_draw_buffer() call in
intelUpdatePageFlipping()).  To work around this we reset the
batchbuffer tail pointer before trying to get the lock.  This
prevent the nested buffer flush, but a better fix would be to
avoid that in the first place.
2008-01-15 10:24:04 -05:00
Zou Nan hai
3ad9ca8240 i965: fix an assert fail in brw_new_batch 2008-01-15 15:19:09 +08:00
Eric Anholt
ffa8b18c7c [i915] Fix recursive lock hang in intelContendedLock handling. 2008-01-14 15:19:43 -08:00
Julien Cristau
c04885f072 Merge branch 'mesa_7_0_branch' of git://anongit.freedesktop.org/git/mesa/mesa into debian-unstable
Conflicts:

	progs/tests/.gitignore
	progs/tests/Makefile
2008-01-14 22:30:03 +01:00
Eric Anholt
d42400db87 [intel] Delay unmapping of driver-private buffers to reduce map/unmap thrashing.
Good for a 10-15% improvement to OA.
2008-01-14 10:21:19 -08:00
Eric Anholt
7fec1eb21b [965] Force a new vertex upload buffer at new batch time.
Otherwise, we could choose to upload into the temporary VBO that we just fired
off to the hardware.  Good for a 60% OA performance improvement.
2008-01-14 10:18:38 -08:00
Michel Dänzer
48ae5cf09d i965: Fix byte vs. pixel unit mixup for aligned texture pitch.
I sincerely hope I don't manage to mess this up yet again...

Thanks again to Todd Merrill for pointing out the problem and testing the fix
on IRC.
2008-01-14 16:30:58 +01:00
Dan Nicholson
544ab209e7 Allow osmesa to be enabled or disabled
The conditional in src/mesa/Makefile currently hardcodes the cases where
libOSMesa can be built on libGL. Likewise, the xlib case always includes
libOSMesa in the stand-alone target.

This changes the conditional to a loop over the DRIVER_DIRS variable.
This means that any driver configuration can enable or disable osmesa.
The current "stand-alone" rule is changed so that DRIVER_DIRS=x11 and
DRIVER_DIRS="x11 osmesa" are both respected.

The configure option is changed to --enable-gl-osmesa as this change
allows libOSMesa to be built upon any of the libGL-enabling drivers.
2008-01-11 08:25:15 -08:00
Michel Dänzer
45cdb6eb45 i965: Fix unresolved symbol intel_miptree_pitch_align.
For some reason, I thought that function was shared with i915tex... The good
news is that i965 gets to keep the lower pitch alignment requirements.

Thanks to Todd Merrill for pointing out the problem on IRC.
2008-01-11 16:32:39 +01:00
Eric Anholt
540faf5f91 [965] Remove an open-coded memcpy. 2008-01-10 15:05:39 -08:00
Eric Anholt
9bf9122925 [intel] Remove gratuitous (batchbuffer) flush before doing buffer clears.
Increases OA performance by about 3%.
2008-01-10 14:51:02 -08:00
Eric Anholt
3d273ae44e [intel] Report buffer size when allocating with INTEL_DEBUG=bufmgr and TTM. 2008-01-10 14:43:43 -08:00
Eric Anholt
609ad99a1a [965] Improve performance by allocating CURBE buffers a page at a time.
Since each one is only 64b, and kernel allocations are a page anyway, this
lets us reduce buffer allocation by packing many CURBEs into one buffer, for
each batchbuffer submitted.  Improves openarena performance by around 10%.
2008-01-10 14:43:16 -08:00
Eric Anholt
4e5b3626a1 [intel] Remove a gratuitous flush at the end of ClearWithTris. 2008-01-10 13:46:49 -08:00
Eric Anholt
ab2933df65 [intel] Only flush batch when changing draw buffers, not every cliprect update.
The previous code would reference freed memory on window moves.
2008-01-10 13:24:14 -08:00
Eric Anholt
a04b632350 [intel] Add more cliprect modes to cover other meanings for batch emits.
The previous change gave us only two modes, one which looped over the batch
per cliprect (3d drawing) and one that didn't (state updeast).
However, we really want 4:

- Batch doesn't care about cliprects (state updates)
- Batch needs DRAWING_RECTANGLE looping per cliprect (3d drawing)
- Batch needs to be executed just once (region fills, copies, etc.)
- Batch already includes cliprect handling, and must be flushed by unlock time
  (copybuffers, clears).

All callers should now be fixed to use one of these states for any batchbuffer
emits.  Thanks to Keith Whitwell for pointing out the failure.
2008-01-10 12:34:08 -08:00
Xiang, Haihao
7086df5868 i965: fix bug #14002 2008-01-10 16:48:33 +08:00
Xiang, Haihao
c30392f187 i965: fix segfault caused by commit e131c46b20. 2008-01-10 16:45:35 +08:00
Kristian Høgsberg
e131c46b20 [intel] Simplify intelCreateBuffer() a bit.
Drop a bunch of unused arguments from intel_create_renderbuffer() and
introduce intel_renderbuffer_set_region() to set the region for
a renderbuffer.
2008-01-09 20:43:18 -05:00
Kristian Høgsberg
33c42c1262 [intel] Prepare intelCopyBuffer() for private back buffers. 2008-01-09 20:43:18 -05:00
Kristian Høgsberg
24e7e45768 Factor out code to do the DRM_I830_GETPARAM ioctl. 2008-01-09 19:08:55 -05:00
Kristian Høgsberg
f1139e4c66 Fold DoBindContext() helper function into driBindContext(). 2008-01-09 19:08:55 -05:00
Eric Anholt
4225876bf0 [intel] Re-allocate backing buffer objects on BufferData.
This may allow better concurrency (noop in openarena performance now), but is
also important for the previous commit -- otherwise, we may end up with
BufferData, draw_prims, BufferData and the draw_prims would use the new VBO
data instead of old.  This could still occur with user-supplied VBOs and poor
use of MapBuffer without BufferData.
2008-01-09 14:41:55 -08:00
Eric Anholt
7da98d7eba [965] Allow more than one draw_prims per batchbuffer.
The comment about (vbo)_exec_api.c appeared to be stale, as the VBO code seems
to only use non-named VBOs (not actual VBOs) or freshly-allocated VBO data.

This brings a 2x speedup to openarena, because we can submit nearly-full
batchbuffers instead of many 450-byte ones.
2008-01-09 14:41:54 -08:00
Eric Anholt
dc1608ae9d [965] Replace the always_update dirty flag with BRW_NEW_BATCH.
This allows us to avoid re-emitting some state when validate_state happens
multiple times per batchbuffer.  Even though we flush batch per primitive
currently, that may still happen already if the primitive changed (this should
probably be fixed as well).
2008-01-09 14:41:53 -08:00
Eric Anholt
5f86ae057a [intel] Rename lost_hardware vtbl entry to new_batch.
Both drivers have ended up relying on lost_hardware being called after each
batch buffer, so update the name.  This removes one of the calls on 965 whic
h was outside of the batchbuffer handling code and just duplicating what had
already happened through batchbuffer handling.
2008-01-09 14:41:42 -08:00
Eric Anholt
d9edd8e905 [965] Remove drawing rect upload, which is handled (better) by the kernel. 2008-01-09 14:41:41 -08:00
Eric Anholt
beddf653a9 [intel] Clean up cliprect handling in intel drivers.
In particular, batch buffers are no longer flushed when switching from
CLIPRECTS to NO_CLIPRECTS or vice versa, and 965 just uses DRM cliprect
handling for primitives instead of trying to sneak in its own to avoid the
DRM stuff. The disadvantage is that we will re-execute state updates per
cliprect, but the advantage is that we will be able to accumulate larger
batch buffers, which were proving to be a major overhead.
2008-01-09 14:41:40 -08:00
Eric Anholt
7ce12b0863 [intel] Remove the dead intel->need_flush member. 2008-01-09 14:41:39 -08:00
Eric Anholt
5a49e84fcd [965] Clarify a bit of index buffer upload code. 2008-01-09 14:41:38 -08:00
Brian
8c4806ccc4 fix bug 13978: glDrawBuffersARB() didn't set all necessary state 2008-01-09 14:20:51 -07:00
Eric Anholt
c0fd6a0903 [intel] Add TTM bufmgr debug for type or offset migration of buffers. 2008-01-08 10:08:54 -08:00
Keith Packard
b9f3f732aa i915tex: Centralize mipmap pitch computations.
mipmap pitches must account for the device alignment requirements, which
used to be fairly simple; just align to a 4-byte boundary. However, to allow
textures to be drawn to under TTM, they now need to be aligned to a 64-byte
boundary. Placing all of the alignment constraints in a single function
allows this new constraint to be applied uniformly.

There was some pitch constraining code in intel_miptree_create, but that was
modifying the pitch long after the miptree had been layed out, so it only
served to wreck the mipmap and cause rendering errors.

(cherry picked from commit a183efc132 with manual
changes for mesa_7_0_branch by Michel Dänzer. One side effect of this is that
i965 also aligns the pitch of 2D textures to multiples of 64 bytes, hopefully
that won't cause any issues)
2008-01-08 16:48:13 +01:00
Xiang, Haihao
3369cd9a6f i915: Keith Whitwell's swizzling TEX patch. fix #8283 2008-01-07 14:08:36 +08:00
Brian
601a6b872c Replace gl_framebuffer's _ColorDrawBufferMask with _ColorDrawBufferIndexes
Each array element is now a BUFFER_x token rather than a BUFFER_BIT_x bitmask.
The number of active color buffers is specified by _NumColorDrawBuffers.
This builds on the previous DrawBuffer changes and will help with drivers
implementing GL_ARB_draw_buffers.
2008-01-06 18:07:26 -07:00
Brian
ff73c783cc Simplify ctx->_NumColorDrawBuffers, _ColorDrawBuffers and fix bug 13835.
These fields are no longer indexed by shader output.  Now, we just have
a simple array of renderbuffer pointers.

If the shader writes to gl_FragData[i], send those colors to the N
_ColorDrawBuffers.  Otherwise, replicate the single gl_FragColor (or
the fixed-function color) to the N _ColorDrawBuffers.

A few more changes and simplifications can follow from this...
2008-01-06 10:43:20 -07:00
Brian
9f6022d056 fix depth/1 typo in glTexImage3D proxy code 2008-01-05 15:45:55 -07:00
Brian
48aa35a8b2 check if span length > 0 before calling _swrast_write_rgba_span() 2008-01-05 15:45:55 -07:00
Brian
17006ddd6b fix 3d proxy texture depth bug 2008-01-05 15:44:51 -07:00
Brian
b77a354df3 fix depth/1 typo in glTexImage3D proxy code 2008-01-05 15:44:51 -07:00
Xiang, Haihao
e7044d552c i915: don't validate PS program when falling back to software
rendering. fix #12786
2008-01-04 17:11:39 +08:00
Xiang, Haihao
15356376bd intel: some initialization for dri_bufmgr_ttm 2008-01-04 14:22:23 +08:00
Eric Anholt
62842e7145 [intel] Add a single-entry relocation buffer cache.
By avoiding the repeated relocation buffer creation/map/unmap/destroy for each
new batch buffer, this improves OpenArena framerates by 30%.  Caching batch
buffers themselves doesn't appear to be a significant performance win over
this change.
2008-01-03 16:53:23 -08:00
Eric Anholt
8abffada70 [intel] Convert relocations to not be cleared out on buffer submit.
We have two consumers of relocations.  One is static state buffers, which
want the same relocation every time.  The other is the batchbuffer, which gets
thrown out immediately after submit.  This lets us reduce repeated computation
for static state buffers, and clean up the code by moving relocations nearer
to where the state buffer is computed.
2008-01-03 15:46:16 -08:00
Eric Anholt
0ff3eb637b [965] Fix some missing initialization in WM keys. 2008-01-03 14:49:33 -08:00
Zou Nan hai
15653b5d88 fix fd.o bug #13761
MRD computation is now changed in mesa core
2008-01-03 16:05:27 +08:00
Eric Anholt
9e9f6f105c [965] Convert WM unit to use a cache key instead of brw_cache_data. 2008-01-02 15:51:49 -08:00
Eric Anholt
03b59edbb5 [965] Convert VS unit to use a cache key instead of brw_cache_data. 2008-01-02 15:51:48 -08:00
Eric Anholt
77e6cf8c17 [965] Convert SF unit to use a cache key instead of brw_cache_data. 2008-01-02 15:51:47 -08:00
Eric Anholt
3149119cad [965] Convert GS unit to use a cache key instead of brw_cache_data. 2008-01-02 15:51:46 -08:00
Eric Anholt
114b802e87 [965] Convert clip unit to use a cache key instead of brw_cache_data. 2008-01-02 15:51:46 -08:00
Eric Anholt
b35811e1b3 [965] Convert CC unit to use a cache key instead of brw_cache_data. 2008-01-02 15:51:45 -08:00
Eric Anholt
a95b48d55b [965] Convert surface state to use a cache key instead of brw_cache_data. 2008-01-02 15:51:44 -08:00
Eric Anholt
3e3644c6e8 [965] Convert sampler state to use a cache key instead of brw_cache_data. 2008-01-02 15:51:43 -08:00
Eric Anholt
a099461fa3 Revert "[intel] Use the memory type mask containing the caching flags."
This reverts commit 8bb9ae3693.

Validating our kernel buffers with the caching off in flags but on in mask
means that the kernel migrates the buffer to be uncached, which is undesired.
2008-01-02 15:51:27 -08:00
Eric Anholt
8bb9ae3693 [intel] Use the memory type mask containing the caching flags. 2008-01-02 09:47:07 -08:00
Keith Packard
a3c435b342 Set correct flags mask when validating buffers.
The 'mask' value used in the validation operation specifies which of the
'flags' bits are being modified. Buffer validation wants to pass the memory
type and access mode (rwx) to the kernel so that the buffer will be placed
correctly, and so that the right kind of fence will be created (read vs
write). That means we actually want a constant mask for these operations,
and not something computed from the bits coming in. The constant we want is
DRM_BO_MASK_MEM | DRM_BO_FLAG_READ | DRM_BO_FLAG_WRITE | DRM_BO_FLAG_EXE.
2008-01-02 09:47:06 -08:00
Eric Anholt
4cc02fb938 [965] Improve performance by including reloc target buffer pointers in keys.
Without this, the WM binding tables would all collide, for example.  Improves
openarena performance by around 2%.
2008-01-02 09:47:05 -08:00
Brian
de427742b8 additional stub functions 2008-01-02 07:24:07 -07:00
Brian
71d46beebf additional stub functions 2008-01-02 07:23:41 -07:00
Brian
454e296eb1 additional GL_COLOR_ATTACHMENTx_EXT cases (bug 13767) 2008-01-02 07:20:08 -07:00
Brian
7d6d6652d5 additional GL_COLOR_ATTACHMENTx_EXT cases (bug 13767) 2008-01-02 07:19:31 -07:00
Xiang, Haihao
60d762aa62 i915: Needn't adjust pixel centers. fix #12944 2008-01-02 11:38:51 +08:00
Dave Airlie
524304c9b8 Revert "r300: fix bug with maniadrive rendering"
this is correct, there is another issue with sw fallbacks

This reverts commit cc50edbca2.
2008-01-02 06:19:47 +10:00
Brian
f9b696be2b fix vbo display list memleak upon context destruction 2008-01-01 10:23:56 -07:00
Brian
a5c84de3a7 remove unneeded conditional 2008-01-01 10:20:56 -07:00
Brian
f0676cc422 fix vbo display list memleak upon context destruction 2008-01-01 10:20:56 -07:00
Brian
6c0fc07d71 fix glUniform4f typo 2008-01-01 10:20:56 -07:00
Brian
c923edbc71 additional GL_COLOR_ATTACHMENTx_EXT cases (bug 13767) 2008-01-01 10:10:18 -07:00
Brian
9b3162b1d2 additional GL_COLOR_ATTACHMENTx_EXT cases (bug 13767) 2008-01-01 10:10:04 -07:00
Brian
e20c1d987f fix GLSL uniform/attrib bugs (13753) 2008-01-01 09:59:51 -07:00
Bruce Merry
cd354eb10f Convert to 0/1 when setting boolean uniforms
Also add some extra tests to the shader_api regression tests
2008-01-01 09:59:51 -07:00
Bruce Merry
e9ac27ee23 Make use of count in _mesa_uniform_matrix 2008-01-01 09:59:50 -07:00
Bruce Merry
3f9dc9f5b6 Add a test program to test for assorted bugs in shader_api.c 2008-01-01 09:59:50 -07:00
Bruce Merry
ba709875ae More fixes to shader_api
- return GL_INVALID_OPERATION instead of GL_INVALID_VALUE if location is bad
- correct the type-checking of uniforms from my previous commit
- accept location of -1 in _mesa_uniform_matrix
2008-01-01 09:59:50 -07:00
Bruce Merry
80f8397b35 Fix several bugs relating to uniforms and attributes in GLSL API
- fix sizes for GL_FLOAT_MAT2x3 and GL_FLOAT_MAT4x3 in sizeof_glsl_type
- fix size returns in _mesa_get_active_attrib
- fix out-of-bounds array access to vec_types in _mesa_get_active_attrib
- fix queries of matrix uniforms in _mesa_get_uniformfv
- fix _mesa_get_uniformfv to only return one base, even from an array
- allow location == -1 in _mesa_uniform
- validate types in _mesa_uniform
- allow array overruns in _mesa_uniform
2008-01-01 09:59:50 -07:00
Bruce Merry
2bf2a8cc6d Convert to 0/1 when setting boolean uniforms
Also add some extra tests to the shader_api regression tests
2008-01-01 09:58:15 -07:00
Bruce Merry
3f948025db Make use of count in _mesa_uniform_matrix 2008-01-01 09:58:15 -07:00
Bruce Merry
239be839be Add a test program to test for assorted bugs in shader_api.c 2008-01-01 09:58:15 -07:00
Bruce Merry
89b80327ae More fixes to shader_api
- return GL_INVALID_OPERATION instead of GL_INVALID_VALUE if location is bad
- correct the type-checking of uniforms from my previous commit
- accept location of -1 in _mesa_uniform_matrix
2008-01-01 09:58:15 -07:00
Bruce Merry
eeb03faadc Fix several bugs relating to uniforms and attributes in GLSL API
- fix sizes for GL_FLOAT_MAT2x3 and GL_FLOAT_MAT4x3 in sizeof_glsl_type
- fix size returns in _mesa_get_active_attrib
- fix out-of-bounds array access to vec_types in _mesa_get_active_attrib
- fix queries of matrix uniforms in _mesa_get_uniformfv
- fix _mesa_get_uniformfv to only return one base, even from an array
- allow location == -1 in _mesa_uniform
- validate types in _mesa_uniform
- allow array overruns in _mesa_uniform
2008-01-01 09:58:15 -07:00
Brian
b45fa27fa1 added 'get' info for framebuffer object tokens 2008-01-01 09:26:30 -07:00
Brian
8349073561 added 'get' info for framebuffer object tokens 2008-01-01 09:26:15 -07:00
Brian
76387dec76 add 'Get' info for MAX_3D_TEXTURE_SIZE (for bug 13811) 2008-01-01 09:05:05 -07:00
Brian
b59480645d add 'Get' info for MAX_3D_TEXTURE_SIZE (for bug 13811) 2008-01-01 09:04:13 -07:00
Hans de Goede
d3033cad7c t_vp_build: fix temporary register allocation to minimise the allocations 2008-01-02 01:32:01 +10:00
Hans de Goede
2290ea7fe6 rx00: fix off by one error in tempreg check 2008-01-02 01:29:51 +10:00
Dave Airlie
cc50edbca2 r300: fix bug with maniadrive rendering
I've no idea why I added this so I'll have to spend time tracking it down
2008-01-02 01:19:23 +10:00
Brian
148cb36979 add missing double quote (bug 13878) 2008-01-01 07:59:58 -07:00
Dan Nicholson
73f6f7ed91 autoconf: Remind developers to bump version numbers in configure.ac
Just like configs/default, the version number in configure.ac needs to
be bumped for releases. Maybe later we can figure out how to scrape the
version from configs/default into configure.ac.
2007-12-30 08:48:10 -08:00
Zou Nan hai
d0ebdca4fa fix fd.o bug #13847 2007-12-29 15:28:51 +08:00
Roland Scheidegger
3956597962 Bug #13839: Fix 3D texture offset miscalculation with pixels versus bytes. 2007-12-28 18:05:22 -08:00
Dan Nicholson
aecec3aced Merge branch 'autoconf2' 2007-12-28 15:14:32 -08:00
Xiang, Haihao
aac2d99dc3 i915: reset swrast state after calling swrast DrawPixels.
In order to optimize DrawPixels, the i915 texenv program isn't
applied to swrast DrawPixels in the i915 driver. This causes this
program isn't applied to any following swrast functions. Resetting
the swrast state fixes this issue.  Fix #13614
2007-12-27 10:43:43 +08:00
Dan Nicholson
2b440d5461 Merge branch 'master' into autoconf2 2007-12-26 15:41:24 -06:00
Dan Nicholson
ab57cbaccc autoconf: Helper options for adding GCC 32/64 bit flags
Two new configure options to add -m32 or -m64 to the CFLAGS and CXXFLAGS
when GCC is in use. By default, the user supplied options are
environment variables are respected, but these options are quick helps
for the common case of x86/x86_64 using GCC.
2007-12-26 15:38:30 -06:00
Xiang, Haihao
b422e5ad37 i915: apply commit a0a5e8cfc0 from 965.
fix #11925
2007-12-25 17:22:19 +08:00
Xiang, Haihao
cf46aee14a mesa: fix a bad cast in put_values_z24.
The values passed to put_values_z24 are GLuint,
not GLubyte. fix #13543
2007-12-25 14:18:05 +08:00
Adam Jackson
166a828ddf __driConfigOptions must be PUBLIC. 2007-12-24 19:16:24 -05:00
Alex Deucher
0b7e0f8159 R300: RV410 SE chips have half the pipes of regular RV410
This fixes 3D rendering on x700 SE chips.  Reported
by Kano.
2007-12-24 11:59:27 -05:00
Dan Nicholson
4c5a2b3af2 autoconf: Documentation for using the autoconf'd build
Most of the options available from configure are documented on the
autoconf.html. This page is reached as an alternative provided on the
install.html page. An FAQ about why there is no configure script has
been removed.
2007-12-23 16:38:18 -08:00
Roland Scheidegger
26473140b9 fix GL_LINE_LOOP with drivers using own render pipeline stage (#12410, #13527)
primitive needs to include the begin/end flags (broken since vbo-0.2). Should
fix missing first/last line segment on gamma, i810, i915, mga, r200, radeon,
s3v, savage, unichrome (r300 already correct). Tested on r200, fixes #13527.
2007-12-22 18:54:18 +01:00
Roland Scheidegger
c1eb78f7ff fix GL_LINE_LOOP with drivers using own render pipeline stage (#12410, #13527)
primitive needs to include the begin/end flags (broken since vbo-0.2). Should
fix missing first/last line segment on gamma, i810, i915, mga, r200, radeon,
s3v, savage, unichrome (r300 already correct). Tested on r200, fixes #13527.
2007-12-22 18:49:42 +01:00
Kristian Høgsberg
2f3e939ae7 Silence compiler warnings from XML error macros. 2007-12-21 15:31:00 -05:00
Eric Anholt
9136e1f2c8 [965] Fix and enable separate stencil.
Note that this does not enable GL_EXT_stencil_two_side, because Mesa's computed
_TestTwoSide ends up respecting only STENCIL_TEST_TWO_SIDE_EXT (defaults to
GL_FALSE), even if the application uses only GL 2.0 / ATI entrypoints.
2007-12-21 11:50:00 -08:00
Eric Anholt
9e68e191ac [intel] Move some pixel path support from drivers to shared. 2007-12-21 11:41:46 -08:00
Xiang, Haihao
f8830a1bf7 intel: cast a pointer to unsigned long, avoid potential error. 2007-12-21 17:03:55 +08:00
Eric Anholt
bea6b5fe5a [965] Enable EXT_framebuffer_object.
To do so, merge the remainnig necessary code from the buffers, blit, span, and
screen code to shared, and replace it with those.
2007-12-20 11:32:55 -08:00
Eric Anholt
106f398220 [965] Actually enable SGIS_generate_mipmap. 2007-12-20 11:28:10 -08:00
Eric Anholt
101abee6c4 [intel] Fix and reenable (software) SGIS_generate_mipmap
The core problem was that _mesa_generate_mipmap was not respecting RowStride
of the source image.  Additionally, the intel private data associated with the
images (level and face) was not being initialized for the
_mesa_generate_mipmap-generated images.
2007-12-20 11:26:34 -08:00
Eric Anholt
b2f62609d0 [intel] Allow driver hooks to be NULL in intel_buffers.c and just update flags.
The 965 driver relies on flag checking instead of these hooks, and will be
using this code soon.
2007-12-20 08:24:45 -08:00
Eric Anholt
fcd1e9dad6 [i915] Move meta_draw_quad into the vtbl with other meta operations. 2007-12-20 08:19:42 -08:00
Brian
8aa0fd6b20 glGetActiveUniform fix 2007-12-20 09:08:12 -07:00
Brian
a1b3a908f5 return correct size from glGetActiveUniform (bug 13751) 2007-12-20 09:08:12 -07:00
Brian
2761cfce46 return correct size from glGetActiveUniform (bug 13751) 2007-12-20 09:06:05 -07:00
Xiang, Haihao
e543292335 i915: avoid dead lock in intel_meta_draw_poly. fix #13696 2007-12-20 16:49:25 +08:00
Dan Nicholson
da693b7c89 Don't try to build nonexistent i915tex driver on linux-x86-64 2007-12-18 22:20:37 -08:00
Dan Nicholson
f71032b7e2 docs: Fix links in contribute section
The contribute section had a broken hyperlink, masking the mailing list
text.
2007-12-18 22:13:46 -08:00
Eric Anholt
d2d82f8a29 [915] Set cliprects in the drawbuffer software fallback case as well.
Otherwise, we may violate cliprect asssertions on clearing the buffers, which
isn't affected by the fallback.
2007-12-18 18:56:20 -08:00
Xiang, Haihao
f9e70d951a i965: allocate GRF registers before building subroutines,
it ensures there are sufficient registers for all subroutines.
2007-12-19 10:44:00 +08:00
Xiang, Haihao
41ed6be1da i965: restore the flag after building the subroutine of the
GS thread. fix #13240
2007-12-19 10:36:56 +08:00
Xiang, Haihao
4cca760a9b i965: allocate GRF registers before building subroutines,
it ensures there are sufficient registers for all subroutines.
2007-12-19 10:22:28 +08:00
Xiang, Haihao
e3a1ae0fcb i965: restore the flag after building the subroutine of the
GS thread. fix #13240
2007-12-19 09:59:37 +08:00
Brian
27de28fc3e Remove -I$(TOP)/src/mesa/transform 2007-12-18 17:07:11 -07:00
Brian
88f1419f96 added glSecondaryColor3fv_func 2007-12-18 16:30:42 -07:00
Brian
dd2f01c229 simplify update two-side lighting test (follow-on to previous front/back-face changes) 2007-12-18 16:28:36 -07:00
Brian
deb5c56c77 fix NEED_SECONDARY_COLOR for vert/frag progs 2007-12-18 16:28:36 -07:00
Brian
83af4f3623 added two-side test 2007-12-18 16:25:48 -07:00
Brian
87002aba3b Test GL_VERTEX_PROGRAM_TWO_SIDE and frag shader gl_FrontFacing features 2007-12-18 16:24:19 -07:00
Brian
caec2a79e6 added twoside demo 2007-12-18 16:24:19 -07:00
Brian
256115bd5e simplify update two-side lighting test (follow-on to previous front/back-face changes) 2007-12-18 16:24:19 -07:00
Brian
441bab8f17 fix NEED_SECONDARY_COLOR for vert/frag progs 2007-12-18 16:24:19 -07:00
Brian
85f5e6d7b9 Fix a quadstrip front/back-face inconsistancy.
Only set front material colors to make it noticable if front/back-face
determination is incorrect anywhere.
2007-12-18 16:24:19 -07:00
Eric Anholt
9efa1029e5 Fix mismatched map/unmap of buffers in swrast read/drawpixels error paths. 2007-12-18 14:51:42 -08:00
Eric Anholt
4878f12189 [915] Free dri_bufmgr after mesa context data.
Fixes a crash when buffer objects are left around until context destroy.
2007-12-18 14:17:27 -08:00
Eric Anholt
a856da6324 [915] Make polygon stipple use pre-unpacked pixel data.
This fixes a crash when stippling using data from a PBO.
2007-12-18 14:14:44 -08:00
Eric Anholt
0dc2c68ffc [915] Fix clear color when clearing with triangles.
The diffuse color format is always ARGB32, regardless of the destination
surface format.
2007-12-18 10:42:30 -08:00
Keith Packard
dd1a868b74 [INTEL] Fix 965 to use new centralized mipmap pitch function 2007-12-18 10:22:16 -08:00
Keith Packard
a183efc132 [Intel] Centralize mipmap pitch computations.
mipmap pitches must account for the device alignment requirements, which
used to be fairly simple; just align to a 4-byte boundary. However, to allow
textures to be drawn to under TTM, they now need to be aligned to a 64-byte
boundary. Placing all of the alignment constraints in a single function
allows this new constraint to be applied uniformly.

There was some pitch constraining code in intel_miptree_create, but that was
modifying the pitch long after the miptree had been layed out, so it only
served to wreck the mipmap and cause rendering errors.
2007-12-18 10:22:04 -08:00
Julien Cristau
9fd22f0e3f Prepare changelog for upload. 2007-12-18 19:13:27 +01:00
Julien Cristau
942372dcdf debian/control fixups
* Bump Standards-Version to 3.7.3.
* Move libgl1-mesa-swx11-dbg, mesa-common-dev and libosmesa6-dev to section
  libdevel.
* libgl1-mesa-swx11 conflicts with libgl1-mesa-glx.  Move it and
  libgl1-mesa-swx11-dev to priority extra.
* Fix typo in mesa-common-dev's long description.
2007-12-18 13:57:06 +01:00
Julien Cristau
b7f901088b Update changelog. 2007-12-18 13:32:01 +01:00
Julien Cristau
c02990525c Merge branch 'mesa_7_0_branch' of git.freedesktop.org:/git/mesa/mesa into debian-unstable
Conflicts:

	progs/trivial/quad-clip-nearplane.c
2007-12-18 12:28:29 +01:00
Eric Anholt
6f1bfdc4bf [i915] Remove redundant set_draw_region code (like the comment says). 2007-12-17 17:01:07 -08:00
Eric Anholt
33487c15ba [intel] Improve INTEL_DEBUG=blit description of clearing. 2007-12-17 16:57:59 -08:00
Eric Anholt
c24300f937 [intel] Fix copy'n'pasteo in decoding of the blit clear packet. 2007-12-17 16:53:51 -08:00
Eric Anholt
9a8819e767 [965] Add decode of 3DSTATE_DRAWING_RECTANGLE. 2007-12-17 16:53:47 -08:00
Eric Anholt
146030aad2 [965] Allow draw or depth regions to be NULL.
With FBOs, we end up wanting to do 3D metaops against one or the other without
having to find the other one to fill in if we're not going to draw to it.
2007-12-17 16:50:09 -08:00
Eric Anholt
447facfcd6 [965] Simplify scissor handling by using DrawBuffer values. 2007-12-17 15:30:04 -08:00
Eric Anholt
8336f3ffb7 [965] fix bad conflict resolution in debug code. 2007-12-17 14:42:31 -08:00
Eric Anholt
2c9e515d86 [965] Replace our own depth constants in intel context with GL context ones. 2007-12-17 14:28:54 -08:00
Eric Anholt
98d4355240 [965] Fix software fallbacks with region-backed textures. 2007-12-17 13:47:52 -08:00
Eric Anholt
c1d6b874b3 [intel] Cleanup of */intel_blit.c to bring the two closer. 2007-12-17 13:19:33 -08:00
Eric Anholt
b3169a9c35 [965] Output the buffer type in INTEL_DEBUG=bat surface state decode. 2007-12-17 13:02:16 -08:00
Michel Dänzer
0107acded0 i915tex: Fix issues with glDrawBuffer(GL_NONE).
Don't dereference NULL renderbuffer pointer, and make sure the software
fallback sticks.

Fixes https://bugs.freedesktop.org/show_bug.cgi?id=13694 .
2007-12-17 12:32:26 +01:00
Michel Dänzer
1e04132306 i915: Fix issues with glDrawBuffer(GL_NONE).
Don't dereference NULL renderbuffer pointer, and make sure the software
fallback sticks.

Fixes https://bugs.freedesktop.org/show_bug.cgi?id=13694 .
2007-12-17 12:20:56 +01:00
Xiang, Haihao
d859a60dc3 i965: check NULL pointer 2007-12-17 14:42:42 +08:00
Eric Anholt
d913a15898 [i915] Fix missing symbol from 965 changes. 2007-12-16 13:00:23 -08:00
Eric Anholt
1daf5b3ad6 [965] Fully initialize the texture surface key data (padding around GLboolean) 2007-12-16 12:09:22 -08:00
Eric Anholt
cbed2e4add [965] Enable ARB_pixel_buffer_object, and disable broken imaging extension.
While I haven't tested the imaging extension, this matches what 915 does.
2007-12-16 11:46:10 -08:00
Eric Anholt
c0b4257aa9 [965] Move to using shared texture management code.
This removes the delayed texture upload optimization from 965, in exchange for
bringing us closer to PBO support.  It also disables SGIS_generate_mipmap,
which didn't seem to be working before anyway, according to the lodbias demo.
2007-12-16 11:26:19 -08:00
Eric Anholt
659baa3f25 [intel] Whitespace and comment changes to bring intel_mipmap_tree.c closer. 2007-12-15 13:09:58 -08:00
Eric Anholt
3fe9d5cbb7 [intel] Merge intel_buffer_objects to shared.
965 gains fixed TTM typing of the buffer object buffers and unused PBO
functions, and 915 gains buffer size == 0 fixes from 965.
2007-12-15 12:47:23 -08:00
Eric Anholt
f5b3cd4620 [965] Use shared intel_regions.c.
This adds (so far) unused PBO functions, and holding the lock while writing
to regions (which may be shared static screen regions).
2007-12-15 12:45:52 -08:00
Eric Anholt
5e3ef623ee [intel] Fix uninitialized data in screen-region buffer objects. 2007-12-14 14:56:01 -08:00
Eric Anholt
55539f6b2a [intel] Remove excessive validation debugging. 2007-12-14 14:52:15 -08:00
Eric Anholt
b8b49529b3 [intel] Initialize debug flag for dri_bufmgrs 2007-12-14 14:51:55 -08:00
Eric Anholt
c5456a6b24 [intel] Remove useless intel_region_idle.
The idling it was trying to ensure was covered by the
intel_miptree_image_map()->intel_region_map() that immediately followed it.
2007-12-14 14:40:03 -08:00
Eric Anholt
84a076079d [intel] warnings cleanup 2007-12-14 14:40:03 -08:00
Brian
2ac5e08d1d fix polygon cull regression 2007-12-14 14:36:23 -07:00
Brian
507d43f95b fix polygon cull regression 2007-12-14 14:35:18 -07:00
Brian
a5eb9e7b1b Build rain demo (Gonzo <andreas.wendleder@gmail.com>) 2007-12-14 14:35:18 -07:00
Eric Anholt
6f7d35318d [intel] Remove the relocation buffer lists and just cache one per buffer.
Each buffer object now has a relocation buffer pointer, which contains the
relocations for the buffer if there are any.  At the point where we have to
create a new type of relocation entry, we can change the code over to allowing
multiple relocation lists, but trying to anticipate what that'll look like
now just increases complexity.

This is a 30% performance improvement on 965.
2007-12-14 11:23:43 -08:00
Eric Anholt
38bad7677e [965] Replace the state cache suballocator with direct dri_bufmgr use.
The user-space suballocator that was used avoided relocation computations by
using the general and surface state base registers and allocating those types
of buffers out of pools built on top of single buffer objects.  It also
avoided calls into the buffer manager for these small state allocations, since
only one buffer object was being used.

However, the buffer allocation cost appears to be low, and with relocation
caching, computing relocations for buffers is essentially free.  Additionally,
implementing the suballocator required a don't-fence-subdata flag to disable
waiting on buffer maps so that writing new data didn't block on rendering using
old data, and careful handling when mapping to update old data (which we need
to do for unavoidable relocations with FBOs).  More importantly, when the
suballocator filled, it had no replacement algorithm and just threw out all
of the contents and forced them to be recomputed, which is a significant cost.

This is the first step, which just changes the buffer type, but doesn't yet
improve the hash table to not result in full recompute on overflow.  Because
the buffers are all allocated out of the general buffer allocator, we can
no longer use the general/surface state bases to avoid relocations, and they
are set to 0 instead.
2007-12-14 11:04:26 -08:00
Eric Anholt
0037ad4186 [intel] Remove broken mutex protection from dri_bufmgrs.
Now that the dri_bufmgr is stored in the context rather than the screen, all
access to one is single-threaded anyway.
2007-12-13 23:44:56 -08:00
Eric Anholt
dbfe05ca24 [intel] Enable INTEL_DEBUG=bufmgr output in TTM mode as well as classic. 2007-12-13 23:26:43 -08:00
Eric Anholt
9f7d6b7210 [intel] assert that buffers are not mapped at last unreference.
bufmgr_fake doesn't care about it, but with ttm we would end up with the
buffer remaining referenced until application exit.
2007-12-13 23:24:53 -08:00
Dan Nicholson
f116634933 Merge branch 'master' into autoconf2 2007-12-12 21:24:06 -08:00
Dan Nicholson
c79c93c0ac autoconf: Improve help text for demos and DRI drivers
Changed the text for the default demos to be "auto" instead of "yes"
since that didn't make much sense in this context. Added an example
value for the --with-dri-drivers option as suggested by Brian.
2007-12-12 18:13:04 -08:00
Dan Nicholson
f64d6fe0d3 autoconf: Update bug address and fix some autoconf warnings
Point bug reports to Bugzilla like bugs.html. Also, a warning from
autoconf w.r.t. AC_OUTPUT was cleaned up.
2007-12-12 17:57:45 -08:00
Dan Nicholson
a130718f44 autoconf: Consistently use xlib for the driver name
Brian suggested that there should be more consistency using xlib vs. x11
in the configure script. Changed the options and variables to suit.
2007-12-12 17:49:49 -08:00
Dan Nicholson
3e288627cb autoconf: Optional assembly usage with --disable-asm
Allow the user to disable use of assembly code through the --disable-asm
option. This is only relevant on the platforms where assembly is
normally enabled such as Linux and FreeBSD.
2007-12-12 17:39:21 -08:00
Eric Anholt
37406c2038 [intel] Assert against conflicting relocation emits in bufmgr_fake.c 2007-12-12 15:03:15 -08:00
Eric Anholt
5ad260246b [965] Bug #13600: Fix assertion failure with SRGB textures.
I broke this with cherry-pick resolving on
93c98a4669.
2007-12-12 12:09:07 -08:00
Eric Anholt
7c71ef3a3d [intel] Move bufmgr back to context instead of screen, fixing glthreads.
Putting the bufmgr in the screen is not thread-safe since the emit_reloc
changes.  It also led to a significant performance hit from pthread usage
for the attempted thread-safety (up to 12% of a cpu spent on refcounting
protection in single-threaded 965).  The motivation had been to allow
multi-context bufmgr sharing in classic mode, but it wasn't worth the cost.
2007-12-12 11:52:10 -08:00
Dan Nicholson
16a07fb556 autoconf: Report the compiler options in the summary
Report the compiler flags and macros that will be used in the build.
This just provides a quick way to see what configure has silently been
doing.
2007-12-12 09:12:15 -08:00
Dan Nicholson
23656c47c9 autoconf: Optional debug build with --enable-debug
Allow the user to set the compiler debug flags and macros through the
option --enable-debug. This addes -DDEBUG to the macros and -g to the
CFLAGS and CXXFLAGS if gcc and g++ are in use.
2007-12-12 09:02:31 -08:00
Dan Nicholson
41b00707e2 autoconf: More informative errors when pkg-config macros undefined
Added a check that PKG_PROG_PKG_CONFIG is defined before calling it so
the user can see a proper error. Without it, the generated configure
script will just pass on to the next statement and bomb with a strange
shell syntax error.
2007-12-12 08:48:30 -08:00
Keith Packard
00e10a1385 Block in kernel waiting for fence 2007-12-11 20:27:42 -08:00
Keith Packard
aeca22f97c Use previous buffer offsets to compute proposed relocations
This takes advantage of the DRM_BO_HINT_PRESUMED_OFFSET change and allows
the kernel to avoid mapping and re-writing buffers when relocations occur.
2007-12-11 20:27:42 -08:00
Dan Nicholson
aab38cfc43 autoconf: Replace configs/current symlink from configure
Rather than having the user run `make autoconf' and have the Makefile
setup the configs/current -> autoconf symlink, we can just do that in
configure. This allows the user to just run `make' to build.
2007-12-11 08:24:27 -08:00
Dan Nicholson
78175579c2 autoconf: Replace install-sh with symlink to minstall
Since install-sh is only used to satisfy an autoconf requirement, we
don't need the actual script. Instead, it's now just a symlink to
minstall, which provides a similar install wrapper script.
2007-12-11 08:24:27 -08:00
Dan Nicholson
79ad458ec6 autoconf: Clearer help text for the enable/disable options
Make it clearer what the defaults for the AC_ARG_ENABLE options are and
how to change them.
2007-12-11 08:24:27 -08:00
Dan Nicholson
a76e2452d2 autoconf: Since default DRI drivers to build with master
Sync the default DRI_DIRS with the configs in master. Added some of the
comments from there, too.
2007-12-11 08:24:27 -08:00
Dan Nicholson
70d0c83890 autoconf: glut doesn't need Xt
Don't link glut with libXt since it's not needed.
(see commit ce98779571)
2007-12-11 08:24:27 -08:00
Roland Scheidegger
46c405663b add simple test for two-sided stencil functionality 2007-12-11 15:38:34 +01:00
Roland Scheidegger
8dc188485b make sure state token values are fully initialized 2007-12-11 15:38:33 +01:00
Eric Anholt
ffee86f697 [965] Hook up DEBUG_BUFMGR output for bufmgr_fake. 2007-12-10 14:58:53 -08:00
Eric Anholt
e3a6e60040 [965] Convert the driver to dri_bufmgr interface and enable TTM.
This is currently believed to work but be a significant performance loss.
Performance recovery should be soon to follow.

The dri_bo_fake_disable_backing_store() call was added to allow backing store
disable like bufmgr_fake.c did, which is a significant performance win (though
it's missing the no-fence-subdata part).

This commit is a squash merge of the 965-ttm branch, which had some history
I wanted to avoid pulling due to noisiness and brokenness at many points
for git-bisecting.
2007-12-07 16:19:10 -08:00
Eric Anholt
3ecdae82d7 [965] Remove dead code in upload_wm_surfaces. 2007-12-07 15:23:16 -08:00
Eric Anholt
e34a183d87 [965] Move brw_surface_state stack allocation into the function using it. 2007-12-07 15:22:57 -08:00
Dan Nicholson
9cad8e312f autoconf: Output summary information from configure
Report some of the common settings back to the user after configure
has completed.
2007-12-07 14:34:27 -08:00
Dan Nicholson
af3d2f292d autoconf: Configurable DRI drivers
The user can request specific DRI drivers to build rather than the
default of "all that build on this platform". This allows the list of
drivers to be easily slimmed down.

This is controlled through the option --with-dri-drivers. For example:

    ./configure --with-driver=dri --with-dri-drivers="i965,nouveau"

Unfortunately, using this setting means the DRI drivers aren't filtered
by platform anymore and you might try to build something that doesn't
work.
2007-12-07 14:34:27 -08:00
Dan Nicholson
88586332d3 autoconf: Allow static library builds
Allow the user to specify that they want static libraries through the
--{enable,disable}-{static,shared} switches like libtool. The mesa build
only allows for one at a time, so static will be chosen if someone has
passed --enable-static or --disable-shared.

This also allows the mklib options to be set at build time. This allows
-static to be set for mklib, but any platform specific settings are
allowed by setting MKLIB_OPTIONS for configure.

Handling of the program libraries through the APP_LIB_DEPS variable is
pretty ugly, but it seems to work.
2007-12-07 14:34:27 -08:00
Dan Nicholson
8e4d147430 autoconf: Configurable demos directories
The user can request specific demos directories to build in. For
example:

    ./configure --with-demos="demos,xdemos"

The drawback is that we don't check for the necessary libararies in
that case, only that the directory in progs/ exists.
2007-12-07 14:34:27 -08:00
Dan Nicholson
6689f9ebcb autoconf: Configure the osmesa channel size for OSMesa16 and OSMesa32
Allow the user to specify channel bits of 16 or 32 to enable OSMesa16 or
OSMesa32 instead of the default OSMesa. This option is controlled
through the option --with-osmesa-bits=BITS and is only honored when the
driver is osmesa.

The osdemos are not enabled in the 16 or 32 bit case because the
Makefile is currently hardcoded to link to -lOSMesa.
2007-12-07 14:34:27 -08:00
Dan Nicholson
979ff5153d autoconf: Add support for osmesa-only builds
Added autoconf support for using OSMesa as the driver instead linking
it to libGL. This is enabled through --with-driver=osmesa.

To differentiate these cases, another option --enable-x11-osmesa is used
to enable or disable building OSMesa when the driver is x11.
2007-12-07 14:34:27 -08:00
Dan Nicholson
44d9914b29 autoconf: Add support for shared DRI build on linux and freebsd
Added autoconf bits to allow using DRI as the driver through the option
--with-dri-driver=DRIVER. The options are x11 (default) and dri. Three
DRI specific options for controlling the driver directory, direct
rendering and TLS are also added.

The DRI will probably not work for platforms besides linux and freebsd.
2007-12-07 14:34:27 -08:00
Dan Nicholson
72796238f8 autoconf: Include necessary files for the tarballs
Add targets to the top Makefile so that configure and the necessary
scripts are added to the tarball for distribution.

Variables are used for autoconf and aclocal in case anyone needs to use
a specific version or pass any extra flags.
2007-12-07 14:34:27 -08:00
Dan Nicholson
dca1b796b7 autoconf: Initial support for an autoconf configuration
This adds the initial support for using autoconf configuration. Support
is available for shared Xlib driver builds. Later this will be extended
to dri and osmesa-only builds and possibly targetting non-X backends.
Support for static library builds will also be added.

The configure script fills in the autoconf config. This is then used by
running `make autoconf' after ./configure.

Testing has been done on Linux/GNU. The configure script tries to
faithfully reproduce the current configs/linux* and configs/freebsd*.
Other platforms can be handled later by adding similar statements and
feature tests.

Pkg-config is used to search for packages when possible. This makes the
build much more flexible and robust to the user's configuration. This
requires that the pkg-config autoconf macros pkg.m4 are included in
aclocal.m4. This requires autoconf and aclocal from autoconf and
automake, respectively.
2007-12-07 14:34:27 -08:00
Dan Nicholson
d5cee90cf5 autoconf: Add support files required for autoconf use
The standard autoconf initialization macros require that config.guess,
config.sub and install-sh exist. The config.* scripts are from gnulib
HEAD, and the install-sh script is from automake HEAD.
2007-12-07 14:34:27 -08:00
Dan Nicholson
f1efacb92b Make osdemos linking like other programs
Most of the programs list their dependencies on the Mesa libraries in
their Makefiles. This works with the default configuration where
APP_LIB_DEPS only lists external libraries. This changes the
linux-osmesa configs and the osdemos Makefile to follow that convention.

Some cleanup of the Makefile is also added to refer to the GL libraries
through the existing variables rather than hardcoding their names.
2007-12-07 14:10:27 -08:00
Dan Nicholson
1837b8c214 configs: Fix linking with static libGL and --as-needed
Linking of the programs breaks when using a static libGL and the GNU ld
option --as-needed. This is because libXext is needed for the XShm
functions.
(cherry picked from commit 6aaf9bdd41)
2007-12-07 11:51:18 -08:00
Dan Nicholson
6aaf9bdd41 configs: Fix linking with static libGL and --as-needed
Linking of the programs breaks when using a static libGL and the GNU ld
option --as-needed. This is because libXext is needed for the XShm
functions.
2007-12-07 11:49:40 -08:00
Xiang, Haihao
e2ca788ae7 i915: fix the error in the previos commit. 2007-12-07 17:33:18 +08:00
Xiang, Haihao
c1a3ac0e45 i915: Check the program size when uploading a program. fix bug 13494 2007-12-07 17:26:38 +08:00
Michel Dänzer
62f6e55013 Minor followup fixes for the previous commit. 2007-12-06 10:19:22 +01:00
George Nassas
17afc800c9 Always call dlopen in DriverOpen.
This increases the reference count for the driver binary, preventing it from
getting unloaded prematurely in driDestroyDisplay. See
https://bugs.freedesktop.org/show_bug.cgi?id=13541 .
2007-12-06 10:11:05 +01:00
Eric Anholt
125bd4cae5 Revert "[965] Add missing flagging of new stage programs for updating stage state."
I had forgotten part of brw_state_cache.c that made this fix not relevant for
master (last_addr comparison and flagging based on cache id).

This reverts commit a4642f3d18.
2007-12-05 16:57:27 -08:00
Eric Anholt
a4642f3d18 [965] Add missing flagging of new stage programs for updating stage state.
Otherwise, choosing a new program wouldn't necessarily update the state, and
and an old program could be executed, leading to various sorts of pretty
pictures or hangs.
2007-12-05 16:44:49 -08:00
Brian
259eacfa94 Fix endianness bug in _mesa_texstore_argb8888()
On big-endian, storing in _mesa_texformat_argb8888 format produced wrong res
Also, clean-up nearby code to match.

picked from gallium-0.1 branch
2007-12-05 15:06:23 -07:00
Xiang, Haihao
2407e48f28 Don't Swap buffer if a DRIDrawable is entirely obscured
by another window.
2007-12-05 10:31:35 +08:00
Brian
5b91ee27c0 Undo changes made to the toyball shaders in commit d19d0596da
This demo produces the expected results again.
2007-12-04 18:44:40 -07:00
Brian
03d2bc1774 fix gl_FrontFacing 2007-12-04 14:07:15 -07:00
Brian
385bddbde0 fix span->facing computation and gl_FrontFacing initialization 2007-12-04 14:07:15 -07:00
Brian
c135426267 Fix gl_FrontFacing compilation problem 2007-12-04 14:07:15 -07:00
Brian
02afd45d3b fix span->facing computation and gl_FrontFacing initialization 2007-12-04 14:07:08 -07:00
Brian
2ee7035886 Fix gl_FrontFacing compilation problem 2007-12-04 14:07:08 -07:00
Brian
df198d24bc added culling/wireframe options 2007-12-04 14:07:08 -07:00
Michel Dänzer
4be0c98120 Use -Bsymbolic for linking all shared objects.
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=10132 .

Also remove comment about SONAME, as SONAME only applies to shared libraries.
(cherry picked from commit fc7ddea853)
2007-12-04 18:33:07 +01:00
Michel Dänzer
fc7ddea853 Use -Bsymbolic for linking all shared objects.
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=10132 .

Also remove comment about SONAME, as SONAME only applies to shared libraries.
2007-12-04 18:31:29 +01:00
Eric Anholt
3a90679400 [965] Change constant buffer from state structs to plain batch emission.
Reduces diff to branch which has a relocation in this state emit.
2007-12-03 14:46:58 -08:00
Brian
454043c4ae fix DD_TRI_LIGHT_TWOSIDE bug (#13368) 2007-12-03 14:14:40 -07:00
Brian
e760aebd5a fix two-side lighting bug/crash 2007-12-03 14:13:08 -07:00
Brian
1f6e7d9c29 fix DD_TRI_LIGHT_TWOSIDE bug (#13368) 2007-12-03 14:12:34 -07:00
Dan Nicholson
c6d421af05 Fix the library name in glw.pc
Fix a copy and paste error s/GLU/GLw/ in glw.pc.
(cherry picked from commit 2dc85e8078)
2007-12-03 12:08:03 -08:00
Dan Nicholson
2dc85e8078 Fix the library name in glw.pc
Fix a copy and paste error s/GLU/GLw/ in glw.pc.
2007-12-03 11:57:14 -08:00
Brian
ce98779571 glut doesn't need -lXt 2007-12-03 12:00:28 -07:00
Brian
b1416c2137 added missing quote char 2007-12-03 12:00:28 -07:00
Brian
952df5e493 fix two-sided stencil 2007-12-03 12:00:21 -07:00
Brian
45acb8b058 added missing quote char 2007-12-03 12:00:21 -07:00
Michel Dänzer
e8997c0183 i915tex: Fix up state changes for i8xx.
(cherry picked from commit 2af613e0b8)
2007-12-03 09:38:13 +01:00
Michel Dänzer
2af613e0b8 i915: Fix up state changes for i8xx. 2007-12-03 09:28:49 +01:00
Eric Anholt
556cf9abff [intel] Move batch bo_unmap from TTM code to shared, and add more asserts. 2007-11-30 18:17:12 -08:00
Eric Anholt
d388cad746 [intel] Add failure path printfs to relocation code and some comments. 2007-11-30 18:12:41 -08:00
Eric Anholt
700468b8bc [intel] Simplify TTM relocation code by passing around bufmgr struct. 2007-11-30 18:08:17 -08:00
Eric Anholt
ddd92ee9a1 [intel] Fix the type and naming of the flags/mask args to TTM functions.
The uint64_t flags (as defined by drm.h) were being used as unsigned ints in
many places.
2007-11-30 18:06:32 -08:00
Eric Anholt
6f8dee03aa [intel] intel_bufmgr_ttm style sanity 2007-11-30 17:28:48 -08:00
Brian
169e62f563 fix-build: remove ctx->_Facing assignment 2007-11-30 15:52:41 -07:00
Brian
b0b882b666 fix-build: remove ctx->_Facing assignment 2007-11-30 15:52:27 -07:00
Brian
fcd7c37fd3 fix broken two-sided stencil 2007-11-30 13:01:57 -07:00
Brian
1b43babfb1 fix broken two-sided stencil 2007-11-30 13:01:42 -07:00
Brian
43e902f774 better front-plane clip test 2007-11-30 09:09:12 -07:00
Brian
44c8dac0af better front-plane clip test 2007-11-30 09:08:58 -07:00
joukj
a11b6f025c Updates of some OpenVMS makefiles. 2007-11-30 13:16:05 +01:00
joukj
86f3135fbd Merge branch 'master' of git+ssh://joukj@git.freedesktop.org/git/mesa/mesa 2007-11-30 11:12:41 +01:00
Xiang, Haihao
b0a800e249 i965: use uncompressed instruction to ensure only
Pixel Mask Copy is modified as the pixel shader thread
turns off pixels based on kill instructions.
2007-11-30 12:36:07 +08:00
Xiang, Haihao
d2540e6d4b i965: if source depth to render target is set,
it should be handled in fb_write.
2007-11-30 12:04:04 +08:00
Xiang, Haihao
6bc1d38567 i965: use uncompressed instruction to ensure only
Pixel Mask Copy is modified as the pixel shader thread
turns off pixels based on kill instructions.
2007-11-30 11:50:08 +08:00
Eric Anholt
1df7a82688 [i915] Make INTEL_DEBUG=bufmgr actually do things for bufmgr_fake. 2007-11-29 13:00:34 -08:00
Brian
73d5f232ad New ctx->Driver.Map/UnmapTexture() functions for accessing textures from t_vb_program.c 2007-11-29 08:18:11 -07:00
Brian
f7209541e4 cleanups, comments
Conflicts:

	src/mesa/tnl/t_vb_program.c
2007-11-29 08:18:11 -07:00
Brian
397a32dca7 Move _mesa_load_tracked_matrices() from TNL module to prog_statevars.c 2007-11-29 08:18:11 -07:00
Brian
61fbc81657 New ctx->Driver.Map/UnmapTexture() functions for accessing textures from t_vb_program.c 2007-11-29 08:13:16 -07:00
Brian
a2ab143b75 cleanups, comments 2007-11-29 08:13:16 -07:00
Brian
a7e1b4456a Move _mesa_load_tracked_matrices() from TNL module to prog_statevars.c 2007-11-29 08:13:16 -07:00
Roland Scheidegger
e0719d7122 make sure state token values are fully initialized 2007-11-29 03:08:48 +01:00
Michel Dänzer
3f18c0a9f2 r200: Fix texture format regression on big endian systems.
See https://bugs.freedesktop.org/show_bug.cgi?id=13324 .

Also use tx_table_be for VALID_FORMAT, in case r200SetTexImages ever gets
called for MESA_FORMAT_RGB888.
(cherry picked from commit dc88a96631)
2007-11-28 10:25:01 +01:00
Michel Dänzer
dc88a96631 r200: Fix texture format regression on big endian systems.
See https://bugs.freedesktop.org/show_bug.cgi?id=13324 .

Also use tx_table_be for VALID_FORMAT, in case r200SetTexImages ever gets
called for MESA_FORMAT_RGB888.
2007-11-28 10:20:04 +01:00
Xiang, Haihao
d8fcb504a4 i965: update RefCount when using Vertex/Fragment program.
It makes quake4-demo works well on 965.
2007-11-28 09:46:43 +08:00
WuNian
16099c15f5 remove drawable from hash table when window is deleted (see bug 13091) 2007-11-27 18:22:42 -07:00
Delle
b14be61938 use DEFAULT_SOFTWARE_DEPTH_BITS 2007-11-27 18:18:48 -07:00
Delle
5c64e6885d use DEFAULT_SOFTWARE_DEPTH_BITS 2007-11-27 18:18:25 -07:00
Brian
440d620308 minor additions to avoid FAQs 2007-11-27 10:32:39 -07:00
Brian
8dd9df0f3e document GLSL float f/F suffix bug 2007-11-27 10:32:39 -07:00
Brian
6b9534eaf5 set fp->UsesKill when emitting OPCODE_KIL 2007-11-27 10:32:39 -07:00
Brian
c91d374ad7 improve 24-bit Z to 32-bit Z conversion 2007-11-27 10:32:39 -07:00
Brian
27028fcf74 minor additions to avoid FAQs 2007-11-27 10:31:55 -07:00
Brian
5ef3a2c06d document GLSL float f/F suffix bug 2007-11-27 10:31:55 -07:00
Brian
4fe3bf2d77 set fp->UsesKill when emitting OPCODE_KIL 2007-11-27 10:31:55 -07:00
Brian
92e4090b4c add a few more logicop modes, simplify code 2007-11-27 10:31:55 -07:00
Brian
74cd0b459f improve 24-bit Z to 32-bit Z conversion 2007-11-27 10:31:55 -07:00
Xiang, Haihao
46e03d584a i965: The jump instruction count is added
to IP pre-increment, and should point to
the first instruction after the do instruction
of the do-while block of code
2007-11-27 09:45:32 +08:00
Keith Whitwell
a8fee3a498 i915: Catch cases where not all state is emitted for a new batchbuffer.
This could lead to incorrect rendering or even lockups.
2007-11-26 17:49:29 +01:00
Michel Dänzer
63e6bfe8db i915: Some additional blit fixes and assertions. 2007-11-26 17:35:35 +01:00
Keith Whitwell
1cab4160bc i915tex: Fix some minor batchbuffer errors. 2007-11-26 17:12:15 +01:00
Keith Whitwell
718d2dfbbd i915tex: Catch cases where not all state is emitted for a new batchbuffer.
This could lead to incorrect rendering or even lockups.
2007-11-26 17:10:26 +01:00
Michel Dänzer
0967e1270d i915tex: Some additional blit fixes and assertions. 2007-11-26 16:59:41 +01:00
Michel Dänzer
a08c02f1a8 i915tex: Actually wait for previous commands to complete for glFinish(). 2007-11-26 16:59:00 +01:00
Michel Dänzer
42108629e8 libGL: Make sure a valid value is returned for GLX_BIND_TO_MIPMAP_TEXTURE_EXT.
If the server didn't send a value, assume it's not supported.

A more generic solution might be better for this kind of problem, but an
attempt for this failed (see https://bugs.freedesktop.org/show_bug.cgi?id=9264)
and this allows compiz to work with drivers that support
GL_EXT_framebuffer_object.
2007-11-25 14:20:36 +01:00
Michel Dänzer
7dd5ced962 intel: Fix relative symlinks. 2007-11-25 14:17:02 +01:00
Brian
be1fa5b3d7 better test of point attenuation 2007-11-23 16:19:25 -07:00
Brian
88b067cb04 #define GL_GLEXT_PROTOTYPES to silence warning 2007-11-23 14:35:46 -07:00
Brian
999b55663a Consolidate texture fetch code and use partial derivatives when possible. 2007-11-23 12:01:57 -07:00
Brian
bdfd9afead Consolidate texture fetch code and use partial derivatives when possible. 2007-11-23 12:01:39 -07:00
Brian
1c91a590d6 fix a few GLSL bugs 2007-11-23 10:28:33 -07:00
Brian
65bd7968bf Fix parsing of gl_FrontLightModelProduct.sceneColor, don't segfault on variable
array indexes.
2007-11-23 10:26:02 -07:00
Brian
ba16243884 Fix parsing of gl_FrontLightModelProduct.sceneColor, don't segfault on variable array indexes. 2007-11-23 10:25:48 -07:00
Brian
c14d969a69 need to check border width in sample_linear_2d() - fixes failed assertion in texwrap.c test 2007-11-23 09:14:39 -07:00
Brian
6ccd23b87b need to check border width in sample_linear_2d() - fixes failed assertion in texwrap.c test 2007-11-23 09:14:27 -07:00
Brian
823409b7d0 Bump version numbers to 7.0.3 for next release 2007-11-22 09:36:35 -07:00
Brian
c85d31f4a0 Recompute ctx->Point._Size if GL_POINT_SIZE_MIN/MAX changes.
Note that all the point size clamping stuff has been redone in Mesa/master.
2007-11-22 09:36:35 -07:00
Brian
0fd679a190 Consolidate point size computation, clamping in get_size().
Also, apply user-defined clamp limits to point size even when not using
attentuation or program-computed size.
2007-11-22 09:34:38 -07:00
Brian
ccb1c9df00 Print point/line size range limits 2007-11-22 09:34:38 -07:00
Roland Scheidegger
24af5c44da fix z buffer read/write issue with rv100-like chips and old ddx 2007-11-22 02:55:25 +01:00
Roland Scheidegger
3d51c79001 fix z buffer read/write issue with rv100-like chips and old ddx 2007-11-22 02:49:15 +01:00
Eric Anholt
93c98a4669 [965] Replace 965 texture format code with common code.
The only functional difference should be that 965 now gets the optimization
where textures default to 16bpp when the screen is 16bpp.
2007-11-20 11:30:12 -08:00
Eric Anholt
e962997429 [965] Remove dead exec vfmt code which was replaced by generic vbo code. 2007-11-20 11:30:10 -08:00
Brian
827e72de75 clamp lambda to Min/MaxLod 2007-11-20 08:24:46 -07:00
Brian
75efacf8eb Initial 7.0.3 relnotes 2007-11-20 08:16:25 -07:00
Brian
825e810247 bring over Fortran fixes from master 2007-11-20 08:15:19 -07:00
Brian
e20723cfc1 Obsolete 2007-11-20 08:13:14 -07:00
Brian
9f39a67c1d Rename glut_fbc.c -> glut_fcb.c (cb=callback) 2007-11-20 08:13:03 -07:00
Eric Anholt
3821d15e06 [965] Add INTEL_DEBUG=fall debugging output. 2007-11-19 15:29:31 -08:00
Eric Anholt
27674c4135 [965] Convert DBG macro to use FILE_DEBUG_FLAG like i915. 2007-11-19 15:28:26 -08:00
Brian
2044f3f791 clamp lambda to Min/MaxLod 2007-11-19 13:05:10 -07:00
Brian
87373e3072 fix some texture format assertions, etc 2007-11-19 10:37:54 -07:00
Brian
30d4e8c422 fix some texture format assertions, etc 2007-11-19 10:37:41 -07:00
Brian
22a374fc3f fix out-of-bounds array index (ix=-1) 2007-11-19 09:55:47 -07:00
Brian
92d552f6a2 fix out-of-bounds array index (ix=-1) 2007-11-19 09:54:41 -07:00
Eric Anholt
f00a64999c [intel] Add 965 support to shared intel_blit.c
This requires that regions grow a marker of whether they are tiled or not,
because fence (surface) registers are ignored by the 965 2D engine.
2007-11-16 17:29:30 -08:00
Eric Anholt
9b461d4d02 [i915] Pass static region names in so debugging says more than "static region". 2007-11-16 16:18:30 -08:00
Eric Anholt
5ef6803b7a [intel] Move additional code to be shared from intel_context.h to intel/. 2007-11-16 16:05:11 -08:00
Eric Anholt
5cdf3972de [intel] Move intel_tex.h into place, forgotten in the previous commit. 2007-11-16 15:51:34 -08:00
Eric Anholt
8775bf475b [965] Add batchbuffer decode for several more packets. 2007-11-16 15:44:11 -08:00
Eric Anholt
a66413874d [intel] Fix typos in intel_chipset.h macros. 2007-11-16 15:36:18 -08:00
Eric Anholt
3bd07ba0d4 [i915] Add INTEL_DEBUG=sync debug flag to wait for fences after making them. 2007-11-16 15:36:18 -08:00
Eric Anholt
f7e0513d70 [i915] Reenable batchbuffer debug under INTEL_DEBUG=bat. 2007-11-16 15:36:18 -08:00
Eric Anholt
152aa6350d [intel] Add some doxygen notes on what the bufmgr_fake block members mean. 2007-11-16 15:36:18 -08:00
Eric Anholt
c29e9e534e [intel] Add a simple relocation cache to the fake buffer manager.
This is required for 965 performance, as it avoids a lot of repeated data
uploads of the state caches due to surface offsets in them.
2007-11-16 15:36:18 -08:00
Eric Anholt
4bc625e378 [intel] Assert against 0-sized buffers in dri_bufmgr_fake.c.
They shouldn't be created, and this often helps catch stupid issues.
2007-11-16 15:36:18 -08:00
Eric Anholt
00eb5635c6 [intel] Add support for multiple levels of relocation in bufmgr_fake.
This is required for 965 support, which has relocations in other places than
just the batchbuffer.
2007-11-16 15:36:18 -08:00
Eric Anholt
df3c530bed [i915] Push locking in intelClearWithTris down inside meta_draw_poly.
The lock coverage and checks for cliprects were unneeded since the batchbuffer
will have INTEL_BATCH_CLIPRECTS anyway.  It appeared to be a leftover from
intelClearWithBlit.

This makes the locking requirements of i915 meta_draw_quad match i965
meta_draw_quad.
2007-11-16 15:36:18 -08:00
Brian
8211b20026 added z/s keys to reset/step rotation 2007-11-16 15:19:05 -07:00
Brian
fb69fe58a0 Only emit texcoords for enabled units. Enable/disable units with 0..7 keys.
Also, asst. clean-ups.
2007-11-16 15:19:05 -07:00
Brian
5adfcbbc4f added gl_dispatch_stub_772() 2007-11-16 10:03:57 -07:00
Roland Scheidegger
69969b3819 fix position invariant vertex programs for sw-tnl
do the same math as for fixed function pipe, including
user clip planes.
(mostly resurrected from the dead t_vb_arbprogram.c code)
2007-11-15 02:06:15 +01:00
Roland Scheidegger
edfee04fcb fix bogus assumption if ddx has set up surface reg for z buffer
this is wrong since even if ddx has not set up a surface reg to cover the z
buffer we should pretend it has on those rv100 chips since they presumably do
not do z buffer tiling if not using hyperz, so we can use linear addressing
just the same. Doesn't seem to fix #13080, but it's wrong anyway and the bug
almost certainly broke newer non-tcl chips.
2007-11-15 01:16:27 +01:00
Roland Scheidegger
96ba38a450 fix bogus assumption if ddx has set up surface reg for z buffer
this is wrong since even if ddx has not set up a surface reg to cover the z
buffer we should pretend it has on those rv100 chips since they presumably do
not do z buffer tiling if not using hyperz, so we can use linear addressing
just the same. Doesn't seem to fix #13080, but it's wrong anyway and the bug
almost certainly broke newer non-tcl chips.
2007-11-15 01:13:16 +01:00
Roland Scheidegger
dab7c810e9 fix position invariant vertex programs for sw-tnl
do the same math as for fixed function pipe, including
user clip planes.
(mostly resurrected from the dead t_vb_arbprogram.c code)
2007-11-15 00:52:38 +01:00
Brice Goglin
ae0bf74db9 Prepare changelog for upload 2007-11-13 21:44:00 +01:00
Julien Cristau
1bf7ce97c0 * Add build-dep on libxext-dev. Thanks, Timo Aaltonen! 2007-11-13 21:40:49 +01:00
Julien Cristau
4971a009e0 * Workaround gcc ICE on hppa: build libOSMesa with -O0 (see bug#451047). 2007-11-13 20:59:08 +01:00
Julien Cristau
e1613ab80d Don't set -fno-strict-aliasing in configs/debian-default.
Upstream uses that since 7.0.2.
2007-11-13 20:57:58 +01:00
Brian
28c9930888 add pointer to Gallium3D info 2007-11-13 09:51:14 -07:00
Brian
e3a35a123e DRI memory manager info (fixes dangling link) 2007-11-13 09:50:42 -07:00
Brian
412168f2e8 remove dependency on libGLU 2007-11-12 08:21:21 -07:00
Brian
f6ab1347d6 remove dependency on libGLU 2007-11-12 08:02:09 -07:00
Brian
fc0fa0d636 add glw.pc.in to tarball list, remove from DEPEND_FILES 2007-11-12 07:52:20 -07:00
Brian
b87ce5be82 add glw.pc.in to tarball list, remove from DEPEND_FILES 2007-11-12 07:51:55 -07:00
Xiang, Haihao
9bf5da906f i965: correct the opcode of XY_SETUP_BLT_CMD. fix bug #12730 2007-11-12 10:20:26 +08:00
Brice Goglin
caf283329b Prepare changelog for upload 2007-11-11 11:55:05 +01:00
Brice Goglin
5cedd4a43e Remove DESTDIR from INSTALL_DIR in configs/debian-default
... and update 03_optional-progs-and-install.patch accordingly.
2007-11-11 11:49:16 +01:00
Brice Goglin
0595d32d8a Refresh 03_optional-progs-and-install.patch
The default Makefile requires libGLU to be built
while linking progs/xdemos. However, we don't build
libGLU and progs/xdemos at the same time, and
these progs don't actually need libGLU.
2007-11-11 11:48:32 +01:00
Brice Goglin
e339b4e8da New upstream release 2007-11-11 00:34:46 +01:00
Brice Goglin
11c827c588 Merge tag 'mesa_7_0_2' into debian-unstable
Conflicts:

	.gitignore
	progs/demos/.gitignore
	progs/directfb/Makefile
	progs/egl/Makefile
	progs/fbdev/Makefile
	progs/fp/Makefile
	progs/miniglx/Makefile
	progs/samples/.gitignore
	progs/slang/Makefile
	progs/tests/.gitignore
	progs/tests/Makefile
	progs/tools/trace/Makefile
	progs/trivial/Makefile
	progs/vp/Makefile
	progs/xdemos/.gitignore
	src/egl/drivers/demo/Makefile
	src/egl/drivers/dri/Makefile
	src/egl/main/Makefile
	src/glu/mesa/Makefile
	src/glut/directfb/Makefile
	src/glx/mini/Makefile
2007-11-11 00:24:52 +01:00
Brian
8a40b670c3 added md5 checksums 2007-11-10 09:53:00 -07:00
Brian
d9fa5cbfc9 final changes for 7.0.2 relesae 2007-11-10 09:41:52 -07:00
Brian
578641941f test that point/line/quad rendering hits the right pixels 2007-11-09 17:02:51 -07:00
Eric Anholt
9724dc1ac7 [i915] Remove old frontbuffer rotation hack.
This was replaced in previous releases of xserver/dri/libGL by reporting the
damage to the frontbuffer so that the server and driver could handle it
appropriately.
2007-11-09 15:05:56 -08:00
Eric Anholt
7d4b89a2b3 [intel] By default, output batchbuffer decode to stderr like other debug info. 2007-11-09 14:27:33 -08:00
Eric Anholt
38c616260a [intel] Initialize a depth buffer if the visual has depth 24 but no stencil. 2007-11-09 14:27:33 -08:00
Eric Anholt
77a5bcaff4 [intel] Move over files that will be shared with 965-fbo work. 2007-11-09 14:27:33 -08:00
Brian
8b36166d29 check for texture and renderbuffer in check_end_texture_render() 2007-11-09 08:56:05 -07:00
Benno Schulenberg
4e91ad8c0e code clean-ups, reformatting 2007-11-09 08:56:05 -07:00
Benno Schulenberg
d540e8e9df remove commented-out code 2007-11-09 08:56:05 -07:00
Benno Schulenberg
1c21564292 code clean-ups, reformatting 2007-11-09 08:53:41 -07:00
Benno Schulenberg
6cc96bf156 remove commented-out code 2007-11-09 08:53:15 -07:00
Roland Scheidegger
7b3ab451a8 recreate from changed gl_API.xml 2007-11-09 14:49:01 +01:00
Roland Scheidegger
86a4810b09 alias ProgramEnvParameter4xyARB and ProgramParameter4xyNV (bug #12935)
these should be the same functions (as per spec).
2007-11-09 14:46:59 +01:00
Ian Romanick
d34caddb4e Prevent loss of vectorequiv information when an alias follows the function being aliased. 2007-11-08 17:45:48 -08:00
Brian
29afd4bbc4 fix blender/unichrome crash, bug 13142 2007-11-08 07:36:30 -07:00
Benno Schulenberg
4e3db063ec fix Unichrome/Blender crash, bug 13142 2007-11-08 07:36:30 -07:00
Brian
6560744c38 added -fno-strict-aliasing and -fPIC flags 2007-11-08 07:36:30 -07:00
Brian
572ad87881 change filenames for rc2 2007-11-08 07:36:30 -07:00
Benno Schulenberg
1dfec88e72 fix Unichrome/Blender crash, bug 13142 2007-11-08 07:34:55 -07:00
Kristian Høgsberg
286ce27193 Fix compilation for !GLX_DIRECT_RENDERING. 2007-11-06 14:34:15 -05:00
Kristian Høgsberg
001de0ac4e Remove a couple of "deprecated" fields from __GLXcontextRec.
The __GLXcontextRec struct is internal to the libGL implementation.  No point
in "deprecating", just get rid of it.
2007-11-06 13:32:33 -05:00
Kristian Høgsberg
866d271aa8 Don't return 0 in a void function. 2007-11-06 13:32:33 -05:00
Michel Dänzer
2ab75d6cfa r200: Fix SetTexOffset format for 16 bit pixmaps/textures.
Use symbolic array indices to clarify.
2007-11-06 18:39:50 +01:00
Chris Rankin
041a8eb5ec r200: Implement SetTexOffset hook.
Implementation guidance by Michel Dänzer, final testing by Timo Aaltonen.
2007-11-06 18:32:33 +01:00
Michel Dänzer
badc061a65 r200: Re-expose SetTexOffset functionality.
This seems to have been mismerged with the DRI interface changes.
2007-11-06 18:24:46 +01:00
Michel Dänzer
5a322bc1b4 r200: Fix SetTexOffset format for 16 bit pixmaps/textures.
Use symbolic array indices to clarify.
2007-11-06 18:22:42 +01:00
Kristian Høgsberg
559ae0ab1b Pass the visual id to XF86DRICreateContextWithConfig(), not fbconfig id. 2007-11-06 11:23:27 -05:00
Oliver McFadden
cd59600c7b Renamed the R300_VAP_UNKNOWN_221C to R300_VAP_CLIP_CNTL. 2007-11-05 22:17:34 +00:00
Dave Airlie
35d28ce12e r300: initial user clipping for TCL paths
I've no idea if this code might break something or how it should interact
with vertex shaders, it makes the clip demo work for me
2007-11-05 22:17:34 +00:00
Kristian Høgsberg
8e66c3d755 Lookup visual in visual list, not fbconfig list.
Also, handle visual not found error case by throwing X error.
2007-11-05 17:02:29 -05:00
Kristian Høgsberg
e2c2df5c23 Filter both visuals and fbconfigs against driver supported configs. 2007-11-05 17:02:29 -05:00
Brian
c9ce3e8fd2 Check for NULL VB->EdgeFlag array.
There might be a bug elsewhere, but this is a simple work-around for now.
See bug 12614
2007-11-05 14:44:01 -07:00
Brian
a49e0726e3 fix mmx code (bug 12614) 2007-11-05 14:44:01 -07:00
Brian
c1c13bdcfa Check for NULL VB->EdgeFlag array.
There might be a bug elsewhere, but this is a simple work-around for now.
See bug 12614
2007-11-05 14:43:03 -07:00
Brian
403edd34dd fix mmx code (bug 12614) 2007-11-05 14:38:12 -07:00
Brian
f279e48416 fix mmx code (bug 12614) 2007-11-05 14:38:05 -07:00
Michel Dänzer
db2ec4502e Fix GLX build of xserver master branch.
The internal CreatePixmap API has been extended.
2007-11-05 10:03:26 +01:00
Brian
417cb2c182 Fix mem leak in SSE code generation path (Michel Dänzer) and don't crash if _mesa_exec_malloc() returns NULL.
(picked from mesa_7_0_branch)
2007-11-03 08:50:55 -06:00
Brian
d9276cbb29 fix typo 2007-11-03 08:47:53 -06:00
Brian
bf854d8d27 SSE codegen fixes 2007-11-03 08:45:42 -06:00
Brian
f334121679 Fix mem leak in SSE code generation path (Michel Dänzer) and don't crash if _mesa_exec_malloc() returns NULL. 2007-11-03 08:44:48 -06:00
Dave Airlie
db95143949 r300: move more vap registers out of non tcl paths 2007-11-03 19:35:39 +11:00
Dave Airlie
bf4feb7393 r300: fix misnumber register 2007-11-03 19:20:22 +11:00
Dave Airlie
59efbb412f r300: fix texwrap border color 2007-11-03 18:59:23 +11:00
Dan Nicholson
b88e2be609 Add -fno-strict-aliasing workaround for all GCC targets
Use a GCC option to work around aliasing bugs. See commit 013dbcd for
more details.
(cherry picked from commit 01b18abf93)

Conflicts:

    configs/freebsd
2007-11-01 11:07:02 -07:00
Dan Nicholson
08229c8bb8 configs: Set -fexceptions for GLUT on linux-dri like other targets
Quite a while ago, the GCC option -fexceptions was added for building
libglut. See here:

  http://article.gmane.org/gmane.comp.video.mesa3d.devel/9499

This was missing in the linux-dri targets.
(cherry picked from commit dbcd20f1c2)
2007-11-01 11:02:05 -07:00
Dan Nicholson
c984017f71 configs: Always use -fPIC for shared libraries, never for static
Mesa currently disables -fPIC for DRI on x86, but most Linux distros are
re-enabling -fPIC for all DRI arches. Let's just do that here since
that's normally what's wanted for shared libraries. Some justification:

http://bugs.gentoo.org/show_bug.cgi?id=110840#c9

On the other hand, position-independent code is only necessary when
building shared libraries, so disable it for the static cases.
(cherry picked from commit c3b5adaa9a)
2007-11-01 11:01:10 -07:00
Dan Nicholson
00e7dd8a13 Add -fno-strict-aliasing workaround for Linux GCC targets
Most Linux distros work around aliasing problems in Mesa by compiling
with the GCC option -fno-strict-aliasing. Two examples:

  https://bugs.freedesktop.org/show_bug.cgi?id=6046
  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=394311

This makes -fno-strict-aliasing the default with a comment that
developers should consider commenting it out. There is a already a note
about these bugs in docs/helpwanted.html.
(cherry picked from commit 013dbcd611)
2007-11-01 10:56:01 -07:00
Brian
351a83163a remove dead code in _mesa_new_program() 2007-11-01 09:00:26 -06:00
Dan Nicholson
01b18abf93 Add -fno-strict-aliasing workaround for all GCC targets
Use a GCC option to work around aliasing bugs. See commit 013dbcd for
more details.
2007-11-01 06:03:31 -07:00
Dave Airlie
ee793281b2 nouveau: ppc, swap fragment programs on big endian systems.
Thanks to the PS3 RSX project for figuring this out.
2007-11-01 19:19:45 +11:00
Dave Airlie
1b880c7e3c i915: make i915 use the cached mappings for batch/buffer objects.
This should restore gears speed on 9xx hardware
2007-11-01 10:41:39 +11:00
Dan Nicholson
dbcd20f1c2 configs: Set -fexceptions for GLUT on linux-dri like other targets
Quite a while ago, the GCC option -fexceptions was added for building
libglut. See here:

  http://article.gmane.org/gmane.comp.video.mesa3d.devel/9499

This was missing in the linux-dri targets.
2007-10-31 16:18:29 -07:00
Dan Nicholson
d7eb97bbc3 confdiff.sh: A testing script for comparing configs settings
This is a simple script that compares the make variables set by two
different configs stubs. The purpose is to highlight differences so
that any unnecessary duplication or divergence can be removed.

For example, on Linux x86:
    $ ./bin/confdiff.sh linux linux-x86

The output isn't very clean, but it should highlight that the only
difference is that the x86 target uses x86 assembler sources.

The script uses bash, mktemp, make, sed and diff. It is probably not
very portable and might only work on GNU make.
2007-10-31 14:59:13 -07:00
Dan Nicholson
c3b5adaa9a configs: Always use -fPIC for shared libraries, never for static
Mesa currently disables -fPIC for DRI on x86, but most Linux distros are
re-enabling -fPIC for all DRI arches. Let's just do that here since
that's normally what's wanted for shared libraries. Some justification:

http://bugs.gentoo.org/show_bug.cgi?id=110840#c9

On the other hand, position-independent code is only necessary when
building shared libraries, so disable it for the static cases.
2007-10-31 14:19:20 -07:00
Dan Nicholson
013dbcd611 Add -fno-strict-aliasing workaround for Linux GCC targets
Most Linux distros work around aliasing problems in Mesa by compiling
with the GCC option -fno-strict-aliasing. Two examples:

  https://bugs.freedesktop.org/show_bug.cgi?id=6046
  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=394311

This makes -fno-strict-aliasing the default with a comment that
developers should consider commenting it out. There is a already a note
about these bugs in docs/helpwanted.html.
2007-10-31 09:47:39 -07:00
Brian
2bdd467dfd GLSL support in i965 driver 2007-10-31 09:57:47 -06:00
Brian
7f80dc1ebe updated list 2007-10-31 09:57:47 -06:00
Brian
5cb203433a check for count==0 in _mesa_validate_DrawArrays() 2007-10-31 09:57:47 -06:00
Brian
d11b375b16 fix typo 2007-10-31 09:43:17 -06:00
Brian
d1afa8146f updated help/to-do list 2007-10-31 09:40:58 -06:00
Brian
31d4ba8a93 glDrawArrays(count=0) bugfix 2007-10-31 09:40:20 -06:00
Brian
1a7640958c check for count==0 in _mesa_validate_DrawArrays() 2007-10-31 09:39:20 -06:00
Brian
2e2a5a450b note G33/Q33/Q35 support 2007-10-31 08:19:14 -06:00
Jouk
d1414da8f9 Merge branch 'master' of git+ssh://joukj@git.freedesktop.org/git/mesa/mesa 2007-10-31 08:18:58 +01:00
Michel Dänzer
d2f19a554a Fix some build warnings, mostly with XCB. 2007-10-30 17:58:50 +01:00
Brian
574fd63ff0 fix GL_ATI_separate_stencil 2007-10-30 10:46:31 -06:00
Brian
1063d47526 Alias glStencilOpSeparateATI with glStencilOpSeparate.
(Cherry-pick from master)
2007-10-30 10:45:47 -06:00
Brian
b59a892d3e Finish up ATI_separate_stencil
Add entrypoints to glapi XML file and regenerate files.
Implement glStencilOpSeparateATI().
Consolidate some code in stencil.c

Conflicts:

	src/mesa/glapi/dispatch.h
	src/mesa/glapi/glapioffsets.h
	src/mesa/glapi/glapitable.h
	src/mesa/glapi/glapitemp.h
	src/mesa/glapi/glprocs.h
	src/mesa/main/enums.c
	src/mesa/main/state.c
	src/mesa/sparc/glapi_sparc.S
	src/mesa/x86-64/glapi_x86-64.S
	src/mesa/x86/glapi_x86.S
2007-10-30 10:34:26 -06:00
Roland Scheidegger
6e5d5d77df add missing _mesa_StencilFuncSeparateATI function 2007-10-30 10:26:56 -06:00
Brian
a7f64635a6 Alias glStencilOpSeparateATI with glStencilOpSeparate. 2007-10-30 10:24:34 -06:00
Brian
8b8a970593 test glStencilFuncSeparateATI() 2007-10-30 10:23:58 -06:00
Brian
f70ca96ba9 Finish up ATI_separate_stencil
Add entrypoints to glapi XML file and regenerate files.
Implement glStencilOpSeparateATI().
Consolidate some code in stencil.c
2007-10-30 09:13:58 -06:00
Roland Scheidegger
4c53635aab add missing _mesa_StencilFuncSeparateATI function 2007-10-30 14:09:17 +01:00
Michel Dänzer
3177b4e2cf More vblank cleanups.
* Fix crash at context creation in most drivers supporting vblank.
* Don't pass vblank sequence or flags to functions that get passed the drawable
  private already.
* Attempt to initialize vblank related drawable private fields just once
  per drawable. May need more work in some drivers.
2007-10-30 13:16:50 +01:00
Eric Anholt
dc1264970e [i915] Include header to pick up intel_ttm_bo_create_from_handle() proto. 2007-10-29 13:24:29 -07:00
Eric Anholt
b0edb9c38a Merge branch 'origin' 2007-10-29 13:24:27 -07:00
Dan Nicholson
a6319d18cf Build xdemos programs by default on linux-dri
Since libglut is no longer hardcoded, we can build the xdemos programs
so long as a GLX enabled libGL and libGLU have been built.
(cherry picked from commit 06ca14543e)
2007-10-29 12:08:34 -07:00
Dan Nicholson
5103e883fd update APP_LIB_DEPS for static library configs (patch 3/3)
(cherry picked from commit 162914675a)
2007-10-29 12:06:50 -07:00
Jesse Barnes
ad8ee7db3b Merge branch 'master' of ssh://git.freedesktop.org/git/mesa/mesa 2007-10-29 12:06:36 -07:00
Dan Nicholson
98c4ea4b24 simplify APP_LIB_DEPS (patch 2/3)
(cherry picked from commit 9ef1d9f03a)
2007-10-29 12:06:23 -07:00
Jesse Barnes
38fdb47d26 Refactor and fix core vblank support
Consolidate support for synchronizing to and retrieving vblank counters.  Also
fix the core vblank code to return monotonic MSC counters, which are required
by some GLX extensions.  Adding support for multiple pipes to a low level
driver is fairly easy, the Intel 965 driver provides simple example code (see
intel_buffers.c:intelWindowMoved()).

The new code bumps the media stream counter extension version to 2 and adds a
new getDrawableMSC callback.  This callback takes a drawablePrivate pointer,
which is used to calculate the MSC value seen by clients based on the actual
vblank counter(s) returned from the kernel.  The new drawable private fields
are as follows:
  - vblSeq - used for tracking vblank counts for buffer swapping
  - vblFlags - flags (e.g. current pipe), updated by low level driver
  - msc_base - MSC counter from the last time the current pipe changed
  - vblank_base - kernel DRM vblank counter from the last time the pipe changed

Using the above variables, the core vblank code (in vblank.c) can calculate a
monotonic MSC value.  The low level DRI drivers are responsible for updating
the current pipe (by setting VBLANK_FLAG_SECONDARY for example in vblFlags)
along with msc_base and vblank_base whenever the pipe associated with a given
drawable changes (again, see intelWindowMoved for an example of this).

Drivers should fill in the GetDrawableMSC DriverAPIRec field to point to
driDrawableGetMSC32 and add code for pipe switching as outlined above to fully
support the new scheme.
2007-10-29 12:06:00 -07:00
Dan Nicholson
29b8cac7d7 specify app lib dependencies in Makefiles (patch 1/3)
(cherry-picked from commit c05aa5ec4c)

Conflicts: progs/demos/Makefile
           progs/xdemos/Makefile
2007-10-29 12:05:54 -07:00
Dan Nicholson
cdb02d43fe linux-dri-xcb: Fix undefined refs when linking with libGL
GL_LIB_DEPS was missing -lXdamage and -lXfixes, which was causing
linker errors when trying to build the programs.
(cherry picked from commit 3b9e28d507)
2007-10-29 11:44:30 -07:00
Dan Nicholson
06ca14543e Build xdemos programs by default on linux-dri
Since libglut is no longer hardcoded, we can build the xdemos programs
so long as a GLX enabled libGL and libGLU have been built.
2007-10-29 11:43:20 -07:00
Chris Rankin
1421bffb18 Remember to call XSync() before resetting X error handler. 2007-10-29 14:37:32 -04:00
Dan Nicholson
3b9e28d507 linux-dri-xcb: Fix undefined refs when linking with libGL
GL_LIB_DEPS was missing -lXdamage and -lXfixes, which was causing
linker errors when trying to build the programs.
2007-10-29 11:17:04 -07:00
Brian
40133487db disable ctx->Driver.NewProgram() call in _mesa_new_program()
This was causing infinite recursive calls w/ software drivers.
All vertex/fragment shaders should be allocated by calling
ctx->Driver.NewProgram(), not by calling _mesa_new_program().
2007-10-29 10:01:15 -06:00
Dan Nicholson
162914675a update APP_LIB_DEPS for static library configs (patch 3/3) 2007-10-29 09:05:13 -06:00
Dan Nicholson
9ef1d9f03a simplify APP_LIB_DEPS (patch 2/3) 2007-10-29 09:04:30 -06:00
Dan Nicholson
c05aa5ec4c specify app lib dependencies in Makefiles (patch 1/3) 2007-10-29 09:03:01 -06:00
Michel Dänzer
50cecddc4a driFenceType: Really return fence type, not flags.
This typo could lead to the i915tex driver waiting for an EXE only fence as RW,
causing it to abort with an error.
2007-10-29 13:27:59 +00:00
Alan Hourihane
177f6398e5 Only set R_MODE with NV_point_sprite 2007-10-28 20:08:15 +00:00
Alan Hourihane
b59dbd822f Only set R_MODE with NV_point_sprite 2007-10-28 20:07:37 +00:00
Dan Nicholson
887bd6a46f configs: Fix linux-static to link correctly
The linux-static target was missing necessary libraries and hardcoding
their location to /usr/X11R6/lib. This makes it comparable to the x86
and x86-64 static targets.
(cherry picked from commit 9514209593)
2007-10-26 15:49:00 -07:00
Dan Nicholson
9514209593 configs: Fix linux-static to link correctly
The linux-static target was missing necessary libraries and hardcoding
their location to /usr/X11R6/lib. This makes it comparable to the x86
and x86-64 static targets.
2007-10-26 15:46:37 -07:00
Zou Nan hai
6ef27b88e6 Merge branch '965-glsl'
Conflicts:

	src/mesa/drivers/dri/i965/brw_sf.h
	src/mesa/drivers/dri/i965/intel_context.c
2007-10-26 15:39:50 +08:00
Brian
9af5153410 use grep -q 2007-10-25 14:48:08 -06:00
Brian
ff042bfdee use grep -q 2007-10-25 14:47:14 -06:00
Dan Nicholson
0e2103689e More ignored programs merged back from master
Some more entries in progs/*/.gitignore that were in master.
2007-10-25 11:59:26 -07:00
Dan Nicholson
8578534f48 Ignore new programs 2007-10-25 11:34:16 -07:00
Brian
2c496d8e46 simplify/fix the ASM_FLAGS tests (bug 12931) 2007-10-25 11:12:17 -06:00
Brian
8f0ba02e44 Cray Xt3 config 2007-10-25 11:12:07 -06:00
Brian
6dcf65ff0d simplify/fix the ASM_FLAGS tests (bug 12931) 2007-10-25 11:10:10 -06:00
Brian
524c56e417 Fix merge 2007-10-24 16:36:00 -06:00
Brian
773f3a266c added catamount-osmesa-pgi config, fixes for cross-compiling 2007-10-24 16:35:47 -06:00
Brian
882ada0d22 don't build x86, x86-64 dirs if not needed 2007-10-24 16:33:24 -06:00
Alex Neundorf
cae5b7f1e3 added catamount-osmesa-pgi config 2007-10-24 16:31:22 -06:00
Brian
26479fa3b3 don't build x86, x86-64 dirs if not needed 2007-10-24 16:24:06 -06:00
Brian
55d4f32fc2 fix assorted bugs, works now 2007-10-24 13:55:22 -06:00
Brian
5e9272c748 add to git 2007-10-24 12:43:02 -06:00
Brian
e48f0b09ab Implement gl_PointCoord attribute for GLSL fragment shaders.
Contains the normalized fragment position within a point sprite.
2007-10-24 11:37:05 -06:00
Brian
c9d495c6f0 properly init dst reg's CondMask/Swizzle fields 2007-10-23 10:55:24 -06:00
Brian
6229005f93 properly init dst reg's CondMask/Swizzle fields 2007-10-23 10:55:14 -06:00
Brian
6c63b35ef7 bump up MAX_INSTRUCTIONS and add an assertion to catch emitting too many instructions 2007-10-23 10:25:34 -06:00
Brian
2a8e9bb00f bump up MAX_INSTRUCTIONS and add an assertion to catch emitting too many instructions 2007-10-23 10:24:53 -06:00
Brian
e90dd4bf8f add directfb glut sources to tarball 2007-10-23 08:22:21 -06:00
Brian
fb85e50e09 add directfb glut sources to tarball 2007-10-23 08:22:11 -06:00
Brian
5e5f908d0c don't apply ColorMask to main gc 2007-10-22 17:54:07 -06:00
Brian
2667e5642f don't apply ColorMask to main gc 2007-10-22 17:50:59 -06:00
Kristian Høgsberg
a074857cdc glxinfo: Try creating a GLX context using an fbconfig if no visuals are available. 2007-10-18 15:19:38 -04:00
Michel Dänzer
950fff0f9a i915: Add some sanity checks to blit command debugging code. 2007-10-18 18:30:15 +02:00
Ian Romanick
a663e846b6 Framework for supporting z24_s8 and z32 depth textures on r300. 2007-10-17 16:25:39 -07:00
Ian Romanick
42a4386a4c Initial support for ARB_depth_texture
Currently only GL_DEPTH_COMPONENT16 are supported.  I don't know what the
hardware bits are to select the other formats, but it shouldn't be too hard
to figure out.
2007-10-17 16:25:39 -07:00
Ian Romanick
b961eccc92 Support cards that have ARB_fp but not ARB_shadow. 2007-10-17 16:25:39 -07:00
Ian Romanick
374158b044 mga: Enable (trivial) support for GL_APPLE_vertex_array_object, bump DRIVER_DATE 2007-10-17 16:25:39 -07:00
Ian Romanick
366b2c6902 mga: Enable (trivial) support for GL_EXT_gpu_program_parameters. 2007-10-17 16:25:38 -07:00
Kristian Høgsberg
aad5c0fdc7 pbutil: Do not require GLX_SGIX_pbuffer for fbconfig only-functions. 2007-10-17 17:04:59 -04:00
Brian
ad053d90f0 Replace repeat_remainder() with a simpler macro that just casts args to unsigned. 2007-10-17 14:30:44 -06:00
Kristian Høgsberg
6c753ad51d Pull workaround for unset GLX_DRAWABLE_TYPE back in.
The old version just set GLX_DRAWABLE_TYPE to GLX_WINDOW_BIT for
configs received through glXGetVisualConfigs and to
GLX_WINDOW_BIT | GLX_PIXMAP_BIT for configs received as FBConfigs.
The X server needs to send this info, but keep the workaround for now.

Fixes #12835.
2007-10-17 15:06:11 -04:00
Kristian Høgsberg
a5b4bb393f glxinfo: Also print number of fbconfigs. 2007-10-17 15:06:11 -04:00
Michel Dänzer
86b81ef5aa Don't call the driver clear hook when the effective scissor rectangle is empty. 2007-10-17 18:37:19 +02:00
Michel Dänzer
b453112133 i915: Don't emit 'empty' blit rectangles.
The hardware seems to interpret them differently and produce unexpected
results...
2007-10-17 18:37:12 +02:00
Michel Dänzer
c09e2143c7 i915tex: Don't emit 'empty' blit rectangles.
The hardware seems to interpret them differently and produce unexpected
results...
2007-10-17 18:28:46 +02:00
Kristian Høgsberg
87966baa8d Fixup a couple of thinkos in glxinfo changes. 2007-10-17 10:15:10 -04:00
Kristian Høgsberg
6c533ea2d1 Handle fbconfigs and glx visuals separately.
The old implementation fetches fbconfigs or glx visuals once and assumes the list
describes both fbconfigs and glx visuals.  This patch splits it up and fetches
visuals and fbconfigs in two steps and keep the two lists separate.  A server
could have no glx visuals or no glx fbconfigs and the old code wouldn't know the
difference.
2007-10-16 16:07:52 -04:00
Kristian Høgsberg
791ad0e77f Implement support for printing glx fbconfigs in glxinfo. 2007-10-16 16:07:52 -04:00
Kristian Høgsberg
f7d1d554b1 glxinfo: Only print visuals that actually support GLX. 2007-10-16 16:07:52 -04:00
Eric Anholt
919f617d08 Replace symlink generation from i915 with files in intel/ and symlinks there. 2007-10-16 12:38:55 -07:00
Michel Dänzer
3feefeeb35 i915: Make sure extensions that require TTM actually work. 2007-10-16 15:48:46 +02:00
Dave Airlie
70eb456a76 i915: fixup TTM interfaces to follow drm changes 2007-10-16 22:11:43 +11:00
Michel Dänzer
9c4d104e98 i915: Re-enable __DRItexOffsetExtension.
This seems to have got lost somehow during the recent DRI interface changes.
2007-10-16 13:01:44 +02:00
Brian
74ced1e67f fix fog, rescale_normals bugs (from gallium branch) 2007-10-15 18:02:14 -06:00
Brian
cab0dce676 fix fog, rescale_normals bugs (from gallium branch) 2007-10-15 18:00:55 -06:00
Kristian Høgsberg
7a88ecbd1a Roll back premature version bump. 2007-10-15 12:16:45 -04:00
Kristian Høgsberg
a87e9a3479 Dont add fbconfigs to array that we didn't allocate for. 2007-10-15 10:59:06 -04:00
Andreas Micheler
dd02c1609e faster write_rgba_span_front() 2007-10-15 08:28:06 -06:00
Andreas Micheler
157eeb5c3b faster write_rgba_span_front() 2007-10-15 08:26:45 -06:00
George Sapountzis
f33e1a4403 typo 2007-10-14 20:33:56 +03:00
George Sapountzis
fe20ac2a6b Add GL_CORE_WINDOWS define to glcore.h
This is for consistency with glproto. The GL_CORE defines should probably be
dropped.

----

Author: Alexander Gottwald <alexander.gottwald@s1999.tu-chemnitz.de>
Date:   Mon Jun 21 13:35:05 2004 +0000

    Bug 782: Merge native OpenGL for Windows from CYGWIN branch
2007-10-14 20:11:00 +03:00
George Sapountzis
d7c137b0df Drop include "dri_interface.h" from xf86dri.h
Thanks to dri2, xf86dri no longer uses __DRI types.
2007-10-14 20:08:31 +03:00
Kristian Høgsberg
c095f7e46a Do XSync() before resetting error handler. 2007-10-13 18:46:01 -04:00
Kristian Høgsberg
d0b68b215d Uncomment GLX_SGIX_pbuffer definition. 2007-10-13 18:45:05 -04:00
Kristian Høgsberg
8b20411915 Get the width and height from the attrib list in glXCreatePbuffer. 2007-10-13 18:44:52 -04:00
Kristian Høgsberg
f9c6dfc4d1 Merge branch 'dri2'
Conflicts:

	src/mesa/drivers/dri/i915/intel_screen.c
2007-10-12 19:35:04 -04:00
Dave Airlie
bf805d3bf5 Merge branch 'master' into i915-superioctl 2007-10-12 11:02:46 +10:00
Dave Airlie
9e06cf00cf i915: only enable TTM path if drm minor is > 11 for superioctl 2007-10-12 11:01:27 +10:00
Dave Airlie
ea2278bc79 dri: remove ttm common code since superioctl is device specific 2007-10-12 10:59:38 +10:00
Dave Airlie
7fc5c0307a i915: fixup reloc header defines 2007-10-12 10:56:25 +10:00
Brian
72c888869f Example of cooperative rendering into one window by two processes 2007-10-11 18:25:12 -06:00
Brian
f1104b079f New glxsnoop demo to display another window's z/stencil/back buffer. 2007-10-11 16:39:02 -06:00
Kristian Høgsberg
a2494462cb Drop no longer implemented MESA allocate extension from i915. 2007-10-11 12:49:26 -04:00
Brian
f05c76ec1a remove unneeded cast 2007-10-11 10:33:31 -06:00
Kristian Høgsberg
ccff0cb263 Add a version field to __DRIextension. 2007-10-11 11:30:39 -04:00
Kristian Høgsberg
f29f0ae838 Move new texOffset extension to the new extension mechanism. 2007-10-11 11:28:38 -04:00
Kristian Høgsberg
ecdb45cb29 Convert a left-over private void * to __DRIcontext *. 2007-10-11 11:27:51 -04:00
Kristian Høgsberg
3eaec7dc5d Move enabling of DRI extensions into glxextensions.c 2007-10-11 11:26:47 -04:00
Kristian Høgsberg
594006d8b2 Remove now unused getProcAddress from DRIinterfaceMethods. 2007-10-11 11:25:37 -04:00
Kristian Høgsberg
f968f67e62 Add a DRI_ReadDrawable marker extension to signal read drawable capability. 2007-10-11 11:22:55 -04:00
Kristian Høgsberg
106a6f29bb Move media stream counter entry points to new extension. 2007-10-11 11:21:29 -04:00
Kristian Høgsberg
a7a0a2beb5 Move GLX_MESA_swap_frame_usage DRI entry points to the new mechanism. 2007-10-11 11:11:12 -04:00
Kristian Høgsberg
78a6aa57a0 Move GLX_MESA_allocate_memory related functions to new extension mechanism. 2007-10-11 11:09:57 -04:00
Kristian Høgsberg
efaf90b03e Move swap_interval to new extension mechanism. 2007-10-10 19:14:10 -04:00
Kristian Høgsberg
ac3e838fa7 Move the copySubBuffer extension over to the new mechanism. 2007-10-10 18:57:57 -04:00
Kristian Høgsberg
f616a263a2 Implement new screen extension API.
This new API lets the loader examine DRI level extensions provided by the
driver in a forward compatible manner.

Much of the churn in the DRI interface is adding support for new
extensions or removing old, unused extensions.  This new extension
mechanism lets the loader query the extensions provided by the driver
and implement the extensions it knows about.  Deprecating extensions
is done by not exporting that extension in the list, which doesn't
require keeping old function pointers around to preserve ABI.
2007-10-10 18:47:22 -04:00
Kristian Høgsberg
295dc2d225 Stop passing in unused fbconfigs to createNewScreen. 2007-10-10 18:46:51 -04:00
Kristian Høgsberg
64106d0d9a Pull createNewScreen entry point into dri_util.c.
This pulls the top level createNewScreen entry point out of the drivers
and rewrites __driUtilCreateNewScreen in dri_util.c to be the new entry point.

The change moves more logic into the common/ layer and changes the
createNewScreen entry point to only be defined in one place.
2007-10-10 18:36:14 -04:00
Kristian Høgsberg
efd03a278a Replace open-coded major, minor, and patch version fields with __DRIversionRec. 2007-10-10 18:20:08 -04:00
Kristian Høgsberg
5987a03f99 Convert all DRI entrypoints to take pointers to __DRI* types.
The entrypoints take a mix of __DRIscreen * and void * (screen private)
arguments (similarly for contexts and drawables).  This patch does away
with passing the private void pointer and always only passes the fully
typed __DRIscreen pointer and always as the first argument.

This makes the interface more consistent and increases type safety, and
catches a bug where we would pass a screen private to DRIdrawable::getSBC.
2007-10-10 18:00:18 -04:00
Kristian Høgsberg
aac367f48a Remove screenConfigs from __DRIscreen.
The screenConfigs field of __DRIscreen points back to the containing
__GLXscreenConfigs struct.  This is a serious abstraction violation; it
assumes that the loader is libGL and that there *is* a __GLXscreenConfigs
type in the loader.

Using the containerOf macro, we can get from the __DRIscreen pointer to
the containing __GLXscreenConfigs struct, at a place in the stack
where the above is a valid assumption.  Besides, the __DRI* structs shouldn't
hold state other than the private pointer.
2007-10-10 18:00:13 -04:00
Kristian Høgsberg
fa72013ada Drop mostly unused __DRIid typedef. 2007-10-10 17:09:48 -04:00
Kristian Høgsberg
9590ba97ad Avoid deadlock in GarbageCollectDRIDrawables.
__glXinitialize() can't be called with the GLX lock held.  Just
pass in the __GLXscreenConfigs pointer so we don't have to look it
up in __GLXdisplayPrivate.
2007-10-10 17:09:36 -04:00
Kristian Høgsberg
8ed5c7ca05 Drop createContext and destroyContext from DRIinterfaceMethods.
As for createDrawable and destroyDrawable, these functions immediately
upon entry to driCreateNewContext and immediately before exit from
driDestroyContext.  Instead of passing function pointers back and forth
just obtain the drm_context_t prior to calling DRIscreen::createNewContext
and pass it as a parameter.

This change also lets us keep the DRI context XID in the libGL loader only.
2007-10-10 17:09:16 -04:00
Kristian Høgsberg
4ff95e78e1 Drop createDrawable and destroyDrawable fron DRIinterfaceMethods.
All the DRI driver did was call the createDrawable callback immediately
upon entry to DRIscreen::createNewDrawable to get the drm_drawable_t.
We can just call that before calling into the DRI driver and pass the
returned drm_drawable_t as an argument to the DRI entry point.

Likewise for destroyDrawable.

Also, DRIdrawablePrivate::draw isn't used anywhere, and since the
driver no longer needs the XID of the drawable we can now drop that.
2007-10-10 17:07:26 -04:00
Kristian Høgsberg
b068af2f3b Key drm_i915_flip_t typedef off of the ioctl #define instead. 2007-10-10 17:07:01 -04:00
Kristian Høgsberg
aceccda56b Drop __DRInativeDisplay and pass in __DRIscreen pointers instead.
Many DRI entry points took a __DRInativeDisplay pointer and a screen
index as arguments.  The only use for the native display pointer was to
pass it back to the loader when looking up the __DRIscreen for the given
screen index.

Instead, let's just pass in the __DRIscreen pointer directly, which
let's drop the __DRInativeDisplay type and the getScreen function.

The assumption is now that the loader will be able to retrieve context
from the __DRIscreen pointer when necessary.
2007-10-10 15:32:15 -04:00
Brian
cdf4880a79 replace 'brick' with correct program name in printfs 2007-10-10 10:57:37 -06:00
Brian
03ff9c96bf replace 'brick' with correct program name in printfs 2007-10-10 10:56:48 -06:00
Mrc Gran
2ec8e8547d fix force_s3tc_enable option 2007-10-10 09:16:12 -06:00
Mrc Gran
de3073d377 fix force_s3tc_enable option 2007-10-10 09:15:42 -06:00
Dan Nicholson
b7c36d1d33 Ignore more generated files in progs/
Many of the directories in progs/ were missing .gitignore files or
were tracking generated files. This patch is basically the process of
running `make' in each directory and then finding the untracked files
with `git-ls-files -o --exclude-per-directory=.gitignore'. The existing
files were also sorted.

Conflicts:

	progs/demos/.gitignore
	progs/tests/.gitignore
	progs/xdemos/.gitignore
2007-10-10 08:49:59 -06:00
Dan Nicholson
b182613f2f Ignore more generated files in progs/
Many of the directories in progs/ were missing .gitignore files or
were tracking generated files. This patch is basically the process of
running `make' in each directory and then finding the untracked files
with `git-ls-files -o --exclude-per-directory=.gitignore'. The existing
files were also sorted.
2007-10-10 08:44:58 -06:00
Brian
9509afe97c Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-10-09 12:36:56 -06:00
Zou Nan hai
de803f538c Non Square Matrix 2007-10-09 15:05:10 +08:00
Zou Nan hai
ae5aa1f906 fix for prev commit 2007-10-09 14:35:28 +08:00
Zou Nan hai
e2dff35f95 INT support 2007-10-09 14:26:01 +08:00
Zou Nan hai
82d4aa4055 shadow sampler fix.
1. spec requite result (0, 0, 0, 1) instead of (0, 0, 0, 0)
  2. support shadow sampler in simd8
2007-10-09 14:14:59 +08:00
Dave Airlie
8909f1131a i915: workout max relocs from batch buffer size 2007-10-09 14:36:04 +10:00
Dave Airlie
7e83c15fa0 i915: fixup up bufmgr to pass num buffers to kernel
remove unneeded entry points
2007-10-09 12:18:50 +10:00
Sergio Monteiro Basto
4599683b48 i915: Fix undefined ALIGN symbol from 77e0523fb7. 2007-10-08 11:09:38 -07:00
Zou Nan hai
ac985708f4 Only vertex program fix, bypass tnl vertex program 2007-10-08 15:34:03 +08:00
Jerome Glisse
32699696e3 r300: fragprog tex instruction now take writemask into acount. 2007-10-07 22:49:56 +02:00
David Nusinow
8913402b74 Revert "* Disable building i915tex."
This reverts commit 76556f8264.
2007-10-06 17:54:29 -04:00
David Nusinow
c00dfefd6f Revert "Don't release just yet."
This reverts commit c3de7b5ade.
2007-10-06 17:54:13 -04:00
Patrice Mandin
d85e8b088b nouveau: move nv10 clear command, for usage by other gpu 2007-10-06 02:30:24 +02:00
Dave Airlie
0ba57d02cd i915: drop complex list handling for now
If this proves a win later we can add it back but at the moment
I don't think it's required yet
2007-10-05 14:41:32 +10:00
Dave Airlie
4611b9398e i915: clean up lists on teardown
also fix a use of uninitialised pointer
2007-10-05 14:33:18 +10:00
Kristian Høgsberg
b42152061c Add macros to generate CreateNewScreen entrypoint. 2007-10-05 00:12:30 -04:00
Kristian Høgsberg
4a22ae8d44 Remove XIDs from DRI interface (see #5714). 2007-10-05 00:09:32 -04:00
Kristian Høgsberg
4ceefccbfa Pull in the drm hash. 2007-10-05 00:09:23 -04:00
David Nusinow
c3de7b5ade Don't release just yet. 2007-10-04 23:10:47 -04:00
David Nusinow
76556f8264 * Disable building i915tex.
It was previously only built on x86 and amd64.  It was never
  production-ready and relies on a kernel interface that never went
  upstream.
2007-10-04 22:49:27 -04:00
Dave Airlie
4e1c76de0b i915: add copyrights to new files 2007-10-05 12:15:50 +10:00
Dave Airlie
8e21bb516f i915: increase batchbuffer back to 16k 2007-10-05 12:12:33 +10:00
Eric Anholt
77e0523fb7 [965] Replace various alignment code with a shared ALIGN() macro.
In the process, fix some alignment issues:
- Scratch space allocation was aligned into units of 1KB, while the allocation
  wanted units of bytes, so we never allocated enough space for scratch.
- GRF register count was programmed as ALIGN(val - 1, 16) / 16 instead of
  ALIGN(val, 16) / 16 - 1, which overcounted for val != 16n+1.
2007-10-04 12:28:49 -07:00
Eric Anholt
0fc9efd8f0 Replace bmBufferOffset usage in batchbuffer setup with OUT_RELOC.
This is in preparation for 965 TTM.
2007-10-04 12:28:49 -07:00
Eric Anholt
6bac9478c3 Replace duplicated intel_reg.h with a shared header. 2007-10-04 12:28:49 -07:00
Eric Anholt
1f7378ee46 Replace some structure-based batch preparation with plain OUT_BATCH.
OUT_BATCH is far more amenable to the upcoming relocations being done for TTM
support.
2007-10-04 12:28:48 -07:00
Eric Anholt
ffa94e5b1e FreeBSD: more /usr/X11R6->/usr/local 2007-10-04 12:28:48 -07:00
Maarten Maathuis
10cc229dc2 nouveau: Replace removed device classes with their proper labels. 2007-10-04 19:08:37 +02:00
Dave Airlie
c4a9a70888 i915: add superioctl support to the ttm codepaths.
gears now runs for about 10-15 seconds with some artifacts before falling
over.
2007-10-04 15:31:47 +10:00
Xiang, Haihao
970d18a708 Brian's fix for bug9829 2007-10-04 00:08:18 +02:00
Roland Scheidegger
9456e7f0ff minor fog calc cleanup 2007-10-03 22:34:36 +02:00
Roland Scheidegger
a5db24adc2 fog: fix issues with negative fog coords (may fix #10529)
Rework tnl fog a bit. Make sure we always use ABS(eyez) when fog coord source
is depth, OTOH it does not seem to be necessary to use it (as was done before
in some cases) if fog coord source is fogcoord (just to save some work).
This fixes tests/fog (the first 2 cases) with i915/i915tex.
2007-10-03 22:33:26 +02:00
Roland Scheidegger
17664e2620 make sure optimized fog params get updated 2007-10-03 22:33:03 +02:00
Roland Scheidegger
43a0eb0253 unbreak 3d textures (typo when setting tex layout) 2007-10-03 22:32:33 +02:00
Roland Scheidegger
db0f050582 minor fog calc cleanup 2007-10-03 22:20:44 +02:00
Jouk
b263435a98 Update of OpenVMS makefiles for the use of "new" include file convention 2007-10-03 15:21:40 +02:00
Michel Dänzer
58cdd1dc52 i915: Only align texture pitch to 64 bytes when textures can be render targets. 2007-10-03 11:25:59 +02:00
Michel Dänzer
1bc84102ad i915: Work around texture pitch related performance drops on i915 at least. 2007-10-03 11:06:48 +02:00
Michel Dänzer
bcdaed2c0a i915tex: Work around texture pitch related performance drops on i915 at least. 2007-10-03 10:48:56 +02:00
Dave Airlie
fa031c8914 i915: add superioctl initial support inside bufmgr ttm 2007-10-03 16:54:59 +10:00
Dave Airlie
4cd3ef58a9 i915/drmbuf: attempt to push relocations into buffer manager
This moves the relocations into the buffer manager in prepration for
a superioctl move.
2007-10-03 15:50:46 +10:00
Brian
2dbd905ab0 fix comment: s/branch/kill/ 2007-10-02 16:50:40 -06:00
Jouk
584b84256b Merge branch 'master' of git+ssh://joukj@git.freedesktop.org/git/mesa/mesa 2007-10-02 15:17:23 +02:00
Brian
de1d725f44 updated glext.h license info (Khronos), plus other clean-ups 2007-10-01 17:57:25 -06:00
Brian
78c6637db5 updated glext.h license info (Khronos), plus other clean-ups 2007-10-01 17:56:48 -06:00
Zou Nan hai
3d6c410990 fragment shader function call fix, gl_FragCoord fix 2007-09-30 13:47:05 +08:00
Brian
44214a98fd fix VBO-split infinite loop (bug 12164) 2007-09-29 12:01:47 -06:00
Brian
f8ee72d98f fix VBO-split infinite loop (bug 12164) 2007-09-29 12:01:34 -06:00
Chris Rankin
4f96000e29 r200: Implement SetTexOffset hook.
Implementation guidance by Michel Dänzer, final testing by Timo Aaltonen.
2007-09-29 18:14:06 +02:00
Zou Nan hai
b0b48798c7 support continue, fix conditional 2007-09-29 15:00:52 +08:00
Dan Nicholson
9cc6d2310c add support for LDFLAGS env var 2007-09-28 18:47:11 -06:00
Brian
1a045954be update the DRM/DRI instructions 2007-09-28 18:43:12 -06:00
Dan Nicholson
2a3e33865d add support for LDFLAGS env var 2007-09-28 18:42:21 -06:00
Brian
e776e7a95a update the DRM/DRI instructions 2007-09-28 18:39:41 -06:00
Brian
6775c1e8cc Remove test for EXT_blend_logic_op in glGetString when determining GL version.
EXT_blend_logic_op is slightly different from GL 1.1's RGBA logicop mode
and does not have to be supported.  Per conversation with Roland.
2007-09-28 16:06:43 -06:00
Jesse Barnes
d99f6c4a2a Go back to using old drm_i915_flip_t field name
This field shouldn't have been renamed in the first place.  Go back to using
the old name so that the tree is backward and forward compatible again.
2007-09-28 10:11:52 -07:00
Zou Nan hai
e75ae0dc79 fix 2007-09-28 17:04:48 +08:00
Zou Nan hai
4087c90eff support nested function call in pixel shader 2007-09-28 16:37:01 +08:00
Dave Airlie
b3fc9a1585 i965: fix vblank on 965gm laptops by bringing in code from i915
jbarnes has better fixes for this in 7.1, but for 7.0.2 this seems like the best
plan, for distros to pick it up.
2007-09-28 12:02:27 +10:00
Eric Anholt
35331a511f [965] Add batchbuffer dumping under INTEL_DEBUG=bat, like 915. 2007-09-27 15:11:47 -07:00
Eric Anholt
b2c8b1385a FreeBSD: Chase /usr/X11R6 death (replaced by everything in one prefix). 2007-09-27 15:11:45 -07:00
Eric Anholt
e886ae4c58 Revert "WIP 965 conversion to dri_bufmgr."
This reverts commit b2f1aa2389.

Somehow I ended up with my branch's save-this-while-I-work-on-master commit
actually on master.
2007-09-27 15:11:39 -07:00
Eric Anholt
b2f1aa2389 WIP 965 conversion to dri_bufmgr. 2007-09-27 11:15:51 -07:00
Eric Anholt
38c30a8184 [965] Remove AUB file support.
This code existed to dump logs of hardware access to be replayed in simulation.
Since we have real hardware now, it's not really needed.
2007-09-27 10:16:08 -07:00
Xiang, Haihao
2a86a449ca mesa: make sure the gotten value isn't greater than the
max depth buffer value on 64bit system. fix bug #12095
2007-09-27 10:44:45 -06:00
Xiang, Haihao
44f032db61 i965: handle all unfilled mode in clip stage. fix bug #12453 2007-09-27 10:40:22 -06:00
Brian
f2d9a07efe for Miniglx, use git sources 2007-09-27 10:39:01 -06:00
Brian
ed6d5ff6f8 Restore old _TriangleCaps code to fix Blender problem (bug 12164) 2007-09-27 10:39:01 -06:00
Brian
4f9d29cd4e tweak point rast to fix conform failure 2007-09-27 10:39:01 -06:00
Brian
5a520729ee prep for 7.0.2 release 2007-09-27 10:35:10 -06:00
Brian
36fbe78c60 for Miniglx, use git sources 2007-09-27 10:34:44 -06:00
Brian
029bb17770 bump versions to 7.0.2 2007-09-27 10:30:13 -06:00
Brian
7958bee6be fix blend bug 12164 2007-09-27 10:25:57 -06:00
Brian
0b9bb21ce4 Restore old _TriangleCaps code to fix Blender problem (bug 12164) 2007-09-27 10:25:33 -06:00
Zou Nan hai
b1e549d176 handle INT op, still require high level handle of integer to be correct 2007-09-27 16:17:24 +08:00
Xiang, Haihao
3ee6a77e97 i965: handle all unfilled mode in clip stage. fix bug #12453 2007-09-27 16:14:57 +08:00
Xiang, Haihao
6254be9b71 mesa: make sure the gotten value isn't greater than the
max depth buffer value on 64bit system. fix bug #12095
2007-09-27 15:52:01 +08:00
Zou Nan hai
35a0634e35 fix issue when only fragment shader or vertex shader is used 2007-09-27 15:47:00 +08:00
Zou Nan hai
aa88d11e7d fix ppracer and bzflag issue with clip optimization 2007-09-27 13:49:35 +08:00
Dave Airlie
67f6449743 i915/i965 merge serer directories along lines for radeon/r200 2007-09-27 11:15:42 +10:00
Roland Bär
cfcc5b794e [i965] Bug #11812: Fix fwrite return value checks in AUB file code. 2007-09-26 08:00:17 -06:00
Zou Nan hai
925ff408a6 fix fd.o bug #12217, recalcuate urb when clip plane size change 2007-09-26 07:59:41 -06:00
Xiang, Haihao
f40ca444f5 i965: The cube map texture coordinates must be devided by the
component with the largest absolute value before they are
delivered. fix bug #12421
2007-09-26 07:58:57 -06:00
Zou Nan hai
638a5e0382 fix a bug in 965 ARB_occlusion_query,
fd.o bug #12132
2007-09-26 07:58:29 -06:00
Xiang, Haihao
175db68db5 i965: The cube map texture coordinates must be devided by the
component with the largest absolute value before they are
delivered. fix bug #12421
2007-09-26 16:42:50 +08:00
Zou Nan hai
395b3bf6f9 fix a bug in 965 ARB_occlusion_query,
fd.o bug #12132
2007-09-26 10:00:41 +08:00
Dave Airlie
f388d62b39 drm: update bufmgr code to reflect changes in drm interface 2007-09-25 16:22:00 +10:00
Roland Bär
919709af6b [i965] Bug #11812: Fix fwrite return value checks in AUB file code. 2007-09-24 13:47:26 -07:00
Eric Anholt
c8cb87d356 Remove leftover code for i915_texprog.c noticed in crossbar review. 2007-09-24 13:36:56 -07:00
Eric Anholt
56af8fd00f Fix progs/tests/ build with BSD make. 2007-09-24 10:26:56 -07:00
Eric Anholt
b74140db66 Update .gitignore for tests and xdemos. 2007-09-24 10:26:40 -07:00
Eric Anholt
9bb0d628b8 Just use stddef.h to get ptrdiff_t instead of obsolete malloc.h. 2007-09-24 10:22:31 -07:00
Eric Anholt
8cf9085bc7 Move i915tex driver into place as just i915. 2007-09-24 10:03:25 -07:00
Eric Anholt
8fba8d2018 Remove the old i915 driver now that i915tex works without TTM. 2007-09-24 09:56:40 -07:00
Zou Nan hai
439fa79578 fix fd.o bug #12217, recalcuate urb when clip plane size change 2007-09-24 16:48:55 +08:00
Brian
ef5935bc94 fix DrawRangeElements error msg 2007-09-23 13:58:18 -06:00
Brian
6d777bf055 fix DrawRangeElements error msg 2007-09-23 13:57:36 -06:00
Eric Anholt
39c709c0f6 Merge branch 'i915-unification'
This branch replaces the DRM pool interface used by i915tex with a "dri_bufmgr"
interface in dri/common which may be set up to use either TTM or traditional
static memory management according to what is available.  The i915tex TTM
code now requires an updated DDX which provides proper buffer objects for the
static front/back/depth, instead of using fake buffers.  The driver is now
built as i915_dri.so, and should replace the old i915 driver shortly.
2007-09-21 17:13:20 -07:00
Eric Anholt
d0350dadaa Fix buffer/fence reference counting due to Destroy vs Unreference difference.
While here, remove the unnecessary fence type saving for the wait ioctl, as
a 0 argument for type means "use your other saved copy".
2007-09-21 16:18:21 -07:00
Brian
ae6d4e8bc0 fix -D_BSD_SOURC 2007-09-20 18:42:59 -06:00
Brian
6016de689f fix -D_BSD_SOURC 2007-09-20 18:42:47 -06:00
Brian
f2728724d3 fix for __IBMC__ 2007-09-20 15:12:42 -06:00
Brian
bc95b34cce added bluegene-xlc-osmesa, fortran fixes 2007-09-20 15:12:21 -06:00
Brian
a5467fbdd9 fixes for bluegene-xlc-osmesa config 2007-09-20 15:11:14 -06:00
Brian
9eb89616af fixes for bluegene-xlc-osmesa config 2007-09-20 15:10:35 -06:00
Brian
58484dc00a Added bluegene-xlc-osmesa config (Alexander Neundorf) 2007-09-20 15:09:57 -06:00
Brian
f7713a6d81 Added bluegene-xlc-osmesa config (Alexander Neundorf) 2007-09-20 15:09:54 -06:00
Eric Anholt
c1ecc38320 Uniquely validate the batchbuffer-referenced buffers.
Otherwise, for multiple references by the batchbuffer, the kernel would see
the buffer already on the unfenced list and wait for it to leave the list
before continuing, leading to hanging and eventual -EBUSY.
2007-09-20 11:41:25 -07:00
Eric Anholt
7591259674 Add disabled-by-default tracing of TTM bufmgr operations. 2007-09-20 11:38:32 -07:00
Eric Anholt
b7fd06a871 Fix flipped sign to strerror. 2007-09-20 09:20:48 -07:00
Eric Anholt
4f1c9f7e51 Merge branch 'master' into i915-unification
Conflicts:

	src/mesa/drivers/dri/common/dri_drmpool.c
	src/mesa/drivers/dri/i915tex/i915_vtbl.c
	src/mesa/drivers/dri/i915tex/intel_batchbuffer.c
	src/mesa/drivers/dri/i915tex/intel_context.c
2007-09-20 09:04:20 -07:00
Xiang, Haihao
2c88bfeaa4 i965: fix an error in brw_vs_tnl.c
if the state of TEXMAT is changed, the VS isn't updated.
2007-09-20 17:42:13 +08:00
Xiang, Haihao
8fc1a6808d fix memory access error in vbo_bind_vertex_list 2007-09-20 17:37:04 +08:00
Dave Airlie
6f2ca13f90 nouveau: add GeForce 7300 SE to card list 2007-09-20 13:36:31 +10:00
Matthieu Castet
0759e0999b nouveau : nv1x use OUT_RING_CACHE_FORCE for NV10_TCL_PRIMITIVE_3D_PROJECTION_MATRIX as strange results
appear when the matrix is partialy updated.
2007-09-19 23:22:39 +02:00
Matthieu Castet
3b582dff8c nouveau : add OUT_RING_CACHE_FORCE* to add stuff in the cache even if the value didn't change 2007-09-19 23:20:13 +02:00
Matthieu Castet
1310f02dee nouveau : add GL_FOG_COLOR + fix a compil error 2007-09-19 19:58:48 +02:00
Eric Anholt
45899a494c Update .gitignore for demos. 2007-09-19 10:51:07 -07:00
Eric Anholt
eecec25478 Add missing -g in FreeBSD OPT_CFLAGS 2007-09-19 10:51:07 -07:00
Eric Anholt
b91791a85c Replace i915tex batchbuffer printout with a pretty-printed version. 2007-09-19 10:51:07 -07:00
Eric Anholt
f843dcb844 Enable building the debug (env INTEL_DEBUG=list) code by default. 2007-09-19 10:50:19 -07:00
Eric Anholt
9070e6b997 i915: Quiet valgrind by initializing the seq value the kernel writes into.
Also, add a couple of comments to the wait/emit IRQ functions.
2007-09-19 10:50:19 -07:00
Patrice Mandin
3800599bd4 nouveau: nv10: color logic op only for nv11+ 2007-09-19 19:08:56 +02:00
Eric Anholt
e3745dac59 Add some error reporting and a couple of assertions to TTM bufmgr. 2007-09-18 15:46:16 -07:00
Zou Nan hai
ec9e7bc753 ARB_shader_object ARB_vertex_shader ARB_fragment_shader in 965-glsl branch 2007-09-18 12:59:50 +08:00
Zou Nan hai
25bda451bb fix double free in 965-glsl branch 2007-09-18 11:32:25 +08:00
Xiang, Haihao
e21d2c6ef3 mesa: Always use the original mask to update stencil buffer
in stencil_and_ztest_pixels. fix #12263
2007-09-18 09:32:44 +08:00
Matthieu Castet
c29886718a nouveau : avoid vertex_size / 4 for each vertex ops 2007-09-16 23:33:10 +02:00
Matthieu Castet
7cc4d31ed9 nouveau : use GLfloat instead of uint32_t. After all, our vertex attributes are float. 2007-09-16 23:19:22 +02:00
Matthieu Castet
7356dac1b6 nouveau : implement nv10_render_points 2007-09-16 23:01:56 +02:00
Matthieu Castet
2616b20689 nouveau : fix nv10_render functions
use _tnl_RenderClipped helper functions that will call the right driver callback
clean nv10_render_generic_primitive_elts to match nv10_render style
2007-09-16 19:37:27 +02:00
Matthieu Castet
e605f2828f nouveau : opps I introduce a bug when cleaning vertex pos attribute swap patch 2007-09-16 18:57:03 +02:00
Matthieu Castet
3d17cdf55a revert a956184f70 2007-09-16 16:15:13 +02:00
Matthieu Castet
d42d5fdba0 nouveau : nv1x pos vertex attribute need to be the first in mesa.
Swap it latter in order it match hw format.
2007-09-16 16:13:55 +02:00
Matthieu Castet
8d9d990cb2 nouveau : use new nouveau_reg.h with correct Bracket in macro 2007-09-15 00:25:09 +02:00
Matthieu Castet
5e78356259 nouveau : check for nmesa->state_cache.atoms overflow 2007-09-14 22:13:52 +02:00
Matthieu Castet
63147344e4 nouveau : fix NV10_TCL_PRIMITIVE_3D_CLIP_PLANE 2007-09-14 22:07:34 +02:00
Brian
1cec9b727a fix bug 10604 2007-09-14 13:43:58 -06:00
Brian
18a4730f5b From trunk: mesa: bind VBO_ATTRIB_XXX to correct input array when executing a display list. fix #10604
This also fixes Bill Mitchell's Fortan/plot bug.
2007-09-14 13:43:09 -06:00
Brian
bb4a9b2dce added copypix.c test (test glCopyPixels w/ pixel zoom) 2007-09-14 09:59:08 -06:00
Brian
032707eeca fix copypixels overlap test bug (#12417) 2007-09-14 09:59:08 -06:00
Brian
1342aefcdd updated link 2007-09-14 09:57:16 -06:00
Brian
1fd4b1e702 fix glCopyPixel/glPixelZoom bug 12417) 2007-09-14 09:57:08 -06:00
Brian
32dff44c28 fix copypixels overlap test bug (#12417) 2007-09-14 09:56:05 -06:00
Xiang, Haihao
e04c58e068 mesa: bind VBO_ATTRIB_XXX to correct input array when
executing a display list. fix #10604
2007-09-14 16:26:56 +08:00
Xiang, Haihao
ea07a0df9a i965: align the address of the first element within
the index buffer. (fix#11910)
2007-09-14 11:10:23 +08:00
Brian
75a0f7f4a7 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-09-13 14:45:22 -06:00
Brian
d3c77cebff updated vrml link 2007-09-13 14:44:27 -06:00
Brian
885a95f4fa Fix timer problem when using Fortran bindings (submitted by Bill Mitchell)
Also, add some comments about what's going on.
2007-09-13 14:42:23 -06:00
Matthieu Castet
3a2559a1e9 nouveau : diable broken light enable on nv10 2007-09-13 22:13:39 +02:00
Brian
e7c2ae476a fix ARB fp/vp parsing bug 12313 2007-09-13 11:42:48 -06:00
Brian
ab31a3a764 added program_error2() function for better error reporting 2007-09-13 11:41:49 -06:00
Brian
a66301f83d added program_error2() function for better error reporting 2007-09-13 11:41:44 -06:00
Brian
a5f7d56221 Fix state.texgen parsing error (bug 12313).
Replace *(*inst++) with *(*inst)++ in a few places.
2007-09-13 11:29:51 -06:00
Brian
d799b7a7ec Fix state.texgen parsing error (bug 12313).
Replace *(*inst++) with *(*inst)++ in a few places.
2007-09-13 11:29:00 -06:00
Brian
f3419d5ead added .pc.in files to tarballs 2007-09-13 09:27:10 -06:00
Brian
140080c1ec added .pc.in files to tarballs 2007-09-13 09:27:06 -06:00
Brian
20b331c2f6 added null ptr check 2007-09-13 09:26:27 -06:00
Jonathan Bestien-Filiatrault
5fdeb52e5d check return value of invert_matrix() 2007-09-12 16:21:13 -06:00
Brian
ae0dd620fe Add glut_fcb.c to the build and update to fix warnings (see bug 12405) 2007-09-12 13:40:15 -06:00
Brian
642267b2d8 Rename. "fcb" = fortran call back 2007-09-12 13:37:10 -06:00
Jesse Barnes
ba5290e836 Remove unused plane->pipe mapping fields from SAREA private. 2007-09-12 09:34:38 -07:00
Brian
ef43af6d43 added DSTDIR, pkg-config items 2007-09-12 10:12:20 -06:00
Brian
949d0532f0 updated with pkg-config info 2007-09-12 10:12:06 -06:00
Brian
5bba58ca22 updated with pkg-config info 2007-09-12 10:11:49 -06:00
Dan Nicholson
96efc76d74 pkg-config support 2007-09-12 10:03:31 -06:00
Dan Nicholson
94617bc6d5 pkg-config support 2007-09-12 10:03:05 -06:00
Dan Nicholson
6ca0d63692 DESTDIR support. 2007-09-12 10:01:06 -06:00
Dan Nicholson
f5557c3a52 DESTDIR support. 2007-09-12 09:57:53 -06:00
Xiang, Haihao
95fc2485e2 i965: fix bug#11925 2007-09-12 16:58:45 +08:00
Xiang, Haihao
a0a5e8cfc0 i965: translate shadow compare function into correct
internal function to match the EXT_shadow_funs
spec. fix bug#11925
2007-09-12 16:51:45 +08:00
Xiang, Haihao
d6ce1e4834 i965: fix #11378 2007-09-12 15:29:11 +08:00
Xiang, Haihao
ae078e1a0a i965: revert commit 1a15b2169b,
and keep the instruction state unchanged after calling
brw_emit_tri_setup/brw_emit_line_setup when building setup
thread for SF_UNFILLED_TRIS.
2007-09-12 15:13:06 +08:00
root
9944174abc prefix some include filenames with shader/ 2007-09-11 15:24:43 -06:00
Brian
acfeb3b6ea Fix-up #includes to remove some -I options.
eg: #include "shader/program.h" and remove -I$(TOP)/src/mesa/program
2007-09-11 11:04:15 -06:00
Brian
a614877592 In _mesa_make_current(), don't unbind FBOs from the old context.
This fixes the X server crash reported by KeithP on Aug 29.
The old context's FBOs will be unreferenced during context destruction so
there's no memleak with this change.
2007-09-11 10:59:59 -06:00
Brian
2cc2b12fc7 fix indirect rendering crash 2007-09-11 10:59:10 -06:00
Brian
2259f81cf7 In _mesa_make_current(), don't unbind FBOs from the old context.
This fixes the X server crash reported by KeithP on Aug 29.
The old context's FBOs will be unreferenced during context destruction so
there's no memleak with this change.
2007-09-11 10:59:10 -06:00
Brian
791f12880f Update depth test state when binding new framebuffer object 2007-09-11 09:25:49 -06:00
Brian
7aa7373a64 fix comment 2007-09-11 09:25:49 -06:00
Brian
995e01a6bc Update depth test state when binding new framebuffer object 2007-09-11 09:23:13 -06:00
Brian
0c43ab6fbc fix comment 2007-09-11 09:23:13 -06:00
Jesse Barnes
7f6decf3e4 Merge branch 'master' of ssh://git.freedesktop.org/git/mesa/mesa 2007-09-11 03:55:40 -07:00
Jesse Barnes
78b7e49c84 intel: disentangle planes & pipes
This is the Mesa portion of the pipe & plane disambiguation.  Mesa needs to use
the new assumptions about plane vs. pipe mappings and should use the new SAREA
field names to avoid confusion.
2007-09-11 03:54:34 -07:00
Xiang, Haihao
2f186a190f i965: take the secondary color into account when drawing
bitmap. fix#10688
2007-09-11 17:03:07 +08:00
Xiang, Haihao
357893a873 i965: limit on LOD Bias, fix#11987 2007-09-11 17:02:15 +08:00
Xiang, Haihao
0aedb9a204 i965: take the secondary color into account when drawing
bitmap. fix#10688
2007-09-11 16:57:07 +08:00
Xiang, Haihao
241b7bc0a3 i965: limit on LOD Bias, fix#11987 2007-09-11 16:49:02 +08:00
Brian
24cd84162e clean-up (see bug 12317) 2007-09-10 08:37:09 -06:00
Brian
a17881da5f clean-up (see bug 12317) 2007-09-10 08:36:01 -06:00
Patrice Mandin
249ca55555 nouveau: nv10: check NULL pointers 2007-09-06 22:36:12 +02:00
Patrice Mandin
15a6bf9118 nouveau: init depth range 2007-09-06 22:33:22 +02:00
Patrice Mandin
7307ff80c9 nouveau: nv10: replace macros by loop to set vertex attributes 2007-09-06 20:00:25 +02:00
Patrice Mandin
8f9b9ac387 nouveau: need parenthesis around macro params, generator should be fixed 2007-09-06 19:58:59 +02:00
Patrice Mandin
a956184f70 Disable an assert for hw that do not emit POS as first vertex attrib, like nv1x 2007-09-06 19:12:58 +02:00
Patrice Mandin
db9f97e2ae nouveau: nv10: emit vertex data in proper order for nv1x hw 2007-09-05 23:37:18 +02:00
Brian
4872ee83a9 updated VC7 project files 2007-09-05 10:05:48 -06:00
Brian
9ceff4ac4c updated bug report guidelines 2007-09-05 10:04:37 -06:00
Christoph Kubisch
8822069e71 updated VC7 project files 2007-09-05 10:04:37 -06:00
Christoph Kubisch
5ec222a832 updated VC7 project files 2007-09-05 10:01:58 -06:00
Xiang, Haihao
1a15b2169b i965: only take non-varying attribute into account when
compiling sf_prog. fix bug#11378 (which is introduced by
commit d619cceea4)
2007-09-05 13:31:01 +08:00
Stephane Marchesin
8752a20dec nouveau: who needs nv03 ? 2007-09-04 23:21:21 +02:00
Patrice Mandin
ece08b7fd9 nouveau: nv10: need to transpose mesa model+proj matrix for hw 2007-09-04 19:17:06 +02:00
Brian
c2e1ee08b0 Use temporary matrix in __gluInvertMatrixd() to fix aliasing problem (see bugs 12269, 6748) 2007-09-03 16:22:14 -06:00
Brian
40438b3440 Use temporary matrix in __gluInvertMatrixd() to fix aliasing problem (see bugs 12269, 6748) 2007-09-03 16:21:12 -06:00
Patrice Mandin
2f8ff58c0e nouveau: nv10: forgot function to set modelview matrix 2007-09-03 23:42:33 +02:00
Patrice Mandin
c45bb05b3c nouveau: separate modelview and projection matrix updates 2007-09-03 23:10:55 +02:00
Xiang, Haihao
cb7da3f096 i965: Correct build_lighting in i965 driver according to
commit 6dd98e9853.
2007-09-01 15:43:15 +08:00
Xiang, Haihao
e0b80660c8 fix bug#11009 2007-09-01 15:31:49 +08:00
Xiang, Haihao
a2016301f5 i965: Take the upper limitation on LOD into account. 2007-09-01 15:14:58 +08:00
Brian
6dd98e9853 Fix problem introduced in previous commit in which a state variable (uniform) is written to. (see bug 12239)
Also, added some assertions to the emit_arg() and emit_dst() functions to
catch this kind of error in the future.
2007-08-31 16:42:05 -06:00
Brian
7ec6729fb6 sync with trunk, fixing bug 12239 2007-08-31 16:36:17 -06:00
Brian
837a2cf72e fix i965 bugs, x86-64 bugs 2007-08-31 16:35:38 -06:00
Patrice Mandin
47768ce0e5 nouveau: nv10: remove setting projection matrix when scaling viewport 2007-08-31 19:46:39 +02:00
Patrice Mandin
b0a1e81887 nouveau: add hw-dependent function to update modelview*projection matrix 2007-08-31 19:46:39 +02:00
Xiang, Haihao
214347fdb4 i965: Calculate the positional light in homogeneous coordinates.
fix bug#11009
2007-08-31 16:50:48 +08:00
Zou Nan hai
b47c9f8c91 optimize 965 clip
1. increase clip thread number to 2
  2. do cliptest for -rhw
2007-08-31 13:42:20 +08:00
Xiang, Haihao
22bc3cdd49 i965: Take the upper limitation on LOD into account. 2007-08-31 12:51:36 +08:00
Roland Scheidegger
0adca14536 fix another occurence of movaps which might not be aligned 2007-08-31 00:06:30 +02:00
David Moore
1dd94a63ac Bug #10571: Fix 965 line clipping when neither vertex needs clipping. 2007-08-30 14:45:56 -07:00
Roland Scheidegger
74e1d0996d fix another occurence of movaps which might not be aligned 2007-08-30 18:04:49 +02:00
Brian
57b0f66c6d s/movaps/movups/ (see bug 12216) 2007-08-30 08:41:43 -06:00
Brian
3b7df51eb5 s/movaps/movups/ (see bug 12216) 2007-08-30 08:41:38 -06:00
Xiang, Haihao
e47e7a9571 i965: store read drawable info in intel_context. Some OpenGL
operations are based on read drawable. fix bug#10136.
2007-08-30 14:06:26 +08:00
Xiang, Haihao
68ca01560f i965: check NULL pointer. fix bug#12193 2007-08-30 14:06:19 +08:00
Xiang, Haihao
64f1c91fcb i965: samplers group in fours in WM_STATE. fix bug#9415 2007-08-30 14:05:56 +08:00
Xiang, Haihao
7d33f94198 i965: flush batch buffer when getting the maximum. This makes
some 3D programs such as pymol work well.
2007-08-30 14:05:39 +08:00
Xiang, Haihao
bad6e175cf i965: store read drawable info in intel_context. Some OpenGL
operations are based on read drawable. fix bug#10136.
2007-08-29 15:11:10 -04:00
Xiang, Haihao
f6a89e1884 i965: check NULL pointer. fix bug#12193 2007-08-29 13:03:34 -04:00
Xiang, Haihao
410d8f7cdb i965: samplers group in fours in WM_STATE. fix bug#9415 2007-08-29 10:13:10 -04:00
Keith Packard
500193dca8 Add register defines for hw binning 2007-08-28 12:27:51 -07:00
Xiang, Haihao
c235cc71a2 i965: flush batch buffer when getting the maximum. This makes
some 3D programs such as pymol work well.
2007-08-28 11:35:52 -04:00
Julien Cristau
369cda3752 Prepare changelog for upload. 2007-08-28 12:11:47 +02:00
Julien Cristau
846078d06f Delete generated files. 2007-08-28 12:07:45 +02:00
Julien Cristau
b18500d56e * Update to latest git (from mesa_7_0_branch)
+ adds support for some new intel chipsets (i915 and i915_tex dri drivers)
    (closes: #437333)
  + broken inline asm in dri drivers fixed (closes: #423739)
2007-08-28 12:07:25 +02:00
Julien Cristau
7d92c50490 Merge branch 'mesa_7_0_branch' of git.freedesktop.org:/git/mesa/mesa into debian-unstable 2007-08-28 11:06:22 +02:00
Brian
3a484cd794 added --noclear option to demonstrate rendering without glClear 2007-08-27 12:00:19 -06:00
Brian
d69a596193 Fixed bugs 6748, 12141 2007-08-27 10:48:31 -06:00
Colin McDonald
8aa4ae638e fixed problem with big glDrawArrays (see bug 12141) 2007-08-27 10:47:49 -06:00
Colin McDonald
d62be3d4ca fixed problem with big glDrawArrays (see bug 12141) 2007-08-27 10:47:32 -06:00
Brian
3069f34841 new __gluInvertMatrix() function (Mesa bug 6748) 2007-08-27 10:36:25 -06:00
Brian
f0a036bad9 new __gluInvertMatrix() function (Mesa bug 6748) 2007-08-27 10:36:11 -06:00
Patrice Mandin
c28ea5573d nouveau: nv10: set total stride of vertex array for POS attribute 2007-08-27 11:45:30 +02:00
Patrice Mandin
24967c8646 nouveau: nv10: also set modelview0 matrix to identity 2007-08-25 17:46:53 +02:00
Patrice Mandin
40ecc4a359 nouveau: nv10: add a scissor func, do not cache viewport settings 2007-08-25 12:36:03 +02:00
Patrice Mandin
1a911aad0a nouveau: nv10: properly set viewport and projection 2007-08-25 11:39:04 +02:00
Adam Jackson
b3788a0e4f Unbreak Linux builds with -fvisibility=hidden. 2007-08-24 08:49:59 +01:00
Brian
f8e4cf716a remove CallDepth++/-- accidentally removed in prev commit 2007-08-24 08:45:37 +01:00
Brian
582bc029ab remove CallDepth++/-- accidentally removed in prev commit 2007-08-24 08:45:27 +01:00
Adam Jackson
1f8616e622 Unbreak Linux builds with -fvisibility=hidden. 2007-08-23 18:38:02 -04:00
Brian
4b654d41da For _mesa_share_state(), update the context's references to the new share group's objects (Shane Blackett) 2007-08-23 08:53:43 +01:00
Brian
dbef6158c6 remove unneeded CallStack array 2007-08-23 08:19:31 +01:00
Brian
e9e3099433 remove unneeded CallStack array 2007-08-23 08:17:35 +01:00
Patrice Mandin
a3750c989b nouveau: nv10: set projection matrix from viewport size 2007-08-22 11:01:59 +02:00
Patrice Mandin
24746d0e32 nouveau: nv10: initialize more of nv10 tcl engine 2007-08-22 10:28:13 +02:00
Patrice Mandin
3d508a5d7b nouveau: nv10: Move some initialization stuff 2007-08-21 16:55:42 +02:00
Patrice Mandin
a6d35694c4 nouveau: Use proper notifier object 2007-08-21 16:53:13 +02:00
Patrice Mandin
c6e729377c nouveau: nv10: Remove commented, unsupported by hw command 2007-08-21 16:52:10 +02:00
Patrice Mandin
07b7e97fb4 Use correct object for GART 2007-08-20 19:36:52 +02:00
Brian
d8c6719f95 refactor bounds checking code 2007-08-20 13:12:20 +01:00
Brian
4fc561cc7b refactor bounds checking code 2007-08-20 13:12:10 +01:00
Brian
a3c3bc9ece don't map buffer in _mesa_validate_DrawElements() unless needed 2007-08-20 12:56:34 +01:00
Brian
ad3e3a0b99 don't map buffer in _mesa_validate_DrawElements() unless needed 2007-08-20 12:55:26 +01:00
Patrice Mandin
ef71a0fd45 nouveau: nv10: only one color buffer atm 2007-08-19 20:12:26 +02:00
Brian
53cf87be1b some fixes for compressed cube maps (bug 11986) 2007-08-18 16:25:16 +01:00
Brian
95e84a09ce remove dead code left over after fixing GL_READ/DRAW_BUFFER state issues 2007-08-18 16:11:31 +01:00
Xiang, Haihao
dcfdb63b9f Brian's fix for bug9829 2007-08-17 13:36:13 -04:00
Xiang, Haihao
00b86ecf6f i965: align width/height for volume texture 2007-08-17 12:42:52 -04:00
Eric Anholt
3e168a0ec8 Convert TTM code to require the server provide buffers for front/back/depth.
This removes the use of fake buffers from the driver, such that it could
probably be removed from the interface.  It also should assist in proper
synchronization of access.
2007-08-16 14:38:33 -07:00
Eric Anholt
b6ad5e7de8 Move i915_disasm to later so we can use the hardware offset. 2007-08-16 14:37:26 -07:00
Eric Anholt
64297acf9e Fix bad printf on TTM fence_wait failure. 2007-08-16 14:35:06 -07:00
Eric Anholt
2b77a8696b Don't forget to update buffer offset after validation. 2007-08-16 14:34:24 -07:00
Eric Anholt
327e655119 Add decode for XY_COLOR_BLT and XY_SRC_COPY_BLT. 2007-08-16 14:28:12 -07:00
Patrice Mandin
b902a223c4 nouveau: nv10: clear a buffer 2007-08-16 21:50:34 +02:00
Patrice Mandin
a60695ebaf nouveau: nv10: add function to clear a buffer 2007-08-16 21:31:30 +02:00
Patrice Mandin
fe78980580 nouveau: store render buffer pointers in context, to access them when clearing buffer 2007-08-16 21:28:40 +02:00
Patrice Mandin
f5ed049655 nouveau: nv10: create objects needed to clear buffer 2007-08-16 20:53:29 +02:00
Brian
32d86eb28a Rework the GL_READ_BUFFER, GL_DRAW_BUFFER state repairs that Roland previously did.
Basically, in update_framebuffer() (which should be called after an FBO is bound
with MakeCurrent or BindFramebuffer) we check if the FBO is a window-system FBO.
If it is, update the FBO's GL_READ/DRAW_BUFFER state according to the context state.
Old code still in place but disabled with #if 0 / #endif.
2007-08-16 18:52:48 +01:00
Brian
c033ccc36d update comments, etc related to Read/DrawBuffer state 2007-08-16 16:49:35 +01:00
Brian
c5a5d12743 remove reference to ctx->Color.DrawBuffer 2007-08-16 16:43:31 +01:00
Brian
09867b53a9 replace Proxy1D/2D/etc fields with ProxyTex[] array 2007-08-16 11:06:39 +01:00
Brian
fe46900703 Replace Proxy1D/2D/etc with ProxyTex[] indexed by TEXTURE_x_INDEX.
Simplification in colortab.c too.
2007-08-16 11:06:13 +01:00
Brian
0135ff512d replace separate 1D/2D/etc fields with an array indexed by texture target 2007-08-16 10:28:23 +01:00
Brian
b3e3e72e25 remove old Saved1D/2D/etc fields 2007-08-16 10:27:24 +01:00
Brian
145d762044 Bring over the texobj refcounting changes from mesa_7_0_branch 2007-08-16 10:05:00 +01:00
Brian
bfb8c849cb Remove recent texobj refcount debug/logging code. 2007-08-16 09:11:11 +01:00
Michel Dänzer
2193c4de83 i915tex: Unreference texture buffers on context destruction.
Not doing this could cause the buffers to leak under some circumstances.
2007-08-16 08:46:55 +02:00
Michel Dänzer
09dd25b5d1 i915tex: Unreference texture buffers on context destruction.
Not doing this could cause the buffers to leak under some circumstances.
2007-08-16 08:45:16 +02:00
Roland Scheidegger
c48efb1dbe suppress warning about ncon visuals (bug #6689) 2007-08-16 02:43:45 +02:00
Roland Scheidegger
a6d4dddb38 suppress warning about ncon visuals (bug #6689) 2007-08-16 02:41:03 +02:00
Brian
5408acb6b7 log deleting/binding of FBOs 2007-08-15 15:47:28 +01:00
Brian
15481160f9 more debug output (context destroy, fb destroy) 2007-08-15 12:52:00 +01:00
Brian
00ccff03a5 Rewrite quite a bit of the code for glPush/PopAttrib() for texture state.
Remove the Saved1D/2D/etc fields from gl_texture_attrib in mtypes.h
Use a new texture_state struct in attrib.c that has the extra information
for restoring texture object state and saving references to the texture
objects (so they can't accidentally get deleted while referenced by the
attribute stack).  All the texobj refcounting is mutex-protected now.
2007-08-15 11:21:06 +01:00
Brian
21594921b1 copy Target in _mesa_copy_texture_object() 2007-08-15 11:18:38 +01:00
Brian
42c91eebc9 Added _mesa_free_attrib_data() to free anything left in the attribute stack upon context destruction.
Also, a bit more refcount debug info.
2007-08-15 10:10:02 +01:00
Brian
88273e08b4 more tex obj ref count debugging (temporary) 2007-08-15 08:55:03 +01:00
Xiang, Haihao
ab99960858 i965: use BRW_TEXCOORDMODE_CLAMP instead of BRW_TEXCOORDMODE_CLAMP_BORDER
to implement GL_CLAMP
2007-08-15 13:28:00 +08:00
Ben Skeggs
c2ac825e67 nouveau: Use half the notifier block for query objects. 2007-08-15 14:31:26 +10:00
Ben Skeggs
ecfa3e4d0a nouveau: Keep drm channel alloc struct around. 2007-08-15 14:31:26 +10:00
Ben Skeggs
3cc4e9815d nouveau: reindent nouveau_span.c 2007-08-15 14:31:26 +10:00
Ben Skeggs
fcbd06d201 nouveau: Remove ALLOW_MULTI_SUBCHANNEL hack
Irrelevant, since we depend on working context switching now.
2007-08-15 14:31:25 +10:00
Ben Skeggs
fef3dcbee6 nouveau: Always render offscreen, emulate front buffer rendering. 2007-08-15 14:31:25 +10:00
Ben Skeggs
b7c93de6d7 nouveau: Split nouveau_buffers into nouveau_mem and nouveau_fbo 2007-08-15 14:31:25 +10:00
Ben Skeggs
40e8ce700b nouveau: reindent nouveau_buffers.h 2007-08-15 14:31:25 +10:00
Ben Skeggs
386a70eeb5 nouveau: reindent nouveau_buffers.c 2007-08-15 14:31:25 +10:00
Ben Skeggs
553f5759a6 nouveau: Lets only do private buffers. 2007-08-15 14:31:25 +10:00
Brian
08f7fb45ef added some temporary texobj ref counting debug output 2007-08-14 19:45:02 +01:00
Brian
dc73217294 Fix a few more problems with freeing FBOs/textures during context destruction.
Free FBOs before textures since the later may be referenced by the former.
Need to bind the context we're destroying if there isn't a current context
so that ctx->DeleteTexture() etc can be used.
2007-08-14 11:58:37 +01:00
Brian
75ebda3ce6 Fix a few more problems with freeing FBOs/textures during context destruction.
Free FBOs before textures since the later may be referenced by the former.
Need to bind the context we're destroying if there isn't a current context
so that ctx->DeleteTexture() etc can be used.
2007-08-14 11:57:16 +01:00
Xiang, Haihao
5dab3bf4bc xdemo case: Wei Wang's patch for bug#9759 2007-08-14 11:39:23 +08:00
Brian
53ff15fcbf fix blending/banding bug 2007-08-13 21:17:04 +01:00
Dan Torop
72adb70ee2 fix spantmp2 READ_RGBA inline asm (#11931) 2007-08-13 21:14:51 +01:00
Brian
960d41fcfe added more i915/945 chipsets 2007-08-13 21:11:17 +01:00
Brian
0c4e35b070 Add PCI IDs for the G33, Q33, and Q35 chipsets.
Conflicts:

	src/mesa/drivers/dri/i915/i915_texstate.c
	src/mesa/drivers/dri/i915/intel_context.c
	src/mesa/drivers/dri/i915/intel_context.h
	src/mesa/drivers/dri/i915/intel_screen.c
	src/mesa/drivers/dri/i915/intel_tex.c
2007-08-13 21:06:33 +01:00
Wang Zhenyu
c53f1cb813 i915tex: Add support for 945GME 2007-08-13 21:00:28 +01:00
Brian
393a625538 free any render/framebuffers left in hash tables when freeing shared state 2007-08-13 17:39:29 +01:00
Brian
f6696cc15e free any render/framebuffers left in hash tables when freeing shared state 2007-08-13 17:39:05 +01:00
Michel Dänzer
b7a9222dc7 i915tex: Make sure pitch is aligned properly for render-to-texture.
Just always align texture pitch to multiples of 64 bytes for now, pending a
more sophisticated scheme to do it only when really necessary.
2007-08-13 17:58:45 +02:00
Michel Dänzer
fef9a41fe4 i915tex: Make sure pitch is aligned properly for render-to-texture.
Just always align texture pitch to multiples of 64 bytes for now, pending a
more sophisticated scheme to do it only when really necessary.
2007-08-13 13:22:43 +02:00
Brian
9e01b915f1 Implement mutex/locking around texture object reference counting.
Use new _mesa_reference_texobj() function for referencing/unreferencing
textures.  Add new assertions/tests to try to detect invalid usage of
deleted textures.
2007-08-13 11:29:46 +01:00
Brian
e279a0a076 Implement mutex/locking around texture object reference counting.
Use new _mesa_reference_texobj() function for referencing/unreferencing
textures.  Add new assertions/tests to try to detect invalid usage of
deleted textures.
2007-08-13 11:28:52 +01:00
Brian
6f47250888 added some missing Default1D/2DArray texture code 2007-08-13 11:10:32 +01:00
Xiang, Haihao
88451b04e9 i965: fix projtex_mask
projtex_mask is only an 8bit field, and wm.input_size_masks includes
other attributes' information, therefore right shift is needed.
2007-08-13 17:16:27 +08:00
Xiang, Haihao
c9e4aa2b30 i915: satisfy certain alignment restrictions for small
compressed texture
2007-08-13 11:43:37 +08:00
Dan Torop
21b37b9687 fix spantmp2 READ_RGBA inline asm (#11931) 2007-08-12 13:41:13 +02:00
Keith Whitwell
6ea55d3525 Make it easier to compare against the pipe driver debug code. 2007-08-11 13:48:19 +01:00
Keith Whitwell
c60113cd41 Improve debugging further.
Pull apart some key packets into individual fields and print sanely.
2007-08-11 13:40:22 +01:00
Keith Whitwell
4a789e408d Better debugging 2007-08-11 09:55:10 +01:00
Xiang, Haihao
db928291dc i965: roland's DXTn format texture patch(bug10347) 2007-08-10 16:37:30 +08:00
Xiang, Haihao
8ea66fa2ec i965/i915tex: applying right alignment to compressed texture,
which make small textures(4x4,2x2,1x1) work well.
2007-08-10 16:23:14 +08:00
Xiang, Haihao
2cafd749b8 i965: set mt->cpp differently with compressed texture 2007-08-10 15:14:12 +08:00
Brian
88c8aaed96 fix link to 7.0.1 relnotes 2007-08-09 15:59:38 +01:00
Julien Cristau
34beaefe1c Prepare changelog for upload. 2007-08-09 16:00:58 +02:00
Julien Cristau
10b828f193 New upstream release. 2007-08-09 11:56:00 +02:00
Julien Cristau
43e6260ed0 Merge tag 'mesa_7_0_1' into debian-experimental 2007-08-09 11:25:42 +02:00
Brian
48c37a29fa fix byte swap bug for GLint stencil indexes (bug 11909) 2007-08-09 08:49:05 +01:00
Brian
62cbbd7226 fix byte swap bug for GLuint stencil indexes (bug 11909) 2007-08-09 08:45:01 +01:00
Carlos Martín Nieto
6a78221a10 nouveau: Missing notifier -> notifierobj migration
I missed this in the original migration.
2007-08-08 14:49:37 +02:00
Brian
f7cbe7fcee move free() after dereference (bug 11878) 2007-08-07 22:06:48 +01:00
Brian
3973d1ad33 move free() after dereference (bug 11878) 2007-08-07 22:06:08 +01:00
Brian
e45b40381c parse standard -geometry option 2007-08-07 22:02:27 +01:00
Brian
90cc31f31b fix potential NULL dereference (bug 11879) 2007-08-07 21:57:29 +01:00
Brian
d8e4ff9079 fix potential NULL dereference (bug 11879) 2007-08-07 21:56:39 +01:00
Brian
510ff27eda remove SHELL line, replace -e test with new logic (Daniel Stone) 2007-08-07 21:52:22 +01:00
Brian
1223b75e63 remove SHELL line, replace -e test with new logic (Daniel Stone) 2007-08-07 21:51:46 +01:00
Brian
237b985356 fix potential NULL dereference (bug 11880) 2007-08-07 21:48:31 +01:00
Brian
5abf055100 fix potential NULL dereference (bug 11880) 2007-08-07 21:46:42 +01:00
Brian
4bb5721f6b fix swizzle error test (bug 11881) 2007-08-07 21:43:46 +01:00
Brian
872d179141 fix swizzle error test (bug 11881) 2007-08-07 21:42:34 +01:00
Ingo Molnar
4a8ad16ec0 glxgears: Add an x/y window size parameter. 2007-08-07 09:57:02 +02:00
Brian
c41ab70d3a initial 7.0.2 notes 2007-08-07 08:44:35 +01:00
Brian
a05e403bf2 fix bug 9962 (vbo splitting) as in trunk 2007-08-07 08:43:31 +01:00
Brian
2f57e0f71d Merge branch 'mesa_7_0_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into mesa_7_0_branch 2007-08-07 08:21:50 +01:00
Brian
95a2eb9767 fix even-sized point positioning (bug 11874) 2007-08-07 08:20:18 +01:00
Brian
0ed3ff5011 fix even-sized point positioning (bug 11874) 2007-08-07 08:17:02 +01:00
Xiang, Haihao
d05b721543 fix vbo_split_copy related bug 9962 2007-08-07 08:21:28 +08:00
Carlos Martín Nieto
75a88e9082 nouveau: update to DRM API patchlevel 10
Finally let DRI build for nouveau.
2007-08-07 01:00:29 +02:00
Brian
55175daed7 added md5 sums 2007-08-03 13:54:55 -06:00
Brian
ae16a51e95 added GLU bug fixes 2007-08-03 13:39:09 -06:00
Brian
4398d67546 update 7.0.1 release info/date 2007-08-03 13:32:47 -06:00
Brian
c93738687c remove -rc2 2007-08-03 13:32:28 -06:00
Brian
23f71f2ea5 add OSMESA_LIB_NAME 2007-08-03 10:08:39 -06:00
Brian
799492e606 add OSMESA_LIB_NAME 2007-08-03 10:08:16 -06:00
Brian
f33ff071bb added -lm 2007-08-03 07:24:33 -06:00
Brian
002942913d added -lm 2007-08-03 07:24:11 -06:00
Brian
792b882cf6 fix missing backslash 2007-08-02 20:26:49 -06:00
Eric Anholt
101563a838 Don't try to use kernel BO flags in dri_bufmgr_fake internals. 2007-08-02 15:55:42 -07:00
Brian
99e854743c added bluegene-osmesa 2007-08-02 14:24:05 -06:00
Brian
6f79062d91 OSmesa on BlueGene (Alexander Neundorf) 2007-08-02 14:22:52 -06:00
Brian
2d72da5692 added bluegene-osmesa 2007-08-02 14:22:13 -06:00
Brian
2457f4cf67 OSmesa on BlueGene (Alexander Neundorf) 2007-08-02 14:22:02 -06:00
Brian
2f682c3995 fix stencil value masking bug 11805, and fix sizeof() bug 2007-08-02 09:08:53 -06:00
Brian
2c3cb693cc fix stencil value masking bug 11805, and fix sizeof() bug 2007-08-02 09:08:29 -06:00
Brian
e2556b7487 remove unnecessary null check (bug 11814) 2007-08-02 08:44:34 -06:00
Brian
067370e68f fix invalid pointer usage in bezierPatchDeleteList(), bug 11807 2007-08-02 08:40:58 -06:00
Brian
85421351e6 fix invalid pointer usage in bezierPatchDeleteList(), bug 11807 2007-08-02 08:40:29 -06:00
Brian
2aa439a6a4 fix double free()s (bug 11808) 2007-08-02 08:38:10 -06:00
Brian
89cad79b41 fix double free()s (bug 11808) 2007-08-02 08:38:01 -06:00
Brian
b477182dc3 s/MAX_TEXTURE_LEVELS/SIS_MAX_TEXTURE_LEVELS/ and add assertion (bug 11806) 2007-08-02 08:35:27 -06:00
Brian
6e6a02261a s/MAX_TEXTURE_LEVELS/SIS_MAX_TEXTURE_LEVELS/ and add assertion (bug 11806) 2007-08-02 08:35:13 -06:00
Brian
6dae3f8c88 move code to prevent NULL ptr dereference (bug 11810) 2007-08-02 08:31:44 -06:00
Brian
c3e6bfc9e2 Remove some code that was never hit (bug 11811).
Also added an assertion to check that NR_MAT_ATTRIBS == MAT_ATTRIB_MAX.
In the unlikely event this ever changes, maybe restore the code.
2007-08-02 08:29:55 -06:00
Keith Whitwell
46ac453196 Fix typo in logic for unalias2() 2007-08-02 11:39:19 +01:00
Michel Dänzer
a8964ca89e i915tex: Better attempt to release miptree when overriding texture image.
The previous approach could lead to crashes in FBO code that dereferences the
miptree struct pointer unconditionally.
2007-08-02 12:14:03 +02:00
Zou Nan hai
505453a04e fix fd.o bug #11804
glPolygonMode with point sprite on i965
2007-08-02 15:27:13 +08:00
Zou Nan hai
246d1d2522 Fix previous commit 2007-08-02 14:35:59 +08:00
Zou Nan hai
6bf81a5edf EXT_texture_sRGB support on i965 2007-08-02 14:26:12 +08:00
Brian
4f0e92d07c Merge branch 'mesa_7_0_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into mesa_7_0_branch 2007-08-01 17:03:09 -06:00
Brian
577f4e8a5f Obsolete 2007-08-01 11:45:47 -06:00
Brian
0586d9fe56 fix error code test limit (bug 11795) 2007-08-01 11:27:47 -06:00
Brian
394e7575a3 fix error code test limit (bug 11795) 2007-08-01 11:27:29 -06:00
Brian
261eac3c79 triangle rasterization with frag shader 2007-08-01 11:13:25 -06:00
Brian
15b7c9d5ba added trirast program 2007-08-01 11:12:51 -06:00
Michel Dänzer
1f0d9bf05e i915tex: Missing piece of SetTexOffset hook implementation for I830 generation. 2007-08-01 17:46:32 +02:00
Michel Dänzer
8bcae2a527 i915tex: Implement SetTexOffset hook.
Only build tested for I830 generation.
2007-08-01 17:46:31 +02:00
Michel Dänzer
35ca9aae91 r300: Implement SetTexOffset hook. 2007-08-01 17:46:30 +02:00
Michel Dänzer
6cdd2bf8d7 Add interfaces for overriding texture images with driver specific 'offsets'.
To be used by AIGLX for GLX_EXT_texture_from_pixmap without several
additional data copies.
2007-08-01 17:46:29 +02:00
Brian
f761c99d25 fix mem leak (bug 11793) 2007-08-01 08:43:58 -06:00
Brian
e9fbf69aea fix mem leak (bug 11791) 2007-08-01 08:43:58 -06:00
Brian
ce7d175adb fix mem leak (bug 11793) 2007-08-01 08:42:13 -06:00
Brian
1904fd095f fix mem leak (bug 11791) 2007-08-01 08:42:09 -06:00
Zou Nan hai
a6dad044e2 fix fd.o bug #11788, max point size 2007-08-01 11:08:05 +08:00
Brian
897d0ac5cc fix some FreeBSD issues 2007-07-31 14:57:54 -06:00
Brian
6fae66715b fix some FreeBSD issues 2007-07-31 14:57:37 -06:00
Eric Anholt
9c61925da0 bufmgr_fake: eliminate the referenced list, which is now just on_hardware. 2007-07-31 09:24:06 -07:00
Eric Anholt
5e2acfee78 Don't initialize extensions we can't support when !ttm. 2007-07-31 09:24:04 -07:00
Eric Anholt
05fe75e619 Add missing -g in FreeBSD OPT_CFLAGS 2007-07-31 09:24:01 -07:00
Brian
8410b3f8f9 fix failure caused by undeclared variable (bug 11783) 2007-07-31 09:43:57 -06:00
Brian
e262d0182f fix failure caused by undeclared variable (bug 11783) 2007-07-31 09:43:40 -06:00
Brian
2c0b3d8c4b added sunos5-v9-cc-g++ config 2007-07-31 09:32:28 -06:00
Brian
59b1233e70 glGetAttribLocation always returned 1 (bug 11774) 2007-07-31 09:32:28 -06:00
Brian
aa5b748c10 glGetAttribLocation always returned 1 (bug 11774) 2007-07-31 09:29:31 -06:00
Xiang, Haihao
e66757c8ba i965: fix bad casts in do_blit_bitmap to support WindowPos correctly 2007-07-31 22:40:42 +08:00
Julien Cristau
c6728df4a3 Merge tag 'mesa_7_0_1_rc2' into debian-experimental 2007-07-31 04:00:13 +02:00
Xiang, Haihao
69337ed098 i965: Use I16_UNORM instead of L16_UNORM (bug 11742) 2007-07-31 09:10:31 +08:00
Xiang, Haihao
982dcb74fd Fix an error in _save_OBE_DrawElements
In the case that a buffer object is bound to
ELEMENT_ARRARY_BUFFER, it is invalid to directly
dereference indices passed to glDrawElements.
2007-07-31 00:11:22 +08:00
Xiang, Haihao
2394d20daf Fix an error in _mesa_validate_DrawElements
The field 'Data' in an obj is NULL in some dri drivers(such
as i965). Use mapped pointer instead.
2007-07-30 23:50:52 +08:00
Brian
58f9f96c68 New sunos5-v9-cc-gcc config (Roland Egger) 2007-07-30 09:01:02 -06:00
Brian
3c182c5bc8 Added sunos5-v9-cc-g++ config (Roland Egger) 2007-07-30 09:00:09 -06:00
Brian
5c6f1f542b misc comments, clean-ups 2007-07-30 08:52:57 -06:00
Brian
baac66cb05 remove old comment, minor formatting fixes 2007-07-30 08:13:40 -06:00
Brian
1b5677847b _mesa_pack_bitmap() fix from trunk 2007-07-30 08:13:05 -06:00
Brian
1be59a9dbe dlist polygon stipple fix from trunk 2007-07-30 08:12:29 -06:00
Xiang, Haihao
501b5305b9 handle LSB_FIRST in _mesa_pack_bitmap by the way used in
_mesa_unpack_bitmap
2007-07-30 16:30:32 +08:00
Xiang, Haihao
775ebb696d Fix an error related to glPolygonStipple.
As glPixelStore(GL_UNPACK) affect the bits into a stipple pattern,
hence 128 bytes used to store the pattern in a display list aren't
enough sometimes.
2007-07-30 16:17:40 +08:00
Zou Nan hai
60179434d1 ARB sprite point support on i965 2007-07-30 10:18:11 +08:00
Brian
e5213be78e added a few more functions 2007-07-29 18:28:46 -06:00
Brian
55c2178ad4 fix bug 11754 2007-07-29 18:28:09 -06:00
Jan Dvorak
3e3d392e1c fix glPointParameteriv bug 11754 2007-07-29 18:26:55 -06:00
Jan Dvorak
eefb04a2b8 fix glPointParameteriv bug 11754 2007-07-29 18:26:22 -06:00
Brian
aa71b8869b Added shader points and shader bitmap demos 2007-07-29 18:04:23 -06:00
Roland Scheidegger
ab02552cdd fix cos/sin range reduction for i915 driver too 2007-07-29 19:44:55 +02:00
Roland Scheidegger
dde814776c fix range reduction for sin/cos in i915tex (#11609) 2007-07-29 19:43:37 +02:00
Roland Scheidegger
10f5a6ac85 fix fallback crashes when driver can't handle frag prog for i915 driver too (untested) 2007-07-29 18:31:36 +02:00
Roland Scheidegger
a188ba4bf9 Fix crashes when the frag prog can't be handled in hardware (#11131)
Must not change to/from swrast after Render.Start or bad things will happen.
(Driver will still somewhat incorrectly report an implementation error,
and apps can't really figure out if a prog is natively supported as validation
is later - could try doing it earlier to give some hint at least, even though
native status may still change later due to fog etc.)
2007-07-29 18:09:35 +02:00
Julien Cristau
593de57fa2 Prepare changelog for upload. 2007-07-27 20:18:21 +02:00
Julien Cristau
04b0e43ea6 New upstream release candidate. 2007-07-27 19:59:38 +02:00
Julien Cristau
04eee290c8 Merge branch 'mesa_7_0_branch' of git://anongit.freedesktop.org/git/mesa/mesa into debian-experimental 2007-07-27 19:58:30 +02:00
Brian
756a7a4e4b minor tweaks 2007-07-27 11:44:55 -06:00
Zhang
35f35294cd more Mingw32 fixes 2007-07-27 11:19:35 -06:00
Brian
121b4ac220 More Mingw32 fixes from Zhang (zxpmyth@yahoo.com.cn) 2007-07-27 11:12:21 -06:00
Brian
cdbd5db3af release candidate 2 2007-07-27 11:10:00 -06:00
Brian
0fb0d9715c fix-up inlined/non-inlined function inconsistencies 2007-07-26 16:42:05 -06:00
Brian
b2240f6ad4 fix bug 11731 2007-07-26 15:33:39 -06:00
Brian
33814a55f8 Fix function call bug 11731. Also, fix up IR_CALL/IR_FUNC confusion. 2007-07-26 15:32:34 -06:00
Brian
e3cef58875 Fix function call bug 11731. Also, fix up IR_CALL/IR_FUNC confusion. 2007-07-26 15:32:02 -06:00
Brian
a57c5a417b generate error upon writing to varying var in fragment program (bug 11733) 2007-07-26 11:39:37 -06:00
Brian
9ed040c3c9 generate error upon writing to varying var in fragment program (bug 11733) 2007-07-26 11:39:11 -06:00
Brian
daaee90a26 clamp float colors 2007-07-26 08:22:47 -06:00
Brian
51b728cf9a fix color interpolation for CHAN_BITS==32 2007-07-26 08:22:28 -06:00
Brian
efda5cb626 don't use rgba_line() if CHAN_BITS==32 2007-07-26 08:22:09 -06:00
Brian
ff1a28de17 clamp float colors 2007-07-26 08:19:40 -06:00
Eric Anholt
9a4cc2e905 Add notes about bufmgr initialization failures. 2007-07-25 10:12:23 -07:00
Jouk
eb9a5b6d51 Merge branch 'master' of git+ssh://joukj@git.freedesktop.org/git/mesa/mesa 2007-07-25 10:16:11 +02:00
Brian
03ec41ddc5 remove unused MAX_3D_TEXTURE_SIZE, reformattting 2007-07-24 17:45:14 -06:00
Brian
772f57f99b call ctx->Driver.NewProgram() instead of _mesa_new_program() 2007-07-24 09:56:54 -06:00
Brian
5b6858c023 call ctx->Driver.NewProgram() instead of _mesa_new_program() 2007-07-24 09:56:44 -06:00
Brian
dacee32b8b fix logic error, typos 2007-07-24 09:19:44 -06:00
Brian
ffc633c469 fix logic error, typos 2007-07-24 09:19:22 -06:00
Zou Nan hai
c702a7100e DDX DDY support, not very accurate 2007-07-24 11:09:34 +08:00
Brian
fa1a3eb06d fix GLX_STEREO bug 2007-07-23 16:54:35 -06:00
Brian
da2f1e88bc fix GLX_STEREO handling (bug 11705) 2007-07-23 16:51:57 -06:00
Brian
bd4817ca54 fix GLX_STEREO handling (bug 11705) 2007-07-23 16:51:03 -06:00
Julien Cristau
d3a160e217 New upstream release candidate. 2007-07-23 16:39:48 +02:00
Julien Cristau
c5837f2791 Merge branch 'mesa_7_0_branch' of git://anongit.freedesktop.org/git/mesa/mesa into debian-experimental 2007-07-23 16:28:56 +02:00
Julien Cristau
490bd43f18 Merge branch 'debian-unstable' of git+ssh://git.debian.org/git/pkg-xorg/lib/mesa into debian-experimental
Conflicts:

	debian/changelog
2007-07-23 16:28:10 +02:00
Zhang
76fb808910 Fix a number of MINGW32 issues 2007-07-21 11:28:06 -06:00
Brian
005eea249c Fix a number of MINGW32 issues (Zhang <zxpmyth@yahoo.com.cn>) 2007-07-21 11:27:22 -06:00
Brian
af2aa8e9cf Remove ctx->Point._Size and ctx->Line._Width.
The clamping for these values depends on whether we're drawing AA or non-AA
points, lines.  Defer clamping until drawing time.  Drivers could compute and
keep clamped AA and clamped non-AA values if desired.
2007-07-21 10:06:41 -06:00
Brian
5842bc3bf9 remove VC6/VC7 project files until updated 2007-07-21 10:06:40 -06:00
Brian
9747de8ec6 drop VC6 and VC7 project files until updated 2007-07-21 10:03:30 -06:00
Roland Scheidegger
82fceba231 fix bogus recently introduced function param comments 2007-07-20 11:47:06 +02:00
Roland Scheidegger
a1bc0d0f51 fix mesa's handling of fbo's / window fb (again)
Make sure the relevant fields in window fbs get updated at appropriate time
(those are NOT the same as fbos!!!), and fix up related code accordingly.
This is a bit ugly, but there's a reason the issues section in EXT_fbo is
a couple hundred pages long...
Hopefully correct now.
2007-07-19 17:59:59 +02:00
Roland Scheidegger
6075df53b5 more fixes for mesa's fbo handling (fixes tests/fbotest1/2) 2007-07-19 17:59:31 +02:00
Roland Scheidegger
f9ac01eac5 fix up mesa's probably bogus framebuffer updates with different read/write fbs
Conflicts:

	src/mesa/main/framebuffer.c
2007-07-19 17:58:21 +02:00
Roland Scheidegger
dbfb375805 fix mesa fb binding
Make sure that we bind the right buffer (draw or read) when rebinding
the window framebuffer (the api doesn't allow binding different draw and
read buffers at the same time, but the default window framebuffer is basically
2 fb objects, one for read, one for write, which can be different). Pass both
of these two down the driver api (no driver uses this right now).
2007-07-19 17:47:14 +02:00
Roland Scheidegger
b9f2cf9a4e increase MAX_RELOCS so never run out before batch buffer is full (fixes xdemos/shape) 2007-07-19 17:46:35 +02:00
Oliver McFadden
0b48ce450e r300: Oops, made a mistake on commit fb4e071bed. 2007-07-18 02:59:08 +00:00
Oliver McFadden
86ece0a920 r300: Cleaned up vertprog construction.
Construct the vertprog instruction in the 4 DWORD parts...

DWORD 0: Opcode and Output.
DWORD 1: First Argument.
DWORD 2: Second Argument.
DWORD 3: Third Argument.

Allow the opcode translation functions to generate more than one instruction;
useful for when an instruction must be emulated. FLR, XPD, etc.
2007-07-18 02:49:26 +00:00
Tommy Schultz Lassen
fb4e071bed r300: Corrected texcoord start when BFC1 is enabled. 2007-07-18 00:37:43 +00:00
Zou Nan hai
c6d042acc9 Fix SOP in fragment shader, brick is ok now. 2007-07-17 16:52:03 +08:00
Zou Nan hai
3c00cdc5f3 Merge branch 'master' of git+ssh://znh@git.freedesktop.org/git/mesa/mesa into 965-glsl 2007-07-17 15:42:39 +08:00
Zou Nan hai
24e7acd5e4 bumpmap sample is correct now 2007-07-17 11:25:37 +08:00
Zou Nan hai
719cf0b795 Use ProgramStringNotify 2007-07-17 11:19:52 +08:00
Oliver McFadden
7b410f366f r300: Corrected some progs/fp/* regressions from the BFC patch.
I'm not completely sure this is correct; it restores the old behaviour.
2007-07-16 21:43:39 +00:00
Oliver McFadden
8a016d2130 r300: Use _mesa_num_inst_src_regs for number of arguments. 2007-07-16 20:24:41 +00:00
Oliver McFadden
f66775184b r300: Corrected vertprog FLR and XPD instruction regression. 2007-07-16 20:07:30 +00:00
Oliver McFadden
3eba764df8 r300: Added code for vertprog opcode ARL. 2007-07-16 19:20:32 +00:00
Oliver McFadden
611674ed69 r300: Don't need vertprog scalar flag anymore; it's handled explicitly... 2007-07-16 19:13:46 +00:00
Oliver McFadden
b89a5c6e06 r300: Removed broken RCC vertprog opcode. 2007-07-16 19:10:13 +00:00
Oliver McFadden
15f1609922 r300: More vertprog rework; give each opcode it's own function. 2007-07-16 19:09:29 +00:00
Oliver McFadden
39766010cd Revert "r300: Gracefully exit after GART memory is exhausted."
This reverts commit 9457bf62bb.

Causes the X server to die with Compiz and Beryl.
2007-07-16 16:37:38 +00:00
Oliver McFadden
cc85860ccb r300: Reorder the vertprog code to the ARB specification. 2007-07-16 16:37:38 +00:00
Roland Scheidegger
cbfe29cdee fix bogus fb/drawable information
the framebuffer objects attached to drawables can have invalidate state
associated with them, since for the window framebuffer this is per-context
state and not per-fbo state. Since drivers rely on that information
(otherwise would need to check if currently the window-framebuffer is
bound in a lot of places) fix it up in _mesa_make_current (ugly).
(Brought over from i915tex_privbuffers, where it fixes xdemos/wincopy
when switching to front buffer rendering.)
2007-07-16 18:23:47 +02:00
Roland Scheidegger
fb3b9060d4 fix segfault with i915 drivers in swrast drawpixels path when resizing windows 2007-07-16 18:23:46 +02:00
Oliver McFadden
d895c5a08f r300: Use the R300_PVS_UPLOAD_* defines. 2007-07-16 15:42:16 +00:00
Oliver McFadden
4013382ea2 r300: Added the clip plane upload defines. 2007-07-16 15:39:12 +00:00
Oliver McFadden
81c333adbc r300: Enable the vertprog point size again. 2007-07-16 12:21:38 +00:00
Oliver McFadden
03105d7b3e r300: Corrected position bug with position invariant option. Bug #11594. 2007-07-16 11:34:40 +00:00
Oliver McFadden
aa9d77ca3c r300: Removed Vim modeline I left in the file by mistake. :-) 2007-07-16 07:17:22 +00:00
Oliver McFadden
72581241a8 r300: Make sure the modified value of u_temp_i is respected. 2007-07-16 07:12:29 +00:00
Oliver McFadden
87855fb32c r300: Added a function for vertex program default opcode translation. 2007-07-16 06:38:12 +00:00
Oliver McFadden
ddb74cb443 r300: Clean up the vertex program maximum length check. 2007-07-16 06:33:53 +00:00
Oliver McFadden
d0b3f3ce81 r300: Corrected indenting in r300_vertprog.c. 2007-07-16 06:27:29 +00:00
Oliver McFadden
79773ba13a r300: Major vertex program code clean up and rework. 2007-07-16 06:16:35 +00:00
Oliver McFadden
b0f0b4044c r300: Replaced the ugly VERTEX_SHADER_INSTRUCTION typedef. 2007-07-16 05:04:10 +00:00
Oliver McFadden
9457bf62bb r300: Gracefully exit after GART memory is exhausted. 2007-07-15 01:17:54 +00:00
Oliver McFadden
393558a933 r300: Disable vertex program point size; it's almost certainly wrong.
See the conversation between myself and Tommy Schultz Lassen on mesa3d-dev.
2007-07-14 18:31:29 +00:00
Oliver McFadden
491f646c79 r300: Clean up the vertex program output assignment. 2007-07-14 18:12:04 +00:00
Patrice Mandin
24f85f047b nouveau: nv10 and nv11,15 are different 2007-07-14 18:54:22 +02:00
Brian
849a9799d0 fix bug 11588 2007-07-13 16:37:18 -06:00
Jan Dvorak
5a0f02a394 fix shader/info string length queries (bug 11588) 2007-07-13 16:36:00 -06:00
Jan Dvorak
e32ae4fe33 fix shader/info string length queries (bug 11588) 2007-07-13 16:35:19 -06:00
Ben Skeggs
8fcfaa3238 Play "nuke the typedef" 2007-07-13 23:39:45 +10:00
Oliver McFadden
5ec66cf62d Revert "r300: Corrected off-by-one error in r300_vertprog.c."
This reverts commit 07ac2386f5.
2007-07-13 09:39:23 +00:00
Oliver McFadden
07ac2386f5 r300: Corrected off-by-one error in r300_vertprog.c. 2007-07-13 04:58:32 +00:00
Oliver McFadden
42dcdb9372 r300: Moved some hardware initialization into appropriate functions. 2007-07-13 04:51:36 +00:00
Oliver McFadden
08a005e076 r300: Use a switch statement in r300UpdateCulling. 2007-07-13 04:51:36 +00:00
Oliver McFadden
4b08b9c3e9 r300: Setup the back facing color bits correctly.
Apparently for back facing color to work you must set all 3 color bits; I guess
the hardware cannot handle them separately.
2007-07-13 04:51:36 +00:00
Brian
4595389c4c fix width/depth mix-up (bug 11577) 2007-07-12 21:43:39 -06:00
Brian
7c4c82fc6d fix width/depth mix-up (bug 11577) 2007-07-12 21:33:05 -06:00
Brian
f5eb25e9c7 fix swizzle-related bug 11534 2007-07-12 14:50:53 -06:00
Brian
e8ccc7cc49 Merge branch 'mesa_7_0_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into mesa_7_0_branch 2007-07-12 14:49:56 -06:00
Brian
673d21047a fix swizzle-related bug 11534 2007-07-12 14:49:24 -06:00
Patrice Mandin
e5dd389429 nv20 also don't support viewport_origin, like nv10 2007-07-12 18:36:41 +02:00
Ben Skeggs
cd8613e59d nouveau: match drm 0.0.9 interface 2007-07-12 11:08:17 +10:00
Brian
3ffa09b09d clean-up of stencil code 2007-07-11 16:33:15 -06:00
Brian
b755a2d9de Minor clean-up of polygon offset logic. Properly compute _MRD field. 2007-07-11 16:20:32 -06:00
Brian
34f6243bef Improve this demo in a few ways.
1. Use more reasonable hither/yon clip planes to make better use of shallow
(16-bit) z buffers.
2. Use different colors on cube faces to help detect Z fighting if it occurs.
3. Report GL_DEPTH_BITS on start-up.
2007-07-11 16:20:32 -06:00
Tommy Schultz Lassen
ee7fece054 r300: Added support for Back Facing Color. 2007-07-11 17:37:45 +00:00
Tommy Schultz Lassen
4bd04c9851 r300: Corrected r300UpdateCulling; would only set font face if culling was set. 2007-07-11 17:37:44 +00:00
Patrice Mandin
922dadf422 nouveau: nv20 does not support hw scissors 2007-07-11 19:25:32 +02:00
Julien Cristau
6186261589 Prepare changelog for upload. 2007-07-11 05:51:34 +02:00
Julien Cristau
45310e219c Relax libgl1-mesa-dev dependency on libgl1-mesa-glx.
Change the >= ${source:Version} dependency to >= ${source:Upstream-Version}.
This way libgl1-mesa-dev stays installable after a minor revision bump on
architectures where mesa isn't built yet.
2007-07-11 05:45:30 +02:00
Julien Cristau
250f6b2c88 Replace ${Source-Version} with ${source:Version} in one remaining spot. 2007-07-11 05:34:30 +02:00
Arthur Huillet
a8ec5dac3c bumped nouveau DRM interface version number 2007-07-11 02:48:40 +02:00
Michel Dänzer
7c42222111 i915tex: Better procedure for dropping batchbuffer on virtual resolution change.
The previous procedure would often result in a GPU lockup.
2007-07-10 11:14:46 +02:00
Michel Dänzer
f1e1b2ed16 i915tex: Only wait for vblank when really necessary.
This avoids superfluous waits for vblank timing out under some circumstances.
2007-07-10 11:14:25 +02:00
Michel Dänzer
a903749b24 Clear pointers to freed cliprects.
Not doing this could lead to double frees under rare circumstances.
2007-07-10 11:05:41 +02:00
Michel Dänzer
fdefc2bbda i915tex: Better procedure for dropping batchbuffer on virtual resolution change.
The previous procedure would often result in a GPU lockup.
2007-07-10 11:02:18 +02:00
Michel Dänzer
2079df8527 i915tex: Only wait for vblank when really necessary.
This avoids superfluous waits for vblank timing out under some circumstances.
2007-07-10 10:54:51 +02:00
Michel Dänzer
b53659452c Clear pointers to freed cliprects.
Not doing this could lead to double frees under rare circumstances.
2007-07-10 10:49:28 +02:00
Michel Dänzer
46f1d6653e Remove dubious compile-time test for pre-2.4 Linux kernels.
LINUX_VERSION_CODE shouldn't be used by userspace code, it can be defined empty
these days.

If anybody still cares about 2.2 kernels, they should reinstate this as a
proper runtime test.
2007-07-10 10:34:10 +02:00
Brian
c1938a60f7 Fix zero-size texture checking in _mesa_test_proxy_teximage(), bug 11309 2007-07-08 10:04:14 -06:00
Brian
aa328291c5 Fix size test bug in _mesa_test_proxy_teximage().
width/height/depth == 0 is a legal texture size (no error generated).
Later, the texture will be considered incomplete, however, and texturing
will effectively be disabled.
See bug 11309.
2007-07-08 09:59:05 -06:00
Brian
d65110f352 Check if 'indices' is NULL, bug 11314 2007-07-08 09:21:21 -06:00
Brian
37ece4df7c Check if 'indices' parameter is NULL (bug 11314) 2007-07-08 09:20:42 -06:00
Brian
25cfb68f0b Change float depthScale param to _mesa_unpack_depth_span() to GLuint depthMax. 2007-07-08 09:02:36 -06:00
Brian
64359af071 check depthScale value for optimized ushort->uint case (fixes bug 11474) 2007-07-08 08:53:19 -06:00
Brian
9fa3bbcb5a check depthScale value for optimized ushort->uint case (fixes bug 11474) 2007-07-08 08:53:09 -06:00
Brice Goglin
19e51ecbe6 libgl1-mesa-dev does not need to depend on libgl1-mesa-dri, libgl1-mesa-glx is enough.
libgl1-mesa-glx was included in libgl1-mesa-dri before 6.4.1-0.1,
so libgl1-mesa-dev had to depend on libgl1-mesa-dri at this point.
Since libgl1-mesa-dri only contains the DRI modules now, it is not
required anymore for libgl1-mesa-dev.
2007-07-07 22:17:35 +02:00
Brian
a164d3aee0 In _swsetup_Translate(), update dest->attrib[FRAG_ATTRIB_COL0].
Also, check if we're in RGB vs. CI mode.  This fixes a problem with
incorrect rendering color seen with the redbook/polys demo.
2007-07-06 16:55:40 -06:00
Brian
0bf2479aef Add case for GL_QUADS in i915_reduced_primitive_state().
The t_dd_tritemp.h code can emit GL_QUADS primitives.  We need to catch
that case to determine if polygon stipple should be enabled.
Fixes bug reported by Carlos Diógenes on 4 July 2007.
2007-07-06 16:55:40 -06:00
Brian
99d62f2922 fix i915 polygon stipple bug 2007-07-06 16:53:28 -06:00
Brian
284743cafe add GL_QUADS to i915_reduced_primitive_state() to fix redbook/polys demo 2007-07-06 16:52:34 -06:00
Patrice Mandin
f0aa6654e2 Merge branch 'master' of git+ssh://pmandin@git.freedesktop.org/git/mesa/mesa 2007-07-07 00:08:35 +02:00
Patrice Mandin
69501d76fc NV_17 is different from NV_10 2007-07-06 23:59:29 +02:00
Patrice Mandin
2adcd5bdd2 NV1X don't support VIEWPORT_ORIGIN in hardware 2007-07-06 23:55:51 +02:00
Eric Anholt
d086f7ab2e bufmgr_ttm: hook up destroy function, track buffer names. 2007-07-06 12:01:33 -07:00
Xavier Bachelot
f98bdfca57 call glutInit(), bug 11486 2007-07-06 12:56:21 -06:00
Xavier Bachelot
08d7307b2a call glutInit(), bug 11486 2007-07-06 12:54:40 -06:00
Eric Anholt
f7643b96e9 bufmgr_fake: Keep the bufmgr lock held while freeing a block. 2007-07-05 15:45:49 -07:00
Brian
ef6a64abe6 fix a syntax error (missing right-paren) 2007-07-05 16:04:10 -06:00
Eric Anholt
23e0ca2ebb Fix copy'n'pasteo that broke display lists. 2007-07-05 13:56:38 -07:00
Eric Anholt
3cf20ddbfc Merge branch 'i915-unification' of git+ssh://people.freedesktop.org/~anholt/mesa into i915-unification 2007-07-05 11:36:44 -07:00
Brian
18bfa52ef7 fix bug 11475 2007-07-05 09:42:07 -06:00
Brian
d62be2652c Copy from Mesa master. Includes fixes for bugs 11475 and 11448. 2007-07-05 09:40:37 -06:00
Brian
ffa2659204 stencil pixel map didn't work in _mesa_unpack_stencil_span(), bug 11475 2007-07-05 09:37:46 -06:00
Zou Nan hai
575f3e918f support "discard"; 2007-07-05 11:10:24 +08:00
Julien Cristau
31f3433635 Prepare changelog for upload. 2007-07-05 00:56:56 +02:00
Samuel Thibault
639eaceee7 Fix build on hurd-i386.
Build libgl1-mesa-glx without direct rendering support on that arch, and
don't build any dri driver.
2007-07-05 00:48:30 +02:00
Brian
c223c6b663 Be more consistant with paths in #includes. Eventually, eliminate a bunch of -I flags. 2007-07-04 13:15:20 -06:00
Brian
e8e5d9effe support more modes, added -f cmd line option 2007-07-04 09:23:12 -06:00
Brian
9aa8223605 assorted clean-ups 2007-07-04 09:22:15 -06:00
Eric Anholt
ea53ff80af fix LogicOp/bitmap problem, bug 11133 2007-07-04 07:37:28 -06:00
Eric Anholt
bd9db5eed2 fix LogicOp/bitmap problem, bug 11133 2007-07-04 07:37:14 -06:00
Brian
22b0b2f47e add fbdev/ to DEMO_FILES 2007-07-04 07:35:11 -06:00
Dave Airlie
5657fc5b4c r300: only init swtcl on tcl-less cards 2007-07-04 15:30:40 +10:00
Zou Nan hai
fb9ee9b323 Merge branch 'master' of git+ssh://znh@git.freedesktop.org/git/mesa/mesa into 965-glsl 2007-07-04 10:52:35 +08:00
Zou Nan hai
285b326c60 fix issue with output as src register. 2007-07-04 10:51:57 +08:00
Brian
feeca1bcbc add fbdev/ to DEMO_FILES 2007-07-03 15:46:48 -06:00
Brian
12e7278c08 document GLSL fixes 2007-07-03 12:21:11 -06:00
Brian
45b5c44eb9 bring over Roland's DOT3_RGBA fix from master 2007-07-03 12:20:52 -06:00
Brian
e3456c1028 added vec2(vec4) constructor, bug 11404 2007-07-03 11:42:03 -06:00
Brian
7ff4359a3b added vec2(vec4) constructor, bug 11404 2007-07-03 11:41:56 -06:00
Brian
a36b5c6d47 add code for stpq, rgba writemasks in make_writemask(), bug 11404 2007-07-03 11:41:21 -06:00
Brian
327fb38573 add code for stpq, rgba writemasks in make_writemask(), bug 11404 2007-07-03 11:41:07 -06:00
Brian
3d04682b7a fix StepX/StepY typo 2007-07-03 10:06:13 -06:00
Brian
1d25d9e15f Bump version to 7.0.1 2007-07-03 10:04:41 -06:00
Brian
cc7cee3f48 Revert the version of libOSMesa.so to 6.5.3 to avoid linking issues that were caused by bumping to 7.0 2007-07-03 10:03:01 -06:00
Brian
d7062710cd use _mesa_unpack_stencil_span() in draw_stencil_pixels(), bug 11457 2007-07-03 08:58:03 -06:00
Brian
f9b53f648d use _mesa_unpack_stencil_span() in draw_stencil_pixels(), bug 11457 2007-07-03 08:54:29 -06:00
Roland Scheidegger
9a45176dd8 fix GL_DOT3_RGBA texture combiner mode in generated fragment programs (bug #11030) 2007-07-03 14:27:41 +02:00
Zou Nan hai
4fc02ad000 Fix a nasty bug... 2007-07-03 15:27:43 +08:00
Julien Cristau
3e21f52796 Make libgl1-mesa-swx11 depend on libosmesa6
libgl1-mesa-swx11 used to contain libOSMesa.so.6, so programs linked against
it don't necessarily depend on libosmesa6; their dependencies were broken
since mesa 6.5.2-1.
2007-07-03 05:34:07 +02:00
Brian
9220255d75 add const to wglSetPixelFormat() to match .h declaration 2007-07-02 10:16:02 -06:00
Brian
9bfba734d8 add const to wglSetPixelFormat() to match .h declaration 2007-07-02 10:15:39 -06:00
Brian
06542019a8 avoid unnecessary clamping of depth values (bug 11448) 2007-07-02 08:46:57 -06:00
Dave Airlie
6257ed8663 r300: fix compiz crash on swtcl - doesn't fix compiz though.
Compiz for some reason looks like ass, everything with textures
looks like it has a 2x width/height multiplier on the texture coords...
2007-07-02 17:22:35 +10:00
Claudio Ciccani
a49570794a Compute the amount of time to sleep on idle event using timers as reference. 2007-07-01 12:24:44 +02:00
Claudio Ciccani
33da6cb133 Fixed initialization of render buffer and deinitialization of context. 2007-07-01 12:23:12 +02:00
Dave Airlie
ad19038080 r300: oops wrong logic for swtcl 2007-07-01 19:27:26 +10:00
Dave Airlie
0caee6b006 r300: oops turn back off cmd buf debugging 2007-07-01 18:52:47 +10:00
Dave Airlie
f556b7f84c Merge branch 'r300-swtcl' 2007-07-01 18:50:14 +10:00
Dave Airlie
646ed82e6b fix tabbing 2007-07-01 18:46:39 +10:00
Dave Airlie
6564e4bffa r300: add authorship 2007-07-01 18:43:22 +10:00
Dave Airlie
2d5313db72 r300: remove some unused code 2007-07-01 18:42:27 +10:00
Dave Airlie
b691d46046 r300: cleanup some of the swtcl code 2007-07-01 18:40:26 +10:00
Dave Airlie
8f7478e5cb r300: fixup manytex, we needed to emit the vic/vir/vof every time 2007-07-01 18:29:23 +10:00
Dave Airlie
885c1326c3 r300: fix tabbing 2007-07-01 17:15:50 +10:00
Julien Cristau
0511d9a9d2 Fix merge and delete symlinks which aren't in the tarball. 2007-07-01 02:55:59 +02:00
Brian
f4b103dc99 simplify INIT_SPAN code 2007-06-29 21:52:18 -06:00
Brian
fcc77d3ece s/SPAN_RGBA/SPAN_INDEX/ in clear_ci_buffer_with_masking() 2007-06-29 21:33:59 -06:00
Brian
9dca42a4a1 Undo some prev glDraw/CopyPixel changes which fixed a bug in which colors were overwritten by interpolating attributes.
Now just set the span->arrayAttribs mask in glDraw/CopyPixels and be sure
we don't overwrite the values in interpolate_active_attribs().
2007-06-29 21:29:30 -06:00
Brian
fb4f4e2d18 Obsolete 2007-06-29 21:13:20 -06:00
Brian
fc5bf53644 overhaul point rasterization, no longer use s_pointtemp.h 2007-06-29 21:12:46 -06:00
Brian
66d0784f13 regenerated 2007-06-29 07:53:11 -06:00
Brian
aaebf2f47e regenerated 2007-06-29 07:51:49 -06:00
Ben Skeggs
5e4a0f42f2 nouveau: match drm changes (0.0.7) 2007-06-29 14:28:39 +10:00
Ben Skeggs
17e81bda6e nouveau: NV30_TCL viewport/scissor fixes 2007-06-29 14:28:39 +10:00
Brian
02dd2221b6 bring over 7.0 doc changes 2007-06-28 16:44:24 -06:00
Brian
23f8d77b38 Add a few missing GL 2.0 entrypoints, regenerate related files.
Specifically:
  glVertexAttrib4bv
  glVertexAttrib4iv
  glVertexAttrib4ubv
  glVertexAttrib4uiv
  glVertexAttrib4usv
2007-06-28 16:38:48 -06:00
Brian
767cac1494 Add a few missing GL 2.0 entrypoints, regenerate related files.
Specifically:
  glVertexAttrib4bv
  glVertexAttrib4iv
  glVertexAttrib4ubv
  glVertexAttrib4uiv
  glVertexAttrib4usv
2007-06-28 16:34:40 -06:00
Samuel Thibault
498b4dbba4 Fix build on hurd-i386.
Build libgl1-mesa-glx without direct rendering support on that arch, and
don't build any dri driver.
2007-06-28 22:33:05 +01:00
Julien Cristau
ecc42e79ae Merge unreleased changelog entries 2007-06-28 22:01:05 +01:00
Julien Cristau
0bf8ed523d * Add a shlibs file for libgl1-mesa-swx11-i686. 2007-06-28 21:58:42 +01:00
zhang
37aca21129 a variety of fixes for MingW 2007-06-28 08:12:52 -06:00
Brian
87d22ee0fe initial 7.0.1 relnotes 2007-06-28 08:11:36 -06:00
zhang
52e25f63d4 a variety of fixes for MingW 2007-06-28 08:10:09 -06:00
Brian
f3fb67972b remove obsolete t_save_api.c 2007-06-28 07:43:32 -06:00
Brian
6400756364 remove obsolete sources 2007-06-28 07:21:59 -06:00
Brian
b0b02507b4 remove t_save_api.c and some other obsolete files, may be more 2007-06-28 07:18:43 -06:00
Brian
2233d4c1ee remove obsolete t_save_api.c 2007-06-28 07:16:13 -06:00
Brian
3b10f50efb use larger point/sprite size 2007-06-28 07:16:13 -06:00
Brian
1a55e97c9c increase MAX_POINT_SIZE to 60 2007-06-28 07:16:13 -06:00
Brian
3156854c25 XXX comment about point clamping 2007-06-28 07:16:12 -06:00
Brian
369d6654d4 added comment, remove dead code 2007-06-28 07:16:12 -06:00
David Nusinow
d71d04bf6f Bite the bullet and add myself to uploaders 2007-06-27 22:54:52 -04:00
David Nusinow
af90259e09 Merge remote branch 'origin/debian-experimental' into debian-experimental
Conflicts:

	debian/changelog
	src/mesa/drivers/dri/r300/radeon_lock.c
2007-06-27 22:53:04 -04:00
David Nusinow
7c9762f698 Changelog bump 2007-06-27 21:32:51 -04:00
David Nusinow
b2e67fdb7c Merge branch 'upstream-experimental' into debian-experimental
Conflicts:

	.gitignore
	progs/miniglx/miniglxtest.c
	src/glx/mini/Makefile
	src/glx/mini/miniglx.c
	src/mesa/drivers/dri/r300/.gitignore
2007-06-27 21:29:16 -04:00
Oliver McFadden
e92903e24c r300: Initial work on merging the real and generated vertex program functions. 2007-06-24 14:01:19 +00:00
Oliver McFadden
43e601206d r300: Should use inst_count not 0 for R300_PVS_CNTL_3_PROGRAM_UNKNOWN_SHIFT. 2007-06-24 14:01:19 +00:00
Oliver McFadden
62b83638a5 r300: The vpi, vpp, and vps counts are already initialized; don't do it twice. 2007-06-24 14:01:19 +00:00
Oliver McFadden
b41ef55061 r300: Clean up the vertex program state code slightly; still needs lots of work. 2007-06-24 14:01:19 +00:00
Oliver McFadden
252fc61e48 r300: Vertex program position end bits are known.
Possibly performance may improve by setting it to the last instruction that
writes result.position, rather than the last instruction in the vertex program.
2007-06-24 14:01:19 +00:00
Oliver McFadden
27c8488526 r300: Removed unused vap_param structure. 2007-06-24 14:01:19 +00:00
Oliver McFadden
804d3a8f6e r300: Cleaned up long lines in the vertex functions. 2007-06-24 14:01:19 +00:00
Oliver McFadden
909091b7dc r300: Setup the default state for polygon offset point/line.
I believe there are still bugs with all polygon offset types. The point and line
types may need to be handled specially, too.

This shouldn't break anything because it just enabled the occlusion control bits
for polygon offset.
2007-06-24 14:01:19 +00:00
Oliver McFadden
bf334d852d r300: Cleaned up the r300SetupVertexShader function. 2007-06-24 14:01:19 +00:00
Oliver McFadden
204f9e3fdb r300: Cleaned up the r300SetupPixelShader function. 2007-06-24 14:01:19 +00:00
Oliver McFadden
381b86329e r300: Trivial clean up in radeon_lock.h. 2007-06-24 14:01:19 +00:00
Dave Airlie
5eb2015a96 r300: 2288 is a tcl only reg 2007-06-24 17:21:26 +10:00
Brian
d59f0314bd md5 sums for 7.0 2007-06-22 16:50:24 -06:00
Brian
131baefac3 fix date for 7.0 release 2007-06-22 16:41:36 -06:00
Brian
a450078b67 update version 2007-06-22 16:40:17 -06:00
Brian
f6b041bf6c bring in Eric's FreeBSD fixes for -pthread 2007-06-22 15:40:46 -06:00
Eric Anholt
1a413b4d77 Use -pthread instead of -lpthread on FreeBSD. 2007-06-22 11:19:42 -07:00
Brian
1d52b6aaf4 fix bug rendering points with fragment program (see #11330) 2007-06-22 09:47:30 -06:00
Brian
1bf5076569 Fix feedback color bug #11332. In feedback mode, produce float colors. 2007-06-22 08:02:46 -06:00
Dave Airlie
0f7f6e4e95 clean up cache flush emission into one place
makes gears work with swtcl
2007-06-22 19:18:04 +10:00
Brian
6a3ed5eb96 Random state-change / primitive rendering. Good for hammering on a driver... 2007-06-21 18:11:29 -06:00
Brian
578559822e Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-06-21 16:06:06 -06:00
Brian
93becd8a18 fix rgba pointer bug hit on zoomed+fogged glDrawPixels 2007-06-21 16:06:27 -06:00
Brian
4d528e5454 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-06-21 16:04:04 -06:00
Eric Anholt
4fe48b4e85 Merge branch 'origin' into i915-unification 2007-06-21 14:14:24 -07:00
Eric Anholt
5d9dc02cbe Reset saved state for disasm when we've lost the context. 2007-06-21 12:57:15 -07:00
Eric Anholt
f3f29d632e Add decoding of inline primitives in debug output. 2007-06-21 12:53:07 -07:00
Eric Anholt
f972f58d80 Improve fake bufmgr debugging, and don't try to migrate static buffers. 2007-06-21 11:44:48 -07:00
Eric Anholt
1a49cd7f5b Add missing i915_disasm.h header and adjust copyright formatting on the .c 2007-06-21 10:01:34 -07:00
Oliver McFadden
ed5ed6fe2f r300: Corrected a bug in r300LineWidth.
Thanks to Panagiotis Papadakos for reporting it.
2007-06-21 15:53:26 +00:00
Brian
171dcdfa27 Another round of fixing attribute interpolation for glDraw/CopyPixels.
Need to turn off FRAG_BIT_COL0 in swrast->_ActiveAttribMask when doing
glRead/CopyPixels to prevent the user's colors from getting overwritten
when a fragment program is active.
This was happening in the DRI drivers when MaintainTexEnv program was
used (the texenv fragment program was enabled when _swrast_DrawPixels was
called).
This still isn't an ideal solution, but fixes things for now.
2007-06-21 09:15:32 -06:00
Brian
fe11b2c04b rename _swrast_update_fragment_attribs() 2007-06-21 09:11:43 -06:00
Dave Airlie
41d28d97f5 clean up color0 code 2007-06-21 18:35:25 +10:00
Dave Airlie
36235e5ff1 add a mem use for current dma buffer 2007-06-21 18:35:00 +10:00
Dave Airlie
faab84cfa6 fix unfilled tris/quads 2007-06-21 15:07:31 +10:00
Dave Airlie
d3ef71166d ensure cmd buffer space 2007-06-21 14:43:53 +10:00
Dave Airlie
d1be4ab80f fix up vertex emission before state change 2007-06-21 14:20:33 +10:00
Zou Nan hai
d19d0596da support branch and loop in pixel shader
most of the sample working with some small modification
2007-06-21 10:22:28 +08:00
Brian
4f340d181a set tentative 7.0 release date 2007-06-20 19:59:15 -06:00
Dave Airlie
025efae411 fix secondary color, fog is off for now 2007-06-21 10:59:11 +10:00
Dave Airlie
6d8a4312ed fix projtex 2007-06-21 10:50:27 +10:00
Dave Airlie
ad8abf7147 fix quad-clip 2007-06-21 10:32:39 +10:00
Dave Airlie
08fb0bad72 bring over vertex engine setup code from r300_Render and fix up
now have gears going.. + a few other trivial textured demoes
2007-06-21 10:19:00 +10:00
Brian
f9c17ec58a Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-06-20 11:01:09 -06:00
Brian
a4af3e5ab3 Effectively disable _TexEnvProgram before calling _swrast_DrawPixels().
It's OK to use _TexEnvProgram regardless of the texture state, but if fog
is also enabled, the fragment program is lacking the actual fog computation
so fogging doesn't appear.
Fixing this might involve a new _MaintainFogProgram field and related code.
For now, just disable the _TexEnvProgram and let swrast handle everything.
2007-06-20 11:01:04 -06:00
Brian
b9080dd549 fix glDrawPixels + fragment program problem 2007-06-20 10:56:13 -06:00
Brian
c1cb541233 copy wpos attrib info into zoomed span (fixes fog perspective correction problem) 2007-06-20 10:55:31 -06:00
Dave Airlie
d7777f4598 fixup some bits of tcl path 2007-06-20 18:02:08 +10:00
Dave Airlie
2a6082b531 swtcl: gears works 2007-06-20 18:01:47 +10:00
Brian
bd8eeb7ed0 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-06-19 18:50:26 -06:00
Eric Anholt
bf0ae055de Fix TTM static allocation flags. 2007-06-18 12:20:07 -07:00
Eric Anholt
1ddbfd779b Test for TTM presence initially rather than test for lack of classic aperture. 2007-06-18 12:19:42 -07:00
Dave Airlie
4a841b969a more commits to fix things and stuff - still not doing anything except crashin 2007-06-17 19:55:13 +10:00
Dave Airlie
492bc67df1 swtcl add debug and fix offset 2007-06-17 15:44:42 +10:00
Dave Airlie
780ae9f17d cleaned up reduced prim 2007-06-17 15:05:43 +10:00
Dave Airlie
3b8cf84aa5 fixup packet setup - still hangs 2007-06-17 14:47:09 +10:00
Dave Airlie
aaf76906e8 add missing swtcl file 2007-06-17 14:27:58 +10:00
Dave Airlie
d42888dac3 add more swtcl code to r300 - hangs card now 2007-06-17 14:17:11 +10:00
Eric Anholt
2754ac0878 Replace intel_dump_batchbuffer with a more informational version. 2007-06-15 16:58:15 -07:00
Eric Anholt
7a452b21a2 Correct a mis-count in a LOAD_STATE_IMMEDIATE_1 length argument. 2007-06-15 16:20:34 -07:00
Michel Dänzer
9cde7fb61d i915tex: Missing piece of SetTexOffset hook implementation for I830 generation. 2007-06-15 15:24:35 +02:00
Dave Airlie
bc81885bb2 Initial r300 modes for swtcl it compiles!! 2007-06-14 15:26:39 +10:00
Stephane Marchesin
f6963f57d9 nouveau: remove useless viewport xform with id matrix. 2007-06-14 00:44:16 +02:00
Julien Cristau
74a11701f3 Shorten the one-line synopsis of various packages.
They're cut off in .changes files if they're too long.
Thanks, Marc 'HE' Brockschmidt!
2007-06-13 19:36:49 +02:00
Dave Airlie
40cc47f8ee move clip to r300 emit 2007-06-13 12:56:48 +10:00
Brian
144e1e439f fix an error string, refactor _mesa_GetCompressedTexImageARB() to get rid of a goto 2007-06-12 17:17:43 -06:00
Brian
261ed74074 fix make clean commands so missing subdirs don't cause infinite loops 2007-06-12 17:06:27 -06:00
Brian
d70fa021d5 added memcpy() to-do item 2007-06-12 15:16:21 -06:00
Brian
ef82f004fa fix comment 2007-06-12 15:08:43 -06:00
Brian
b58e38e936 fix TEXTREL problem (bug 7459) 2007-06-12 09:52:05 -06:00
Brian
edf07417be Fix TEXREL issues when using GLX_USE_TLS (see bug 7459). 2007-06-12 09:47:03 -06:00
Brian
8713cb48a8 Fix TEXREL issues when using GLX_USE_TLS (see bug 7459). 2007-06-12 09:46:12 -06:00
Brian
277c5e57ed fix GLX_USE_TLS breakage 2007-06-12 08:57:39 -06:00
Brian
c1ba308e64 fix GLX_USE_TLS breakage, fix a warning 2007-06-12 08:57:12 -06:00
Brian
0fbc4c51a0 Rework _mesa_update_texture_compare_function() to only be called during
state validation/update.

Note that we're still temporarily skipping the test for an active fragment
program.  Need to fix shadow2D() ...
2007-06-11 17:16:18 -06:00
Brian
495e2c8327 rename/clean-up _mesa_validate_texture_wrap_mode 2007-06-11 16:42:35 -06:00
Brian
84e051b6a0 fix typo, added comment 2007-06-11 16:36:06 -06:00
Brian
227315278d Replace texobj->Complete with texobj->_Complete since it's a derived field. 2007-06-11 16:32:57 -06:00
Brian
a28977a4c7 typo: s/derrived/derived/ 2007-06-11 16:27:33 -06:00
Brian
0186f1bc83 Temporarily disable the calls to _mesa_update_texture_compare_function().
This fixes the depth-peel regression reported by Brad King.
2007-06-11 16:04:36 -06:00
Brian
cf239ced0d In generic_nop() call _mesa_warning() instead of _mesa_problem() since it's an app issue, not a mesa bug. 2007-06-11 11:03:08 -06:00
Brian
c56588407c remove dead code 2007-06-11 11:03:08 -06:00
Dave Airlie
b96dbd2a3e r300: i can't see why we fallback for polygon offset line/fill 2007-06-10 12:27:22 +10:00
Brian
86eecc701e In supported_buffer_bitmask(), use framebuffer's visual, not context's visual 2007-06-08 14:13:13 -06:00
Brian
ee170f2955 disable depthBits test in check_compatible(), see bug 11161 2007-06-08 14:12:27 -06:00
Brian
39d221ef14 fix glReadPixels parameters to handle odd-width windows correctly 2007-06-08 13:10:01 -06:00
Brian
5e9cff0b97 disable shader program before glDrawPixels 2007-06-08 13:02:14 -06:00
Brian
b3d62d5af5 disable depthBits check in check_compatible(), see bug 11161 2007-06-08 12:36:00 -06:00
Brian
9c0f0c8d81 remove old comment about DEFAULT_SOFTWARE_DEPTH_BITS 2007-06-08 12:35:37 -06:00
Brian
009ddb4e50 remove obsolete comment about max DEFAULT_SOFTWARE_DEPTH_BITS 2007-06-08 12:24:35 -06:00
Jouk
55f8b70530 Merge branch 'master' of git+ssh://joukj@git.freedesktop.org/git/mesa/mesa 2007-06-08 13:38:24 +02:00
Ian Romanick
7b559a9102 Add support for GL_ARB_fragment_program_shadow. 2007-06-07 13:58:50 -07:00
Ian Romanick
84d1b24647 Fix ARB_fp spec conformance bug WRT shadow sampling.
The ARB_fp (and other assembly-level fragment program specs) say that the
depth comparison function is always GL_NONE in fragment program mode.
2007-06-07 13:38:06 -07:00
Ian Romanick
359c6eada7 Add support for shadow mapping with vertex and fragment programs 2007-06-07 12:12:14 -07:00
Ian Romanick
2260c245fd Refactor shadow map modelview and projection code
Explicitly store the modelview matrix and projection matrix used when the
shadow map is created.  These matrices only need be updated when
RenderShadowMap is called.  Previously, slightly different code was used to
draw and project the shadow map.
2007-06-07 12:09:44 -07:00
Ian Romanick
f575d4fa7f Remove '#if defined' tests for ARB extensions. 2007-06-07 11:59:42 -07:00
Oliver McFadden
871f57365e r300: Added a comment regarding the R300_VAP_CLIP registers. 2007-06-07 13:21:18 +00:00
Oliver McFadden
65b45d6d58 r300: Removed a "don't think this is needed" comment, it actually is needed.
According to the comment you do not need to setup INPUT_CNTL when using vertex
buffers. However, not doing so results in a lockup.
2007-06-07 13:20:27 +00:00
Oliver McFadden
9c50d84775 r300: Explain the R300_VAP_OUTPUT_VTX_FMT_1 register. 2007-06-07 13:20:08 +00:00
Oliver McFadden
10d5dd685c r300: Cleaned up long lines in r300Choose8888TexFormat. 2007-06-07 13:19:47 +00:00
Wang Zhenyu
8331d9d7aa Add PCI IDs for the G33, Q33, and Q35 chipsets. 2007-06-05 12:01:28 -07:00
Michel Dänzer
08a2cc2d23 i915tex: Better attempt to release miptree when overriding texture image.
The previous approach could lead to crashes in FBO code that dereferences the
miptree struct pointer unconditionally.
2007-06-05 19:55:53 +02:00
Michel Dänzer
89f070b3bb Remove dubious compile-time test for pre-2.4 Linux kernels.
LINUX_VERSION_CODE shouldn't be used by userspace code, it can be defined empty
these days.

If anybody still cares about 2.2 kernels, they should reinstate this as a
proper runtime test.
2007-06-05 19:52:10 +02:00
Ian Romanick
69358e73ce Updates for array texture shadow targets. 2007-06-05 09:24:40 -07:00
Dave Airlie
0b11203038 miniglx: implement GetProcAddressARB in miniglx as an alias for GPA 2007-06-05 09:38:49 +10:00
Dave Airlie
b2dde0a783 miniglx: update defines in linux-solo config 2007-06-05 09:36:28 +10:00
Dave Airlie
90630feeec r300: fix non-tcl rs4xx again. 2007-06-02 16:21:50 +10:00
Eric Anholt
2ac17c68e2 Add buffer manager destroy function. 2007-05-31 09:45:45 -07:00
Eric Anholt
fb7e21514f Remove some stale comments. 2007-05-31 09:34:08 -07:00
Wang Zhenyu
ad6351a994 i915tex: Add support for 945GME 2007-05-31 11:18:26 +01:00
Wang Zhenyu
a74eec5af5 i915: Add support for 945GME chip 2007-05-31 11:18:21 +01:00
Wang Zhenyu
1b27ef39c9 i965: Add pci info for 965GME/GLE chip. 2007-05-31 11:18:14 +01:00
Michel Dänzer
2b7ef2549f Fix r300SetTexOffset for big endian platforms.
This was broken by the unification of the texture format table.
2007-05-30 15:37:42 +02:00
Oliver McFadden
d61a595a5b r300: Corrected r300PointSize based on dumping the blob.
The OpenGL specification also verifies the default point size should be 1.0.
2007-05-30 03:19:26 +00:00
Oliver McFadden
da1d9d9795 r300: Corrected r300LineWidth based on dumping the blob.
The OpenGL specification also verifies the default line width should be 1.0.
2007-05-30 03:19:26 +00:00
Oliver McFadden
7c008f365b r300: Removed goto statement in r300SetupRSUnit. 2007-05-30 03:19:26 +00:00
Oliver McFadden
e20acd9168 r300: Cleaned up r300SetupRSUnit. 2007-05-30 03:19:26 +00:00
Oliver McFadden
705298c281 r300: Cleaned up the state atom checking functions. 2007-05-30 03:19:26 +00:00
Oliver McFadden
6439bc5c0d r300: Cleaned up the state atom debugging code. 2007-05-30 03:19:26 +00:00
Oliver McFadden
f973ae78b2 r300: Use compile-time endian detection in r300_state.c as well as r300_texstate.c.
Probably best to not mix-and-match compile-time and run-time detection...
2007-05-30 03:19:26 +00:00
Oliver McFadden
97a89227b0 r300: Document registers 0x2220 to 0x2230.
These registers are per-pixel and per-vertex X and Y clipping planes.
2007-05-30 03:19:26 +00:00
Oliver McFadden
779a5c160f r300: Only support size 4 ELTs; this is what Mesa provides. 2007-05-30 03:19:26 +00:00
Oliver McFadden
1baef2f080 r300: Use the CP_PACKET3 macro for Type 3 packets.
I haven't converted all of the Type 3 packets to the CP_PACKET3 macro yet
because some of the Type 3 packet defines are missing from the R300 register
definition file.

These defines need to be copied from DRM and Mesa into the R300 register
definition file then copied into both DRM and Mesa.
2007-05-30 03:19:26 +00:00
Oliver McFadden
3e5f8a6c89 r300: Removed the (completely broken since new VBO branch) OPTIMIZE_ELTS path.
The VTXFMT code was broken by the new VBO branch and the OPTIMIZE_ELTS path
relied on the VTXFMT code...

I'm not even sure if the OPTIMIZE_ELTS path ever worked; the testing that I did
after minimizing the code duplication would have taken the same path as the
non-OPTIMIZE_ELTS code.
2007-05-30 03:19:26 +00:00
Oliver McFadden
7c893e98a3 r300: Cleaned up the AOS code in r300_render.c. 2007-05-30 03:19:26 +00:00
Oliver McFadden
b8813572ae r300: Added a comment in r300VAPInputCntl0. 2007-05-30 03:19:26 +00:00
Oliver McFadden
6a2ef09918 r300: Cleaned up r300DestroyTexObj. 2007-05-30 03:19:26 +00:00
Oliver McFadden
7e2c381a22 r300: R300_SE_VTE_CNTL applies to both non-TCL and TCL hardware.
See r300ResetHwState.
2007-05-30 03:19:26 +00:00
Brian
0c5662acc7 use glXGetProcAddress to get extension funcs 2007-05-29 08:08:03 -06:00
Brian
5237f863ed check for flat/smooth interp for generic/specular attrib 2007-05-29 08:08:03 -06:00
Oliver McFadden
1fc08251ee Revert "r300: Removed the R300_RS_INTERP_[0-9]_UNKNOWN (magic) defines."
This reverts commit bb3558e651.

This commit caused a regression reported by Markus Amsler
<markus.amsler@oribi.org>. Apparently these defines are required, although I'm
not sure why.
2007-05-27 02:25:31 +00:00
Oliver McFadden
d42c8ab630 r300: Rearranged the DWORD construction in r300VAPInputRoute0 for clarity.
Doesn't actually change anything; just makes it easier to read.
2007-05-26 21:38:52 +00:00
Oliver McFadden
3b8fc727e6 r300: Removed duplicate AOS format defines; already defined in r300_reg.h. 2007-05-26 20:59:16 +00:00
Oliver McFadden
e96d10a861 r300: Removed unused aos_reg variable. 2007-05-26 19:39:35 +00:00
Oliver McFadden
e8b8fd366b r300: Use "rmesa" not "r300" in r300_emit.c; some of the macros require "rmesa". 2007-05-26 17:55:30 +00:00
Oliver McFadden
7bc7f08d88 r300: Cleaned up the non-TCL RENDERINPUTS, etc. 2007-05-26 17:36:08 +00:00
Oliver McFadden
6be60a389b r300: Whitespace cleanup in r300_emit.c. 2007-05-26 17:13:57 +00:00
Oliver McFadden
0d8aba9a47 r300: Added the r300VAPInputCntl0 function.
The function just returns the hard-coded value (0x5555) even though we have no
idea what this means...
2007-05-26 15:49:24 +00:00
Oliver McFadden
ae0f17d591 r300: Added r300VAPOutputCntl0 and r300VAPOutputCntl1 to r300_emit.c. 2007-05-26 15:45:04 +00:00
Oliver McFadden
4e98dcb85f r300: Removed R300_PFS_NODE_LAST_NODE replaced by R300_PFS_NODE_OUTPUT_COLOR. 2007-05-26 14:43:04 +00:00
Oliver McFadden
f4ad34e8bb r300: Renamed the t_vic function. 2007-05-26 12:34:55 +00:00
Oliver McFadden
fbe705f600 r300: Renamed the t_vir0 and t_vir1 functions. 2007-05-26 00:07:25 +00:00
Oliver McFadden
9ed32f4251 r300: Renamed "dt" to "attribptr" in the t_vir0 function. 2007-05-25 23:50:36 +00:00
Oliver McFadden
b9c0a00ed0 r300: Specify the type in the t_vir0 function. 2007-05-25 23:42:03 +00:00
Oliver McFadden
9b727e117e r300: Cleaned up t_vir0 and t_vir1 slightly. 2007-05-25 23:02:57 +00:00
Oliver McFadden
f78ddc69a0 r300: Use C style comments in r300_emit.c. 2007-05-25 22:01:20 +00:00
Oliver McFadden
67ac9bf822 r300: Removed a (disabled and unneeded) assertion.
The r300EmitVec functions don't touch the buf member so the assertion isn't
needed here.
2007-05-25 21:54:45 +00:00
Oliver McFadden
31a86804ae r300: Improved the r300EmitVec debugging information. 2007-05-25 21:49:53 +00:00
Oliver McFadden
b042703935 r300: Use #if 0 for disabled code. 2007-05-25 21:43:24 +00:00
Oliver McFadden
93206f7815 r300: Added a TODO note and some tiny cleanups to r300_emit.c. 2007-05-25 21:38:49 +00:00
Dave Airlie
9f39692e21 add glxtokens.h to xmesa_xf86.h as discussed on mailing list 2007-05-26 15:58:56 +10:00
Brian
e734369565 remove #include "GL/glxtokens.h" 2007-05-25 08:58:15 -06:00
Oliver McFadden
8a6a5dc660 r300: Use GL_TRUE rather than 1 for the GLboolean type. 2007-05-25 13:59:15 +00:00
Oliver McFadden
00a9e4eb8c r300: Removed unused vpucount macro from r300_state.c. 2007-05-25 13:23:11 +00:00
Eric Anholt
b9323aa2cb Replace the flags/hint arguments to bo_alloc{,_static} with a location mask.
Now, allocations only take locations, rather than a variety of unused flags.
The only interesting flag before was the no_move/no_evict pair for scanout
and similar buffers, which the DRI drivers don't use.  That will be readded
when we get to using this code for display buffer allocation, by adding a
pin/unpin call (dynamic pinning/unpinning may be useful for VT switching and
root window resizing).

This commit changes one instance of DRM_BO_FLAG_MEM_LOCAL with
DRM_BO_FLAG_MEM_TT, which appeared to have been unintentional.
2007-05-24 16:55:06 -07:00
Eric Anholt
fd9d27e068 Merge branch 'master' into i915-unification
Conflicts:

	src/mesa/drivers/dri/i915tex/i830_texstate.c
	src/mesa/drivers/dri/i915tex/i915_texstate.c
2007-05-24 16:46:54 -07:00
Brian
e4b037051e fix logic for calling _swrast_update_deferred_texture() 2007-05-24 17:07:48 -06:00
Brian
98d2a4a244 doxygen-ize some comments 2007-05-23 16:58:01 -06:00
Brian
f116aed1ed restore GL_TEXTURE_LOD_BIAS in _mesa_PopAttrib(), bug 11049 2007-05-23 16:51:30 -06:00
Brian
e5ed09e60e incr/decr 1D/2DArray texture refcounts like other targets 2007-05-23 16:51:30 -06:00
Brian
18a0a2a7ac document bug 11049 fix 2007-05-23 16:50:22 -06:00
Brian
8b99d9e33c restore GL_TEXTURE_LOD_BIAS in _mesa_PopAttrib(), bug 11049 2007-05-23 16:49:19 -06:00
Oliver McFadden
f2e99e6a58 r300: Call the r300Fogfv function directly within r300_state.c.
This required moving the r300Enable function but there are no actual changes.
2007-05-23 21:38:46 +00:00
Brian
a700832214 Fix problem w/ two-sided lighting and fragment programs (depth-peel regression) 2007-05-23 15:34:50 -06:00
Oliver McFadden
491618b33d r300: Use switch statements in r300ResetHwState, etc. 2007-05-23 21:12:11 +00:00
Oliver McFadden
f1441bbd18 r300: Minor indenting corrections in the texture format table. 2007-05-23 18:48:05 +00:00
Oliver McFadden
ba8d3fb136 r300: Use a single texture format table; reduces duplication. 2007-05-23 18:37:55 +00:00
Oliver McFadden
9b9a1602f9 r300: Corrected the RGB888 texture format entry.
I think this is correct, assuming no endian issues. See commmit
59a08923f5.
2007-05-23 17:56:47 +00:00
Oliver McFadden
bb3558e651 r300: Removed the R300_RS_INTERP_[0-9]_UNKNOWN (magic) defines.
Supposedly you need to set these values for the interpolaters to work, but they
seem to work fine without these values.
2007-05-23 17:44:14 +00:00
Brian
01e7e153e3 document point attentuation fix 2007-05-23 08:59:02 -06:00
Brian
d062b6cd26 Fix point attentuation problem (bug 11042)
ctx->Point._Attentuation was computed in wrong place and the VB->Eye coord Z
array wasn't indexed correctly in run_point_stage().
2007-05-23 08:58:08 -06:00
Brian
0ad4ca24d2 Fix point attentuation problem (bug 11042)
ctx->Point._Attentuation was computed in wrong place and the VB->Eye coord Z
array wasn't indexed correctly in run_point_stage().
2007-05-23 08:56:45 -06:00
Brian
a194bc3a85 Replace initInitState() with _mesa_init_driver_state(). 2007-05-22 16:56:02 -06:00
Brian
a99114a69f added _mesa_init_driver_state() to replace duplicated code in intel drivers 2007-05-22 16:54:25 -06:00
Brian
3a2ffadb7c include swrast_setup/swrast_setup.h to silence warning 2007-05-22 16:50:05 -06:00
Brian
0425548961 don't treat FRAG_BIT_WPOS as a generic attribute (fixes depth peel regression) 2007-05-22 10:07:49 -06:00
Michel Dänzer
e0885b84a0 i915tex: Implement SetTexOffset hook.
Only build tested for I830 generation.
2007-05-22 14:08:11 +02:00
Michel Dänzer
59a08923f5 r300: Implement SetTexOffset hook. 2007-05-22 14:08:11 +02:00
Michel Dänzer
043d219b6d Add interfaces for overriding texture images with driver specific 'offsets'.
To be used by AIGLX for GLX_EXT_texture_from_pixmap without several
additional data copies.
2007-05-22 14:08:10 +02:00
Michel Dänzer
24d965fab5 Fix xserver build after recent XMesa changes.
Only build tested.
2007-05-22 13:56:30 +02:00
Brian
9e3e3883fa get rid of GenTexturesLock, used ctx->Shared->Mutex 2007-05-21 22:10:06 -06:00
Brian
c62da91f44 remove the unused texobj Mutex field 2007-05-21 21:59:20 -06:00
Brian
5c5ab90c76 remove a VMS-ism that doesn't seem needed elsewhere 2007-05-21 21:49:34 -06:00
Brian
a01ee8ff0b improve some comments, clean-up formatting 2007-05-21 21:48:33 -06:00
Brian
3898e67f49 remove some whitespace 2007-05-21 21:48:08 -06:00
Brian
b4f8d4455b set texcoords depending on GLX_Y_INVERTED_EXT 2007-05-21 20:57:09 -06:00
Brian
a10ba38df7 return True for GLX_Y_INVERTED_EXT query 2007-05-21 20:56:35 -06:00
Roland Scheidegger
74a30c351f fog: fix potential issues with generated vp using fog
Change the generated vertex programs (tnl/brw) to follow the same logic as
the tnl fog wrt using absolute value, and sync them up a bit (untested).
2007-05-22 03:32:25 +02:00
Roland Scheidegger
3e21a014c3 fog: fix issues with negative fog coords (may fix #10529)
Rework tnl fog a bit. Make sure we always use ABS(eyez) when fog coord source
is depth, OTOH it does not seem to be necessary to use it (as was done before
in some cases) if fog coord source is fogcoord (just to save some work).
This fixes tests/fog (the first 2 cases) with i915/i915tex.
2007-05-22 03:32:25 +02:00
Roland Scheidegger
7f1879d4e1 make sure optimized fog params get updated 2007-05-22 03:32:25 +02:00
Roland Scheidegger
1078ef83eb i915/i915tex: minor cleanup (remove unneeded function call 2007-05-22 03:32:25 +02:00
Roland Scheidegger
b1c640deda unbreak 3d textures (typo when setting tex layout) 2007-05-22 03:32:24 +02:00
Eric Anholt
b1fcabefa2 Don't read beyond the end of the buffer with INTEL_DEBUG=bat. 2007-05-21 13:06:12 -07:00
Eric Anholt
b0b84529cf Enable INTEL_DEBUG environment variable. 2007-05-21 11:08:55 -07:00
Eric Anholt
2b325a9f32 Remove unused intel_batchpool.c.
This may need to be implemented again, but probably not as a buffer manager
(pool).
2007-05-21 10:53:33 -07:00
Eric Anholt
8b8d4d3e10 Notify the fake buffer manager on contended lock take. 2007-05-21 10:49:32 -07:00
Brian
724a155552 if light position is local, treat it as a homogeneous coord and divide by W (see bug 11009) 2007-05-21 10:55:15 -06:00
Brian
a8676c45cc if light position is local, treat it as a homogeneous coord and divide by W (see bug 11009) 2007-05-21 08:57:18 -06:00
Julien Cristau
e1b0715dd6 Prepare changelog for upload. 2007-05-21 11:35:28 +02:00
Julien Cristau
a5c6598966 Merge remote branch 'origin/debian-unstable' into debian-experimental
Conflicts:

	debian/changelog
2007-05-21 11:33:42 +02:00
Brian
9e8a961dd7 Overhaul/simplify SWvertex and SWspan attribute handling.
Instead of separate fog/specular/texcoord/varying code, just treat all of
them as generic attributes.  Simplifies the point/line/triangle functions.
2007-05-20 12:27:39 -06:00
Brian
aa133a9dae add missing right-paren 2007-05-20 12:17:21 -06:00
Oliver McFadden
9df4f842d5 r300: Added TODO comment regarding immediate mode implementation. 2007-05-20 17:20:10 +00:00
Oliver McFadden
62b6eef0d7 r300: Just use "inline" rather than "__inline__". 2007-05-20 13:38:32 +00:00
Brian
a2305ebfa2 need to copy new 1D/2D array texture objects in _mesa_PushAttrib() 2007-05-19 09:10:44 -06:00
Brian
74519c4231 Disable (at least for now) PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC typedef.
If an app (like progs/samples/blendxor.c) includes both gl.h and glext.h
this typedef will get hit in both headers, causing an error.
Possibly work around by bringing GL_NV_geometry_program4 items into gl.h.
2007-05-19 08:56:15 -06:00
Brian
80a5798719 added GL_EXT_texture_from_pixmap 2007-05-19 08:30:31 -06:00
Brian
4465377ca3 GLX_EXT_texture_from_pixmap test 2007-05-19 08:30:31 -06:00
Brian
7ace7cfba4 added texture_from_pixmap functions 2007-05-19 08:30:31 -06:00
Brian
fd54564f78 Implement GLX_EXT_texture_from_pixmap.
Could be done more efficiently... but works.
2007-05-19 08:30:31 -06:00
Roland Scheidegger
d38b74a316 fix miptree layout (i915) for small compressed mipmaps
This seems to work now. Also fix i945 set_level_info, need to match i915
behaviour for storing mip height, as it's assumed to be the mip width
(in texels) elsewhere and the division by 4 is done later (untested).
2007-05-19 04:43:50 +02:00
Roland Scheidegger
eb6418b895 fix miptree layout (i915) for small compressed mipmaps
This seems to work now. Also fix i945 set_level_info, need to match i915
behaviour for storing mip height, as it's assumed to be the mip width
(in texels) elsewhere and the division by 4 is done later (untested).
2007-05-19 04:38:55 +02:00
Roland Scheidegger
54cab4b47b fix copy & paste bug of previous commit, breaking dxt5 formats 2007-05-19 03:56:06 +02:00
Roland Scheidegger
25551bdfad fix copy & paste bug of previous commit, breaking dxt5 formats 2007-05-19 03:08:45 +02:00
Roland Scheidegger
c093666bc5 fix miptree comparison with compressed textures
TexelBytes is always 0 with compressed textures, thus would never match
mt->cpp. This caused constant blitting around of textures, and it fixes at
least the horrible performance of Q3 if compressed textures are enabled.
2007-05-19 01:39:54 +02:00
Roland Scheidegger
04972f6761 fix small s3tc mipmaps (#10968)
make sure that always whole blocks are uploaded.
(May still not work correctly if the top mip map is not at least a full block,
that is 4 pixels wide - not sure, but probably doesn't happen in real world)
2007-05-19 01:39:16 +02:00
Roland Scheidegger
28f53ace33 fix miptree comparison with compressed textures
TexelBytes is always 0 with compressed textures, thus would never match
mt->cpp. This caused constant blitting around of textures, and it fixes at
least the horrible performance of Q3 if compressed textures are enabled.
2007-05-19 00:59:46 +02:00
Roland Scheidegger
3ad9c551b9 fix small s3tc mipmaps (#10968)
make sure that always whole blocks are uploaded.
(May still not work correctly if the top mip map is not at least a full block,
that is 4 pixels wide - not sure, but probably doesn't happen in real world)
2007-05-19 00:59:46 +02:00
Eric Anholt
1bdee18536 Merge branch 'master' into i915-unification
Conflicts:

	src/mesa/drivers/dri/common/dri_bufmgr.c
	src/mesa/drivers/dri/common/dri_drmpool.c
	src/mesa/drivers/dri/i915tex/intel_batchpool.c
	src/mesa/drivers/dri/i915tex/intel_buffer_objects.c
	src/mesa/drivers/dri/i915tex/intel_regions.c
	src/mesa/drivers/dri/i915tex/intel_screen.c
	src/mesa/drivers/dri/i915tex/intel_screen.h
2007-05-18 14:14:12 -07:00
Eric Anholt
c085e350df Fix a refcounting mistake with first_swap_fence. 2007-05-18 13:47:46 -07:00
Eric Anholt
a926b7397b Fix another mis-calling of _fence_wait_internal. 2007-05-18 13:47:21 -07:00
Eric Anholt
431baf221e Allow unreference with a NULL argument. 2007-05-18 12:59:39 -07:00
Eric Anholt
425d0c6305 Fix double-counting of low_offset in block->virtual. 2007-05-18 12:57:34 -07:00
Eric Anholt
b0529dcc7b Zero out bufmgr_fake on alloc. 2007-05-18 12:39:00 -07:00
Eric Anholt
71648a088e Dead code elimination and fix bufmgr_fake_wait_idle. 2007-05-18 12:10:05 -07:00
Eric Anholt
180f0bb964 Kill old struct bufmgr members. 2007-05-18 12:09:34 -07:00
Eric Anholt
bb1bb88bab Fix some use-before-initialize in bufmgr_fake. 2007-05-18 11:55:00 -07:00
Eric Anholt
4cf2cc0d18 Ratchet required version down to 1.5 (pre-TTM). 2007-05-18 11:29:55 -07:00
Brian
67f8234622 set version to 7.0 2007-05-18 09:41:34 -06:00
Brian
201d6dbd9c fix STATE_HALF_VECTOR value (bug 10987) 2007-05-18 09:35:18 -06:00
Brian
4fca6bfa5d fix STATE_HALF_VECTOR value (bug 10987) 2007-05-18 07:46:27 -06:00
Julien Cristau
1865ef6fd4 Prepare changelog for upload. 2007-05-18 13:36:42 +02:00
Christoff Brill
8452814ec6 change max anisotropy test 2007-05-17 17:18:13 -06:00
Christoff Brill
63155ca2ca use R200_DEBUG for debug output 2007-05-17 17:17:25 -06:00
Christoff Brill
0985e786cd remove CVS/XFree86 keywords 2007-05-17 17:16:37 -06:00
Eric Anholt
b12b24a430 Restore missing intel_batchbuffer_reset() which was needed. 2007-05-17 15:36:43 -07:00
Eric Anholt
1f08f5d970 Rename the i915tex_dri.so driver to just i915_dri.so again. 2007-05-17 15:36:26 -07:00
Eric Anholt
cfc21190af Convert i915tex to the new interface and make it compile. 2007-05-17 15:28:01 -07:00
Ian Romanick
fbcac5aa83 Refactor determining whether a texture target can use compressed format 2007-05-17 14:45:25 -07:00
Brian
2b72ab8f8f document glXDestroyPbuffer fix 2007-05-17 15:30:39 -06:00
Brian
57ca033885 get rid of needless static function declarations at top of file 2007-05-17 15:28:42 -06:00
Brian
7fcf231c57 In DestroyPbuffer(), use GetReq() intead of GetReqExtra(). See bug 10983. 2007-05-17 15:28:42 -06:00
Brian
0ea97b9408 In DestroyPbuffer(), use GetReq() intead of GetReqExtra(). See bug 10983. 2007-05-17 15:26:39 -06:00
Ian Romanick
d834a870e6 Add missing _EXT suffix to 2D_ARRAY target enums. 2007-05-17 11:54:22 -07:00
Ian Romanick
817181ea50 Add array texture targets to list that can use compressed formats. 2007-05-17 11:16:19 -07:00
Ian Romanick
064cd7c78c Refactor determining whether a texture target can use compressed format 2007-05-17 11:14:58 -07:00
Brian
28683ac7c0 version 7.0, not 7.1 2007-05-17 09:07:25 -06:00
Brian
c72e3e210f version should be 7.0 2007-05-17 09:04:19 -06:00
Brian
b5bbe055e4 make srcPtr param to make_1d_stack_mipmap() const 2007-05-17 08:56:46 -06:00
Brian
6ee6b2dcd9 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-05-17 08:54:08 -06:00
Tommy Schultz Lassen
67f82731fc r300: Removed the radeon_vertex_buffer structure. 2007-05-17 14:11:23 +00:00
Ian Romanick
bb372f1c9b Initial implementation of MESA_texture_array
Shadow sampling from texture arrays is still not implemented.  Everything
else should be there, though.
2007-05-16 15:34:22 -07:00
Ian Romanick
9ebffb86a6 Initial version of MESA_texture_array spec. 2007-05-16 15:33:36 -07:00
Eric Anholt
7b971a5008 WIP: Replace TTM buffer pool manager with a simplified interface.
The interface is not solid yet (some simplification to do still, and
adjustment for 0-copy), and the drivers are not converted.  However, the new
interface allows using the same calls to support either a TTM or a classic
static allocation backend, with the static backend allowing a more limited
feature set.
2007-05-16 15:14:20 -07:00
Ian Romanick
2f61cbd30c Add simple program to test GL_MESA_texture_array. 2007-05-16 14:46:13 -07:00
Ian Romanick
78bd2912f8 Add enums and functions for GL_{MESA,EXT}_texture_array. 2007-05-16 14:45:52 -07:00
Ian Romanick
b0fe0d8a55 Bring framebuffer_texture's error checking more in-line with the spec. 2007-05-15 13:42:25 -07:00
Brian
347bb541f5 Skeleton file for 7.1 release notes. 2007-05-14 14:40:59 -06:00
Brian
c128c3ce8c master/trunk is now for Mesa 7.1 devel: bump versions 2007-05-14 14:30:36 -06:00
Bruce Merry
6efdf648f5 in __glXGetArrayType() return type, not enabled (bug 10938) 2007-05-14 09:38:23 -06:00
Brian
6a587c0124 comment about fixing uniform structs 2007-05-14 09:38:23 -06:00
Oliver McFadden
524c3336c4 r300: Enable the non-user-buffers code to compile. 2007-05-13 13:38:38 +00:00
Oliver McFadden
0e7e211055 r300: Use e32(0x0) rather than e32(0); makes greping for hex values easier. 2007-05-13 12:59:41 +00:00
Oliver McFadden
4e641bf3e9 r300: Use the defined values when writing to R300_RS_ROUTE_0. 2007-05-13 12:56:59 +00:00
Oliver McFadden
2189ff5e51 r300: Use the defined values when writing to R300_SE_VTE_CNTL.
You can verify this is correct with the following code.

  assert (0x043f ==
	  (R300_VTX_W0_FMT | R300_VPORT_X_SCALE_ENA | R300_VPORT_X_OFFSET_ENA
	   | R300_VPORT_Y_SCALE_ENA | R300_VPORT_Y_OFFSET_ENA |
	   R300_VPORT_Z_SCALE_ENA | R300_VPORT_Z_OFFSET_ENA));
2007-05-13 12:43:40 +00:00
Oliver McFadden
33a73466ae r300: Added a TODO comment for the R300_VAP_INPUT_ROUTE_[01]_0 values. 2007-05-13 12:36:27 +00:00
Oliver McFadden
13c0abd8a7 r300: Changed some more functions to static functions.
This required reordering some of the functions which is why the diff is a little
larger.
2007-05-13 09:09:30 +00:00
Oliver McFadden
82de92c0fb r300: Changed a couple of functions in r300_state.c to static functions. 2007-05-13 08:59:54 +00:00
Oliver McFadden
e4b8481f39 r300: Removed the unused r300_aos_rec (replaced by r300_dma_region) structure. 2007-05-13 08:43:30 +00:00
Oliver McFadden
b5990cec90 r300: Use #if 0 for disabled code, rather than commenting it out. 2007-05-13 08:28:51 +00:00
Oliver McFadden
d93642251e r300: Removed a couple of obsolete/commented out includes. 2007-05-13 08:21:50 +00:00
Oliver McFadden
c66fd808ac r300: A few very minor indenting corrections. 2007-05-13 07:51:41 +00:00
Oliver McFadden
73449270bb r300: Use the defined values for the interpolater (interp_magic) magic values. 2007-05-13 07:44:20 +00:00
Oliver McFadden
6f56e68ee3 r300: Use the defined values when writing to R300_VAP_INPUT_CNTL_[01].
You can verify this is correct with the following code.

  assert (0x00000001 == R300_INPUT_CNTL_0_COLOR);

  assert (0x00000405 ==
	  (R300_INPUT_CNTL_POS | R300_INPUT_CNTL_COLOR |
	   R300_INPUT_CNTL_TC0));
2007-05-13 06:39:24 +00:00
Oliver McFadden
65fae19383 Revert "r300: Perform the locking closer to the DRM texture upload call."
This reverts commit 93881edb46.
2007-05-12 17:18:57 +00:00
Roland Scheidegger
b78aec5767 bring over recent radeonMakeCurrent fixes for r300 to radeon/r200 2007-05-12 11:20:24 +02:00
Oliver McFadden
6bae7d40f7 r300: Removed the name argument to ALLOC_STATE; do the name via the macro. 2007-05-12 01:53:56 +00:00
Oliver McFadden
5f1f1f5704 r300: Renamed r300DoEmitState to r300EmitAtoms. 2007-05-12 01:13:54 +00:00
Oliver McFadden
93881edb46 r300: Perform the locking closer to the DRM texture upload call.
This might help if with attaching GDB if the driver gets into a -EAGAIN loop.
2007-05-12 00:14:33 +00:00
Oliver McFadden
56b99ace19 r300: Removed unused FORCE_32BITS_ELTS define. 2007-05-11 23:35:37 +00:00
Oliver McFadden
3aad47679e r300: Removed the unused CPT macro. 2007-05-11 23:33:47 +00:00
Oliver McFadden
dac5303692 r300: Moved r300PackFloat24 near r300PackFloat32. 2007-05-11 23:32:03 +00:00
Oliver McFadden
64b03f33ee r300: Added insert_at_tail to the ALLOC_STATE macro. 2007-05-11 23:13:08 +00:00
Oliver McFadden
b8b0dd1e20 Revert "r300: Merged radeon_span.c."
This reverts commit 0aa998b2ab.
2007-05-11 23:03:40 +00:00
Oliver McFadden
93f9e61f43 r300: Corrected another error; regexp replaced something it shouldn't have. 2007-05-11 22:26:47 +00:00
Oliver McFadden
f405fbb36d r300: Corrected some macro errors from the previous commit. 2007-05-11 22:23:31 +00:00
Oliver McFadden
5a09ea01e0 r300: Reduced the diff on radeon_lock.[ch]. 2007-05-11 22:21:19 +00:00
Oliver McFadden
98d25a5a28 r300: Initial work on merging radeon_lock.[ch]. 2007-05-11 22:02:52 +00:00
Oliver McFadden
0aa998b2ab r300: Merged radeon_span.c. 2007-05-11 21:56:10 +00:00
Oliver McFadden
b6087270a0 r300: Cleaned up function names in r300_texstate.c. 2007-05-11 21:45:14 +00:00
Oliver McFadden
3f709f16ef r300: Enable hardware 3D texture support. Fixes the stex3d demo. 2007-05-11 21:41:16 +00:00
Oliver McFadden
67363327e5 r300: Corrected a small error from 37cbf38c344012f9d6e938937dac3697b73721a8. 2007-05-11 21:41:16 +00:00
Oliver McFadden
bcaf8fc7b1 r300: Cleaned up the blend factor function. 2007-05-11 21:41:16 +00:00
Oliver McFadden
ef29d6af6c r300: Removed the r300BindProgram function; mesa default does better checking. 2007-05-11 21:41:16 +00:00
Oliver McFadden
6a69bb5864 r300: Removed deprecated/disabled VBO code from r300_mem.c
Also removed a couple of unused fields from the r300_memory_manager structure.
2007-05-11 21:41:16 +00:00
Oliver McFadden
cbd29adbc8 r300: Indented r300_mem.c; I forgot this because it used to be radeon_mm.c. 2007-05-11 21:41:16 +00:00
Oliver McFadden
c729e67321 r300: Use __FUNCTION__ not __func__.
Just for consistency; most of the code already uses __FUNCTION__.
2007-05-11 21:41:16 +00:00
Oliver McFadden
5b23d36613 r300: Assert if the primitive type is unknown; this can't really happen. 2007-05-11 21:41:16 +00:00
Oliver McFadden
a87390504f r300: Moved some code around in r300_render.c and general clean up. 2007-05-11 21:41:16 +00:00
Brian
cc358d861d user-declared uniform structs not supported yet (see bug 10908) 2007-05-11 15:35:12 -06:00
Brian
749e093e33 don't ignore return value of _slang_codegen_global_variable() 2007-05-11 15:34:29 -06:00
Brian
eab6e16522 remove some unneeded code in init_machine() 2007-05-11 15:12:40 -06:00
Oliver McFadden
1b39be3790 r300: Removed some checking in r300NumVerts that is not needed.
According to Aapo Tahkola the OpenGL specification defines the behaviour when
there are not enough vertices for the primitive type, thus DRI drivers do not
need to perform verification on the number of vertices per primitive.
2007-05-11 19:45:28 +00:00
Oliver McFadden
69ff5a3dbc r300: Function naming correction in r300_texmem.c. 2007-05-11 19:45:28 +00:00
Oliver McFadden
01ec508c7f r300: Cleaned up function names in r300_state.c. 2007-05-11 19:45:28 +00:00
Oliver McFadden
d4e3b0b2c2 r300: Cleaned up function naming in r300_emit.c. 2007-05-11 19:45:28 +00:00
Oliver McFadden
b63c70666f r300: Renamed r300_maos.c to r300_emit.c; it contains mostly emit code now. 2007-05-11 19:45:28 +00:00
Brian
c33c00764c Remove unused FB_* tokens, re-indent code. 2007-05-11 08:41:34 -06:00
Brian
6c342ad859 When feeding back texcoords, don't divide by W. See bug 10913. 2007-05-11 08:39:18 -06:00
Patrick Baggett
86e4f52f3c Fix some bugs related to loop counters and conditional branching. 2007-05-11 08:19:33 -06:00
Brian
f0707c789a more indentation fixes, remove 'register' keywords 2007-05-10 17:33:14 -06:00
Brian
aed53ba525 re-indent some code 2007-05-10 17:30:44 -06:00
Brian
3dec7c57b0 document exp(), mod() fixes 2007-05-10 16:14:16 -06:00
Brian
544e441f53 regenerated 2007-05-10 16:14:16 -06:00
Brian
fa546c367d Implement exp() in terms of __asm float_power. Fix typo in mod(vec4) function.
exp() was using __asm float_exp (OPCODE_EXP) but that computes base two, not e.
See bug 10907.
2007-05-10 16:14:15 -06:00
Ian Romanick
64a6a50155 Fix reversed enable logic in enable_texture
Fix bug inserted in commit c9e723e501.
Discovered by Oliver McFadden (z3ro).
2007-05-10 15:01:52 -07:00
Oliver McFadden
c103453d4f r300: Added TODO comment regarding texture tiling; I'm not sure about this. 2007-05-10 22:01:41 +00:00
Oliver McFadden
d7e3d1dc42 r300: Corrected a compile error introduced by one of the previous commits. 2007-05-10 21:40:20 +00:00
Oliver McFadden
02e44e41c8 r300: Removed obsolete start_index16_packet/start_index32_packet.
It's all in r300_render.c now.
2007-05-10 21:28:04 +00:00
Oliver McFadden
eed67a6e3e r300: Moved some more emit code into r300_render.c. 2007-05-10 19:24:16 +00:00
Oliver McFadden
e856edb279 r300: Moved some more of the emit code into r300_render.c. 2007-05-10 19:24:16 +00:00
Brian
58239d2ae3 document tex sampler bug fix, code changes 2007-05-10 10:52:19 -06:00
Brian
2f6a0840c4 Replace pkg-config --cflags libdrm with LIBDRM_CFLAGS, remove disabled lines, remove obsolete comments. 2007-05-10 10:51:54 -06:00
Ian Romanick
c9e723e501 Convert "bit" parameters to GLbitfield. Fix cut-and-paste bug in _mesa_IsEnabled
These changes are based on patch review comments from Brian Paul, Alan
Hourihane, and vehemens.
2007-05-10 08:20:42 -07:00
Ian Romanick
87a980a795 Refactor the loop in unbind_texobj_from_texunits.
Common code was pulled out of the per-target if-statment and put at the end
of the for-loop.  The common code is guarded by a new variable, curr, that
is set to point to the unit's current target in each if-statement.
2007-05-10 08:20:41 -07:00
Ian Romanick
e282f89a38 Refactor queries of GL_(SOURCE|OPERAND)[012]_(ALPHA|RGB).
Most switch-statements that have cases for these enums already use code like:

    const GLuint idx = pname - GL_SOURCE0_RGB;
    ... texUnit->Combine.SourceRGB[idx] ...

This patch just brings the remaining bits up to speed.
2007-05-10 08:20:41 -07:00
Ian Romanick
e2e4b60c7d Refactor the way TestProxyTexImage is called in texture_error_check. 2007-05-10 08:20:41 -07:00
Ian Romanick
58dacc8df1 Refactor Enable / Disable and IsEnabled bits related to texture targets. 2007-05-10 08:20:41 -07:00
J.Jansen
518f916886 Updated OpenVMS makefiles
modified:   src/mesa/descrip.mms
	modified:   src/mesa/drivers/osmesa/descrip.mms
	modified:   src/mesa/drivers/x11/descrip.mms
	modified:   src/mesa/main/descrip.mms
	modified:   src/mesa/shader/descrip.mms
	modified:   src/mesa/shader/slang/descrip.mms
	modified:   src/mesa/swrast/descrip.mms
	modified:   src/mesa/swrast_setup/descrip.mms
	modified:   src/mesa/tnl/descrip.mms
2007-05-10 08:04:39 +02:00
Oliver McFadden
b470189378 r300: Name the render functions in r300_render.c consistently. 2007-05-09 22:43:01 +00:00
Oliver McFadden
574bf4d346 r300: Return -1 for error. 2007-05-09 22:43:01 +00:00
Oliver McFadden
795ebb1a3b r300: Probably a good idea to always check the vertices; it's a WARN_ONCE so the
performance impact is extremely minimal.
2007-05-09 22:43:01 +00:00
Oliver McFadden
d0be8b959a r300: Added some more Doxygen documentation and made some functions static. 2007-05-09 22:43:01 +00:00
Oliver McFadden
672ecba175 r300: Removed the "texmicrotile" variable; the tiling code is disabled via a
compiler conditional anyway; probably broken?
2007-05-09 22:43:01 +00:00
Oliver McFadden
0dcea4bf8e r300: Converted a few "if (0)" into "if (RADEON_DEBUG & DEBUG_TEXTURE)". 2007-05-09 22:43:01 +00:00
Brian
16c503f39a Tweak the shell scripting for descending into and building subdirs.
In general, use this:
	@for dir in $(SUBDIRS) ; do \
		if [ -d $$dir ] ; then \
			(cd $$dir && $(MAKE)) || exit 1; \
		fi \
	done

Basically, silently skip missing subdirs but generate an error and stop if
there's a compilation or install problem.
This was done inconsistantly before.  In once case, a missing subdir was
causing us to go into an infinte loop!
2007-05-09 16:23:11 -06:00
Oliver McFadden
4d5d4e1f97 r300: Cleaned up radeon_context.h slightly; mostly Indent. 2007-05-09 21:06:28 +00:00
Oliver McFadden
a9ab36b8f2 r300: radeon_span.h is now common code; radeon_span.c still needs some work. 2007-05-09 20:52:09 +00:00
Oliver McFadden
88288b614e r300: Renamed the R300 memory manager from "radeon" to "r300"; it's R300
specific.
2007-05-09 20:49:49 +00:00
Oliver McFadden
a154706061 r300: Indented radeon_span.h 2007-05-09 20:41:27 +00:00
Oliver McFadden
6fe41a4c01 r300: Further reduced the radeon_span.c diff. 2007-05-09 20:36:48 +00:00
Oliver McFadden
f4a2b9f83d r300: I have no idea why this was forced on, but it seems to work fine when
restored to the previous behaviour.
2007-05-09 19:30:59 +00:00
Oliver McFadden
56c2f7bb42 r300: Removed the dangerous R300_SPAN_DISABLE_LOCKING flag.
Enabling R300_SPAN_DISABLE_LOCKING would probably cause more lockups; I think
there are a couple of other little bugs in this code, too. It's best to remove
it.
2007-05-09 19:24:59 +00:00
Oliver McFadden
df747eb354 r300: Removed a bit of disabled code. 2007-05-09 18:44:56 +00:00
Oliver McFadden
ff7a41a159 r300: Don't need to include the deprecated r300_program.h in some files.
The only file that still requires r300_program.h is r300_ioctl.c; and it should
use the new defines in r300_reg.h!
2007-05-09 18:37:46 +00:00
Oliver McFadden
01fdb34b39 r300; Indent would destroy r300_reg.h, so add *INDENT-OFF*. 2007-05-09 18:31:04 +00:00
Christoph Bill
3c9e5cb0bd r300: Added a few more Doxygen comments. 2007-05-09 18:25:12 +00:00
Christoph Bill
a6aa1f8016 r300: Added some Doxygen comments. 2007-05-09 18:24:06 +00:00
Oliver McFadden
967c2d220d r300: Converted "rp" variables (r300_fragment_program) to "fp". 2007-05-09 18:14:42 +00:00
Oliver McFadden
0e6b7eb9c0 r300: Don't need to sleep here; might cause performance problems the first time. 2007-05-09 18:11:38 +00:00
Oliver McFadden
ed42bd6e20 r300: Removed the obsolete GLX_DIRECT_RENDERING define. 2007-05-09 18:07:16 +00:00
Oliver McFadden
2db667290a r300: Further reduced the diff between radeon_span.[ch]. 2007-05-09 18:06:10 +00:00
Oliver McFadden
cea0c2b144 r300: Indented both copies of radeon_span.[ch] in preparation for merging. 2007-05-09 18:01:43 +00:00
Oliver McFadden
2b5ef29a7b r300: Removed the deprecated VTXFMT code.
This was okayed by Jerome Glisse and Keith Whitwell on the dri-devel IRC channel
and list, respectively.
2007-05-09 16:10:08 +00:00
Oliver McFadden
4ed59c6012 r300: The empty check_space doesn't and never has done anything; removed it. 2007-05-09 15:57:30 +00:00
Oliver McFadden
7e7b1f7c4d r300: Fix a couple of static errors. 2007-05-09 15:38:18 +00:00
Oliver McFadden
c48e4c6f09 r300: Fixed indenting from previous commit
d28f6d9176.
2007-05-09 15:28:38 +00:00
Oliver McFadden
4f20fe8a93 r300: Added R300_PRIM_NUM_VERTICES_MASK suggested by Jerome Glisse. 2007-05-09 15:21:13 +00:00
Oliver McFadden
d28f6d9176 r300: Fixed some more function names.
Note there might be some calls to the old function names in conditionally
disabled code, but I think I've got them all.
2007-05-09 15:19:05 +00:00
Oliver McFadden
fe6a2c4295 r300: Changed r300_run_vb_render calls to r300RunRender in some conditionally
disabled code.
2007-05-09 15:07:34 +00:00
Oliver McFadden
faf47d9f84 r300: Added a "not implemented yet" comment back. 2007-05-09 14:45:42 +00:00
Oliver McFadden
f9828f5c4f Merge branch 'master' of git://anongit.freedesktop.org/git/mesa/mesa 2007-05-09 14:23:22 +00:00
Oliver McFadden
7b165de5f8 r300: Last of the indent changes. :) 2007-05-09 14:19:45 +00:00
Brian
62ef001de7 add pointers to git repo for drm/libpciaccess, replace & with &amp; 2007-05-09 08:17:57 -06:00
Oliver McFadden
76d7b62cd2 r300: Indented r300_cmdbuf.[ch]. 2007-05-09 14:17:16 +00:00
Oliver McFadden
901fc0de18 r300: Indented r300_state.[ch]. 2007-05-09 14:12:34 +00:00
Oliver McFadden
c970811dab r300: Indented r300_texmem.[ch]. 2007-05-09 14:11:17 +00:00
Oliver McFadden
bb97694fad r300: Indented r300_texstate.[ch] 2007-05-09 14:09:35 +00:00
Brian
516259d609 Clean-up in I830AllocVidMem(), s/int/unsigned long/ for ret variable. 2007-05-09 08:07:15 -06:00
Brian
3e4302fe3b Check that texture units/samplers specified with glUniform1i() are legal. 2007-05-09 08:07:15 -06:00
Oliver McFadden
dcc8e5f4c1 r300: Indented r300_tex.[ch]. 2007-05-09 13:59:28 +00:00
Oliver McFadden
32c8d002d0 r300: Indented r300_context.[ch]. 2007-05-09 13:55:14 +00:00
Julien Cristau
a8c856d43c Cherry-pick commmit 65faf023 by Michel Dänzer to fix r300 crash.
r300: Don't crash in radeonUpdatePageFlipping when !radeon->glCtx->DrawBuffer.

This feels like a kludge, maybe there's a better solution.
2007-05-09 15:09:12 +02:00
Oliver McFadden
c9b87b8ad8 r300: Removed the unused immediate vertices mode macro.
Immediate vertices mode hasn't been supported since early CVS versions of the
R300 driver.
2007-05-09 04:30:16 +00:00
Oliver McFadden
5d61cfd1fd r300: Removed a disabled/obsolete e32 in the AOS function. 2007-05-09 04:27:31 +00:00
Oliver McFadden
93e957cc65 r300: Removed some disabled R200 code from the R300 driver. 2007-05-09 04:25:27 +00:00
Oliver McFadden
3eae496deb r300: Don't indent the tables in r300_texstate.c. 2007-05-09 04:20:35 +00:00
Oliver McFadden
81c6516af1 r300: Indented r300_vertprog.[ch]. 2007-05-09 04:12:04 +00:00
Oliver McFadden
9e91351826 r300: Indented r300_fragprog.[ch]. 2007-05-09 04:08:27 +00:00
Oliver McFadden
328b307e2f r300: Cleaned up the R300 Makefile. 2007-05-09 03:44:40 +00:00
Oliver McFadden
d316b4dc22 r300: Corrected a couple of "control reaches end of non-void function" warnings. 2007-05-09 03:40:06 +00:00
Oliver McFadden
f0126a76ac r300: Corrected an error in r300_vertprog.c.
Cannot use _mesa_warning here because we don't have a context pointer; perhaps
R300 specific warning and error functions are needed.
2007-05-09 03:38:45 +00:00
Oliver McFadden
b8640db021 r300: Corrected the exit codes for consistency; they are all -1 for error now.
The one exception is 300FlushCmdBuf.
2007-05-09 03:36:28 +00:00
Oliver McFadden
28b47110b6 r300: Converted exit calls to _mesa_exit calls.
Note that the exit codes are inconsistent and should be fixed.
2007-05-09 03:32:15 +00:00
Oliver McFadden
fe2c58d2d5 r300: Converted a few fprintf calls to _mesa_warning calls. 2007-05-09 03:25:33 +00:00
Oliver McFadden
4917955205 r300: Added a warning when texture state update fails. 2007-05-09 03:22:37 +00:00
Oliver McFadden
eca50a27e1 r300: Removed some obsolete code from r300_tex.c. 2007-05-09 03:18:14 +00:00
Oliver McFadden
0950e9727e mesa: Added Vim swap files to .gitignore. 2007-05-09 03:14:08 +00:00
Oliver McFadden
504fafe389 r300: Updated .gitignore. 2007-05-09 03:12:51 +00:00
Oliver McFadden
72608aedc3 r300: Added the Linux Kernel indent script. 2007-05-09 03:12:22 +00:00
Oliver McFadden
be56660ba0 r300: Indented r300_state.[ch]. 2007-05-09 02:59:11 +00:00
Oliver McFadden
36c8bc6141 r300: Indented r300_emit.h. 2007-05-09 02:52:37 +00:00
Oliver McFadden
5c8296a6ab r300: Indented r300_cmdbuf.[ch]. 2007-05-09 02:51:13 +00:00
Oliver McFadden
6665658a56 r300: Indented r300_shader.[ch]. 2007-05-09 02:50:13 +00:00
Oliver McFadden
204bc4e441 r300: Indented r300_maos.[ch]. 2007-05-09 02:49:14 +00:00
Oliver McFadden
e90ad3dbbb r300: Indented r300_ioctl.[ch]. 2007-05-09 02:46:57 +00:00
Oliver McFadden
8d62afdb6a r300: Removed the obsolete pfs_reg_t type from r300_fragprog.h. 2007-05-09 02:41:38 +00:00
Oliver McFadden
59494bafb4 r300: Use an array for the vertex program sources and corrected an error from
4960af08ad.
2007-05-09 02:35:07 +00:00
Oliver McFadden
33939fd29b r300: Removed the ugly CARD32 type. 2007-05-09 02:27:08 +00:00
Oliver McFadden
4960af08ad r300: Renamed vertex_shader.h to r300_vertprog.h 2007-05-09 02:24:59 +00:00
Oliver McFadden
f5b0cafbb1 r300: Removed obsolete pixel_shader.h header file. 2007-05-09 02:18:29 +00:00
Zou Nan hai
58eac1bbf3 Support loop, conditional update fix 2007-05-09 10:08:10 +08:00
Oliver McFadden
c578354642 r300: Renamed the VBO functions to the R300 name format. 2007-05-08 21:04:57 +00:00
Brian
da37ac5ee7 remove some debug code 2007-05-08 14:08:45 -06:00
Brian
ed2fddc98e special case for -pthread (bug 10876) 2007-05-08 14:03:04 -06:00
Brian
58eaf0acca a somewhat nicer demo w/ command line options 2007-05-08 13:48:52 -06:00
Oliver McFadden
d132f7245d r300: Removed some deprecated code from r300_context.c and corrected an unused
variable warning in r300_render.c.
2007-05-08 19:46:25 +00:00
Oliver McFadden
73bc8b63ac r300: Last few r300_render.c clean up. 2007-05-08 19:38:44 +00:00
Oliver McFadden
377ce9e074 r300: Merged some comments into the Doxygen documentation. 2007-05-08 19:35:36 +00:00
Oliver McFadden
f1d785188b r300: Cleaned up r300_render.c using Indent with appropriate options.
This corrects the mess of space and tab indenting that existed in this file, and
probably others. The diff is actually very small if you use an external diff
program and ignore whitespace.
2007-05-08 19:31:30 +00:00
Oliver McFadden
313c4c2643 r300: General render clean up; added some Doxygen documentation, too. 2007-05-08 19:22:15 +00:00
Oliver McFadden
fbeae4f70c r300: Moved the pipeline stages together for readability. 2007-05-08 18:47:26 +00:00
Oliver McFadden
9301a6a325 r300: Print the OpenGL define instead of a 2-digit char code in the warning. 2007-05-08 18:43:56 +00:00
Oliver McFadden
6c036812be r300: Clean up the vertex buffer emission code and reduced code duplication.
I tested both the unoptimized and optimized versions with Quake 3 Arena; there
are no problems.
2007-05-08 18:28:04 +00:00
Oliver McFadden
c6abbbfd02 r300: Cleaned up a lot of cruft in r300_render.c. 2007-05-08 18:05:10 +00:00
Dave Airlie
8a7f474c69 i915/miniglx: remove unused code 2007-05-08 10:53:43 +10:00
Dave Airlie
47e33a27df miniglx: fixup use of create windows x and y coordinates
This makes miniglx take not of the x and y from XCreateWindow
2007-05-08 10:51:44 +10:00
Dave Airlie
401629c721 miniglx/glut: should use the x/y pos to create window
This allows moving miniglx glut windows around the framebuffer
2007-05-08 10:49:31 +10:00
Brian
f1770c3210 better comments for _mesa_debug(), _mesa_warning(), etc 2007-05-07 14:13:23 -06:00
Dave Airlie
8130a4fe98 radeon: enable xpress chipsets
glxgears and googleearth now run so that seems like a good start

Thanks to Aapo Tahkola for doing the 3D work on this so far, I got lost
after the GART changes.
2007-05-07 07:06:08 +10:00
Aapo Tahkola
8f1c63b263 rs480: fix secondary color for real this time 2007-05-06 19:25:45 +03:00
Aapo Tahkola
857ebc6d47 Merge branch 'master' of git+ssh://aapot@git.freedesktop.org/git/mesa/mesa 2007-05-06 19:19:16 +03:00
Aapo Tahkola
660bdc616b rs480: fix textures and secondary color(?). clipping is still busted. tested on r480 2007-05-06 19:18:10 +03:00
Aapo Tahkola
88ae491bd2 r300: fix broken vbos 2007-05-06 19:10:39 +03:00
Oliver McFadden
8445960d9f r300: Added R300_AA_DISABLE for R300_GB_AA_CONFIG. 2007-05-06 12:09:42 +00:00
Oliver McFadden
74cae00c0e r300: Removed more deprecated state code that is now set in separate functions. 2007-05-06 11:56:36 +00:00
Oliver McFadden
56d9663574 r300: R300_ZS_... is now set in separate functions; removed the deprecated code. 2007-05-06 11:54:00 +00:00
Oliver McFadden
81d1a04e04 r300: Point size is now set in a separate function; removed the deprecated code. 2007-05-06 11:52:03 +00:00
Oliver McFadden
62cbe6c3f3 r300: Use the defined values for R300_VAP_CNTL_STATUS. 2007-05-06 11:36:24 +00:00
Aapo Tahkola
16cec9f767 r300: fix primary color on rs480 2007-05-06 14:28:23 +03:00
Aapo Tahkola
5e2a66466d 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. 2007-05-05 17:07:46 +03:00
Dave Airlie
b3378f6cc5 nouveau: disable nouveau build by default
Until this is API/ABI stable building it by default isn't a good idea.
2007-05-05 15:43:01 +10:00
Brian
91948f99dd add </ol> tag 2007-05-04 18:32:02 -06:00
Brian
ae5f67575d Makefile clean-ups for miniglx. 2007-05-04 18:27:12 -06:00
Brian
e75fbd3f91 Assorted miniglx updates. 2007-05-04 18:26:41 -06:00
Brian
a6dad578b5 document R300 bug fix 10848 2007-05-03 13:52:33 -06:00
Brian
c6443eb1a3 fix some matrix/state token indexing bugs (see bug 10848) 2007-05-03 12:33:25 -06:00
Brian
121533defb add some #includes to silence warnings 2007-05-03 09:50:08 -06:00
Brian
3cddba688d get rid of normal vector 2007-05-02 18:55:45 -06:00
Brian
dc881e1909 get rid of OSMESA stuff 2007-05-02 18:54:57 -06:00
Brian
2dfb03beb2 New test of the dFdx(), dFdy() functions. 2007-05-02 18:48:51 -06:00
Brian
18cfe0c801 document recent GLSL, R300 fixes 2007-05-02 18:46:45 -06:00
Brian
60d136f63c changes to get DDX/DDY working again 2007-05-02 18:45:44 -06:00
Brian
62da6a1b3e Resuscitate some of the DDX,DDY code.
Only works for program input registers at this time.
Good enough for the common case of texcoords, though.
2007-05-02 18:44:34 -06:00
Brian
77e7535c0f fix some DDX,DDY mix-ups 2007-05-02 18:42:57 -06:00
Brian
5c1b53d58d Document a deficiency in the _swrast_Translate() function with regard to point size. 2007-05-02 12:06:43 -06:00
Brian
b2f1d6422b fix some renderbuffer/wrapper bugs 2007-05-02 08:48:43 -06:00
Brian
99f24c8d17 fix some StepX/StepY mix-ups in alpha interpolation 2007-05-02 08:48:20 -06:00
Brian
04c401c91e add *gc, *syn files to tarballs 2007-05-02 08:29:14 -06:00
Brian
03f201d935 regenerated 2007-05-01 14:03:16 -06:00
Brian
594b5ad87d implement acos(), asin(), atan() 2007-05-01 14:02:49 -06:00
Brian
bfd5cf72c4 fog, mix() bug fixes 2007-05-01 10:23:15 -06:00
Brian
7559364027 Rewrite of slang_inline_asm_function() to do full parameter/argument substitution.
We had been taking a short-cut w/ asm inlines by just using parameters in order
rather than doing full formal parameter -> actual argument substitution like
ordinary inlined function calls.  This worked in all cases but one: mix() in
which the parameters were used in a different order.
This fixes bug 10821.
2007-05-01 10:22:08 -06:00
Michel Dänzer
65faf02367 r300: Don't crash in radeonUpdatePageFlipping when !radeon->glCtx->DrawBuffer.
This feels like a kludge, maybe there's a better solution.
2007-04-30 18:28:24 +02:00
Zou Nan hai
a78b26fff0 support nested function call
else instruction fix.
2007-04-30 15:24:38 +08:00
David Nusinow
1953cfc954 Update changelog 2007-04-30 00:08:11 -04:00
David Nusinow
8e7bac950e Merge branch 'upstream-experimental' into debian-experimental 2007-04-29 23:23:00 -04:00
Michel Dänzer
c409dbcae3 r300: Page flipping fixes.
Mostly making sure the page flipping state is respected when necessary.
2007-04-29 13:52:48 +02:00
Michel Dänzer
cbf280dc26 r300: radeonMakeCurrent cleanups.
r300UpdateWindow is superfluous or even possibly wrong here; _mesa_make_current
will set the viewport when necessary. So the conditional _mesa_set_viewport call
can go as well.
2007-04-29 13:52:11 +02:00
Brian
af0ae93863 only load front/back face attrib if using a shader (bug 10788) 2007-04-28 08:51:23 -06:00
Brian
bcc3baadba use EMIT_1F or EMIT_4F for fog depending on fragment program (bug 10788) 2007-04-28 08:50:07 -06:00
Brian
4ca7c804db fix GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB bug (10787) 2007-04-28 08:01:18 -06:00
Keith Packard
bfaf6156fb additional checks that attr is a texcoord 2007-04-28 07:50:06 -06:00
Brian
d741b10be6 7.0 blurb 2007-04-27 17:05:29 -06:00
Brian
e371a5f084 Version bumps for 7.0 2007-04-27 17:01:23 -06:00
Brian
af846712fd updates for 7.0 2007-04-27 17:00:13 -06:00
Brian
c4615abb11 added 7.0 relnotes link 2007-04-27 16:54:05 -06:00
Brian
430e036413 added 6.5.3 MD5 sums 2007-04-27 16:53:42 -06:00
Brian
502ebe90e8 7.0 release notes (template) 2007-04-27 16:53:26 -06:00
Brian
02e958a1e4 added glGetActiveAttrib 2007-04-27 16:27:36 -06:00
Brian
cce5084941 "Fix" for bug 9170. May need more attention. 2007-04-27 15:41:07 -06:00
Brian
4b1d1b7b18 document perspective correction issues 2007-04-27 15:25:00 -06:00
Brian
7ff72a7659 document broken inverse trig functions 2007-04-27 15:23:19 -06:00
Brian
c4b3b8dece asin(), acos(), atan() just return 0.5 for now to avoid crashing. Fix someday. 2007-04-27 15:22:58 -06:00
Brian
65bab0dad8 remove rc4 suffix 2007-04-27 08:00:51 -06:00
Brian
74edc663a6 set 6.5.3 release date 2007-04-27 08:00:37 -06:00
Brian
54d59cfb70 Added error check that all varying vars needed by the fragment shader are produced by vertex shader. 2007-04-26 12:20:53 -06:00
Brian
b7f5b8af65 Unconditionally update _TriangleCaps bits. Fixes software fallback bugs, such as #10687. 2007-04-26 10:45:44 -06:00
Brian
4099531a0a bump Windows to OpenGL 2.1, set release date 2007-04-26 07:50:26 -06:00
Brian
1606f2c123 enable 2.1 extensions 2007-04-26 07:49:33 -06:00
Brian
1dd7c00214 Windows updates 2007-04-26 07:48:35 -06:00
Brian
f42d4ab41e move #include <GL/glut.h> after other #includes for Windows 2007-04-26 07:46:59 -06:00
Brian
4a28548cbf use sqrt(), not sqrtf() for Windows 2007-04-26 07:46:38 -06:00
Karl Schultz
5814922d25 updates for 6.5.3 w/ VC8 2007-04-25 10:28:37 -06:00
Brian
3de20aead2 RC4 2007-04-25 10:01:30 -06:00
Brian
6d27194dff fix attribsMask (re-fixes depth peeling algorithm) 2007-04-25 09:58:15 -06:00
Julien Cristau
03cdacfb6a Prepare changelog for upload. 2007-04-25 10:37:10 +02:00
Julien Cristau
30f3c3dfad Update changelog. 2007-04-25 08:42:02 +02:00
Julien Cristau
dee1b0d5bb Merge remote branch 'upstream/master' into debian-experimental 2007-04-25 08:40:39 +02:00
Brian
c233aa2768 s/fog/attrib[FRAG_ATTRIB_FOGC][0]/ 2007-04-24 22:32:41 -06:00
Brian
c93b2a1cb7 s/fog/attrib[FRAG_ATTRIB_FOGC][0]/ 2007-04-24 22:22:14 -06:00
Julien Cristau
6f2b0fe463 New upstream release candidate.
Refresh a couple patches.
2007-04-25 01:48:33 +02:00
Julien Cristau
0c69176498 Merge tag 'mesa_6_5_3_rc3' into debian-experimental 2007-04-25 01:41:05 +02:00
Julien Cristau
4e7a0385b5 Merge tag 'mesa_6_5_3_rc2' into debian-experimental 2007-04-25 01:40:50 +02:00
Brian
eca456b63d s/DO_TEXVAR/DO_ATTRIBS/ 2007-04-24 16:57:38 -06:00
Brian
4003bde6ff get rid of an extra textured triangle function 2007-04-24 16:47:33 -06:00
Brian
ddcf819906 s/TEXTURE/ATTRIBS/ 2007-04-24 16:47:07 -06:00
Brian
9ede048127 trim down the number of line drawing functions, special cases 2007-04-24 16:40:54 -06:00
Brian
97693436a5 only need one CI-mode triangle function 2007-04-24 16:20:50 -06:00
Brian
8a8a5bd104 s/INTERP_TEX/INTERP_ATTRIBS/ 2007-04-24 16:16:25 -06:00
Brian
3e5eda9ee9 fix typo 2007-04-24 10:21:10 -06:00
Brian
f38dcc8a6a added missing VC8 .sln files 2007-04-24 10:19:19 -06:00
Brian
b1b154c498 added new VC* files, bump version to rc3 2007-04-24 08:58:12 -06:00
Karl Schultz
286faac68e assorted fixes for Windows/VC8 2007-04-24 08:53:28 -06:00
Brian
3b0bd0ce17 new VC8 project files 2007-04-24 08:52:34 -06:00
Karl Schultze
208ea84524 fix double const, move an assertion 2007-04-24 08:19:07 -06:00
Matthias Hopf
7868ab6617 add missing semicolon 2007-04-24 07:48:35 -06:00
Sean D'Epagnier
47ad443c55 Added proper cleanup code 2007-04-23 21:17:30 -07:00
Brian
3db3dc58bc disable some errant code 2007-04-23 22:04:03 -06:00
Brian
c27adc52ce remove SWvertex->fog field, use attrib field 2007-04-23 22:03:11 -06:00
Brian
afc132e7a9 remove SWvertex->fog field, use attrib field 2007-04-23 22:01:34 -06:00
Brian
335769a875 some re-org, clean-up 2007-04-23 21:27:13 -06:00
Brian
0bdf216dd0 Improve the code for interpolating fragment attributes a little. More to come... 2007-04-23 21:21:52 -06:00
Julien Cristau
4adbd94b10 Only install stuff in mesa-swx11-source if we're building arch:all packages. 2007-04-23 11:00:09 +02:00
Brian
d59e6f233b import glxext.h version 19 2007-04-22 15:32:10 -06:00
Julien Cristau
4a2905b645 Delete obsolete file. 2007-04-22 18:08:58 +02:00
Julien Cristau
0638c6b530 Add generated files from the tarball so they're included in mesa-swx11-source. 2007-04-22 18:08:35 +02:00
Julien Cristau
7dd35ce013 Delete .gitignore files which do more harm than good in a debian package tree. 2007-04-22 18:07:52 +02:00
Sean D'Epagnier
ad02042db2 Fixed fallout, glfbdev driver was calling a nop function that was removed. 2007-04-21 20:18:42 -07:00
Julien Cristau
c8629c3178 Resync debian/scripts/install-source.sh. 2007-04-22 00:51:10 +02:00
Julien Cristau
77ccf51cb3 New upstream release candidate. 2007-04-22 00:50:40 +02:00
Julien Cristau
01197f0c77 Merge branch 'upstream-experimental' into debian-experimental 2007-04-22 00:34:30 +02:00
Julien Cristau
69c86ff4fd Remove leftover file. 2007-04-22 00:33:38 +02:00
Brian
f793e90e82 Fix color sum bug 10688. 2007-04-21 15:58:37 -06:00
Brian
112e1f2b5a specularColor.alpha should default to 1, not 0 2007-04-21 15:56:10 -06:00
Brian
e5cf37c178 fix SkipPixels bugs in _mesa_pack_bitmap(), bug 10690 2007-04-21 14:12:57 -06:00
Julien Cristau
9a42ffad81 Add build-dependencies on libxdamage-dev and libxfixes-dev. 2007-04-21 21:23:21 +02:00
Julien Cristau
0d8633bf8c Delete autogenerated files, and files not included in the tarball. 2007-04-21 21:20:37 +02:00
Brian
b5e9b0e562 Remove the !rb->Data check that was added a few months ago.
Was changed while debugging #7205.  Broke the shadowtext demo.  Revisit this
if the problem w/ bug 7205 returns...
2007-04-21 13:18:06 -06:00
Brian
b1502588c4 s/occlude.h/queryobj.h/ 2007-04-21 12:54:23 -06:00
Julien Cristau
d79e80a3d0 New upstream release candidate.
Drop patches included upstream.
2007-04-21 20:47:01 +02:00
Brian
74afcabd85 Rename occlude.[ch] to queryobj.[ch] 2007-04-21 12:42:54 -06:00
Brian
b3ab925e91 Rename occlude.[ch] to queryobj.[ch] to better reflect contents. 2007-04-21 12:36:39 -06:00
Brian
2d2c6a622d prep for 6.5.3 rc2 2007-04-21 12:31:51 -06:00
Brian
fc3d6bd351 memory leaks fixed 2007-04-21 12:30:58 -06:00
Brian
e261d66d81 Remove all the USE_MEMPOOL debug code. 2007-04-21 12:30:58 -06:00
Brian
cd3e39340f Use new memory pool allocator. Lots of debug code still in place... 2007-04-21 12:30:58 -06:00
Julien Cristau
d890ebdd25 Merge branch 'upstream-experimental' into debian-experimental
Conflicts:

	doxygen/Makefile
	doxygen/common.doxy
	doxygen/doxy.bat
	doxygen/glapi.doxy
	doxygen/header.html
	doxygen/main.doxy
	doxygen/math.doxy
	doxygen/shader.doxy
	doxygen/swrast.doxy
	doxygen/swrast_setup.doxy
	doxygen/tnl.doxy
	doxygen/tnl_dd.doxy
	progs/tests/Makefile
	progs/tests/fbotest1.c
	progs/tests/fbotest2.c
	progs/tests/fbotexture.c
	progs/tests/mipmap_limits.c
	progs/tests/sharedtex.c
	progs/tools/trace/gltrace_support.cc
	progs/trivial/Makefile
	src/egl/docs/EGL_MESA_screen_surface
	src/egl/main/egllog.c
	src/glx/mini/Makefile
	src/glx/mini/driver.h
	src/mesa/drivers/allegro/amesa.c
	src/mesa/drivers/windows/gldirect/dx7/gld_driver_dx7.c
	src/mesa/drivers/windows/gldirect/dx7/gld_ext_dx7.c
	src/mesa/drivers/windows/gldirect/dx7/gld_primitive_dx7.c
	src/mesa/drivers/windows/gldirect/dx8/gld_driver_dx8.c
	src/mesa/drivers/windows/gldirect/dx8/gld_ext_dx8.c
	src/mesa/drivers/windows/gldirect/dx8/gld_primitive_dx8.c
	src/mesa/drivers/windows/gldirect/dx9/gld_driver_dx9.c
	src/mesa/drivers/windows/gldirect/dx9/gld_ext_dx9.c
	src/mesa/drivers/windows/gldirect/dx9/gld_primitive_dx9.c
	src/mesa/drivers/windows/gldirect/mesasw/gld_wgl_mesasw.c
2007-04-21 20:27:55 +02:00
Brice Goglin
5ee9b3ce72 Fix conflicts for libGLw packages.
libglw1-mesa does not have to conflict with earlier libgl1-mesa-swx11
(libGLw was only shipped as development libs/headers within swx11-dev).

libglw1-mesa-dev needs to conflicts with libglw-dev.
2007-04-21 20:20:03 +02:00
Brice Goglin
031b539a09 Split out libGLw libs and headers from libgl1-mesa-swx11.
Ship both static and shared libraries for libGLw, creating libglw1-mesa and
libglw1-mesa-dev (closes: #374904).
2007-04-21 20:19:38 +02:00
Ian Romanick
ad3cc95485 Fix FBO completeness bug in shadowtex. 2007-04-21 10:48:24 -07:00
Brian
4e0a64675c added MemPool field 2007-04-21 10:18:49 -06:00
Brian
d5e7234ba8 call grammar_alloc_free() to fix memleaks 2007-04-21 10:05:05 -06:00
Brian
bc74cb4c0a destroy window upon exit 2007-04-21 10:05:05 -06:00
Brian
257f799849 remove more unused vars, assertions 2007-04-21 10:05:05 -06:00
Brian
81c4fee160 remove unused vars, assertions 2007-04-21 10:05:05 -06:00
Brian
1fbdd9d794 added slang_mem.c 2007-04-21 10:05:05 -06:00
Brian
82839e8430 Memory pool manager.
Instead of doing intricate malloc/free tracking during compiling, allocate
everything (which would be discarded after compiling) from a pool that can
be freed en masse when done.
2007-04-21 10:05:05 -06:00
Brian
ced6f76404 undo a test/debug change 2007-04-21 10:05:05 -06:00
Brian
4cc2674aee fix instruction comment code 2007-04-21 10:05:05 -06:00
Brian
a7f7366d38 another bit of debug code 2007-04-21 10:05:05 -06:00
Brian
11e3f733ba free subroutine array (fix mem leak) 2007-04-21 10:05:05 -06:00
Brian
98ef18909a new varnames in slang_operation_insert() 2007-04-21 10:05:05 -06:00
Brian
f2346498aa fix memleak in slang_operation_insert() 2007-04-21 10:05:05 -06:00
Brian
4b7c6fc5a6 free shProg->Attributes in _mesa_free_shader_program_data() 2007-04-21 10:05:05 -06:00
Brian
fe16b9f663 move allocation of shProg->Attributes earlier in function 2007-04-21 10:05:05 -06:00
Brice Goglin
47c3c706e8 Add 09_i915_always_enable_pixel_fog.patch 2007-04-21 18:00:12 +02:00
Brian
c9855a60f4 Call _mesa_warning() instead of _mesa_problem() when external s3tc lib not found.
The later incorrectly encourages filing a bug (10703, for example).
2007-04-21 09:47:36 -06:00
Jeremy Kolb
838a2a2633 Make xcb backend compile.
Add nouveau to match linux-dri config.
2007-04-20 21:53:38 -04:00
Brian
e7e5279fc0 Remove unused Imakefiles. 2007-04-20 19:18:13 -06:00
Brian
7fd3a6c521 Long obsolete. 2007-04-20 19:01:21 -06:00
Brian
720cf3aa13 added new xm_glide.c file 2007-04-20 18:55:13 -06:00
George Sapountzis
5491c8194c xmesa: call _glapi_set_dispatch() for all xserver DDXes.
This is to unify the xmesa code across xserver DDX'es. The call is intented for
XGL, but it does not hurt to call for other DDX'es. In fact it was not guarded
against XGL when it was first added in xserver.
2007-04-20 21:09:00 +03:00
George Sapountzis
e4e2068ac9 xmesa: minor cosmetic
mainly drop 'client' argument from initialize_visual_and_buffer().
2007-04-20 21:08:58 +03:00
George Sapountzis
6346a753c6 xmesa: split FX functions to separate file, part 2. 2007-04-20 21:08:57 +03:00
George Sapountzis
4d944b502f xmesa: split FX functions to separate file, part 1. 2007-04-20 21:08:56 +03:00
George Sapountzis
6aa5668871 xmesa: spilt FX code to separate functions. 2007-04-20 21:08:55 +03:00
George Sapountzis
d60009bd6d Revert "xmesa: drop glide (FX) backend."
This reverts commit 2a2f8d806f.
2007-04-20 21:08:53 +03:00
Brice Goglin
0d830a616c Add 08_r300_update_window_state_when_bound_but_stamp_changed.patch 2007-04-20 18:53:47 +02:00
Brice Goglin
e219bf8338 Add 07_call_radeonSetCliprects_from_radeonMakeCurrent.patch 2007-04-20 18:44:59 +02:00
Julien Cristau
6c0fba2480 Prepare changelog for upload. 2007-04-20 05:58:00 +02:00
Julien Cristau
f4cc159f53 Revert " * Split out libGLw libs and headers from libgl1-mesa-swx11 and ship both"
This reverts commit 856ae782c7.

Conflicts:

	debian/changelog
2007-04-20 05:55:04 +02:00
Julien Cristau
04c002abc2 Revert "Fix conflicts for libGLw packages."
This reverts commit 048144074b.
2007-04-20 05:53:59 +02:00
Julien Cristau
78fd17907e Merge branch 'debian-experimental' into debian-unstable 2007-04-20 05:52:20 +02:00
Julien Cristau
47edc83080 Merge branch 'debian-experimental' into debian-unstable
Conflicts:

	configs/debian-osmesa16
	configs/debian-osmesa16-static
	configs/debian-osmesa32
	configs/debian-osmesa32-static
	debian/changelog
	debian/compat
	debian/control
	debian/copyright
	debian/libgl1-mesa-dev.install
	debian/libgl1-mesa-swx11-dev.install
	debian/libgl1-mesa-swx11.shlibs
	debian/libglu1-mesa-dev.install
	debian/mesa-common-dev.docs
	debian/mesa-common-dev.install
	debian/rules
	src/mesa/x86-64/matypes.h
	src/mesa/x86/matypes.h
2007-04-20 05:44:24 +02:00
Julien Cristau
33e34f5bf4 Merge tag 'mesa_6_5_1' into debian-unstable
Conflicts:

	progs/util/README
	progs/util/glstate.c
	progs/util/glstate.h
	progs/util/sampleMakefile
	src/glu/sgi/libnurbs/interface/bezierEval.h
	src/glu/sgi/libnurbs/interface/bezierPatch.cc
	src/glu/sgi/libnurbs/interface/bezierPatch.h
	src/glu/sgi/libnurbs/interface/bezierPatchMesh.cc
	src/glu/sgi/libnurbs/interface/bezierPatchMesh.h
	src/glu/sgi/libnurbs/interface/glcurveval.cc
	src/glu/sgi/libnurbs/interface/glimports.h
	src/glu/sgi/libnurbs/interface/glinterface.cc
	src/glu/sgi/libnurbs/interface/glrenderer.h
	src/glu/sgi/libnurbs/interface/incurveeval.cc
	src/glu/sgi/libnurbs/interface/insurfeval.cc
	src/glu/sgi/libnurbs/interface/mystdio.h
	src/glu/sgi/libnurbs/interface/mystdlib.h
	src/glu/sgi/libnurbs/internals/arc.h
	src/glu/sgi/libnurbs/internals/arcsorter.cc
	src/glu/sgi/libnurbs/internals/arcsorter.h
	src/glu/sgi/libnurbs/internals/arctess.h
	src/glu/sgi/libnurbs/internals/backend.cc
	src/glu/sgi/libnurbs/internals/backend.h
	src/glu/sgi/libnurbs/internals/basiccrveval.h
	src/glu/sgi/libnurbs/internals/basicsurfeval.h
	src/glu/sgi/libnurbs/internals/bezierarc.h
	src/glu/sgi/libnurbs/internals/bin.cc
	src/glu/sgi/libnurbs/internals/bin.h
	src/glu/sgi/libnurbs/internals/bufpool.cc
	src/glu/sgi/libnurbs/internals/bufpool.h
	src/glu/sgi/libnurbs/internals/cachingeval.cc
	src/glu/sgi/libnurbs/internals/cachingeval.h
	src/glu/sgi/libnurbs/internals/ccw.cc
	src/glu/sgi/libnurbs/internals/coveandtiler.h
	src/glu/sgi/libnurbs/internals/curve.cc
	src/glu/sgi/libnurbs/internals/curve.h
	src/glu/sgi/libnurbs/internals/curvelist.cc
	src/glu/sgi/libnurbs/internals/curvelist.h
	src/glu/sgi/libnurbs/internals/curvesub.cc
	src/glu/sgi/libnurbs/internals/dataTransform.cc
	src/glu/sgi/libnurbs/internals/dataTransform.h
	src/glu/sgi/libnurbs/internals/defines.h
	src/glu/sgi/libnurbs/internals/displaylist.cc
	src/glu/sgi/libnurbs/internals/displaylist.h
	src/glu/sgi/libnurbs/internals/displaymode.h
	src/glu/sgi/libnurbs/internals/flist.cc
	src/glu/sgi/libnurbs/internals/flist.h
	src/glu/sgi/libnurbs/internals/flistsorter.cc
	src/glu/sgi/libnurbs/internals/flistsorter.h
	src/glu/sgi/libnurbs/internals/gridline.h
	src/glu/sgi/libnurbs/internals/gridtrimvertex.h
	src/glu/sgi/libnurbs/internals/gridvertex.h
	src/glu/sgi/libnurbs/internals/hull.cc
	src/glu/sgi/libnurbs/internals/hull.h
	src/glu/sgi/libnurbs/internals/intersect.cc
	src/glu/sgi/libnurbs/internals/jarcloc.h
	src/glu/sgi/libnurbs/internals/knotvector.h
	src/glu/sgi/libnurbs/internals/mapdesc.cc
	src/glu/sgi/libnurbs/internals/mapdesc.h
	src/glu/sgi/libnurbs/internals/mapdescv.cc
	src/glu/sgi/libnurbs/internals/maplist.cc
	src/glu/sgi/libnurbs/internals/maplist.h
	src/glu/sgi/libnurbs/internals/mesher.cc
	src/glu/sgi/libnurbs/internals/mesher.h
	src/glu/sgi/libnurbs/internals/monoTriangulationBackend.cc
	src/glu/sgi/libnurbs/internals/monotonizer.cc
	src/glu/sgi/libnurbs/internals/monotonizer.h
	src/glu/sgi/libnurbs/internals/myassert.h
	src/glu/sgi/libnurbs/internals/mycode.cc
	src/glu/sgi/libnurbs/internals/mystring.h
	src/glu/sgi/libnurbs/internals/nurbsconsts.h
	src/glu/sgi/libnurbs/internals/nurbstess.cc
	src/glu/sgi/libnurbs/internals/patch.cc
	src/glu/sgi/libnurbs/internals/patch.h
	src/glu/sgi/libnurbs/internals/patchlist.cc
	src/glu/sgi/libnurbs/internals/patchlist.h
	src/glu/sgi/libnurbs/internals/pwlarc.h
	src/glu/sgi/libnurbs/internals/quilt.cc
	src/glu/sgi/libnurbs/internals/quilt.h
	src/glu/sgi/libnurbs/internals/reader.cc
	src/glu/sgi/libnurbs/internals/reader.h
	src/glu/sgi/libnurbs/internals/renderhints.cc
	src/glu/sgi/libnurbs/internals/renderhints.h
	src/glu/sgi/libnurbs/internals/simplemath.h
	src/glu/sgi/libnurbs/internals/slicer.cc
	src/glu/sgi/libnurbs/internals/slicer.h
	src/glu/sgi/libnurbs/internals/sorter.cc
	src/glu/sgi/libnurbs/internals/sorter.h
	src/glu/sgi/libnurbs/internals/splitarcs.cc
	src/glu/sgi/libnurbs/internals/subdivider.h
	src/glu/sgi/libnurbs/internals/tobezier.cc
	src/glu/sgi/libnurbs/internals/trimline.cc
	src/glu/sgi/libnurbs/internals/trimline.h
	src/glu/sgi/libnurbs/internals/trimregion.cc
	src/glu/sgi/libnurbs/internals/trimregion.h
	src/glu/sgi/libnurbs/internals/trimvertex.h
	src/glu/sgi/libnurbs/internals/trimvertpool.cc
	src/glu/sgi/libnurbs/internals/trimvertpool.h
	src/glu/sgi/libnurbs/internals/types.h
	src/glu/sgi/libnurbs/internals/uarray.cc
	src/glu/sgi/libnurbs/internals/uarray.h
	src/glu/sgi/libnurbs/internals/varray.cc
	src/glu/sgi/libnurbs/internals/varray.h
	src/glu/sgi/libnurbs/nurbtess/definitions.h
	src/glu/sgi/libnurbs/nurbtess/directedLine.h
	src/glu/sgi/libnurbs/nurbtess/glimports.h
	src/glu/sgi/libnurbs/nurbtess/gridWrap.cc
	src/glu/sgi/libnurbs/nurbtess/gridWrap.h
	src/glu/sgi/libnurbs/nurbtess/monoChain.cc
	src/glu/sgi/libnurbs/nurbtess/monoChain.h
	src/glu/sgi/libnurbs/nurbtess/monoTriangulation.cc
	src/glu/sgi/libnurbs/nurbtess/monoTriangulation.h
	src/glu/sgi/libnurbs/nurbtess/mystdio.h
	src/glu/sgi/libnurbs/nurbtess/mystdlib.h
	src/glu/sgi/libnurbs/nurbtess/partitionX.cc
	src/glu/sgi/libnurbs/nurbtess/partitionX.h
	src/glu/sgi/libnurbs/nurbtess/partitionY.cc
	src/glu/sgi/libnurbs/nurbtess/partitionY.h
	src/glu/sgi/libnurbs/nurbtess/polyDBG.h
	src/glu/sgi/libnurbs/nurbtess/polyUtil.cc
	src/glu/sgi/libnurbs/nurbtess/polyUtil.h
	src/glu/sgi/libnurbs/nurbtess/primitiveStream.cc
	src/glu/sgi/libnurbs/nurbtess/primitiveStream.h
	src/glu/sgi/libnurbs/nurbtess/quicksort.cc
	src/glu/sgi/libnurbs/nurbtess/quicksort.h
	src/glu/sgi/libnurbs/nurbtess/rectBlock.cc
	src/glu/sgi/libnurbs/nurbtess/rectBlock.h
	src/glu/sgi/libnurbs/nurbtess/sampleComp.cc
	src/glu/sgi/libnurbs/nurbtess/sampleComp.h
	src/glu/sgi/libnurbs/nurbtess/sampleCompBot.cc
	src/glu/sgi/libnurbs/nurbtess/sampleCompBot.h
	src/glu/sgi/libnurbs/nurbtess/sampleCompRight.cc
	src/glu/sgi/libnurbs/nurbtess/sampleCompRight.h
	src/glu/sgi/libnurbs/nurbtess/sampleCompTop.cc
	src/glu/sgi/libnurbs/nurbtess/sampleCompTop.h
	src/glu/sgi/libnurbs/nurbtess/sampleMonoPoly.cc
	src/glu/sgi/libnurbs/nurbtess/sampleMonoPoly.h
	src/glu/sgi/libnurbs/nurbtess/sampledLine.cc
	src/glu/sgi/libnurbs/nurbtess/sampledLine.h
	src/glu/sgi/libnurbs/nurbtess/searchTree.cc
	src/glu/sgi/libnurbs/nurbtess/searchTree.h
	src/glu/sgi/libnurbs/nurbtess/zlassert.h
	src/glu/sgi/libtess/README
	src/glu/sgi/libtess/alg-outline
	src/glu/sgi/libtess/dict-list.h
	src/glu/sgi/libtess/dict.c
	src/glu/sgi/libtess/dict.h
	src/glu/sgi/libtess/geom.c
	src/glu/sgi/libtess/memalloc.c
	src/glu/sgi/libtess/memalloc.h
	src/glu/sgi/libtess/mesh.c
	src/glu/sgi/libtess/mesh.h
	src/glu/sgi/libtess/normal.h
	src/glu/sgi/libtess/priorityq-heap.c
	src/glu/sgi/libtess/priorityq-heap.h
	src/glu/sgi/libtess/priorityq-sort.h
	src/glu/sgi/libtess/priorityq.c
	src/glu/sgi/libtess/priorityq.h
	src/glu/sgi/libtess/render.c
	src/glu/sgi/libtess/render.h
	src/glu/sgi/libtess/sweep.h
	src/glu/sgi/libtess/tess.h
	src/glu/sgi/libtess/tessmono.c
	src/glu/sgi/libtess/tessmono.h
	src/glu/sgi/libutil/error.c
	src/glu/sgi/libutil/glue.c
	src/glu/sgi/libutil/gluint.h
	src/glu/sgi/libutil/project.c
	src/glu/sgi/libutil/registry.c
	src/glx/x11/glxext.c
	src/mesa/main/imports.h
	src/mesa/tnl/t_vb_cliptmp.h
2007-04-20 05:37:11 +02:00
Brian
535c37e85d Notes about shared lib version. Document depth-peel fixes. 2007-04-19 14:24:58 -06:00
Brian
ba3d384e94 dFdx(), etc. don't work yet 2007-04-19 14:24:29 -06:00
Brian
8b5fce6bcc Put gl_program_machine into swrast structure rather than using a local variable.
Basically an easy way to make sure the memory gets initialized once (to zero)
to avoid lots of valgrind warnings.
2007-04-19 14:24:10 -06:00
Brian
020cdb47cf Fix valgrind problem caused by reading text[-1]. 2007-04-19 14:15:11 -06:00
Brian
121f2212cc remove invalid assertion (span->facing may be set because of polygonmode) 2007-04-19 14:07:16 -06:00
Brian
24a93dd6a4 remove invalid assertion 2007-04-19 14:06:43 -06:00
Brian
00da9afb84 fix crash when program has invalid structure field 2007-04-19 14:06:27 -06:00
Brian
4abcaf3949 init A.curFuncEndLabel = NULL 2007-04-19 14:04:30 -06:00
Brian
6bde08815f In _mesa_unpack_depth_span() look for special cases of GLuint->GLushort and GLushort->GLuint conversion.
This improves performance and avoids int/float/int conversion problems that
can introduce errors during glCopyTexImage().  Another fix for the depth peeling
algorithm.
2007-04-19 11:23:26 -06:00
Brian
8e6207396c Don't allow deferredTexture if using occlusion query and a frag shader.
Occlusion query might depend on the shader killing/discarding fragments.
Helps fix depth peeling technique.
Also, minor tweaks in interpolate_wpos().
2007-04-19 11:21:14 -06:00
Brian
5ca8d4ccf2 fix an uninitialized variable and a warning 2007-04-18 18:05:33 -06:00
Brian
6b3027e291 comments, assertions 2007-04-18 17:14:14 -06:00
Brian
8d370fb2ee new comments 2007-04-18 17:14:14 -06:00
Brian
36a6a59972 record proper datatypes for uniforms/samplers 2007-04-18 17:14:14 -06:00
Brian
addd03da2e added _slang_gltype_from_specifier() 2007-04-18 17:14:13 -06:00
Brian
c93e883b20 Start fixing some issues with uniform variables and their types. 2007-04-18 17:14:13 -06:00
Brian
274ac7a801 Fix some bugs related to querying active uniforms. 2007-04-18 17:14:13 -06:00
Brian
aaa57412c1 fix error strings, add a sanity check 2007-04-18 17:14:13 -06:00
George Sapountzis
2a2f8d806f xmesa: drop glide (FX) backend.
glide is no longer compiled with stand-alone libGL, so this will not link.
There are still the glide config files. some code in demos and the
GLX_MESA_set_3dfx_mode code which could be removed.
2007-04-19 00:01:45 +03:00
Brian
bac15c8db8 Remove bad assertions, decrement NumShaders in _mesa_detach_shader().
Fixes crashes w/ Brad King's depth peeling test.
2007-04-18 14:55:18 -06:00
Brian
f3e8c32376 s/GL_SHADER_PROGRAM/GL_SHADER_PROGRAM_MESA/ (a Mesa-specific token) 2007-04-18 14:53:23 -06:00
Brian
6d3d9c1c6d Replace _mesa_parameter_longest_name() with _mesa_longest_parameter_name().
The later takes a type parameter so we can match uniforms or attributes/inputs.
Used by the GL_ACTIVE_ATTRIBUTE_MAX_LENGTH and GL_ACTIVE_UNIFORM_MAX_LENGTH
queries.  Fixes problem reported by Brad King in VTK.
2007-04-18 14:19:17 -06:00
Brian
e57e752eee call ProgramStringNotify() after linking 2007-04-18 12:41:16 -06:00
Brian
884af40864 check _PreferPixelFog in _swrast_span_default_fog(), see bug 10669 2007-04-18 12:09:40 -06:00
Brian
30a79f76fc improved fog comment 2007-04-18 12:08:18 -06:00
Brian
8598f55091 glean glsl test now does over 150 tests 2007-04-18 09:30:07 -06:00
Brian
6d01f3f1ec added href to shading language info 2007-04-18 09:28:38 -06:00
Brian
e3caa5f891 prep for 6.5.3 release 2007-04-18 09:07:56 -06:00
Brian
d9443c2494 add progs/glsl/ to DEMO_FILES, s/pre/rc1/ 2007-04-18 08:52:18 -06:00
Xiang, Haihao
565cd49b5f fig segment fault issue in TAG(triangle), (see bug 10589)
Bit SS_TWOSIDE_BIT is set if  gl_FrontFacing lives in
fragment input (see commit 10b5895597).
However, VB->ColorPtr[1] isn't assigned after that.
2007-04-18 12:37:09 +08:00
Brian
a4b2b88337 omit the glide/svga sources from stand-alone libGL (anyone using them?) 2007-04-17 16:00:17 -06:00
Brian
04bda46739 Enable texture sampling for vertex programs/shaders.
This is a bit of a hack for now because the tnl module is using the swrast
module to fetch texels.  The texture fetch/filter code should probably be
moved into the main/ module since it doesn't really depend upon other
swrast code.
2007-04-17 15:56:46 -06:00
Brian
d2d86a3f0b In bind_inputs() set VB->EdgeFlag to NULL if it's not needed.
Otherwise, the clip/interp code was finding VB->EdgeFlag to be non-null and
reading/writing it when the memory may have been freed earlier in free_space().
This fixes several VTK segfaults/failures reported by Brad King @ Kitware.
2007-04-17 10:19:47 -06:00
Brian
9cbcf7c696 regenerated 2007-04-17 09:16:59 -06:00
Brian
468a33d19a fix/simplify some texture functions 2007-04-17 09:16:30 -06:00
Brian
893b368a82 more matrix function updates 2007-04-17 09:15:57 -06:00
Brian
41fc55dd81 don't set GL_TEXTURE_MAX_LEVEL for GL_TEXTURE_RECTANGLE_ARB as that generates an error 2007-04-17 08:29:37 -06:00
Thomas Hellstrom
1a9483c954 Defer buffer pool creation to the first context creation.
This way we have a hw context so that we can take the hardware lock.
Also, at this point, AIGLX isn't locked with the X server context as it is
at screen creation.
2007-04-17 15:21:54 +02:00
Roland Scheidegger
36949abec7 cleanups for t_vb_program.c
use VertexProgram._Current instead of VertexProgram.Current in a few more places.
Only fixup fogc and psiz in case this is really a nv program (others are fine
if undefined), and fix this case up so the values actually get written.
2007-04-17 14:01:42 +02:00
Oliver McFadden
6459adf79b r300: r300_render.c:391: warning: unused variable 'i' 2007-04-17 07:05:15 +00:00
Brian
badc346206 lots of changes, fixes, clean-ups 2007-04-16 17:56:13 -06:00
Brian
4a7c45118d just clean-ups 2007-04-16 17:36:39 -06:00
Brian
34ca2be769 move GL_EXT_stencil_two_side into alphabetical position 2007-04-16 17:18:39 -06:00
Brian
5888010362 Fix glActiveStencilFaceEXT dispatch problem (bug 10523).
OK, _all_ extensions that might get enabled by the driver need to be in the
card_extensions[] list.  driInitExtensions() is called at least twice: first
during screen creation, then once for each context that's created.
The first call sets up the dispatch table.  The second call just sets the
extension enable/disable flags.
2007-04-16 17:16:46 -06:00
Brian
dfee7619d4 remove _tnl_arb_vertex_program_stage 2007-04-16 15:15:53 -06:00
Brian
96e05da1c9 remove _tnl_arb_vertex_program_stage 2007-04-16 15:15:23 -06:00
Brian
1560de2c3c need to clamp MAD for linear fog 2007-04-16 15:09:39 -06:00
Brian
921b008419 removed unused t_vb_arbprogram stage 2007-04-16 11:03:14 -06:00
Brian
aa6992a296 remove t_vb_arbprogram.c 2007-04-16 10:59:00 -06:00
Brian
4b3835dadf unhook t_vb_arbprogram.c code - it's going away 2007-04-16 10:58:30 -06:00
Brian
64e8088667 Use generic program limits instead of NV-specific ones to init program constants.
Previously, this limited us to 12 temp regs for vertex programs.  Many vertex
shaders could exceed that.  This forces us to stop using t_vb_arbprogram.c
for now because of its particular register indexing scheme.  Need to increase
bits allocated for register indexing, etc.
2007-04-16 10:36:28 -06:00
Brian
3dfcd48469 Fix some assertions that could occur when an error was earlier logged. 2007-04-16 10:32:48 -06:00
Brian
e812a2a484 use b->display instead of b->xm_visual->display to fix some problems detected w/ valgrind 2007-04-16 09:11:20 -06:00
Thomas Hellstrom
da56df9d72 Make sure we are locked when creating drm buffer objects.
Don't place buffer objects on unfenced list when newly created.
Fix a buffer object wait-for-idle deadlock.
2007-04-16 16:04:12 +02:00
Brian
9519785e29 illegal to set GL_TEXTURE_MAX_LEVEL w/ GL_TEXTURE_RECTANGLE_ARB 2007-04-14 09:38:20 -06:00
Brian
83ad64d94a implement shadow2DRect functions 2007-04-14 09:36:17 -06:00
Brian
fde15a2bae Fix sample_depth_texture() to handle texture rectangle coords. 2007-04-14 09:33:20 -06:00
Brian
216eb81c53 set osmesa renderbuffer refcount=1 upon creation, free renderbuffer in OSMesaDestroyContext() 2007-04-14 08:09:12 -06:00
Brian
4fc46a6c82 more _mesa_unreference_framebuffer() calls, remove dead code 2007-04-14 08:06:54 -06:00
Brian
e19cfabb6e fix negative zoom factor bug (10636), more comments 2007-04-14 07:49:21 -06:00
Dave Airlie
8d8a3cc398 r300: emit different clear paths for non-TCL, this gets the clear color correct 2007-04-14 17:44:33 +10:00
Dave Airlie
fb1d22d23d r300: remove unneeded semicolon from macro 2007-04-14 17:42:59 +10:00
Dave Airlie
3d59042afd r300: if we don't have TCL don't setup state emissions for vertex shaders 2007-04-14 04:54:49 +01:00
Brian
967c1056d5 patch for Digital/Tru64 (bug 10635) - forwarded to OpenGL ARB as well 2007-04-13 09:55:35 -06:00
George Sapountzis
9f8373d5ca xmesa: drop unused XMesaPutImageHelper.
It could only be called from XMesaCopySubBuffer but this function is not used
by XFree86.

It seems that XMesaPutImageHelper would handle sub-images but never got
finished. Proper sub-image helpers should be written if need be.
2007-04-13 18:13:08 +03:00
George Sapountzis
50aaabc248 xmesa: export xmesa functions used by xfree86.
This uses xmesa.h as the GLcore interface and avoids adding an explicit GLcore
inteface which would not be a proper interface anyway.

It puts the declarations of the three functions specific for XMesa/XFree86 in
xmesa.h, we can push them down to xmesa_xf86.h if hiding behind XFree86Server
ifdef's is not enough.
2007-04-13 18:12:37 +03:00
Brian
30b6f11de1 s/version/vertex/ 2007-04-12 16:18:27 -06:00
Brian
f11604a30d fix bug in _playback_copy_to_current(): need to skip version position data (see bug 10587) 2007-04-12 16:17:01 -06:00
Brian
99193e4f74 disable debug printfs 2007-04-12 15:45:02 -06:00
Brian
5b74fe0889 Added sanity checking in _slang_sizeof_type_specifier() to be sure sizes are what's expected. 2007-04-12 15:23:55 -06:00
Brian
431d650f2b use _mesa_clear_shader_program_data() 2007-04-12 15:22:53 -06:00
Brian
3c008a014f New _mesa_reference_shader/program() function to consolidate refcounting.
Note that (unlike texture objects), shader handles remain valid (in the
hash table) after glDeleteShader/Program() if the refcount isn't zero.
2007-04-12 15:22:32 -06:00
Zou Nan hai
35707dbe57 Initial 965 GLSL support 2007-04-12 09:43:00 +08:00
Brian
bf287356cf restore 200x200 window size, animation, version check 2007-04-11 14:09:32 -06:00
Brian
bce7043ebc regenerated 2007-04-11 12:30:31 -06:00
Brian
70b0e123c4 checkpoint: updating non-square matrix constructors and operators 2007-04-11 12:30:03 -06:00
Brian
f98f4f6d7a move/fix texture sampling funcs 2007-04-11 12:29:38 -06:00
Brian
afc58f5f7e s/Shadow/SHADOW/ 2007-04-11 11:13:37 -06:00
Brian
b61d74c575 as with prev commit, also fix color index mode zoomed depth copies (bug 10608) 2007-04-11 09:04:18 -06:00
Brian
9f66025f54 fix invalid error detection problem in _mesa_bind_attrib_location(), bug 10602 2007-04-11 09:00:56 -06:00
Brian
183d8e0620 fix zoomed depth copies (bug 10608) 2007-04-11 08:47:05 -06:00
Brian
b0bba03846 use _mesa_reference_renderbuffer(), fix typo 2007-04-11 08:11:52 -06:00
Brian
ba876be0c0 fix/work-around allocation bugs for non-square matrices 2007-04-10 21:51:27 -06:00
Brian
319ce38fa4 update SLANG version test 2007-04-10 21:50:53 -06:00
Dave Airlie
64700be4e1 rs480: set vap cntl to what fglrx uses for non-TCL cards 2007-04-10 11:46:58 +01:00
Michel Dänzer
159ecba4b3 i915: Bring test for vsync to pipe B in line with i915tex. 2007-04-10 11:05:17 +02:00
Michel Dänzer
e798d22556 Add missing generated file. 2007-04-10 11:04:19 +02:00
Brian
0109b47106 NULL ptr check 2007-04-09 19:07:22 -06:00
Brian
7b2626f7d8 plug in GLSL 1.20 unit 2007-04-09 19:07:22 -06:00
Brian
19121e2802 undo a debug/test change 2007-04-09 19:07:22 -06:00
Dave Airlie
e0bbf46342 r300: don't enable VAP/TCL on cards that don't support it 2007-04-10 09:32:13 +10:00
Brian
702c8f1e6c remove unneeded initialization code (see bug 10569) 2007-04-09 11:21:51 -06:00
Brian
f9574c3f6b allocate __GLXdisplayPrivate w/ Xcalloc instead of Xmalloc (bug 10569) 2007-04-09 08:49:26 -06:00
Michel Dänzer
e8292d28e4 i915tex: Fix some mismatches between texels or bytes for pitch/stride. 2007-04-09 14:57:08 +02:00
Michel Dänzer
c96974f78c i915tex: Make sure texture format fetch hooks are initialized. 2007-04-09 14:53:41 +02:00
Dave Airlie
6461e91ac3 the RS400 definitely doesn't work at this point so don't let it init 2007-04-09 22:03:31 +10:00
Brian
af807a4696 enable GLSL 1.20 2007-04-08 21:48:19 -06:00
Brian
5c0c60a13c support for GLSL 1.20 non-square matrices 2007-04-08 16:47:32 -06:00
Brian
5dba996dba add glsl to PROGRAM_DIRS 2007-04-08 15:50:31 -06:00
Brian
9612a3011f fix some dependencies, remove some CFLAGS 2007-04-08 15:42:26 -06:00
Brian
0d3d930912 add 2.1 functions 2007-04-08 15:41:02 -06:00
Adam Jackson
d8bfc42bb7 Make sure GLX entrypoints are marked PUBLIC.
Fedora bug #229808.
2007-04-08 14:40:03 -04:00
Wei Wang
ca7885f733 fix bug 9823: GL_CLIENT_ATTRIB_STACK_DEPTH query fails for indirect rendering 2007-04-08 11:24:08 -06:00
Brice Goglin
3832ecadae Add 06_fix_texture_data_corruption.patch (closes: #412346) 2007-04-08 18:52:31 +02:00
Michel Dänzer
9176752172 i915tex: Clean up resizing of renderbuffers. 2007-04-08 14:04:15 +02:00
Michel Dänzer
79bf692420 driUpdateFramebufferSize: Use ctx->Driver.ResizeBuffers. 2007-04-08 14:02:14 +02:00
Brian
f72e7fb1d6 MAX_TEXTURE_COORDS_ARB and MAX_TEXTURE_IMAGE_UNITS_ARB had wrong glGet info.
Fixes bug 10371.
2007-04-07 20:38:25 -06:00
Brian
4647f13c43 fix etags command to find headers 2007-04-07 19:36:58 -06:00
George Sapountzis
20ec486baf Drop XFree86Server from execmem.c
This is a remnant from the libcwrapper days that can be removed now. It is the
last XFree86 glitch in Mesa core.

Reverts the following commit (thanks to Brian Paul for pointing to it):

commit 8b1dc68662
Author: Alan Hourihane <alanh@tungstengraphics.com>
Date:   Tue Jan 24 21:40:53 2006 +0000

    pull in fix from 6.4 branch for XFree86Server definition

commit cc7b6810e2
Author: Ian Romanick <idr@us.ibm.com>
Date:   Fri Oct 21 18:09:24 2005 +0000

    Make execmem.c compile in the server (libGLcore).  Since xf86mmap
    doesn't know about MAP_ANONYMOUS, this is the only viable fix.  This
    issue will likely have to be revisited at some point.
2007-04-07 18:41:14 +03:00
Richard Hughes
55000888b9 set version for tarballs to 6.5.3pre for now 2007-04-07 08:48:07 -06:00
Richard Hughes
4f9d3a07bb fix references to non-existant sz4 field 2007-04-07 08:46:44 -06:00
Richard Hughes
84803279ca fix some CHAN_TYPE==GL_FLOAT breakage 2007-04-07 08:46:10 -06:00
Brian
8d2d6e5194 fix comment typo 2007-04-07 08:43:40 -06:00
Richard Hughes
e9c614a1af remove array_cache/, add vbo/ 2007-04-07 08:39:24 -06:00
Brian
8f3fc5221c added glActiveStencilFaceEXT 2007-04-07 08:38:36 -06:00
Brian
ae55d5322c for evaluators, loop to VBO_ATTRIB_TEX7, not VBO_ATTRIB_INDEX. See bug 10543 2007-04-06 15:45:11 -06:00
George Sapountzis
92b7fa7b48 xmesa: use newly added xm_image.[hc]
Keep external includes to glxheader.h and xmesa includes to xmesaP.h.

Drop the following from xm_image.h:
- dix-config.h (comes from glheader.h)
- xfree86 includes (come from GL/xmesa_xf86.h)
- ifdef __CYGWIN__ (leftover ? xm_api.c has something similar)
2007-04-06 13:28:39 +03:00
George Sapountzis
eb4a8b4bb5 xmesa: add xf86glx_util.[hc] from xserver as xm_image.[hc] 2007-04-06 13:27:43 +03:00
George Sapountzis
663a3e9ba7 Drop the funky SSE exception test on linux.
Replace the check for IN_DRI_DRIVER with the appropriate kernel version check
and just disable SSE on older (pre 2.4) kernels.
2007-04-06 13:22:41 +03:00
Brian
51a894e6eb fix color storage bug in convolution path 2007-04-05 21:12:44 -06:00
Brian
ac32b644ee include points.h to fix warnings 2007-04-05 11:43:07 -06:00
George Sapountzis
487f7a73cb Remove SI imports/exports remnants. 2007-04-05 19:01:51 +03:00
George Sapountzis
aa1c79eaea glx: minor cosmetic in glcontextmodes.c
move memory macros to separate block and unwrap malloc/free for miniglx towards
cleaning Mesa core glitches in glx...
2007-04-05 19:00:47 +03:00
George Sapountzis
885111518e Move glcontextmodes.c to glx.
It is no longer linked with DRI drivers, libGL passes function pointers through
the DRI interface.
2007-04-05 18:59:42 +03:00
Brian
0cae814f36 temporary add some extra renderbuffer debug code 2007-04-05 09:28:09 -06:00
Brian
33c3739628 Remove the never-used SI-style imports/exports code. 2007-04-04 22:18:53 -06:00
Brian
4d864b087e assorted updates 2007-04-04 09:33:12 -06:00
Brian
2f207dcf1e assorted documentation updates 2007-04-04 09:31:41 -06:00
Brian
f9c01c33d3 init span.y=0 to silence warnings 2007-04-04 09:30:28 -06:00
Brian
d4dc57bb13 Overlapping copies with zoomZ=-1 were broken. See bug 10521.
Need to check for overlapping src/dest regions before computing bottom-to-top
vs. top-to-bottom order.
2007-04-04 08:48:06 -06:00
Brian
a28e648690 remove debug printf 2007-04-04 08:26:41 -06:00
Xiang, Haihao
40ae3943f2 i810/i915/i915tex: reinitialize the context point state 2007-04-04 16:50:47 +08:00
Nicolai Haehnle
dba21ed913 Fix in t_vp_build: Missed necessary updates sometimes
_mesa_update_state doesn't always reset VertexProgram._Current to NULL.
This caused us to skip a necessary update of the fixed function vertex
program sometimes.

Change the logic such that we check for updates whenever the _Current
program is either NULL or the program generated by t_vp_build.
2007-04-02 21:01:32 +02:00
Brian
66d336808d Call _glapi_set_context(NULL) in _glapi_check_multithread() to make sure the _glapi_Context global gets cleared properly. 2007-04-02 10:03:34 -06:00
Brian
dccd9c4f4d use _mesa_reference_renderbuffer() in a few more places 2007-04-02 09:57:27 -06:00
Brian
3fe47d5c57 updated debug printf 2007-04-02 09:57:27 -06:00
Brian
3fd88089c0 Fix some bugs/issues related to alpha channel support. See bug 10483. 2007-04-01 18:30:28 -06:00
Brian
0683e4ce4b If using PF_8A8B8G8R, be sure alpha is correctly handled. 2007-04-01 18:28:28 -06:00
Brian
ec42af9263 re-order tokens, fix comments 2007-04-01 18:27:23 -06:00
Brice Goglin
285ed128ab Add a .shlibs file for libglw1-mesa. 2007-04-01 00:44:29 +02:00
Brice Goglin
048144074b Fix conflicts for libGLw packages.
libglw1-mesa does not have to conflict with earlier libgl1-mesa-swx11
(libGLw was only shipped as development libs/headers within swx11-dev).

libglw1-mesa-dev needs to conflicts with libglw-dev.
2007-04-01 00:43:20 +02:00
Brian
00831b5b3b always emit BGN/ENDSUB, for now anyway 2007-03-31 09:09:48 -06:00
Brian
ec6c8f86f3 fix scoping mistake in previous commit that checked for writable LHSs 2007-03-31 09:09:21 -06:00
Brice Goglin
856ae782c7 * Split out libGLw libs and headers from libgl1-mesa-swx11 and ship both
static and shared libraries, creating libglw1-mesa and libglw1-mesa-dev
    (closes: #374904).
2007-03-31 03:28:32 +02:00
Brian
e608d92c5b check that LHS of assignment is writable 2007-03-30 14:59:02 -06:00
Eric Anholt
57dadf71ca Merge branch 'origin' 2007-03-30 13:18:27 -07:00
Eric Anholt
adb91c056f Merge branch 'crestline-qa', adding support for the 965GM chipset. 2007-03-30 13:11:38 -07:00
Gustavo Pichorim Boiko
6f652c89d7 call DRI_VALIDATE_DRAWABLE_INFO(), bug 10477 2007-03-30 14:10:10 -06:00
George Sapountzis
7439a36785 Clean and update XMesa/XFree86 interface.
Drop XMesaSetVisualDisplay(), XMesaReset(), no longer used.

Add XMesaCopyContext() and move the GlxSetRenderTables() call for XGL within
XMesaForceCurrent(). This is to make xserver/GL/mesa/X/xf86glx.c unaware of
Mesa internals.

Also, clean some ifdef's to make it clear that USE_XSHM and XFree86Server are
mutually exclusive.

Lastly,
- move gcstruct.h from glxheader.h up to xmesa_xf86.h since it calls *gc->ops
- drop GL/glxtokens.h from xm_api|dd.c, GLX tokens come from glcore.h and are
  used irrelevant of XFree86.
2007-03-30 19:19:00 +03:00
Julien Cristau
12e3f97541 Fix explanation about libglide3 in libgl1-mesa-dri's description.
Thanks to Michel Dänzer for his help.
2007-03-30 17:20:02 +02:00
Julien Cristau
30f6fe0710 Have libgl1-mesa-dri suggest libglide3.
Add explanation for this in the package description.  Closes: #387339.
2007-03-30 14:10:24 +02:00
Brian
7eba12edce more tips, validation info 2007-03-28 17:14:35 -06:00
Brian
ba730e14ed cond code fix 2007-03-28 17:08:17 -06:00
Brian
1ba858591b fix cond code swizzle bug 2007-03-28 15:45:24 -06:00
Brian
f2f5d06853 Handle logical NOT and XOR without library functions. Results in much tighter code. 2007-03-28 15:16:33 -06:00
Brian
b2ac30ac36 optimization for the emit_not() function 2007-03-28 14:49:33 -06:00
Brian
3b7f2f53a2 remove IR_BREAK_IF_FALSE 2007-03-28 14:38:36 -06:00
Brian
8128f7143d don't generate IR_BREAK_IF_FALSE 2007-03-28 14:33:25 -06:00
Brian
393a93ea32 Get rid of IR_CONT_IF_FALSE 2007-03-28 14:25:30 -06:00
Brian
3e7d43cd48 Get rid of BRK0, BRK1, CONT0, CONT1 instructions. 2007-03-28 14:23:33 -06:00
Brian
1bbd69251b Don't emit OPCODE_CONT0/1, BRK0/1 instructions, clean-ups elsewhere. 2007-03-28 14:21:26 -06:00
Brian
f841b04601 simplify, clean-up break/cont code 2007-03-28 14:14:00 -06:00
Brian
b463d52143 added some null ptr checks to handle error recovery 2007-03-28 13:29:57 -06:00
Brian
7e4a7fdddd Use constant_to_src_reg() to simplify some code 2007-03-28 13:23:44 -06:00
Brian
ee2f31e281 added missing returns after slang_info_log_error() calls 2007-03-28 12:48:27 -06:00
Brian
dad97b4688 Fix, clean-up code related to comparisons, condition codes, etc. 2007-03-28 11:06:34 -06:00
Brian
a01616eed5 print condcodes if DEBUG_PROG 2007-03-28 11:01:28 -06:00
Brian
d750861dc2 expose _mesa_condcode_string(), fix some printing 2007-03-28 11:01:09 -06:00
Brian
59f7f6dbe9 check that if/while/do-while condition is boolean or scalar 2007-03-28 10:44:38 -06:00
Brian
20d85c609a bump version to 6.5.3 to match version.h 2007-03-28 09:07:41 -06:00
Alan Hourihane
ad766b5785 Add missing OSMesaColorClamp function 2007-03-28 15:58:08 +01:00
Brian
0420d8505a disable MakeTexture() 2007-03-27 16:06:48 -06:00
Brian
05e6fd8398 added ftransform() comment 2007-03-27 16:06:48 -06:00
Brian
e5d00e8cf4 Implement true CAL/RET subroutines. Some optimizations, clean-ups coming... 2007-03-27 16:06:48 -06:00
Brian
31dc7a3c89 fix another pc off-by one 2007-03-27 16:06:47 -06:00
Brian
17238f1ee5 added _slang_label_new_unique() 2007-03-27 16:06:47 -06:00
Brian
f407cada8a fix some printing issues related to subroutines 2007-03-27 16:06:47 -06:00
Brian
e713ef66ef fix a fragment fog regression 2007-03-27 16:06:47 -06:00
Brian
a0275b0d2c fix off by one error in OPCODE_RET 2007-03-27 16:06:47 -06:00
Brian
d6d6d20b13 init machine->StackDepth=0 2007-03-27 16:06:47 -06:00
Brian
1f1f582304 more parenthesis 2007-03-27 16:06:47 -06:00
Roland Scheidegger
811c2e9a91 i915tex compile fix (account for moved _UseTexEnvProgram var) 2007-03-27 22:57:22 +02:00
Roland Scheidegger
cda3236092 fix incorrect _MaxElement calculation
The calculation of _MaxElement was wrong if the stride was larger than
elementSize, which lead to rejection of every DrawElements call which accessed
the maximum element if CheckArrayBounds was enabled.
2007-03-27 21:03:32 +02:00
Roland Scheidegger
9b9e056615 recommit e731d8aafa.
This got lost with glsl-compiler-1 merge, it fixes segfaults when using
ATI_fragment_shader, which uses the ProgramStringNotify mechanism but doesn't
have a valid program pointer.
2007-03-27 19:33:34 +02:00
Brian
ff65fa39e8 add parenthesis around a bit-wise AND term in _tnl_InvalidateState() 2007-03-27 09:52:53 -06:00
Brian
3e45db6729 Restore the UseTexEnvProgram logic.
Was removed during glsl-compiler work.  Still need to go back and revisit this
because of the interaction with fragment shaders...
2007-03-27 09:51:52 -06:00
Roland Scheidegger
3b8ab88131 r300: Fix radeonUpdatePageFlipping() function.
Always call driFlipRenderbuffers() with pfCurrentPage value, in case it's
initially 1 instead of 0. May fix some issues with pageflip, the same fix was
applied to r128, radeon and r200 (6e0e6eff05).
2007-03-27 16:27:34 +02:00
Roland Scheidegger
32225d06b9 r128, radeon, r200: Check ctx->WinSysDrawBuffer before calling function that dereferences it.
Same fix as for r300 (which fixed https://bugs.freedesktop.org/show_bug.cgi?id=10417),
since it's likely an issue with those drivers too.
2007-03-27 16:22:00 +02:00
Bernardo Innocenti
a835939222 always print error messages, unless LIBGL_DEBUG=quiet 2007-03-27 08:05:33 -06:00
Brian
98abd1bbc8 simplify .a suffixing 2007-03-27 07:58:47 -06:00
Bernardo Innocenti
a9455bb9a7 remove static lib before building to make more bulletproof 2007-03-27 07:56:34 -06:00
Michel Dänzer
63c57a14d3 r300: Check ctx->WinSysDrawBuffer before calling function that dereferences it.
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=10417 .
2007-03-27 09:44:32 +02:00
Miroslav Šustek
25f21b5331 fix r128 rendering, lockups
mis-count in offset led to mis-rendering and lockups;
units are 4 bytes rather than 1.  Noticed by Chris Salch.
fixes bug 7994, possibly others.
2007-03-26 23:40:04 -04:00
Zou Nan hai
da82d86ea0 Merge branch 'master' of git+ssh://znh@git.freedesktop.org/git/mesa/mesa 2007-03-27 09:41:31 +08:00
Zou Nan hai
075d3d892f Fix compile error 2007-03-27 09:41:01 +08:00
Brian
ae36cfc65e s/SUB/BGNSUB/ 2007-03-26 18:47:19 -06:00
Brian
9878e8ff51 Checkpoint: implementing true CAL/RET instructions for subroutine calls.
Also, found/fixed a code generation regression:  the emit_swizzle() function
was always returning NULL.  This caused emit_move() to miss its chance at peephole
optimization.
2007-03-26 18:46:07 -06:00
Brian
6583429f89 Get rid of IR_JUMP and related code. 2007-03-26 17:16:26 -06:00
Brian
037c068460 special case RET 2007-03-26 16:58:50 -06:00
Brian
c042a91b8b Get rid of SLANG_OPER_GOTO, start rewrite of 'return' handling. 2007-03-26 16:56:45 -06:00
Brian
813a0e11f1 remove debug abort() calls 2007-03-26 16:01:58 -06:00
Brian
52cc32378c Additional error checking for 'return' statements. 2007-03-26 15:46:35 -06:00
Brian
c3da0bd7dd undo some debugging hacks 2007-03-26 15:09:59 -06:00
Brian
e508155d16 dead code elimination for constant-valued if/then/else 2007-03-26 15:02:21 -06:00
Nicolai Haehnle
0426d3c0c8 r300: Remove a warning when vertex programs produce an unused output
As far as we know, the hardware prefers outputs packed tightly together
with no holes caused by outputs that are not even read by the fragment
program. Therefore, we slightly rewrite vertex programs in this case.

It would be interesting to test this interaction between vertex programs
and fragment programs further, because some of that rewrite may be
unnecessary. However, play it safe for now and don't change the current
behaviour.
2007-03-26 22:25:06 +02:00
Nicolai Haehnle
b53745ce91 r300: Whitespace cleanup (remove trailing spaces) 2007-03-26 22:25:06 +02:00
Brian
768f7231ea Fix a few issues with computing storage sizes with respect to swizzles. 2007-03-26 13:46:46 -06:00
Brian
680abf8a02 In _mesa_lookup_parameter_constant() make sure we return a full, 4-component swizzle. 2007-03-26 13:46:46 -06:00
Nicolai Haehnle
1170268088 r300: Fix warnings that were introduced by the glsl merge 2007-03-26 21:41:57 +02:00
Brian
38a1c2b495 Add _swrast_span_default_secondary_color() for use with glBitmap, glDrawPixels, etc.
Secondary color wasn't getting added to post-texture color when drawing
bitmaps, images.  See bug 10409.
2007-03-26 11:30:05 -06:00
Brian
b5d988dd19 remove incorrect assertions 2007-03-26 10:39:56 -06:00
Brian
b67d93111d minor status updates 2007-03-26 10:23:50 -06:00
Brian
22d9132081 disable printing shader program debug info 2007-03-26 10:15:02 -06:00
Brian
d619cceea4 merge of glsl-compiler-1 branch 2007-03-26 10:13:02 -06:00
Michel Dänzer
76f3b66e04 i915tex: Make sure renderbuffers don't get deleted when flipping them.
Since the recent renderbuffer refcounting fixes it's no longer sufficient to
just remove the old renderbuffer from the framebuffer and then add the new one
because the former may decrease the reference count to 0 and delete the old
renderbuffer.
2007-03-26 17:38:58 +02:00
Brian
e71c34aaa1 disable free() until other issues can be fixed... 2007-03-26 09:24:30 -06:00
Brian
b9fbedd601 fix mem leak, add comments 2007-03-26 09:23:44 -06:00
Ben Skeggs
8051c95a7e nouveau: match drm version bump 2007-03-26 21:31:43 +10:00
Nian Wu
ee9bc897f8 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-26 17:00:29 +08:00
Brian
42aaa548a1 Fix some renderbuffer reference counting issues. Also fixes a mem leak. 2007-03-25 10:39:36 -06:00
Brian
6fda763989 destroy window on exit 2007-03-25 10:25:29 -06:00
Xiang, Haihao
a1ea7812b2 i965: The given urb layout(maximal size of urb entries and the
values for nr of entries) should meet the requirement.
2007-03-25 21:40:58 +08:00
Xiang, Haihao
bb59d81d2d Color3iv: set the alpha value to 1.0 2007-03-25 21:31:36 +08:00
Nicolai Haehnle
8a4546b561 r300: Whitespace cleanup in r300_texmem.c 2007-03-25 14:57:56 +02:00
Nicolai Haehnle
9db583e7e4 r300: Whitespace cleanup in r300_texstate.c 2007-03-25 14:57:49 +02:00
Nicolai Haehnle
7143c61283 r300: Fix regression: unnecessary node indirection
The texture_rectangle fix introduced a bug where every texture instruction
caused a new indirection.
2007-03-25 13:04:03 +02:00
Nian Wu
1b354bb5e4 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-25 17:00:24 +08:00
Brian
bb0393a0cd fix mem leak 2007-03-24 16:44:20 -06:00
Brian
9fe342d1e6 disable free(var->aux) -- can lead to segfault 2007-03-24 16:43:44 -06:00
Brian
cfdd07d7d3 fix mem leak 2007-03-24 16:26:51 -06:00
Brian
1968444bed fix some mem leaks 2007-03-24 16:22:35 -06:00
Brian
935f93f966 Free shader-related context state: _mesa_free_shader_state() 2007-03-24 16:20:02 -06:00
Brian
3493e867e9 free prog->Attributes in _mesa_delete_program() 2007-03-24 16:18:13 -06:00
Brian
49134e8e53 fix mistake in _slang_free_ir() 2007-03-24 15:29:10 -06:00
Dave Airlie
74ceaf545f nouveau: implement nv20Clear and nv20Scissor
Still crashes out on scissor regs
2007-03-25 07:09:02 +10:00
Nicolai Haehnle
f27991c916 r300: Fix texture coordinate calculation for rectangle textures
R300 hardware takes texcoords in the range 0..1 even for rectangle
textures. Previously, the necessary texcoord conversion was applied
to the texture coordinate during vertex processing in a render stage.

This is obviously wrong when fragment programs are used, which can
calculate arbitrary coordinates for TEX instructions. Therefore,
we now inject an appropriate MUL instruction before a TEX that
reference a rectangle texture.
2007-03-24 19:09:44 +01:00
Nicolai Haehnle
0c3ae2ea7f r300: No assertion when accessing incomplete texture images.
There used to be an assertion when a fragment program accesses an incomplete
texture image. Work around this assertion.
Note: I am unsure whether this workaround produces the desired result
(0,0,0,1) on all hardware.
2007-03-24 18:11:37 +01:00
Brian
0e71d08e8d Properly free the slang_ir_node->Store data (use ref counting). 2007-03-24 10:18:14 -06:00
Brian
b50b036ffb When computing render_inputs_bitset, omit primary color if we have a fragment program and it doesn't need FRAG_ATTRIB_COL0. Silences valgrind warnings. 2007-03-24 10:16:49 -06:00
Brian
dc3015f157 move some code into new slang_ir.c file 2007-03-24 09:40:20 -06:00
Brian
b2bc563142 IR utility functions 2007-03-24 09:39:24 -06:00
Nicolai Haehnle
d4dd5a95a8 r300: Fix: KIL instruction don't require textures
When no textures were enabled, a KIL instruction triggered an assertion
in r300_setup_rs_unit.
2007-03-24 14:43:06 +01:00
Nicolai Haehnle
8f90822b72 swrast: Fix crash when sampling from a non-existing texture object 2007-03-24 14:42:49 +01:00
Ben Skeggs
ea3d11a3d8 nouveau: some swtcl fixes 2007-03-24 22:24:00 +11:00
Nian Wu
44fb5156bb Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-24 17:00:29 +08:00
Brian
8e1c3bd0b4 Implement alpha buffer copy for SwapBuffers().
Nicolai writes:
When the pixmap pixel format has no alpha channel, the x11 driver
(software rendering) adds a wrapped alpha channel on request.

During SwapBuffers, this alpha channel is not copied from back to
front, which means that the front buffer doesn't really contain the
contents that the back buffer previously contained.

A subsequent glReadPixels from the front buffer will return an
incorrect result. The following patch attempts to fix this.
2007-03-23 18:01:31 -06:00
Brian
8f9db0f81c document internal compiler options 2007-03-23 17:49:19 -06:00
Brian
d1934c2065 Fix issues related to the 'continue' statement.
IR_LOOP now has two children: the body code, and the tail code.
Tail code is the "i++" part of a for-loop, or the expression at the end
of a "do {} while(expr);" loop.
"continue" translates into: "execute tail code; CONT;"
Also, the test for infinite do/while loops was incorrect.
2007-03-23 17:48:42 -06:00
Brian
81767eead9 consolidate some code 2007-03-23 17:45:53 -06:00
Brian
63556fa994 Add the ability to generate programs that doesn't use condition codes.
ctx->Shader.EmitCondCodes determines if we use condition codes.
If not, IF statement uses first operand's X component as the condition.
Added OPCODE_BRK0, OPCODE_BRK1, OPCODE_CONT0, OPCODE_CONT1 to handle
the common cases of conditional break/continue.
2007-03-23 14:47:46 -06:00
Brian
bf020d8d7f minor tweaks 2007-03-23 14:44:34 -06:00
Brian
2bdac09d16 updated comment 2007-03-23 10:46:08 -06:00
Nicolai Haehnle
654a308439 r300: Whitespace cleanup (remove trailing spaces) 2007-03-23 17:39:28 +01:00
Nian Wu
ad76128204 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-23 17:00:28 +08:00
Brian
fe20a619cf updated comment 2007-03-22 16:07:43 -06:00
Brian
e6aeb24b23 Overhaul emit_compare() function.
Previously, comparing vec2, vec3, vec4 was broken.
Added IR_EQUAL, IR_NOTEQUAL nodes/operators to compute boolean
equality/inequality vs. IR_SEQUAL/IR_SNEQUAL which work component-wise.
Use IR_EQUAL/IR_NOTEQUAL for the == and != operators.
To compute vec4 equality, use SNE, DP4, SEQ instruction sequence.
2007-03-22 16:07:14 -06:00
Brian
0aad9e2627 First pass at implementing structure compares.
Need to improve this.  There may be holes in a structure so we can't
just blindly compare the full 4-float registers.
2007-03-22 09:15:39 -06:00
Brian
12229f119d use _mesa_copy_instructions() 2007-03-22 09:11:26 -06:00
Brian
1bf81e3c5d In _mesa_add_unnamed_constant() and _mesa_lookup_parameter_constant() allow swizzleOut==NULL.
There are times when we don't want to allow swizzling when searching for or
adding vector constants.  Passing NULL for swizzleOut disables swizzling.
This fixes a constant/swizzle bug in link_uniform_vars().
2007-03-22 09:07:27 -06:00
Brian
1936b25ebd print conditional writemask, if enabled 2007-03-22 09:04:18 -06:00
Brian
002762b13a use _mesa_alloc_instructions() 2007-03-22 08:51:34 -06:00
Brian
1240eb2683 use _mesa_copy_instructions() 2007-03-22 08:50:20 -06:00
Alan Hourihane
985a2eff82 Ensure we have a valid ReadBuffer for CopyTexSubImage, and
if not bail accordingly.

Previously we'd only do this test on compressed textures.
2007-03-22 14:28:18 +00:00
Nian Wu
2eb656ef4f Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-22 17:00:33 +08:00
Xiang, Haihao
01b7f2ab2e fix for bug#10339
StateFlags has been updated in _mesa_add_state_reference
2007-03-22 11:01:51 +08:00
Brian
629ec2b06b added SWIZZLE_XYZW 2007-03-21 15:40:54 -06:00
Brian
2500d82d0d Support for user-defined structures.
struct == and != operators not finished yet.  Struct assignment works though.
2007-03-21 15:40:39 -06:00
Brian
97c9b3ecc6 disable apparently unused code 2007-03-21 15:38:46 -06:00
Brian
e02b989ff9 indent 2007-03-21 14:45:34 -06:00
Brian
23d31efc16 merge from master 2007-03-21 11:57:30 -06:00
Brian
180cc2f845 disable assertion 2007-03-21 11:41:41 -06:00
Brian
88db19a484 document 1D convolution fix 2007-03-21 09:45:58 -06:00
Brian
249b451d20 1D convolution (and post-conv scale/bias) were inadvertantly applied to 2D image transfers. 2007-03-21 09:44:03 -06:00
Roland Scheidegger
c5fe807e42 fix copy and paste bug from last commit in fog generation code for GL_LINEAR fog 2007-03-21 13:19:02 +01:00
Nian Wu
8ba06464ac Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-21 17:00:32 +08:00
Ben Skeggs
4b5d6c0435 nouveau: update for drm interface changes (0.0.5) 2007-03-21 17:54:57 +11:00
Ben Skeggs
6cadebbb67 nouveau: SwapBuffers() needs to perform a glFlush() 2007-03-21 15:07:12 +11:00
Xiang, Haihao
704cd61120 mesa: revert f9f79c8d77
to fix #10232

Table6.1(in gl2.1) has been applied for glGetTexImage
before calling into _mesa_pack_rgba_span_float.
2007-03-21 10:50:19 +08:00
Nicolai Haehnle
4bafc547df r300: Remove the program-global const_sin index
The index is no longer necessary to share constants between multiple
SIN/COS/SCS instructions inside a single fragment program, and storing
a tiny implementation detail like this in the fragment_program structure
itself was just nasty.
2007-03-21 00:58:02 +01:00
Nicolai Haehnle
cbe38dc0ce r300: Whitespace cleanup (remove trailing spaces) 2007-03-20 18:40:09 +01:00
Xiang, Haihao
cf4272d256 fix for bug#10347
not sure which brw surface for DXT3 & DXT5, so restore
the previous choice.(changed in commit
84081774e6)
2007-03-20 22:12:03 +08:00
Alan Hourihane
bec665d5b5 use passed target parameter 2007-03-20 13:15:58 +00:00
Nian Wu
76444d042c Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-20 13:10:46 +08:00
Ben Skeggs
ecb1a1c82f nouveau: fix typo 2007-03-20 16:08:14 +11:00
Ben Skeggs
4185037af2 nouveau: fail translate if we use too many params somehow 2007-03-20 16:08:07 +11:00
Ben Skeggs
9622a634f6 nouveau: NVSDBG macro 2007-03-20 16:08:01 +11:00
Nicolai Haehnle
61821a41c0 r300: Cleanup fragment program constant allocation, share constants
The constant/parameter allocation was significantly simplified, removing
one unnecessary copy operation of parameters. The dirty state tracking is
unchanged and far from optimal, since all state is always re-fetched.

Constants and parameters are now emitted only once, which significantly
reduces the resource pressure on larger programs.
2007-03-19 23:59:59 +01:00
Nicolai Haehnle
5a65478783 r300: Fix special case (tmp.x <= 0) in fragment program LIT instruction
Also, fix a typo in a related comment.
2007-03-19 22:29:34 +01:00
Nicolai Haehnle
b3acba87d7 r300: Clear fragment program instruction slots on first use
Make sure that instruction slots are fully initialized with NOPs during
find_and_prepare_slot(). This fixes a bug when a fragment program was
translated more than once (e.g. due to a second call to glProgramStringARB).

This partially fixes glean/fragProg1.
2007-03-19 22:29:21 +01:00
Brian
fdcbbeb55e Properly compute render_inputs_bitset when using a vertex program/shader.
This fixes a performance regression introduced early in glsl-compiler-1 work.
2007-03-19 14:44:15 -06:00
Nicolai Haehnle
826815a5d2 r300: Dump fragment program after translation if RADEON_DEBUG=pixel is set 2007-03-19 20:02:19 +01:00
Nicolai Haehnle
7b992d024b r300: Whitespace cleanup (remove trailing spaces) 2007-03-19 19:49:06 +01:00
Nicolai Haehnle
c4bf863f4c r300: Fix WRITEMASK handling when writing to result.depth
This is a necessary change to emit the right instructions when writing
to result.depth.

However, even with this test, Z-write doesn't work properly, and I don't
fully understand why. In addition to this, we'll at least have to disable
early-Z, but even that doesn't seem to be enough.
2007-03-19 19:48:58 +01:00
Nicolai Haehnle
b645e8c96d r300: Streamlined fragment program LIT implementation
Fix a bug in the LIT implementation (clamp exponent to 128, not 0.5)
and change the implementation around. In theory, the new implementation
needs as little as 5 instruction slots. Unfortunately, the dependency
analysis in find_and_replace_slot is not strong enough to look at
individual components of a register yet.
2007-03-19 19:10:21 +01:00
Nicolai Haehnle
ff6ab9b45b r300: Fix fragment program reordering
Do not move an instruction that writes to a temp forward past an instruction
that reads the same temporary.
2007-03-19 18:38:07 +01:00
Nicolai Haehnle
ec1a77c864 r300: Fragment program dumps format tex instructions 2007-03-19 18:38:07 +01:00
Nicolai Haehnle
a8e65a010c r300: Fix hw fragment program dump
Dumps of fragment programs were incorrect when the program consisted of multiple
nodes.

Also, improved the formatting a bit.
2007-03-19 18:38:07 +01:00
Nicolai Haehnle
7b430acd71 r300: Fix fragment program instruction pairing and register allocation
There were a number of bugs related to the pairing of vector and scalar
operations where swizzles ended up using the wrong source register,
or an instruction was moved forward and ended up overwriting an aliased
register.

The new algorithm for register allocation is quite conservative and may
run out of registers before necessary. On the plus side, It Just Works.

Pairing is done whenever possible, and in more cases than before, so
in practice this change should be a net win.
2007-03-19 18:38:07 +01:00
Michel Dänzer
07db8c9115 i915tex: The intended triple buffering fix.
Making modifications while the editor spawned by git-commit was suspended
didn't have the intended effect.
2007-03-19 18:34:27 +01:00
Michel Dänzer
9b42100c04 i915tex: Fix triple buffering after recent Mesa core changes.
Remove superfluous _mesa_resize_framebuffer call which is now harmful because
it causes the third renderbuffer to have width/height 0, so Mesa refuses to
render to it.

In the long term, it would be nice to remove the hack in
intel_alloc_window_storage in favour of a proper Mesa interface for flipping
between more than two colour buffers.
2007-03-19 17:23:44 +01:00
Nian Wu
e01ee3da57 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-19 17:00:19 +08:00
Keith Whitwell
77544d7b7d fix off-by-one in load_state_immediate 2007-03-18 20:13:45 +00:00
Keith Whitwell
c9e39aeaef fix typo in subrect_disable packet 2007-03-18 20:13:45 +00:00
Keith Whitwell
07265280a9 fix typo in subrect_disable packet 2007-03-18 20:13:45 +00:00
Miguel Marte
c41d6ab6f0 screen offset changes, bug 9965 2007-03-18 11:08:29 -06:00
Nicolai Haehnle
441f038748 fix assertion in read_depth_pixels() 2007-03-18 11:02:35 -06:00
Oliver McFadden
dd868b4100 r300: Removed the deprecated $XFree86$ CVS keywords. 2007-03-18 16:57:45 +00:00
Oliver McFadden
1062106521 r300: Corrected the string for polygon mode; it wasn't updated from unkXXX. 2007-03-18 16:45:32 +00:00
Ben Skeggs
bcf4f4de76 nouveau: avoid using uninitialised TexSrcUnit. 2007-03-19 00:13:41 +11:00
Xiang, Haihao
bb02092d74 mesa: SWAP_BUFF support when calling DrawPixels(DEPTH_COMPONENT)
or TexImage(DEPTH_COMPONENT)
2007-03-18 18:44:51 +08:00
Xiang, Haihao
b6fe1bdd4d mesa: enhance fxt1_quantize_ALPHA1
If possible, let minCol != maxCol
2007-03-18 18:34:21 +08:00
Xiang, Haihao
84081774e6 i965: fix for FXT1 & S3TC texture format
choose the right mesa texformat for FXT1 & S3TC
2007-03-18 18:26:16 +08:00
Nian Wu
fd1b1fce3f Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-18 17:00:18 +08:00
Oliver McFadden
cfe984dbd0 Use _mesa_copy_instructions rather than memcpy in _mesa_insert_mvp_code. 2007-03-18 07:35:45 +00:00
Haihao Xiang
ee5b7f0574 fix some format conversion bugs in glGetTexImage(), bug 10288 2007-03-17 09:42:36 -06:00
Nian Wu
38889f5221 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-17 17:00:25 +08:00
Dave Airlie
6a9b0cd0b4 r300: change vendor string to DRI R300 Project 2007-03-17 16:46:24 +11:00
Brian
e5070bc3ca Assorted fixes for dealing with zero-size frame/renderbuffers.
In xmesa_check_and_update_buffer_size() handle xmctx==NULL correctly: still
call _mesa_resize_framebufer().  If we don't we can wind up in a situation
where the framebuffer size is non-zero but an attached renderbuffer size
is still initialized to zero.  This inconsistancy can later cause problems.
Check for zero-size renderbuffers in update_color_draw_buffers() and
update_color_read_buffer().
See bug 7205.
2007-03-16 11:00:07 -06:00
Brian
7573b58db6 Colortable re-org.
The pixel transfer path has three color table lookups.
Use an array [3] to store that info, rather than separate variables.
2007-03-16 09:36:12 -06:00
Brian
d7049431a0 added a renderbuffer comment 2007-03-16 08:36:22 -06:00
Mathias Hopf
f04979ae48 added null xmctx check to XMesaResizeBuffers(), bug 7205 2007-03-16 08:28:34 -06:00
Nian Wu
a02870f4f6 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-16 17:00:24 +08:00
Brian
e348016253 silently ignore DeleteProgram/Shader(id=0) 2007-03-15 16:07:39 -06:00
Brian
7ed292a4e9 in _mesa_GetColorTable, return silently if table size is 0 2007-03-15 16:06:58 -06:00
Oliver McFadden
95764262a7 Fixed a minor typo in the comment near _mesa_copy_instructions. 2007-03-15 21:57:31 +00:00
Oliver McFadden
0c25d9ab19 r300: Added _mesa_copy_instructions. 2007-03-15 20:55:30 +00:00
Oliver McFadden
1195caa274 r300: Renamed r300_vertexprog.c to r300_vertprog.c 2007-03-15 20:39:07 +00:00
Oliver McFadden
0e9ada1087 r300: Use _mesa_alloc_instructions/_mesa_init_instructions instead of malloc.
Note that insert_wpos in r300_vertexprog.c is still a little flaky and could be
improved.
2007-03-15 19:49:10 +00:00
Oliver McFadden
0d6d80ef3d r300: Updated R300 to use the new SWIZZLE macros. 2007-03-15 19:09:10 +00:00
Oliver McFadden
51693b22cd r300: Fixed an unused variable warning and removed some cruft, too. 2007-03-15 18:44:29 +00:00
Oliver McFadden
b3a9a90cdf r300: Fixed a printf conversion warning. 2007-03-15 18:30:33 +00:00
Oliver McFadden
7f08dd3fc6 r300: Fixed "no previous prototype for 'r300RefillCurrentDmaRegion'" warning. 2007-03-15 18:30:33 +00:00
Brian
fc6b8f2d30 added SWIZZLE_XXXX, YYYY, etc. macros 2007-03-15 11:51:54 -06:00
Oliver McFadden
4e4ab2a62b Committed Rune Petersen's fragment.position patch (Bug #10024) plus a few small
corrections.
2007-03-15 17:35:34 +00:00
Brian
4d2eb637a2 no-op clear if buffer width or height is zero (bug 7205) 2007-03-15 11:16:41 -06:00
Brian
038e981cac add some rb->Data null ptr checks (bug 7205) 2007-03-15 11:11:41 -06:00
Brian
90563d39cb Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-03-15 09:03:03 -06:00
Brian
0cfdf432e4 implement byteswapping for all multi-byte types in _mesa_pack_rgba_span_float(), bug 10298 2007-03-15 09:02:14 -06:00
Keith Whitwell
4a7fe4fcfa Fix off by one error in immediate state packet size. 2007-03-15 10:29:38 +00:00
Nian Wu
d63eef4b86 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-15 17:00:22 +08:00
Brian
32d196820f pixelmap code simplification 2007-03-14 14:56:39 -06:00
Brian
b6adf336f4 Re-org of gl_pixel_attrib struct.
Reorder fields according to the order in which the pixel transfer operations
take place.  Improve comments.
Move the pixel maps out of gl_pixel_attrib since they're not supposed to be
pushed/popped by glPush/PopAttrib.
New gl_pixelmap and gl_pixelmaps structs to contain the pixelmaps.
2007-03-14 14:33:46 -06:00
Brian
62b4601e53 s/Tranpose/Transpose/ 2007-03-14 13:34:30 -06:00
Brian
3049946fa7 clear the b->frontxrb->drawable field in xmesa_free_buffer(), see bug 7205 2007-03-14 12:52:53 -06:00
Brian
46fe008778 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-03-14 12:43:26 -06:00
Brian
47e0b606a8 move CLIENT_ID code in xmesa_delete_framebuffer(), see bug 7205 2007-03-14 12:42:30 -06:00
Brian
565d097d8f continue prev check-in: save ptr to slang_function for SLANG_OPER_CALL 2007-03-14 11:07:32 -06:00
Brian
2dc3e94470 After we've found the slang_function ptr for a SLANG_OPER_CALL node, save the ptr in the node for reuse.
This can save a tremendous amount of time when resolving types in complex
expressions.  One particular shader was taking several minutes to compile
but now compiles almost instantaneoulsy.
2007-03-14 10:49:35 -06:00
Brian
b1a955b518 make _slang_typeof_function() static 2007-03-14 10:16:18 -06:00
Brian
b01f146fd0 remove old assertion 2007-03-14 08:56:01 -06:00
Nian Wu
805b1cf482 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-14 17:00:15 +08:00
Brian
52363954bf more bug fixing, error checking 2007-03-13 16:50:24 -06:00
Brian
98650bdf89 fix a number of issues in _mesa_uniform() 2007-03-13 16:32:48 -06:00
Brian
5186529e57 remove bogus assertion 2007-03-13 16:31:30 -06:00
Brian
fdf513e07a document some bug fixes, lots of new features 2007-03-13 16:12:23 -06:00
Brian
8d9db3dd03 fix ctx->Pixel.PostConvolutionScale/Bias subscript bugs 2007-03-13 16:07:04 -06:00
Brian
fd08463dea Check for, simplify vec2/3/4(x). Only do call adapting for constructors. 2007-03-13 15:58:40 -06:00
Brian
c7b2cce418 improve literal printing 2007-03-13 15:57:09 -06:00
Brian
000b2899b9 disable some debug output 2007-03-13 15:55:54 -06:00
Brian
a49a865cf5 better error msg for undefined function, disable some debug output 2007-03-13 15:55:41 -06:00
Brian
948c60badc get rid of float_multiply, float_add, float_divide 2007-03-13 15:00:14 -06:00
Roland Scheidegger
a6cc9ab493 sync up t_vp_build.c brw_vs_tnl.c a bit
Bring over the optimizations for fog and normalized spot dir
from t_vp_build.c to brw_vs_tnl.c. Likewise, port a fix for point size
calc from brw_vs_tnl.c to t_vp_build.c (use ABS(eyez) instead of -eyez). Leave
the now differing point size calcs alone though, not sure what's better (it's
basically MOV, ABS, MUL, DP3 vs. ABS, MAD, MAD).
2007-03-13 19:04:28 +01:00
Brian
d8070889d7 alloc an extra byte in _mesa_ShaderSourceARB() to silence a valgrind warning 2007-03-13 11:00:21 -06:00
Brian
c000843a14 be smarter about which fragment attribs are interpolated before running frag progs 2007-03-13 10:58:48 -06:00
Brian
da55430952 comment about SPAN_* vs FRAG_BIT_* values 2007-03-13 10:58:23 -06:00
Brian
17ad1d12eb Check if FRAG_RESULT_COLR is written and update span->interpMask, arrayMask.
Also, fix an assertion.
2007-03-13 10:53:16 -06:00
Brian
8b9842a256 Shuffle some code around in the emit_tex() and emit_move() instructions.
Note that the inst ptr returned by new_instruction() may become invalid
after calling emit_() since the emit functions may allocate new instructions
which is done vial realloc().
Also, add some new assertions to try to catch this kind of bug.
2007-03-13 10:49:08 -06:00
Roland Scheidegger
37e6f760fd enable ARB_vertex_buffer_object for more dri drivers
ARB_vertex_buffer_object looks like a useful extension even for old chips.
The drivers should not need any code to be able to use this extension since
they just use mesa's vbo code anyway.
Newly enabled for i810, mach64, mga, r128, radeon, savage, sis and unichrome.
2007-03-13 17:44:22 +01:00
Brian
7265e6928e properly compute ctx->Texture._EnabledCoordUnits 2007-03-13 10:28:26 -06:00
Oliver McFadden
4c18d9056b r300: Renamed the CACHE_CTLSTAT values to include UNKNOWN in the name; not
enough information is known about them to be sure as to what the values mean.
2007-03-13 14:48:29 +00:00
Roland Scheidegger
14f0b7ea98 use movdqu instead of movdqa for unaligned load avoiding a segfault (bug 10265) 2007-03-13 13:44:23 +01:00
Nian Wu
4110fac389 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-13 17:00:18 +08:00
Oliver McFadden
eb4db4c4ec Add defines for the values written to R300_RB3D_ZCACHE_CTLSTAT.
Note that just like the values written to R300_RB3D_DSTCACHE_CTLSTAT these
values are really unknown; ideally more reverse engineering should be done to
determine what these values mean and when they should be set.
2007-03-13 06:24:56 +00:00
Oliver McFadden
19fbe9732c Documented the value written for R300_TX_CNTL cache flush. 2007-03-13 06:10:23 +00:00
Xiang, Haihao
53f83b435c mesa: _mesa_unpack_image
1. take packed pixel data as a component
2. fix for GL_BITMAP when compiling glTexImage, etc into
a display list:  a. flip byte if lsbFirst is true since
DefaultPacking->lsbFirst is false. b. handle SkipPixels
2007-03-13 13:39:34 +08:00
Oliver McFadden
cd66604756 Corrected values written to R300_RB3D_DSTCACHE_CTLSTAT to either
R300_RB3D_DSTCACHE_02 or R300_RB3D_DSTCACHE_0A, rather than hexadecimal values.
2007-03-13 01:31:38 +00:00
Oliver McFadden
0c750ca98d Guess another unknown register used for R300 pacification. 2007-03-13 00:48:17 +00:00
Brian
b3a22d0ed6 Implement GL_ARB_texture_rectangle support
This includes the sampler2DRect and sampler2DRectShadow types and
the texture2DRect(), texture2DRectProj(), etc. built-in functions.
2007-03-12 17:29:50 -06:00
Michel Dänzer
708d836e6b i915tex: Don't crash when intel_fb->color_rb[i] is NULL.
This can be the case on some systems when running glxinfo.
2007-03-12 19:08:28 +01:00
Brian
8946d7f029 Add array bounds checking, fix memleaks, add null ptr checks. 2007-03-12 10:52:52 -06:00
Brian
d2a6f43eaf extra stuff for drawbuffers test 2007-03-12 10:30:36 -06:00
Brian
17fb7821d7 clean-up, simplify _mesa_image_row_stride() 2007-03-12 09:50:27 -06:00
Brian
c1a5447337 take GL_UNPACK_ALIGNMENT into account in _mesa_image_row_stride() for GL_BITMAP type (bug 10261) 2007-03-12 09:50:27 -06:00
Alan Swanson
d0a3400f66 r200: Simplify r200SetCliprects like radeonSetCliprects in radeon and r300. 2007-03-12 10:03:01 +01:00
Alan Swanson
33ea9dccaf r200: Adapt cliprect fixes from r300. 2007-03-12 09:59:45 +01:00
Alan Swanson
88501887e4 radeon: Adapt cliprect fixes from r300. 2007-03-12 09:59:28 +01:00
Nian Wu
5a5b55943d Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-12 09:03:27 +08:00
Brian
3f7ef618b6 added drawbuffers.c 2007-03-11 17:30:13 -06:00
Brian
15aa7aaa93 add NULL ptr check 2007-03-11 17:29:54 -06:00
Brian
ccb80d7ec4 Test the GL_ARB_draw_buffers extension.
Also requires GL_EXT_framebuffer_object and OpenGL 2.0 (for GLSL).
2007-03-11 17:03:29 -06:00
Brian
1c09bcfdda Implement support for GL_ARB_draw_buffers with GL_MAX_DRAW_BUFFERS > 1.
GL_MAX_DRAW_BUFFERS is currently 4.
Added gl_FragData[] output for fragment programs.
In _swrast_write_rgba_span() loop over the color outputs/renderbuffers.
2007-03-11 17:00:39 -06:00
Xiang, Haihao
61ec23cc63 fix for bug#10196
Compute half if LOCAL_VIEWER is enabled and the light is
a directional source.
2007-03-11 22:41:26 +08:00
Aapo Tahkola
69e57cf6ae Guess another unknown register in R300 command buffer initialization. (Oliver McFadden) 2007-03-11 11:47:03 +02:00
Oliver McFadden
e64166703a Renamed some of the unkXXX variables in the command buffer init
ialization code.

Note that there are still plenty of actual unknown variables left that should
probably be deciphered.

There are a number of things incomplete in the driver; the different polygon
offset modes (line, point, etc), the other texture filter, texture chroma key,
etc. These should probably be fixed in the future, or at least added to the TODO
list.
2007-03-11 12:18:27 +11:00
Brian
d23dd812ad Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into glsl-compiler-1 2007-03-10 14:07:28 -07:00
Brian
7d39c1ae76 Fix TEXREL issues.
Patch submitted by Christoph Brill.
See http://www.gentoo.org/proj/en/hardened/pic-fix-guide.xml
2007-03-10 11:50:50 -07:00
Brian
823c041fde check for EXT_blend_equation_separate for 2.0 2007-03-10 11:48:59 -07:00
Brian
10b5895597 Implement gl_FrontFacing for fragment shaders.
For the time being, we put the gl_FrontFacing value in the FOGC.Y input
register.  Combining FOGC and FrontFacing in one register is a bit of a
hack and may need to be changed someday.
2007-03-10 11:30:19 -07:00
Brian
1fcb4ecc07 clean-up formatting 2007-03-10 10:56:06 -07:00
Brian
c9872b80c8 add NULL ptr check in emit_cond() 2007-03-10 10:37:18 -07:00
Michel Dänzer
38f7f81518 i915tex: Fix build against libdrm git... 2007-03-10 17:12:58 +01:00
Michel Dänzer
beffb4e88c i915tex: Fix intel_wait_flips being declared implicitly. 2007-03-10 16:40:22 +01:00
Michel Dänzer
97775f9904 i915tex: Fix build against released version of libdrm. 2007-03-10 16:08:11 +01:00
Stephane Marchesin
ced8870a6a nouveau: fix nv04 swtcl. 2007-03-10 13:46:26 +01:00
Stephane Marchesin
4f12b37a56 nouveau: fix the nv04 swtcl code. 2007-03-10 01:30:34 +01:00
Stephane Marchesin
581a594033 nouveau: oops don't debug by default. 2007-03-10 01:30:34 +01:00
Stephane Marchesin
df1c3ff3dd nouveau: some fixes to the nv04 state code. 2007-03-10 01:30:33 +01:00
Stephane Marchesin
e61f674844 nouveau: add a fifo size debug check. 2007-03-10 01:30:33 +01:00
Brian
46bd63819e use gl_ModelViewProjectionMatrixTranspose in ftransform() 2007-03-09 17:02:12 -07:00
Brian
ff95925e70 add NULL ptr check 2007-03-09 16:53:44 -07:00
Michel Dänzer
30b914e2ca Merge branch 'i915tex-pageflip' 2007-03-10 00:19:17 +01:00
Brian
b9ea936150 added GL_CURRENT_PROGRAM 2007-03-09 15:41:25 -07:00
Michel Dänzer
6e0878becf i915tex: Wait for pending scheduled flips before switching vsync pipe.
This avoids hangs when the vblank sequence numbers are not in sync between
pipes, in particular when they run at different refresh rates.
2007-03-09 20:00:13 +01:00
Michel Dänzer
bb0760ca4f i915tex: Set intel_fb->vbl_waited to current instead of what we aimed for. 2007-03-09 19:56:55 +01:00
Brian
2cf5fd48d1 Merge branch 'origin' into glsl-compiler-1
Conflicts:

	src/mesa/main/context.c
2007-03-09 11:43:53 -07:00
Brian
9f44247acf fix _mesa_uniform_matrix() transpose bug 2007-03-09 11:34:18 -07:00
Michel Dänzer
36b4e25da3 i915tex: Sync pages between pipes immediately again.
This should be safe now that we no longer use the MI_WAIT_FOR_EVENT instruction
incorrectly and should also work correctly with applications that render to the
front buffer.
2007-03-09 17:52:29 +01:00
Brian
b03e1712b2 gl_ClipVertex not supported yet 2007-03-09 09:51:55 -07:00
Michel Dänzer
81536789d2 i915tex: Do not wait for pending flips on both pipes at the same time.
The MI_WAIT_FOR_EVENT instruction does not support waiting for several events
at once, so this should fix the lockups with page flipping when both pipes are
enabled.
2007-03-09 17:42:55 +01:00
Brian
f9f79c8d77 New IMAGE_RED_TO_LUMINANCE flag passed to _mesa_pack_rgba_span_float() to fix glGetTexImage(GL_LUMINANCE) bug #10232. 2007-03-09 09:13:49 -07:00
Michel Dänzer
4d9901a1ca r300: Also update window state when it's already bound but its stamp changed.
And set new cliprects before deriving other state from them. This ensures
cliprects aren't accessed after having been freed.

Thanks to Panagiotis Papadakos for testing various iterations of this.
2007-03-09 09:43:17 +01:00
Brian
a706b0b8bd added missing bvec2/3/4 constructors 2007-03-08 16:08:55 -07:00
Brian
05b74e4ae4 fix broken vec4_seq, vec4_sne instructions 2007-03-08 15:59:20 -07:00
Brian
2f35a17f38 Update lessThan(), lessThanEqual() functions, improve some matrix constructors. 2007-03-08 15:53:05 -07:00
Brian
5761a93bba Added IR_SLE and IR_SLT for <= and < operations.
Using IR_SGE and IR_SGT with transposed args doesn't work since the __asm
calls don't do argument matching by name, but by position.
This fixes the broken lessThan() and lessThanEqual() functions.
2007-03-08 15:52:22 -07:00
Brian
3e0fbc7efc fix tmp storage problem for IR_I_TO_F 2007-03-08 15:45:25 -07:00
Brian
19a9050548 fix assertion 2007-03-08 15:19:34 -07:00
Brian
ee931f8d4d ; and {} statements were broken 2007-03-08 14:48:34 -07:00
Brian
ec89aba7c6 remove unused new_cjump() 2007-03-08 11:29:22 -07:00
Brian
cce4e50569 IR_CJUMP0/1 no longer used/needed 2007-03-08 11:16:13 -07:00
Brian
63772e2a2c rewrite _slang_gen_select() to use IF node 2007-03-08 11:07:52 -07:00
Brian
b3dd49429b s/_slang_gen_hl_if/_slang_gen_if/ 2007-03-08 10:53:50 -07:00
Brian
609306de17 s/_slang_gen_hl_if/_slang_gen_if/ 2007-03-08 10:43:57 -07:00
Brian
c9f486c38f remove old assertion 2007-03-08 10:40:37 -07:00
Brian
bf86ddaa20 check for attempted writes to read-only vars 2007-03-08 10:40:25 -07:00
Brian
de8172673e Rework matrix-related code.
GLSL matrices are stored in column-major order while GL_ARB_vertex/fragment_program
use row-major.  So, need to use STATE_MATRIX_TRANSPOSE for built-in matrices.
Unfortunately, this means that the expression M * V isn't very efficient since we
need to extract the rows out of M.  And that's the typical expression for vertex
transformation:  gl_ModelViewProjectionMatrix * gl_Position.
Solve this inefficiency by looking for M*V expressions and replacing them
with V*Transpose(M).
Also, add support for GLSL 1.20's MatrixTranspose, Inverse and InverseTranspose
matrices.
2007-03-08 09:38:35 -07:00
Xiang, Haihao
d85667950f remove a if-statement
glMaterial changes the current specular exponent or glLight changes
    the intensity distribution of the light, but _mesa_update_state doesn't
    update the corresponding light table. So they must be updated at this time.
2007-03-08 22:54:14 +08:00
Brian
6ff0a04f7c fix ProjectionMatrix typo 2007-03-08 07:53:30 -07:00
Brian
7e66cad998 fix gl_TextureMatrix indexing 2007-03-08 07:51:39 -07:00
J.Jansen
79d59d0173 Updates of the OpenVMS makefiles.
-include missing definitions
	 -add files to compile
	 -remove files from compile list which are removed from the repositry
	 -add support for vbo

	new file:   src/mesa/vbo/descrip.mms
	modified:   src/mesa/descrip.mms
	modified:   src/mesa/drivers/osmesa/descrip.mms
	modified:   src/mesa/drivers/x11/descrip.mms
	modified:   src/mesa/swrast_setup/descrip.mms
	modified:   src/mesa/tnl/descrip.mms
2007-03-08 09:53:28 +01:00
Brian
9637c963f5 more DEBUG_PROG 2007-03-07 17:40:57 -07:00
Brian
fb3f0beb42 update comments 2007-03-07 17:37:24 -07:00
Brian
0aec2bb8f2 remove unneeded return stmt 2007-03-07 16:13:33 -07:00
Brian
da899d190e add missing gl_Point state, fix IR storage bug 2007-03-07 16:13:22 -07:00
Nian Wu
1e055089a3 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-07 16:01:36 -05:00
Brian
29bc4b8974 s/diffuset/diffuse/ 2007-03-07 13:35:49 -07:00
Brian
c3412e9a08 regenerated 2007-03-07 13:07:40 -07:00
Brian
842c782cee use 2.0, 2.1 version strings 2007-03-07 13:07:07 -07:00
Brian
faeea574af remove end_label field 2007-03-07 13:00:06 -07:00
Brian
35d25c0ce4 Fix problem with nested function calls such as y = f(f(x))
Replace CurFunction with curFuncEndLabel.
2007-03-07 12:59:01 -07:00
Brian
5b5a80d011 s/equal/EQUAL/, fix bugs in logical or/and code. 2007-03-07 11:26:47 -07:00
Brian
ab673c8527 fix broken __postDecr() 2007-03-07 11:25:37 -07:00
Brian
1dca089149 fix deferredTexture bug 2007-03-07 10:42:44 -07:00
Michel Dänzer
fb3410297b i915tex: Set framebuffer size to match window before calling _mesa_make_current.
Fixes issues with apps that don't call glViewport by default.
2007-03-07 18:01:39 +01:00
Brian
3efd0c7b8d fix swizzled writemask bug 2007-03-07 09:59:26 -07:00
Brian
f3da222839 remove bogus assertion 2007-03-07 09:58:45 -07:00
Michel Dänzer
9adf6e9d6c i945_miptree_layout: Adapt cubemap fixes from i915_miptree_layout.
Cubemaps aren't working fully correctly yet, but at least they don't seem to
cause crashes anymore.
2007-03-07 17:52:44 +01:00
Brian
d25046b648 fix incorrect HPOS write test 2007-03-07 08:56:09 -07:00
Brian
e61ec95deb additional error detection 2007-03-07 08:55:42 -07:00
Brian
cec81eef31 check for null program ptrs in _mesa_uniform() 2007-03-07 08:04:06 -07:00
Brian
55821d021d Generate an error if the vertex shader does not write to gl_Position. 2007-03-07 07:52:24 -07:00
Brian
2282d81536 destroy window during cleanup 2007-03-06 16:33:00 -07:00
Brian
6cb0aa12b8 more integer arithmetic updates 2007-03-06 16:32:03 -07:00
Brian
0af1c6b5d1 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-03-06 16:27:23 -07:00
Brian
e69da9d02e explicit calls to _mesa_unreference_framebuffer() not always needed now 2007-03-06 16:26:22 -07:00
Brian
1a6baf092b unreference old framebuffer, if needed, in _mesa_reference_framebuffer() 2007-03-06 16:26:02 -07:00
Brian
955906aa64 fix renderbuffer mem leak 2007-03-06 16:25:07 -07:00
Brian
37fd6be411 formatting fix 2007-03-06 16:24:48 -07:00
Brian
e10a1457e8 fix some int arithmetic problems 2007-03-06 14:07:48 -07:00
Nian Wu
87c9ad6fd5 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-06 16:01:23 -05:00
Ian Romanick
fa8961069c Merge branch 'master' of ssh+git://idr@git.freedesktop.org/git/mesa/mesa 2007-03-06 11:50:33 -08:00
Ian Romanick
091be11190 Fix cut-and-paste error in the name of GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB. 2007-03-06 11:50:21 -08:00
Brian
28ab1125c2 more DEBUG_PROG code 2007-03-06 12:15:30 -07:00
Brian
c6d930a114 fix vert/frag typo 2007-03-06 11:53:27 -07:00
Brian
a510bc3ee1 Fix/improve framebuffer object reference counting.
Use _mesa_reference_framebuffer() and _mesa_unreference_framebuffer() functions
to be sure reference counting is done correctly.  Additional assertions are
done too.  Note _mesa_dereference_framebuffer() renamed to "unreference" as
that's more accurate.
2007-03-06 10:07:59 -07:00
Brian
593802c0b0 Take care of texObj reference in _mesa_free_framebuffer_data() 2007-03-06 09:49:15 -07:00
Brian
330d7e2080 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-03-06 09:03:18 -07:00
Nian Wu
c05b6f800a Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-06 07:43:03 -05:00
Michel Dänzer
6f9b1afc86 r300: Call radeonSetCliprects from radeonMakeCurrent.
Based on a patch by Panagiotis Papadakos.

Among other things, this makes sure the framebuffer object associated with the
drawable has the correct size when _mesa_make_current is called, so the default
viewport is set up correctly.

Also update radeon->lastStamp in radeonSetCliprects.
2007-03-06 13:22:35 +01:00
Xiang, Haihao
1c70cde888 fix for bug#10182
call _mesa_dereference_framebuffer instead of _mesa_dereference_framebuffer
in i810, i915, i915tex, i965 drivers.
2007-03-06 15:47:37 +08:00
Xiang, Haihao
a783713432 fix for bug#9971
call swsetup_Wakeup before falling back to software rendering
2007-03-05 22:18:21 +08:00
Nian Wu
540e1c70cc Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-05 09:01:31 -05:00
Keith Whitwell
7ecdfb2f08 Propogate UsesKill information. 2007-03-04 21:50:51 +00:00
Nian Wu
180c0d70c4 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-02 09:01:27 -05:00
Christoph Bill
9557706404 r300: Use register name & add a register about shading. 2007-03-01 21:11:45 +01:00
Christoph Bill
0d2a68fc61 r300: Use reg definition when available & add missing reg definition. 2007-03-01 20:45:04 +01:00
Christoph Bill
ad3f2107ed Add early register descritpion.
This need more work on case where we can disable
or enable early  (stencil, alpha might need it to
be disable).
2007-03-01 20:40:25 +01:00
Rune Petersen
5cb01764f6 Optimize cos&sin instruction a bit more. 2007-03-01 20:36:19 +01:00
Brian
a8ba888a35 move oldFb decl into tighter scopes 2007-03-01 09:40:21 -07:00
Brian
9fbb2e9e76 fix bad n_dot_h normalization code (bug 9977), plus clean-up the code in general 2007-03-01 09:17:01 -07:00
Brian
d592eaeb83 fix clipping, display name, warnings 2007-03-01 07:56:11 -07:00
Brian
887d3c67cb s/unsigned int/size_t/ (bug 10135) 2007-03-01 07:42:42 -07:00
Brian
03b9e16507 include assert.h 2007-03-01 07:39:27 -07:00
Nian Wu
6a47e35065 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-03-01 09:01:58 -05:00
Brian
38a88db1fc Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-02-28 11:58:30 -07:00
Brian
9f37be694e s/ARB/MESA/ in extension check (bug 10126) 2007-02-28 11:58:06 -07:00
Michel Dänzer
0609b6afa8 i915tex: Sync pages differently when crossing pipe borders.
Don't flip (up to twice) immediately but just arrange things such that the
pages will be in sync on both pipes on the next flip.
2007-02-28 17:46:07 +01:00
Michel Dänzer
3c578455e1 i915tex: Check that intel_rb is valid before trying to add it to an fbo. 2007-02-28 17:42:54 +01:00
Michel Dänzer
edf676cc5a i915tex: Also update intel_rb->vbl_pending when scheduled swap is not a flip. 2007-02-28 16:05:49 +01:00
Ben Skeggs
afa780c09d nouveau: drm interface changes 2007-02-28 15:31:28 +11:00
Brian
07e62084bb info about how the compiler works 2007-02-27 16:45:40 -07:00
Nian Wu
381b4b0c91 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-02-27 14:42:16 -05:00
Brian
59e56ee3e5 fix comment 2007-02-27 11:09:48 -07:00
Brian
f30e312763 assert that fb->RefCount==0 in _mesa_free_framebuffer_data() 2007-02-27 11:09:28 -07:00
Brian
0e1bd23025 s/matrix_stack/gl_matrix_stack/ and s/mesa_list_state/gl_dlist_state/ 2007-02-27 09:54:50 -07:00
Brian
2cf8d24131 remove unused DriverMgrCtx 2007-02-26 18:35:34 -07:00
Brian
fa4d036424 Add EmitHighLevelInstructions, EmitComments booleans to gl_shader_state.
These control code generation options.  May be overridden by drivers, debuggers, etc.
2007-02-26 18:33:50 -07:00
Brian
4f26a52908 re-enable var scope destruct in slang_operation_destruct() 2007-02-26 18:08:09 -07:00
Brian
553fe132d4 Fix a few bugs in slang_operation variable scoping. Seems to fix a double-free. 2007-02-26 18:07:26 -07:00
Brian
aa6f4241f8 formatting fixes 2007-02-26 17:32:45 -07:00
Brian
e21096b07c fix mem leak 2007-02-26 17:05:52 -07:00
Brian
b58ea057fe fix mem leak in _mesa_ShaderSourceARB() 2007-02-26 17:00:06 -07:00
Brian
4b8d75e2e6 fix logic for reporting errors 2007-02-26 16:32:00 -07:00
Brian
f446e58e45 disable execute bit 2007-02-26 15:13:34 -07:00
Brian
6817407d49 fix error flagging 2007-02-26 15:06:56 -07:00
Brian
365f8fb0dd re-enable some code 2007-02-26 15:02:36 -07:00
Brian
ed0ae62ad7 Merge branch 'glsl-compiler-1' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into glsl-compiler-1 2007-02-26 14:34:57 -07:00
Brian
ca279b80e6 Remove old error logging code. New slang_log.[ch] files. 2007-02-26 14:33:52 -07:00
Brian
c4ac5ac9d7 Overhaul of error handling. 2007-02-26 14:32:53 -07:00
Brian
7f01ef171f Overhaul of error logging. 2007-02-26 14:32:29 -07:00
Brian
e63c7e0893 Use new slang_emit_info struct for passing context info around. 2007-02-26 14:22:05 -07:00
Brian
25ea5ea27e Merge branch 'glsl-compiler-1' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into glsl-compiler-1 2007-02-26 13:11:20 -07:00
Brian
928a70e435 Rewrite code related to buffer destruction.
Do proper reference counting so that we don't wind up with dangling
references to deleted windows/framebuffers.  Should help with bug 7205.
2007-02-26 11:39:17 -07:00
Brian
f30e8a4bdf if renderbuffer ptr is null, just return 2007-02-26 11:37:52 -07:00
Brian
e6a9381f78 Do proper framebuffer refcounting in _mesa_make_current().
Also, added DeletePending field to gl_framebuffer used when a window has been
deleted, but there still may be rendering contexts attached to the
gl_framebuffer object.
2007-02-26 11:37:37 -07:00
Brian
344c3f7379 updated version with new Khronos license/copyright 2007-02-26 09:19:32 -07:00
Panagiotis Papadakos
1a72c8ed3f s/pdp/prp/ in DoBindContext() 2007-02-26 07:59:14 -07:00
Panagiotis Papadakos
3528d61820 add missing param to _mesa_warning() 2007-02-26 07:57:31 -07:00
Brian
46d4880201 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-02-26 07:56:43 -07:00
Brian
4e53ce81cf remove unneeded includes 2007-02-25 20:05:22 -07:00
Brian
3c1c999226 update comments 2007-02-25 19:11:44 -07:00
Brian
313d50e903 fix bounds checking in get_register_pointer() 2007-02-25 19:01:16 -07:00
Brian
b85d4d61a7 define and use MAX_PROGRAM_ADDRESS_REGS 2007-02-25 18:56:57 -07:00
Brian
33eac56e4a Add EnvParams field to gl_program_machine, avoid passing ctx to a bunch of functions. 2007-02-25 18:52:41 -07:00
Brian
6774f32adb simplify _mesa_get_program_register() 2007-02-25 18:39:46 -07:00
Brian
21bcb2e1f6 s/GetFragmentProgramRegister/GetProgramRegister/ 2007-02-25 18:35:47 -07:00
Brian
cfd0011f2f minor clean-ups in _mesa_execute_program() 2007-02-25 18:30:45 -07:00
Brian
8b34b7da41 remove 'maxInst' parameter from _mesa_execute_program() 2007-02-25 18:26:50 -07:00
Brian
085d7d59f0 remove unused 'element' parameter from _mesa_execute_program() 2007-02-25 18:23:37 -07:00
Brian
12fd8faa5d s/attribs/results/ 2007-02-25 18:08:16 -07:00
Brian
29796b62bd remove unused VaryingPtr 2007-02-25 17:33:46 -07:00
Brian
e71a33bbf8 Optimize the loop for copying output results. 2007-02-25 17:29:00 -07:00
Brian
f68067e101 add texture rotation 2007-02-25 17:24:40 -07:00
Aapo Tahkola
c080123998 Fix #10071 - wrong max_index in vbo draw_prims. (Papadakos Panagiotis) 2007-02-26 01:51:39 +02:00
Brian
9854a17f29 only copy used outputs 2007-02-25 12:47:25 -07:00
Brian
21625d729c output texcoord in vertex program 2007-02-25 12:46:56 -07:00
Nian Wu
675f7f627b Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2007-02-25 09:40:28 -08:00
Brian
9d8df47996 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-02-24 18:29:57 -07:00
Brian
32fbbf38b4 Revert "option to test mipmapping"
This reverts commit a127537efb.
Meant to do this on the trunk.
2007-02-24 18:27:46 -07:00
Brian
a127537efb option to test mipmapping 2007-02-24 18:20:35 -07:00
Brian
d9fb113e05 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-02-24 18:15:45 -07:00
Brian
53170942e3 Fix broken cubemap mipmap layout (the cubemap.c demo was segfaulting).
In i915_miptree_layout() change the width, height parameters that are passed
to intel_miptree_set_level_info().  As it was, the width, height values were
larger than the source image dimensions and we segfaulted in memcpy() when
copying the original texture data into the texture buffer region.
This fix should probably be checked by someone more familiar with the code (Keith?)
2007-02-24 18:14:53 -07:00
Brian
aeaad937b9 clean-up, comment code 2007-02-24 18:11:09 -07:00
Brian
5cd30a2b20 make src ptr const 2007-02-24 18:10:41 -07:00
Brian
fbc4929185 add missing code for newer STATE_INTERNAL items 2007-02-24 17:00:50 -07:00
Brian
efcfdbd4d1 Undo some changes to _mesa_UpdateTexEnvProgram(). Fixes broken i915 texturing. 2007-02-24 15:51:41 -07:00
Brian
292a80466d Outputs[] array wasn't large enough, define MAX_PROGRAM_OUTPUTS, new assertions. 2007-02-24 15:49:54 -07:00
Brian
5e80c62f31 Remove unneeded _Fragment/VertexShaderPresent fields, update comments. 2007-02-24 15:39:37 -07:00
Brian
197af3dc32 Use prog_execute.c to run vertex programs until t_vb_arbprogram.c is updated to
handle branch instructions, etc.
2007-02-24 11:16:58 -07:00
Brian
824dcd4399 remove comment 2007-02-24 11:15:27 -07:00
Brian
761728afe8 Fix assertion in get_register_pointer(), fix EXP case.
Note that GL_ARB_v_p and GL_NV_v_p define the z component of the EXP instruction
differently.  We follow the ARB extension.
2007-02-24 11:14:57 -07:00
Brian
f183a2d7ea added ARL, EXP, LOG, relative indexing 2007-02-23 17:14:30 -07:00
Brian
a2786a97d7 add some missing cases in _mesa_program_state_string() 2007-02-23 17:13:30 -07:00
Brian
f1390a3424 fix fog breakage 2007-02-23 17:11:01 -07:00
Brian
e80d901d98 reindent 2007-02-23 16:53:24 -07:00
Brian
6df328e84d don't pass program ptr to fetch_vector[14]() 2007-02-23 16:48:07 -07:00
Ian Romanick
3f8c5969ff Fix GLAPIENTRYP for OS X.
Fix build problems related to incorrect define of GLAPIENTRYP on OS X.
Reported by bushing on IRC.
2007-02-23 15:15:50 -08:00
Brian
064ae479a7 Update DRI drivers for new glsl compiler.
Mostly:
- update #includes
- update STATE_* token code
2007-02-23 13:40:13 -07:00
Brian
36a0ee199d expose _mesa_load_tracked_matrices() 2007-02-23 13:38:37 -07:00
Brian
15b3bd1689 added linux-dri-debug 2007-02-23 11:58:46 -07:00
Brian
cc6a08b2a0 SWvertex no longer has texcoord field, use attrib field instead 2007-02-23 11:45:15 -07:00
Brian
fce8409cbb s/GLint/gl_state_index/, length is now 5 not 6 2007-02-23 11:44:44 -07:00
Brian
9fe3e2efc3 s/GLint/gl_state_index/, length is now 5 not 6 2007-02-23 11:44:14 -07:00
Brian
0020d1022f re-expose _mesa_print_alu_instruction() 2007-02-23 11:43:44 -07:00
Brian
ef0cc9db54 remove dead code 2007-02-23 11:43:14 -07:00
Brian
aa9d22a1c0 replace GLint with gl_state_index 2007-02-23 11:21:03 -07:00
Brian
99902198de comments, clean-up 2007-02-23 10:19:55 -07:00
Brian
5186ae9bbe remove unused slang_atom_pool_gen() 2007-02-23 10:12:38 -07:00
Brian
308be21c2f added slang_label.c 2007-02-23 10:04:18 -07:00
Brian
c2a261f493 comments, clean-up 2007-02-23 09:55:21 -07:00
Brian
75d4ed968d Replace slang_ir_node::Target w/ Field. Remove Comment field. Clean-up. 2007-02-23 09:42:11 -07:00
Brian
c18c75b0b7 remove old _slang_gen_if() 2007-02-23 09:38:46 -07:00
Brian
afbf7c7e6b Re-implement branching with slang_labels.
This eliminates the NOP instructions that had been used as placeholders for
branch targets.
Also, fix "return" statement bug.
2007-02-23 09:38:17 -07:00
Brian
d8d07b2a8a label routines for implementing branches, jumps 2007-02-23 09:36:29 -07:00
Brian
0cc9419631 debug code for emitting variable allocation comments 2007-02-22 17:46:20 -07:00
Brian
059376c855 expose _mesa_swizzle_string() 2007-02-22 17:45:32 -07:00
Roland Scheidegger
5e66843733 r200 fix broken (by new input handling) fogcoord 2007-02-23 01:45:19 +01:00
Cyril Brulebois
0aa8f1df3c * Non-maintainer upload.
* Backport a fix from mesa 6.5.2 to mesa 6.5.1 which:
   - fixes braces around the ASSERT macro;
   - fixes a clipping problem, which leads to systematic segfaults of the
     X server (Closes: #405803).
2007-02-23 00:48:40 +01:00
Brian
ff0cc92757 glslcompiler build instructions 2007-02-22 16:29:48 -07:00
Brian
bc18ac45a3 updated for vbo 2007-02-22 16:29:25 -07:00
Brian
da46353056 Remove obsolete files. 2007-02-22 16:14:02 -07:00
Brian
13e3b21b16 New, unified interpretor/executor for vertex and fragment programs.
This replaces the code formerly in nvvertexec.c and s_fragprog.c.
Currently, DDX, DDY don't work.
2007-02-22 16:09:40 -07:00
Brian
7aaefcbe48 use _mesa_get_program_register() 2007-02-22 16:08:30 -07:00
Brian
f6803de739 Use the new unified vertex/fragment program interpreter from prog_execute.c.
Currently, DDX, DDY don't work.
2007-02-22 16:08:01 -07:00
Brian
e382efc85d use new _mesa_execute_program() function 2007-02-22 16:07:17 -07:00
Brian
6cfe2114f1 FORCE_PROG_EXECUTE_C cpp flag, misc changes 2007-02-22 16:06:54 -07:00
Brian
fd89396012 fix assertion 2007-02-22 16:02:18 -07:00
Brian
7c86e10193 emit high-level IF/ELSE/ENDIF for vertex progs now 2007-02-22 16:02:08 -07:00
Brian
740a8b0b66 _mesa_ExecuteProgramNV is now a no-op 2007-02-22 16:00:54 -07:00
Brian
ef64cda978 remove nvvertexec.c, add prog_execute.c 2007-02-22 16:00:31 -07:00
Brian
3ed1acd13c use MAX_PROGRAM_ENV_PARAMS 2007-02-22 14:57:40 -07:00
Brian
b7aeac0de1 added MAX_PROGRAM_ENV_PARAMS 2007-02-22 14:57:19 -07:00
Brian
79fb4527ca added CallStack, StackDepth 2007-02-22 14:56:43 -07:00
Brian
29925c6dcd remove unneeded #includes, misc clean-up 2007-02-22 14:56:22 -07:00
Brian
e47c60443f reorg/clean-up/indent 2007-02-22 14:55:35 -07:00
Brian
11b9ef9454 start implementing conditions, branching 2007-02-22 14:43:41 -07:00
Brian
2eeaae6cbc get rid of some unused slang_variable fields 2007-02-22 11:00:10 -07:00
Brian
50040573d7 Replace slang_allocate_storage() with simpler _slang_attach_storage() 2007-02-22 10:56:41 -07:00
Brian
b618ac8c0b updated debug code 2007-02-22 09:39:25 -07:00
Brian
776bc9cf55 Undo some STATE_POINT/FOG changes. Max length of state token array is now 5. 2007-02-22 09:29:46 -07:00
Michel Dänzer
641c966e3d i915tex: Schedule flips when possible.
Also move vsync related state from context to window, so it's possible to
schedule several flips ahead of time with triple buffering.
2007-02-22 17:24:09 +01:00
Brian
3f4826a358 XXX comments about shaders 2007-02-22 09:10:38 -07:00
Brian
6ec7484ae8 use ctx->VertexProgram._Current instead of ctx->VertexProgram._Enabled 2007-02-22 09:10:24 -07:00
Brian
96abc6bf72 merge fix: add STATE_FOG_PARAMS_OPTIMIZED, STATE_SPOT_DIR_NORMALIZED 2007-02-22 09:08:53 -07:00
Brian
7b30053b26 fix negative indentation problem 2007-02-22 09:08:36 -07:00
Brian
53bcdedc32 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-02-22 08:57:36 -07:00
Brian
29c471aafc Merge branch 'origin' into glsl-compiler-1
Conflicts:

	src/mesa/main/state.c
	src/mesa/shader/program.c
	src/mesa/shader/program.h
	src/mesa/shader/programopt.c
	src/mesa/shader/slang/slang_execute.c
	src/mesa/sources
	src/mesa/swrast/s_arbshader.c
	src/mesa/swrast/s_context.c
	src/mesa/swrast/s_span.c
	src/mesa/swrast/s_zoom.c
	src/mesa/tnl/t_context.c
	src/mesa/tnl/t_save_api.c
	src/mesa/tnl/t_vb_arbprogram.c
	src/mesa/tnl/t_vp_build.c
	src/mesa/tnl/t_vtx_eval.c
2007-02-22 08:53:33 -07:00
Dave Airlie
4a1d7d6641 r300: get rid of CB_DPATH legacy 2007-02-22 19:33:50 +11:00
Brian
6d4cf6be4e updated info about arrays, predefined uniforms 2007-02-21 16:07:03 -07:00
Brian
5a2c1ad625 disable debug 2007-02-21 16:05:56 -07:00
Brian
917a5086b3 Use gl_LightSource[0].position intead of a light position uniform. 2007-02-21 15:57:55 -07:00
Brian
5d89b027ee remove unneeded #includes 2007-02-21 15:42:50 -07:00
Brian
502c132738 fix copy&paste errors 2007-02-21 15:42:10 -07:00
Brian
f958aabdf3 more minor changes to STATE_ indexing 2007-02-21 15:23:11 -07:00
Brian
78399d23dc remove dead code 2007-02-21 15:22:17 -07:00
Brian
f941892829 Reimplement the _slang_alloc_statevar() function.
After several tries at making a table-based system for examining pre-defined
uniforms to find statevar indexes, give up and do it the simple way (lots of
strcmp() calls).  Not terribly elegant, but perfectly functional.
2007-02-21 15:21:58 -07:00
Brian
6531952b3c adjustments to STATE_ token layout/format so token[1] is always the array index 2007-02-21 11:08:21 -07:00
Brian
c3301d038d checkpoint overhaul of pre-defined uniform code 2007-02-21 09:15:39 -07:00
Brian
aa7ddbd0ff clean-up, move IR_ELEMENT code 2007-02-20 17:00:16 -07:00
Brian
760c114b24 alloc IR_FIELD's Storage in codegen, like IR_ELEMENT 2007-02-20 16:56:49 -07:00
Ian Romanick
a4b344baa2 Merge branch 'master' of ssh+git://idr@git.freedesktop.org/git/mesa/mesa 2007-02-20 15:19:23 -08:00
Ian Romanick
f0bcee5db0 Delete two invalid assertions.
These two assertions are invalid for a couple reasons.  Primarily,
when this code is compiled into the X-server, the symbols
"glSecondaryColor3fEXT" and "glPointParameterivNV" do not exist.
2007-02-20 15:18:53 -08:00
Brian
10f42ddb9e work on struct/array handling 2007-02-20 15:22:38 -07:00
Brian
361b60678e forgot to return length in parse_array_len() 2007-02-20 15:20:46 -07:00
Patrice Mandin
440759c2cd nouveau: nv10: grr, ctx->DrawBuffer invalid? 2007-02-20 23:17:09 +01:00
Patrice Mandin
79870d100f nouveau: nv10: also check ctx->DrawBuffer in nv10ViewportScale 2007-02-20 23:13:48 +01:00
Patrice Mandin
102ad2e066 nouveau: nv10: keep 24/8 depth/stencil value, don't check for depth bits 2007-02-20 23:04:21 +01:00
Brian
243c2dd746 implement support for pre-defined uniform structs (state vars) 2007-02-20 14:03:43 -07:00
Brian
48d65aabbc added slang_builtin.c 2007-02-20 14:03:10 -07:00
Michel Dänzer
e33a9d6894 i915tex: Triple buffering support, only effective with page flipping so far.
Pending flips are tracked per renderbuffer and the colour renderbuffer
attachments of window framebuffer objects are rotated on flips to avoid
stalling the pipeline for pending flips unnecessarily.
2007-02-20 19:15:44 +01:00
Michel Dänzer
356bf9563e intelWindowMoved: Some debugging output was accidentally left always enabled. 2007-02-20 19:15:44 +01:00
Michel Dänzer
bfbc1de02e intelRotateWindow: Only use back buffer and cliprects in very specific cases. 2007-02-20 19:15:44 +01:00
Michel Dänzer
6f2bf34748 intelCopyBuffer: Remove incorrect intel_fb->pf_current_page tests.
intel_get_rb_region already takes the current page into account.

This would result in broken rendering when multiple 3D windows are visible
and the pages are reversed.
2007-02-20 19:15:44 +01:00
Michel Dänzer
6b99cafd69 i915tex: Support page flipping on both CRTCs independently.
No longer track page flipping state per context but per window, via struct
intel_framebuffer which wraps struct gl_framebuffer for windows.
2007-02-20 19:15:44 +01:00
Michel Dänzer
af64dd2ae0 i915tex: Make page flipping work again. 2007-02-20 19:15:44 +01:00
Adam Jackson
d44027dbbd Fix parallel make in r300 driver. 2007-02-20 12:48:50 -05:00
Brian
bd894c4705 added SWIZZLE_XXXX, SWIZZLE_YYYY, etc 2007-02-20 10:40:08 -07:00
Brian
18e9ca5fb0 more branch info 2007-02-20 09:24:06 -07:00
Brian
906fd23e1d glxext.h version 18 2007-02-20 08:41:15 -07:00
Brian
45b1f169b4 updated to version 18 2007-02-20 08:40:55 -07:00
Brian
d2ffe4ca07 glext.h version 39 2007-02-20 08:38:46 -07:00
Brian
c226e44437 updated to version 39 2007-02-20 08:38:29 -07:00
Christian Neumair
20e851bb9a set log level w/ env var 2007-02-20 08:11:11 -07:00
Brian
174c555414 remove accidental check-in 2007-02-20 08:05:29 -07:00
Brian
3d001b81c2 Merge branch 'glsl-compiler-1' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into glsl-compiler-1 2007-02-20 08:04:40 -07:00
Thomas Hellstrom
d2b06403c6 i915tex: Fix performance regression with new vbo code and latest drm.
With current memory preferences, vbos ended up in AGP space
where reading from them got a bit slow.

Make sure buffer objects are initially created in system memory.
2007-02-19 19:57:30 +01:00
Brian
9449a4d894 s/PROG_PRINT_ARB/PROG_PRINT_DEBUG/ 2007-02-17 09:41:59 -07:00
Brian
61d31ae10d info about stand-alone compiler 2007-02-17 09:41:19 -07:00
Brian
cc153541a2 stand-alone GLSL compiler 2007-02-17 09:15:39 -07:00
Brian
501ee87180 Lots of changes to prog_print.c code.
Mainly, allow printing programs in either ARB, NV or "debug" formats.
2007-02-17 09:15:00 -07:00
Sean D'Epagnier
43c6b2f67f Merge branch 'master' of git+ssh://geckosenator@git.freedesktop.org/git/mesa/mesa 2007-02-16 17:46:11 -07:00
Sean D'Epagnier
7ae8f388cf Commiting a few minor fixes to glut fbdev (segfault on a separate stack)
Updated all drivers that used the old _ac_ functions to use
the new _vbo_  functions. I know this fixed the fbdev driver,
it looks like it might fix some other drivers too.
2007-02-16 17:44:13 -07:00
Jerome Glisse
515f495f4e doxygen: update doxygen project number to 6.5
doxygen number was laggin behind a bit.
2007-02-16 23:22:04 +01:00
Jerome Glisse
c2e0570831 Update doxygen doc to reflet vbo changes.
Update doxygen doc, array_cache no longuer exist,
new shiny vbo modules is there. Tested on unix,
but i think i didn't broke that bat :).
2007-02-16 23:19:05 +01:00
Patrice Mandin
21f2f7f26b nouveau: nv50: update 2007-02-16 22:39:28 +01:00
Patrice Mandin
4cc4a753fa nouveau: nv10,20: wrong viewport clip setup 2007-02-16 22:39:12 +01:00
Patrice Mandin
0fccb646e0 nouveau: nv20: texture matrix 2007-02-16 22:09:42 +01:00
Patrice Mandin
66d8e55184 nouveau: nv20: update 2007-02-16 22:03:31 +01:00
Patrice Mandin
f942dc5522 nouveau: nv10: set clear value for 16 and 24 bits depth 2007-02-16 20:26:57 +01:00
Patrice Mandin
9131536f00 nouveau: nv10: rescale depth near and far 2007-02-16 19:54:55 +01:00
Patrice Mandin
252d1de054 nouveau: nv10: fix viewport scale and origin 2007-02-16 19:46:54 +01:00
Brian
00647c39de remove dead code 2007-02-16 09:59:27 -07:00
Brian
c177191804 s/_slang_link2/_slang_link/ 2007-02-16 09:56:19 -07:00
Brian
1c1a0a23d3 change all enum tokens to uppercase 2007-02-16 09:31:35 -07:00
Brian
d15059b128 abort upon errors (temporary) 2007-02-16 09:06:09 -07:00
Brian
d30806b0c5 added a comment 2007-02-16 09:05:11 -07:00
Brian
9ea2315d2d Allow int->float argument conversion in _slang_locate_function(). 2007-02-16 09:04:53 -07:00
Brian
d003877c66 implement IR_I_TO_F 2007-02-16 08:58:42 -07:00
Rune Peterson
e4c772bead r300: Fix cos & add scs to fragment program.
So this do :
 - Fixes COS.
 - Does range reductions for SIN & COS.
 - Adds SCS.
 - removes the optimized version of SIN & COS.
 - tweaked weight (should help on precision).
 - fixed a copy paste typo in emit_arith().
2007-02-14 23:10:52 +01:00
Etienne Clement
1e2b469635 test for POT before using sample_2d_linear_repeat() 2007-02-14 13:21:12 -07:00
Roland Scheidegger
7d8ed0f5f5 fix typo preventing generic arrays from working with ARB_vp (bug #9952) 2007-02-14 20:36:29 +01:00
Patrice Mandin
83cf4ce6e4 nouveau: nv10: there are 8 clipping regions 2007-02-14 20:28:31 +01:00
Roland Scheidegger
99dfca1e7f fix stupid bug in the optimized per-vertex fog generation code 2007-02-14 16:38:32 +01:00
Thomas Hellstrom
bc82b44db9 i915tex: Take into account various mapping states when dropping the
batch buffer after a resolution / rotation switch.
2007-02-14 11:11:37 +01:00
Brian
ed490e4643 remove dead code 2007-02-13 09:23:00 -07:00
Xiang, Haihao
1e6688742e I965: fix a failure on waiting irq.
Wait until getting the right fence if drm/i915 resets the
counter.
2007-02-12 16:38:50 +08:00
Zou Nan hai
ebcc9b5d12 fd.o #BZ 9684
gcc may cast an overflowed float value to an negative int value on i386,
  fix it to make sure at least some apps will not crash if it contains wrong normal data.
2007-02-12 12:16:49 +08:00
Rune Peterson
ee5417bca8 r300: Add proper support for sin/cos instruction in fragment program
Getting proper SIN and COS wasn't as easy as it appeared.
I had to make make some changes to the fragment program code.
general FP changes:
- support HHH swizzle for vector instructions.
- don't copy a source to a temp when it is not XYZW swizzled, but
 combine the two and have the swizzle resolve any issues.
 (saves temps/instructions with more elaborate shader code)
- fix overflow in cnstv[].
2007-02-12 00:24:36 +01:00
Rune Peterson
3bacb68c70 ctx->Point._Size fix 2007-02-10 18:19:43 -07:00
Brian
5620392d67 add prog_debug.c 2007-02-09 15:40:15 -07:00
Brian
942ee02590 move GL_MESA_program_debug funcs to prog_debug.c 2007-02-09 15:40:00 -07:00
Brian
383ecc0374 Move experimental GL_MESA_program_debug functions into new file. 2007-02-09 15:39:32 -07:00
Brian
b3893baf80 comments, etc 2007-02-09 14:19:12 -07:00
Brian
3d479b9638 re-enable free'ing of IR trees 2007-02-09 14:18:41 -07:00
Brian
cf490a7f81 always init param vars to silence valgrind warnings 2007-02-09 12:04:52 -07:00
Roland Scheidegger
b2d30ca0cb optimize per-pixel fog program
use the same internal state as for vertex fog. From the old implemenentation,
this changes a SUB+MUL into a MAD for linear fog, and saves a MUL for EXP/EXP2,
plus saves a (constant) parameter. While here, fix the broken (forgotten)
swizzling. (untested)
2007-02-09 19:21:29 +01:00
Zou Nan hai
fcccf89432 array overflow fix 2007-02-09 13:28:56 +08:00
Brian
5e6908944b do full swizzled matching in _mesa_lookup_parameter_constant() 2007-02-08 20:39:42 -07:00
Brian
bd9615bbc5 Check for constant-valued while/do loop conditions.
Allows us to:
1. avoid generating constant-valued BRK test for while(1)..
2. discard entire loop for while(0).
3. detection infinite loops at compile-time.
2007-02-08 17:40:29 -07:00
Brian
c0a9f554be optimize conditional breaks/continues 2007-02-08 17:11:18 -07:00
Roland Scheidegger
421ce180f5 r200: simplify / unify input map handling for vp and fftnl
Use the same input map handling for fftnl and vertex programs. It doesn't
enable any new functionality (should make it easy to support per-vertex
materials though), but the code is much cleaner.
2007-02-09 00:36:53 +01:00
Roland Scheidegger
54dac2c843 optimize generated vertex programs a bit
Use new internal state to avoid per-vertex normalization of static spot
direction vector. Use internal state for simpler per-vertex fog computations
(MAD instead of SUB/MUL for linear fog, EX2 instead of POW for EXP/EXP2 fog).
Simplify point size calc (2 MADs instead of MOV, MUL, MUL, DP3), and while
there fix it up (RSQ instead of RCP). All untested...
2007-02-09 00:36:40 +01:00
Roland Scheidegger
6cf892eeb6 fix issues in vp when using FRAG_BIT_WPOS in a fragment program (bug #9910)
Redirect all VERT_RESULT_HPOS writes to a temp and use that for fixup.
The viewport transformation still seems to take some shortcuts, and it
still does not seem to work at all...
2007-02-09 00:25:53 +01:00
Brian
6230ae7faf cont at top of loop, little clean-ups 2007-02-08 15:09:47 -07:00
Brian
a1c2e87c4b remove some cruft 2007-02-08 15:08:16 -07:00
Brian
fbf0f400b7 fix broken BRA for return stmts 2007-02-08 14:10:54 -07:00
Brian
34af2b7194 consolidate BRA with BRK, CONT 2007-02-08 14:10:19 -07:00
Brian
c81aedeaec change BranchTarget to GLint 2007-02-08 14:09:34 -07:00
Brian
b768c48547 Use conditional break in for/do/while loops. 2007-02-08 13:23:17 -07:00
Brian
97125fb370 Simplify code with eval_condition(). Implement conditional BRK. 2007-02-08 13:22:31 -07:00
Brian
2c75ef62ea remove old loop break/cont stuff 2007-02-07 16:19:19 -07:00
Brian
b35b4566c2 high vs. low level if/then/else code emit 2007-02-07 16:11:00 -07:00
Brian
c5e6bf63e6 s/%f/%g/ 2007-02-07 16:09:13 -07:00
Brian
a7c2c7d6b2 Remove old functions for generating BRA-based looping. 2007-02-07 15:14:20 -07:00
Julien Cristau
d39147a8a1 Fix FTBFS on amd64.
Set LIB_DIR and EXTRA_LIB_PATH in configs/debian-default to override
settings in configs/linux-x86-64. This fixes a FTBFS on amd64, thanks to
Marc 'HE' Brockschmidt for the report (closes: #410118).
2007-02-07 23:13:59 +01:00
Brian
4aa487e796 Use IR_LOOP to represent do-while and for-loops.
Also, start moving high vs. low-level instruction selection into slang_emit.c
2007-02-07 15:12:13 -07:00
Brian
1f99a7514e BRK and CONT work the same 2007-02-06 22:34:09 -07:00
Brian
f22ed0986a 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).
2007-02-06 22:31:19 -07:00
Brian
5f7d4668c4 replace IR_BEGIN_LOOP/IR_END_LOOP with IR_LOOP 2007-02-06 21:33:29 -07:00
Brian
7e73bc32f5 new_node[0123]() functions 2007-02-06 20:53:09 -07:00
Brian
2043364516 redo IR_IF node, removing IR_ELSE, IR_ENDIF 2007-02-06 20:45:43 -07:00
Ben Skeggs
f46c19d965 nouveau: a couple of NV3x fixes 2007-02-06 14:01:19 +11:00
Brian
d434019633 additional comments for BranchTarget 2007-02-05 18:04:35 -07:00
Brian
2755c798f3 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.
2007-02-05 18:01:02 -07:00
Brian
8608079647 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.
2007-02-05 17:18:10 -07:00
Jakob Bornecrantz
8518ddda7b Add support for CN700 chipset in miniglx 2007-02-06 10:22:47 +11:00
Brian
d9731b26e7 minor formatting changes 2007-02-05 15:17:06 -07:00
Brian
5e73284cee set UseHighLevelInstructions = false for now 2007-02-05 15:00:48 -07:00
Brian
cf92c72797 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.
2007-02-05 15:00:07 -07:00
Brian
5db088d70f indentation for program instructions (if/else, loops) 2007-02-05 14:58:15 -07:00
Roland Scheidegger
17c13b406f fix issues when using mixed-mode pos-invariant vp and ff tnl (bug #9856)
ARB_vp requires vertex transformation to be invariant to fixed function tnl
if the position_invariant option is used. So the same function needs to be
used, otherwise z-fighting artifacts may happen with applications which rely
on the results being really the same due to precision issues when dealing with
floating point values (may not be a problem when using a non-optimizing
compiler strictly following IEEE rules).
2007-02-05 21:29:25 +01:00
Brian
01001d80e2 Initial support of loop and subroutine instructions.
New high-level flow-control instructions, both at IR level and GPU instructions
for looping and subroutines.
2007-02-05 11:28:15 -07:00
Brian
5b8a50572d Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-02-05 10:29:58 -07:00
Panagiotis Papadakos
d0b5c77c68 fix mem leak 2007-02-05 10:29:10 -07:00
Brian
dd34fe8679 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.
2007-02-05 10:10:01 -07:00
Ben Skeggs
4b3679c6c5 nouveau: OUT_RINGp expects the size in dwords, not bytes.
This fixes the *actual* bug that the previous commit was supposed to fix..
2007-02-06 02:29:20 +11:00
Panagiotis Papadakos
eab92fcdc2 fix mem leaks 2007-02-05 08:17:50 -07:00
Ben Skeggs
47bd759fc9 nouveau: fix a small bug in nv10 swtcl 2007-02-06 01:57:04 +11:00
Ben Skeggs
e7654b22aa nouveau: new bufferobj code.
The old code suffered from a number of issues, the most severe being that
with the Mesa VBO merge even swtcl used the driver's bufferobj interface.
On most VBO types (or non-AGP cards) the buffer ended up in vram, and
killed swtcl performance greatly.  All bufferobj's start in system memory
now, until they get referenced as a "real" VBO.

The other big change is that only potentially "damaged" areas are
uploaded/downloaded to/from the hardware.
2007-02-06 00:39:50 +11:00
Panagiotis Papadakos
3805ccf020 break if we removed driver from Drivers list in driDestroyDisplay
Else we read memory we just released, in for statement.
2007-02-05 10:35:52 +01:00
Julien Cristau
7991f7e936 * Add myself to Uploaders. 2007-02-04 21:17:18 +01:00
Julien Cristau
10011efcd7 Add bug closer for #409638. 2007-02-04 17:21:57 +01:00
Julien Cristau
0058815c8f Re-add src/glut/mini/ which was deleted by mistake. 2007-02-04 15:21:46 +01:00
Julien Cristau
02048984b7 Delete directories not included in the mesa tarballs. 2007-02-04 15:15:43 +01:00
Julien Cristau
544601e9f4 Fix FTBFS on non-i386 archs.
Build architecture-independant debs in binary-indep, and use the debhelper -s
option for commands in binary-arch, because architectures other than i386
don't have to build libgl1-mesa-swx11-i686.
2007-02-04 14:05:23 +01:00
Patrice Mandin
296eeb882f nouveau: nv10: add init for unknown 0x120 2007-02-04 13:10:23 +01:00
Stephane Marchesin
6356874586 nouveau: fix nv04 and nv10 swtcl, more work on nv04 state. 2007-02-04 03:20:01 +01:00
Brian
93b975a1d9 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))"
2007-02-03 17:24:24 -07:00
Brian
5ee684cba9 minor tweaks to distance() funcs 2007-02-03 17:21:33 -07:00
Brian
82f53f45d9 remove unused slang_operation fields 2007-02-03 16:25:44 -07:00
Patrice Mandin
f8ec7f1398 nouveau: forgot function declaration 2007-02-03 23:46:58 +01:00
Patrice Mandin
be85770f14 nouveau: nv50: use nv50 state 2007-02-03 23:32:12 +01:00
Brian
edf24e699e shading language texture demo/test 2007-02-03 11:36:16 -07:00
Brian
00d63aafc6 added FLUSH_VERTICES() in _mesa_use_program() 2007-02-03 11:35:02 -07:00
Brian
8e0c6fc0be added texdemo1 2007-02-03 11:33:13 -07:00
Brian
68fc4ff1d7 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.
2007-02-03 10:31:16 -07:00
Brian
49a17a45fb 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.
2007-02-03 10:30:50 -07:00
Michel Dänzer
5aa997dafb Merge branch 'origin' 2007-02-03 17:37:01 +01:00
Michel Dänzer
cf4ccd5020 Fall back to software rasterization if r300_translate_fragment_shader() fails.
Aborting immediately is a bad idea with AIGLX.
2007-02-03 17:32:02 +01:00
Michel Dänzer
beffa17bb9 Remove unused r200 files from r300 driver directory. 2007-02-03 17:24:22 +01:00
Michel Dänzer
0afc2d37c3 r300CreateContext: Really initialize r300->initialMaxAnisotropy. 2007-02-03 17:23:19 +01:00
Patrice Mandin
de24b01b05 nouveau: fix viewport clipping initialization 2007-02-03 13:22:42 +01:00
Patrice Mandin
1c25561e30 nouveau: use color pitch as depth pitch if depth disabled 2007-02-03 13:20:16 +01:00
Roland Scheidegger
2a441c488f disable r200 materials-between-begin-end check if vertex progs are enabled 2007-02-03 03:31:31 +01:00
Roland Scheidegger
f697308ae5 remove now unused vtxfmt stuff from radeon/r200 header files 2007-02-03 03:15:45 +01:00
Roland Scheidegger
09e4df2c65 fix errorneously adding fog state params to all vertex programs... 2007-02-03 03:15:14 +01:00
Brian
fee9bbe475 Only glUniform1i() can be used to set sampler uniforms. Generate error otherwise. 2007-02-02 18:05:43 -07:00
Brian
a90e4c3ddf add vec4_texcube to AsmInfo[] 2007-02-02 18:00:26 -07:00
Brian
1b3092e4bb add _slang_multiply_swizzles() 2007-02-02 18:00:03 -07:00
Brian
bf823b6b77 clean-ups 2007-02-02 16:46:50 -07:00
Brian
670e900719 clean-ups 2007-02-02 16:45:07 -07:00
Brian
31d2a00192 clean-ups 2007-02-02 16:41:52 -07:00
Brian
b4f38a4d60 remove slang_builtin_vec4.gc 2007-02-02 16:38:04 -07:00
Brian
4bbef7a644 remove slang_builtin_vec4.gc 2007-02-02 16:38:00 -07:00
Brian
d9dbb3e154 remove slang_export.[ch] 2007-02-02 16:14:55 -07:00
Brian
e1b47b68ec reformat, clean-up comments 2007-02-02 16:12:20 -07:00
Brian
1f9def3163 move _slang_locate_function() 2007-02-02 16:10:02 -07:00
Brian
9cfee527f6 remove multibyte chars 2007-02-02 16:08:45 -07:00
Brian
3f71282850 remove unused field 2007-02-02 15:33:16 -07:00
Brian
72c3672857 remove slang_asm_string() 2007-02-02 15:32:32 -07:00
Brian
0d1cd6d41c s/SLANG_ASSEMBLE_TYPEINFO_H/SLANG_TYPEINFO_H/ 2007-02-02 15:31:21 -07:00
Brian
1bc71e32ea s/slang_assembly_typeinfo/slang_typeinfo/ 2007-02-02 15:30:50 -07:00
Brian
fe45343df9 s/slang_assembly_name_space/slang_name_space/ 2007-02-02 15:29:48 -07:00
Brian
884fdfeb22 remove slang_library_texsample.[ch] 2007-02-02 15:23:38 -07:00
Brian
4a2ef4fd88 remove slang_library_texsample.[ch] 2007-02-02 15:23:33 -07:00
Brian
6c52dd3852 rename slang_link2.c slang_link.c 2007-02-02 15:22:05 -07:00
Brian
5c1763e7b5 rename slang_link2.c slang_link.c 2007-02-02 15:22:02 -07:00
Brian
f65091c947 rename slang_assemble_typeinfo.[ch] to slang_typeinfo.[ch] 2007-02-02 15:19:58 -07:00
Brian
7ace638da2 rename slang_assemble_typeinfo.[ch] to slang_typeinfo.[ch] 2007-02-02 15:19:48 -07:00
Brian
4f22bdf3e5 remove more slang assembly-related code 2007-02-02 15:17:46 -07:00
Brian
640afdf4f2 remove more slang assembly-related files, codee 2007-02-02 15:16:51 -07:00
Brian
452217e29a removed obsolete shader assembly files 2007-02-02 15:10:34 -07:00
Brian
11e92390f6 remove more assembly-related code 2007-02-02 15:05:46 -07:00
Brian
b94c14114f remove slang_assemble*.c files 2007-02-02 14:51:34 -07:00
Brian
8d39610037 move some functions, disable some code in preparation for removing assembly code 2007-02-02 14:51:09 -07:00
Brian
fa1fe5f6f3 fix emit_tex() breakage 2007-02-02 14:47:03 -07:00
Brian
1b24e2d5a7 remove slang_export.c and related code 2007-02-02 14:24:24 -07:00
Brian
5072fd3a64 Remove old slang linker code. 2007-02-02 14:05:55 -07:00
Brian
8b60787e85 remove slang_link.c and slang_analyse.c 2007-02-02 14:05:25 -07:00
Brian
d79fd74871 remove old linker stuff 2007-02-02 14:04:58 -07:00
Brian
a4f4ca7767 added newline at end 2007-02-02 13:54:24 -07:00
Brian
ccd3e7dcef Remove obsolete files. 2007-02-02 13:53:28 -07:00
Brian
650d46a107 remove slang_execute.c, slang_execute_x86.c 2007-02-02 13:49:39 -07:00
Brian
d265bdf81a Remove all dependencies on the old slang interpreter/executor. 2007-02-02 13:49:07 -07:00
Brian
aa6866d63c reindent 2007-02-02 12:08:26 -07:00
Brian
b12b13f832 _slang_evaluate_int() no longer used 2007-02-02 12:07:57 -07:00
Brian
06daf74a71 use _slang_simplify() to evaluate array sizes 2007-02-02 12:02:53 -07:00
Brian
70570d4199 Move guts of slang_lookup_constant() into a new function in slang_simplify.c 2007-02-02 12:01:29 -07:00
Brian
5c21747783 replace abort() with _mesa_problem() 2007-02-02 11:42:04 -07:00
Brian
2f5b3c9607 fix maxInst argument 2007-02-02 11:37:58 -07:00
Brian
e53ec3a862 try to simplify variable initializers 2007-02-02 11:32:59 -07:00
Brian
6147ccba63 unroll inner loop of interpolate_varying() 2007-02-02 11:23:16 -07:00
Brian
531348e814 simplify derivative-related code 2007-02-02 11:20:08 -07:00
Brian
e4f976b8b9 simplify interpolate_texcoords() 2007-02-02 11:19:43 -07:00
Brian
9ab512ad8c Replace color, z, w, texture interpolants with new generic attrib interpolants. 2007-02-02 11:01:01 -07:00
Brian
462d8f5faf New span attrStart/attrStepX/attrStepY fields to replace fog, specular, etc. fields. More to come. 2007-02-02 09:46:43 -07:00
Brian
4e7fd7ad96 get rid of unused span->start field 2007-02-02 09:09:13 -07:00
Keith Whitwell
b59657ad96 Merge branch 'vbo-0.2'
Conflicts:

	src/mesa/main/texcompress_s3tc.c
	src/mesa/tnl/t_array_api.c
2007-02-02 12:26:10 +00:00
Keith Whitwell
2ddc8799a8 Merge branch 'vbo-0.2-origin' into vbo-0.2 2007-02-02 11:06:37 +00:00
Keith Whitwell
47d463e954 Modify assert to reflect rebase criteria 2007-02-02 10:59:58 +00:00
Zou Nan hai
325196f548 push commit 2dfb3a217f to i915tex 2007-02-02 14:37:24 +08:00
Wang Zhenyu
51bfb8fc8c Add Intel 965GM chipset info 2007-02-02 10:04:48 +08:00
Wang Zhenyu
6b6760d6bc Revert origin crestline pci id patch 2007-02-02 10:01:42 +08:00
Zou Nan hai
2dfb3a217f Fix fd.o #9686, when fall into vertex fog,
fog factors are precomputed in t_vb_fog.c compute_fog_blend_factors,
  which is incompatible with appended fragment fog code.
  That will make GoogleEarth display abnormally.
  always use pixel fog.
2007-02-02 09:35:17 +08:00
Brian
9742547245 Fix logic in _slang_simplify(): vec2() constructor case wasn't getting used. 2007-02-01 18:11:19 -07:00
Roland Scheidegger
8ebda479d9 fix missing ADD_POINTERS, fixes crashes if the index elements are in a vbo. 2007-02-01 20:59:45 +01:00
Brian
abeca8d17d comments 2007-02-01 10:08:07 -07:00
Brian
496aa47042 remove slang_label.c until it's ready 2007-02-01 09:52:26 -07:00
Brian
f3e507ef9f 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.
2007-02-01 09:51:48 -07:00
Brian
81ef03be65 silence uninitialized var warning 2007-02-01 09:25:55 -07:00
Brian
8fa6f7363e silence uninitialized var warning 2007-02-01 09:24:41 -07:00
Brian
3866558c98 move span-related types/tokens into s_span.h 2007-02-01 08:24:02 -07:00
Brian
f673b24017 additional assertions, bump up MAX_EXEC 2007-02-01 08:18:03 -07:00
Brian
af1d1e08e4 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-02-01 07:22:50 -07:00
Brian
0930248bb1 fix mem leak in __glXReportDamage (Panagiotis Papadakos) 2007-02-01 07:22:25 -07:00
Keith Whitwell
5368ae5ec3 Correct usage/meaning of max_index parameter. 2007-02-01 14:21:14 +00:00
Keith Whitwell
605d428d20 Cope with internally-generated null inputs. 2007-02-01 14:20:31 +00:00
Julien Cristau
2634f06c20 Merge branch 'upstream-experimental' into debian-experimental
Conflicts:

	progs/util/README
	progs/util/glstate.c
	progs/util/glstate.h
	progs/util/sampleMakefile
	src/glu/sgi/libnurbs/interface/bezierEval.h
	src/glu/sgi/libnurbs/interface/bezierPatch.cc
	src/glu/sgi/libnurbs/interface/bezierPatch.h
	src/glu/sgi/libnurbs/interface/bezierPatchMesh.cc
	src/glu/sgi/libnurbs/interface/bezierPatchMesh.h
	src/glu/sgi/libnurbs/interface/glcurveval.cc
	src/glu/sgi/libnurbs/interface/glimports.h
	src/glu/sgi/libnurbs/interface/glinterface.cc
	src/glu/sgi/libnurbs/interface/glrenderer.h
	src/glu/sgi/libnurbs/interface/incurveeval.cc
	src/glu/sgi/libnurbs/interface/insurfeval.cc
	src/glu/sgi/libnurbs/interface/mystdio.h
	src/glu/sgi/libnurbs/interface/mystdlib.h
	src/glu/sgi/libnurbs/internals/arc.h
	src/glu/sgi/libnurbs/internals/arcsorter.cc
	src/glu/sgi/libnurbs/internals/arcsorter.h
	src/glu/sgi/libnurbs/internals/arctess.h
	src/glu/sgi/libnurbs/internals/backend.cc
	src/glu/sgi/libnurbs/internals/backend.h
	src/glu/sgi/libnurbs/internals/basiccrveval.h
	src/glu/sgi/libnurbs/internals/basicsurfeval.h
	src/glu/sgi/libnurbs/internals/bezierarc.h
	src/glu/sgi/libnurbs/internals/bin.cc
	src/glu/sgi/libnurbs/internals/bin.h
	src/glu/sgi/libnurbs/internals/bufpool.cc
	src/glu/sgi/libnurbs/internals/bufpool.h
	src/glu/sgi/libnurbs/internals/cachingeval.cc
	src/glu/sgi/libnurbs/internals/cachingeval.h
	src/glu/sgi/libnurbs/internals/ccw.cc
	src/glu/sgi/libnurbs/internals/coveandtiler.h
	src/glu/sgi/libnurbs/internals/curve.cc
	src/glu/sgi/libnurbs/internals/curve.h
	src/glu/sgi/libnurbs/internals/curvelist.cc
	src/glu/sgi/libnurbs/internals/curvelist.h
	src/glu/sgi/libnurbs/internals/curvesub.cc
	src/glu/sgi/libnurbs/internals/dataTransform.cc
	src/glu/sgi/libnurbs/internals/dataTransform.h
	src/glu/sgi/libnurbs/internals/defines.h
	src/glu/sgi/libnurbs/internals/displaylist.cc
	src/glu/sgi/libnurbs/internals/displaylist.h
	src/glu/sgi/libnurbs/internals/displaymode.h
	src/glu/sgi/libnurbs/internals/flist.cc
	src/glu/sgi/libnurbs/internals/flist.h
	src/glu/sgi/libnurbs/internals/flistsorter.cc
	src/glu/sgi/libnurbs/internals/flistsorter.h
	src/glu/sgi/libnurbs/internals/gridline.h
	src/glu/sgi/libnurbs/internals/gridtrimvertex.h
	src/glu/sgi/libnurbs/internals/gridvertex.h
	src/glu/sgi/libnurbs/internals/hull.cc
	src/glu/sgi/libnurbs/internals/hull.h
	src/glu/sgi/libnurbs/internals/intersect.cc
	src/glu/sgi/libnurbs/internals/jarcloc.h
	src/glu/sgi/libnurbs/internals/knotvector.h
	src/glu/sgi/libnurbs/internals/mapdesc.cc
	src/glu/sgi/libnurbs/internals/mapdesc.h
	src/glu/sgi/libnurbs/internals/mapdescv.cc
	src/glu/sgi/libnurbs/internals/maplist.cc
	src/glu/sgi/libnurbs/internals/maplist.h
	src/glu/sgi/libnurbs/internals/mesher.cc
	src/glu/sgi/libnurbs/internals/mesher.h
	src/glu/sgi/libnurbs/internals/monoTriangulationBackend.cc
	src/glu/sgi/libnurbs/internals/monotonizer.cc
	src/glu/sgi/libnurbs/internals/monotonizer.h
	src/glu/sgi/libnurbs/internals/myassert.h
	src/glu/sgi/libnurbs/internals/mycode.cc
	src/glu/sgi/libnurbs/internals/mystring.h
	src/glu/sgi/libnurbs/internals/nurbsconsts.h
	src/glu/sgi/libnurbs/internals/nurbstess.cc
	src/glu/sgi/libnurbs/internals/patch.cc
	src/glu/sgi/libnurbs/internals/patch.h
	src/glu/sgi/libnurbs/internals/patchlist.cc
	src/glu/sgi/libnurbs/internals/patchlist.h
	src/glu/sgi/libnurbs/internals/pwlarc.h
	src/glu/sgi/libnurbs/internals/quilt.cc
	src/glu/sgi/libnurbs/internals/quilt.h
	src/glu/sgi/libnurbs/internals/reader.cc
	src/glu/sgi/libnurbs/internals/reader.h
	src/glu/sgi/libnurbs/internals/renderhints.cc
	src/glu/sgi/libnurbs/internals/renderhints.h
	src/glu/sgi/libnurbs/internals/simplemath.h
	src/glu/sgi/libnurbs/internals/slicer.cc
	src/glu/sgi/libnurbs/internals/slicer.h
	src/glu/sgi/libnurbs/internals/sorter.cc
	src/glu/sgi/libnurbs/internals/sorter.h
	src/glu/sgi/libnurbs/internals/splitarcs.cc
	src/glu/sgi/libnurbs/internals/subdivider.h
	src/glu/sgi/libnurbs/internals/tobezier.cc
	src/glu/sgi/libnurbs/internals/trimline.cc
	src/glu/sgi/libnurbs/internals/trimline.h
	src/glu/sgi/libnurbs/internals/trimregion.cc
	src/glu/sgi/libnurbs/internals/trimregion.h
	src/glu/sgi/libnurbs/internals/trimvertex.h
	src/glu/sgi/libnurbs/internals/trimvertpool.cc
	src/glu/sgi/libnurbs/internals/trimvertpool.h
	src/glu/sgi/libnurbs/internals/types.h
	src/glu/sgi/libnurbs/internals/uarray.cc
	src/glu/sgi/libnurbs/internals/uarray.h
	src/glu/sgi/libnurbs/internals/varray.cc
	src/glu/sgi/libnurbs/internals/varray.h
	src/glu/sgi/libnurbs/nurbtess/definitions.h
	src/glu/sgi/libnurbs/nurbtess/directedLine.h
	src/glu/sgi/libnurbs/nurbtess/glimports.h
	src/glu/sgi/libnurbs/nurbtess/gridWrap.cc
	src/glu/sgi/libnurbs/nurbtess/gridWrap.h
	src/glu/sgi/libnurbs/nurbtess/monoChain.cc
	src/glu/sgi/libnurbs/nurbtess/monoChain.h
	src/glu/sgi/libnurbs/nurbtess/monoTriangulation.cc
	src/glu/sgi/libnurbs/nurbtess/monoTriangulation.h
	src/glu/sgi/libnurbs/nurbtess/mystdio.h
	src/glu/sgi/libnurbs/nurbtess/mystdlib.h
	src/glu/sgi/libnurbs/nurbtess/partitionX.cc
	src/glu/sgi/libnurbs/nurbtess/partitionX.h
	src/glu/sgi/libnurbs/nurbtess/partitionY.cc
	src/glu/sgi/libnurbs/nurbtess/partitionY.h
	src/glu/sgi/libnurbs/nurbtess/polyDBG.h
	src/glu/sgi/libnurbs/nurbtess/polyUtil.cc
	src/glu/sgi/libnurbs/nurbtess/polyUtil.h
	src/glu/sgi/libnurbs/nurbtess/primitiveStream.cc
	src/glu/sgi/libnurbs/nurbtess/primitiveStream.h
	src/glu/sgi/libnurbs/nurbtess/quicksort.cc
	src/glu/sgi/libnurbs/nurbtess/quicksort.h
	src/glu/sgi/libnurbs/nurbtess/rectBlock.cc
	src/glu/sgi/libnurbs/nurbtess/rectBlock.h
	src/glu/sgi/libnurbs/nurbtess/sampleComp.cc
	src/glu/sgi/libnurbs/nurbtess/sampleComp.h
	src/glu/sgi/libnurbs/nurbtess/sampleCompBot.cc
	src/glu/sgi/libnurbs/nurbtess/sampleCompBot.h
	src/glu/sgi/libnurbs/nurbtess/sampleCompRight.cc
	src/glu/sgi/libnurbs/nurbtess/sampleCompRight.h
	src/glu/sgi/libnurbs/nurbtess/sampleCompTop.cc
	src/glu/sgi/libnurbs/nurbtess/sampleCompTop.h
	src/glu/sgi/libnurbs/nurbtess/sampleMonoPoly.cc
	src/glu/sgi/libnurbs/nurbtess/sampleMonoPoly.h
	src/glu/sgi/libnurbs/nurbtess/sampledLine.cc
	src/glu/sgi/libnurbs/nurbtess/sampledLine.h
	src/glu/sgi/libnurbs/nurbtess/searchTree.cc
	src/glu/sgi/libnurbs/nurbtess/searchTree.h
	src/glu/sgi/libnurbs/nurbtess/zlassert.h
	src/glu/sgi/libtess/README
	src/glu/sgi/libtess/alg-outline
	src/glu/sgi/libtess/dict-list.h
	src/glu/sgi/libtess/dict.c
	src/glu/sgi/libtess/dict.h
	src/glu/sgi/libtess/geom.c
	src/glu/sgi/libtess/memalloc.c
	src/glu/sgi/libtess/memalloc.h
	src/glu/sgi/libtess/mesh.c
	src/glu/sgi/libtess/mesh.h
	src/glu/sgi/libtess/normal.h
	src/glu/sgi/libtess/priorityq-heap.c
	src/glu/sgi/libtess/priorityq-heap.h
	src/glu/sgi/libtess/priorityq-sort.h
	src/glu/sgi/libtess/priorityq.c
	src/glu/sgi/libtess/priorityq.h
	src/glu/sgi/libtess/render.c
	src/glu/sgi/libtess/render.h
	src/glu/sgi/libtess/sweep.h
	src/glu/sgi/libtess/tess.h
	src/glu/sgi/libtess/tessmono.c
	src/glu/sgi/libtess/tessmono.h
	src/glu/sgi/libutil/error.c
	src/glu/sgi/libutil/glue.c
	src/glu/sgi/libutil/gluint.h
	src/glu/sgi/libutil/project.c
	src/glu/sgi/libutil/registry.c
2007-02-01 11:50:36 +01:00
Michel Dänzer
8628b382e4 driDestroyDisplay: Fix comment, it is called now. 2007-02-01 10:45:51 +01:00
Michel Dänzer
bed026e7dd driDestroyDisplay: Remove Drivers list entry when dlclosing its handle.
This fixes a regression from commit f81b1dbe37:
Since then, driDestroyDisplay gets called from __glXFreeDisplayPrivate. It
dlcloses the handles associated with the display but fails to remove their
references from the Drivers list, so subsequent calls to OpenDriver return a
stale handle and an invalid createNewScreenFunc pointer. The attempt to call
the latter results in a segfault when running amoeba, e.g.
2007-02-01 10:43:10 +01:00
Roland Scheidegger
a2104dc6e1 fix unitialized values in radeonClear 2007-02-01 01:09:26 +01:00
Brian
d9d33b6fc8 disable all x86 code, broken and will eventually be removed 2007-01-31 17:01:52 -07:00
Brian
b63c100677 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
2007-01-31 16:34:54 -07:00
Brian
309d5b6650 New asm instruction and IR_CLAMP node type to allow clamping to [0,1] with instruction saturate-write option. Not finished yet. 2007-01-31 08:55:10 -07:00
Brian
9d5853813f allow fragment-only and vertex-only programs 2007-01-31 08:47:12 -07:00
Xiang, Haihao
5893474c74 _mesa_pack_rgba_span_float: fix for packing data into group 2007-01-31 09:47:02 +08:00
Brian
7162398778 fix _mesa_get_uniform_location() so it uses the given program handle 2007-01-30 16:55:03 -07:00
Keith Whitwell
893526b8a8 Use new rebase helper. Remove other rebase code. 2007-01-30 20:22:55 +00:00
Keith Whitwell
240641de0c Helper for rebasing draw requests where min_index != 0. 2007-01-30 19:27:53 +00:00
Keith Whitwell
48c638b671 New tests for the array functions which also provoke rebasing. 2007-01-30 19:19:51 +00:00
Brian
876e372567 regenerated 2007-01-30 08:13:49 -07:00
Brian
d2c62e6065 s/params/pointer/ for glGetVertexAttribPointer 2007-01-30 08:13:02 -07:00
Brian
8811a9e38a bump version to 6.5.3 2007-01-30 08:11:50 -07:00
Brian
fea6a8e1f1 s/params/pointer/ for glGetVertexAttribPointer 2007-01-30 08:10:03 -07:00
Brian
8be177a694 s/params/pointer/ for glGetVertexAttribPointer 2007-01-30 08:09:25 -07:00
Brian
832417f31e s/params/pointer/ for glGetVertexAttribPointer 2007-01-30 08:02:20 -07:00
Ben Skeggs
a4ddd64f36 nouveau: argh 2007-01-30 16:51:50 +11:00
Ben Skeggs
f9345c7c4e nouveau: misc NV40 fixes 2007-01-30 16:49:27 +11:00
Ben Skeggs
d2c4d9ff9b nouveau: NV40 glClipPlane support. 2007-01-30 16:41:55 +11:00
Ben Skeggs
ede8017d2c nouveau: rework shader param handling
Conflicts:

	src/mesa/drivers/dri/nouveau/nouveau_shader_0.c
2007-01-30 16:41:20 +11:00
Ben Skeggs
de0cf18b09 nouveau: oops, build attrib map after we know how the final shader will look.. 2007-01-30 16:39:31 +11:00
Ben Skeggs
2d8b316109 nouveau: remove an unused table 2007-01-30 16:39:05 +11:00
Ben Skeggs
7fbf8d3324 nouveau: oops 2007-01-30 16:38:46 +11:00
Ben Skeggs
cafbc459f5 nouveau: maintain a map of which vtxprog input corresponds to which array 2007-01-30 16:38:30 +11:00
Ben Skeggs
0c5b42a991 nouveau: unhardcode some more NV30TCL_FP_CONTROL values 2007-01-30 16:03:13 +11:00
Matthieu Castet
aa397fe472 nouveau : NOUVEAU_RING_TRACE
allow to print what we are really sending to the fifo.
2007-01-29 23:26:35 +01:00
Matthieu Castet
c97540065c nouveau : nv10 comment icomplete command 2007-01-29 23:19:12 +01:00
Brian
fc5a7ea5de noise() works now 2007-01-28 19:02:03 -07:00
Brian
7aece10039 noise functions 2007-01-28 19:01:35 -07:00
Brian
f94e4f216f simple noise test 2007-01-28 19:01:04 -07:00
Brian
a06f929362 combine emit_unop(), emit_binop(), emit_triop() into emit_arith() 2007-01-28 16:26:09 -07:00
Brian
62e7c033c0 implement mix() with LRP instruction 2007-01-28 16:11:11 -07:00
Matthieu Castet
c7c0a6ddcd nouveau : nv10 mixing cached stuff with not cached stuff is bad. 2007-01-28 23:26:21 +01:00
Brian
4de6fac4da Lots of vartable clean-ups, fixes. Report an error message when we run out
of registers, rather than crash.
2007-01-28 12:49:47 -07:00
Brian
602dc1a638 minor clean-ups 2007-01-28 12:13:27 -07:00
Brian
bbec2fdb3a minor updates 2007-01-28 12:11:10 -07:00
Julien Cristau
7549426a16 Sync Section and Priority for all packages with the override. 2007-01-28 18:18:38 +01:00
Ben Skeggs
b0e86b2dbd nouveau: fix nv30 line width 2007-01-28 22:55:35 +11:00
Ben Skeggs
aacea52181 nouveau: initial GL_ARB_occlusion_query support
Only enabled on NV40, NV20/NV30 code is untested.. However, NV30
should be identical to NV40.
2007-01-28 17:02:40 +11:00
Ben Skeggs
1879069eab nouveau: extend notifier interface to allow multiple notifiers in a memory block. 2007-01-28 16:35:32 +11:00
Brian
513325fa32 Clean-up of var/temp allocation function parameters. 2007-01-27 20:29:33 -07:00
Brian
d6772f157a Improved register allocation: allow four 'float' vars or temporaries to share a single register. Clean-up needed. 2007-01-27 20:06:41 -07:00
Claudio Ciccani
ea55de3d65 Updated copyright header.
Switched to LGPL (GPL header was a cut-&-paste mistake).
2007-01-27 19:32:05 +01:00
Brian
04d60ea54c note that non-member posts are auto-rejected 2007-01-27 06:25:31 -07:00
George Sapountzis
c00169fd25 Bug 9628: no entry for GetVertexAttribPointerv
This is because (in glX_API.xml) GetVertexAttribPointerv is aliased to
GetVertexAttribPointervARB which is then aliased to GetVertexAttribPointervNV.

Make GetVertexAttribPointerv alias GetVertexAttribPointervNV directly. Patch
by Ian Romanick <idr@us.ibm.com> and regenerate.
2007-01-27 09:12:57 +02:00
Brian
d8df84aae1 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-01-26 19:08:58 -07:00
Brian
1b62353dd8 fix typo 2007-01-26 19:08:34 -07:00
Stephane Marchesin
0931e21eb6 nouveau: more work on nv04, this time buffer format/pitches/... 2007-01-27 03:08:01 +01:00
Brian
99c9bc386f document, re-indent _mesa_ffsll() 2007-01-26 19:01:55 -07:00
Brian
1d74e565db Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-01-26 18:55:12 -07:00
Eric Anholt
5a3d985395 Bug #9604: Fix a static buffer allocation failure.
The pool that the static buffer got allocated from was sized by pitch * height,
but the buffer generated from it had its size aligned to a tile boundary, so
allocation failed if pitch * height wasn't aligned.  However, the 2d driver
ensures that the size ends at a tile boundary, so just pass the 2d driver's
buffer size rather than calculating it.
2007-01-26 14:23:29 -08:00
Eric Anholt
869b8ad499 Add _mesa_ffsll() for compatibility on OSes without ffsll(), and use it. 2007-01-26 14:18:24 -08:00
Eric Anholt
dbb54b234c Remove dead code causing a warning. 2007-01-26 14:18:24 -08:00
George Sapountzis
507167d7e2 Override Const.CheckArrayBounds for Xserver in XMesaCreateContext().
This leaves one last XFree86Server ifdef in Mesa core.

---

Bug 9285: misc glcore, xmesa cleanups

ACKed by Ian Romanick.
2007-01-26 18:31:44 +02:00
George Sapountzis
c9b33ecd7c Drop old (pre-AIGLX) GLcore interface.
The old GLcore interface was replaced in Xorg 7.1 with the addition of AIGLX,
it is only used by DDX's which are known not to work with the new DIX glx code.

---

Bug 9285: misc glcore, xmesa cleanups

ACKed by Ian Romanick.
2007-01-26 18:31:00 +02:00
Zou Nan hai
c6c65e7b22 Merge branch 'master' of git+ssh://znh@git.freedesktop.org/git/mesa/mesa 2007-01-26 07:05:02 +08:00
Zou Nan hai
6aa62ba43f ARB_Occlusion_query should support multiple query at same time 2007-01-26 07:04:15 +08:00
Brian
ea8b68e0f7 asst fixes, tranpose span->varying array indexes 2007-01-25 10:54:52 -07:00
Brian
ff13f0ea4d fixes, clean-ups, transpose span->varying array indexing 2007-01-25 10:52:48 -07:00
Roland Scheidegger
38e9f8b6f2 do not rebase index buffers as it does not work currently (tested with r200 and sw mesa) 2007-01-25 18:52:40 +01:00
Brian
5ef553da9a new comments, ideas 2007-01-25 10:51:53 -07:00
Roland Scheidegger
78b64d911b allocate larger minimum dstelt buffer
increase the minimum dstelt buffer size to avoid triggering an assertion later
because the split is triggered before the buffer is full. This fixes cases
where the vbo_split_copy path is hit because of maximum index limit, where the
dstelt buffer size needed could be very small (doom3 hit that assertion with a
vertex count of just 3)
2007-01-25 16:39:02 +01:00
Roland Scheidegger
db79d7dea0 fix dstelt memory allocation to avoid hash corruption 2007-01-25 14:32:06 +01:00
Roland Scheidegger
327462d901 remove tnl/t_vtx_x86_gcc.S file from sources as it no longer exists 2007-01-25 12:12:54 +01:00
Roland Scheidegger
5970400476 re-fix bug 9062 in vbo code 2007-01-25 12:11:03 +01:00
Ben Skeggs
d5db167c2c nouveau: unbreak NOUVEAU_RING_DEBUG 2007-01-25 15:12:49 +11:00
Ben Skeggs
86996dfe32 nouveau: add result scaling to shader backend, use it in RSQ emul for NV40. 2007-01-25 13:40:51 +11:00
Ben Skeggs
2d7687865e nouveau: and here's the "oops, I suck" commit :) 2007-01-25 12:08:49 +11:00
Ben Skeggs
42bd32dad7 nouveau: some extra debug output 2007-01-25 11:56:45 +11:00
Brian
e713c21bd0 remove some parenthesis 2007-01-24 14:15:01 -07:00
Brian
ff917003f6 use FRAG_BIT_TEX() 2007-01-24 14:14:14 -07:00
Brian
ccea3ff8a9 fix varying interpolation 2007-01-24 14:13:36 -07:00
Brian
0552abce0e only setup varying vars that will be used 2007-01-24 14:13:02 -07:00
Brian
07373512c7 added FRAG_BIT_TEX() and FRAG_BIT_VAR() macros 2007-01-24 14:12:08 -07:00
Zou Nan hai
844e5610de 965 glxswapcontrol fix 2007-01-24 16:07:43 +08:00
Zou Nan hai
bdc5394d22 965 ARB_Occlusion_query fix 2007-01-24 15:47:15 +08:00
Brian
c920d201c2 updated comment 2007-01-23 17:41:25 -07:00
Brian
6d4e561e39 indicate which opcodes are used by Mesa GLSL, updated comments 2007-01-23 17:39:25 -07:00
Brian
223d7cb3c7 fix g++ warnings/errors 2007-01-23 16:37:51 -07:00
Brian
7e85b0a025 silence C++ warnings 2007-01-23 12:50:08 -07:00
Brian
18d1fdebeb fixes for C++ warnings/errors 2007-01-23 11:46:02 -07:00
Thomas Hellstrom
d46093b8d5 i915tex: Relocation fixes:
Increase the number of allowed relocations per batchbuffer.
Fix an assert to avoid an array index overflow.
(Reported by Steve Wilkins)
2007-01-23 09:06:21 +01:00
Thomas Hellstrom
fe9fef2cec i915tex: Fix randr resizing. Rotation still broken. 2007-01-23 09:06:21 +01:00
Ben Skeggs
60c28739aa nouveau: DPH and CMP for NV40 which doesn't do it natively. 2007-01-23 16:25:25 +11:00
Ben Skeggs
cf33bcf0b2 nouveau: allow for card-specific shader infos to be kept
NV30/40 fragprog: build FP_CONTROL per-shader, still some hardcoded bits for
                  this reg.. It looks like it has to do with the number of
		  temps used, but needs more looking at.
NV40 vtxprog    : build VP_IN_REG/VP_OUT_REG during shader compile
2007-01-23 16:07:12 +11:00
Ben Skeggs
a8b9d13f74 nouveau: fill in condition info for instructions 2007-01-23 13:36:45 +11:00
Ben Skeggs
ed69205684 nouveau: unbreak nv40 2007-01-23 11:06:16 +11:00
Ben Skeggs
50227f6fd2 nouveau: reindent shader pass0/pass2
if this gets rejected by the commit list, just ignore it..
nothing interesting to see here :)
2007-01-23 10:54:54 +11:00
Ben Skeggs
c3ac270996 nouveau: start converting shaders into a tree format again..
No branching stuff implemented yet.  Works enough for gears, probably
other stuff broken.
2007-01-23 10:54:54 +11:00
Jeremy Kolb
95fc270b06 Merge branch 'master' of git+ssh://git.freedesktop.org/git/mesa/mesa 2007-01-21 20:47:10 -05:00
Jeremy Kolb
ea441355d3 nouveau: Fixes for nv30. 2007-01-21 20:30:31 -05:00
Stephane Marchesin
d1f0a55af4 nouveau: fix some bugs in the nv10 swtcl. 2007-01-22 00:12:05 +01:00
Brian
bc5d480e2c added shading.html link 2007-01-21 10:37:25 -07:00
Stephane Marchesin
3c0961d299 nouveau: add nv04 state support, and small nv04 fixes. 2007-01-21 04:06:57 +01:00
Ben Skeggs
4f800c5bac nouveau: rename pass0_arb to pass0.
I was expecting to have 2 frontends for the shader code (asm, glsl).
With Brian's work on GLSL this is unnecessary :)
2007-01-21 09:48:33 +11:00
Ben Skeggs
029b81742a nouveau: kill off shader pass1.
It sucks, and we have someone who can do a much better job than I can starting
work on it soon.  alloc_temp/free_temp is left in pass2 to workaround fragprog
temps/outputs overlapping, but this all belongs in the optimiser.
2007-01-21 09:31:00 +11:00
Ben Skeggs
ee3d0617f9 nouveau: shader backend branching support for all cards that support it. 2007-01-21 09:13:27 +11:00
Brian
9595d1935c Added a page with shading language status, tips, etc. 2007-01-20 13:40:57 -07:00
Brian
059e901446 Add a simple mechanism for annotating instructions for easier debugging. 2007-01-20 10:47:10 -07:00
Brian
f116fcc328 optimization: emit MAD instructions when possible 2007-01-20 09:46:02 -07:00
Brian
1f208c3546 remove unused swizzle parameter to -storage_to_src_reg() 2007-01-20 09:29:04 -07:00
Brian
5ae49cf3ed Initial implementation of OPCODE_IF/ELSE/ENDIF instructions. 2007-01-20 09:27:40 -07:00
Brian
a3e938b8da Reimplement && and || to do short-circuit evaluation.
Improved shader error handling.
2007-01-20 09:22:13 -07:00
Brian
9f07ed00e4 rewrite more __postIncr functions 2007-01-20 07:56:00 -07:00
Brian
3cec66512d Implement do/while loops. Replace IR_CJUMP with IR_CJUMP0 and IR_CJUMP1 so
we can either jump on zero, or non-zero predicate.
2007-01-19 13:13:15 -07:00
Brian
eff9690351 Rewrite normalize(vec3/vec4) to use one less register. 2007-01-19 12:19:38 -07:00
Brian
dceae2829e report error message when something fails 2007-01-19 12:02:31 -07:00
Brian
203946e1f9 print error msg when there's a problem 2007-01-19 12:02:06 -07:00
Brian
74b27674a8 remove stray tab 2007-01-19 10:31:52 -07:00
Brian
a0092c51b1 Implement fragment discard/kill. 2007-01-19 10:15:34 -07:00
Brian
8374ccb66f change while-loop to create new scope for loop body, per spec 2007-01-19 10:02:58 -07:00
Ben Skeggs
669fefd3da nouveau: bump drm patchlevel 2007-01-19 15:39:36 +11:00
Brian
16183e6430 Implement constant sharing so that 4 float constants can share a single
float[4] register slot.
2007-01-18 17:29:23 -07:00
Brian
ce6640001d _mesa_add_unnamed_constant() now tries to re-use constants already in
the parameter list.
2007-01-18 17:23:48 -07:00
Brian
d70771752f Reimplement code for swizzling so that expressions like (p+q).x for vectors p and q works correctly. 2007-01-18 15:35:44 -07:00
Brian
d885ff470a rewrite a bunch of assignment operators (like +=) 2007-01-18 15:33:13 -07:00
Brian
e4e66476a9 remove debug code 2007-01-18 15:23:45 -07:00
Patrice Mandin
3c59483ed7 nouveau: preliminary nv50 state 2007-01-18 22:07:17 +01:00
Brian
f43eac3ed8 remove swizzle param from new_var() 2007-01-18 09:22:44 -07:00
Zou Nan hai
c171166987 1. Fix bug #155
2. I notice multiple ARB_occlusion_query should be able to overlap according to spec.

3. Declaring extern variables in a .c file is evil, fix it.
2007-01-18 14:41:38 +08:00
Aapo Tahkola
62efc4ba3e support as much of GL_EXT_stencil_two_side as we can. untested. 2007-01-18 05:56:13 +02:00
Aapo Tahkola
feeed10dfd typo fix. this case still fails. 2007-01-18 05:30:20 +02:00
Aapo Tahkola
a3b4b11739 Fix invalid enums passed to MapBuffer 2007-01-18 04:46:04 +02:00
Aapo Tahkola
2cb3594af9 Fix invalid enums passed to MapBuffer 2007-01-18 04:17:56 +02:00
Brian
8a2368edce rewrite additional matrix-related functions to reduce register needs 2007-01-17 18:37:20 -07:00
Brian
89a3bafe04 rewrite mat4 * mat4 operator to use fewer temps 2007-01-17 18:30:53 -07:00
Brian
272622a2e0 do bounds check in _slang_push_var_table(), added comment 2007-01-17 18:21:00 -07:00
Brian
2585b74e19 rewrite matrix constructors 2007-01-17 18:06:40 -07:00
Brian
4864aaeb02 handle var size > 4 in _slang_pop_var_table() 2007-01-17 18:02:44 -07:00
Brian
f4e345c1a8 minor fprintf() change 2007-01-17 16:30:11 -07:00
Brian
eb0c478b17 Rewrite a bunch of constructors. It's now important that the first
constructor for any given type be the one that takes the most parameters
as this is the constructor that'll be used when there's no perfect match
to the caller's arguments.
See the _slang_adapt_call() function for details.
2007-01-17 16:29:51 -07:00
Brian
3a3bb953b6 _slang_gen_function_call_name() now tries to adapt function calls (expand
vectors, insert casts) when a perfect match isn't found.
2007-01-17 16:14:03 -07:00
Brian
eabb7e66bd New _slang_adapt_call() function.
This is used to modify function calls (when possible) to make the arguments
map to the function parameters.  This includes "unrolling" vector types
and doing casts.

Example:
   vec2 v2 = vec2(1.2, 3.4)
   ivec3 iv = ivec3(false, v2);
Is converted into:
   ivec3 iv = ivec3(int(false), int(v2[0]), int(v2[1]))
2007-01-17 16:11:50 -07:00
Brian
397b807ad5 code clean-up, re-org. Added IR_F_TO_I support. 2007-01-17 16:05:03 -07:00
Brian
bb53124fca added IR_F_TO_I, update comments 2007-01-17 15:58:24 -07:00
Brian
0bad236cfb Added OPCODE_INT to convert 4 floats to 4 ints. 2007-01-17 15:54:14 -07:00
Brian
46a9241248 add texturing, other options 2007-01-17 10:25:44 -07:00
Brian
811f54fa75 Fix/clean-up a number of things related to variable/temporary allocation. 2007-01-17 09:54:31 -07:00
Keith Whitwell
3bfbe63806 New debug config for linux-dri 2007-01-17 08:44:13 +00:00
Xiang, Haihao
747c9129c0 I965: fix bug#9625-get the correct PV for quardstrip
The order of vertices in payload for quardstrip is (0, 1, 3, 2),
so the PV for quardstrip is c->reg.vertex[2].
2007-01-17 10:39:50 +08:00
Xiang, Haihao
afba8f0d30 Fix bug#9673
Cast from pointer to unsinged long and cast to pointer from
 unsinged long
2007-01-17 10:17:10 +08:00
Brian
552a65e454 Implement codegen for the selection operator ( b ? x : y ) 2007-01-16 17:38:39 -07:00
Brian
3596903068 fix typo 2007-01-16 16:53:41 -07:00
Brian
271d504ed7 draw a box, press 'a' to animate 2007-01-16 15:27:11 -07:00
Brian
9d0ae967d4 added some VerteAttrib funcs 2007-01-16 14:57:12 -07:00
Brian
f44ba11815 Added toyball and bumpmap tests using shaders from the OpenGL Shading Language (orange) book. 2007-01-16 14:55:43 -07:00
Brian
9b5dc1358a when automatically binding vertex attributes, start with attrib 1, not 0 2007-01-16 14:52:22 -07:00
Brian
4f027a33b9 remove dead code 2007-01-16 14:19:37 -07:00
Brian
0f91310bf3 comments 2007-01-16 14:17:57 -07:00
Brian
d90c655b05 implement logical or, xor, not 2007-01-16 14:15:05 -07:00
Brian
99e788fe56 some additional vector constructors 2007-01-16 14:10:30 -07:00
Stephane Marchesin
7c8f311e40 nouveau: Use the most recent card list. 2007-01-16 21:43:54 +01:00
Brian
156e583a35 fix _slang_gen_subscript() for the case when a simple vector is accessed as an array: convert index to a swizzle/writemask 2007-01-16 10:45:34 -07:00
Keith Whitwell
fea6e5a695 Don't special-case index, edgeflag.
Remove display list opcodes for INDEX and EDGEFLAG, handle them
through the regular ATTRIB mechanism now that Mesa understands them
to just be regular attribs.
2007-01-16 13:30:04 +00:00
Keith Whitwell
c53df49b8b Additional display list tests 2007-01-16 13:29:01 +00:00
Keith Whitwell
3ad12fab45 Merge vbo_0_1_branch
Hopefully leaving behind the cruft generated by the CVS import.
2007-01-16 11:24:08 +00:00
Keith Whitwell
6a3fdc3a1e Merge branch 'master' of git+ssh://keithw@git.freedesktop.org/git/mesa/mesa into vbo-0.2
Conflicts:

	src/mesa/array_cache/sources
	src/mesa/drivers/dri/i965/brw_context.c
	src/mesa/drivers/dri/i965/brw_draw.c
	src/mesa/drivers/dri/i965/brw_fallback.c
	src/mesa/drivers/dri/i965/brw_vs_emit.c
	src/mesa/drivers/dri/i965/brw_vs_tnl.c
	src/mesa/drivers/dri/mach64/mach64_context.c
	src/mesa/main/extensions.c
	src/mesa/main/getstring.c
	src/mesa/tnl/sources
	src/mesa/tnl/t_save_api.c
	src/mesa/tnl/t_save_playback.c
	src/mesa/tnl/t_vtx_api.c
	src/mesa/tnl/t_vtx_exec.c
	src/mesa/vbo/vbo_attrib.h
	src/mesa/vbo/vbo_exec_api.c
	src/mesa/vbo/vbo_save_api.c
	src/mesa/vbo/vbo_save_draw.c
2007-01-16 11:22:57 +00:00
Keith Whitwell
0b412f8f15 Merge branch 'vbo_0_1_branch' into vbo-0.2 2007-01-16 09:47:35 +00:00
Keith Whitwell
5363e3331b Merge branch 'master-merge' into vbo-0.2 2007-01-16 09:47:26 +00:00
Brian
0d55346156 Use arrow keys to pan and z/Z to zoom in/out to explore the fractal. 2007-01-15 17:48:19 -07:00
Brian
2ccd264695 Added new directory of GL shading language demos: glsl 2007-01-15 17:27:24 -07:00
Brian
f6507157e2 Reimplement the post-increment/decrement functions.
Instead of defining functions with an extra dummy parameter to distinguish
from the pre-incr/decr functions, just use new function names: __postIncr
and __postDecr.
2007-01-15 16:54:38 -07:00
Brian
c410994653 Implement the ++var and --var operators, improve some constructors. 2007-01-15 16:38:12 -07:00
Brian
0a097675f1 added vec3 constructor code 2007-01-15 16:34:33 -07:00
Brian
82258b7af3 added IR_ELEMENT 2007-01-15 16:33:54 -07:00
Brian
04ac15fd80 checkpoint: ++, -- and && operators 2007-01-15 15:51:49 -07:00
Brian
83d3ff590d Redo the way array indexes are handled. Resolve storage location at code emit time, not codegen time. 2007-01-15 13:58:45 -07:00
Jerome Glisse
a03fc82771 mesa: Update _Current along Current on fragment program bound.
Same as a previously committed patch for vertex program, we
update fragment program ptr _Current along the Current one
so that _Current can't end up pointing to a no more valid
program.
2007-01-15 21:21:10 +01:00
Brian
c807169888 remove old globals 2007-01-15 11:10:11 -07:00
Brian
a5bbe206a8 comments 2007-01-15 11:08:10 -07:00
Brian
8de3dc1701 Move some global vars into slang_assemble_ctx. 2007-01-15 11:07:46 -07:00
Patrice Mandin
7520478eb0 nouveau:nv10: fix setting clip region 2007-01-15 18:58:24 +01:00
Brian
4f5901b265 fix the subassig, mulassign and divassign cases 2007-01-15 10:35:59 -07:00
Brian
629fd78f79 clean-up slang_allocate_storage() 2007-01-15 10:35:03 -07:00
Keith Whitwell
584def75ad Remove unused index buffer. 2007-01-15 16:57:01 +00:00
Keith Whitwell
6ff9b48fe2 Don't special-case FOG attribute initialization.
Initial fog value was being set to {0,0,0,0}.  This results in vector
size 4, but isn't necessary.  The regular {0,0,0,1} works fine.
2007-01-15 14:30:16 +00:00
Keith Whitwell
50f76b9d9b Correctly initialize current attribute sizes.
Some legacy attributes (eg color) have an initial value other than {0,0,0,1}
which means that their initial size != 1 either.
2007-01-15 14:20:21 +00:00
keithw
82152a2a8e Remove debug, reenable inplace splitting. 2007-01-15 14:10:42 +00:00
Keith Whitwell
5464cd0a60 Split too-large draw commands.
Use the vbo_split_ functionality to split incoming drawing command
to fit within the fixed-size buffers used by software t&l module.
2007-01-15 13:54:08 +00:00
Keith Whitwell
2421b25dd7 Remove special-case handling for index and edgeflag
This isn't required with the changes to core mesa and the new
attribute layout.
2007-01-15 13:40:38 +00:00
keithw
1b7c24c33c Hook in split functionality 2007-01-15 11:58:06 +00:00
keithw
4557dfe132 Add vbo_split files 2007-01-15 11:54:40 +00:00
keithw
a38cb37913 New files to manage splitting drawing commands 2007-01-15 11:52:58 +00:00
Stephane Marchesin
4c7d36b688 nouveau: Fix a bug in the nv04 swtcl. 2007-01-15 12:38:24 +01:00
Ben Skeggs
16f35a3a22 nouveau: Add 0x0244 pciid manually for now..
pciids.sf.net is slow to add it so our generator picks it up,
and it's *really* annoying me :)
2007-01-15 17:28:56 +11:00
Ben Skeggs
634b4b3487 nouveau: fail CreateScreen on unknown cards instead of guessing. 2007-01-15 17:23:04 +11:00
Carlos Martín Nieto
89f91d1804 nouveau: Implement much of the fog handling. 2007-01-15 00:00:30 +01:00
Stephane Marchesin
e2295511f5 nouveau: Update nouveau_reg.h from renouveau to the latest version. 2007-01-14 22:39:37 +01:00
Stephane Marchesin
65e3d5e45e nouveau: Make the state cache hierarchical. 2007-01-14 21:17:08 +01:00
Stephane Marchesin
8d7e5651fb nouveau: add the nv04 swtcl module (it's untested for now). 2007-01-14 20:39:00 +01:00
Stephane Marchesin
d57ce408b3 nouveau: Cleanup the nv10 swtcl module. 2007-01-14 20:39:00 +01:00
Patrice Mandin
81bd826de8 nouveau: nv10: 16 bits color buffer format 2007-01-14 20:14:58 +01:00
Patrice Mandin
eae7acac16 Merge branch 'master' of git+ssh://pmandin@git.freedesktop.org/git/mesa/mesa 2007-01-14 19:56:30 +01:00
Patrice Mandin
8aabd636f5 nouveau: nv10: added missing functions 2007-01-14 19:55:45 +01:00
Jerome Glisse
9a4e49aef2 r300: Fix vertex program position invariant bug, force position reading.
When we have a position invariant program we need to force routing the
position otherwise you may handle transform quite random data which might
be funny but unlikely what you want :).
2007-01-14 19:32:22 +01:00
Jerome Glisse
6dd967e74f mesa: Update _Current ptr along Current when a new vertex program is bind.
On new vertex program bind only the Current ptr where updated to
point to the new program; this could lead to _Current pointing to
and out of date or even a no more existing program which in turn
could lead to a segfault in some driver. To avoid this _Current
ptr is updated along Current if _Current where previously pointing
to the same program.
2007-01-14 14:49:36 +01:00
Patrice Mandin
e7112be732 nouveau: remove already defined NV15_TCL and NV17_TCL 2007-01-14 14:11:10 +01:00
Patrice Mandin
86f10c7144 nouveau: import color material r,g,b,a 2007-01-14 14:09:04 +01:00
Patrice Mandin
faada2485a nouveau: nv10: stencil functions 2007-01-14 14:03:42 +01:00
Patrice Mandin
29484f24fb nouveau: nv10: currently fails initcard and bindbuffers, till done 2007-01-14 12:51:30 +01:00
Patrice Mandin
f1ad10b338 nouveau: nv10 blending done, remove nv10Viewport 2007-01-14 12:45:15 +01:00
Brian
64414ea0e9 added glUniform1fv_func, glUniform2fv_func 2007-01-13 14:51:02 -07:00
Brian
691ed5e54b Rework code related to temp register allocation, both for user variables
and expression temporarires.  Much better register utilization now.
Lots of other fixes.
The OpenGL GLSL "orange book" brick shader demo works now.
2007-01-13 14:49:52 -07:00
Brian
5daa99d2a4 slang_variable_scope now stores array of pointers to slang_variables. 2007-01-13 14:47:48 -07:00
Brian
97c7937c65 added another vec4 constructor, updated += operator 2007-01-13 14:46:12 -07:00
Patrice Mandin
fb5f359b93 nouveau: update nv10 state 2007-01-13 14:14:19 +01:00
Patrice Mandin
308ef2dc32 nouveau: Add clear color for nv10 2007-01-13 13:56:18 +01:00
Patrice Mandin
ca75853f9d nv10 has alpha color mask 2007-01-13 13:22:03 +01:00
Brian
95a441112e Fix a problem with inlined "return" statements. Make some attempt to free temporaries. 2007-01-11 11:22:26 -07:00
Brian
063f3f7fc4 disable some code that'll eventually go away 2007-01-11 11:21:38 -07:00
Brian
749ed66549 new vec3 constructor, replace float_add w/ vec4_add 2007-01-11 11:20:23 -07:00
Brian
c8e148e38c tweak output 2007-01-11 11:19:11 -07:00
Thierry Reding
6dcb9a3434 Give credit where credit is due. 2007-01-11 15:09:23 +01:00
Thierry Reding
e5a31c00ec libosmesa6{,-dev} replace libgl1-mesa-swx11{,-dev} and mesa-common-dev.
libosmesa6 and libosmesa6-dev are now the only packages to contain OSMesa
libraries and header files so they can be installed independent of which libGL
is installed. They statically link in the software rasterization code.
2007-01-11 15:06:42 +01:00
Thierry Reding
00295242fd mesa-common-dev needs to replace libgl1-mesa-swx11-dev and libgl1-mesa-dev.
The GLX headers were previously shipped in both packages and have been moved
to mesa-common-dev.
2007-01-11 14:56:48 +01:00
Thierry Reding
21b6ed7c29 Build the DRI modules with the default optimization flags. 2007-01-11 14:40:10 +01:00
Jerome Glisse
b55f1ec9af Fix typo from commit 1d312ae013 . 2007-01-11 12:54:42 +01:00
Brian
c0c31024a3 checkpoint: codegen for global vars/constants now working 2007-01-10 13:51:48 -07:00
Brian
88e2dbfd10 checkpoint: codegen for global vars w/ initializers 2007-01-10 13:33:38 -07:00
Brian
8a48f35574 assorted code clean-ups 2007-01-10 12:18:50 -07:00
Brian
ee11842bfc fix size bug in _mesa_add_attribute() 2007-01-10 12:18:33 -07:00
Brian
29bff4e12d simplify _mesa_add_state_reference() 2007-01-10 08:37:59 -07:00
Brian
88f7212312 Update _save_VertexAttrib() functions for non-aliasing behaviour. 2007-01-10 08:15:35 -07:00
Thierry Reding
01894cbf10 Revert the previous changes to the libgl1-mesa-{glx,swx11} shlibs. 2007-01-10 15:23:29 +01:00
Thierry Reding
28cad2b9d9 Bump libgl1-mesa-glx, libgl1-mesa-swx11 and libosmesa6 shlibs files. 2007-01-10 13:55:19 +01:00
Brian
01a91eb657 get rid of STATE_USER_ATTRIB/STATE_AUTO_ATTRIB 2007-01-09 19:26:22 -07:00
Brian
b7978af693 clean up a bunch of program parameter stuff 2007-01-09 19:17:17 -07:00
Brian
cc858bfa84 added a few more 2.0 functions 2007-01-09 17:49:53 -07:00
Brian
3209c3ed0d Implement vertex attribute binding.
Users can set explicit binding with glBindAttribLocation(), otherwise the
linker will allocate generic attribute slots.
2007-01-09 17:49:24 -07:00
Brian
5e75db12d7 more debug code (disabled) 2007-01-09 17:47:13 -07:00
Brian
e8673143ea add code for generic attributes 16..31 2007-01-09 17:46:45 -07:00
Eric Anholt
3dd243c59e Track rename of DamagePost -> DamageAdd. 2007-01-09 16:39:10 -08:00
Brian
048412473b added _mesa_count_texture_indirections(), _mesa_count_texture_instructions() 2007-01-09 11:00:47 -07:00
Brian
21f99792a9 Moved NumTexInstructions, NumTexIndirections, etc. into gl_program since
they can now apply to vertex programs.
2007-01-09 11:00:21 -07:00
Brian
ae80d13f6d remove old comment 2007-01-09 10:10:59 -07:00
Brian
829da4c345 Vertex program texture samplers done, but untested (need to add TEX/TXB to
the T&L vertex program interpreter).
2007-01-09 09:31:30 -07:00
Brian
855ebb26d1 Implement shadow samplers and dFdx(), dFdy() code generation. 2007-01-09 09:14:32 -07:00
Roland Scheidegger
96c5db5f7a put back missing Driver.PolygonMode call (bug 9578) 2007-01-09 14:42:22 +01:00
Michel Dänzer
dfabf96607 i915tex: Remove unused tex_program field. 2007-01-09 12:46:50 +01:00
Michel Dänzer
92fb742065 intel_finalize_mipmap_tree: Only flush batchbuffer when necessary. 2007-01-09 12:46:50 +01:00
Brian
20aec24ac7 implement biased texture functions 2007-01-08 16:56:52 -07:00
Brian
41a4e828d9 check if _Current == NULL for TXB 2007-01-08 16:49:43 -07:00
Brian
8cad795a80 added 1D texture functions 2007-01-08 16:10:55 -07:00
Brian
9a78ef980d Remove if (tObj) conditional so that texture units without a texture image
return black (0,0,0,1) when sampled.
2007-01-08 16:10:34 -07:00
Brian
85e0634b54 update texture1D functions 2007-01-08 16:02:40 -07:00
Brian
42153d7858 Implement projective texture sampling, 3D textures. Disable some debug output. 2007-01-08 15:58:14 -07:00
Brian
483ca39bca Move some code around, add some comments. 2007-01-08 14:11:54 -07:00
Brian
d3fe7398e3 Move storage allocation functions from slang_emit.c to slang_codegen.c 2007-01-08 14:06:00 -07:00
Brian
27cc9068ce checkpoint: more work on variable/storage allocation 2007-01-08 13:36:53 -07:00
Brian
cf4d4342c9 Checkpoint: re-org of (global) variable allocation code. More to come... 2007-01-08 13:09:47 -07:00
Thierry Reding
71d7b7dbe7 Drop noop line. 2007-01-08 13:36:25 +01:00
Thierry Reding
4563723db1 Make sure all files in the mesa-swx11-source package have permissions 0644. 2007-01-08 13:36:16 +01:00
Thierry Reding
0bce6a1899 Compile with -O2 optimization instead of -O3 which might lead to problems. 2007-01-08 11:43:25 +01:00
Thierry Reding
e71d6dbd9c Make debugging symbol packages depend on the corresponding binary package and
put them into the libdevel section.
2007-01-08 11:41:02 +01:00
Thierry Reding
132ecd19f3 Do not build any linux*-static configuration with -fPIC. 2007-01-08 10:07:08 +01:00
Thierry Reding
a404143f4c Add patches 04_cleanup-osmesa-configs and 05_static-nonpic.
04_cleanup-osmesa-configs makes the OSMesa configurations behave as expected.
That is respect the OPT_FLAGS, PIC_FLAGS, ARCH_FLAGS and DEFINES variables.
The patch also makes the files more consistent by inheriting from more general
configurations.

05_static-nonpic fixes the linux-static configuration to not use -fPIC for
compiling code because it would violate Debian policy.
2007-01-08 08:35:42 +01:00
Keith Packard
a27d3e43fe Merge branch 'master' into crestline 2007-01-07 23:03:01 -08:00
Keith Packard
d9dd9013a8 Merge branch 'origin' 2007-01-07 23:00:48 -08:00
Keith Packard
6a632de96d Merge branch 'origin' into crestline 2007-01-07 20:57:56 -08:00
Ben Skeggs
026939b008 nouveau: allow the use of multiple subchannels/objects by default. 2007-01-08 11:54:39 +11:00
Keith Packard
92de58f001 Merge branch 'master' into crestline 2007-01-06 17:14:14 -08:00
Keith Packard
62db3cc349 Various warning fixes for i965 driver.
vertex/fragment programs provided as const.
bmSetFenceLock should return bmSetFence value.
2007-01-06 17:13:45 -08:00
Keith Packard
9311c29558 Initialize GL_ARB_occlusion_query only if DRM support is present.
DRM versions before 1.8 do not include the necessary ioctls to support
GL_ARB_occlusion_query, don't enable it on these versions.
2007-01-06 17:13:29 -08:00
Wang Zhenyu
caf8010652 Merge branch 'master' into crestline
Conflicts:

	src/mesa/drivers/dri/i965/brw_tex_layout.c

Michel Dänzer replaced the copy of the 945 mipmap layout code with that from
the 945 driver directly.
2007-01-06 15:49:23 -08:00
Haihao Xiang
8c1cc5fd80 i965: Support linear format in i965.
Signed-off-by: Keith Packard <keithp@neko.keithp.com>
2007-01-06 15:44:57 -08:00
Zou Nan hai
ef02f8be10 i965: xdemos/glxthreads get: Assertion `block->fenced' failed (9201)
Signed-off-by: Keith Packard <keithp@neko.keithp.com>
2007-01-06 15:18:23 -08:00
Zou Nan hai
652ae2c376 i965: Take clip rects into account when computing max prim
Signed-off-by: Keith Packard <keithp@neko.keithp.com>
2007-01-06 15:18:23 -08:00
Wang Zhenyu
4068e2d1b7 i965: ARB_occlusion_query support
Signed-off-by: Keith Packard <keithp@neko.keithp.com>
2007-01-06 15:18:23 -08:00
Eric Anholt
1b9f78195f i965: Avoid branch instructions while in single program flow mode.
There is an errata for Broadwater that threads don't have the instruction/loop
mask stacks initialized on thread spawn.  In single program flow mode, those
stacks are not writable, so we can't initialize them.  However, they do get
read during ELSE and ENDIF instructions.  So, instead, replace branch
instructions in single program flow mode with predicated jumps (ADD to the ip
register), avoiding use of the more complicated branch instructions that may
fail.  This is also a minor optimization as no ENDIF equivalent is necessary.

Signed-off-by: Keith Packard <keithp@neko.keithp.com>
2007-01-06 15:18:23 -08:00
Eric Anholt
e54ec49155 i965: Connect INTEL_DEBUG=sync up to cmd/batch ioctls.
Signed-off-by: Keith Packard <keithp@neko.keithp.com>
2007-01-06 15:18:22 -08:00
Brian
f1fbaf39ff Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-01-06 14:55:07 -07:00
Brian
ade39f53f6 document 32-bit Z line/point fix 2007-01-06 12:58:28 -07:00
Brian
113b0a7f2e Use GLuint instead of GLint to store intermediate Z values. Fixes problems when using 32-bit Z buffer. 2007-01-06 12:55:17 -07:00
Eric Anholt
c2b185cff8 Add reporting of damage by DRI drivers when the extension support is available.
With this, tools like ximagesrc in gstreamer correctly see updates from GL
rendering.  Support requires that the Xdamage library be current (but will be
disabled if not present) plus a new X Server with support for the new
XDamagePost request.  libGL now has a new interface version, and also links
against libXdamage and libXfixes to support it, but backwards compatibility
is retained.

Currently, all drivers report damage at SwapBuffers time through common code --
front buffer rendering doesn't result in damage being reported.  Also, the
damage is against the root window, as our drivers don't yet render to backing
store when they should (composited environments).
2007-01-05 18:23:57 -08:00
Brian
5cf7326132 Checkpoint glsl compiler work: sampler uniforms now implemented, linked properly. 2007-01-05 16:02:45 -07:00
Brian
b2ab693d68 added PROGRAM_SAMPLER 2007-01-05 16:01:43 -07:00
Brian
eef70ff79a added Sampler field to prog_instruction struct 2007-01-05 16:01:26 -07:00
Brian
288c5396e6 added PROGRAM_SAMPLER 2007-01-05 16:01:11 -07:00
Brian
9805e76744 added _mesa_add_sampler() 2007-01-05 16:00:57 -07:00
Brian
b530d96216 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2007-01-05 08:42:45 -07:00
Brian
24cf67fc73 document VBO bug fix 9445 2007-01-05 08:41:16 -07:00
Brian
7da7404fdf Fix glPush/PopClientAttrib() for VBO state (bug 9445). 2007-01-05 08:40:06 -07:00
Julien Cristau
44467ca45e * Drop obsolete depends on xlibs. 2007-01-05 15:44:51 +01:00
Ian Romanick
16f0efca60 Merge branch 'master' of ssh+git://idr@git.freedesktop.org/git/mesa/mesa 2007-01-04 18:37:10 -08:00
Brian
4cc90ee0b0 update TexturesUsed[] in slang_update_inputs_outputs() 2007-01-04 17:44:04 -07:00
Brian
4428e8f20f update TexturesUsed[] in slang_update_inputs_outputs() 2007-01-04 17:43:53 -07:00
Brian
64f78dd6a8 compute InputsRead/OutputsWritten with slang_update_inputs_outputs() 2007-01-04 17:30:30 -07:00
Brian
c9db223f90 move TexturesUsed[] into gl_program since vertex programs/shaders can use textures nowadays 2007-01-04 17:22:19 -07:00
Brian
7edd2ecb55 simplify update_texture_state() a bit, compute _EnabledCoordUnits for shaders 2007-01-04 16:19:54 -07:00
Ian Romanick
5ca107a4f2 Use glxbyteorder.h in server-side source files. 2007-01-04 14:53:48 -08:00
Ian Romanick
6d29e1de73 Hack indent flags for indirect_reqsize.h to eliminate extra diffs. 2007-01-04 14:52:53 -08:00
Ian Romanick
92be800146 Add missing files to server generation list.
The files indirect_reqsize.c and indirect_reqsize.h were missing from
the list of files to be generated for the server.  Add them back to
the list.  Also, update the INDENT_FLAGS to prevent conversion of
'GLbyte *pc' to 'GLbyte * pc' in function prototypes.
2007-01-04 14:47:41 -08:00
Brian
ff81f074fb minor formatting fix 2007-01-04 15:25:29 -07:00
Brian
de03fe4a3f added texture attribs in slang_find_input() 2007-01-04 15:06:50 -07:00
Brian
7b4d10b4a3 added glUniform1i_func 2007-01-04 14:40:56 -07:00
Brian
e640300602 initial code to get texture sampling limping along 2007-01-04 14:40:02 -07:00
Brian
6a92d98d1a temporary disable some memory deallocations to work around a memory corruption bug 2007-01-04 14:38:45 -07:00
Brian
89dc48569a finish some loose ends in _mesa_uniform() 2007-01-04 14:35:44 -07:00
Brian
602045fd7b update_texture_state() updated for new shaders 2007-01-04 14:33:42 -07:00
Julien Cristau
f70ea0747d Import changelog entry from the 6.5.1-0.5 NMU. 2007-01-04 21:30:49 +01:00
Jerome Glisse
1d312ae013 r300: Correct bug introduced by fragprog rework.
Thx for Tilman who spoted the bugs.
2007-01-04 20:31:35 +01:00
Thierry Reding
c619abf18a Hijack the package (set XSF as maintainer, add myself to uploaders). \o/ 2007-01-04 16:35:14 +01:00
Brian
439758353a Fix some incorrect GL error values. Reorganize _mesa_compile_shader() code. 2007-01-04 08:21:09 -07:00
Brian
8d287d0f5e s/unsigned/size_t/ (Matthias Hopf) 2007-01-04 07:53:32 -07:00
Julien Cristau
6da1323437 * Non-maintainer upload.
* Build with -fno-strict-aliasing to fix misbuild of i965_dri.so
  (closes: #394311).  Thanks to Michel Dänzer for the fix, and to Ryan
  Richter for the report and testing.
2007-01-03 16:59:06 +01:00
Julien Cristau
1dd29785cf Import changes from the mesa 6.5.1-0.4 NMU. 2007-01-03 13:43:46 +01:00
Julien Cristau
5681987ee4 Import changes from the mesa 6.5.1-0.3 NMU. 2007-01-03 13:41:57 +01:00
Patrice Mandin
bbfd963f49 Update spot light params 2007-01-02 14:31:16 +01:00
Ben Skeggs
254ce75ac3 nouveau: bump drm patchlevel. 2007-01-02 15:59:05 +11:00
Dave Airlie
b6becfae10 fix issue with i915tex advertising visuals it can't support
This may not be the proper way to fix this but it does work easily.
2006-12-31 10:01:17 +11:00
Haihao Xiang
3943d7f8b1 Use the tiled flag in the sarea to determine region tiling.
This fixes mis-rendering if back/depth fail to get set up as tiled.  While it
probably won't ever be the case now that the pitch limits are loosened, this is
still the right thing to do.
2006-12-30 10:30:42 -08:00
Ben Skeggs
8c180c72d5 nouveau: Use bufferobj interface for fragment program uploads 2006-12-27 23:53:26 +11:00
Ben Skeggs
9a20ae70ec nouveau: Initial buffer object support 2006-12-27 23:53:25 +11:00
Ben Skeggs
1780fd4eee nouveau: We'll need syncNotifier for NV_MEMORY_TO_MEMORY_FORMAT too. 2006-12-27 23:53:25 +11:00
Ben Skeggs
885a7cc38d nouveau: add nouveau_mem_alloc/free debugging 2006-12-27 23:53:25 +11:00
Ben Skeggs
2dd3753450 nouveau: record *actual* type of memory that was alloc'd, not the requested types. 2006-12-27 23:53:25 +11:00
Ben Skeggs
7b59a424b5 nouveau: Typo 2006-12-27 23:53:25 +11:00
Ben Skeggs
297a35eb69 nouveau: Add simple wrapper for NV_MEMORY_TO_MEMORY_FORMAT. 2006-12-27 23:53:25 +11:00
Nian Wu
f34cad0f97 Merge branch 'crestline' into crestline-qa 2006-12-26 16:46:51 -08:00
Haihao Xiang
adccb084df Support linear format in i965.
Fix bug #117 #118
2006-12-26 16:45:02 -08:00
Jerome Glisse
2dccca57e4 Deleted unused file which likely have be reintroduced during git move.
This file was deleted longtime ago, guess that git migration
created it again.
2006-12-26 18:42:17 +01:00
Ben Skeggs
257e3d1d59 nouveau: Make use of NOUVEAU_DEBUG for shader disasm 2006-12-26 22:03:12 +11:00
Ben Skeggs
3fcb7d388d nouveau: Make the notifier stuff actually work.. 2006-12-26 21:36:15 +11:00
Ben Skeggs
0b2b2de6cf nouveau: Wait on notifier to check for completion of previous commands.
We can't wait on NV_PGRAPH_STATUS.  We don't have the regs mapped, and there's
no guarantee that we'll catch PGRAPH idle when multiple channels are active.
2006-12-26 21:36:15 +11:00
Ben Skeggs
c0a63d8e5e nouveau: Add notifier support functions 2006-12-26 21:36:15 +11:00
Jerome Glisse
b8769f318f Rework r300 fragprog avoid using bitfield structure.
It seems that bitfield structure lead to some strange
problem on 64bits arch, don't want to waste time debugging
strange things like that so converted pfs_reg_t structure
to a GLuint and use good old masking and shifting spell.
(cherry picked from 2a7de9d095d8e60da12b11aaa1efe664b87b11d3 commit)
2006-12-25 23:40:20 +01:00
Ben Skeggs
d79323bd42 nouveau: Kill some compile warnings. 2006-12-24 00:50:13 +11:00
Ben Skeggs
f54c725497 nouveau: Modify span routines to use nouveau_renderbuffer instead of driRenderbuffer 2006-12-24 00:13:34 +11:00
Ben Skeggs
cb6a400dcd nouveau: maintain numClipRects/pClipRects in context. 2006-12-23 23:51:24 +11:00
Ben Skeggs
ae8d8d1326 nouveau: Don't fill nrb->dPriv for private buffers 2006-12-23 23:03:55 +11:00
Ben Skeggs
1dd6759c05 nouveau: get 16bpp working 2006-12-23 10:56:19 +11:00
Brian
d8babcfc57 fix typos 2006-12-22 10:26:22 -07:00
Brian
aa710c3e6b implement unary +, - 2006-12-22 10:18:50 -07:00
Brian
9b694589e9 chmod a-x 2006-12-21 18:12:03 -07:00
Brian
01f2e7f62f checkpoint: pre/post incr/decr operators 2006-12-21 18:05:06 -07:00
Brian
392d9701e3 added INTERP_VARYING code 2006-12-21 17:50:22 -07:00
Brian
eb2a6d62f9 s/attribute/varying/ 2006-12-21 17:50:07 -07:00
Brian
2905385744 comment about uniforms 2006-12-21 11:21:26 -07:00
Brian
58af54c767 checkpoint: rewrite vec/mat products 2006-12-21 10:56:09 -07:00
Brian
c155ae1dfe fix typos 2006-12-21 10:49:27 -07:00
Brian
a0d6b506cd added IR_NEG for negation 2006-12-21 10:47:28 -07:00
Brian
356f8ea213 checkpoint: matrix/float, unary negation rewrite 2006-12-21 10:45:49 -07:00
George Sapountzis
b766643e5c Drop mesa wrappers for XFree86. 2006-12-21 19:41:08 +02:00
Brian
c73e07405c checkpoint: ivec/int and mat/mat operations 2006-12-21 10:03:15 -07:00
Brian
bb1bf8b3aa checkpoint: more basic math rewritting 2006-12-21 09:40:08 -07:00
Sean D'Epagnier
af0190bc6e Updated keyboard input so that glut programs can read from stdin without
problems if tty input is used.  Also corrected a few stdin keycodes.
2006-12-21 01:50:33 -07:00
Brian
a33532f5f4 checkpoint: re-org assignment operator functions 2006-12-20 18:04:59 -07:00
Brian
1ff1e89ff4 added glUniformMatrix2/3fv_func 2006-12-20 17:56:29 -07:00
Brian
cec316c9eb checkpoint: more basic math operator re-org 2006-12-20 17:55:42 -07:00
Brian
8d239a6880 Checkpoing: re-organization of basic arithmetic functions. 2006-12-20 17:43:56 -07:00
Brian
2a62cbd24b handle PROGRAM_UNIFORM, fix a _mesa_problem() call 2006-12-20 17:19:45 -07:00
Brian
3a8e2776a6 Uniform matrix support.
Implement _mesa_uniform_matrix()
Support for program parameters/uniforms with more than 4 elements.
Store 4x4 matrices in column-major order in registers.
Update mat mul built-in functions accordingly.
2006-12-20 17:19:16 -07:00
Brian
83ca3ff384 added _mesa_print_parameter_list() 2006-12-20 17:17:38 -07:00
Brian
2cc7dba718 New IR_COND node for evaluating conditional expressions (for if/while/for). 2006-12-20 12:41:59 -07:00
Brian
79a340bc15 use cast wrappers for sanity checking 2006-12-20 09:57:56 -07:00
Brian
f2923613a4 code re-org 2006-12-20 09:56:44 -07:00
Brian
d881a9c136 Minor clean-ups, reformatting, comment changes. 2006-12-20 09:31:07 -07:00
Brian
9e4bae9cca Fix shader object reference counting and hash table deallocation. 2006-12-20 09:27:42 -07:00
Brian
65a18442e5 Clean-up and re-org of the main GLSL object types.
Use the gl_shader struct as it should be.
Renamed gl_linked_program to gl_shader_program.
Store both shaders and programs in the same hash table and use the Type field
to distinguish them.
2006-12-19 18:46:56 -07:00
Brian
0bf5dbe002 Overhaul of GLSL API functions, dispatching, etc. 2006-12-19 18:02:41 -07:00
Brian
5b01c5e9d2 Overhaul of GLSL API functions, dispatching, etc. 2006-12-19 18:02:03 -07:00
Brian
46b06bdb26 Massive re-org of GLSL-related API functions.
Added new GLSL functions to struct dd_function_table.
main/shaders.c calls GLSL functions through the dd_function_table.
shader/shader_api.c implements the API functions.
Other assorted changes, fixes everywhere else.
2006-12-19 17:59:32 -07:00
Dave Airlie
e3358dea66 Merge branch 'nouveau-import' 2006-12-20 09:30:32 +11:00
Brian
2e76f0a846 check for null Parameters ptr in _mesa_clone_program() 2006-12-19 09:52:07 -07:00
Brian
af1d46b68a lots of clean-up and re-org 2006-12-19 08:59:51 -07:00
Brian
bb8f7627f7 additional error checking 2006-12-19 08:59:36 -07:00
Brian
8473ae475f new error msg 2006-12-19 08:59:19 -07:00
Brian
194bc5afbd rewrite +=, -= etc for floats 2006-12-19 08:58:56 -07:00
Brian
8e20c417d4 Implement array indexing of simple vec2/3/4 types. A bit of a hack for now... 2006-12-18 17:54:58 -07:00
Brian
d22079217c Added instruction counter to catch infinite loops (temporary). 2006-12-18 16:22:27 -07:00
Brian
b50280e95f Check for inst->CondUpdate, print .C suffix. 2006-12-18 16:21:58 -07:00
Brian
fbb71da2b9 Generate IR code for for/while loops, break and continue statements. 2006-12-18 14:45:26 -07:00
Brian
1aee657b0f Implement if-conditionals and while loops, added temporary resolve-branches function in linker. 2006-12-18 10:05:24 -07:00
Brian
34ae99d604 GLSL API functions. 2006-12-18 08:28:54 -07:00
Brian
ad2519ac6b Use _mesa_free_linked_program_data() 2006-12-18 08:28:06 -07:00
Brian
962a9f2f9d comments 2006-12-18 08:25:23 -07:00
Nian Wu
ead0f46d5f Merge branch 'crestline' into crestline-qa 2006-12-17 10:49:43 -08:00
Ben Skeggs
53d40646bd Don't build passthrough shader on <NV40 2006-12-17 03:38:21 +00:00
Brian
0031ea7d85 fix comment, handle NOP 2006-12-16 12:52:55 -07:00
Brian
f7159552ae Initial code for conditional constructs. 2006-12-16 12:52:19 -07:00
Brian
3a2815370d print BRA instructions 2006-12-16 12:51:34 -07:00
Brian
3e1f4bc15b added cases for BRA, NOP 2006-12-16 12:51:12 -07:00
Brian
b456413d76 cases for NOP, BRA 2006-12-16 12:50:51 -07:00
Brian
b497a0cb7c Don't update span->array->z[] values from SLANG_FRAGMENT_FIXED_FRAGDEPTH.
This restores the behaviour of Mesa 6.5.1, fixing a regression in 6.5.2.
See bug 9345.  Revisit someday...
2006-12-16 11:17:41 -07:00
Brian
6ec4a03b9f initial release notes for 6.5.3 2006-12-16 11:09:14 -07:00
Brian
6d982e53ee don't allow fog when using a fragment shader (bug 9346) 2006-12-16 11:07:00 -07:00
Ben Skeggs
de947e8a5b Get nv10_swtcl.c working enough for glxgears on NV40. 2006-12-16 12:32:11 +00:00
Brian
a4be104887 start implementing relational operators 2006-12-15 17:05:53 -07:00
Brian
cb7ccc4b14 start rewriting the matrix/vector functions 2006-12-15 16:47:42 -07:00
Brian
f167d0e7d5 added assertion to catch use of too many temporaries 2006-12-15 15:37:32 -07:00
Brian
fa8059a89c fix double-printing of comment info 2006-12-15 15:36:29 -07:00
Brian
9b00fa9ac2 code movement 2006-12-15 15:36:09 -07:00
Brian
bfc02dd30f Lots of assorted changes.
Implement assignment/move for types larger than 4 floats.
Fix codegen bug for "return expr" in inlined functions.
More clean-up of storage allocation code (slang_resolve_storage).
2006-12-15 15:35:57 -07:00
Brian
6579245800 redo mat4 addition, mat4 constructor from vec4s 2006-12-15 15:32:11 -07:00
Gary Wong
24a495fd77 Fix copy-and-paste mistake in comment ("scaling" should read "translation").
Before _mesa_Translatef().
2006-12-15 17:18:36 -05:00
Ben Skeggs
c340dd7d84 NV1x/2x hw_func stubs. 2006-12-15 21:02:23 +00:00
Brian
4b4632f94c vertex/fragment program field changes 2006-12-15 10:10:23 -07:00
Brian
d6aff512fe varying var changes 2006-12-15 10:10:01 -07:00
Brian
464b9f4f6c varying var changes 2006-12-15 10:09:49 -07:00
Brian
9abf73b8cc varying changes 2006-12-15 10:09:33 -07:00
Brian
a7e252026d updated includes 2006-12-15 10:09:12 -07:00
Brian
60a7200c0d updated includes 2006-12-15 10:08:59 -07:00
Brian
89f88058b9 use MAX_VARYING 2006-12-15 10:08:24 -07:00
Brian
e3b2668865 use MAX_VARYING 2006-12-15 10:08:15 -07:00
Brian
a7a582296b more debug output 2006-12-15 10:08:02 -07:00
Brian
a90046f109 Lots of assorted changes for new GLSL compiler backend.
New datatypes, constants, variables.
2006-12-15 10:07:26 -07:00
Brian
becb393d42 Use extfuncs.h helper. Added command line options for loading
vertex/fragment shaders from files.
2006-12-15 09:31:14 -07:00
Brian
e55b771a1e simple extension function wrangler 2006-12-15 09:30:31 -07:00
Brian
39adc30250 change/add/rm several filenames 2006-12-15 08:55:49 -07:00
Brian
c968d3d410 Renamed s_nvfragprog.[ch] to s_fragprog.[ch] 2006-12-15 08:50:02 -07:00
Brian
b78fb7abaf Renamed s_nvfragprog.[ch] to s_fragprog.[ch], program_instruction.h to prog_instruction.h 2006-12-15 08:49:27 -07:00
Brian
6232438acb remove unneeded includes 2006-12-14 15:54:01 -07:00
Brian
885afd59ec remove unneeded includes 2006-12-14 15:53:49 -07:00
Brian
2c1f975852 remove unneded includes 2006-12-14 15:50:34 -07:00
Brian
901c1bb402 remove some unneeded includes 2006-12-14 15:49:09 -07:00
Brian
0831ef5038 include prog_print.h 2006-12-14 15:47:54 -07:00
Brian
cc6a141dc1 Remove some moved extern decls. 2006-12-14 15:47:34 -07:00
Brian
464b82b1e6 Move some code from prog_print.c to prog_instruction.c 2006-12-14 15:47:08 -07:00
Brian
0ae7404835 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2006-12-14 15:20:15 -07:00
Brian
865f88afc0 Renamed from s_nvfragprog.[ch] 2006-12-14 15:14:14 -07:00
Brian
49f82803cc Updated includes. 2006-12-14 15:13:06 -07:00
Brian
60417b646d chmod a-x 2006-12-14 15:03:33 -07:00
Brian
57d9531cd6 Updated includes. 2006-12-14 15:03:04 -07:00
Brian
c0551f0a46 Updated includes. 2006-12-14 15:02:37 -07:00
Brian
a7a89e362b Updated #includes after splitting program.h 2006-12-14 15:02:19 -07:00
Brian
0560d81ce9 Move many functions into new files. 2006-12-14 15:01:28 -07:00
Brian
00cdc0a472 Split the program.[ch] files into several new files. 2006-12-14 15:01:06 -07:00
Brian
5cc1292508 Replace __extension__ with LONGSTRING. 2006-12-14 14:27:05 -07:00
Brian
200736ebd8 Modify _mesa_strdup() so it handles NULL correctly. 2006-12-14 13:59:53 -07:00
Brian
cc0c8b2248 Updates for new linker (merged varying/uniform vars). 2006-12-14 13:59:25 -07:00
Brian
ef264c2971 Assorted fix-ups for the new linker.
Disable some of the excessive debug output.
2006-12-14 13:58:57 -07:00
Brian
d4f7e4cc01 The new linker actually does a few things right now:
The varying vars used by the vertex and fragment shader are merged so they
agree.
Similarly, uniforms are merged (along with constants, etc).
The vertex/fragment program instructions are then cloned and rewritten
with the newly resolved uniform/varying locations.
2006-12-14 13:58:32 -07:00
Brian
b2a3a8554a New functions for cloning programs and parameter lists. 2006-12-14 13:56:58 -07:00
Brian
e7e4181361 Remove include of s_arbshader.h 2006-12-14 09:51:54 -07:00
Brian
b56a5261fe Check in a long-misplaced spec update. 2006-12-14 09:38:06 -07:00
Michel Dänzer
fde908444a Fix copy-and-paste-o of my e-mail address. 2006-12-14 12:57:59 +01:00
Michel Dänzer
e0c9361a7c Avoid failing assertion in intel_miptree_set_image_offset() with cube maps.
Cube maps still aren't working quite correctly though.
2006-12-14 12:47:44 +01:00
Michel Dänzer
81855f22cd Fix some corner cases in i945_miptree_layout_2d().
Based on a patch from Keith Whitwell, with some further fixes.
2006-12-14 12:42:51 +01:00
Michel Dänzer
3416ef303a Share code to lay out >= 945 style 2D mipmaps between i915tex and i965 drivers.
Use the i965 version as it has some fixes over the i915tex version.
2006-12-14 12:39:38 +01:00
Michel Dänzer
cc1afed671 intel_finalize_mipmap_tree: Add more conditions for rebuilding mipmap trees.
These are taken from the i965 driver and fix corruption of some mipmap levels
under some circumsances with 945 chipsets at least.

Also flush the batchbuffer after copying data between trees, or some apps fail
an assertion elsewhere.
2006-12-14 11:04:10 +01:00
Michel Dänzer
5f8a3e586f intel_batchbuffer_flush: Don't assert cliprects when lock is not held.
This is a legitimate situation when copying texture data between mipmap trees.
2006-12-14 11:01:39 +01:00
Michel Dänzer
4cb09df015 intelTexSubimage: Fix last parameter for intel_miptree_image_map(). 2006-12-14 11:01:38 +01:00
Michel Dänzer
9c09259b8b _mesa_swizzle_ubyte_image: Only use single swizzle_copy call when strides match.
This fixes texture data corruption with glTexSubimage (and probably glTexImage
under some circumstances) with the texstore swizzle path.
2006-12-14 11:01:38 +01:00
Michel Dänzer
78a6e05439 mipmap_limits: Fix display of current texture filtering mode. 2006-12-14 11:01:38 +01:00
Ben Skeggs
99878298da Improve SwapBuffers a bit. 2006-12-14 04:34:38 +00:00
Ben Skeggs
c95557f48b 0x4497 doesn't have NV30_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE 2006-12-14 04:12:05 +00:00
Ben Skeggs
15c7e8896b Some more voodoo to get 3D going with a minimal initial context. 2006-12-14 03:24:57 +00:00
Brian
2a9950dcb3 Remove unneeded -I directories (3Dlabs headers). 2006-12-13 19:20:45 -07:00
Roland Scheidegger
2956a0c8a8 submit vertex weights to make World of Warcraft maybe happy (bug 8250)
submit the vertex weights to hw, which will enable broken vertex programs
errorneously using them to work. Note however that this will only work
if glWeight is used, there is no code in mesa at all to deal with weight
vertex array (glWeightPointerARB).
2006-12-14 00:34:44 +01:00
Brian
2cbfbcd972 Obsolete. 2006-12-13 15:38:07 -07:00
Brian
33ae886bbd Remove unused 3Dlabs code. 2006-12-13 15:36:26 -07:00
Brian
aed4f2cc2c Remove unused 3Dlabs code. 2006-12-13 15:36:00 -07:00
Brian
05dab5eaa2 Checkpoint GLSL compiler work. Add new sources, remove obsolete. 2006-12-13 15:34:10 -07:00
Brian
1fbb1c8d78 Obsolete. 2006-12-13 15:33:41 -07:00
Brian
a5011d9753 Not needed. 2006-12-13 15:33:09 -07:00
Brian
8dcfcad7a2 Move all the code for computing ctx->_TriangleCaps into state.c.
ctx->_TriangleCaps should probably go away altogether someday...
2006-12-13 15:31:14 -07:00
Brian
cefc983bec Retire old GLSL shader code. 2006-12-13 15:06:28 -07:00
Brian
12ef1fbefc Checkpoint for GLSL compiler changes.
In brief:
Check for enabled fragment program by looking at ctx->FragmentProgram._Current.
New code for varying variables.
2006-12-13 15:05:23 -07:00
Brian
a328e469d3 Checkpoint work for new GLSL compiler back-end.
Among changes:
Remove ctx->FragmentProgram._Active
Remove _UseTexEnvProgram
Move _MaintainTnlProgram, _MaintainTexEnvProgram, _TexEnvProgram and
_TnlProgram fields.
Remove/disable old GLSL interpreter code.
2006-12-13 14:58:13 -07:00
Brian
fe1d01cb39 Checkpoint of work for new GLSL compiler back-end. Lots of assorted changes. 2006-12-13 14:54:47 -07:00
Brian
8627bf1452 Rewrite/simplify most built-in functions to use updated set of __asm instructions. 2006-12-13 14:49:41 -07:00
Nian Wu
77b862a849 Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline 2006-12-13 13:49:00 -08:00
Brian
aff8e204d2 Checkpoint new GLSL compiler back-end to produce fp/vp-style assembly instructions. 2006-12-13 14:48:36 -07:00
Zou Nan hai
ed7fbad206 Fix bug #93, i965 driver not thread safe.
I am not confident of it is 100% thread safe now.
  bufmgr_fake.c need a total rewrite later
(cherry picked from 606632ca27558ee1335be2f4a5906f2baa240a6a commit)
2006-12-13 13:29:37 -08:00
Zou Nan hai
4720cd0050 fix bug #99.
prim_count overflow when there is more than 1 cliprect
(cherry picked from 84b958d66fe7d3fe03ed12b493e3f3197f656531 commit)
2006-12-13 13:29:20 -08:00
Michel Dänzer
c9795c6ca2 minstall: Pass correct destination file path to $RM regardless of source path.
(cherry picked from 26626c0052 commit)
2006-12-13 13:26:09 -08:00
Michel Dänzer
bce82efe1f minstall: Always remove destination file before (re-)creating it.
This avoids issues with overwriting files that are being used.
(cherry picked from d71a5647a3 commit)
2006-12-13 13:25:42 -08:00
Zou Nan hai
aeda4c589a ARB_occlusion_query support 2006-12-13 13:25:12 -08:00
Zou Nan hai
696fe3f52e if (tex width < 4), mipmap calculation will be out of range 2006-12-13 13:24:35 -08:00
Brian
6c305c0831 Remove the xdemo.c program from PROGS since it doesn't work with GLX/DRI. 2006-12-13 08:57:06 -07:00
Brian
73eee2402e Use XDisplayName() when reporting errors (bug 8079). 2006-12-13 08:30:26 -07:00
Zou Nan hai
c34d026eb0 Fix bug #93 2006-12-13 15:27:17 +08:00
George Sapountzis
5b35132b41 Bug 7260: mach64 texture memory mng cleanup
mach64 uses its own set of texture memory management routines which are buggy,
running a second DRI client kills the first one. This patch ports mach64 code
to the stock dri texture managment code.
2006-12-12 12:51:37 +02:00
George Sapountzis
c180678d92 Bug 7861: mach64 with render acceleration should restore texture state
RENDER acceleration uses texturing, thus when RENDER acceleration is enabled,
the mach64 DRI driver should restore texture state when acquiring the DRI lock.
2006-12-12 12:51:33 +02:00
George Sapountzis
eed1a6de4b Bug 7790: Polygons incorrectly clipped by mach64 driver
un-break strict-aliasing rules
2006-12-12 12:51:27 +02:00
Zou Nan hai
de90bbd0b7 fix for bug #99 2006-12-12 15:00:27 +08:00
Eric Anholt
d214138910 Merge branch 'origin' into crestline 2006-12-11 10:50:25 -08:00
Michel Dänzer
26626c0052 minstall: Pass correct destination file path to $RM regardless of source path. 2006-12-11 17:45:06 +01:00
Michel Dänzer
d71a5647a3 minstall: Always remove destination file before (re-)creating it.
This avoids issues with overwriting files that are being used.
2006-12-11 17:36:35 +01:00
Wang Zhenyu
89433fef0d ARB_occlusion_query support 2006-12-11 00:01:56 -08:00
Wang Zhenyu
b4d9c0048f if (tex width < 4), mipmap calculation will be out of range 2006-12-11 00:00:51 -08:00
Eric Anholt
9a94dae4c2 Avoid branch instructions while in single program flow mode.
There is an errata for Broadwater that threads don't have the instruction/loop
mask stacks initialized on thread spawn.  In single program flow mode, those
stacks are not writable, so we can't initialize them.  However, they do get
read during ELSE and ENDIF instructions.  So, instead, replace branch
instructions in single program flow mode with predicated jumps (ADD to the ip
register), avoiding use of the more complicated branch instructions that may
fail.  This is also a minor optimization as no ENDIF equivalent is necessary.
2006-12-10 12:24:51 -08:00
Eric Anholt
183abbcd6b Connect INTEL_DEBUG=sync up to cmd/batch ioctls. 2006-12-10 12:24:46 -08:00
Wang Zhenyu
0536268267 adding pci id of Crestline 2006-12-10 12:24:40 -08:00
Eric Anholt
d7b24fec24 i965: Fix a crash with wine by not allocating >1MB on the stack. 2006-12-09 22:35:07 -08:00
Patrice Mandin
aadcf1a9ff Update spot light params also for nv20 and nv30 2006-12-08 18:56:51 +00:00
Patrice Mandin
5c80270b91 grr, always check twice before commit 2006-12-08 16:40:34 +00:00
Patrice Mandin
65c54a685a Resend spot light parameters when part of it changes 2006-12-08 16:39:12 +00:00
Ben Skeggs
c04c74bc5d Skeletal extension handling across chipsets. 2006-12-08 14:12:47 +00:00
Ben Skeggs
fe91d00e33 NV_44 uses nv30InitStateFuncs too 2006-12-08 12:36:26 +00:00
Ben Skeggs
046ece3a2d state cache is automagically flushed on a normal BEGIN_RING_SIZE 2006-12-08 11:51:50 +00:00
Ben Skeggs
e62b2f9c2e Implement a simple nv30Clear, and make sure we get a nouveau_renderbuffer
for the depth buffer and not a Mesa renderbuffer adaptor
2006-12-08 11:45:39 +00:00
Xiang, Haihao
f79360858d fix bug#9237 2006-12-08 17:05:14 +08:00
Xiang, Haihao
5449f5a975 fix bug#9045 2006-12-08 17:00:59 +08:00
Ben Skeggs
bda66ac426 oops, typo 2006-12-08 07:27:39 +00:00
Ben Skeggs
011377622f Create visuals for modes the ddx provides 2006-12-08 07:15:43 +00:00
Ben Skeggs
1d6f13986c oops, we don't want this by default just yet... 2006-12-08 03:04:10 +00:00
Ben Skeggs
4cfb762c3e Some work on buffer handling, most likely not entirely correct and
incomplete. But, it works well enough that windows can be
    moved/resized.
2006-12-08 03:01:33 +00:00
Michel Dänzer
7a10d66590 i915tex: Recalculate viewport related hardware state in intelWindowMoved().
This fixes vertically displaced rendering with some apps like Google Earth.

Simplify other parts of the function somewhat.
2006-12-07 11:03:48 +01:00
Michel Dänzer
94136651c3 Make git ignore Emacs backup files. 2006-12-06 18:39:05 +01:00
Brian
fcc54b5d34 Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa 2006-12-06 08:20:57 -07:00
Brian
7f82674a7e Updated with new mesa-commit list. 2006-12-06 08:20:03 -07:00
Michel Dänzer
75e4cfd997 Make git ignore some more generated files. 2006-12-06 15:14:43 +01:00
Michel Dänzer
b46e359f58 glxinfo: When direct rendering is not enabled, print some hints.
If indirect rendering is forced, say how. Otherwise, suggest setting
LIBGL_DEBUG=verbose.

Inspired by http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=379323 .
2006-12-06 14:54:43 +01:00
Michel Dänzer
14f92636b0 Make git ignore files only generated at build time. 2006-12-06 14:17:56 +01:00
Michel Dänzer
7daf301046 Re-generate options.h with Swedish translations. 2006-12-06 14:06:52 +01:00
Daniel Nylander
e8c5e0f0b4 Swedish translation of driconf options. 2006-12-06 13:21:02 +01:00
Brian
eb9033c723 Replaced by .html file. 2006-12-05 16:36:35 -07:00
Brian
4a1976b224 Replaced by .html files. 2006-12-05 16:36:12 -07:00
Brian
492e406fec Removed/obsolete. 2006-12-05 16:27:31 -07:00
Brian
d43ccf61c2 New git repository info, links. 2006-12-05 16:14:39 -07:00
Brian
464e36391f New info about Mesa's git repository. 2006-12-05 16:14:14 -07:00
Thierry Reding
6eeb18fc68 Build the i915tex DRI module on the i386 and amd64 architectures. 2006-12-05 00:45:42 +00:00
Thierry Reding
01c90575b4 Add missing changelog entry and bug closer. 2006-12-04 07:23:14 +00:00
Stephane Marchesin
3867bc9780 Fix the swtcl module. 2006-12-03 11:46:18 +00:00
Patrice Mandin
f95fe81fff Remove duplicate nv10 tcl defines 2006-12-03 10:08:04 +00:00
Stephane Marchesin
d88d895e5a Merge the pciid work. Use lock step versioning with the drm. 2006-12-03 09:08:26 +00:00
Ben Skeggs
b4dcb99cbc Fix a copy+paste'o that caused some *very* strange bugs.. 2006-12-03 02:01:49 +00:00
Thierry Reding
32e9cb0275 Update to new upstream release (6.5.2). 2006-12-02 23:46:07 +00:00
Brian Paul
45b211f9d4 version bump 2006-12-02 19:26:01 +00:00
Brian Paul
4f3ff14a06 md5 sums 2006-12-02 19:22:16 +00:00
Brian Paul
eb667b979b remove directfbgl.h file 2006-12-02 18:20:53 +00:00
Brian Paul
b98c1e4a4b remove bogus link 2006-12-02 18:18:55 +00:00
Brian Paul
f10acf8b78 6.5.2 release updates 2006-12-02 18:18:41 +00:00
Gary Wong
50a81669ba Add i915tex and i965. 2006-12-02 02:20:05 +00:00
Gary Wong
7a43a6b4ff Structure CopyPixels similarly to i915 do_texture_copypixels, to ease future unification. 2006-12-02 01:13:06 +00:00
Claudio Ciccani
e99d6746ed Be aware that the surface storage can change between locks. 2006-12-01 20:58:26 +00:00
Claudio Ciccani
73fdecca9f Remove DirectFBGL header from Mesa bacause since 1.0.0 DirectFB installs its own header.
Updated to the current DirectFBGL interface (i.e. added GetProcAddress()).
2006-12-01 14:12:05 +00:00
Thomas Hellström
682393944c Fix an infinite loop error that may occur when many contexts are bound
to the same drawable in a multithreading environment. This one slipped out
of the texman merge.
2006-12-01 12:41:43 +00:00
Claudio Ciccani
40dc5902d3 Fixed compilation errors/warnings.
Duplicate destination surface to avoid saving/restoring the rendering state during each Clear.
2006-12-01 11:42:58 +00:00
Thierry Reding
017bade93c Update to latest upstream release candidate (6.5.2 RC3). 2006-12-01 00:16:33 +00:00
Sean D'Epagnier
10cbd089ae the following improvements to linux-fbdev:
1. updated makefiles to build libOSMesa as well as libGL

these are improvements to fbdev-glut
1. mouse cursor will timeout and be invisible if not being used
2. do not restore colormaps to truecolor targets, this causes problems at
   exit on my g450
3. fixed a crash when cleaning up from failure by munmaping what had not
   yet been mmaped
4. Resize event handling is improved, the resize function is not invoked
   from a signal handler now.
5. The main loop can detect if it is running very fast (greater than 2khz)
6. keyboard up and special up events are generated from stdin input mode
   and if it is also not redrawing, it sleeps
7. corrections in escape sequences for function keys for stdin input
2006-11-30 03:25:28 +00:00
Roland Scheidegger
21cf414489 fix mixed conventional / generic vertex arrays which caused a wrong array order leading to very bogus rendering (for instance WoW intro screen mentioned in #8250). 2006-11-30 00:52:54 +00:00
Roland Scheidegger
e731d8aafa check for target instead of program->Target in _tnl_program_string, avoids segfault if program is NULL 2006-11-29 22:16:16 +00:00
Roland Scheidegger
ac8620f375 fix a bug in the sanity code when outputting vertex progs 2006-11-29 19:18:50 +00:00
Thierry Reding
c9c79e7cae Add manpages to the mesa-utils package. 2006-11-29 18:07:26 +00:00
Roland Scheidegger
5785e328e0 call Driver.ProgramStringNotify if a ati_fragment_shader changes and pick up the change in the r200 driver accordingly. 2006-11-29 16:41:28 +00:00
Eric Anholt
3cd06cf8c5 Add accelerated CopyPixels for non-overlapping, 1:1 blits.
Submitted by Gary Wong <gtw@gnu.org>
2006-11-29 01:16:12 +00:00
Brian Paul
716091a6a0 indent, comments, etc 2006-11-28 15:46:50 +00:00
Dave Airlie
c058f69daa add support to miniglx for updating drawables ..
requires hacks to DRM to remove MASTER from UPDATE_DRAW and ADD_DRAW
2006-11-28 04:50:54 +00:00
Dave Airlie
4a6f47c23b Update miniglx support for new memory manager 2006-11-28 04:50:07 +00:00
Brian Paul
d9a8cc430d comments 2006-11-27 17:48:59 +00:00
Brian Paul
c0815bc01f remove assertions to match i915tex code (bug 8726) 2006-11-27 17:40:07 +00:00
Brian Paul
744c3a367b get rid of meaningless XFree86LOADER test (bug 9144) 2006-11-27 16:50:10 +00:00
Brian Paul
3e6ef125f0 replace check for XFree86LOADER and IN_MODULE with XFree86Server (bug 9144) 2006-11-27 16:33:43 +00:00
Ben Skeggs
98818f159b - Add InitInstruction to hw shader backend, and remove SetUnusedSource.
- NV30FP/NV40VP: Clear any fields before we OR new values into them
- NV40VP: It seems that it might be possible to write a result reg at the
    same time a temp is written. In InitInstruction, initialise OUT_DEST to
    OUT_DEST_TEMP so result regs don't get clobbered by default.
2006-11-27 01:57:37 +00:00
Ben Skeggs
2f411b0a8b Fix RSQ emulation 2006-11-26 13:18:41 +00:00
Ben Skeggs
6ff3d2577e Fix progs/fp/tri-xpd
Fragprog consts are inlined, so make sure we update *all* occurances of a
    param :)
2006-11-26 10:19:44 +00:00
Tilman Sauerbeck
85365e6aa4 Bug #6044: actually delete the texture object in mgaDeleteTexture 2006-11-26 09:39:21 +00:00
Thierry Reding
777d41dd07 Mark the latest changelog entries as NMUs. 2006-11-26 02:40:01 +00:00
Thierry Reding
6238c30913 Revert maintainer and uploaders fields. Integrate latest NMUs into the
changelog and be a little more verbose in the debian/rules rewrite
changelog entries.
2006-11-26 02:38:31 +00:00
Ben Skeggs
9c9e6abbf8 Incomplete shader stuff, should mostly work for NV40. Other cards, not so
much..
2006-11-25 09:58:35 +00:00
Ben Skeggs
902b26a0d6 fix scissor 2006-11-25 06:02:10 +00:00
Patrice Mandin
2911551727 nv10,nv20,nv30: send correct values for spot light direction X,Y,Z and
cutoff parameter C
2006-11-24 23:34:03 +00:00
Patrice Mandin
78e5f414cb nv10: rename spot light coefs like nv20,nv30 2006-11-24 23:23:18 +00:00
Brian Paul
16e7ca9d72 call slang_variable_construct() inside slang_variable_scope_grow() 2006-11-24 19:21:42 +00:00
Brian Paul
e49d06e619 new slang_variable_scope_grow() function 2006-11-24 19:01:14 +00:00
Brian Paul
d4c4bdfa1e const correctness, clean-ups 2006-11-23 16:56:55 +00:00
Brian Paul
f6ed86a1a5 indent 2006-11-23 16:52:18 +00:00
Brian Paul
308b85f29f fix several program-related bugs (bug 9136) 2006-11-23 15:58:30 +00:00
Keith Whitwell
897b9c5cb2 Haihao Xiang's edgeflag patch. 2006-11-23 10:13:22 +00:00
Keith Whitwell
c4649208f0 Haihao Xiang's pointsize initialization patch. 2006-11-23 10:12:05 +00:00
Stephane Marchesin
0faf23c26a That was really stupid. 2006-11-23 09:21:44 +00:00
Dave Airlie
50b3f5654e realign some of the i830 code from the i915 2006-11-23 01:12:41 +00:00
Brian Paul
17e97ea869 fix typo 2006-11-23 00:44:14 +00:00
Brian Paul
ba02b07c75 fix indirect glMap* bugs 2006-11-23 00:43:23 +00:00
Brian Paul
14c427573e s/ource/source/ 2006-11-23 00:42:25 +00:00
Brian Paul
d426c13e46 move comments 2006-11-23 00:41:44 +00:00
Brian Paul
dfc98c0bec indent 2006-11-23 00:38:50 +00:00
Dave Airlie
d98e1f3761 fixup draw/depth region handling in i830 along lines of i915 2006-11-23 00:09:16 +00:00
Brian Paul
6ab6518735 clean-up, comments 2006-11-23 00:09:00 +00:00
Brian Paul
0cb0a04eca indent 2006-11-22 23:58:47 +00:00
Roland Scheidegger
46e454863e decrease the current vertex count by 1 if an uneven number of vertices is copied by _tnl_copy_vertices. Otherwise, since in this case it will copy an extra vertex to avoid problems with vertex order in the new buffer, one triangle will be drawn twice. This fixes bug #9062. 2006-11-22 22:07:35 +00:00
Brian Paul
40c7cb7e17 const correctness 2006-11-22 21:59:28 +00:00
Brian Paul
98ea0a3f1f new comments 2006-11-22 21:49:14 +00:00
Brian Paul
f9f4625367 clean-up, comments 2006-11-22 21:34:47 +00:00
Brian Paul
958a8af3b0 reindent 2006-11-22 21:34:30 +00:00
Brian Paul
982ceb6773 fix comments 2006-11-22 21:33:44 +00:00
Ben Skeggs
7398748add Some missing state init 2006-11-22 20:15:56 +00:00
Thierry Reding
db164ab514 Update to latest upstream release candidate. 2006-11-22 19:50:34 +00:00
Thierry Reding
c72ef17731 Add libOSMesa16 and libOSMesa32 entries to libosmesa6.shlibs so packages
linking against those libraries will get the correct dependencies.
2006-11-22 19:47:56 +00:00
Roland Scheidegger
22b74ff2b7 fix the gl version test 2006-11-22 19:37:21 +00:00
Ian Romanick
b0d8b13777 Add tdfx updates to release notes. 2006-11-22 19:05:20 +00:00
Roland Scheidegger
7f9afedeb5 remove unneded call to _tnl_invalidate_state() in _tnl_need_projected_coords(). Connected to bug #9103, though that bug got fixed without this change too. 2006-11-22 17:54:31 +00:00
Brian Paul
9540c9c04f GLX protocol fixes for glMap* functions (bug 8899) 2006-11-22 16:01:48 +00:00
Keith Whitwell
96c0a6de25 Prune incoming state to the atoms of interest. Hopefully this will
prevent driver-initiated statechanges in the middle of
DrawElements/DrawArrays from disturbing this code.
2006-11-22 15:27:58 +00:00
Keith Whitwell
b72fbcbe63 Another fix 2006-11-22 13:53:21 +00:00
Keith Whitwell
96228d952d Set _NEW_LIGHT when materials are present in display lists also. 2006-11-22 09:35:19 +00:00
Keith Whitwell
c8238aa0ff Move setting of _NEW_LIGHT to only occur when materials are present. 2006-11-22 09:34:55 +00:00
Roland Scheidegger
49a3ea8110 fix segfault with ATI_fs when trying to use a not enabled texture unit (bug #9110). 2006-11-21 23:37:21 +00:00
Patrice Mandin
3e4a5c0642 Enable nv10 tcl state 2006-11-21 21:44:16 +00:00
Patrice Mandin
ac09b567a8 nv10,nv20: nvX0ShadeModel static function 2006-11-21 21:15:49 +00:00
Patrice Mandin
677666eb70 nv10,nv20,nv30: color light components renamed from a,b,c to r,g,b 2006-11-21 21:11:58 +00:00
Patrice Mandin
81ae0bd249 ah, correct revision now 2006-11-21 20:38:14 +00:00
Patrice Mandin
4ed78e20a4 update from renouveau 2006-11-21 20:29:09 +00:00
Patrice Mandin
b5e800068b nv10: update state 2006-11-21 19:56:15 +00:00
Brian Paul
8f008056b2 list header files in sources files (Dan Nicholson) 2006-11-21 16:04:22 +00:00
Keith Whitwell
f332da515c blend, logicop changes for intelEmitCopyBlit backported to i915 2006-11-21 14:43:30 +00:00
Ben Skeggs
a75440bcf0 nouveauCreateDmaObject 2006-11-21 14:03:06 +00:00
Keith Whitwell
b1c102d37b More fixes, glean seems to run now. 2006-11-21 13:22:34 +00:00
Stephane Marchesin
fb65450704 Remaining state cache changes 2006-11-21 13:07:48 +00:00
Stephane Marchesin
0ea45b1ad8 Add the state caching mechanism. It seems to work, from what I can see. 2006-11-21 12:43:16 +00:00
Alan Hourihane
33d2835182 Don't define as const's to avoid compiler optimization & warning. 2006-11-21 10:59:31 +00:00
Keith Whitwell
64920ed10a Fix more typos. 2006-11-21 10:50:01 +00:00
Keith Whitwell
46c04525d2 Gary Wong's patches for CopyPixels Logiop (enable) and Blend
(disallow).  Slightly cleaned to disallow on all blend states for code
consiseness and turn a table lookup into a function to match other
code in the driver.
2006-11-21 10:43:16 +00:00
Keith Whitwell
f58ec215c5 Gary Wong's fix for 64 bit cleanness of vertex program inputs bitmask. 2006-11-21 10:16:37 +00:00
Keith Whitwell
d6f89107ba Commit Gary Wong & Keith Packard's changes for bug 8867 -- adjust code
after repositioning of INDEX value in BRW_ATTRIB enum.
2006-11-21 10:11:02 +00:00
Sean D'Epagnier
0570fcfd93 Added correct include files to files,
No longer modify cmap if the device is truecolor (messes up dual monitors
	with vt switching)
2006-11-21 09:35:49 +00:00
Sean D'Epagnier
0337e5635f glTexCoord3dv was not using third coordinate 2006-11-21 08:48:44 +00:00
Jeremy Kolb
a20cf73053 More state. 2006-11-21 02:47:13 +00:00
Rune Petersen
25e495d605 Disable fragment program debug messages. 2006-11-20 19:57:10 +00:00
Jeremy Kolb
afb49fef90 Add state initialization to context creation. 2006-11-20 17:25:54 +00:00
Brian Paul
b24320bb30 added new 'sources' file to tarball (might not get used though) 2006-11-20 17:09:04 +00:00
Keith Whitwell
479aca6bf1 Fix typos that meant vbos were never unmapped 2006-11-20 15:15:24 +00:00
Brian Paul
7cc5522f86 fix glPopAttrib/color material bug #9091 2006-11-20 15:14:35 +00:00
Jouk Jansen
d2fc1c8384 Committing in .
Solve small definition problem for OpenVMS

 Modified Files:
 	Mesa/src/mesa/shader/descrip.mms
2006-11-20 14:04:04 +00:00
Keith Whitwell
dd60eaa6d9 Don't perform dangling attribute check on POS attribute. It can't by
definition dangle (every vertex has a position).  However
save->currentsz isn't properly maintained for this attribute, as there
is no current position value to track.  Based on patch from Haihao Xiang.
2006-11-20 11:49:58 +00:00
Keith Whitwell
87f602dd82 Don't perform dangling attribute check on POS attribute. It can't by
definition dangle (every vertex has a position).  However
save->currentsz isn't properly maintained for this attribute, as there
is no current position value to track.  Reported by Haihao Xiang.
2006-11-20 11:45:34 +00:00
Stephane Marchesin
50c85daf02 Cleanup the swtcl code. 2006-11-19 23:47:24 +00:00
Stephane Marchesin
ac208c95cd Use NONINC_METHOD for vertex data. 2006-11-19 23:39:16 +00:00
Stephane Marchesin
4165a10972 More work on the swtcl 2006-11-19 23:16:29 +00:00
Stephane Marchesin
fe2e6100ec More fifo debug fixes 2006-11-19 22:16:54 +00:00
Stephane Marchesin
a8d34992ea Oops. 2006-11-19 21:51:28 +00:00
Stephane Marchesin
3613eba085 Fix the fifo debugging feature. 2006-11-19 21:29:41 +00:00
Stephane Marchesin
327e2c9220 New swtcl implementation. It's simpler than the previous one (doesn't use
templates) and it is probably faster as well
2006-11-19 20:18:45 +00:00
Ben Skeggs
a7139168d2 Don't bother touching lighting stuff if shaders are in use 2006-11-19 16:05:59 +00:00
Ben Skeggs
80a0ce37df Fix nv30LineWidth, hw expects a ubyte. 2006-11-19 15:52:18 +00:00
Ben Skeggs
a2a747704d Avoid sharing subchannels with the ddx until context switching is done
properly..
2006-11-19 15:46:31 +00:00
Ben Skeggs
b3fd1556f9 More FIFO fixes. 2006-11-19 15:45:36 +00:00
Ben Skeggs
08a0946fcc Stupid bug.. 2006-11-19 14:10:54 +00:00
Ben Skeggs
82d0fd26d4 poke the correct FIFO regs 2006-11-19 12:00:59 +00:00
Thierry Reding
8dbee7867f Use the new upstream minstall utility to install files and directories. Using
/usr/bin/install would result in a symlink's target being copied instead of
the symlink.
2006-11-18 21:28:07 +00:00
Thierry Reding
f403108f5f Fix typo in changelog. libdrm2-dev is not a package. 2006-11-18 21:22:52 +00:00
Thierry Reding
223a97f92a Bump build-dependency on libdrm-dev (>= 2.2.0). 2006-11-18 21:21:18 +00:00
Thierry Reding
bb44a8ae1f Update to latest upstream release candidate.
Update patches.
2006-11-18 17:59:25 +00:00
Thierry Reding
b5a5062176 Target the mesa package at experimental until etch is released. 2006-11-18 17:50:44 +00:00
Brian Paul
2164cf7730 move fix-up code into new slang_fixup_save() function 2006-11-18 17:45:01 +00:00
Brian Paul
4d4373bb0f delete shader objects when destroying shared context state 2006-11-18 17:44:28 +00:00
Brian Paul
a89e063149 comments 2006-11-18 17:23:30 +00:00
Brian Paul
61068ba46b reindent 2006-11-18 17:22:44 +00:00
Brian Paul
63c119f771 additional fixes for mipmap building (Greg McGarragh) 2006-11-18 16:58:14 +00:00
Brian Paul
c478f0d25b name mangling update/fix 2006-11-18 16:44:30 +00:00
Brian Paul
bdb1c3882f need to specify Xlibs with APP_LIB_DEPS 2006-11-18 16:43:13 +00:00
Brian Paul
1e04ff1741 fix mgl name mangling problem 2006-11-18 16:40:09 +00:00
Stephane Marchesin
ae9c633a21 More state functions 2006-11-18 00:36:22 +00:00
Stephane Marchesin
e722e3480f Add nv20_state.c ; hook nv10_state.c into the build ; do the renaming
required by the renouveau changes.
2006-11-18 00:19:22 +00:00
Stephane Marchesin
8532b6e0a5 Small unneeded nv03 fix 2006-11-17 22:11:13 +00:00
Ben Skeggs
08020927e8 Use RENDERINPUTS macros to access render_inputs_bitset 2006-11-17 21:58:02 +00:00
Rune Petersen
6c9cc81601 fragment.position support
World position is calculated in the vertex shader and passed to the
fragment shader via an unused texcoord.
2006-11-17 19:12:42 +00:00
Rune Petersen
0f614df797 r300_select_vertex_shader4:
Makes the vertex program output from the fragment input.
It makes the driver capable of catching output-input mismatches safely. Primarily
based on some of Aapo Tahkola's code.
2006-11-17 19:08:05 +00:00
Brian Paul
08d64dfbf6 reindent, doxygen-style comments 2006-11-17 19:06:32 +00:00
Michal Krol
83f52ffc52 Comment and indent the atom functions. 2006-11-17 18:55:34 +00:00
Brian Paul
c15f6a991d gluBuild2DMipmaps() fixes 2006-11-17 15:59:19 +00:00
Brian Paul
8f28453987 fix some gluBuild2DMipmap bugs (Greg McGarragh) 2006-11-17 15:57:31 +00:00
Brian Paul
a4806c994e add STATE_INTERNAL_DRIVER, etc (Rune Petersen) 2006-11-17 15:23:32 +00:00
Ben Skeggs
10172f7485 Adapt FIFO code to deal with cases where the base GET/PUT value isn't 0. 2006-11-17 04:50:37 +00:00
Ben Skeggs
9daf0812a1 jkolb pointed out that face can also be FRONT_AND_BACK. Added stencil funcs 2006-11-16 23:43:39 +00:00
Brian Paul
7984c70070 revert prev check-in 2006-11-16 23:34:02 +00:00
Ben Skeggs
0da68e2e6e Add nv30InitStateFuncs 2006-11-16 23:24:20 +00:00
Brian Paul
523f5cfeb5 Add a lot of const qualifiers for const-correctness.
New comments, misc clean-ups.
2006-11-16 22:31:34 +00:00
Brian Paul
1f0c86ee35 reindent 2006-11-16 21:58:35 +00:00
Brian Paul
01a5a9afd8 remove unused imesa local var to silence warnings 2006-11-16 21:40:54 +00:00
Brian Paul
3dedeaa055 Initial implementation work for CAL, RET, and BRA instructions for fragment
programs.
2006-11-16 21:28:35 +00:00
Brian Paul
fa941e4267 disable yesterday's _mesa_add_named_constant() change for now 2006-11-16 20:59:11 +00:00
Brian Paul
cba90c17ad fix bug 9046 2006-11-16 20:58:26 +00:00
Patrice Mandin
9021df2d2a nv10 state copy/pasted from nv30 state 2006-11-16 19:50:56 +00:00
Brian Paul
f7436f4c8a regenerate from gl.h 2006-11-16 16:13:55 +00:00
Brian Paul
bb69d3af36 remove obsolete GL_MESA_trace stuff 2006-11-16 16:13:43 +00:00
Brian Paul
7438a78cf4 use LONGSTRING to silence warning 2006-11-16 16:12:10 +00:00
Brian Paul
ebe4c893f8 fix glDrawPixels(GL_COLOR_INDEX, GL_BITMAP) bug 9044 2006-11-16 14:44:23 +00:00
Keith Whitwell
b979479721 Make sure vbo's are mapped before accessing their contents in
api_arrayelt.c.  Reported by Haihao Xiang.
2006-11-16 02:33:38 +00:00
Brian Paul
82eeb62a31 reindent, clean-up 2006-11-16 00:58:44 +00:00
Brian Paul
0c6723aee5 Add a size parameter to _mesa_add_unnamed_constant() and
_mesa_add_named_constant() to indicate vector size (1, 2, 3 or 4).
Always 4 for now...
2006-11-15 23:38:02 +00:00
Brian Paul
699a33ea77 Add new _mesa_lookup_parameter_constant() to search for a GLfloat4 constant
in a parameter list.
Use it in _mesa_add_named_constant() and _mesa_add_unnamed_constant() to
avoid duplication of identical constants.
2006-11-15 23:19:52 +00:00
Brian Paul
408e01b939 reindent, add some comments 2006-11-15 21:52:20 +00:00
Brian Paul
4a12160e8f reindent 2006-11-15 21:41:24 +00:00
Brian Paul
adbbf94fa4 indent, comments 2006-11-15 21:39:57 +00:00
Brian Paul
2d376a61f0 s/int/GLboolean/ 2006-11-15 21:39:32 +00:00
Brian Paul
82a9ba92b4 improved error mesages 2006-11-15 21:38:26 +00:00
Brian Paul
7c279f4dd7 fix casts to silence warnings 2006-11-15 21:35:06 +00:00
Brian Paul
11a54c38f7 #define LONGSTRING __extension__ in imports.h and use it to silence gcc
warnings about long string literals.
2006-11-15 19:54:25 +00:00
Brian Paul
12e710c850 Comments for operations. 2006-11-15 18:56:48 +00:00
Jerome Glisse
8f6a50a49c Remove use of GetBufferSize (depreciated). 2006-11-15 17:45:05 +00:00
Brian Paul
222930461f more bug fixes 2006-11-15 14:59:05 +00:00
Keith Whitwell
6cc5a82206 Make sure RENDER_FINISH is called on the zero pixel case. Reported by
Haihao Xiang.
2006-11-14 14:22:43 +00:00
Ian Romanick
efa91b9a8f Enable GLX_SGI_make_current_read for tdfx.
Implement GLX_SGI_make_current_read for tdfx.  Remove annoying debug
printf in tdfxSwapBuffers.  Updated a comment in drirenderbuffer.h to
note that the tdfx driver uses a flag that was previously only used by
s3v.

This code was tested with glxgears, wincopy, and manywin.
2006-11-14 00:10:34 +00:00
Ian Romanick
0b69e4837e Clean-up compiler warnings. 2006-11-13 23:34:35 +00:00
Ian Romanick
37ce9b30e9 Implement GL_ARB_occlusion_query.
Based on the old code that implemented GL_HP_occlusion_test, implement
GL_ARB_occlusion_query.  This code passes progs/demo/arbocclude.
2006-11-13 22:54:43 +00:00
Ian Romanick
ce526de6ff tdfxDDWriteDepthPixels can be called with mask == NULL.
Via depth_test_pixels (swrast/s_depth.c), tdfxDDWriteDepthPixels can
be called with mask == NULL.  Test for this condition in the places
where mask might be dereference.  This matches the behavior of several
other functions in this file with a 'const GLubyte mask[]' parameter.
2006-11-13 22:51:11 +00:00
Ian Romanick
038bd400e2 Major clean-up of tdfxDDGetString. 2006-11-13 21:53:04 +00:00
Ian Romanick
7fbe6a5c51 Eliminate use of deprecated GetBufferSize interface. 2006-11-13 21:21:40 +00:00
Ian Romanick
e7ad10587a Fix "3D driver claims to not support visual ..." warnings.
In 16-bit color modes the 3D driver was erroneously creating fbconfigs
with 16-bits of accumulation alpha.  Since the 2D driver always
generates modes with zero bits of alpha, the lists of fbconfigs did
not match and warnings were generated by libGL.
2006-11-13 20:54:51 +00:00
Ben Skeggs
47695f0689 Fix segfault in nouveauCalcViewport 2006-11-13 16:01:03 +00:00
Jeremy Kolb
d5d00cf8c9 Add include guard. 2006-11-12 18:18:02 +00:00
Ben Skeggs
2af374716f Some more nouveau_screen.c setup, not sure how correct it is yet though.. 2006-11-12 08:38:44 +00:00
Ben Skeggs
b8e05366e1 We need nmesa->driFd and friends setup before we call nouveauFifoInit 2006-11-12 02:06:30 +00:00
Ben Skeggs
6464787bfd Dont call exit() from the DRI driver, with AIGLX this is particularly nasty 2006-11-12 02:05:40 +00:00
Ben Skeggs
d037c84c33 fix typo 2006-11-11 20:00:29 +00:00
Stephane Marchesin
f65a4b8a8d Some nouveau_screen work for darktama 2006-11-11 18:25:00 +00:00
Jeremy Kolb
4f61fd18b2 Fill in nv30PointSize and nv30Viewport. 2006-11-11 16:48:14 +00:00
Stephane Marchesin
994ea9556f Fix the texture init function name 2006-11-11 12:01:48 +00:00
Stephane Marchesin
0850289d8c Add the GL_LIGHING enable 2006-11-11 11:25:08 +00:00
Stephane Marchesin
f82bc9110b Some work on nv30 state, heavily based on jkolb's work 2006-11-11 00:00:45 +00:00
Ian Romanick
466d4a1dd0 Added information about added GLX_SGI_make_current_read support 2006-11-10 21:11:39 +00:00
Ian Romanick
ded5517bd5 Bump driver date. 2006-11-10 21:06:23 +00:00
Ian Romanick
5c38472152 Refactor savageXMesaSet{Back,Front}ClipRects.
Refactor savageXMesaSetBackClipRects and savageXMesaSetFrontClipRects
into a single new routine called savageXMesaSetClipRects.  This allows
a few cleanups in the code.
2006-11-10 18:57:30 +00:00
Ian Romanick
6e2c952537 Enable GLX_SGI_make_current_read.
Eliminate use of deprecated GetBufferSize interface.  Keep framebuffer
state associated with the read-drawable and the draw-drawable up to
date.

Tested with progs/demos/wincopy.
2006-11-10 18:47:22 +00:00
Brian Paul
0a3a1c6ae9 fix -noprefix option for Solaris (bug 7722) 2006-11-10 12:47:56 +00:00
Thierry Reding
50faa32ce3 Move the code to choose which configurations to build to a separate script in
order to keep debian/rules cleaner.
2006-11-10 09:00:00 +00:00
Thierry Reding
b6caed527c Also add release notes of version 6.5.1 and the release notes index. 2006-11-10 08:50:35 +00:00
Thierry Reding
d5ef77353b Build Mesa utility programs (glxdemo, glxgears, glxheads, glxinfo) together
with the DRI/GLX-enabled libGL. Don't build the utilities on CPU-optimized
configurations.
2006-11-10 08:40:03 +00:00
Dave Airlie
2862316309 Fix up texture compression at least Get and TexImage, not too sure about
how to fix SubTexImage with compressed textures
2006-11-10 00:32:35 +00:00
Ian Romanick
d7815f5913 Implement GLX_SGI_make_current_read
Discontinue use of the old GetBuffeSize interface.  Track both the
current read-drawable and the current draw-drawable.  After moving
some context state to via_rednerbuffer, GLX_SGI_make_current_read can
be enabled.

The extension works, but the wincopy test prodcues a black window for
the destination window.  After messing around with the window and
looking at the code, I believe the problem is in the handling of
buffer swap requests on a drawable that isn't the current draw-drawable.
2006-11-10 00:14:30 +00:00
Ian Romanick
3ce4adaa8f Remove unnecessary setting of GetBufferSize to NULL. 2006-11-09 22:28:09 +00:00
Adam Jackson
c6f1d4c3a0 Fix some && (logical) that should clearly have been & (bitwise). 2006-11-09 20:47:22 +00:00
Dave Airlie
4bb39f5899 remove drm stuff from libGL, this is now in libdrm 2.3.0 2006-11-08 22:25:52 +00:00
Stephane Marchesin
20802a7b69 Commit a small nitpick 2006-11-07 17:37:22 +00:00
Roland Scheidegger
0ddd50c8ae fix vp lockups due to incorrectly set up / emitted attrib inputs. 2006-11-05 23:13:19 +00:00
Roland Scheidegger
aee30f3f9d fix using VERT_ATTRIB_WEIGHT instead of VERT_BIT_WEIGHT when assigning vp inputs. 2006-11-05 22:21:11 +00:00
Brian Paul
831d13bc42 reindent 2006-11-05 15:30:41 +00:00
Stephane Marchesin
e2b4d9b317 Architect the DRI :
- make use of the autogenerated nouveau_reg.h file
- add object creation to the DRI
- some work on screen and context creation
2006-11-05 13:46:48 +00:00
Jerome Glisse
e330a69ee5 Add sin instruction to fragment program.
There is a bug somewhere in fragment program.
tri-cos and tri-sin show the bug. Also we
should not emit multiple time the same constant.
for sin,cos,lit have to fix that.
2006-11-05 00:47:27 +00:00
Jerome Glisse
0056ea5417 Add cos instruction and remove left over debug. 2006-11-04 23:50:27 +00:00
Brian Paul
120584a1e6 Fix for glGetVertexAttribfvNV, bug 8883 2006-11-04 17:31:45 +00:00
Brian Paul
adf3a64b03 fix error msg 2006-11-04 17:31:21 +00:00
Brian Paul
590b557b10 fix for glGetVertexAttribfvARB, bug 8883 2006-11-04 17:28:38 +00:00
Brian Paul
64d952c92c #define _glapi_Dispatch _mglapi_Dispatch when USE_MGL_NAMESPACE is set. 2006-11-03 23:43:14 +00:00
Brian Paul
c9365b7ca4 Fix _mesa_IsProgram() and _mesa_IsShader() 2006-11-03 23:32:30 +00:00
Brian Paul
2fbaddfa69 check for USE_MGL_NAMESPACE 2006-11-03 23:28:36 +00:00
Brian Paul
d2f80777e8 implement _mesa_GetShaderiv() 2006-11-03 22:23:47 +00:00
Brian Paul
3bef600024 implement _mesa_GetProgramiv() 2006-11-03 22:15:43 +00:00
Brian Paul
7e6701cef1 Simplify GET_CURRENT_LINKED_PROGRAM() macro and calling code. 2006-11-03 21:51:58 +00:00
Brian Paul
2659ee9dfb Use inlined uniform() helper function in all the glUniform*() function to
reduce duplicated code.
Finish up _program_ReadUniform() for non-float types.
Implement _mesa_GetUniformivARB().
Simplify the _program_WriteUniform() function a bit.
2006-11-03 21:30:16 +00:00
Brian Paul
c64a062918 plug in 2.0, 2.1 functions 2006-11-03 20:25:44 +00:00
Brian Paul
39cc8e8a06 Added OpenGL 2.1 entrypoints. 2006-11-03 20:20:28 +00:00
Brian Paul
33748aaad8 Set DO_DEBUG=0 2006-11-03 19:55:01 +00:00
Brian Paul
3c1ce571ed only enabled memcpy timing if DO_DEBUG=1 2006-11-03 19:54:40 +00:00
Brian Paul
d00ef005fe replace CONFIG_H with MESA_CONFIG_H_INCLUDED 2006-11-03 18:35:52 +00:00
Brian Paul
9e4a06a482 added 1.3/1.4 function mangling 2006-11-03 18:29:39 +00:00
Brian Paul
07bec141ac assorted updates for 6.5.2 2006-11-03 17:43:20 +00:00
Brian Paul
bdb251bcbf Added OpenGL 2.1 glUniformMatrix* functions.
Refactor the _mesa_UniformMatrix() functions to use a helper function.
Implement GetUniformfv function (might need more work someday).
2006-11-03 17:29:31 +00:00
Brian Paul
e90e827824 reformat comments in Doxygen style 2006-11-03 17:18:05 +00:00
Brian Paul
4d5744e66d reindent 2006-11-03 16:50:22 +00:00
Brian Paul
61fd687c74 Minor changes to get ready for OpenGL 2.1. 2006-11-03 15:18:17 +00:00
Keith Whitwell
188a4db49c Fix compiler warnings.
Add missing code for translating non-GLuint elements.
2006-11-03 13:04:08 +00:00
Roland Scheidegger
029d18cd3d enable generic arrays for r200 hw vertex programs by assigning unused color and texture inputs to them. Not widely tested yet. This should eliminate all fallbacks due to vertex programs, except writes to back facing colors, or when exceeding a hw limit (12 temps, 12 attribs etc.). 2006-11-03 12:48:18 +00:00
Roland Scheidegger
c3da1501b8 need to call bind_arrays() in vbo_exec_DrawRangeElements. 2006-11-03 12:33:29 +00:00
Roland Scheidegger
25b2e50229 remove remaining traces of r200FlushVertices... 2006-11-03 12:30:55 +00:00
Roland Scheidegger
e7b71f6919 remove setting some driver funcs explicitly to NULL, as they are no longer set up later. Thix fixes a segfault in _mesa_Bitmap(). 2006-11-03 02:07:34 +00:00
Brian Paul
4b43054c4b added fsligght 2006-11-03 00:16:12 +00:00
Brian Paul
24ea2c2cef yet another deriviative of the fplight.c demo for OpenGL 2.0 shading language 2006-11-03 00:04:06 +00:00
Brian Paul
83a5c2bf63 Update gl_API.xml with OpenGL 2.0 functions, regenerate derived files. 2006-11-02 23:58:27 +00:00
Brian Paul
7a28779b2e minor change in _mesa_ResizeBuffersMESA() 2006-11-02 23:56:08 +00:00
Brian Paul
fc69beecb6 include utils.h to silence warning 2006-11-02 23:43:22 +00:00
Brian Paul
ce55bbe9ef s/GLuint/int/ to silence warnings 2006-11-02 23:41:37 +00:00
Brian Paul
7941474a21 casting, type changes to silence warnings 2006-11-02 23:40:24 +00:00
Brian Paul
15193e78c9 s/GLint/GLuint/ to fix sign warnings 2006-11-02 23:34:02 +00:00
Brian Paul
071db86299 fix typo, silence warnings 2006-11-02 23:29:03 +00:00
Brian Paul
dd0830228b Fix GL_EXT_packed_depth_stencil crash, but shadowtex still broken 2006-11-02 23:16:18 +00:00
Brian Paul
05267501af comment about a valgrind error 2006-11-02 22:56:27 +00:00
Brian Paul
71f71c2c8a s/GLchan/GLubyte/ in debug code 2006-11-02 22:55:59 +00:00
Brian Paul
959571f835 init SecondaryRasterColor 2006-11-02 22:54:18 +00:00
Brian Paul
e441427f40 Added GL_STENCIL_BACK_WRITEMASK 2006-11-02 22:53:32 +00:00
Brian Paul
af864bb0da check for shader extensions for OpenGL 2.0 2006-11-02 22:40:43 +00:00
Brian Paul
e812081253 Undo some of yesterday's ATI_separate_stencil changes. The ATI extension
doesn't exactly match OpenGL 2.0.
2006-11-02 22:39:29 +00:00
Brian Paul
d78f65cd6c Fix fragment program fog problems found with Glean.
1. add PROGRAM_CONSTANT to switch() in src_vector().
2. use _mesa_append_fog_code() to handle fog options in i915ProgramStringNotify().
3. Re-enable some vertex attribute emit code that was previously disabled in i915ValidateFragmentProgram().
2006-11-02 21:43:06 +00:00
Brian Paul
67a101759e Call _mesa_problem() from i915_program_error() so we get a nice error message. 2006-11-02 21:39:20 +00:00
Thierry Reding
336beba81b Update Debian changelog. 2006-11-02 21:20:33 +00:00
Thierry Reding
5d23a7905c Add code to provide a mesa-utils package since those utilities are shipped in
the MesaDemos tarball.
2006-11-02 21:05:29 +00:00
Jerome Glisse
a93f4a7310 Move r300 to new fbo interface based on Keith Whithwell.
Tested with progs/redbook/varray.
2006-11-02 20:44:03 +00:00
Jerome Glisse
b6c2a6a0f2 Add requested size to r300RefillCurrentDmaRegion.
This way we no longuer have the fixed RADEON_BUFFER_SIZE.
Anyway function calling AllocDmaRegion should check if this
succeed and fail gracefuly if not (see bug 8348).
2006-11-02 20:02:26 +00:00
Brian Paul
94249ca333 remove GetBufferSize = NULL; assignment 2006-11-02 19:23:41 +00:00
Brian Paul
df5edb21f8 Fixes Glean vertex/fragment test failures. Those tests never called
glViewport so the viewport was 0 by 0 pixels.
2006-11-02 19:18:09 +00:00
Brian Paul
c97bc619d6 remove GetBufferSize code 2006-11-02 19:16:08 +00:00
Keith Whitwell
7e9c3684ef Fix type-conversion of incoming vertices.
Fix mis-application of increment to pointer variable.
2006-11-02 19:11:16 +00:00
Keith Whitwell
01e238e5d5 Fix typo in last commit 2006-11-02 19:02:04 +00:00
Brian Paul
6f676f4871 always load frag prog state params for now (see comments) 2006-11-02 18:35:19 +00:00
Brian Paul
51b115d5ae remove unneeded extern declaration of lockMutex 2006-11-02 18:15:26 +00:00
Brian Paul
29ed894633 bump driver date 2006-11-02 18:13:40 +00:00
Keith Whitwell
301acdf34a Similarly, fill in missing input slots in the vertex-array +
NV_vertex_program path.
2006-11-02 18:02:17 +00:00
Keith Whitwell
5a652f5957 Fill in missing input slots in the vertex-array + no-vertex-program
path.
2006-11-02 18:00:43 +00:00
Brian Paul
7a9c7c1133 Use RGBA_LOGICOP_ENABLED() instead of ctx->Color._LogicOpEnabled since we often
need to check for this condition before the later field has been computed.
Fixes logicop bug #8860.
2006-11-02 17:51:04 +00:00
Brian Paul
abc73d9cba new RGBA_LOGICOP_ENABLED() macro 2006-11-02 17:49:47 +00:00
Brian Paul
12fe1b3a58 s/_mesa_IsProgram2/_mesa_IsProgram/ 2006-11-02 16:21:04 +00:00
Brian Paul
f49c0d0dfb Rename _mesa_IsProgram() to _mesa_IsProgramARB() to avoid collision with the
OpenGL 2.0 function of the same name.
2006-11-02 16:20:29 +00:00
Brian Paul
f961d394e3 OpenGL 2.0 entrypoints 2006-11-02 16:11:31 +00:00
Brian Paul
e71e4c9e47 run indent on the code 2006-11-02 16:09:10 +00:00
Brian Paul
036173e0d8 test OpenGL 2.0 stencil funcs 2006-11-02 15:47:30 +00:00
Alan Hourihane
6d104cb932 merge current trunk into vbo branch 2006-11-02 12:02:13 +00:00
Keith Whitwell
18d52f96bb Fix typo in display list attrib binding. 2006-11-02 11:40:56 +00:00
Keith Whitwell
9827dc8bea Respect array->Normalized flag.
Import edgeflag attribute to array of GLbooleans as expected by
downstream code.
2006-11-02 09:48:30 +00:00
Keith Whitwell
c22f8a7787 missing file 2006-11-02 08:37:17 +00:00
Brian Paul
467c773f79 Add ATI_separate_stencil and use it in preference to EXT_stencil_two_side
since the former is what's used for OpenGL 2.0.
2006-11-02 00:41:40 +00:00
Brian Paul
faba58c447 update _mesa_select_tex_image() and _mesa_get_tex_image() 2006-11-01 22:28:54 +00:00
Brian Paul
92c99bc51b update comments 2006-11-01 20:48:00 +00:00
Brian Paul
a5676795cf Remove x/y/width/height parameters from Clear functions. 2006-11-01 19:35:22 +00:00
Brian Paul
533e5a73ee comment-out unused var 2006-11-01 19:26:18 +00:00
Brian Paul
6a92324cf0 remove unused vars 2006-11-01 19:25:43 +00:00
Brian Paul
d972c86876 fix _mesa_select_tex_image() calls 2006-11-01 19:25:19 +00:00
Michal Krol
7d08e3a117 Write back gl_FragDepth to span->array->z. 2006-11-01 19:02:27 +00:00
Brian Paul
9669804fe4 Don't use the x/y/width/height params passed to Clear(). Get them
after locking.  Next: remove the params altogether.
2006-11-01 18:51:43 +00:00
Brian Paul
26b5904d70 disable debug printf 2006-11-01 18:49:41 +00:00
Brian Paul
4db0c89d25 disable debug printfs 2006-11-01 18:48:28 +00:00
Jerome Glisse
361d137587 Correct a little bug, radeon->glCtx is a pointer. 2006-11-01 16:21:14 +00:00
Jerome Glisse
8d87196c12 Remove deprecated GetBufferSize interface. 2006-11-01 16:18:08 +00:00
Brian Paul
351feae130 recent updates/fixes 2006-11-01 15:24:47 +00:00
Keith Whitwell
57f09b6e5e fix compiler warnings 2006-11-01 15:23:50 +00:00
Keith Whitwell
8665b828fe Patch from <haihao.xiang@intel.com> -- pass program string
notification callback through to tnl/ module, fixes glean crash.
2006-11-01 15:20:23 +00:00
Keith Whitwell
48e6fff3a9 merge the (rest of) texmem branch 2006-11-01 14:26:10 +00:00
Keith Whitwell
5ac93f8621 Merge texmem-0-3-branch. 2006-11-01 14:21:57 +00:00
Jerome Glisse
232a489b41 Add LIT instruction to fragment program. 2006-11-01 12:03:36 +00:00
Keith Whitwell
6b9e31f3eb Import texmem i915 driver to its new location as i915tex. 2006-11-01 12:03:11 +00:00
Jerome Glisse
3c6e99ce95 Add CMPH instruction to fragprog
CMPH a0, a1, a2 -> if a2 > 0.5 return a1 else return a0
Guessed by examinating LIT instruction handling of FGLRX.
2006-11-01 11:58:16 +00:00
Keith Whitwell
fd60b2d536 Patch from <haihao.xiang@intel.com> -- pass program string
notification callback through to tnl/ module, fixes glean crash.
2006-11-01 09:35:26 +00:00
Thierry Reding
143dfcc904 Make mesa-common-dev depend on libx11-dev to provide Xlib.h and Xutil.h needed
by the GLX headers.
2006-11-01 07:54:40 +00:00
Jeremy Kolb
1ebe921228 Added OUT_RING* debugging macros. Compile with NOUVEAU_RING_DEBUG to use. 2006-11-01 02:48:34 +00:00
Jeremy Kolb
2d2d617dbc Oops. Forgot to check in the context change. 2006-11-01 02:45:12 +00:00
Jeremy Kolb
2581ba7f1e Fix compile errors. Add vblank_seq to nouveau_context. 2006-11-01 02:44:27 +00:00
Brian Paul
d106195ad2 change DEBUG_FRAG conditions 2006-11-01 00:14:04 +00:00
Brian Paul
e6f47d1855 fix some bugs in interpolate_specular() 2006-11-01 00:13:16 +00:00
Brian Paul
90fcf6ccc3 Added a few new ctx->Const. fields for shader-related limits. 2006-11-01 00:12:41 +00:00
Brian Paul
5050b565de make use of Parameters->StateFlags in _swrast_update_fragment_program() 2006-10-31 19:53:38 +00:00
Brian Paul
ef987aa1d7 minor clean-ups, simplifications and new comments 2006-10-31 19:53:03 +00:00
Brian Paul
7e75f51b27 fix MINGW32 problems 2006-10-31 19:14:27 +00:00
Brian Paul
4e9e0aff79 We need to call _mesa_load_state_parameters() whenever a fragment program
is enabled and we've changed any GL state that might be referenced by a
fragment program (such as state.fog.params).  Do this during swrast
validation, not in _swrast_exec_fragment_program().
2006-10-31 16:02:56 +00:00
Brian Paul
72f49657e8 signal _NEW_LIGHT in _tnl_copy_to_current() 2006-10-31 16:01:11 +00:00
Brian Paul
ecd1743a0c In TEX instructions, use precomputed lambda only if using fragment.texcoord[k]
to sample texture[k].  Use zero otherwise.  Not foolproof, but a good
compromise.
2006-10-31 14:29:01 +00:00
Keith Whitwell
35ee4affc5 switch remaining drivers over to vbo 2006-10-31 12:12:15 +00:00
Keith Whitwell
851d15ef3a disable vtxfmt_a code, switch over to vbo 2006-10-31 12:11:56 +00:00
Keith Whitwell
80c88304fc remove vtxfmt code, switch over to vbo 2006-10-31 12:11:10 +00:00
Keith Whitwell
70dd0126bd pickup structs from vbo.h 2006-10-31 11:40:31 +00:00
Keith Whitwell
1f07439fe8 move public structure definitions to vbo.h 2006-10-31 11:39:57 +00:00
Keith Whitwell
f2eb6434ab cleanup code, compiles with vbo changes 2006-10-31 11:28:45 +00:00
Brian Paul
256c96136c For TEX instructions use lambda=0. When sampling from texture unit K we
were using the partial derivatives of texcoord[K] but the coordinate used
for texture sampling may be something totally different (and texcoord[K]
might not be a real texture coord at all).  Net result was a bogus LOD is
sometimes used, often resulting in using the smallest mipmap level (a
constant color).
Just use zero for now (undef LAMBDA_ZERO to override).
Plus, some additional debug code.
2006-10-31 01:22:38 +00:00
Ian Romanick
b14bae8466 Fix bug #8799.
Properly resize bith the drawable and the readable in mgaUpdateRects.
Eliminate the use of the deprecated GetBufferSize interface.  Bump
driver date.
2006-10-30 23:44:54 +00:00
Ian Romanick
86a465412d Refactor mgaXMesaSetFrontClipRects and mgaXMesaSetBackClipRects.
Combine mgaXMesaSetFrontClipRects and mgaXMesaSetBackClipRects into a
single new function called mga_set_cliprects.  This enables a small
refactor in mgaDDDrawBuffer.
2006-10-30 22:17:39 +00:00
Ian Romanick
5af5260f3c Get DRI drawable from framebuffer object.
In the software rasterization fallbacks, get the __DRIdrawablePrivate
pointer from the driRenderbuffer that is passed in.  This eliminates
the need for the mesa_drawable pointer in MGA context structure.

This partially fixes bug #8799.  wincopy no longer produces a black
window for the destination window, but it does produce incorrect
results if the destination window is resized.
2006-10-30 22:07:00 +00:00
Keith Whitwell
a1a8a2c024 oops, get.c is autogenerated 2006-10-30 20:29:13 +00:00
Keith Whitwell
fd2756006a Move edgeflag into the VERT_ATTRIB_SEVEN slot. This means that our
NV_vertex_program implementation has slightly incorrect aliasing
behaviour.  I think this is reasonable given the simplification and
the fact that the mainstream ARB_vp continues to have the correct
behaviour.
2006-10-30 20:16:35 +00:00
Keith Whitwell
e8abd098b3 Remove wakeup functions. This code is intended to be active all the
time.
2006-10-30 17:12:05 +00:00
Keith Whitwell
48f5deab94 switch several dri drivers over 2006-10-30 16:56:56 +00:00
Keith Whitwell
99efde461d better handling of current attributes. Trivial dlist and varray tests work 2006-10-30 16:44:13 +00:00
Keith Whitwell
efef291dc7 checkpoint - remove dead files, otherwise untested 2006-10-30 16:43:39 +00:00
Brian Paul
075fae5200 code tweaks, remove old comments 2006-10-30 00:22:28 +00:00
Brian Paul
0f8405365f fix _mesa_problem() text 2006-10-30 00:13:31 +00:00
Brian Paul
a23e668d40 Move gl_vertex_program_machine struct out of mtypes.h and put into nvvertexec.h.
Massage nvvertexec.c code to work more like s_nvfragprog.c - another step
toward unifying vertex/fragment program execution.
2006-10-30 00:12:05 +00:00
Brian Paul
0781339b39 remove debug code 2006-10-30 00:07:22 +00:00
Brian Paul
e998c34647 Rather than always allocating 100 instructions, put instructions into a
temporary buffer, then copy into a malloc'd array of the correct size.
According to Glean texCombine, we never need more than 21 instructions.
2006-10-29 21:17:18 +00:00
Brian Paul
ebcedd2d89 New _mesa_exec_vertex_state_program() function. Start of some re-org. 2006-10-29 18:33:14 +00:00
Brian Paul
abb1430c79 fix wrong inequality 2006-10-29 18:14:00 +00:00
Brian Paul
d6272e0617 Change _mesa_init_instruction() to initialize an array of instructions. 2006-10-29 18:03:16 +00:00
Brian Paul
efd95c1084 Program instructions are initialized before parsing so no need to set
Abs, NegateAbs, CondMask and CondSwizzle fields to defaults here.
CondMask was getting mis-set.  Removing the incorrect assignment improves
fragment program speed by 15%.
2006-10-29 17:55:16 +00:00
Keith Whitwell
a3c86828ed Fix compiler warning 2006-10-29 09:54:17 +00:00
Keith Whitwell
0a0fb5e0b3 switch over to vbo module 2006-10-29 09:52:36 +00:00
Keith Whitwell
72b68455eb remove this module 2006-10-29 09:48:36 +00:00
Keith Whitwell
b1f176039a Changes for new vbo-building module.
- Removed all the old immediate, array and display list code.
	- Remove references to the old array_cache module.
	- Added a _tnl_draw_prims() entrypoint.
	- Added a simplified data import facility for converting
non-floating point data as required.

Checkpoint commit - trivial/tri works.
2006-10-29 09:48:15 +00:00
Keith Whitwell
fd12b37dba Checkpoint of new vbo-building code. Currently builds regular arrays
rather than VBO's - VBOs are easy but need to look closer at the
driver interface.  The trivial/tri demo works.
2006-10-29 09:46:11 +00:00
Brian Paul
a90ab5290c Added PROGRAM_CONSTANT to get_register_pointer().
More DEBUG_FRAG code.
2006-10-28 23:10:17 +00:00
Brian Paul
8ed319796f special case END in _mesa_print_instruction() 2006-10-28 23:08:07 +00:00
Brian Paul
f5eea0cc7a Implement _mesa_append_fog_code() for fragment program fog options. 2006-10-28 17:14:47 +00:00
Brian Paul
db5529573f If DEBUG, check that all array indices really do fall in [start,end] in
the DrawRangeElements() call.  Warn the user if that's not true.
2006-10-26 20:54:28 +00:00
Roland Scheidegger
b55a0ab7ab remove code for inserting mvp transform into position-invariant vertex progs and instead use _mesa_insert_mvp_code(). 2006-10-26 12:09:07 +00:00
Brian Paul
fe457474d4 Previously, if a fragment program referenced fragment.fogcoord but the
program didn't use the ARB_fog_linear option, the fragment program's
fragment.fogcoord register wasn't loaded properly.
2006-10-25 23:10:14 +00:00
Roland Scheidegger
e9b923182e change some bogus comments regarding the base e exponential function used for fog in vertex programs. 2006-10-25 12:14:26 +00:00
Thierry Reding
e076cd42f0 Bug #387706 should also be closed because we move libOSMesa to libosmesa6 and
statically link in the software rasterization code.
2006-10-25 00:17:42 +00:00
Roland Scheidegger
fc606f7db9 fix (per-vertex) fog when using ARB_vp by incorporating fog factor computation into the vertex program (not yet fixed for swtnl). Simplify (and correct) the VTX_TCL_OUTPUT_VTXFMT handling when using vertex programs, turns out it's solely driven by the needs of the past-vertex stage of the pipeline, this should fix lockups with ill-specified applications using vertex programs (for instance applications enabling fog but not writing to fog coord output will now get (conformant) undefined results instead of lockups). 2006-10-24 22:37:51 +00:00
Ian Romanick
e4298b9492 Add missing call to glutInit. 2006-10-24 20:50:08 +00:00
Thierry Reding
5bed38974e Close 392715 because we now ship the contents of the three Mesa tarballs in
the original source.
2006-10-24 14:45:18 +00:00
Thierry Reding
35bc4b82ff Since the original tarball is repackaged to include the three upstream
tarballs (MesaDemos, MesaGLUT and MesaLib), remove files that are not supposed
to be there.

Note that when importing initially, some files were not even added to the SVN
repository because SVN ignored them. These were configs/diffs~ and
docs/RELNOTES-6.1~. I removed those from the tarball as well.
2006-10-24 14:33:30 +00:00
Thierry Reding
4e5d870f72 Make libosmesa6-dev binNMU-safe again (mesa-common-dev is Architecture: all). 2006-10-24 14:29:11 +00:00
Brian Paul
6340d6bf22 s/GLchan/GLubyte/ 2006-10-24 13:46:39 +00:00
Brian Paul
59e1f3ddd8 whitespace clean-up 2006-10-24 13:45:08 +00:00
Thierry Reding
83def94db5 Make libgl1-mesa-dev Architecture: all, because all we ship with it is a
symbolic link. Make it binNMU-safe by making it depend on libgl1-mesa-glx and
libgl1-mesa-dri both >= ${Source-Version} instead of exact versions.

Add packages containing debugging symbols for libgl1-mesa-swx11,
libgl1-mesa-glx and libgl1-mesa-dri.
2006-10-24 12:16:16 +00:00
Thierry Reding
9d74c1ef2a -fno-strict-aliasing actually *does* fix #394311 according to the submitter. 2006-10-24 10:31:28 +00:00
Thierry Reding
6023d4bdb5 Build with -fno-strict-aliasing, which should fix bug #394311. 2006-10-24 10:29:21 +00:00
Thierry Reding
5e38f566f2 Provide libgl-dev as alternative to the mesa-common-dev dependency of the
libosmesa6-dev package.
2006-10-23 16:45:00 +00:00
Thierry Reding
b57341a78b Move the glx*.h headers from libgl1-mesa(-swx11)-dev into mesa-common-dev
because both packages provide identical files.
2006-10-23 16:43:41 +00:00
Thierry Reding
910c32c0e9 Install the osmesa.h header in the libosmesa6-dev package where it belongs,
now that all OSMesa libraries have been split off into libosmesa6{,-dev}.

Don't make libosmesa6-dev depend on libgl1-mesa-swx11-dev anymore because it
no longer needs a libGL, only the gl.h header provided by mesa-common-dev.
2006-10-23 16:02:22 +00:00
Thierry Reding
e49456d8d8 Don't force -fPIC everywhere, because it seems only unused on x86 which we
build with assembler optimizations by default, resulting in non-PIC libraries
anyway.
2006-10-23 14:40:10 +00:00
Keith Whitwell
759facb4d8 Emit cliprects in the userspace driver as required, rather than
passing them to the kernel.  This works because all drawing commands
in the 965 driver are emitted with the lock held and the batchbuffer
is always flushed prior to releasing the lock.  This allows multiple
cliprects to be dealt with, without replaying entire batchbuffers and
redundantly re-emitting state.
2006-10-23 08:43:26 +00:00
Thierry Reding
c46becc9b3 Move the libOSMesa shlibs entry from libgl1-mesa-swx11 to libosmesa6 because
that's where libOSMesa is now installed.
2006-10-23 08:30:53 +00:00
Thierry Reding
b6e637106f Add the static libGLw and the corresponding headers to the
libgl1-mesa-swx11-dev package again.
2006-10-23 08:23:27 +00:00
Thierry Reding
787cffe3d0 Always force -fPIC. 2006-10-23 08:22:25 +00:00
Brian Paul
b9786cfaae assorted clean-ups 2006-10-22 23:21:45 +00:00
Brian Paul
49a5a09ada don't save color/z if fragment is killed 2006-10-22 22:58:42 +00:00
Brian Paul
73dd09fdd3 add minstall script to MAIN_FILES (bug 8720) 2006-10-22 22:37:30 +00:00
Brian Paul
a632128ffa minor tweaks good for about 12% faster execution 2006-10-22 22:36:24 +00:00
Brian Paul
ec9bbac7c7 silence used var warnings 2006-10-22 22:25:46 +00:00
Brian Paul
0b26e826bd Color clamping fixes. 2006-10-22 17:18:50 +00:00
Brian Paul
919cd2c3ba move/improve comments, clean up code in a few places 2006-10-21 23:21:35 +00:00
Brian Paul
ed324db249 fix another logic error in computing deferredTexture 2006-10-21 22:56:21 +00:00
Brian Paul
bb19e64d12 For deferredTexture, need to check if the fragment program/shader writes
the fragment Z.
2006-10-21 22:43:15 +00:00
Brian Paul
828d15a6e0 move interpolate_varying() call 2006-10-21 21:14:20 +00:00
Brian Paul
4676b6260f don't use params passed to Clear() 2006-10-21 21:13:40 +00:00
Brian Paul
f614a61905 Move interpolate_texcoords() and interpolate_varying() calls into shade_texture_span().
Added some INLINE hints.
2006-10-21 00:20:16 +00:00
Thierry Reding
9d914e6809 Make sure the install-source.sh script is executable before trying to run it. 2006-10-20 20:56:41 +00:00
Thierry Reding
4e183c66e9 Add comments to patches and enable the previously disabled patches. 2006-10-20 19:41:00 +00:00
Thierry Reding
b1630fcbe8 Add build-dependency on lesstif2-dev needed to build the GLw libraries. 2006-10-20 19:17:34 +00:00
Thierry Reding
cd44f730cc Enable building the GLw libraries. 2006-10-20 19:07:36 +00:00
Thierry Reding
ce5a39559e Install several documents from the docs subdirectory into the mesa-common-dev
package.
2006-10-20 17:51:36 +00:00
Thierry Reding
ccffaef603 Build architecture-specific static libraries where available. 2006-10-20 12:15:29 +00:00
Thierry Reding
ae41f3a3ee Don't make libgl1-mesa-swx11-dev depend on lesstif2-dev anymore because we
don't ship anything related to LessTif in that package.
2006-10-20 12:06:20 +00:00
Thierry Reding
c7e576d6bf No longer install the default build of libOSMesa in the libgl1-mesa-swx11
package, but in the libosmesa6 package.

Modify the 01_fix-makefile patch to not build libOSMesa on stand-alone builds,
so that it is only created when building OSMesa explicitly.

Build libOSMesa with 8 bits per color channel (the default) in dynamic and
static versions separately from the software rasterization libGL with the
software rasterization code linked in statically so that libOSMesa can run in
parallel with any libGL. This should fix the problem Yann Dirson mentioned a
while ago.

Use the install-source.sh script to install the Mesa sources needed for the
mesa-swx11-source package instead of doing it in the debian/rules file itself.
2006-10-20 07:56:11 +00:00
Thierry Reding
f069b2812e Add a set of files to enable an i686 optimized build of the DRI/GLX-enabled
libGL and the DRI drivers. Disabled for now.
2006-10-20 07:47:37 +00:00
Thierry Reding
f20ff6213e Add a shell script to install the Mesa sources for the mesa-swx11-source
package.
2006-10-20 07:45:39 +00:00
Thierry Reding
24ff74bdcb Add configurations to build static versions of the default OSMesa library.
In all Debian-specific configurations, include the Debian defaults
configuration after the Mesa configurations and drop the 'override' for all
variables because it is no longer needed.
2006-10-20 07:43:50 +00:00
Brian Paul
61c89be313 Consolidate some code into shade_texture_span().
Clean up logic for deferred texturing/shading.
2006-10-19 22:27:44 +00:00
Brian Paul
cd5a623386 fixed Fixed/Int bug 2006-10-19 22:26:29 +00:00
Brian Paul
7c76028937 remove temp code 2006-10-19 22:13:31 +00:00
Brian Paul
79b5d3e539 remove some debug/test changes 2006-10-19 20:11:15 +00:00
Brian Paul
464fcd0dd8 New bin/minstall script - a minimal replacement for 'install'.
Correctly handles symlinks so we can get rid of the COPY_LIBS stuff.
2006-10-19 20:09:05 +00:00
Brian Paul
c351858de8 fix problem when CHAN_BITS == 32 (bug 8704), remove unneeded assertion 2006-10-19 14:02:42 +00:00
Michal Krol
a79d4e75c3 Fix nonportable pointer+unsigned arithmetic. Use pointer+int. 2006-10-19 08:07:00 +00:00
Brian Paul
31293910b4 added clamp_colors(), updated assertions 2006-10-18 23:14:02 +00:00
Brian Paul
ff07d6de4c minor re-org, doxygen comments 2006-10-18 22:38:13 +00:00
Brian Paul
fee08575cd Changed install filenames to libGL* and libOSMesa* so things work on Darwin
where GL_LIB_NAME = libGL.dylib but the other library name is libGL.1.dylib
Unlike other platforms, the version number is in the middle of the name,
not at the end.
See bug 8671
2006-10-18 22:05:13 +00:00
Ian Romanick
3beaff1e3c Enable GLX_SGI_make_current_read for radeon.
Added code to track the drawable bound to the context for reading.  In
addition, when a drawable is initially bound (for reading or drawing)
or when the size of the drawable changes, update the size of the
framebuffer object that back the drawable (for software fallbacks).

Deprecate the old GetBufferSize interface.

Bump the driver date.

These changes were tested with wincopy on both direct rendering and
accelerated indirect rendering (AIGLX).
2006-10-18 20:27:11 +00:00
Brian Paul
ec99e716a2 Don't use x/y/w/h params given to Clear(). 2006-10-18 20:03:20 +00:00
Brian Paul
446972bc27 Want to stop passing x/y/width/height to Clear() function.
The coordinates need to be computed after we've got the hw lock.
Code updated to:
1. Ignore all/x/y/width/height/ params passed to Clear func.
2. Pass 0,0,0,0,0 to _swrast_Clear() until they're totally removed.
2006-10-18 20:02:42 +00:00
Brian Paul
ccb64bbb2a Don't pass x/y/width/height to ctx->Driver.Accum().
Compute the region after we've locked (and possibly updated the buffer's size).
Same thing is needed for ctx->Driver.Clear().
2006-10-18 18:35:09 +00:00
Brian Paul
4e4c0bbef7 glDrawPixels, line clipping bug fixes 2006-10-18 18:03:54 +00:00
Brian Paul
a1a0a29a5a Fix broken line clipping.
When both ends of the line were clipped, we were using the new v0 instead
of the original v0 when computing the location of the second vertex. Thus,
the second vertex's position was incorrect.
Thanks to Heath Feather for finding a test case.
2006-10-18 18:02:05 +00:00
Brian Paul
ff893a83f1 Fix a dangerous use of ASSERT in an else-clause not enclosed in braces.
We've been lucky if this hasn't been causing line rendering bugs.
2006-10-18 17:36:57 +00:00
Brian Paul
c3caaa3dd4 Always convert colors to float before running a fragment shader/program. 2006-10-17 22:23:32 +00:00
Brian Paul
32c3243e4d fix fog color bug 2006-10-17 22:22:42 +00:00
Brian Paul
c2074645cd Move struct atifs_machine into s_atifragshader.c
Add support for runtime colorbuffer types.
2006-10-17 21:12:32 +00:00
Brian Paul
e9d7190bb2 Seperate interpolate_colors() and interpolate_specular().
Fix bugs in apply_aa_coverage().
2006-10-17 20:40:22 +00:00
Brian Paul
b88af5b468 apply_aa_coverage() for ubyte/ushort/float 2006-10-17 20:22:53 +00:00
Brian Paul
0c6c8d5f1c new assertions - one of which is currently failing with arbfslight.c 2006-10-17 19:57:25 +00:00
Thierry Reding
230e79916f Merge in the old Debian changelog entries and the old copyright file. 2006-10-17 19:35:35 +00:00
Thierry Reding
9f14b4db35 Use -march in favor of the deprecated -mcpu. 2006-10-17 19:13:27 +00:00
Brian Paul
1c1c7fb361 remove obsolete intelBufferSize(), bump driver date 2006-10-17 18:54:19 +00:00
Brian Paul
42b26f688d Remove get_buffer_size()
Always check window size in XMesaMakeCurrent() in case glViewport is not
called.
2006-10-17 17:51:39 +00:00
Brian Paul
544b94e156 Lots of fixes/changes to select color depth at runtime. 2006-10-17 17:44:43 +00:00
Brian Paul
55e42e5b72 check if ctx->Driver.GetBufferSize==NULL and no-op 2006-10-17 17:43:47 +00:00
Brian Paul
af52ff0c99 include x86-64.h to silence warning 2006-10-17 17:03:21 +00:00
Brian Paul
1e3223c02a Fix CHAN_BITS=32 issues.
Save/restore array->ChanType in case colors are converted.
2006-10-17 17:03:00 +00:00
Brian Paul
8dff54e71d Added -clip option to test glCopyPixels beyond window bounds.
Clear dest window to black before copying.
Use glWindowPos2iARB().
2006-10-16 23:22:44 +00:00
Brian Paul
d40f20aebc Init _UseTexEnvProgram to fix failed assertion in i915_render_start() - this may be temporary 2006-10-16 22:02:33 +00:00
Brian Paul
16345022de Updates to intelWindowMoved():
Only need to call _mesa_resize_framebuffer() when we've detected a window
size change.
Set the drawFb->Initalized flag to GL_TRUE to avoid obsolete
Driver.GetBufferSize/ResizeBuffer calls in the Mesa code.
2006-10-16 21:39:34 +00:00
Ian Romanick
7b1ff32607 Track the currently bound read drawable and make sure its info is up
to date.
2006-10-16 20:59:53 +00:00
Ian Romanick
8c5ae80916 Fix build when DEBUG is defined but DEBUG_MATH is not.
A couple places attempted to call _math_test_all_*_functions when
DEBUG was defined.  These routines only exist when DEBUG_MATH is
defined.
2006-10-16 20:57:09 +00:00
Brian Paul
28081ae6c0 s/X86_SOURCES/ASM_SOURCES/ in ALL_SOURCES to try to fix make depend warnings (bug 8669) 2006-10-16 20:51:50 +00:00
Ian Romanick
6ae157f9e7 Fix bug #8563.
Fixes a GLX protocol problem when binding an indirect rendering context
after a direct rendering context.  In this case, the oldContetTag sent to
the server should be None, but the currectContextTag stored in the direct
rendering context (i.e., -1) was sent instead.
2006-10-16 17:50:19 +00:00
Brian Paul
041d64812e Set _NEW_BUFFERS in _mesa_resize_framebuffer(). This makes sure the swrast
module updates its state (CLIP_BIT) upon resizes.  The driver could do this
instead, but doing it here is safer.
2006-10-16 17:26:30 +00:00
Brian Paul
dc8a0d1936 remove some old code that could cause infinite recursion 2006-10-16 16:39:54 +00:00
Thierry Reding
ec916398e7 Don't install libOSMesa development files in the libgl1-mesa-swx11 package. 2006-10-16 14:43:43 +00:00
Thierry Reding
6befad112e Actually do rename debian-static to debian-swx11+glu-static. 2006-10-16 13:54:24 +00:00
Thierry Reding
55ce23b8db Beautify IEEE floating point patch. 2006-10-16 13:34:57 +00:00
Thierry Reding
1292ec1ecf Fix typo in the filename of the IEEE FP on s390 and m68k patch. 2006-10-16 13:11:51 +00:00
Thierry Reding
65a324062f Add patches extracted from older Debian diffs but not applied yet because it's
not certain yet that they are needed.
2006-10-16 13:05:42 +00:00
Thierry Reding
c9db617e0b Make the debian-static a subclass of debian-swx11+glu-default, because that's
what it actually is. Rename it accordingly and add it to SWX11_GLU_CONFIGS.

Install the libOSMesa.so symlink and the libOSMesa static library in the
libgl1-mesa-swx11-dev package.

Add .shlibs files for the libgl1-mesa-swx11, libgl1-mesa-glx and libglu1-mesa
packages.
2006-10-16 13:04:29 +00:00
Thierry Reding
b43137d0cc Build libGLU by default for swx11+glu configurations but not in the
configurations targetting specific CPU's because it is unlikely to result in
an increase in performance.
2006-10-16 11:53:06 +00:00
Thierry Reding
eeca642778 Add versioned build-dependency on dpkg-dev (>= 1.13.19) to make sure the
binary:Version and source:Version substitution variables can be used.
2006-10-16 11:49:46 +00:00
Thierry Reding
5cef6ca36a Move the detection of architecture-specific configurations to the debian/rules
file.

Add the configs target to debian/rules for checking whether the correct
configurations will be built.
2006-10-16 10:03:32 +00:00
Thierry Reding
be2b518f7b Also build a static version of libGLU. 2006-10-16 09:53:30 +00:00
Thierry Reding
1b0d29afbc Rename the CPU optimization configurations to make it clear that they only
build swx11 and GLU.

Build architecture-optimized swx11 and GLU where possible.
2006-10-16 09:39:59 +00:00
Thierry Reding
55cf480c0b Drop the libgl1-mesa-swx11-dbg package until there's a decision as to whether
it is really needed.

Allow more than one type of optimization libraries to be built for any given
architecture. Currently optimization configurations are provided for i386
[i686], alpha [ev5], amd64, powerpc [603], ppc64 and sparc [ultrasparc].
However, only i686 and amd64 are enabled for now for safety.

Add the libgl1-mesa-swx11-i686 for i686 optimized libraries.

Drop the debian-common configuration because it is no longer used.

Don't build libGLU in all configurations, only when needed.
2006-10-16 08:58:05 +00:00
Brian Paul
80fcbca7df allow >10 mipmap levels (patch by Benno Schulenberg) (bug 3130) 2006-10-15 22:30:35 +00:00
Brian Paul
cca1a27f77 regenerated to get DRI_CONF_EXCESS_MIPMAP() 2006-10-15 22:29:16 +00:00
Roland Scheidegger
97f47f771a fix handling of textures with a base internal format that does not have all four rgba values set for radeon and r200 (discovered with a modified glean pixelFormats test, noone ever noticed in over 2 years). For radeon, use hw format I8 as previously, and change tex env to make the correct default values appear for both GL_ALPHA and GL_LUMINANCE textures. For r200, which supports GL_LUMINANCE just fine, use the AL88 hw format for GL_ALPHA textures, since it seems like it's probably not worth the effort to fix up the texture environment (certainly complicated in case of ATI_fragment_shader programs). 2006-10-15 21:47:56 +00:00
Brian Paul
4d4add0972 Added #if / #else / #endif around code related to framebuffer initialization
to describe what should be changed in the drivers.
2006-10-15 19:26:43 +00:00
Brian Paul
606108ee4e updated comments, mark GetBufferSize() and ResizeBuffers() as obsolete 2006-10-15 19:20:29 +00:00
Brian Paul
694a5b81a7 minor clean-up: s/intel->driDrawable/dPriv/ 2006-10-15 19:08:11 +00:00
Brian Paul
a7a26503b6 Remove calls to _mesa_ResizeBuffersMESA() - generally replace with code to
check the current window size, then call _mesa_resize_framebuffer().
2006-10-15 18:51:22 +00:00
Brian Paul
a391384bad Remove a bunch of "ctx->Driver.function = _swrast_Function" lines since
default/fallback functions are already plugged in by the call to
_mesa_init_driver_functions().
2006-10-15 18:31:29 +00:00
Jerome Glisse
f0775c7fcc Use endianness test function provided by mesa.
Use the _mesa_little_endian helper function insted
of the MESA_BIG_ENDIAN flag. There is still place
using this flag but we need to find how to submit
16bits elements on big endian computer.
2006-10-15 18:22:28 +00:00
Brian Paul
2b6d2e4dcb Remove Driver.ResizeBuffers = _mesa_resize_framebuffer lines.
This is already done by the preceeding call to _mesa_init_driver_functions()
which plugs in default functions like that.
2006-10-15 18:18:39 +00:00
Thierry Reding
84db6912f0 Add missing build-dependencies. 2006-10-15 18:02:33 +00:00
Brian Paul
b947377add increate MaxTextureLevels to 11 (bug 3130) 2006-10-15 17:57:53 +00:00
Brian Paul
a20c0f293e check if files exist before installing (Thierry Reding) 2006-10-15 16:38:09 +00:00
Thierry Reding
7495cc28a0 Only build the i810, i915, i965, sis and unichrome DRI drivers on i386 and
amd64.

Only build the ffb DRI driver on sparc.
2006-10-15 16:17:53 +00:00
Thierry Reding
87744f786b Use STAMP_DIR consistently throughout the debian/rules file.
Make the BUILD_STAMPS targets depend on patch so that when they are built
separately the patches will also be applied. Thanks to Michel Dänzer for
catching this.

Make symlinking the source tree idempotent by adding the -f option to cp.
Thanks again Michel Dänzer.
2006-10-15 14:41:12 +00:00
Thierry Reding
5bcfa4c859 Build only optimized versions of the DRI drivers, only using no optimizations
when not supported.

Add configuration to build the DRI drivers on amd64.
2006-10-15 13:30:22 +00:00
Thierry Reding
8ef731bcd1 Add a patch (00_create-libdir) that fixes the upstream build system to make
sure the LIB_DIR is created or bail out.

Update the 01_fix-makefile patch to only install libGL/libOSMesa if they
exist. Don't make installation dependent on which drivers are built.

Build optimized versions of the swx11 libraries in addition to those that
should work on the least-capable supported processor for the given
architecture.

Have most configurations include debian-default instead of debian-common so
that INSTALL_DIR is correctly defined. debian-common can probably be dropped
anyway.
2006-10-15 13:15:56 +00:00
Thierry Reding
8d02f3c68a Add patch to fix upstream build system to correctly install libOSMesa and
variants. This patch also fixes the build system not to install libGL if only
the OSMesa library is built.

Update *.install files to install more files. Pretty much everything except
debugging and optimized libraries is now built and installed.

Enable building static libraries for inclusion in the -dev packages.
2006-10-15 00:49:41 +00:00
Thierry Reding
b1f8b49e8b Add build-dependency on quilt.
Remove shlibs:Depends substitution variable from -dev packages, which doesn't
make sense.
2006-10-15 00:42:25 +00:00
Brian Paul
07fd19f572 allow specifying image size on cmd line 2006-10-14 23:24:45 +00:00
Brian Paul
9cbe0e24ac Some code movement so that the gl_framebuffer is fully initialized before
calling _mesa_make_current() to avoid hitting the initialize_framebuffer_size()
stuff in context.c
2006-10-14 23:02:26 +00:00
Brian Paul
d21fa9cd79 Big re-org of buffer size management.
All buffer resizes now handled by xmesa_check_and_update_buffer_size() which
uses the _mesa_resize_framebuffer() function.
Moved all low-level XImage/Pixmap resizing into xm_buffers.c file.
Also, update lots of comments for Doxygen.
2006-10-14 22:52:17 +00:00
David Nusinow
75733e4237 Commit diff of 6.5.1-0.2 so we've got a record of it here. 2006-10-14 22:42:57 +00:00
Brian Paul
2b46f4b853 cut and paste error: s/Width/Height/ 2006-10-14 21:33:06 +00:00
Brian Paul
2458aba0e9 build fix: s/Table/TableUB/ 2006-10-14 20:28:36 +00:00
Thierry Reding
6e318e2cd1 Base the Debian OSMesa configurations on linux-osmesa* provided upstream.
Add a configuration for building a static version of OSMesa with 32 bits per
color channel.
2006-10-14 17:04:02 +00:00
Thierry Reding
01e6b84b14 Fix some small inconsistencies involving configuration names. 2006-10-14 16:32:25 +00:00
Thierry Reding
69705d22be Rename the debian-dri-common configuration to debian-dri-default, to make it
consistent with the naming scheme of debian-default.
2006-10-14 16:29:32 +00:00
Thierry Reding
b16d1dcff5 Add a default Debian-specific configuration which overrides settings from the
default Mesa configuration.
2006-10-14 16:28:45 +00:00
Thierry Reding
10c5b5d5ba Comment the Debian-specific configurations. 2006-10-14 16:25:30 +00:00
Thierry Reding
d9c5c170f6 Rename the -default configurations to -any, which is a more appropriate name. 2006-10-14 15:44:15 +00:00
Thierry Reding
32c7138d86 Move the debian/debian-dri configurations to debian-default/debian-dri-default
respectively, and use debian/debian-dri to choose an architecture specific
configuration.
2006-10-14 15:42:59 +00:00
Brian Paul
63f6802077 assorted clean-ups 2006-10-14 15:22:18 +00:00
Thierry Reding
d29244d872 Add OSMesa configurations and made fixed several issues here and there. 2006-10-14 15:11:31 +00:00
Thierry Reding
0fca6eda1e Initial version of a new build system for Mesa. 2006-10-14 04:33:41 +00:00
Thierry Reding
1ddf606332 Import Mesa 6.5.1 (MesaLib, MesaDemos, MesaGLUT). 2006-10-14 03:46:41 +00:00
Roland Scheidegger
cb977ae5f4 implement ARB_point_parameters and ARB_point_sprite on r200. The code is nearly the same as outlined in bug #4707, except it disables perspective correction for point sprites to make them actually work. And, separate the state atom into two as the tcl parameters would overwrite vertex program parameters when active. Also implement the GL_VERTEX_PROGRAM_POINT_SIZE_ARB option to make vertex programs outputting a point size work correctly (untested). Smooth points will still always be size 1. While here, enable gouraud shading for fog when using fog coord. 2006-10-13 22:10:05 +00:00
Brian Paul
40b88fd1f3 remove needless condition 2006-10-13 17:45:08 +00:00
Brian Paul
5b0edff412 Consolidate, move, fix code related to color index and stencil image transfer
operations (shift, offset, table lookup, etc).
2006-10-13 17:41:23 +00:00
Ian Romanick
4616513577 Fix dumb build errors.
I always build with -DGLX_USE_TLS, so I never hit these paths.  glapi.h is
required in some places because _glapi_Dispatch is declared there, but
_glapi_tls_Dispatch is declared in glthread.h.
2006-10-13 17:34:01 +00:00
Brian Paul
176501dfff In _mesa_pack_rgba_span_float() we don't need to make a temporary copy of
incoming colors when applying pixel transfer ops.  In all cases, the
caller either indicates there's no pixel transfer ops, or the incoming
colors are coming from temporary storage already and can be safely
modified.
2006-10-13 16:34:25 +00:00
Brian Paul
8a9b5518fb s/GLuint/GLbitfield/ 2006-10-13 15:11:47 +00:00
Brian Paul
bf8647a58b s/GL_FALSE/0x0/ 2006-10-13 15:10:55 +00:00
Brian Paul
6b998c5584 removed obsolete _mesa_pack_rgba_span_chan() 2006-10-13 15:00:35 +00:00
Brian Paul
c28d0f779a include glapi.h to fix broken build 2006-10-13 13:28:48 +00:00
Keith Whitwell
a2c50b0f4a Upload of interleaved arrays currently assumes that position is the
first element in the interleaved group.  Add a test to catch cases
where this isn't true and use per-array uploads instead.  Fixes compiz
glitches on x64.
2006-10-13 11:21:55 +00:00
Keith Whitwell
fd6341e574 Make sure instructions are zero'd out before use. 2006-10-13 11:20:25 +00:00
Keith Whitwell
e595ce79d6 Use unsigned long batchbuffer offset, fixes x64 warnings. 2006-10-13 11:19:38 +00:00
Keith Whitwell
b236715769 Fix printf warning. 2006-10-13 11:17:37 +00:00
Keith Whitwell
0dceffce33 Use unsigned long cast for checking pointer alignment, fixes x64 warnings. 2006-10-13 11:16:45 +00:00
Keith Whitwell
f06b9e4a8d Use mesa function to get opcode name rather than an internal table. 2006-10-13 11:14:43 +00:00
Michal Krol
201e6b9b75 Indent and cosmetic changes. 2006-10-13 08:44:32 +00:00
Brian Paul
e5a6fcc345 Revamp color table code.
Always store all color tables as both float and ubyte.
2006-10-13 00:44:31 +00:00
Brian Paul
e392c92250 adjust_colors() function replaces old _mesa_chan_to_float_span() function. 2006-10-12 23:48:57 +00:00
Brian Paul
0bfc56d7d3 use _mesa_map_ci8_to_rgba8() instead of _mesa_map_ci8_to_rgba() 2006-10-12 23:47:51 +00:00
Brian Paul
5bc33fe6f1 remove _mesa_chan_to_float_span(), rename _mesa_map_ci8_to_rgba() 2006-10-12 23:47:19 +00:00
Brian Paul
556c2fa3a3 _mesa_map_ci_to_rgba_chan() no longer used 2006-10-12 23:18:05 +00:00
Brian Paul
76e778dce5 Lots of changes to support runtime renderbuffer depths.
_swrast_read_rgba_span() now takes a datatype parameter.
New optimization for glReadPixels(format=GL_RGB).
New glCopyPixels optimization for the simple, common cases.
2006-10-12 23:17:02 +00:00
Brian Paul
4bb9f4115c don't use temp storage in _mesa_convert_colors() when possible 2006-10-12 23:14:19 +00:00
Brian Paul
57d719afb1 remove some debug code invalidated by prev check-in 2006-10-12 15:55:04 +00:00
Ian Romanick
f3f51bc844 Fix bug #4681.
glDeleteTextures and glDeleteTexturesEXT were erroneously listed as
aliases of each other.  For anything /except/ GLX protocol they are
aliases.  This set of changes allows functions that are functionally
identical but have different GLX protocol to be listed as aliases.

When building with GLX_INDIRECT_RENDERING set, different static
functions are used.  These functions determine whether the current
context is direct rendering or not.  If the context is direct
rendering, the aliased function (e.g., glDeleteTextures in the case of
glDeleteTexturesEXT) is called.  If the context is not direct
rendering, the correct GLX protocol is sent.

For a deeper explanation of what is changed, please see:
http://dri.freedesktop.org/wiki/PartiallyAliasedFunctions
2006-10-11 22:37:14 +00:00
Brian Paul
8a5871a98c use GLvoid * for _swrast_write_zoomed_rgb/rgba_span() functions 2006-10-11 22:21:55 +00:00
Brian Paul
55fa6a2fdb rewrite/simplify the fast_draw_pixels() function 2006-10-11 22:07:01 +00:00
Brian Paul
f971e24cf0 use _mesa_convert_colors(), update some assertions 2006-10-11 22:03:34 +00:00
Brian Paul
32a966dad9 Added _mesa_convert_colors().
_mesa_clip_drawpixels() now handles Pixel.ZoomY==-1.
2006-10-11 22:02:36 +00:00
Brian Paul
86f0e0b9cc support for runtime renderbuffer depths 2006-10-11 20:14:08 +00:00
Brian Paul
9440868270 In xmesa_DrawPixels_8R8G8B() check if drawing into a window system buffer,
not a user-created FBO.
2006-10-11 17:45:06 +00:00
Brian Paul
c364c57a1c added shaderobjects_3dlabs.c 2006-10-11 16:34:23 +00:00
Brian Paul
bb252d696f remove 3dlabs.c 2006-10-11 16:26:09 +00:00
Brian Paul
ed52be8c3f sources for X.org xserver build 2006-10-11 16:05:59 +00:00
Brian Paul
d3112d36d7 List of source (.c) files in each directory.
To be included by X.org Makefile.am files so that lists of files don't need
to be hardcoded and frequently updated there.
2006-10-11 15:52:00 +00:00
Brian Paul
81968ec49d a step toward moving run-time vertex program state out of GLcontext 2006-10-10 22:45:50 +00:00
Brian Paul
c61ecf373e fixed NV_position_invariant 2006-10-10 21:44:55 +00:00
Brian Paul
39c4daa6bc Move the fp_machine struct into s_nvfragmprog.c since (except for program
debug) it's only used there.
2006-10-10 21:43:31 +00:00
Brian Paul
97a659337e s/GLuint/GLbitfield/ 2006-10-10 21:25:27 +00:00
Brian Paul
fe6947002f If program is position invariant, set VERT_BIT_POS in InputsRead field.
Fixes broken "OPTION NV_position_invariant".
2006-10-10 21:23:23 +00:00
Keith Whitwell
d886423b3c Use the mesa-provided texenv program rather than rolling our own.
Turn on texture crossbar support.
2006-10-10 08:58:43 +00:00
Ian Romanick
fcd758868b Added dispatch.html.
This new file documents Mesa's implementation of GL function dispatch.  It's
not quite complete, but I think there's enough there to make it useful.
2006-10-09 18:26:03 +00:00
Brian Paul
5ab9dcd761 return void instead of GLvoid for glClearDebugLogMESA(), glGetDebugLogMESA() 2006-10-09 16:09:30 +00:00
Ian Romanick
b8f26126e2 Updates for XCB. Bug 8560. 2006-10-09 15:25:03 +00:00
Brian Paul
d3b257374e added a SyncHandle() call, remove UnlockDisplay() call. (bug 8521) 2006-10-09 14:57:50 +00:00
Brian Paul
0a0cd3a8ae Updates for XCB. Bug 8560. 2006-10-09 14:55:46 +00:00
Ian Romanick
dba173077e Major clean up of MakeContextCurrent
Rearrange most of the internals of MakeContextCurrent.	Put all of the code to
bind the new context up front.	If that is successful, unbind the old context.
This saves a lot of code and removes some locking crazyiness.

This patch has been tested for indirect rendering with glxinfo, glxgears,
manywin, and wincopy.
2006-10-07 02:52:18 +00:00
Roland Scheidegger
fa65447d8c do not import arrays for generic arb attribs if the array is not enabled (same as for generic attribs for nv vp is already done). Since the requested stride is 16, otherwise the code would end up doing lots of unnecessary import work (in doom3, trans_4_GLfloat_4f_raw caused by that was by far the single most time-consuming function in the r200 driver, not importing the disabled arrays caused the cpu time spent in the driver to drop from 45% to 30%, though real-world gain was pretty minimal as it's not really cpu bound here in the first place). 2006-10-07 01:04:49 +00:00
Brian Paul
524bf7bbcf rewrite clear_rgba_buffer_with_masking() 2006-10-06 03:52:01 +00:00
Brian Paul
e18d0f82b6 deal with union/aliasing in convert_color_type() 2006-10-06 03:49:46 +00:00
Brian Paul
6e138dfa36 rewrite of read_fast_rgba_pixels() 2006-10-06 03:48:42 +00:00
Keith Whitwell
fcb48e3422 missing file 2006-10-05 19:16:46 +00:00
Keith Whitwell
68da677ae2 Accelerate glBitmap with a color expand blit. Nice speedup for demos
like 'fire' that display a help message or fps number this way.
2006-10-05 11:35:57 +00:00
Keith Whitwell
1eca12a7d9 Quieten debug message. 2006-10-05 11:34:01 +00:00
Keith Whitwell
496f9ddf35 eliminate rhw divide under some circumstances 2006-10-05 11:28:45 +00:00
Keith Whitwell
e7b0ec9ae7 Quieten debug message. 2006-10-05 11:27:13 +00:00
Ian Romanick
6921063520 Changes to generated code caused by the previous commits. 2006-10-04 22:33:54 +00:00
Ian Romanick
491a16fb0f Fix the ordering of extensions. 2006-10-04 21:59:51 +00:00
Ian Romanick
990c8a9df9 Keep indentation consistent with indent.
Remove code in the Python scripts that keeps the indentation of the
generated code consistent for all cases.  Instead, pass the generated code
through the indent command.  Unix tools for the win!
2006-10-04 21:55:55 +00:00
Ian Romanick
eaeaaf6205 Divide categories into four groups as they are processed from the XML. Add
an iterator to iterate over the categories in order, starting with "core"
versions, then ARB extensions, then numbered non-ARB extensions, and finally
unnumbered extensions.

Use the new iterator in a couple places to ensure that output that is
grouped by catgory is generated in a consistent order.

More changes to the scripts are coming.  The generated files will be
committed one time after all the changes are in.  Too bad we're not using
GIT, or this would be easy. :(
2006-10-04 20:45:59 +00:00
Ian Romanick
553b8334bb Add utility method client_supported_for_indirect.
The new method client_supported_for_indirect is used to determine whether or
not the client-side library supports the function for indirect rendering.
The may or may not have associated protocol that needs to be generated
(e.g., glVertexPointer does not, but glVertex3fv does).
2006-10-04 18:58:10 +00:00
Brian Paul
25e441e8e9 in MakeContextCurrent() use old display pointer for __glXSetupForCommand(), bug 8443 2006-10-04 16:22:24 +00:00
Brian Paul
5ed4e35ba5 use _swrast_span_default_color() in the disabled code too 2006-10-04 15:22:11 +00:00
Brian Paul
9b507639ab call _swrast_span_default_color() to simplify _swrast_Bitmap(), improved comments 2006-10-04 15:21:23 +00:00
Brian Paul
da62bcecfb minor formatting fix 2006-10-04 15:06:27 +00:00
Felix Kuehling
3fd5aa88ea Bugzilla 6242: [mach64] Use private DMA buffers (only)
https://bugs.freedesktop.org/show_bug.cgi?id=6242
Patch by George Sapountzis: https://bugs.freedesktop.org/attachment.cgi?id=6271

Update to new mach64 DRM 2.0.0 with private DMA buffers.
Handle EAGAIN in mach64FireBlitLocked: call drmCommandWrite up to
MACH64_TIMEOUT times when EAGAIN is returned.
Also handle EAGAIN in mach64FlushVerticesLocked.
2006-10-02 20:34:06 +00:00
Brian Paul
346a239f01 return null if no context 2006-10-02 15:20:23 +00:00
Brian Paul
cdb27e8242 New SWspan and SWspanarrays typedefs. 2006-10-01 16:03:05 +00:00
Michel Dänzer
46929c93d8 i915: Fix wait for scheduled swap on secondary display. 2006-09-29 10:22:54 +00:00
Brian Paul
7fa99ed3d8 updated protos for blend funcs 2006-09-29 02:15:23 +00:00
Brian Paul
d92da49bae more changes for runtime renderbuffer depths 2006-09-29 02:12:07 +00:00
Brian Paul
0ce6a2935c include mipmap.h 2006-09-29 01:26:55 +00:00
Brian Paul
24edd90159 Move mipmap generation functions, texture scaling functions into new
mipmap.c file.
2006-09-29 01:24:26 +00:00
Brian Paul
bb4b378c60 updated info about name mangling 2006-09-29 01:22:53 +00:00
Michel Dänzer
af866291da Synchronize drawable to the pipe where the bigger part can be visible.
This requires the DDX driver to set the corresponding fields in the SAREA,
so check its minor version.
2006-09-28 14:10:47 +00:00
Michel Dänzer
4abf2706e9 Add new I830 SAREA fields. 2006-09-28 14:10:07 +00:00
Michel Dänzer
ebc879014c Add helper function that returns the current vblank sequence of a drawable. 2006-09-28 14:09:20 +00:00
Michel Dänzer
638ece315f Add helper function to calculate the area of the intersection of two rectangles. 2006-09-28 14:08:38 +00:00
Michel Dänzer
941c866739 i915: Handle DRM_VBLANK_SECONDARY when scheduling buffer swaps. 2006-09-28 14:07:56 +00:00
Michel Dänzer
c2f1a1857e i915: Attempt to schedule buffer swap on target vertical blank when possible.
This has some advantages over the traditional way of first waiting for the
target vertical blank and then emitting the buffer swap, e.g.

* glXSwapBuffers returns immediately, only the next time the driver needs the
  hardware lock will it block until the target vertical blank. This should
  allow applications that don't intermix rendering and other processing to
  start processing for the next frame right away.
* It's less likely to produce tearing.
2006-09-28 14:07:12 +00:00
Michel Dänzer
7585fc989d Add driGetVBlankInterval() helper function.
This can be used by drivers to determine the current swap interval of a
drawable.
2006-09-28 14:04:19 +00:00
Michel Dänzer
7539fde334 driWaitForVBlank: Add support for secondary vertical blank. 2006-09-28 14:03:41 +00:00
Michel Dänzer
6a2f5c6752 Some restructuring of the driWaitForVBlank() code.
Also some minor fixes for detecting when the deadline is met or missed, in
particular wrt wraparounds of the sequence number.
2006-09-28 14:03:02 +00:00
Michel Dänzer
24bb3b3998 Make driDrawableInitVBlank() initialize the sequence number.
This prevents the first wait for vertical blank from timing out when the X
server has been running for a long time.
2006-09-28 14:02:05 +00:00
Brian Paul
1d914fe465 remove obsolete comment 2006-09-27 14:00:37 +00:00
Jeremy Kolb
07bacc2263 Update to use the new XCB naming convention. 2006-09-26 23:56:20 +00:00
Jeremy Kolb
3d7ee324ad Added function convertStringForXCB. Deals with the recent XCB naming convention switch.
Updated the generated code to use the new XCB naming scheme.
2006-09-26 23:47:04 +00:00
Jeremy Kolb
b68788a1ca Update linux-dr-xcb config file to use LIBDRM_CFLAGS 2006-09-26 23:45:28 +00:00
Jerome Glisse
9e82552c30 Remove r200 dependency
Remove r200 dependency from the code as r200 merged
driver never worked (right ?) and we want to clean
the code.
2006-09-26 17:35:41 +00:00
Jerome Glisse
c67d8678dd Remove r200 dependency.
Remove r200*.h files dependency.
2006-09-26 17:28:40 +00:00
Michal Krol
ea87987dda Prepend #extension 'MESA_shader_debug: require' to each shader. 2006-09-26 16:06:35 +00:00
Michal Krol
27f660c164 Add GLSL preprocessor. 2006-09-26 16:01:11 +00:00
Michal Krol
4303d22739 Fix Windows newlines. 2006-09-26 12:10:33 +00:00
Michal Krol
16647b739b Add syntax files for expression and directive preprocessor.
Fix syntax errors in builtin library 1.2 sources.
All derivative files (*_gc.h and *_syn.h) are generated by Makefile.
2006-09-26 11:43:30 +00:00
David Nusinow
bc8084da74 Fix goofed patch from before 2006-09-26 01:36:37 +00:00
David Nusinow
5eed400862 Prepare changelog for release 2006-09-26 01:21:59 +00:00
David Nusinow
a37a0959ac * Add patch from Cyril Brulebois to allow package to build on HURD, which
lacks DRI and directfb. This includes not using lib-directfb in the
  build-depends for hurd-i386. It also creates a new debian config,
  debian-indirect, which is used when building for HURD. This config is
  invoked in the debian-dri config on hurd-i386. Thanks to Cyril Brulebois
  for the patch, Michael Banck, Michel Dänzer, and Samuel Thibault for
  input on an appropriate fix. (closes: #358065)
2006-09-26 00:46:14 +00:00
David Nusinow
53845c52e5 * Re-add s390 and m68k to the USE_IEEE test in src/mesa/main/imports.h. This
package seriously needs to store patches somewhere that are easy to find
  and re-apply.
2006-09-26 00:32:06 +00:00
Brian Paul
a50b7dbc3b Initial work for supporting different renderbuffer color depths at runtime. 2006-09-25 23:57:39 +00:00
Michel Dänzer
df8632ebd8 Fix and re-enable swizzling paths for big endian platforms. 2006-09-25 16:34:40 +00:00
Keith Whitwell
cbdd7e1094 bring in active_sz mechanism from i965 driver. Fixes bug 8410 2006-09-25 09:14:26 +00:00
Keith Whitwell
f1945796ed Fixup one place where attrsz was being used instead of active_sz 2006-09-25 09:12:25 +00:00
David Nusinow
d429f0b14f * Make sure that libGl looks for the dri drivers in the proper location. Do
this by setting the appropriate variables in the debian config
2006-09-25 02:57:24 +00:00
David Nusinow
02339187ad * Stuff not in the upstream tarballs
* Bump libdrm-dev build-dep to >= 2.0.2
* Add libdrm cflags to the debian-dri config. This allows the build system
  to find drm.h
2006-09-24 22:55:41 +00:00
David Nusinow
827f778525 * Stuff not in the upstream tarballs
+ os2 glut stuff
  + docs/gears.png
2006-09-24 21:54:25 +00:00
David Nusinow
d3fc85eea9 Remove os2 glut stuff. It's not in the tarballs 2006-09-24 21:50:01 +00:00
David Nusinow
9a62963129 Add glut 2006-09-24 21:40:02 +00:00
David Nusinow
a0b2543ba1 Add mesa demos 2006-09-24 21:29:21 +00:00
David Nusinow
387acaac69 * New upstream version 2006-09-24 21:21:15 +00:00
David Nusinow
952b775dbe Rename mesa dir 2006-09-24 21:18:17 +00:00
David Nusinow
eadb76b3f8 Bump to latest mesa in Debian 2006-09-24 21:11:46 +00:00
Brian Paul
f515c78a23 Change logicop, blend, masking functions to use the colors/indexes in the
sw_span object, rather than an explicit parameter.
2006-09-24 19:59:30 +00:00
Brian Paul
ba001224a1 Roll the multi_write_rgba_span() code into _swrast_write_rgba_span(). 2006-09-24 19:46:42 +00:00
Brian Paul
0785b6052a use span.array->rgba instead of local var in accum_return() 2006-09-24 16:34:56 +00:00
Brian Paul
f11508c29f use span.arrays for color/indexes instead of a local var when doing masked clears 2006-09-24 16:31:23 +00:00
Ben Skeggs
a05db7f505 Kill all the current shader code. 2006-09-24 13:16:23 +00:00
Sean D'Epagnier
e184bd861c corrected cursor drawing
added handling of SIGWINCH
fixed input of recieving SIGIO while handling SIGIO
corrected input code for return
uncommented normal calculation to models
2006-09-24 10:57:26 +00:00
Brian Paul
1ad12874b3 allocate larger TempImage, use COMBO var to choose test format/type 2006-09-23 16:09:26 +00:00
Brian Paul
7b803d649a fix the broken fallback string/debug stuff 2006-09-22 19:28:36 +00:00
Brian Paul
5174e7c181 remove extra indentation 2006-09-22 19:09:50 +00:00
Brian Paul
43715c711d Get rid of _swrast_mask_rgba_array() and _swrast_mask_index_array(). 2006-09-22 17:44:39 +00:00
Roland Scheidegger
9f819dc014 fix up access to vertex attrib components which don't really exist but are defined to some default value by the spec (fogcoord yzw, normal w, secondary color w), by replacing those components with zero/one respectively using swizzling. 2006-09-22 15:48:50 +00:00
Keith Whitwell
9c5d75e592 Explicit test for +ve pitches in intelEmitCopyBlit() 2006-09-22 14:43:09 +00:00
Roland Scheidegger
8a0fb128c3 don't skip user clip plane clipping when the current vertex program is position invariant. 2006-09-22 13:34:24 +00:00
Keith Whitwell
7e9799ac3d Use _Enabled rather than _Active when checking for fragment shaders 2006-09-22 11:45:21 +00:00
Keith Whitwell
df058298e1 Flush driver, not just tnl module. 2006-09-22 11:40:35 +00:00
Keith Whitwell
f9bfdb1ce4 resize buffers in MakeCurrent 2006-09-22 11:36:30 +00:00
Keith Whitwell
f118b9b40d Remove unused variable. 2006-09-22 11:33:46 +00:00
Jouk Jansen
424749c3d5 Correcting directory name in OpenVMS-Makefile 2006-09-22 11:09:07 +00:00
Brian Paul
57d705d5a9 remove rgb[] array from span_arrays_struct - was only used in a few places 2006-09-21 23:19:40 +00:00
Brian Paul
c7d0fe1c4b new comments, indentation fixes 2006-09-21 23:04:29 +00:00
Brian Paul
4af404038c bump version to 6.5.2 2006-09-21 23:02:21 +00:00
Brian Paul
76785cb70a move a conditional into an assertion 2006-09-21 22:59:50 +00:00
Brian Paul
87c5ec817c updated doxygen info 2006-09-21 22:54:53 +00:00
Brian Paul
bb0862968e updated extension info 2006-09-21 22:53:15 +00:00
Brian Paul
60955d7f96 Re-org of per-release info.
From now on, put all release-specific info into the release-X.Y.Z.html file
rather than scattered between a relnotes file, versions.html and news.html.
2006-09-21 22:51:16 +00:00
Brian Paul
2482007373 replace assert(0) with error report, improved comments, etc 2006-09-21 22:43:51 +00:00
Keith Whitwell
bad5cf056a Fix incorrect byteswap_mapping(). Disable swizzle path on bigEndian
until someone can figure out whats wrong there.
2006-09-21 18:31:36 +00:00
Brian Paul
184b5d8938 use new _mesa_little_endian() function 2006-09-21 15:51:55 +00:00
Brian Paul
32e0efbdbe added _mesa_little_endian() 2006-09-21 15:51:06 +00:00
Brian Paul
81e0d73780 GLUT_FORCE_VISUAL env var to force glut to use a particular visual (debug only) 2006-09-21 15:16:36 +00:00
Brian Paul
b7d9b1e724 new code to init DirectColor colormaps 2006-09-21 15:14:30 +00:00
Keith Whitwell
167ca59fe8 Fix the dstMap for rgb888 and bgr888 texture formats, which are the
opposite to what you'd naively expect.
2006-09-21 12:43:05 +00:00
Keith Whitwell
cac5974bf9 Do a better job of choosing texture formats to avoid image conversions. 2006-09-21 10:20:15 +00:00
Keith Whitwell
afd244d4e8 use the requested internal texture format where possible 2006-09-21 10:07:04 +00:00
Keith Whitwell
76dd385fed Catch a couple of cases where we would have to delete and recreate the
miptree object.
2006-09-21 10:06:18 +00:00
Keith Whitwell
3974cc8c09 Deal with the overloading of _mesa_texstore_rgba, which is actually
used to store all sorts of formats.

Software mesa fails the glean pixelFormats test, but it appears to be
failing even with the swizzle code disabled??
2006-09-20 22:40:34 +00:00
Keith Whitwell
3aea82b396 Extend swizzle support to all remaining source formats and texture
destination formats.
2006-09-20 22:02:48 +00:00
Roland Scheidegger
62d4dfbfe3 try to use a 8888 texture format which will result in only a memcopy in mesa's texstore functions whenever possible for r200 and r300. r200 can use hw formats argb8888, rgba8888 and abgr8888 (or the opposite on big endian), r300 can use argb8888, bgra8888, rgba8888 and abgr8888 regardless of endian, as it supports free component swizzling. 2006-09-20 19:11:56 +00:00
Keith Whitwell
46c3bd29be Support both big and little endian, more source types and more
destination formats through the swizzle path.  It would be great to
see this tested on eg, PPC machines...
2006-09-20 18:56:19 +00:00
Roland Scheidegger
528de982f8 reenable code in _mesa_texstore_rgba8888 to avoid the generic copy path if only swizzling is required as it works just fine (tested with glean pixelFormats test and a hacked up r200 driver which always uses that format). 2006-09-20 18:22:19 +00:00
Keith Whitwell
2e5c686c2b Fix various typos to pass glean pixelFormats test. 2006-09-20 17:41:18 +00:00
Keith Whitwell
fce0d13b4f Enhance compute_component_mapping() to convert to and from any of the
color base formats.
2006-09-20 17:07:13 +00:00
Keith Whitwell
4f17378ec3 Add a comment about the interactions of negative pitches, overlapping
blits and the different ways of specifying a blit on this hardware.
2006-09-20 15:04:05 +00:00
Keith Whitwell
f1d6ad6fe2 remove some dead code 2006-09-20 15:00:24 +00:00
Keith Whitwell
b5d0f6c17f Fix some warnings 2006-09-20 14:58:55 +00:00
Roland Scheidegger
85b6d0c4df fix mixed texgen/non-texgen with texgen modes requiring plane parameters (GL_OBJECT_LINEAR, GL_EYE_LINEAR). This is a chip limitation, try to hack it up regardless or use a tcl fallback in some cases. Might still produce wrong results if fixed up, but so far this corrects celestia ring shadows (in multitexture mode), doom3 (arb renderer), quake4 (arb renderer and some less visible bugs in r200 renderer), and even the remaining texgenmix broken case (this is pure luck though, it is easy to construct artifical cases where it will break). 2006-09-20 14:56:21 +00:00
Keith Whitwell
e38114a5e4 Support ARB_texture_rectangle. 2006-09-20 14:54:49 +00:00
Keith Whitwell
b35121d54d 1) Add a new flag in the sarea (coopting the unused texAge value) to
identify context switches between members of a share group -
ie. multiple contexts in a single application, possibly on different
threads.  In this case the contexts share a bufmgr instance and there
is no need to evict textures - so don't.

2) Use a new flag 'need_flush' to ensure hardware rendering is flushed
prior to starting a software fallback.
2006-09-20 14:44:40 +00:00
Keith Whitwell
3a5319293c Broadwater seems to prefer this style of blitting. 2006-09-20 14:39:53 +00:00
Brian Paul
d41d29b8bd make current GLX context per-thread 2006-09-20 14:39:47 +00:00
Brian Paul
0c54e47c0e fix a memleak in DestroyContext() 2006-09-20 14:39:24 +00:00
Keith Whitwell
83c3f9658d add accelerated glCopyPixels path 2006-09-20 14:36:49 +00:00
Keith Whitwell
187f2cfb4a Add a new internal program parameter value STATE_TEXRECT_SCALE which
provides 1/width and 1/height of the active texture, useful for
implementing ARB_texture_rectangle support on hardware which only
supports ARB_npot-style texturing.
2006-09-20 14:30:22 +00:00
Keith Whitwell
0c9259f3b9 Fix _mesa_swizzle_ubyte_image() to deal with RGBA->RGB->RGBA
conversions, ensuring that the final A value is 0xff in those cases
where we use a RGBA hardware texture format to store RGB textures.
Fix a couple of cases where hardwired texture conversions were
ignoring this restriction.
2006-09-20 14:28:42 +00:00
Keith Whitwell
5658810660 Export _mesa_print_alu_instruction() to allow drivers to roll their
own debug code for programs with driver-private opcodes.

Remove redundant loop in _mesa_num_inst_src_regs().
2006-09-20 12:57:54 +00:00
Keith Whitwell
cb54c056a6 restore debug output after brw_wm_fp compilation stage 2006-09-20 12:53:35 +00:00
Keith Whitwell
285801a9ed Use DEBUG_SYNC to switch between per-primitive and per-frame aubfile dumps. 2006-09-20 12:49:52 +00:00
Brian Paul
408ce7e861 added LIBDRM_CFLAGS (Javier Villavicencio) 2006-09-19 22:43:41 +00:00
Brian Paul
dc4bf43898 fix CFLAGS (bug 8344) 2006-09-19 16:31:37 +00:00
Steve Langasek
b3f7313ae4 Nuke the directory for an obsolete version of mesa -- no reason to merge
it anywhere, it's already superseded
2006-09-18 23:49:49 +00:00
Brian Paul
c42afefda1 change make depend output redirection to 2>&1 (bug 8344) 2006-09-18 22:55:13 +00:00
Brian Paul
876b41bc03 check for n <= 1 in compute_min_mag_ranges(), bug 8320 2006-09-18 15:03:04 +00:00
Brian Paul
f7da4e687c set lambda to zero for textured points (bug 8320) 2006-09-18 15:02:26 +00:00
Stephane Marchesin
7d907ef69c Some small changes 2006-09-17 17:46:36 +00:00
Stephane Marchesin
473a38622e Rename nouveau_tris.* to nouveau_swtcl.* 2006-09-17 15:30:40 +00:00
Stephane Marchesin
c67f545520 Small changes 2006-09-17 14:36:07 +00:00
Stephane Marchesin
e324c52237 Make nouveau actually compile 2006-09-17 12:09:11 +00:00
Stephane Marchesin
908388b118 Some work towards making the nv10 swtcl compile 2006-09-17 11:58:52 +00:00
Brian Paul
3d70f9ff82 6.5.1 md5 sums 2006-09-16 04:23:16 +00:00
Brian Paul
0321dac2cd update 6.5.1 release date 2006-09-16 04:13:20 +00:00
Brian Paul
a3a640171f added #ifdef tests for Windows for int64_t, uint64_t 2006-09-16 04:10:56 +00:00
Brian Paul
8636981646 replace GLAPI w/ static and init var to 0 (Michel Donais) 2006-09-15 19:00:37 +00:00
Keith Whitwell
54d3ab4878 npot version of redbook/mipmap.c 2006-09-15 10:41:54 +00:00
Ian Romanick
a3b99fcb56 Use correct opcodes for GLX_EXT_texture_from_pixmap.
Set the correct opcodes for GLX_EXT_texture_from_pixmap functions.  Changes
to the glproto package and the core X server are also required.
2006-09-14 21:07:17 +00:00
Brian Paul
eee85373c7 set 6.5.1 release date 2006-09-14 20:31:13 +00:00
Jerome Glisse
3dcf23171d Fallback if ColorLogicOp is enabled. Cleanup a bit the fallback
function.
2006-09-14 17:44:58 +00:00
Michel Dänzer
8c9366a807 Remove MESA_LITTLE_ENDIAN guard for code that seems to work fine on big endian. 2006-09-14 16:17:06 +00:00
Keith Whitwell
657f738ea2 VS nr of urb entries is constrained to be one of a fixed set of values,
specifically {8,16,32}.
2006-09-14 10:37:09 +00:00
Roland Scheidegger
6babf624b7 always use argb8888 instead of rgba8888, this is far more likely to hit a faster memcopy path in mesa (at least on little endian systems, possibly on big endian too) 2006-09-13 23:56:09 +00:00
Roland Scheidegger
2e2a981335 detect some more cases which can use straight memcpy for _mesa_texstore_rgba8888 2006-09-13 23:51:39 +00:00
Roland Scheidegger
99e0236046 Always mark tex state atom as dirty when the texture image is dirty, this ensures texture cache gets flushed in case the new texture has the same offset as the old one (fixes glean pixelFormat test at least on r200). 2006-09-13 23:20:10 +00:00
Brian Paul
43aa034084 updated comment 2006-09-13 22:49:48 +00:00
Roland Scheidegger
888b1a9166 don't use derived value _ColorLogicOpEnabled as it's not current by the time we call the blend/logic op functions. Fixes glean logicOp test on r200. 2006-09-13 22:41:46 +00:00
Brian Paul
fd2e402359 added GL_CURRENT_RASTER_SECONDARY_COLOR query (OpenGL 2.1) 2006-09-13 21:02:32 +00:00
Brian Paul
bd5331f9e8 just comments and const qualifiers 2006-09-13 20:26:43 +00:00
Brian Paul
ac1d7370a7 fix broken do_EXP() 2006-09-13 20:14:24 +00:00
Roland Scheidegger
cb08dcbbf2 fix GL_REFLECTION_MAP texgen by not using tex matrix negation when lighting is not enabled (?). This fixes demos/cubemap as well as glean texCube test. 2006-09-13 17:35:44 +00:00
Roland Scheidegger
87d6028f28 make sure we upload the new vertex program if the program string changes. 2006-09-13 17:30:11 +00:00
Brian Paul
25d59d2962 make triangle smoothing a sw fallback (Martign van Oosterhout) 2006-09-13 16:41:25 +00:00
Jerome Glisse
323414940f Fix compilation warning. 2006-09-12 18:52:13 +00:00
Jerome Glisse
6a65e6db3d Removing some of r200 dependency, cleaning up code a bit,
and fixing a couple of warning. More cleanup and shuffle
to come. I have tested this change they might broke things
especialy with r300_texstate.c change (format_x doesn't
seems to be use at all by r300).
2006-09-12 18:34:43 +00:00
Keith Whitwell
b1cb39d8bd quieten debug 2006-09-12 14:27:57 +00:00
Keith Whitwell
16a22a5f4a Potential fix for doom3 lockups. Seems that there is a conflict
between the vertex cache, the vertex shader and the clipping stages,
all of which are competitors for URB entries assigned to the VS unit.
This change reduces the maximum number of clip and VS threads by
enough to ensure that they cannot consume all the available URB
entries, and then reduces the number somewhat more up to an arbitary
amount I discovered by trial and error.  Unfortunately trial and error
solutions don't inspire total confidence...
2006-09-12 13:54:31 +00:00
Keith Whitwell
72e810db9d Disassemble active program when DEBUG_VS is set. 2006-09-12 13:51:09 +00:00
Keith Whitwell
7b8c73460f Add code to tweak aubfile state and primitives on replay. 2006-09-12 13:50:22 +00:00
Keith Whitwell
e1ae10db2c Encode a unique id in the aub header date fields. 2006-09-12 13:43:10 +00:00
Brian Paul
bd38df11f4 Win32 fixes (SF bug 1554931) 2006-09-11 16:39:04 +00:00
Brian Paul
31a66ada72 undo some accidental changes in _mesa_is_legal_format_and_type() 2006-09-11 15:25:49 +00:00
Brian Paul
02aa5fba03 init accum buffer fields in _mesa_update_framebuffer_visual() 2006-09-11 15:04:23 +00:00
Roland Scheidegger
25847f2b5b remove code to deal with non-normalized texture coordinates for tex rect targets (swtcl tex coord translation stage, tcl tex matrix adaption) and use the chip's native handling of such coords instead (!!!). Seems noone noticed those bits in the se_coord_fmt reg, even though it works fairly similar to r200 (except it's set per-unit and always active, so only enable it for texture rectangles). 2006-09-10 19:19:13 +00:00
Brian Paul
cb53555058 Redefine the BYTE_TO_FLOAT() and SHORT_TO_FLOAT() macros to avoid problems
converting 0 to exactly 0.0
This goes against the OpenGL spec (see table 2.6) but solves problems
when doing byte -> float -> ubyte conversion for particular texture formats.
2006-09-10 17:42:57 +00:00
Brian Paul
ef8244df1a don't use xmesa_DrawPixels_8R8G8B() if there's a software alpha channel 2006-09-10 17:10:36 +00:00
Roland Scheidegger
7998962444 cause a raster fallback if a yuv texture is used on texture unit > 0 as yuv conversion appears only to work on first unit. 2006-09-10 13:48:51 +00:00
Patrice Mandin
ae481e1560 oops, time to go to bed 2006-09-08 23:19:45 +00:00
Patrice Mandin
ddaf3060fa nv10: vertex attribute output format 2006-09-08 23:18:27 +00:00
Patrice Mandin
cdd433b29b more macros, still missing the alloc_verts one 2006-09-08 21:52:25 +00:00
Patrice Mandin
1961611247 reimport sw stuff 2006-09-08 21:41:58 +00:00
Patrice Mandin
7a968481a0 render_primitive macro 2006-09-08 21:34:47 +00:00
Patrice Mandin
07d4c63ddc vert_copy_spec macro 2006-09-08 21:30:32 +00:00
Patrice Mandin
ad0f655376 vert_copy_rgba macro 2006-09-08 21:27:17 +00:00
Patrice Mandin
6f0388ec71 basic primitives 2006-09-08 21:23:04 +00:00
Patrice Mandin
179c1013d2 Remove useless reference to fifo_num field 2006-09-08 20:17:59 +00:00
Keith Whitwell
02df36f394 Basic facility for playing back captured aubfiles. Requires a small
hack to the drm to disable command verification on the cmd_buffer
ioctl.  Doesn't exactly replay as commands are normally delivered as
batchbuffers but are captured and replayed as commands on the ring.
2006-09-08 10:36:32 +00:00
Roland Scheidegger
a5e73e6887 cause a vtxfmt fallback directly when hitting NewList for radeon and r200 drivers, otherwise we'll mix up tcl and vtxfmt path for some reason. This fixes a warzone2100 asssertion failure. 2006-09-08 00:54:55 +00:00
Keith Whitwell
3e05902d30 Consistent return values from the bm* functions.
Get aubfile generation working again.
2006-09-07 19:58:16 +00:00
Keith Whitwell
493b2ddecb Cope with memory pool fragmentation by allowing a second attempt at
rendering operations to take place after evicting all resident
buffers.

Cope better with memory allocation failures throughout the driver and
improve tracking of failures.
2006-09-07 19:05:40 +00:00
Keith Whitwell
c26f36c830 Add some asserts, fix some not-quite-bugs. 2006-09-07 18:28:35 +00:00
Keith Whitwell
e48db4430f Fix glitch with pool alignments. 2006-09-07 16:29:37 +00:00
Keith Whitwell
1456a0fff6 Use lower alignments where possible. Also pad out allocated blocks to
a multiple of alignment to avoid accumulating unusable free blocks.
2006-09-07 16:23:22 +00:00
Keith Whitwell
133f141680 Make sure bmBufferOffset is called for all active buffers every time
we render.  Currenly requires that some state be re-examined after
every LOCK_HARDWARE().
2006-09-07 16:09:50 +00:00
Roland Scheidegger
c5cb8e2c6f make really sure R200_VAP_PROG_VTX_SHADER_ENABLE is never set when we're already in a tcl fallback, otherwise the chip will instantly lock up when vertex progs are enabled the next time not in a tcl fallback (fixes for instance guaranteed lockup running any program which uses vertex progs with tcl_mode=0 and then later with tcl_mode=1). 2006-09-07 13:34:29 +00:00
Roland Scheidegger
28e7219b96 only allow VERT_ATTRIB_MAX instead of _TNL_ATTRIB_MAX for inputs of vertex programs (fixes a segfault since the result of the shift is undefined otherwise, and it may happen that _TNL_ATTRIB_POINTSIZE will be tried to read, unlike all other attribs this however may be unitialized (might be a bug in itself)). 2006-09-07 13:26:44 +00:00
Eric Anholt
d016d4e70f Fix a leak of the screen's option cache on cleanup (copied from radeon). 2006-09-07 06:02:00 +00:00
Keith Whitwell
14ec34d647 Simplify the immediate and displaylist code. Treat VertexAttrib*ARB
as non-aliasing and cope with the >32 attributes that result, taking
materials into account.
2006-09-06 18:30:00 +00:00
Brian Paul
2216aac8ea comment out EXTRA_LIB_PATH, ?= causes problems on HP-UX 2006-09-06 13:56:26 +00:00
Brian Paul
bb2180dca3 Fixes from Christopher Bell:
Use -O instead of +O3 or +O2.
Remove +Oaggressive.
Replace -Aa with -Ae.
2006-09-06 13:49:17 +00:00
Brian Paul
7d767604c7 remove stray tab 2006-09-06 13:44:57 +00:00
Brian Paul
d9aebd8498 for VERTEX_ATTRIB_WEIGHT, use break, not return 2006-09-06 05:03:47 +00:00
Brian Paul
4a901667e5 document vertex.weight hack 2006-09-05 23:20:58 +00:00
Brian Paul
3a55750d48 Hack for Warcraft (bug 8060): allow 'vertex.weight' to be referenced in
vertex program, even though it's not really supported.  Results will be
undefined, but Warcraft doesn't actually use the attribute.
2006-09-05 23:15:29 +00:00
Brian Paul
43cc1dc18f fix typo in enable_parser_extensions(): s/point_parameters/vertex_blend/ 2006-09-05 23:11:09 +00:00
Brian Paul
a088f160b3 Consolidate common case of _mesa_set_program_error() followed by _mesa_error()
in new program_error() function.
Add const qualifiers in many places.
Reorder some debug code to prevent referencing free'd memory.
2006-09-05 23:08:51 +00:00
Brian Paul
1f03339f1c updated info about glxproto.h 2006-09-05 18:23:21 +00:00
Keith Whitwell
d5cbb49c22 Dynamically allocate instruction store for tnl programs according to
requirements.
2006-09-05 10:01:24 +00:00
Keith Whitwell
74b2166ff8 Fixes for calculating point attenuation 2006-09-04 23:34:36 +00:00
Keith Whitwell
f65ad97469 Don't export NV_vertex_program as it's not supported, it confuses
glean, and we no longer need to export it to keep Mesa happy as we did
at one time.
2006-09-04 18:27:40 +00:00
Rune Petersen
ac7ea94030 Managed to make a commit that can't build... Sorry again... 2006-09-04 16:20:16 +00:00
Brian Paul
c78e895f09 get rid of GL_BOOLEAN definition (bug 8113) 2006-09-04 14:07:04 +00:00
Jouk Jansen
e08557ad8a OpenVMS compile support update
(previous commit did send the wrong file to the CVS)

 Modified Files:
 	Mesa/include/GL/vms_x_fix.h
2006-09-04 06:26:08 +00:00
Jouk Jansen
8cf3c85fd7 OpenVMS compile support update
Modified Files:
 	Mesa/include/GL/vms_x_fix.h
2006-09-04 06:22:39 +00:00
Roland Scheidegger
014bfda235 fog state atom contains (only) fog params necessary for tcl. Must not be emitted if vertex progs are enabled as it overlaps vertex param #94. 2006-09-04 00:57:39 +00:00
Rune Petersen
5300e8242f add missing change to skip low impact RAST fallback...
Sorry.
2006-09-03 20:31:52 +00:00
Roland Scheidegger
5b4e7cdca4 fix the presumably broken check for the allow_large_textures and vblank_mode options (same as bug 8042). 2006-09-01 23:36:30 +00:00
Roland Scheidegger
91650469ae make sure vertex programs are only enabled on the hw when they are really enabled, not just when a program enables vertex progs (could still be not enabled due to some error). Otherwise the hw potentially would try to execute a not valid (not set up at all) vertex program, likely leading to lockups. Hopefully fixes #8060. 2006-09-01 20:21:12 +00:00
Keith Whitwell
6ec2d37ae8 Catch a few more cases of using a message reg as an instruction source
arg.
2006-09-01 14:57:19 +00:00
Keith Whitwell
db0e53af74 fix a couple of cases where a message reg is used as an instruction source. 2006-09-01 14:18:06 +00:00
Ian Romanick
75faa1e19a Add API description for GLX_SGI_swap_control. 2006-08-31 20:50:43 +00:00
Ian Romanick
d6c675f497 Fix problems with vertex program protocol
There were two sets of bugs in the vertex program (ARB and NV)
protocol.  First, several of the ARB functions were missing the
'doubles_in_order="true"' annotation.  Second, after the ARB decided
that glVertexAttrib*ARB functions must not alias fixed-function state
for GLSL, Nvidia re-assigned GLX protocol opcodes for
glVertexAttrib*NV (circa Septeber 2004).  For some reason gl_API.xml
was never updated to reflect this, and the updated version of the
GL_NV_vertex_program spec never made into the registry.
2006-08-31 20:41:16 +00:00
Rune Petersen
934a2dcf0f re-apply shader fix.
appears to have been reverted by mistake.
2006-08-31 18:19:50 +00:00
Brian Paul
d9cb0fc44d version bump 2006-08-31 17:54:31 +00:00
Keith Whitwell
b237d7fa14 When using the old technique to set up the front buffer mapping, there
is no need to add front.offset to sPriv->pFB, it seems.  Fixes several
glean issues and frontbuffer rendering generally.
2006-08-31 17:24:55 +00:00
Brian Paul
6c44c53e06 update link 2006-08-31 15:19:44 +00:00
Brian Paul
c09458c133 remove VERSIONS from tarballs 2006-08-31 15:18:04 +00:00
Brian Paul
761d87485e updated 6.5.1 relnotes link 2006-08-31 15:17:43 +00:00
Brian Paul
e2859ea6ef Convert VERSIONS and RELNOTES-6.5.1 to html, update links to them. 2006-08-31 15:16:10 +00:00
Rune Petersen
3cbfef3917 Give the user posibility to choose speed over correctness.
It does 2 things:
1) Allows you to disable S3TC, wine-games sometimes need S3TC enabled.
2) Disable fallbacks that usually have low impact.
2006-08-31 15:15:29 +00:00
Brian Paul
52e36cd8d9 check if ext->name is null before strcmp() 2006-08-31 13:58:08 +00:00
Roland Scheidegger
901f83f14e do not abort with not supported vertex prog output configuration, fallback instead 2006-08-31 01:10:07 +00:00
Brian Paul
7986cfbee0 remove extension defines/protos that are now in glext.h 2006-08-30 23:50:31 +00:00
Brian Paul
3cd07d2c39 latest version from OpenGL ARB 2006-08-30 23:46:41 +00:00
Karl Schultz
cdb12bd0ae Handle API and dispatch table changes that removed a bunch of extension entry points. 2006-08-30 23:45:32 +00:00
Brian Paul
c6f8176b3f make prog2 a legal program (texture reference fix) 2006-08-30 23:40:53 +00:00
Brian Paul
b7fc1c32f8 Check that we don't try to reference more than one target of a texture unit.
For example, referencing both "texture[0], 2D" and "texture[0], CUBE" in one
program is an error.
2006-08-30 23:38:03 +00:00
Brian Paul
f6de865e56 s/0/VERT_RESULT_HPOS/ 2006-08-30 23:36:52 +00:00
Ian Romanick
a70d56485a Add missing parenthesis so that glXSwapIntervalSGI protocol is
correctly generated.
2006-08-30 23:15:02 +00:00
Michal Krol
c7f571eb7e Add missing vec4 instructions to the interpreter.
Other cosmetic changes.
2006-08-30 22:36:29 +00:00
Brian Paul
8a4366717a fix Xlib driver mem leaks 2006-08-30 22:04:09 +00:00
Brian Paul
6c06ce281a Use XAddExtension() to register an XCloseDisplay() callback function.
When the callback is called, free all Mesa's private visual and buffer
data structures which are tied to the display.
Fixes problems reported by Kitware.
2006-08-30 21:17:51 +00:00
Brian Paul
12a5f812fc init a local var to silence warning 2006-08-30 19:02:45 +00:00
Roland Scheidegger
a974aaaa3e Minor r200 vertex program cleanups. Remove disabled leftovers from r300 vertex program code. Fix authors. Correct slightly wrong check to determine if ran out of temps. Simplify check to determine if ran out of max instructions. Correctly report used native temps. Always kick off program translation when ProgramStringNotify is called (otherwise the reported native resources used queried might be wrong). 2006-08-30 13:44:31 +00:00
Roland Scheidegger
e6de1edaf0 fix initialization of native resource usage of vertex/fragment programs 2006-08-30 11:55:18 +00:00
Roland Scheidegger
ef3f00f67e fix typo causing a segfault when a vertex program uses more than 96 parameters 2006-08-30 10:26:31 +00:00
Brian Paul
8334c8a216 Move call to _swrast_update_rasterflags() since it depends on the
results of _swrast_update_fog_state().
Fixes bug where first frame of progs/samples/fog.c does not show fog.
2006-08-29 22:32:31 +00:00
Brian Paul
f7c4dc007f _mesa_debug() should be a no-op when not compiled with DEBUG defined. 2006-08-29 22:30:58 +00:00
Brian Paul
398471429b set 6.5.1 release to Aug 31 2006-08-29 21:56:59 +00:00
Brian Paul
70c2d51230 remove assertion that referenced &glSetFenceNV for debug test 2006-08-29 21:54:01 +00:00
Brian Paul
0aab798a18 replace abort with _mesa_problem() 2006-08-29 19:09:57 +00:00
Ian Romanick
8d675aa637 Deprecate GL_EXT_vertex_weighting.
Nvidia no longer supports this extension, and they no longer export its
entry points from their libGL.  There's no reason for us to keep dragging it
around either.
2006-08-29 17:44:45 +00:00
Ian Romanick
dfdd0b4f30 More static dispatch function removal.
Make functions for the following extensions available only via
glXGetProcAddress.  In cases where there are other aliases to the same
functions (e.g., between GL_EXT_histogram and GL_ARB_imaging), the alias
functions may still be statically exported.

    - GL_ATI_blend_equation_separate
    - GL_EXT_blend_equation_separate
    - GL_EXT_convolution
    - GL_EXT_color_sub_table
    - GL_EXT_cull_vertex
    - GL_EXT_depth_bounds_test
    - GL_EXT_framebuffer_blit
    - GL_EXT_histogram
    - GL_EXT_multisample
    - GL_EXT_stencil_two_side
    - GL_EXT_timer_query
    - GL_IBM_multimode_draw_arrays
    - GL_INGR_blend_func_separate
    - GL_NV_fence
    - GL_SGI_color_table
    - GL_SGIS_multisample
    - GL_SGIS_pixel_texture
    - GL_SGIS_point_parameters
    - GL_SGIX_pixel_texture
2006-08-29 16:43:44 +00:00
Ian Romanick
fc5b57b713 Clean up GLX function exports.
Make functions for the following extensions only accessable via
glXGetProcAddress:

    - GLX_EXT_texture_from_pixmap
    - GLX_MESA_copy_sub_buffer
    - GLX_MESA_release_buffers
    - GLX_MESA_swap_control
    - GLX_MESA_swap_frame_usage
    - GLX_OML_sync_control
    - GLX_SGI_make_current_read
    - GLX_SGI_swap_control
    - GLX_SGI_video_sync
    - GLX_SGIX_swap_barrier
    - GLX_SGIX_swap_group

Removed all remnants of the following extensions:

    - GLX_MESA_set_3dfx_mode
    - GLX_SGI_cushion
    - GLX_SGIX_dmbuffer
    - GLX_SGIX_video_resize
    - GLX_SGIX_video_source
    - GLX_SUN_get_transparent_index
    -
2006-08-29 15:38:19 +00:00
Roland Scheidegger
af1dc7e487 move initialization code aroudn so glPointParameter isn't called before checking the extension is present 2006-08-28 21:19:34 +00:00
Brian Paul
b5a2fc1255 Check mesa_vp->Base.NumInstructions == 0 instead of mesa_vp->Base.String to
determine if we actually have a program.  See "[r300] TCL fallback with Quake3".
2006-08-28 19:42:41 +00:00
Ian Romanick
258751f4a0 Add two new gl_function methods. dispatch_name returns the name of
the true static dispatch name (either the glFooBar name or the
gl_dispatch_stub_XXX name).  static_name returns the name of the
static function for a specific alias of a GL function.

Adding (and using) these two functions corrects some problems in the
generated code related to functions with multiple aliases where some
of the aliases have true static dispatch functions and some don't.  I
have verified that everything under progs, except xdemos/xdemo,
correctly link.  I did this by doing 'make linux-dri-x86-64
PROGRAM_DIRS="demos redbook samples xdemos tests"'.
2006-08-28 17:40:45 +00:00
Ian Romanick
0bb27c084d Add dependencies for all API XML files. 2006-08-28 17:35:54 +00:00
Brian Paul
e5bc35dd97 remove unused var 2006-08-28 15:16:49 +00:00
Brian Paul
e365b82be1 fix the check for force_s3tc_enable (bug 8042) 2006-08-28 15:16:36 +00:00
Brian Paul
b9ac4afff7 omit installmesa script from tarballs 2006-08-28 15:12:07 +00:00
Brian Paul
a394f546a4 check for GL_ARB_point_parameters 2006-08-28 14:20:19 +00:00
Aapo Tahkola
9cb82f7917 close #6318 2006-08-27 13:24:36 +00:00
Sean D'Epagnier
a38aef93ab The colormap code is now simpler, 15bpp works where it did not before.
The input is fixed so that delete reports '\b' and backspace 127

The vt switching works both right and left.
2006-08-27 01:16:09 +00:00
Ian Romanick
7e9737b370 Explicitly store the names for each function that should have a static
entry point generated.  This allows us to do things like generate a
static entry point for glPointParameterfvARB but not for
glPointParameterfvSGIS.
2006-08-26 21:26:55 +00:00
Alan Hourihane
092d14be92 Fix bug 8010 - locking issues. 2006-08-26 21:21:34 +00:00
Aapo Tahkola
2fd72a7844 fix #8008 2006-08-26 16:24:04 +00:00
Brian Paul
0c46a12365 delete buffers, destroy window upon exit 2006-08-25 22:13:08 +00:00
Brian Paul
6827cf4d9a include texobj.h to silence warning 2006-08-25 22:08:43 +00:00
Brian Paul
96ee800cd4 6.5.1 bug fixes 2006-08-25 22:07:40 +00:00
Brian Paul
4277ea4c0b Error detection/reporting was broken in several places. 2006-08-25 22:06:02 +00:00
Ian Romanick
3fea5910b9 Add a couple of the missing GL 2.0 functions. Enable GLX protocol for
glBlendEquationSeparateEXT.  Add missing enum "get" information for
GL_EXT_texture_filter_anisotropic.
2006-08-25 19:57:37 +00:00
Brian Paul
58d080b025 Free vertex program TnlData, if any. Fixes a mem leak. 2006-08-25 19:46:31 +00:00
Brian Paul
473f1aca7f clamp result.depth to [0,1] if written to 2006-08-25 19:45:31 +00:00
Brian Paul
439d59926a Remove XFree86 CVS keyword. 2006-08-25 18:07:49 +00:00
Brian Paul
a360bc31da Rearrange glBindProgram() code to do all error checking before changing
the binding.  Prevent a potential dangling pointer error.  SF Bug 1544507.
2006-08-25 17:18:56 +00:00
Brian Paul
4bae9a48ec In _save_End(), set CurrentExecPrimitive = PRIM_OUTSIDE_BEGIN_END if
we're in GL_COMPILE_AND_EXECUTE mode.
This fixes bug 7984.
2006-08-25 15:44:09 +00:00
Brian Paul
f38ac5fbac improved comments 2006-08-25 15:42:37 +00:00
Brian Paul
3c54e8376d Rename _mesa_append_modelview_code() to _mesa_insert_mvp_code().
The four DP4 instructions are now inserted at the top of the program
instead of appended to tail.
2006-08-25 15:15:24 +00:00
Brian Paul
383c39e58e use _mesa_alloc_instructions() 2006-08-25 15:14:25 +00:00
Brian Paul
9983a27cbe added _mesa_alloc_instructions() utility function 2006-08-25 15:13:25 +00:00
Ian Romanick
a574c804a0 Add missing enums for GL_SGI_color_table. 2006-08-25 00:56:34 +00:00
Brian Paul
e53e0f47d0 recent bug fixes 2006-08-24 23:37:36 +00:00
Brian Paul
6211a14137 update MAX_INSTRUCTIONS limit 2006-08-24 23:37:13 +00:00
Brian Paul
ebf58ea3a3 According to GL_NV_fragment_program, max frag prog length is 1024 instructions.
Updated MAX_NV_FRAGMENT_PROGRAM_INSTRUCTIONS to 1024.
2006-08-24 23:28:01 +00:00
Brian Paul
77427a1e52 Cg tries to bind NV fragment programs to the GL_FRAGMENT_PROGRAM_ARB target
with glBindProgramARB().  I guess the GL_ARB_fragment_program specification
allows that, but Mesa didn't.
Relaxed the check with a new predicate function: compatible_program_targets().
2006-08-24 23:11:39 +00:00
Brian Paul
e6940f0a33 scalar sources such as 'time.x' weren't accepted by parser 2006-08-24 23:08:01 +00:00
Brian Paul
c6511ab950 Functions for vertex/fragment program transformations, optimizations, etc. 2006-08-24 22:11:40 +00:00
Brian Paul
beb32c4a59 fix bad casts, carry over r200 fix to check for null program string in r300_translate_vertex_shader() 2006-08-24 22:05:35 +00:00
Brian Paul
94ff996cae Check for NULL program string in r200_translate_vertex_program().
Fixes bug reported by Chris Rankin.
Added some new comments.
2006-08-24 22:03:38 +00:00
Brian Paul
a75439093c use _mesa_realloc_instructions() 2006-08-24 21:58:32 +00:00
Brian Paul
3b9b8de9b0 Added _mesa_realloc_instructions() utility function.
Fixed/updated comments for parameter list functions.
2006-08-24 21:57:36 +00:00
Ian Romanick
a5f2206077 GL_EXT_paletted_texture functions should alias GL_SGI_color_table functions.
The functions for GL_EXT_paletted_texture that do not share GLX
protocol with GL_ARB_imaging are supposed to alias the similar
functions from GL_SGI_color_table.  They didn't.  This patch corrects
this problem and enables GLX protocol for both extensions.

Since this removes 3 entries from the dispatch table, this change
creates a lot of changes in the generated files.
2006-08-24 21:42:38 +00:00
Ian Romanick
bf83e652f6 Add a new offset mode to the GL API XML. This mode, called "assign,"
tells the scripts to assign an available offset to the function.  The
important changes are in src/mesa/glapi/gl_XML.py and
src/mesa/glapi/*.xml.

Since the DRI drivers only depend on functions required by the ABI
(e.g., GL 1.2 + ARB_multitexture) having fixed offsets, all functions
not in the ABI use "assign" mode.  This has caused the offset of
basically every function outside the ABI to change.  I have verified
that a libGL with this patch works with a DRI driver without the patch.

Futher, several function were removed from the dispatch tables
altogether.  These are the functions for the following extensions:

	GL_SGIS_texture_filter4
	GL_SGIS_texture4D
	GL_SGIS_detail_texture
	GL_SGIS_sharpen_texture
	GL_SGIX_sprite
	GL_SGIX_instruments
	GL_SGIX_framezoom
	GL_SGIX_tag_sample_buffer
	GL_SGIX_reference_plane
	GL_SGIX_flush_raster
	GL_SGIX_list_priority
	GL_SGIX_fragment_lighting
	GL_PGI_misc_hints
	GL_EXT_index_material
	GL_EXT_index_func
	GL_3DFX_tbuffer

This removes 50 functions from the dispatch table.
2006-08-24 20:14:45 +00:00
Brian Paul
5947f8fd63 fix fragment.position initialization bug 2006-08-24 19:06:02 +00:00
Ian Romanick
ce9767f863 Make sure that _GNU_SOURCE is enabled in the linux configs that set
HAVE_POSIX_MEMALIGN.  This eliminates a compiler warning.  Also,
clean up some crufty linux-sparc* configs.
2006-08-24 18:06:37 +00:00
Keith Whitwell
39f222a421 add point-position.c 2006-08-24 17:49:37 +00:00
Keith Whitwell
28536e6c4f Test for fragment.position in points primitives. Currently renders
incorrectly on software mesa.
2006-08-24 17:48:53 +00:00
Brian Paul
83304326c8 added glut/mini/ sources to glut tarball 2006-08-24 17:01:35 +00:00
Brian Paul
116411d5f0 Check if mesa_vp->Base.Parameters is null before dereferencing (bug report
from Chris Rankin).
Also, fix some bad casts.
2006-08-24 15:57:12 +00:00
Ian Romanick
4169c220bd Fix some problems with the generation of the size tables. Enable
generation of protocol tables for Render.
2006-08-24 00:26:47 +00:00
Brian Paul
a95d5f0f58 silence warning 2006-08-23 23:18:39 +00:00
Brian Paul
4d12a05e6c Added _mesa_lookup_program() and _mesa_lookup_bufferobj() functions to avoid
a lot of casting elsewhere.
Use _mesa_lookup_texture() in tdfx driver, use _mesa_lookup_bufferobj() in r300
driver.
2006-08-23 23:10:14 +00:00
Ian Romanick
261a806f9e New script and API description file to enable generate of GLX protocol
decode tables in the server.
2006-08-23 20:32:48 +00:00
Brian Paul
d21ccb49c0 update glut fbdev sources list 2006-08-23 19:46:17 +00:00
Sean D'Epagnier
bd3e6ec066 VT switching now uses correct keys.
exiting when virtual screen size is larger than regular size doesn't corrupt screen.
colormap is reset when using stdin input on exit.
return is not reported as ctrl-m but '\r' as it should be
backspace keycode was incorrect and not working, fixed
2006-08-23 07:55:48 +00:00
Aapo Tahkola
43c9587ed4 remove duplicate pieces of code. 2006-08-22 22:27:32 +00:00
Aapo Tahkola
cafb0617ea extend some DrawRangeElements cases to support rendering more than 65535 verts in one blast. ut2k4 cases in other words ... 2006-08-22 21:54:50 +00:00
Aapo Tahkola
50eae3af7a fix broken write-only depth setting. use early z where possible. 2006-08-22 21:05:37 +00:00
Ian Romanick
723db7212c Correct the name of the GL_NV_texture_expand_normal extension. 2006-08-22 18:44:58 +00:00
Ian Romanick
d319edff1e The TLS dispatch functions for x86-64 are fixed-size, just like on
x86.  This means that the position of each dispatch function can be
calculated as (dispatch_offset * size_of_function) + glNewList.  This
allows us to not store the function pointers in glprocs_table_t.

This same optimization has been done for quite some time on x86.  We
could probably also do this for some cases of the SPARC dispatch as
well.
2006-08-22 18:22:20 +00:00
Ian Romanick
4e4b5f4008 Add new attribute called static_dispatch to the <function> element. This
boolean attribute, which defaults to true, determines whether or not a
static dispatch function is available in libGL for applications to link
against.

Ideally, any new functions that are not part of the ABI should not have
directly accessable dispatch functions.  This forces applications to use
glXGetProcAddress to access these functions.  By doing this we can
gracefully remove functions from libGL without breaking the linkage of
applications.

Note that the static dispatch functions are still generated.  However, they
are given names like gl_dispatch_stub_820 and are marked with the "hidden"
linker attribute.

All extension functions added since the previous Mesa release (6.5) have
been marked as 'static_dispatch="false"'.
2006-08-22 16:34:38 +00:00
Brian Paul
6423ec9145 move ALL_SOURCES to sources file 2006-08-21 16:05:30 +00:00
Brian Paul
b20814fd7d remove FBDEV_DRIVER_OBJECTS assignment (in sources file) 2006-08-21 15:50:41 +00:00
Brian Paul
d5299bf9a1 various updates 2006-08-21 14:26:06 +00:00
Michal Krol
1d67cad9af More GLSL preprocessor code:
Rename slang_version.syn to slang_pp_version.syn.
The #version directive understands version 120.
Cosmetic changes in version preprocessor.
Checks if requested version is supported by the compiler.
2006-08-21 09:25:11 +00:00
Michal Krol
798ef5ce33 GLSL 1.20 constructors and operators. 2006-08-21 08:47:28 +00:00
Roland Scheidegger
bd4c8ec0ec remove the now confusing option to manually enable software ARB_vp if drm is not new enough on r200 2006-08-19 08:54:03 +00:00
Sean D'Epagnier
c6fc823987 Removed ifeq from makefile, and corrected fbdev driver so it compiles 2006-08-19 00:28:36 +00:00
Brian Paul
cf4d2f7109 updates for 6.5.1 2006-08-18 20:24:54 +00:00
Brian Paul
92c43b110c Fix-ups for linux-fbdev config. No longer build Xlib driver sources. 2006-08-18 20:20:28 +00:00
Sean D'Epagnier
7e4152f0ed The driver now compiles correctly without any x headers or libraries installed
The bitmap and stroke code can't be shared with glx anymore because of this.

The model for the mini teapot is restored and I have tested it to work with
linux-fbdev and linux-solo

The driver recognizes 32bpp where there is no alpha (my radeon 7500)  It also
sets the correct number of cmap entrees (instead of 256 which can be an error)
2006-08-18 10:38:15 +00:00
Alan Hourihane
bd87c303e9 Fix writemasks on texture arb fp instructions.
Cleanup invarient state emission.
2006-08-18 09:04:48 +00:00
Brian Paul
c1c282f36a sort the FEATURE_ defines 2006-08-17 14:27:10 +00:00
Brian Paul
9dc90cd5f3 added FEATURE_EXT_timer_query and tests 2006-08-17 14:25:04 +00:00
Brian Paul
5928718475 change #ifdef to #if 2006-08-17 14:16:03 +00:00
Brian Paul
6206aec90a change tex memory allocation calls (debian bug 383209) 2006-08-16 20:53:39 +00:00
Ian Romanick
a7d0256745 When available, which is most of the time, use posix_memalign to implement
_mesa_align_malloc and friends.
2006-08-16 17:06:08 +00:00
Ian Romanick
ab6cf9dd62 Enable support for GL_EXT_gpu_program_parameters for R300. 2006-08-15 16:48:06 +00:00
Ian Romanick
8c41c757fe Add support for GL_EXT_gpu_program_parameters. Any driver that enables
either GL_ARB_vertex_program or GL_ARB_fragment_program should enable this
extension as well.
2006-08-15 16:47:34 +00:00
Ian Romanick
5208d93a41 Add test for GL_EXT_gpu_program_parameters. 2006-08-15 16:44:32 +00:00
Ian Romanick
daea717634 Remove extraneous trailing semicolon. 2006-08-15 16:26:34 +00:00
Brian Paul
37b5b01217 s/GLvoid/void/ to fix gcc 4.2 issue (bug 7875) 2006-08-15 14:28:03 +00:00
Michel Dänzer
061a3fe340 Bug #7169: Attempt to make libGL symbols visible to drivers.
Some applications end up dlopening libGL without RTLD_GLOBAL, so the libGL
symbols referenced by the driver can't be unresolved when libGL dlopens it.
This attempts to make the libGL symbols visible to the driver by dlopening
libGL (again) with RTLD_GLOBAL before dlopening the driver and dlclosing
the obtained handle afterwards.
2006-08-14 15:53:37 +00:00
Aapo Tahkola
24cd8e22f5 gcc-4.1.1 compile fix 2006-08-12 13:31:15 +00:00
Ian Romanick
357addfc45 Add comments explaining a couple "mystery" bits. 2006-08-12 00:11:05 +00:00
Ian Romanick
32a9e9be0c Fix white-space problem in the prototype for glBlitFramebufferEXT that
prevented gl_mangle.h from picking it up.
2006-08-12 00:05:54 +00:00
Ian Romanick
8fbe16d4dd Fix long standing bug that prevented newer drivers from working with
older libGL.  The data in extension_helper.h erroneous instructed
drivers to expect all functions with establised offsets, even those
not in the ABI, to have a specific offset allocated.  This is just
wrong.  A function is either in the ABI and has a set offset or a
function is not in the ABI and has a re-map offset.
2006-08-11 23:56:37 +00:00
Ian Romanick
56f349515c Convert comment header for __GLcontextModesRec to Doxygen style. 2006-08-11 22:26:49 +00:00
Aapo Tahkola
8ff5e37f58 support shorts as vertex data 2006-08-11 13:59:37 +00:00
Eric Anholt
2332812644 Add padding to match the current xf86-video-intel DDX->DRI interface. 2006-08-10 21:26:50 +00:00
Adam Jackson
3775b566fa mkdir -> mkdir -p, since /usr/include might not exist in the installroot yet 2006-08-10 20:24:50 +00:00
Adam Jackson
be85fde82b linux-indirect target fixes. 2006-08-10 20:19:57 +00:00
Brian Paul
b7a661cf8c 6.5.1 relnotes 2006-08-10 14:57:24 +00:00
Brian Paul
795e83f809 latest updates for 6.5.1 2006-08-10 14:54:19 +00:00
Alan Hourihane
a89b099c74 Fixup more PROGRAM_UNDEFINED problems. 2006-08-10 13:14:24 +00:00
Alan Hourihane
8d97265711 Fix some breakage after the PROGRAM_UNDEFINED change 2006-08-10 13:12:00 +00:00
Sean D'Epagnier
7196cddb3a Added initial multisampling support to glfbdev driver.
Fully implemented glutGameMode, and added vidresize stubs to make
Added support for glutReshapeDisplay to change video mode but not lose
current mesa context.
implementation glut 5 complient.
Fixed many minor bugs
Updated docs
2006-08-10 10:21:17 +00:00
Brian Paul
54e15d6585 finish up texstore for SL8 texture format 2006-08-10 04:14:05 +00:00
Michal Krol
7ba08ac45a GLSL 1.20 built-in library. 2006-08-09 21:22:59 +00:00
Michal Krol
edefc658e4 More GLSL code - more support for vec4 operations on x86 back-end. 2006-08-09 20:05:26 +00:00
Eric Anholt
9f344b3e7d Add Intel i965G/Q DRI driver.
This driver comes from Tungsten Graphics, with a few further modifications by
Intel.
2006-08-09 19:14:05 +00:00
Eric Anholt
7b52bed987 Add PROGRAM_FILE_MAX for i965 driver.
While here, make PROGRAM_UNDEFINED just the next value in the enum.
2006-08-09 19:10:23 +00:00
Brian Paul
46f20579a2 implement some of the sRGB texstore functions 2006-08-09 02:42:25 +00:00
Brian Paul
4b1e6a4b58 remove stray text from previous check-in 2006-08-07 14:09:13 +00:00
Sean D'Epagnier
6545ebbd8d Modified config to use glut/fbdev, added demo and sample directories. 2006-08-05 08:55:10 +00:00
Sean D'Epagnier
288d4b6ebe Modularized code into multiple files.
Added gamemode stubs, iconify support, joystick stubs.

Fixed color index mode, added 8 bit alpha blending, enabled cmaps even
with 15, 16, 24, and 32 depths as some fbdev drivers need this.

Fixed compiling with -ansi

Using SIGIO for keyboard input, so that vt switching is enabled even
if the program is locked.

Fixed numerous small bugs.
2006-08-05 08:24:29 +00:00
Brian Paul
0606ad45f6 fix typo, indentation 2006-08-04 22:09:43 +00:00
Karl Schultz
4818b0bea1 export new _mesa_* functions 2006-08-04 19:45:29 +00:00
Brian Paul
5c488dcab2 fix bug when pushing ReadBuffer state for GL_PIXEL_MODE_BIT 2006-08-04 13:41:25 +00:00
Claudio Ciccani
21dc092324 Handle GLUT_DEVICE_KEY_REPEAT,GLUT_OWN_JOYSTICK,GLUT_JOYSTICK_POLL_RATE in glutDeviceGet(). 2006-08-04 12:43:33 +00:00
Claudio Ciccani
3ab2dd9f91 Moved glutDeviceGet() to events.c.
Implemented glutIgnoreKeyRepeat() and glutSetKeyRepeat().
2006-08-04 10:49:43 +00:00
Brian Paul
0a4be70368 more work for GL_EXT_texture_sRGB. 2006-08-04 03:44:53 +00:00
Brian Paul
2eb00b4388 use WRITE_MASK_* instead of 0x1, 0x2, etc 2006-08-03 17:10:45 +00:00
Brian Paul
3163542841 Added a check to prevent rebuilding Mesa with a different configuration
without first doing 'make realclean'.
2006-08-03 16:58:06 +00:00
Brian Paul
9c3876d7d8 New wrapper functions: _mesa_dlopen(), _mesa_dlsym(), _mesa_dlclose().
Eventually move them into imports.c
2006-08-03 03:59:20 +00:00
Brian Paul
6c071592ab added GL_EXT_texture_sRGB 2006-08-03 03:23:05 +00:00
Brian Paul
8d214bc804 Initial work for GL_EXT_texture_sRGB. 2006-08-03 03:20:52 +00:00
Brian Paul
35fe7cfae4 fix link for Aqsis 2006-08-02 21:26:15 +00:00
Michal Krol
b60a3da43f Enable vec4 extension for x86 back-end. 2006-08-02 14:51:24 +00:00
Michal Krol
1616f5b621 Change fragment shader to utilize faster vec4 operations. 2006-08-02 14:46:50 +00:00
Michal Krol
7a70391575 Add test for vec4 extension. 2006-08-02 14:45:24 +00:00
Michal Krol
3b5e02cc7c Add vec4 extension. 2006-08-02 14:44:46 +00:00
Michal Krol
60ba2d88b3 Fix mmFindBlock function. 2006-08-02 14:22:06 +00:00
Michal Krol
365582dd6f Clean-up FEATURE_ARB_shader_objects #ifdefs. Bug 7492. 2006-08-01 20:07:31 +00:00
Brian Paul
cc738e004f casts and assertions 2006-08-01 20:03:29 +00:00
Brian Paul
f05e7eba95 code to draw engine block 2006-08-01 20:03:05 +00:00
Michal Krol
90d7b9c9eb Move GL_MESA_shader_debug from glext.h to gl.h. 2006-08-01 16:06:08 +00:00
Brian Paul
e724324894 renderbuffer fixes (Sean D'Epagnier) 2006-08-01 14:33:05 +00:00
Claudio Ciccani
9a4f15ee59 Fixed warnings. 2006-08-01 14:32:02 +00:00
Aapo Tahkola
689df543db fix #6991 2006-07-31 23:21:50 +00:00
Brian Paul
667dd3c3e8 added glut fbdev files 2006-07-31 14:25:53 +00:00
Brian Paul
fe3242f00a GLUT on fbdev driver. Sean D'Epagnier 2006-07-31 14:24:21 +00:00
Michal Krol
e8947a5fa0 Add support for GL_MESA_shader_debug. 2006-07-30 15:29:11 +00:00
Michal Krol
91dbc04d5e Commit enums for GL_MESA_shader_debug.spec. 2006-07-30 15:19:19 +00:00
Michal Krol
32bf274f78 Program to convert .syn file to .h headers. 2006-07-30 14:48:01 +00:00
Claudio Ciccani
fc434622b3 Clear window's event mask before enabling handled events. 2006-07-30 14:47:51 +00:00
Michal Krol
4cc87c7248 Add support for GL_MESA_shader_debug. 2006-07-30 14:45:25 +00:00
Michal Krol
c26999fd2c Fix dependencies. 2006-07-30 14:33:53 +00:00
Michal Krol
d2ac9ab6ee More text. 2006-07-30 14:28:38 +00:00
Michal Krol
39dd5196e6 Optimize shaders.
Use frame counter.
2006-07-29 09:42:03 +00:00
Eric Anholt
0e6ef1b1cd Fix build failure in the savage driver. 2006-07-28 21:30:14 +00:00
Jerome Glisse
32d61d0616 r300_emit.h cleanup.
Remove unused macro
Replace LOCAL_VAR, PREFIX*
Indent code
Remove radeon redundant CP type 3 packet
2006-07-27 22:51:14 +00:00
Brian Paul
a7722cb794 load SLANG_FRAGMENT_FIXED_SECONDARYCOLOR 2006-07-21 20:52:43 +00:00
Brian Paul
c28399baa7 just reindent 2006-07-21 20:49:20 +00:00
Brian Paul
a97492f4df added arrayobj.[ch] files 2006-07-21 19:56:52 +00:00
Brian Paul
9d9d7b1dee check for non-nill pwc in WMesaMakeCurrent(), bug 7585 2006-07-21 19:52:59 +00:00
Brian Paul
122629f279 Some structure renaming. Prefix vertex/fragment-related structs with
"gl_" to match other structs.
2006-07-20 16:49:57 +00:00
Brian Paul
459db7bd72 bump MESA_TINY to 1 2006-07-20 04:34:36 +00:00
Brian Paul
a623e008c6 move/update comments 2006-07-20 04:24:42 +00:00
Brian Paul
2f12458fb3 use ctx->Light.ShadeModel instead of ctx->_TriangleCaps 2006-07-20 04:17:11 +00:00
Brian Paul
a1a6ac4af4 Instead of testing ctx->_TriangleCaps for flat/smooth shading, just use ctx->Light.ShadeModel 2006-07-20 04:16:26 +00:00
Brian Paul
4e2de9531e remove unused NEED_TWO_SIDED_LIGHTING() macro 2006-07-20 03:56:16 +00:00
Brian Paul
ad15866ef0 For glGetTexImage(), move the _mesa_validate_pbo_access() error check into
_mesa_GetTexImage() so it's not needed in the fallback or driver functions.
2006-07-19 16:13:15 +00:00
Brian Paul
0749e2723b Several loops over the map1/2 evaluator arrays were incorrect.
There's only 16 evaluator maps.  Define new _TNL_NUM_EVAL constant for
those loops.
Also, fix priority of GL_NV_vertex_program generic maps - they override the
conventional maps.
See bug 7564.
2006-07-19 15:28:29 +00:00
Brian Paul
69ddf6cc41 more 6.5.1 additions 2006-07-19 15:09:42 +00:00
Brian Paul
114ecb9d67 indentation fix 2006-07-18 22:33:14 +00:00
Brian Paul
df926955be add missing 'return' after a few _mesa_error() calls in _mesa_GetTexImage() 2006-07-18 22:27:02 +00:00
Brian Paul
813e56db51 Compute ctx->Color._LogicOpEnabled in one place instead of four places! 2006-07-18 19:15:40 +00:00
Tilman Sauerbeck
f81b1dbe37 fix a memleak (that code block has been commented out for years for unknown reasons) 2006-07-15 12:09:27 +00:00
Rune Petersen
416ac254c2 A small logic error.
We need to call do_swizzle() when the scaler _or_ vector unit have a
swizzle other 000/ZERO/111/ONE.

This ensures that the gloss on banners in ut2004 is not angel-dependent
(since when was banners glossy?).
2006-07-15 10:44:25 +00:00
Brian Paul
f4e46e1a46 define FLT_MAX_EXP to 128 if undefined 2006-07-13 20:21:44 +00:00
Ian Romanick
7ef4a07165 Move initialization of server_support from __glXProcessServerString to
__glXCalcualteUsableExtensions.  By having both callers of
__glXProcessServerString initialize the bit-fields passed in, we guarantee
that the correct amount of data is initialized:

This fixes bugzilla #7353.
2006-07-13 15:27:37 +00:00
Brian Paul
883f9891cb LIB_DIR is now just 'lib' or 'lib64'
Replaced $(LIB_DIR) with $(TOP)/$(LIB_DIR), use LIB_DIR in install targets.
Patch by Hanno Böck.
2006-07-13 02:50:27 +00:00
Brian Paul
d9eff8ba19 download/install updates 2006-07-12 20:14:43 +00:00
Brian Paul
b8528ea55e New config var DRI_DRIVER_SEARCH_DIR to specify where libGL should search
(at runtime) for the DRI drivers.
See bug 2372.
2006-07-12 19:40:59 +00:00
Tilman Sauerbeck
e5c28321b2 fix another memleak 2006-07-12 17:06:49 +00:00
Tilman Sauerbeck
e77875dcbe fix a memleak 2006-07-12 16:49:07 +00:00
Brian Paul
59cfd3cd3f destroy window upon exit, remove CVS log comment 2006-07-12 02:34:43 +00:00
Brian Paul
d8bb5ea967 call glutDestroyWindow() to allow checking for mem leaks upon exit 2006-07-12 02:32:21 +00:00
Brian Paul
c04bb519e1 free array objects properly (bug 7493) 2006-07-11 21:56:43 +00:00
Tilman Sauerbeck
c60bcc8966 free GL2Objects unconditionally 2006-07-11 20:13:28 +00:00
Tilman Sauerbeck
c0eb777cd8 free the ArrayObjects hash table 2006-07-11 19:36:27 +00:00
Tilman Sauerbeck
17b5063c6f only access ss->BufferObjects if it's declared 2006-07-11 19:03:21 +00:00
Tilman Sauerbeck
aead688e7f _mesa_destroy_context() frees radeon->glCtx so we must not access it afterwards 2006-07-11 18:35:24 +00:00
Thomas Hellström
bbe197ec1d Revert the SiS and Unichrome DRM version check changes. 2006-07-11 14:56:20 +00:00
Thomas Hellström
85b4ae0654 The SiS and Unichrome drivers assume that the handle to the
AGP map is equivalent to the AGP physical address. Fix this.
2006-07-10 12:20:24 +00:00
Aapo Tahkola
b9920ba7b7 Fix #7195 2006-07-09 00:04:06 +00:00
Brian Paul
27908d2bcb update comment, APP_LIB_DEPS 2006-07-07 14:32:47 +00:00
Brian Paul
04f43226a8 fixup OSMESA_LIBS and make clean target 2006-07-07 14:32:02 +00:00
Brian Paul
8c140c9c37 remove GLUT dependency 2006-07-07 14:31:28 +00:00
Brian Paul
3ae1905744 remove dependency on GLUT 2006-07-07 14:12:04 +00:00
Kristian Høgsberg
218ba1ff54 Don't include unused header files. 2006-07-06 07:28:25 +00:00
Aapo Tahkola
5906acad08 R300_RR_ROUTE_1 still needs to be initialized. 2006-07-05 13:28:01 +00:00
Brian Paul
1ff8daf21e New animated engine demo. 2006-07-04 21:43:21 +00:00
Jerome Glisse
1ad914575a Add R300_VAP_CNTL 0x2140 and cosmetic cleanup. 2006-07-04 20:50:49 +00:00
Brian Paul
525eb0b621 added linux-osmesa 2006-07-04 16:49:58 +00:00
Brian Paul
f385cf115a simple libOSMesa.so-only config, no X 2006-07-04 16:49:41 +00:00
Brian Paul
c6e1784062 enable hw antialiasing (Martijn van Oosterhout) 2006-07-04 13:37:19 +00:00
Brian Paul
2922aa236f fix linking bug (bug 7405) 2006-07-03 23:12:16 +00:00
Brian Paul
77afb43519 additional clipping/viewport fixes (Martijn van Oosterhout) 2006-07-03 23:08:33 +00:00
Roland Scheidegger
46c1419c93 some minor simplifications (same as in r300 driver) since mesa's internally used swizzle and writemask flags are identical to the bits used on the hardware, use a macro to error out if these assumptions are no longer true. 2006-07-03 22:14:54 +00:00
Roland Scheidegger
bf35d70635 check if radeon_drm.h from libdrm is new enough, otherwise print an error to make it easier to figure out why it won't compile... 2006-07-03 22:11:44 +00:00
Jerome Glisse
69f31f5475 Add copyright header and minor cleanup. 2006-07-03 21:35:07 +00:00
Brian Paul
bfb2729f9e disable a new mem leak check until we're sure it's valid 2006-07-03 13:20:32 +00:00
Brian Paul
a6c72b67f6 fix clipping bug on context change (Martijn van Oosterhout) 2006-07-03 13:17:00 +00:00
Tilman Sauerbeck
527cd2544f initialize offset to avoid bogus warnings from valgrind 2006-07-01 21:27:34 +00:00
Brian Paul
be9282bf0b Vertex/fragment program patches (Rune Petersen) 2006-06-30 17:56:50 +00:00
Brian Paul
0cdf2d7413 clipping fixes (Martijn van Oosterhout) 2006-06-30 17:21:32 +00:00
Brian Paul
f63623779a clean-ups 2006-06-30 16:55:39 +00:00
Brian Paul
2893072967 use _mesa_HashDeleteAll() 2006-06-30 15:58:53 +00:00
Brian Paul
66c9be06f9 remove occlude.c demo since GL_HP_occlusion_test no longer available 2006-06-30 15:57:05 +00:00
Brian Paul
c7e164f091 In free_shared_state(), use new _mesa_HashDeleteAll() function to delete
textures, display lists, programs, VBOs, etc.  Less code and more efficient.
2006-06-30 15:44:30 +00:00
Brian Paul
d179e16501 Added _mesa_delete_list() to delete a display list, but don't remove from
hash table.  Make _mesa_destroy_list() static.
2006-06-30 15:41:55 +00:00
Brian Paul
9f6798d6e1 Added _mesa_HashDeleteAll() to delete all entries in a hash table with a
callback function.
Added _mesa_HashWalk() to walk over all entries in a hash table with callback.
2006-06-30 15:39:23 +00:00
Jerome Glisse
7c583f5d11 Fix typo. 2006-06-29 20:01:35 +00:00
Tilman Sauerbeck
f7f5b2c415 destroy left-over VBOs on shutdown 2006-06-29 18:36:51 +00:00
Tilman Sauerbeck
ff3a5b1842 instead of messing with _TNL_LAST_GENERIC and _TNL_FIRST_GENERIC, use _TNL_NUM_GENERIC. this fixes an off-by-one error (we didn't handle the final attribute) 2006-06-29 16:48:45 +00:00
Tilman Sauerbeck
8ca6250d72 cleanup, avoid magic values 2006-06-29 16:47:09 +00:00
Tilman Sauerbeck
ff5b590382 added _TNL_NUM_GENERIC 2006-06-29 16:45:57 +00:00
Brian Paul
787f4965a2 only assert front/back pitch if double-buffered (bug 7663) 2006-06-29 15:44:13 +00:00
Brian Paul
b10ea9843b added src/glx/x11/depend to DEPEND_FILES 2006-06-28 21:58:47 +00:00
Tilman Sauerbeck
6c33475424 propagate errors from parse_generic_attrib_num in parse_attrib_binding (-> don't segfault when you're trying to access invalid generic attributes 2006-06-28 16:26:20 +00:00
Brian Paul
7a7aa2aabb Don't use nested struct definitions in tnl_clipspace_fastpath.
Make attr_type into a top-level type: tnl_attr_type
See bug 7340.
2006-06-27 20:11:00 +00:00
Ian Romanick
4063b1730d Remove the extraneous GL_ prefix from the enums for GL_EXT_timer_query and
GL_EXT_framebuffer_blit.  Enumerants in the XML schema get the GL_ prefix
added to them automatically.  This resulted in things like
"GL_GL_TIME_ELAPSED_EXT" in enums.c.
2006-06-27 16:13:13 +00:00
Aapo Tahkola
291fd257eb Fix stencil clears that have caused problems with redbook/stencil, tests/stencilwrap and ut2k4 adrenaline pills. 2006-06-27 01:46:11 +00:00
Aapo Tahkola
caf0176472 Fix generic vertex attribs (Rune Petersen) 2006-06-27 01:26:47 +00:00
Brian Paul
4e0617849c use trackball code for mouse rotation 2006-06-26 23:00:15 +00:00
Brian Paul
9671548424 virtual trackball code 2006-06-26 22:59:28 +00:00
Brian Paul
199729ff27 locking fixes (Martijn Van Oosterhout) 2006-06-26 19:59:38 +00:00
Brian Paul
78a6000cf2 Use $(LIB_DIR) instead of $(TOP)/lib since libraries sometimes go into lib64/.
Probably need to fix the install destinations too...
2006-06-26 15:34:21 +00:00
Tilman Sauerbeck
0deb088cf0 more cleanups 2006-06-23 16:47:08 +00:00
Brian Paul
3cb56804ca fix glut/freeglut links 2006-06-23 15:27:32 +00:00
Brian Paul
0e794a1bc6 New 'install' targets in makefile. See bug 2372. 2006-06-22 22:50:48 +00:00
Keith Whitwell
b4517527eb A bunch of tiny tests that I've found helpful bringing up drivers from
scratch.  These exercise single pieces of functionality and provide a
gentler ramp than trying to use the mesa demos to bring up drivers with.
2006-06-22 16:32:19 +00:00
Keith Whitwell
5fb9f80e37 exercise min/max lod 2006-06-21 14:04:04 +00:00
Keith Whitwell
942b5b7bc0 exercise position invarient vertex program 2006-06-21 14:03:39 +00:00
Alan Hourihane
feb0ff11e5 Check for a valid context 2006-06-21 10:58:04 +00:00
Brian Paul
4cd9e5c3c9 rewrite gluErrorString() to be more legible 2006-06-20 15:30:26 +00:00
Brian Paul
bd0bfd1dc2 reorder a few token definitions 2006-06-20 14:52:22 +00:00
Michel Dänzer
c28834bfbb Add M32R architecture to test for USE_IEEE and friends (Kazuhiro Inaoka,
from http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=374608).
2006-06-20 09:39:32 +00:00
Brian Paul
1ec9ed4f25 fix span code compilation problems, bug 5858 2006-06-20 03:35:17 +00:00
Ian Romanick
4afcd8aa8b Print the hex value of the errant input when an invalid stencil function is
specified.
2006-06-19 16:39:49 +00:00
Alan Hourihane
161de10ce8 If DrawBuffer isn't set, return immediately 2006-06-19 09:27:04 +00:00
Tilman Sauerbeck
11fceb19d3 no need to handle ARL in a special way, it's a generic scalar operation. only tested on r300. 2006-06-18 14:07:10 +00:00
Aapo Tahkola
16d1024f27 fix broken negate 2006-06-18 12:50:27 +00:00
Aapo Tahkola
e6a17b6052 fix broken address register reads 2006-06-18 12:39:58 +00:00
Brian Paul
385f23edf9 Thread safety for Win32. SourceForge bug #1507315. 2006-06-16 14:50:05 +00:00
Brian Paul
c0168fabed glPush/PopAttrib fix (bug 6891) 2006-06-16 13:45:29 +00:00
Brian Paul
65897c04c8 don't create include/GLES yet 2006-06-16 13:41:05 +00:00
Brian Paul
c97c5f0b6b remove obsolete PointSizePtr 2006-06-16 13:40:06 +00:00
Jouk Jansen
c3c64383ca OpenVMS compile support update
Modified Files:
 	Mesa/src/mesa/main/descrip.mms
 ----------------------------------------------------------------------
2006-06-16 13:14:35 +00:00
Brian Paul
be906fe05e added some comments, braces in _mesa_BindTexture 2006-06-15 15:39:10 +00:00
Brian Paul
2d77b25c27 minor clean-ups 2006-06-15 15:36:06 +00:00
Brian Paul
9960ddcd66 comments for gl_array_object struct 2006-06-15 15:34:13 +00:00
Keith Whitwell
0b994ef589 Call _mesa_resize_framebuffer() within intelWindowMoved(). Fixes
googleearth glitches.
2006-06-15 12:47:29 +00:00
Keith Whitwell
d048b7d36e Protect _swrast_read_rgba_span with RENDER_START/FINISH 2006-06-14 10:48:09 +00:00
Brian Paul
4f68411e77 s/ATTRIBUTE/GENERIC/ 2006-06-14 04:15:16 +00:00
Brian Paul
62e1fae858 A number of vertex buffer fields like NormalPtr, FogCoordPtr, etc are really
just aliases for members of the VB->AttribPtr[] array.
Begin replacing FogCoordPtr with VB->AttribPtr[_TNL_ATTRIB_FOG], and similarly
for NormalPtr, TexCoordPtr, PointSizePtr, etc.
2006-06-14 04:05:17 +00:00
Brian Paul
62dc134771 Rename _TNL_ATTRIB_ATTRIBUTE* to _TNL_ATTRIB_GENERIC* 2006-06-14 03:30:57 +00:00
Brian Paul
3c18d49607 new assertion 2006-06-14 03:29:08 +00:00
Brian Paul
ee06106082 Do a cheesy implementation of glXWait/GetVideoSyncSGI() functions, but
disable reporting the GLX_SGI_video_sync extension anyway.
Google Earth works now.
2006-06-13 23:06:25 +00:00
Brian Paul
2d087480b4 GLX_BAD_CONTEXT checks in video-sync functions 2006-06-13 23:04:41 +00:00
Brian Paul
e49aea9cef remove debug printf 2006-06-13 22:17:41 +00:00
Brian Paul
f9d88c8204 clean-ups and new comments 2006-06-13 17:24:36 +00:00
Brian Paul
4df010b296 fix glVertexAttribPointerARB's normalized behaviour 2006-06-13 17:17:32 +00:00
Brian Paul
34a3779aae remove unused index_attr1fv() 2006-06-13 17:16:56 +00:00
Brian Paul
7dfdf3a5b7 Rename some functions/macros to better reflect their behaviour:
3F -> 3FN because integer types are normalized
4FC -> 3FN because we can normalize non-color attributes
2006-06-13 17:13:15 +00:00
Brian Paul
44b82dffe8 In import_attrib(), use the from->Normalized flag to choose the right
translation function.
Before this fix the 'normalized' flag to glVertexAttribPointerARB() was ignored.
2006-06-13 17:06:44 +00:00
Brian Paul
5c7c5a762e s/0/NULL/ 2006-06-13 17:04:26 +00:00
Brian Paul
1c546ae552 When using an ARB vertex program, the generic vertex arrays do not alias the
conventional arrays.
Typo: s/writeable/writable/
2006-06-13 17:03:25 +00:00
Brian Paul
8bc00c2047 fix size assertions in _mesa_init_teximage_fields() 2006-06-13 16:45:28 +00:00
Brian Paul
212d7e8369 minor simplification in texcoord array import 2006-06-13 14:50:44 +00:00
Michel Dänzer
73e73ffdd5 Fix command line parsing. 2006-06-13 08:37:03 +00:00
Brian Paul
bd1e587ebe remove some unneeded #includes 2006-06-13 03:29:02 +00:00
Brian Paul
0395cc01fd Fix a few conversion bugs. For example, GLshort->GLfloat conversion
didn't work for color arrays.
2006-06-13 03:22:52 +00:00
Kristian Høgsberg
c25eb99f95 Fix all instances of calling __glXSetupForCommand before GetReqExtra. 2006-06-13 01:41:18 +00:00
Brian Paul
18d0efb555 removed incorrect const qualifier 2006-06-13 01:14:48 +00:00
Ian Romanick
9853aac495 Make r300 driver build with GL_APPLE_vertex_array_object changes.
Sorry for the breakage.  These changes are only build tested.
2006-06-12 22:39:49 +00:00
Brian Paul
a3feff414f GL_APPLE_vertex_array_object is new 2006-06-12 20:02:45 +00:00
Brian Paul
48c03d7c9f s/buffer/arrays/ 2006-06-12 20:02:11 +00:00
Brian Paul
d2fb24a671 make do_vertex_attrib_enable() static 2006-06-12 19:59:34 +00:00
Brian Paul
f2ce358331 include glxclient.h to silence missing prototypes warning 2006-06-12 19:56:57 +00:00
Brian Paul
c8f8fbecd7 remove const qualifier from glGenVertexArraysAPPLE() parameter 2006-06-12 19:47:44 +00:00
Brian Paul
0e0e3b05ab include arrayobj.h 2006-06-12 19:46:14 +00:00
Brian Paul
050d39b3f4 remove unused var 2006-06-12 19:45:43 +00:00
Ian Romanick
ee34e6ef71 Add support for GL_APPLE_vertex_array_object. Several test programs
and demos are also added.

Adding basic support to drivers should be as easy as just enabling the
extension, though thorough test would also be required.
2006-06-12 16:26:29 +00:00
Alan Hourihane
6254d59043 fire vertices before context destruction. 2006-06-12 08:52:29 +00:00
Tilman Sauerbeck
51eb359ea9 destroy the memory manager along with the context 2006-06-11 09:12:27 +00:00
Roland Scheidegger
5b90cf2f2f enable arb_vertex_program by default if drm is new enough. Do a fallback when it's a nv_vp as there could be issues. 2006-06-10 00:51:54 +00:00
Claudio Ciccani
da4b01211b Added some notes about this implementation. 2006-06-09 15:20:26 +00:00
Claudio Ciccani
4812a59754 Enable setting invible cursors. 2006-06-09 15:19:05 +00:00
Claudio Ciccani
6acc6dd0c4 Separated joystick pointer coordinates from mouse pointer coordinates. 2006-06-09 15:18:04 +00:00
Roland Scheidegger
52c5d9c5b7 shuffle some code to make some assertions in the _savage_texstore_a111xxxx functions compile without error... 2006-06-09 00:28:53 +00:00
Brian Paul
5dbd0a400a added info about prerequisites for building DRI drivers 2006-06-08 23:42:07 +00:00
Brian Paul
11ea8cb0a2 fix glBegin error test 2006-06-08 23:12:58 +00:00
Brian Paul
ee7e58e111 check for invalid mode in glBegin(), bug 7142 2006-06-08 23:11:35 +00:00
Tilman Sauerbeck
a0daa1220f include tnl/tnl.h for _tnl_program_string() 2006-06-08 21:17:08 +00:00
Tilman Sauerbeck
3ebf0418a9 mark ARL operand as scalar (Roland Scheidegger) 2006-06-08 21:12:21 +00:00
Tilman Sauerbeck
0bc09bdace struct op_names: get rid of the 'output operands' field as it's not used (Roland Scheidegger) 2006-06-08 21:09:17 +00:00
Brian Paul
0c65604eeb links to ClosedGL and S3TC library 2006-06-08 19:59:41 +00:00
Roland Scheidegger
d6213e6023 Improve slightly wrong CMP_SRCS test to avoid unencessary instructions. Clean up the r200 vertex program code a bit. 2006-06-08 17:46:21 +00:00
Brian Paul
808809b061 updated Pixmap vs. XImage info 2006-06-07 14:01:31 +00:00
Aapo Tahkola
37474eca68 prevent possible program mix up with sw vps (Roland Scheidegger) 2006-06-06 23:44:05 +00:00
Aapo Tahkola
9248882ca2 prevent run_arb_vertex_program from running tnl programs unless ctx->_MaintainTnlProgram is set 2006-06-06 22:24:12 +00:00
Aapo Tahkola
9ba2006594 make sure tex format is supported. 2006-06-06 18:37:45 +00:00
Aapo Tahkola
2f42558050 various fixes (Roland Scheidegger) 2006-06-06 18:25:47 +00:00
Ben Skeggs
6d1f98da2b A couple of quick fixes, the original had some half-finished
modifications..
2006-06-03 17:15:50 +00:00
Ben Skeggs
ac9d1ecec2 Another TODO, so I don't forget.. 2006-06-03 16:37:46 +00:00
Ben Skeggs
5411b96c5f Add start of vertex shader backend, will most likely not work correctly yet 2006-06-03 16:36:23 +00:00
Brian Paul
4cb9fffa7e Added simple lookup_bufferobj() function to wrap the _mesa_HashLookup() call
and cast.  Simplifies the code a little bit elsewhere.
2006-06-03 15:32:27 +00:00
Brian Paul
3696f0ee1d updates for using libdrm (Hanno Bock) 2006-06-03 15:17:07 +00:00
Brian Paul
6f172f7aba minor clean-ups 2006-06-02 22:51:45 +00:00
Roland Scheidegger
98c791b543 implement arb_vertex_program in hw for r200. Code contains still some hacks, generic attribs cause a fallback, but otherwise it seems to work quite well. Passes all glean vertProg1 tests with the exception of the degnerated LIT case (which is a hw limitation), as well as runs the r200 render path of doom3/quake4 (1.1 patch needed for quake4). The code is heavily borrowed from the r300 driver as vertex programs encoding is almost identical. arb_vertex_program is not yet announced by default and still needs to be enabled via driconf. 2006-06-02 22:47:31 +00:00
Brian Paul
65ced47453 Thomas Sondergaard's API tracer 2006-06-02 14:50:28 +00:00
Brian Paul
21fbdb14e9 set per-context GL_DRAW_BUFFER state regardless of currently bound FBO 2006-06-02 12:51:56 +00:00
Brian Paul
79d8db77b9 fix depth-format rectangular textures 2006-06-02 12:47:42 +00:00
Brian Paul
2b04dd9d2c fix depth-component test to allow rectangular textures 2006-06-02 12:46:53 +00:00
Roland Scheidegger
b302419abe remove code dealing with drmMinor version < 6 since all radeon drivers request at least drmMinor 6 anyway. 2006-06-02 01:52:54 +00:00
Roland Scheidegger
5377ac80dc retry on EBUSY instead of EAGAIN in radeonWaitIrq (it appears this was the intention as drm seems to never return EAGAIN) in all radeon drivers. 2006-06-01 23:21:43 +00:00
Roland Scheidegger
fe57ed4f25 Fix extended swizzling in vertex programs by introducing special swizzle instruction, extend the 2 bit rsw field to 3 bit like used in other places. While here, also fix up rsw (negation), dph and try to fix up rsq with negative values (doesn't work, bug seems elsewhere) in the sse codegen code. 2006-06-01 22:56:40 +00:00
Brian Paul
4d3ab19abf document MESA_TEX/TNL_PROG env vars 2006-06-01 20:22:30 +00:00
Brian Paul
1ec9b5a5a9 fix extension_supported() function, added comments 2006-05-31 20:36:52 +00:00
Tilman Sauerbeck
e689a7fc6a SWZ is nearly identical to MOV. the difference is that SWZ supports per-component negation, which MOV doesn't. as that's handled transparently, we can use the same code for them. 2006-05-31 17:57:14 +00:00
Tilman Sauerbeck
49db174df5 pass src->NegateBase as-is in t_src() now, as the flags are equivalent to r300's VSF_FLAGs now 2006-05-31 17:37:23 +00:00
Claudio Ciccani
9efe17ed91 Updated config file. 2006-05-31 17:06:05 +00:00
Claudio Ciccani
fe94d0b335 Added some example progs using DirectFBGL. 2006-05-31 17:05:11 +00:00
Claudio Ciccani
b18191cf30 Added DirectFB GLUT implementation. 2006-05-31 17:02:45 +00:00
Claudio Ciccani
9400550c16 Fixed bug with multiple contexts.
Added support for ARGB4444 and ARGB2554.
Added hardware accelerated Clear().
2006-05-31 17:00:10 +00:00
Brian Paul
55ad3cc055 fix bug 7077 - mem leak 2006-05-30 22:26:21 +00:00
Brian Paul
a8c4242395 Define new NEGATE_* tokens for setting the src register's NegateBase field.
Before, we were using GL_TRUE/GL_FALSE in a few places.
Note: only the SWZ instruction can negate individual components.
2006-05-30 22:17:35 +00:00
Brian Paul
e4cb9cd167 remove redundant 'const' 2006-05-30 22:15:24 +00:00
Brian Paul
8333012b56 free convolved image / fix mem leak (bug 7077) 2006-05-30 21:58:55 +00:00
Tilman Sauerbeck
1d0fa45bc1 minor code cleanup, no actual changes 2006-05-30 18:49:20 +00:00
Tilman Sauerbeck
6be8127ea4 don't generate GL_INVALID_ENUM if GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB, which is actually handled 2006-05-30 16:57:52 +00:00
Michal Krol
51fec69ea6 Add x86sse.h. 2006-05-30 09:59:05 +00:00
Michal Krol
4decba90be Remove not needed forward declaration. 2006-05-30 09:45:33 +00:00
Michal Krol
23b7c7dc14 Make it running under Linux. 2006-05-30 09:38:16 +00:00
Michal Krol
44d5c8668a First draft. 2006-05-30 09:35:36 +00:00
Tilman Sauerbeck
b20cdf1d28 don't do the check for >= MAX_VERTEX_PROGRAM_ATTRIBS twice, it's already done in parse_generic_attrib_num() 2006-05-29 16:24:28 +00:00
Brian Paul
919f6a070c generic attribute 0 wasn't handled correctly (Jesse Allen) 2006-05-29 14:37:56 +00:00
Roland Scheidegger
76b6e88e56 fix some whitespace in previous commit 2006-05-27 09:09:56 +00:00
Roland Scheidegger
8a61821057 preparation for r200 hw vertex programs. Increase R200_CMD_BUF_SZ to 16k instead of 8k (the reasons why it was exactly 8k are unclear). Add register defines, sanity code, fix potential issue with wrong statechange order when disabling fragment programs. 2006-05-27 09:03:25 +00:00
Brian Paul
04fa003a50 The ctx->_TexEnvProgram that's allocated in update_state() doesn't seem to
be needed (it's set in texenvprogram.c) and is a memory leak according to
valgrind.
Disable with #if 0 / #endif
2006-05-24 03:34:17 +00:00
Brian Paul
65a51c0d62 Roll _mesa_free_parameters() into calling function (the only caller).
Replace assert(0) with _mesa_warning().
Use new _mesa_align_realloc() function.
New comments, clean-ups.
2006-05-24 03:30:31 +00:00
Brian Paul
5a67af97fa fix a small memory leak in _mesa_add_state_reference() 2006-05-24 03:25:22 +00:00
Brian Paul
1798d9a8a4 added _mesa_align_realloc() 2006-05-24 03:15:46 +00:00
Brian Paul
0c1cbd5805 use GLbitfield for StateFlags, improved comments 2006-05-24 03:01:58 +00:00
Brian Paul
d9736db667 Add const qualifiers in a number of places. 2006-05-23 02:44:46 +00:00
Brian Paul
f5a2ac95c3 init mask=0 to silence warning 2006-05-23 02:16:20 +00:00
Brian Paul
fe9026d04a make mgaSetFence() and mgaWaitFence() static 2006-05-23 02:13:53 +00:00
Brian Paul
a6f7f10efa prototype i915_udpate_fog() to silence warning 2006-05-23 02:12:08 +00:00
Brian Paul
b8f2f6fee1 In cache_item(), there was sizeof(void) expression.
Replace void *key parameter with const struct state_key *
2006-05-23 01:55:31 +00:00
Brian Paul
acc9566b86 GL_INDEX_OFFSET fix 2006-05-22 17:41:59 +00:00
Brian Paul
17befff800 GL_INDEX_OFFSET didn't work with CI->RGB mappings.
Added some const qualifiers.
2006-05-22 17:40:07 +00:00
Keith Whitwell
8065c120c4 memory usage fixes for glean/conform, use a better hash function 2006-05-22 16:09:27 +00:00
Keith Whitwell
64da16146f Fix typo 2006-05-22 14:30:58 +00:00
Keith Whitwell
5ddc53f899 Better caching for texenv programs.
Initialize some values correctly.
2006-05-22 14:17:32 +00:00
Keith Whitwell
7e3fa7e837 Speedup the venerable mm.[ch] allocator with doubly linked lists and a
separate list of free segments.
2006-05-22 12:32:35 +00:00
Brian Paul
b0b6d1abe5 In gl_texture_image, replace ImageStride with an ImageOffsets array.
Some hardware lays out 3D mipmaps in a manner that can't be expressed
with a simple image stride.
The ImageOffsets array is allocated and initialized to typical defaults
in the _mesa_init_teximage_fields() function.  If needed, a driver will
then have to replace these offsets.
TexStore and TexelFetch routines updated to use offsets array.
2006-05-20 16:19:48 +00:00
Brian Paul
226d0187b5 glxinfo -l expanded, fixed bug 6863 2006-05-20 15:18:23 +00:00
Brian Paul
04d5d16415 remove some redundant functions, fix-up reference counting 2006-05-20 15:16:45 +00:00
Brian Paul
89ffca52ac use new _mesa_remove_renderbuffer() 2006-05-20 15:12:42 +00:00
Brian Paul
7ac5b7b934 use new _mesa_dereference_frame/renderbuffer() functions 2006-05-20 15:08:25 +00:00
Brian Paul
b52f02121b Added _mesa_remove_renderbuffer() as a counterpart to _mesa_add_renderbuffer().
Added _mesa_dereference_renderbuffer() to encapsulate renderbuffer
reference count decrement, delete, locking.
2006-05-20 15:07:32 +00:00
Brian Paul
2eb88c1752 Added _mesa_dereference_framebuffer() to encapsulate reference count
decrement, delete and locking.
2006-05-20 15:06:35 +00:00
Brian Paul
cbb19930b3 some new comments 2006-05-19 17:31:09 +00:00
Brian Paul
20e11b2332 remove an assertion 2006-05-19 17:27:33 +00:00
Brian Paul
4e470db0b9 print 2D vs 3D in window 2006-05-19 16:48:42 +00:00
Brian Paul
5ec34f0ff9 also test 3D textures (press '2'/'3' to toggle) 2006-05-19 16:42:01 +00:00
Brian Paul
083f8111aa added some CHAN_BITS tests 2006-05-19 03:49:13 +00:00
Brian Paul
68bc7df638 replace FORMAT var with RB_TYPE 2006-05-19 03:47:16 +00:00
Brian Paul
fd02ca7711 Demonstrate rendering 8, 16 and 32-bit/channel images all in one program.
Like older osdemo.c program, but test more OpenGL features like texturing,
blending, lines.
2006-05-19 03:43:39 +00:00
Brian Paul
e35b9058ce updated docs for off-screen rendering 2006-05-19 03:42:16 +00:00
Brian Paul
d44248ca00 Allow rendering 8, 16 and 32-bit/channel images without recompiling.
Uses new renderbuffer adaptors.
2006-05-19 03:41:37 +00:00
Brian Paul
6a74f65c58 install renderbuffer adaptors when color channel sizes need to be reduced 2006-05-19 03:40:29 +00:00
Brian Paul
d2e5598cd3 added rbadaptors.[ch] files 2006-05-19 03:37:41 +00:00
Brian Paul
e2db790a46 added rbadaptors.c 2006-05-19 03:35:38 +00:00
Brian Paul
3c30b35134 Renderbuffer adaptors.
When compiling Mesa with CHAN_BITS=16 or 32, these adaptors allow rendering
into color buffers with smaller channel sizes.
2006-05-19 03:33:50 +00:00
Brian Paul
23a5c57cee minor simplification 2006-05-18 22:31:19 +00:00
Brian Paul
0ca9082cbd texture EnvColor needs to be converted to GLchan, not GLint 2006-05-18 22:11:09 +00:00
Aapo Tahkola
787fd58186 Dont allow 16 tex units to be used at all. 2006-05-18 21:15:26 +00:00
Brian Paul
5e51ebd8eb use -march=i486 instead of -m486 (bug 6954) 2006-05-18 17:04:13 +00:00
Brian Paul
0d957ca400 change initialization of texcoords - not all C compilers support non-constant array initializers 2006-05-18 14:16:43 +00:00
Brian Paul
3d8a791ff9 add extra APP_LIB_DEPS (bug 6954) 2006-05-18 13:55:31 +00:00
Brian Paul
c717ffa146 added solaris-x86-gcc-static 2006-05-17 22:51:44 +00:00
Brian Paul
7d848c3308 generate shared lib, not static 2006-05-17 22:51:23 +00:00
Brian Paul
9cc115e417 formerly known as solaris-x86-gcc 2006-05-17 22:51:08 +00:00
Brian Paul
4c6319db9c call reshape() after init() to set initial projection/viewing transform (see bug 6941) 2006-05-17 22:44:18 +00:00
Tilman Sauerbeck
b99c801f73 unbreak the build 2006-05-17 16:39:40 +00:00
Dave Airlie
cea0c74bcb add texture rectangle support for i815, I wrote the original patch about
2 years ago, I finally dug out an i815 and got it working
2006-05-17 06:26:25 +00:00
Tilman Sauerbeck
601c02f783 bug 6941: fixed initial rendering problems in glxgears 2006-05-16 16:27:54 +00:00
Michal Krol
bd4256acfd Fix typo. 2006-05-16 10:37:16 +00:00
Michal Krol
0b9d7e477a Add functions. 2006-05-16 10:11:29 +00:00
Michal Krol
969c43108e Write attribs to slang machine. 2006-05-16 10:10:56 +00:00
Michal Krol
b4c5905549 Change error message wording. 2006-05-16 10:10:10 +00:00
Michal Krol
b6e92d090c Rename print() to printMESA(). 2006-05-16 10:09:32 +00:00
Michal Krol
563f8ad50a Fix attrib handling. 2006-05-16 10:08:30 +00:00
Michal Krol
21ef956e9a Extend printMESA function to output also to shader's info log.
Fix float-to-int conversion for x86 back-end.
2006-05-16 10:04:24 +00:00
Michal Krol
a67330d157 Cleanup code. Change constructor prototype. 2006-05-16 10:01:07 +00:00
Michal Krol
d1b40400d6 Cleanup code. 2006-05-16 09:53:42 +00:00
Michal Krol
ecf2e5b0a1 Change constructor prototype.
Fix struct field accessing.
2006-05-16 09:52:02 +00:00
Michal Krol
d2b9e1c560 Remove carriage returns. 2006-05-16 09:44:08 +00:00
Michal Krol
d88c67fd81 Add GetInfoLogLength and WriteAttrib functions.
GetInfoLog for shaders if different - it is a concatenation
of compiler output and executor output produced by printMESA.
Fix bugs.
2006-05-16 09:43:09 +00:00
Michal Krol
a1a02e6203 Cleanup GLhandle-to-object translation macros.
Fix minor bugs.
2006-05-16 09:40:30 +00:00
Michal Krol
32c2f939e6 GLSL regression test suite. 2006-05-16 09:32:30 +00:00
Brian Paul
2ca741ad4b added a few extension #ifdef tests 2006-05-15 15:35:38 +00:00
Brian Paul
5e2e96b6f0 Added a check_context_limits() function that checks that the ctx->Const.*
fields are legal.  May catch some driver development bugs.
Called the first time a context is bound.
2006-05-15 15:26:04 +00:00
Brian Paul
c8ea111166 usage() function 2006-05-15 15:14:37 +00:00
Brian Paul
20215ecc7d remove some unused macros 2006-05-14 16:42:20 +00:00
Brian Paul
d77a165eac s/GLbyte/GLubyte/ 2006-05-14 16:27:10 +00:00
Brian Paul
ed875a4cb3 fix typo, remove dead code 2006-05-14 15:56:07 +00:00
Brian Paul
ad7805dfee Expanded output with -l option: vertex/fragment program and vertex/fragment
shader limits.
Misc sync-ups with x.org copy of glxinfo.
2006-05-13 00:18:12 +00:00
Dave Airlie
f1dbacc6ad the r300 should only use 8 until Mesa can deal with this 2006-05-12 06:03:27 +00:00
Dave Airlie
5d7ab75b02 this should use the configured number not the MAX, this has no effect until
the core mesa swrast number is fixed, just spotted this on the way past
2006-05-12 03:50:10 +00:00
Brian Paul
88cf5aa783 In __glXPushArrayState() we weren't pushing the index field.
But later, in __glXPopArrayState(), we were using that field to set
the active_texture_unit.  The value was garbage and could lead to
things blowing up.
See bug 6863.
2006-05-11 16:27:39 +00:00
Brian Paul
fa489dd043 simplify image setup code, added LOD Bias control (l/L keys) 2006-05-11 01:15:48 +00:00
Brian Paul
aecd02b391 simple texture compression test 2006-05-10 22:47:06 +00:00
Brian Paul
932c2fc291 new test image - Delicate Arch, Utah 2006-05-10 22:44:26 +00:00
Brian Paul
bb2dd388d0 Test program for exercising GL_TEXTURE_BASE_LEVEL and GL_TEXTURE_MAX_LEVEL. 2006-05-10 22:37:56 +00:00
Brian Paul
1e7d84e258 move check for event.xbutton.button <= GLUT_MAX_MENUS (see sf bug 1484284) 2006-05-10 19:21:39 +00:00
Brian Paul
700359ca5a check if button >= GLUT_MAX_MENUS in glutAttacheMenu() 2006-05-10 19:21:16 +00:00
Keith Whitwell
adc0490420 Clean up previous change slightly 2006-05-10 09:00:16 +00:00
Keith Whitwell
452be7e7ef Use a (much!) larger executable memory heap so that the glsl x86
allocations succeed.  I'm not sure this is really necessary...
2006-05-10 08:57:34 +00:00
Brian Paul
2b3aab0717 check event button against GLUT_MAX_MENUS (bug 1484284) 2006-05-09 14:51:57 +00:00
Brian Paul
ab13ec10eb 16/32-bit chan fixes, texture compression fixes 2006-05-09 14:41:08 +00:00
Brian Paul
791e7b385a When error-checking 'unit' against num_texture_units, need to use >=, not >.
See bug 6863.
2006-05-09 14:36:58 +00:00
Brian Paul
008ed1df83 Add a new 'all' parameter to _mesa_get_compressed_formats() to indicate whether
all formats or just those without restrictions/limitations should be returned.
We want all when validating the internalFormat parameter to
glCompressedTexImage2D but only want unrestricted formats when handling the
GL_COMPRESSED_TEXTURE_FORMATS query.
2006-05-09 13:51:17 +00:00
Brian Paul
5e4c39dc0e use _mesa_compressed_texture_size() for GL_TEXTURE_COMPRESSED_IMAGE_SIZE query 2006-05-09 00:00:46 +00:00
Brian Paul
a546769733 two more texture compression fixes 2006-05-08 23:59:38 +00:00
Brian Paul
c3c19be8e0 More updates for texture compression.
Added _mesa_compressed_texture_size_glenum() for validating the imageSize
parameter to glCompressedTex[Sub]Image1/2/3() which does _not_ call
ctx->Driver.CompressedTextureSize() - since that could return a padded size.
2006-05-08 23:52:32 +00:00
Brian Paul
5999c5b620 Fix a number of texture compression issues.
Pass the MESA_FORMAT_* token to the _mesa_compressed_row_stride(),
_mesa_compressed_texture_size() and _mesa_compressed_image_address()
functions since we want to use the driver-chosen format, not the user's
internalFormat hint.
Consolidate code related to choosing the texture format in texstoree.c
2006-05-08 19:14:38 +00:00
Brian Paul
c93c18abf1 fix warning 2006-05-08 19:11:21 +00:00
Keith Whitwell
71b2504e03 updates to dri drivers for recent stencil changes 2006-05-08 09:03:35 +00:00
Brian Paul
960973b2ec added CHAN_BITS != 8 test 2006-05-07 16:16:23 +00:00
Brian Paul
85bc17495b misc clean-ups 2006-05-07 16:14:58 +00:00
Brian Paul
ca8b235188 minor clean-ups around DepthScale/Bias 2006-05-07 16:14:13 +00:00
Brian Paul
8a1848bf99 restore -O flag (bug 6814) 2006-05-06 22:39:33 +00:00
Brian Paul
0c7cbf0a7c Check for overflow when converting floating pt Z values to 32-bit GLuint. 2006-05-06 22:30:33 +00:00
Brian Paul
efbf170cfb updated GLX_EXT_texture_from_pixmap tokens (Dave Reveman) 2006-05-05 18:19:54 +00:00
Brian Paul
9b20b68af1 check for float->uint overflow in _mesa_unpack_depth_span() 2006-05-05 14:49:38 +00:00
Keith Whitwell
6717a7aca0 Define VERT_RESULT_EDGE 2006-05-05 09:26:40 +00:00
Dave Airlie
86740f1593 remove temporary code from keithw, this in theory isn't used at the moment
anyways unless INTEL_BATCH is turned on
2006-05-05 06:53:11 +00:00
Dave Airlie
2364d9abd3 Fix i915 driver after stencil changes in Mesa 6.5 2006-05-05 06:52:32 +00:00
Keith Whitwell
ab377ce414 Release temporary 2006-05-05 00:00:46 +00:00
Ian Romanick
6e2ab82f5c Fix some silly spelling errors. 2006-05-03 17:12:12 +00:00
Dave Airlie
ee251d4313 remove some unneeded includes 2006-05-02 08:58:42 +00:00
David Reveman
bea7fe57c1 Update to final EXT_tfp tokens 2006-05-02 08:54:39 +00:00
Dave Airlie
698b04c735 move the pkg config flags for libdrm to the bottom 2006-05-02 08:32:46 +00:00
Adam Jackson
0157624557 Update function signatures for EXT_tfp entrypoints. 2006-05-01 22:25:18 +00:00
Brian Paul
ae7f22f1ef new, faster version of __gluInvertMatrixd(), bug 6748 2006-05-01 16:01:17 +00:00
Jeremy Kolb
0174d894ef Bumped support for xcb 0.9 2006-04-29 16:13:02 +00:00
Tilman Sauerbeck
c5b3343e65 added a trailing newline to pacify gcc 2006-04-28 21:57:32 +00:00
Tilman Sauerbeck
9ecd280f33 fptest1 requires GL_NV_fragment_program 2006-04-28 21:50:41 +00:00
Brian Paul
6a769d97e3 fix second memory leak (bug 5557) 2006-04-28 15:42:15 +00:00
Brian Paul
49a80ca2bc fix first memory leak (bug 5557) 2006-04-28 15:40:11 +00:00
Brian Paul
c4fe46f0b8 fixes for CHAN_BITS!=8 2006-04-27 02:50:31 +00:00
Brian Paul
444cd293fd assorted clean-ups, fixes 2006-04-27 02:47:50 +00:00
Brian Paul
e814d5e89f replace a bunch of casts with GET_XRB macro 2006-04-27 02:46:20 +00:00
Brian Paul
edc16a5f7a fix a few stride computations in _mesa_texstore_rgba() 2006-04-26 18:43:22 +00:00
Aapo Tahkola
e440bcf41a fix warnings. 2006-04-26 12:00:53 +00:00
Aapo Tahkola
d44c3e647f R300_SPAN_DISABLE_LOCKING env var 2006-04-26 11:36:27 +00:00
Brian Paul
a4ebd5f684 remove _glthread_INIT_MUTEX() call 2006-04-26 03:31:59 +00:00
Brian Paul
65dccf377d fix an assertion 2006-04-26 03:29:30 +00:00
Brian Paul
faee3f0f1e minor clean-up 2006-04-26 03:19:54 +00:00
Brian Paul
901ac21938 remove old XFree86 tag 2006-04-26 03:19:37 +00:00
Brian Paul
9c4fd26bca update some tests for visual bit depths to use renderbuffers 2006-04-25 22:55:19 +00:00
Brian Paul
2486267dda use _TNL_FIRST/LAST_MAT indexes 2006-04-25 22:26:21 +00:00
Michal Krol
6acf1e93a2 Remove carriage returns. 2006-04-25 10:11:59 +00:00
Brian Paul
cb0ae25a4e vertex attrib alias change, glPopAttrib/GL_DRAW_BUFFER bug fix 2006-04-25 00:55:47 +00:00
Brian Paul
94b30dc390 Put color index attribute into the 6th attribute slot.
Update a lot of loops, conditionals to use the _TNL_FIRST/LAST_* values
instead of specific vertex attributes.
Remove the EdgeFlagv function from the GLvertexformat struct.
2006-04-25 00:53:25 +00:00
Brian Paul
5bdc6fdebc silence warnings 2006-04-25 00:31:22 +00:00
Brian Paul
095c6699f4 No longer alias generic vertex attribs with conventional attribs for GL_ARB_vertex_program. 2006-04-25 00:21:32 +00:00
Brian Paul
f12ea2d402 extended swizzle (bug 6727) 2006-04-24 16:33:25 +00:00
Brian Paul
9cd1cc0535 fprintf() clean-up (bug 6730) 2006-04-24 16:32:05 +00:00
Brian Paul
263fff44b4 updated assertion 2006-04-23 15:28:54 +00:00
Aapo Tahkola
44a22a2c28 enable feedback rendering 2006-04-23 08:04:50 +00:00
Aapo Tahkola
a55842b9b3 disable hw locking when entering span rendering for now 2006-04-23 07:59:40 +00:00
Aapo Tahkola
95cc7a6dac need to hold before freeing 2006-04-23 07:15:19 +00:00
Benjamin Herrenschmidt
aa93b4ced0 Enable USER_BUFFERS, RADEON_VTXFMT_A and HW_VBOS on big endian by forcing all elts
to 32 bits (it would be possible to do a half word swap for 16 bits if somebody is interested) and by using the input route mecanism to swap ubyte's properly in r300EmitArrays. Tested with cva, varray and quake3
2006-04-23 05:54:06 +00:00
Brian Paul
2f92adb9e0 Fix yet another issue with popping GL_DRAW_BUFFER state with respect to
single vs. multiple outputs and what kind of FBO is currently bound.
2006-04-22 01:20:20 +00:00
Adam Jackson
e60ce392d8 Ensure all GART allocations are freed on context destruction, rather than
waiting for the DRM to reap them at process exit.  Fixes (fatal) allocation
failures in AIGLX configurations.

Reviewed by: Aapo Tahkola
2006-04-21 19:53:52 +00:00
Adam Jackson
ca98203cd9 Fix format strings for LP64 2006-04-21 19:51:29 +00:00
Brian Paul
b87957d59a pass color index as float, not int 2006-04-21 02:44:35 +00:00
Brian Paul
ba999b1a3f depend is not a .PHONY target 2006-04-21 01:13:16 +00:00
Brian Paul
a95dd106e3 fix indentation 2006-04-21 01:02:49 +00:00
Brian Paul
fb87976ef6 use vertex.attrib[3] instead of vertex.color 2006-04-21 01:02:27 +00:00
Brian Paul
8743d00571 s/NV/ARB/ 2006-04-21 01:01:58 +00:00
Aapo Tahkola
34ba50522a limit max program/param length to 255 (spotted by sroland) 2006-04-20 19:43:21 +00:00
Brian Paul
8a97946e0a check glLoadProgramNV len < 0 (bug 6679) 2006-04-20 15:06:40 +00:00
Brian Paul
45e05dccd9 error_attrib() should generate GL_INVALID_VALUE, not GL_INVALID_ENUM.
New doxygen comments, misc clean-ups.
2006-04-20 02:29:26 +00:00
Brian Paul
3538f81513 Make most of the _mesa_noop_*() functions static.
Generate GL_INVALID_VALUE, not GL_INVALID_ENUM when glVertexAttrib is called
with a bad index.
Use _mesa_noop_vtxfmt_init() in DRI drivers to initialize vertex format
struct.
2006-04-20 02:16:55 +00:00
Brian Paul
34b3b40af9 some tentative code for _mesa_update_framebuffer_visual() 2006-04-20 00:45:08 +00:00
Dave Airlie
b5d76b6858 SrcReg->Swizzle is always initialized to SWIZZLE_NOOP, and if the program
specifies a 2/3/4-compontent swizzle suffix, SrcReg->Swizzles is just ORed
against the new component values, without resetting it first.

Attached patch makes tests/vptest2 pass.

From Tilam Sauerbeck bug 6673
2006-04-19 23:15:51 +00:00
Brian Paul
6e542f11c9 minor updates 2006-04-19 16:55:27 +00:00
Brian Paul
53f8b7190e fix invalid free() problem (bug 6658) 2006-04-19 14:42:01 +00:00
Brian Paul
5beff7c6c1 updates for GNU/Hurd (bug 6657) 2006-04-19 14:03:04 +00:00
Brian Paul
12ad488e59 Replace old README.X11 with updated xlibdriver.html 2006-04-19 03:25:06 +00:00
Brian Paul
b3282a3b9d assorted AIX, IRIX fixes from Dan Schikore 2006-04-18 12:56:11 +00:00
Brian Paul
e34bf25d2d -arch AIX64 no longer needed 2006-04-18 12:55:48 +00:00
Michal Krol
2f8496b565 Remove carriage-return chars *ONLY*. 2006-04-18 10:47:19 +00:00
Michal Krol
d55de658b5 Add support for ARB_vertex_shader attrib binding and query.
Clean-up ARB_shaderobjects code a bit.
2006-04-18 10:30:29 +00:00
Kristian Høgsberg
fcdc6a7d24 Add .note.GNU-stack section to assembler files to avoid the default behavior
of requesting executable stacks.
2006-04-17 18:58:24 +00:00
Jeremy Kolb
13a2d6698f More context. 2006-04-17 15:20:29 +00:00
Jeremy Kolb
ddf936193a Changed invalid context fields to valid ones. 2006-04-17 00:08:03 +00:00
Jeremy Kolb
a7d8885768 State changes. 2006-04-15 00:21:44 +00:00
Stephane Marchesin
b0c4cfed60 More work on the tcl code... still have to make my mind on a number of
things
2006-04-14 23:47:45 +00:00
Jeremy Kolb
97d11ecd6c Add more feilds to context. 2006-04-14 23:02:39 +00:00
Stephane Marchesin
911ec211a5 ooops 2006-04-14 22:59:33 +00:00
Stephane Marchesin
4c850f346b Added render index field to the context 2006-04-14 22:58:30 +00:00
Jeremy Kolb
576b3433da Cleaning 2006-04-14 22:50:14 +00:00
Stephane Marchesin
4b2d8b46c8 Silence the lock warning 2006-04-14 22:48:03 +00:00
Stephane Marchesin
b7d4314fe1 Added vertex attributes to the context 2006-04-14 22:43:44 +00:00
Stephane Marchesin
199512968b Cleaned stuff in the tcl code 2006-04-14 22:41:16 +00:00
Jeremy Kolb
5fd11335f6 Added the beginnings of state (not much there yet). Fixed some includes. 2006-04-14 17:39:43 +00:00
Brian Paul
28bc3cdfba another simple FBO test 2006-04-14 16:25:27 +00:00
Brian Paul
3adee0829b test glReadPixels speed w/ various formats/types, PBOs 2006-04-14 16:20:55 +00:00
Brian Paul
1e1af99132 Use 'file' command in more places to determine the library ABI (IRIX, SunOS,
Darwin), removes need to pass in special -archopt flags.
Restore the -dlopen flag afterall.
2006-04-14 14:14:51 +00:00
Brian Paul
6bef5e7621 Don't have to pass ABI-related flags to mklib anymore. 2006-04-14 14:13:00 +00:00
Brian Paul
9326962f06 Silence a few -pedantic warnings.
Remove ^M chars.
Replace _mesa_get_string() with simpler copy_string().
2006-04-14 03:43:39 +00:00
Brian Paul
a76c216b37 s/MaxTextureUnits/MaxTextureCoordUnits/ 2006-04-14 02:28:26 +00:00
Brian Paul
780155ab31 6.5.1 fixes 2006-04-14 02:26:40 +00:00
Brian Paul
730b26556b When popping GL_DRAW_BUFFER state, need to re-do error checking since
validity depends on whether a window-system FBO or user-created FBO is
currently bound.  glPopAttrib() may generate GL_INVALID_OPERATION because
of this.
2006-04-14 02:25:35 +00:00
Brian Paul
61608ecfa7 silence -pedantic warning 2006-04-14 02:21:04 +00:00
Brian Paul
767ffdcc9f don't need s_depth.h 2006-04-14 02:20:47 +00:00
Brian Paul
ee4e75bd6f Replace ctx->Const.MaxTextureUnits w/ ctx->Const.MaxTexture[Coord/Image]Units
in various places.
Note that ctx->Texture.CurrentUnit needs to be tested against Coord/Image
limits when referenced, not just in glActiveTexture().
2006-04-14 02:20:18 +00:00
Brian Paul
1d886a81ad If the image file is RGB, convert to RGBA (fixes segfault).
Added CheckError() calls.
Remove -ci option.
2006-04-13 19:45:42 +00:00
Brian Paul
da238ee06a Fix comment about MaxTextureUnits, needs to be min of coord and image units.
See bug 5994.
Also add a few assertions.
Use MaxTextureUnits in get.c code.
There's probably other places where we need to clean-up the usage of the
MaxTexture[Coord/Image]Units constants.
2006-04-13 19:21:58 +00:00
Brian Paul
564b2aa2ef silence minor warnings 2006-04-13 19:18:40 +00:00
Brian Paul
13abf91b42 casts to fix some -pedantic warnings 2006-04-13 19:17:13 +00:00
Jeremy Kolb
f799745f50 Some compile fixes. 2006-04-13 17:03:51 +00:00
Brian Paul
ad38681a00 Set array normalization flag for normals, colors (Keith) 2006-04-13 15:57:29 +00:00
Brian Paul
56e0ee8efe remove the -dlopen option. Always make both kinds of libs for AIX, Darwin. 2006-04-13 15:17:50 +00:00
Brian Paul
cbed2f8061 more updates (Dan Schikore) 2006-04-13 03:10:16 +00:00
Brian Paul
294d9abf6f add new configs (Dan Schikore) 2006-04-13 03:00:14 +00:00
Brian Paul
cb32dcfa33 new configs, misc updates (Dan Schikore) 2006-04-13 02:59:29 +00:00
Brian Paul
fe14cf6951 Fixes for AIX, SunOS, Darwin. -dlopen flag to build dlopen()'able modules
for AIX, Darwin.  (Dan Schikore)
2006-04-13 02:23:25 +00:00
Brian Paul
ecc0d10d2d Use -I$(INCDIR) to get Mesa, not system headers (Dan Schikore) 2006-04-13 01:54:04 +00:00
Brian Paul
a186c80788 updated tests for defining __FUNCTION__ (Dan Schikore) 2006-04-13 01:52:32 +00:00
Brian Paul
09c8e41955 added 'const' (Dan Schikore) 2006-04-13 01:51:25 +00:00
Brian Paul
c4a4864210 compile fix from Dan Schikore 2006-04-13 01:49:45 +00:00
Aapo Tahkola
c82eadd157 GLboolean cannot hold GLuint! usage of tmus >= 4 no longer lock r300. 2006-04-12 13:51:18 +00:00
Brian Paul
68ad7ca3ba allow rotation w/ mouse 2006-04-11 23:41:40 +00:00
Brian Paul
da21ca988a add missing 'union' keyword 2006-04-11 23:23:36 +00:00
David Reveman
ba23f699f0 FBConfig support for EXT_tfp 2006-04-11 12:21:48 +00:00
David Reveman
ea2b711061 Add attrib_list to glXBindTexImageEXT 2006-04-11 12:19:06 +00:00
David Reveman
c6f8ae1085 Add attrib_list to glXBindTexImageEXT 2006-04-11 12:12:13 +00:00
David Reveman
342d1de38c Fix CreateDrawable 2006-04-11 12:07:41 +00:00
Michal Krol
bb38cadb1c More GLSL code:
- use macros to access and modify render inputs bit-field;
- un-alias generic vertex attributes for ARB vertex calls;
- use MAX_VERTEX_PROGRAM_ATTRIBS (NV code) or MAX_VERTEX_ATTRIBS
  (ARB code) in place of VERT_ATTRIB_MAX;
- define VERT_ATTRIB_GENERIC0..15 for un-aliased vertex
  attributes for ARB_vertex_shader;
- fix generic attribute index range check in arbprogparse.c;
- interface GLSL varyings between vertex and fragment shader;
- use 64-bit optimised bitset (bitset.h) for render inputs;
2006-04-11 11:41:11 +00:00
Aapo Tahkola
d90ad3fd87 get fog going(for real) 2006-04-11 11:20:43 +00:00
Aapo Tahkola
3ed16bd9cc rectangular fp16 fixes (Ewald Snel) 2006-04-11 04:20:25 +00:00
Aapo Tahkola
6c419be402 Fog support (Ewald Snel) 2006-04-11 04:17:50 +00:00
Brian Paul
3a5ec72125 use _mesa_debug() instead of message() - fixes poor formatting of output 2006-04-10 23:36:18 +00:00
Eric Anholt
8c3d15ce28 Destroy the GL context after driDestroyTextureHeap, because the driver's
DestroyTexObj has a dependence on the glCtx and may segfault otherwise.
2006-04-09 17:48:28 +00:00
Aapo Tahkola
83a43aca23 fix some conflict happenings at context destroy by freeing buffers immediately. array locking can be done with vbos for vtxfmt_a so we dont really need to try to reuse them. 2006-04-08 20:05:50 +00:00
David Nusinow
0c97d48027 * Install the glx sources with the rest in the sources package. This will
allow building of Xgl
2006-04-08 18:28:29 +00:00
Brian Paul
ff2b910dd1 regenerate SPARC assembly dispatch (bug 6484) 2006-04-07 15:20:33 +00:00
Brian Paul
9073c40c7e added sunos5-64-gcc (bug 6484) 2006-04-07 15:16:46 +00:00
Brian Paul
1936019cd1 replace >&/dev/null with >/dev/null so it works with all shells 2006-04-07 15:11:51 +00:00
Brian Paul
9f3bcd87db bump version to 6.5.1 2006-04-07 14:29:52 +00:00
Alan Hourihane
e2af1da1d3 Fix some warnings on x86_64 2006-04-07 08:50:39 +00:00
David Nusinow
c4a678de9e Update source package install file, change version number to match reality, and note NMU in changelog 2006-04-07 06:36:53 +00:00
Dave Airlie
9d3de643d1 make miniglx use libdrm properly 2006-04-07 03:20:56 +00:00
David Nusinow
2c834f4d29 * Don't build now non-existant i830 driver in debian dri configs. Fixes
FTBFS.
2006-04-07 03:11:47 +00:00
David Nusinow
b93d290c9f * Remove set_buffer function from idirectfbgl_mesa.c in directfb driver.
Also remove the line that sets SetBuffer to it. Fixes FTBFS.
2006-04-07 02:22:22 +00:00
David Nusinow
32266bb21a * Re-Add s390 and m68k to the USE_IEEE test in src/mesa/main/imports.h.
I need to submit this upstream.
2006-04-07 01:50:23 +00:00
David Nusinow
cab39103b7 * Increment libdrm-dev build-dep to 2.0.1 2006-04-07 00:38:00 +00:00
David Nusinow
5c56a80ac9 Copy over Debian packaging from 6.4.1 2006-04-07 00:35:30 +00:00
David Nusinow
d0bac31721 Copy vendor drop of Mesa 6.5 over to working branch 2006-04-07 00:30:49 +00:00
David Nusinow
9258e54cfa Move incorrect vendor drop of Mesa 6.5 2006-04-07 00:29:08 +00:00
David Nusinow
ccb68495e0 Vendor drop of Mesa 6.5 2006-04-07 00:24:21 +00:00
Adam Jackson
d25ad506f2 Coverity #943: Avoid a NULL chase. 2006-04-07 00:05:50 +00:00
Adam Jackson
03593f53e7 Coverity #1083: Fix a use after free case. 2006-04-06 23:50:44 +00:00
Brian Paul
0a605f93db fixed line clipping bug 6512 2006-04-06 22:15:27 +00:00
Brian Paul
51faca1270 Rename CLIP_ALL_BITS to CLIP_FRUSTUM_BITS to reflect the fact that the value
only includes the 6 frustum bits, not the user-clip plane bit, nor the vertex
cull bit.
2006-04-06 22:11:57 +00:00
Brian Paul
f51a32e82a Fix line clipping bug 6512.
This fix is to discard the line if both dot products are negative.
2006-04-06 22:07:01 +00:00
Brian Paul
05529fefa4 minor CFLAGS clean-up 2006-04-06 16:50:38 +00:00
Brian Paul
f4d5b1da7b Set DRIVER_DEFINES instead of DEFINES to fix duplicate flags problem 2006-04-06 16:48:36 +00:00
Brian Paul
0dcab2a86a Replace DEFINES with DRIVER_DEFINES. If a driver needs to set extra flags,
do so with DRIVER_DEFINES.
This eliminates the duplicated flags we were passing to each cc command.
2006-04-06 16:47:51 +00:00
Brian Paul
789eb27870 minor CFLAGS reordering 2006-04-06 16:46:34 +00:00
Brian Paul
c1c954e81b remove unused var 2006-04-06 16:24:01 +00:00
Brian Paul
a1a9858ca3 update a couple MESA_FORMAT_Zxxx occurances 2006-04-06 16:23:40 +00:00
Brian Paul
e099ce85ca re-enable animation 2006-04-06 04:34:09 +00:00
Brian Paul
dc32eb8f93 fix render to depth texture bugs 2006-04-06 04:25:48 +00:00
Brian Paul
a9bcf75103 Replace MESA_FORMAT_DEPTH_COMPONENT_FLOAT32 with 32-bit integer format.
This allows render to depth texture (we don't support floating pt. Z buffers).
Rename MESA_FORMAT_DEPTH_COMPONENT16/32 as MESA_FORMAT_Z16/32.
Software fallback for glCopyTexImage now uses integer temporary image instead
of float, eliminates a lot of float/int conversions.
2006-04-06 04:23:58 +00:00
Brian Paul
762c3618f5 Added render to depth texture support with GL_EXT_framebuffer_object.
Only render the shadow/depth texture when really needed, not every frame.
Remove support for old SGIX shadow extensions.
2006-04-06 04:11:28 +00:00
Brian Paul
5722338ea5 do additional checking for setting up depth/stencil wrappers 2006-04-06 04:09:03 +00:00
Brian Paul
32cd166971 remove duplicated framebuffer attachment test 2006-04-05 19:58:37 +00:00
Brian Paul
f08f233d6f Remove the code that checks for duplicated framebuffer attachments (which
generated the error GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT).
This was removed in version 117 of the GL_EXT_framebuffer_object spec.
2006-04-05 19:58:10 +00:00
Brian Paul
59ebe1ff77 pass -m32 or -m64 to linker for SunOS as needed (bug 6484) 2006-04-05 13:43:02 +00:00
Dave Airlie
e80b9c24f4 add tiling/fence support for the miniglx driver 2006-04-05 07:13:17 +00:00
Dave Airlie
2e7af79f48 don't waste the reserved memory, take an approximation of the pool
allocator from the X.org driver - not as complicated
2006-04-05 06:20:58 +00:00
Brian Paul
c87809c9ed just some comments/docs 2006-04-05 03:29:46 +00:00
Brian Paul
1979b6b2de set the texture border color for the depth texture 2006-04-05 03:26:12 +00:00
Brian Paul
900da88dae first 6.5.1 bug fix - bug 6498 2006-04-05 03:25:05 +00:00
Brian Paul
9ebe3b6d36 Check/use texture border color when sampling depth textures. (bug 6498)
Silence some warnings.
2006-04-05 03:23:44 +00:00
Brian Paul
28b014ee25 Silence minor compiler warnings (-Wextra). 2006-04-05 03:05:17 +00:00
Alan Hourihane
027bb77e02 We always have a back buffer. Fixes visual problems. 2006-04-04 13:03:20 +00:00
Dave Airlie
f8ca99d697 use gart base from drm not try to work it out ourselves.. bump radeon client
to need 1.6 drm where this first appeared.. this fixes r300 on PCIE
2006-04-04 11:17:46 +00:00
Dave Airlie
6a9f0a27c3 switch to card_type rather than IsPCI, doesn't change any functionality yet 2006-04-04 11:04:30 +00:00
Michal Krol
7473d17268 Add bitset.h. 2006-04-04 10:25:23 +00:00
Michal Krol
b7339d7023 Fix texcoord interpolation for fragment shaders. 2006-04-04 10:22:05 +00:00
Michal Krol
b4e9750bf4 More GLSL code:
- add support for varyings;

GLSL fixes:
- pow was wrongly computed in x86 back-end;
2006-04-04 10:18:07 +00:00
Michal Krol
607b61a994 Bit set. 2006-04-04 10:11:12 +00:00
Michal Krol
1a5fecb4d6 Return GLSL version string (1.10). 2006-04-04 10:08:27 +00:00
Michal Krol
ae76be49eb Define MAX_VERTEX_ATTRIBS to 16. 2006-04-04 10:06:39 +00:00
Adam Jackson
3c327c9f3a Fix license header to SGI FreeB. (Eric Kunze, SGI) 2006-04-03 22:23:52 +00:00
Adam Jackson
76a0797c32 Bug #5754: Allocate texture memory correctly. (Richard Drummond) 2006-04-03 21:28:07 +00:00
Karl Schultz
a9cc078b0e Fix problem reported by Bill Newman in read_rgba_pixels for 16 and 32 bit (GDI driver). Bug would cause the wrong pixel to be read if more than one pixel requested and could cause memory access violations. 2006-04-03 16:54:25 +00:00
Brian Paul
ac619f4912 64-bit build for sunos5 w/ gcc 2006-04-03 16:09:53 +00:00
Dave Airlie
edd2702287 add miniglx sources to i915 2006-04-03 07:41:31 +00:00
Dave Airlie
225148ea07 if DDX is -1 don't do DDX check 2006-04-03 07:41:14 +00:00
Dave Airlie
a824813d22 use Width 2006-04-03 07:40:44 +00:00
Dave Airlie
5bb5a1908f add pitch support and use new Width 2006-04-03 07:40:28 +00:00
Dave Airlie
a951c80ae4 setup to use pci access, comment out size bumps,
sest xres from real width, use new -1 ddx version
2006-04-03 07:32:11 +00:00
Dave Airlie
808a678d85 do a drm lock/unlock sequence after the client close 2006-04-03 07:31:27 +00:00
Dave Airlie
d61c1cc7c9 add width to struct for width != virtual width 2006-04-03 07:30:48 +00:00
Dave Airlie
cf69d09202 make miniglx use libdrm and libpciaccess 2006-04-03 07:30:23 +00:00
Adam Jackson
b927a75979 Coverity #459: Silly off-by-one error. 2006-04-03 00:18:03 +00:00
Adam Jackson
5ab5517ba8 Coverity #468: Fill in the rest of the error_list to match the error codes
defined in glxproto.h.  Avoids reading semi-random memory (and probably
crashing) when calling __glXErrorString().
2006-04-03 00:00:53 +00:00
Adam Jackson
05ddc4a6c5 Coverity #476: Avoid walking off the end of ->vtx.attrsz, it's declared to
be _TNL_ATTRIB_MAX long so that's not a valid index (woo zero based
indexing).

This code still looks wrong though, the asymmetry between _tnl_copy_to_current
and _tnl_copy_from_current has me worried.
2006-04-02 23:51:30 +00:00
Adam Jackson
b3208c2de9 Coverity #567: Fix a memory leak on a failure path. 2006-04-02 23:17:49 +00:00
Adam Jackson
1ee92f984b Coverity #650: Fix a memory leak when near OOM. 2006-04-02 23:15:35 +00:00
Daniel Borca
75f81ad5f9 Assorted updates. 2006-04-01 13:38:45 +00:00
Daniel Borca
b100484145 Initialize renderbuffer size. 2006-04-01 13:26:31 +00:00
Dave Airlie
278736ff6f These messages really should be printed all the time, users want to
know this not have to set debug for it
2006-04-01 04:40:01 +00:00
Brian Paul
57b61638af added MD5 checksums for 6.5 files 2006-04-01 02:29:40 +00:00
Brian Paul
09b6b9e9c3 added 6.5 relnotes 2006-04-01 01:49:31 +00:00
Eric Anholt
482d9dd21d Don't index box by the box's index within numClipRects; just dereference it.
Fixes drawing with more than one cliprect. (Keith Packard)
2006-04-01 00:57:57 +00:00
Eric Anholt
9e8659f346 Call driUpdateFramebufferSize when we've found an updated DRI drawable stamp,
like other drivers.  Failure to do so resulted in incorrect buffer sizes for
resized windows.
2006-04-01 00:55:02 +00:00
Brian Paul
e3f41ce611 6.5 updates 2006-03-31 23:10:21 +00:00
Daniel Borca
3a3e63dc4f DMesa now uses OSMesa as a back-end. 2006-03-31 20:53:12 +00:00
Daniel Borca
3a46dff27d Removed empty arrays. 2006-03-31 20:49:55 +00:00
Aapo Tahkola
29d833bd52 Enough testing already 2006-03-31 18:46:33 +00:00
Brian Paul
9305cba6a7 bump version/date 2006-03-31 17:31:22 +00:00
Brian Paul
f2ad1b60c0 Dave Reveman's patch for GLX_MESA_copy_sub_buffer support 2006-03-31 15:48:04 +00:00
Brian Paul
df3d4e0bb9 Fix the fetch_texel_ci8() code to deal with floating point color palettes.
Fixes Quake on Windows bug.  (Karl Schultz)
2006-03-31 15:22:09 +00:00
Aapo Tahkola
6652dc8aac free rs300 and ban r350(according to r300.sf.net) 2006-03-31 14:11:41 +00:00
Aapo Tahkola
7da1daf0a2 make u_list adjustable 2006-03-31 10:10:45 +00:00
Karl Schultz
18b72d184c updated again for 6.5. 2006-03-31 06:54:11 +00:00
Aapo Tahkola
ef5b48dea1 warn about broken dxt 3/5 2006-03-31 03:54:36 +00:00
Aapo Tahkola
2cd4056fae Dont rely on writebacks 2006-03-31 03:50:29 +00:00
Aapo Tahkola
fb0175db93 disable r300 chips. R300_FORCE_R300 to force 2006-03-31 03:16:39 +00:00
Aapo Tahkola
aa70d92a13 More meaningful warning. 2006-03-31 03:01:28 +00:00
Eric Anholt
aba4967150 The pitches of the driRenderbuffers are in bytes, so no need to multiply by cpp.
Fixes software fallbacks. (Keith Packard)
2006-03-30 22:44:51 +00:00
Karl Schultz
174ce730c6 Clean up data structures, finishing off some of the cleanup work suggested by Brian. Now also creating two renderbuffers, so apps can now switch with glDrawBuffer. 2006-03-30 21:53:23 +00:00
Adam Jackson
48547ee129 Clarify which version of Mesa we're talking about 2006-03-30 19:26:54 +00:00
Adam Jackson
823c581f7c Revert my change from 1.37 as being bogus (see ensuing list discussion for
rationale).
2006-03-30 19:23:38 +00:00
Adam Jackson
8982697981 Update the install docs to make explicit note of libdrm version dependency.
Change pdx.fd.o to {anon,}cvs.fd.o as appropriate.
2006-03-30 19:21:20 +00:00
Adam Jackson
9542537cee Style fix, drop the explicit -ldrm from the link line. 2006-03-30 19:20:25 +00:00
Karl Schultz
c3f2c287ce Fix logic error in viewport function so that we still resize the buffers if the viewport and the window both change to the same new size. This lets the gloss demo work with the -f option. 2006-03-30 18:03:41 +00:00
Brian Paul
9e81d6ae3a When creating front/back renderbuffers, init the Red/Green/Blue/AlphaBits fields 2006-03-30 16:33:35 +00:00
Brian Paul
94d6bf883b Init the Red/Green/Blue/Alpha/Depth/StencilBits fields in driNewRenderbuffer() 2006-03-30 16:32:16 +00:00
Brian Paul
84c5d0a789 comments regarding assertions 2006-03-30 16:29:41 +00:00
Karl Schultz
dd7074736f Use [][3] for write_rgb_span_16 2006-03-30 16:26:26 +00:00
Brian Paul
ef8b89faee some comments for Darwin 2006-03-30 14:28:28 +00:00
Brian Paul
159ca321cb added glfbdev.h to MAIN_FILES 2006-03-30 14:27:25 +00:00
Brian Paul
ec83f38e2e fix bad call to FindLine() 2006-03-30 14:26:29 +00:00
Brian Paul
197d725601 added -f option for full-screeen 2006-03-30 14:25:54 +00:00
Brian Paul
693a66aea9 press '0' for glDrawBuffer(GL_NONE) 2006-03-30 14:24:58 +00:00
Brian Paul
8ea3353ec3 XMesaDrawLine macro, not currently used 2006-03-30 14:20:26 +00:00
Karl Schultz
87af12dbdc Fixes from Brian to help migrate to render buffer DD interfaces. Also fix bug in the viewport function that was using the viewport size to resize the buffer, when it should have been using the window size. Fix bug in write_rgb_span_32 where the incoming pixel data parameter was coded as a [][4] instead of [][3]. Now all the demos work correctly except singlebuffer. 2006-03-30 07:58:24 +00:00
Karl Schultz
a8c9ecfab0 Fixes from Brian 2006-03-30 07:53:15 +00:00
Dave Airlie
4ecb9f0532 Fix up some incorrect pointers and clear screen 2006-03-30 05:47:08 +00:00
Dave Airlie
8b186e3695 add initial miniglx files for i915, not integrated yet 2006-03-30 04:33:58 +00:00
Karl Schultz
e43edd3c70 Updated for Mesa 6.5 2006-03-29 23:53:43 +00:00
Brian Paul
20e15f9381 Add -ansi -pedantic flags to OPT_FLAGS. This got lost at some point. Good for catching sloppy coding. 2006-03-29 23:45:44 +00:00
Brian Paul
75a8383e8d Update the _WindowMap matrix in _mesa_set_viewport() and _mesa_DepthRange().
This is a temporary fix for the DRI drivers.
Should really only have to update the matrix via _mesa_update_state().
2006-03-29 23:44:31 +00:00
Brian Paul
920023240c put braces around RENDER_SPAN macro when called, not when defined. Fixes -pedantic warnings in x11 driver 2006-03-29 23:42:44 +00:00
Brian Paul
62c325af3f fix GETPROCADDRESS usage, remove carriage return chars (bug 6430) 2006-03-29 23:20:49 +00:00
Brian Paul
32244ac7e9 s/glslnose.c/glslnoise/ (bug 6430) 2006-03-29 23:18:13 +00:00
Kristian Høgsberg
3a6d968f37 Fixes to silence warnings in code generated by glapi scripts. 2006-03-29 22:32:38 +00:00
Karl Schultz
cec74532bf Add newest source code files to project. 2006-03-29 20:55:48 +00:00
Brian Paul
f331bb0312 added some no-op virtual destructors to silence g++ 4.0.0 warnings 2006-03-29 18:54:00 +00:00
Brian Paul
c3051df8e1 fixes from John Shell (bug 6339) 2006-03-29 18:46:46 +00:00
Brian Paul
db79d2abac minor clean-up 2006-03-29 18:41:19 +00:00
Brian Paul
c19de0b7f6 FP textures and fixes (Ewald Snel) 2006-03-29 15:21:01 +00:00
Brian Paul
e5b6eee15d fix components initialization in two places (Ewald Snel) 2006-03-29 15:17:57 +00:00
Brian Paul
006e183b6e move NumNativeAlu/TexInstruction assignments (Ewald Snel) 2006-03-29 15:15:37 +00:00
Jouk Jansen
180b0dab8b Committing in .
Removing <CR>

 Modified Files:
 	Mesa/src/mesa/main/fog.c Mesa/src/mesa/main/hint.c
 	Mesa/src/mesa/main/mtypes.h
 ----------------------------------------------------------------------
2006-03-29 12:09:08 +00:00
Brian Paul
a85fbb1d36 prep for 6.5 release 2006-03-29 04:53:02 +00:00
Brian Paul
555478fed6 New code for rendering to depth/stencil textures.
Re-org of the renderbuffer wrapper code.
2006-03-29 04:51:03 +00:00
Brian Paul
2742c4e4db new tests for GL_DEPTH_STENCIL_EXT 2006-03-29 04:48:21 +00:00
Brian Paul
2b430ef56a a few new assertions 2006-03-29 04:47:34 +00:00
Karl Schultz
b7a5a9db88 Windows makefile to easily build all demo programs. 2006-03-29 04:02:44 +00:00
Karl Schultz
888ab86f85 Repair corrupted file and remove rogue 'test' project. 2006-03-29 04:01:25 +00:00
Brian Paul
2526152a10 fix a GLuint vs GLushort test, new assertions 2006-03-29 04:01:05 +00:00
Brian Paul
519a2e7cb7 Move the computation of the viewport matrix into a new update_viewport_matrix()
function since the matrix depends on the viewport params and the framebuffer's
depth buffer resolution.
Fixes some renderbuffer / depth range issues.
This simplifies the _mesa_set_viewport() and _mesa_DepthRange() functions too.
2006-03-29 03:59:34 +00:00
Karl Schultz
b687531f69 Undef a conflicting symbol in Windows. 2006-03-29 03:42:32 +00:00
Karl Schultz
54b65e080e add showbuffer.[ch] which could be in this dir after the targets are built. 2006-03-29 03:41:38 +00:00
Karl Schultz
3076557ca3 Update for new Mesa entry points. I need to change the python script that generates this file to the new XML scheme, but for now, a manual update is OK. 2006-03-29 02:12:31 +00:00
Karl Schultz
4f21180416 Remove unneeded includes of time.h 2006-03-29 02:09:47 +00:00
Daniel Borca
c61763b5d2 Match pixel addresses with `compute_row_addresses' in RGB mode (also obey RGB/UNSIGNED_BYTE rule). 2006-03-28 21:40:14 +00:00
Roland Scheidegger
08e62a1476 fix missing *_STATECHANGE in *UpdateViewportOffset for radeon, r200 and r300 (reported by Jim Duchek). Fix some potential problems with strict-aliasing with r200 and radeon drivers in *UpdateViewportOffset, *PolygonOffset and *UpdateWindow functions (some compiler warnings about strict-aliasing remain in the codegen vertex code, and there may be more problems unnoticed by the compiler). 2006-03-28 17:22:57 +00:00
Brian Paul
0e26ca0834 updated comment about framebuffer's Visual field 2006-03-28 15:28:00 +00:00
Brian Paul
e44499480f added known issue: render to depth textures not working 2006-03-28 15:25:44 +00:00
Brian Paul
9f6ff49650 update conditional for render to GL_DEPTH_STENCIL texture, check for valid teximage before calling ctx->Driver.RenderTexture() 2006-03-28 15:24:50 +00:00
Brian Paul
c7a5d528c7 a little code movement so we don't make invalid casts from gl_renderbuffers to xmesa_renderbuffers 2006-03-28 15:21:44 +00:00
Aapo Tahkola
b8915340ea fix #6072 (Keith Whitwell) 2006-03-28 10:26:34 +00:00
Keith Whitwell
1155f64cc0 Revert merge of new/experimental code from texmem branch. 2006-03-28 07:40:57 +00:00
Brian Paul
255e8ebd58 enable GL_ARB_half_float_pixel, was GL_MESAX_half_float_pixel 2006-03-28 01:23:43 +00:00
Brian Paul
95174c4eb2 comment about byteswapping in _mesa_unpack_depth_span() 2006-03-28 01:22:48 +00:00
Roland Scheidegger
f76ff7e4a7 make allow_large_textures 1 by default for radeon and r200, and consequently enable all texture units by default on those cards (3 for radeon, 6 for r200). Fix the usually forgotten DRIVER_DATE accordingly. 2006-03-27 23:53:53 +00:00
Roland Scheidegger
96aa403cee remove unnecessary typedefs causing compiler warnings 2006-03-27 23:34:53 +00:00
Daniel Borca
004673d4d1 Disable `hidden' attribute for DJGPP 2006-03-27 17:34:31 +00:00
Daniel Borca
0ad1bda7a1 PutRowRGB was not initialized for OSMESA_RGB_565 2006-03-27 17:32:22 +00:00
Dave Airlie
e72b745f32 Fixup makefile for solo non-egl 2006-03-27 00:07:21 +00:00
Brian Paul
ea4fe661d7 merge from texman branch 2006-03-26 05:22:17 +00:00
Brian Paul
4cbd16ed3f fix some PFNGL* typedefs 2006-03-26 05:09:03 +00:00
Brian Paul
06049e2416 remove carriage returns 2006-03-25 22:52:39 +00:00
Brian Paul
753af3a206 fix issue in _mesa_free_framebuffer_data() 2006-03-25 17:57:52 +00:00
Brian Paul
70207b70c5 check for incomplete FBO in _mesa_Clear() 2006-03-25 16:16:37 +00:00
Brian Paul
1bbc203c6e Clean up the recent code related to texture_override(). Pass params in a
more logical order.
Remove a mess of stray ^M chars.
Fix a bug when checking if the texture object's format is GL_COLOR_INDEX
or GL_DEPTH_COMPONENT.  This fixes a segfault when GL_TEXTURE_BASE_LEVEL!=0.
2006-03-24 23:53:50 +00:00
Brian Paul
6494541eaa lots of debug options, some code movement, etc 2006-03-24 23:17:06 +00:00
Brian Paul
590cd26006 added some missing formats in _mesa_source/dest_buffer_exists() 2006-03-24 22:53:00 +00:00
Aapo Tahkola
ed4ab13cef Make ARB_vp backends happy with nv arl 2006-03-24 16:35:08 +00:00
Aapo Tahkola
af8d39861d secondary color fixes. 2006-03-24 16:33:34 +00:00
Brian Paul
c4f2710f9d Added -l option for explicit locking around Xlib and GLX calls in
threaded code.  Seems to improve reliability quite a bit.
2006-03-23 17:17:23 +00:00
Brian Paul
436d72e994 Added -p option to create a display connection per thread.
This seems more stabile than using one display connection for all threads.
Still get an occasional Xlib: unexpected async reply error, unfortunately.
2006-03-23 16:58:22 +00:00
Dave Airlie
d76ef5867d make solo build complete 2006-03-23 04:20:37 +00:00
Dave Airlie
0a6040dc2d fix coverity 1107: use after free 2006-03-23 04:15:29 +00:00
Dave Airlie
eab896cc21 fix coverity 926: use before NULL check 2006-03-23 04:13:37 +00:00
Brian Paul
f756924fa5 Need to check for new state and do readpixels/drawpixels clipping after
we call RENDER_START since that may involve validating the drawable and
updating its dimensions.
2006-03-22 22:02:07 +00:00
Aapo Tahkola
4fafe6390b implement arl and enable hw nv_vp. 2006-03-22 21:29:27 +00:00
Aapo Tahkola
6fc864b9e6 ARL dst idx was undefined. 2006-03-22 21:29:15 +00:00
Brian Paul
daffbe99dc GL_EXT_packed_depth_stencil should be off by default 2006-03-21 21:57:00 +00:00
Michal Krol
8995544bc9 Silencium gcc warnings. 2006-03-21 10:59:14 +00:00
Michal Krol
071357096e GLSL fixes:
- generate error on NULL pointers in glShaderSourceARB;
- reinstall program object, if current, in glLinkProgramARB;
- vertex and fragment shaders are optional in program object;
- floor asm was wrongly computed for x86 back-end;
- allow for (void) idiom in function prototypes;
- all fixed-state uniforms are updated;
- local variable initializers are working;
- implement texture* and shadow* functions for vertex processor;
- generate error if too many arguments in general constructor;
- trim unused data in general constructor;
- struct r-value field select was badly relocated;

Changes:
- add derived state gl_fog_attrib::_Scale;
- add derived state gl_light::_CosCutoffNeg;
2006-03-21 10:37:40 +00:00
Brian Paul
519b23b21f Lots of changes/fixes for rendering to framebuffer objects.
- When deleting texture objects, unbind from FBOs if necessary.
- Changed driver hooks for starting/ending render to texture.
- Now properly handle case where gl[Copy]TexImage() is called after
  glFramebufferTexture[123]D().  That didn't work before.
2006-03-20 18:51:57 +00:00
Brian Paul
4991888fa0 additional assertions and debug code for testing FBO completeness 2006-03-20 15:27:55 +00:00
Brian Paul
34bd1233a9 additional error checking to be sure source renderbuffer exists for glCopyTex[Sub]Image() 2006-03-20 15:27:33 +00:00
Brian Paul
457fb0e128 use new _mesa_sourc/dest_buffer_exists() functions 2006-03-20 15:26:20 +00:00
Brian Paul
7275d4d097 added _mesa_source/dest_buffer_exists() function to easily test if particular renderbuffers are present 2006-03-20 15:25:18 +00:00
Brian Paul
f1038f81e4 fix some buffer binding tests in _mesa_make_current() 2006-03-20 15:20:57 +00:00
Brian Paul
c27c382acc slightly improved error message 2006-03-20 15:20:30 +00:00
Aapo Tahkola
5319ed0e53 Fix texrect upload conflicts. 2006-03-20 13:37:28 +00:00
Aapo Tahkola
070f280895 Disable tnl programs when doing software vertex programs. compiz with its texrect and lighting needs was broken because of this. 2006-03-19 21:17:14 +00:00
Brian Paul
096dd541bd minor clean-ups 2006-03-19 19:07:12 +00:00
Aapo Tahkola
77174f0072 -fix texrect fallback when using vtxfmt_a (glitz, xgl, etc.)
-struct vertex_buffer to struct radeon_vertex_buffer conversion
-vertex attrib arrays did not supersede conventinal arrays when enabled
2006-03-19 18:04:12 +00:00
Brian Paul
21a4fb4137 Queries of GL_READ_BUFFER and GL_DRAW_BUFFER were still returning the
pre-GL_EXT_framebuffer_object state.  Now return the read/draw state stored
in the framebuffer objects.
2006-03-19 00:10:22 +00:00
Brian Paul
19b05d5009 Don't call Driver->Bitmap() if no image to render 2006-03-18 21:46:17 +00:00
Jouk Jansen
2d2af2dcf7 Committing in .
Mesa/src/mesa/main/imports.h : removed <CR>
 Mesa/src/mesa/shader/slang/descrip.mms : added new sources

 Modified Files:
 	Mesa/src/mesa/main/imports.h
 	Mesa/src/mesa/shader/slang/descrip.mms
 ----------------------------------------------------------------------
2006-03-17 14:38:41 +00:00
Brian Paul
eec33cc310 Init FogCoordFuncs[0..5] too, remove some unneeded #includes 2006-03-17 04:13:29 +00:00
Brian Paul
0f1d98c422 remove another test for IN_DRI_DRIVER 2006-03-17 04:10:03 +00:00
Kristian Høgsberg
724df02073 Don't use glx_ansic.h functions (__glXMemset). 2006-03-17 00:03:20 +00:00
Brian Paul
2b17741e1b added #undef GET_DISPATCH 2006-03-16 18:06:34 +00:00
Brian Paul
c6c0f94714 Moved _glapi_check_multithread() call into drivers, instead of in
_mesa_make_current().
This removes an ugly #if !defined(IN_DRI_DRIVER) from core Mesa.
2006-03-16 18:05:25 +00:00
Brian Paul
ef8653a838 finish up some loose ends in _mesa_texstore_z24_s8() 2006-03-16 04:44:00 +00:00
Brian Paul
514a15cea1 assorted code clean-ups, comments, etc. 2006-03-15 20:56:22 +00:00
Brian Paul
ac8b07b3ae remove invalid assertion in _glapi_get_dispatch(), fixes additional thread safety problem 2006-03-15 20:42:00 +00:00
Brian Paul
e660690985 Need to include glthread.h in glapi.h, not glapi.c so that GET_CURRENT_CONTEXT
is properly defined.  Fixes long-standing, but unnoticed thread safety failure.
Also, updated comments.
2006-03-15 20:31:50 +00:00
Brian Paul
30655c211c updated some printfs, added comment about sched_yield 2006-03-15 20:30:17 +00:00
Brian Paul
59e0faaa5c sync with texmem branch 2006-03-15 17:48:00 +00:00
Brian Paul
eccb6a0698 rename enums, fixes compilation breakage (Michal Krol) 2006-03-15 14:09:08 +00:00
Brian Paul
10f08cc202 use 'p' key to toggle use of GL_EXT_packed_depth_stencil 2006-03-15 01:44:03 +00:00
Brian Paul
b7e3e0d64e s/GLuint/GLushort/ in read_depth_stencil_image() 2006-03-15 01:36:52 +00:00
Brian Paul
19b8322169 init Red/Green/EtcBits = 0 in soft_renderbuffer_storage() 2006-03-14 22:39:43 +00:00
Brian Paul
2a0d441ebb Set always_array=true for glGenProgramsNV (Dave Reveman) 2006-03-14 15:41:53 +00:00
Brian Paul
15e74a6441 replace dprintf() with _glu_dprintf() (bug 6244) 2006-03-14 15:08:52 +00:00
Michal Krol
0f618b7eb7 Add slang_analyse.c and slang_library_texsample.c. 2006-03-14 11:39:58 +00:00
Michal Krol
8af48fc4d6 More GLSL code:
- add texture sampling support;
- fix assembly codegen bugs;
2006-03-14 11:23:16 +00:00
Aapo Tahkola
e9484e4085 Clean build. 2006-03-13 20:40:46 +00:00
Aapo Tahkola
a0cf4ceb36 Fix broken max mipmap leveling that was horribly wrong. 2006-03-13 18:23:19 +00:00
Stephane Marchesin
1c0230b396 Cleaned up some code, made more files compile. Renamed nv20_swtcl.* to
nv10_swtcl.*, hopefully this is the last rename (this should be, as
    NV05 really behaves differently).
2006-03-13 11:30:41 +00:00
Aapo Tahkola
5042778449 Option to init vp temps(for testing) 2006-03-10 05:30:33 +00:00
Stephane Marchesin
9ebde216cc A little work here and there 2006-03-10 01:43:39 +00:00
Brian Paul
9c32af5bb2 Add prototypes for GLX_MESA_swap_frame_usage, GLX_MESA_swap_control, and
GLX_EXT_texture_from_pixmap to silence warnings while compiling glxcmds.c
XXX: Need to add the new tokens for GLX_EXT_texture_from_pixmap!!!
2006-03-09 16:27:35 +00:00
Brian Paul
841a823d6d s/GLint/int/, to fit GLX conventions 2006-03-09 16:25:46 +00:00
Brian Paul
0d57301ba2 Instead of adding extra flags to DEFINES with +=, define EXTRA_DEFINES instead.
This eliminates a bunch of duplication in the compilation commmands.
2006-03-09 16:24:46 +00:00
Aapo Tahkola
12d51beb7e Kick VBOs out of GART if nothing else helps. 2006-03-09 06:21:17 +00:00
Aapo Tahkola
e294d938f2 Use the force Luke, use the force. 2006-03-09 04:42:45 +00:00
Dave Airlie
f1b431b265 coverity check bug fix going over end of array 2006-03-08 05:44:07 +00:00
Dave Airlie
9fc897af7a coverity checker bug: Pointer dereferenced after NULL check 2006-03-08 05:37:58 +00:00
Aapo Tahkola
d97ab9a7bd Fix broken DrawElements & DrawRangeElements. 2006-03-07 22:46:52 +00:00
Jouk Jansen
d9894e0d72 Committing in .
Update OpenVMS makefiles

 Modified Files:
 	Mesa/src/mesa/shader/slang/descrip.mms
 	Mesa/src/mesa/swrast/descrip.mms
 ----------------------------------------------------------------------
2006-03-07 07:47:37 +00:00
Aapo Tahkola
dba9c0bafd Enable HW VBOs and other things needed by it. 2006-03-07 05:31:36 +00:00
Aapo Tahkola
ba7ea2e697 Convert to work with current DRM. + tag 2006-03-07 05:15:24 +00:00
Aapo Tahkola
50f319242b Various fallbacks, checks and tags. 2006-03-07 05:09:48 +00:00
Brian Paul
ca007cb449 just a comment for check_compatible() 2006-03-07 03:01:26 +00:00
Brian Paul
d75963d258 disable double-buffer test in check_compatible(), fixes pbuffer/visual problem 2006-03-07 02:57:04 +00:00
David Nusinow
db4236fe0b * Add versioned conflict between libgl1-mesa-dri and xlibmesa-dri so that
the xlibmesa-dri transitional upgrade package works
2006-03-07 02:48:44 +00:00
Brian Paul
8ee311d36d print newline in _mesa_warning() 2006-03-07 01:46:26 +00:00
Brian Paul
2e01918b55 call _mesa_update_framebuffer_visual() in _mesa_FramebufferRenderbufferEXT() to fix some minor glitches 2006-03-07 01:43:52 +00:00
Brian Paul
168a7516b1 FreeBSD updates (Pedro Giffuni) 2006-03-07 01:11:05 +00:00
Stephane Marchesin
2560e65a9a Added a missing field 2006-03-07 00:56:30 +00:00
Aapo Tahkola
c107058e7e Port r200 tex tiling code to run on r300 but keep it disabled. 2006-03-06 19:28:10 +00:00
Ian Romanick
3bca4f679a Later versions of Python handle formats like '% 5u' differently. For
whatever reason, a space is always inserted.  That is not the desired
behavior.
2006-03-06 18:31:50 +00:00
Ian Romanick
9d881ea718 Generate server-side GLX protocol decode functions using the 'make server'
target.  The environment variable XORG_BASE must be set to point to the base
of the X.org server sources where the files are to be placed.

The 7.0.0 server release already contains files generated by these scripts.
The scripts should have been committed months ago.  Sorry for the lag. :(
2006-03-06 18:30:17 +00:00
Ian Romanick
448d23331d Display the correct bug number in the information text. 2006-03-06 16:42:12 +00:00
Ian Romanick
66df1731e6 Don't try to bind to proxy texture target. This is defined by the spec to be
an error.  Since we're working with a proxy target, don't bother using real
texture data.

Add a missing new-line in an error printf.
2006-03-06 16:31:50 +00:00
Stephane Marchesin
5569c2dfae Cleaned up the software TCL code a bit. Renamed nv30_tris.[c,h] to
nv20_swtcl.[c,h].
2006-03-06 15:32:31 +00:00
Stephane Marchesin
98e1b13802 Added some NV20 support - nv_30_tris.c should probably be renamed again. 2006-03-06 12:23:24 +00:00
Stephane Marchesin
b9c4b7fc89 More work on the nv30 software tcl code 2006-03-06 01:46:24 +00:00
Ian Romanick
5820f7998a Build test for bugzilla #3050 2006-03-04 04:46:10 +00:00
Ian Romanick
780d270312 Test case for bugzilla #3050. 2006-03-04 04:44:47 +00:00
Stephane Marchesin
4af665a843 Rename nouveau_3d_reg.h to nouveau_reg.h 2006-03-03 16:10:28 +00:00
Stephane Marchesin
84a20832f1 rename nv40_tris to nv30_tris. 2006-03-03 16:08:59 +00:00
Roland Scheidegger
e1e03b32ab Use standard ARB names instead of vendor-specific NV names for the ARB/NV_vertex_program enums in common state handling code, and update comments accordingly. Change some slightly confusing code which gave the impression GL_VERTEX_PROGRAM_ARB and GL_VERTEX_PROGRAM_NV enums were different. 2006-03-03 15:03:04 +00:00
Roland Scheidegger
f8ba07a77d fix up the emit_func list in the experimental arbprogram sse code. 2006-03-03 14:11:19 +00:00
Roland Scheidegger
5e01f9a114 Fix bogus span mask in s_atifragshader.c leading to trouble when the pixel was later discarded by z test (this fixes doom3 r200 renderpath with swrast). Fix calling _swrast_alpha_test potentially leading to bogus results when Alpha Test might not be enabled. While here, don't disable deferred_texture (early z) when ATI_fragment_shader is active, as it is not necessary (for the record, this boosts doom3 swrast performance by roughly a factor of 2 (4 seconds per frame now...) with the r200 render path, might be a worthwile optimization for fragment programs which don't write z). 2006-03-03 02:46:03 +00:00
Keith Whitwell
f4ab5654d0 Add position_invarient support 2006-03-02 20:16:34 +00:00
Roland Scheidegger
da16813f43 Fix more enums defined not only by one extension when queried by glGet (GL_COLOR_SUM_EXT, GL_POINT_SPRITE_NV, GL_POINT_SPRITE_COORD_ORIGIN, GL_TRANSPOSE_CURRENT_MATRIX_ARB). Fix similar bugs (also those previously overseen dependant on NV/ARB_vertex_program) in glIsEnabled. Add missing GL_COLOR_SUM_EXT enum to glIsEnabled. 2006-03-02 12:06:57 +00:00
Brian Paul
9227bca103 added GL_EXT_framebuffer_blit, etc 2006-03-02 04:12:34 +00:00
Brian Paul
81b8aa9ecd test glBlitFramebufferEXT w/ -blit flag 2006-03-02 03:54:14 +00:00
Brian Paul
14d3ab9662 improved error msg 2006-03-02 03:51:04 +00:00
Brian Paul
904ab0c22c check FEATURE_EXT_framebuffer_blit 2006-03-02 03:46:33 +00:00
Brian Paul
afa1df5871 plug in BlitFramebuffer function 2006-03-02 03:45:28 +00:00
Brian Paul
c241d3b06a implementation of _swrast_BlitFramebuffer() 2006-03-02 03:37:18 +00:00
Stephane Marchesin
0e7e80ae10 Some small improvements. 2006-03-02 00:42:37 +00:00
Roland Scheidegger
93da673904 Fix glGet with enums which are used not only in NV_vertex_program, but other extensions too (ARB_vertex_program, ARB_fragment_program, NV_fragment_program), if no support for NV_vertex_program is present. While here, fix return value if enum is used which is not supported by the exposed extensions (GL_INVALID_ENUM instead of GL_INVALID_VALUE). Fix some compile-time #ifs depending on NV_vertex/fragment_program which should also be dependant on ARB_vertex/fragment_program. See bug #6070 2006-03-01 23:11:14 +00:00
Brian Paul
cf6be2d5bd No need for _mesa_save_error() to be public.
glVertexAttrib() w/ bad index should generate GL_INVALID_VALUE, not
GL_INVALID_ENUM.
Misc clean-ups.
2006-03-01 15:44:20 +00:00
Brian Paul
dbfd246db8 added BlitFramebuffer() support 2006-03-01 15:36:34 +00:00
Brian Paul
190e5595bc New comments. Use tuples () instead of lists [] in a few places. 2006-03-01 15:33:56 +00:00
Brian Paul
68edf28df6 added Flush in glXCopyContext() 2006-03-01 15:32:38 +00:00
Brian Paul
9b8059e536 updated comment 2006-03-01 02:09:40 +00:00
Brian Paul
6d4284e2bf Added glBlitFramebufferEXT function. 2006-03-01 02:07:50 +00:00
Brian Paul
9974540c73 remove temporary tokens, more error checks for blit function 2006-03-01 02:02:43 +00:00
Brian Paul
2c61fdafd6 added s_blit.c 2006-03-01 02:00:58 +00:00
Brian Paul
1eca891dbe _swrast_blit_framebuffer() function 2006-03-01 01:57:30 +00:00
Brian Paul
a231097609 GL_EXT_framebuffer_blit tokens/functions 2006-03-01 01:54:59 +00:00
Aapo Tahkola
fbe48ef01f Free temps when possible 2006-02-28 23:39:32 +00:00
Aapo Tahkola
71932ef85c Dont let (possibly) undefined z component reach hw as its unused 2006-02-28 23:22:48 +00:00
Aapo Tahkola
6754e17138 No need to call *_FIREVERTICES twice. 2006-02-28 23:17:00 +00:00
Aapo Tahkola
f71fd439f5 Fix aliasing bug (Benjamin Herrenschmidt) 2006-02-28 23:08:28 +00:00
Brian Paul
147f5091a1 Allow error checking to look for presence of either of two extensions.
See bug 6070.
2006-02-28 21:45:09 +00:00
Brian Paul
176dac684a only run shader on active fragments in the span 2006-02-28 15:48:43 +00:00
Brian Paul
34b60b001d check if active fragment shader for deferred texturing/shading 2006-02-28 15:48:19 +00:00
Brian Paul
3073cf21d2 check for active shader, set FRAGPROG_BIT in raster mask 2006-02-28 15:44:33 +00:00
Brian Paul
d1d4121682 silence a bunch of warnings 2006-02-27 15:45:38 +00:00
Michal Krol
9ac9605de1 More GLSL code:
- add x86 code generator;
- add full support for uniforms in ARB_shader_objects;
- add assembly instruction: global_addr;
- reorganize #includes;
- built-in uniforms accessed by index, rather than by name;
- add some entries to x86sse rtasm;
- add configurations to VC6 projects: 'Release x86' and 'Debug x86';
- #define SLANG_X86 active only on VC6 x86 builds;
- introduce code export table for a shader;
- remove GNU license from the noise library;
2006-02-27 14:41:41 +00:00
Brian Paul
c56f2c49a5 re-formated with indent. 2006-02-26 18:18:12 +00:00
Brian Paul
be42f53020 Remove need to initialize the InstSize[] array elements by just storing
the instruction size in _mesa_alloc_instruction().
2006-02-26 18:02:13 +00:00
Brian Paul
a764b7eae0 display list clean-ups 2006-02-26 17:16:37 +00:00
Roland Scheidegger
4e77669926 Add all pci ids known by ddx to radeon dri driver. Remove the entries not known by ddx (probably secondary ids, non-existant cards and similar). Add rs400 to the family enum, and configure the rv410 like a 2 quad chip (?) 2006-02-25 02:03:12 +00:00
Brian Paul
2aabdc743f fix broken _mesa_copy_context() for GL_LIGHTING_BIT 2006-02-24 18:19:11 +00:00
Brian Paul
ee2339f673 need to check for _NEW_BUFFERS in xmesa_update_state() 2006-02-24 17:58:48 +00:00
Brian Paul
228d4a6de7 Fix _mesa_copy_texture_state() so that we copy texture object bindings,
not the actual contents of texture objects.  This makes glXCopyContext()
work properly.
2006-02-24 17:16:57 +00:00
Brian Paul
1aad408b5a EXT_framebuffer_object (Dave Reveman) 2006-02-24 15:36:24 +00:00
David Nusinow
a4e43427f8 * Move compatibility packages to the xorg source package. The versioning on
these packages will be too low without an epoch and they definitely fit
  with the xorg package anyway.
2006-02-24 05:43:01 +00:00
Brian Paul
44a2e96729 include inttypes.h if __osf__ defined (Randall Hand) 2006-02-23 15:36:39 +00:00
Brian Paul
5b2ee9c1e9 update Blender link 2006-02-23 14:29:03 +00:00
Stephane Marchesin
bb390133b5 Import 2006-02-23 12:55:56 +00:00
Stephane Marchesin
0abf3937ce Initial revision 2006-02-23 12:55:56 +00:00
Brian Paul
956fff6345 add some #includes, fix some prototypes (bug 5992) 2006-02-22 16:54:05 +00:00
Brian Paul
7b6fd8a0c6 include proper header file, remove local extern declarations 2006-02-22 16:44:04 +00:00
Brian Paul
cebad151a1 add missing prototypes, use _slang_ prefix on non-static functions 2006-02-22 16:43:26 +00:00
Brian Paul
4f8b59d59b silence a variety of compiler warnings 2006-02-22 16:35:34 +00:00
Brian Paul
49ad2d4ed1 updated GLUT link 2006-02-22 15:50:57 +00:00
David Nusinow
829190abdd * Provide compatibility packages for the Xorg 6.9 mesa packages. This
package will be the only source of mesa packages in Debian for the
  present, and these packages will provide for smooth upgrades and
  compatibility.
2006-02-22 03:22:26 +00:00
Michal Krol
cc1591667d More GLSL code:
- uniforms (only GetLocation, Uniform1f and Uniform4fv for now for demos);
- fix bugs and optimize array size handling;
- 2D texture sampling (needs Enable(TEXTURE_2D) to work);
- decrease built-in library assembly size by 30%.
2006-02-21 12:35:06 +00:00
Jouk Jansen
8986e36f36 Committing in .
Update OpenVMS makefiles

 Modified Files:
 	Mesa/src/mesa/shader/slang/descrip.mms
 	Mesa/src/mesa/swrast/descrip.mms Mesa/src/mesa/tnl/descrip.mms
 ----------------------------------------------------------------------
2006-02-21 12:28:34 +00:00
Jeremy Kolb
fcbbdf9991 Added xcb dri config file. 2006-02-19 22:31:26 +00:00
Jeremy Kolb
97a3023c9f Remove old linux-x86-xcb (didn't do anything).
Removed reference to linux-x86-xcb and added linux-dri-xcb in Makefile.
2006-02-19 22:30:46 +00:00
Michal Krol
3654193a4d More GLSL code.
- general constructors allowed;
- implement noise functions (from Stefan Gustavson - thanks!)
- cosmetic stuff.
2006-02-18 15:11:18 +00:00
Keith Whitwell
e94be8d5c0 Fix STENCIL_WRITE_MASK defn for bug 5902 2006-02-17 17:03:14 +00:00
Aapo Tahkola
8da9f448f4 Skip ARL while we dont implement it. Fix broken nv vps but do it with software for now. 2006-02-16 19:50:40 +00:00
Roland Scheidegger
555b5fac4f Reinstate vertex format after a rasterization fallback for both r200 and radeon driver when a tcl fallback is active, fixes a blender issue with non-tcl hw (bug #5601) 2006-02-16 17:16:33 +00:00
Eric Anholt
a176bc6c17 Include dix-config.h if HAVE_DIX_CONFIG_H is defined. This will be used by the
X Server to get things like _XSERVER64 (for X headers) and NO_LIBCWRAPPER
defined consistently when its builds Mesa internally.
2006-02-15 21:03:34 +00:00
Brian Paul
ee40c4fb34 Set NumInstructions (bug 5864) 2006-02-15 15:59:37 +00:00
Brian Paul
a584e846d4 Fix a few warnings:
- nested comments (use #if 0 / #endif instead)
 - missing default clause in switch statements
 - use of possibly undefined variables
2006-02-15 15:51:01 +00:00
Michal Krol
dd02edf381 Add support for forward function declarations. 2006-02-15 11:15:16 +00:00
Michal Krol
88d994c3b2 Add fragment shader execute entry. 2006-02-15 11:12:47 +00:00
Michal Krol
50092f8f33 Add s_arbshader.c, s_arbshader.h. 2006-02-15 11:09:26 +00:00
Michal Krol
870ebefb3b Add swrast/s_arbshader.c. 2006-02-15 11:07:56 +00:00
Michal Krol
a663931204 Add arbshader stage. 2006-02-15 11:06:00 +00:00
Michal Krol
5bc35a823a Enable texcoords when program object in use. 2006-02-15 11:03:57 +00:00
Michal Krol
dc3a922cf3 Get arbfslight demo running. 2006-02-15 11:02:07 +00:00
Michal Krol
0c8e578a38 Enable GL_ARB_fragment_shader extension. 2006-02-15 11:00:15 +00:00
Michal Krol
3699751b0b Demonstrate GLSL fragment and vertex shaders. 2006-02-15 10:58:52 +00:00
Brian Paul
d5aca8bf0c remove stray 'foo' line 2006-02-15 04:10:55 +00:00
Brian Paul
0c1438d331 replace size_t * w/ unsigned int * (Jurg Billeter) 2006-02-14 15:04:45 +00:00
Brian Paul
a5033a0421 fix AIX issues (bug 5874) 2006-02-14 14:57:04 +00:00
Jouk Jansen
2189d9c96e Update OpenVMS compile support 2006-02-13 12:00:29 +00:00
Michal Krol
e7ffe4619f More glsl code. 2006-02-13 11:47:41 +00:00
Michal Krol
8a54fad6cd REVISION 3.
Remove illegal operators for overloading.
2006-02-13 11:45:57 +00:00
Michal Krol
ebcbf2f853 Cosmetic changes. 2006-02-13 11:42:48 +00:00
Michal Krol
41eeae5fb1 Delete most of the comments.
Minor tweaks with the functions.
Add experimental print functions.
2006-02-13 11:40:32 +00:00
Michal Krol
02eb9acc5e Get it running for ARB_vertex_shader.
Add experimental print functions to builtin library.
Some functionality missing:
- automatic arrays;
- general constructors;
- local variable initialization;
- texture sampling and noise;
- semantic error checking;
- function prototypes.
2006-02-13 11:38:37 +00:00
Michal Krol
44e9ccc708 Rename current_program to CurrentProgram.
Temporary vertex_shader execution code.
2006-02-13 11:31:16 +00:00
Michal Krol
adef42c88d Add tnl\t_vb_arbshader.c. 2006-02-13 11:27:33 +00:00
Michal Krol
7d376c76c9 Add tnl/t_vb_arbshader.c. 2006-02-13 11:25:43 +00:00
Michal Krol
a2ea606377 Add ARB_vertex_shader stage just before render stage.
If enabled, all other stages, except render, are disabled.
2006-02-13 11:23:36 +00:00
Michal Krol
2363fff347 Enable GL_ARB_shader_objects, GL_ARB_shading_language_100 and
GL_ARB_vertex_shader extensions.
2006-02-13 11:04:27 +00:00
Michal Krol
c92e688e15 Rename current glsl program variable. 2006-02-13 10:56:54 +00:00
Michal Krol
170f08d4b1 Add _mesa_atanf and _mesa_asinf functions. 2006-02-13 10:55:14 +00:00
David Nusinow
99688cd051 Add m68k to previous fix to fix its FTBFS also 2006-02-11 23:00:27 +00:00
Eric Anholt
91c30771b6 Add the ability to define NO_LIBCWRAPPER to avoid libcwrapper brain damage.
If it's true that libcwrapper usage isn't necessary ever in the DllLoader world,
then this code should probbaly all go away.
2006-02-11 02:59:38 +00:00
Dave Airlie
f236300e3a commit to fixup MGL namespacing for XGL 2006-02-10 21:46:17 +00:00
Aapo Tahkola
a73094cc6a Workaround problems with NWN. (Tilman Sauerbeck) 2006-02-10 17:26:44 +00:00
Brian Paul
42447365b2 remove the test for XFree86Server from prev patch (bug 5835) 2006-02-09 14:28:40 +00:00
David Nusinow
1ba0a92702 * Add s390 to the USE_IEEE test in src/mesa/main/imports.h.
(closes: #349437)
2006-02-09 01:24:52 +00:00
Alan Hourihane
b77a225250 Check DDX for 1.5.0 2006-02-08 22:05:42 +00:00
Brian Paul
d93615fc1e include dix-config.h (Mike Harris) (bug 5835) 2006-02-08 14:52:06 +00:00
Brian Paul
42725d6f54 David Reveman's GLX_EXT_texture_from_pixmap extension patch 2006-02-07 00:39:56 +00:00
Dave Airlie
4cd0e24f86 add vblank support to i915 driver 2006-02-06 00:09:58 +00:00
Brian Paul
640ef7f890 EGL 1.2 tokens/functions/etc. 2006-02-05 16:39:19 +00:00
Brian Paul
63b852f4f9 fix typo 2006-02-05 16:38:33 +00:00
Brian Paul
ea970da0b6 bring in changes from 6.4 branch 2006-02-03 17:21:54 +00:00
Roland Scheidegger
e7276b7fa5 replace the texture level hack used in radeon/r200 to allow larger textures with different methods to calculate the announced maximum texture sizes. Default is still the same (that is, radeon/r200 default to not announce anything which might not fit, i830/i915 default to 1 texture must fit). Bug #5785. 2006-02-03 13:29:11 +00:00
Brian Paul
16a14510c4 use calloc instead of malloc so try_codegen field is initialized to zero (bug 5791) 2006-02-02 17:33:26 +00:00
Brian Paul
725740c7c8 add some assertions to check emit_func[] table validity 2006-02-02 14:30:16 +00:00
Roland Scheidegger
5951aab823 fix texcoord unit assertion, the right one (bug 5780) 2006-02-01 23:14:42 +00:00
Brian Paul
865ad82bb8 fix texcoord unit assertion (bug 5780) 2006-02-01 16:50:16 +00:00
Roland Scheidegger
3b6f62fc73 fix test for valid texunit in _mesa_ClientActiveTextureARB 2006-02-01 01:05:40 +00:00
David Nusinow
065d5a8d17 * Remove makedepend from build-depends. Now we'll just build-dep on xutils
to get the app, which will translate over to our own xorg 7.0 plans.
2006-02-01 00:22:24 +00:00
Brian Paul
111281f1fc s/malloc/calloc/, fix mem leak 2006-01-31 03:00:14 +00:00
Roland Scheidegger
663138a951 fix broken assertions so dri drivers compile with -DDEBUG (replace GL_STENCIL_INDEX8 with GL_STENCIL_INDEX8_EXT). Fix potential problem with drivers which use 32bit z buffers. 2006-01-30 23:49:31 +00:00
Roland Scheidegger
a45f23bed1 fix broken assertion to make radeon driver compile with -DDEBUG... 2006-01-30 23:36:42 +00:00
Brian Paul
4b4cc650e1 updated comment 2006-01-30 17:13:19 +00:00
Brian Paul
781c54a5b8 silence warning about duplicate M_PI definition 2006-01-30 17:12:10 +00:00
Brian Paul
6a36407a00 added more tests (Pedro Maia) 2006-01-30 17:11:47 +00:00
Brian Paul
7905b19ec9 use fmod() when incrementing CubeRot 2006-01-30 15:35:35 +00:00
Michal Krol
bd8c742762 Add shader/slang/slang_compile_*.* files. 2006-01-30 14:50:01 +00:00
Michal Krol
9dc8bce88e Split slang_compile.c into several smaller files - it was just too big.
Minor fixes and cosmetic changes.
2006-01-30 14:48:42 +00:00
David Nusinow
3b53c0ac19 * Re-add dh_installdirs call to binary-indep target so that we get
arch-specific dirs for the mesa-swx11-source package
2006-01-30 04:02:11 +00:00
Brian Paul
b2006a40eb some initial EGL 1.2 work 2006-01-30 00:10:55 +00:00
Brian Paul
daf3093f28 Test glCopyTexSubImage2D by drawing gears as texture on sides of a box. 2006-01-28 00:30:07 +00:00
Brian Paul
5e9d73153c misc updates 2006-01-27 20:12:06 +00:00
Brian Paul
0b3c2a9a24 Don't do swapbuffers if -nodraw specified. Get t0 after setup code. 2006-01-27 15:44:40 +00:00
Aapo Tahkola
5594ddbcfe remove broken non arb fp path 2006-01-27 14:35:24 +00:00
Aapo Tahkola
58e4aa0ec9 missing link in the fallback chain 2006-01-27 14:09:05 +00:00
Aapo Tahkola
0fcfa1c5b0 enable hw vertex programs by default 2006-01-27 14:03:22 +00:00
Aapo Tahkola
e797bc8bbe per vp sw fallbacks 2006-01-27 13:21:47 +00:00
Aapo Tahkola
7d82d284e3 radeon driver doesnt have this so i assume we shouldnt either. 2006-01-27 13:09:59 +00:00
Aapo Tahkola
a7bd2563c3 drop all that (slow) locking stuff and make u_list per context. 2006-01-27 13:05:56 +00:00
Aapo Tahkola
875df252a7 R300_PFS_NODE_LAST_NODE -> R300_PFS_NODE_OUTPUT_COLOR 2006-01-27 12:38:20 +00:00
Aapo Tahkola
e804370014 Work around problems with t_vp_build.c 2006-01-27 12:23:26 +00:00
Aapo Tahkola
32551222bc r300UpdateTextureEnv shouldnt be called. 2006-01-27 12:18:58 +00:00
Brian Paul
77667266a7 Test glTexSubImage and glCopyTexSubImage rate.
Run with -nodraw to skip rendering of test quad to get "pure" sub-tex rate.
2006-01-26 17:35:31 +00:00
Brian Paul
32a6468014 copypixrate.c - measure the speed of glCopyPixels. 2006-01-26 16:37:47 +00:00
Aapo Tahkola
e65ad47a8f remove some testing code 2006-01-26 16:28:54 +00:00
Aapo Tahkola
edc98df891 Fix a problem where offsets from disabled tmus reach drm 2006-01-26 15:53:18 +00:00
Alan Hourihane
fbcb37cac5 remove i830 2006-01-26 08:53:32 +00:00
Brian Paul
3a5bb1729d New comments, clean-up of fields related to point/line/triangle validation. 2006-01-26 01:32:47 +00:00
Brian Paul
2219a15b06 remove unneeded init of swrast->invalidate_line/triangle 2006-01-26 01:28:00 +00:00
Brian Paul
74235b1cf1 remove the GL_HP_occlusion_test code 2006-01-26 01:27:17 +00:00
Brian Paul
f3cf636e57 WGL_ARB_extensions_string extension 2006-01-25 17:33:13 +00:00
Brian Paul
166b0ff973 added wglGetExtensionsStringARB 2006-01-25 15:05:36 +00:00
Karl Schultz
7f1274fa8b add wglGetExtensionsStringARB 2006-01-25 06:02:55 +00:00
Jerome Glisse
99da2d30eb fix using a tmp without asking for one 2006-01-24 23:04:51 +00:00
Alan Hourihane
8b1dc68662 pull in fix from 6.4 branch for XFree86Server definition 2006-01-24 21:40:53 +00:00
Aapo Tahkola
4dd8a8907e fix broken get_half & get_zero 2006-01-24 20:24:06 +00:00
Alan Hourihane
65573edd1b remove very old i830 code 2006-01-24 19:59:54 +00:00
Alan Hourihane
f3134ca7ad use front.size instead of sPriv->fbSize 2006-01-24 19:40:26 +00:00
Alan Hourihane
f7360cd42d use screen->front.map instead of pFB from libdri 2006-01-24 19:28:49 +00:00
Alan Hourihane
39c492bb14 Add Intel 945GM support
Add rotation support
(Tungsten Graphics)
2006-01-23 10:10:48 +00:00
David Nusinow
ed56fe4e82 * mesa-swrast-src.install stop looking for the swx11 dir and look for swrast 2006-01-22 19:50:19 +00:00
David Nusinow
1fbbe807ed Make libglu1-mesa default to depending on libgl1-mesa-glx. Thanks Michel Dänzer for catching this one. 2006-01-22 00:07:07 +00:00
David Nusinow
c3dccfa05b Use appropriate version number for an NMU. Thanks Julien for catching this one 2006-01-21 23:40:34 +00:00
David Nusinow
7703d9293f Incorporate other NMU for xlibs-dev transition 2006-01-21 23:32:52 +00:00
Jerome Glisse
acd1f16b35 Do individual negetation in swizzling, thus we can
save one instruction in some case.
2006-01-21 15:16:53 +00:00
Jerome Glisse
c6f35dd8db Indent & wrap around 80 2006-01-21 13:08:46 +00:00
Aapo Tahkola
f087d60f18 Doesnt apply anymore 2006-01-21 12:48:09 +00:00
Jerome Glisse
41a874f486 Add individual component negation. 2006-01-21 11:43:37 +00:00
Aapo Tahkola
ef073b7a75 Try to tackle bug #5148 2006-01-20 21:56:52 +00:00
Aapo Tahkola
c90b569238 Sync from drm. 2006-01-20 21:16:28 +00:00
Aapo Tahkola
93a7605b1d Fix ARGB1555 component swizzling. 2006-01-20 20:48:05 +00:00
Jerome Glisse
b42d5bcaff Fix swizzling table & add struct. 2006-01-20 18:24:44 +00:00
David Nusinow
bcf560e4b8 * Change libgl1-mesa to be named libgl1-mesa-glx 2006-01-19 23:45:36 +00:00
Adam Jackson
37e86254c1 Avoid a crash when the user has enabled glVertex{,Attrib}Pointer but hasn't
filled in a valid pointer for that attribute or vertex array.
2006-01-19 18:00:38 +00:00
Adam Jackson
216f729a95 Search for makedepend in the PATH rather than hardcoding /usr/X11R6/bin 2006-01-18 20:57:02 +00:00
Adam Jackson
38da697546 Nuke the old attempt at software DRI, it's broken and awful 2006-01-18 00:29:35 +00:00
Adam Jackson
f93a228c38 Start a software-only DRI driver for use in the new accelerated indirect
world.
2006-01-18 00:22:21 +00:00
David Nusinow
9d944b501a * Change libgl1-mesa-swrast to be named libgl1-mesa-swx11 2006-01-16 22:19:03 +00:00
Brian Paul
1096eae18d properly free ATI fragment shaders (Tilman Sauerbeck) 2006-01-16 16:35:13 +00:00
Brian Paul
361bccb4ec Free visinfo object (Tilman Sauerbeck) 2006-01-16 16:17:18 +00:00
Michal Krol
b4f70646b4 remove some test code;
rewrite the intermediate code executor to address
64-bit platforms and global memory;
store built-in library code in a precompiled form only;
2006-01-16 12:34:16 +00:00
Michal Krol
8defce2cf1 remove slang_*_gc.h files;
rename slang_*_gc_bin.h files to slang_*_gc.h ones;
store built-in library code in a precompiled form only;
2006-01-16 12:27:22 +00:00
Aapo Tahkola
0f488bb16d Missing bits of code spotted by Tilman Sauerbeck 2006-01-15 13:53:54 +00:00
Aapo Tahkola
1bcc323857 Fix ARB_position_invariant handling 2006-01-15 00:07:11 +00:00
Adam Jackson
93d0935ef7 Fix the default target to remake readtex.o if needed 2006-01-13 16:34:00 +00:00
Aapo Tahkola
4078c647d5 namespace pollution fixes (Tilman Sauerbeck) 2006-01-13 15:11:57 +00:00
Aapo Tahkola
458479fedb Fix invalid tex coord routing and couple other small things. 2006-01-13 15:03:57 +00:00
David Nusinow
cf013a5384 Add more closers 2006-01-11 04:10:39 +00:00
David Nusinow
2f367491c4 Add closer 2006-01-11 04:00:15 +00:00
David Nusinow
e7d93b62ec * Change libgl1-mesa-swrast Depends on libx11-6-dev to libx11-dev.
(closes: #347205)
* Add closer for packaging new upstream
2006-01-11 03:48:31 +00:00
Brian Paul
1814d6541b added a couple new assertions to help debug XGL problem 2006-01-10 15:48:56 +00:00
Aapo Tahkola
2d4ff6a8cf Missing patch from Ben Skeggs:
Lots of changes, and fixes for some badness on my behalf.

1. Disposable data used during fp compile is now per-context,
   rather than per-program to save memory.

2. Track usage of INPUT/TEMP registers from Mesa program, free
   them when no longer required so the hw temps can be re-used.

3. Changed LAST_NODE to OUTPUT_COLOR (see r300_reg.h)

4. Implemented remaining ARB_f_p instructions, with the exception
   of the trig/LIT opcodes.

5. Treat ZERO/ONE swizzles the same way as other native swizzles.

6. emit_arith changes, basically a complete re-write.  Should
   produce cleaner instructions, but no real functional changes.
   internal reg -> hw reg routines shared with emit_tex.  A bit
   messy still.
2006-01-09 22:53:38 +00:00
Aapo Tahkola
c217d5a3a8 Fix pow <small> and a very stypid bug with dummy srcs(0 equals to tmp0.x)</small>. demos/cubemap looks perfect now. 2006-01-09 20:00:03 +00:00
Aapo Tahkola
0946e0f418 Fix cube maps. 2006-01-09 19:20:46 +00:00
Aapo Tahkola
7a028bd1ca Fix node setup(from Ben Skeggs) 2006-01-09 18:31:42 +00:00
Brian Paul
d469e5e5a0 s/GLuint/GLbitfield/ 2006-01-09 17:57:47 +00:00
Brian Paul
c2901e4f4c only call xmesa_set_renderbuffer_funcs() when really necessary 2006-01-09 17:56:55 +00:00
Brian Paul
41b9756e9a check XGetGeometry() return value 2006-01-09 16:59:30 +00:00
Roland Scheidegger
8bc4dae67e cube maps on r100 require newer drm than the same feature on r200 (regression from introducing unfied initialization). Fix wrong (so far unused) family assignment for r100 cards. 2006-01-07 20:42:16 +00:00
David Nusinow
a5b309c0c9 Document that we'll be NMU'ing this for modular work 2006-01-06 03:09:12 +00:00
Keith Whitwell
eda59aa87e Oops - bad file-completion typo. 2006-01-05 11:01:18 +00:00
Keith Whitwell
ca188de098 add simple test for program local parameters 2006-01-05 10:57:57 +00:00
Brian Paul
30cc822163 install GLw headers (bug 5396) 2006-01-04 20:10:16 +00:00
Brian Paul
413a49ce59 special-case Darwin (bug 4509) 2006-01-04 20:06:13 +00:00
David Nusinow
df46b96ab0 Re-add mesa-6.4.1 which was accidentally deleted 2006-01-03 05:15:27 +00:00
Jerome Glisse
31be39742b Use X11_INCLUDES config macro instead of
hardcoded path in makefile.
2006-01-02 18:47:00 +00:00
David Nusinow
bda1e332ce Update libs to 7.0 release with packaging 2005-12-30 20:12:45 +00:00
Brian Paul
3086efe357 remove bogus wings3d link 2005-12-30 19:15:40 +00:00
Keith Whitwell
cabecbd314 recalculate state on drawable changes 2005-12-30 13:03:08 +00:00
Keith Whitwell
1d43e729ec properly notify driver on scissor change in MakeCurrent 2005-12-30 13:02:27 +00:00
Dave Airlie
8c137e2f94 fill out framebuffer egl stuff enable egl on R300 2005-12-30 11:18:04 +00:00
Dave Airlie
fb83a42d31 fixup stamp so driver updates drawable info 2005-12-30 10:12:26 +00:00
Dave Airlie
456a513daa add support for PCIE card to EGL, doesn't fully work yet but these changes
need to get off my hard disk
2005-12-29 00:56:01 +00:00
Dave Airlie
577d23011b add EGL to r300 makefile 2005-12-29 00:42:25 +00:00
Dave Airlie
369ae3e2c4 rv370 not rv350 2005-12-29 00:38:12 +00:00
Dave Airlie
77a7c2ad92 typo 2005-12-29 00:37:24 +00:00
Dave Airlie
4dac78463e add some card type ioctl support 2005-12-29 00:36:07 +00:00
Dave Airlie
edf570da67 use card_type not isPCI 2005-12-29 00:30:53 +00:00
Dave Airlie
49b9355020 add some r300 information 2005-12-28 23:42:41 +00:00
Dave Airlie
1b6a081885 update to new API 2005-12-23 08:42:29 +00:00
Dave Airlie
bc8390fa6c this needs to be calloced 2005-12-23 08:17:44 +00:00
Dave Airlie
ad960612ce fixup driver for some api changes 2005-12-23 07:58:24 +00:00
Aapo Tahkola
11decab34a Handle fatal case. 2005-12-18 21:40:13 +00:00
Aapo Tahkola
3ad366dff2 Drop output checking. 2005-12-17 18:59:18 +00:00
Aapo Tahkola
d57ce4a2c1 No you arent. 2005-12-17 12:28:58 +00:00
Aapo Tahkola
707343dcf5 Warn only when being enabled. 2005-12-17 12:20:51 +00:00
Aapo Tahkola
feb7221ecb I think this has been tested well enough already. 2005-12-17 12:08:41 +00:00
Aapo Tahkola
1d32fc7332 Enable CB_DPATH by default. 2005-12-17 11:59:13 +00:00
Aapo Tahkola
fd1627312d Fix (likely) typo. 2005-12-17 11:43:59 +00:00
Aapo Tahkola
e34700af7a Add some missing hooks. This should fix various little problems with window movement and 2d windows flashing on top of 3d windows. This problem was previously shadowed by r300ResetHwState as it gets called frequently. 2005-12-17 11:39:40 +00:00
Brian Paul
c9b4acfeb8 minor code movement 2005-12-17 05:37:15 +00:00
Karl Schultz
782291ab91 fix thinko in last revision. 2005-12-16 16:38:44 +00:00
David Nusinow
53b2ad5fd0 Rename mesa lib dir to appropriate version 2005-12-16 04:04:38 +00:00
David Nusinow
b44d9c657d Changelog version bump 2005-12-16 04:03:27 +00:00
Brian Paul
924fb5e916 move va_end() call (Evgeny Kotsuba) 2005-12-15 15:23:54 +00:00
Karl Schultz
841c9018b1 Work In Progress. Move some of the frame buffer, render buffer, etc init code from the create context path to the make current path, where it is lazily initialized. This didn't buy me very much except to make it look closer to the X11 driver. Fix up some of this same code to correct some errors.
The next step is to reorganize the wmesa context data structure to inherit the gl_context by containment so I can have access to the wmesa context in the update state path.  The driver is still currently not responding to changes in the Draw and Read Buffer state.
2005-12-15 01:02:37 +00:00
Brian Paul
b6d7a0c5a5 regenerate to pick up glGetQueryObject[u]i64vEXT funcs 2005-12-14 14:23:37 +00:00
Keith Whitwell
0970787228 Fix typo. 2005-12-14 09:31:25 +00:00
Brian Paul
c8d1741b78 use GLbitfield instead of GLuint 2005-12-14 03:06:16 +00:00
Brian Paul
1add059bd1 Removed the GL_SGIX/SGIS_pixel_texture extensions. Same thing can be
done with fragment programs nowadays.
2005-12-14 03:04:58 +00:00
David Nusinow
92ef7527d1 * New upstream version (6.4.1)
* Merge changes from Ubuntu version 6.4.1-0ubuntu1
  + Add new files required by xorg-server GL build to mesa-swrast-source.
2005-12-14 01:43:13 +00:00
Dave Airlie
c9797f6b76 fix from Roland for mipmapped compressed textures
remove some debug
2005-12-13 19:53:28 +00:00
Brian Paul
0063084804 silence warning, bug 5318 2005-12-12 15:27:55 +00:00
Keith Whitwell
40332059e4 Split _MaintainTexEnvProgram into two flags _Maintain and _Use. This
restores the ability to run the software driver with program TNL but
tradtional swrast.
2005-12-12 12:57:08 +00:00
Eric Anholt
3e1a5a38ae Regenerate for recent glapi changes (GetQueryObjecti64vEXT). 2005-12-11 07:42:37 +00:00
Brian Paul
790ab0a0b6 s/eglShowSurfaceMESA/eglShowScreenSurfaceMESA/ 2005-12-10 17:59:36 +00:00
Brian Paul
f06ce1ba71 Rename eglDRIShowSurfaceMESA.
s/_eglAddMode/_eglAddNewMode/
2005-12-10 17:56:00 +00:00
Brian Paul
98d9bb66a4 updates to match other changes elsewhere 2005-12-10 17:55:15 +00:00
Brian Paul
215aa20f5c rename eglShowSurfaceMESA, add EGL_SCREEN_POSITION_GRANULARITY_MESA 2005-12-10 17:54:36 +00:00
Brian Paul
4882279633 Some initial per-thread support.
Rename eglShowSurfaceMESA to eglShowScreenSurfaceMESA.
2005-12-10 17:54:00 +00:00
Brian Paul
b04dd5c587 Added EGL_SCREEN_POSITION_GRANULARITY_MESA query.
Rename eglShowSurfaceMESA to eglShowScreenSurfaceMESA.
2005-12-10 17:53:07 +00:00
Brian Paul
ad6f8eba00 lots of updates, mode sorting, etc 2005-12-10 17:52:11 +00:00
Brian Paul
6002d2ff4e implement config sorting for eglChooseConfig() 2005-12-10 17:51:13 +00:00
Brian Paul
21b2784ff5 'a' key to toggle animation 2005-12-08 17:49:50 +00:00
Brian Paul
5abc246f8d bump version number 2005-12-08 14:51:36 +00:00
Brian Paul
72d1bb5756 don't need LONGLONG typedefs 2005-12-08 14:50:28 +00:00
Brian Paul
91ed68b2b9 do away with 'long long' usage 2005-12-08 14:50:03 +00:00
Brian Paul
5262c225ba remove stray _ from GL[u]int64_EXT 2005-12-08 14:10:59 +00:00
Karl Schultz
1acea5f289 update for symbol export changes 2005-12-08 04:36:42 +00:00
Karl Schultz
5bdec89da5 add {} to RENDER_SPAN macro to fix compilation problem 2005-12-08 04:35:07 +00:00
Karl Schultz
59af97420e use 64-bit typedefs for portability 2005-12-08 04:34:17 +00:00
Karl Schultz
0694adaf71 add 64-bit typedefs for portability 2005-12-08 04:33:17 +00:00
Karl Schultz
4c3443b460 handle 64-bit types for Windows. 2005-12-08 04:32:02 +00:00
Karl Schultz
f2b9fa03da reapply recent changes with Visual Studio instead of direct text editing. 2005-12-08 04:30:44 +00:00
Brian Paul
0fa8c59e64 Updates for GL_EXT_timer_query:
New GLint64EXT and GLuint64EXT types (use C99's long long types).
New glGetQueryObject[u]i64vEXT() functions.
2005-12-07 14:48:19 +00:00
Karl Schultz
98bebc7212 Fix bugzilla 5253. Add {} around code in RENDER_SPAN macros when code includes a variable declaration. 2005-12-07 05:09:14 +00:00
Aapo Tahkola
abccd5b729 Make missing interpolator inputs fatal 2005-12-06 22:26:21 +00:00
Aapo Tahkola
9309ba78d1 Fix secondary color for VP's 2005-12-06 19:49:18 +00:00
Brian Paul
9580179dfb C++ fixes, mostly casts (Stephane Conversy) 2005-12-06 15:41:43 +00:00
Eric Anholt
d5179613d5 Add support for GL_EXT_secondary_color. It looks like using
NEED_SECONDARY_COLOR to turn it off/on was what we wanted -- now results look
correct using seccolor on Savage IX and Savage4.
2005-12-06 10:38:37 +00:00
Keith Whitwell
b4ebb68202 Add guard before calling ctx->Driver.BindProgram 2005-12-05 11:44:09 +00:00
Aapo Tahkola
f27c07c99e Fix AL8 2005-12-05 09:30:58 +00:00
Dave Airlie
923257fe07 update r300 drm minimum to 20 2005-12-05 01:14:13 +00:00
Dave Airlie
f93feb7aed Fix r300 rectangular texture upload and swtcl coordinate fixing same as radeon
sw tcl
2005-12-04 00:37:35 +00:00
Brian Paul
eb06704a7c Added PCI_CHIP_RV410_5E4B (Adam Kirchhoff) 2005-12-02 23:57:37 +00:00
Brian Paul
99f13343cf Fix two failures encountered when running out of memory during XImage
allocation.
Append \n to _mesa_warning() strings.
2005-12-02 19:41:43 +00:00
Brian Paul
1b3128cc9a Test sizeof(drm_handle_t) instead of LONG64 when returning handles 2005-12-02 18:17:11 +00:00
Brian Paul
8716e7570d fix _mesa_ffs() return, test for more platforms (Evgeny Kotsuba) 2005-12-02 18:06:01 +00:00
Ian Romanick
5abff7bc4d Fix build issues on x86-64 due to missing include path in
glapi_x86-64.S.

Bug: #5602
2005-12-02 00:25:06 +00:00
Keith Whitwell
c9515bf1ae Call ProgramStringNotify after creating tnl programs. 2005-12-01 14:24:37 +00:00
Keith Whitwell
bfba2705b6 Remove VB->LastClipped 2005-12-01 12:54:21 +00:00
Keith Whitwell
dd4f0d1a93 Clean up clipping somewhat
- no need to update ClipMask on generated vertices
	- remove the VB->LastClipped value

Line clipping algorithm changed and simplified somewhat.  The old one
was based on the triangle routine and probably wouldn't have recognized
lines that were clipped down to nothing (ie culled, but not by a single
plane).
2005-12-01 12:53:15 +00:00
Brian Paul
f285f0d8f6 remove uintptr_t cast 2005-12-01 01:00:13 +00:00
Brian Paul
6b25193b92 try removing need for the uintptr_t casts 2005-12-01 00:59:51 +00:00
Brian Paul
0e31e02aef Added FinishRenderTexture() device driver function to indicate when
rendering to a texture has likely completed.
Fixed refcount issue in texture renderbuffer wrapper.
2005-12-01 00:25:00 +00:00
Brian Paul
cf2702e3db added comment about glTexImage and renderbuffers 2005-12-01 00:18:49 +00:00
Brian Paul
31e739a189 get depthBits from the current drawbuffer 2005-12-01 00:15:41 +00:00
Brian Paul
94ae2b4f25 fxt1_decode_1() should not be static 2005-11-30 14:47:34 +00:00
Ian Romanick
5910dfacf1 This is a major re-work of the __indirect_glInterleavedArrays routine. The
big, ugly, error prone switch-statement is replaced with a compact table.
I also added numerous comments, including a comment explaining how the
format parameter is validated.

Explicitly pass GL_FLOAT as the type in the cases where that is the only
possible value (e.g., everywhere except the call to glColorPointer).

Validate that stride is >= 0.

Tested with all modes (including the two error modes) of
progs/tests/interleave.c.

Bug: #5001, #5058
Reviewed by: Brian Paul
2005-11-30 00:06:48 +00:00
Brian Paul
96f216565e assorted fixes for server-side direct rendering (bug 5199) 2005-11-29 23:01:43 +00:00
Brian Paul
2d8eb9eaf3 remove dri_client/ dir from tarball 2005-11-29 22:41:23 +00:00
Brian Paul
126482a12f use the files from the drm tree/package 2005-11-29 22:37:19 +00:00
Michel Dänzer
9790e641ef If the DDX driver didn't reserve any video RAM for textures, fall back to
using only GART memory for textures instead of segfaulting in the texture
management code. (Bug 5115)
2005-11-29 13:13:34 +00:00
Brian Paul
58f45fa44d added _EGLExtensions typedef 2005-11-29 04:44:33 +00:00
Brian Paul
5285c32a17 Put extension flags, string into separate struct. 2005-11-29 04:43:37 +00:00
Brian Paul
f576450cae clean up the drmGetMap/drmMap code 2005-11-29 04:18:38 +00:00
Brian Paul
4683e8e954 apparently need to load colormap after setting the mode to make it work reliably 2005-11-29 03:00:02 +00:00
Keith Whitwell
2b8e66d210 Remove the many aliases for 'struct mem_block' in mm.h 2005-11-28 13:17:15 +00:00
Keith Whitwell
aae2b8b8eb Correct author attribution of mm.h 2005-11-28 12:05:29 +00:00
Brian Paul
4f12aa5a6a check for driver_modes == NULL. Don't need driver_modes for EGL driver 2005-11-28 00:04:35 +00:00
Brian Paul
a913d9f2f7 rearrange some code to put in more logical order, misc clean-ups 2005-11-28 00:02:06 +00:00
Brian Paul
3070a581fc Lots of fixes, clean-ups, new comments, etc.
To set the FBdev video mode, need to add a \n char to the string.
2005-11-28 00:00:08 +00:00
Brian Paul
d548bf41d3 Redo _eglInitSurface() so it can be used with all surface types.
Redo _eglInitContext() to do error checking, attribute list parsing, etc.
2005-11-27 23:57:19 +00:00
Brian Paul
49b2d2e90f include stdint.h for BSD 2005-11-27 23:46:55 +00:00
Brian Paul
024b5896f0 use ADD_POINTERS macro instead of (uintptr_t) cast 2005-11-25 17:07:10 +00:00
Keith Whitwell
96bf6abb66 Use _mesa_exec_free for fp->func. 2005-11-24 10:59:10 +00:00
Brian Paul
2a76d952b8 use new _egl_api struct 2005-11-24 04:06:51 +00:00
Brian Paul
1ac1c1c423 use _egl_api struct, make some functions static 2005-11-24 04:05:27 +00:00
Brian Paul
daf585d0f0 Move all the EGL API function pointers into a new _egl_api struct. 2005-11-24 04:02:16 +00:00
Brian Paul
d2c64e0b83 report error token in message printed in _eglError() 2005-11-24 03:53:46 +00:00
Brian Paul
b1abf1ea8e change error test in _eglParseConfigAttribs() 2005-11-24 03:48:19 +00:00
Brian Paul
ff707ead2b init attribs to EGL_DONT_CARE in _eglParseConfigAttribs() 2005-11-24 03:41:56 +00:00
Aapo Tahkola
181f2b92cb Couple changes that were missed. 2005-11-23 13:02:25 +00:00
Brian Paul
023c95481b check/print EGL_SCREEN_BIT_MESA, fix eglGetDisplay() call 2005-11-23 01:45:25 +00:00
Brian Paul
957b517c4f Choose the display mode / surface size in an intelligent way.
Fix // comments.
More error checking, etc.
2005-11-23 01:44:38 +00:00
Brian Paul
39591da355 update some comments 2005-11-23 01:42:40 +00:00
Brian Paul
a3d2c69e61 fixed wrong return value in radeonShowSurfaceMESA() 2005-11-23 01:39:56 +00:00
Brian Paul
b8829facc7 change error message 2005-11-23 01:38:30 +00:00
Brian Paul
b711eb793b use _eglLog() 2005-11-23 01:38:12 +00:00
Brian Paul
f049ca4e33 New _eglLog() function to replace fprintf/printf calls for debug/info. 2005-11-23 01:37:30 +00:00
Brian Paul
9bcc9e9174 reference bug 5131 in comment in _tnl_free_vertices() 2005-11-22 23:29:27 +00:00
Brian Paul
286f3fbb3a disable freeing of fp->func, see comment (bug 5131) 2005-11-22 23:27:27 +00:00
Keith Whitwell
e6e1c3fc11 Use correct enums for program output variables. Fixes
fp/tri-depthwrite.
2005-11-22 12:20:03 +00:00
Keith Whitwell
ec1ffd9f25 track state flags which might invalidate parameter lists 2005-11-22 12:12:17 +00:00
Keith Whitwell
5a771857d9 Make sure tnl->_DoVertexFog is kept uptodate. Fixes fog in i915
driver.
2005-11-22 10:58:05 +00:00
Dave Airlie
bf44f6cfac bit 31 of this inserts a nop after the current instruction 2005-11-21 11:39:49 +00:00
Dave Airlie
1ea61b5cad get rid of some of those unknowns figured out from reg dumper 2005-11-21 11:35:36 +00:00
Brian Paul
ec770b8c60 move _mesa_init_instruction() to program.c 2005-11-20 17:57:22 +00:00
Brian Paul
1a61462318 s/Saturate/SaturateMode/ 2005-11-20 17:54:29 +00:00
Brian Paul
e31ac05223 Make Saturate a 2-bit field again, renamed to SaturateMode with three
possible values: SATURATE_OFF, SATURATE_ZERO_ONE and SATURATE_PLUS_MINUS_ONE.
2005-11-20 17:52:40 +00:00
Brian Paul
22db535776 additional clean-ups and improvements 2005-11-19 23:45:10 +00:00
Brian Paul
55194df035 remove incorrect cast 2005-11-19 23:29:18 +00:00
Brian Paul
1353ebed81 Saturate is a 1-bit boolean field 2005-11-19 23:28:55 +00:00
Brian Paul
5d7b49f7e7 Bunch of little fixes:
Fix mem leaks in _mesa_TexEnvProgramCacheDestroy().
Check if ctx->Driver.BindProgram is non-null before calling.
s/unsigned/GLuint/
Use MAX_INSTRUCTIONS instead of magic 100, check program length after it's made.
Use _mesa_init_instruction() instead of _mesa_memset().
2005-11-19 23:12:20 +00:00
Brian Paul
1ad3b7e28b call gluDeleteQuadric() to fix mem leak 2005-11-19 23:09:14 +00:00
Brian Paul
6f445a1061 in run_texnorm_stage() check if the texture unit is really enabled before trying to normalize the texcoords 2005-11-19 17:08:15 +00:00
Brian Paul
41c8eabe0f update some vars 2005-11-19 16:50:36 +00:00
Brian Paul
63d683091f No longer derive 'ati_fragment_shader' from 'program' class. Only the
program->Id and program->RefCount fields were used and ATI fragment shaders
didn't have too much in common with ARB/NV vertex/fragment programs anyway.
2005-11-19 16:43:04 +00:00
Brian Paul
430c469c5b remove #include arbfragparse.h 2005-11-19 15:44:53 +00:00
Brian Paul
47e511c36d remove #include arbfragparse.h, s/PI/M_PI/ 2005-11-19 15:42:39 +00:00
Brian Paul
9fd133511c removed arbfragparse.[ch] arbvertparse.[ch] 2005-11-19 15:37:00 +00:00
Brian Paul
8c41a14c5e Remove the _mesa_parse_arb_vertex/fragment_program() functions into
arbprogparse.c and remove arbvertparse.[ch] and arbfragparse.[ch].
Clean up quite a bit of the arb parsing code.
Rewrite parser extension code to avoid a mess of string operations every
time the parser was used.
2005-11-19 15:36:28 +00:00
Brian Paul
5754809421 update comments, remove ^M chars 2005-11-19 14:57:47 +00:00
Brian Paul
8c765ad312 move a bunch of gl2/shading language structs from mtypes.h to shaderobjects.h 2005-11-19 14:49:25 +00:00
Aapo Tahkola
ddf61bfec9 Try to detect when native support to given texture width is not available. 2005-11-18 20:53:50 +00:00
Aapo Tahkola
f31448f3c8 Fix typo causing secondary color not to work properly. 2005-11-18 18:05:19 +00:00
Aapo Tahkola
40ca5b455f Reduce stderr noise. 2005-11-18 17:57:27 +00:00
Brian Paul
311bcf5090 In _mesa_RenderbufferStorageEXT(), try to avoid needless reallocation.
Simplify _mesa_GetRenderbufferParameterivEXT() queries.
2005-11-18 02:24:14 +00:00
Brian Paul
948ab5d8a9 move _mesa_update_state() calls before error tests that depend on framebuffer completeness 2005-11-17 05:01:26 +00:00
Brian Paul
74e9a43a2a optimize drawing GL_DEPTH_STENCIL pixels into a GL_DEPTH_STENCIL renderbuffer 2005-11-17 05:00:17 +00:00
Brian Paul
5ba41dfa81 s/MEMCPY/_mesa_memcpy/ and fix typo 2005-11-17 04:51:56 +00:00
Brian Paul
11f179e01b optimize case of reading GL_DEPTH_STENCIL pixels from GL_DEPTH_STENCIL renderbuffer 2005-11-17 04:51:08 +00:00
Brian Paul
f81c78f87d delete frame/renderbuffers upon exit, more error checking 2005-11-17 02:08:10 +00:00
Brian Paul
547113c16c improved error checking in error_check_format_type() 2005-11-17 02:05:42 +00:00
Thomas Hellström
154cc16d08 Fixes for x86_64 Unichrome. 2005-11-16 19:24:00 +00:00
Thomas Hellström
0ba7be0a50 Bring in last minute 6_4 branch changes to the unichrome driver
to the trunk.
2005-11-16 17:24:26 +00:00
Brian Paul
32fe233d54 added -ds option to test GL_EXT_packed_depth_stencil with framebuffer objects 2005-11-16 14:48:11 +00:00
Brian Paul
0f29ef6092 additional comments about GL_DEPTH_STENCIL buffers 2005-11-16 04:17:20 +00:00
Brian Paul
94f70fab64 added depthstencil.[ch] 2005-11-16 04:12:08 +00:00
Brian Paul
1a5f1bdb42 Use new gl_framebuffer _Depth/_StencilBuffer fields instead of
Attachment[BUFFER_DEPTH/STENCIL].Renderbuffer.  The former may be wrappers
around combined depth/stencil renderbuffers attached at the later points.
2005-11-16 04:09:26 +00:00
Brian Paul
909e8a7abb added depthstencil.c 2005-11-16 04:06:32 +00:00
Brian Paul
847160466c Support for combined depth/stencil renderbuffers (GL_EXT_packed_depth_stencil).
depthstencil.c provides wrappers for treating depth/stencil buffers either
as regular depth or stencil renderbuffers.
2005-11-16 04:05:54 +00:00
Brian Paul
06185363dd added _mesa_new_depthstencil_renderbuffer() for combined depth/stencil buffers 2005-11-16 04:00:31 +00:00
Brian Paul
c731d6223c Added error checking in _tnl_Begin to detect incomplete framebuffer.
Set new tnl->DiscardPrimitive field to true when such error is
detected to discard the glBegin/End primitive when flushing.
Added some new comments.
2005-11-16 02:47:16 +00:00
Brian Paul
0ad64faec7 change an assertion 2005-11-16 02:00:34 +00:00
Brian Paul
738f501f73 Replace GL_POLYGON+1 with PRIM_OUTSIDE_BEGIN_END 2005-11-16 01:58:19 +00:00
Brian Paul
62620d349b add GL_INVALID_FRAMEBUFFER_OPERATION_EXT in _mesa_error() 2005-11-16 01:11:06 +00:00
Brian Paul
daeb0056df fix color interpolation problem reported on VMS 2005-11-15 15:08:03 +00:00
Brian Paul
7edf68e081 check for ctx==NULL, bug 4087 2005-11-15 14:50:55 +00:00
Brian Paul
1e134cf7e4 Fix problem in stencil_and_ztest_span() when using h/w stencil buffer.
Fix a comment typo.
Remove some unneeded #includes.
2005-11-15 04:01:29 +00:00
Ian Romanick
5ef524cd01 Two subtle things missed on the previous commit. 2005-11-15 01:55:46 +00:00
Ian Romanick
a163256cc2 Add the ability for interleave to test passing invalid format enums
and invalid stride values (see bugzilla #5058).
2005-11-15 01:46:49 +00:00
Ian Romanick
e5700a1ba3 Simple test of glInterleavedArrays functionality. 2005-11-14 23:31:05 +00:00
Brian Paul
cb6b47b795 remove unneeded RasterPosValid check 2005-11-14 18:23:56 +00:00
Brian Paul
7b98b40e47 Improve _mesa_print_program().
Added make_state_string() to produce a string from a GL state vector.
2005-11-12 23:25:49 +00:00
Brian Paul
b3c095f074 fix comment for TexSrcTarget 2005-11-12 23:24:32 +00:00
Brian Paul
662fbf8a62 Added _mesa_light() helper function so we can avoid transforming then
un-transforming light positions and spot directions when popping light
state off the attribute stack.
2005-11-12 18:58:12 +00:00
Brian Paul
ba3da6154c Added OSMesaColorClamp(), bug 4917 2005-11-12 18:44:29 +00:00
Brian Paul
e3636b4114 update an assertion 2005-11-12 17:59:05 +00:00
Brian Paul
bed8363aa6 update some assertions 2005-11-12 17:56:18 +00:00
Brian Paul
de99760bf3 Move stuff common to vertex/fragment_program into the base class, including:
Instructions, InputsRead, OutputsWritten, and Parameters.
Also, added debug functions: _mesa_print_instruction(),
_mesa_print_program_parameters() and revamp _mesa_print_program().
2005-11-12 17:53:14 +00:00
Brian Paul
77ee31930a Make _mesa_is_proxy_texture() non-static and use in a few more places.
Use COPY_4FV() where possible.
Added some comments, clean-ups.
2005-11-11 15:33:36 +00:00
Ian Romanick
0325bc6359 Support for "fragment program to C" and TCC has been removed from the
source code, so there is no reason for this config to exist.  This
fixes fdo bugzilla #5004.
2005-11-10 16:25:37 +00:00
Brian Paul
418a7dbd75 s/MAX_LIGHTS/ctx->Const.MaxLights/ and spruce up some comments 2005-11-10 16:22:56 +00:00
Brian Paul
6297799fee fix popping of GL_SPOT_DIRECTION (bug 5005) 2005-11-10 16:19:44 +00:00
Brian Paul
db40ebfbb7 remove -DMESA_DEBUG 2005-11-10 05:10:49 +00:00
Brian Paul
1984aabe83 Move code to enable FP exceptions into debug.c (set MESA_DEBUG=fpexceptions).
Get rid of MESA_DEBUG preprocessor symbol, just use DEBUG instead.
2005-11-10 05:10:25 +00:00
Brian Paul
a8446f72f4 fix popping of GL_EYE_PLANE state (bug 4996) 2005-11-09 16:52:21 +00:00
Brian Paul
a8717180d9 Bug 4996.
Replace use of FLOAT_TO_USHORT with either CLAMPED_FLOAT_TO_USHORT or
UNCLAMPED_FLOAT_TO_USHORT.  Same should be done for UBYTE, UINT, etc.
2005-11-09 16:30:50 +00:00
David Nusinow
c37d6b4ca8 Commit Mesa 6.4 sources and packaging 2005-11-09 02:46:07 +00:00
Brian Paul
cfca72cfb1 use UNCLAMPED_FLOAT_TO_USHORT/UBYTE in clear_rgba_buffer() (bug #4992) 2005-11-09 01:17:33 +00:00
Brian Paul
8850a7e20f Move COPY_FLOAT() macro down into glide driver.
Rewrite COPY_4FV() macro to not use COPY_FLOAT(), and use integer moves as
originally intended.
2005-11-09 00:56:51 +00:00
Ian Romanick
5374e4ba7e At keithw's request, remove all traces of the "fragment program to C" and
TCC experiment.
2005-11-08 22:54:22 +00:00
Ian Romanick
4884db6eb2 This patch adds the missing NV_vertex_program2 and NV_vertex_program3
instructions to the various internal tables.  It does not add support for
them to the parser nor does it add support for them to the program
interpreter.

It also corrects some errors in the comments in program_instruction.h.

This patch breaks the instruction union in t_vb_arbprogram.h.  The opcode
field in that union was only 6 bits.  When there were only 59+3 instructions
that worked fine. However, this patch increases the base instruction count
to 69.  This requires 7 bits.  The problem is that increasing the opcode
width to 7 bits increases the size of instruction::rsw to 33 bits.  I've
increased the size of the union to 64-bit, but this is just a temporary hack
(and probably breaks the build on some systems).
2005-11-08 22:40:26 +00:00
Brian Paul
e1a5edf083 s/_mesa_debug_fp_inst/_mesa_print_program/ 2005-11-08 14:53:24 +00:00
Brian Paul
bdd80bf819 remove _mesa_debug_fp_inst() 2005-11-08 14:52:51 +00:00
Brian Paul
0bffb1192a some initial work on upcoming GL_EXT_framebuffer_blit extension 2005-11-08 14:45:48 +00:00
Brian Paul
3e9c099088 remove a bunch of extension stuff that's in glxext.h 2005-11-08 14:44:07 +00:00
Brian Paul
02df9e1ed4 minor work in _mesa_print_program() 2005-11-08 14:42:52 +00:00
Brian Paul
832026f906 remove unneeded #includes 2005-11-08 14:41:41 +00:00
Brian Paul
beff21e7bf remove unneeded #includes 2005-11-07 17:36:34 +00:00
Brian Paul
189bbe0b8c s/_mesa_debug_fp_inst/_mesa_print_program/ 2005-11-07 16:03:46 +00:00
Brian Paul
c657d8e3e4 s/_mesa_debug_vp_inst/_mesa_print_program/ 2005-11-05 20:18:51 +00:00
Brian Paul
30d6a4bffa consolidate vertex/fragment program printing into _mesa_print_program() 2005-11-05 20:18:18 +00:00
Brian Paul
237dae74f7 use _mesa_program_file_string() and _mesa_opcode_string() 2005-11-05 19:33:13 +00:00
Brian Paul
bf41bc03c2 added _mesa_program_file_string() 2005-11-05 19:32:36 +00:00
Brian Paul
b7c87974b3 Use _mesa_opcode_string() 2005-11-05 19:24:08 +00:00
Brian Paul
c289f48342 use _mesa_num_inst_src_regs() and _mesa_opcode_string() 2005-11-05 19:16:19 +00:00
Brian Paul
b88fb724e6 use _mesa_num_inst_src_regs() instead of nr_args() 2005-11-05 19:15:27 +00:00
Brian Paul
1fcdaf1c3b added _mesa_num_inst_src_regs() and _mesa_opcode_string() 2005-11-05 19:12:36 +00:00
Brian Paul
637c375ee2 s/Negate/NegateBase/ 2005-11-05 17:23:45 +00:00
Brian Paul
9ba4ef3102 s/TexSrcIdx/TexSrcTarget/ 2005-11-05 17:18:09 +00:00
Brian Paul
7e807510d8 Unify vertex/fragment program instuctions.
Based on patch by Ian (#4967) but also unify instruction opcodes.
2005-11-05 17:10:45 +00:00
Brian Paul
73347516be remove unneeded #includes 2005-11-05 17:08:50 +00:00
Brian Paul
41c8b71871 remove unneeded #include 2005-11-05 17:07:00 +00:00
Aapo Tahkola
47adbde5e5 Fix broken build. 2005-11-05 14:49:26 +00:00
Brian Paul
8894a55d5f added MESA_GLX_ALPHA_BITS env var 2005-11-05 03:12:06 +00:00
Brian Paul
fd4395b8d1 don't need MAKE_SWIZZLE() macro 2005-11-05 03:02:28 +00:00
Brian Paul
613e1ad5d5 Replace parameter_type enum in program.[ch], use register_file enums instead. 2005-11-05 02:15:21 +00:00
Brian Paul
4d0b7618cb minor improvements in _mesa_init_teximage_fields() 2005-11-05 02:12:44 +00:00
Brian Paul
95ebb5f485 use VERT_RESULT_HPOS, VERT_BIT_POS tokens 2005-11-04 16:52:41 +00:00
Brian Paul
2cb1cf484a better ffs() function (bug 4956) 2005-11-04 16:47:22 +00:00
Brian Paul
8ff68b2bf3 just pass ctx to do_ndc_cliptest() rather than stuffing it in the arb_vp_machine struct 2005-11-04 16:43:28 +00:00
Brian Paul
c12ee99d11 MESA_GLX_ALPHA_BITS env var to force visual with alpha channel 2005-11-04 16:41:06 +00:00
Brian Paul
f805cdfedf remove unneeded HIDDEN definition (bug 4956) 2005-11-04 00:58:17 +00:00
Brian Paul
84f3ff91d9 fix MinGW problems (bug 4956) 2005-11-04 00:52:08 +00:00
Adam Jackson
d78834b306 s/dri.sourceforge.net/dri.freedesktop.org/ 2005-11-03 20:49:07 +00:00
Brian Paul
72030e0d91 Streamline code generation by using a fixed size instruction buffer in
arb_program struct.
2005-11-03 03:30:34 +00:00
Brian Paul
ccfe3d4683 use WRITEMASK_* tokens 2005-11-03 02:35:15 +00:00
Brian Paul
7ae9713a60 s/15/VERT_RESULT_MAX/ 2005-11-03 02:28:47 +00:00
Brian Paul
1624162b0c added a const, clean-up 2005-11-03 02:26:47 +00:00
Brian Paul
45cd2f9305 fix typo, minor clean-ups 2005-11-03 02:25:10 +00:00
Brian Paul
bcf4ae7816 added osdemos/ dir to DEMO_FILES 2005-11-02 21:01:26 +00:00
Brian Paul
60031ace75 implement USE_MGL_NAMESPACE for x86-64 dispatch code (Mark Bolstad) 2005-11-02 20:59:37 +00:00
Brian Paul
90ebb581e6 Rename FRAG_OUTPUT_* tokens to FRAG_RESULT_* to match vertex program convention 2005-11-02 18:06:12 +00:00
Jouk Jansen
5a02209cd2 Committing in .
Updated OpenVMS compile support (define tnl for include files)
 Modified Files:
 	Mesa/src/mesa/drivers/common/descrip.mms
 ----------------------------------------------------------------------
2005-11-02 15:24:14 +00:00
Aapo Tahkola
eda460035e Use ctx->VertexProgram._Current . 2005-11-02 14:12:52 +00:00
Aapo Tahkola
26b1c97a9d Remove some ghost code and adjust things a bit. 2005-11-02 14:07:03 +00:00
Keith Whitwell
e4894177ba More useful ARL test 2005-11-02 12:58:38 +00:00
Eric Anholt
3a5626cb84 First step of Radeon DRI unification:
- Makes all three drivers use the same screen structure and setup code, with a
  few ifdefs for the separate compilation to deal with symbols not being
  available to all drivers and the fact that we have no mechanism for dealing
  with different config options for different chip families in the same driver.
  These issues should be dealt with later.
- Introduces IS_R[123]00_CLASS(radeonScreenPtr) macro for code for taking
  different paths depending on the general class of chipset.
- Adds many new R300-class PCI IDs, though not all those listed in
  radeon_driver.c.
2005-11-02 01:15:07 +00:00
Keith Whitwell
a9b927cb6e add an arl test 2005-11-01 20:29:59 +00:00
Aapo Tahkola
a546abc8da Fix broken tnl stage. 2005-11-01 18:12:58 +00:00
Keith Whitwell
f4fbda35b0 Add a NotifyInputChanges() callback so that drivers (particularly tnl
drivers) can track when the sizes or strides of incoming VB->AttribPtr
arrays have changed.
2005-11-01 17:29:46 +00:00
Keith Whitwell
c3626a91ce Several fp and vp tweaks:
- Renumber VERT_RESULT_* values so that they match the
	  numbers of the corresponding FRAG_ATTRIB_ values.

        - Add ctx->VertexProgram._Current and FragmentProgram._Current
	  values which point to either the current client-supplied
	  program if enabled, or otherwise to the current mesa-internal
	  program.  Thus this program is always the correct one for
	  the current state, providing that the mesa flags to turn on
	  automatic generation are enabled.

	- Add callbacks to ctx->Driver.BindProgram() in texenvprogram.c
	  and t_vp_build.c so that the driver knows when the generated
	  program changes.  This is cleaner than trying to code all the
	  possible _NEW_* flags into the driver, and more precise as well.

	- Add a UsesKill flag to identify fragment programs with that
	  instruction, as these can require special treatment.

	- Move the FRAG_OUTPUT values to mtypes.h, near to similar defn's.
2005-11-01 17:25:49 +00:00
Aapo Tahkola
6aa6d440d9 Re-enable fallbacks. 2005-11-01 16:59:13 +00:00
Aapo Tahkola
e7d6bb9dc4 -Fix first frame -bug
-Use 16-bit elts in vtxfmt_a path if possible
-Optimize VSF param uploading
-return in r300DepthMask looks suspicious, use r300Enable instead
-Dont use r300ResetHwState in invalidate state(disabled, missing hooks, possible instabilities)
2005-11-01 15:52:08 +00:00
Aapo Tahkola
3cf156df2b Fix segmentation fault in _tnl_ProgramCacheDestroy(). 2005-11-01 15:43:06 +00:00
Keith Whitwell
da70bc6baa Make colors match the fp tests (really) 2005-11-01 12:22:48 +00:00
Keith Whitwell
a605d9c3de Make colors match the fp tests 2005-11-01 12:20:13 +00:00
Keith Whitwell
d9f362a667 standalone tests for vp instructions 2005-11-01 06:28:39 +00:00
Brian Paul
0505103710 Re-org and clean-up of vertx/fragment program limits (instructions,
temporaries, parameters, etc).
glGetProgramivARB() now returns all the right things.
Updated i915 and r300 code to initialize program native limits and
current program's native instruction/temporary/etc counts.
2005-11-01 04:36:33 +00:00
Brian Paul
ffec105109 fix problems found with gcc 2.96 (bug 4934) 2005-10-31 21:52:56 +00:00
Brian Paul
dcf4c17fb1 check swrast->_FogEnabled instead of ctx->Fog.Enabled 2005-10-31 19:46:55 +00:00
Aapo Tahkola
821b3dd562 Need more than 200 instructions. 2005-10-31 14:37:33 +00:00
Aapo Tahkola
37f2eaa316 Improve tnl program searching performance. 2005-10-31 14:34:32 +00:00
Brian Paul
18e7c5c5fe Simplify parse_attrib_binding().
Now only use VERT_ATTRIB_* and FRAG_ATTRIB_* tokens instead of
hard-coded numbers.
Note: previous check-in did similarly for output register parsing.
2005-10-30 21:46:00 +00:00
Brian Paul
7aebaf3deb Lots of clean-up in arb program parser.
Use new _mesa_init_fp/vp_instruction() function to initialize instructions.
2005-10-30 21:23:23 +00:00
Brian Paul
094a1ddf24 need to use absolute value for RSQ 2005-10-30 16:52:02 +00:00
Brian Paul
5d04101d18 added some assertions to catch unexpected swizzle values in cvp_emit_arg(), currently fails sometimes 2005-10-29 18:29:54 +00:00
Brian Paul
32df89e12d Use MAKE_SWIZZLE4() macro in a few more places.
Clean up the parse_extended_swizzle_mask() and parse_swizzle_mask() functions.
2005-10-29 18:26:43 +00:00
Brian Paul
5b3cf5af74 reduced swizzle comment 2005-10-29 18:18:46 +00:00
Brian Paul
1a979736a6 Free old parameter list before assigning new one. FIxes memory leak. 2005-10-29 17:07:09 +00:00
Brian Paul
5244fc6d60 added warning about use of REG_SCRATCH 2005-10-29 16:51:34 +00:00
Brian Paul
3c2f8b22b9 clean-up comments 2005-10-29 16:17:01 +00:00
Brian Paul
a2e696e521 s/lenght/length/ 2005-10-29 16:15:47 +00:00
Brian Paul
af13891dbd fix LIT bug 2005-10-29 16:05:18 +00:00
Brian Paul
4174f79b19 fix a few bugs in SWZ execution 2005-10-29 16:03:19 +00:00
Brian Paul
db02ab767f fix errors in RoughApproxPower(), do_LIT(), _tnl_program_string() 2005-10-29 15:56:53 +00:00
Brian Paul
4570364097 If parsing a program fails, don't change the vertex/fragment program object.
Specifically, don't attach a dummy program.
This change also fixes an occasional segfault.
Some code clean-ups.  Use GLboolean instead of GLuint to return pass/fail.
2005-10-29 15:52:31 +00:00
Eric Anholt
aba878d8c2 Bug #4901: Correct secondary color emission when lighting is turned off, tested
with seccolor on rv200 and r200.

Submitted by:	sroland
2005-10-29 00:27:01 +00:00
Ian Romanick
d7d41ceeb0 Add new test "texfilt". This test is a cousin to texwrap. Instead of
testing various texture wrap modes, this test examines various texture
filter modes, including anisotropic.

Add CFLAGS to a couple places in Makefile so that 32-bit builds on
64-bit archs will work correctly.
2005-10-28 18:41:03 +00:00
Brian Paul
3eec2901db Keith's fixes for RSW and XPD (need temporaries) 2005-10-28 15:40:08 +00:00
Brian Paul
86734ddae4 include tnl.h to silence warning 2005-10-28 15:22:28 +00:00
Brian Paul
b3c98e6205 Added assert that result != arg0 in do_RSW. This currently fails and needs fixing. 2005-10-28 14:41:06 +00:00
Brian Paul
b5ee368baf TNL module needs to implement ctx->Driver.ProgramStringNotify() function
so that calls to glProgramStringARB() to specify a new program causes the
TNL-attached data to get recomputed.
2005-10-28 14:32:49 +00:00
Brian Paul
f51bf9e23c add newline at end of file 2005-10-28 13:12:28 +00:00
Brian Paul
8cb2923038 don't use -Wmissing-prototypes for C++ code 2005-10-28 13:11:00 +00:00
Brian Paul
ca33e21165 silence a bunch of compiler warnings 2005-10-28 13:09:23 +00:00
Aapo Tahkola
5222c58a68 Silence gcc-4 warnings. 2005-10-28 12:43:41 +00:00
Aapo Tahkola
dc44372ba7 Fix texture mixup when two or more contexts. 2005-10-28 12:14:58 +00:00
Dave Airlie
eb171b0c10 fix missing commit for span changes 2005-10-28 12:05:25 +00:00
Dave Airlie
3b3adf3daa fix up radeon span functions using latest r200 code from Brian,
tested with reflect on 32-bit.. not sure why depthHasSurface isn't needed
2005-10-28 12:00:09 +00:00
Aapo Tahkola
a4af1119f5 Compiled arrays for vtxfmt_a path. 2005-10-28 09:28:32 +00:00
Eric Anholt
9c8f649930 GC a bit of dead code I noticed while looking at texwrap. 2005-10-28 07:00:41 +00:00
Eric Anholt
c57be49099 Correct the ordering of the blend constant color. 2005-10-28 06:15:11 +00:00
Eric Anholt
4b9f1308e5 Add support for GL_EXT_stencil_wrap, from hearing that the windows drivers did
it, and guessing that the two remaining entries in the 3-bit values were the
new funcs.  Tested with modified stencilwrap test.  Also, remove the commented
fallback stuff -- more modification to stencilwrap suggests that those issues
were just from span readback, not stencil implementation.
2005-10-27 21:21:05 +00:00
Eric Anholt
215c4c3a9c Bug #1028: Add hardware-accelerated stencil support to r128. Testing with
stencilwrap reported many issues with various modes.  Some of these were
complicated by the fact that spans are broken (Bug #1615), but some appear to be
real bugs.  However, while spans remain broken, I found that visual results were
better by avoiding fallbacks rather than avoiding just a broken stencil
implementation.  Note that this required changing the depth spans at 24+8bpp
into read-modify-write cycles.  It would be nicer as a single write with
a mask, but the kernel span blits turn off masking.

Reviewed by:	ajax
2005-10-27 20:26:24 +00:00
Eric Anholt
512c994b92 Bug #4900: Fix the non-fogcoord fog test on r100 (and rv200) at tcl_mode=1 by
flipping the signs on two factors.  While this contradicts the DDK, it matches
what r200 does, and it fixes the test.
2005-10-27 19:59:41 +00:00
Eric Anholt
170a61ec00 Add support for HW stencil spans, mirroring the depth spans support. Used for
Rage 128 stencil support.
2005-10-27 06:01:50 +00:00
Eric Anholt
2d0c92d81b Bump driver date for recent extension adds. 2005-10-27 01:46:39 +00:00
Aapo Tahkola
03833ba2ca Cover my arse. 2005-10-26 18:02:37 +00:00
Aapo Tahkola
d240b29b95 Reduce stderr noise and fix some compiler warnings. 2005-10-26 17:55:28 +00:00
Aapo Tahkola
22605caea8 Remove few outdated r200 files. 2005-10-26 17:04:15 +00:00
Aapo Tahkola
4dc3249f0d Sync with my local tree.
Changes to current operation:
-Elts are no longer converted to 16-bit format
-Cube maps
2005-10-26 16:42:06 +00:00
Aapo Tahkola
23f076ca67 Fix invalid vsf temp count for rv350. 2005-10-26 13:35:41 +00:00
Eric Anholt
5f79025e0d Fix the RGB order of the specular color emit, and turn GL_EXT_secondary_color
back on.  Tested using seccolor modified to use the blue channel instead of
green, since green stays in the same place across RGB/BGR mistakes.  Also hook
in UpdateSpecular on COLOR_EXT change, which might have resulted in missing
statechanges before.
2005-10-26 10:46:49 +00:00
Eric Anholt
f8a5898ca0 Add support for GL_EXT_fog_coord, tested using tests/fog.c. (Also, matches the
output from indirect rendering).
2005-10-26 10:11:34 +00:00
Eric Anholt
9eaed1178d Add built programs to .cvsignore. 2005-10-26 09:53:38 +00:00
Eric Anholt
896735e412 Add a fog mode (normal and fog_coord, leaner/exp/exp2 mode) testing program I
wrote for sis, which has also exposed a few bugs elsewhere.
2005-10-26 09:48:03 +00:00
Eric Anholt
2330ed08c3 Add disabled support for GL_EXT_fog_coord. While it seems correct to me, it's
not respecting the coords (or perhaps interpreting them differently?) in my
testing.  However, in the process it led to a fix of a secondary color handling
issue where it would be taken from the wrong offset, I believe, based off of
reading the r200 driver.  Also add a minor tweak to save time in the
fog-but-not-specular case.
2005-10-26 09:37:53 +00:00
Eric Anholt
a09d002bb5 Move the front.offset setting above a check to shortcut reallocating buffers if
width and height stayed the same.  Rely on front.offset pointing at the origin
in the window (rather than the origin of the front buffer), and fix the coords
in swapbuffers, which were wrong.  This is different from other drivers because
we've got a back buffer with a 0,0 origin at the window's origin, which makes it
more convenient to have the front buffer match it.
2005-10-25 21:10:28 +00:00
Eric Anholt
f1113fa99d Initial add of some (disabled) SiS 6326 drawing code integrated from Alan Cox's
last drop I saw, which was in turn based on a code drop of mine.  Texturing,
culling, and several extensions are unimplemented, and some features could
probably be improved. It's untested, but there don't appear to be regressions on
the 300-series code, so I'd like to get these bits in now so that it can be
worked on as not a huge diff.
2005-10-25 20:37:01 +00:00
Brian Paul
7e4cc1c29f updates from 6.4 branch 2005-10-24 23:33:27 +00:00
Eric Anholt
005070a62a Cut a bunch of code by not trying to precompute the blit commands and instead
just do it per blit.  No noticable performance difference (or behavior
difference, in my tests), and a significant difference in sanity.
2005-10-24 22:38:11 +00:00
Eric Anholt
7040b7ad88 In the last commit I added in a fatal error on unknown base formats so I
wouldn't get confused when adding support for new formats.  However, it resulted
in dying in texenv instead of drawing something undefined for GL_DECAL.  Do what
GLcore apparently does and just pass the fragment through.
2005-10-24 22:23:52 +00:00
Eric Anholt
f33beed330 Fix and enable GL_MESA_ycbcr_texture. Looks fine with yuvrect. I'm slightly
concerned that TEXEL_YUV422 looks like TEXEL_YVU422 and TEXEL_VUY422 looks like
TEXEL_VYU422 in yuvrect, but I'm happy enough for now.
2005-10-24 22:01:40 +00:00
Eric Anholt
81d3bf58ff Add support for GL_EXT_secondary_color, tested with seccolor test. 2005-10-24 21:30:06 +00:00
Eric Anholt
310f1551b4 Turn off the AGP dispatch path yet again, as it seems to be broken (found with
tuxracer and the upcoming support for secondary color).
2005-10-24 21:19:06 +00:00
Brian Paul
32340aea13 fragment program writing to result.depth.z was broken 2005-10-24 19:28:36 +00:00
Adam Jackson
c92adf4682 Add RV350 AQ chip. (popolon at popolon dot org) 2005-10-24 17:42:55 +00:00
Eric Anholt
414b742c97 Since we memcpy texture data synchronously to the card, idle the engine before
we start copying.  I haven't seen it go wrong before, but I'm pretty sure this
fix is correct.
2005-10-24 10:24:23 +00:00
Eric Anholt
60b639b9a6 - Add a few more hardware internal formats that are supported. Some remaining
ones require custom texstore, so they aren't done yet.
- Add YCBCR support commented out, since the yuvsquare test didn't work with
  just the bits I've added.
- Add the no-compression GL_ARB_texture_compression support.
- Add the driconf texture depth option and try to respect it.
2005-10-24 09:59:43 +00:00
Eric Anholt
971bdc193c Fix the GL_BLEND case (and remove the fallback associated with it) by converting
the float values to bytes before packing them.  Tested with texenv.
2005-10-24 09:02:07 +00:00
Eric Anholt
9e87119d87 Fix texenv by moving a misplaced check for being in fallback (should cover only
render state, not texture state).  While here, move a SIS_FIREVERTICES to a more
appropriate location, though it was harmless.
2005-10-24 08:27:30 +00:00
Eric Anholt
9192ab3f5d Add support for GL_ARB_texture_border_clamp and GL_ARB_texture_mirrored_repeat,
tested using texwrap, fixing the sourcing of border constant values (use the
bytes, not the floats!).  Remove the fallback on GL_CLAMP_TO_EDGE, which acts
properly, and add a note to GL_CLAMP about nonconformance (whcih is what the
fallback for CLAMP_TO_EDGE was probably targeting).
2005-10-24 08:02:44 +00:00
Eric Anholt
6efd595bf5 Fix a typo in a fallback string. 2005-10-24 07:21:56 +00:00
Eric Anholt
dc793d4e9a Add support for GL_EXT_stencil_wrap by guessing that the skip of two values in
the register header was meaningful.  It turns out those were the proper values
for the plain INCR/DECR ops, while what we were using as INCR/DECR were the
_WRAP versions.  Tested with stencil_wrap (didn't expose normal/_WRAP swapping)
and stencilwrap (exposed it nicely) tests.  Props to idr for poking me about
adding this.
2005-10-24 06:40:56 +00:00
Roland Scheidegger
3265585b15 disable yuv textures (GL_MESA_ycbcr_texture) on rv250 (hw bug, #2078). Change the initialization to fail if an unknown pci id is detected, instead of accepting all values which are not r100-based radeons. 2005-10-22 02:03:13 +00:00
Eric Anholt
1c04be573e Fix FreeBSD build by building libGL in the order desired, and doing a fix to my
mklib changes.
2005-10-22 01:41:40 +00:00
Brian Paul
52f686c480 fix GLX server resize/crash when resizing windows 2005-10-21 21:39:10 +00:00
Brian Paul
7d3b26022b check span.y >=0 (bug 4842) 2005-10-21 18:35:35 +00:00
Keith Whitwell
e516654dec new depth tests 2005-10-21 18:34:22 +00:00
Keith Whitwell
f28cbb6a7f simplify, remove sgi messages 2005-10-21 18:33:53 +00:00
Brian Paul
32a7ab2197 Darwin version fix (SF bug 1334274) 2005-10-21 15:39:42 +00:00
Brian Paul
54cfe69436 fix broken SWZ instruction 2005-10-21 15:22:36 +00:00
Brian Paul
b3f2e15035 fix broken KIL 2005-10-21 14:22:38 +00:00
Keith Whitwell
3a09ea919c better looking tests 2005-10-21 10:27:37 +00:00
Keith Whitwell
2ea6b800c0 Make test visible 2005-10-21 10:07:52 +00:00
Keith Whitwell
8975cbb36b Better looking test. 2005-10-21 08:34:06 +00:00
Dave Airlie
eedc45709f add the tile bits for offset, and unk bit 31 of size 2005-10-21 06:20:27 +00:00
Brian Paul
f468dfde17 restore FASTCALL stuff 2005-10-20 22:51:50 +00:00
Brian Paul
adfd5510c0 fix bad loops in TransposeMatrix[fd]() 2005-10-20 22:04:01 +00:00
Keith Whitwell
a90909e892 A bunch of little tests which exercise each ARB_fp instruction plus
a couple of other interesting cases.
2005-10-20 21:40:23 +00:00
Brian Paul
f344be793c added mm.c mm.h execmem.c 2005-10-20 21:29:32 +00:00
Brian Paul
255afe4abd fix another renderbuffer wrapping bug 2005-10-20 21:25:41 +00:00
Brian Paul
c8f86105d0 Disable the FASTCALL optimization because it still breaks server-side GLX. 2005-10-20 21:12:35 +00:00
Eric Anholt
6f980dbf21 Bump driver dates for the crasher fixes yesterday. 2005-10-20 20:11:46 +00:00
Jouk Jansen
b50a51118c descrip.mms syntax correction 2005-10-20 13:06:03 +00:00
Dave Airlie
806e25a5d9 fixes for r300_tex.c from Aapo Tahkola 2005-10-20 06:06:18 +00:00
Brian Paul
301c3dcb6c s/glut_gz2/glut_bz2/ 2005-10-19 20:26:13 +00:00
Eric Anholt
2420318cd9 Make SiS a little more like other drivers: Add SIS_DEBUG (only option being
"fall" so far) and make the fallback_force option be no_rast like other drivers.
Incidentally, makes no_rast not crash (though it still fails to render).
2005-10-19 03:23:29 +00:00
Eric Anholt
e0cb784e03 Remove some long-dead code. 2005-10-19 03:07:05 +00:00
Eric Anholt
d76c7d7d3e Fix a missed merge for idr's dispatch changes: failure to do driInitExtensions
in __driCreateNewScreen_20050727 resulted in crashing in dispatch.
2005-10-19 02:46:42 +00:00
Brian Paul
dc4070c787 updated for new mm.c, execmem.c files 2005-10-19 01:28:14 +00:00
Brian Paul
ca2db58166 s/memcpy/_mesa_memcpy/, s/FREE/_mesa_free/ 2005-10-19 01:26:48 +00:00
Eric Anholt
deadd47aab Bug #4615: Fix the SiS driver for the renderbuffer changes. Previously, all
drirenderbuffers pointed at screen offset 0 and NULL.  Instead, set up the front
buffer at startup but leave the others for later, since sis allocates them on
demand rather than using the static method of the other non-sis-descendent
drivers.  Some basic apps work, but fallbacks may be broken still.
2005-10-19 00:53:05 +00:00
Eric Anholt
bf3f0bcf80 Fix a missed merge for idr's dispatch changes: failure to do driInitExtensions
in __driCreateNewScreen_20050727 resulted in crashing in dispatch.  Rendering
remains broken.
2005-10-18 23:48:59 +00:00
Eric Anholt
b83435f53b Attempt to fix libGL on FreeBSD, where the library was being built without any
dependencies, breaking builds of third-party software.
2005-10-18 23:36:40 +00:00
Brian Paul
d99c37bca6 move _mesa_exec_malloc/free() up near other malloc/free prototypes 2005-10-18 15:02:45 +00:00
Brian Paul
1c236fd5c7 Lots of clean-ups. Replace __inline__ with INLINE macro. Use the
_mesa_calloc(), _mesa_free() functions.  Clean-up formatting, doxygen-style
comments.
2005-10-18 15:01:19 +00:00
Keith Whitwell
005469005d Add _mesa_exec_malloc() and _mesa_exec_free() for allocating
executable memory.  Based on Thomas Hellstrom's patch.
TODO: glapi.c also needs this, but cannot access this code.
2005-10-18 13:29:59 +00:00
Roland Scheidegger
05e1a49ab4 on r200, don't emit fog coords when fog isn't actually enabled. Fix bug with vtxfmt not causing a fallback when fog coords are active. 2005-10-18 13:09:53 +00:00
Brian Paul
730200303d added some header files to DRI_FILES (Donnie Berkholz) 2005-10-17 22:38:44 +00:00
Roland Scheidegger
2d61d30117 add GL_EXT_fog_coord support to radeon driver. No vtxfmt code (just uses fallback) yet. May cause a tcl fallback if fog coord is used together with separate specular lighting. Fog factors are precomputed and then submitted instead of the raw coords (chip limitation, same as on r200). 2005-10-17 00:54:12 +00:00
Roland Scheidegger
dd5a86339f fix some obvious typos in radeon_reg.h (only currently unused bits affected) 2005-10-16 22:45:59 +00:00
Roland Scheidegger
247f3b3e81 enable cube maps on radeon (#2241 on bugzilla). No vtxfmt code yet (just generates vfmt fallback). Code by Andreas Stenglein, some small adjustments by me. 2005-10-15 23:45:53 +00:00
Roland Scheidegger
ccf1378131 fix two bugs wrt calculating max possible texture sizes for texture rectangles/cube maps. 2005-10-15 01:07:59 +00:00
Roland Scheidegger
30daa75293 enable 3rd texture unit on radeon (default still 2 enabled units). Disable some multitexcoord codegen stuff noone understands to make it work. Replace most code testing explicitly for unit 0 and 1 with loops instead of adding test for unit 2, smaller/more readable code at the cost of maybe some slight performance hit. (Code provided by Andreas Stenglein, some adjustments by me.) 2005-10-13 14:30:20 +00:00
Roland Scheidegger
ed2f8635f0 make sure texture matrix is updated often enough with texture rectangles 2005-10-13 00:35:51 +00:00
Roland Scheidegger
6ff023fe3a fix potential bug when emitting elts with lots of components 2005-10-13 00:33:46 +00:00
Brian Paul
96e1ccedec remove unused _mesa_log2() (bug 4468) 2005-10-12 19:46:48 +00:00
Brian Paul
c81de36223 change includes (bug 4468) 2005-10-12 19:46:29 +00:00
Brian Paul
f525d3e139 fix GLAPI/extern problem (bug 4757) 2005-10-12 19:37:38 +00:00
Roland Scheidegger
d084c3d4dc Minor driver cleanup. Remove unnecessery/unneded radeon/r200AllocDmaRegionVerts function. No longer compile the radeon_compat stuff which was for drm 1.1 compatibility presumably but unused since about forever into the driver. 2005-10-11 17:55:54 +00:00
Ian Romanick
44b1bd7597 ifdef out some code to make glapi.c linkable in libglx.so (on the
server).  This isn't strictly needed yet, but it doesn't hurt anything
either.  However, the patches for fd.o bug #2996 require this to build.
2005-10-11 16:56:39 +00:00
Brian Paul
e7325294d0 check for PIXMAP in clip routine (SF bug 1323215) 2005-10-11 01:21:40 +00:00
Brian Paul
ac04a4fa7f fixed constant fogcoord bug (#4729) 2005-10-10 18:39:34 +00:00
Ian Romanick
8d29d463a3 Add 'get' data for glGetFramebufferAttachmentParameterivEXT enums.
Remove an extra closing parenthesis in the Linux version of the SWAP_32 macro.
2005-10-10 17:11:02 +00:00
Roland Scheidegger
1c0f11046a do not set format of the incoming vertices needed for fog_coord in the generic state functions. This is done in the vtxfmt/hwtcl/swtcl pathes respectively. 2005-10-08 23:41:20 +00:00
Roland Scheidegger
30f2d6f0cb remove code dealing with drm versions older than 1.3. The driver requires (and requests) 1.3 since quite some time already to work at all. 2005-10-08 23:36:35 +00:00
Brian Paul
b4269c07f8 change test for presence of accum buffer 2005-10-08 21:36:38 +00:00
Brian Paul
cf085db28a Query/print GL_RED/GREEN/BLUE/ALPHA_BITS 2005-10-08 14:42:51 +00:00
Brian Paul
474f28e57c Fix some issues with state updates and renderbuffers. Querying GL_RED_BITS,
etc. after calling glRenderBufferStorageEXT gave undefined results.
2005-10-08 14:41:17 +00:00
Brian Paul
81a22ef539 MATH_DEBUG changes from bug #4468. 2005-10-07 17:18:51 +00:00
Keith Whitwell
f2802c40ff Populate arb_fp_instruction negate field correctly. 2005-10-07 09:55:26 +00:00
Brian Paul
dfe7aedf84 Fix a number of point size attenuation problems.
Move size clamping into the rasterization function.
2005-10-07 03:56:29 +00:00
Roland Scheidegger
9dd973ec3b fix problems with some texgen modes by putting the chip into LOCAL_VIEWER mode for lighting (potentially causes slight misrenderings with the specular components of lights if the light model is not set for local viewer). 2005-10-05 22:40:09 +00:00
Roland Scheidegger
24a44d74b6 reverse accidentally commited part of last commit (makes it compile again...). 2005-10-05 20:28:31 +00:00
Roland Scheidegger
44dace86ea enable point sizes larger than 1 (for aliased points only) by using the hw point sprite primitive. 2005-10-05 16:15:16 +00:00
Brian Paul
26f69d87a4 fix byteswapping bug in _mesa_texstore_ycbcr() (Benjamin Herrenschmidt) 2005-10-05 13:36:05 +00:00
Roland Scheidegger
ea20c324ae fix typo in radeon_maos_arrays.c from last commit (code currently unused, that path is compile-tested only). 2005-10-05 13:09:15 +00:00
Roland Scheidegger
11f763f505 remove unneeded parameter from radeonUploadTexMatrix. 2005-10-05 12:38:07 +00:00
Roland Scheidegger
a3c8de2fa7 Remove the tcl fallback for texture rectangle (by manipulating the texture matrix) (tested with texrect). Enable texgen for r/q coordinates (tested with projtex). Fix projected texcoords when an app uses TexCoord3x and the texture matrix to save on vertex size (fixes ut2k3 shadow projectors in tcl mode). From texgenmix, all cases with all texgen or no texgen work, with the exception of texgen enabled for s/t only, this one works with hw tcl, but not with vtxfmt (suspect issues with vtxfmt), the mixed cases do not work (which is expected, and should be rare in practice), with the exception of the first one which hits a tcl fallback. 2005-10-05 11:42:44 +00:00
Brian Paul
06f606ce57 Remove _IsPowerOfTwo from gl_texture_object, not really needed. 2005-10-05 04:07:50 +00:00
Brian Paul
198a88923c s/IntFormat/InternalFormat/ and s/Format/_BaseFormat/ for gl_color_table. 2005-10-05 02:11:15 +00:00
Brian Paul
8184ec9fb6 added GL_INVALID_FRAMEBUFFER_OPERATION_EXT to gluErrorString() 2005-10-05 02:08:53 +00:00
Brian Paul
a9fc8ba756 In gl_texture_image replace IntFormat with InternalFormat and Format with
_BaseFormat to be consistant with gl_renderbuffer.
2005-10-05 01:48:07 +00:00
Brian Paul
91802fdf73 check if deleting currently bound frame/renderbuffer object 2005-10-04 16:01:02 +00:00
Brian Paul
7edf1e80bd glBindTexture changes, new assertions 2005-10-04 15:16:27 +00:00
Brian Paul
9e920fb93c fix glIsRender/FramebufferEXT() assertions 2005-10-04 15:01:51 +00:00
Brian Paul
bc6cced479 fix behaviour of glIsFrame/Renderbuffer() 2005-10-04 15:01:27 +00:00
Brian Paul
14c38b8f4f Use Visual.depthBits rather than Renderbuffer::DepthBits for depth buffer
operations.
2005-10-04 14:49:30 +00:00
Brian Paul
eb063cfa38 change initialization of renderbuffer DepthBits 2005-10-04 14:48:24 +00:00
Adam Jackson
199ef86b5e Bug #1155: Define IEEE_ONE on Super-H as well. 2005-10-03 20:02:07 +00:00
Brian Paul
a6296dd2c3 disable a warning 2005-10-03 16:11:47 +00:00
Brian Paul
071b30aba1 added a few calls to _mesa_update_framebuffer_visual() 2005-10-03 16:11:35 +00:00
Brian Paul
b0e7d850d1 finish up some missing code 2005-10-03 16:11:21 +00:00
Ian Romanick
8ef0519bbe Change the 'count' for COMPRESSED_TEXTURE_FORMATS from "?" to "-1". This
signals to the script (glX_proto_size.py) that generates the server-side
size functions that a handcoded query is needed to determine the data size.

Also do s/FOG_COORD_SOURCE/FOG_COORD_SRC/.

When initializing the count in glx_enum::__init__, cast the local property
to int.  Thanks to Python's dynamic typing, if this isn't done the type of
stored count will be a string instead of an int.
2005-10-03 15:05:40 +00:00
Ian Romanick
9a3a1497e5 Remove the non-existant --get-alias-set option from the help text.
Update printPixelFunction (which is only used to generate code for the
server-side) to use the correct method for obtaining the dimensions of the
image parameter to a function.

Only use byteswap.h when building generated code on Linux.  Elsewhere use
the (horrible!) macros from X11/misc.h.

Make sure that enums associated with the generic "Get" function get applied
to GetIntegerv, GetBooleanv, GetFloatv, and GetDoublev.
2005-10-03 14:59:26 +00:00
Brian Paul
1fc4b21eb2 check for GL_DEPTH_STENCIL_EXT 2005-10-01 16:09:45 +00:00
Brian Paul
2794507289 plug in _mesa_texstore_z24_s8() 2005-10-01 16:09:26 +00:00
Brian Paul
184a970722 added _mesa_texstore_z24_s8() 2005-10-01 16:08:27 +00:00
Brian Paul
b0a0ca8bd9 GL_EXT_packed_depth_stencil changes 2005-10-01 16:06:25 +00:00
Brian Paul
0899afae33 additional error checking for GL_EXT_packed_depth_stencil 2005-10-01 16:05:30 +00:00
Brian Paul
cef88397a6 fix an assertion 2005-10-01 16:04:38 +00:00
Brian Paul
7f78c93015 simplify the read_depth_stencil_pixels() function 2005-10-01 16:04:09 +00:00
Brian Paul
9758ef9e7b fix broken z24_s8 fetcher 2005-10-01 16:03:30 +00:00
Brian Paul
252194d74e updated comment 2005-10-01 16:03:00 +00:00
Brian Paul
31340f6645 added _mesa_pack_depth_stencil_span() 2005-10-01 16:02:38 +00:00
Brian Paul
3d61c2e778 move around some error checking 2005-10-01 16:02:11 +00:00
Brian Paul
d0529b67f4 use fmod() to prevent overflow of angle variable 2005-09-30 15:03:33 +00:00
Brian Paul
76560af99d implemented fallbacks for GL_EXT_packed_depth_stencil 2005-09-30 03:01:30 +00:00
Brian Paul
82b29819a9 minor improvements 2005-09-30 03:01:11 +00:00
Brian Paul
f493a04be0 added _swrast_get_row() 2005-09-30 03:00:03 +00:00
Brian Paul
1ad6e08090 call glFinish if drawing to front buffer 2005-09-29 18:46:27 +00:00
Brian Paul
b2404b132d implement CopyPixels for GL_DEPTH_STENCIL_EXT 2005-09-29 04:28:21 +00:00
Brian Paul
3fd819aef8 added _swrast_put_row() 2005-09-29 04:27:47 +00:00
Brian Paul
8d0edf015d Rewrite much of the pixel zoom code.
Zoomed DrawPixels of packed depth/stencil works now.
2005-09-29 03:20:15 +00:00
Brian Paul
5208867f12 add error checks for framebuffer completeness 2005-09-28 16:20:34 +00:00
Brian Paul
d95000da2f check for framebuffer completeness, code clean-up 2005-09-28 15:46:46 +00:00
Brian Paul
f7a8d8ffbb updated assertions (see bug 4590) 2005-09-28 14:20:06 +00:00
Brian Paul
1ad7b99925 Initial work for GL_EXT_packed_depth_stencil extension.
glReadPixels done, glDrawPixels mostly done.
2005-09-28 02:29:50 +00:00
Brian Paul
b955474093 change initialization of rb->DepthBits 2005-09-28 02:28:42 +00:00
Brian Paul
1b5d3d647e added GL_EXT_packed_depth_stencil 2005-09-28 02:28:00 +00:00
Brian Paul
ac3ec5096a added _mesa_scale_and_bias_depth() 2005-09-28 02:27:22 +00:00
Brian Paul
dbd0fa920e tweak glAccum error checking 2005-09-27 16:10:49 +00:00
Brian Paul
78b3b667b5 generate GL_INVALID_OPERATION in glAccum if read/draw buffers aren't the same 2005-09-27 15:52:27 +00:00
Brian Paul
99796464c5 Lift all the format/type error checking out of the _swrast_Draw/Read/CopyPixels
functions into the _mesa_Draw/Read/CopyPixels functions.
2005-09-27 01:25:24 +00:00
Brian Paul
70c3bebcde glDraw/CopyPixels of stencil data didn't obey the stencil write mask. Fixed. 2005-09-26 23:06:01 +00:00
Roland Scheidegger
afb9fb0965 remove identity check for texgen planes (which was just plain wrong). 2005-09-26 20:31:40 +00:00
Roland Scheidegger
84c9e671ed fix projective texturing for (swtcl) texture rectangles. Fix wrong argument order for texgen/texmat matrix multiplication. 2005-09-26 17:11:16 +00:00
Brian Paul
ad271b8c98 Added XMesaDrawable to xmesa_renderbuffer. Use it in a few places instead
of the XMesaPixmap field to avoid some X server-side issues with casting.
2005-09-26 00:38:00 +00:00
Dave Airlie
4aeaff2ae7 Add support for texture compression to R300 driver
This isn't perfect, texcmp still has some issues with the small textures..
but its a good start
2005-09-25 10:20:38 +00:00
Dave Airlie
310a10b0f2 add link for radeon_egl.c 2005-09-25 09:45:42 +00:00
Jouk Jansen
d997b90433 Committing in .
1) change compilation on VMS to use IEEE floating points

 2) one more problem with _mesa_sprintf solved

 Modified Files:
 	Mesa/docs/README.VMS Mesa/progs/demos/descrip.mms
 	Mesa/progs/tests/descrip.mms Mesa/progs/util/descrip.mms
 	Mesa/progs/xdemos/descrip.mms Mesa/src/glu/mesa/descrip.mms
 	Mesa/src/glu/sgi/descrip.mms Mesa/src/glut/glx/descrip.mms
 	Mesa/src/mesa/array_cache/descrip.mms
 	Mesa/src/mesa/drivers/common/descrip.mms
 	Mesa/src/mesa/drivers/osmesa/descrip.mms
 	Mesa/src/mesa/drivers/x11/descrip.mms
 	Mesa/src/mesa/glapi/descrip.mms Mesa/src/mesa/main/descrip.mms
 	Mesa/src/mesa/main/texobj.c Mesa/src/mesa/math/descrip.mms
 	Mesa/src/mesa/shader/descrip.mms
 	Mesa/src/mesa/shader/grammar/descrip.mms
 	Mesa/src/mesa/shader/slang/descrip.mms
 	Mesa/src/mesa/swrast/descrip.mms
 	Mesa/src/mesa/swrast_setup/descrip.mms
 	Mesa/src/mesa/tnl/descrip.mms
 ----------------------------------------------------------------------
2005-09-23 07:03:53 +00:00
Brian Paul
79b4dbc496 remove printf 2005-09-23 03:24:27 +00:00
Brian Paul
048b13df65 Replace gl_framebuffer's _ColorReadBufferMask with _ColorReadBufferIndex,
Streamline the _mesa_update_framebuffer() function a bit.
2005-09-23 03:22:20 +00:00
Brian Paul
d5861c06f2 fix clipped glReadPixels bug 2005-09-23 02:16:49 +00:00
Brian Paul
36d9ee1828 added XOR line optimization 2005-09-23 01:42:23 +00:00
Brian Paul
6d3637849b Added a fast xor_line() function. Uses XDrawLine with GXxor mode.
Only used for front-buffer window/pixmap rendering, GL_FLAT shade model,
no Z test or other fragment operations.
2005-09-23 01:40:59 +00:00
Brian Paul
0efc17c105 Add Wrapper field to gl_renderbuffer. Used for wrapping one renderbuffer
with another, such as wrapping a hardware/win-sys RGB renderbuffer with a
software-based alpha buffer.
Previous alpha buffer wrapping was conflicting with the X driver's
xmesa_renderbuffer structure containment/inheritance.  That lead to
memory corruption.
2005-09-23 01:20:09 +00:00
Brian Paul
e5fce1694c improve the test for using software alpha buffer 2005-09-23 01:17:07 +00:00
Ian Romanick
7b01068a23 Enable GL_ARB_texture_mirrored_repeat on Savage4. Refactor the code that
sets the texture wrap mode and texture filter mode for Savage4 to the new
functions savage4_set_wrap_mode and savage4_set_filter_mode.

This was tested with texwrap and tunnel.
2005-09-22 21:25:31 +00:00
Brian Paul
676d0accf5 Replace gl_renderbuffer.ComponentSizes[] with separate RedBits, GreenBits,
BlueBits, etc fields.
2005-09-22 05:19:57 +00:00
Brian Paul
f1e2826856 When testing visual attributes, use the Draw/Read buffer, not the context. 2005-09-22 05:00:12 +00:00
Brian Paul
4fd11949f0 fix a debug message 2005-09-22 04:58:42 +00:00
Brian Paul
63016507d7 changed a renderbuffer check 2005-09-22 04:52:45 +00:00
Brian Paul
7d39e82976 s/GL_DEPTH_BITS/GL_TEXTURE_DEPTH_SIZE_ARB/ in _mesa_GetTexLevelParameteriv() 2005-09-21 21:19:22 +00:00
Brian Paul
8bdc1ae358 add missing scale factor in _swrast_read_depth_span_float() 2005-09-21 18:16:33 +00:00
Brian Paul
978ef2bb6d Remove ACCUM_BITS. 2005-09-21 03:35:08 +00:00
Brian Paul
3e37bafab0 replace GLdepth with GLuint and remove GLdepth 2005-09-21 02:47:32 +00:00
Brian Paul
4092fbd55a replace GLdepth with GLuint 2005-09-21 02:46:17 +00:00
Brian Paul
5bfb9356d6 s/programss/programs/ 2005-09-20 21:04:02 +00:00
Brian Paul
5434695017 initial check-in 2005-09-20 15:51:44 +00:00
Brian Paul
9e4e3adcf8 remove 31-bit Z buffer work-around 2005-09-20 04:47:34 +00:00
Brian Paul
8fadf8f900 change mask[] test in put_mono_row_uint() 2005-09-20 04:47:04 +00:00
Brian Paul
14570e6d7c compute z[i] as GLuint 2005-09-20 04:45:26 +00:00
Brian Paul
f39569f550 some improvements to _swrast_clear_depth_buffer() 2005-09-20 04:36:50 +00:00
Brian Paul
000abaa12d remove unneeded sizeof(GLdepth) test 2005-09-20 04:35:40 +00:00
Brian Paul
7265556b9a Change zLeft and zval to GLuint. Seems to fix 32-bit Z computation 2005-09-20 04:34:29 +00:00
Brian Paul
22607975b4 replace STENCIL_BITS with stencilMax value 2005-09-20 04:31:24 +00:00
Brian Paul
3211b28ee6 remove STENCIL_MAX 2005-09-20 04:25:03 +00:00
Brian Paul
cd81190d5c change location of ffs() code for windows 2005-09-20 02:44:40 +00:00
Brian Paul
17d6fff30c init a=0 2005-09-19 21:16:29 +00:00
Brian Paul
c650bb0b7d s/GLchan/GLubyte/, fix error string, add comment 2005-09-19 20:32:21 +00:00
Brian Paul
02237f447f updated comment 2005-09-19 20:29:34 +00:00
Brian Paul
b3aefd1cfb additional wrapper updates, bug 4468 2005-09-19 20:12:32 +00:00
Brian Paul
a01cb26a90 s/unsigned long/drm_handle_t/ to get compilation of fb driver to work 2005-09-19 17:17:58 +00:00
Brian Paul
26bb7bc025 compilation fixes, don't know if runtime works 2005-09-19 17:17:18 +00:00
Brian Paul
6707433272 Fix potential segfault when trying to read pixels outside renderbuffer bounds.
Use _swrast_get_values() which does clipping.
2005-09-16 21:15:27 +00:00
Brian Paul
82e314252f remove unused _swrast_read_depth_span() 2005-09-16 21:10:27 +00:00
Brian Paul
f2ea634c0c lots of little clean-ups, improvements 2005-09-16 21:07:48 +00:00
Brian Paul
6ae8747539 change some comments 2005-09-16 21:06:57 +00:00
Brian Paul
62a2f8cdd6 pass mask=NULL to write all pixels in clear_ci_buffer_with_masking() 2005-09-16 21:06:33 +00:00
Brian Paul
db64b60225 remove unused ctx var 2005-09-16 18:18:47 +00:00
Brian Paul
aa2069586d use mesa import wrappers, bug 4468 2005-09-16 18:14:24 +00:00
Brian Paul
3cc67cb8cd alphabetize 2005-09-16 04:18:09 +00:00
Brian Paul
aa8abf8081 Rework the texture filtering functions a bit.
No need to pass the texture unit number as an argument.
2005-09-16 04:16:48 +00:00
Brian Paul
792a1bcbe4 replace a couple macros with inlined functions 2005-09-16 01:42:07 +00:00
Brian Paul
8885b077ed more GLuint->GLbitfield changes 2005-09-16 01:41:03 +00:00
Brian Paul
e00ac11d4d Replace GLuint with GLbitfield where appropriate. Also replace GLuint
with GLboolean in a few places.
2005-09-15 05:00:45 +00:00
Brian Paul
0f540f4b04 Code clean-ups, reorg. 2005-09-15 03:58:52 +00:00
Brian Paul
e64874ac2d silence warning 2005-09-15 01:58:39 +00:00
Brian Paul
63b5b8eaff Remove a bunch texel fetch functions that can be handled by the new
adaptor functions.
2005-09-15 01:55:40 +00:00
Brian Paul
9a22b555cf updated comments 2005-09-15 01:08:24 +00:00
Brian Paul
da9f65268d New set_fetch_functions() to set a gl_texture_image's FetchTexel functions
from the gl_texture_format's functions.
Added "adaptor" functions to allow sampling a float-valued texture with
GLchans and vice versa.  This will allow trimming down the number of
texture fetch routines.
2005-09-15 01:06:19 +00:00
Brian Paul
7fb9352fe4 replace s_texture.[ch] with s_texcombine.[ch] and s_texfilter.[ch] 2005-09-15 01:00:20 +00:00
Brian Paul
55187ea63e Update includes post-splitting of s_texture.c 2005-09-15 00:58:03 +00:00
Brian Paul
2cd8791cad Split the s_texture.c file into two new files:
s_texcombine.c - for texture combining/application
  s_texfilter.c - for texture sampling/filtering
2005-09-15 00:57:00 +00:00
Brian Paul
6ce60beb28 remove unused vars 2005-09-14 18:21:05 +00:00
Brian Paul
5f16244879 remove _tnl_MakeCurrent call 2005-09-14 18:09:15 +00:00
Brian Paul
a25fe61607 initial 6.5 release notes 2005-09-14 14:34:54 +00:00
Brian Paul
b43671c8bf Remove _tnl_MakeCurrent() and the unused ctx->Driver.MakeCurrent() callback. 2005-09-14 14:32:20 +00:00
Dave Airlie
04adb70f32 fix breakage from Brians changes earlier 2005-09-14 12:08:32 +00:00
Brian Paul
a702bbfff3 clean-up some _mesa_make_current() code 2005-09-14 03:11:36 +00:00
Brian Paul
5250aa7c6a remove rm -f line 2005-09-14 02:18:43 +00:00
Brian Paul
7a534dcab1 remove .a file before creating new one 2005-09-14 02:18:09 +00:00
Brian Paul
41cf68b4cb pageflip change from radeon driver 2005-09-14 00:49:09 +00:00
Brian Paul
a400a1e404 Instead of calling _mesa_ResizeBuffersMESA() in the Viewport function,
call driUpdateFramebufferSize() when window size/position changes.
2005-09-14 00:42:33 +00:00
Brian Paul
f157e2dee4 make some funcs static 2005-09-14 00:37:10 +00:00
Brian Paul
ff9d235042 Instead of calling _mesa_ResizeBuffersMESA() in the Viewport function,
call driUpdateFramebufferSize() when window size/position changes.
2005-09-14 00:36:27 +00:00
Brian Paul
48799287b3 use mklib script to make drivers instead of gcc -shared 2005-09-14 00:33:03 +00:00
Brian Paul
a60ff20c58 updated comment 2005-09-14 00:11:30 +00:00
Brian Paul
67a8decffe make some functions static 2005-09-14 00:10:56 +00:00
Brian Paul
e42a31350d Instead of calling _mesa_ResizeBuffersMESA() in the Viewport function,
call driUpdateFramebufferSize() when we detect changes in window size/
position in radeonGetLock().
2005-09-14 00:10:27 +00:00
Brian Paul
9ae952a88c added driUpdateFramebufferSize() 2005-09-14 00:09:09 +00:00
Brian Paul
f084f60f8b Move _mesa_add_soft_renderbuffers() from framebuffer.c to renderbuffer.c
Update some comments, code, etc.
2005-09-13 23:37:50 +00:00
Brian Paul
7909dd920d update like for MD2 viewer 2005-09-13 18:18:47 +00:00
Brian Paul
56ff8ed6d8 replace semicolon with && 2005-09-13 15:04:30 +00:00
Brian Paul
363344f5b8 print version with debug info 2005-09-13 14:48:28 +00:00
Brian Paul
7bb7f97594 fix FreeBSD problem (bug 4435) 2005-09-13 13:36:47 +00:00
Eric Anholt
914ec8ef58 Fix libGL build on FreeBSD by respecting ASM_FLAGS.
Submitted by:	Diego Pettenò <flameeyes@gentoo.org>
2005-09-13 05:19:02 +00:00
Brian Paul
878c371e6c Replace ctx->Driver.StencilOp/Func/Mask() functions with
ctx->Driver.Stencil*Separate() functions.
2005-09-13 04:42:09 +00:00
Brian Paul
42c34efd23 OpenGL 2.0's two-sided stencil feature wasn't implemented correctly.
See comment near top of stencil.c for info about OpenGL 2.0 vs.
GL_EXT_stencil_two_side.
2005-09-13 02:59:53 +00:00
Brian Paul
bdf8441f80 just some reformatting 2005-09-13 02:57:07 +00:00
Brian Paul
56a2e084be Clear either 8 or 16-bit stencil buffers. 2005-09-13 02:03:06 +00:00
Brian Paul
b5932cfc9d Use GLuint/GLint intead of GLstencil for stencil state. 2005-09-13 02:02:03 +00:00
Brian Paul
a96f889a57 Move the ctx->FirstTimeCurrent initialization 2005-09-13 01:19:29 +00:00
Brian Paul
5179f671e7 init StencilOpSeparate to NULL 2005-09-13 01:17:01 +00:00
Roland Scheidegger
8d2139e513 add GL_ATI_fragment_shader support for r200 2005-09-12 23:45:05 +00:00
Brian Paul
fd9de710f5 added a return upon out-of-memory, remove a needless assignment 2005-09-12 23:18:21 +00:00
Brian Paul
f6e3234639 restore brace lost in previous check-in 2005-09-12 21:41:45 +00:00
Roland Scheidegger
f20917de5b add complete support for ATI_fragment_shader for the r200. Most of the new code is in the new file r200_fragshader.c. Reverse engeneered by Dave Airlie and me 2005-09-12 21:20:10 +00:00
Roland Scheidegger
11543624ed remove unnecessary Swizzle parameter from struct (forgotten when the code was refactored) 2005-09-12 17:21:40 +00:00
Brian Paul
28569c25f6 use ASM_API variable, bug 4415 2005-09-12 15:19:19 +00:00
Brian Paul
68d436140d make lookup_query_object() static 2005-09-12 15:05:57 +00:00
Brian Paul
758f447a17 remove rendundant r,g,b,a vars (bug 4331) 2005-09-12 13:59:29 +00:00
Dave Airlie
2745df2774 add 1002:5460 M22 X300 card 2005-09-11 04:02:41 +00:00
Dave Airlie
654286eab1 fix dri drivers build 2005-09-11 03:58:29 +00:00
Brian Paul
2eef2eca87 Silence some warnings. 2005-09-11 01:45:04 +00:00
Brian Paul
7f8cb30ccc bunch of updates 2005-09-10 16:57:22 +00:00
Brian Paul
80cef697f4 put GLUT sources into a separate tarball 2005-09-10 16:54:05 +00:00
Brian Paul
26c7e65785 Clean-up of sources/Makefile, bug 4111 2005-09-10 16:41:17 +00:00
Brian Paul
5704b8e57a fix a problem w/ color index mode when CHAN_BITS=16 2005-09-10 16:27:51 +00:00
Brian Paul
f15b499cfd make some vars static 2005-09-10 16:20:47 +00:00
Brian Paul
392c93e398 fix GLubyte/GLchan inconsistencies (bug 4331) 2005-09-10 16:19:36 +00:00
Roland Scheidegger
0ca6715ba5 new demo to test ATI_fragment_shader, not very creative but easy to know if the output is correct. Tests single-pass as well as multi-pass shader (only pseudo-dependant texture read though, and no tex coord swizzling), src and dst modifiers, src repetition, dst masks, constants, and some ops. Both shaders run succesfully with swrast as well as r200. 2005-09-10 01:02:25 +00:00
Roland Scheidegger
c53d2d0ca8 add the new drm packets needed for ATI_fragment_shader to the sanity code of the r200 and radeon driver 2005-09-10 00:31:11 +00:00
Roland Scheidegger
6c2e82b601 add reverse-engeneered register bits needed for ATI_fragment_shader (Dave Airlie, me) 2005-09-10 00:11:27 +00:00
Brian Paul
402b2bea64 Add offset and pitch fields to intelRegion. Remove frontOffset, frontPitch,
backOffset, backPitch, depthOffset, depthPitch, textureOffset fields.
2005-09-10 00:10:15 +00:00
Roland Scheidegger
036a99452d add _tnl_arb_vertex_program_stage to all drivers which already have _tnl_vertex_program_stage. Fixes crashes when using vertex programs. Tested on r200 only (fix by Keith Whitwell) 2005-09-09 23:31:31 +00:00
Brian Paul
a3dd2ce29e remove the redundant textureSize field, use tex.size instead, it's always the same value 2005-09-09 22:57:05 +00:00
Brian Paul
338cbb0e5c don't generate selection hits for glBitmap, glDraw/CopyPixels. Misc clean-ups 2005-09-09 16:40:47 +00:00
Roland Scheidegger
b346213960 fix some bugs with handling of GL_DOT4_ATI, GL_DOT3_ATI and GL_DOT2_ADD_ATI ATI_fs instructions. 2005-09-09 15:43:11 +00:00
Roland Scheidegger
95db1f0127 add missing fallback string for ARB_vertex_program 2005-09-09 12:51:38 +00:00
Roland Scheidegger
7e3be5559e Fix wrong fallback bit being set by the tcl fallback caused by ARB_vertex_program. Disable ARB_vertex_program by default - it is incredibly slow, and just plain doesn't work anyway (arbvptorus fails an assertion, arbvpmesh has bogus output) 2005-09-09 01:38:21 +00:00
Keith Whitwell
45ba4e4332 use an explicit reserved field, rather than magic number in bound 2005-09-08 21:40:10 +00:00
Brian Paul
d9b9b4b3be Fix the comment for the 'bound' field: it's a bitmask, not an index.
In driTexturesGone(), set bound = 0, not 99.
2005-09-08 18:47:36 +00:00
Keith Whitwell
b5cbaf945d Keep NumTemporaries uptodate.
Make sure oC alpha is populated when separate_specular enabled.
2005-09-08 18:45:03 +00:00
Keith Whitwell
b15f46a093 Treat NegateBase as a bitfield, not a boolean. 2005-09-08 18:36:39 +00:00
Keith Whitwell
5cf1397710 be consistent in populating NegateBase field 2005-09-08 18:35:48 +00:00
Brian Paul
4618a9bfc2 check for either GL_ARB_depth_texture or GL_SGIX_depth_texture in a few places 2005-09-08 15:28:45 +00:00
Brian Paul
f36954ec3c fix precision problem in depth clearing (bug 4395) 2005-09-08 13:55:05 +00:00
Roland Scheidegger
f4ff4d36ed fix incorrect swizzling handling. fix code so it can potentially handle implementations with less than 6 texture units correctly. 2005-09-08 13:41:54 +00:00
Jouk Jansen
21ed29598f Committing in .
Define suseconds_t for OpenVMS

 Modified Files:
 	Mesa/src/mesa/drivers/x11/xm_dd.c
 ----------------------------------------------------------------------
2005-09-08 10:05:37 +00:00
Roland Scheidegger
ce3350770c add a bunch of FLUSH_VERTICES to some of the ATI_fs functions, most notably when changing the global ati fragment shader constants. 2005-09-08 00:12:57 +00:00
Brian Paul
692147ebf7 some clean-up and re-org for renderbuffers 2005-09-07 23:28:41 +00:00
Brian Paul
526242614f some updates, but code still out of date 2005-09-07 23:26:01 +00:00
Brian Paul
ab8ef280ec new comment 2005-09-07 23:21:59 +00:00
Brian Paul
f0da327c87 minor tweaks to _mesa_ResizeBuffersMESA() 2005-09-07 23:21:40 +00:00
Roland Scheidegger
b683b0df45 fix bug with ATI_fragment_shader in swrast (need to copy all 4 values due to later applied srcRep) 2005-09-07 21:59:30 +00:00
Brian Paul
8693b70e8f try to fix renderbuffer breakage, primarily in calculate_buffer_parameters() 2005-09-07 18:32:29 +00:00
Brian Paul
eba4ff6e0a minor formatting fix 2005-09-06 21:22:16 +00:00
Brian Paul
d869a43554 added viaRenderbufferStorage() function 2005-09-06 20:42:23 +00:00
Brian Paul
20354edf35 just changes/updates to comments 2005-09-06 14:47:57 +00:00
Brian Paul
bd07168eb2 added -Wmissing-prototypes to WARN_FLAGS 2005-09-06 03:13:18 +00:00
Brian Paul
158a2aa488 Use mklib script instead of ar. Make libmesa.a instead of mesa.a 2005-09-06 03:02:01 +00:00
Brian Paul
c0b4b9fc3e remove DEFARRAY, CHECKARRAY stuff 2005-09-06 02:56:51 +00:00
Brian Paul
e2399effa0 minor clean-up of texture_combine() 2005-09-06 02:55:34 +00:00
Brian Paul
3622f4f27f don't use DEFARRAY/CHECKARRAY stuff 2005-09-06 02:44:00 +00:00
Brian Paul
fcb6a0fa3e make some functions static 2005-09-05 21:17:44 +00:00
Brian Paul
6575e37cbf make r128SpanRenderStart/Finish static 2005-09-05 21:09:22 +00:00
Brian Paul
e3c8a0c16d remove obsolete CurrentBufferBit 2005-09-05 21:04:22 +00:00
Brian Paul
3952d6d4bb remove unused var 2005-09-05 21:03:48 +00:00
Karl Schultz
f66084b834 Add support for memory contexts (Thomas Kaltofen). Cleanup compilation warnings. 2005-09-05 14:48:39 +00:00
Karl Schultz
e15c2d077a remove _swrast_DrawBuffer 2005-09-05 14:08:51 +00:00
Karl Schultz
53a3c70580 Windows mesa.def file had been moved to the drivers dir tree some time ago. This copy is not needed. 2005-09-05 14:03:41 +00:00
Karl Schultz
e81cbd876e fix var declaration so that a C compiler can build it. 2005-09-05 13:45:23 +00:00
Brian Paul
b4b040f7d8 just formatting clean-ups 2005-09-04 22:55:57 +00:00
Brian Paul
16e7aebfe3 Simplify radeonSetCliprects(). Remove the 'mode' parameter. 2005-09-04 22:20:07 +00:00
Brian Paul
87ce68e1b3 Further clean-up and simplification of the span-related functions. 2005-09-04 22:16:08 +00:00
Brian Paul
61ba6b5a74 Add new void *addr and __DRIdrawablePrivate parameters to
driNewRenderbuffer().
2005-09-04 22:13:42 +00:00
Brian Paul
6e0e6eff05 Fix UpdatePageFlipping() function. Always call driFlipRenderbuffers()
with pfCurrentPage value, in case it's initially 1 instead of 0.
2005-09-04 16:15:38 +00:00
Brian Paul
d575a4c4a1 minor clean-ups 2005-09-04 15:03:36 +00:00
Brian Paul
0cfd4f92dd replace GET_SRC_PTR, GET_DST_PTR with GET_PTR 2005-09-04 15:02:48 +00:00
Brian Paul
eae73dbd91 Use InitPointers helper 2005-09-04 15:01:33 +00:00
Brian Paul
90cfbd3dd5 Combine GET_DST_PTR and GET_SRC_PTR into just GET_PTR. 2005-09-04 15:00:04 +00:00
Brian Paul
f8cc27ecfc Added InitPointers helper function 2005-09-04 14:59:34 +00:00
Brian Paul
16f76703a5 replace assertion with a conditional return 2005-09-04 14:59:18 +00:00
Brian Paul
05aed23d1b fudge set_component_sizes() a bit, see comments 2005-09-03 17:33:16 +00:00
Brian Paul
acafeeb6dc Remove last remnants of pre-renderbuffer code. 2005-09-03 16:57:58 +00:00
Brian Paul
54be0763e1 renderbuffer updates 2005-09-03 16:55:02 +00:00
Brian Paul
2b81c8999f SetBuffer, renderbuffer changes 2005-09-03 16:54:20 +00:00
Brian Paul
6e57725061 use new InitStencil/DepthPointer functions 2005-09-03 16:49:35 +00:00
Brian Paul
b0715811e8 remove dead code 2005-09-03 16:48:48 +00:00
Brian Paul
f6540c6252 remove SetBuffer 2005-09-03 16:47:30 +00:00
Brian Paul
687918b794 SetBuffer, renderbuffer changes 2005-09-03 16:43:02 +00:00
Brian Paul
e6925b51e1 added flippedData field for page flipping, code to flip stereo color buffers 2005-09-03 16:42:19 +00:00
Brian Paul
c6262cd8c5 added SetStencil/DepthPointer functions 2005-09-03 16:41:30 +00:00
Brian Paul
3ba814ae07 remove SetBuffer(). Misc renderbuffer changes. 2005-09-03 16:40:44 +00:00
Brian Paul
7fa6c1afb9 silence misc warnings 2005-09-03 16:39:57 +00:00
Dave Airlie
624ad14a58 Check for ATI_fragment_shader enabled 2005-09-02 23:52:05 +00:00
Brian Paul
712e5042de fix some strict aliasing problems related to choosing framebuffer configs (Matthias Hopf) 2005-09-02 17:07:00 +00:00
Brian Paul
93cfdfe1ef GL_EXT_timer_query 2005-09-02 14:02:44 +00:00
Brian Paul
14520eb25e comments 2005-09-02 13:55:50 +00:00
Brian Paul
c799e9ec24 added GL_EXT_timer_query token 2005-09-02 13:43:26 +00:00
Brian Paul
4fb995084e Prototype implementation of new GL_EXT_timer_query extension (not finalized yet).
Extends the query mechanism to query elapsed time while rendering.
2005-09-02 13:42:49 +00:00
Brian Paul
8cdf372946 replace -1 with PROGRAM_UNDEFINED when initializing instructions 2005-09-02 13:40:09 +00:00
Brian Paul
350a167635 set depthHasSurface for stencil renderbuffer 2005-09-02 13:20:20 +00:00
Roland Scheidegger
3c450b2917 ATI_fragment_shader fixes: fix bug in passTexCoord (caused by recent changes). Fix sampling from wrong texture unit. Apply swizzling before texture sampling, and hopefully get non-projected coordinates from swrast. (still does not work at all with sw doom3, way too dark just the same as with the doom3 arb2 path) 2005-09-02 12:05:38 +00:00
Brian Paul
a02febb8cc change scratch pointer from _int32_t to u_int32_t to silence warning. Is this field actually used for anything? 2005-09-02 03:39:31 +00:00
Brian Paul
a517cc1ef6 remove unneeded assertion in stencil/depth LOCAL_DEPTH_VARS code 2005-09-02 03:36:41 +00:00
Brian Paul
b343f06a09 set depthHasSurface field for stencil renderbuffer 2005-09-02 03:28:08 +00:00
Roland Scheidegger
f519a770d0 add error checking to the GL_ATI_FRAGMENT_SHADER entrypoints. Fix bug with scope of ati fragment shader constants. Fix issues with specifying color/alpha instructions not pair-wise. Change internal representation of the shader (to better fit how the extension works, should make driver implementations simpler, and saves some memory). (still doesn't work correctly with doom3 and swrast, but not worse than before) 2005-09-02 01:11:53 +00:00
Brian Paul
b252e0f47f added an assertion to help debug broken stencil readback 2005-09-01 20:14:50 +00:00
Brian Paul
238de2db12 added driFlipRenderbuffers() 2005-09-01 20:11:32 +00:00
Brian Paul
da84f0b642 fix page flipping breakage 2005-09-01 20:10:17 +00:00
Brian Paul
98e92d261b fix typo 2005-09-01 14:04:45 +00:00
Brian Paul
4d11d45d84 some missing renderbuffer changes (Roland) 2005-09-01 14:04:32 +00:00
Brian Paul
fcbfeb5d28 Finish up some of the gl_renderbuffer work.
Use driRenderbuffer's offset, pitch fields in the span routines.
Remove the SetBuffer driver function.
Consolidate the code for setting CTX_RB3D_COLOROFFSET and CTX_RB3D_COLORPITCH
state in new radeonUpdateDrawBuffer() function.
Old code is surrounded by #if 000 / #endif, temporarily.
2005-09-01 04:03:44 +00:00
Brian Paul
982e8e4d5c Finish up some of the gl_renderbuffer work.
Use driRenderbuffer's offset, pitch fields in the span routines.
Remove the SetBuffer driver function.
Consolidate the code for setting CTX_RB3D_COLOROFFSET and CTX_RB3D_COLORPITCH
state in new radeonUpdateDrawBuffer() function.
2005-09-01 03:54:34 +00:00
Brian Paul
8e5479c7f8 s/__inline/INLINE/ 2005-09-01 03:50:54 +00:00
Brian Paul
f1d269060b use char* instead of GLubyte* in i915_program_error() to silence warnings 2005-09-01 03:32:48 +00:00
Brian Paul
f069e74dd8 use proper datatypes to silence a bunch of warnings 2005-09-01 03:19:45 +00:00
Brian Paul
5545245fe7 added a few more fields to help with DRI drivers 2005-09-01 03:07:29 +00:00
Brian Paul
db84ec2c6d remove fxDDSetBuffer() 2005-09-01 03:06:28 +00:00
Brian Paul
af39910f94 remove set_buffer() 2005-09-01 03:05:39 +00:00
Brian Paul
c958a9798a remove old set_buffer routine and misc code 2005-09-01 03:04:41 +00:00
Brian Paul
26bb5239c8 remove the old set_buffer() routine 2005-09-01 02:56:47 +00:00
Brian Paul
527835977a Just additional comments. 2005-08-31 21:38:53 +00:00
Roland Scheidegger
36603539cc enable GL_ARB_texture_env_crossbar on r200, separate the enable bits for texture sampling and texture environment, optimize away texture sampling for units if the result is not used, always emit the env instructions in-order and try to eliminate GL_REPLACE env instructions. 2005-08-31 19:11:09 +00:00
Brian Paul
d5783737f1 use 'f' key to toggle front/back buffer rendering 2005-08-31 16:42:59 +00:00
Brian Paul
2c8524b4fb remove dead code, update comments 2005-08-31 16:04:17 +00:00
Alan Hourihane
cbafed8716 reverse a bogus patch 2005-08-31 15:11:21 +00:00
Dave Airlie
3d4d6d29e2 complete fix for miniglx startup issue since driver version checks 2005-08-31 01:24:01 +00:00
Brian Paul
275a563bea remove redundant ctx->Driver fallback assignments that were already done in _mesa_init_driver_functions() 2005-08-31 00:39:32 +00:00
Brian Paul
f830f640b6 fix a cast/assignment warning 2005-08-31 00:00:17 +00:00
Brian Paul
513a553d4a silence fprintf and casting warnings 2005-08-30 23:57:04 +00:00
Brian Paul
16fb04ccb5 added some parenthesis to silence warnings 2005-08-30 23:50:23 +00:00
Alan Hourihane
f98b9853e1 drmUnmap correct size 2005-08-30 20:37:30 +00:00
Alan Hourihane
b41c025420 move via_dri.h to server 2005-08-30 19:46:08 +00:00
Alan Hourihane
9165d46fdb define Bool for solo builds 2005-08-30 19:22:46 +00:00
Alan Hourihane
d5cc77e37c Fixes from https://bugs.freedesktop.org/attachment.cgi?id=3077 2005-08-30 19:14:23 +00:00
Brian Paul
156dc55628 fix APP_LIB_DEPS 2005-08-29 22:45:52 +00:00
Ian Romanick
f0d0e50994 Implement GL_ARB_texture_env_combine, GL_EXT_texture_env_combine, and
GL_ARB_texture_env_crossbar for i810.  This passes both demos/texenv and all
of glean's texCombine tests.
2005-08-29 15:43:02 +00:00
Alan Hourihane
d9089ab96e remove drmAddress 2005-08-29 15:23:55 +00:00
Brian Paul
3a165edc9a added note about IEEE vs VAX floating point (bug 4270) 2005-08-29 14:45:30 +00:00
Brian Paul
49fd874f24 fix a few proxy color table bugs (bug 4270) 2005-08-28 17:12:07 +00:00
Brian Paul
082501a74c check the Ready flag when getting GL_QUERY_RESULT_ARB 2005-08-27 14:04:37 +00:00
Brian Paul
23ffc3a85d Rearrange the code related to GL_ARB_occlusion_object to generalize query
objects for future types of queries.
2005-08-27 13:56:08 +00:00
Adam Jackson
ca1ac986a1 /dri/msg 2005-08-26 17:50:39 +00:00
Alan Hourihane
f4166a1fd7 Fix the scripts for the cygwin & mingw changes 2005-08-26 09:37:41 +00:00
Brian Paul
adbf932ec1 added singlebuffer demo 2005-08-25 23:26:51 +00:00
Brian Paul
59d680db22 Demo of how to do (nearly) flicker-free rendering with a single color buffer. 2005-08-25 23:25:25 +00:00
Brian Paul
713635adef fix comment and #if test 2005-08-25 22:09:43 +00:00
Brian Paul
a2c65f4793 don't compile debug code (bug 4242: rand undefined) 2005-08-25 19:43:38 +00:00
Brian Paul
2735b33638 remove stray references to ctx->Depth.OcclusionTest 2005-08-25 19:38:42 +00:00
Ian Romanick
8bc0b3f961 Fix texture format selection. ChooseTextureFormat is supposed to select the
hardware format of the texture, and SetTexImages is supposed to use the
format selected by ChooseTextureFormat.  However, both routines were making
their choices based on the texture's BaseFormat.  This is wrong.
ChooseTextureFormat uses BaseFormat and SetTexImages uses
TexFormat->MesaFormat.

Once SetTexImages was fixed to use the right format values,
ChooseTextureFormat was cleaned up.  It now uses the few available texture
formats supported by the i810 in a smarter way.  This should improve the
quality of LUMINANCE, LUMINANCE_ALPHA, and INTENSITY textures.

I tested this by cycling through all the texture formats in demos/texenv and
tests/yuvsquare.
2005-08-25 19:15:01 +00:00
Alan Hourihane
8de9d92acf update for mingw 2005-08-25 18:08:16 +00:00
Brian Paul
8e247d52e3 Update the glut idle function after a new window is created 2005-08-25 17:46:04 +00:00
Brian Paul
b8a804d24f initial 6.5 changes (reflect demo, remove GL_HP_occlusion_test) 2005-08-25 14:24:49 +00:00
Brian Paul
6e4f594a02 removed GL_HP_occlusion_test extension 2005-08-25 14:23:38 +00:00
Brian Paul
dd1a9f75dc fix segfault in Fake_glXCreatePBuffer(), bug 4235 2005-08-25 14:07:06 +00:00
Brian Paul
7e6553c1aa s/GLX_RGBA_BIT/GLX_RGBA_TYPE/ (bug 4237) 2005-08-25 13:18:53 +00:00
Eric Anholt
61d386a93f Attempt to fix the issue reported by Alan Grimes with DRM_RADEON_TEXTURE
erroring out when it shouldn't.  The errno could be changed by usleep() between
the ioctl call and the loop check, if a signal was received.  This could cause
an EAGAIN return from the DRM_RADEON_TEXTURE ioctl to not loop again.
Instead of checking errno, check thevalue of ret itself, since it is a saved
(and sign-flipped) copy of errno from the ioctl call.
2005-08-25 03:38:07 +00:00
Brian Paul
d545d916a8 make tiles a little smaller so they're all visible 2005-08-25 03:09:12 +00:00
Brian Paul
9e385282fc also check for texture border in sample_linear_2d() 2005-08-25 03:05:10 +00:00
Brian Paul
5d7c486d90 Added multi-window support. Press 'n' to create new window, 'k' to kill
a window.  Good for exercising multi-window rendering.
2005-08-24 21:32:02 +00:00
Alan Hourihane
c58cea0085 Fix Windows build problems.
GCC's visibility attribute is for ELF systems, so undef INTERNAL
GCC's fastcall attribute interferes with __stdcall so undef FASTCALL
2005-08-24 09:08:06 +00:00
Brian Paul
334f2d8077 GLw demo doesn't belong here 2005-08-23 14:50:02 +00:00
Brian Paul
17756df903 removed lines that caused some files to be included in tarballs multiple times 2005-08-23 13:40:30 +00:00
Brian Paul
edf0d14bd4 simplify, clean-up texel addressing macros 2005-08-23 03:50:12 +00:00
Brian Paul
249160fdfa update version to 6.5.0 2005-08-23 00:45:54 +00:00
Brian Paul
dfb6c56ed8 added GL_X_RENDERABLE to glXChooseFBConfig (bug 4181) 2005-08-22 14:28:19 +00:00
Brian Paul
dcf14aa3a7 bump version to 6.5 2005-08-22 14:27:33 +00:00
Brian Paul
1e71d6af48 added .S DRI files to tarball (Donnie Berkholz), bumped version to 6.5 2005-08-22 14:27:13 +00:00
Dave Airlie
298af7a609 fix up libdrm for egl 2005-08-21 03:17:52 +00:00
Brian Paul
ae27ef2219 fix typo 2005-08-19 23:44:35 +00:00
Brian Paul
f350e22716 md5 sums for 6.3.2 2005-08-19 23:42:29 +00:00
Brian Paul
eacd347fce update MESA_DEBUG with FP info 2005-08-19 23:34:10 +00:00
Adam Jackson
8fcd1e0287 Convert libGL and DRI drivers to require libdrm.
libdrm can be had from:

http://people.freedesktop.org/~ajax/libdrm/
2005-08-19 20:20:03 +00:00
Ian Romanick
2ae5645115 Fix a realloc problem with indirect vertex arrays. The actual head pointer
wasn't tracked and used for the realloc, so it tended to explode.
2005-08-19 18:53:26 +00:00
Brian Paul
b7c727e500 updates for 6.3.2 release, plus other assorted clean-ups 2005-08-19 16:57:50 +00:00
Alan Hourihane
d912f6cfe3 Commit missing piece from Egbert's 32/64 bit patches 2005-08-19 16:07:33 +00:00
Ian Romanick
f7eb54a12f Enable ARB_texture_compression. The code has been in place for a long time,
but, for whatever reason, the extension wasn't enabled.

Add some comments to i810ChooseTextureFormat.  There's some strangeness with
i810 texture formats.
2005-08-19 00:48:25 +00:00
Ian Romanick
e0029b33ef Add support for NV_blend_square. This was tested with
progs/tests/blendsquare.
2005-08-18 22:27:37 +00:00
Ian Romanick
ab5be2c5f7 Make sure extension entry point offsets are properly initialized. This is
primarilly needed to support functions that are internally implemented using
extension entry points (e.g., glBlendFunc uses glBlendFuncSeparate).
2005-08-18 22:16:46 +00:00
Ian Romanick
61ac29e7c6 Don't try to update hardware texture fields if there is no hardware texture.
This can happen when all the texture enables for a texture unit are disabled.

This fixes bugzilla #3195.
2005-08-18 20:01:01 +00:00
Ian Romanick
b462855c24 Add simple regression test for bugzilla #3195. 2005-08-18 19:52:44 +00:00
Ian Romanick
e918bac8cd Make the i810 driver use driGetRendererString like all the other drivers.
The GL_RENDERER string now accurately contains the chip name.  This was only
tested on a "plain" i810 (PCI ID 8086:7121).
2005-08-18 19:51:11 +00:00
Brian Paul
aa2a357bae Replace mult/div operators with bitwise operators in texel fetch routines
for better performance. (Roland Scheidegger)
2005-08-18 14:33:26 +00:00
Brian Paul
05fe2871e3 Bump version to 6.3.2 2005-08-16 23:13:25 +00:00
Brian Paul
926a19e108 updates for 6.3.2 2005-08-16 23:12:37 +00:00
Brian Paul
160b3284dd include stdint.h if WIN32 and GNUC (Colin Harrison). Patch forwarded to SGI. 2005-08-15 23:25:33 +00:00
Brian Paul
c2c2600728 test the standard stencil op modes too (Philipp Klaus Krause) 2005-08-15 22:57:30 +00:00
Roland Scheidegger
7a362deb8c In _mesa_TexEnvfv, do not accept values for GL_OPERAND2_ALPHA and GL_OPERAND2_RGB which are only valid with ARB_texture_env_combine but not with EXT_texture_env_combine, when only EXT_texture_env_combine is supported. 2005-08-15 18:24:12 +00:00
Ian Romanick
a3dd6efb00 Put back '-I/usr/X11R6/include'.
Make 'USING_EGL=0' the default for now.  It's causing too much confusion for
too many non-developers (which in turn wastes too much developer time).  It
is trivially overridden from the make command line.  See comments in
linux-dri.
2005-08-15 15:01:39 +00:00
Alan Hourihane
dabec11d27 Add Egberts fixes for 64bit architectures
Add additional checks for the *DRIRec info structure passed in from the
device driver. This ensures that things fallback to indirect rendering if
the DDX driver has had modifications (i.e. removal of the drmAddress field).
2005-08-15 06:59:24 +00:00
Alan Hourihane
69dc32cfac Add a check which compares the passed in size of the DDX driver private DRI
structure to the 3D drivers view of it, and abort if they don't match.

This traps the case with the drmAddress removal in the DDX driver.
2005-08-14 12:16:51 +00:00
Ian Romanick
33f9c98aa6 Enable support for EXT_stencil_wrap. The code was already there, but the
extension wasn't enabled.  I have verified its correct function with Mesa's
stencil_wrap test.  It is enabled on both Savage4 and Savage3D.  Since
Savage3D uses a software fallback for *all* stencil operations, this is safe.
2005-08-13 01:43:28 +00:00
Brian Paul
6fe7a0dc01 added FREXPF() macro (bug 4060) 2005-08-12 18:56:56 +00:00
Ian Romanick
f2876d1ee3 Remove the logic that determines at compile time whether or not HAVE_ALIAS
should be defined.  It was flawed on some platforms (e.g., Darwin & mingw).
Instead, rely on the build system to define it on the compiler command line.

This also reverts ajax's hand-edit to indirect_size.c.  I'll fix that on the
X.org side of things later today.
2005-08-11 20:29:45 +00:00
Ian Romanick
fbcc5aedf2 Remove support for the R200_NO_VTXFMT environment variable. Instead use
'tcl_mode=1'.  This fixes bugzilla #3972.
2005-08-11 19:47:06 +00:00
Ian Romanick
4c4e4bfa4e Makefile cleanups suggested by George Fufutos (bugzilla #3899). 2005-08-11 19:37:55 +00:00
Ian Romanick
ac7c147aaf Don't link with libGL, libEGL, or libEGLdri. On EGL setups libGL isn't
available, and on libGL setups libEGL and libEGLdri aren't available.
2005-08-11 19:29:25 +00:00
Ian Romanick
b7ae3e4787 Since Brian's recent commit, "-I/usr/X11R6/include/X11/extensions" is no
longer needed.
2005-08-11 19:23:23 +00:00
Brian Paul
82dfd4b71f fix X #includes so they're relative to X11/ directory (bug 4047) 2005-08-11 14:18:53 +00:00
Ian Romanick
ac887d4211 Make ffb driver build on x86-64. The fix is two fold. First, use the
proper DRM_CAS_RESULT to declare the variable used to store the result
of DRM_CAS.  Second, only use the "real" versions of LOCK_HARDWARE and
UNLOCK_HARDWARE on SPARC.  That's the only platform where the hardware
can really exist.
2005-08-11 04:25:36 +00:00
Ian Romanick
967b006f51 Remove _glapi_check_multithread from the interface exported by the loader to
the driver.  The loader now takes care of this for the driver.

Remove _glapi_DispatchTSD and give _glapi_Dispatch its semantic (i.e.,
having a NULL value means that the application is multithreaded and
_glapi_get_dispatch must be called).

Gut all of the dispatch override code.  This removes _glapi_RealDispatch,
_glapi_tls_RealDispatch, _glapi_begin_dispatch_override,
_glapi_end_dispatch_override, and _glapi_get_override_dispatch.

Remove _glapi_get_proc_address, _glapi_get_proc_name, _glapi_get_version,
and _glapi_check_table from the loader / driver interface.

Reviewed by: Brian Paul
2005-08-10 23:54:15 +00:00
Ian Romanick
1b8d0f149e Mesa uses the glVertexAttrib*NV functions to implement fixed-function
attributes in display lists.  If a driver doesn't add entry points for
GL_NV_vertex_program, it will explode.  This patch adds GL_NV_vertex_program
to the list of default extensions whose entry points are added by
driInitExtensions.

Thanks go to Roland Scheidegger for tracking the problem down and suggesting
the fix.
2005-08-10 23:39:42 +00:00
Brian Paul
8c9cd63c89 the PIXEL_MAP_I_TO_I table should be GLfloat, not GLint 2005-08-10 17:04:03 +00:00
Brian Paul
63c9ebeaff fix static assertion problem for gcc (bug 4022) 2005-08-10 14:42:21 +00:00
Brian Paul
6b563bda43 disable the pointer size assertions (bug 4021) 2005-08-10 14:40:05 +00:00
Brian Paul
5d40169436 fix indentation 2005-08-10 14:38:39 +00:00
Keith Whitwell
738c9a073f Check for prim/vertex store non-null before messing with refcounts. 2005-08-10 14:13:45 +00:00
Ian Romanick
258f005c6b Add rules and target to build src/mesa/x86-64/glapi_x86-64.S. 2005-08-09 18:54:12 +00:00
Keith Whitwell
c91720fb1a Decrement the context's refcounts on part-used storage structs on
context destroy.  Fixes memory leak.
2005-08-09 16:11:28 +00:00
Brian Paul
d2e289c70f actually free the renderbuffer in xmesa_delete_renderbuffer(), fixes a memory leak 2005-08-09 15:17:19 +00:00
Brian Paul
e78a3c42e4 delete display lists upon exit 2005-08-09 15:14:51 +00:00
Brian Paul
a1a6fa2fa1 free display lists and destroy window upon exit 2005-08-09 15:13:32 +00:00
Brian Paul
ecde87054c _mesa_free_framebuffer_data() call frees the renderbuffers, no need to call the Delete methods after 2005-08-09 15:07:55 +00:00
Brian Paul
24d55a1145 free context structure (bug 1252316) and s/free/_mesa_free/ 2005-08-09 14:23:28 +00:00
Ian Romanick
aba4864a25 Make the linux-dri-x86 builds work on x86-64 again. mklib now
determines the bits (either 32 or 64) for libraries without the lib
prefix.  progs/egl/Makefile passes CFLAGS on the link commands so that
things like '-m32' get propagated.
2005-08-08 23:22:46 +00:00
Brian Paul
7bf08c23fd s/Disaptch/Dispatch/ (bug 3918) 2005-08-08 21:42:51 +00:00
Brian Paul
63dffa4e77 added directfbgl.h to tarball 2005-08-08 21:30:12 +00:00
Ian Romanick
da0c5b2e2c Since glcontextmodes.[ch] are no longer used in the DRI drivers, removed the
IN_DRI_DRIVER cruft.  This was suggested by George Fufutos.
2005-08-08 17:22:44 +00:00
Dave Airlie
0d942b740c fix up color tiling in miniglx radeon server code 2005-08-08 04:34:35 +00:00
Dave Airlie
ac54de021a fix miniglx setting virtual size of 832 for 800x600 2005-08-08 04:17:52 +00:00
Jon Smirl
ae4e58c9ab Remove platform specific bits from radeon_egl.c 2005-08-08 03:58:26 +00:00
Eric Anholt
81b3c5e85c Dike out the linux-specific EGL bits unless it's a linux build. 2005-08-08 03:27:28 +00:00
Eric Anholt
f1a261377f Since this isn't a bash script, don't use function and instead inline the usage
into the one place that it's used.
2005-08-08 03:26:18 +00:00
Vladimir Dergachev
8e653f12bc Allow R300 driver to build on x86-64 and PowerPC. 2005-08-07 21:50:33 +00:00
Jon Smirl
bf54a28384 Add missing egldri.h header file 2005-08-07 02:30:32 +00:00
Jon Smirl
9a4dbf1cff Fix up some of the sample to work with the r200 EGL driver 2005-08-07 02:15:27 +00:00
Jon Smirl
7e5da5d526 Enable EGL support in 'linux-dri' config 2005-08-07 02:13:14 +00:00
Vladimir Dergachev
94a4eb1e78 Follow suggestion by Aapo Tahkola to fix giant memory leak from forgetting to free the key when entry was already found (presumably a common case). 2005-08-06 05:19:42 +00:00
Vladimir Dergachev
b8731903df Fix card_extensions by following corresponding r200 code.
Fix suggested by Ian Romanick.
R300 driver now works without segfault.
2005-08-06 04:39:27 +00:00
Ian Romanick
23a4f50c5b Fixes bugzilla #1730.
Make sure that all the values used in the clean-up code are initialized at
some point.  It is still unclear to me as to why GCC does not complain.  I
suspect the problem may be due to the depth of if-statement nesting.
2005-08-05 23:13:13 +00:00
Ian Romanick
6965f2cb0a Fixes bugzillla #812.
The weak version of _glapi_DispatchTSD was removed from dri_util.c.  As
stated in the bug report, this was only needed to support versions of libGL
that did not have this symbol.  Versions of libGL without this symbol are no
longer supported at all, so it is totally irrelevant.
2005-08-05 22:12:49 +00:00
Alan Hourihane
928218a283 remove the drmAddress 2005-08-05 20:47:59 +00:00
Ian Romanick
6bc24c5c05 In order to create the set of available extensions, we have to know if
direct-rendering is possible on a given screen.  It is not possible to
determine this by just looking at driDisplay.private in the display
structure.  However, it is possible to determine this by looking at
driScreen.private in the screen structure.  This field is only non-NULL if a
DRI driver has been successfully loaded and bootstrapped.  Once we get to
that point, we know that direct-rendering is at least theoretically
possible.

This fixes bugzilla #2875.
2005-08-05 19:13:51 +00:00
Ian Romanick
126c89e35f Fix recent problems with display lists and other parts of the code.
CALL_by_offset, SET_by_offset, and GET_by_offset all had various problems.

The core issue is that parts of the device-independent code in Mesa assumes
that all functions have slots in the dispatch table.  This is especially
true in the display list code.  It will merrilly try to set dispatch
pointers for glVertexAttrib1fARB even if GL_ARB_vertex_program is not
supported.  When the GET/SET/CALL macros are invoked, they would read a 0
from the remap table.  The problem is that 0 is the dispatch offset for
glNewList!

One change is that the remap table is now initialized to be full of -1
values.  In addtion, all of the *_by_offset marcos misbehave in an obvious
way if the specified offset is -1.  SET_by_offset will do nothing,
GET_by_offset will return NULL, and CALL_by_offset, since it uses
GET_by_offset, will segfault.

I also had to add GL_EXT_blend_func_separate to the list of default
extensions in all_mesa_extensions (src/mesa/drivers/dri/common/utils.c).
Even though many drivers do not export this extension, glBlendFunc is
internally implemented by calling glBlendFuncSeparate.  Without this
addition, glBlendFunc stopped working on drivers (such as mga) that do not
export GL_EXT_blend_func_separate.

There are still a few assertions / crashes in GL_ARB_vertex_program tests,
but I don't think that these are related to any of my changes.
2005-08-05 18:13:37 +00:00
Jon Smirl
33f5e47faf Remove EGL from linux-solo makefile 2005-08-05 03:48:15 +00:00
Jon Smirl
485528f2ac More EGL prep. No impact on anything outside of EGL 2005-08-05 03:33:59 +00:00
Jon Smirl
b507bd4160 New files for radeon egl driver.
Still a work in progress.
2005-08-04 22:23:34 +00:00
Ian Romanick
711555d1e3 Convert all instances of XTHREADS to USE_XTHREADS. This fixes one of
serveral things that are broken when building on a system with X.org 7.0rc0
installed.
2005-08-03 23:05:25 +00:00
Dave Airlie
7f5925d57c Add color tiling support to miniglx for radeon
(Stephane Marchesin + Dave Airlie)
2005-08-03 10:22:31 +00:00
Ian Romanick
7adcedcd54 Fix build problems related to finding Xthreads.h. 2005-08-01 16:30:24 +00:00
Ian Romanick
29206ae569 Remove unused structures and data fields. These had been left in because
DRI drivers using the "old" interface relied on certain fields being at
certain offsets.  Removing the structures would break that.  Now that the
old interface is no longer supported, the dead data can finally die.
2005-07-29 17:30:18 +00:00
Ian Romanick
dc6e2c778a Add a new config called linux-indirect. This build the GLX libGL just like
linux-dri, but it disables support for direct-rendering in it.  This config
mainly exists so that I can verify that changes to libGL haven't broken
builds on non-DRI platforms.
2005-07-29 17:25:50 +00:00
Jon Smirl
4508bcc72c Leave the AGP_BASE code in. It is pointless to bump the interface
for X on a miniglx fix. It can be removed later.
2005-07-29 16:53:02 +00:00
Jon Smirl
a7d4bfed8a Remove OUTREG(RADEON_AGP_BASE, info->ringHandle); from DRI driver
Code is already in DRM driver to do this.
2005-07-29 13:58:22 +00:00
Jon Smirl
4ce390b933 Commit Ian's fixes from Bug 3877
I have tested these on miniglx and they seem to be working.
I'm sure Dave will give them a better test.
2005-07-29 00:48:12 +00:00
Jon Smirl
df68d11b47 Fix a == vs !- typo for glx_enable_extension 2005-07-29 00:19:36 +00:00
Ian Romanick
82e3ecf413 Use the routines supplied in the __DRIinterfaceMethods structure to create a
destroy __GLcontextModes structures.  This eliminates the need for DRI
drivers to ever link with glcontextmodes.c.
2005-07-28 23:33:18 +00:00
Ian Romanick
f7c9eafa85 glxEnableExtension is a platform-specific function exported by the loader.
Therefore, drivers should not require it to run.
2005-07-28 21:57:17 +00:00
Ian Romanick
68679d2b9e Remove '#if 0' block that was accidentally left in. 2005-07-28 20:55:26 +00:00
Brian Paul
960467443e SPARC, DRI interface changes for 6.3.1 2005-07-28 02:46:26 +00:00
Ian Romanick
14fa5f6a60 The dri/*/depend files don't exist on a raw check-out, and that makes 'make
tarballs' have issues.
2005-07-28 01:15:45 +00:00
Ian Romanick
1585c234e0 Major rip-up of internal function insertion interface. The old
_glapi_add_entrypoint has been replaced by a new routine called
_glapi_add_dispatch.  This new routine dynamically assignes dispatch offsets
to functions added.  This allows IHVs to add support for extension functions
that do not have assigned dispatch offsets.

It also means that a driver has no idea what offset will be assigned to a
function.  The vast majority of the changes in this commit account for that.
An additional table, driDispatchRemapTable, is added.  Functions not in the
Linux OpenGL ABI (i.e., anything not in GL 1.2 + ARB_multitexture) has a
fixed offset in this new table.  The entry in this table specifies the
offset in of the function in the real dispatch table.

The internal interface was also bumped from version 20050725 to 20050727.

This has been tested with various programs in progs/demos on:

radeon (Radeon Mobility M6)
r128 (Rage 128 Pro)
mga (G400)
2005-07-28 00:29:51 +00:00
Ian Romanick
9f23a3a1bf Fix SPARC assembly for 64-bit
- The test for whether or not we're building for 64-bit is '#ifdef __arch64__'.
 This appears to be correct on both Linux and Solaris.

- The test for Solaris is now '#if defined(SVR4) || defined(__SVR4) ||
defined(__svr4__)'.  GCC 3.4.0 has all three defined on Solaris 9.

- Enables assembly language clip routines.

- Fixes to make GLSL code build on Solaris.

- Update gl_SPARC_asm.py.
2005-07-28 00:11:10 +00:00
Philippe Houdoin
3e36986e5a This precious BeOS include file was lost since some released MesaLibs. Fixed. ;-) 2005-07-27 19:56:33 +00:00
Roland Scheidegger
67d94e5a86 test for the proper drm version, at least 1.17 is required 2005-07-27 18:21:34 +00:00
Alan Hourihane
a7df74ea02 typo 2005-07-26 23:09:50 +00:00
Alan Hourihane
36d6e9df16 support GLX_DIRECT_COLOR in 1.4.0 2005-07-26 23:06:10 +00:00
Ian Romanick
ab7c6ffadc Remove the last remnants of GLX_BUILT_IN_XMESA. This allows the removal of
the evil, ugly GLX_PREFIX macro as well.
2005-07-26 22:53:38 +00:00
Alan Hourihane
1361398600 Bump the required ddx to 1.4.0 as drmAddress has been removed so that 32/64bit
combinations work.
2005-07-26 21:53:16 +00:00
Ian Romanick
5c6fd3dd4c No, really, get rid of all the remaining references to DRI_USE_NEW_INTERFACE.
A couple other remnants of the old interfaces hit the dust too.  Thanks
Jon. :)
2005-07-26 05:57:24 +00:00
Ian Romanick
a08d8a095c Quote $(CC) and $(CXX) so that 'CC=ccache gcc' and 'CXX=ccache g++' will
work again.
2005-07-26 05:55:56 +00:00
Ian Romanick
5f1ba3e21b Fixes the glXGetProcAddress portion of the interface. Most of the functions
that are currently obtained via glXGetProcAddress and all of the XF86DRI
functions are replaced with a funciton table.  This table will be passed to
__driCreateNewScreen.

One of the functions in the table is getProcAddress.  This allows some
loaders to expose functionality not in all loaders.  This will be immediatly
used for glxEnableExtension (formerly known to drivers as
__glXScrEnableExtension).  libGL (and in the future libglx) expose this
function so that drivers can enable GLX extensions.  libEGL should exposed
eglEnableExtension to enable EGL extensions.  The same function cannot be
used for both because the extensions have different names and (possibly)
different semantics.  Drivers can optionally use one, both, or neither.

The key parts are in the __DRIinterfaceMethodsRec structure in
dri_interface.h.  A pointer to one of these structures is passed into
__driCreateNewScreen.  Because of this, the version of the API is bumped to
20050725.  Since the previous version(s) were never in a release, their
existance is erased.

I was actually a little surprised by how much code this cuts from the
drivers.  A lot of glXGetProcAddress calls disappear, and a lot of
version checks go with them.  Nice.

The one thing I'm not sure of is removing __glXInitialize.  For some
reason that function was in the glXGetProcAddress table, but *nothing*
in the Mesa tree used it.  Did something with DRI conf. use this
function?  It seems odd...
2005-07-26 02:44:01 +00:00
Brian Paul
1201348a33 improve comments about win[0..3] values (bug 2554) 2005-07-26 01:04:53 +00:00
Brian Paul
800c72ae61 Fix bug 1858 - array subscript out of range in gamma driver.
Set ctx->Const.MaxTextureLevels = GAMMA_TEX_MAXLEVELS = 12
Remove bogus WRITE(level 12).
Max gamma texture size is 2kx2k  (note: 2k = 1 << (MaxLevels - 1))
2005-07-26 00:10:53 +00:00
Brian Paul
7c1ab40898 Add license/copyright.
Add -h/--help option for usage.
Minor clean-ups.
2005-07-25 23:49:50 +00:00
Brian Paul
8dcc6736ab Added -linker option to mklib, used to specify a particular program for
linking, if relevant.
Updated Makefiles to use -linker option instead of setting CC, CXX env vars.
2005-07-25 22:59:58 +00:00
Ian Romanick
e9dbe58b8b Gut a few more dead bits. Replace uses of the CreateNewScreenFunc typedef
(from glxclient.h) with PFNCREATENEWSCREEN (from dri_interface.h).

Remove the prototype for __driCreateScreen and fix the prototype for
__driCreateNewScreen (append the API version) in dri_interface.h.
2005-07-24 07:38:23 +00:00
Ian Romanick
c39bf5e273 All elements of pre-DRI_NEW_INTERFACE_ONLY are removed. This allows
1,402 lines of code to be removed from Mesa (drivers and libGL).  The
big winner is dri_util.c.

Primary changes are:

1. Remove all "deprecated" entry-points from the various structures in
dri_interface.h.

2. Rename the remaining fields to removed "version numbers."  So,
bindContext3 becomes bindContext.  Functions with "New" in the name
(e.g., CreateNewContext) were *not* changed, but that is an option.
Having "New" in the name is less annoying to me than having "3" in the name.

3. Remove all compatibility code that handles cases where the driver or
the loader is too old to support the latest interfaces.

4. Append the API version to the __driCreateNewScreen function name.
This is currently done by hand.  In the future (i.e., the next time we
make an incompatible change to the interface) we'll want to come up with
a better way to do this.  This prevents old loaders from being able to load
new (incompatible) drivers.

5. Bump the API version to 20050722.  All drivers (by way of dri_util.c)
require this version.

6. All drivers are *required* to expose GLX_SGIX_fbconfig and
GLX_OML_swap_method (or the moral equivalents).  Support for these
functions in implicit in the use of the "new" interface.

7. Some cases still exist that need to be compiled differently in a loader
or core Mesa versus in a driver.  These are identified by the define
IN_DRI_DRIVER.
2005-07-24 06:29:14 +00:00
Adam Jackson
7d40d230fa Add two aliases for some PointParameters entrypoints for libglx compatibility.
Doing this here rather than on the GLX side since the X monolith hasn't had
Mesa 6.3 imported yet.

idr, I know this is touching a generated file, but I haven't figured out what
needs changing in the generator scripts to make this change happen.  If you
could add that I'd appreciate it.
2005-07-23 02:09:58 +00:00
Brian Paul
3e2419a7cc Break the long list of MAIN_FILES and DEMO_FILES into subgroups.
rm/touch the depend files when making tarballs so they don't include
RedHat-specific paths (bug 3842).
2005-07-22 15:52:46 +00:00
Jouk Jansen
70cf1f0cf8 ----------------------------------------------------------------------
Committing in .

 _mesa_sprintf crashes on OpenVMS -> replaced it by the OS-supplied sprintf

 Modified Files:
 	Mesa/src/mesa/drivers/x11/fakeglx.c
 ----------------------------------------------------------------------
2005-07-22 09:30:54 +00:00
Brian Paul
60a6a0eb51 some GLuint idx -> GLint idx changes 2005-07-22 02:55:36 +00:00
Brian Paul
fea5a428e9 added vp negative addressing bug fix 2005-07-22 02:54:14 +00:00
Brian Paul
61e694f270 Make the vertex program source register Index field a signed int since
relative addressing can be negative.
Change some GLuint indexes to GLint in the t_vp_build.c file.
Added PROGRAM_UNDEFINED token for initializing the register File field to
avoid a gcc 4.0 warning.
2005-07-22 02:53:38 +00:00
Brian Paul
db251d72c8 bump version to 6.3.1 2005-07-21 18:46:49 +00:00
Brian Paul
7a37189adc 6.3.1 updates 2005-07-21 18:45:54 +00:00
Brian Paul
f87bb14b0b updated with DRI building instructions 2005-07-21 18:45:44 +00:00
Brian Paul
dff11bb9a8 bump version to 6.3.1 and include DRI/GLX files in tarballs 2005-07-21 18:44:52 +00:00
Brian Paul
98b06bcbeb make i810PrintSetupFlags() static, first param const 2005-07-21 18:11:24 +00:00
Brian Paul
7b5c506c0e first 6.3.1 bug fixes 2005-07-21 15:58:16 +00:00
Brian Paul
7cf480e6fe s/2004/2005/ 2005-07-21 15:57:29 +00:00
Brian Paul
951dbf08e7 check for FEATURE_EXT_framebuffer_object to enable EXT_framebuffer_object 2005-07-21 15:48:39 +00:00
Brian Paul
49e74989c3 remove ^M chars, disable shading language extensions 2005-07-21 15:41:56 +00:00
Eric Anholt
3e8efc3753 Clean up warnings in r300 code by making some symbols static, adding prototypes
for others, and being cleaner with types in fragment/vertex program structures.
One warning in r300_shader.c is still concerning.
2005-07-20 23:24:55 +00:00
Eric Anholt
aeb0ee771b Connect the r300 bits up to the build. 2005-07-20 22:08:06 +00:00
Eric Anholt
6ae76788a7 Add some missing defines, copied from linux-dri. 2005-07-20 22:07:29 +00:00
Eric Anholt
e98494d0a4 Forced commit to note repocopy from r300.sf.net CVS. 2005-07-20 21:35:27 +00:00
Brian Paul
18014525a1 fix some URLs 2005-07-20 18:25:01 +00:00
Brian Paul
2276679c53 added md5 checksums for 6.3 2005-07-20 18:20:45 +00:00
Brian Paul
d4596584f6 more updates for 6.3 release 2005-07-20 18:07:11 +00:00
Brian Paul
6bb49eacfd updates for 6.3 release 2005-07-19 21:01:46 +00:00
Brian Paul
bfb5ea307e replace fprintf() calls with _mesa_problem() 2005-07-19 18:20:04 +00:00
Brian Paul
364ae78e69 remove fprintf() 2005-07-19 18:18:49 +00:00
Brian Paul
8d7d9c22f6 include driverfuncs.h 2005-07-19 15:34:44 +00:00
Brian Paul
2d47c07398 overlay planes test 2005-07-19 15:27:03 +00:00
Brian Paul
7e152b83cb s/clippping/clipping/ 2005-07-18 20:07:19 +00:00
Philippe Houdoin
ed886336e1 Fixed warnings by using GLUTProc type instead of anonymous (void *) for
GLUT callbacks.
2005-07-18 19:27:49 +00:00
Alan Hourihane
5343ae8304 re-enable the ffb driver 2005-07-18 13:53:03 +00:00
Alan Hourihane
df88dfe1df Fix the FFB driver for the renderbuffer changes
Support NEW INTERFACE as well
2005-07-18 13:52:34 +00:00
Alan Hourihane
c235a96a71 pass in the renderbuffer 2005-07-18 13:50:06 +00:00
Ian Romanick
aa8ff1e75d Missed this on the previous commit. 2005-07-18 12:33:03 +00:00
Ian Romanick
9bdfee3a47 Wrap every place that accesses a dispatch table with a macro. A new script-
generated file, called src/mesa/glapi/dispatch.h, is added.  This file
contains three macros for each API function.  It contains a GET, a SET, and
a CALL.  Each of the macros take a pointer to the context and a pointer to
the dispatch table.

In several threads on mesa3d-dev we discussed replacing _glapi_add_entrypoint
with a new function called _glapi_add_dispatch.  For this discussion, the
important difference between the two is that the caller of _glapi_add_dispatch
does *not* know what the dispatch offset will be at compile time.  Because of
this callers need to track the dispatch offset returned by
_glapi_add_dispatch.

http://marc.theaimsgroup.com/?t=111947074700001&r=1&w=2

The downside is that driver code then has to access the dispatch table two
different ways.  It accesses it using structure tags (e.g., exec->Begin) for
functions with fixed offsets and via a remap table (e.g., exec[
remap->NewExtensionFunction ]) for functions without fixed offsets. Yuck!

Using the macros allows both types of functions to be accessed
identically.  If a driver needs to set a pointer for Begin, it does
'SET_Begin(ctx, exec, my_begin_function)'.  If it needs to set a pointer
for NewExtensionFunction, it does 'SET_NewExtensionFunction(ctx, exec,
my_NewExtensionFunction_function)'.  Furthermore, if at some point in
the future a static offset is assigned for NewExtensionFunction, only
the macros need to change (instead of every single place that accesses a
table for that function).

This code differs slightly from the originally posted patches in that the
CALL, GET, and SET marcos no longer take a context pointer as a parameter.
Brian Paul had suggested that the remap table could be stored as a global
since it would be set at CreateScreen time and would be constant for all
contexts.  This change reflects that feedback.

http://marc.theaimsgroup.com/?t=112087194700001&r=1&w=2
2005-07-18 12:31:24 +00:00
Adam Jackson
e0e993c5ff XMesaResizeBuffers needs separate paths for client and server builds 2005-07-16 04:02:05 +00:00
Adam Jackson
c529f6bf70 strip out vestigial #ifdef HAVE_CONFIG_H stanzas, they're confusing the
modular X build
2005-07-16 00:56:20 +00:00
Brian Paul
8d3aca655e disable call to via_sse_memcpy() until it's fixed 2005-07-15 23:13:46 +00:00
Brian Paul
1f88391747 need to flush vertices for GL_OCCLUSION_TEST_RESULT_HP query 2005-07-15 23:08:06 +00:00
Brian Paul
d39760d718 Check for null program->Parameters pointer in validate_vertex_program().
GL_NV_vertex_program programs can't directly reference GL state so this
pointer is always NULL.
2005-07-15 22:48:09 +00:00
Brian Paul
df0350b7ec added comments 2005-07-15 22:47:00 +00:00
Brian Paul
b0489d4f82 remove duplicate "User disable" string 2005-07-15 20:17:02 +00:00
Brian Paul
8ec981c469 redo previous check-in, just set ARCH_FLAGS = -m32 2005-07-15 14:31:31 +00:00
Brian Paul
4eb3a0f076 define CFLAGS and CXXflags with -m32 (Egbert Eich) 2005-07-15 13:58:58 +00:00
Brian Paul
4c72778251 replace gcc with $(CC) (Egbert Eich) 2005-07-15 13:55:20 +00:00
Brian Paul
badad72383 eglgears demo (Dane Rushton) 2005-07-14 23:16:41 +00:00
Brian Paul
c62c24c72f added a few more fallbackStrings (Andreas Stenglein) 2005-07-14 23:10:21 +00:00
Keith Whitwell
b127cfeb7a Use the LDEXPF wrapper macro. 2005-07-13 17:49:22 +00:00
Keith Whitwell
3f7cb794ea Add a LDEXPF wrapper macro. 2005-07-13 17:47:40 +00:00
Keith Whitwell
c472dcdac0 Wrap RESTORE_FPU/RND_NEG_FPU declarations with check for USE_SSE_ASM. 2005-07-13 13:50:31 +00:00
Keith Whitwell
ce721143b4 Cache texenv programs to avoid repeated compilation (Ben Skeggs) 2005-07-11 10:10:38 +00:00
Keith Whitwell
9311bc253e Add runtime compiled x87 implementations for most of the remaining
opcodes.  When enabled via environment vars, gears runs and almost
looks right but other apps are still quite buggy.
2005-07-10 11:23:10 +00:00
Keith Whitwell
0cfbd849ec Add lots of x87 fpu instructions. 2005-07-10 11:14:00 +00:00
Ian Romanick
6d5d1f8a41 Restore linux-x86-32 config for Brian. 2005-07-08 21:55:56 +00:00
Ian Romanick
38e2fa385d Put back the glPopMatrix. This test was derived from blendminmax.c.
When extra code was cut from blendminmax.c's Display function, the
glPopMatrix call was also accidentally cut.
2005-07-07 20:43:01 +00:00
Ian Romanick
2550844c6e Correct the comments in the file headers. Oops. 2005-07-07 19:35:30 +00:00
Ian Romanick
259f096ed8 Add regression test for bug #3101. 2005-07-07 19:34:06 +00:00
Roland Scheidegger
f3186e5789 Re-enable r200InitSpanFuncs, which was ifdefed out (probably by mistake?),
so r200SetBuffer, r200SpanRenderStart and r200SpanRenderFinish get called again.
Bugzilla #3705, #3706.
2005-07-06 12:49:46 +00:00
Brian Paul
4cf6718725 The old MESA_PBUFFER_ALLOC() function allocated memory on 512-byte boundaries.
Restore that behavior with new _mesa_alloc_texmemory() function.
Should fix via_sse_memcpy() problem in found with flightgear.
2005-07-05 14:13:42 +00:00
Jon Smirl
78be0b5dad Put default back to the normal DRM path 2005-07-02 21:28:01 +00:00
Ian Romanick
f0ff50d4ed Add support for assembly (static) dispatch functions on x86-64. This
is basically patch #2939 from X.org bugzilla #3379.  This does *not*
fix the bug as it does not dynamically generate stubs at run-time.  It
just gets things one step closer.
2005-07-02 08:29:57 +00:00
Ian Romanick
1a9cac10b8 linux-x86-32 is unnecessary. The same thing can be acomplished by
'make linux-x86 ARCH_FLAGS=-m32'.
2005-07-02 07:48:41 +00:00
Ian Romanick
9204e87b2e Massive refactor of (most of) the Linux config files. This reduces
the length of each config and brings a lot of much needed uniformity
to them.
2005-07-02 07:38:40 +00:00
Ian Romanick
4f178c6e3a Add $(CFLAGS) to the link commands. This makes 'make linux-x86
ARCH_FLAGS=-m32' work correctly on x86-64 systems.
2005-07-02 07:12:44 +00:00
Ian Romanick
ef2ce9d003 Make linux-x86 more like the other linux configs. 2005-07-02 07:11:54 +00:00
Vladimir Dergachev
c1c684b0f3 Expose the fact that we do not do either selection of feedback buffers - either with software or hardware rendering. 2005-07-02 01:09:10 +00:00
Jerome Glisse
666dcaaf05 Adding RV350_NJ ID. 2005-07-01 21:26:43 +00:00
Jerome Glisse
7b12220256 Adapt extension string to new GL dispatch schema proposed
by Idr. This  patch is based on Idr patch to radeon driver.
Change #if 1 to #if 0 (r300_context.c:l69) for old dispatch
tab.
2005-07-01 21:22:05 +00:00
Karl Schultz
5f79d27b82 Update notes with VC7 info. 2005-07-01 21:08:00 +00:00
Karl Schultz
c136b41b09 Add windows VC7 project files to filelist for tar/zip files. 2005-07-01 20:31:41 +00:00
Karl Schultz
ee850657e6 VC7 project file for building glut lib 2005-07-01 20:25:57 +00:00
Karl Schultz
0cf67634bb VC7 project file for gears demo 2005-07-01 20:25:23 +00:00
Karl Schultz
101d05ad94 VC7 Solution file for building glut and demos 2005-07-01 20:24:49 +00:00
Karl Schultz
c5b6580c6f VC7 project file for osmesa 2005-07-01 20:23:52 +00:00
Karl Schultz
35a11c14ee VC7 project file for core mesa lib 2005-07-01 20:23:23 +00:00
Karl Schultz
ec171b7d02 VC7 project file for glu 2005-07-01 20:22:41 +00:00
Karl Schultz
2de5f6e252 VC7 project file for gdi driver 2005-07-01 20:21:45 +00:00
Karl Schultz
b64d60a2a6 Visual Studio 7 solution file for mesa lib 2005-07-01 20:19:47 +00:00
Karl Schultz
eac7688231 Don't #define __FUNCTION__ on a Microsoft C compiler new enough to have it. 2005-07-01 20:11:46 +00:00
Keith Whitwell
219f3c4489 Set fp->Opcode for OP_TEX_KILL case, fix from Ben Skeggs. 2005-07-01 17:12:29 +00:00
Karl Schultz
06abb854f0 Add new files to project. 2005-07-01 15:59:33 +00:00
Karl Schultz
7fe8696d01 Use frexp on Windows; frexpf is not available. 2005-07-01 15:58:02 +00:00
Karl Schultz
9b56781986 Fix a prototype 2005-07-01 15:56:14 +00:00
Roland Scheidegger
758f334717 convert sis and radeon driver to use spantmp2 instead of spantmp template. Remove old (pre-renderbuffer) span code instead of converting that too. Remove this old code from mach64 (the dead code was not fully converted to spantmp2 previously) too. 2005-07-01 11:28:14 +00:00
Brian Paul
8e8fa63cb4 comment-out some unused code to silence warnings 2005-07-01 02:03:33 +00:00
Brian Paul
559c494fc8 replace some free() calls with _mesa_free() 2005-07-01 02:03:00 +00:00
Brian Paul
03f52fea63 updates to file list for tarballs 2005-07-01 01:55:30 +00:00
Brian Paul
6d3284efd4 fix dependencies 2005-07-01 01:54:38 +00:00
Brian Paul
58a9573b08 added some glGetRenderbufferParameterivEXT calls, printfs, and assertions 2005-07-01 01:34:29 +00:00
Brian Paul
0d34c0158d fix typo in assertions 2005-07-01 01:30:03 +00:00
Brian Paul
f4f1c29597 Move the PYTHON2 and PYTHON_FLAGS assignments to configs/current, and
include $(TOP)/configs/current in glapi/Makefile so those vars can be
easily overridden by any system config, if needed.
2005-07-01 01:27:00 +00:00
Brian Paul
bb5c84fcbc Remove NEW_RENDERBUFFER stuff.
Now, OLD_RENDERBUFFER marks code that needs to eventually be removed when
all the drivers are updated to no longer need the SetBuffer() function.
2005-07-01 01:22:25 +00:00
Brian Paul
446e258940 remove OLD_RENDERBUFFER code 2005-07-01 01:10:36 +00:00
Brian Paul
54fb9226e4 remove OLD_RENDERBUFFER stuff 2005-07-01 01:08:29 +00:00
Brian Paul
30aea49cf6 minor fixes 2005-07-01 01:04:31 +00:00
Roland Scheidegger
cf5b2f7419 remove common macros used in the span functions of most drivers from the individual drivers and put them in common code. It is still possible for a driver to define its own macros if it has special needs. This affects CLIPPIXEL, CLIPSPAN, HW_CLIPLOOP, HW_ENDCLIPLOOP, and for drivers using the spantmp2 template also GET_SRC_PTR and GET_DST_PTR. 2005-07-01 00:08:46 +00:00
Ian Romanick
c212abf99a Replace add_newer_entrypoints (src/mesa/main/context.c) with
device-specific code.  A new Python script
(src/mesa/glapi/extension_helper.py) generates a list of all
entry-points for all known extensions.  Each driver the selects only
the extensions that it needs and enables the via either
driInitExtensions or driInitSingleExtension.

This code has been compile-tested on a drivers, but has only been
run-tested on mga and i915 (on i830 hardware).

These changes were discussed at length on the mesa3d-dev mailing list.

http://marc.theaimsgroup.com/?t=111947074700001&r=1&w=2
2005-06-30 16:00:48 +00:00
Brian Paul
1ac8ae446a remove \n from warning message string 2005-06-30 14:24:44 +00:00
Brian Paul
aa70253cbb added newline at end of file 2005-06-30 14:23:40 +00:00
Brian Paul
049e320f46 Add a set of predicate functions for testing matrices instead of directly
testing the flags field.
Move definition of all the MAT_FLAGs into the m_matrix.c file since they're
now private.
2005-06-30 14:22:23 +00:00
Brian Paul
f138b977d0 Redo all the GL_LINEAR interpolation code in terms of LERP macros/functions.
This cleans up and simplifies the arithmetic quite a bit.
2005-06-30 13:42:10 +00:00
Roland Scheidegger
4d652b7855 Fix crashes with pixel readback when using the optimized assembly functions.
Pixel count can be negative (this could be fixed elsewhere), so adapt the
functions to work with such inputs correctly (same behaviour as non-optimized
functions).
Bugzilla #2317
Submitted by idr
2005-06-30 11:42:56 +00:00
Aapo Tahkola
b0d62880e8 -"fix" page flipping
-use depth tiling if tiling is enabled
2005-06-30 04:37:19 +00:00
Brian Paul
0e55891674 fix a few glitches 2005-06-30 02:34:07 +00:00
Brian Paul
ccda2162f6 fix Darwin dynamic lib naming 2005-06-30 02:33:25 +00:00
Brian Paul
b6c0d753fa just code clean-ups and new comments 2005-06-28 03:48:08 +00:00
Vladimir Dergachev
ec17e7941a Uncomment a couple of helper functions.
Fix slipup from CVS update that was commented out and did not show up during compilation.
2005-06-27 18:46:31 +00:00
Vladimir Dergachev
b6c5116171 Rename unchecked state to match DRM driver.
Emit wait idle and pacify r300 before emitting state - this seems to improve stability.
2005-06-27 15:56:14 +00:00
Brian Paul
84f8d7aafb include t_vp_build.h 2005-06-27 00:45:36 +00:00
Brian Paul
39a488ed63 remove unused MEMSET16 macro 2005-06-27 00:39:33 +00:00
Brian Paul
2dbffb30f0 Get rid of the MESA_PBUFFER_ALLOC/FREE() macros.
If that stuff is still needed, lots of other updates are needed anyway.
Also, some misc MALLOC/FREE -> _mesa_malloc/free() changes.
2005-06-27 00:34:17 +00:00
Brian Paul
397088ff5e added _tnl_ProgramCacheDestroy() prototype 2005-06-27 00:30:56 +00:00
Brian Paul
c43f03e38d make create_new_program() static 2005-06-27 00:30:37 +00:00
Eric Anholt
3f9839a52b Fix crashes during rasterization fallback by avoiding _tnl_need_projected_coords
during fallbacks.  In one case, _swsetup_Wakeup had just been called, covering
the need there, and in the other case, we can simply exit the entire
radeonChooseVertexState function, knowing that it will be called again once we
leave the fallback.

Bugzilla #:	2516
Submitted by:	sroland
2005-06-26 21:57:23 +00:00
Eric Anholt
a4eb693b5f Remove the #if 0-ed out old span code. 2005-06-26 21:54:43 +00:00
Eric Anholt
32b898126e Explain the reason for TCL fallback when GL_SPHERE_MAP happens with
RADEON_DEBUG=fall.
2005-06-26 21:53:11 +00:00
Eric Anholt
3b817fde88 Zero out the ENGPACKET allocated on the stack, to avoid sending uninitialized
values to reserved fields on the card, resulting in all-black output and
sometimes hangs.

Submitted by:	Thomas Winischhofer
2005-06-26 21:02:58 +00:00
Brian Paul
845f2a7350 fix for-loop in _mesa_GetDouble to avoid out of bounds memory read 2005-06-26 20:08:23 +00:00
Brian Paul
f8582b6c1f check for null oldBuffer in _mesa_realloc(), cleaned up some comments 2005-06-26 19:57:17 +00:00
Brian Paul
394fd40a53 need parenthesis in realloc call 2005-06-26 19:53:52 +00:00
Ian Romanick
4e1aae6e0e Ignore files generated as part of the build process. 2005-06-24 18:54:57 +00:00
Ian Romanick
5aafea03af Fix non-x86 specific builds. The changes from glTexImage3DEXT to
glTexImage3D that caused me so many problems during the re-development
of the API scripts reared its ugly head again.  This has been fixed by
tracking the parameter string for each entry-point individually.

This has the annoying side-effect that the names of the parameters in
all aliases of a function must be the same or gl_apitemp.py will
generate bad code. :(  The changes in
src/mesa/glapi/{gl_API.xml,glapitable.h} and src/glx/x11/* are caused
by fixing the parameter names in various function aliases that didn't
match.

Reported by: Eric Anholt, Jacob Jansen
2005-06-24 18:35:31 +00:00
Jeremy Kolb
3fb86eefe8 Fixed the XCB implementation when always_array is true, thanks to Ian Romanick for pointing it out. Please review. 2005-06-24 02:28:02 +00:00
Brian Paul
1c5caba184 Remove the xmesa_set_buffer() function. No longer needed since the
span functions pass in a gl_renderbuffer to indicate which color
buffer should be drawn into.  Optimized line/triangle routines are
smart enough to know which buffer to draw into as well.
The swrast->SetBuffer() routine should eventually be removed from
all drivers.
2005-06-23 15:09:32 +00:00
Ian Romanick
2636e853f6 Mark GenQueriesARB at 'always_array="true"'. This eliminates the need
to special-case the handling of that function in glX_proto_send.py.
2005-06-22 17:11:20 +00:00
Jeremy Kolb
814e5360b0 Fixed a bug where GenQueriesARB was generating the wrong code for XCB and wouldn't compile. Not sure how that slipped through before but it should work now. 2005-06-22 02:36:23 +00:00
Ian Romanick
66a5548fbb Mammoth update to the Python code generator scripts that live in
src/mesa/glapi.  Basically, the scripts that did simple things (like
gl_offsets.py) were simple, and the scripts that did more complicated things
(like glX_proto_send.py) were getting progressively more and more out of
control.  So, I re-write the foundation classes on which everything is based.

One problem with the existing code is that the division between the GL API
database representation and the way the output code is generated was either
blury or nonexistant.  The new code somewhat follows the
Model-View-Controller pattern, minus the Controller.  There is a distinct
set of classes that model the API data, and there is a distinct set of
classes that generate code from that data.

One big change is in the class that represents GL functions (was glFunction,
is now gl_function).  There used to be an instance of this calls for each
function and for each alias to that function.  For example, there was an
instance for PointParameterivSGIS, PointParameterivEXT, PointParameterivARB,
and PointParameteriv.  In the new code, there is one instance.  Each
instance has a list of entrypoint names for the function. In the next
revision, this will allow a couple useful things.  The script will be able
to verify that the parameters, return type, and GLX protocol for a function
and all it's aliases match.

It will also allow aliases to be represented in the XML more compactly.
Instead of repeating all the information, an alias can be listed as:

     <function name="PointParameterivARB" alias="PointParameterivEXT"/>

Because the data representation was changed, the order that the alias
functions are processed by the scripts also changed.  This accounts for at
least 2,700 of the ~3,600 lines of diffs in the generated code.

Most of the remaining ~900 lines of diffs are the result of bugs *fixed* by
the new scripts.  The old scripts also generated code with some bugs in it.
These bugs were discovered while the new code was being written.

These changes were discussed on the mesa3d-dev mailing list back at the end
of May:

http://marc.theaimsgroup.com/?t=111714569000004&r=1&w=2

Xorg bug: 3197, 3208
2005-06-21 23:42:43 +00:00
Nicolai Haehnle
f292e13a20 Back out the actual enabling of depth tiling.
Depth tiling breaks software fallbacks and depth buffer reads.
radeon_span.c **must** be updated for anything that is related to tiling.
2005-06-21 17:18:00 +00:00
Nicolai Haehnle
1e4744d2b9 Add PCI ID for R420 JI.
The driver appears to work reliably (i.e. lockup-free) with a card based
on this chip. However, I have not explored whether we could get anything
in terms of 3D performance "for free" just by setting some magic bits
in those registers that are still a mystery to us.
2005-06-21 17:03:29 +00:00
Aapo Tahkola
ebd99043ed r300 driver side of color tiling support. 2005-06-21 15:41:03 +00:00
Nicolai Haehnle
a5fb15cb87 Make sure texture base addresses are used correctly.
They are relative to the card's address space, not relative to fbLocation,
which will be important once we program MC_FB/AGP_LOCATION in the way
they are programmed on older Radeon chips.
2005-06-21 15:21:14 +00:00
Brian Paul
04f863e856 check for NULL swrast->Driver.SetBuffer before calling it 2005-06-21 14:39:43 +00:00
Brian Paul
23606a5704 updated to version 29 2005-06-21 14:30:46 +00:00
Brian Paul
90b40c33e7 include light.h to silence warning 2005-06-21 03:38:10 +00:00
Brian Paul
dc137ddb3f DirectFB updates (Claudio Ciccani) 2005-06-20 18:29:28 +00:00
Jeremy Kolb
a6a3e01b09 ran "make" after update to glX_proto_send.py. 2005-06-20 03:18:16 +00:00
Jeremy Kolb
4378dee78c Fixed some issues where XCB replies were being freed and data was not being copied. 2005-06-20 03:12:35 +00:00
Brian Paul
38332a6d94 Define __FUNCTION__ as a preprocessor symbol in glheader.h if we're not
using GCC or VMS.
2005-06-19 14:57:34 +00:00
Aapo Tahkola
4e7df27466 Fix gloss breakage when using hw tnl. 2005-06-16 11:57:45 +00:00
Aapo Tahkola
3c6f17be32 Use depth tiling. 2005-06-16 11:41:19 +00:00
Aapo Tahkola
af02907b4c Support 16-bit modes. 2005-06-16 10:40:39 +00:00
Aapo Tahkola
463c1d6c57 Fix problems with elts when immediate mode is on. 2005-06-16 10:27:04 +00:00
Aapo Tahkola
0e288e58ef Turn off VBO's. 2005-06-16 10:21:01 +00:00
Aapo Tahkola
3176f8e2e1 lost_context never gets reset. 2005-06-16 10:05:18 +00:00
Jon Smirl
6c2098ffd4 Fix a few compiler warnings 2005-06-16 04:25:45 +00:00
Jon Smirl
f445aaa67a Fix linux-solo build for mga check-in 2005-06-16 03:45:48 +00:00
Ian Romanick
aa26915472 Adds support for MGA DRM version 3.2.
This patch makes use of two of the new ioctls added in MGA DRM version
3.2.  Specifically, the DRM_MGA_SET_FENCE and DRM_MGA_WAIT_FENCE
ioctls are used in mgaWaitForFrameCompletion.  As a result the MMIO
register region and the primary DMA region are *not* mapped (if DRM
3.2 is available).

This patch does *not* make use of the new get_param query was added to
differentiate between G4x0 cards and G550 cards.  That is left to a
future update.

Xorg bug: 3259
Reviewed by: Eric Anholt
2005-06-14 22:51:44 +00:00
Jouk Jansen
fb818a0b11 Committing in .
OpenVMS updates

 Modified Files:
 	Mesa/src/mesa/tnl/descrip.mms Mesa/src/mesa/tnl/t_vp_build.c
 ----------------------------------------------------------------------
2005-06-14 10:27:05 +00:00
Jon Smirl
6b9d9c5039 fbSwapBuffers needs to return a status 2005-06-13 14:21:34 +00:00
Brian Paul
2d218885ec mingw changes (Nolan Leake) 2005-06-13 14:07:14 +00:00
Vladimir Dergachev
902e70875d Fixed typos. 2005-06-12 14:57:02 +00:00
Vladimir Dergachev
b675c48027 Add definition for memory controller latency registers.. 2005-06-10 16:10:50 +00:00
Keith Whitwell
4476978856 remove debug prints 2005-06-10 14:58:32 +00:00
Brian Paul
252d8e78cc be sure we have span texcoords before calling _swrast_texture_span() 2005-06-10 14:37:32 +00:00
Brian Paul
5d6ecf25f8 pass mask array to PutRowRGB() in simple_z_textured_triangle() 2005-06-10 14:36:55 +00:00
Keith Whitwell
b4979ec178 Allow the print opcode to compile 2005-06-10 13:59:49 +00:00
Keith Whitwell
6c1948d593 Fix typo in spot attenuation 2005-06-10 13:35:31 +00:00
Keith Whitwell
729cccba5d Correct test for attenuation.
DISSASEM changes.
2005-06-10 12:04:47 +00:00
Keith Whitwell
7e8e4c500e remove depend files on clean 2005-06-10 10:43:02 +00:00
Keith Whitwell
f6e7cfb60d Fix colormaterial flag calculations.
Fix lighting alpha result.
2005-06-10 08:33:37 +00:00
Keith Whitwell
52608d2d21 Add notes about intended precision of opcodes.
Remove dead floating point twiddles.
Fix bug translating MAD->MUL,ADD.
2005-06-10 08:32:27 +00:00
Keith Whitwell
1c48986e54 Fix a couple of buglets 2005-06-09 22:10:23 +00:00
Keith Whitwell
1fc4bcbb17 Another typo 2005-06-09 19:03:18 +00:00
Keith Whitwell
44367aab2a Further clean up RoughApproxPow2 and disable the optimized version --
it's a very poor approximation.
2005-06-09 18:59:41 +00:00
Keith Whitwell
2c6e8e90ec Fix typo in RoughApproxPow2 2005-06-09 18:52:42 +00:00
Keith Whitwell
81032030ff Store compiled vertex program representations in a pointer in the
vertex_program struct.

Allow switching between regular and vertex_program implementations
of fixed function TNL with the MESA_TNL_PROG environment var
(previously this required recompilation).

Ensure program compilation only references program data, not the
wider context.  This means that compiled programs only need to be
invalidated when the program string changes, not on other state
changes.
2005-06-09 14:55:34 +00:00
Keith Whitwell
a8534885ef Build vertex programs using state from a 'state key' struct which is
distilled from the current state.

Maintain a list of vertex programs for various different tnl states
indexed by these state keys.

This cuts down the number of vertex programs generated and means that
time spent optimizing vertex programs for execution isn't wasted each
time the state changes.
2005-06-09 14:52:08 +00:00
Keith Whitwell
79b7bd18bb Turn off debug 2005-06-08 22:14:29 +00:00
Keith Whitwell
8e56122782 Add t_vb_arbprogram_sse.c 2005-06-08 22:10:34 +00:00
Keith Whitwell
ea93b2986b Runtime generate sse/sse2 code for some vertex programs. Experimental
and only active when _TNL_FIXED_FUNCTION_PROGRAM is defined *and*
the MESA_EXPERIMENTAL environment variable is set...
Works for the arbfplight demo at least.
2005-06-08 22:10:16 +00:00
Keith Whitwell
002d0ad3e9 Turn off DISASSEM 2005-06-08 22:06:29 +00:00
Keith Whitwell
562bdaf70e New arguments for sse_shufps() 2005-06-08 21:58:30 +00:00
Keith Whitwell
9899f58c76 Use ALIGN_MALLOC for parameter lists. 2005-06-08 21:57:45 +00:00
Keith Whitwell
dce3a91a8d Add some more opcodes 2005-06-08 21:56:21 +00:00
Ben Skeggs
2d2f5a4b19 - Secondary colour
- Calculate tc_count in EmitArrays (enabled units != nr texcoords).
2005-06-08 15:05:19 +00:00
Brian Paul
ee7ad16f3f regenerated 2005-06-08 13:35:28 +00:00
Brian Paul
2c7336af4e put full prototype on one line to fix gl_mangle.h generation (Dave Reveman) 2005-06-08 13:35:07 +00:00
Brian Paul
012de39c23 remove stray line 2005-06-08 13:07:33 +00:00
Keith Whitwell
60339c7062 Remove ARL opcode from interpreter.
Revert SEL opcode to MSK.
Split out t_vb_arbprogram.h header file.
2005-06-08 10:03:29 +00:00
Keith Whitwell
7fb16836e7 new file 2005-06-08 10:02:28 +00:00
Brian Paul
d45cb9a836 regenerate for latest glext.h 2005-06-08 02:18:22 +00:00
Brian Paul
681b758f11 fix some renderbuffer problems for Xserver build (Dave Reveman) 2005-06-08 02:17:10 +00:00
Brian Paul
a0b5c98364 check for double-buffered buffer in XMesaDestroyBuffer() (Dave Reveman) 2005-06-08 02:14:55 +00:00
Daniel Borca
31d0cedd78 updates from Paul Garceau 2005-06-07 19:01:33 +00:00
Brian Paul
7477a7d366 added GL libs to APP_LIB_DEPS (bug 3485) 2005-06-07 15:30:12 +00:00
Brian Paul
4417d4cb61 fix error in OSMESA_LIB_NAME line 2005-06-07 15:25:08 +00:00
Brian Paul
ed7f3aead8 fix GL_ALPHA render-to-texture problem (Jon Smirl) 2005-06-07 15:03:40 +00:00
Keith Whitwell
395280bf88 Initialize some variables. 2005-06-07 12:46:30 +00:00
Keith Whitwell
a4691981d9 Add new runtime assembly files. 2005-06-07 12:45:29 +00:00
Keith Whitwell
1d60469c4c Split out runtime assembly functions. 2005-06-07 12:45:04 +00:00
Keith Whitwell
461a2a799a New files - split off runtime assembly functions from
t_vertex_sse.c.
2005-06-07 12:44:26 +00:00
Keith Whitwell
757e0855ad Simplify interpreted language:
- Expand operand argument specifiers so that all registers and
  parameters can be referenced directly.  Remove old PAR/PRL
  instructions.

- No 3 operand instructions, translate MAD -> MUL, ADD.  (No room for
  3 full operands in instruction struct).

- Translate SWZ instructions into 1 or 2 reduced swizzles at compile
  time.

- Add hardwired code for moving input and output values to/from the
  register file.  Drop old INx, OUT instructions.
2005-06-07 10:59:37 +00:00
Keith Whitwell
17d249d31b Add a VP_MAX_OPCODE entry to allow engines with internal opcodes to
place them sensibly.
2005-06-07 10:56:17 +00:00
Daniel Borca
4f923fb0bc updates from Paul Garceau 2005-06-07 05:29:38 +00:00
Jon Smirl
c20a2b0b72 Add SetBuffer to egl driver too 2005-06-07 02:10:14 +00:00
Jon Smirl
ef9e0be0cb Add a NULL SetBuffer function to the fbdev driver 2005-06-06 21:40:55 +00:00
Brian Paul
2e7dcdd38b this is auto-generated 2005-06-06 14:40:56 +00:00
Ben Skeggs
d59fbcdee5 TEX to output 2005-06-06 07:38:29 +00:00
Ben Skeggs
3c4c6d1f80 Fix xyz/w interaction (needs a cleanup still..)
Use SRC0A instead of WZY/XXX combination for W in XYZ positions.
Remove dodgy hack from POW opcode, now works correctly without it
2005-06-05 08:25:54 +00:00
Jon Smirl
40b8b57ed4 Make install install GLES too 2005-06-05 02:10:58 +00:00
Brian Paul
df5e2b934b set OLD_RENDERBUFFER=0, need to clean up a few more things before totally removing that 2005-06-04 22:09:27 +00:00
Brian Paul
d96dd3cd49 remove old span functions from swrast_device_driver struct 2005-06-04 18:25:39 +00:00
Brian Paul
bb8b302dbc remove old span code 2005-06-04 18:12:28 +00:00
Brian Paul
5ec5c6b222 fix an assertion 2005-06-04 17:53:30 +00:00
Brian Paul
863bd56520 remove old span code 2005-06-04 17:45:50 +00:00
Brian Paul
5821f3d70c added comment 2005-06-04 17:44:42 +00:00
Karl Schultz
5b10d71559 Fixup file lists for tarball/zip file creation.
- Adjust for recent changes to Windows build files.
- Add in at least some of the new slang files - enough to build on
Windows, but some of the other slang-related files may still need to be
added.  (Will probably get corrected just prior to next release, if needed)
2005-06-03 15:24:55 +00:00
Karl Schultz
516546ad5b Updates for new Windows build system. 2005-06-02 23:17:02 +00:00
Brian Paul
3fe9c40cb2 Remove last of the old span code. 2005-06-02 04:09:05 +00:00
Brian Paul
13c8f985d9 oops, undo previous change 2005-06-02 04:07:08 +00:00
Brian Paul
1516f559bc start removing old (pre-renderbuffer) span code 2005-06-02 04:05:45 +00:00
Jouk Jansen
c4fbdb090c Committing in .
OpenVMS makefile added

 Added Files:
 	Mesa/src/mesa/shader/grammar/descrip.mms
 ----------------------------------------------------------------------
2005-06-01 12:07:15 +00:00
Jouk Jansen
589a3a3f6e Committing in .
Update OpneVMS compilesupport

 Modified Files:
 	Mesa/src/mesa/shader/descrip.mms
 	Mesa/src/mesa/shader/slang/descrip.mms
 	Mesa/src/mesa/shader/slang/slang_compile.c
 	Mesa/src/mesa/shader/slang/slang_storage.c
 	Mesa/src/mesa/shader/slang/slang_storage.h
 ----------------------------------------------------------------------
2005-06-01 12:05:34 +00:00
Eric Anholt
f090fdc50b Move fallback and other debugging under TDFX_DEBUG using the same mechanism
as other drivers.
2005-06-01 08:22:57 +00:00
Eric Anholt
d638f6a0bb Add no_rast option. 2005-06-01 07:44:52 +00:00
Keith Whitwell
502504de23 Add a mode to test flat shading + separate specular. 2005-06-01 07:02:23 +00:00
Eric Anholt
f772e3dd15 Fix the 3dfx driver by correcting what appears to be a typo GL_RGBA8 instead
of GL_RGBA in driNewRenderbuffer of the backbuffer.
2005-06-01 02:59:12 +00:00
Brian Paul
c7264415b6 added code to detect GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT error 2005-06-01 00:50:23 +00:00
Brian Paul
1b93953fbc add support for GL_RENDERBUFFER_RED/GREEN/BLUE/etc_SIZE_EXT querie 2005-05-31 23:55:21 +00:00
Brian Paul
5d5100aabc remove temporary GL_EXT_framebuffer_object info 2005-05-31 23:54:44 +00:00
Brian Paul
2e081cd90e updated to version 28 2005-05-31 23:54:24 +00:00
Eric Anholt
0009e3d97d Bugzilla #2708: Disable the fallback on GL_SPHERE_MAP. It appears to hurt more
than it helps, and we seem to have a handle on how to fix it.
2005-05-31 23:32:47 +00:00
Alan Hourihane
628b18b8ca Add Intel(R) 945G support (Keith Whitwell, Tungsten Graphics) 2005-05-31 18:10:03 +00:00
Aapo Tahkola
4ec6eceea9 Causes lockups on some rare cases. 2005-05-31 05:53:38 +00:00
Eric Anholt
8c2a9a9166 Pull locking out of HW_LOCK/UNLOCK and into SpanRenderStart/Finish. Also do
some cleanups on the span macros.  This does not deal with the brokenness of
depth spans, but makes the code more readable.
2005-05-31 05:31:43 +00:00
Eric Anholt
ef377c3c00 Correct the descriptions of the glBlend{Equation,Func} fallbacks in r128, and
remove those descriptions and the corresponding bits on r200, where they're no
longer used.
2005-05-31 04:26:13 +00:00
Eric Anholt
b79c47e90c Remove unused CTX_ARG2 define. 2005-05-31 04:13:45 +00:00
Eric Anholt
8a1df96862 Bugzilla #2195: Convert the radeon driver to the t_vertex interface. This cuts
about 200 lines from the code and 25k from the binary, while matching other
drivers more closely.  In the worst case (tcl_mode=0) it appears to have
a performance cost of 4.4% +/- 0.3% on quake3 (800x600 demofours, 1ghz p3,
rv200).  Tested on ut2004, ut, q3, projtex.

Submitted by:	Andreas Stenglein <a.stenglein@gmx.net>
2005-05-31 04:04:24 +00:00
Eric Anholt
9dff2ca07a Move fallback debugging under MACH64_DEBUG=fall (matching other drivers) and
add pretty descriptions of the bits.  GC one of the bits that was unused.
Also, now only the first thing triggering a fallback and the last thing
requiring one do the debug output.  This also matches other drivers.
2005-05-31 03:47:39 +00:00
Eric Anholt
12eabeb3b9 Pull locking out from HW_LOCK/UNLOCK into SpanRenderStart/Finish. Provides a
factor of 5+ improvement in no_rast glxgears and 2.3 in no_rast quake3 (n=1,
320x240, 16bpp, low qualities, 1ghz p3)
2005-05-30 08:07:03 +00:00
Eric Anholt
c7f8d36451 Fix software fallbacks by being safe with macro arguments in READ/WRITE_DEPTH.
Convert to spantmp2.h while I'm here.  Tested with 16 and 32bpp no_rast
glxgears.
2005-05-30 06:50:17 +00:00
Eric Anholt
993d8ad5ef Add the no_rast debug option to mach64. It shows that software fallbacks are
pretty broken.
2005-05-30 06:41:19 +00:00
Eric Anholt
b328dded75 Pull hardware locking out into SpanRenderStart/Finish rather than
HW_LOCK/UNLOCK. Provides a 61% performance improvement in no_rast=true quake3
(n=2, 320x240, 16bpp, p4 1ghz), and a factor of 3 improvement in no_rast
glxgears.
2005-05-30 06:15:29 +00:00
Eric Anholt
c1b87b2a06 Add the description of the no_rast option fallback so that MGA_DEBUG=fall
doesn't segfault with no_rast.
2005-05-30 06:11:22 +00:00
Eric Anholt
0936eeb456 Add the no_rast debug option, which I used in some testing. 2005-05-30 03:32:52 +00:00
Eric Anholt
f2149a7a66 Remove unused CTX_ARG2. 2005-05-30 01:59:39 +00:00
Eric Anholt
0b73889d54 Put some fallback debugging output under DEBUG_FALLBACKS. 2005-05-28 23:45:39 +00:00
Eric Anholt
2962f88189 Add a missing EnsureCmdBufSpace, matching r200. 2005-05-28 22:56:16 +00:00
Eric Anholt
f054fa85d8 Add a freebsd-dri-amd64 config, and quiet makedepend slightly by making an
EXPAT_INCLUDES config variable (set on FreeBSD) which is then used in
Makefile.template's INCLUDES.
2005-05-28 20:17:06 +00:00
Jerome Glisse
2ed4c296d9 Some fixes 2005-05-28 12:18:32 +00:00
Dave Airlie
22b0a42465 use shared-core 2005-05-28 10:55:23 +00:00
Ben Skeggs
0bae91562e Up MAX_AOS_ARRAYS to 16. Do we need more? 2005-05-28 05:20:05 +00:00
Ben Skeggs
908dbc44c2 Play with swizzling a bit. 2005-05-28 03:19:56 +00:00
Aapo Tahkola
74e412c695 Programmable per-vertex point sizes and proper result reg assigns. 2005-05-28 01:02:00 +00:00
Aapo Tahkola
0080faf83e More optimal r300Clear. 2005-05-27 20:10:05 +00:00
Brian Paul
d322810e13 properly pop the GL_TEXTURE_GEN_ enable state 2005-05-27 14:44:14 +00:00
Karl Schultz
6580a6d561 Account for moved/new/removed files. 2005-05-26 18:22:13 +00:00
Ian Romanick
70dbbbf89a Fix gl_enums.py so that enums that are listed with the same name in
multiple places don't get generated multiple times.
2005-05-26 16:59:47 +00:00
Ian Romanick
497dd3e920 Minor correction to EXT_framebuffer_object XML. Fix gl_table.py so that it
generates the correct script name in the generated output.
2005-05-26 16:34:58 +00:00
Ian Romanick
249db89b00 Make a couple minor corrections to gl_API.xml. Fixes the name of an
extension that was missing the GL_ part and uses the core GL type names for
vertex buffer object functions instead of the ARB names.

Also commits the resulting changes to the generated code.  Some how, the
#if sequence disappeared in the 1.52 version of glapi_x86.S.
2005-05-26 16:24:35 +00:00
Keith Whitwell
020225496e Bump driver date. 2005-05-26 11:42:19 +00:00
Dave Airlie
69509641a8 make egl build first so we don't get wierd drivers linking to libs not available
yet
2005-05-26 04:24:09 +00:00
Dave Airlie
978d2fda3c make linux-solo and linux-solo-x86 config files hierarchical 2005-05-26 03:47:34 +00:00
Ben Skeggs
ae516306b4 constant tracking 2005-05-26 02:33:57 +00:00
Dave Airlie
e45b5a4fa8 use shared-core rather than shared 2005-05-26 01:40:34 +00:00
Dave Airlie
8e5099d6a0 use shared-core instead of shared 2005-05-26 01:40:00 +00:00
Ian Romanick
d2ee346a93 Fix a couple typeos in enum names. 2005-05-25 21:00:16 +00:00
Michal Krol
170999a103 change local var names from "asm" to "assem" - I guess it caused
gcc 3.3.5 to break, but not tested it
2005-05-25 15:09:32 +00:00
Michal Krol
d1834e8c10 a small utility to convert .syn files to its binary forms;
does not require any command line params;
2005-05-25 14:58:22 +00:00
Michal Krol
0432411837 silencium gcc warnings 2005-05-25 14:27:59 +00:00
Michal Krol
0f71c6691e add shader/slang/slang_assemble_assignment.c 2005-05-25 14:24:34 +00:00
Michal Krol
fc534034cc more slang code 2005-05-25 14:23:00 +00:00
Michal Krol
1de60fe47f ncrease stack size 2005-05-25 14:19:24 +00:00
Michal Krol
c16264b138 update grammar_mesa.c path 2005-05-25 14:00:22 +00:00
Michal Krol
1aadf1c039 moved from mesa/shader to mesa/shader/grammar 2005-05-25 13:58:36 +00:00
Michal Krol
1008f57f6f remove the GLSL spec wording;
reorder some elementary operators;
disable assignment "=" and equality "==" "!=" operators - they are
handled internally by the assembly generator;
fix minor typos
2005-05-25 13:43:32 +00:00
Michal Krol
2b73e5aaaf add mesa/shader/grammar to include list 2005-05-25 13:37:56 +00:00
Michal Krol
863eca9973 stand-alone vertsions of grammar_mesa - used by utilities;
DO NOT BUILD UNDER MESA
2005-05-25 13:35:39 +00:00
Keith Whitwell
39e14d2cff Provide initial values for some variables. 2005-05-25 13:35:21 +00:00
Keith Whitwell
741b980433 add special case for flat shaded + separate specular triangles 2005-05-25 13:34:52 +00:00
Michal Krol
3f6d985753 change the behaviour of enter and local_addr instructions 2005-05-25 13:20:59 +00:00
Keith Whitwell
49109d01c0 Disable polygon stipple - it seems to break if certain specific stipple
patterns are used, including the one generated by conform.
2005-05-25 10:17:19 +00:00
Keith Whitwell
8286abd798 Fix various issues with cliprects and MakeCurrent 2005-05-25 10:14:39 +00:00
Ben Skeggs
53d13e014f - Remove one of the loops in emit_arith
- Handle REPL_ALPHA in emit_arith (possibly incorrect for some things)
- Start on getting demos/arbfplight.c to look right.  Won't be animated yet,
  need to re-work const emit so we can update consts without re-translating
  the entire program.

Assertion in r300_state.c::setup_rs_unit needs to be disabled for it to
work.
2005-05-25 06:46:10 +00:00
Ian Romanick
f387c83ec1 Commit the changes propagated from Jeremy Kolb's changes to the Python
scripts in src/mesa/glapi.
2005-05-25 03:30:06 +00:00
Ian Romanick
e87ab8c05f Only use x86 / SSE assembly when USE_X86_ASM / USE_SSE_ASM are defined.
This makes the driver build on x86-64 again.
2005-05-24 23:03:15 +00:00
Karl Schultz
6b5afb0036 Cleanup some Windows junk. 2005-05-24 22:16:27 +00:00
Karl Schultz
89bf62cd49 project file for glut library 2005-05-24 22:06:59 +00:00
Karl Schultz
5dc31379c4 fix location of gears project 2005-05-24 22:04:03 +00:00
Karl Schultz
c97a3a3038 project file to build gears 2005-05-24 21:57:45 +00:00
Karl Schultz
7df5eddf6a Visual Studio 6 project file to build GLUT and some demos. 2005-05-24 21:51:58 +00:00
Karl Schultz
f7c0c4f485 moved to windows build dir 2005-05-24 21:17:42 +00:00
Karl Schultz
b4c8b34534 moved to windows build dir 2005-05-24 21:15:52 +00:00
Karl Schultz
45ab8cb08a Major code cleanup and begin using new render buffer interface. 2005-05-24 21:12:43 +00:00
Karl Schultz
b31b1f44f1 Change prototype for TextureMemCpy to return void* (was void). 2005-05-24 21:06:41 +00:00
Karl Schultz
7708b75d72 Visual Studio 6 project file for OSmesa library. 2005-05-24 21:02:51 +00:00
Karl Schultz
c73968af95 Visual Studio 6 project file for core Mesa. 2005-05-24 21:01:55 +00:00
Karl Schultz
9a726cdf8f Needed to build .cc files in Visual Studio 6. 2005-05-24 21:01:05 +00:00
Karl Schultz
7179810375 Visual Studio 6 project file for GLU library. 2005-05-24 21:00:03 +00:00
Karl Schultz
a1b07e187e Visual Studio 6 project file for Windows GDI driver. 2005-05-24 20:59:07 +00:00
Karl Schultz
39c0e51329 Visual Studio 6 workspace for Mesa libraries. 2005-05-24 20:57:15 +00:00
Karl Schultz
2f9722863d Removing in favor of new Windows build directory. 2005-05-24 20:50:56 +00:00
Daniel Borca
731f1b12a0 remove stupid flags 2005-05-23 22:02:53 +00:00
Keith Whitwell
2d5f12ae6b Initialize hw stencil renderbuffer. 2005-05-23 21:10:01 +00:00
Keith Whitwell
afa7f6a0f5 Disable recent sse change pending more testing. 2005-05-23 14:31:44 +00:00
Ben Skeggs
eeada48497 Implement enough of ARB_fragment_program for Keith's texenv program
generation in Mesa.  Requires most recent Mesa cvs to work correctly.

Swizzle code is possibly slow/buggy and will probably be replaced.

Old behaviour can be controlled by a #define in r300_context.h, if
no-one minds I'll remove the old code later on.

Also, disabled cube map extension.  AFAIK We don't support it yet,
and it causes issues with UT2004.
2005-05-23 14:14:19 +00:00
Keith Whitwell
0c4731b27c Use SSE for vertex emit -- another good speedup. 2005-05-23 12:25:43 +00:00
Keith Whitwell
17bcf9f816 Import Thomas Helstrom's SSE memcpy code from the via X.org driver.
Add a TextureMemCpy callback, called from texstore.c when copying
texture data via the memcpy_texture() path.
Enable this code in the via driver - 100% speedup in texdown.c results.
2005-05-23 12:17:27 +00:00
Keith Whitwell
eb9d6f44a9 silence gcc warnings 2005-05-23 12:15:19 +00:00
Keith Whitwell
241b6b7ab1 Detect use of disabled textures as tex_env_crossbar sources. 2005-05-23 09:50:34 +00:00
Keith Whitwell
2dea6df80b Support ARB_texture_env_crossbar. Changes the way programs are
generated somewhat, with all TEX instructions now emitted at the head
of the program.
2005-05-23 09:37:32 +00:00
Keith Whitwell
6fe176a648 Restore the negate() function.
Add Ben Skegg's ATI_texture_env_combine3 support.
2005-05-23 08:08:43 +00:00
Jerome Glisse
eb8be5d923 Small change to handle native case (7 natives case) 2005-05-22 12:24:52 +00:00
Jerome Glisse
446980473d Adding r300 fragment program swizzle tab. Please some
one reread macro at begining see if i made any error.
A full reread would also be usefull there may be some
errors for some swizzle despite the great care i took
to done them :)
2005-05-22 12:06:50 +00:00
Ian Romanick
b70a47736a Add support for modes with a depth-buffer but no stencil-buffer. This
eliminates various "3D driver claims to not support visual" messages in
16-bit color mode.
2005-05-20 18:40:11 +00:00
Keith Whitwell
3cc2f82bb5 Remove debug printfs 2005-05-20 15:12:12 +00:00
Keith Whitwell
923515b3f8 Re-enable X11 optimized triangle funcs. 2005-05-20 15:06:41 +00:00
Brian Paul
e3e8067db7 use MAX_SCREENS instead of hard-coded number 2005-05-20 14:11:11 +00:00
Brian Paul
8f384f0b67 fix reversed strstr() args, print mode string 2005-05-20 14:03:35 +00:00
Brian Paul
e58d32947e replace // with /* */ 2005-05-20 14:02:02 +00:00
Jouk Jansen
063efce6ee Committing in .
Update openVMS compile support

 Modified Files:
 	Mesa/progs/demos/descrip.mms
 	Mesa/src/mesa/shader/slang/descrip.mms
 	Mesa/src/mesa/tnl/descrip.mms
 ----------------------------------------------------------------------
2005-05-20 11:43:54 +00:00
Jon Smirl
bab559b1fa Remove some debug output
Add #if DEBUG_FRAG in s_nvfragprog.c
2005-05-20 01:17:38 +00:00
Adam Jackson
8f8e0f0b01 Use the 1.3 names for FogCoord* 2005-05-20 00:44:37 +00:00
Keith Whitwell
18a74321aa Invalidate current fastpath on changes to attribute size or offset within
the vertex.

Use existing facilities to check for sse2 and enable when available.

Turn on SSE/SSE2 codegen for t_vertex.c by default when USE_SSE_ASM is
defined.  Disable with "MESA_NO_CODEGEN=t".
2005-05-19 20:25:32 +00:00
Keith Whitwell
c2745ffa49 Cope with the common 3ub and 1ub cases.
Fix a few typos.
Note that sse_movss sets high dwords to zero when reading from memory.
Fix a few related bugs.
2005-05-19 19:02:46 +00:00
Keith Whitwell
9557401a98 Re-initialize viewport shadows each time. 2005-05-19 19:01:47 +00:00
Keith Whitwell
67cc1f6ba6 move osmesa demos to their own directory 2005-05-19 15:39:37 +00:00
Jon Smirl
c70dace694 Fix EGL fbdev palette problem. demo3 can save ppm of screen 2005-05-19 15:03:31 +00:00
Keith Whitwell
6040d34109 Rename emit functions to reflect instruction set in use (ie
x86,sse,sse2,mmx).  Add paths for sse+mmx vs. the initial version
which assumed sse2 was available everywhere.
2005-05-19 14:42:09 +00:00
Brian Paul
8608978aba remove the XFree86 ID line 2005-05-19 13:32:41 +00:00
Michal Krol
02168254a8 intermediate code generator (not finished);
generic back-end interpreter (interprets directly intermediate code)
2005-05-19 11:50:53 +00:00
Michal Krol
e5ff2b94ff add static_assert macro 2005-05-19 10:22:28 +00:00
Michal Krol
216f89318e fix info log grabbing 2005-05-19 09:28:01 +00:00
Aapo Tahkola
e3cdbca63f Ditch unused code and features that arent in subject to get supported any near time. 2005-05-19 00:03:50 +00:00
Ian Romanick
6bc9ea1df9 In addition to dead-code removal and other clean-up, bump the required DDX
version from 1.0.0 to 1.1.1.  1.1.1 is over a year and a half old at this
point, so it should be pretty widespread.  This allows the linecomp_sane
field to be eliminated from mga_screen_private_s.
2005-05-18 22:49:59 +00:00
Jon Smirl
9a1b5af333 Fix inverted y for egl fbdev, add egl demo3 2005-05-18 20:44:23 +00:00
Brian Paul
8818eae253 To better exercise pixel packing, replace regular glReadPixels with four
ReadPixels that get the image piece by piece.
2005-05-18 15:44:13 +00:00
Keith Whitwell
2b2bd08589 Remove old t_vertex.c codegen infrastructure, tie in new code.
Currently disabled, can enable with MESA_EXPERIMENTAL=t.
2005-05-18 15:26:48 +00:00
Keith Whitwell
dc7fc17396 Fix a few typos, initialize p->identity. 2005-05-18 14:04:19 +00:00
Keith Whitwell
96582f4f28 Eliminate a couple of swizzles. 2005-05-18 14:03:02 +00:00
Keith Whitwell
dd4c1dd038 Generates working SSE code for gears under the swrast driver. 2005-05-18 12:26:21 +00:00
Keith Whitwell
b745bf08cd Checkpoint commit: Preliminary version of a facility to emit x86/sse code
to implement vertex emit functions for the t_vertex.c mechanism.
2005-05-18 10:04:27 +00:00
Aapo Tahkola
2f74adc41f Stick texture LOD back on. 2005-05-18 08:43:30 +00:00
Aapo Tahkola
e53fc72f67 Polygon mode fixes. 2005-05-18 08:22:36 +00:00
Jon Smirl
bd565e4bb7 Fix for writing the wrong sysfs variable when blanking 2005-05-18 02:48:44 +00:00
Jon Smirl
9a3da7ea7b Implement fbdev swapbuffers() 2005-05-18 01:44:11 +00:00
Ian Romanick
6e56f905d0 More comments. More dead-code removed. More clean-up. 2005-05-18 00:37:32 +00:00
Keith Whitwell
2860e5f536 Disable leftover debug statements 2005-05-17 22:21:08 +00:00
Brian Paul
22652f952f fix some BCOMP/ACOMP typos (fixes Brad King's vtk failures) 2005-05-17 19:29:46 +00:00
Brian Paul
ae818ed1da don't include strings.h 2005-05-17 18:44:33 +00:00
Brian Paul
198d6d05b0 remove eglQueryDisplayMESA() 2005-05-17 13:22:13 +00:00
Brian Paul
5a0cb726d1 fix pbuffer sample code 2005-05-17 13:21:46 +00:00
Brian Paul
d2ab4eb2c2 remove glmode stuff 2005-05-17 13:21:12 +00:00
Jon Smirl
2ec2e94e2e Check error return from _eglInitPbufferSurface() correctly 2005-05-17 03:48:38 +00:00
Jon Smirl
40c1c723fb Compute stride in the right order 2005-05-17 03:38:06 +00:00
Brian Paul
bf7f998f39 Added software-based pbuffer support (untested).
Use _eglConfigToContextModesRec() function and remove need for
the _EGLConfig->glmode struct.
Silence some compiler warnings.
2005-05-17 02:18:38 +00:00
Brian Paul
bb2c65200c updated demoCreatePbufferSurface() 2005-05-17 02:15:38 +00:00
Brian Paul
5119056324 update comments 2005-05-17 02:14:44 +00:00
Brian Paul
4c80f8df46 more work on _eglConfigToContextModesRec() 2005-05-17 02:13:00 +00:00
Jon Smirl
e03b5cdf3f Make EGL_NO_MODE_MESA work. 2005-05-17 02:12:29 +00:00
Brian Paul
167b141e6e added _eglInitPbufferSurface() 2005-05-17 02:12:26 +00:00
Jon Smirl
d06da50888 Fix several internal problems with generating the list of configs. 2005-05-17 00:59:13 +00:00
Ian Romanick
c1082804a8 Rearranged some code and added some comments to mgaAllocDmaLow. The
modified code performs identically, but cuts 16KiB from the resulting
mga_dri.so.
2005-05-16 23:23:51 +00:00
Felix Kuehling
ffd97d20aa Don't use _mesa_swizzle_ubyte_image if all three texture formats
involved in _mesa_textore_argb/rgba8888 (source, base-internal,
destination) differ. _mesa_swizzle_ubyte_image knows only about two of
the formats and can't handle the case that all three are different
correctly. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=3111.
2005-05-16 23:01:09 +00:00
Brian Paul
a33f0d3024 remove -ansi -pedantic -D_POSIX_C_SOURCE=199309L from CXXFLAGS 2005-05-16 19:07:45 +00:00
Jon Smirl
380991cb65 Implement query of surface type. 2005-05-16 16:50:38 +00:00
Jon Smirl
3e8001a465 Add error about write permission to fbdev attribs 2005-05-16 15:51:05 +00:00
Brian Paul
af1a729972 another GLX / XCB patch (Jeremy Kolb) 2005-05-16 14:12:46 +00:00
Keith Whitwell
cf4f3c5061 Deal better with indirection and indirection accounting, developed
with Ben Skeggs.
2005-05-16 12:15:01 +00:00
Keith Whitwell
4cf20d9236 Apply r200 tcl fix to radeon - compiles but untested. 2005-05-16 08:36:28 +00:00
Brian Paul
72a313902b EGL_MESA_copy_context stuff 2005-05-16 02:21:57 +00:00
Brian Paul
f9bad3dfea use EGLint instead of unsigned long for eglCopyContextMESA, added comments 2005-05-16 02:21:08 +00:00
Brian Paul
a495ed372f separate ext strings with a space 2005-05-16 02:17:49 +00:00
Brian Paul
d9789b7861 s/Atrib/Attrib/, set extension enable flags 2005-05-16 02:16:33 +00:00
Brian Paul
51ac95ba89 added boolean extension flags to _EGLDriver 2005-05-16 02:15:42 +00:00
Brian Paul
6493bd07a7 restore _eglSetConfigAttrib (for now), added prototype _eglConfigToContextModesRec() 2005-05-16 02:14:50 +00:00
Brian Paul
7bfe8df08a define M_E if needed 2005-05-16 01:32:57 +00:00
Brian Paul
5873faf39b make _eglSetConfigAtrib() a static function, and rename it 2005-05-16 00:45:03 +00:00
Brian Paul
fdeda9c458 remove MESA suffix from _eglInitScreenSurface, use swAlpha value 2005-05-16 00:32:09 +00:00
Brian Paul
9b134f641c minor tweaks 2005-05-16 00:31:29 +00:00
Brian Paul
efeea95dcc fix GetRow parameters (Nicolai Haehnle) 2005-05-15 21:26:11 +00:00
Jon Smirl
45472672a2 A few egl patches needed for glitz, mainly config BITS 2005-05-15 04:00:59 +00:00
Aapo Tahkola
aca2e0da3c Make gleans polyoffset test happy. 2005-05-14 17:41:57 +00:00
Aapo Tahkola
d5084d42d4 Dont assume GLbooleans are ones when true. 2005-05-14 16:52:32 +00:00
Nicolai Haehnle
578f63f2bf Cleanup blend state generation.
Do not set the NO_SEPARATE bit, as it causes problems with some
combinations of blend functions.
2005-05-14 14:56:25 +00:00
Jon Smirl
1c606a9aa1 Add empty placeholder for eglCopyContextMESA 2005-05-14 14:54:38 +00:00
Nicolai Haehnle
09f433b97c The kernel doesn't like command buffers over 64KB, so we don't
allocate buffers bigger than that.
2005-05-14 14:51:17 +00:00
Jon Smirl
8110df4f61 Fix compiler warning about missing parameter list 2005-05-14 14:11:11 +00:00
Nicolai Haehnle
9cf35d2876 Remove dead span functions code. 2005-05-14 12:19:05 +00:00
Nicolai Haehnle
11bd5c1ac4 Fix span functions for stencil buffer access. 2005-05-14 11:43:04 +00:00
Nicolai Haehnle
686e9b9f57 Don't print debug messages unless the user explicitly requested them
using the RADEON_DEBUG environment variable.
2005-05-14 09:17:28 +00:00
Jon Smirl
aecc05627a Add forgotten demo2.c
VS: ----------------------------------------------------------------------
2005-05-14 03:51:18 +00:00
Jon Smirl
d0ddf190aa Fix compile error in demo egl driver 2005-05-14 03:49:55 +00:00
Jon Smirl
5cb977fedf Forgot to add fb_egl.c 2005-05-14 03:22:48 +00:00
Nicolai Haehnle
296428dcf4 Make software fallbacks work again:
We need to plug in swsetup functions into the TNL module's callbacks.
Also, resize the framebuffer size when the drawable size changes.
2005-05-13 21:29:17 +00:00
Nicolai Haehnle
ee83a1302f Remove quiescence sequence from r300ClearBuffer.
The DRM is responsible for emitting this quiescence sequence when
appropriate.
2005-05-13 21:00:11 +00:00
Jon Smirl
7012d01d88 First attempt at getting egl support up on dumb framebuffer.
Seems to be mostly working. Not all of egl API is implemented.
2005-05-13 18:31:35 +00:00
Nicolai Haehnle
a6ed129dfc Patch from Jeff Smith:
The type of vertex data is opaque in the emit_* functions, so use GLvoid*
instead of char*. This also eliminates some compiler warnings.
2005-05-13 18:03:24 +00:00
Nicolai Haehnle
733bc876ee Patch from Jeff Smith:
Fix a WARN_ONCE format string.
2005-05-13 17:44:22 +00:00
Alan Hourihane
64034c4fb5 Remove MAX_VISUAL limitations of 100. If running dual head this can
be easily consumed. There are no limitations now and the VisualTable
is realloced when necessary.
2005-05-13 11:56:13 +00:00
Keith Whitwell
846eb333ae Calculate render inputs for tcl stage correctly (hint: they aren't the
same as tnl->render_inputs).  Fixes recent tcl problems.
2005-05-13 09:15:50 +00:00
Ian Romanick
c9a69a6968 Remove some unused structure fields, add some comments, and ifdef out some
dead code.  This is just some clean-up work which should not have any
functional impact.
2005-05-12 23:15:38 +00:00
Keith Whitwell
269e3895d9 new MESA_DEBUG option: disassem 2005-05-12 10:28:43 +00:00
Keith Whitwell
5c72837af9 Rein in debug slightly 2005-05-12 10:22:29 +00:00
Keith Whitwell
5f430c9976 Turn disassem off (oops). 2005-05-12 09:31:33 +00:00
Keith Whitwell
714be699be Add check for mask == NULL to the one routine missing it. 2005-05-12 09:07:12 +00:00
Keith Whitwell
10432bcc0a When lighting is enabled, but no lights are enabled, the scenecolor
becomes the result of lighting.  When lighting is disabled,
pass-through incoming color value.  Likewise, pass through incoming
texture values.  (Based on patch by Aapo Tahkola)

Add compile-time configuration to switch between DP4 and MUL/MAD for
matrix-vector multiplications.
2005-05-12 08:54:13 +00:00
Ben Skeggs
69a2f7cdd5 fix warnings in r300_texstate.c (Jeff Smith) 2005-05-12 03:53:18 +00:00
Karl Schultz
db21f1c84f The "P" suffix on APIENTRY and GLAPIENTRY is to be used for pointers to
functions, not for functions that return pointers.  Restore protoype
for glGetString back to its correct form.
2005-05-11 22:01:20 +00:00
Aapo Tahkola
4e68f4c1fa VBOs. 2005-05-11 17:28:13 +00:00
Keith Whitwell
1e5772f0ba Don't let FragmentProgram._Active influence choice of vertex vs pixel
fog.
2005-05-11 16:30:02 +00:00
Keith Whitwell
ac6728d2d9 Previously in TXP and TEX instructions, lambda was passed to
fetch_texel as zero, but I believe this is incorrect.  The spec uses a
pseudocode function:

      vec4 TextureSample(float s, float t, float r, float lodBias,
                         int texImageUnit, enum texTarget);

to specify the behaviour of TEX, TXB and TXP instructions.  For TEX
and TXP, lodBias is passed as zero, TXB is passed with texcoord[4].  In our code we have

      static void
      fetch_texel( GLcontext *ctx, const GLfloat texcoord[4], GLfloat lambda,
                   GLuint unit, GLfloat color[4] )

and were passing zero and a biased lambda value respectively.  The
difference is that TextureSample() would add in the lambda term
itself, while in our code the caller is expected to do this.  Thus in
the TEX and TXP cases, it is necessary to pass an unbiased lambda
value for things to work out correctly.
2005-05-11 16:28:33 +00:00
Keith Whitwell
49d8cbe8d1 Use _mesa_memset rather than memset 2005-05-11 15:18:59 +00:00
Keith Whitwell
9d148e6b2b Don't let FragmentProgram._Active influence choice of vertex vs pixel
fog.
2005-05-11 15:18:23 +00:00
Keith Whitwell
363d0bcf01 Test for texcoord[3] == zero before dividing. Not so sure about this
test - if texcoord[3] is zero, we'd probably be fine except for an
ASSERT in IROUND_POS() which gets triggered by the inf values
created.
2005-05-11 15:17:31 +00:00
Keith Whitwell
e490242b9a Fix glean/conform problems. Don't generate so much output when
disassembling.
2005-05-11 15:16:35 +00:00
Keith Whitwell
a582015905 Fix valgrind complaint, conform vertex order test. 2005-05-11 10:30:13 +00:00
Keith Whitwell
3509fd8c1b Rename temp_flag to temp_in_use. Use ctx->Const.MaxVertexProgramTemps
rather than MAX_NV_VERTEX_PROGRAM_TEMPS and deal with this possibly
being greater than 32.
2005-05-11 08:34:19 +00:00
Keith Whitwell
93cd9237d7 Fix logic for allocating texture temporaries (Ben Skeggs).
Rename temp_flag, tex_temp_flag to make this clearer.
Respect ctx->Const.MaxFragmentProgramTemps limit.
2005-05-11 08:30:23 +00:00
Adam Jackson
1243b829bb int -> size_t to fix compile on LP64. 2005-05-11 01:33:50 +00:00
Keith Whitwell
2fcaf7a529 Ensure programs don't overflow allocated instruction store. 2005-05-10 18:24:50 +00:00
Keith Whitwell
a42fe19d8d Fix some valgrind complaints 2005-05-10 18:22:19 +00:00
Keith Whitwell
e57d5c4742 fix some valgrind complaints 2005-05-10 18:10:32 +00:00
Keith Whitwell
5a5b4436cb Improved detection of program changes. 2005-05-10 18:10:00 +00:00
Keith Whitwell
3ffe8731e6 Double-buffer generated instructions and only notify driver when the
generated program differs from the previous one.
2005-05-10 18:09:17 +00:00
Keith Whitwell
c5f5055097 Fix some valgrind complaints 2005-05-10 18:08:25 +00:00
Keith Whitwell
dbeea25bb8 Double-buffer generated instructions and only notify driver when the
generated program differs from the previous one.
2005-05-10 13:57:50 +00:00
Keith Whitwell
f29f2fc294 reduce the use of malloc and strdup for parameter lists 2005-05-10 13:56:23 +00:00
Keith Whitwell
ab81d1fd99 don't be fooled into emitting padding for wpos when not used 2005-05-10 13:54:52 +00:00
Keith Whitwell
d9fdb6c2bb Missing from previous commit 2005-05-10 11:41:33 +00:00
Keith Whitwell
9eef0da109 Update for FragmentProgram._Active 2005-05-10 11:40:52 +00:00
Keith Whitwell
8b88f62fbd Better driver notification on changes. 2005-05-10 11:39:50 +00:00
Keith Whitwell
948fa3b295 get fog working with _TexEnvProgram 2005-05-10 11:38:56 +00:00
Keith Whitwell
586f2c59fe Temporary fix - delete and recreate texenvprogram so that drivers
notice when it changes.
2005-05-10 10:25:16 +00:00
Jouk Jansen
e3b0c19ec9 Committing in .
OpenVMS compile support update for new buffer-code

 Modified Files:
 	Mesa/src/mesa/drivers/x11/descrip.mms
 	Mesa/src/mesa/main/descrip.mms
 	Mesa/src/mesa/swrast/descrip.mms
 ----------------------------------------------------------------------
2005-05-10 10:15:30 +00:00
Keith Whitwell
9ca8815d3b Fix texenv segfault. Reported by Ben Skeggs. 2005-05-10 09:56:02 +00:00
Keith Whitwell
ecb6bfc0ce Try not to use the same temp reg as a TXP destination more than once,
as this also constitutes a texture indirection.  Reported by Ben
Skeggs.
2005-05-10 08:58:44 +00:00
Daniel Borca
fee163a61a pathetic attempt to accomodate new frambuffer changes (still some work to do) 2005-05-09 22:15:24 +00:00
Daniel Borca
0e26580c90 accomodate new frambuffer changes 2005-05-09 22:14:58 +00:00
Daniel Borca
c8542705f7 fix some typos in FX code 2005-05-09 22:14:32 +00:00
Keith Whitwell
435eff8b85 i915 will use _TexEnvProgram (if active) 2005-05-09 17:59:13 +00:00
Keith Whitwell
276330b241 Use driver functions to create TexEnvProgram, TnlProgram 2005-05-09 17:58:13 +00:00
Keith Whitwell
ff6723e326 check for null DrawBuffer values 2005-05-09 17:42:18 +00:00
Keith Whitwell
1180fc13db Fallback (rather than fail) on unknown program targets. 2005-05-09 17:38:52 +00:00
Jon Smirl
5c6aec2f39 dri fb works using renderbuffers now in RGBA mode 2005-05-08 05:01:03 +00:00
Jon Smirl
86300c6945 fbdri can draw double buffered now. Next step is to convert it
to use RenderBuffers.
2005-05-07 19:56:44 +00:00
Brian Paul
fc3bc1ae14 remove some dead code 2005-05-07 18:27:58 +00:00
Brian Paul
d3bd97bb14 x86_64 stuff 2005-05-07 17:27:57 +00:00
Brian Paul
52064f6c37 added linux-x86-xcb config (Jeremy Kolb) 2005-05-07 17:21:11 +00:00
Brian Paul
2eb147e7f5 Patches for XCB (Jeremy Kolb) 2005-05-07 17:14:50 +00:00
Brian Paul
6f3d16c64a assorted warning clean-ups for x86_64, etc (Mikko T.) 2005-05-07 17:06:49 +00:00
Brian Paul
42fa81275c x86-64 transform optimizations (Mikko T.) 2005-05-07 16:59:58 +00:00
Brian Paul
e3f684b753 fix a bunch of html errors 2005-05-06 22:17:24 +00:00
Brian Paul
883d20791a fix cpp / bytesPerPixel problem (bug 1196554) 2005-05-06 19:28:31 +00:00
Brian Paul
b1d0ac64ab remove bad assertion, added new ones in clear_pixmap() 2005-05-06 15:23:54 +00:00
Brian Paul
c64573997c restore call to SetBuffer() in clear_color_buffers(), only temporary 2005-05-06 14:44:16 +00:00
Ben Skeggs
e133984f51 Updated for EXT_framebuffer_object changes. I don't know if this is correct, but it seems to work 2005-05-06 08:41:50 +00:00
Jon Smirl
bd8162aaac Fix problem generating mode db. Miniglxtest works now.
Miniglxsample is still broken with double buffering issues.
2005-05-06 05:50:41 +00:00
Aapo Tahkola
4a55d4ffa7 Missing setups that cause all kinds of problems with hw tnl. 2005-05-06 03:18:40 +00:00
Karl Schultz
6258b76c49 Port Mesa to build on a P64 platform (e.g., Win64). P64 platforms
use 64-bit pointers and 32-bit longs.  So, operations like casting pointers
to unsigned long and back to pointer won't work.  glheader.h now
includes files to define uintptr_t, which should instead be used for
this sort of operation.  It is an integer type that is the same size
as a pointer.
2005-05-05 21:08:07 +00:00
Brian Paul
203dcb733d fix for renderbuffer (Andreas Stenglein) 2005-05-05 17:13:18 +00:00
Brian Paul
bd1d9d96b2 remove some test code 2005-05-05 15:09:16 +00:00
Brian Paul
9f8b3fac97 minor face-lift for web pages 2005-05-05 14:18:31 +00:00
Brian Paul
0355d3ff94 fix typo 2005-05-05 14:18:04 +00:00
Brian Paul
cb34c11663 added a comment 2005-05-05 13:08:06 +00:00
Brian Paul
1077779c7d add PROGRAM_DIRS line 2005-05-05 13:07:52 +00:00
Aapo Tahkola
1c39d183c4 Getting rusty... 4278 was already there. 2005-05-05 06:51:00 +00:00
Jon Smirl
fd4f7064e2 Fix up origin in dri/fb driver
Calculated fbBPP
2005-05-05 05:50:19 +00:00
Aapo Tahkola
db46e2a7dd Flat shading and bunch of clarifications to r300_reg.h . 2005-05-05 03:40:47 +00:00
Adam Jackson
e7769cb348 Refactor COMMON_SOURCES up to Makefile.template 2005-05-05 03:15:08 +00:00
Jon Smirl
d83c4e6dd1 Minor touchups to fbdev renderbuffer support 2005-05-05 00:28:37 +00:00
Aapo Tahkola
73e8ffe9f3 Pack tex coord regs at vertex program backend. 2005-05-05 00:28:31 +00:00
Brian Paul
286c4cc201 more updates for users of s_spantemp.h 2005-05-05 00:10:18 +00:00
Adam Jackson
b3e878ad90 Add drirenderbuffer.c to COMMON_SOURCES 2005-05-04 22:05:02 +00:00
Brian Paul
eae0439ae6 fix s_spantemp.h includes 2005-05-04 20:20:02 +00:00
Brian Paul
79c0bb5264 FBO changes 2005-05-04 20:18:23 +00:00
Brian Paul
41a93f544e fix xm_span2.c reference 2005-05-04 20:13:59 +00:00
Brian Paul
e4b2356c07 Major check-in of changes for GL_EXT_framebuffer_object extension.
Main driver impacts:
- new code for creating the Mesa GLframebuffer
- new span/pixel read/write code
Some drivers not yet updated/tested.
2005-05-04 20:11:35 +00:00
Brian Paul
ebef61f5c0 html fix 2005-05-04 20:05:21 +00:00
Brian Paul
fe6ee3f5e6 EGLScreenMESA updates 2005-05-04 20:00:15 +00:00
Brian Paul
f5581bb994 don't call XTranslateCoordinates() if rendering to pixmap 2005-05-04 14:50:45 +00:00
Keith Whitwell
47b29f511a Add a facility to route all rasterization through a fragment program
which is automatically generated to match the current texture environment
state.  Introduces a new value ctx->FragmentProgram._Active which is
true when either _Enabled is true or there is such a fragment program
ready to run.

To test out on a driver running the software rasterizer, set
MESA_TEX_PROG=t in the environment.  It goes without saying that performance
is lower for the software rasterizer in this mode.
2005-05-04 11:44:44 +00:00
Keith Whitwell
c3f764f7bb Sort instructions for clarity. 2005-05-04 11:21:46 +00:00
Keith Whitwell
3151b27b0a Include negate information in disassembly output. 2005-05-04 11:21:25 +00:00
Keith Whitwell
209b090241 Mark unused registers as undefined so dissassemblers can recognized
them easily.
2005-05-04 11:20:59 +00:00
Keith Whitwell
d8f9599403 Improve the quality of the disassembly output for fragment programs. 2005-05-04 11:20:20 +00:00
Jouk Jansen
c6e1569b7f Committing in .
OpenVMS compile update

 Modified Files:
 	Mesa/src/mesa/shader/slang/descrip.mms
 ----------------------------------------------------------------------
2005-05-04 06:33:58 +00:00
Jon Smirl
82761cb08b DRI fbdev driver getting better. Now I can see something on the screen
but it isn't the right something yet.
2005-05-04 06:12:22 +00:00
Brian Paul
c22990c29a sync with latest EGL_MESA_screen_surface spec (EGLScreenMESA handles) 2005-05-04 03:33:21 +00:00
Brian Paul
3aeae20685 updates for latest EGLScreenMESA changes 2005-05-04 03:32:39 +00:00
Keith Whitwell
884b5ade86 Import all texture coordinate arrays. Import them only once. 2005-05-03 15:11:23 +00:00
Aapo Tahkola
138b7ef4d9 Add support to external tnl switcher and disable hw tnl by default. 2005-05-01 23:36:43 +00:00
Felix Kuehling
3a934557bf Bumped the Savage driver date (a bit late) to mark S3TC support. 2005-05-01 14:37:23 +00:00
Felix Kuehling
5f0bf77255 Fixed and cleaned up programming of watermark registers. There may be
a marginal speedup, but I'm not sure this has the same effect on all
hardware. Tested on Savage IX and ProSavageDDR. For experimenting with
different values see the macros at the start of savagestate.c.
2005-05-01 14:29:16 +00:00
Jon Smirl
8af7ff1ded Improve the DRI fb driver, now it compiles.
Added code to support NEW_INTERFACE.
It still doesn't work. Made it build from make linux-solo.
2005-05-01 00:21:27 +00:00
Brian Paul
1c54579e86 apply previous GL_COMPRESSED_TEXTURE_FORMATS_ARB fix to generator file, and regenerate get.c 2005-04-30 18:30:16 +00:00
Aapo Tahkola
7d33053e47 r300 side support for fixed function pipeline. This isnt functional with current Mesa. 2005-04-30 11:06:14 +00:00
Felix Kuehling
47d18cbb64 Fixed bogus ENUM_TO_BOOLEAN in
_mesa_GetIntegerv(GL_COMPRESSED_TEXTURE_FORMATS_ARB). Must be ENUM_TO_INT.
mesa/progs/tests/texenv now lists supported compressed texture formats
correctly.
2005-04-30 02:09:23 +00:00
Felix Kuehling
f1d053b19a Added S3TC support to the Savage driver with some help from Mark Cass's
S3TC support for an older driver version. On Savage3D/IX/MX
GL_EXT_texture_compression_s3tc can't be enabled because DXT3 and DXT5
are not supported. However GL_S3_s3tc is enabled on all Savage chips.
Tested on a Savage IX and a ProSavageDDR
2005-04-30 02:03:18 +00:00
Jon Smirl
28d0a9c9dd Fix include path to make build work 2005-04-29 22:25:21 +00:00
Keith Whitwell
5f534aa1e2 Format for 80 columns. Add alternate matrix mul based on MAD rather than DP4. 2005-04-29 17:32:27 +00:00
Keith Whitwell
e9e20fc47d Add DISASSEM define, similar to other program generator files. 2005-04-29 17:31:54 +00:00
Keith Whitwell
a5cb1aa211 Add linux-fbdev config 2005-04-29 17:31:10 +00:00
Keith Whitwell
431417fec7 new config 2005-04-29 17:30:29 +00:00
Keith Whitwell
5c81a4b9cd Put back not-so-redundant #ifdef. 2005-04-29 15:41:24 +00:00
Keith Whitwell
a6ebcdfe7d Remove redundant #ifdef, fix compiler warning 2005-04-29 15:37:27 +00:00
Keith Whitwell
2c19069182 new file 2005-04-29 15:36:38 +00:00
Keith Whitwell
15e75e00c7 Maintain a fragment program for current texturing state. 2005-04-29 15:11:39 +00:00
Brian Paul
d59054e60b fix _tnl_copy_to_current() so that current edge flag and rasterpos aren't trashed by color index updates 2005-04-28 21:14:00 +00:00
Keith Whitwell
5cef1a1fed Stop gcc-4.0 complaining about "type qualifiers ignored on function
return type".
2005-04-28 13:16:23 +00:00
Keith Whitwell
545515cbea Stop gcc-4.0 complaining about "type qualifiers ignored on function
return type".
2005-04-28 12:05:58 +00:00
Brian Paul
97e1e60b1c move set_component_sizes() to fix bug 3135 2005-04-27 21:20:30 +00:00
Brian Paul
69441868f6 no need to enable fog or set fog mode with fragment program 2005-04-26 20:58:27 +00:00
Brian Paul
55d8dd4078 tweak previous fog/fragment program fix 2005-04-26 20:56:21 +00:00
Brian Paul
d09df24082 added interpolate_fog() 2005-04-26 17:35:45 +00:00
Brian Paul
c03b6f40ba enable fog render input if fragment program fog option set 2005-04-26 17:25:53 +00:00
Brian Paul
c039af165d comments and minor clean-up 2005-04-26 16:02:56 +00:00
Aapo Tahkola
c3259fa436 Fix as suggested by Ben Skeggs. 2005-04-25 09:50:45 +00:00
Keith Whitwell
b83aadb0e4 Ensure all VB->AttribPtr[] are populated. Reported by Aapo Tahkola 2005-04-25 09:36:27 +00:00
Jon Smirl
576caad33e Minor changes to make linux-solo build again 2005-04-25 03:03:10 +00:00
Felix Kuehling
cbc8d7596a Software fallback for glColorMask. Can be avoided on Savage4 when all
channels are masked (disable draw update). Bumped driver date to
reflect recent correctness fixes. The driver now passes all glean
tests except exactRGBA on both Savage4 and Savage3D-based cards.
2005-04-24 20:55:57 +00:00
Aapo Tahkola
6ffd0a4cf1 Modifying to build against current Mesa. Disabled r200*.c files since they didnt want to build anymore. 2005-04-24 09:08:31 +00:00
Felix Kuehling
5c906924ed Fixed a segfault introduced by Keith's pipeline changes. 2005-04-23 19:54:30 +00:00
Felix Kuehling
9b4536a654 Texturing fixes for Savage3D/MX/IX:
- force emitting texAddr when the texture image changed (flush caches)
- set transparent texture color key to something improbable
  (couldn't find a way to disable it completely)
- fixed texture environment modes GL_DECAL and GL_REPLACE
- made texture environment mode GL_BLEND a software fallback
- added two custom texture formats for promoting from GL_ALPHA to ARGB8888
  and 4444. Since the hardware can't be made to ignore the RGB color
  components, set them to 1 instead of 0. This gives the correct results
- disabled GL_EXT_texture_env_add on Savage3D/MX/IX
- map both GL_CLAMP and GL_CLAMP_TO_EDGE to hardware mode "wrap". It doesn't
  match either mode exactly by the spec, so we should either fall back on both
  or none. I chose the latter.
- fall back to software when s and t wrapping modes differ (hardware has only
  one bit for both)
2005-04-23 17:18:57 +00:00
Keith Whitwell
df943a4041 Fix the worst problems with dangling edgeflag references in
display lists.  These mainly arise from edgeflag being the only
attribute no longer stored internally as a float and requiring
various special case paths to accomodate it.
2005-04-23 11:55:18 +00:00
Keith Whitwell
0d4af83f25 Updates for pipeline_stage struct changes. 2005-04-22 22:47:09 +00:00
Keith Whitwell
bf87f86493 First pass at updating these drivers with pipeline_stage struct changes. 2005-04-22 22:42:09 +00:00
Felix Kuehling
963586b871 Added a French translation of option descriptions by Stephane Marchesin. 2005-04-22 21:36:37 +00:00
Brian Paul
fc06f9fb25 demo / test progs 2005-04-22 21:17:14 +00:00
Brian Paul
20d44dc9bc types for Mesa implementation of EGL 2005-04-22 21:16:28 +00:00
Brian Paul
11b0a76370 prototype EGL_MESA_screen_surface. 2005-04-22 21:16:12 +00:00
Brian Paul
adbff7e977 initial EGL code 2005-04-22 21:09:39 +00:00
Keith Whitwell
a661654a33 Move the call to _tnl_UpdateFixedFunctionProgram to make
it easier for hardware drivers to test this out.
2005-04-22 13:02:04 +00:00
Keith Whitwell
6f973f3367 Simplify the pipeline_stage structure
- remove input/output fields, input tracking removed.
	- remove state fields, the validate function now called
	  on every statechange.
	- add an explicit 'create' function.

Add in code to build vertex program to implement current t&l state.  Still
disabled, but turn on with a #define in t_vp_build.h.
2005-04-22 12:51:19 +00:00
Keith Whitwell
6a13c7da4c Up the value of MAX_NV_VERTEX_PROGRAM_PARAMS to a power of two. 2005-04-22 12:46:13 +00:00
Michal Krol
addcc6afbd Add more error checking. 2005-04-22 10:43:36 +00:00
Michal Krol
19fb77ee7b Cosmetic changes. 2005-04-22 10:28:53 +00:00
Michal Krol
b10d080b1e Move some utility functions to slang_utility.c. 2005-04-22 10:15:32 +00:00
Michal Krol
3ed1f07686 Provide precompiled binary versions of built-in library .gc sources
to dramatically improve shader compiling performance.
2005-04-22 09:51:46 +00:00
Brian Paul
2cbbd3dc50 undef DEPTH_TYPE at end 2005-04-22 02:56:21 +00:00
Felix Kuehling
a7fcac5e92 Fixed some suspicious pointer casts that caused lots of
compile-time-warnings on x86-64. Not tested on x86-64 yet, but a good
thing in general, so I'm giving up waiting for feedback. See also
https://bugs.freedesktop.org/show_bug.cgi?id=2924.
2005-04-21 21:50:54 +00:00
Felix Kuehling
07d91bbb59 Fixed TexEnv modes GL_BLEND and GL_ADD on Savage4-based cards. Disabled
the use of hardware texture format I8 as it produces garbage at least on
ProSavageDDR.
2005-04-21 21:43:21 +00:00
Aapo Tahkola
b3474de7b5 Adding some comments. 2005-04-21 19:09:54 +00:00
Keith Whitwell
7c26b61f93 Reduce the size of mesa's internal fragment and vertex program
representations by switching to packed structures for registers and
instructions.
2005-04-21 14:46:57 +00:00
Brian Paul
88b69d7998 use _mesa_pow() for LIT (bug 3087) 2005-04-21 14:19:50 +00:00
Keith Whitwell
f069e5e412 Facility to construct a vertex program which executes the current
fixed function t&l pipeline.

Currently runs most of the Mesa demos OK, but still needs debugging &
polishing.
2005-04-21 13:13:49 +00:00
Keith Whitwell
0ff98b03c6 New software implementation of ARB_vertex_program. Similar in speed
to existing version, but with the potential for good improvements.
2005-04-21 13:11:02 +00:00
Aapo Tahkola
70375aff48 Had some odd problems with add and temps so doing it with mad. Adding some MAD_2 cases. 2005-04-21 05:24:02 +00:00
Brian Paul
52bf005425 fix state.light[n].spot.direction.w value (bug 3083) 2005-04-20 23:47:03 +00:00
Brian Paul
8d51bbf2a3 clean up buffer creation code 2005-04-20 17:12:10 +00:00
Aapo Tahkola
fc8f202181 Reorganized shader stuff. 2005-04-19 18:49:44 +00:00
Aapo Tahkola
c4e1fd5a7f Fixes for bugs that were nailed down when compairing against software vertex shading. 2005-04-19 03:12:30 +00:00
Aapo Tahkola
f8ed0aa268 Fixing and enabling elt buffers by default. 2005-04-18 22:41:43 +00:00
Ian Romanick
d03ab104db If the file name passed to parse_GL_API is None or "-", read from standard
input.  This allows use of GL API scripts in pipelines.
2005-04-18 21:30:20 +00:00
Ian Romanick
93d2d54e7a Refactor a bunch of common code from the "leaf" scripts to a new functions,
parse_GL_API, in gl_XML.py.
2005-04-18 19:42:23 +00:00
Ian Romanick
8ea22650bd Fill-in function offsets and correct a couple typos. 2005-04-18 19:17:12 +00:00
Ian Romanick
2510ba618d Convert all Python scripts to use XML namespaces. 2005-04-18 19:16:07 +00:00
Peter Zubaj
b7142567bc Alpha test fix 2005-04-18 19:06:14 +00:00
Ian Romanick
61f08d8094 Move the DTD to its own file. 2005-04-18 18:36:57 +00:00
Brian Paul
f905145b60 comments and clean-up 2005-04-18 17:48:25 +00:00
Ian Romanick
02986cb2cc Add support for pthreads and TLS to libGL for __glXLock / __glXUnlock and
for tracking the current GLX context.

This fixes bug #3024.
2005-04-18 16:59:53 +00:00
Ian Romanick
2e823f29e4 Send GL_PACK_INVERT_MESA state to the server. This fixes bug #2538. 2005-04-18 16:40:36 +00:00
Brian Paul
b52673117b s/NORMAL/FOG/ (J.P. Delport) 2005-04-18 14:21:44 +00:00
Jouk Jansen
49b1d95c1c Updates for OpenVMS : New makefiles
added some type-casts

 Modified Files:
 	Mesa/src/mesa/shader/descrip.mms
 	Mesa/src/mesa/shader/program.c
 	Mesa/src/mesa/shader/slang/slang_compile.c
 	Mesa/src/mesa/shader/slang/slang_preprocess.c
 Added Files:
 	Mesa/src/mesa/shader/slang/descrip.mms
 ----------------------------------------------------------------------
2005-04-18 13:05:24 +00:00
Brian Paul
e9a3d8a772 added SLANG_SOURCES to SOLO_C_SOURCES 2005-04-15 22:20:46 +00:00
Brian Paul
afb3fb4b77 config for profiling with gprof 2005-04-15 22:16:18 +00:00
Brian Paul
635ee2df37 added _mesa_share_state() 2005-04-15 17:25:07 +00:00
Ben Crossman
509710cfd7 more gldirect compile fixes. Getting near the linking stage now. No build file yet. 2005-04-15 17:17:47 +00:00
Brian Paul
efb41b07ff remove carriage returns 2005-04-15 16:05:14 +00:00
Keith Whitwell
78803b2667 Fix alpha value of STATE_LIGHTMODEL_SCENECOLOR. From the spec:
The "w" component of the program parameter variable is filled with
 the alpha component of the front diffuse material color.

Make sure matrix inverses are uptodate also.
2005-04-15 12:57:23 +00:00
Michal Krol
a131d50fb7 add shader/slang/slang_preprocess.c 2005-04-15 10:30:43 +00:00
Michal Krol
e3a846b0e3 implement info log; parse #version directive 2005-04-15 10:23:10 +00:00
Michal Krol
65ce50897e slang preprocessor 2005-04-15 10:21:34 +00:00
Michal Krol
8855664489 slang #version directive syntax 2005-04-15 10:20:30 +00:00
Michal Krol
35725a92be change __asm statement semantics 2005-04-15 10:19:27 +00:00
Ben Crossman
d8aa5ffed5 Reverted the last change back to fix bug 3035 2005-04-15 09:13:21 +00:00
Ian Romanick
067e788acd Convert 'variable_param' from a CDATA attribute to a NMTOKENS attribute.
The main difference is that white-space is used to separate the names
instead of comas.
2005-04-14 23:03:44 +00:00
Ian Romanick
73b4c1b388 Refactor the handling of the '(true | false)' enumerated attributes. 2005-04-14 23:00:34 +00:00
Ian Romanick
a3deff2404 Modify the DTD to use NMTOKEN, enumerants, and explicit default values
wherever possible.  Correct a couple mis-uses of the 'counter' attribute
when 'count' was intended.  Fix some errors in the DTD and in the data with
'doubles_in_order'.
2005-04-14 22:59:46 +00:00
Ian Romanick
6cae4f3bc9 In GLX_USE_TLS builds, make GET_CURRENT_CONTEXT use the TLS verion of the
variable.  Without this, GET_CURRENT_CONTEXT would *always* result in a call
to _glapi_get_context (because _glapi_Context is a const pointer to NULL in
TLS builds).
2005-04-14 21:05:55 +00:00
Ian Romanick
f434e07a6a Add missing includes of indirect.h. 2005-04-14 20:35:33 +00:00
Ben Crossman
369404299c A few getenv() that werent using the mesa wrapper version 2005-04-14 19:54:15 +00:00
Ben Crossman
b2b01a60db Some initial compile fixes. Still some left and warnings that need fixing. No where near runnable yet. 2005-04-14 16:58:25 +00:00
Keith Whitwell
60e2810ae4 Disable CLOD (Lod constant) state emit. The values emitted were
possibly negative, hence clobbering the leading register-id byte.
Fixed the calculation of the values to prevent negative numbers being
emitted, but the code still doesn't implement texture LOD bias
correctly, so leave it disabled overall.
2005-04-14 15:53:30 +00:00
Michal Krol
99b329ca13 hook to _slang_compile() 2005-04-14 10:31:36 +00:00
Michal Krol
ed5f790919 cosmetic changes 2005-04-14 10:30:08 +00:00
Michal Krol
8c01903114 ARB_fragment_shader state 2005-04-14 10:28:14 +00:00
Michal Krol
6372ea0da0 ARB_fragment/vertex_shader state 2005-04-14 10:27:19 +00:00
Michal Krol
2a37053fd5 ARB_shading_language_100 bit;
Fragment shader derivative hint
2005-04-14 10:25:49 +00:00
Michal Krol
1e8fc5ffea add GL_ARB_shading_language_100;
reorder GL_ARB_shader_objects and GL_ARB_fragment/vertex_shader stuff
2005-04-14 10:23:51 +00:00
Michal Krol
5c968cbc5e add FEATURE_ARB_shading_language_100;
remove FEATURE_shading_language;
add ARB_fragment/vertex_shader max values
2005-04-14 10:21:30 +00:00
Michal Krol
98e35025ba do not use isdigit() - can cause link errors 2005-04-14 10:19:19 +00:00
Brian Paul
fd451b6d01 updated procedure for getting CVS-write access 2005-04-13 23:50:47 +00:00
Ian Romanick
25fe93f0a1 Add TLS support to libGL and, by virtue of using glthread.h and GL_CALL, all
DRI drivers.  A TLS enabled libGL can load a TLS or a non-TLS DRI driver,
but a TLS DRI driver requires a TLS enabled libGL.

This fixes bug #1822.
2005-04-13 20:59:15 +00:00
Ian Romanick
c604e457d1 Revert revision 1.13. This allows server-side libGLcore (in X.org) to build
with Mesa CVS.  This change was wrong in the first place, and the issue that
necessitated it has been resolved.  For more background on the problem see:

http://marc.theaimsgroup.com/?l=mesa3d-dev&m=111333880529935&w=2
2005-04-13 18:41:33 +00:00
Michal Krol
9a5ba4794c add SLANG_SOURCES 2005-04-13 14:05:28 +00:00
Michal Krol
fa2802d4d0 clean-up stuff 2005-04-13 14:05:06 +00:00
Michal Krol
0e7836b500 simple front-end compiler 2005-04-13 14:04:41 +00:00
Michal Krol
d3ea221d3e add __fixed_input and __fixed_output qualifier support;
fix for_init_statement output;
2005-04-13 13:18:35 +00:00
Michal Krol
2f951683be cosmetic changes;
add __fixed_input and __fixed_output qualifiers for built-in variables;
2005-04-13 13:06:57 +00:00
Michal Krol
5a38200122 cosmetic changes;
fix syntax errors;
2005-04-13 13:03:23 +00:00
Michal Krol
f18d70b804 cosmetic changes;
change first parameter's qualifier from inout to out for __operator =;
remove __asm instructions: int_add, int_multiply, int_divide, int_negate,
int_less, int_equal, bool_equal;
2005-04-13 12:59:58 +00:00
Michal Krol
cfcf86b37d converts a .gc file to a C header containing string form of the file 2005-04-13 12:48:40 +00:00
Felix Kuehling
0ad2ef20a7 Added a Spanish translation by David Rubio Miguélezand a Dutch
translation by Manfred Stienstra.
2005-04-12 21:01:30 +00:00
Felix Kuehling
ad0dbe6b04 Changed escaping of double quotes. 2005-04-12 20:58:34 +00:00
Brian Paul
41bddcfa7b PF_8A8R8G8B pixel format (Dave Reveman) 2005-04-12 01:41:04 +00:00
Felix Kuehling
55ba0dccc9 Manage option translations in separate .po files to make translations
easier for non-programmers familiar with GNU gettext. For now there is
only a German translation but more translations are encouraged.

Translatable strings are extracted from t_options.h containing option
definitions with English descriptions. A corresponding header options.h
with all available translations of option descriptions is generated by
gen_xmlpool.py and included by xmlpool.h.

Many option descriptions were rephrased to make them unambiguous for
translation without context. They are hopefully more helpful to users at
the same time.
2005-04-11 21:41:40 +00:00
Brian Paul
aaa5a66433 set table size to 1023 and use new HASH_FUNC() macro 2005-04-10 17:44:27 +00:00
Adam Jackson
5f92c38f0e Bug #2945: Fix math error that left half the hash buckets empty. 2005-04-09 18:35:57 +00:00
Ian Romanick
db382c5b1d Remove all the radeon_subset files. They were completely unused. Keith
Whitwell says, "[T]he radeon subset code can probably be archived now."
This "fixes" bug #1623.
2005-04-08 23:54:20 +00:00
Ian Romanick
a657c1aee8 Use the same dispatch.c source file for "normal" Mesa builds and DRI
libGL builds.
2005-04-07 23:58:51 +00:00
Brian Paul
d9c389dff6 Add shaderobjects_3dlabs.c back into build but use #ifdef FEATURE_shading_language to enable/disable relevant code. 2005-04-07 14:38:41 +00:00
Ian Romanick
c51ed8c236 Follow the GLX_SGIX_fbconfig spec and return the complete list of
available fbconfigs if attrList is NULL.  This fixes bug #2917.
2005-04-07 00:05:55 +00:00
Brian Paul
c61782958b added wrappers/helpers for creating/destroying rendering contexts 2005-04-06 22:41:46 +00:00
Brian Paul
c3984fc015 changed implementation of GetAllFBConfigs() 2005-04-06 22:40:39 +00:00
Brian Paul
481bdd383a Fix Fake_glXChooseFBConfig so passing NULL attribList causes a list of all
fbconfigs to be returned.
2005-04-06 22:33:15 +00:00
Ian Romanick
bfc8a8dc63 Make linux-dri-x86-64 more like linux-dri-x86. Add ARCH_FLAGS. This is
where things like "-m64" or "-m32" should be specified.  Using this, a
32-bit DRI build can be done on an x86-64 system by doing 'ARCH_CFLAGS=-m32
make linux-dri-x86'.  Minor tweaks to linux-dri to support these changes.
2005-04-06 21:34:34 +00:00
Ian Romanick
29c909f81c Make glxgears_fbconfig compile and respect the DISPLAY setting. Add it
to the Makefile as well.
2005-04-05 20:43:06 +00:00
Keith Whitwell
5234d17514 Don't call PrimitiveNotify with an invalid primitive. Fix ipers
wireframe mode.
2005-04-05 10:30:05 +00:00
Brian Paul
c39a4bc83c s/Togle/Toggle/ 2005-04-04 20:06:40 +00:00
Brian Paul
a92100a3c6 updated warning string to match patch in bug report 2868 2005-04-04 16:06:16 +00:00
Brian Paul
fe1230f1c8 Use FEATURE_shading_language to control whether the shading language
compiler is hooked in.  May be enabled on compiler command line by setting
-DFEATURE_shading_lanuage=1.
2005-04-01 01:41:54 +00:00
Adam Jackson
26772ac988 Disable _mesa_3dlabs_create_{program,shader}_object references. 2005-03-30 17:02:18 +00:00
Brian Paul
425569bbc5 Disable C++ shading language code yet again. Doesn't compile with older
g++ installations.
2005-03-29 02:46:59 +00:00
Brian Paul
93b52d9484 re-enable shading language sources 2005-03-29 02:31:43 +00:00
Brian Paul
1706ba4101 re-enable _mesa_init_shaderobjects_3dlabs() call 2005-03-29 02:31:11 +00:00
Brian Paul
9a54843a94 fix a variety of warnings/errors 2005-03-29 02:28:21 +00:00
Brian Paul
cb80e3905c disable 3dlabs shading language code until build is fixed 2005-03-26 19:45:40 +00:00
Brian Paul
32e845f05e disable _mesa_init_shaderobjects_3dlabs() call until build is fixed 2005-03-26 19:45:08 +00:00
Brian Paul
7d4abc9b3a remove INSTALL.GNU from tarball list 2005-03-26 19:22:06 +00:00
Brian Paul
a62fe7f5e3 obsolete 2005-03-26 19:21:07 +00:00
Michal Krol
00e599e783 implement gl2_3dlabs_shhandle interface; resolve few TODOs 2005-03-25 12:16:53 +00:00
Michal Krol
1d7f71924d cleanup query functions 2005-03-25 12:12:50 +00:00
Michal Krol
05ab19ef43 add _mesa_init_shaderobjects_3dlabs() declaration 2005-03-25 12:07:31 +00:00
Michal Krol
a095aa4f4b fix comments; fix TBuiltInResource typedef 2005-03-25 12:05:30 +00:00
Michal Krol
675f802542 fix comments; disable DLL linkage for WIN32 2005-03-25 12:03:58 +00:00
Felix Kuehling
116986bad5 Fixed segfault due to an off-by-one error in SAVAGE_TEX_MAXLEVELS. 2005-03-24 11:53:19 +00:00
Felix Kuehling
798e753e07 Initialize texture addresses to something valid. 2005-03-23 17:59:09 +00:00
Keith Whitwell
ce1d7ee5ee remove file after merge 2005-03-23 12:01:08 +00:00
Brian Paul
068039eec1 no change 2005-03-23 03:34:24 +00:00
Brian Paul
05bbafa01a use $(*_LIB) in the *_LIB_NAME definitions 2005-03-23 02:12:21 +00:00
Keith Whitwell
8fb17f5b3f rename mesaVis to try and improve clarity 2005-03-22 14:30:30 +00:00
Keith Whitwell
3e62d3a8d8 add FreeTexImageData hook to help single-copy texturing in drivers 2005-03-22 14:27:10 +00:00
Keith Whitwell
050b77a9ac merge unichrome changes from branch 2005-03-22 14:25:55 +00:00
Keith Whitwell
59b4b7e07e Remove test for defined(DRM_USE_MALLOC) around definition of
drmSIGIOHandler().
2005-03-22 13:34:27 +00:00
Keith Whitwell
46d50d9e8e Add more formats to test. 2005-03-22 13:32:35 +00:00
Keith Whitwell
de4fe1e3c5 Add DRM_USE_MALLOC flag 2005-03-22 13:31:35 +00:00
Keith Whitwell
7f8e10f96c Calculate haveAccumBuffer, haveDepthBuffer and haveStencilBuffer in
driFillInModes().
2005-03-22 13:16:20 +00:00
Michel Dänzer
e7c7a0f353 Add support for production version of ATI RN50/ES1000. (ATI Technologies
Inc.)
2005-03-18 23:05:07 +00:00
Aapo Tahkola
6bd390743d Misc fixes. 2005-03-18 14:44:27 +00:00
Michal Krol
2fb2e27e28 update against 03-Feb-2005 release 2005-03-18 14:28:02 +00:00
Michal Krol
5b641a516e enable all 3dlabs front-end compiler sources 2005-03-18 14:21:07 +00:00
Michal Krol
706bb1c714 a little program to change // comments to /* */ ones 2005-03-18 14:07:47 +00:00
Michal Krol
1d5c727bba glslang flex and bison sources:
flex glslang.l
bison -t -v -d glslang.y
mv glslang.tab.c Gen_glslang_tab.cpp (shouldn't be .c?)
mv glslang.tab.h glslang_tab.h
2005-03-18 12:18:00 +00:00
Aapo Tahkola
a890ceee63 Fix to get doom3 started. 2005-03-17 22:28:06 +00:00
Ian Romanick
8a7dcd97bd xmllint fixes. Revert 'note_unflushed' changes that were accidetnally
committed in the last version.
2005-03-17 22:01:39 +00:00
Aapo Tahkola
a78bbd0816 Simple TCL stage and ability to disable vps. 2005-03-17 21:50:01 +00:00
Ian Romanick
80a939cafb Enable the generation of server-side __glGetBooleanv_size and related
functions.  There are two parts to this.  First, a size element with a name
"Get" is shorthand for having four separate size elements with names
"GetIntegerv", "GetDoublev", "GetFloatv", and "GetBooleanv".  Additionally,
a count of "?" is treated specially.  This causes a call to a handcoded
function named "__gl<base name>_variable_size".  This is *only* needed to
support GL_COMPRESSED_TEXTURE_FORMATS.  That enum can return a variable
number of values depending how many compressed texture formats are supported
by the implementation.

Fix a problem with glGetProgram{Local,Env}Parameter[df]vARB,
glAreProgramsResidentNV, and glGetVertexAttribivNV.  These changes only
affect code generated for the server-side.

The changes to enum.c are caused by enums added for the server-side
__glGetBooleanv_size functions.
2005-03-17 21:48:37 +00:00
Ian Romanick
6af6a69312 Minor refactoring and code tweaking. The only notable chage is that
FilterGLAPISpecBase::xref is replaced by
FilterGLAPISpecBase::functions_by_name.  The notable difference between the
two is that ::functions_by_name includes all functions, whether they have an
assigned offset or not.  This feature will be useful (necessary) when more
server-side code is generated.
2005-03-17 20:56:13 +00:00
Ian Romanick
979f35fb78 Minor vertex array support tweaks. These are in preparation for the
(eventual) addition of support for ARB_vertex_buffer_object.  Elminitate the
need for array_state_vector::large_header.  Make some very minor tweaks to
the handling of the indices pointer in emit_DrawElements_old.
2005-03-17 20:36:20 +00:00
Ian Romanick
b81efaaa1a Minor vertex array support tweaks. Most of these are in preparation for the
(eventual) addition of support for ARB_vertex_buffer_object.

Move all the private vertex array data structures out of
indirect_vertex_array.c and into indirect_va_private.h.

Rename array_state_vector::enabled_array_count to
array_state_vector::enabled_client_array_count.

Make sure that both the GL extension string and the server GL version are
available when __glXInitVertexState is called.

Make sure that array_state::normalized is set correctly in the array's
gl*Pointer function.
2005-03-17 20:13:09 +00:00
Ian Romanick
00e760c971 Refactored some of the code for PrintGlxReqSize_[ch]. This ensures that the
same set of functions will be iterated for both the generated C-source file
and the generated header file.
2005-03-17 01:50:32 +00:00
Ian Romanick
3f35fbbf66 Fix the handling of zero-sized output parameters (i.e., those with type
'GLvoid *').  This fixes the GLX protocol for glGetProgramStringARB.  This
fixes bugzilla #2747.

Remove the 'ignore="true"' from glVertexAttrib4bvARB.  This fixes bugzilla
#2746.
2005-03-17 01:48:11 +00:00
Ian Romanick
9eae0b9f19 Hard-code the client-side maximum GL version. It turns out that there are
some flaws in the calculation code when the highest version listed in
known_gl_extensions is supported.  This code would also have some problems
with some of the new features (that don't have an associated extension) on
GL 2.0.
2005-03-17 01:36:24 +00:00
Aapo Tahkola
c1aa3d1e6f Proper VAP output configuration as R300_RS_ROUTE_0_COLOR became optional and broke arbvptorus(takes no input color but produces output color). Also removing some useless code. 2005-03-16 22:32:48 +00:00
Ben Skeggs
dd9da8cdb5 Fixed some strangeness when mixing textured/flat primitives. Skipping texture units should render correctly also. Aapo, I dont think I broke glxgears again on you... 2005-03-16 00:54:09 +00:00
Roland Scheidegger
fbe5296d14 add support for user-configurable brilinear filtering on r200 2005-03-15 22:23:29 +00:00
Aapo Tahkola
7541794373 Fix to get glxgears display anything. 2005-03-15 20:55:29 +00:00
Ben Skeggs
3c4c86aff2 For some reason the Makefile didn't commit.. 2005-03-15 17:09:35 +00:00
Ben Skeggs
34dd4843d7 Initial multitexturing support. Old behaviour can be re-enabled by changing ifdefs in r300_setup_rs_unit and r300SetupPixelShader in r300_state.c\nRequires DRM update. 2005-03-15 17:00:44 +00:00
Ian Romanick
7457a648d2 If setting GL_PACK_INVERT_MESA results in a GL error, log it. 2005-03-14 22:09:31 +00:00
Felix Kuehling
bd5bba8470 When timestamping textures, need to emit the event with SAVAGE_WAIT_3D
set. Otherwise the 3D engine may still be using a texture that is
being overwritten. In order to minimize the cost of waiting, timestamp
textures only when needed: when a texture image changes, when a
different texture is bound to a texture unit or when a texture unit is
disabled. (Used to be after flushing every command buffer.)
2005-03-14 21:52:46 +00:00
Peter Zubaj
e2e4a5c992 Stencil support
Reflex from mesa demos doesn't work
TODO - double side stencil
I hope that I didn't break anything
2005-03-14 20:35:00 +00:00
Michal Krol
02eb36fa8d re-enable slang sources 2005-03-14 12:43:59 +00:00
Michal Krol
0c7d2fff1e make it compile under linux 2005-03-14 12:24:32 +00:00
Michal Krol
5c9d21df3d make it compile under gcc 3.3.2 2005-03-14 12:23:14 +00:00
Michal Krol
8998de569c fix enum comma 2005-03-14 12:19:36 +00:00
Aapo Tahkola
278c6025f9 Replacing alpha test bits with values that give desired results as compaired to software rendering. Alpha test in textures is still completely broken as can be seen in progs/demos/fire and various games. 2005-03-13 12:23:08 +00:00
Felix Kuehling
4f05e61543 Updated savage_dri.h from Xorg CVS. This removes definitions that are
not part of the DDX->DRI interface and should never have been in this
file in the first place.
2005-03-13 00:20:03 +00:00
Felix Kuehling
45f26f9979 Removed savagedma.[ch]. They have been unused for a while and were only
kept around for reference. Now that command DMA is implemented in the
DRM module they are no longer needed.
2005-03-12 23:00:53 +00:00
Aapo Tahkola
203bd3e8ec Unlike radeon and r200 drivers r300AllocCmdBuf allocs dwords not bytes. 2005-03-12 10:14:09 +00:00
Ian Romanick
91c219d906 Add support for ARB_draw_buffers and ARB_occlusion_query. The GLX protocol
for these extensions (as well as ARB_vertex_program and ARB_matrix_palette)
was just approved by the ARB on 8-Mar-2005.  Now the only extension missing
for 1.5 support is ARB_vertex_buffer_object.

The opcodes for ARB_matrix_palette were also added to gl_API.xml.  Since
this extension isn't supported by Mesa, no code is generated for it.  Some
tabs were also converted to spaces in the comment for
GetCompressedTexImageARB.
2005-03-11 20:55:03 +00:00
Brian Paul
522ea42718 add MAT_DIRTY_FLAGS in _math_matrix_mul_floats(), (bug 2696) 2005-03-11 14:54:51 +00:00
Paul Mackerras
e24a9c10b5 Add suitable definitions for the _REV formats, plus a comment
explaining why they are the same as the non-REV formats now that
textures don't get byte-swapped on their way to the chip.
Fix the ARGB4444 and L8 formats.
Add entries for the A8 and RGB332 formats.
2005-03-11 11:38:23 +00:00
Felix Kuehling
96035d54f3 - Flush before updating the timestamp of a texture heap from a bound texture.
- Flush before using a new texture or before disabling a texture unit,
  because savageFlushCmdBuf can only update the timestamp of the last
  used texture. This fixes corruption in quake2 with single-textured
  lighting.
2005-03-10 22:45:00 +00:00
Felix Kuehling
746df56717 If the texture image changed force emitting the texture address, even
if it didn't change. This seems to flush texture cashes. Fixes
multi-textured lighting in quake2.
2005-03-09 15:28:47 +00:00
Vladimir Dergachev
5737fda093 Don't use R200 texture constants - R300 fields are all different. 2005-03-09 05:31:31 +00:00
Vladimir Dergachev
439f7feab1 Deal with texture formats in a more robust way. 2005-03-09 00:40:55 +00:00
Aapo Tahkola
f0d484fa5a Replacing some RADEON cmd types with r300 counterparts. 2005-03-08 22:29:45 +00:00
Aapo Tahkola
2579c32a5f Improving Vladimirs alpha test fix a bit as it turns out r300Enable didnt correctly disable alpha test. Vertex programs with high vertex count now run a lot faster as software fallback is no longer on. Also disabling 'temp to result'-instructions as they probably violate the spec and dont seem to be something thats needed. 2005-03-08 03:29:46 +00:00
Ian Romanick
0bd5373d94 Actually *use* the count_scale value associated with a parameter. 2005-03-06 08:55:39 +00:00
Felix Kuehling
9d05d3dd30 Don't synchronize after each frame. Allow the GPU to be one frame
ahead of the CPU for more parallelism of CPU and GPU. Unfortunately
there seems to be some broken hardware (like my ProSavageDDR) on which
status register updates are delayed sometimes. This leads to very
jerky animation if the hardware can buffer more than the current
frame. A new option "sync_frames" can be used as a remedy on such
broken hardware.
2005-03-06 03:52:01 +00:00
Felix Kuehling
e6aa21156a - Fixed two bugs related to DMA buffer handling that showed up with the
new DRM version 2.4 and command DMA.
- Flush less.
- Bumped the driver date.
2005-03-06 01:28:30 +00:00
Vladimir Dergachev
a30402b56a Add format 15. It turned out to be X,X,X,X,X8. 2005-03-05 22:20:57 +00:00
Dave Airlie
07561c6b32 Fixing memset on ia64 & other archs
From: Stephane Marchesin
2005-03-05 06:38:59 +00:00
Vladimir Dergachev
a4296239d4 Enable VB mode rendering by default. If anyone thinks this is wrong, *please* feel free to change it back.
My reasons:

    * immediate mode is broken
    * vb mode is faster
    * vb mode is the right way to do it.
2005-03-05 06:31:36 +00:00
Vladimir Dergachev
3f9467c946 Do properly initialize ALPHA_TEST register instead of carefully preserving bogus value. This fixes many, many rendering issues which I wrongly blamed on texture programming or performance.. 2005-03-05 06:10:09 +00:00
Dave Airlie
1bb14ad90c fix for solo to set the mode, and make solo gcc2 friendly...
From: Stephane Marchesin
2005-03-05 04:00:09 +00:00
Roland Scheidegger
87030f6618 remove one of the two _tnl_isolate_materials function calls 2005-03-05 00:04:20 +00:00
Adam Jackson
8ff72e9723 Add preliminary EGL headers. 2005-03-04 20:18:55 +00:00
Ian Romanick
b47731f24d Import fixes from X.org tree (Søren Sandmann <sandmann@redhat.com>). 2005-03-04 17:53:24 +00:00
Rune Petersen
bc6bf401f5 Set pipes for R420 cards. Gives a nice speedup. This needs to be tested on r420 cards with less than 16 pipes. 2005-03-04 15:48:40 +00:00
Vladimir Dergachev
984d527626 Add a couple of helper functions for completeness. 2005-03-03 23:18:19 +00:00
Ian Romanick
fdb5a87f91 Fix some errors in the parameter descriptions in serveral vertex / fragment
program related functions.
2005-03-03 21:22:46 +00:00
Ian Romanick
ce77d37264 Check for some common function parameter description errors in the
endElement handler for <function>.  This catches the errors as early as
possible and makes debugging other code easier.
2005-03-03 21:21:59 +00:00
Ian Romanick
6e776f25fd When building in the X-Server, attr.depth doesn't exist. Instead, use
(XMesaDrawable)w)->depth in the error message.
2005-03-03 19:56:11 +00:00
Brian Paul
c1f2f9090b change gl_buffer_object's Size field to GLsizeiptrARB type 2005-03-03 02:05:33 +00:00
Brian Paul
7644bfb536 Added linux-x86-32 config to force building 32-bit objects in a 64-bit environment. 2005-03-03 01:44:42 +00:00
Brian Paul
3e1961839e if building 32-bit objects in 64-bit environment, use -m32 flag 2005-03-03 01:38:13 +00:00
Alan Hourihane
fff3b2f318 use COPY_CLEAN_4V macro to replace using both ASSIGN_4V & COPY_SZ_4V 2005-03-02 18:57:01 +00:00
Brian Paul
b960c14cbb Added a bunch of new comments, minor code clean-ups. 2005-03-02 16:37:24 +00:00
Brian Paul
3db7ae3a38 Using glColor3 commands to update materials could result in an undefined
alpha value.  Fixed.
2005-03-02 16:31:58 +00:00
Brian Paul
7cd2ae9d97 added stub functions for GLX_MESA_allocate_memory 2005-03-01 02:51:07 +00:00
Ian Romanick
03dc437363 Clean-up some warnings caused by the addition of vertex / fragment program
protocol support (reported by Adam Jackson).  Added code to validate the
'type' parameter to the draw element functions.
2005-02-28 19:37:10 +00:00
Brian Paul
80875253ce additional parenthesis in TNL_CONTEXT macro (Nicolai Haehnle) 2005-02-28 17:45:11 +00:00
Aapo Tahkola
d1e40c9bdd fix for 'nasty bug' and some sanity checks to avoid buffer overruns. Bumping VSF_MAX_FRAGMENT_LENGTH as it seems a bit low otherwise. 2005-02-28 00:27:02 +00:00
Brian Paul
6c0c91714c silence warnings 2005-02-27 16:23:41 +00:00
hmarson
87a2f3df64 Added 0x4e51 - Saphire 9600 256MB
0x4e71 - Saphire 9600 256MB - Second Head...
2005-02-27 12:12:25 +00:00
Dave Airlie
ab7312ef63 precedence precedence precedence.. add some brackets 2005-02-27 07:43:18 +00:00
Brian Paul
67742383e8 Rename _mesa_update_buffers() to _mesa_update_draw_buffer_bounds() and do
additional checks.
Replace _mesa_init_buffers() with _mesa_init_scissor() and _mesa_init_multisample().
2005-02-26 17:16:12 +00:00
Dave Airlie
4932ba28ad Add a dri config option to enable the max texture level hack
make ycbcr depend on a CHIPSET define .. needs to be filled in though
2005-02-26 05:24:04 +00:00
Dave Airlie
8ca515097f use girl2.rgb by default 2005-02-26 04:56:25 +00:00
Dave Airlie
c68233cb35 Add glXAllocateMemoryMESA demo app using ycbcr...
add girl2.rgb which is a slightly resized girl.rgb so client texturing works
2005-02-26 04:51:47 +00:00
Dave Airlie
9bfd9582d4 bring over structs from Xorg glx.h to make Mesa glx.h the one true glx.h 2005-02-26 03:55:44 +00:00
Dave Airlie
24dcc6b6bf Add GLX_MESA_allocate_memory from Xorg glx.h 2005-02-26 03:51:17 +00:00
Ian Romanick
f3a6e4fa5b Fairly significant changes to enums.c and the way it is generated. enums.c
now contains 3 static tables.  The first table is a single, large string of
all the enum names.  The second table is an array, sorted by enum name, of
indexes to the string table and the matching enum value.  The extra string
table is used to eliminate relocs (and save space) in the compiled file.
The third table is an array, sorted by enum value, of indexes into the
second table.

The [name, enum] table contains all of the enums, but the table sorted by
enum-value does not.  This table contains one entry per enum value.  For
enum values that have multiple names (e.g., 0x84C0 has GL_TEXTURE0_ARB and
GL_TEXTURE0), only an index to the "best" name will appear in the table.
gl_enums.py gives precedence to "core" GL versions of names, followed by ARB
versions, followed by EXT versions, followed, finally, by vendor versions
(i.e., anything that doesn't fall into one of the previous categories).  By
filtering the unneeded elements from this table, not only can we guarantee
determinism in the generated tables, but we save 364 elements in the table.

The optimizations outlined above reduced the size of the stripped enums.o
(on x86) from ~80KB to ~53KB.

The internal organization of gl_enums.py was also heavily modified.
Previously enums were stored in an unsorted list as [value, name] tuples
(basically).  This list was then sorted, using a user-specified compare
function (i.e., VERY slow in most Python implementations) to generate a
table sorted by enum value.  It was then sorted again, using another
user-specified compare function, to generate a table sorted by name.

Enums are now stored in a dictionary, called enum_table, with the enum value
as the key.  Each dictionary element is a list of [name, priority] pairs.
The priority is determined as described above.  The table sorted by enum
value is generated by sorting the keys of enum_table (i.e., very fast).  The
tables sorted by name are generated by creating a list, called name_table,
of [name, enum value] pairs.  This table can then be sorted by doing
name_table.sort() (i.e., very fast).

The result is a fair amount more Python code, but execution time was reduced
from ~14 seconds to ~2 seconds.
2005-02-26 01:09:35 +00:00
Ian Romanick
4e262cfb07 Accidentally committed wrong version with the previous commit set. 2005-02-25 23:02:33 +00:00
Ian Romanick
40af76bbaa Add GLX protocol support for ARB_fragement_program,
ARB_fragment_program_shadow, ARB_vertex_program, NV_fragment_program,
NV_fragment_program_option, NV_fragment_program2, NV_vertex_program,
NV_vertex_program1_1, NV_vertex_program2, NV_vertex_program2_option,
NV_vertex_program3, and ATI_text_fragment_shader.
2005-02-25 22:46:30 +00:00
Ian Romanick
1fd3bbc42e Convert the static functions read_pixel_reply, read_reply,
setup_single_request, and setup_vendor_request to the global functions
__glXReadPixelReply, __glXReadReply, __glXSetupSingleRequest, and
__glXSetupVendorRequest.  This will make it easier to add handcoded Single /
VendorPrivate / VendorPrivteWithReply functions.
2005-02-25 01:48:25 +00:00
Aapo Tahkola
ac8020ea9c Another nasty struct size bug found. 2005-02-24 13:59:56 +00:00
Brian Paul
2c6f911e10 More GL_EXT_framebuffer_object: rename some things, added device driver hooks. 2005-02-24 05:47:06 +00:00
Felix Kuehling
7b7d00ca62 Don't forget to update a heap's timestamp when a texture image is
changed. Other drivers don't need to do this because they're swapping
modified textures out of texture memory, which implies a timestamp
update.
2005-02-23 20:51:27 +00:00
Ian Romanick
365a0a7c15 Missed the commit of glxext.c yesterday.
Fixed a flow control problem in glGet*v that could result in the display
not being unlocked.  This also resulted in refactoring a lot more code
out of the glGet*v routines into get_array_data, which was renamed to
get_client_data.
2005-02-23 20:06:52 +00:00
Ian Romanick
2b1ec683d3 Put quotes around $(CC) and $(CXX) so that 'CC=cache gcc' will work. 2005-02-23 19:24:30 +00:00
Brian Paul
ba0fe1832e minor changes to aid debugging, and a new comment 2005-02-23 16:54:18 +00:00
Felix Kuehling
540b260cbd With Savage DRM version 2.3.x or later use event counters for texture
heap aging, similar to the way it's done in the i810 and i855 drivers.
This avoids idling the engine on every texture upload.
2005-02-23 16:37:27 +00:00
Brian Paul
8f5f6b3d59 Sort the enums in the Python code, instead of at runtime. (Zack Rusin) 2005-02-23 16:36:17 +00:00
Ian Romanick
6614766f3e Corrected the value for X_GLrop_SecondaryColor3svEXT. 2005-02-23 00:47:11 +00:00
Ian Romanick
57b5e8538e Missed the Makefile with the previous commit. 2005-02-23 00:24:18 +00:00
Ian Romanick
fdb07636f2 Added __glExtensionBiIsEnabled and __GLXcontext::gl_extension_bits. This
enables libGL to query which extension are exported to applications.

Refactored array-query functionality (from glGet*v) in src/glx/x11/single2.c.

Massive re-write of indirect vertex array support.  The most noticable
effect is that glDrawElements now generates DrawArrays protocol.  The
side-effects (and the main reasons for the re-work) are that it is much
easier to add support for new arrays (e.g., GL_VERTEX_ATTRIB_ARRAY,
GL_WEIGHT_ARRAY_ARB, etc.) and it is much easier to add support for the new
DrawArrays protocol (required to support ARB_vertex_buffer_object).

These changes were primarilly tested with progs/demos/isosurf.
2005-02-22 22:36:31 +00:00
Brian Paul
cb83f62e30 now generated with Python script 2005-02-22 15:42:30 +00:00
Brian Paul
78123bb38b generate enums.c file (Zack Rusin) 2005-02-22 15:39:46 +00:00
Aapo Tahkola
3c69df8a70 New elt buffer code should be fairly stable. 2005-02-22 05:16:42 +00:00
Vladimir Dergachev
e00b729716 Add code to autogenerate vertex shaders.
This is needed for multitexturing to work properly.
2005-02-21 06:09:30 +00:00
Dave Airlie
a2990a9d73 Add DESTDIR install target 2005-02-21 00:20:19 +00:00
Dave Airlie
dee1c795c2 add more functionality to miniglx for glitz 2005-02-20 10:46:34 +00:00
Aapo Tahkola
eb6560bf2b Adding support for front buffer mode, removing some code we dont really need and some new debugging stuff. 2005-02-20 03:01:09 +00:00
Aapo Tahkola
35bc4ac680 Minor fix to border and blend color. 2005-02-19 16:30:56 +00:00
Aapo Tahkola
ff3ce3dd96 Disabling some fallbacks as they cause misc programs not to start and adding some comments. 2005-02-19 03:04:08 +00:00
Aapo Tahkola
42896b2a18 Fix for buffer overrun caused by ALLOC_STATE not having args surrounded by parenthesis. Can you see it? HINT: Anything texture related should now work slightly better. And yes it took me several hours to find it. 2005-02-19 02:25:53 +00:00
Nicolai Haehnle
10b892af96 Print an error if idling the engine before the buffer copy fails.
Be a bit more useful about the sync message after flushing command buffers.

Add an "allmsg" debug name that enables all log messages but does not
enable syncing.
2005-02-18 22:07:20 +00:00
Michel Dänzer
9605806d81 fd.o bug #2576: Add support for ATI RN50/ES1000. (ATI Technologies Inc.) 2005-02-18 20:03:33 +00:00
Nicolai Haehnle
3f22c0966d r300RefillCurrentDmaRegion: Retry buffer acquisition only once, after
waiting for the engine to idle. There's no way for another buffer to
become free anyway once the engine is idle.
2005-02-18 18:57:38 +00:00
Nicolai Haehnle
8281cca82f Always submit command buffers, even when there are no cliprects,
so that we no longer leak DMA buffers (plus, this just might fix some
state-setting related problems, if there were any - but that's unlikely).

Update the DRM to cope with cmdbuf->nbox == 0.
2005-02-18 18:28:52 +00:00
Aapo Tahkola
4d73f1af35 We dont need to call r300EmitAOS if we arent going to draw anything(r300_get_num_verts returns 0). 2005-02-18 16:58:19 +00:00
Nicolai Haehnle
26d812ae00 Reset nr_released_bufs to 0 after the command buffer has been submitted.
Added a more verbose comment about nr_released_bufs in r300_context.h
2005-02-18 16:34:14 +00:00
Brian Paul
f448e632b6 XMesaGetDepthBuffer() returned wrong bytesPerValue (Karl Schultz) 2005-02-18 14:49:27 +00:00
Brian Paul
49f7430b12 s/0/NULL/ (Jeff Muizelaar) 2005-02-18 14:44:00 +00:00
Nicolai Haehnle
d73b929ef2 Fix: RADEON_DEBUG is a bitfield, so use & to check for flags, not == 2005-02-18 11:27:24 +00:00
Nicolai Haehnle
6f37e76272 Fixing *lots* of warning messages, especially concerning unportable
whitespace before preprocessor commands.

Please, can you try to keep the warnings down? Try running make with
make -s sometime to see just how bad an offender the current code is.
2005-02-17 22:07:32 +00:00
Nicolai Haehnle
74477b24a8 RADEON_DEBUG is a bitfield, so use & instead of ==.
Also, put the hash in preprocessor directives at the beginning of the line
to fix error messages.
2005-02-17 21:45:20 +00:00
Aapo Tahkola
78152f85e7 Switching to start_index32_packet. 2005-02-17 18:16:46 +00:00
Aapo Tahkola
002a64cc48 magic_1 handling... 2005-02-17 18:02:28 +00:00
Ben Skeggs
ca4116bfce oops. 2005-02-17 14:34:51 +00:00
Brian Paul
0846e52d46 s/0/NULL/ (Jeff Muizelaar) 2005-02-17 14:12:50 +00:00
Brian Paul
6e2fd96627 remove extern (Jeff Muizelaar) 2005-02-17 14:11:56 +00:00
Ben Skeggs
a9eb712fc9 Make immediate code do a LOAD_VBPNTR again 2005-02-17 12:37:40 +00:00
Dave Airlie
934be3266f fix some 0->NULLs 2005-02-17 11:13:59 +00:00
Vladimir Dergachev
c8af2b5a52 Cleanup formatting a little bit. 2005-02-17 06:39:09 +00:00
Brian Paul
f321f16e83 fix non-Win32 definition of GLUTAPIENTRY, remove some cruft 2005-02-16 19:52:35 +00:00
Aapo Tahkola
41d180c899 Support for idx buffers. Leaving it on by default as it doesnt seem to cause any lock ups nor other issues. Tests with one object using elts should pass. Introducing more than one object will cause indices to mix up as far as i can see. DRM update is needed for this code to work\! 2005-02-16 19:04:32 +00:00
Rune Petersen
8eeef423e9 small cleanup, remove some warnings 2005-02-16 16:52:11 +00:00
Brian Paul
1ff8f50f2f fixed problems with parse_float() (fd.o bug 2520) 2005-02-16 15:08:29 +00:00
Brian Paul
2c28dd892c s/0/NULL/ (Jeff Muizelaar) 2005-02-16 15:02:25 +00:00
reist
5c2f3d5d3a get two textures to work 2005-02-16 10:38:57 +00:00
Ben Skeggs
d588311dbb Don't enable fog. It's broken 2005-02-16 06:24:07 +00:00
Ben Skeggs
f446027656 Share routing code between immd/vb. Fix breakage of vertex programs in vb mode. 2005-02-15 19:07:35 +00:00
Dave Airlie
233d93d47e Add missing texture formats for completeness 2005-02-15 11:20:11 +00:00
Dave Airlie
70f2be9cc6 add some missing texture formats and bits from r200 docs 2005-02-15 10:44:20 +00:00
Jerome Glisse
9e5a0b8895 Added texture format table for big endian (this is a tempory hack). 2005-02-15 10:40:34 +00:00
Dave Airlie
09298228c6 add EnableExtension so r200 enables all its extensions, add mesa memory
extension entry points
2005-02-15 08:40:24 +00:00
Roland Scheidegger
e82cb7852b remove accidentally commited printf for tiling support 2005-02-14 17:37:52 +00:00
Ian Romanick
4ea4589302 Simple test for GL_MESA_pack_invert. 2005-02-14 17:07:29 +00:00
Daniel Borca
a5f2dcb57b updated doc 2005-02-14 15:06:50 +00:00
Daniel Borca
72b2af6035 removed detritus 2005-02-14 15:05:24 +00:00
Daniel Borca
84396a72df separated DOS GLUT from GLX GLUT.
added a few FreeGLUT specific functions.
2005-02-14 15:04:52 +00:00
Aapo Tahkola
0340663eb7 Support for blend color(not tested), "proper line width/point size" clamps and fix for glxinfo problem. 2005-02-14 13:14:16 +00:00
Keith Whitwell
8352666a9d mesa-fix-one-bit-signed-bitfield.patch from Jeff Muizelaar 2005-02-14 09:36:00 +00:00
Dave Airlie
8d12a6d537 fix some signed vs unsigned warnings 2005-02-14 09:27:38 +00:00
Dave Airlie
fbdd7a5e74 fix signed vs unsigned comparison warnings in tnl_dd 2005-02-14 09:25:08 +00:00
Daniel Borca
aeee36a311 killed a few warnings 2005-02-14 08:19:54 +00:00
Daniel Borca
2f99f6558c added a bunch of const in the decoder 2005-02-14 08:08:35 +00:00
Daniel Borca
b6082fd236 static const' instead of const static' 2005-02-14 08:02:50 +00:00
Daniel Borca
0a13cebaa1 ProgramCallbackMesa must match the prototype 2005-02-14 08:01:59 +00:00
Eric Anholt
baa832d311 Change another usage of __AMD64__ to the standard __amd64__, and remove
__AMD64__ from the linux configs so it won't creep back in as easily.  Fixes
hang on FreeBSD on the first lock grab.
2005-02-14 06:57:27 +00:00
Eric Anholt
1718e34352 Don't forget to -L/usr/local/lib to grab expat. 2005-02-14 06:54:50 +00:00
Michel Dänzer
d5e008b84b Typo fix. 2005-02-13 18:37:36 +00:00
Rune Petersen
3271390362 initial r400 support: r400 cards are treated as RV350 for now. 2005-02-12 21:29:51 +00:00
Michel Dänzer
37cbb521d3 MMIO endianness fixes for Radeon drivers. 2005-02-12 20:37:07 +00:00
Brian Paul
2752177ade unlock mutex upon error return (Jeff Muizelaar) 2005-02-12 18:43:38 +00:00
Felix Kuehling
f640ee2f6e Fall back properly when GL_COLOR_LOGIC_OP is enabled and != GL_COPY.
Add missing per-primitive fallback for polygon stipple.
2005-02-12 16:02:30 +00:00
Felix Kuehling
25817dc26b Offset LOD bias by about 0.3 to match software rendering more closely.
Another small tweak to subtile upload (mostly cosmetic).
2005-02-12 14:37:17 +00:00
Felix Kuehling
ed9119b72a Make glean's masked clear test pass. 2005-02-12 14:35:17 +00:00
Felix Kuehling
0872b85b1e Savage3D-based chips seem so use a constant tile stride of 2048 for
vertically incomplete tiles, but only if the color depth is
32bpp. Nobody said this was supposed to be logical!
2005-02-12 14:03:05 +00:00
Ben Skeggs
6125515cec Enabled vertex buffer mode as default. 2005-02-12 11:15:55 +00:00
Keith Whitwell
cc70176446 Turn _via_fastrender_stage back on. 2005-02-11 18:25:55 +00:00
Keith Whitwell
a0c8524924 mesa-main-0-NULL.patch from Jeff Muizelaar 2005-02-11 09:34:05 +00:00
Ben Skeggs
2d10924a14 Port of r200 VB code. VB path should be as fast as the immediate path now, tuxracer should render correctly. Immediate path was left enabled. 2005-02-11 05:59:13 +00:00
Roland Scheidegger
4837ea3020 add texture micro and macro tiling to radeon/r200 driver. This can improve performance up to 15% in texture-intensive applications. Convert the driver to use the correct blit format and blit width instead of fixed blit format and blit width when uploading textures to make it work. 2005-02-10 22:36:06 +00:00
Roland Scheidegger
26d3159125 add the new RADEON_CUBIC_OFFSET/FACES state packets/registers to radeon (and r200) sanity code 2005-02-10 21:59:20 +00:00
Roland Scheidegger
b66251f76d (Andreas Stenglein) fix projected textures with swtcl, they need the w coordinate of the vertex (bugzilla #1648) 2005-02-10 18:28:44 +00:00
Brian Paul
d9468c9405 new comments, fix zoffset error test 2005-02-10 16:08:07 +00:00
Brian Paul
f901072afb lots of updates 2005-02-10 15:18:26 +00:00
Aapo Tahkola
1982a66838 Added kindly note about single buffer mode. 2005-02-10 12:40:41 +00:00
Aapo Tahkola
3f9bae90c3 Updating master copy of r300_reg.h and turning immediate mode back on 2005-02-10 11:02:55 +00:00
Keith Whitwell
b97e478fe9 mesa-tnl-0-to-NULL.patch from Jeff Muizelaar 2005-02-10 10:57:22 +00:00
Keith Whitwell
a9a4c5489e Catch no-op vertex buffers consisting only of vertices which will
also appear in a future buffer.
2005-02-10 10:55:30 +00:00
Aapo Tahkola
a85eb9c0a7 Removing some regs that are wrong and adding some comments to r300_reg.h . 2005-02-10 10:45:54 +00:00
Aapo Tahkola
dd951e6dde Support for PolygonMode. Not too far from working even though i almost gave up once already. 2005-02-10 08:56:35 +00:00
Vladimir Dergachev
d190734875 Fix copy'n'paste errors.
Print command buffer sizes during startup (TODO: remove 1 || when the driver is more mature).
2005-02-10 07:39:11 +00:00
Aapo Tahkola
4afa1d7abb Turns out unknown5 was border color. texwrap looks good now. 2005-02-10 05:11:31 +00:00
Aapo Tahkola
58010eb35c Adding support for selecting line width. Stipple patterns still cause lots of trouble. 2005-02-10 04:43:07 +00:00
Ian Romanick
816c0c932d Simple test for ARB_texture_env_crossbar functionality. It is difficult
to come up with good tests for this functionality that don't require
either ATI_texture_env_combine3 or NV_texture_env_combine4.
2005-02-09 22:16:38 +00:00
Brian Paul
4f1f5e336b glGet*(GL_FRAGMENT_PROGRAM_BINDING_NV) was returning the vertex program binding. 2005-02-09 18:46:16 +00:00
Brian Paul
a8d5b176b5 Added a test/clamp in the scale_internal_*() functions to prevent reading
a row of pixels beyond the input buffer's bounds.
FDO/Mesa bug #2510.
2005-02-09 16:18:39 +00:00
Aapo Tahkola
fe7aa08ad9 Enabled user-defined point size, enabled zbiases for rest of the primitives and fixed bad vertex number checks triggered by nurb. 2005-02-09 05:53:34 +00:00
Brian Paul
1f6735a6a5 initial support for GL_EXT_framebuffer_object 2005-02-09 03:51:11 +00:00
Brian Paul
f0bbbf66b8 implement the 'completeness' tests 2005-02-09 03:50:30 +00:00
Ian Romanick
d863424032 Generate GLX protocol for pixel single commands. 2005-02-09 03:11:23 +00:00
Felix Kuehling
799bc13da2 Fixed stride of incomplete tiles. 2005-02-09 00:45:16 +00:00
Keith Whitwell
4754fc653f SUBPIXEL fixes from Dieter 2005-02-08 20:52:02 +00:00
Vladimir Dergachev
85199453cc Remove #ifdef's around PolygonOffset function.
Print number of missing entry for texture format.
Add alpha-luminance format.
2005-02-08 20:27:09 +00:00
Ian Romanick
a91e0218a3 Correct a couple problems / omissions in the DTD. 2005-02-08 19:52:26 +00:00
Aapo Tahkola
5e4a7581df Typo.. 2005-02-08 19:29:05 +00:00
Aapo Tahkola
6a04cff065 Fix the bug and get zbias back into shape. There might still be some problems with initial zbias... 2005-02-08 19:26:59 +00:00
Michel Dänzer
3dec3c7a74 Call _mesa_ResizeBuffersMESA() in r200Viewport(), fixes incorrect rendering
in bzflag 2.0. (Alexander E. Patrakov)
2005-02-08 17:39:08 +00:00
Brian Paul
8e5f0e62dd clamp anisotropy against max value 2005-02-08 14:44:01 +00:00
Aapo Tahkola
46cde1715f BIG FAT NOTE: Theres a nasty bug somewhere thats causing vb color buffer clears and other things not to work. This bug can be triggered by extending struct r300_hw_state by two struct r300_state_atom's from its current size. Everything zbs and unk42B4 related is now covered with HAVE_ZBS and GA ifdefs. Who wants to fix it? Not i. :) 2005-02-08 07:05:25 +00:00
Adam Jackson
d084982240 Bug #2477: Make GLU/GLw/glut build properly even with -fvisibility=hidden. 2005-02-08 05:46:53 +00:00
Aapo Tahkola
4885a9eb20 Better fix to get tuxracer working. 2005-02-08 05:33:44 +00:00
Aapo Tahkola
1764b78ee9 fog + immediate mode = bad things 2005-02-08 04:46:39 +00:00
Aapo Tahkola
315afce941 Implemented checks that prevent r300 from locking up when bad number of verts are given. Also tweaked WARN_ONCE a bit to handle va-args. 2005-02-08 04:31:29 +00:00
Vladimir Dergachev
3f847b73f3 Let Polygon Offset be turned on and off. 2005-02-08 04:20:40 +00:00
Brian Paul
923b6fc4d9 just some comments 2005-02-08 04:08:56 +00:00
Brian Paul
1864c7d79a a bunch of assorted fixes 2005-02-08 03:46:37 +00:00
Brian Paul
386e997f45 plug in GL_EXT_framebuffer_object functions 2005-02-08 03:46:08 +00:00
Brian Paul
3d2e10564e removed GL_EXT_framebuffer_object tokens 2005-02-08 03:45:44 +00:00
Brian Paul
cf69e051ce added GL_EXT_framebuffer_object enums/funcs. Remove when glext.h is updated 2005-02-08 03:45:08 +00:00
Brian Paul
78e6e59477 Add new entrypoints for GL_EXT_framebuffer_object. 2005-02-08 03:44:24 +00:00
Ian Romanick
87440f531c Definitions for EXT_framebuffer_object. Just <include/> it in gl_API.xml
when ready.
2005-02-08 02:11:44 +00:00
Ian Romanick
6cfd4f7e55 Add the ability to include other XML files by using a
<include name="file"/> element as a sub-element of <OpenGLAPI>.
2005-02-08 02:11:14 +00:00
Brian Paul
463642c0be checkpoint latest work 2005-02-08 02:06:00 +00:00
Brian Paul
d1b1b37270 added missing prototype 2005-02-08 02:05:13 +00:00
Brian Paul
0d22b90540 indentation fix 2005-02-08 02:04:49 +00:00
Aapo Tahkola
27f75a863e To cut the long and boring story short, polygon offsets should now work. vb mode colorbuffer clears are still mysticly broken by offsets... Maybe we need to merge zbs and unk42B4 together? 2005-02-08 01:49:03 +00:00
Brian Paul
049290c584 improved warning message 2005-02-07 15:04:56 +00:00
Keith Whitwell
71699df7de argb8888 optimizations from via branch 2005-02-07 13:20:17 +00:00
Keith Whitwell
8d621b3bdd More texture enums (Andreas Stenglein) 2005-02-07 11:00:32 +00:00
Keith Whitwell
1f2b715988 GL_ARB_texture_rectangle enums (Andreas Stenglein) 2005-02-07 10:36:00 +00:00
Brian Paul
3deaa01c2b additional work on GL_EXT_framebuffer_object 2005-02-07 05:08:24 +00:00
Jerome Glisse
1e42244e82 Added PCI id (0x4152). 2005-02-06 12:37:23 +00:00
Felix Kuehling
66b48d6df6 Disable vertex DMA on SuperSavages. 2005-02-05 22:10:14 +00:00
Felix Kuehling
5bdf2bc6c7 - Fixed scissor rectangle not moving with the window (Xorg bug #1731).
- Flush buffered primitives before changing scissors.
- Require Savage DRM version 2.1.0, so that the broken single-cliprect
  code can finally rest in peace.
- Removed some more dead code.
2005-02-05 21:21:02 +00:00
Brian Paul
d9d972a944 added fbobject.c to sources 2005-02-05 20:00:15 +00:00
Brian Paul
ddc82eefca Some initial work on GL_EXT_framebuffer_object. 2005-02-05 19:56:45 +00:00
Jerome Glisse
2886579324 Added PCI id (0x4152). 2005-02-05 19:52:26 +00:00
Brian Paul
bb7d5f8837 Remove the Shared->TexObjectList pointer and Next field from gl_texture_object.
Was only used by two drivers to walk over all texture objects.  Can do that
via the hash table instead.
Cleaned up some comments for struct gl_texture_object.
2005-02-05 18:12:59 +00:00
Brian Paul
8c3ddf4270 add a few comments 2005-02-05 18:11:05 +00:00
Jerome Glisse
f955218bf1 Modified hw state for big endian computers. 2005-02-05 18:01:21 +00:00
Brian Paul
7aafcc86c7 remove dependency on Shared->TexObjectList 2005-02-05 17:43:33 +00:00
Brian Paul
ce657cf752 remove unneeded code 2005-02-05 17:38:13 +00:00
Brian Paul
cf899d400d removed need for Shared->TexObjectList, walk over texture hash table entries instead 2005-02-05 17:37:00 +00:00
Felix Kuehling
557dce9bc2 Fixed a typo in an assertion. (Don't understand how this ever compiled.)
Found by Andreas Stenglein.
2005-02-05 13:17:34 +00:00
Vladimir Dergachev
b64d4a27cb Warn of unknown texture formats. 2005-02-05 03:13:34 +00:00
Ian Romanick
a02b83115a Fix some mixed spaces / tabs issues in generated code. Commit generated
files that have been trivially changed by other recent commits.
2005-02-05 00:59:57 +00:00
Ian Romanick
0a755ade51 Enable client-side GLX support for texture compression extensions. 2005-02-04 19:29:30 +00:00
Felix Kuehling
19064f818a Added an option texture_heaps that allows selecting which texture heaps
will be used. Implemented this option in the Savage driver. On my
ProSavageDDR uploads to AGP memory are about 1.5 times as fast as
uploads to card memory. On non-IGP hardware the difference may be even
bigger. Now mplayer -gl is getting really usable.
2005-02-04 00:25:41 +00:00
Felix Kuehling
cbff5db516 Made subtile upload a template. This speeds up tiled texture uploads by
about a factor 1.3.
2005-02-04 00:17:21 +00:00
Felix Kuehling
64b85b4563 Use all texture heaps in a fair way when textures need to be kicked in
order to make room for new textures. In particular this fixes texture
trashing on the first heap when the second heap is occupied by
currently unused textures (observed with Torcs and the Savage driver).

Heaps are weighted by their sizes by default but drivers can override
these and apply their own weights based on relative texture upload
speeds to the respective heaps.
2005-02-03 21:40:21 +00:00
Aapo Tahkola
9ea600ff3f Removing some trash and disabling fog fallback as it seem its causing more harm than good. Tuxracer should now work at least with vbs. Fix for vb colorbuffer clear bug is underway... 2005-02-03 19:51:57 +00:00
Aapo Tahkola
fe58074dea Changing vb code to handle inputs correctly. 2005-02-03 19:43:27 +00:00
Vladimir Dergachev
c326f9ffae Start beginning of pixel shader generator.. 2005-02-03 17:48:32 +00:00
Vladimir Dergachev
54b03eefda Forgot to increase the length. 2005-02-03 16:05:21 +00:00
Vladimir Dergachev
d26e464b6a Looks like we need at least one instruction for pixel shader. 2005-02-03 16:01:46 +00:00
Vladimir Dergachev
4c56261075 Get vertex programs supplied by the user work properly with immediate mode - vertex buffer mode worked by accident.
Fix alu_offset in SINGLE_TEXTURE_PIPELINE.
2005-02-03 15:44:06 +00:00
Vladimir Dergachev
19b260119a Since high bits can be used for flags, mask them out.
This stops arbvpwarpmesh from segfaulting and it actually works - with immediate mode rendering.
2005-02-03 06:33:44 +00:00
Vladimir Dergachev
3f0926b612 Remove redundant instructions from fixed pipelines, looks like they do not do anything, at least on my hardware. 2005-02-03 04:16:59 +00:00
Vladimir Dergachev
cb085044c9 Mark ZBIAS definitions. 2005-02-03 03:48:22 +00:00
Vladimir Dergachev
f350617c24 This was too optimistic sorry - all that register does is something weird with polygon culling. 2005-02-03 03:47:12 +00:00
Vladimir Dergachev
f46de6f23b Get Polygon offset fill to work.
Make WARN_ONCE message more informative.
2005-02-03 03:43:01 +00:00
Ian Romanick
94a20cbadf Added a bunch of extensions that were previously supported but weren't
in the gl_API.xml database.  Add "official" support for SGI_color_matrix
and SGI_texture_color_table.  These were previously supported only by
way of ARB_imaging.
2005-02-03 00:38:40 +00:00
Felix Kuehling
eba5b610b9 Check for heap == NULL before driSetTextureSwapCounterLocation. 2005-02-02 15:57:25 +00:00
Felix Kuehling
2eb9e67a5a Don't try to kick textures from a NULL tex heap. 2005-02-02 15:52:29 +00:00
Felix Kuehling
8b21166c14 Fixed flushing of client-side vertex buffers. 2005-02-02 14:43:03 +00:00
Felix Kuehling
1a141b9161 Fixed some debug output that was unconditionally enabled. 2005-02-02 14:42:00 +00:00
Brian Paul
6286dda286 clamp viewport against ctx->Const.MaxViewportWidth/Height instead of MAX_WIDTH/HEIGHT 2005-02-02 14:12:59 +00:00
Aapo Tahkola
1a1c49f8a6 Changed parts of r300_setup_routing to use WARN_ONCE. 2005-02-02 13:29:11 +00:00
Ian Romanick
3fec8c24ec Small refactor. Add glXFunctionIterator, which derrives from
glFunctionIterator and is used by GlxProto.  The difference between the two
iterator classes is that glXFunctionIterator skips functions that the GLX
protocol code does not care about.

Replace all the remaining occurances of glParameter::p_count_parameters and
glFunction::count_parameters with the count_parameter_list.

Add GlxProto::size_call to generate the C code to calculate 'compsize'.

These trivially modify the generated code.
2005-02-02 00:54:45 +00:00
Aapo Tahkola
6b158a7d23 Add a missing break and a reminder. 2005-02-01 23:12:36 +00:00
Aapo Tahkola
b5c90ca7d9 Implement appropriate src checks for attribs/params. 2005-02-01 22:45:11 +00:00
Aapo Tahkola
b5128c6e82 Implemented bunch of ops. 2005-02-01 19:56:52 +00:00
Aapo Tahkola
7bccfa1026 Vertex programs work now with some restrictions. I expect arbvptorus to work
correctly when normals are delivered. Please note that some programs only
start in vb mode as there is something wrong in immediate mode vb code.
2005-02-01 16:56:52 +00:00
Vladimir Dergachev
5dd4030e76 Make WARN_ONCE messages more informative. 2005-02-01 15:51:54 +00:00
Vladimir Dergachev
6d419feec7 Reduce noiseness of the driver. 2005-02-01 15:46:23 +00:00
Vladimir Dergachev
88e155e353 Get alpha in textures to work properly. 2005-02-01 15:27:36 +00:00
Vladimir Dergachev
d4697b0997 Properly set ABLEND and CBLEND registers. The older code worked, but by accident. 2005-02-01 06:55:58 +00:00
Vladimir Dergachev
4a3c6095fc Looks like we can define FIRE_VERTICES correctly. 2005-02-01 05:59:00 +00:00
Vladimir Dergachev
0ab7fb56f5 It helps to print actual values instead of random ones. 2005-02-01 05:58:27 +00:00
Ian Romanick
c2803587b6 Small refactor. Move several utility functions from glX_XML.py to
FilterGLAPISpecBase (in gl_XML.py).  When these functions are used to emit
common #define lines, the will automatically be undefined in
FilterGLAPISpecBase::printFooter if header_tag is set (i.e., the file is a
header file).

These changes do not modify the generated code.
2005-02-01 00:28:47 +00:00
Ian Romanick
ba09c19ed6 Add GlxProto::createEnumFunction and add a 'context' parameter to the
glXEnumFunction constructor.  The allows sub-classes of GlxProto to
over-ride the concrete class used for glXEnumFunction.

In addition to tracking p_count_parameters in glParameter, break the comma
separated list of parameter names into a Python list called
count_parameter_list.  It is now possible to query if a name is the name of
one of the count parameters just by comparing
param.count_parameter_list.count(n) to zero.  Eventually the remaining uses
of p_count_parameters will be replaced with uses of count_parameter_list.

Make sure that 'void *' parameters are handled correctly in
glParameter::size_string.

Add PrintGlxReqSize_h and PrintGlxReqSize_c.  These classes emit prototypes
and functions used on the server-side to determine the expected size of an
incoming GL command.
2005-02-01 00:13:04 +00:00
Adam Jackson
886280763c Bug #2428: #ifdef GLX_DIRECT_RENDERING in DRI drivers is pointless. 2005-01-31 23:40:05 +00:00
Daniel Borca
fc4cabbfa8 makefile update (readtex, showbuffer) 2005-01-31 13:23:55 +00:00
Vladimir Dergachev
e61c8a5c63 Add magic sequence to prevent ClearBuffer from locking up.
Change Polygon.OffsetFill from fallback to warn once.
Quake demo now works, modulo texture rendering issues due to absent pixel shader pipeline.
2005-01-31 06:41:55 +00:00
Vladimir Dergachev
9c1773e505 Use SecondaryColorPtr, not ColorPtr[1] (the latter is NULL).
This fixes segfault in tuxracer-demo. It locks up after this though.
2005-01-31 02:52:59 +00:00
Vladimir Dergachev
15f108335a My bad, the old code works fine if updated to newer Mesa tree. 2005-01-30 22:16:28 +00:00
Vladimir Dergachev
0cd936c01f struct ati_fragment_shader was not defined anywhere, define it to get r300_vertexprog.c to compile. 2005-01-30 22:04:40 +00:00
Brian Paul
b55117042f fix max viewport query 2005-01-30 17:18:08 +00:00
Aapo Tahkola
29d021cd31 Fix for compiler warnings. 2005-01-30 11:12:59 +00:00
Dave Airlie
3aa69b39bf add number of passes count to ati_fragment_shader 2005-01-30 06:24:30 +00:00
Felix Kuehling
5ff53cb448 * Fixed uploading of textures of certain sizes.
* When glTexSubImageND is used, track the set of changed tiles in a
  bit vector and upload only dirty tiles later. This should improve
  the performance of dynamic light maps and gl movie player plugins.
* Renamed debug item "lru" to "tex". Indicate which levels are
  uploaded completely or partially.
2005-01-29 23:26:23 +00:00
hmarson
9ff3c49ef2 Added 0x4e54 (Thinkpad r50p) as PCI_CHIP_RV350_NP 2005-01-29 20:41:31 +00:00
Aapo Tahkola
941d6b008f Beginings of program generation. This code havent been tested nor hooked up. 2005-01-29 17:57:07 +00:00
Brian Paul
3bde211549 remove stray span.y++ 2005-01-29 17:28:45 +00:00
Brian Paul
98a9ad9241 added osmesa16 stuff 2005-01-29 13:48:43 +00:00
Brian Paul
371f576731 assorted fixes 2005-01-29 13:48:27 +00:00
Brian Paul
58f4d67703 fix initial viewport size bug 2005-01-29 13:36:15 +00:00
Brian Paul
c84cde7b0b added missing glFinish() 2005-01-29 12:57:36 +00:00
Aapo Tahkola
fbb478c946 Cleaning up. 2005-01-29 07:17:27 +00:00
Ian Romanick
16c3c74018 Refactor the code to emit multiple-inclusion protection to
FilterGLAPISpecBase.  Since the size_h mode of glX_proto_size.py will be
used to generate multiple header files, add an option to specify the define
that is used for multiple-inclusion protection.

The changes to the header files in this commit are just a side-effect of the
changes to the Python scripts.
2005-01-28 19:00:54 +00:00
Michal Krol
8d27148bbd move file 2005-01-28 18:39:26 +00:00
Ian Romanick
54584df8cc Properly annotate variable-length output parameters. Make sure that the
client-side code doesn't try to calculate the size of the output
parameters.  The server will tell the client how big it is.
2005-01-28 18:20:43 +00:00
Ian Romanick
20b8d9c1b9 Fix some get / set errors with COLOR_TABLE_*. SCALE and BIAS can be
parameters to GetColorTableParameter[if]v.  FORMAT, WIDTH, and the SIZE
enums cannot be parameters to ColorTableParameter[if]v.
2005-01-28 17:58:58 +00:00
Ian Romanick
fdb0527ddc Slightly modify the meaning of the 'handcode' attribute in a 'glx' element.
The attribute can now take one of 4 states.  "false" (the default value)
means that no handcoding is required for the function.  "client" means that
the function must be handcoded on the client-side only.  "server" means that
the function must be handcoded on the server-side only.  "true" menas that
the function must be handcoded on both the client-side and the server-side.

Version 1.14 of glX_proto_send.py accidentally contained a line of this
change.
2005-01-28 17:30:25 +00:00
Ian Romanick
1fca563232 Add an option to emit extra debug code in the generated protocol functions.
The debug version of indirect.c has proven very helpful during the
development of new client-side and server-side GLX protocol code.  This is
put here instead of in the DISPATCH and DISPATCH_RETURN macros in dispatch.c
for two reasons.

1. I only want the debug information when indirect-rendering is used.

2. Functions that require a reply from the server, some of which do not have
a return value (e.g., glFlush, glFinish, glGetLightfv, etc.), do not need
the extra glFinish call.
2005-01-28 16:51:01 +00:00
Aapo Tahkola
b365d28627 Fix wrong comment. 2005-01-28 11:59:37 +00:00
Aapo Tahkola
e451a95ecc Forgot one comment... 2005-01-28 10:08:00 +00:00
Aapo Tahkola
f856b3f10f Add basic sceleton for vertex programs + some other fixes 2005-01-28 09:57:06 +00:00
Ian Romanick
6398a97aff Mark a couple more function parameters as counters. 2005-01-27 19:50:59 +00:00
Ian Romanick
82e22f50f1 Add numerous 'get'-type functions to most of the enums supported by the
server-side GLX implementation.

Correct the protocol for EXT_convolution.  Several functions were
incorrectly listed as 'sop' that should have been 'vendorpriv'.

Remove TexParameter[if]v from the list of functions associated with
TEXTURE_RESIDENT.  The state associated with this enum is read-only.

Sort the enums by value for each particular size.  This ensures that the
signature is the same no matter what the ordering is of the enums in the XML
file.  The side effect is that there are some extra changes in
indirect_size.c.
2005-01-27 19:39:16 +00:00
Aapo Tahkola
d773598224 Add vector distance operator for vertex programs. 2005-01-27 04:42:52 +00:00
Ian Romanick
5aa6dc329b The 'mode' setting of a function within an 'enum' element is now used.
Parameters to glX_proto_size.py are now used to determine whether to emit
either get-type function, set-type functions, or both.  When only get-type
functions are emitted, they can optionally alias set-type functions.  This
would be useful if, for example, the two types were in different source
files.

The real work to implement this is in SizeStubFunctionIterator class.  All
of the logic for which functions to iterate and in which order is
implemented there.
2005-01-27 01:08:48 +00:00
Ian Romanick
5b0dd89370 remove a bunch of temporary #defines, now that glext.h was updated 2005-01-26 19:19:06 +00:00
Roland Scheidegger
a205137423 (Stephane Marchesin, me) Add support for color (framebuffer) tiling to the radeon and r200 driver 2005-01-26 18:05:03 +00:00
Roland Scheidegger
7104ce0a0e new version check to allow to test for a range of ddx major versions, instead of just one major version 2005-01-26 18:02:19 +00:00
Brian Paul
914746b400 remove a bunch of temporary #defines, now that glext.h was updated 2005-01-26 14:45:38 +00:00
Roland Scheidegger
0cbc25480f replace magic number with macro constant RADEON_ZBLOCK16 2005-01-26 14:20:14 +00:00
Brian Paul
8f029f175e just comments/clean-up 2005-01-26 14:02:50 +00:00
Brian Paul
7c58a00a50 added mutex to-do comment 2005-01-26 14:01:53 +00:00
Brian Paul
d01292bc54 just fix a comment and update date 2005-01-26 14:01:28 +00:00
Daniel Borca
b07390c8fd RGB/LUMINANCE texelfetchers (float version) returned 255.0F for alpha channel, instead of 1.0F 2005-01-26 09:47:32 +00:00
Ian Romanick
38e6e09cb8 Add a glFunctionIterator class to iterate over the functions stored in a
higher-level API object.  Use this type of object to implement the
printFunctions method.  Modify other functions that iterate over the list of
functions to use this type of object.
2005-01-25 23:53:13 +00:00
Aapo Tahkola
e4d41524a2 Fixes for clamp modes. 2005-01-25 19:09:23 +00:00
Brian Paul
f106493d8b Use the _mesa_HashNextEntry() function to walk over all textures in the
hash table.
Moving toward removing the gl_texture_object's Next pointer (only used by
glide and tdfx drivers).
2005-01-25 15:16:02 +00:00
Ian Romanick
01ec76dbd5 Stupid text editor...convert wayward tabs to spaces. 2005-01-25 01:36:32 +00:00
Ian Romanick
85f0fa3761 Add a "count" attribute to "enums" elements to set the default count
used for "size" sub-elements.  In the future the "count" attribute may
be removed completely from "size" sub-elements, so gl_API.xml was also
updated.

Support was added for a (currently unused) "mode" attribute for "size"
elements.  Basically, functions are marked as either "get" or "set".  This
will be used in generating size functions for the server-side (where the
"get" functions have to know how much data to return).  It could also be
used to help generate code for src/mesa/main/get.c.
2005-01-25 01:20:11 +00:00
Ian Romanick
cb59bd44db Correctly set the name of the generating script. 2005-01-24 22:07:00 +00:00
Ian Romanick
00772ac42f Move all the code for generating "size" related functions to its own
source file.
2005-01-24 21:56:05 +00:00
Ian Romanick
ad15f1bdea Correct some of the dependencies and clean things up a bit. 2005-01-24 21:43:29 +00:00
Ian Romanick
5ff2b94630 Remove glEnum::startElement, but refactor out some of the common code from
there and glXEnum::startElement to glEnum::process_attributes.
2005-01-24 21:29:13 +00:00
Ian Romanick
0246b2a5c0 Since only one of the places that used glXFunction::command_payload_length
actually used both values, it was refactored into command_fixed_length and
command_variable_length.  glXFunction::offset_of_first_parameter was also
added.
2005-01-24 20:59:32 +00:00
Ian Romanick
7f958e9e11 Make sure that functions added to gl_API.xml that do not have any GLX
section are marked as ignored.  Also ignore any functions that don't have
assigned dispatch offsets.

Fold Adam Jackson's changes to indirect_size.c into the generator scripts so
that they don't get lost.  "DO NOT EDIT" really means "DO NOT EDIT". ;)
2005-01-24 20:08:28 +00:00
Aapo Tahkola
f9f2db5132 border_color causes lockups with vertex buffers. Disabling for now. 2005-01-24 19:26:20 +00:00
Vladimir Dergachev
d7d54423a8 Remove lots of old code that dealed with "magic" texture formats. 2005-01-24 17:09:17 +00:00
Brian Paul
5c6b391900 reenable some assertions 2005-01-24 15:41:08 +00:00
Felix Kuehling
428a5e82fc Converted the Savage texture management to use Ian's common texmem code. 2005-01-24 01:15:12 +00:00
Brian Paul
c74ffb8266 Added _mesa_HashNextEntry() function to allow walking over all entries
in a hash table.
Added _mesa_test_hash_functions() for unit testing.
Updated comments, etc.
2005-01-24 00:20:23 +00:00
Dave Airlie
72e3664996 reapply Keiths workaround for zbs emit that got dropped during
state change patches....
2005-01-23 22:09:30 +00:00
Nicolai Haehnle
0b5a5a9efb Remove unused variables from r300_context 2005-01-23 17:35:05 +00:00
Nicolai Haehnle
4ced594aa8 Fix more warnings and compilation issues. 2005-01-23 17:28:04 +00:00
Nicolai Haehnle
cb77dcf0b9 Synchronize r300_reg.h.
Fix unportable whitespace before preprocessor commands.
2005-01-23 17:05:32 +00:00
Dave Airlie
150ed2e43d add sync debugging to the radeon driver 2005-01-23 06:27:08 +00:00
Adam Jackson
999534216d HAVE_ALIAS was never defined anywhere, add some logic to turn it on
automagically.
2005-01-23 03:54:38 +00:00
Adam Jackson
e82d5f2be9 silence makedepend warnings about non-portable whitespace 2005-01-23 02:12:23 +00:00
Felix Kuehling
8736c228cb Fixed initialization of draw destination to front buffer on single
buffered visuals. Also don't change span draw/read buffers in
savageDDDrawBuffer. Now glean's polygon offset test works (and PASSes
with fixed point depth buffer) with single buffered visuals without
winding up in an infinite loop.
2005-01-23 01:46:14 +00:00
Felix Kuehling
3b50f00433 My last attempt to fix polygon offsets with the reversed viewport depth
range used by the savage driver by negating ctx->MRD broke polygon
offsets with software fallbacks. This one adds a REVERSE_DEPTH parameter
to t_dd_tritmp.h (defaults to 0) that allows reversing polygon offsets
for hardware rendering but not for software fallbacks. For software
fallbacks depth values are reversed after polygon offsets have been
applied by the depth span functions.
2005-01-23 01:42:01 +00:00
Keith Whitwell
36a35c5614 Determine ahead of time whether a display list will include vertices
which have to be processed in the 'loopback' path.  If so, send
all vertices that way as the transition from playback->loopback has
several problems.
2005-01-22 14:38:00 +00:00
Vladimir Dergachev
8fca9bdc35 Properly configure routing - based on advice by Keith Whitwell. 2005-01-22 03:33:10 +00:00
Felix Kuehling
f4cafc8d13 Fixed polygon offset with reversed viewport depth range. 2005-01-22 00:52:31 +00:00
Vladimir Dergachev
4ac53aed6c Properly input stencil info contributed by Wladimir. 2005-01-21 21:30:55 +00:00
Brian Paul
1060211918 fix glGetString funniness 2005-01-21 16:35:56 +00:00
Michal Krol
308fbb7b64 add getstring.c; remove arb*.h nv*.h stuff 2005-01-21 15:55:13 +00:00
Michal Krol
8346c5ee1d add slang/traverse_wrap.h 2005-01-21 15:52:17 +00:00
Michal Krol
b39665950e Handy TIntermTraverser class wrapper 2005-01-21 15:51:28 +00:00
Alan Hourihane
e51b0b1d30 silence the 'using AGP/PCI' string unless VIA_DEBUG is used. 2005-01-21 09:50:48 +00:00
Felix Kuehling
fa15f6c840 Small cleanup:
* Remove some unused (mostly empty) functions
* Added context parameter to WAIT_IDLE_EMPTY[_LOCKED] for consistency
* Added debug messages to WAIT_IDLE_EMPTY[_LOCKED]
* Don't flush empty command buffers
2005-01-21 01:39:09 +00:00
Felix Kuehling
677d1d07c4 * Added options for disabling the fast path (render stage) and vertex DMA
* Fixed disabling of the render stage
* Added debug output for per-primitive fallbacks
* Bumped driver date
2005-01-20 15:18:10 +00:00
Brian Paul
14dee36fa7 glext.h version 26 2005-01-20 15:07:42 +00:00
Felix Kuehling
edb9a165c1 Added support for ELTS to the _savage_render_stage. Requires at least
Savage DRM version 2.2.0. Otherwise the render stage is disabled.
2005-01-20 13:59:49 +00:00
Alan Hourihane
ddfa61ee19 Enclose passed macro values in brackets to ensure correct read/write span
values.
2005-01-20 13:24:08 +00:00
Brian Paul
cb3bc2c49a document new glDeleteTextures/Buffers/Programs behaviour 2005-01-20 04:03:37 +00:00
Brian Paul
ea2943efd9 Update glDeletePrograms/Buffers() so that the ID is freed immediately, like
texture objects.
2005-01-20 04:02:02 +00:00
Brian Paul
36da0459e4 Use a simple CSS style sheet. 2005-01-20 03:55:10 +00:00
Brian Paul
10378919d7 Removed gl_texture_object's DeletePending. Changed a comment. 2005-01-19 21:41:24 +00:00
Brian Paul
31fb7648fc added texobjshare.c 2005-01-19 14:52:13 +00:00
Brian Paul
4f6d9aaa9a test program for texture sharing, deleting, etc 2005-01-19 14:51:41 +00:00
Brian Paul
42fee73aad Change behaviour of glDeleteTextures as discussed on ARB list.
glDeleteTexture makes the texture ID immediately free for re-use
while the actual texture object lingers until its reference count goes
to zero (when no longer bound by any rendering context).
2005-01-19 14:50:52 +00:00
Brian Paul
140f99f81c make sure the new instruction Data pointer is set to NULL 2005-01-19 14:45:23 +00:00
Brian Paul
7948bc02ed fix a typo 2005-01-19 14:44:55 +00:00
Brian Paul
4ef0e046ec minor formatting fix 2005-01-19 14:44:41 +00:00
Keith Whitwell
2aa34ea984 Bring the texcombine fixes to the trunk. 2005-01-19 12:09:33 +00:00
Keith Whitwell
bdb5725bab Always use ARGB8888 hardware texture format when mesa specifies
MESA_FORMAT_ARGB8888.  Previously attempted to use ARGB0888 under some
circumstances, but glean failed and demos/texenv.c was also incorrect.
2005-01-19 12:06:17 +00:00
Keith Whitwell
6931087958 Remove depend on make clean 2005-01-19 11:39:23 +00:00
Keith Whitwell
520e56f232 Depend tweaks 2005-01-19 11:10:27 +00:00
Daniel Borca
c98323bd89 make sure we avoid assertion failure wrt VB->ColorPtr[1]->stride 2005-01-19 07:57:52 +00:00
Daniel Borca
9ebce91a66 glVertex* is the provoking "cmd" (that is, by the time of glVertex*, we must have all other attributes already set).
i am committing this before i forget.  however, i'm still leaving my code disabled, because the old code seems legal.
2005-01-19 07:52:49 +00:00
Daniel Borca
59c2e16e75 There is no point trying to detect SSE at all, when MESA_NO_SSE is defined. I am committing this because the current WIN32 SSE detection code crashes UnrealTournament2003. 2005-01-19 07:43:13 +00:00
Brian Paul
c47d19a1a2 minor reorg of shader files, disable building for now 2005-01-18 22:58:13 +00:00
Alan Hourihane
41db4e1be5 remove some debug 2005-01-18 21:57:48 +00:00
Alan Hourihane
95be63771a Fix tristrips (which fixes coloredTexPerf2 & coloredLitPerf2 glean tests) 2005-01-18 15:06:01 +00:00
Michal Krol
4cfd97e3a8 remove #ifndef linux, it isnt defined on Linux, where should I define it? 2005-01-18 14:21:50 +00:00
Michal Krol
c57a312978 comment out _THROW calls, dont want to compile under Linux 2005-01-18 14:19:46 +00:00
Michal Krol
fa32c92ea5 add shader/slang/slang_mesa.cpp 2005-01-18 14:17:37 +00:00
Michal Krol
a885c7a6e0 change .cc suffix to .cpp 2005-01-18 14:16:51 +00:00
Michal Krol
619f006bba add slang preprocessor C sources; add slang include directories 2005-01-18 14:02:52 +00:00
Michal Krol
955190fbad fix // comments 2005-01-18 13:58:56 +00:00
Michal Krol
092af29ea1 fix MAX_VERTEX_ATTRIBS_ARB query 2005-01-18 12:04:53 +00:00
Keith Whitwell
af72b4dd8e Fix calculation of last_count in _tnl_wrap_buffers() 2005-01-18 08:41:55 +00:00
Brian Paul
7443c2caa6 added rule for compiling C++ sources 2005-01-17 22:33:50 +00:00
Michal Krol
db99b8b29d add slang/ directory tree 2005-01-17 16:25:08 +00:00
Brian Paul
ea28a5b5b3 use FABSF(fogCoord) to fix fog calculation problem (Soju Matsumoto) 2005-01-17 16:16:35 +00:00
Brian Paul
730fabd67a fix some weirdness accidentally checked in in the past 2005-01-17 16:14:46 +00:00
Michal Krol
7d079fd780 2005-oct-19 3dlabs slang compiler, tweaked a little bit 2005-01-17 16:01:49 +00:00
Michal Krol
cc9ab78158 slang to mesa compatibility, tested only under Windows 2005-01-17 15:52:20 +00:00
Michal Krol
434f622ede add 3dlabs_shhandle interface 2005-01-17 15:47:57 +00:00
Michal Krol
0a7ea2b0c3 add [.slang] to INCDIR, fix comma in OBJECTS 2005-01-17 15:35:46 +00:00
Michal Krol
389e292a1b add src/mesa/shader/slang to INCLUDE_DIRS 2005-01-17 15:32:25 +00:00
Daniel Borca
ff39c65dee cleaned up warnings 2005-01-17 08:05:47 +00:00
Daniel Borca
714c36c120 allow more internalFormat/format combinations (i hope i got it right) 2005-01-17 08:04:39 +00:00
Daniel Borca
d98c47300a fix compilation error for fx/Mesa 2005-01-17 08:02:42 +00:00
Daniel Borca
6a432a7c50 since we've already messed up this one, let we do it further and make it look like a fire... 2005-01-17 07:48:53 +00:00
Daniel Borca
a6ddd2494a remove trailing slash from TOP definition 2005-01-17 07:47:41 +00:00
Brian Paul
0a360cfab5 silence warning 2005-01-17 01:21:03 +00:00
Brian Paul
848ff85157 clean up gl2 structs 2005-01-17 01:07:00 +00:00
Brian Paul
fc3028d2c7 silence a bunch of warnings 2005-01-17 01:02:40 +00:00
Brian Paul
6c58ddae17 fix a few warnings 2005-01-17 00:40:29 +00:00
Brian Paul
b4199a1f71 added getstring.c 2005-01-16 19:42:46 +00:00
Brian Paul
5255044c00 added a few OpenGL 2.0 tokens (temporary) 2005-01-16 19:40:15 +00:00
Brian Paul
169a723d2b _mesa_GetInteger/Float/Boolean/Doublev() are now generated with the new
get_gen.py Python script.
Moved GetString(), GetPointer(), GetError() into new getstring.c file.
2005-01-16 19:39:10 +00:00
Brian Paul
c07ec046b7 make tnl_clipspace_attr->insert field const, to silence warning 2005-01-16 17:59:50 +00:00
Aapo Tahkola
14aea4a485 This fixes it but why mipmaps still work?
It doesnt look like filter constants in r300_reg.h would define number of
levels.
2005-01-16 17:07:24 +00:00
Aapo Tahkola
781d512a0b I was wrong... 2005-01-16 16:12:05 +00:00
Aapo Tahkola
82d1421736 Looks like masking masking t->filter isnt needed anymore.
texwrap still shows some problems with clamp mode with nearest filtering.
2005-01-16 13:28:49 +00:00
Felix Kuehling
ad360a81bd Added a fast path for emitting unclipped primitives directly to a
vertex buffer. ELTS are not supported yet (missing functionality in
the DRM). You need at least Savage DRM version 2.1.3, which fixes a
bug that screwed up triangle fans and strips.

Moved the texture normalization stage to savagerender.c.
2005-01-16 01:28:26 +00:00
Vladimir Dergachev
ca710a0a7f On the way to getting stencil working. 2005-01-15 20:44:23 +00:00
Vladimir Dergachev
76de160b64 On the way to getting stencil and texture formats working.
Looks like the matter of texture formats is a lot simpler, with the wrong
display in quake explained by the fact that we are not handling texture combine modes.
2005-01-15 19:33:19 +00:00
Felix Kuehling
b5f49e6f91 Converted to use spantmp2.h. 2005-01-15 14:37:33 +00:00
Felix Kuehling
c478a09a5b Use HW_READ_LOCK and HW_READ_UNLOCK in assembler-optimized span read
functions.
2005-01-15 14:35:35 +00:00
Vladimir Dergachev
dbb3ec35a7 Use symbolic constants to describe pixel shader ALU instructions. 2005-01-15 04:17:27 +00:00
Aapo Tahkola
ffe7496ac3 Added fixes for filter modes and support for anisotropy filters.
Wrap modes would work perfectly but i messed up something when cleaning up
the code :/ Border color code is incomplete because i forgot to check how to
set border size :)
2005-01-14 21:53:00 +00:00
Alan Hourihane
afa05e68b8 Enable line stippling. 2005-01-14 16:56:52 +00:00
Keith Whitwell
4ccee80190 Fix previously un-noticed issue with flat-shaded points. 2005-01-14 15:03:00 +00:00
Alan Hourihane
faf96a157d silence a warning 2005-01-14 13:11:34 +00:00
Alan Hourihane
42cfcce8d4 Get PolygonStipple working.. (or seemingly too). It seems to do the right
things now given the demos I've used and passes glean's paths test.
2005-01-14 13:10:50 +00:00
Alan Hourihane
38595eda39 16bpp doesn't support masked clears, so fallback when they're enabled. 2005-01-14 13:02:53 +00:00
Keith Whitwell
96d375c682 Populate WriteMonoDepthSpan in 24/8 modes. 2005-01-14 13:01:21 +00:00
Daniel Borca
404273ad09 changed coding style. made `glutTimerFunc' less accurate, but far more reliable. 2005-01-14 08:50:08 +00:00
Daniel Borca
0c68589673 changed coding style. added possibility to use default timer instead of PC/HW timer. 2005-01-14 08:44:29 +00:00
Daniel Borca
aa7a27b38e changed coding style. added a NULL pointer check. 2005-01-14 08:40:43 +00:00
Daniel Borca
7da875d55f changed coding style 2005-01-14 08:37:20 +00:00
Daniel Borca
f4bff83c32 doc update 2005-01-14 08:31:50 +00:00
Vladimir Dergachev
52f5ff525b Remove redundant register.
Hook up some functions in r300Enable().
2005-01-14 06:39:14 +00:00
Vladimir Dergachev
517ac1bf25 Reduce amount of stderr output.
Switch to using R300_EASY_TX_FORMAT() macro everywhere.
2005-01-14 05:26:17 +00:00
Vladimir Dergachev
2821b05a0f Incorporate latest data from Wladimir van der Laan. 2005-01-14 04:21:55 +00:00
Vladimir Dergachev
d2001bd88f Sync with master copy. 2005-01-13 23:13:52 +00:00
Dave Airlie
f11d6d4cb4 add -DUSE_EXTERNAL_DXTN_LIB=1 so compressed textures are enabled for solo 2005-01-13 22:38:21 +00:00
Alan Hourihane
288114b9db remove some dead texture code 2005-01-13 17:53:01 +00:00
Felix Kuehling
a7ab2b2e0b Make sure DMA buffers are released in savageDestroyContext. Usually
the DRM would reclaim DMA buffers, but if one process creates and
destroys many contexts it can still run out of DMA buffers.
2005-01-13 16:02:05 +00:00
Keith Whitwell
b1d322a1e7 Fix loop for quads-as-triangles. 2005-01-13 15:58:05 +00:00
Keith Whitwell
c06f8cb9e5 Rename via_fastrender_* to avoid confusion with similar functions in
via_render.c.
2005-01-13 15:49:39 +00:00
Keith Whitwell
a0371b0b3c Simplify viaChooseVertexState slightly. 2005-01-13 14:57:34 +00:00
Keith Whitwell
d9af44f358 Remove misleading comment. 2005-01-13 14:54:44 +00:00
Keith Whitwell
edd21a6f72 Typo 2005-01-13 14:52:24 +00:00
Keith Whitwell
db19ae89f2 Emit constant colors for texunit 1 blending.
Change comments and some code to match naming used in the docs.
2005-01-13 14:38:17 +00:00
Michal Krol
436f4bbd62 add s_atifragshader.c, s_atifragshader.h 2005-01-13 14:15:36 +00:00
Michal Krol
7f3e2dac7a 3dlabs glslang frontend 2005-01-13 14:14:55 +00:00
Michal Krol
302a414b34 3dlabs glslang frontend, not complete 2005-01-13 14:14:11 +00:00
Michal Krol
01d38cdf0c cosmetic changes 2005-01-13 14:13:19 +00:00
Michal Krol
6324f73b93 implement ARB_shader_objects, not complete 2005-01-13 14:12:50 +00:00
Michal Krol
8b7cc45f3d add atifragshader.c, shaderobjects.c, shaderobjects_3dlabs.c, atifragshader.h,
shaderobjects.h, shaderobjects_3dlabs.h
2005-01-13 14:12:01 +00:00
Michal Krol
b05e75bf69 add shaderobjects_3dlabs.c 2005-01-13 14:10:37 +00:00
Michal Krol
3d52858c78 add ARB_shader_objects interfaces, shared and context state 2005-01-13 14:09:58 +00:00
Michal Krol
0e85388ba8 enable ARB_fragment/vertex_shader 2005-01-13 14:09:18 +00:00
Michal Krol
9b3752c8ab init ARB_shader_objects subsystem 2005-01-13 14:08:47 +00:00
Michal Krol
8f8534f691 add shader/shaderobjects_3dlabs.c 2005-01-13 14:08:00 +00:00
Keith Whitwell
df14522540 cut out dead texture state code 2005-01-13 13:00:23 +00:00
Alan Hourihane
5bd6a5f2df revert some makecurrent code 2005-01-13 12:03:00 +00:00
Alan Hourihane
db93e6165e Fix glean scissor test 2005-01-13 10:20:16 +00:00
Vladimir Dergachev
d4330fc322 Prevent "disabling 3D acceleration" message from printing - we do not define raster functions anyway. 2005-01-13 09:08:58 +00:00
Vladimir Dergachev
d456ef48e5 Incorporate TX_FORMAT information contributed by Wladimir van der Laan.
Attempt to use it in r300_state.c
We are still missing something and the formats do not quite work.
Perhaps something in texture management code ?
2005-01-13 09:05:31 +00:00
Alan Hourihane
3ff4eca05c As we fallback for polygon stipple on the CLE266 for now, ensure we
don't turn on the polygon stipple hardware bit.
2005-01-13 00:15:28 +00:00
Alan Hourihane
cce4d5cb70 Use the faster span read/write template for 16bpp 2005-01-12 23:16:28 +00:00
Keith Whitwell
88440d2d75 Don't special-case 16bpp for colormask register - not needed. 2005-01-12 21:55:47 +00:00
Keith Whitwell
8e5281fbe1 Simplify usage of drmHash functions and fix bug in
__driGarbageCollectDrawables which would get confused while walking
the hash values.
2005-01-12 21:04:03 +00:00
Keith Whitwell
0aca086f7a free buffer in t_vertex_c.c on context delete 2005-01-12 19:38:41 +00:00
Keith Whitwell
8e46534b3b Remove bogus write to freed memory (valgrind). 2005-01-12 19:27:49 +00:00
Alan Hourihane
118b82145a Check for deletion of currently bound context
Other minor cleanups
2005-01-12 19:24:39 +00:00
Keith Whitwell
f9b89910d1 new test to exercise context and window create/delete 2005-01-12 19:11:47 +00:00
Alan Hourihane
7ea2084513 Fixes lockups initializing AGP DMA. 2005-01-12 18:32:51 +00:00
Keith Whitwell
4676a6ab7b Expand out the N(x) macro so that tags can find functions like
drmHashFirst(), etc.
2005-01-12 18:14:42 +00:00
Alan Hourihane
2937d403db build fixes and enable agp dma 2005-01-12 17:33:09 +00:00
Keith Whitwell
708e25142b Add flag to clear texture caches after texture upload. 2005-01-12 17:20:29 +00:00
Keith Whitwell
5ba7d85fea Don't emit HC_SubA_HSPXYOS on CLE266. 2005-01-12 17:20:08 +00:00
Keith Whitwell
09ac1d1125 Allow two GL primitives to be combined to one HW primitive
if possible.
2005-01-12 13:33:27 +00:00
Alan Hourihane
26dcb88fb9 Fix multitexturing.
The multiarb test works now when disabling texunit0/1.
2005-01-12 12:45:42 +00:00
Daniel Borca
a9531eb2c5 some "safer" type-punning (gcc optimizes float moves with integer moves, anyway). 2005-01-12 09:25:37 +00:00
Brian Paul
d7b837ad4a temporary prototypes for OpenGL 2.0 2005-01-12 04:06:55 +00:00
Brian Paul
2a34e66d6a OpenGL 2.0 StencilFunc/Op/MaskSeparate functions 2005-01-12 04:01:54 +00:00
Brian Paul
a9e34c68ac Some initial work for OpenGL 2.0: glStencilFunc/Op/MaskSeparate() functions. 2005-01-12 04:01:08 +00:00
Ian Romanick
591b72b6a9 Added a couple missing proxy types. 2005-01-11 23:50:01 +00:00
Aapo Tahkola
ff04e50e2e Mipmapping and other texture filters now work.
Beaware that R300_TX_MIN_FILTER_MASK might be incorrect because i havent
been able to confirm that all filters operate correctly. Because of this its
also pretty pointless trying to get other features that use filter field to
work.

Lod bias should also work but have been unable to test it because lodbias
test doesnt work.
2005-01-11 23:34:55 +00:00
Ian Romanick
d24e49f301 Put quotes around the CC and CXX variables passed to mklib. This make
them work with multi-work compiler names (e.g., "ccache gcc").
2005-01-11 22:43:45 +00:00
Alan Hourihane
5b28844dba fix a typo 2005-01-11 18:43:21 +00:00
Keith Whitwell
3bd6e3d532 Disable bogus pbuffer code (though this could be revived with a little
attention).
Correctly advertise FBConfigs with GL_BGRA rather than GL_BGR.
2005-01-11 17:12:48 +00:00
Alan Hourihane
5b5e6cc120 Fix the calculation of the alpha reference value which negates the
need for the big nasty fallback - so I've commented out that code.
2005-01-11 17:09:47 +00:00
Keith Whitwell
aac4d8857a Temporarily disable pageflipping assert. 2005-01-11 17:06:09 +00:00
Alan Hourihane
8e039bf40a uncomment 2005-01-11 16:44:18 +00:00
Alan Hourihane
f29aaf80a4 Fix ColorMask 2005-01-11 16:42:56 +00:00
Brian Paul
cdb6541634 prototype _mesa_init_ati_fragment_shader() 2005-01-11 15:56:47 +00:00
Michal Krol
43343913b9 aliasing was broken 2005-01-11 15:47:16 +00:00
Keith Whitwell
b13eaf2698 Add a big nasty fallback for AlphaTest -- seems to always be wrong
on CLE266 because Z values are written even for fragments which
fail the test.
2005-01-11 15:40:06 +00:00
Alan Hourihane
51365b2d0d fallback on polygon.stippleflag (thanks Keith) 2005-01-11 15:24:24 +00:00
Brian Paul
0275d921ac VMS updates from Jouk Jansen 2005-01-11 15:23:08 +00:00
Daniel Borca
94dd520210 applied Keith's patch for "safe" type-punning.
made IS_NEGATIVE produce a boolean (useful when xoring with other booleans).
2005-01-11 10:56:39 +00:00
Alan Hourihane
5358682aa7 Fix usage of texture units, when TEX1 is enabled, but not TEX0. 2005-01-11 09:52:10 +00:00
Vladimir Dergachev
0cb0a36d8c Get NeHe lesson08 to work. Note: it appears the filtering does not work properly. Need to find place where it is broken and put an fprintf() complaining about it. 2005-01-11 06:22:55 +00:00
Vladimir Dergachev
d5432ac584 Switch back to using immediate mode code - use of AGP space is interfering with texture management.
Ideally, r300_render is ready to be rewritten to use standard Mesa include files, but I don't think I'll get around to it.
2005-01-11 05:59:07 +00:00
Vladimir Dergachev
864137984a Move the few definitions from r300_lib.h still in use to r300_emit.h.
Rework *vb* function to not use AOS_ARRAY structure, but rather work directly with r300->state.aos.
Remove references to r300_lib.h and r300_lib.c
Remove r300_lib.[c,h].
2005-01-11 04:11:05 +00:00
Vladimir Dergachev
086ca3dffb Switch r300_state.c to use r300_fixed_pipelines.h instead of r300_lib.h.
This fixes potentially buggy memcpy()'s between potentially different structures.
2005-01-11 03:55:04 +00:00
Vladimir Dergachev
dd4837502c Copy sample pixel and vertex shaders to r300_fixed_pipelines.h 2005-01-11 03:50:04 +00:00
Brian Paul
14e98b7d7c remove a debug line 2005-01-10 23:16:49 +00:00
Brian Paul
ff53a4ee13 tweak output formattting, fixed uninitialized var error 2005-01-10 23:15:59 +00:00
Felix Kuehling
86f1439f82 Fixes to cope with the lack of AGP textures. This is all that's needed
to support PCI Savages on the Mesa side. Bumped driver date.
2005-01-10 22:49:00 +00:00
Alan Hourihane
9db66a3f9f Fallback on PolygonStipple for CLE266 hardware.
Only upload stencil configuration when a stencil buffer exists.
2005-01-10 19:44:59 +00:00
Brian Paul
eaf2b170ff Windows/ReactOS patch (Gregor Anich) 2005-01-10 16:23:21 +00:00
Keith Whitwell
574f3c7daf More changes to cope with color stride == 0 2005-01-10 14:36:25 +00:00
Keith Whitwell
a887a44b2d Fix segfault in pipes by dealing with stride == 0 case in generic_interp_extras 2005-01-10 12:30:08 +00:00
Vladimir Dergachev
8c231d2e28 Bring vertex buffer code up to date.. 2005-01-10 05:24:28 +00:00
Vladimir Dergachev
6867117b58 For some reason we need r300Flush when using textures. Perhaps the problem is
with BITBLT_MULTI call ?
2005-01-10 03:42:50 +00:00
Vladimir Dergachev
5f61c6f21f Clean up the code and make it unnecessary to issue extra calls to Setup*Shaders
in the r300_run_immediate_render function.
Bumps up glxgears fps count by about 100 points.
2005-01-10 03:22:54 +00:00
Vladimir Dergachev
8ad31013b2 Port EmitPixelShader from cmdbuf.c to SetupPixelShader in state.c. 2005-01-09 23:37:03 +00:00
Vladimir Dergachev
e9acd0ca5f Implement a more elaborate hashing scheme for texture formats. Still not perfect.
Transform EmitVertexShader in cmdbuf.c to SetupVertexShader in state.c.
The latter is only temporary and is to be rewritten to auto-generate shaders based on current GL context.
2005-01-09 22:38:53 +00:00
Brian Paul
527af7571e minor readtex fixes 2005-01-09 18:05:02 +00:00
Brian Paul
612bf1fa2e improved animation rate 2005-01-09 18:00:49 +00:00
Brian Paul
7a663b315e rotate at fixed rate, changed fire effect (Marcelo Magallon) 2005-01-09 17:52:48 +00:00
Brian Paul
a00c591511 rotate at fixed rate (Marcelo Magallon) 2005-01-09 17:50:27 +00:00
Brian Paul
a4a31c5d76 use #ifdef to test for extension 2005-01-09 17:39:36 +00:00
Brian Paul
2d84ed83c4 include readtex.h 2005-01-09 17:39:06 +00:00
Brian Paul
92eddb0fd4 better animate rate (Marcelo Magallon) 2005-01-09 17:37:50 +00:00
Brian Paul
516f9bc6e3 some new/improved rules 2005-01-09 17:26:08 +00:00
Brian Paul
575d24a5ff include readtex.h instead of readtex.c 2005-01-09 17:15:41 +00:00
Brian Paul
0fe7f406be include readtex.h instead of readtex.c (Marcello Magallon) 2005-01-09 17:06:22 +00:00
Brian Paul
b58091a336 Add #ifdefs for extension testing (Marcello Magallon) 2005-01-09 17:00:57 +00:00
Brian Paul
429efa9f00 animation rate patch (Marcello Magallon) 2005-01-09 16:52:53 +00:00
Brian Paul
1b058a06c2 rotate at a reasonable rate 2005-01-09 16:48:52 +00:00
Brian Paul
c1065ee977 compute reasonable animate rate (Marcelo Magallon) 2005-01-08 23:52:01 +00:00
Brian Paul
0261042beb fix-up rules for sphere demo, which uses readtex utility 2005-01-08 23:51:50 +00:00
Felix Kuehling
b45ce5c607 * Flush and wait in per-primitive fallback functions. Fixes flickering
stars in glplanet.
* Refactored vertex format choosing code. Improved the Savage4 version
  to choose a format suitable for DMA (size = 32bytes) whenever
  possible.
2005-01-08 23:39:19 +00:00
Felix Kuehling
e4499ed276 Added missing break; to fix infinite recursion between choose_emit_func
and emit_viewport4_bgra4_st2_st2.
2005-01-08 15:51:11 +00:00
Felix Kuehling
675b92515a Added state debugging option (SAVAGE_DEBUG=state).
Fixed: Use savageEmitChangedRegs instead of savageEmitContiguousRegs for
emitting Savage4.
2005-01-08 15:03:25 +00:00
Adam Jackson
1074eae704 Enable libGL to be built with DRI_NEW_INTERFACE_ONLY (but don't do it yet). 2005-01-08 03:54:38 +00:00
Adam Jackson
ccaa15a081 Parallel build fix. Multiword variables on the target side of a : get
expanded into individual rules for each word, so parallel builds will
start multiple instances to create the server/ symlinks and fail when they
already exist.
2005-01-08 03:16:04 +00:00
Keith Whitwell
f1481aa2d7 Add t_vb_cull.c (Bernard Blackham) 2005-01-07 18:35:28 +00:00
Keith Whitwell
f0e4f5e556 And fix the obvious bugs in higher-numbered templates. 2005-01-07 16:43:39 +00:00
Keith Whitwell
ae73b3d5ed Templatize the fastpaths. 2005-01-07 16:25:40 +00:00
Keith Whitwell
fa1362241b Add some more hardcoded fastpaths. 2005-01-07 15:54:48 +00:00
Keith Whitwell
5fff0c135d Cope with the possibility that incoming vectors may have
count < VB->Count.

Remove code to deal with the (should-be) impossible situation of null
input vectors.
2005-01-07 15:27:41 +00:00
Keith Whitwell
5911d87315 Use the 'to' vector to determine the loop count. 2005-01-07 15:26:02 +00:00
Keith Whitwell
e0be62e2c5 Remove -C flags for install which aren't universally supported. 2005-01-07 15:24:59 +00:00
Felix Kuehling
85243b8120 Fixed: ptex drawing functions were overridden with standard drawing
functions if ANY_RASTER_FLAGS|ANY_FALLBACK_FLAGS were set.
2005-01-07 10:55:13 +00:00
Keith Whitwell
b3d772bd9a Add a clean target to remove generated files. 2005-01-07 10:36:14 +00:00
Keith Whitwell
5cd24d4dc2 Add a noop install target 2005-01-07 10:35:51 +00:00
Keith Whitwell
8764441b58 Improve the semantics of the 'install' target to make sure the right
file is really being installed.  Useful if you have multiple versions
of a single driver directory hanging around and want to switch between
them for testing.
2005-01-07 10:35:23 +00:00
Keith Whitwell
000dd4afe2 Add an install target 2005-01-07 10:34:13 +00:00
Keith Whitwell
1837dda4d8 Make clean in the x86 directory.
Propogate 'install' target down to dri driver directory.
2005-01-07 10:34:00 +00:00
Ian Romanick
a11659adaf Use GNU AS label aliasing, if available. This must be enabled by adding
'-DHAVE_ALIAS' to DEFINES in the config file used for building.  On the
linux-dri-x86 build, this cuts 4KB from libGL.so.  HAVE_ALIAS is not
currently enabled in any of the configs.
2005-01-07 03:41:48 +00:00
Ian Romanick
0f34f3efb8 Script to generate rough GLX protocol documentation (as might be seen in
an extension spec).  It's not perfect, and it doesn't support certain
functions that other scripts here can (e.g., pixel functions).  However,
it is a good start and has already proven useful to me.
2005-01-07 03:23:59 +00:00
Ian Romanick
a285acbbef Track the GLX protocol names for GL types. 2005-01-07 03:22:56 +00:00
Ian Romanick
70d2f152f8 Refactor the code that converts a transpose-matrix enum to a
regular-matrix enum.
2005-01-07 02:53:04 +00:00
Ian Romanick
5f1f229f8d Pixel oriented render functions are now generated by the
glX_proto_send.py script.  This eliminates ~600 lines of non-generated
code.  With proper compiler optimization settings, it also decreases the
size of libGL.so by about 3KB.
2005-01-07 02:39:09 +00:00
Ian Romanick
3385d7cec3 The generic_*_byte functions did not rount the command size to a
multiple of 4 correctly in some cases.
2005-01-07 02:29:42 +00:00
Brian Paul
ba5ceda7e0 added GetAllFBConfigs() 2005-01-07 01:17:42 +00:00
Ian Romanick
7e3379b1a0 Revert some accidental cross-merge changes. Remove i915GetString. Migrate
a couple extensions that appeared in both device-specific card_extensions
strings to the shared one.
2005-01-07 00:48:24 +00:00
Brian Paul
71fc6a3fc9 New GetAllFBConfigs() function. Some FBConfigs weren't reported before. 2005-01-06 23:59:37 +00:00
Brian Paul
1f98ee9022 In choose_visual() we need to know if we're being called from
glXChooseVisual() or glXChooseFBConfig() so that we handle the
GLX_DOUBLEBUFFER and GLX_STEREO tokens correctly.
Added some new error checking in those functions too.
2005-01-06 21:56:16 +00:00
Aapo Tahkola
8bb717d2d5 Add radeon 9550 pci id. 2005-01-06 19:26:25 +00:00
Keith Whitwell
a61ee65910 Redraw on keypress, as apparently intended. 2005-01-06 17:12:56 +00:00
Alan Hourihane
a2db56b34b Add Intel i915GM support, and these extensions.
* GL_ARB_texture_cube_map
* GL_EXT_blend_equation_separate
* GL_ATI_blend_equation_separate
* GL_ARB_point_parameters
* GL_NV_blend_square
* GL_EXT_cull_vertex
* GL_ARB_depth_texture
* GL_SGIX_depth_texture
* GL_ARB_shadow
* GL_EXT_shadow_funcs
* GL_3DFX_texture_compression_FXT1
(Keith Whitwell, Tungsten Graphics)
2005-01-06 14:35:44 +00:00
Daniel Borca
9f149bf206 semantic in parameter names 2005-01-06 14:34:48 +00:00
Daniel Borca
d401faf877 semantic in parameter names. changed emitter function. 2005-01-06 14:09:18 +00:00
Thomas Hellström
4c1d373ce1 Small Unichrome fixes:
1. Unlock hardware before aborting and dumping DMA buffers. Otherwise display system may deadlock.
2. Fix DMA init IOCTL call that got mixed up in one of the previous commits.
3. Fix AGP command alignment
2005-01-06 13:51:37 +00:00
Daniel Borca
dd1ef7c0d7 semantic in parameter names 2005-01-06 07:46:37 +00:00
Daniel Borca
5135d37813 solved classic "char*" vs "char[]" conflict. we were mimicking a pointer variable at desired location and then we took its address. using array is more intuitive, as they give us the starting address instantly. 2005-01-06 07:45:17 +00:00
Daniel Borca
ed1fc20199 protected against elfish directives 2005-01-06 07:40:33 +00:00
Daniel Borca
9b7367154b semantic in parameter names 2005-01-06 07:38:28 +00:00
Daniel Borca
994d5cc5f4 removed detritus 2005-01-06 07:37:32 +00:00
Daniel Borca
7047cb08eb added "default" branch in `convertPalette' 2005-01-06 07:36:56 +00:00
Daniel Borca
50122c9d2d fix dstRGB factor 2005-01-06 07:35:46 +00:00
Vladimir Dergachev
e09c843c13 Turns out the kfountain.kss (as well as lesson19) had a bug - the size was set wrong. Fixed. 2005-01-06 04:39:51 +00:00
Vladimir Dergachev
91538b4432 Add texture format to get lesson19 working again. 2005-01-06 04:02:52 +00:00
Vladimir Dergachev
dbc125eede Switch to a more complicated scheme of choosing texture formats, as it looks
like the old one was prone to collisions (different value of format field was
required for same values of t->format going in).
Now use a hash for these purposes - this got kfiresaver.kss and lesson06 workingfrom the same code.
2005-01-06 03:56:18 +00:00
Ben Skeggs
7b51aa54be Added GL_POLYGON primitive. Single primitive between glBegin()/glEnd() now works. 2005-01-06 00:10:11 +00:00
Felix Kuehling
3e4d4aca77 * Fixed handling of scissors
* Only set scissor regs directly if drmMinor < 1
* Don't set texaddr to 0 when a texture unit is disabled. That would trigger
  the tightened texture state check in the DRM if the texaddr and texdesc
  registers were not emitted atomically.
2005-01-05 23:56:16 +00:00
Alan Hourihane
1e21673ea1 support 720x480 and 960x540 modes 2005-01-05 22:40:34 +00:00
Alan Hourihane
ee2761f2f3 Only try to free the front buffer when it's a pbuffer. 2005-01-05 21:49:52 +00:00
Keith Whitwell
699fc6baf9 Make the format of the fastpaths cleaner at the expense of a little
performance.

Add fastpaths for some more common vertex formats.
2005-01-05 20:56:05 +00:00
Alan Hourihane
609e54820c fix build problem 2005-01-05 20:13:04 +00:00
Keith Whitwell
99fc261c47 Improve some quad paths, gives gears a little boost. 2005-01-05 18:14:38 +00:00
Keith Whitwell
dd9666bc1d Give attributes with zero-stride a count of 1 to make it easier
to avoid transforming the same attribute multiple times.

Don't light a single normal multiple times in light_fast_rgba*
2005-01-05 18:06:05 +00:00
Keith Whitwell
30f6486276 make alloc-dma functions inline, rearrange some debug 2005-01-05 13:51:38 +00:00
Keith Whitwell
830e046972 Avoid a segfault in multiarb.c 2005-01-05 13:51:03 +00:00
Alan Hourihane
e3fe80a60f Bring VIA driver up-to-date with regard to drm_*_t changes and remove
the xf86drmVIA.[ch] files.

Bring in the IRQ handler and Ring buffer code, but ring buffer is disabled
as it is with the Xserver. It certainly locks up the CLE266.
2005-01-05 13:45:09 +00:00
Keith Whitwell
9a8a9fb01f Add a couple of hardwired fastpaths to t_vertex.c. 2005-01-05 12:58:14 +00:00
Keith Whitwell
d5b1605449 If there is only one normal, don't transform it multiple times. 2005-01-05 11:10:05 +00:00
Vladimir Dergachev
380ba2daec Reduce the amount of debug output, while still printing important messages.
Make guessing texture formats easier.
2005-01-05 04:56:23 +00:00
Vladimir Dergachev
e99f390ff6 Play a little bit with texture formats.
Get NeHe demos 06, 07 and 19 working.
2005-01-05 00:18:46 +00:00
Vladimir Dergachev
065f725672 Sync with master copy. 2005-01-04 22:52:53 +00:00
Vladimir Dergachev
6b185aaedf Port code from r200 that implements color blending. Seems to work.
This can be tested with lesson19 from NeHe.
This has also shown that the alpha code does not work - we pick up a red tint
for transparent pixels somewhere.
2005-01-04 20:25:11 +00:00
Vladimir Dergachev
55ee1daaf9 Unify rendering of textured and non-textured primitives. 2005-01-04 19:15:37 +00:00
Vladimir Dergachev
638faa92fc Major code restructuring:
* move proven code into the r300_state.c
  * update ClearBuffer to cope with more dynamic state
  * cleanup !
2005-01-04 18:59:47 +00:00
Brian Paul
85edffd5ff added GLX_NV_float_buffer 2005-01-04 14:48:14 +00:00
Brian Paul
932dee87e3 use HIDDEN macro to export fewer symbols (bug 2210) 2005-01-04 14:33:47 +00:00
Brian Paul
bdbdab837e directfb changes (Claudio Ciccani) 2005-01-04 14:19:25 +00:00
Keith Whitwell
6650264802 Add GL_EXT_fog_coord 2005-01-04 12:57:02 +00:00
Keith Whitwell
31c25f2edc Add GL_EXT_secondary_color 2005-01-04 12:56:17 +00:00
Keith Whitwell
e024cae14b Turn specular lighting state on/off appropriately. 2005-01-04 12:53:41 +00:00
Keith Whitwell
b6ab7a1bf1 Change to use the t_vertex.c mechanisms for building vertices,
including Felix's ptex code.

Re-enable some assembly for performance.
2005-01-04 12:18:05 +00:00
Brian Paul
f72e4424d9 Use the GLX 1.3 pbuffer/fbconfig functions in preference to the SGIX ones.
Added more functions to pbutil.[ch] to better isolate API differences.
2005-01-04 00:58:29 +00:00
Felix Kuehling
e3748eb19b Added support for floating point depth buffers on Savage4-based
hardware. By also reversing the depth range this can compensate the loss
of accuracy of far objects caused by the projective transformation.
Software fallbacks work but are slightly slower since floats in a custom
(non IEEE) format have to be encoded and decoded. I havn't done anything
about polygon offsets yet. There doesn't seem to be an easy way do get
it right except making the offset unit as big as the lowest resolution
of depth values. For now float depth is disabled by default but can be
enabled through driconf (though I have seen only positive effects so
far).
2005-01-03 22:24:44 +00:00
Felix Kuehling
87889aeab4 Added a boolean option for a floating-point depth buffer. 2005-01-03 22:15:41 +00:00
Ian Romanick
3276c192b7 The opcode and command length fields of RenderLarge commands were
mistakenly emitted in the wrong order.
2005-01-03 21:03:03 +00:00
Brian Paul
dd1a817c50 latest updates 2005-01-03 15:55:51 +00:00
Vladimir Dergachev
a5039af357 Add structs describing vertex and pixel shader state to r300_state.
Take apart program_pipeline() and move it into appropriate pieces within the driver.
Test the framework on run_flat_render()
2005-01-03 15:45:10 +00:00
Brian Paul
8e73b14228 bump version to 6.3, etc. 2005-01-03 15:36:27 +00:00
Brian Paul
81ca616e7e DirectFB driver (Claudio Ciccani) 2005-01-03 15:35:00 +00:00
Brian Paul
6563c16e38 updates from Jouk 2005-01-03 15:01:26 +00:00
Vladimir Dergachev
25faa2d56e Turns out I left flat primitives in vertex buffer mode. Switch them back to immediate which works correctly.. 2005-01-03 06:53:38 +00:00
Vladimir Dergachev
63473a8e76 Enable code to compute other constants that were used by R200 code.
Add fprintf to print these constants.
Correct t->size computation, so it works now.
2005-01-03 06:48:50 +00:00
Vladimir Dergachev
2fc9351ee7 Port texture allocation code from R200.
Hook it up, so lesson06 displays red colored textures.
2005-01-03 05:44:20 +00:00
Vladimir Dergachev
63fd67e561 Add texture units registers 2005-01-02 21:53:53 +00:00
Vladimir Dergachev
f50a1964d1 Cleanup !
I can not trigger any lockups now..
2005-01-02 06:16:44 +00:00
Vladimir Dergachev
d6be8dd651 I think I fixed the lockups issue. 2005-01-02 05:57:15 +00:00
Vladimir Dergachev
9a04b25c60 Get textures to work with NeHe lesson06.
The code is still disabled since we are displaying random image data instead of actual texture and because I had to put a sleep(1) in lesson06 drawing loop to prevent lockups.
2005-01-02 04:46:25 +00:00
Adam Jackson
3c80f5c56b linux-dri-x86 build fix from Andreas Stenglein. 2005-01-02 03:36:53 +00:00
Felix Kuehling
7a231da442 Improved the performance of software fallbacks by not waiting for idle
in every single span function. Instead flush and wait in the
SpanRenderStart hook and in wrappers around _swrast_Copy/Draw/ReadPixels.
Misc. cleanups in savagespan.c while I'm there.
2005-01-02 01:22:10 +00:00
Felix Kuehling
1067ce0cea Removed all direct hardware access (MMIO, BCI) from the Savage DRI
driver. It uses the new DRM version 2.0.x now, which has just been
committed to DRM CVS.
2005-01-01 20:40:14 +00:00
Felix Kuehling
467d64a177 Use DRM headers from $(DRM_SOURCE_PATH)/shared-core instead of .../shared. 2005-01-01 20:33:45 +00:00
Vladimir Dergachev
404d925b58 Add a convenience function to issue CP delays. 2005-01-01 18:41:43 +00:00
2514 changed files with 409004 additions and 305947 deletions

4
.gitattributes vendored Normal file
View File

@@ -0,0 +1,4 @@
*.dsp -crlf
*.dsw -crlf
*.sln -crlf
*.vcproj -crlf

16
.gitignore vendored Normal file
View File

@@ -0,0 +1,16 @@
*.a
*.o
*.so
*.sw[a-z]
*.pc
*~
depend
depend.bak
lib
lib64
configure
autom4te.cache
aclocal.m4
config.log
config.status
cscope*

362
Makefile
View File

@@ -7,42 +7,61 @@ SUBDIRS = src progs
default: $(TOP)/configs/current
@for dir in $(SUBDIRS) ; do \
(cd $$dir ; $(MAKE)) || exit 1 ; \
if [ -d $$dir ] ; then \
(cd $$dir && $(MAKE)) || exit 1 ; \
fi \
done
doxygen:
(cd doxygen ; make) ; \
cd doxygen && $(MAKE)
clean:
@for dir in $(SUBDIRS) ; do \
(cd $$dir ; $(MAKE) clean) ; \
-@touch $(TOP)/configs/current
-@for dir in $(SUBDIRS) ; do \
if [ -d $$dir ] ; then \
(cd $$dir && $(MAKE) clean) ; \
fi \
done
-@test -s $(TOP)/configs/current || rm -f $(TOP)/configs/current
realclean:
touch $(TOP)/configs/current
$(MAKE) clean
realclean: clean
-rm -rf lib*
-rm -f $(TOP)/configs/current
-rm -f `find . -name \*.o`
-rm -f `find . -name \*.a`
-rm -f `find . -name \*.so`
-rm -f $(TOP)/configs/autoconf
-rm -rf autom4te.cache
-find . '(' -name '*.o' -o -name '*.a' -o -name '*.so' -o \
-name depend -o -name depend.bak ')' -exec rm -f '{}' ';'
install:
@echo "Installing"
$(TOP)/bin/installmesa
@for dir in $(SUBDIRS) ; do \
if [ -d $$dir ] ; then \
(cd $$dir && $(MAKE) install) || exit 1 ; \
fi \
done
# DirectFBGL module installation
linux-directfb-install:
cd src/mesa/drivers/directfb && $(MAKE) install
.PHONY: default doxygen clean realclean install linux-directfb-install
# If there's no current configuration file
$(TOP)/configs/current:
@echo
@echo
@echo "Please choose a configuration from the following list:"
@ls -1 $(TOP)/configs | grep -v "current\|default\|CVS"
@ls -1 $(TOP)/configs | grep -v "current\|default\|CVS\|autoconf.*"
@echo
@echo "Then type 'make <config>' (ex: 'make linux-x86')"
@echo
@echo "Or, run './configure' then 'make'"
@echo "See './configure --help' for details"
@echo
@echo "(ignore the following error message)"
@exit 1
@@ -50,13 +69,22 @@ $(TOP)/configs/current:
# Rules to set/install a specific build configuration
aix \
aix-64 \
aix-64-static \
aix-gcc \
aix-static \
autoconf \
bluegene-osmesa \
bluegene-xlc-osmesa \
beos \
catamount-osmesa-pgi \
darwin \
darwin-fat-32bit \
darwin-fat-all \
darwin-static \
darwin-static-x86ppc \
freebsd \
freebsd-dri \
freebsd-dri-amd64 \
freebsd-dri-x86 \
hpux10 \
hpux10-gcc \
@@ -66,6 +94,8 @@ hpux11-32-static \
hpux11-32-static-nothreads \
hpux11-64 \
hpux11-64-static \
hpux11-ia64 \
hpux11-ia64-static \
hpux9 \
hpux9-gcc \
irix6-64 \
@@ -78,13 +108,21 @@ linux \
linux-alpha \
linux-alpha-static \
linux-debug \
linux-directfb \
linux-dri \
linux-dri-debug \
linux-dri-x86 \
linux-dri-x86-64 \
linux-dri-ppc \
linux-dri-xcb \
linux-indirect \
linux-fbdev \
linux-glide \
linux-ia64-icc \
linux-ia64-icc-static \
linux-icc \
linux-icc-static \
linux-osmesa \
linux-osmesa16 \
linux-osmesa16-static \
linux-osmesa32 \
@@ -100,51 +138,70 @@ linux-ultrasparc \
linux-tcc \
linux-x86 \
linux-x86-debug \
linux-x86-32 \
linux-x86-64 \
linux-x86-64-debug \
linux-x86-64-static \
linux-x86-glide \
linux-x86-static \
netbsd \
openbsd \
osf1 \
osf1-static \
solaris-x86 \
solaris-x86-gcc \
solaris-x86-gcc-static \
sunos4 \
sunos4-gcc \
sunos4-static \
sunos5 \
sunos5-gcc \
sunos5-64-gcc \
sunos5-smp \
sunos5-v8 \
sunos5-v8-static \
sunos5-v9 \
sunos5-v9-static \
sunos5-v9-cc-g++ \
ultrix-gcc:
@ if test -f configs/current || test -L configs/current ; then \
echo "Please run 'make realclean' before changing configs" ; \
exit 1 ; \
fi
(cd configs && rm -f current && ln -s $@ current)
$(MAKE) default
# Rules for making release tarballs
DIRECTORY = Mesa-6.2
LIB_NAME = MesaLib-6.2
DEMO_NAME = MesaDemos-6.2
VERSION=7.4
DIRECTORY = Mesa-$(VERSION)
LIB_NAME = MesaLib-$(VERSION)
DEMO_NAME = MesaDemos-$(VERSION)
GLUT_NAME = MesaGLUT-$(VERSION)
LIB_FILES = \
MAIN_FILES = \
$(DIRECTORY)/Makefile* \
$(DIRECTORY)/configure \
$(DIRECTORY)/configure.ac \
$(DIRECTORY)/acinclude.m4 \
$(DIRECTORY)/aclocal.m4 \
$(DIRECTORY)/descrip.mms \
$(DIRECTORY)/mms-config. \
$(DIRECTORY)/Mesa.dsw \
$(DIRECTORY)/bin/config.guess \
$(DIRECTORY)/bin/config.sub \
$(DIRECTORY)/bin/install-sh \
$(DIRECTORY)/bin/mklib \
$(DIRECTORY)/bin/installmesa \
$(DIRECTORY)/bin/minstall \
$(DIRECTORY)/bin/version.mk \
$(DIRECTORY)/configs/[a-z]* \
$(DIRECTORY)/docs/*.html \
$(DIRECTORY)/docs/COPYING \
$(DIRECTORY)/docs/INSTALL.GNU \
$(DIRECTORY)/docs/README.* \
$(DIRECTORY)/docs/RELNOTES* \
$(DIRECTORY)/docs/VERSIONS \
$(DIRECTORY)/docs/*.spec \
$(DIRECTORY)/include/GL/internal/glcore.h \
$(DIRECTORY)/include/GL/dmesa.h \
$(DIRECTORY)/include/GL/amesa.h \
$(DIRECTORY)/include/GL/fxmesa.h \
$(DIRECTORY)/include/GL/ggimesa.h \
$(DIRECTORY)/include/GL/gl.h \
$(DIRECTORY)/include/GL/glext.h \
@@ -154,58 +211,59 @@ LIB_FILES = \
$(DIRECTORY)/include/GL/glx.h \
$(DIRECTORY)/include/GL/glxext.h \
$(DIRECTORY)/include/GL/glx_mangle.h \
$(DIRECTORY)/include/GL/glfbdev.h \
$(DIRECTORY)/include/GL/mesa_wgl.h \
$(DIRECTORY)/include/GL/mglmesa.h \
$(DIRECTORY)/include/GL/osmesa.h \
$(DIRECTORY)/include/GL/svgamesa.h \
$(DIRECTORY)/include/GL/ugl*.h \
$(DIRECTORY)/include/GL/vms_x_fix.h \
$(DIRECTORY)/include/GL/wmesa.h \
$(DIRECTORY)/include/GL/xmesa.h \
$(DIRECTORY)/include/GL/xmesa_x.h \
$(DIRECTORY)/include/GL/xmesa_xf86.h \
$(DIRECTORY)/src/Makefile \
$(DIRECTORY)/src/descrip.mms \
$(DIRECTORY)/src/mesa/Makefile* \
$(DIRECTORY)/src/mesa/sources \
$(DIRECTORY)/src/mesa/descrip.mms \
$(DIRECTORY)/src/mesa/gl.pc.in \
$(DIRECTORY)/src/mesa/osmesa.pc.in \
$(DIRECTORY)/src/mesa/depend \
$(DIRECTORY)/src/mesa/main/*.[chS] \
$(DIRECTORY)/src/mesa/main/main.dsp \
$(DIRECTORY)/src/mesa/main/descrip.mms \
$(DIRECTORY)/src/mesa/glapi/*.[chS] \
$(DIRECTORY)/src/mesa/glapi/glapi.dsp \
$(DIRECTORY)/src/mesa/glapi/descrip.mms \
$(DIRECTORY)/src/mesa/array_cache/*.[ch] \
$(DIRECTORY)/src/mesa/array_cache/array_cache.dsp \
$(DIRECTORY)/src/mesa/array_cache/descrip.mms \
$(DIRECTORY)/src/mesa/math/*.[ch] \
$(DIRECTORY)/src/mesa/math/math.dsp \
$(DIRECTORY)/src/mesa/math/descrip.mms \
$(DIRECTORY)/src/mesa/shader/*.[ch] \
$(DIRECTORY)/src/mesa/shader/shader.dsp \
$(DIRECTORY)/src/mesa/shader/descrip.mms \
$(DIRECTORY)/src/mesa/shader/grammar/*.[ch] \
$(DIRECTORY)/src/mesa/shader/grammar/descrip.mms \
$(DIRECTORY)/src/mesa/shader/slang/*.[ch] \
$(DIRECTORY)/src/mesa/shader/slang/descrip.mms \
$(DIRECTORY)/src/mesa/shader/slang/library/*.[ch] \
$(DIRECTORY)/src/mesa/shader/slang/library/*.gc \
$(DIRECTORY)/src/mesa/shader/slang/library/*.syn \
$(DIRECTORY)/src/mesa/shader/slang/library/Makefile \
$(DIRECTORY)/src/mesa/swrast/*.[ch] \
$(DIRECTORY)/src/mesa/swrast/swrast.dsp \
$(DIRECTORY)/src/mesa/swrast/descrip.mms \
$(DIRECTORY)/src/mesa/swrast_setup/*.[ch] \
$(DIRECTORY)/src/mesa/swrast_setup/swrast_setup.dsp \
$(DIRECTORY)/src/mesa/swrast_setup/descrip.mms \
$(DIRECTORY)/src/mesa/vbo/*.[chS] \
$(DIRECTORY)/src/mesa/vbo/descrip.mms \
$(DIRECTORY)/src/mesa/tnl/*.[chS] \
$(DIRECTORY)/src/mesa/tnl/tnl.dsp \
$(DIRECTORY)/src/mesa/tnl/descrip.mms \
$(DIRECTORY)/src/mesa/tnl_dd/*.[ch] \
$(DIRECTORY)/src/mesa/tnl_dd/imm/*.[ch] \
$(DIRECTORY)/src/mesa/tnl_dd/imm/NOTES.imm \
$(DIRECTORY)/src/mesa/drivers/Makefile \
$(DIRECTORY)/src/mesa/drivers/beos/*.cpp \
$(DIRECTORY)/src/mesa/drivers/beos/Makefile \
$(DIRECTORY)/src/mesa/drivers/common/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/common/descrip.mms \
$(DIRECTORY)/src/mesa/drivers/directfb/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/directfb/Makefile \
$(DIRECTORY)/src/mesa/drivers/dos/*.[chS] \
$(DIRECTORY)/src/mesa/drivers/dri/common/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/fbdev/Makefile \
$(DIRECTORY)/src/mesa/drivers/fbdev/glfbdev.c \
$(DIRECTORY)/src/mesa/drivers/glide/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/glide/*.def \
$(DIRECTORY)/src/mesa/drivers/ggi/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/ggi/ggimesa.conf.in \
$(DIRECTORY)/src/mesa/drivers/ggi/default/*.c \
@@ -213,31 +271,67 @@ LIB_FILES = \
$(DIRECTORY)/src/mesa/drivers/ggi/display/*.c \
$(DIRECTORY)/src/mesa/drivers/ggi/display/fbdev.conf.in \
$(DIRECTORY)/src/mesa/drivers/ggi/include/ggi/mesa/*.h \
$(DIRECTORY)/src/mesa/drivers/osmesa/Makefile \
$(DIRECTORY)/src/mesa/drivers/osmesa/Makefile.win \
$(DIRECTORY)/src/mesa/drivers/osmesa/descrip.mms \
$(DIRECTORY)/src/mesa/drivers/osmesa/osmesa.def \
$(DIRECTORY)/src/mesa/drivers/osmesa/osmesa.dsp \
$(DIRECTORY)/src/mesa/drivers/osmesa/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/svga/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/windows/*/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/windows/*/*.def \
$(DIRECTORY)/src/mesa/drivers/windows/*/*.dsp \
$(DIRECTORY)/src/mesa/drivers/x11/Makefile \
$(DIRECTORY)/src/mesa/drivers/x11/descrip.mms \
$(DIRECTORY)/src/mesa/drivers/x11/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/glslcompiler/Makefile \
$(DIRECTORY)/src/mesa/drivers/glslcompiler/glslcompiler.c \
$(DIRECTORY)/src/mesa/ppc/*.[ch] \
$(DIRECTORY)/src/mesa/sparc/*.[chS] \
$(DIRECTORY)/src/mesa/x86/Makefile \
$(DIRECTORY)/src/mesa/x86/*.[ch] \
$(DIRECTORY)/src/mesa/x86/*.S \
$(DIRECTORY)/src/mesa/x86/rtasm/*.[ch] \
$(DIRECTORY)/src/mesa/x86-64/*.[chS] \
$(DIRECTORY)/src/mesa/x86-64/Makefile \
$(DIRECTORY)/progs/Makefile \
$(DIRECTORY)/progs/util/README \
$(DIRECTORY)/progs/util/*.[ch] \
$(DIRECTORY)/progs/util/sampleMakefile \
$(DIRECTORY)/vms/analyze_map.com \
$(DIRECTORY)/vms/xlib.opt \
$(DIRECTORY)/vms/xlib_share.opt \
$(DIRECTORY)/windows/VC8/
DRI_FILES = \
$(DIRECTORY)/include/GL/internal/dri_interface.h \
$(DIRECTORY)/include/GL/internal/glcore.h \
$(DIRECTORY)/include/GL/internal/sarea.h \
$(DIRECTORY)/src/glx/Makefile \
$(DIRECTORY)/src/glx/x11/Makefile \
$(DIRECTORY)/src/glx/x11/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/dri/Makefile \
$(DIRECTORY)/src/mesa/drivers/dri/Makefile.template \
$(DIRECTORY)/src/mesa/drivers/dri/dri.pc.in \
$(DIRECTORY)/src/mesa/drivers/dri/common/xmlpool/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/dri/common/xmlpool/*.po \
$(DIRECTORY)/src/mesa/drivers/dri/*/*.[chS] \
$(DIRECTORY)/src/mesa/drivers/dri/*/Makefile \
$(DIRECTORY)/src/mesa/drivers/dri/*/Doxyfile \
$(DIRECTORY)/src/mesa/drivers/dri/*/server/*.[ch]
SGI_GLU_FILES = \
$(DIRECTORY)/src/glu/Makefile \
$(DIRECTORY)/src/glu/descrip.mms \
$(DIRECTORY)/src/glu/glu.pc.in \
$(DIRECTORY)/src/glu/sgi/Makefile \
$(DIRECTORY)/src/glu/sgi/Makefile.mgw \
$(DIRECTORY)/src/glu/sgi/Makefile.win \
$(DIRECTORY)/src/glu/sgi/Makefile.DJ \
$(DIRECTORY)/src/glu/sgi/cc*.txt \
$(DIRECTORY)/src/glu/sgi/glu.def \
$(DIRECTORY)/src/glu/sgi/glu.dsp \
$(DIRECTORY)/src/glu/sgi/dummy.cc \
$(DIRECTORY)/src/glu/sgi/descrip.mms \
$(DIRECTORY)/src/glu/sgi/glu.exports \
$(DIRECTORY)/src/glu/sgi/glu.exports.darwin \
$(DIRECTORY)/src/glu/sgi/mesaglu.opt \
$(DIRECTORY)/src/glu/sgi/include/gluos.h \
$(DIRECTORY)/src/glu/sgi/libnurbs/interface/*.h \
@@ -249,45 +343,25 @@ LIB_FILES = \
$(DIRECTORY)/src/glu/sgi/libtess/README \
$(DIRECTORY)/src/glu/sgi/libtess/alg-outline \
$(DIRECTORY)/src/glu/sgi/libtess/*.[ch] \
$(DIRECTORY)/src/glu/sgi/libutil/*.[ch] \
$(DIRECTORY)/src/glu/mesa/README[12] \
$(DIRECTORY)/src/glu/mesa/Makefile* \
$(DIRECTORY)/src/glu/mesa/descrip.mms \
$(DIRECTORY)/src/glu/mesa/mms_depend \
$(DIRECTORY)/src/glu/mesa/*.def \
$(DIRECTORY)/src/glu/mesa/depend \
$(DIRECTORY)/src/glu/mesa/*.[ch] \
$(DIRECTORY)/src/glw/*.[ch] \
$(DIRECTORY)/src/glw/Makefile* \
$(DIRECTORY)/src/glw/README \
$(DIRECTORY)/src/glw/depend \
$(DIRECTORY)/progs/Makefile \
$(DIRECTORY)/progs/util/README \
$(DIRECTORY)/progs/util/*.[ch] \
$(DIRECTORY)/progs/util/sampleMakefile \
$(DIRECTORY)/vms/analyze_map.com \
$(DIRECTORY)/vms/xlib.opt \
$(DIRECTORY)/vms/xlib_share.opt
$(DIRECTORY)/src/glu/sgi/libutil/*.[ch]
MESA_GLU_FILES = \
$(DIRECTORY)/src/glu/mesa/README[12] \
$(DIRECTORY)/src/glu/mesa/Makefile* \
$(DIRECTORY)/src/glu/mesa/descrip.mms \
$(DIRECTORY)/src/glu/mesa/mms_depend \
$(DIRECTORY)/src/glu/mesa/*.def \
$(DIRECTORY)/src/glu/mesa/depend \
$(DIRECTORY)/src/glu/mesa/*.[ch]
DEMO_FILES = \
$(DIRECTORY)/include/GL/glut.h \
$(DIRECTORY)/include/GL/glutf90.h \
$(DIRECTORY)/src/glut/glx/Makefile* \
$(DIRECTORY)/src/glut/glx/depend \
$(DIRECTORY)/src/glut/glx/*def \
$(DIRECTORY)/src/glut/glx/descrip.mms \
$(DIRECTORY)/src/glut/glx/mms_depend \
$(DIRECTORY)/src/glut/glx/glut.dsp \
$(DIRECTORY)/src/glut/glx/*.[ch] \
$(DIRECTORY)/src/glut/beos/*.[ch] \
$(DIRECTORY)/src/glut/beos/*.cpp \
$(DIRECTORY)/src/glut/beos/Makefile \
$(DIRECTORY)/src/glut/dos/*.[ch] \
$(DIRECTORY)/src/glut/dos/Makefile.DJ \
$(DIRECTORY)/src/glut/dos/PC_HW/*.[chS] \
$(DIRECTORY)/src/glut/ggi/*.[ch] \
$(DIRECTORY)/src/glut/ggi/Makefile \
GLW_FILES = \
$(DIRECTORY)/src/glw/*.[ch] \
$(DIRECTORY)/src/glw/Makefile* \
$(DIRECTORY)/src/glw/README \
$(DIRECTORY)/src/glw/glw.pc.in \
$(DIRECTORY)/src/glw/depend
DEMO_FILES = \
$(DIRECTORY)/progs/beos/*.cpp \
$(DIRECTORY)/progs/beos/Makefile \
$(DIRECTORY)/progs/images/*.rgb \
@@ -298,8 +372,10 @@ DEMO_FILES = \
$(DIRECTORY)/progs/demos/*.cxx \
$(DIRECTORY)/progs/demos/*.dat \
$(DIRECTORY)/progs/demos/README \
$(DIRECTORY)/progs/demos/Windows/*.dsp \
$(DIRECTORY)/progs/demos/Windows/*.dsw \
$(DIRECTORY)/progs/fbdev/Makefile \
$(DIRECTORY)/progs/fbdev/glfbdevtest.c \
$(DIRECTORY)/progs/osdemos/Makefile \
$(DIRECTORY)/progs/osdemos/*.c \
$(DIRECTORY)/progs/xdemos/Makefile* \
$(DIRECTORY)/progs/xdemos/descrip.mms \
$(DIRECTORY)/progs/xdemos/*.[chf] \
@@ -309,71 +385,139 @@ DEMO_FILES = \
$(DIRECTORY)/progs/samples/Makefile* \
$(DIRECTORY)/progs/samples/README \
$(DIRECTORY)/progs/samples/*.c \
$(DIRECTORY)/progs/glsl/Makefile* \
$(DIRECTORY)/progs/glsl/*.c \
$(DIRECTORY)/progs/glsl/*.frag \
$(DIRECTORY)/progs/glsl/*.vert \
$(DIRECTORY)/progs/windml/Makefile.ugl \
$(DIRECTORY)/progs/windml/*.c \
$(DIRECTORY)/progs/windml/*.bmp \
$(DIRECTORY)/progs/ggi/*.c
$(DIRECTORY)/progs/ggi/*.c \
$(DIRECTORY)/windows/VC6/progs/demos/*.dsp \
$(DIRECTORY)/windows/VC6/progs/progs.dsw \
$(DIRECTORY)/windows/VC7/progs/demos/*.vcproj \
$(DIRECTORY)/windows/VC7/progs/progs.sln
GLUT_FILES = \
$(DIRECTORY)/include/GL/glut.h \
$(DIRECTORY)/include/GL/glutf90.h \
$(DIRECTORY)/src/glut/glx/Makefile* \
$(DIRECTORY)/src/glut/glx/depend \
$(DIRECTORY)/src/glut/glx/glut.pc.in \
$(DIRECTORY)/src/glut/glx/*def \
$(DIRECTORY)/src/glut/glx/descrip.mms \
$(DIRECTORY)/src/glut/glx/mms_depend \
$(DIRECTORY)/src/glut/glx/*.[ch] \
$(DIRECTORY)/src/glut/beos/*.[ch] \
$(DIRECTORY)/src/glut/beos/*.cpp \
$(DIRECTORY)/src/glut/beos/Makefile \
$(DIRECTORY)/src/glut/dos/*.[ch] \
$(DIRECTORY)/src/glut/dos/Makefile.DJ \
$(DIRECTORY)/src/glut/dos/PC_HW/*.[chS] \
$(DIRECTORY)/src/glut/ggi/*.[ch] \
$(DIRECTORY)/src/glut/ggi/Makefile \
$(DIRECTORY)/src/glut/fbdev/Makefile \
$(DIRECTORY)/src/glut/fbdev/*[ch] \
$(DIRECTORY)/src/glut/mini/*[ch] \
$(DIRECTORY)/src/glut/mini/glut.pc.in \
$(DIRECTORY)/src/glut/directfb/Makefile \
$(DIRECTORY)/src/glut/directfb/NOTES \
$(DIRECTORY)/src/glut/directfb/*[ch] \
$(DIRECTORY)/windows/VC6/progs/glut/glut.dsp \
$(DIRECTORY)/windows/VC7/progs/glut/glut.vcproj
DEPEND_FILES = \
$(TOP)/src/mesa/depend \
$(TOP)/src/glx/x11/depend \
$(TOP)/src/glw/depend \
$(TOP)/src/glut/glx/depend \
$(TOP)/src/glu/sgi/depend
DRI_FILES = \
$(DIRECTORY)/src/glx/Makefile \
$(DIRECTORY)/src/glx/mini/*.[ch] \
$(DIRECTORY)/src/glx/mini/example.miniglx.conf \
$(DIRECTORY)/src/glx/mini/NOTES \
$(DIRECTORY)/src/mesa/drivers/dri/Makefile \
$(DIRECTORY)/src/mesa/drivers/dri/Makefile.template \
$(DIRECTORY)/src/mesa/drivers/dri/common/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/dri/dri_client/imports/*.h \
$(DIRECTORY)/src/mesa/drivers/dri/*/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/dri/*/depend \
$(DIRECTORY)/src/mesa/drivers/dri/*/Makefile \
$(DIRECTORY)/src/mesa/drivers/dri/*/Doxyfile \
$(DIRECTORY)/src/mesa/drivers/dri/*/server/*.[ch]
LIB_FILES = $(MAIN_FILES) $(DRI_FILES) $(SGI_GLU_FILES) $(GLW_FILES)
# Everything for new a Mesa release:
tarballs: lib_gz demo_gz lib_bz2 demo_bz2 lib_zip demo_zip md5
tarballs: rm_depend configure aclocal.m4 lib_gz demo_gz glut_gz \
lib_bz2 demo_bz2 glut_bz2 lib_zip demo_zip glut_zip md5
# Helper for autoconf builds
ACLOCAL = aclocal
ACLOCAL_FLAGS =
AUTOCONF = autoconf
AC_FLAGS =
aclocal.m4: configure.ac acinclude.m4
$(ACLOCAL) $(ACLOCAL_FLAGS)
configure: configure.ac aclocal.m4 acinclude.m4
$(AUTOCONF) $(AC_FLAGS)
rm_depend:
@for dep in $(DEPEND_FILES) ; do \
rm -f $$dep ; \
touch $$dep ; \
done
lib_gz:
rm -f configs/current ; \
rm -f configs/autoconf ; \
cd .. ; \
tar -cvf $(LIB_NAME).tar $(LIB_FILES) ; \
tar -cf $(LIB_NAME).tar $(LIB_FILES) ; \
gzip $(LIB_NAME).tar ; \
mv $(LIB_NAME).tar.gz $(DIRECTORY)
demo_gz:
cd .. ; \
tar -cvf $(DEMO_NAME).tar $(DEMO_FILES) ; \
tar -cf $(DEMO_NAME).tar $(DEMO_FILES) ; \
gzip $(DEMO_NAME).tar ; \
mv $(DEMO_NAME).tar.gz $(DIRECTORY)
glut_gz:
cd .. ; \
tar -cf $(GLUT_NAME).tar $(GLUT_FILES) ; \
gzip $(GLUT_NAME).tar ; \
mv $(GLUT_NAME).tar.gz $(DIRECTORY)
lib_bz2:
rm -f configs/current ; \
rm -f configs/autoconf ; \
cd .. ; \
tar -cvf $(LIB_NAME).tar $(LIB_FILES) ; \
tar -cf $(LIB_NAME).tar $(LIB_FILES) ; \
bzip2 $(LIB_NAME).tar ; \
mv $(LIB_NAME).tar.bz2 $(DIRECTORY)
demo_bz2:
cd .. ; \
tar -cvf $(DEMO_NAME).tar $(DEMO_FILES) ; \
tar -cf $(DEMO_NAME).tar $(DEMO_FILES) ; \
bzip2 $(DEMO_NAME).tar ; \
mv $(DEMO_NAME).tar.bz2 $(DIRECTORY)
glut_bz2:
cd .. ; \
tar -cf $(GLUT_NAME).tar $(GLUT_FILES) ; \
bzip2 $(GLUT_NAME).tar ; \
mv $(GLUT_NAME).tar.bz2 $(DIRECTORY)
lib_zip:
rm -f configs/current ; \
-rm $(LIB_NAME).zip ; \
rm -f configs/autoconf ; \
rm -f $(LIB_NAME).zip ; \
cd .. ; \
zip -r $(LIB_NAME).zip $(LIB_FILES) ; \
zip -qr $(LIB_NAME).zip $(LIB_FILES) ; \
mv $(LIB_NAME).zip $(DIRECTORY)
demo_zip:
-rm $(DEMO_NAME).zip ; \
rm -f $(DEMO_NAME).zip ; \
cd .. ; \
zip -r $(DEMO_NAME).zip $(DEMO_FILES) ; \
zip -qr $(DEMO_NAME).zip $(DEMO_FILES) ; \
mv $(DEMO_NAME).zip $(DIRECTORY)
glut_zip:
rm -f $(GLUT_NAME).zip ; \
cd .. ; \
zip -qr $(GLUT_NAME).zip $(GLUT_FILES) ; \
mv $(GLUT_NAME).zip $(DIRECTORY)
md5:
@-md5sum $(LIB_NAME).tar.gz
@-md5sum $(LIB_NAME).tar.bz2
@@ -381,3 +525,9 @@ md5:
@-md5sum $(DEMO_NAME).tar.gz
@-md5sum $(DEMO_NAME).tar.bz2
@-md5sum $(DEMO_NAME).zip
@-md5sum $(GLUT_NAME).tar.gz
@-md5sum $(GLUT_NAME).tar.bz2
@-md5sum $(GLUT_NAME).zip
.PHONY: tarballs rm_depend lib_gz demo_gz glut_gz lib_bz2 demo_bz2 \
glut_bz2 lib_zip demo_zip glut_zip md5

View File

@@ -20,9 +20,9 @@
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
# DOS/DJGPP makefile v1.6 for Mesa
# DOS/DJGPP makefile for Mesa
#
# Copyright (C) 2002 - Daniel Borca
# Author: Daniel Borca
# Email : dborca@users.sourceforge.net
# Web : http://www.geocities.com/dborca
@@ -31,11 +31,6 @@
# Available options:
#
# Environment variables:
# CPU optimize for the given processor.
# default = pentium
# GLU=[mesa|sgi] specify GLU directory; can be `sgi' (requires GNU/C++)
# or `mesa'.
# default = mesa
# GLIDE path to Glide3 SDK; used with FX.
# default = $(TOP)/glide3
# FX=1 build for 3dfx Glide3. Note that this disables
@@ -59,12 +54,8 @@
.PHONY : all libgl libglu libglut clean realclean
CPU ?= pentium
GLU ?= mesa
CFLAGS = -Wall -W -pedantic
CFLAGS += -O2 -ffast-math -mtune=$(CPU)
CFLAGS += -O2 -ffast-math
export CFLAGS
@@ -79,7 +70,7 @@ all: libgl libglu libglut
libgl: lib
$(MAKE) -f Makefile.DJ -C src/mesa
libglu: lib
$(MAKE) -f Makefile.DJ -C src/glu/$(GLU)
$(MAKE) -f Makefile.DJ -C src/glu/sgi
libglut: lib
$(MAKE) -f Makefile.DJ -C src/glut/dos

View File

@@ -31,8 +31,6 @@
# Available options:
#
# Environment variables:
# CPU optimize for the given processor.
# default = pentium
# GLIDE path to Glide3 SDK; used with FX.
# default = $(TOP)/glide3
# FX=1 build for 3dfx Glide3. Note that this disables
@@ -53,39 +51,59 @@
# realclean: remove all generated files
#
# MinGW core makefile updated for Mesa 7.0
#
# Updated : by Heromyth, on 2007-7-21
# Email : zxpmyth@yahoo.com.cn
# Bugs : 1) All the default settings work fine. But the setting X86=1 can't work.
# The others havn't been tested yet.
# 2) The generated DLLs are *not* compatible with the ones built
# with the other compilers like VC8, especially for GLUT.
# 3) MAlthough more tests are needed, it can be used individually!
.PHONY : all libgl clean realclean
CPU ?= pentium
ifeq ($(ICD),1)
# when -std=c99 mingw will not define WIN32
CFLAGS = -Wall -W -Werror
CFLAGS = -Wall -Werror
else
# I love c89
CFLAGS = -Wall -W -pedantic
CFLAGS = -Wall -pedantic
endif
CFLAGS += -O2 -ffast-math -mtune=$(CPU)
CFLAGS += -O2 -ffast-math
export CFLAGS
ifeq ($(wildcard $(addsuffix /rm.exe,$(subst ;, ,$(PATH)))),)
UNLINK = del $(subst /,\,$(1))
else
UNLINK = $(RM) $(1)
endif
all: libgl
all: libgl libglu libglut example
libgl: lib
$(MAKE) -f Makefile.mgw -C src/mesa
libglu: libgl
$(MAKE) -f Makefile.mgw -C src/glu/sgi
libglut: libglu
$(MAKE) -f Makefile.mgw -C src/glut/glx
example: libglut
$(MAKE) -f Makefile.mgw star -C progs/samples
copy progs\samples\star.exe lib
lib:
mkdir lib
clean:
$(MAKE) -f Makefile.mgw clean -C src/mesa
$(MAKE) -f Makefile.mgw clean -C src/glu/sgi
$(MAKE) -f Makefile.mgw clean -C src/glut/glx
realclean: clean
-$(call UNLINK,lib/*.a)

179
Mesa.dsw
View File

@@ -1,179 +0,0 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "array_cache"=".\SRC\MESA\array_cache\array_cache.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "gdi"=".\src\mesa\drivers\windows\gdi\gdi.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name array_cache
End Project Dependency
Begin Project Dependency
Project_Dep_Name main
End Project Dependency
Begin Project Dependency
Project_Dep_Name math
End Project Dependency
Begin Project Dependency
Project_Dep_Name swrast_setup
End Project Dependency
Begin Project Dependency
Project_Dep_Name swrast
End Project Dependency
Begin Project Dependency
Project_Dep_Name tnl
End Project Dependency
Begin Project Dependency
Project_Dep_Name glapi
End Project Dependency
Begin Project Dependency
Project_Dep_Name shader
End Project Dependency
}}}
###############################################################################
Project: "glapi"=".\SRC\MESA\glapi\glapi.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "glu"=".\src\glu\sgi\glu.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name gdi
End Project Dependency
}}}
###############################################################################
Project: "main"=".\SRC\MESA\main\main.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "math"=".\SRC\MESA\math\math.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "osmesa"=".\SRC\MESA\DRIVERS\osmesa\osmesa.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name gdi
End Project Dependency
}}}
###############################################################################
Project: "shader"=".\SRC\MESA\shader\shader.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "swrast"=".\SRC\MESA\swrast\swrast.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "swrast_setup"=".\SRC\MESA\swrast_setup\swrast_setup.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "tnl"=".\SRC\MESA\tnl\tnl.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

119
acinclude.m4 Normal file
View File

@@ -0,0 +1,119 @@
# A few convenience macros for Mesa, mostly to keep all the platform
# specifics out of configure.ac.
# MESA_PIC_FLAGS()
#
# Find out whether to build PIC code using the option --enable-pic and
# the configure enable_static/enable_shared settings. If PIC is needed,
# figure out the necessary flags for the platform and compiler.
#
# The platform checks have been shamelessly taken from libtool and
# stripped down to just what's needed for Mesa. See _LT_COMPILER_PIC in
# /usr/share/aclocal/libtool.m4 or
# http://git.savannah.gnu.org/gitweb/?p=libtool.git;a=blob;f=libltdl/m4/libtool.m4;hb=HEAD
#
AC_DEFUN([MESA_PIC_FLAGS],
[AC_REQUIRE([AC_PROG_CC])dnl
AC_ARG_VAR([PIC_FLAGS], [compiler flags for PIC code])
AC_ARG_ENABLE([pic],
[AS_HELP_STRING([--disable-pic],
[compile PIC objects @<:@default=enabled for shared builds
on supported platforms@:>@])],
[enable_pic="$enableval"
test "x$enable_pic" = x && enable_pic=auto],
[enable_pic=auto])
# disable PIC by default for static builds
if test "$enable_pic" = auto && test "$enable_static" = yes; then
enable_pic=no
fi
# if PIC hasn't been explicitly disabled, try to figure out the flags
if test "$enable_pic" != no; then
AC_MSG_CHECKING([for $CC option to produce PIC])
# allow the user's flags to override
if test "x$PIC_FLAGS" = x; then
# see if we're using GCC
if test "x$GCC" = xyes; then
case "$host_os" in
aix*|beos*|cygwin*|irix5*|irix6*|osf3*|osf4*|osf5*)
# PIC is the default for these OSes.
;;
mingw*|os2*|pw32*)
# This hack is so that the source file can tell whether
# it is being built for inclusion in a dll (and should
# export symbols for example).
PIC_FLAGS="-DDLL_EXPORT"
;;
darwin*|rhapsody*)
# PIC is the default on this platform
# Common symbols not allowed in MH_DYLIB files
PIC_FLAGS="-fno-common"
;;
hpux*)
# PIC is the default for IA64 HP-UX and 64-bit HP-UX,
# but not for PA HP-UX.
case $host_cpu in
hppa*64*|ia64*)
;;
*)
PIC_FLAGS="-fPIC"
;;
esac
;;
*)
# Everyone else on GCC uses -fPIC
PIC_FLAGS="-fPIC"
;;
esac
else # !GCC
case "$host_os" in
hpux9*|hpux10*|hpux11*)
# PIC is the default for IA64 HP-UX and 64-bit HP-UX,
# but not for PA HP-UX.
case "$host_cpu" in
hppa*64*|ia64*)
# +Z the default
;;
*)
PIC_FLAGS="+Z"
;;
esac
;;
linux*|k*bsd*-gnu)
case `basename "$CC"` in
icc*|ecc*|ifort*)
PIC_FLAGS="-KPIC"
;;
pgcc*|pgf77*|pgf90*|pgf95*)
# Portland Group compilers (*not* the Pentium gcc
# compiler, which looks to be a dead project)
PIC_FLAGS="-fpic"
;;
ccc*)
# All Alpha code is PIC.
;;
xl*)
# IBM XL C 8.0/Fortran 10.1 on PPC
PIC_FLAGS="-qpic"
;;
*)
case `$CC -V 2>&1 | sed 5q` in
*Sun\ C*|*Sun\ F*)
# Sun C 5.9 or Sun Fortran
PIC_FLAGS="-KPIC"
;;
esac
esac
;;
solaris*)
PIC_FLAGS="-KPIC"
;;
sunos4*)
PIC_FLAGS="-PIC"
;;
esac
fi # GCC
fi # PIC_FLAGS
AC_MSG_RESULT([$PIC_FLAGS])
fi
AC_SUBST([PIC_FLAGS])
])# MESA_PIC_FLAGS

16
autogen.sh Executable file
View File

@@ -0,0 +1,16 @@
#! /bin/sh
srcdir=`dirname "$0"`
test -z "$srcdir" && srcdir=.
SRCDIR=`(cd "$srcdir" && pwd)`
ORIGDIR=`pwd`
if test "x$SRCDIR" != "x$ORIGDIR"; then
echo "Mesa cannot be built when srcdir != builddir" 1>&2
exit 1
fi
autoreconf -v --install || exit 1
"$srcdir"/configure "$@"

48
bin/confdiff.sh Executable file
View File

@@ -0,0 +1,48 @@
#!/bin/bash -e
usage()
{
echo "Usage: $0 <target1> <target2>"
echo "Highlight differences between Mesa configs"
echo "Example:"
echo " $0 linux linux-x86"
}
die()
{
echo "$@" >&2
return 1
}
case "$1" in
-h|--help) usage; exit 0;;
esac
[ $# -lt 2 ] && die 2 targets needed. See $0 --help
target1=$1
target2=$2
topdir=$(cd "`dirname $0`"/..; pwd)
cd "$topdir"
[ -f "./configs/$target1" ] || die Missing configs/$target1
[ -f "./configs/$target2" ] || die Missing configs/$target2
trap 'rm -f "$t1" "$t2"' 0
t1=$(mktemp)
t2=$(mktemp)
make -f- -n -p <<EOF | sed '/^# Not a target/,/^$/d' > $t1
TOP = .
include \$(TOP)/configs/$target1
default:
EOF
make -f- -n -p <<EOF | sed '/^# Not a target/,/^$/d' > $t2
TOP = .
include \$(TOP)/configs/$target2
default:
EOF
diff -pu -I'^#' $t1 $t2

1516
bin/config.guess vendored Executable file

File diff suppressed because it is too large Load Diff

1626
bin/config.sub vendored Executable file

File diff suppressed because it is too large Load Diff

1
bin/install-sh Symbolic link
View File

@@ -0,0 +1 @@
minstall

View File

@@ -12,7 +12,7 @@ TOP=.
INCLUDE_DIR="/usr/local/include"
LIB_DIR="/usr/local/lib"
if [ "x$#" = "x0" ] ; then
echo
echo "***** Mesa installation - You may need root privileges to do this *****"
echo
@@ -20,7 +20,7 @@ echo "Default directory for header files is:" ${INCLUDE_DIR}
echo "Enter new directory or press <Enter> to accept this default."
read INPUT
if [ x${INPUT} != "x" ] ; then
if [ "x${INPUT}" != "x" ] ; then
INCLUDE_DIR=${INPUT}
fi
@@ -29,11 +29,10 @@ echo "Default directory for library files is:" ${LIB_DIR}
echo "Enter new directory or press <Enter> to accept this default."
read INPUT
if [ x${INPUT} != "x" ] ; then
if [ "x${INPUT}" != "x" ] ; then
LIB_DIR=${INPUT}
fi
echo
echo "About to install Mesa header files (GL/*.h) in: " ${INCLUDE_DIR}/GL
echo "and Mesa library files (libGL.*, etc) in: " ${LIB_DIR}
@@ -41,17 +40,35 @@ echo "Press <Enter> to continue, or <ctrl>-C to abort."
read INPUT
else
INCLUDE_DIR=$1/include
LIB_DIR=$1/lib
fi
# flags:
# -f = force
# -d = preserve symlinks
# -d = preserve symlinks (does not work on BSD)
if [ `uname` = "FreeBSD" ] ; then
CP_FLAGS="-f"
elif [ `uname` = "Darwin" ] ; then
CP_FLAGS="-f"
elif [ `uname` = "AIX" ] ; then
CP_FLAGS="-fh"
else
CP_FLAGS="-fd"
fi
set -v
mkdir ${INCLUDE_DIR}
mkdir ${INCLUDE_DIR}/GL
mkdir ${LIB_DIR}
mkdir -p ${INCLUDE_DIR}
mkdir -p ${INCLUDE_DIR}/GL
# NOT YET: mkdir -p ${INCLUDE_DIR}/GLES
mkdir -p ${LIB_DIR}
cp -f ${TOP}/include/GL/*.h ${INCLUDE_DIR}/GL
cp -fd ${TOP}/lib*/lib* ${LIB_DIR}
cp -f ${TOP}/src/glw/*.h ${INCLUDE_DIR}/GL
# NOT YET: cp -f ${TOP}/include/GLES/*.h ${INCLUDE_DIR}/GLES
cp ${CP_FLAGS} ${TOP}/lib*/lib* ${LIB_DIR}
echo "Done."

90
bin/minstall Executable file
View File

@@ -0,0 +1,90 @@
#!/bin/sh
# A minimal replacement for 'install' that supports installing symbolic links.
# Only a limited number of options are supported:
# -d dir Create a directory
# -m mode Sets a file's mode when installing
# If these commands aren't portable, we'll need some "if (arch)" type stuff
SYMLINK="ln -s"
MKDIR="mkdir -p"
RM="rm -f"
MODE=""
if [ "$1" = "-d" ] ; then
# make a directory path
$MKDIR "$2"
exit 0
fi
if [ "$1" = "-m" ] ; then
# set file mode
MODE=$2
shift 2
fi
# install file(s) into destination
if [ $# -ge 2 ] ; then
# Last cmd line arg is the dest dir
for FILE in $@ ; do
DEST="$FILE"
done
# Loop over args, moving them to DEST directory
I=1
for FILE in $@ ; do
if [ $I = $# ] ; then
# stop, don't want to install $DEST into $DEST
exit 0
fi
PWDSAVE=`pwd`
# determine file's type
if [ -h "$FILE" ] ; then
#echo $FILE is a symlink
# Unfortunately, cp -d isn't universal so we have to
# use a work-around.
# Use ls -l to find the target that the link points to
LL=`ls -l "$FILE"`
for L in $LL ; do
TARGET=$L
done
#echo $FILE is a symlink pointing to $TARGET
FILE=`basename "$FILE"`
# Go to $DEST and make the link
cd "$DEST" # pushd
$RM "$FILE"
$SYMLINK "$TARGET" "$FILE"
cd "$PWDSAVE" # popd
elif [ -f "$FILE" ] ; then
#echo "$FILE" is a regular file
$RM "$DEST/`basename $FILE`"
cp "$FILE" "$DEST"
if [ $MODE ] ; then
FILE=`basename "$FILE"`
chmod $MODE "$DEST/$FILE"
fi
else
echo "Unknown type of argument: " "$FILE"
exit 1
fi
I=`expr $I + 1`
done
exit 0
fi
# If we get here, we didn't find anything to do
echo "Usage:"
echo " install -d dir Create named directory"
echo " install [-m mode] file [...] dest Install files in destination"

637
bin/mklib
View File

@@ -1,38 +1,28 @@
#!/bin/sh
# Make a shared library.
# Basically do a switch/case depending on the OS and make a shared (or static)
# library conforming to that OS.
# This script should be useful for projects other than Mesa.
# Improvements/fixes are welcome.
# Usage:
# mklib [options] objects ...
# Options:
# -o LIBRARY specifies the name of resulting library
# ("-o GL" for example, might result in "libGL.so" being made)
# -major N specifies major version number (default is 1)
# -minor N specifies minor version number (default is 0)
# -patch N specifies patch version number (default is 0)
# -lLIBRARY specifies a dependency on LIBRARY
# -LDIR search in DIR for library dependencies
# -cplusplus link with C++ runtime
# -static make a static library (default is dynamic/shared)
# -install DIR move resulting library file(s) to DIR
# -arch ARCH override using `uname` to determine architecture
# -archopt OPT specify an extra achitecture-specific option OPT
# -noprefix don't prefix library name with "lib" or any suffix
# -exports FILE only export the symbols listed in FILE
# Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
#
# The library name should just be "GL" or "GLU", etc. The 'lib' prefix
# will be added here if needed, as well as the ".so" or ".a" suffix,
# etc (unless the -noprefix option is used).
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# objects should be: foo.o bar.o etc.o
#
# Environment variables recognized:
# CC C compiler command
# CXX C++ compiler command
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
@@ -43,14 +33,17 @@ MAJOR=1
MINOR=0
PATCH=""
DEPS=""
LINK=""
LDFLAGS=""
CPLUSPLUS=0
STATIC=0
DLOPEN=0
INSTALLDIR="."
ARCH="auto"
ARCHOPT=""
NOPREFIX=0
EXPORTS=""
ID=""
#
# Parse arguments
@@ -58,26 +51,126 @@ EXPORTS=""
while true
do
case $1 in
'-o') shift 1; LIBNAME=$1;;
'-major') shift 1; MAJOR=$1;;
'-minor') shift 1; MINOR=$1;;
'-patch') shift 1; PATCH=$1;;
-l*) DEPS="$DEPS $1";;
-L*) DEPS="$DEPS $1";;
'-cplusplus') CPLUSPLUS=1;;
'-static') STATIC=1;;
'-install') shift 1; INSTALLDIR=$1;;
'-arch') shift 1; ARCH=$1;;
'-archopt') shift 1; ARCHOPT=$1;;
'-noprefix') NOPREFIX=1;;
'-exports') shift 1; EXPORTS=$1;;
-*) echo "mklib: Unknown option: " $1 ; exit 1;;
*) break
'-h' | '--help')
echo 'Usage: mklib [options] objects'
echo 'Create a shared library from object files.'
echo ' -o LIBRARY specifies the name of the resulting library, without'
echo ' the leading "lib" or any suffix.'
echo ' (eg: "-o GL" might result in "libGL.so" being made)'
echo ' -major N specifies major version number (default is 1)'
echo ' -minor N specifies minor version number (default is 0)'
echo ' -patch N specifies patch version number (default is 0)'
echo ' -lLIBRARY specifies a dependency on LIBRARY'
echo ' -LDIR search in DIR for library dependencies at build time'
echo ' -RDIR search in DIR for library dependencies at run time'
echo ' -linker L explicity specify the linker program to use (eg: gcc, g++)'
echo ' Not observed on all systems at this time.'
echo ' -ldflags OPT specify any additional linker flags in OPT'
echo ' -cplusplus link with C++ runtime'
echo ' -static make a static library (default is dynamic/shared)'
echo ' -dlopen make a shared library suitable for dynamic loading'
echo ' -install DIR put resulting library file(s) in DIR'
echo ' -arch ARCH override using `uname` to determine host system'
echo ' -archopt OPT specify an extra achitecture-specific option OPT'
echo ' -altopts OPTS alternate options to override all others'
echo " -noprefix don't prefix library name with 'lib' nor add any suffix"
echo ' -exports FILE only export the symbols listed in FILE'
echo ' -id NAME Sets the id of the dylib (Darwin)'
echo ' -h, --help display this information and exit'
exit 1
;;
'-o')
shift 1;
LIBNAME=$1
;;
'-major')
shift 1;
MAJOR=$1
;;
'-minor')
shift 1;
MINOR=$1
;;
'-patch')
shift 1;
PATCH=$1
;;
'-linker')
shift 1;
LINK=$1
;;
'-ldflags')
shift 1;
LDFLAGS=$1
;;
-l*)
DEPS="$DEPS $1"
;;
-L*)
DEPS="$DEPS $1"
;;
-R*)
DEPS="$DEPS $1"
;;
-Wl*)
DEPS="$DEPS $1"
;;
-pthread)
# this is a special case (see bugzilla 10876)
DEPS="$DEPS $1"
;;
'-pthread')
DEPS="$DEPS -pthread"
;;
'-cplusplus')
CPLUSPLUS=1
;;
'-static')
STATIC=1
;;
'-dlopen')
DLOPEN=1
;;
'-install')
shift 1;
INSTALLDIR=$1
;;
'-arch')
shift 1;
ARCH=$1
;;
'-archopt')
shift 1;
ARCHOPT=$1
;;
'-altopts')
shift 1;
ALTOPTS=$1
;;
'-noprefix')
NOPREFIX=1
;;
'-exports')
shift 1;
EXPORTS=$1
;;
'-id')
shift 1;
ID=$1
;;
-*)
echo "mklib: Unknown option: " $1 ;
exit 1
;;
*)
# This should be the first object file, stop parsing
break
esac
shift 1
done
OBJECTS=$@
if [ ${ARCH} = "auto" ] ; then
ARCH=`uname`
fi
@@ -108,6 +201,7 @@ if [ ] ; then
echo PATCH is $PATCH
echo DEPS are $DEPS
echo "EXPORTS in" $EXPORTS
echo ID is $ID
echo "-----------------"
fi
@@ -117,54 +211,95 @@ fi
#
case $ARCH in
'Linux' | 'OpenBSD')
'Linux' | 'OpenBSD' | 'DragonFly' | 'GNU' | GNU/*)
# we assume gcc
# Set default compilers if env vars not set
if [ "x$CXX" = "x" ] ; then
CXX=g++
fi
if [ "x$CC" = "x" ] ; then
CC=gcc
if [ "x$LINK" = "x" ] ; then
# -linker was not specified so set default link command now
if [ $CPLUSPLUS = 1 ] ; then
LINK=g++
else
LINK=gcc
fi
fi
if [ $NOPREFIX = 1 ] ; then
# No "lib" or ".so" part
echo "mklib: Making" $ARCH "shared library: " ${LIBNAME}
#OPTS="-shared -Wl,-soname,${LIBNAME}" # soname???
OPTS="-shared"
if [ $CPLUSPLUS = 1 ] ; then
LINK=$CXX
else
LINK=$CC
fi
rm -f ${LIBNAME}
case $ARCH in 'Linux' | 'GNU' | GNU/*)
OPTS="-Xlinker -Bsymbolic -shared"
;;
*)
OPTS="-shared"
;;
esac
# Check if objects are 32-bit and we're running in 64-bit
# environment. If so, pass -m32 flag to linker.
set ${OBJECTS}
ABI32=`file $1 | grep 32-bit`
if [ "${ABI32}" -a `uname -m` = "x86_64" ] ; then
OPTS="-m32 ${OPTS}"
fi
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
rm -f ${LIBNAME}
# make lib
${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
# finish up
FINAL_LIBS="${LIBNAME}"
elif [ $STATIC = 1 ] ; then
LIBNAME="lib${LIBNAME}" # prefix with "lib"
echo "mklib: Making" $ARCH "static library: " ${LIBNAME}.a
LIBNAME="lib${LIBNAME}.a" # prefix with "lib", suffix with ".a"
echo "mklib: Making" $ARCH "static library: " ${LIBNAME}
LINK="ar"
OPTS="-ru"
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
rm -f ${LIBNAME}
# expand any .a objects into constituent .o files.
NEWOBJECTS=""
DELETIA=""
for OBJ in ${OBJECTS} ; do
if [ `expr match $OBJ '.*\.a'` -gt 0 ] ; then
# extract the .o files from this .a archive
FILES=`ar t $OBJ`
ar x $OBJ
NEWOBJECTS="$NEWOBJECTS $FILES"
# keep track of temporary .o files and delete them below
DELETIA="$DELETIA $FILES"
else
# ordinary .o file
NEWOBJECTS="$NEWOBJECTS $OBJ"
fi
done
# make lib
${LINK} ${OPTS} ${LIBNAME}.a ${OBJECTS}
ranlib ${LIBNAME}.a
${LINK} ${OPTS} ${LIBNAME} ${NEWOBJECTS}
ranlib ${LIBNAME}
# remove temporary extracted .o files
rm -f ${DELETIA}
# finish up
FINAL_LIBS=${LIBNAME}.a
FINAL_LIBS=${LIBNAME}
else
LIBNAME="lib${LIBNAME}" # prefix with "lib"
if [ $ARCH = 'Linux' ] ; then
case $ARCH in 'Linux' | 'GNU' | GNU/*)
OPTS="-Xlinker -Bsymbolic -shared -Wl,-soname,${LIBNAME}.so.${MAJOR}"
else
;;
*)
OPTS="-shared -Wl,-soname,${LIBNAME}.so.${MAJOR}"
fi
;;
esac
if [ $EXPORTS ] ; then
#OPTS="${OPTS} -Xlinker --retain-symbols-file ${EXPORTS}"
# Make the 'exptmp' file for --version-script option
echo "VERSION_${MAJOR}.${MINOR} {" > exptmp
echo "{" > exptmp
echo "global:" >> exptmp
sed 's/$/;/' ${EXPORTS} >> exptmp
echo "local:" >> exptmp
@@ -173,6 +308,18 @@ case $ARCH in
OPTS="${OPTS} -Xlinker --version-script=exptmp"
# exptmp is removed below
fi
# Check if objects are 32-bit and we're running in 64-bit
# environment. If so, pass -m32 flag to linker.
set ${OBJECTS}
ABI32=`file $1 | grep 32-bit`
if [ "${ABI32}" -a `uname -m` = "x86_64" ] ; then
OPTS="-m32 ${OPTS}"
fi
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
if [ x${PATCH} = "x" ] ; then
VERSION="${MAJOR}.${MINOR}"
else
@@ -181,19 +328,13 @@ case $ARCH in
echo "mklib: Making" $ARCH "shared library: " ${LIBNAME}.so.${VERSION}
if [ $CPLUSPLUS = 1 ] ; then
LINK=$CXX
else
LINK=$CC
fi
# rm any old libs
rm -f ${LIBNAME}.so.${VERSION}
rm -f ${LIBNAME}.so.${MAJOR}
rm -f ${LIBNAME}.so
# make lib
${LINK} ${OPTS} -o ${LIBNAME}.so.${VERSION} ${OBJECTS} ${DEPS}
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME}.so.${VERSION} ${OBJECTS} ${DEPS}
# make usual symlinks
ln -s ${LIBNAME}.so.${VERSION} ${LIBNAME}.so.${MAJOR}
ln -s ${LIBNAME}.so.${MAJOR} ${LIBNAME}.so
@@ -211,60 +352,121 @@ case $ARCH in
ar -ruv ${LIBNAME} ${OBJECTS}
FINAL_LIBS=${LIBNAME}
else
LIBNAME="lib${LIBNAME}.so"
if [ $NOPREFIX = 0 ] ; then
LIBNAME="lib${LIBNAME}.so"
fi
echo "mklib: Making SunOS shared library: " ${LIBNAME}
# XXX OPTS for gcc should be -shared, but that doesn't work.
# Using -G does work though.
if [ $CPLUSPLUS = 1 ] ; then
# determine linker and options for C++ code
if [ "x${CXX}" = "xg++" ] ; then
# use g++
LINK="g++"
OPTS="-G"
elif [ "x${CXX}" = "xCC" ] ; then
# use Sun CC
LINK="CC"
OPTS="-G"
elif [ "x${CXX}" = "xc++" ] ; then
# use Sun c++
LINK="c++"
OPTS="-G"
elif [ `which c++` ] ; then
# use Sun c++
LINK="c++"
OPTS="-G"
elif [ `type g++` ] ; then
# use g++
LINK="g++"
OPTS="-G"
if [ "x$LINK" = "x" ] ; then
# -linker was not specified, choose default linker now
if [ $CPLUSPLUS = 1 ] ; then
# determine linker and options for C++ code
if [ `which c++` ] ; then
# use Sun c++
LINK="c++"
elif [ `type g++` ] ; then
# use g++
LINK="g++"
else
echo "mklib: warning: can't find C++ compiler, trying CC."
LINK="CC"
fi
else
echo "mklib: warning: can't find C++ comiler, trying CC."
LINK="CC"
OPTS="-G"
# use native Sun linker for C code
LINK="ld"
fi
elif [ "x${CC}" = "xgcc" ] ; then
# use gcc for linking
LINK="gcc"
fi
# linker options
if [ ${LINK} = "ld" -o ${LINK} = "cc" -o ${LINK} = "CC" ] ; then
# SunOS tools, -G to make shared libs
OPTS="-G"
else
# use native Sun linker
LINK="ld"
OPTS="-G"
# gcc linker
# Check if objects are 32-bit and we're running in 64-bit
# environment. If so, pass -m32 flag to linker.
set ${OBJECTS}
ABI32=`file $1 | grep 32-bit`
if [ "${ABI32}" ] ; then
OPTS="-m32 -shared -Wl,-Bdynamic"
else
OPTS="-m64 -shared -Wl,-Bdynamic"
fi
fi
# If using Sun C++ compiler, need to tell it not to add runpaths
# that are specific to the build machine
if [ ${LINK} = "CC" ] ; then
OPTS="${OPTS} -norunpath"
fi
# Solaris linker requires explicitly listing the Standard C & C++
# libraries in the link path when building shared objects
if [ ${LINK} = "CC" ] ; then
DEPS="${DEPS} -lCrun"
fi
DEPS="${DEPS} -lc"
if [ $EXPORTS ] ; then
# Make the 'mapfile.scope' linker mapfile
echo "{" > mapfile.scope
echo "global:" >> mapfile.scope
sed 's/$/;/' ${EXPORTS} >> mapfile.scope
echo "local:" >> mapfile.scope
echo " *;" >> mapfile.scope
echo "};" >> mapfile.scope
OPTS="${OPTS} -Wl,-Mmapfile.scope"
fi
# Check if objects are SPARC v9
# file says: ELF 64-bit MSB relocatable SPARCV9 Version 1
set ${OBJECTS}
if [ ${LINK} = "cc" -o ${LINK} = "CC" ] ; then
SPARCV9=`file $1 | grep SPARCV9`
if [ "${SPARCV9}" ] ; then
OPTS="${OPTS} -xarch=v9"
fi
fi
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
# for debug:
#echo "mklib: linker is" ${LINK} ${OPTS}
if [ $NOPREFIX = 1 ] ; then
rm -f ${LIBNAME}
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
FINAL_LIBS="${LIBNAME}"
else
rm -f ${LIBNAME}.${MAJOR} ${LIBNAME}
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME}.${MAJOR} -h ${LIBNAME}.${MAJOR} ${OBJECTS} ${DEPS}
ln -s ${LIBNAME}.${MAJOR} ${LIBNAME}
FINAL_LIBS="${LIBNAME}.${MAJOR} ${LIBNAME}"
fi
echo "mklib: linker is" ${LINK} ${OPTS}
rm -f ${LIBNAME}.${MAJOR} ${LIBNAME}
${LINK} ${OPTS} -o ${LIBNAME}.${MAJOR} ${OBJECTS} ${DEPS}
ln -s ${LIBNAME}.${MAJOR} ${LIBNAME}
FINAL_LIBS="${LIBNAME}.${MAJOR} ${LIBNAME}"
fi
;;
'FreeBSD')
# we assume gcc
if [ "x$LINK" = "x" ] ; then
# -linker was not specified so set default link command now
if [ $CPLUSPLUS = 1 ] ; then
LINK=g++
else
LINK=gcc
fi
fi
if [ $NOPREFIX = 1 ] ; then
# No "lib" or ".so" part
echo "mklib: Making FreeBSD shared library: " ${LIBNAME}
OPTS="-shared"
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
rm -f ${LIBNAME}
ld -Bshareable -o ${LIBNAME} ${OBJECTS}
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
FINAL_LIBS=${LIBNAME}
elif [ $STATIC = 1 ] ; then
STLIB="lib${LIBNAME}.a"
@@ -274,12 +476,16 @@ case $ARCH in
ranlib ${STLIB}
FINAL_LIBS=${STLIB}
else
SHLIB="lib${LIBNAME}.so.${MAJOR}.${MINOR}"
SHLIB="lib${LIBNAME}.so.${MAJOR}"
OPTS="-shared -Wl,-soname,${SHLIB}"
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
echo "mklib: Making FreeBSD shared library: " ${SHLIB}
rm -f ${SHLIB}
ld -Bshareable -o ${SHLIB} ${OBJECTS}
# XXX make lib${LIBNAME}.so.${MAJOR} symlink?
FINAL_LIBS=${SHLIB}
${LINK} ${OPTS} ${LDFLAGS} -o ${SHLIB} ${OBJECTS} ${DEPS}
ln -sf ${SHLIB} "lib${LIBNAME}.so"
FINAL_LIBS="${SHLIB} lib${LIBNAME}.so"
fi
;;
@@ -308,25 +514,38 @@ case $ARCH in
FINAL_LIBS=${LIBNAME}
else
LIBNAME="lib${LIBNAME}.so" # prefix with "lib", suffix with ".so"
if [ $ARCHOPT = "64" ] ; then
# 64-bit ABI
OPTS="-64 -shared -all"
echo "mklib: Making IRIX 64-bit shared library: " ${LIBNAME}
elif [ $ARCHOPT = "o32" ] ; then
# old 32-bit ABI
# examine first object to determine ABI
set ${OBJECTS}
ABI_O32=`file $1 | grep 'ELF 32-bit'`
ABI_N32=`file $1 | grep 'ELF N32'`
ABI_N64=`file $1 | grep 'ELF 64-bit'`
if [ "${ABI_O32}" ] ; then
OPTS="-32 -shared -all"
echo "mklib: Making IRIX o32-bit shared library: " ${LIBNAME}
else
# new 32-bit ABI
ABI="o32-bit"
elif [ "${ABI_N32}" ] ; then
OPTS="-n32 -shared -all"
echo "mklib: Making IRIX n32-bit shared library: " ${LIBNAME}
ABI="n32-bit"
elif [ "${ABI_N64}" ] ; then
OPTS="-64 -shared -all"
ABI="64-bit"
else
echo "Error: Unexpected IRIX ABI!"
exit 1
fi
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
if [ $CPLUSPLUS = 1 ] ; then
LINK="CC"
else
LINK="ld"
fi
${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
echo "mklib: Making IRIX " ${ABI} " shared library: " ${LIBNAME}
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
FINAL_LIBS=${LIBNAME}
fi
;;
@@ -347,6 +566,10 @@ case $ARCH in
ar -ruv ${LIBNAME} ${OBJECTS}
FINAL_LIBS=${LIBNAME}
else
# HP uses a .2 for their current GL/GLU libraries
if [ ${LIBNAME} = "GL" -o ${LIBNAME} = "GLU" ] ; then
MAJOR=2
fi
RUNLIB="lib${LIBNAME}.${MAJOR}"
DEVLIB="lib${LIBNAME}.sl"
echo "mklib: Making HP-UX shared library: " ${RUNLIB} ${DEVLIB}
@@ -356,25 +579,27 @@ case $ARCH in
fi
;;
'AIX' | 'AIX64')
if [ $ARCH = "AIX64" ] ; then
'AIX' )
# examine first object to determine ABI
set ${OBJECTS}
ABI_64=`file $1 | grep '64-bit'`
if [ "${ABI_64}" ] ; then
X64="-X64"
Q64="-q64"
OFILE=shr_64.o
else
OFILE=shr.o #Want to be consistent with the IBM libGL.a
fi
if [ $STATIC = 1 ] ; then
LIBNAME="lib${LIBNAME}.a"
echo "mklib: Making AIX static library: " ${LIBNAME}
ar -ruv ${X64} ${LIBNAME} ${OBJECTS}
FINAL_LIBS=${LIBNAME}
else
if [ $STATIC = 1 ] ; then
LIBNAME="lib${LIBNAME}.a"
echo "mklib: Making AIX static library: " ${LIBNAME}
ar -ruv ${X64} ${LIBNAME} ${OBJECTS}
FINAL_LIBS=${LIBNAME}
else
EXPFILE="lib${LIBNAME}.exp"
OFILE=shr.o #Want to be consistent with the IBM libGL.a
LIBNAME="lib${LIBNAME}.a" # shared objects are still stored in the .a libraries
if [ $ARCH = "AIX64" ] ; then
OPTS="-bE:${EXPFILE} -bM:SRE -bnoentry -q64"
else
OPTS="-bE:${EXPFILE} -bM:SRE -bnoentry"
fi
OPTS="-bE:${EXPFILE} -bM:SRE -bnoentry ${Q64}"
rm -f ${EXPFILE} ${OFILE}
NM="/bin/nm -eC ${X64}"
echo "#! /usr/lib/${LIBNAME}" > ${EXPFILE}
@@ -392,8 +617,20 @@ case $ARCH in
}
}
}' | sort -u >> ${EXPFILE}
cc ${OPTS} -o ${OFILE} ${OBJECTS} ${DEPS}
ar ${X64} -r ${LIBNAME} ${OFILE}
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
# On AIX a shared library is linked differently when
# you want to dlopen the file
if [ $DLOPEN = "1" ] ; then
cc -G ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
else
cc ${OPTS} ${LDFLAGS} -o ${OFILE} ${OBJECTS} ${DEPS}
ar ${X64} -r ${LIBNAME} ${OFILE}
fi
FINAL_LIBS="${LIBNAME}"
fi
;;
@@ -416,10 +653,12 @@ case $ARCH in
VERSION="${MAJOR}.${MINOR}"
LIBNAME="lib${LIBNAME}.so"
echo "mklib: Making OSF/1 shared library: " ${LIBNAME}
if [ $CPLUSPLUS = 1 ] ; then
LINK=$CXX
else
LINK=$CC
if [ "x$LINK" = "x" ] ; then
if [ $CPLUSPLUS = 1 ] ; then
LINK=cxx
else
LINK=cc
fi
fi
rm -f ${LIBNAME}.${VERSION}
${LINK} -o ${LIBNAME}.${VERSION} -shared -set_version ${VERSION} -soname ${LIBNAME}.${VERSION} -expect_unresolved \* -all ${OBJECTS} ${DEPS}
@@ -433,20 +672,75 @@ case $ARCH in
LIBNAME="lib${LIBNAME}.a"
echo "mklib: Making Darwin static library: " ${LIBNAME}
LINK="ar"
OPTS="-ruv"
OPTS="-ruvs"
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
${LINK} ${OPTS} ${LIBNAME} ${OBJECTS}
FINAL_LIBS=${LIBNAME}
else
LIBNAME="${LIBNAME}.dylib"
echo "mklib: Making Darwin shared library: " ${LIBNAME}
FLAGS="-dynamiclib -multiply_defined suppress"
# On Darwin a .bundle is used for a library that you want to dlopen
if [ $DLOPEN = "1" ] ; then
LIBSUFFIX="bundle"
OPTS="${ARCHOPT} -bundle -multiply_defined suppress"
else
LIBSUFFIX="dylib"
if [ -z "$ID" ] ; then
ID="lib${LIBNAME}.${MAJOR}.${LIBSUFFIX}"
fi
OPTS="${ARCHOPT} -dynamiclib -multiply_defined suppress -current_version ${MAJOR}.${MINOR}.0 -compatibility_version ${MAJOR}.${MINOR}.0 -install_name ${ID}"
fi
if [ ${EXPORTS} ] ; then
if [ -f ${EXPORTS}".darwin" ] ; then
EXPORTS=$EXPORTS".darwin"
fi
OPTS="${OPTS} -exported_symbols_list ${EXPORTS}"
fi
LINKNAME="lib${LIBNAME}.${MAJOR}.${LIBSUFFIX}"
LINKNAME2="lib${LIBNAME}.${LIBSUFFIX}"
LIBNAME="lib${LIBNAME}.${MAJOR}.${MINOR}.${LIBSUFFIX}"
# examine first object to determine ABI
set ${OBJECTS}
ABI_PPC=`file $1 | grep ' ppc'`
ABI_I386=`file $1 | grep ' i386'`
ABI_PPC64=`file $1 | grep ' ppc64'`
ABI_X86_64=`file $1 | grep ' x86_64'`
if [ "${ABI_PPC}" ] ; then
OPTS="${OPTS} -arch ppc"
fi
if [ "${ABI_I386}" ] ; then
OPTS="${OPTS} -arch i386"
fi
if [ "${ABI_PPC64}" ] ; then
OPTS="${OPTS} -arch ppc64"
fi
if [ "${ABI_X86_64}" ] ; then
OPTS="${OPTS} -arch x86_64"
fi
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
# XXX can we always add -isysroot /Developer/SDKs/MacOSX10.4u.sdk
# to OPTS here?
# determine linker
if [ $CPLUSPLUS = 1 ] ; then
LINK="g++"
else
LINK="cc"
fi
${LINK} ${FLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
FINAL_LIBS=${LIBNAME}
echo "mklib: Making Darwin shared library: " ${LIBNAME}
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
ln -s ${LIBNAME} ${LINKNAME}
ln -s ${LIBNAME} ${LINKNAME2}
FINAL_LIBS="${LIBNAME} ${LINKNAME} ${LINKNAME2}"
fi
;;
@@ -468,6 +762,7 @@ case $ARCH in
echo "mklib: Making BeOS shared library: " ${LIBNAME}
gcc -nostart -Xlinker "-soname=${LIBNAME}" -L/Be/develop/lib/x86 -lbe ${DEPS} ${OBJECTS} -o "${LIBNAME}"
mimeset -f "${LIBNAME}"
# XXX remove the Mesa3D stuff here since mklib isn't mesa-specific.
setversion "${LIBNAME}" -app ${MAJOR} ${MINOR} ${PATCH} -short "Powered by Mesa3D!" -long "Powered by Mesa3D!"
fi
FINAL_LIBS=${LIBNAME}
@@ -487,25 +782,37 @@ case $ARCH in
FINAL_LIBS="${LIBNAME}"
;;
'icc')
'icc' | 'icc-istatic')
# Intel C compiler
# This should get merged into the Linux code, above, since this isn't
# really a different architecture.
LIBNAME="lib${LIBNAME}" # prefix with "lib"
if [ $STATIC = 1 ] ; then
echo "mklib: Making Intel ICC static library: " ${LIBNAME}.a
LINK="ar"
OPTS="-ruv"
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
# make lib
${LINK} ${OPTS} ${LIBNAME}.a ${OBJECTS}
# finish up
FINAL_LIBS="${LIBNAME}.a"
else
OPTS="-shared"
if [ $ARCH = icc-istatic ] ; then
OPTS="-shared -i-static -cxxlib-icc"
else
OPTS="-shared"
fi
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
VERSION="${MAJOR}.${MINOR}.${PATCH}"
echo "mklib: Making Intel ICC shared library: " ${LIBNAME}.so.${VERSION}
if [ $CPLUSPLUS = 1 ] ; then
LINK="icc"
LINK="icpc"
else
LINK="icc"
fi
@@ -514,7 +821,7 @@ case $ARCH in
rm -f ${LIBNAME}.so.${MAJOR}
rm -f ${LIBNAME}.so
# make lib
${LINK} ${OPTS} -o ${LIBNAME}.so.${VERSION} ${OBJECTS} ${DEPS}
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME}.so.${VERSION} ${OBJECTS} ${DEPS}
# make usual symlinks
ln -s ${LIBNAME}.so.${VERSION} ${LIBNAME}.so.${MAJOR}
ln -s ${LIBNAME}.so.${MAJOR} ${LIBNAME}.so
@@ -565,6 +872,9 @@ case $ARCH in
echo "mklib: Making" $ARCH "static library: " ${LIBNAME}.a
LINK="ar"
OPTS="-ru"
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
# make lib
${LINK} ${OPTS} ${LIBNAME}.a ${OBJECTS}
ranlib ${LIBNAME}.a
@@ -572,6 +882,9 @@ case $ARCH in
FINAL_LIBS=${LIBNAME}.a
else
OPTS="-shared -Wl,-export-all -Wl,--out-implib=${LIBNAME}-${MAJOR}.dll.a"
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
echo "mklib: Making" $ARCH "shared library: " ${LIBNAME}-${MAJOR}.dll
if [ $CPLUSPLUS = 1 ] ; then
@@ -586,7 +899,7 @@ case $ARCH in
rm -f ${LIBNAME}.a
# make lib
${LINK} ${OPTS} -o ${CYGNAME}-${MAJOR}.dll ${OBJECTS} ${DEPS}
${LINK} ${OPTS} ${LDFLAGS} -o ${CYGNAME}-${MAJOR}.dll ${OBJECTS} ${DEPS}
# make usual symlinks
ln -s ${LIBNAME}-${MAJOR}.dll.a ${LIBNAME}.dll.a
# finish up
@@ -606,7 +919,7 @@ case $ARCH in
ar rv ${LIBNAME} ${OBJECTS}
FINAL_LIBS="${LIBNAME}"
else
LIBNAME="lib${LIBNAME}.so" # prefix with "lib"
LIBNAME="lib${LIBNAME}.so" # prefix with "lib", suffix with ".so"
echo "mklib: Making shared library for example arch: " ${LIBNAME}
ld -o ${LIBNAME} ${OBJECTS} ${DEPS}
FINAL_LIBS="${LIBNAME}"

17
bin/version.mk Executable file
View File

@@ -0,0 +1,17 @@
#!/usr/bin/make -sf
# Print the various Mesa version fields. This is mostly used to add the
# version to configure.
# This reflects that this script is usually called from the toplevel
TOP = .
include $(TOP)/configs/default
version:
@echo $(MESA_VERSION)
major:
@echo $(MESA_MAJOR)
minor:
@echo $(MESA_MINOR)
tiny:
@echo $(MESA_TINY)

2
configs/.gitignore vendored Normal file
View File

@@ -0,0 +1,2 @@
current
autoconf

View File

@@ -8,8 +8,10 @@ CONFIG_NAME = aix
CC = cc
CXX = xlC
CFLAGS = -O -DAIXV3
CXXFLAGS = -O -DAIXV3
CFLAGS = -O -DAIXV3 -DPTHREADS
CXXFLAGS = -O -DAIXV3 -DPTHREADS
# Misc tools and flags
MKLIB_OPTIONS =
# Library names (actual file names)
@@ -19,10 +21,10 @@ GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS = -lX11 -lXext -lm
GL_LIB_DEPS = -lX11 -lXext -lpthread -lm
GLU_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lm -lC
GLUT_LIB_DEPS = -L$(TOP)/lib -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu -lX11 -lm
GLW_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lXt -lX11
GLW_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lXm -lXt -lX11
OSMESA_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB)
APP_LIB_DEPS = -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm -lC
APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lpthread -lm -lC

View File

@@ -8,9 +8,9 @@ CONFIG_NAME = aix-64
CC = xlc
CXX = xlC
CFLAGS = -q64 -qmaxmem=16384 -O -DAIXV3
CXXFLAGS = -q64 -qmaxmem=16384 -O -DAIXV3
MKLIB_OPTIONS = -arch AIX64
CFLAGS = -q64 -qmaxmem=16384 -O -DAIXV3 -DPTHREADS
CXXFLAGS = -q64 -qmaxmem=16384 -O -DAIXV3 -DPTHREADS
LIB_DIR = lib64
# Library names (actual file names)
GL_LIB_NAME = libGL.a
@@ -19,10 +19,9 @@ GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS = -lX11 -lXext -lm
GLU_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lm -lC
GLUT_LIB_DEPS = -L$(TOP)/lib -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu -lX11 -lm
GLW_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lXt -lX11
OSMESA_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB)
APP_LIB_DEPS = -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm -lC
GL_LIB_DEPS = -lX11 -lXext -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm -lC
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu -lX11 -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lXm -lXt -lX11
APP_LIB_DEPS = -L$(TOP)/lib64 -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm -lpthread -lC

25
configs/aix-64-static Normal file
View File

@@ -0,0 +1,25 @@
# Configuration for AIX, static libs
include $(TOP)/configs/default
CONFIG_NAME = aix-64-static
# Compiler and flags
CC = cc
CXX = xlC
CFLAGS = -q64 -O -DAIXV3 -DPTHREADS
CXXFLAGS = -q64 -O -DAIXV3 -DPTHREADS
MKLIB_OPTIONS = -static
LIB_DIR = lib64
# Library names (actual file names)
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a
GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
APP_LIB_DEPS = -q64 -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) \
-lX11 -lXext -lXmu -lXi -lm -lpthread -lC

View File

@@ -11,9 +11,13 @@ CXX = g++
CFLAGS = -O2 -DAIXV3
CXXFLAGS = -O2 -DAIXV3
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
MKLIB_OPTIONS = -arch aix-gcc
GL_LIB_DEPS = -lX11 -lXext -lm
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(LIB_DIR -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu
APP_LIB_DEPS = -L$(LIB_DIR) -Wl,-brtl -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lX11 -lXext -lXmu -lXi
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -Wl,-brtl -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lX11 -lXext -lXmu -lXi

View File

@@ -8,8 +8,8 @@ CONFIG_NAME = aix-static
CC = cc
CXX = xlC
CFLAGS = -O -DAIXV3
CXXFLAGS = -O -DAIXV3
CFLAGS = -O -DAIXV3 -DPTHREADS
CXXFLAGS = -O -DAIXV3 -DPTHREADS
MKLIB_OPTIONS = -static
# Library names (actual file names)
@@ -19,5 +19,7 @@ GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
APP_LIB_DEPS = -L$(LIB_DIR) -lX11 -lXext -lXmu -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) \
-lX11 -lXext -lXmu -lXi -lm -lpthread -lC

125
configs/autoconf.in Normal file
View File

@@ -0,0 +1,125 @@
# Autoconf configuration
# Pull in the defaults
include $(TOP)/configs/default
# This is generated by configure
CONFIG_NAME = autoconf
# Compiler and flags
CC = @CC@
CXX = @CXX@
OPT_FLAGS = @OPT_FLAGS@
ARCH_FLAGS = @ARCH_FLAGS@
ASM_FLAGS = @ASM_FLAGS@
PIC_FLAGS = @PIC_FLAGS@
DEFINES = @DEFINES@
CFLAGS = @CPPFLAGS@ @CFLAGS@ \
$(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES)
CXXFLAGS = @CPPFLAGS@ @CXXFLAGS@ \
$(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
LDFLAGS = @LDFLAGS@
EXTRA_LIB_PATH = @EXTRA_LIB_PATH@
# Assembler
ASM_SOURCES = @ASM_SOURCES@
ASM_API = @ASM_API@
# Misc tools and flags
MAKE = @MAKE@
SHELL = @SHELL@
MKLIB_OPTIONS = @MKLIB_OPTIONS@
MKDEP = @MKDEP@
MKDEP_OPTIONS = @MKDEP_OPTIONS@
# Python and flags (generally only needed by the developers)
PYTHON2 = python
PYTHON_FLAGS = -t -O -O
# Library names (base name)
GL_LIB = GL
GLU_LIB = GLU
GLUT_LIB = glut
GLW_LIB = GLw
OSMESA_LIB = @OSMESA_LIB@
# Library names (actual file names)
GL_LIB_NAME = @GL_LIB_NAME@
GLU_LIB_NAME = @GLU_LIB_NAME@
GLUT_LIB_NAME = @GLUT_LIB_NAME@
GLW_LIB_NAME = @GLW_LIB_NAME@
OSMESA_LIB_NAME = @OSMESA_LIB_NAME@
# Directories to build
LIB_DIR = @LIB_DIR@
SRC_DIRS = @SRC_DIRS@
GLU_DIRS = @GLU_DIRS@
DRIVER_DIRS = @DRIVER_DIRS@
# Which subdirs under $(TOP)/progs/ to enter:
PROGRAM_DIRS = @PROGRAM_DIRS@
# Driver specific build vars
DRI_DIRS = @DRI_DIRS@
WINDOW_SYSTEM = @WINDOW_SYSTEM@
USING_EGL = @USING_EGL@
# Dependencies
X11_INCLUDES = @X11_INCLUDES@
# GLw motif setup
GLW_SOURCES = @GLW_SOURCES@
MOTIF_CFLAGS = @MOTIF_CFLAGS@
# Library/program dependencies
GL_LIB_DEPS = $(EXTRA_LIB_PATH) @GL_LIB_DEPS@
OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @OSMESA_MESA_DEPS@ \
$(EXTRA_LIB_PATH) @OSMESA_LIB_DEPS@
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @GLU_MESA_DEPS@ \
$(EXTRA_LIB_PATH) @GLU_LIB_DEPS@
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @GLUT_MESA_DEPS@ \
$(EXTRA_LIB_PATH) @GLUT_LIB_DEPS@
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @GLW_MESA_DEPS@ \
$(EXTRA_LIB_PATH) @GLW_LIB_DEPS@
APP_LIB_DEPS = $(EXTRA_LIB_PATH) @APP_LIB_DEPS@
# DRI dependencies
DRI_LIB_DEPS = $(EXTRA_LIB_PATH) @DRI_LIB_DEPS@
LIBDRM_CFLAGS = @LIBDRM_CFLAGS@
LIBDRM_LIB = @LIBDRM_LIBS@
DRI2PROTO_CFLAGS = @DRI2PROTO_CFLAGS@
EXPAT_INCLUDES = @EXPAT_INCLUDES@
# Autoconf directories
prefix = @prefix@
exec_prefix = @exec_prefix@
libdir = @libdir@
includedir = @includedir@
# Installation directories (for make install)
INSTALL_DIR = $(prefix)
INSTALL_LIB_DIR = $(libdir)
INSTALL_INC_DIR = $(includedir)
# DRI installation directories
DRI_DRIVER_INSTALL_DIR = @DRI_DRIVER_INSTALL_DIR@
# Where libGL will look for DRI hardware drivers
DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)
# pkg-config substitutions
GL_PC_REQ_PRIV = @GL_PC_REQ_PRIV@
GL_PC_LIB_PRIV = @GL_PC_LIB_PRIV@
GL_PC_CFLAGS = @GL_PC_CFLAGS@
DRI_PC_REQ_PRIV = @DRI_PC_REQ_PRIV@
GLU_PC_REQ = @GLU_PC_REQ@
GLU_PC_REQ_PRIV = @GLU_PC_REQ_PRIV@
GLU_PC_LIB_PRIV = @GLU_PC_LIB_PRIV@
GLU_PC_CFLAGS = @GLU_PC_CFLAGS@
GLUT_PC_REQ_PRIV = @GLUT_PC_REQ_PRIV@
GLUT_PC_LIB_PRIV = @GLUT_PC_LIB_PRIV@
GLUT_PC_CFLAGS = @GLUT_PC_CFLAGS@
GLW_PC_REQ_PRIV = @GLW_PC_REQ_PRIV@
GLW_PC_LIB_PRIV = @GLW_PC_LIB_PRIV@
GLW_PC_CFLAGS = @GLW_PC_CFLAGS@
OSMESA_PC_REQ = @OSMESA_PC_REQ@
OSMESA_PC_LIB_PRIV = @OSMESA_PC_LIB_PRIV@

View File

@@ -26,7 +26,8 @@ ifeq ($(CPU), x86)
-DUSE_3DNOW_ASM \
-DUSE_SSE_ASM
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)
CC = gcc
CXX = g++
@@ -38,6 +39,10 @@ ifeq ($(CPU), x86)
CXXFLAGS = $(CFLAGS)
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
LDFLAGS += -Xlinker
ifdef DEBUG
@@ -92,8 +97,8 @@ PROGRAM_DIRS = beos samples redbook demos tests
# Library/program dependencies
GL_LIB_DEPS =
OSMESA_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB)
OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
GLU_LIB_DEPS =
GLUT_LIB_DEPS = -lgame -L$(LIB_DIR) -l$(GL_LIB)
APP_LIB_DEPS = -lbe -L$(LIB_DIR) -l$(GL_LIB) -l$(GLUT_LIB)
GLUT_LIB_DEPS = -lgame -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
APP_LIB_DEPS = -lbe -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -l$(GLUT_LIB)

33
configs/bluegene-osmesa Normal file
View File

@@ -0,0 +1,33 @@
# Configuration for building only libOSMesa on BlueGene, no Xlib driver
# This doesn't really have a lot of dependencies, so it should be usable
# on other (gcc-based) systems too.
# It uses static linking and disables multithreading.
include $(TOP)/configs/default
CONFIG_NAME = bluegene-osmesa
# Compiler and flags
CC = /bgl/BlueLight/ppcfloor/blrts-gnu/bin/powerpc-bgl-blrts-gnu-gcc
CXX = /bgl/BlueLight/ppcfloor/blrts-gnu/bin/powerpc-bgl-blrts-gnu-g++
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURC
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
MKLIB_OPTIONS = -static
OSMESA_LIB_NAME = libOSMesa.a
# Directories
SRC_DIRS = mesa glu
DRIVER_DIRS = osmesa
PROGRAM_DIRS = osdemos
# Dependencies
OSMESA_LIB_DEPS = -lm
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
APP_LIB_DEPS = -lOSMesa -lGLU -lm

View File

@@ -0,0 +1,29 @@
# Configuration for building only libOSMesa on BlueGene using the IBM xlc compiler
# This doesn't really have a lot of dependencies, so it should be usable
# on similar systems too.
# It uses static linking and disables multithreading.
include $(TOP)/configs/default
CONFIG_NAME = bluegene-osmesa
# Compiler and flags
CC = /opt/ibmcmp/vacpp/bg/8.0/bin/blrts_xlc
CXX = /opt/ibmcmp/vacpp/bg/8.0/bin/blrts_xlC
CFLAGS = -O3 -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
CXXFLAGS = -O3 -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
MKLIB_OPTIONS = -static
OSMESA_LIB_NAME = libOSMesa.a
# Directories
SRC_DIRS = mesa glu
DRIVER_DIRS = osmesa
PROGRAM_DIRS = osdemos
# Dependencies
OSMESA_LIB_DEPS = -lm
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
APP_LIB_DEPS = -lOSMesa -lGLU -lm

View File

@@ -0,0 +1,32 @@
# Configuration for building only libOSMesa on Cray Xt3
# for the compute nodes running Catamount using the
# Portland Group compiler. The Portland Group toolchain has to be
# enabled before using "module switch PrgEnv-gnu PrgEnv-pgi" .
# This doesn't really have a lot of dependencies, so it should be usable
# on other similar systems too.
# It uses static linking and disables multithreading.
include $(TOP)/configs/default
CONFIG_NAME = catamount-osmesa-pgi
# Compiler and flags
CC = cc
CXX = CC
CFLAGS = -target=catamount -fastsse -O3 -Mnontemporal -Mprefetch=distance:8,nta -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
CXXFLAGS = -target=catamount -fastsse -O3 -Mnontemporal -Mprefetch=distance:8,nta -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
MKLIB_OPTIONS = -static
OSMESA_LIB_NAME = libOSMesa.a
# Directories
SRC_DIRS = mesa glu
DRIVER_DIRS = osmesa
PROGRAM_DIRS = osdemos
# Dependencies
OSMESA_LIB_DEPS = -lm
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
APP_LIB_DEPS = -lOSMesa -lGLU -lm

42
configs/config.mgw Normal file
View File

@@ -0,0 +1,42 @@
# MinGW config include file updated for Mesa 7.0
#
# Updated : by Heromyth, on 2007-7-21
# Email : zxpmyth@yahoo.com.cn
# Bugs : 1) All the default settings work fine. But the setting X86=1 can't work.
# The others havn't been tested yet.
# 2) The generated DLLs are *not* compatible with the ones built
# with the other compilers like VC8, especially for GLUT.
# 3) Although more tests are needed, it can be used individually!
# The generated DLLs by MingW with STDCALL are not totally compatible
# with the ones linked by Microsoft's compilers.
#
# xxx_USING_STDCALL = 1 Compiling MESA with __stdcall. This is default!
#
# xxx_USING_STDCALL = 0 Compiling MESA without __stdcall. I like this:)
#
# In fact, GL_USING_STDCALL and GLUT_USING_STDCALL can be
# different. For example:
#
# GL_USING_STDCALL = 0
# GLUT_USING_STDCALL = 1
#
# Suggested setting:
#
# ALL_USING_STDCALL = 1
#
# That's default!
#
ALL_USING_STDCALL = 1
ifeq ($(ALL_USING_STDCALL),1)
GL_USING_STDCALL = 1
GLUT_USING_STDCALL = 1
else
GL_USING_STDCALL = 0
GLUT_USING_STDCALL = 0
endif

View File

@@ -4,11 +4,26 @@ include $(TOP)/configs/default
CONFIG_NAME = darwin
INSTALL_DIR = /usr/X11
# Compiler and flags
CC = cc
CXX = cc
CFLAGS = -I/usr/X11R6/include -O3 -fPIC -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
CXXFLAGS = -I/usr/X11R6/include -O3 -fPIC -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
CC = gcc
CXX = gcc
PIC_FLAGS = -fPIC
DEFINES = -D_DARWIN_C_SOURCE -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L \
-D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -DPTHREADS \
-DGLX_ALIAS_UNSUPPORTED -DGLX_INDIRECT_RENDERING
# -DGLX_DIRECT_RENDERING - pulls in libdrm stuff in glx/x11
# -DGLX_USE_APPLEGL - supposed to be used with GLX_DIRECT_RENDERING to use AGL rather than DRM, but doesn't compile
# -DIN_DRI_DRIVER
ARCH_FLAGS += $(RC_CFLAGS)
CFLAGS = -ggdb3 -Os -Wall -Wmissing-prototypes -std=c99 -ffast-math -fno-strict-aliasing \
-I$(INSTALL_DIR)/include $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES)
CXXFLAGS = -ggdb3 -Os -Wall -fno-strict-aliasing \
-I$(INSTALL_DIR)/include $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES)
# Library names (actual file names)
GL_LIB_NAME = libGL.dylib
@@ -17,9 +32,24 @@ GLUT_LIB_NAME = libglut.dylib
GLW_LIB_NAME = libGLw.dylib
OSMESA_LIB_NAME = libOSMesa.dylib
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
OSMESA_LIB_DEPS = $(TOP)/lib/GL.dylib
GLU_LIB_DEPS = $(TOP)/lib/GL.dylib
GLUT_LIB_DEPS =
GLW_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXt $(TOP)/lib/GL.dylib
APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
# globs used to install the lib and all symlinks
GL_LIB_GLOB = libGL.*dylib
GLU_LIB_GLOB = libGLU.*dylib
GLUT_LIB_GLOB = libglut.*dylib
GLW_LIB_GLOB = libGLw.*dylib
OSMESA_LIB_GLOB = libOSMesa.*dylib
GL_LIB_DEPS = -L$(INSTALL_DIR)/$(LIB_DIR) -lX11 -lXext -lm -lpthread
OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -lX11 -lXmu -lXi -lXext
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -lX11 -lXt
APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -lX11 -lXmu -lXt -lXi -lm
# omit glw lib for now:
SRC_DIRS = glx/x11 mesa glu glut/glx
GLU_DIRS = sgi
DRIVER_DIRS = osmesa
#DRIVER_DIRS = dri
DRI_DIRS = swrast
PROGRAM_DIRS = xdemos

7
configs/darwin-fat-32bit Normal file
View File

@@ -0,0 +1,7 @@
# Configuration for Darwin / MacOS X, making 32bit fat dynamic libs
RC_CFLAGS=-arch ppc -arch i386
include $(TOP)/configs/darwin
CONFIG_NAME = darwin-fat-32bit

7
configs/darwin-fat-all Normal file
View File

@@ -0,0 +1,7 @@
# Configuration for Darwin / MacOS X, making 32bit and 64bit fat dynamic libs
RC_CFLAGS=-arch ppc -arch i386 -arch ppc64 -arch x86_64
include $(TOP)/configs/darwin
CONFIG_NAME = darwin-fat-all

View File

@@ -1,24 +0,0 @@
# Configuration for Darwin / MacOS X, making static libs
include $(TOP)/configs/darwin
CONFIG_NAME = darwin-static
# Compiler and flags
CFLAGS = -I/usr/X11R6/include -O3 -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
CXXFLAGS = -I/usr/X11R6/include -O3 -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
MKLIB_OPTIONS = -static
# Library names (actual file names)
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a
GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
OSMESA_LIB_DEPS =
GLU_LIB_DEPS =
GLUT_LIB_DEPS =
GLW_LIB_DEPS =
APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm

View File

@@ -2,15 +2,18 @@
# This is included by other config files which may override some
# of these variables.
# Think of this as a base class from which configs are derived.
CONFIG_NAME = default
# Version info
MESA_MAJOR=6
MESA_MAJOR=7
MESA_MINOR=3
MESA_TINY=0
MESA_VERSION = $(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY)
# external projects
# external projects. This should be useless now that we use libdrm.
DRM_SOURCE_PATH=$(TOP)/../drm
# Compiler and flags
@@ -18,13 +21,23 @@ CC = cc
CXX = CC
CFLAGS = -O
CXXFLAGS = -O
LDFLAGS =
GLU_CFLAGS =
# Misc tools and flags
SHELL = /bin/sh
MKLIB = $(SHELL) $(TOP)/bin/mklib
MKLIB_OPTIONS =
MKDEP = makedepend
MKDEP_OPTIONS = -fdepend
MAKE = make
INSTALL = $(SHELL) $(TOP)/bin/minstall
# Tools for regenerating glapi (generally only needed by the developers)
PYTHON2 = python
PYTHON_FLAGS = -t -O -O
INDENT = indent
INDENT_FLAGS = -i4 -nut -br -brs -npcs -ce -T GLubyte -T GLbyte -T Bool
# Library names (base name)
GL_LIB = GL
@@ -35,12 +48,18 @@ OSMESA_LIB = OSMesa
# Library names (actual file names)
GL_LIB_NAME = libGL.so
GLU_LIB_NAME = libGLU.so
GLUT_LIB_NAME = libglut.so
GLW_LIB_NAME = libGLw.so
OSMESA_LIB_NAME = libOSMesa.so
GL_LIB_NAME = lib$(GL_LIB).so
GLU_LIB_NAME = lib$(GLU_LIB).so
GLUT_LIB_NAME = lib$(GLUT_LIB).so
GLW_LIB_NAME = lib$(GLW_LIB).so
OSMESA_LIB_NAME = lib$(OSMESA_LIB).so
# globs used to install the lib and all symlinks
GL_LIB_GLOB = $(GL_LIB_NAME)*
GLU_LIB_GLOB = $(GLU_LIB_NAME)*
GLUT_LIB_GLOB = $(GLUT_LIB_NAME)*
GLW_LIB_GLOB = $(GLW_LIB_NAME)*
OSMESA_LIB_GLOB = $(OSMESA_LIB_NAME)*
# Optional assembly language optimization files for libGL
ASM_SOURCES =
@@ -48,21 +67,53 @@ ASM_SOURCES =
# GLw widget sources (Append "GLwMDrawA.c" here and add -lXm to GLW_LIB_DEPS in
# order to build the Motif widget too)
GLW_SOURCES = GLwDrawA.c
MOTIF_CFLAGS = -I/usr/include/Motif1.2
# Directories
LIB_DIR = $(TOP)/lib
INSTALL_PREFIX = /usr/local
# Directories to build
LIB_DIR = lib
SRC_DIRS = mesa glu glut/glx glw
GLU_DIRS = sgi
DRIVER_DIRS = x11 osmesa
PROGRAM_DIRS = demos redbook samples xdemos
# Which subdirs under $(TOP)/progs/ to enter:
PROGRAM_DIRS = demos redbook samples glsl xdemos
# Library/program dependencies
GL_LIB_DEPS = -lX11 -lXext -lm -lpthread
OSMESA_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB)
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
# Library dependencies
#EXTRA_LIB_PATH ?=
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lm -lpthread
OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lX11 -lXmu -lXi -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lXt -lX11
# Program dependencies - specific GL/glut libraries added in Makefiles
APP_LIB_DEPS = -lm
# Installation directories (for make install)
INSTALL_DIR = /usr/local
INSTALL_LIB_DIR = $(INSTALL_DIR)/$(LIB_DIR)
INSTALL_INC_DIR = $(INSTALL_DIR)/include
DRI_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/dri
# Where libGL will look for DRI hardware drivers
DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)
# pkg-config substitutions
GL_PC_REQ_PRIV =
GL_PC_LIB_PRIV =
GL_PC_CFLAGS =
DRI_PC_REQ_PRIV =
GLU_PC_REQ = gl
GLU_PC_REQ_PRIV =
GLU_PC_LIB_PRIV =
GLU_PC_CFLAGS =
GLUT_PC_REQ_PRIV =
GLUT_PC_LIB_PRIV =
GLUT_PC_CFLAGS =
GLW_PC_REQ_PRIV =
GLW_PC_LIB_PRIV =
GLW_PC_CFLAGS =
OSMESA_PC_REQ =
OSMESA_PC_LIB_PRIV =

View File

@@ -5,13 +5,27 @@ include $(TOP)/configs/default
CONFIG_NAME = FreeBSD
# Compiler and flags
CC = gcc
CXX = g++
CC = cc
CXX = c++
MAKE = gmake
CFLAGS = -O2 -fPIC -pedantic -I/usr/X11R6/include -DUSE_XSHM -DHZ=100
CXXFLAGS = -O2 -fPIC -pedantic
OPT_FLAGS = -O2
PIC_FLAGS = -fPIC
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_BSD_SOURCE -DUSE_XSHM \
-DHZ=100
X11_INCLUDES = -I/usr/local/include
CFLAGS += $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(DEFINES) $(X11_INCLUDES) -ffast-math -pedantic
CXXFLAGS += $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(DEFINES) $(X11_INCLUDES)
GLUT_CFLAGS = -fexceptions
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
EXTRA_LIB_PATH = -L/usr/local/lib
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) $(EXTRA_LIB_PATH) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lXext -lXmu -lXi -lX11 -lm

View File

@@ -9,25 +9,38 @@ CONFIG_NAME = freebsd-dri
CC = gcc
CXX = g++
WARN_FLAGS = -Wall
OPT_FLAGS = -O
OPT_FLAGS = -O -g
X11_INCLUDES = -I/usr/X11R6/include -I/usr/X11R6/include/X11/extensions
DEFINES = -DDRI_NEW_INTERFACE_ONLY
CFLAGS = $(DEFINES) -Wmissing-prototypes -g -std=c99 -Wundef -fPIC -ffast-math -I/usr/local/include $(X11_INCLUDES)
CXXFLAGS = $(DEFINES) -Wall -g -ansi -pedantic -fPIC
EXPAT_INCLUDES = -I/usr/local/include
X11_INCLUDES = -I/usr/local/include
DEFINES = -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER \
-DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING \
-DHAVE_ALIAS
CFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) -Wmissing-prototypes -std=c99 -Wundef -ffast-math \
$(ASM_FLAGS) $(X11_INCLUDES) $(DEFINES)
CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(DEFINES) -Wall -ansi -pedantic $(ASM_FLAGS) $(X11_INCLUDES)
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
ASM_SOURCES =
# Library/program dependencies
DRI_LIB_DEPS = -lm -lpthread -lexpat
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -pthread
LIBDRM_CFLAGS = `pkg-config --cflags libdrm`
LIBDRM_LIB = `pkg-config --libs libdrm`
DRI_LIB_DEPS = -L/usr/local/lib -lm -pthread -lexpat $(LIBDRM_LIB)
GL_LIB_DEPS = -L/usr/local/lib -lX11 -lXext -lXxf86vm -lXdamage -lXfixes \
-lm -pthread $(LIBDRM_LIB)
GLUT_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -lGLU -lGL -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -lGL -lXt -lXm -lX11
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/local/lib -lGLU -lGL -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/local/lib -lGL -lXt -lX11
# Directories
SRC_DIRS = mesa glu glut/glx glw glx/x11
SRC_DIRS = glx/x11 mesa glu glut/glx glw
DRIVER_DIRS = dri
PROGRAM_DIRS =
WINDOW_SYSTEM=dri
@@ -36,6 +49,6 @@ DRM_SOURCE_PATH=$(TOP)/../drm
# ffb and gamma are missing because they have not been converted to use the new
# interface.
DRI_DIRS = dri_client i810 i830 i915 mach64 mga r128 r200 radeon tdfx \
DRI_DIRS = i810 i915 i965 mach64 mga r128 r200 r300 radeon tdfx \
unichrome savage sis

10
configs/freebsd-dri-amd64 Normal file
View File

@@ -0,0 +1,10 @@
# -*-makefile-*-
# Configuration for freebsd-dri-amd64: FreeBSD DRI hardware drivers
include $(TOP)/configs/freebsd-dri
CONFIG_NAME = freebsd-dri-x86-64
ASM_FLAGS = -DUSE_X86_64_ASM
ASM_SOURCES = $(X86-64_SOURCES)
ASM_API = $(X86-64_API)

View File

@@ -10,3 +10,4 @@ PIC_FLAGS =
ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)

View File

@@ -8,7 +8,7 @@ CONFIG_NAME = hpux10
CC = cc
CXX = aCC
CFLAGS = +O3 +DAportable +z -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CXXFLAGS = +O3 +DAportable +Z -Aa -D_HPUX_SOURCE
CFLAGS = -O +DAportable +z -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CXXFLAGS = -O +DAportable +Z -Ae -D_HPUX_SOURCE
APP_LIB_DEPS = -$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -$(TOP)/$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm

View File

@@ -12,5 +12,9 @@ CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/incl
CXXFLAGS = -ansi -O3 -D_HPUX_SOURCE
GLUT_CFLAGS = -fexceptions
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm

View File

@@ -8,8 +8,8 @@ CONFIG_NAME = hpux10-static
CC = cc
CXX = aCC
CFLAGS = +O3 +DAportable +z -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CXXFLAGS = +O3 +DAportable +Z -Aa -D_HPUX_SOURCE
CFLAGS = -O +DAportable +z -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CXXFLAGS = -O +DAportable +Z -Ae -D_HPUX_SOURCE
MKLIB_OPTIONS = -static
@@ -26,5 +26,5 @@ OSMESA_LIB_DEPS =
GLU_LIB_DEPS =
GLUT_LIB_DEPS =
GLW_LIB_DEPS =
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm -lstdc++
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm -lstdc++

View File

@@ -8,9 +8,9 @@ CONFIG_NAME = hpux11-32
CC = cc
CXX = aCC
CFLAGS = +z -Ae +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CFLAGS = +z -Ae -O +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CXXFLAGS = +z -Aa +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
CXXFLAGS = +z -Ae -O +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS
MKLIB_OPTIONS =
@@ -23,4 +23,8 @@ GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
# Library/program dependencies
APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB)
GL_LIB_DEPS = -L/usr/lib/X11R6/ -L/usr/contrib/X11R6/lib/ -lXext -lXt -lXi -lX11 -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm -lCsup -lcl
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(GL_LIB_DEPS)
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(GL_LIB_DEPS)

View File

@@ -8,9 +8,9 @@ CONFIG_NAME = hpux11-32-static
CC = cc
CXX = aCC
CFLAGS = +O3 +DA2.0 -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CFLAGS = -O +DA2.0 -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CXXFLAGS = +O3 +DA2.0 -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
CXXFLAGS = -O +DA2.0 -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS
MKLIB_OPTIONS = -static
@@ -23,4 +23,5 @@ GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
# Library/program dependencies
APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6/ -L/usr/contrib/X11R6/lib/ -lXext -lXmu -lXt -lXi -lX11 -lm -lpthread -lCsup -lcl

View File

@@ -8,9 +8,9 @@ CONFIG_NAME = hpux11-32-static
CC = cc
CXX = aCC
CFLAGS = +O3 +DA2.0 -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CFLAGS = -O +DA2.0 -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CXXFLAGS = +O3 +DA2.0 -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
CXXFLAGS = -O +DA2.0 -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
MKLIB_OPTIONS = -static

View File

@@ -8,13 +8,13 @@ CONFIG_NAME = hpux11-64
CC = cc
CXX = aCC
CFLAGS = +z -Ae +DD64 +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CFLAGS = +z -Ae +DD64 -O +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CXXFLAGS = +z -Aa +DD64 +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
CXXFLAGS = +z -Ae +DD64 -O +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS
MKLIB_OPTIONS =
LIBDIR = $(TOP)/lib64
LIB_DIR = lib64
# Library names (actual file names)
GL_LIB_NAME = libGL.a
@@ -24,4 +24,8 @@ GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
# Library/program dependencies
APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB)
GL_LIB_DEPS = -L/usr/lib/X11R6/pa20_64 -L/usr/contrib/X11R6/lib/pa20_64 -lXext -lXmu -lXt -lXi -lX11 -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm -lCsup -lcl
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(GL_LIB_DEPS)
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(GL_LIB_DEPS)

View File

@@ -8,13 +8,13 @@ CONFIG_NAME = hpux11-64-static
CC = cc
CXX = aCC
CFLAGS = +O3 +DA2.0W -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CFLAGS = -O +DA2.0W -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CXXFLAGS = +O3 +DA2.0W -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
CXXFLAGS = -O +DA2.0W -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS
MKLIB_OPTIONS = -static
LIBDIR = $(TOP)/lib64
LIB_DIR = lib64
# Library names (actual file names)
GL_LIB_NAME = libGL.a
@@ -24,4 +24,4 @@ GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
# Library/program dependencies
APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6/pa20_64 -L/usr/contrib/X11R6/lib/pa20_64 -lXext -lXmu -lXt -lXi -lX11 -lm -lpthread -lCsup -lcl

30
configs/hpux11-ia64 Normal file
View File

@@ -0,0 +1,30 @@
# Configuration for HPUX IA64 v11, 64-bit
include $(TOP)/configs/default
CONFIG_NAME = hpux11-ia64
# Compiler and flags
CC = cc
CXX = aCC
CFLAGS = +z -Ae +DD64 -O +DSmckinley -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CXXFLAGS = +z -Ae +DD64 -O +DSmckinley -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS
MKLIB_OPTIONS =
LIB_DIR = lib64
# Library names (actual file names)
GL_LIB_NAME = libGL.so
GLU_LIB_NAME = libGLU.so
GLUT_LIB_NAME = libglut.so
GLW_LIB_NAME = libGLw.so
OSMESA_LIB_NAME = libOSMesa.so
# Library/program dependencies
GL_LIB_DEPS = -L/usr/lib/X11R6/ -L/usr/contrib/X11R6/lib/ -lXext -lXmu -lXt -lXi -lX11 -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm -lCsup -lcl
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(GL_LIB_DEPS)
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(GL_LIB_DEPS)

View File

@@ -0,0 +1,27 @@
# Configuration for HPUX v11, 64-bit, static libs
include $(TOP)/configs/default
CONFIG_NAME = hpux11-ia64-static
# Compiler and flags
CC = cc
CXX = aCC
CFLAGS = -O +DD64 -Ae -D_HPUX_SOURCE +DSmckinley -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CXXFLAGS = -O +DD64 -Ae -D_HPUX_SOURCE +DSmckinley -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS
MKLIB_OPTIONS = -static
LIB_DIR = lib64
# Library names (actual file names)
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a
GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
# Library/program dependencies
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lXt -lX11 -lpthread -lm -lCsup -lcl

View File

@@ -9,8 +9,8 @@ CC = cc
# XXX fix this
CXX = c++
CFLAGS = +z +O3 +Olibcalls +ESlit -Aa +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5 -DUSE_XSHM
CXXFLAGS = +z +O3 +Olibcalls +ESlit -Aa +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5
CFLAGS = +z -O +Olibcalls +ESlit -Ae +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5 -DUSE_XSHM
CXXFLAGS = +z -O +Olibcalls +ESlit -Ae +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/lib/X11R5 -s -Wl,+s,-B,nonfatal,-B,immediate -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/lib/X11R5 -s -Wl,+s,-B,nonfatal,-B,immediate -lXext -lXmu -lXi -lX11 -lm

View File

@@ -8,7 +8,7 @@ CONFIG_NAME = hpux9-gcc
CC = cc
CXX = aCC
CFLAGS = +O3 +DAportable +z -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CXXFLAGS = +O3 +DAportable +Z -Aa -D_HPUX_SOURCE
CFLAGS = -O +DAportable +z -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CXXFLAGS = -O +DAportable +Z -Ae -D_HPUX_SOURCE
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm

View File

@@ -7,12 +7,11 @@ CONFIG_NAME = irix6-64
# Compiler and flags
CC = cc
CXX = CC
CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM
CXXFLAGS = -64 -O3 -ansi -woff 1174
MKLIB_OPTIONS = -archopt 64
CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM -DPTHREADS
CXXFLAGS = -64 -O3 -ansi -woff 1174 -DPTHREADS
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
LIB_DIR = $(TOP)/lib64
LIB_DIR = lib64
APP_LIB_DEPS = -L$(LIB_DIR) -64 -rpath $(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -64 -rpath $(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lpthread -lm

View File

@@ -7,15 +7,15 @@ CONFIG_NAME = irix6-64-static
# Compiler and flags
CC = cc
CXX = CC
CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM
CXXFLAGS = -64 -O3 -ansi -woff 1174
MKLIB_OPTIONS = -archopt 64 -static
CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM -DPTHREADS
CXXFLAGS = -64 -O3 -ansi -woff 1174 -DPTHREADS
MKLIB_OPTIONS = -static
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
LIB_DIR = $(TOP)/lib64
LIB_DIR = lib64
APP_LIB_DEPS = -L$(LIB_DIR) -64 -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -64 -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lpthread -lm -lC
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a
@@ -23,3 +23,4 @@ GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a

View File

@@ -7,12 +7,11 @@ CONFIG_NAME = irix6-n32
# Compiler and flags
CC = cc
CXX = CC
CFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1521,1552 -DUSE_XSHM
CXXFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1552
MKLIB_OPTIONS = -archopt n32
CFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1521,1552 -DUSE_XSHM -DPTHREADS
CXXFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1552 -DPTHREADS
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
LIB_DIR = $(TOP)/lib32
LIB_DIR = lib32
APP_LIB_DEPS = -L$(LIB_DIR) -n32 -rpath $(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lfpe -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -n32 -rpath $(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lfpe -lpthread -lm

View File

@@ -7,15 +7,15 @@ CONFIG_NAME = irix6-n32-static
# Compiler and flags
CC = cc
CXX = CC
CFLAGS = -n32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM
CXXFLAGS = -n32 -mips2 -O2 -ansi -woff 3262,3666
MKLIB_OPTIONS = -archopt n32 -static
CFLAGS = -n32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM -DPTHREADS
CXXFLAGS = -n32 -mips2 -O2 -ansi -woff 3262,3666 -DPTHREADS
MKLIB_OPTIONS = -static
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
LIB_DIR = $(TOP)/lib32
LIB_DIR = lib32
APP_LIB_DEPS = -L$(LIB_DIR) -n32 -glut -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -n32 -glut -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lpthread -lm -lC
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a

View File

@@ -9,11 +9,10 @@ CC = cc
CXX = CC
CFLAGS = -32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM
CXXFLAGS = -32 -mips2 -O2 -ansi -woff 3262,3666
MKLIB_OPTIONS = -archopt o32
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
LIB_DIR = $(TOP)/lib32
LIB_DIR = lib32
APP_LIB_DEPS = -L$(LIB_DIR) -32 -rpath $(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -32 -rpath $(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm

View File

@@ -9,13 +9,13 @@ CC = cc
CXX = CC
CFLAGS = -32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM
CXXFLAGS = -32 -mips2 -O2 -ansi -woff 3262,3666
MKLIB_OPTIONS = -archopt o32 -static
MKLIB_OPTIONS = -static
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
LIB_DIR = $(TOP)/lib32
LIB_DIR = lib32
APP_LIB_DEPS = -L$(LIB_DIR) -32 -glut -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -32 -glut -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm -lC
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a

View File

@@ -8,13 +8,30 @@ CONFIG_NAME = linux
CC = gcc
CXX = g++
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
OPT_FLAGS = -O3 -g
PIC_FLAGS = -fPIC
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support. Add -m32
# to build properly on 64-bit platforms.
ARCH_FLAGS ?=
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \
-D_BSD_SOURCE -D_GNU_SOURCE \
-DPTHREADS -DUSE_XSHM -DHAVE_POSIX_MEMALIGN
X11_INCLUDES = -I/usr/X11R6/include
CFLAGS = -Wall -Wmissing-prototypes $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) \
$(DEFINES) $(ASM_FLAGS) $(X11_INCLUDES) -std=c99 -ffast-math
CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \
$(X11_INCLUDES)
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
GLUT_CFLAGS = -fexceptions
# Library/program dependencies
# Need to have -L/usr/X11R6/lib in these:
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
EXTRA_LIB_PATH = -L/usr/X11R6/lib

View File

@@ -11,8 +11,12 @@ CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -fPIC -D_XOPEN_SOURCE -DUSE_XSHM
CXXFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -fPIC -D_XOPEN_SOURCE
GLUT_CFLAGS = -fexceptions
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm

View File

@@ -11,7 +11,11 @@ CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -D_XOPEN_SOURCE -DUSE_XSHM
CXXFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -D_XOPEN_SOURCE
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -static
PIC_FLAGS =
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
# Library names (actual file names)
GL_LIB_NAME = libGL.a
@@ -22,6 +26,6 @@ OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -L/usr/X11R6/lib -lX11 -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -L/usr/X11R6/lib -lX11 -lm

View File

@@ -1,20 +1,8 @@
# Configuration for debugging on Linux
include $(TOP)/configs/default
include $(TOP)/configs/linux
CONFIG_NAME = linux-debug
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG
CXXFLAGS = -g -ansi -pedantic -Wall -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -DDEBUG -DMESA_DEBUG
GLUT_CFLAGS = -fexceptions
# Need to have -L/usr/X11R6/lib in these:
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lXt -L/usr/X11R6/lib -lX11
OPT_FLAGS = -g -ansi -pedantic
DEFINES += -DDEBUG -DDEBUG_MATH

38
configs/linux-directfb Normal file
View File

@@ -0,0 +1,38 @@
# Configuration for DirectFB
include $(TOP)/configs/default
CONFIG_NAME = linux-directfb
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -Wall -O3 -ffast-math -fPIC -std=c99 -D_GNU_SOURCE -D_POSIX_SOURCE -D_SVID_SOURCE \
-D_POSIX_C_SOURCE=199309L -D_BSD_SOURCE -DPTHREADS
CXXFLAGS = -Wall -O3 -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
HAVE_X86 = $(shell uname -m | grep 'i[3-6]86' >/dev/null && echo yes)
ifeq ($(HAVE_X86), yes)
CFLAGS += -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
CXXFLAGS += -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)
endif
# Directories
SRC_DIRS = mesa glu glut/directfb
GLU_DIRS = sgi
DRIVER_DIRS = directfb
PROGRAM_DIRS = demos directfb
# Library/program dependencies
GL_LIB_DEPS = -lm -lpthread
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -l$(GLU_LIB)
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -l$(GLU_LIB) -l$(GLUT_LIB)

View File

@@ -9,45 +9,66 @@ CONFIG_NAME = linux-dri
CC = gcc
CXX = g++
MKDEP = /usr/X11R6/bin/makedepend
#MKDEP = /usr/X11R6/bin/makedepend
#MKDEP = gcc -M
#MKDEP_OPTIONS = -MF depend
WARN_FLAGS = -Wall
OPT_FLAGS = -O -g
PIC_FLAGS = -fPIC
OPT_FLAGS = -O -g
PIC_FLAGS = -fPIC
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support.
ARCH_FLAGS ?=
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \
-D_BSD_SOURCE -D_GNU_SOURCE \
-DDRI_NEW_INTERFACE_ONLY -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1
-DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER \
-DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING \
-DHAVE_ALIAS -DHAVE_POSIX_MEMALIGN
X11_INCLUDES = -I/usr/X11R6/include -I/usr/X11R6/include/X11/extensions
X11_INCLUDES = -I/usr/X11R6/include
CFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(ASM_FLAGS) -std=c99 $(PIC_FLAGS) -ffast-math \
$(DEFINES)
CFLAGS = -Wall -Wmissing-prototypes -std=c99 -ffast-math \
$(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) $(ASM_FLAGS)
CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) \
$(DEFINES)
CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
GLUT_CFLAGS = -fexceptions
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
ASM_SOURCES =
# Library/program dependencies
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXxf86vm -lm -lpthread -ldl
EXTRA_LIB_PATH=-L/usr/X11R6/lib
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
LIBDRM_CFLAGS = `pkg-config --cflags libdrm`
LIBDRM_LIB = `pkg-config --libs libdrm`
DRI_LIB_DEPS = $(EXTRA_LIB_PATH) -lm -lpthread -lexpat -ldl $(LIBDRM_LIB)
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lXxf86vm -lXdamage -lXfixes \
-lm -lpthread -ldl $(LIBDRM_LIB)
# This is now 0 by default since it seems to confuse the hell out of people
# and generate a lot of extra noise on bugzilla. If you need to build with
# EGL, do 'make linux-dri USING_EGL=1'
USING_EGL=0
# Directories
SRC_DIRS = mesa glu glut/glx glw glx/x11
ifeq ($(USING_EGL), 1)
SRC_DIRS = egl glx/x11 mesa glu glut/glx glw
PROGRAM_DIRS = egl xdemos
else
SRC_DIRS = glx/x11 mesa glu glut/glx glw
PROGRAM_DIRS = xdemos
endif
DRIVER_DIRS = dri
PROGRAM_DIRS =
WINDOW_SYSTEM=dri
# ffb and gamma are missing because they have not been converted to use the new
# gamma are missing because they have not been converted to use the new
# interface.
DRI_DIRS = dri_client i810 i830 i915 mach64 mga r128 r200 radeon s3v \
savage sis tdfx trident unichrome
DRI_DIRS = i810 i915 i965 mach64 mga r128 r200 r300 radeon s3v \
savage sis tdfx trident unichrome ffb

16
configs/linux-dri-debug Normal file
View File

@@ -0,0 +1,16 @@
# -*-makefile-*-
# Configuration for linux-dri-debug: Linux DRI hardware drivers for XFree86 & others
include $(TOP)/configs/linux-dri
CONFIG_NAME = linux-dri-debug
OPT_FLAGS = -O0 -g
ARCH_FLAGS = -DDEBUG
# Helpful to reduce the amount of stuff that gets built sometimes:
#DRI_DIRS = i915tex i915
#DRI_DIRS = i965
#DRI_DIRS = radeon r200 r300
#DRI_DIRS = unichrome sis trident
#DRI_DIRS = i810 mga r128 tdfx

View File

@@ -13,5 +13,5 @@ ASM_SOURCES = $(PPC_SOURCES)
# Build only the drivers for cards that exist on PowerPC. At some point MGA
# will be added, but not yet.
DRI_DIRS = dri_client mach64 r128 r200 radeon tdfx
DRI_DIRS = mach64 r128 r200 r300 radeon tdfx

View File

@@ -5,8 +5,10 @@ include $(TOP)/configs/linux-dri
CONFIG_NAME = linux-dri-x86
# Unnecessary on x86, generally.
PIC_FLAGS =
# Add -m32 to CFLAGS:
ARCH_FLAGS = -m32
ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)

View File

@@ -1,40 +1,24 @@
# -*-makefile-*-
# Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others
include $(TOP)/configs/default
include $(TOP)/configs/linux-dri
CONFIG_NAME = linux-dri-x86-64
# Compiler and flags
CC = gcc
CXX = g++
ARCH_FLAGS = -m64
DEFINES = -DDRI_NEW_INTERFACE_ONLY -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DPTHREADS -D_GNU_SOURCE -D__AMD64__
ASM_FLAGS = -DUSE_X86_64_ASM
ASM_SOURCES = $(X86-64_SOURCES)
ASM_API = $(X86-64_API)
CFLAGS = -m64 -Wmissing-prototypes -g -std=c99 -Wundef -fPIC -ffast-math $(DEFINES)
CXXFLAGS = -m64 -Wall -g -ansi -pedantic -fPIC $(DEFINES)
X11_INCLUDES = -I/usr/X11R6/include -I/usr/X11R6/include/X11/extensions
#ASM_SOURCES = $(X86_SOURCES)
LIB_DIR = $(TOP)/lib64
LIB_DIR = lib64
# Library/program dependencies
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
GL_LIB_DEPS = -L/usr/X11R6/lib64 -lX11 -lXext -lXxf86vm -lm -lpthread -ldl
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib64 -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib64 -lXt -lX11
EXTRA_LIB_PATH=-L/usr/X11R6/lib64
# Directories
SRC_DIRS = mesa glu glut/glx glw glx/x11
DRIVER_DIRS = dri
PROGRAM_DIRS =
WINDOW_SYSTEM=dri
# ffb, gamma, and sis are missing because they have
# not be converted to use the new interface. Do i810 & i830 really
# need to be included here?
# ffb, gamma, and sis are missing because they have not be converted to use
# the new interface. i810 are missing because there is no x86-64
# system where they could *ever* be used.
#
DRI_DIRS = dri_client i810 i830 i915 mach64 mga r128 r200 radeon tdfx unichrome savage
DRI_DIRS = i915 i965 mach64 mga r128 r200 r300 radeon savage tdfx unichrome

73
configs/linux-dri-xcb Normal file
View File

@@ -0,0 +1,73 @@
# -*-makefile-*-
# Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others
include $(TOP)/configs/default
CONFIG_NAME = linux-dri-xcb
# Compiler and flags
CC = gcc
CXX = g++
#MKDEP = /usr/X11R6/bin/makedepend
#MKDEP = gcc -M
#MKDEP_OPTIONS = -MF depend
OPT_FLAGS = -g
PIC_FLAGS = -fPIC
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support.
ARCH_FLAGS ?=
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \
-D_BSD_SOURCE -D_GNU_SOURCE \
-DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER \
-DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING \
-DHAVE_ALIAS -DUSE_XCB -DHAVE_POSIX_MEMALIGN
X11_INCLUDES = `pkg-config --cflags-only-I x11` `pkg-config --cflags-only-I xcb` `pkg-config --cflags-only-I x11-xcb` `pkg-config --cflags-only-I xcb-glx`
CFLAGS = -Wall -Wmissing-prototypes $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) \
$(DEFINES) $(ASM_FLAGS) -std=c99 -ffast-math
CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
ASM_SOURCES =
# Library/program dependencies
EXTRA_LIB_PATH=`pkg-config --libs-only-L x11`
LIBDRM_CFLAGS = `pkg-config --cflags libdrm`
LIBDRM_LIB = `pkg-config --libs libdrm`
DRI_LIB_DEPS = $(EXTRA_LIB_PATH) -lm -lpthread -lexpat -ldl $(LIBDRM_LIB)
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lXxf86vm -lXdamage -lXfixes \
-lm -lpthread -ldl $(LIBDRM_LIB) `pkg-config --libs xcb` \
`pkg-config --libs x11-xcb` `pkg-config --libs xcb-glx`
# This is now 0 by default since it seems to confuse the hell out of people
# and generate a lot of extra noise on bugzilla. If you need to build with
# EGL, do 'make linux-dri USING_EGL=1'
USING_EGL=0
# Directories
ifeq ($(USING_EGL), 1)
SRC_DIRS = egl glx/x11 mesa glu glut/glx glw
PROGRAM_DIRS = egl xdemos
else
SRC_DIRS = glx/x11 mesa glu glut/glx glw
PROGRAM_DIRS = xdemos
endif
DRIVER_DIRS = dri
WINDOW_SYSTEM=dri
# gamma are missing because they have not been converted to use the new
# interface.
DRI_DIRS = i810 i915 mach64 mga r128 r200 r300 radeon s3v \
savage sis tdfx trident unichrome ffb

19
configs/linux-fbdev Normal file
View File

@@ -0,0 +1,19 @@
# Configuration for Linux fbdev interface
include $(TOP)/configs/linux
CONFIG_NAME = linux-fbdev
CFLAGS = -O3 -ffast-math -ansi -pedantic -fPIC -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DPTHREADS -DUSE_GLFBDEV_DRIVER
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
SRC_DIRS = mesa glu glut/fbdev
DRIVER_DIRS = fbdev osmesa
PROGRAM_DIRS = fbdev demos redbook samples
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lm -lpthread
OSMESA_LIB_DEPS = -lm -lpthread
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lgpm -lm

View File

@@ -12,9 +12,12 @@ CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
GLUT_CFLAGS = -fexceptions
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
# Library/program dependencies
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -L/usr/local/glide/lib -lglide3x -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/local/glide/lib -lglide3x -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/local/glide/lib -lglide3x -lm

21
configs/linux-ia64-icc Normal file
View File

@@ -0,0 +1,21 @@
# Configuration for Linux with Intel C compiler
include $(TOP)/configs/default
CONFIG_NAME = linux-icc
# Compiler and flags
CC = icc
CXX = icpc
CFLAGS = -O3 -ansi -KPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
CXXFLAGS = -O3 -ansi -KPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -arch icc-istatic
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(GL_LIB_DEPS)
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB)

View File

@@ -0,0 +1,27 @@
# Configuration for Linux with Intel C compiler, static libs
include $(TOP)/configs/default
CONFIG_NAME = linux-icc-static
# Compiler and flags
CC = icc
CXX = icpc
CFLAGS = -O3 -ansi -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
CXXFLAGS = -O3 -ansi -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -static -arch icc-istatic
# Library names (actual file names)
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a
GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS =
GLU_LIB_DEPS =
GLUT_LIB_DEPS =
GLW_LIB_DEPS =
APP_LIB_DEPS = -i-static -cxxlib-icc -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lpthread -lm -lcxa -lunwind

View File

@@ -13,9 +13,10 @@ GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -arch icc
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)

View File

@@ -6,9 +6,9 @@ CONFIG_NAME = linux-icc-static
# Compiler and flags
CC = icc
CXX = g++
CXX = icpc
CFLAGS = -O3 -tpp6 -axK -D_GCC_LIMITS_H_ -D__GNUC__ -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
CXXFLAGS = -O3
CXXFLAGS = -O3 -tpp6 -axK -DPTHREADS
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -static -arch icc
@@ -19,11 +19,9 @@ GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
MKLIB_OPTIONS = -arch icc
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
GL_LIB_DEPS =
GLUT_LIB_DEPS =
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm -lpthread -lcxa -lunwind
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)

53
configs/linux-indirect Normal file
View File

@@ -0,0 +1,53 @@
# -*-makefile-*-
# Configuration for linux-indirect: Builds a libGL capable of indirect
# rendering, but *NOT* capable of direct rendering.
include $(TOP)/configs/default
CONFIG_NAME = linux-dri
# Compiler and flags
CC = gcc
CXX = g++
#MKDEP = /usr/X11R6/bin/makedepend
#MKDEP = gcc -M
#MKDEP_OPTIONS = -MF depend
WARN_FLAGS = -Wall
OPT_FLAGS = -O -g
PIC_FLAGS = -fPIC
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support.
ARCH_FLAGS ?=
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \
-D_BSD_SOURCE -D_GNU_SOURCE \
-DGLX_INDIRECT_RENDERING \
-DPTHREADS -DHAVE_ALIAS -DHAVE_POSIX_MEMALIGN
X11_INCLUDES = -I/usr/X11R6/include
CFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \
$(ASM_FLAGS) -std=c99 -ffast-math
CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
ASM_SOURCES =
# Library/program dependencies
EXTRA_LIB_PATH=-L/usr/X11R6/lib
DRI_LIB_DEPS = $(EXTRA_LIB_PATH) -lm -lpthread -lexpat -ldl
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lXxf86vm -lm -lpthread -ldl
# Directories
SRC_DIRS = glx/x11 glu glut/glx glw
DRIVER_DIRS =
PROGRAM_DIRS =
WINDOW_SYSTEM=dri

28
configs/linux-osmesa Normal file
View File

@@ -0,0 +1,28 @@
# Configuration for building only libOSMesa on Linux, no Xlib driver
# This doesn't really have any Linux dependencies, so it should be usable
# on other (gcc-based) systems.
include $(TOP)/configs/default
CONFIG_NAME = linux-osmesa
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DPTHREADS
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
# Directories
SRC_DIRS = mesa glu
DRIVER_DIRS = osmesa
PROGRAM_DIRS = osdemos
# Dependencies
OSMESA_LIB_DEPS = -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
APP_LIB_DEPS = -lm -lpthread

View File

@@ -10,6 +10,9 @@ CXX = g++
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
# Library names
OSMESA_LIB = OSMesa16
@@ -24,4 +27,5 @@ PROGRAM_DIRS =
# Dependencies
OSMESA_LIB_DEPS = -lm -lpthread
APP_LIB_DEPS = -lOSMesa16
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
APP_LIB_DEPS = -lm -lpthread

View File

@@ -10,7 +10,11 @@ CXX = g++
CFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
CXXFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
MKLIB_OPTIONS = -static
PIC_FLAGS =
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
# Library names
OSMESA_LIB = OSMesa16
@@ -25,4 +29,4 @@ PROGRAM_DIRS =
# Dependencies
OSMESA_LIB_DEPS = -lm -lpthread
APP_LIB_DEPS = -lOSMesa16
APP_LIB_DEPS = -lm -lpthread

View File

@@ -10,6 +10,9 @@ CXX = g++
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DCHAN_BITS=32 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
# Library names
OSMESA_LIB = OSMesa32
@@ -24,4 +27,5 @@ PROGRAM_DIRS =
# Dependencies
OSMESA_LIB_DEPS = -lm -lpthread
APP_LIB_DEPS = -lOSMesa32
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
APP_LIB_DEPS = -lm -lpthread

View File

@@ -1,18 +1,9 @@
# Configuration for Linux on PPC
include $(TOP)/configs/default
include $(TOP)/configs/linux
CONFIG_NAME = linux-ppc
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM
CXXFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE
GLUT_CFLAGS = -fexceptions
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
OPT_FLAGS = -O3 -mcpu=603 -fsigned-char -funroll-loops
# FIXME: Use of PowerPC assembly should be enabled here.

View File

@@ -1,16 +1,11 @@
# Configuration for Linux on PPC, static libs
include $(TOP)/configs/default
include $(TOP)/configs/linux-ppc
CONFIG_NAME = linux-ppc-static
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM
CXXFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -static
PIC_FLAGS =
# Library names (actual file names)
GL_LIB_NAME = libGL.a
@@ -18,9 +13,3 @@ GLU_LIB_NAME = libGLU.a
GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lm

29
configs/linux-profile Normal file
View File

@@ -0,0 +1,29 @@
# Configuration for profiling on Linux with gprof
include $(TOP)/configs/default
CONFIG_NAME = linux-profile
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -pg -O -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG
CXXFLAGS = -pg -O -ansi -pedantic -Wall -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -DDEBUG
GLUT_CFLAGS = -fexceptions
# Need to have -L/usr/X11R6/lib in these:
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lXt -L/usr/X11R6/lib -lX11
# Need to make static libs for profiling:
MKLIB_OPTIONS = -static
GL_LIB_NAME = lib$(GL_LIB).a
GLU_LIB_NAME = lib$(GLU_LIB).a
GLUT_LIB_NAME = lib$(GLUT_LIB).a
GLW_LIB_NAME = lib$(GLW_LIB).a
OSMESA_LIB_NAME = lib$(OSMesa).a
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread

View File

@@ -8,26 +8,47 @@ CONFIG_NAME = linux-solo
CC = gcc
CXX = g++
DEFINES = -DDRI_NEW_INTERFACE_ONLY -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -D_POSIX_C_SOURCE=199309L -D_GNU_SOURCE
WARN_FLAGS = -Wall -Wundef
OPT_FLAGS = -O3 -g
PIC_FLAGS = -fPIC
CFLAGS = $(DEFINES) -Wmissing-prototypes -g -std=c99 -Wundef -fPIC -ffast-math
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support.
ARCH_FLAGS ?=
CXXFLAGS = $(DEFINES) -Wall -O3 -ansi -pedantic -fPIC
# DRM and pciaccess
LIBDRM_CFLAGS = `pkg-config --cflags libdrm`
LIBDRM_LIB = `pkg-config --libs libdrm`
PCIACCESS_CFLAGS = `pkg-config --cflags pciaccess`
PCIACCESS_LIB = `pkg-config --libs pciaccess`
ASM_SOURCES = $(X86_SOURCES)
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \
-D_BSD_SOURCE -D_GNU_SOURCE -DHAVE_POSIX_MEMALIGN \
-DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER \
-DHAVE_ALIAS
CFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \
$(ASM_FLAGS) -std=c99 -ffast-math
CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
ASM_SOURCES =
# Library/program dependencies
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl -L$(TOP)/$(LIB_DIR) $(PCIACCESS_LIB)
GL_LIB_DEPS = -lm -lpthread -ldl
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread
# Directories
SRC_DIRS = mesa glx/mini glu glut/mini
SRC_DIRS = glx/mini mesa glu glut/mini
DRIVER_DIRS = dri
PROGRAM_DIRS = miniglx
#DRI_DIRS = fb ffb gamma sis savage
DRI_DIRS = i810 i830 i915 mach64 mga r128 r200 radeon tdfx unichrome
#DRI_DIRS = ffb gamma sis savage tdfx unichrome fb
DRI_DIRS = i810 i915tex i915 mach64 mga r128 r200 radeon

View File

@@ -1,29 +1,7 @@
# Configuration for linux-solo-ia64: Linux DRI hardware drivers for fbdev
include $(TOP)/configs/default
include $(TOP)/configs/linux-solo
CONFIG_NAME = linux-solo-ia64
# Compiler and flags
CC = gcc
CXX = g++
DEFINES = -DDRI_NEW_INTERFACE_ONLY -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -D_POSIX_C_SOURCE=199309L -D_GNU_SOURCE
CFLAGS = $(DEFINES) -Wmissing-prototypes -g -std=c99 -Wundef -fPIC -ffast-math
CXXFLAGS = $(DEFINES) -Wall -O3 -ansi -pedantic -fPIC
# Library/program dependencies
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
GL_LIB_DEPS = -lm -lpthread -ldl
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread
# Directories
SRC_DIRS = mesa glx/mini glu glut/mini
DRIVER_DIRS = dri
PROGRAM_DIRS = miniglx
DRI_DIRS = fb mach64 mga r128 r200 radeon sis tdfx unichrome

View File

@@ -1,32 +1,10 @@
# Configuration for linux-solo: Linux DRI hardware drivers for fbdev
# -*-makefile-*-
# Configuration for linux-solo-x86: Linux hardware drivers for fbdev for x86
include $(TOP)/configs/default
include $(TOP)/configs/linux-solo
CONFIG_NAME = linux-solo-x86
# Compiler and flags
CC = gcc
CXX = g++
DEFINES = -DDRI_NEW_INTERFACE_ONLY -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -D_POSIX_C_SOURCE=199309L -D_GNU_SOURCE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS
CFLAGS = $(DEFINES) -Wmissing-prototypes -O3 -g -std=c99 -Wundef -fPIC -ffast-math
CXXFLAGS = $(DEFINES) -Wall -O3 -ansi -pedantic -fPIC
ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
ASM_SOURCES = $(X86_SOURCES)
# Library/program dependencies
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
GL_LIB_DEPS = -lm -lpthread -ldl
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread
# Directories
SRC_DIRS = mesa glx/mini glu glut/mini
DRIVER_DIRS = dri
PROGRAM_DIRS = miniglx
#DRI_DIRS = fb ffb gamma sis savage
DRI_DIRS = i810 i830 i915 mach64 mga r128 r200 radeon tdfx unichrome
ASM_API = $(X86_API)

View File

@@ -1,16 +1,9 @@
# Configuration for Linux on Sparc
include $(TOP)/configs/default
include $(TOP)/configs/linux
CONFIG_NAME = linux-sparc
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM
CXXFLAGS = -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE
GLUT_CFLAGS = -fexceptions
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
#ASM_FLAGS = -DUSE_SPARC_ASM
#ASM_SOURCES = $(SPARC_SOURCES)
#ASM_API = $(SPARC_API)

View File

@@ -1,17 +1,7 @@
# Configuration for Linux on Sparc5
include $(TOP)/configs/default
include $(TOP)/configs/linux-sparc
CONFIG_NAME = linux-sparc5
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -mcpu=ultrasparc -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM
CXXFLAGS = -mcpu=ultrasparc -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE
GLUT_CFLAGS = -fexceptions
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
ARCH_FLAGS += -mcpu=ultrasparc

View File

@@ -1,18 +1,11 @@
# Configuration for generic Linux, making static libs
include $(TOP)/configs/default
include $(TOP)/configs/linux
CONFIG_NAME = linux-static
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
CXXFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -static
PIC_FLAGS =
# Library names (actual file names)
GL_LIB_NAME = libGL.a
@@ -27,4 +20,7 @@ OSMESA_LIB_DEPS =
GLU_LIB_DEPS =
GLUT_LIB_DEPS =
GLW_LIB_DEPS =
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++
# Need to specify all libraries we may need
APP_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lXmu -lXt -lXi -lpthread \
-lstdc++ -lm

View File

@@ -1,22 +0,0 @@
# Configuration for debugging on Linux
include $(TOP)/configs/default
CONFIG_NAME = linux-tcc
# Compiler and flags
CC = gcc
CXX = g++
TCC_DIR=/home/progs/tcc-0.9.20
CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG -DUSE_TCC -I$(TCC_DIR)
CXXFLAGS = -g -ansi -pedantic -Wall -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -DDEBUG -DMESA_DEBUG
GLUT_CFLAGS = -fexceptions
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread -L$(TCC_DIR) -ltcc -ldl
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lXt -L/usr/X11R6/lib -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm

View File

@@ -1,17 +1,7 @@
# Configuration for Linux on UltraSparc
include $(TOP)/configs/default
include $(TOP)/configs/linux-sparc
CONFIG_NAME = linux-ultrasparc
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -mv8 -O2 -mtune=ultrasparc -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM
CXXFLAGS = -mv8 -O2 -mtune=ultrasparc -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE
GLUT_CFLAGS = -fexceptions
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR)-l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
ARCH_FLAGS += -mv8 -mtune=ultrasparc

View File

@@ -1,24 +1,9 @@
# Configuration for Linux with x86 optimizations
include $(TOP)/configs/default
include $(TOP)/configs/linux
CONFIG_NAME = linux-x86
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
CXXFLAGS = -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
GLUT_CFLAGS = -fexceptions
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
# Library/program dependencies
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)

7
configs/linux-x86-32 Normal file
View File

@@ -0,0 +1,7 @@
# To build Linux x86 32-bit in an x86-64 environment
include $(TOP)/configs/linux-x86
CONFIG_NAME = linux-x86-32
ARCH_FLAGS += -m32

View File

@@ -1,28 +1,14 @@
# Configuration for Linux for 64-bit X86 (Opteron)
include $(TOP)/configs/default
include $(TOP)/configs/linux
CONFIG_NAME = linux-x86-64
# Compiler and flags
CC = gcc
CXX = g++
ARCH_FLAGS = -m64
CFLAGS = -m64 -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -D__AMD64__ -I/usr/X11R6/include
ASM_SOURCES = $(X86-64_SOURCES)
ASM_API = $(X86-64_API)
ASM_FLAGS = -DUSE_X86_64_ASM
CXXFLAGS = -m64 -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -D__AMD64__
GLUT_CFLAGS = -fexceptions
#ASM_SOURCES = $(X86_SOURCES)
LIB_DIR = $(TOP)/lib64
# Library/program dependencies
GL_LIB_DEPS = -L/usr/X11R6/lib64 -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib64 -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib64 -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
LIB_DIR = lib64
EXTRA_LIB_PATH = -L/usr/X11R6/lib64

View File

@@ -0,0 +1,7 @@
# Configuration for Linux for 64-bit X86 (Opteron)
include $(TOP)/configs/linux-x86-64
CONFIG_NAME = linux-x86-64-debug
DEFINES += -DDEBUG -DDEBUG_MATH

View File

@@ -1,21 +1,11 @@
# Configuration for Linux for 64-bit X86 (Opteron), static libs
include $(TOP)/configs/default
include $(TOP)/configs/linux-x86-64
CONFIG_NAME = linux-x86-64-static
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -m64 -Wall -O3 -ansi -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -D__AMD64__ -I/usr/X11R6/include
CXXFLAGS = -m64 -Wall -O3 -ansi -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -D__AMD64__
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -static
PIC_FLAGS =
# Library names (actual file names)
GL_LIB_NAME = libGL.a
@@ -24,17 +14,11 @@ GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
#ASM_SOURCES = $(X86_SOURCES)
LIB_DIR = $(TOP)/lib64
# Library/program dependencies (static libs don't have dependencies)
GL_LIB_DEPS =
OSMESA_LIB_DEPS =
GLU_LIB_DEPS =
GLUT_LIB_DEPS =
GLW_LIB_DEPS =
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib64 -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++
APP_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lXmu -lXt -lXi -lpthread \
-lstdc++ -lm

View File

@@ -5,6 +5,5 @@ include $(TOP)/configs/linux-x86
CONFIG_NAME = linux-x86-debug
CFLAGS = -Wall -g -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
CXXFLAGS = -Wall -g -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
OPT_FLAGS = -g
DEFINES += -DDEBUG -DDEBUG_MATH

View File

@@ -14,11 +14,15 @@ CXXFLAGS = -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199
GLUT_CFLAGS = -fexceptions
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)
# Library/program dependencies
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -L/usr/local/glide/lib -lglide3x -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/local/glide/lib -lglide3x -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/local/glide/lib -lglide3x -lm

View File

@@ -1,21 +1,11 @@
# Configuration for Linux with x86 optimizations, static libs
include $(TOP)/configs/default
include $(TOP)/configs/linux-x86
CONFIG_NAME = linux-x86-static
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -Wall -O3 -ansi -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
CXXFLAGS = -Wall -O3 -ansi -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -static
PIC_FLAGS =
# Library names (actual file names)
GL_LIB_NAME = libGL.a
@@ -24,14 +14,11 @@ GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
# Library/program dependencies (static libs don't have dependencies)
GL_LIB_DEPS =
OSMESA_LIB_DEPS =
GLU_LIB_DEPS =
GLUT_LIB_DEPS =
GLW_LIB_DEPS =
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++
APP_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lXmu -lXt -lXi -lpthread \
-lstdc++ -lm

View File

@@ -10,5 +10,8 @@ CXX = g++
CFLAGS = -O2 -fPIC -DUSE_XSHM -I/usr/X11R6/include -DHZ=100
CXXFLAGS = -O2 -fPIC
GLUT_CFLAGS = -fexceptions
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing

View File

@@ -10,9 +10,13 @@ CXX = g++
CFLAGS = -O2 -fPIC -I/usr/X11R6/include -DUSE_XSHM -DHZ=100
CXXFLAGS = -O2 -fPIC -I/usr/X11R6/include -DHZ=100
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm
OSMESA_LIB_DEPS = -lm
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB)
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lm
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/X11R6/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm

View File

@@ -7,10 +7,10 @@ CONFIG_NAME = osf1
# Compiler and flags
CC = cc
CXX = cxx
CFLAGS = -O0 -std1 -ieee_with_no_inexact -DUSE_XSHM
CXXFLAGS = -O2 -std ansi -ieee
CFLAGS = -O0 -std1 -ieee_with_no_inexact -DUSE_XSHM -DPTHREADS -D_REENTRANT
CXXFLAGS = -O2 -std ansi -ieee -DPTHREADS -D_REENTRANT
GL_LIB_DEPS = -lX11 -lXext -lm -lpthread
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXt -lXi -lm
APP_LIB_DEPS = -L$(LIB_DIR) -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXt -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lpthread -lm

17
configs/osf1-static Normal file
View File

@@ -0,0 +1,17 @@
# Configuration for OSF/1
include $(TOP)/configs/default
CONFIG_NAME = osf1
# Compiler and flags
CC = cc
CXX = cxx
CFLAGS = -O2 -std1 -ieee_with_no_inexact -DUSE_XSHM -DPTHREADS -D_REENTRANT
CXXFLAGS = -O2 -std ansi -ieee -DPTHREADS -D_REENTRANT
MKLIB_OPTIONS = -static
GL_LIB_DEPS =
GLU_LIB_DEPS =
GLUT_LIB_DEPS =
APP_LIB_DEPS = -noso -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -so_archive -lX11 -lXext -lXmu -lXi -lpthread -lm -lcxx

Some files were not shown because too many files have changed in this diff Show More