aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fontconfig/fc-cache/fc-cache.c2
-rw-r--r--mesalib/configure.ac2
-rw-r--r--mesalib/docs/index.html6
-rw-r--r--mesalib/docs/relnotes.html1
-rw-r--r--mesalib/docs/relnotes/9.2.4.html99
-rw-r--r--mesalib/src/gallium/auxiliary/util/u_dump.h3
-rw-r--r--mesalib/src/gallium/auxiliary/util/u_dump_defines.c33
-rw-r--r--mesalib/src/glsl/Makefile.am4
-rw-r--r--mesalib/src/glsl/glsl_parser_extras.cpp2
-rw-r--r--mesalib/src/glsl/linker.cpp5
-rw-r--r--mesalib/src/glsl/lower_clip_distance.cpp5
-rw-r--r--mesalib/src/mesa/drivers/dri/common/dri_util.c6
-rw-r--r--xorg-server/configure.ac42
-rw-r--r--xorg-server/hw/dmx/dmxinit.c4
14 files changed, 190 insertions, 24 deletions
diff --git a/fontconfig/fc-cache/fc-cache.c b/fontconfig/fc-cache/fc-cache.c
index 27c751304..bf3b6b482 100644
--- a/fontconfig/fc-cache/fc-cache.c
+++ b/fontconfig/fc-cache/fc-cache.c
@@ -67,7 +67,7 @@
const struct option longopts[] = {
{"force", 0, 0, 'f'},
{"really-force", 0, 0, 'r'},
- {"sysroot", 0, 0, 'y'},
+ {"sysroot", required_argument, 0, 'y'},
{"system-only", 0, 0, 's'},
{"version", 0, 0, 'V'},
{"verbose", 0, 0, 'v'},
diff --git a/mesalib/configure.ac b/mesalib/configure.ac
index 434df6060..8c52535e6 100644
--- a/mesalib/configure.ac
+++ b/mesalib/configure.ac
@@ -29,7 +29,7 @@ AC_SUBST([OSMESA_VERSION])
dnl Versions for external dependencies
LIBDRM_REQUIRED=2.4.24
LIBDRM_RADEON_REQUIRED=2.4.49
-LIBDRM_INTEL_REQUIRED=2.4.38
+LIBDRM_INTEL_REQUIRED=2.4.49
LIBDRM_NVVIEUX_REQUIRED=2.4.33
LIBDRM_NOUVEAU_REQUIRED="2.4.33 libdrm >= 2.4.41"
LIBDRM_FREEDRENO_REQUIRED=2.4.39
diff --git a/mesalib/docs/index.html b/mesalib/docs/index.html
index dd407e36e..3b8dd31cd 100644
--- a/mesalib/docs/index.html
+++ b/mesalib/docs/index.html
@@ -16,6 +16,12 @@
<h1>News</h1>
+<h2>November 27, 2013</h2>
+<p>
+<a href="relnotes/9.2.4.html">Mesa 9.2.4</a> is released.
+This is a bug fix release.
+</p>
+
<h2>November 13, 2013</h2>
<p>
<a href="relnotes/9.2.3.html">Mesa 9.2.3</a> is released.
diff --git a/mesalib/docs/relnotes.html b/mesalib/docs/relnotes.html
index 13de49a64..24c0153b2 100644
--- a/mesalib/docs/relnotes.html
+++ b/mesalib/docs/relnotes.html
@@ -23,6 +23,7 @@ The release notes summarize what's new or changed in each Mesa release.
<ul>
<li><a href="relnotes/10.1.html">10.1 release notes</a>
<li><a href="relnotes/10.0.html">10.0 release notes</a>
+<li><a href="relnotes/9.2.4.html">9.2.4 release notes</a>
<li><a href="relnotes/9.2.3.html">9.2.3 release notes</a>
<li><a href="relnotes/9.2.2.html">9.2.2 release notes</a>
<li><a href="relnotes/9.2.1.html">9.2.1 release notes</a>
diff --git a/mesalib/docs/relnotes/9.2.4.html b/mesalib/docs/relnotes/9.2.4.html
new file mode 100644
index 000000000..1ca6b1d13
--- /dev/null
+++ b/mesalib/docs/relnotes/9.2.4.html
@@ -0,0 +1,99 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=utf-8">
+ <title>Mesa Release Notes</title>
+ <link rel="stylesheet" type="text/css" href="../mesa.css">
+</head>
+<body>
+
+<div class="header">
+ <h1>The Mesa 3D Graphics Library</h1>
+</div>
+
+<iframe src="../contents.html"></iframe>
+<div class="content">
+
+<h1>Mesa 9.2.4 Release Notes / (November 27, 2013)</h1>
+
+<p>
+Mesa 9.2.4 is a bug fix release which fixes bugs found since the 9.2.3 release.
+</p>
+<p>
+Mesa 9.2 implements the OpenGL 3.1 API, but the version reported by
+glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
+glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
+Some drivers don't support all the features required in OpenGL 3.1. OpenGL
+3.1 is <strong>only</strong> available if requested at context creation
+because GL_ARB_compatibility is not supported.
+</p>
+
+
+<h2>MD5 checksums</h2>
+<pre>
+</pre>
+
+
+<h2>New features</h2>
+<p>None</p>
+
+<h2>Bug fixes</h2>
+
+<p>This list is likely incomplete.</p>
+
+<ul>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=53077">Bug 53077</a> - [IVB] Output error with msaa when both of framebuffer and source color's alpha are not 1</li>
+
+<li>Fix freedreno to compile with recent libdrm.</li>
+
+</ul>
+
+<h2>Changes</h2>
+
+<p>The full set of changes can be viewed by using the following GIT command:</p>
+
+<pre>
+ git log mesa-9.2.3..mesa-9.2.4
+</pre>
+
+<p>Brian Paul (1):</p>
+<ul>
+ <li>st/mesa: fix GL_FEEDBACK mode inverted Y coordinate bug</li>
+</ul>
+
+<p>Paul Berry (2):</p>
+<ul>
+ <li>i965: Fix vertical alignment for multisampled buffers.</li>
+ <li>glsl: Fix lowering of direct assignment in lower_clip_distance.</li>
+</ul>
+
+<p>Rob Clark (17):</p>
+<ul>
+ <li>freedreno/a3xx: fix color inversion on mem-&gt;gmem restore</li>
+ <li>freedreno/a3xx: fix viewport on gmem-&gt;mem resolve</li>
+ <li>freedreno: add debug option to disable scissor optimization</li>
+ <li>freedreno: update register headers</li>
+ <li>freedreno/a3xx: some texture fixes</li>
+ <li>freedreno/a3xx/compiler: fix CMP</li>
+ <li>freedreno/a3xx/compiler: handle saturate on dst</li>
+ <li>freedreno/a3xx/compiler: use max_reg rather than file_count</li>
+ <li>freedreno/a3xx/compiler: cat4 cannot use const reg as src</li>
+ <li>freedreno: fix segfault when no color buffer bound</li>
+ <li>freedreno/a3xx/compiler: make compiler errors more useful</li>
+ <li>freedreno/a3xx/compiler: bit of re-arrange/cleanup</li>
+ <li>freedreno/a3xx/compiler: fix SGT/SLT/etc</li>
+ <li>freedreno/a3xx: don't leak so much</li>
+ <li>freedreno/a3xx/compiler: better const handling</li>
+ <li>freedreno/a3xx/compiler: handle sync flags better</li>
+ <li>freedreno: updates for msm drm/kms driver</li>
+</ul>
+
+<p>Tapani Pälli (1):</p>
+<ul>
+ <li>mesa: enable GL_TEXTURE_LOD_BIAS set/get</li>
+</ul>
+
+</div>
+</body>
+</html>
diff --git a/mesalib/src/gallium/auxiliary/util/u_dump.h b/mesalib/src/gallium/auxiliary/util/u_dump.h
index 71750a635..58e7dfd82 100644
--- a/mesalib/src/gallium/auxiliary/util/u_dump.h
+++ b/mesalib/src/gallium/auxiliary/util/u_dump.h
@@ -85,6 +85,9 @@ util_dump_tex_mipfilter(unsigned value, boolean shortened);
const char *
util_dump_tex_filter(unsigned value, boolean shortened);
+const char *
+util_dump_query_type(unsigned value, boolean shortened);
+
/*
* p_state.h, through a FILE
diff --git a/mesalib/src/gallium/auxiliary/util/u_dump_defines.c b/mesalib/src/gallium/auxiliary/util/u_dump_defines.c
index cc6268773..03fd15d0c 100644
--- a/mesalib/src/gallium/auxiliary/util/u_dump_defines.c
+++ b/mesalib/src/gallium/auxiliary/util/u_dump_defines.c
@@ -359,3 +359,36 @@ util_dump_tex_filter_short_names[] = {
};
DEFINE_UTIL_DUMP_CONTINUOUS(tex_filter)
+
+
+static const char *
+util_dump_query_type_names[] = {
+ "PIPE_QUERY_OCCLUSION_COUNTER",
+ "PIPE_QUERY_OCCLUSION_PREDICATE",
+ "PIPE_QUERY_TIMESTAMP",
+ "PIPE_QUERY_TIMESTAMP_DISJOINT",
+ "PIPE_QUERY_TIME_ELAPSED",
+ "PIPE_QUERY_PRIMITIVES_GENERATED",
+ "PIPE_QUERY_PRIMITIVES_EMITTED",
+ "PIPE_QUERY_SO_STATISTICS",
+ "PIPE_QUERY_SO_OVERFLOW_PREDICATE",
+ "PIPE_QUERY_GPU_FINISHED",
+ "PIPE_QUERY_PIPELINE_STATISTICS",
+};
+
+static const char *
+util_dump_query_type_short_names[] = {
+ "occlusion_counter",
+ "occlusion_predicate",
+ "timestamp",
+ "timestamp_disjoint",
+ "time_elapsed",
+ "primitives_generated",
+ "primitives_emitted",
+ "so_statistics",
+ "so_overflow_predicate",
+ "gpu_finished",
+ "pipeline_statistics",
+};
+
+DEFINE_UTIL_DUMP_CONTINUOUS(query_type)
diff --git a/mesalib/src/glsl/Makefile.am b/mesalib/src/glsl/Makefile.am
index b9ed5b62b..27e180e0a 100644
--- a/mesalib/src/glsl/Makefile.am
+++ b/mesalib/src/glsl/Makefile.am
@@ -111,7 +111,9 @@ libglcpp_la_SOURCES = \
glcpp_glcpp_SOURCES = \
glcpp/glcpp.c \
$(top_srcdir)/src/mesa/program/prog_hash_table.c
-glcpp_glcpp_LDADD = libglcpp.la
+glcpp_glcpp_LDADD = \
+ libglcpp.la \
+ -lm
libglsl_la_LIBADD = libglcpp.la
libglsl_la_SOURCES = \
diff --git a/mesalib/src/glsl/glsl_parser_extras.cpp b/mesalib/src/glsl/glsl_parser_extras.cpp
index f401f03bc..d76d94b7a 100644
--- a/mesalib/src/glsl/glsl_parser_extras.cpp
+++ b/mesalib/src/glsl/glsl_parser_extras.cpp
@@ -191,6 +191,8 @@ _mesa_glsl_parse_state::_mesa_glsl_parse_state(struct gl_context *_ctx,
this->gs_input_prim_type = GL_POINTS;
this->gs_input_size = 0;
this->out_qualifier = new(this) ast_type_qualifier();
+ memset(this->atomic_counter_offsets, 0,
+ sizeof(this->atomic_counter_offsets));
}
/**
diff --git a/mesalib/src/glsl/linker.cpp b/mesalib/src/glsl/linker.cpp
index fac186a63..1366077f7 100644
--- a/mesalib/src/glsl/linker.cpp
+++ b/mesalib/src/glsl/linker.cpp
@@ -2396,6 +2396,11 @@ done:
if (prog->_LinkedShaders[i] == NULL)
continue;
+ /* Do a final validation step to make sure that the IR wasn't
+ * invalidated by any modifications performed after intrastage linking.
+ */
+ validate_ir_tree(prog->_LinkedShaders[i]->ir);
+
/* Retain any live IR, but trash the rest. */
reparent_ir(prog->_LinkedShaders[i]->ir, prog->_LinkedShaders[i]->ir);
diff --git a/mesalib/src/glsl/lower_clip_distance.cpp b/mesalib/src/glsl/lower_clip_distance.cpp
index 682c8fdcd..04fa6d410 100644
--- a/mesalib/src/glsl/lower_clip_distance.cpp
+++ b/mesalib/src/glsl/lower_clip_distance.cpp
@@ -381,6 +381,11 @@ lower_clip_distance_visitor::fix_lhs(ir_assignment *ir)
ir_visitor_status
lower_clip_distance_visitor::visit_leave(ir_assignment *ir)
{
+ /* First invoke the base class visitor. This causes handle_rvalue() to be
+ * called on ir->rhs and ir->condition.
+ */
+ ir_rvalue_visitor::visit_leave(ir);
+
if (this->is_clip_distance_vec8(ir->lhs) ||
this->is_clip_distance_vec8(ir->rhs)) {
/* LHS or RHS of the assignment is the entire 1D gl_ClipDistance array
diff --git a/mesalib/src/mesa/drivers/dri/common/dri_util.c b/mesalib/src/mesa/drivers/dri/common/dri_util.c
index 6ca75f41d..379935015 100644
--- a/mesalib/src/mesa/drivers/dri/common/dri_util.c
+++ b/mesalib/src/mesa/drivers/dri/common/dri_util.c
@@ -411,8 +411,10 @@ driCreateContextAttribs(__DRIscreen *screen, int api,
mesa_api = API_OPENGL_CORE;
}
- if ((flags & ~(__DRI_CTX_FLAG_DEBUG | __DRI_CTX_FLAG_FORWARD_COMPATIBLE))
- != 0) {
+ const uint32_t allowed_flags = (__DRI_CTX_FLAG_DEBUG
+ | __DRI_CTX_FLAG_FORWARD_COMPATIBLE
+ | __DRI_CTX_FLAG_ROBUST_BUFFER_ACCESS);
+ if (flags & ~allowed_flags) {
*error = __DRI_CTX_ERROR_UNKNOWN_FLAG;
return NULL;
}
diff --git a/xorg-server/configure.ac b/xorg-server/configure.ac
index 6c4a609d7..6197e9bed 100644
--- a/xorg-server/configure.ac
+++ b/xorg-server/configure.ac
@@ -1809,24 +1809,30 @@ if test "x$XORG" = xyes; then
AC_MSG_CHECKING([whether to build Xorg PCI functions])
if test "x$PCI" = xyes; then
-
- PKG_CHECK_MODULES([PCIACCESS], $LIBPCIACCESS)
- SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $LIBPCIACCESS"
- XORG_SYS_LIBS="$XORG_SYS_LIBS $PCIACCESS_LIBS $GLX_SYS_LIBS $LIBDRM_LIBS"
- XORG_CFLAGS="$XORG_CFLAGS $PCIACCESS_CFLAGS $LIBDRM_CFLAGS"
-
- AC_DEFINE(XSERVER_LIBPCIACCESS, 1, [Use libpciaccess for all pci manipulation])
- AC_DEFINE_DIR(PCI_TXT_IDS_PATH, PCI_TXT_IDS_DIR, [Default PCI text file ID path])
- case $host_os in
- gnu* | freebsd* | kfreebsd*-gnu | netbsd* | openbsd* | solaris* | dragonfly*)
- xorg_bus_bsdpci="yes"
- ;;
- esac
- case $host_cpu in
- sparc*)
- xorg_bus_sparc="yes"
- ;;
- esac
+ PKG_CHECK_MODULES([PCIACCESS], $LIBPCIACCESS)
+ SDK_REQUIRED_MODULES="$SDK_REQUIRED_MODULES $LIBPCIACCESS"
+ XORG_SYS_LIBS="$XORG_SYS_LIBS $PCIACCESS_LIBS $GLX_SYS_LIBS $LIBDRM_LIBS"
+ XORG_CFLAGS="$XORG_CFLAGS $PCIACCESS_CFLAGS $LIBDRM_CFLAGS"
+
+ AC_DEFINE(XSERVER_LIBPCIACCESS, 1, [Use libpciaccess for all pci manipulation])
+ AC_DEFINE_DIR(PCI_TXT_IDS_PATH, PCI_TXT_IDS_DIR, [Default PCI text file ID path])
+ case $host_os in
+ gnu* | freebsd* | kfreebsd*-gnu | netbsd* | openbsd* | solaris* | dragonfly*)
+ xorg_bus_bsdpci="yes"
+ ;;
+ esac
+ case $host_cpu in
+ sparc*)
+ xorg_bus_sparc="yes"
+ ;;
+ esac
+ else
+ if test "x$CONFIG_UDEV_KMS" = xyes; then
+ AC_MSG_ERROR([Platform device enumeration requires libpciaccess])
+ fi
+ if test "x$INT10" != xstub; then
+ AC_MSG_ERROR([Cannot build int10 without libpciaccess])
+ fi
fi
AC_MSG_RESULT([$PCI])
diff --git a/xorg-server/hw/dmx/dmxinit.c b/xorg-server/hw/dmx/dmxinit.c
index c1e97e0cf..3fd439300 100644
--- a/xorg-server/hw/dmx/dmxinit.c
+++ b/xorg-server/hw/dmx/dmxinit.c
@@ -612,6 +612,8 @@ InitOutput(ScreenInfo * pScreenInfo, int argc, char *argv[])
#ifdef GLXEXT
static Bool glxSupported = TRUE;
+#else
+ const Bool glxSupported = FALSE;
#endif
if (dmxGeneration != serverGeneration) {
@@ -740,10 +742,10 @@ InitOutput(ScreenInfo * pScreenInfo, int argc, char *argv[])
/* Check if GLX extension exists on all back-end servers */
for (i = 0; i < dmxNumScreens; i++)
glxSupported &= (dmxScreens[i].glxMajorOpcode > 0);
+#endif
if (serverGeneration == 1)
dmxAddExtensions(glxSupported);
-#endif
/* Tell dix layer about the backend displays */
for (i = 0; i < dmxNumScreens; i++) {