Module Name: xsrc
Committed By: joerg
Date: Fri Jan 23 12:09:27 UTC 2015
Modified Files:
xsrc/external/mit/MesaLib/dist/src/mapi: entry_x86-64_tls.h
entry_x86_tls.h entry_x86_tsd.h
Log Message:
Don't declare zero sized static objects, which is invalid in C.
Inline assembler is used to populate them, which is a horrible hack.
Make the hack work with clang by declaring the objects as hidden
instead.
To generate a diff of this commit:
cvs rdiff -u -r1.1.1.1 -r1.2 \
xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86-64_tls.h
cvs rdiff -u -r1.2 -r1.3 \
xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86_tls.h \
xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86_tsd.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86-64_tls.h
diff -u xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86-64_tls.h:1.1.1.1 xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86-64_tls.h:1.2
--- xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86-64_tls.h:1.1.1.1 Thu Dec 18 06:02:08 2014
+++ xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86-64_tls.h Fri Jan 23 12:09:27 2015
@@ -62,8 +62,7 @@ entry_patch_public(void)
{
}
-static char
-x86_64_entry_start[];
+extern char x86_64_entry_start[] __attribute__((__visibility__("hidden")));
mapi_func
entry_get_public(int slot)
Index: xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86_tls.h
diff -u xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86_tls.h:1.2 xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86_tls.h:1.3
--- xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86_tls.h:1.2 Mon Jan 5 02:46:04 2015
+++ xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86_tls.h Fri Jan 23 12:09:27 2015
@@ -79,8 +79,8 @@ __asm__(".text");
extern unsigned long
x86_current_tls();
-static char x86_entry_start[];
-static char x86_entry_end[];
+extern char x86_entry_start[] __attribute__((__visibility__("hidden")));
+extern char x86_entry_end[] __attribute__((__visibility__("hidden")));
void
entry_patch_public(void)
Index: xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86_tsd.h
diff -u xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86_tsd.h:1.2 xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86_tsd.h:1.3
--- xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86_tsd.h:1.2 Mon Jan 5 02:46:04 2015
+++ xsrc/external/mit/MesaLib/dist/src/mapi/entry_x86_tsd.h Fri Jan 23 12:09:27 2015
@@ -70,8 +70,8 @@ __asm__(".balign 32\n"
#include <string.h>
#include "u_execmem.h"
-static const char x86_entry_start[];
-static const char x86_entry_end[];
+extern const char x86_entry_start[] __attribute__((__visibility__("hidden")));
+extern const char x86_entry_end[] __attribute__((__visibility__("hidden")));
void
entry_patch_public(void)