summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Gray <jsg@cvs.openbsd.org>2015-11-22 02:45:39 +0000
committerJonathan Gray <jsg@cvs.openbsd.org>2015-11-22 02:45:39 +0000
commit42d8b8893d9cd37ddef4d5e4fa021d4ab73d2cb9 (patch)
treeb788f5dbc04d447d997d5746d998defb8a5c0901
parentdbf119da45f30562a0e28f22b13acb6df7a5f530 (diff)
import Mesa 11.0.6
-rw-r--r--lib/mesa/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c2
-rw-r--r--lib/mesa/src/gallium/auxiliary/pipe-loader/Makefile.sources3
-rw-r--r--lib/mesa/src/gallium/auxiliary/util/u_debug_describe.c35
-rw-r--r--lib/mesa/src/gallium/auxiliary/util/u_debug_refcnt.h14
-rw-r--r--lib/mesa/src/gallium/auxiliary/util/u_fifo.h2
-rw-r--r--lib/mesa/src/gallium/auxiliary/util/u_hash_table.c276
-rw-r--r--lib/mesa/src/gallium/auxiliary/util/u_hash_table.h41
-rw-r--r--lib/mesa/src/gallium/drivers/llvmpipe/Makefile.sources5
-rw-r--r--lib/mesa/src/gallium/drivers/nouveau/Makefile.sources46
-rw-r--r--lib/mesa/src/gallium/drivers/softpipe/Makefile.sources6
-rw-r--r--lib/mesa/src/gallium/winsys/amdgpu/drm/Makefile.sources20
-rw-r--r--lib/mesa/src/gallium/winsys/radeon/drm/Makefile.sources4
-rw-r--r--lib/mesa/src/gallium/winsys/svga/drm/Makefile.sources6
-rw-r--r--lib/mesa/src/mesa/drivers/dri/common/Makefile.sources10
14 files changed, 313 insertions, 157 deletions
diff --git a/lib/mesa/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c b/lib/mesa/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c
index c7b224a88..b6966a52e 100644
--- a/lib/mesa/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c
+++ b/lib/mesa/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c
@@ -376,7 +376,7 @@ static void fetch_emit_destroy( struct draw_pt_middle_end *middle )
struct draw_pt_middle_end *draw_pt_fetch_emit( struct draw_context *draw )
{
struct fetch_emit_middle_end *fetch_emit = CALLOC_STRUCT( fetch_emit_middle_end );
- if (!fetch_emit)
+ if (fetch_emit == NULL)
return NULL;
fetch_emit->cache = translate_cache_create();
diff --git a/lib/mesa/src/gallium/auxiliary/pipe-loader/Makefile.sources b/lib/mesa/src/gallium/auxiliary/pipe-loader/Makefile.sources
index 66dd22ccc..d6e3c2c06 100644
--- a/lib/mesa/src/gallium/auxiliary/pipe-loader/Makefile.sources
+++ b/lib/mesa/src/gallium/auxiliary/pipe-loader/Makefile.sources
@@ -2,8 +2,7 @@ COMMON_SOURCES := \
pipe_loader.c \
pipe_loader.h \
pipe_loader_priv.h \
- pipe_loader_sw.c \
- driinfo_gallium.h
+ pipe_loader_sw.c
DRM_SOURCES := \
pipe_loader_drm.c
diff --git a/lib/mesa/src/gallium/auxiliary/util/u_debug_describe.c b/lib/mesa/src/gallium/auxiliary/util/u_debug_describe.c
index 8bfd970a5..f428d22d2 100644
--- a/lib/mesa/src/gallium/auxiliary/util/u_debug_describe.c
+++ b/lib/mesa/src/gallium/auxiliary/util/u_debug_describe.c
@@ -25,12 +25,12 @@
**************************************************************************/
#include "pipe/p_state.h"
-#include "util/format/u_format.h"
+#include "util/u_format.h"
#include "util/u_debug_describe.h"
#include "util/u_string.h"
void
-debug_describe_reference(char* buf, UNUSED const struct pipe_reference*ptr)
+debug_describe_reference(char* buf, const struct pipe_reference*ptr)
{
strcpy(buf, "pipe_object");
}
@@ -41,34 +41,25 @@ debug_describe_resource(char* buf, const struct pipe_resource *ptr)
switch(ptr->target)
{
case PIPE_BUFFER:
- sprintf(buf, "pipe_buffer<%u>", (unsigned)util_format_get_stride(ptr->format, ptr->width0));
+ util_sprintf(buf, "pipe_buffer<%u>", (unsigned)util_format_get_stride(ptr->format, ptr->width0));
break;
case PIPE_TEXTURE_1D:
- sprintf(buf, "pipe_texture1d<%u,%s,%u>", ptr->width0, util_format_short_name(ptr->format), ptr->last_level);
+ util_sprintf(buf, "pipe_texture1d<%u,%s,%u>", ptr->width0, util_format_short_name(ptr->format), ptr->last_level);
break;
case PIPE_TEXTURE_2D:
- sprintf(buf, "pipe_texture2d<%u,%u,%s,%u>", ptr->width0, ptr->height0, util_format_short_name(ptr->format), ptr->last_level);
+ util_sprintf(buf, "pipe_texture2d<%u,%u,%s,%u>", ptr->width0, ptr->height0, util_format_short_name(ptr->format), ptr->last_level);
break;
case PIPE_TEXTURE_RECT:
- sprintf(buf, "pipe_texture_rect<%u,%u,%s>", ptr->width0, ptr->height0, util_format_short_name(ptr->format));
+ util_sprintf(buf, "pipe_texture_rect<%u,%u,%s>", ptr->width0, ptr->height0, util_format_short_name(ptr->format));
break;
case PIPE_TEXTURE_CUBE:
- sprintf(buf, "pipe_texture_cube<%u,%u,%s,%u>", ptr->width0, ptr->height0, util_format_short_name(ptr->format), ptr->last_level);
+ util_sprintf(buf, "pipe_texture_cube<%u,%u,%s,%u>", ptr->width0, ptr->height0, util_format_short_name(ptr->format), ptr->last_level);
break;
case PIPE_TEXTURE_3D:
- sprintf(buf, "pipe_texture3d<%u,%u,%u,%s,%u>", ptr->width0, ptr->height0, ptr->depth0, util_format_short_name(ptr->format), ptr->last_level);
- break;
- case PIPE_TEXTURE_1D_ARRAY:
- sprintf(buf, "pipe_texture_1darray<%u,%u,%s,%u>", ptr->width0, ptr->array_size, util_format_short_name(ptr->format), ptr->last_level);
- break;
- case PIPE_TEXTURE_2D_ARRAY:
- sprintf(buf, "pipe_texture_2darray<%u,%u,%u,%s,%u>", ptr->width0, ptr->height0, ptr->array_size, util_format_short_name(ptr->format), ptr->last_level);
- break;
- case PIPE_TEXTURE_CUBE_ARRAY:
- sprintf(buf, "pipe_texture_cubearray<%u,%u,%u,%s,%u>", ptr->width0, ptr->height0, ptr->array_size, util_format_short_name(ptr->format), ptr->last_level);
+ util_sprintf(buf, "pipe_texture3d<%u,%u,%u,%s,%u>", ptr->width0, ptr->height0, ptr->depth0, util_format_short_name(ptr->format), ptr->last_level);
break;
default:
- sprintf(buf, "pipe_martian_resource<%u>", ptr->target);
+ util_sprintf(buf, "pipe_martian_resource<%u>", ptr->target);
break;
}
}
@@ -78,7 +69,7 @@ debug_describe_surface(char* buf, const struct pipe_surface *ptr)
{
char res[128];
debug_describe_resource(res, ptr->texture);
- sprintf(buf, "pipe_surface<%s,%u,%u,%u>", res, ptr->u.tex.level, ptr->u.tex.first_layer, ptr->u.tex.last_layer);
+ util_sprintf(buf, "pipe_surface<%s,%u,%u,%u>", res, ptr->u.tex.level, ptr->u.tex.first_layer, ptr->u.tex.last_layer);
}
void
@@ -86,7 +77,7 @@ debug_describe_sampler_view(char* buf, const struct pipe_sampler_view *ptr)
{
char res[128];
debug_describe_resource(res, ptr->texture);
- sprintf(buf, "pipe_sampler_view<%s,%s>", res, util_format_short_name(ptr->format));
+ util_sprintf(buf, "pipe_sampler_view<%s,%s>", res, util_format_short_name(ptr->format));
}
void
@@ -94,7 +85,7 @@ debug_describe_image_view(char* buf, const struct pipe_image_view *ptr)
{
char res[128];
debug_describe_resource(res, ptr->resource);
- sprintf(buf, "pipe_image_view<%s,%s>", res,
+ util_sprintf(buf, "pipe_image_view<%s,%s>", res,
util_format_short_name(ptr->format));
}
@@ -104,6 +95,6 @@ debug_describe_so_target(char* buf,
{
char res[128];
debug_describe_resource(res, ptr->buffer);
- sprintf(buf, "pipe_stream_output_target<%s,%u,%u>", res,
+ util_sprintf(buf, "pipe_stream_output_target<%s,%u,%u>", res,
ptr->buffer_offset, ptr->buffer_size);
}
diff --git a/lib/mesa/src/gallium/auxiliary/util/u_debug_refcnt.h b/lib/mesa/src/gallium/auxiliary/util/u_debug_refcnt.h
index 78f690b02..1f9218fec 100644
--- a/lib/mesa/src/gallium/auxiliary/util/u_debug_refcnt.h
+++ b/lib/mesa/src/gallium/auxiliary/util/u_debug_refcnt.h
@@ -36,17 +36,13 @@ extern "C" {
typedef void (*debug_reference_descriptor)(char*, const struct pipe_reference*);
-#if defined(DEBUG)
+#if defined(DEBUG) && (!defined(PIPE_OS_WINDOWS) || defined(PIPE_SUBSYSTEM_WINDOWS_USER))
extern int debug_refcnt_state;
-void
-debug_reference_slowpath(const struct pipe_reference* p,
- debug_reference_descriptor get_desc, int change);
+void debug_reference_slowpath(const struct pipe_reference* p, debug_reference_descriptor get_desc, int change);
-static inline void
-debug_reference(const struct pipe_reference* p,
- debug_reference_descriptor get_desc, int change)
+static inline void debug_reference(const struct pipe_reference* p, debug_reference_descriptor get_desc, int change)
{
if (debug_refcnt_state >= 0)
debug_reference_slowpath(p, get_desc, change);
@@ -54,9 +50,7 @@ debug_reference(const struct pipe_reference* p,
#else
-static inline void
-debug_reference(UNUSED const struct pipe_reference* p,
- UNUSED debug_reference_descriptor get_desc, UNUSED int change)
+static inline void debug_reference(const struct pipe_reference* p, debug_reference_descriptor get_desc, int change)
{
}
diff --git a/lib/mesa/src/gallium/auxiliary/util/u_fifo.h b/lib/mesa/src/gallium/auxiliary/util/u_fifo.h
index b53a3ddd5..a7aad6179 100644
--- a/lib/mesa/src/gallium/auxiliary/util/u_fifo.h
+++ b/lib/mesa/src/gallium/auxiliary/util/u_fifo.h
@@ -80,7 +80,7 @@ u_fifo_pop(struct util_fifo *fifo, void **ptr)
*ptr = array[fifo->tail];
- --fifo->num;
+ ++fifo->num;
return TRUE;
}
diff --git a/lib/mesa/src/gallium/auxiliary/util/u_hash_table.c b/lib/mesa/src/gallium/auxiliary/util/u_hash_table.c
index 9182da558..a505fbc4d 100644
--- a/lib/mesa/src/gallium/auxiliary/util/u_hash_table.c
+++ b/lib/mesa/src/gallium/auxiliary/util/u_hash_table.c
@@ -25,97 +25,269 @@
*
**************************************************************************/
+/**
+ * @file
+ * General purpose hash table implementation.
+ *
+ * Just uses the cso_hash for now, but it might be better switch to a linear
+ * probing hash table implementation at some point -- as it is said they have
+ * better lookup and cache performance and it appears to be possible to write
+ * a lock-free implementation of such hash tables .
+ *
+ * @author José Fonseca <jfonseca@vmware.com>
+ */
-#include "util/u_pointer.h"
+
+#include "pipe/p_compiler.h"
+#include "util/u_debug.h"
+
+#include "cso_cache/cso_hash.h"
+
+#include "util/u_memory.h"
#include "util/u_hash_table.h"
-#if DETECT_OS_UNIX
-#include <sys/stat.h>
-#endif
+
+struct util_hash_table
+{
+ struct cso_hash *cso;
+
+ /** Hash function */
+ unsigned (*hash)(void *key);
+
+ /** Compare two keys */
+ int (*compare)(void *key1, void *key2);
+
+ /* TODO: key, value destructors? */
+};
+
+
+struct util_hash_table_item
+{
+ void *key;
+ void *value;
+};
+
+
+static inline struct util_hash_table_item *
+util_hash_table_item(struct cso_hash_iter iter)
+{
+ return (struct util_hash_table_item *)cso_hash_iter_data(iter);
+}
-static uint32_t
-pointer_hash(const void *key)
+struct util_hash_table *
+util_hash_table_create(unsigned (*hash)(void *key),
+ int (*compare)(void *key1, void *key2))
{
- return _mesa_hash_pointer(key);
+ struct util_hash_table *ht;
+
+ ht = MALLOC_STRUCT(util_hash_table);
+ if(!ht)
+ return NULL;
+
+ ht->cso = cso_hash_create();
+ if(!ht->cso) {
+ FREE(ht);
+ return NULL;
+ }
+
+ ht->hash = hash;
+ ht->compare = compare;
+
+ return ht;
}
-static bool
-pointer_equal(const void *a, const void *b)
+static inline struct cso_hash_iter
+util_hash_table_find_iter(struct util_hash_table *ht,
+ void *key,
+ unsigned key_hash)
{
- return a == b;
+ struct cso_hash_iter iter;
+ struct util_hash_table_item *item;
+
+ iter = cso_hash_find(ht->cso, key_hash);
+ while (!cso_hash_iter_is_null(iter)) {
+ item = (struct util_hash_table_item *)cso_hash_iter_data(iter);
+ if (!ht->compare(item->key, key))
+ break;
+ iter = cso_hash_iter_next(iter);
+ }
+
+ return iter;
}
-struct hash_table *
-util_hash_table_create_ptr_keys(void)
+static inline struct util_hash_table_item *
+util_hash_table_find_item(struct util_hash_table *ht,
+ void *key,
+ unsigned key_hash)
{
- return _mesa_hash_table_create(NULL, pointer_hash, pointer_equal);
+ struct cso_hash_iter iter;
+ struct util_hash_table_item *item;
+
+ iter = cso_hash_find(ht->cso, key_hash);
+ while (!cso_hash_iter_is_null(iter)) {
+ item = (struct util_hash_table_item *)cso_hash_iter_data(iter);
+ if (!ht->compare(item->key, key))
+ return item;
+ iter = cso_hash_iter_next(iter);
+ }
+
+ return NULL;
}
-static uint32_t hash_fd(const void *key)
+enum pipe_error
+util_hash_table_set(struct util_hash_table *ht,
+ void *key,
+ void *value)
{
-#if DETECT_OS_UNIX
- int fd = pointer_to_intptr(key);
- struct stat stat;
+ unsigned key_hash;
+ struct util_hash_table_item *item;
+ struct cso_hash_iter iter;
+
+ assert(ht);
+ if (!ht)
+ return PIPE_ERROR_BAD_INPUT;
- fstat(fd, &stat);
+ key_hash = ht->hash(key);
- return stat.st_dev ^ stat.st_ino ^ stat.st_rdev;
-#else
- return 0;
-#endif
+ item = util_hash_table_find_item(ht, key, key_hash);
+ if(item) {
+ /* TODO: key/value destruction? */
+ item->value = value;
+ return PIPE_OK;
+ }
+
+ item = MALLOC_STRUCT(util_hash_table_item);
+ if(!item)
+ return PIPE_ERROR_OUT_OF_MEMORY;
+
+ item->key = key;
+ item->value = value;
+
+ iter = cso_hash_insert(ht->cso, key_hash, item);
+ if(cso_hash_iter_is_null(iter)) {
+ FREE(item);
+ return PIPE_ERROR_OUT_OF_MEMORY;
+ }
+
+ return PIPE_OK;
}
-static bool equal_fd(const void *key1, const void *key2)
+void *
+util_hash_table_get(struct util_hash_table *ht,
+ void *key)
{
-#if DETECT_OS_UNIX
- int fd1 = pointer_to_intptr(key1);
- int fd2 = pointer_to_intptr(key2);
- struct stat stat1, stat2;
-
- fstat(fd1, &stat1);
- fstat(fd2, &stat2);
-
- return stat1.st_dev == stat2.st_dev &&
- stat1.st_ino == stat2.st_ino &&
- stat1.st_rdev == stat2.st_rdev;
-#else
- return 0;
-#endif
+ unsigned key_hash;
+ struct util_hash_table_item *item;
+
+ assert(ht);
+ if (!ht)
+ return NULL;
+
+ key_hash = ht->hash(key);
+
+ item = util_hash_table_find_item(ht, key, key_hash);
+ if(!item)
+ return NULL;
+
+ return item->value;
}
-struct hash_table *
-util_hash_table_create_fd_keys(void)
+void
+util_hash_table_remove(struct util_hash_table *ht,
+ void *key)
{
- return _mesa_hash_table_create(NULL, hash_fd, equal_fd);
+ unsigned key_hash;
+ struct cso_hash_iter iter;
+ struct util_hash_table_item *item;
+
+ assert(ht);
+ if (!ht)
+ return;
+
+ key_hash = ht->hash(key);
+
+ iter = util_hash_table_find_iter(ht, key, key_hash);
+ if(cso_hash_iter_is_null(iter))
+ return;
+
+ item = util_hash_table_item(iter);
+ assert(item);
+ FREE(item);
+
+ cso_hash_erase(ht->cso, iter);
}
-void *
-util_hash_table_get(struct hash_table *ht,
- void *key)
+void
+util_hash_table_clear(struct util_hash_table *ht)
{
- struct hash_entry *entry = _mesa_hash_table_search(ht, key);
+ struct cso_hash_iter iter;
+ struct util_hash_table_item *item;
- return entry ? entry->data : NULL;
+ assert(ht);
+ if (!ht)
+ return;
+
+ iter = cso_hash_first_node(ht->cso);
+ while (!cso_hash_iter_is_null(iter)) {
+ item = (struct util_hash_table_item *)cso_hash_take(ht->cso, cso_hash_iter_key(iter));
+ FREE(item);
+ iter = cso_hash_first_node(ht->cso);
+ }
}
enum pipe_error
-util_hash_table_foreach(struct hash_table *ht,
- enum pipe_error (*callback)
+util_hash_table_foreach(struct util_hash_table *ht,
+ enum pipe_error (*callback)
(void *key, void *value, void *data),
- void *data)
+ void *data)
{
- hash_table_foreach(ht, entry) {
- enum pipe_error error = callback((void*)entry->key, entry->data, data);
- if (error != PIPE_OK)
- return error;
+ struct cso_hash_iter iter;
+ struct util_hash_table_item *item;
+ enum pipe_error result;
+
+ assert(ht);
+ if (!ht)
+ return PIPE_ERROR_BAD_INPUT;
+
+ iter = cso_hash_first_node(ht->cso);
+ while (!cso_hash_iter_is_null(iter)) {
+ item = (struct util_hash_table_item *)cso_hash_iter_data(iter);
+ result = callback(item->key, item->value, data);
+ if(result != PIPE_OK)
+ return result;
+ iter = cso_hash_iter_next(iter);
}
+
return PIPE_OK;
}
+
+
+void
+util_hash_table_destroy(struct util_hash_table *ht)
+{
+ struct cso_hash_iter iter;
+ struct util_hash_table_item *item;
+
+ assert(ht);
+ if (!ht)
+ return;
+
+ iter = cso_hash_first_node(ht->cso);
+ while (!cso_hash_iter_is_null(iter)) {
+ item = (struct util_hash_table_item *)cso_hash_iter_data(iter);
+ FREE(item);
+ iter = cso_hash_iter_next(iter);
+ }
+
+ cso_hash_delete(ht->cso);
+
+ FREE(ht);
+}
diff --git a/lib/mesa/src/gallium/auxiliary/util/u_hash_table.h b/lib/mesa/src/gallium/auxiliary/util/u_hash_table.h
index 4be4cef30..943176134 100644
--- a/lib/mesa/src/gallium/auxiliary/util/u_hash_table.h
+++ b/lib/mesa/src/gallium/auxiliary/util/u_hash_table.h
@@ -27,6 +27,8 @@
/**
* General purpose hash table.
+ *
+ * @author José Fonseca <jfonseca@vmware.com>
*/
#ifndef U_HASH_TABLE_H_
@@ -34,38 +36,59 @@
#include "pipe/p_defines.h"
-#include "util/hash_table.h"
#ifdef __cplusplus
extern "C" {
#endif
+
/**
- * Create a hash table where the keys are generic pointers.
+ * Generic purpose hash table.
*/
-struct hash_table *
-util_hash_table_create_ptr_keys(void);
+struct util_hash_table;
/**
- * Create a hash table where the keys are device FDs.
+ * Create an hash table.
+ *
+ * @param hash hash function
+ * @param compare should return 0 for two equal keys.
*/
-struct hash_table *
-util_hash_table_create_fd_keys(void);
+struct util_hash_table *
+util_hash_table_create(unsigned (*hash)(void *key),
+ int (*compare)(void *key1, void *key2));
+enum pipe_error
+util_hash_table_set(struct util_hash_table *ht,
+ void *key,
+ void *value);
+
void *
-util_hash_table_get(struct hash_table *ht,
+util_hash_table_get(struct util_hash_table *ht,
void *key);
+void
+util_hash_table_remove(struct util_hash_table *ht,
+ void *key);
+
+
+void
+util_hash_table_clear(struct util_hash_table *ht);
+
+
enum pipe_error
-util_hash_table_foreach(struct hash_table *ht,
+util_hash_table_foreach(struct util_hash_table *ht,
enum pipe_error (*callback)
(void *key, void *value, void *data),
void *data);
+void
+util_hash_table_destroy(struct util_hash_table *ht);
+
+
#ifdef __cplusplus
}
#endif
diff --git a/lib/mesa/src/gallium/drivers/llvmpipe/Makefile.sources b/lib/mesa/src/gallium/drivers/llvmpipe/Makefile.sources
index 71579cd02..d928ccba4 100644
--- a/lib/mesa/src/gallium/drivers/llvmpipe/Makefile.sources
+++ b/lib/mesa/src/gallium/drivers/llvmpipe/Makefile.sources
@@ -13,8 +13,6 @@ C_SOURCES := \
lp_clear.h \
lp_context.c \
lp_context.h \
- lp_cs_tpool.c \
- lp_cs_tpool.h \
lp_debug.h \
lp_draw_arrays.c \
lp_fence.c \
@@ -53,8 +51,6 @@ C_SOURCES := \
lp_state_blend.c \
lp_state_clip.c \
lp_state_derived.c \
- lp_state_cs.c \
- lp_state_cs.h \
lp_state_fs.c \
lp_state_fs.h \
lp_state_gs.c \
@@ -65,7 +61,6 @@ C_SOURCES := \
lp_state_setup.h \
lp_state_so.c \
lp_state_surface.c \
- lp_state_tess.c \
lp_state_vertex.c \
lp_state_vs.c \
lp_surface.c \
diff --git a/lib/mesa/src/gallium/drivers/nouveau/Makefile.sources b/lib/mesa/src/gallium/drivers/nouveau/Makefile.sources
index 8b2ab3806..9346ea320 100644
--- a/lib/mesa/src/gallium/drivers/nouveau/Makefile.sources
+++ b/lib/mesa/src/gallium/drivers/nouveau/Makefile.sources
@@ -12,6 +12,7 @@ C_SOURCES := \
nouveau_mm.h \
nouveau_screen.c \
nouveau_screen.h \
+ nouveau_statebuf.h \
nouveau_video.c \
nouveau_video.h \
nouveau_vp3_video_bsp.c \
@@ -59,29 +60,19 @@ NV30_C_SOURCES := \
nv30/nvfx_vertprog.c
NV50_C_SOURCES := \
- nv50/g80_defs.xml.h \
- nv50/g80_texture.xml.h \
nv50/nv50_2d.xml.h \
nv50/nv50_3ddefs.xml.h \
nv50/nv50_3d.xml.h \
nv50/nv50_blit.h \
- nv50/nv50_compute.c \
- nv50/nv50_compute.xml.h \
nv50/nv50_context.c \
nv50/nv50_context.h \
+ nv50/nv50_defs.xml.h \
nv50/nv50_formats.c \
nv50/nv50_miptree.c \
nv50/nv50_program.c \
nv50/nv50_program.h \
nv50/nv50_push.c \
nv50/nv50_query.c \
- nv50/nv50_query.h \
- nv50/nv50_query_hw.c \
- nv50/nv50_query_hw.h \
- nv50/nv50_query_hw_metric.c \
- nv50/nv50_query_hw_metric.h \
- nv50/nv50_query_hw_sm.c \
- nv50/nv50_query_hw_sm.h \
nv50/nv50_resource.c \
nv50/nv50_resource.h \
nv50/nv50_screen.c \
@@ -93,6 +84,7 @@ NV50_C_SOURCES := \
nv50/nv50_state_validate.c \
nv50/nv50_surface.c \
nv50/nv50_tex.c \
+ nv50/nv50_texture.xml.h \
nv50/nv50_transfer.c \
nv50/nv50_transfer.h \
nv50/nv50_vbo.c \
@@ -114,21 +106,15 @@ NV50_CODEGEN_SOURCES := \
codegen/nv50_ir_build_util.h \
codegen/nv50_ir_driver.h \
codegen/nv50_ir_emit_nv50.cpp \
- codegen/nv50_ir_from_common.cpp \
- codegen/nv50_ir_from_common.h \
- codegen/nv50_ir_from_nir.cpp \
codegen/nv50_ir_from_tgsi.cpp \
codegen/nv50_ir_graph.cpp \
codegen/nv50_ir_graph.h \
codegen/nv50_ir.h \
codegen/nv50_ir_inlines.h \
- codegen/nv50_ir_lowering_helper.cpp \
- codegen/nv50_ir_lowering_helper.h \
codegen/nv50_ir_lowering_nv50.cpp \
codegen/nv50_ir_peephole.cpp \
codegen/nv50_ir_print.cpp \
codegen/nv50_ir_ra.cpp \
- codegen/nv50_ir_serialize.cpp \
codegen/nv50_ir_ssa.cpp \
codegen/nv50_ir_target.cpp \
codegen/nv50_ir_target.h \
@@ -141,34 +127,20 @@ NV50_CODEGEN_SOURCES := \
NVC0_CODEGEN_SOURCES := \
codegen/nv50_ir_emit_gk110.cpp \
codegen/nv50_ir_emit_gm107.cpp \
- codegen/nv50_ir_emit_gv100.cpp \
- codegen/nv50_ir_emit_gv100.h \
codegen/nv50_ir_emit_nvc0.cpp \
codegen/nv50_ir_lowering_gm107.cpp \
codegen/nv50_ir_lowering_gm107.h \
- codegen/nv50_ir_lowering_gv100.cpp \
- codegen/nv50_ir_lowering_gv100.h \
codegen/nv50_ir_lowering_nvc0.cpp \
codegen/nv50_ir_lowering_nvc0.h \
codegen/nv50_ir_target_gm107.cpp \
codegen/nv50_ir_target_gm107.h \
- codegen/nv50_ir_target_gv100.cpp \
- codegen/nv50_ir_target_gv100.h \
codegen/nv50_ir_target_nvc0.cpp \
codegen/nv50_ir_target_nvc0.h
NVC0_C_SOURCES := \
- nvc0/cla0c0qmd.h \
- nvc0/clc0c0qmd.h \
- nvc0/clc3c0qmd.h \
- nvc0/drf.h \
- nvc0/qmd.h \
- nvc0/qmda0c0.c \
- nvc0/qmdc0c0.c \
- nvc0/qmdc3c0.c \
- nvc0/gm107_texture.xml.h \
nvc0/nvc0_3d.xml.h \
nvc0/nvc0_compute.c \
+ nvc0/nvc0_compute.h \
nvc0/nvc0_compute.xml.h \
nvc0/nvc0_context.c \
nvc0/nvc0_context.h \
@@ -179,15 +151,6 @@ NVC0_C_SOURCES := \
nvc0/nvc0_program.c \
nvc0/nvc0_program.h \
nvc0/nvc0_query.c \
- nvc0/nvc0_query.h \
- nvc0/nvc0_query_hw.c \
- nvc0/nvc0_query_hw.h \
- nvc0/nvc0_query_hw_metric.c \
- nvc0/nvc0_query_hw_metric.h \
- nvc0/nvc0_query_hw_sm.c \
- nvc0/nvc0_query_hw_sm.h \
- nvc0/nvc0_query_sw.c \
- nvc0/nvc0_query_sw.h \
nvc0/nvc0_resource.c \
nvc0/nvc0_resource.h \
nvc0/nvc0_screen.c \
@@ -210,5 +173,4 @@ NVC0_C_SOURCES := \
nvc0/nve4_compute.c \
nvc0/nve4_compute.h \
nvc0/nve4_compute.xml.h \
- nvc0/nve4_copy.xml.h \
nvc0/nve4_p2mf.xml.h
diff --git a/lib/mesa/src/gallium/drivers/softpipe/Makefile.sources b/lib/mesa/src/gallium/drivers/softpipe/Makefile.sources
index e405ef27f..2af3d6af2 100644
--- a/lib/mesa/src/gallium/drivers/softpipe/Makefile.sources
+++ b/lib/mesa/src/gallium/drivers/softpipe/Makefile.sources
@@ -1,11 +1,8 @@
C_SOURCES := \
- sp_buffer.c \
- sp_buffer.h \
sp_clear.c \
sp_clear.h \
sp_context.c \
sp_context.h \
- sp_compute.c \
sp_draw_arrays.c \
sp_fence.c \
sp_fence.h \
@@ -13,8 +10,6 @@ C_SOURCES := \
sp_flush.h \
sp_fs_exec.c \
sp_fs.h \
- sp_image.c \
- sp_image.h \
sp_limits.h \
sp_prim_vbuf.c \
sp_prim_vbuf.h \
@@ -36,7 +31,6 @@ C_SOURCES := \
sp_state_blend.c \
sp_state_clip.c \
sp_state_derived.c \
- sp_state_image.c \
sp_state.h \
sp_state_rasterizer.c \
sp_state_sampler.c \
diff --git a/lib/mesa/src/gallium/winsys/amdgpu/drm/Makefile.sources b/lib/mesa/src/gallium/winsys/amdgpu/drm/Makefile.sources
index cb2f01f16..23630044a 100644
--- a/lib/mesa/src/gallium/winsys/amdgpu/drm/Makefile.sources
+++ b/lib/mesa/src/gallium/winsys/amdgpu/drm/Makefile.sources
@@ -1,8 +1,28 @@
C_SOURCES := \
+ addrlib/addrinterface.cpp \
+ addrlib/addrinterface.h \
+ addrlib/addrtypes.h \
+ addrlib/core/addrcommon.h \
+ addrlib/core/addrelemlib.cpp \
+ addrlib/core/addrelemlib.h \
+ addrlib/core/addrlib.cpp \
+ addrlib/core/addrlib.h \
+ addrlib/core/addrobject.cpp \
+ addrlib/core/addrobject.h \
+ addrlib/inc/chip/r800/si_gb_reg.h \
+ addrlib/inc/lnx_common_defs.h \
+ addrlib/r800/chip/si_ci_vi_merged_enum.h \
+ addrlib/r800/ciaddrlib.cpp \
+ addrlib/r800/ciaddrlib.h \
+ addrlib/r800/egbaddrlib.cpp \
+ addrlib/r800/egbaddrlib.h \
+ addrlib/r800/siaddrlib.cpp \
+ addrlib/r800/siaddrlib.h \
amdgpu_bo.c \
amdgpu_bo.h \
amdgpu_cs.c \
amdgpu_cs.h \
+ amdgpu_id.h \
amdgpu_public.h \
amdgpu_surface.c \
amdgpu_winsys.c \
diff --git a/lib/mesa/src/gallium/winsys/radeon/drm/Makefile.sources b/lib/mesa/src/gallium/winsys/radeon/drm/Makefile.sources
index 2762c91e2..a00c84d35 100644
--- a/lib/mesa/src/gallium/winsys/radeon/drm/Makefile.sources
+++ b/lib/mesa/src/gallium/winsys/radeon/drm/Makefile.sources
@@ -2,8 +2,12 @@ C_SOURCES := \
radeon_drm_bo.c \
radeon_drm_bo.h \
radeon_drm_cs.c \
+ radeon_drm_cs_dump.c \
radeon_drm_cs.h \
radeon_drm_public.h \
radeon_drm_surface.c \
radeon_drm_winsys.c \
radeon_drm_winsys.h
+
+TOOLS_HDR := \
+ radeon_ctx.h
diff --git a/lib/mesa/src/gallium/winsys/svga/drm/Makefile.sources b/lib/mesa/src/gallium/winsys/svga/drm/Makefile.sources
index 191f0b88b..ab2b9321f 100644
--- a/lib/mesa/src/gallium/winsys/svga/drm/Makefile.sources
+++ b/lib/mesa/src/gallium/winsys/svga/drm/Makefile.sources
@@ -8,8 +8,6 @@ C_SOURCES := \
vmw_fence.c \
vmw_fence.h \
vmwgfx_drm.h \
- vmw_msg.c \
- vmw_msg.h \
vmw_screen.c \
vmw_screen_dri.c \
vmw_screen.h \
@@ -19,6 +17,4 @@ C_SOURCES := \
vmw_surface.c \
vmw_surface.h \
vmw_shader.c \
- vmw_shader.h \
- vmw_query.c \
- vmw_query.h
+ vmw_shader.h
diff --git a/lib/mesa/src/mesa/drivers/dri/common/Makefile.sources b/lib/mesa/src/mesa/drivers/dri/common/Makefile.sources
index d592e99b8..d5d8da8fc 100644
--- a/lib/mesa/src/mesa/drivers/dri/common/Makefile.sources
+++ b/lib/mesa/src/mesa/drivers/dri/common/Makefile.sources
@@ -4,6 +4,10 @@ DRI_COMMON_FILES := \
dri_util.c \
dri_util.h
+XMLCONFIG_FILES := \
+ xmlconfig.c \
+ xmlconfig.h
+
# Paths are relative to MESA_TOP.
mesa_dri_common_INCLUDES := \
include \
@@ -11,8 +15,10 @@ mesa_dri_common_INCLUDES := \
src/egl/main \
src/mapi \
src/mesa \
- src/mesa/drivers/dri/common \
- src/util
+ src/mesa/drivers/dri/common
+
+test_stubs_FILES := \
+ dri_test.c
megadriver_stub_FILES := \
megadriver_stub.c