[Mesa-dev] [PATCH 4/4] glapi: Regenerate x86 and x86-64 dispatch assembly

christopher.halse.rogers at canonical.com christopher.halse.rogers at canonical.com
Wed Mar 23 16:33:39 PDT 2011


From: Christopher James Halse Rogers <christopher.halse.rogers at canonical.com>

---
 src/mapi/glapi/glapi_x86-64.S | 5704 ++++++++++++++++++++++++++++++++++++++++-
 src/mapi/glapi/glapi_x86.S    |   17 +-
 2 files changed, 5709 insertions(+), 12 deletions(-)

diff --git a/src/mapi/glapi/glapi_x86-64.S b/src/mapi/glapi/glapi_x86-64.S
index 2dec611..db66ef6 100644
--- a/src/mapi/glapi/glapi_x86-64.S
+++ b/src/mapi/glapi/glapi_x86-64.S
@@ -60,8 +60,12 @@ _x86_64_get_get_dispatch:
 
 	.p2align	4,,15
 _x86_64_get_dispatch:
-	movq	_glapi_tls_Dispatch at GOTTPOFF(%rip), %rax
-	movq	%fs:(%rax), %rax
+	.byte	0x66
+	leaq	_glapi_tls_Dispatch at tlsgd(%rip), %rdi
+	.word	0x6666
+	rex64
+	call	__tls_get_addr at plt
+	movq	(%rax), %rax
 	ret
 	.size	_x86_64_get_dispatch, .-_x86_64_get_dispatch
 
@@ -88,7 +92,13 @@ _x86_64_get_dispatch:
 	.type	GL_PREFIX(NewList), @function
 GL_PREFIX(NewList):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	0(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -125,7 +135,9 @@ GL_PREFIX(NewList):
 	.type	GL_PREFIX(EndList), @function
 GL_PREFIX(EndList):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	8(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -154,7 +166,9 @@ GL_PREFIX(EndList):
 	.type	GL_PREFIX(CallList), @function
 GL_PREFIX(CallList):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	16(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -183,7 +197,13 @@ GL_PREFIX(CallList):
 	.type	GL_PREFIX(CallLists), @function
 GL_PREFIX(CallLists):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	24(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -220,7 +240,13 @@ GL_PREFIX(CallLists):
 	.type	GL_PREFIX(DeleteLists), @function
 GL_PREFIX(DeleteLists):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	32(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -257,7 +283,9 @@ GL_PREFIX(DeleteLists):
 	.type	GL_PREFIX(GenLists), @function
 GL_PREFIX(GenLists):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	40(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -286,7 +314,9 @@ GL_PREFIX(GenLists):
 	.type	GL_PREFIX(ListBase), @function
 GL_PREFIX(ListBase):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	48(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -315,7 +345,9 @@ GL_PREFIX(ListBase):
 	.type	GL_PREFIX(Begin), @function
 GL_PREFIX(Begin):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	56(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -344,7 +376,23 @@ GL_PREFIX(Begin):
 	.type	GL_PREFIX(Bitmap), @function
 GL_PREFIX(Bitmap):
 #if defined(GLX_USE_TLS)
+	subq	$56, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%xmm0, 16(%rsp)
+	movq	%xmm1, 24(%rsp)
+	movq	%xmm2, 32(%rsp)
+	movq	%xmm3, 40(%rsp)
+	movq	%rdx, 48(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	48(%rsp), %rdx
+	movq	40(%rsp), %xmm3
+	movq	32(%rsp), %xmm2
+	movq	24(%rsp), %xmm1
+	movq	16(%rsp), %xmm0
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$56, %rsp
 	movq	64(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -401,7 +449,13 @@ GL_PREFIX(Bitmap):
 	.type	GL_PREFIX(Color3b), @function
 GL_PREFIX(Color3b):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	72(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -438,7 +492,9 @@ GL_PREFIX(Color3b):
 	.type	GL_PREFIX(Color3bv), @function
 GL_PREFIX(Color3bv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	80(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -467,7 +523,15 @@ GL_PREFIX(Color3bv):
 	.type	GL_PREFIX(Color3d), @function
 GL_PREFIX(Color3d):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	88(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -508,7 +572,9 @@ GL_PREFIX(Color3d):
 	.type	GL_PREFIX(Color3dv), @function
 GL_PREFIX(Color3dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	96(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -537,7 +603,15 @@ GL_PREFIX(Color3dv):
 	.type	GL_PREFIX(Color3f), @function
 GL_PREFIX(Color3f):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	104(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -578,7 +652,9 @@ GL_PREFIX(Color3f):
 	.type	GL_PREFIX(Color3fv), @function
 GL_PREFIX(Color3fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	112(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -607,7 +683,13 @@ GL_PREFIX(Color3fv):
 	.type	GL_PREFIX(Color3i), @function
 GL_PREFIX(Color3i):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	120(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -644,7 +726,9 @@ GL_PREFIX(Color3i):
 	.type	GL_PREFIX(Color3iv), @function
 GL_PREFIX(Color3iv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	128(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -673,7 +757,13 @@ GL_PREFIX(Color3iv):
 	.type	GL_PREFIX(Color3s), @function
 GL_PREFIX(Color3s):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	136(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -710,7 +800,9 @@ GL_PREFIX(Color3s):
 	.type	GL_PREFIX(Color3sv), @function
 GL_PREFIX(Color3sv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	144(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -739,7 +831,13 @@ GL_PREFIX(Color3sv):
 	.type	GL_PREFIX(Color3ub), @function
 GL_PREFIX(Color3ub):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	152(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -776,7 +874,9 @@ GL_PREFIX(Color3ub):
 	.type	GL_PREFIX(Color3ubv), @function
 GL_PREFIX(Color3ubv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	160(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -805,7 +905,13 @@ GL_PREFIX(Color3ubv):
 	.type	GL_PREFIX(Color3ui), @function
 GL_PREFIX(Color3ui):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	168(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -842,7 +948,9 @@ GL_PREFIX(Color3ui):
 	.type	GL_PREFIX(Color3uiv), @function
 GL_PREFIX(Color3uiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	176(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -871,7 +979,13 @@ GL_PREFIX(Color3uiv):
 	.type	GL_PREFIX(Color3us), @function
 GL_PREFIX(Color3us):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	184(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -908,7 +1022,9 @@ GL_PREFIX(Color3us):
 	.type	GL_PREFIX(Color3usv), @function
 GL_PREFIX(Color3usv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	192(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -937,7 +1053,17 @@ GL_PREFIX(Color3usv):
 	.type	GL_PREFIX(Color4b), @function
 GL_PREFIX(Color4b):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	200(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -982,7 +1108,9 @@ GL_PREFIX(Color4b):
 	.type	GL_PREFIX(Color4bv), @function
 GL_PREFIX(Color4bv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	208(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1011,7 +1139,17 @@ GL_PREFIX(Color4bv):
 	.type	GL_PREFIX(Color4d), @function
 GL_PREFIX(Color4d):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	216(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1056,7 +1194,9 @@ GL_PREFIX(Color4d):
 	.type	GL_PREFIX(Color4dv), @function
 GL_PREFIX(Color4dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	224(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1085,7 +1225,17 @@ GL_PREFIX(Color4dv):
 	.type	GL_PREFIX(Color4f), @function
 GL_PREFIX(Color4f):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	232(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1130,7 +1280,9 @@ GL_PREFIX(Color4f):
 	.type	GL_PREFIX(Color4fv), @function
 GL_PREFIX(Color4fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	240(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1159,7 +1311,17 @@ GL_PREFIX(Color4fv):
 	.type	GL_PREFIX(Color4i), @function
 GL_PREFIX(Color4i):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	248(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1204,7 +1366,9 @@ GL_PREFIX(Color4i):
 	.type	GL_PREFIX(Color4iv), @function
 GL_PREFIX(Color4iv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	256(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1233,7 +1397,17 @@ GL_PREFIX(Color4iv):
 	.type	GL_PREFIX(Color4s), @function
 GL_PREFIX(Color4s):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	264(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1278,7 +1452,9 @@ GL_PREFIX(Color4s):
 	.type	GL_PREFIX(Color4sv), @function
 GL_PREFIX(Color4sv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	272(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1307,7 +1483,17 @@ GL_PREFIX(Color4sv):
 	.type	GL_PREFIX(Color4ub), @function
 GL_PREFIX(Color4ub):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	280(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1352,7 +1538,9 @@ GL_PREFIX(Color4ub):
 	.type	GL_PREFIX(Color4ubv), @function
 GL_PREFIX(Color4ubv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	288(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1381,7 +1569,17 @@ GL_PREFIX(Color4ubv):
 	.type	GL_PREFIX(Color4ui), @function
 GL_PREFIX(Color4ui):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	296(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1426,7 +1624,9 @@ GL_PREFIX(Color4ui):
 	.type	GL_PREFIX(Color4uiv), @function
 GL_PREFIX(Color4uiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	304(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1455,7 +1655,17 @@ GL_PREFIX(Color4uiv):
 	.type	GL_PREFIX(Color4us), @function
 GL_PREFIX(Color4us):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	312(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1500,7 +1710,9 @@ GL_PREFIX(Color4us):
 	.type	GL_PREFIX(Color4usv), @function
 GL_PREFIX(Color4usv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	320(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1529,7 +1741,9 @@ GL_PREFIX(Color4usv):
 	.type	GL_PREFIX(EdgeFlag), @function
 GL_PREFIX(EdgeFlag):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	328(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1558,7 +1772,9 @@ GL_PREFIX(EdgeFlag):
 	.type	GL_PREFIX(EdgeFlagv), @function
 GL_PREFIX(EdgeFlagv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	336(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1587,7 +1803,9 @@ GL_PREFIX(EdgeFlagv):
 	.type	GL_PREFIX(End), @function
 GL_PREFIX(End):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	344(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1616,7 +1834,11 @@ GL_PREFIX(End):
 	.type	GL_PREFIX(Indexd), @function
 GL_PREFIX(Indexd):
 #if defined(GLX_USE_TLS)
+	subq	$8, %rsp
+	movq	%xmm0, (%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	(%rsp), %xmm0
+	addq	$8, %rsp
 	movq	352(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1649,7 +1871,9 @@ GL_PREFIX(Indexd):
 	.type	GL_PREFIX(Indexdv), @function
 GL_PREFIX(Indexdv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	360(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1678,7 +1902,11 @@ GL_PREFIX(Indexdv):
 	.type	GL_PREFIX(Indexf), @function
 GL_PREFIX(Indexf):
 #if defined(GLX_USE_TLS)
+	subq	$8, %rsp
+	movq	%xmm0, (%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	(%rsp), %xmm0
+	addq	$8, %rsp
 	movq	368(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1711,7 +1939,9 @@ GL_PREFIX(Indexf):
 	.type	GL_PREFIX(Indexfv), @function
 GL_PREFIX(Indexfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	376(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1740,7 +1970,9 @@ GL_PREFIX(Indexfv):
 	.type	GL_PREFIX(Indexi), @function
 GL_PREFIX(Indexi):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	384(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1769,7 +2001,9 @@ GL_PREFIX(Indexi):
 	.type	GL_PREFIX(Indexiv), @function
 GL_PREFIX(Indexiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	392(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1798,7 +2032,9 @@ GL_PREFIX(Indexiv):
 	.type	GL_PREFIX(Indexs), @function
 GL_PREFIX(Indexs):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	400(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1827,7 +2063,9 @@ GL_PREFIX(Indexs):
 	.type	GL_PREFIX(Indexsv), @function
 GL_PREFIX(Indexsv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	408(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1856,7 +2094,13 @@ GL_PREFIX(Indexsv):
 	.type	GL_PREFIX(Normal3b), @function
 GL_PREFIX(Normal3b):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	416(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1893,7 +2137,9 @@ GL_PREFIX(Normal3b):
 	.type	GL_PREFIX(Normal3bv), @function
 GL_PREFIX(Normal3bv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	424(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1922,7 +2168,15 @@ GL_PREFIX(Normal3bv):
 	.type	GL_PREFIX(Normal3d), @function
 GL_PREFIX(Normal3d):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	432(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1963,7 +2217,9 @@ GL_PREFIX(Normal3d):
 	.type	GL_PREFIX(Normal3dv), @function
 GL_PREFIX(Normal3dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	440(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -1992,7 +2248,15 @@ GL_PREFIX(Normal3dv):
 	.type	GL_PREFIX(Normal3f), @function
 GL_PREFIX(Normal3f):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	448(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2033,7 +2297,9 @@ GL_PREFIX(Normal3f):
 	.type	GL_PREFIX(Normal3fv), @function
 GL_PREFIX(Normal3fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	456(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2062,7 +2328,13 @@ GL_PREFIX(Normal3fv):
 	.type	GL_PREFIX(Normal3i), @function
 GL_PREFIX(Normal3i):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	464(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2099,7 +2371,9 @@ GL_PREFIX(Normal3i):
 	.type	GL_PREFIX(Normal3iv), @function
 GL_PREFIX(Normal3iv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	472(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2128,7 +2402,13 @@ GL_PREFIX(Normal3iv):
 	.type	GL_PREFIX(Normal3s), @function
 GL_PREFIX(Normal3s):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	480(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2165,7 +2445,9 @@ GL_PREFIX(Normal3s):
 	.type	GL_PREFIX(Normal3sv), @function
 GL_PREFIX(Normal3sv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	488(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2194,7 +2476,13 @@ GL_PREFIX(Normal3sv):
 	.type	GL_PREFIX(RasterPos2d), @function
 GL_PREFIX(RasterPos2d):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	496(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2231,7 +2519,9 @@ GL_PREFIX(RasterPos2d):
 	.type	GL_PREFIX(RasterPos2dv), @function
 GL_PREFIX(RasterPos2dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	504(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2260,7 +2550,13 @@ GL_PREFIX(RasterPos2dv):
 	.type	GL_PREFIX(RasterPos2f), @function
 GL_PREFIX(RasterPos2f):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	512(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2297,7 +2593,9 @@ GL_PREFIX(RasterPos2f):
 	.type	GL_PREFIX(RasterPos2fv), @function
 GL_PREFIX(RasterPos2fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	520(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2326,7 +2624,13 @@ GL_PREFIX(RasterPos2fv):
 	.type	GL_PREFIX(RasterPos2i), @function
 GL_PREFIX(RasterPos2i):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	528(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2363,7 +2667,9 @@ GL_PREFIX(RasterPos2i):
 	.type	GL_PREFIX(RasterPos2iv), @function
 GL_PREFIX(RasterPos2iv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	536(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2392,7 +2698,13 @@ GL_PREFIX(RasterPos2iv):
 	.type	GL_PREFIX(RasterPos2s), @function
 GL_PREFIX(RasterPos2s):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	544(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2429,7 +2741,9 @@ GL_PREFIX(RasterPos2s):
 	.type	GL_PREFIX(RasterPos2sv), @function
 GL_PREFIX(RasterPos2sv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	552(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2458,7 +2772,15 @@ GL_PREFIX(RasterPos2sv):
 	.type	GL_PREFIX(RasterPos3d), @function
 GL_PREFIX(RasterPos3d):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	560(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2499,7 +2821,9 @@ GL_PREFIX(RasterPos3d):
 	.type	GL_PREFIX(RasterPos3dv), @function
 GL_PREFIX(RasterPos3dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	568(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2528,7 +2852,15 @@ GL_PREFIX(RasterPos3dv):
 	.type	GL_PREFIX(RasterPos3f), @function
 GL_PREFIX(RasterPos3f):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	576(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2569,7 +2901,9 @@ GL_PREFIX(RasterPos3f):
 	.type	GL_PREFIX(RasterPos3fv), @function
 GL_PREFIX(RasterPos3fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	584(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2598,7 +2932,13 @@ GL_PREFIX(RasterPos3fv):
 	.type	GL_PREFIX(RasterPos3i), @function
 GL_PREFIX(RasterPos3i):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	592(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2635,7 +2975,9 @@ GL_PREFIX(RasterPos3i):
 	.type	GL_PREFIX(RasterPos3iv), @function
 GL_PREFIX(RasterPos3iv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	600(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2664,7 +3006,13 @@ GL_PREFIX(RasterPos3iv):
 	.type	GL_PREFIX(RasterPos3s), @function
 GL_PREFIX(RasterPos3s):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	608(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2701,7 +3049,9 @@ GL_PREFIX(RasterPos3s):
 	.type	GL_PREFIX(RasterPos3sv), @function
 GL_PREFIX(RasterPos3sv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	616(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2730,7 +3080,17 @@ GL_PREFIX(RasterPos3sv):
 	.type	GL_PREFIX(RasterPos4d), @function
 GL_PREFIX(RasterPos4d):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	624(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2775,7 +3135,9 @@ GL_PREFIX(RasterPos4d):
 	.type	GL_PREFIX(RasterPos4dv), @function
 GL_PREFIX(RasterPos4dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	632(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2804,7 +3166,17 @@ GL_PREFIX(RasterPos4dv):
 	.type	GL_PREFIX(RasterPos4f), @function
 GL_PREFIX(RasterPos4f):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	640(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2849,7 +3221,9 @@ GL_PREFIX(RasterPos4f):
 	.type	GL_PREFIX(RasterPos4fv), @function
 GL_PREFIX(RasterPos4fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	648(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2878,7 +3252,17 @@ GL_PREFIX(RasterPos4fv):
 	.type	GL_PREFIX(RasterPos4i), @function
 GL_PREFIX(RasterPos4i):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	656(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2923,7 +3307,9 @@ GL_PREFIX(RasterPos4i):
 	.type	GL_PREFIX(RasterPos4iv), @function
 GL_PREFIX(RasterPos4iv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	664(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2952,7 +3338,17 @@ GL_PREFIX(RasterPos4iv):
 	.type	GL_PREFIX(RasterPos4s), @function
 GL_PREFIX(RasterPos4s):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	672(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -2997,7 +3393,9 @@ GL_PREFIX(RasterPos4s):
 	.type	GL_PREFIX(RasterPos4sv), @function
 GL_PREFIX(RasterPos4sv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	680(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3026,7 +3424,17 @@ GL_PREFIX(RasterPos4sv):
 	.type	GL_PREFIX(Rectd), @function
 GL_PREFIX(Rectd):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	688(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3071,7 +3479,13 @@ GL_PREFIX(Rectd):
 	.type	GL_PREFIX(Rectdv), @function
 GL_PREFIX(Rectdv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	696(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3108,7 +3522,17 @@ GL_PREFIX(Rectdv):
 	.type	GL_PREFIX(Rectf), @function
 GL_PREFIX(Rectf):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	704(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3153,7 +3577,13 @@ GL_PREFIX(Rectf):
 	.type	GL_PREFIX(Rectfv), @function
 GL_PREFIX(Rectfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	712(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3190,7 +3620,17 @@ GL_PREFIX(Rectfv):
 	.type	GL_PREFIX(Recti), @function
 GL_PREFIX(Recti):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	720(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3235,7 +3675,13 @@ GL_PREFIX(Recti):
 	.type	GL_PREFIX(Rectiv), @function
 GL_PREFIX(Rectiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	728(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3272,7 +3718,17 @@ GL_PREFIX(Rectiv):
 	.type	GL_PREFIX(Rects), @function
 GL_PREFIX(Rects):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	736(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3317,7 +3773,13 @@ GL_PREFIX(Rects):
 	.type	GL_PREFIX(Rectsv), @function
 GL_PREFIX(Rectsv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	744(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3354,7 +3816,11 @@ GL_PREFIX(Rectsv):
 	.type	GL_PREFIX(TexCoord1d), @function
 GL_PREFIX(TexCoord1d):
 #if defined(GLX_USE_TLS)
+	subq	$8, %rsp
+	movq	%xmm0, (%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	(%rsp), %xmm0
+	addq	$8, %rsp
 	movq	752(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3387,7 +3853,9 @@ GL_PREFIX(TexCoord1d):
 	.type	GL_PREFIX(TexCoord1dv), @function
 GL_PREFIX(TexCoord1dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	760(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3416,7 +3884,11 @@ GL_PREFIX(TexCoord1dv):
 	.type	GL_PREFIX(TexCoord1f), @function
 GL_PREFIX(TexCoord1f):
 #if defined(GLX_USE_TLS)
+	subq	$8, %rsp
+	movq	%xmm0, (%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	(%rsp), %xmm0
+	addq	$8, %rsp
 	movq	768(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3449,7 +3921,9 @@ GL_PREFIX(TexCoord1f):
 	.type	GL_PREFIX(TexCoord1fv), @function
 GL_PREFIX(TexCoord1fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	776(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3478,7 +3952,9 @@ GL_PREFIX(TexCoord1fv):
 	.type	GL_PREFIX(TexCoord1i), @function
 GL_PREFIX(TexCoord1i):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	784(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3507,7 +3983,9 @@ GL_PREFIX(TexCoord1i):
 	.type	GL_PREFIX(TexCoord1iv), @function
 GL_PREFIX(TexCoord1iv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	792(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3536,7 +4014,9 @@ GL_PREFIX(TexCoord1iv):
 	.type	GL_PREFIX(TexCoord1s), @function
 GL_PREFIX(TexCoord1s):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	800(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3565,7 +4045,9 @@ GL_PREFIX(TexCoord1s):
 	.type	GL_PREFIX(TexCoord1sv), @function
 GL_PREFIX(TexCoord1sv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	808(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3594,7 +4076,13 @@ GL_PREFIX(TexCoord1sv):
 	.type	GL_PREFIX(TexCoord2d), @function
 GL_PREFIX(TexCoord2d):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	816(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3631,7 +4119,9 @@ GL_PREFIX(TexCoord2d):
 	.type	GL_PREFIX(TexCoord2dv), @function
 GL_PREFIX(TexCoord2dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	824(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3660,7 +4150,13 @@ GL_PREFIX(TexCoord2dv):
 	.type	GL_PREFIX(TexCoord2f), @function
 GL_PREFIX(TexCoord2f):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	832(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3697,7 +4193,9 @@ GL_PREFIX(TexCoord2f):
 	.type	GL_PREFIX(TexCoord2fv), @function
 GL_PREFIX(TexCoord2fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	840(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3726,7 +4224,13 @@ GL_PREFIX(TexCoord2fv):
 	.type	GL_PREFIX(TexCoord2i), @function
 GL_PREFIX(TexCoord2i):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	848(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3763,7 +4267,9 @@ GL_PREFIX(TexCoord2i):
 	.type	GL_PREFIX(TexCoord2iv), @function
 GL_PREFIX(TexCoord2iv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	856(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3792,7 +4298,13 @@ GL_PREFIX(TexCoord2iv):
 	.type	GL_PREFIX(TexCoord2s), @function
 GL_PREFIX(TexCoord2s):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	864(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3829,7 +4341,9 @@ GL_PREFIX(TexCoord2s):
 	.type	GL_PREFIX(TexCoord2sv), @function
 GL_PREFIX(TexCoord2sv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	872(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3858,7 +4372,15 @@ GL_PREFIX(TexCoord2sv):
 	.type	GL_PREFIX(TexCoord3d), @function
 GL_PREFIX(TexCoord3d):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	880(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3899,7 +4421,9 @@ GL_PREFIX(TexCoord3d):
 	.type	GL_PREFIX(TexCoord3dv), @function
 GL_PREFIX(TexCoord3dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	888(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3928,7 +4452,15 @@ GL_PREFIX(TexCoord3dv):
 	.type	GL_PREFIX(TexCoord3f), @function
 GL_PREFIX(TexCoord3f):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	896(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3969,7 +4501,9 @@ GL_PREFIX(TexCoord3f):
 	.type	GL_PREFIX(TexCoord3fv), @function
 GL_PREFIX(TexCoord3fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	904(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -3998,7 +4532,13 @@ GL_PREFIX(TexCoord3fv):
 	.type	GL_PREFIX(TexCoord3i), @function
 GL_PREFIX(TexCoord3i):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	912(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4035,7 +4575,9 @@ GL_PREFIX(TexCoord3i):
 	.type	GL_PREFIX(TexCoord3iv), @function
 GL_PREFIX(TexCoord3iv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	920(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4064,7 +4606,13 @@ GL_PREFIX(TexCoord3iv):
 	.type	GL_PREFIX(TexCoord3s), @function
 GL_PREFIX(TexCoord3s):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	928(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4101,7 +4649,9 @@ GL_PREFIX(TexCoord3s):
 	.type	GL_PREFIX(TexCoord3sv), @function
 GL_PREFIX(TexCoord3sv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	936(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4130,7 +4680,17 @@ GL_PREFIX(TexCoord3sv):
 	.type	GL_PREFIX(TexCoord4d), @function
 GL_PREFIX(TexCoord4d):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	944(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4175,7 +4735,9 @@ GL_PREFIX(TexCoord4d):
 	.type	GL_PREFIX(TexCoord4dv), @function
 GL_PREFIX(TexCoord4dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	952(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4204,7 +4766,17 @@ GL_PREFIX(TexCoord4dv):
 	.type	GL_PREFIX(TexCoord4f), @function
 GL_PREFIX(TexCoord4f):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	960(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4249,7 +4821,9 @@ GL_PREFIX(TexCoord4f):
 	.type	GL_PREFIX(TexCoord4fv), @function
 GL_PREFIX(TexCoord4fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	968(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4278,7 +4852,17 @@ GL_PREFIX(TexCoord4fv):
 	.type	GL_PREFIX(TexCoord4i), @function
 GL_PREFIX(TexCoord4i):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	976(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4323,7 +4907,9 @@ GL_PREFIX(TexCoord4i):
 	.type	GL_PREFIX(TexCoord4iv), @function
 GL_PREFIX(TexCoord4iv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	984(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4352,7 +4938,17 @@ GL_PREFIX(TexCoord4iv):
 	.type	GL_PREFIX(TexCoord4s), @function
 GL_PREFIX(TexCoord4s):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	992(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4397,7 +4993,9 @@ GL_PREFIX(TexCoord4s):
 	.type	GL_PREFIX(TexCoord4sv), @function
 GL_PREFIX(TexCoord4sv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1000(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4426,7 +5024,13 @@ GL_PREFIX(TexCoord4sv):
 	.type	GL_PREFIX(Vertex2d), @function
 GL_PREFIX(Vertex2d):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	1008(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4463,7 +5067,9 @@ GL_PREFIX(Vertex2d):
 	.type	GL_PREFIX(Vertex2dv), @function
 GL_PREFIX(Vertex2dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1016(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4492,7 +5098,13 @@ GL_PREFIX(Vertex2dv):
 	.type	GL_PREFIX(Vertex2f), @function
 GL_PREFIX(Vertex2f):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	1024(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4529,7 +5141,9 @@ GL_PREFIX(Vertex2f):
 	.type	GL_PREFIX(Vertex2fv), @function
 GL_PREFIX(Vertex2fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1032(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4558,7 +5172,13 @@ GL_PREFIX(Vertex2fv):
 	.type	GL_PREFIX(Vertex2i), @function
 GL_PREFIX(Vertex2i):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1040(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4595,7 +5215,9 @@ GL_PREFIX(Vertex2i):
 	.type	GL_PREFIX(Vertex2iv), @function
 GL_PREFIX(Vertex2iv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1048(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4624,7 +5246,13 @@ GL_PREFIX(Vertex2iv):
 	.type	GL_PREFIX(Vertex2s), @function
 GL_PREFIX(Vertex2s):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1056(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4661,7 +5289,9 @@ GL_PREFIX(Vertex2s):
 	.type	GL_PREFIX(Vertex2sv), @function
 GL_PREFIX(Vertex2sv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1064(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4690,7 +5320,15 @@ GL_PREFIX(Vertex2sv):
 	.type	GL_PREFIX(Vertex3d), @function
 GL_PREFIX(Vertex3d):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	1072(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4731,7 +5369,9 @@ GL_PREFIX(Vertex3d):
 	.type	GL_PREFIX(Vertex3dv), @function
 GL_PREFIX(Vertex3dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1080(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4760,7 +5400,15 @@ GL_PREFIX(Vertex3dv):
 	.type	GL_PREFIX(Vertex3f), @function
 GL_PREFIX(Vertex3f):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	1088(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4801,7 +5449,9 @@ GL_PREFIX(Vertex3f):
 	.type	GL_PREFIX(Vertex3fv), @function
 GL_PREFIX(Vertex3fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1096(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4830,7 +5480,13 @@ GL_PREFIX(Vertex3fv):
 	.type	GL_PREFIX(Vertex3i), @function
 GL_PREFIX(Vertex3i):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1104(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4867,7 +5523,9 @@ GL_PREFIX(Vertex3i):
 	.type	GL_PREFIX(Vertex3iv), @function
 GL_PREFIX(Vertex3iv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1112(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4896,7 +5554,13 @@ GL_PREFIX(Vertex3iv):
 	.type	GL_PREFIX(Vertex3s), @function
 GL_PREFIX(Vertex3s):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1120(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4933,7 +5597,9 @@ GL_PREFIX(Vertex3s):
 	.type	GL_PREFIX(Vertex3sv), @function
 GL_PREFIX(Vertex3sv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1128(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -4962,7 +5628,17 @@ GL_PREFIX(Vertex3sv):
 	.type	GL_PREFIX(Vertex4d), @function
 GL_PREFIX(Vertex4d):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	1136(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5007,7 +5683,9 @@ GL_PREFIX(Vertex4d):
 	.type	GL_PREFIX(Vertex4dv), @function
 GL_PREFIX(Vertex4dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1144(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5036,7 +5714,17 @@ GL_PREFIX(Vertex4dv):
 	.type	GL_PREFIX(Vertex4f), @function
 GL_PREFIX(Vertex4f):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	1152(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5081,7 +5769,9 @@ GL_PREFIX(Vertex4f):
 	.type	GL_PREFIX(Vertex4fv), @function
 GL_PREFIX(Vertex4fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1160(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5110,7 +5800,17 @@ GL_PREFIX(Vertex4fv):
 	.type	GL_PREFIX(Vertex4i), @function
 GL_PREFIX(Vertex4i):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1168(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5155,7 +5855,9 @@ GL_PREFIX(Vertex4i):
 	.type	GL_PREFIX(Vertex4iv), @function
 GL_PREFIX(Vertex4iv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1176(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5184,7 +5886,17 @@ GL_PREFIX(Vertex4iv):
 	.type	GL_PREFIX(Vertex4s), @function
 GL_PREFIX(Vertex4s):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1184(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5229,7 +5941,9 @@ GL_PREFIX(Vertex4s):
 	.type	GL_PREFIX(Vertex4sv), @function
 GL_PREFIX(Vertex4sv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1192(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5258,7 +5972,13 @@ GL_PREFIX(Vertex4sv):
 	.type	GL_PREFIX(ClipPlane), @function
 GL_PREFIX(ClipPlane):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1200(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5295,7 +6015,13 @@ GL_PREFIX(ClipPlane):
 	.type	GL_PREFIX(ColorMaterial), @function
 GL_PREFIX(ColorMaterial):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1208(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5332,7 +6058,9 @@ GL_PREFIX(ColorMaterial):
 	.type	GL_PREFIX(CullFace), @function
 GL_PREFIX(CullFace):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1216(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5361,7 +6089,13 @@ GL_PREFIX(CullFace):
 	.type	GL_PREFIX(Fogf), @function
 GL_PREFIX(Fogf):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	1224(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5398,7 +6132,13 @@ GL_PREFIX(Fogf):
 	.type	GL_PREFIX(Fogfv), @function
 GL_PREFIX(Fogfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1232(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5435,7 +6175,13 @@ GL_PREFIX(Fogfv):
 	.type	GL_PREFIX(Fogi), @function
 GL_PREFIX(Fogi):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1240(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5472,7 +6218,13 @@ GL_PREFIX(Fogi):
 	.type	GL_PREFIX(Fogiv), @function
 GL_PREFIX(Fogiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1248(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5509,7 +6261,9 @@ GL_PREFIX(Fogiv):
 	.type	GL_PREFIX(FrontFace), @function
 GL_PREFIX(FrontFace):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1256(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5538,7 +6292,13 @@ GL_PREFIX(FrontFace):
 	.type	GL_PREFIX(Hint), @function
 GL_PREFIX(Hint):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1264(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5575,7 +6335,15 @@ GL_PREFIX(Hint):
 	.type	GL_PREFIX(Lightf), @function
 GL_PREFIX(Lightf):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%xmm0, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm0
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	1272(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5616,7 +6384,13 @@ GL_PREFIX(Lightf):
 	.type	GL_PREFIX(Lightfv), @function
 GL_PREFIX(Lightfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1280(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5653,7 +6427,13 @@ GL_PREFIX(Lightfv):
 	.type	GL_PREFIX(Lighti), @function
 GL_PREFIX(Lighti):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1288(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5690,7 +6470,13 @@ GL_PREFIX(Lighti):
 	.type	GL_PREFIX(Lightiv), @function
 GL_PREFIX(Lightiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1296(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5727,7 +6513,13 @@ GL_PREFIX(Lightiv):
 	.type	GL_PREFIX(LightModelf), @function
 GL_PREFIX(LightModelf):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	1304(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5764,7 +6556,13 @@ GL_PREFIX(LightModelf):
 	.type	GL_PREFIX(LightModelfv), @function
 GL_PREFIX(LightModelfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1312(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5801,7 +6599,13 @@ GL_PREFIX(LightModelfv):
 	.type	GL_PREFIX(LightModeli), @function
 GL_PREFIX(LightModeli):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1320(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5838,7 +6642,13 @@ GL_PREFIX(LightModeli):
 	.type	GL_PREFIX(LightModeliv), @function
 GL_PREFIX(LightModeliv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1328(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5875,7 +6685,13 @@ GL_PREFIX(LightModeliv):
 	.type	GL_PREFIX(LineStipple), @function
 GL_PREFIX(LineStipple):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1336(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5912,7 +6728,11 @@ GL_PREFIX(LineStipple):
 	.type	GL_PREFIX(LineWidth), @function
 GL_PREFIX(LineWidth):
 #if defined(GLX_USE_TLS)
+	subq	$8, %rsp
+	movq	%xmm0, (%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	(%rsp), %xmm0
+	addq	$8, %rsp
 	movq	1344(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5945,7 +6765,15 @@ GL_PREFIX(LineWidth):
 	.type	GL_PREFIX(Materialf), @function
 GL_PREFIX(Materialf):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%xmm0, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm0
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	1352(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -5986,7 +6814,13 @@ GL_PREFIX(Materialf):
 	.type	GL_PREFIX(Materialfv), @function
 GL_PREFIX(Materialfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1360(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6023,7 +6857,13 @@ GL_PREFIX(Materialfv):
 	.type	GL_PREFIX(Materiali), @function
 GL_PREFIX(Materiali):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1368(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6060,7 +6900,13 @@ GL_PREFIX(Materiali):
 	.type	GL_PREFIX(Materialiv), @function
 GL_PREFIX(Materialiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1376(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6097,7 +6943,11 @@ GL_PREFIX(Materialiv):
 	.type	GL_PREFIX(PointSize), @function
 GL_PREFIX(PointSize):
 #if defined(GLX_USE_TLS)
+	subq	$8, %rsp
+	movq	%xmm0, (%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	(%rsp), %xmm0
+	addq	$8, %rsp
 	movq	1384(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6130,7 +6980,13 @@ GL_PREFIX(PointSize):
 	.type	GL_PREFIX(PolygonMode), @function
 GL_PREFIX(PolygonMode):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1392(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6167,7 +7023,9 @@ GL_PREFIX(PolygonMode):
 	.type	GL_PREFIX(PolygonStipple), @function
 GL_PREFIX(PolygonStipple):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1400(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6196,7 +7054,17 @@ GL_PREFIX(PolygonStipple):
 	.type	GL_PREFIX(Scissor), @function
 GL_PREFIX(Scissor):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1408(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6241,7 +7109,9 @@ GL_PREFIX(Scissor):
 	.type	GL_PREFIX(ShadeModel), @function
 GL_PREFIX(ShadeModel):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1416(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6270,7 +7140,15 @@ GL_PREFIX(ShadeModel):
 	.type	GL_PREFIX(TexParameterf), @function
 GL_PREFIX(TexParameterf):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%xmm0, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm0
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	1424(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6311,7 +7189,13 @@ GL_PREFIX(TexParameterf):
 	.type	GL_PREFIX(TexParameterfv), @function
 GL_PREFIX(TexParameterfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1432(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6348,7 +7232,13 @@ GL_PREFIX(TexParameterfv):
 	.type	GL_PREFIX(TexParameteri), @function
 GL_PREFIX(TexParameteri):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1440(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6385,7 +7275,13 @@ GL_PREFIX(TexParameteri):
 	.type	GL_PREFIX(TexParameteriv), @function
 GL_PREFIX(TexParameteriv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1448(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6422,7 +7318,21 @@ GL_PREFIX(TexParameteriv):
 	.type	GL_PREFIX(TexImage1D), @function
 GL_PREFIX(TexImage1D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1456(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6475,7 +7385,21 @@ GL_PREFIX(TexImage1D):
 	.type	GL_PREFIX(TexImage2D), @function
 GL_PREFIX(TexImage2D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1464(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6528,7 +7452,15 @@ GL_PREFIX(TexImage2D):
 	.type	GL_PREFIX(TexEnvf), @function
 GL_PREFIX(TexEnvf):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%xmm0, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm0
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	1472(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6569,7 +7501,13 @@ GL_PREFIX(TexEnvf):
 	.type	GL_PREFIX(TexEnvfv), @function
 GL_PREFIX(TexEnvfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1480(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6606,7 +7544,13 @@ GL_PREFIX(TexEnvfv):
 	.type	GL_PREFIX(TexEnvi), @function
 GL_PREFIX(TexEnvi):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1488(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6643,7 +7587,13 @@ GL_PREFIX(TexEnvi):
 	.type	GL_PREFIX(TexEnviv), @function
 GL_PREFIX(TexEnviv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1496(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6680,7 +7630,15 @@ GL_PREFIX(TexEnviv):
 	.type	GL_PREFIX(TexGend), @function
 GL_PREFIX(TexGend):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%xmm0, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm0
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	1504(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6721,7 +7679,13 @@ GL_PREFIX(TexGend):
 	.type	GL_PREFIX(TexGendv), @function
 GL_PREFIX(TexGendv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1512(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6758,7 +7722,15 @@ GL_PREFIX(TexGendv):
 	.type	GL_PREFIX(TexGenf), @function
 GL_PREFIX(TexGenf):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%xmm0, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm0
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	1520(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6799,7 +7771,13 @@ GL_PREFIX(TexGenf):
 	.type	GL_PREFIX(TexGenfv), @function
 GL_PREFIX(TexGenfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1528(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6836,7 +7814,13 @@ GL_PREFIX(TexGenfv):
 	.type	GL_PREFIX(TexGeni), @function
 GL_PREFIX(TexGeni):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1536(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6873,7 +7857,13 @@ GL_PREFIX(TexGeni):
 	.type	GL_PREFIX(TexGeniv), @function
 GL_PREFIX(TexGeniv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1544(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6910,7 +7900,13 @@ GL_PREFIX(TexGeniv):
 	.type	GL_PREFIX(FeedbackBuffer), @function
 GL_PREFIX(FeedbackBuffer):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1552(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6947,7 +7943,13 @@ GL_PREFIX(FeedbackBuffer):
 	.type	GL_PREFIX(SelectBuffer), @function
 GL_PREFIX(SelectBuffer):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1560(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -6984,7 +7986,9 @@ GL_PREFIX(SelectBuffer):
 	.type	GL_PREFIX(RenderMode), @function
 GL_PREFIX(RenderMode):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1568(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7013,7 +8017,9 @@ GL_PREFIX(RenderMode):
 	.type	GL_PREFIX(InitNames), @function
 GL_PREFIX(InitNames):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	1576(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7042,7 +8048,9 @@ GL_PREFIX(InitNames):
 	.type	GL_PREFIX(LoadName), @function
 GL_PREFIX(LoadName):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1584(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7071,7 +8079,11 @@ GL_PREFIX(LoadName):
 	.type	GL_PREFIX(PassThrough), @function
 GL_PREFIX(PassThrough):
 #if defined(GLX_USE_TLS)
+	subq	$8, %rsp
+	movq	%xmm0, (%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	(%rsp), %xmm0
+	addq	$8, %rsp
 	movq	1592(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7104,7 +8116,9 @@ GL_PREFIX(PassThrough):
 	.type	GL_PREFIX(PopName), @function
 GL_PREFIX(PopName):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	1600(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7133,7 +8147,9 @@ GL_PREFIX(PopName):
 	.type	GL_PREFIX(PushName), @function
 GL_PREFIX(PushName):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1608(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7162,7 +8178,9 @@ GL_PREFIX(PushName):
 	.type	GL_PREFIX(DrawBuffer), @function
 GL_PREFIX(DrawBuffer):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1616(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7191,7 +8209,9 @@ GL_PREFIX(DrawBuffer):
 	.type	GL_PREFIX(Clear), @function
 GL_PREFIX(Clear):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1624(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7220,7 +8240,17 @@ GL_PREFIX(Clear):
 	.type	GL_PREFIX(ClearAccum), @function
 GL_PREFIX(ClearAccum):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	1632(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7265,7 +8295,11 @@ GL_PREFIX(ClearAccum):
 	.type	GL_PREFIX(ClearIndex), @function
 GL_PREFIX(ClearIndex):
 #if defined(GLX_USE_TLS)
+	subq	$8, %rsp
+	movq	%xmm0, (%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	(%rsp), %xmm0
+	addq	$8, %rsp
 	movq	1640(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7298,7 +8332,17 @@ GL_PREFIX(ClearIndex):
 	.type	GL_PREFIX(ClearColor), @function
 GL_PREFIX(ClearColor):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1648(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7343,7 +8387,9 @@ GL_PREFIX(ClearColor):
 	.type	GL_PREFIX(ClearStencil), @function
 GL_PREFIX(ClearStencil):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1656(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7372,7 +8418,9 @@ GL_PREFIX(ClearStencil):
 	.type	GL_PREFIX(ClearDepth), @function
 GL_PREFIX(ClearDepth):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1664(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7401,7 +8449,9 @@ GL_PREFIX(ClearDepth):
 	.type	GL_PREFIX(StencilMask), @function
 GL_PREFIX(StencilMask):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1672(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7430,7 +8480,17 @@ GL_PREFIX(StencilMask):
 	.type	GL_PREFIX(ColorMask), @function
 GL_PREFIX(ColorMask):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1680(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7475,7 +8535,9 @@ GL_PREFIX(ColorMask):
 	.type	GL_PREFIX(DepthMask), @function
 GL_PREFIX(DepthMask):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1688(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7504,7 +8566,9 @@ GL_PREFIX(DepthMask):
 	.type	GL_PREFIX(IndexMask), @function
 GL_PREFIX(IndexMask):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1696(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7533,7 +8597,13 @@ GL_PREFIX(IndexMask):
 	.type	GL_PREFIX(Accum), @function
 GL_PREFIX(Accum):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	1704(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7570,7 +8640,9 @@ GL_PREFIX(Accum):
 	.type	GL_PREFIX(Disable), @function
 GL_PREFIX(Disable):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1712(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7599,7 +8671,9 @@ GL_PREFIX(Disable):
 	.type	GL_PREFIX(Enable), @function
 GL_PREFIX(Enable):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1720(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7628,7 +8702,9 @@ GL_PREFIX(Enable):
 	.type	GL_PREFIX(Finish), @function
 GL_PREFIX(Finish):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	1728(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7657,7 +8733,9 @@ GL_PREFIX(Finish):
 	.type	GL_PREFIX(Flush), @function
 GL_PREFIX(Flush):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	1736(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7686,7 +8764,9 @@ GL_PREFIX(Flush):
 	.type	GL_PREFIX(PopAttrib), @function
 GL_PREFIX(PopAttrib):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	1744(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7715,7 +8795,9 @@ GL_PREFIX(PopAttrib):
 	.type	GL_PREFIX(PushAttrib), @function
 GL_PREFIX(PushAttrib):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1752(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7744,7 +8826,21 @@ GL_PREFIX(PushAttrib):
 	.type	GL_PREFIX(Map1d), @function
 GL_PREFIX(Map1d):
 #if defined(GLX_USE_TLS)
+	subq	$56, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%rsi, 24(%rsp)
+	movq	%rdx, 32(%rsp)
+	movq	%rcx, 40(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	40(%rsp), %rcx
+	movq	32(%rsp), %rdx
+	movq	24(%rsp), %rsi
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$56, %rsp
 	movq	1760(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7797,7 +8893,21 @@ GL_PREFIX(Map1d):
 	.type	GL_PREFIX(Map1f), @function
 GL_PREFIX(Map1f):
 #if defined(GLX_USE_TLS)
+	subq	$56, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%rsi, 24(%rsp)
+	movq	%rdx, 32(%rsp)
+	movq	%rcx, 40(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	40(%rsp), %rcx
+	movq	32(%rsp), %rdx
+	movq	24(%rsp), %rsi
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$56, %rsp
 	movq	1768(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7850,7 +8960,29 @@ GL_PREFIX(Map1f):
 	.type	GL_PREFIX(Map2d), @function
 GL_PREFIX(Map2d):
 #if defined(GLX_USE_TLS)
+	subq	$88, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%rsi, 24(%rsp)
+	movq	%rdx, 32(%rsp)
+	movq	%xmm2, 40(%rsp)
+	movq	%xmm3, 48(%rsp)
+	movq	%rcx, 56(%rsp)
+	movq	%r8, 64(%rsp)
+	movq	%r9, 72(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	72(%rsp), %r9
+	movq	64(%rsp), %r8
+	movq	56(%rsp), %rcx
+	movq	48(%rsp), %xmm3
+	movq	40(%rsp), %xmm2
+	movq	32(%rsp), %rdx
+	movq	24(%rsp), %rsi
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$88, %rsp
 	movq	1776(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7919,7 +9051,29 @@ GL_PREFIX(Map2d):
 	.type	GL_PREFIX(Map2f), @function
 GL_PREFIX(Map2f):
 #if defined(GLX_USE_TLS)
+	subq	$88, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%rsi, 24(%rsp)
+	movq	%rdx, 32(%rsp)
+	movq	%xmm2, 40(%rsp)
+	movq	%xmm3, 48(%rsp)
+	movq	%rcx, 56(%rsp)
+	movq	%r8, 64(%rsp)
+	movq	%r9, 72(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	72(%rsp), %r9
+	movq	64(%rsp), %r8
+	movq	56(%rsp), %rcx
+	movq	48(%rsp), %xmm3
+	movq	40(%rsp), %xmm2
+	movq	32(%rsp), %rdx
+	movq	24(%rsp), %rsi
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$88, %rsp
 	movq	1784(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -7988,7 +9142,15 @@ GL_PREFIX(Map2f):
 	.type	GL_PREFIX(MapGrid1d), @function
 GL_PREFIX(MapGrid1d):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	1792(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8029,7 +9191,15 @@ GL_PREFIX(MapGrid1d):
 	.type	GL_PREFIX(MapGrid1f), @function
 GL_PREFIX(MapGrid1f):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	1800(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8070,7 +9240,21 @@ GL_PREFIX(MapGrid1f):
 	.type	GL_PREFIX(MapGrid2d), @function
 GL_PREFIX(MapGrid2d):
 #if defined(GLX_USE_TLS)
+	subq	$56, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%rsi, 24(%rsp)
+	movq	%xmm2, 32(%rsp)
+	movq	%xmm3, 40(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	40(%rsp), %xmm3
+	movq	32(%rsp), %xmm2
+	movq	24(%rsp), %rsi
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$56, %rsp
 	movq	1808(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8123,7 +9307,21 @@ GL_PREFIX(MapGrid2d):
 	.type	GL_PREFIX(MapGrid2f), @function
 GL_PREFIX(MapGrid2f):
 #if defined(GLX_USE_TLS)
+	subq	$56, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%rsi, 24(%rsp)
+	movq	%xmm2, 32(%rsp)
+	movq	%xmm3, 40(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	40(%rsp), %xmm3
+	movq	32(%rsp), %xmm2
+	movq	24(%rsp), %rsi
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$56, %rsp
 	movq	1816(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8176,7 +9374,11 @@ GL_PREFIX(MapGrid2f):
 	.type	GL_PREFIX(EvalCoord1d), @function
 GL_PREFIX(EvalCoord1d):
 #if defined(GLX_USE_TLS)
+	subq	$8, %rsp
+	movq	%xmm0, (%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	(%rsp), %xmm0
+	addq	$8, %rsp
 	movq	1824(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8209,7 +9411,9 @@ GL_PREFIX(EvalCoord1d):
 	.type	GL_PREFIX(EvalCoord1dv), @function
 GL_PREFIX(EvalCoord1dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1832(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8238,7 +9442,11 @@ GL_PREFIX(EvalCoord1dv):
 	.type	GL_PREFIX(EvalCoord1f), @function
 GL_PREFIX(EvalCoord1f):
 #if defined(GLX_USE_TLS)
+	subq	$8, %rsp
+	movq	%xmm0, (%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	(%rsp), %xmm0
+	addq	$8, %rsp
 	movq	1840(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8271,7 +9479,9 @@ GL_PREFIX(EvalCoord1f):
 	.type	GL_PREFIX(EvalCoord1fv), @function
 GL_PREFIX(EvalCoord1fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1848(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8300,7 +9510,13 @@ GL_PREFIX(EvalCoord1fv):
 	.type	GL_PREFIX(EvalCoord2d), @function
 GL_PREFIX(EvalCoord2d):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	1856(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8337,7 +9553,9 @@ GL_PREFIX(EvalCoord2d):
 	.type	GL_PREFIX(EvalCoord2dv), @function
 GL_PREFIX(EvalCoord2dv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1864(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8366,7 +9584,13 @@ GL_PREFIX(EvalCoord2dv):
 	.type	GL_PREFIX(EvalCoord2f), @function
 GL_PREFIX(EvalCoord2f):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	1872(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8403,7 +9627,9 @@ GL_PREFIX(EvalCoord2f):
 	.type	GL_PREFIX(EvalCoord2fv), @function
 GL_PREFIX(EvalCoord2fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1880(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8432,7 +9658,13 @@ GL_PREFIX(EvalCoord2fv):
 	.type	GL_PREFIX(EvalMesh1), @function
 GL_PREFIX(EvalMesh1):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1888(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8469,7 +9701,9 @@ GL_PREFIX(EvalMesh1):
 	.type	GL_PREFIX(EvalPoint1), @function
 GL_PREFIX(EvalPoint1):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1896(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8498,7 +9732,17 @@ GL_PREFIX(EvalPoint1):
 	.type	GL_PREFIX(EvalMesh2), @function
 GL_PREFIX(EvalMesh2):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1904(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8543,7 +9787,13 @@ GL_PREFIX(EvalMesh2):
 	.type	GL_PREFIX(EvalPoint2), @function
 GL_PREFIX(EvalPoint2):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1912(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8580,7 +9830,13 @@ GL_PREFIX(EvalPoint2):
 	.type	GL_PREFIX(AlphaFunc), @function
 GL_PREFIX(AlphaFunc):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1920(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8617,7 +9873,13 @@ GL_PREFIX(AlphaFunc):
 	.type	GL_PREFIX(BlendFunc), @function
 GL_PREFIX(BlendFunc):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1928(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8654,7 +9916,9 @@ GL_PREFIX(BlendFunc):
 	.type	GL_PREFIX(LogicOp), @function
 GL_PREFIX(LogicOp):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1936(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8683,7 +9947,13 @@ GL_PREFIX(LogicOp):
 	.type	GL_PREFIX(StencilFunc), @function
 GL_PREFIX(StencilFunc):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1944(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8720,7 +9990,13 @@ GL_PREFIX(StencilFunc):
 	.type	GL_PREFIX(StencilOp), @function
 GL_PREFIX(StencilOp):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	1952(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8757,7 +10033,9 @@ GL_PREFIX(StencilOp):
 	.type	GL_PREFIX(DepthFunc), @function
 GL_PREFIX(DepthFunc):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	1960(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8786,7 +10064,13 @@ GL_PREFIX(DepthFunc):
 	.type	GL_PREFIX(PixelZoom), @function
 GL_PREFIX(PixelZoom):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	1968(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8823,7 +10107,13 @@ GL_PREFIX(PixelZoom):
 	.type	GL_PREFIX(PixelTransferf), @function
 GL_PREFIX(PixelTransferf):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	1976(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8860,7 +10150,13 @@ GL_PREFIX(PixelTransferf):
 	.type	GL_PREFIX(PixelTransferi), @function
 GL_PREFIX(PixelTransferi):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	1984(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8897,7 +10193,13 @@ GL_PREFIX(PixelTransferi):
 	.type	GL_PREFIX(PixelStoref), @function
 GL_PREFIX(PixelStoref):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	1992(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8934,7 +10236,13 @@ GL_PREFIX(PixelStoref):
 	.type	GL_PREFIX(PixelStorei), @function
 GL_PREFIX(PixelStorei):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2000(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -8971,7 +10279,13 @@ GL_PREFIX(PixelStorei):
 	.type	GL_PREFIX(PixelMapfv), @function
 GL_PREFIX(PixelMapfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2008(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9008,7 +10322,13 @@ GL_PREFIX(PixelMapfv):
 	.type	GL_PREFIX(PixelMapuiv), @function
 GL_PREFIX(PixelMapuiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2016(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9045,7 +10365,13 @@ GL_PREFIX(PixelMapuiv):
 	.type	GL_PREFIX(PixelMapusv), @function
 GL_PREFIX(PixelMapusv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2024(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9082,7 +10408,9 @@ GL_PREFIX(PixelMapusv):
 	.type	GL_PREFIX(ReadBuffer), @function
 GL_PREFIX(ReadBuffer):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2032(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9111,7 +10439,17 @@ GL_PREFIX(ReadBuffer):
 	.type	GL_PREFIX(CopyPixels), @function
 GL_PREFIX(CopyPixels):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2040(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9156,7 +10494,21 @@ GL_PREFIX(CopyPixels):
 	.type	GL_PREFIX(ReadPixels), @function
 GL_PREFIX(ReadPixels):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2048(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9209,7 +10561,17 @@ GL_PREFIX(ReadPixels):
 	.type	GL_PREFIX(DrawPixels), @function
 GL_PREFIX(DrawPixels):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2056(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9254,7 +10616,13 @@ GL_PREFIX(DrawPixels):
 	.type	GL_PREFIX(GetBooleanv), @function
 GL_PREFIX(GetBooleanv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2064(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9291,7 +10659,13 @@ GL_PREFIX(GetBooleanv):
 	.type	GL_PREFIX(GetClipPlane), @function
 GL_PREFIX(GetClipPlane):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2072(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9328,7 +10702,13 @@ GL_PREFIX(GetClipPlane):
 	.type	GL_PREFIX(GetDoublev), @function
 GL_PREFIX(GetDoublev):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2080(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9365,7 +10745,9 @@ GL_PREFIX(GetDoublev):
 	.type	GL_PREFIX(GetError), @function
 GL_PREFIX(GetError):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	2088(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9394,7 +10776,13 @@ GL_PREFIX(GetError):
 	.type	GL_PREFIX(GetFloatv), @function
 GL_PREFIX(GetFloatv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2096(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9431,7 +10819,13 @@ GL_PREFIX(GetFloatv):
 	.type	GL_PREFIX(GetIntegerv), @function
 GL_PREFIX(GetIntegerv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2104(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9468,7 +10862,13 @@ GL_PREFIX(GetIntegerv):
 	.type	GL_PREFIX(GetLightfv), @function
 GL_PREFIX(GetLightfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2112(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9505,7 +10905,13 @@ GL_PREFIX(GetLightfv):
 	.type	GL_PREFIX(GetLightiv), @function
 GL_PREFIX(GetLightiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2120(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9542,7 +10948,13 @@ GL_PREFIX(GetLightiv):
 	.type	GL_PREFIX(GetMapdv), @function
 GL_PREFIX(GetMapdv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2128(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9579,7 +10991,13 @@ GL_PREFIX(GetMapdv):
 	.type	GL_PREFIX(GetMapfv), @function
 GL_PREFIX(GetMapfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2136(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9616,7 +11034,13 @@ GL_PREFIX(GetMapfv):
 	.type	GL_PREFIX(GetMapiv), @function
 GL_PREFIX(GetMapiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2144(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9653,7 +11077,13 @@ GL_PREFIX(GetMapiv):
 	.type	GL_PREFIX(GetMaterialfv), @function
 GL_PREFIX(GetMaterialfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2152(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9690,7 +11120,13 @@ GL_PREFIX(GetMaterialfv):
 	.type	GL_PREFIX(GetMaterialiv), @function
 GL_PREFIX(GetMaterialiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2160(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9727,7 +11163,13 @@ GL_PREFIX(GetMaterialiv):
 	.type	GL_PREFIX(GetPixelMapfv), @function
 GL_PREFIX(GetPixelMapfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2168(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9764,7 +11206,13 @@ GL_PREFIX(GetPixelMapfv):
 	.type	GL_PREFIX(GetPixelMapuiv), @function
 GL_PREFIX(GetPixelMapuiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2176(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9801,7 +11249,13 @@ GL_PREFIX(GetPixelMapuiv):
 	.type	GL_PREFIX(GetPixelMapusv), @function
 GL_PREFIX(GetPixelMapusv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2184(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9838,7 +11292,9 @@ GL_PREFIX(GetPixelMapusv):
 	.type	GL_PREFIX(GetPolygonStipple), @function
 GL_PREFIX(GetPolygonStipple):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2192(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9867,7 +11323,9 @@ GL_PREFIX(GetPolygonStipple):
 	.type	GL_PREFIX(GetString), @function
 GL_PREFIX(GetString):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2200(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9896,7 +11354,13 @@ GL_PREFIX(GetString):
 	.type	GL_PREFIX(GetTexEnvfv), @function
 GL_PREFIX(GetTexEnvfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2208(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9933,7 +11397,13 @@ GL_PREFIX(GetTexEnvfv):
 	.type	GL_PREFIX(GetTexEnviv), @function
 GL_PREFIX(GetTexEnviv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2216(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -9970,7 +11440,13 @@ GL_PREFIX(GetTexEnviv):
 	.type	GL_PREFIX(GetTexGendv), @function
 GL_PREFIX(GetTexGendv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2224(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10007,7 +11483,13 @@ GL_PREFIX(GetTexGendv):
 	.type	GL_PREFIX(GetTexGenfv), @function
 GL_PREFIX(GetTexGenfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2232(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10044,7 +11526,13 @@ GL_PREFIX(GetTexGenfv):
 	.type	GL_PREFIX(GetTexGeniv), @function
 GL_PREFIX(GetTexGeniv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2240(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10081,7 +11569,17 @@ GL_PREFIX(GetTexGeniv):
 	.type	GL_PREFIX(GetTexImage), @function
 GL_PREFIX(GetTexImage):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2248(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10126,7 +11624,13 @@ GL_PREFIX(GetTexImage):
 	.type	GL_PREFIX(GetTexParameterfv), @function
 GL_PREFIX(GetTexParameterfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2256(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10163,7 +11667,13 @@ GL_PREFIX(GetTexParameterfv):
 	.type	GL_PREFIX(GetTexParameteriv), @function
 GL_PREFIX(GetTexParameteriv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2264(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10200,7 +11710,17 @@ GL_PREFIX(GetTexParameteriv):
 	.type	GL_PREFIX(GetTexLevelParameterfv), @function
 GL_PREFIX(GetTexLevelParameterfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2272(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10245,7 +11765,17 @@ GL_PREFIX(GetTexLevelParameterfv):
 	.type	GL_PREFIX(GetTexLevelParameteriv), @function
 GL_PREFIX(GetTexLevelParameteriv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2280(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10290,7 +11820,9 @@ GL_PREFIX(GetTexLevelParameteriv):
 	.type	GL_PREFIX(IsEnabled), @function
 GL_PREFIX(IsEnabled):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2288(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10319,7 +11851,9 @@ GL_PREFIX(IsEnabled):
 	.type	GL_PREFIX(IsList), @function
 GL_PREFIX(IsList):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2296(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10348,7 +11882,13 @@ GL_PREFIX(IsList):
 	.type	GL_PREFIX(DepthRange), @function
 GL_PREFIX(DepthRange):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2304(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10385,7 +11925,21 @@ GL_PREFIX(DepthRange):
 	.type	GL_PREFIX(Frustum), @function
 GL_PREFIX(Frustum):
 #if defined(GLX_USE_TLS)
+	subq	$56, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
+	movq	%xmm4, 32(%rsp)
+	movq	%xmm5, 40(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	40(%rsp), %xmm5
+	movq	32(%rsp), %xmm4
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$56, %rsp
 	movq	2312(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10438,7 +11992,9 @@ GL_PREFIX(Frustum):
 	.type	GL_PREFIX(LoadIdentity), @function
 GL_PREFIX(LoadIdentity):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	2320(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10467,7 +12023,9 @@ GL_PREFIX(LoadIdentity):
 	.type	GL_PREFIX(LoadMatrixf), @function
 GL_PREFIX(LoadMatrixf):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2328(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10496,7 +12054,9 @@ GL_PREFIX(LoadMatrixf):
 	.type	GL_PREFIX(LoadMatrixd), @function
 GL_PREFIX(LoadMatrixd):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2336(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10525,7 +12085,9 @@ GL_PREFIX(LoadMatrixd):
 	.type	GL_PREFIX(MatrixMode), @function
 GL_PREFIX(MatrixMode):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2344(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10554,7 +12116,9 @@ GL_PREFIX(MatrixMode):
 	.type	GL_PREFIX(MultMatrixf), @function
 GL_PREFIX(MultMatrixf):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2352(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10583,7 +12147,9 @@ GL_PREFIX(MultMatrixf):
 	.type	GL_PREFIX(MultMatrixd), @function
 GL_PREFIX(MultMatrixd):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2360(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10612,7 +12178,21 @@ GL_PREFIX(MultMatrixd):
 	.type	GL_PREFIX(Ortho), @function
 GL_PREFIX(Ortho):
 #if defined(GLX_USE_TLS)
+	subq	$56, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
+	movq	%xmm4, 32(%rsp)
+	movq	%xmm5, 40(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	40(%rsp), %xmm5
+	movq	32(%rsp), %xmm4
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$56, %rsp
 	movq	2368(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10665,7 +12245,9 @@ GL_PREFIX(Ortho):
 	.type	GL_PREFIX(PopMatrix), @function
 GL_PREFIX(PopMatrix):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	2376(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10694,7 +12276,9 @@ GL_PREFIX(PopMatrix):
 	.type	GL_PREFIX(PushMatrix), @function
 GL_PREFIX(PushMatrix):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	2384(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10723,7 +12307,17 @@ GL_PREFIX(PushMatrix):
 	.type	GL_PREFIX(Rotated), @function
 GL_PREFIX(Rotated):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	2392(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10768,7 +12362,17 @@ GL_PREFIX(Rotated):
 	.type	GL_PREFIX(Rotatef), @function
 GL_PREFIX(Rotatef):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	2400(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10813,7 +12417,15 @@ GL_PREFIX(Rotatef):
 	.type	GL_PREFIX(Scaled), @function
 GL_PREFIX(Scaled):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	2408(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10854,7 +12466,15 @@ GL_PREFIX(Scaled):
 	.type	GL_PREFIX(Scalef), @function
 GL_PREFIX(Scalef):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	2416(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10895,7 +12515,15 @@ GL_PREFIX(Scalef):
 	.type	GL_PREFIX(Translated), @function
 GL_PREFIX(Translated):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	2424(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10936,7 +12564,15 @@ GL_PREFIX(Translated):
 	.type	GL_PREFIX(Translatef), @function
 GL_PREFIX(Translatef):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	2432(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -10977,7 +12613,17 @@ GL_PREFIX(Translatef):
 	.type	GL_PREFIX(Viewport), @function
 GL_PREFIX(Viewport):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2440(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11022,7 +12668,9 @@ GL_PREFIX(Viewport):
 	.type	GL_PREFIX(ArrayElement), @function
 GL_PREFIX(ArrayElement):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2448(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11051,7 +12699,13 @@ GL_PREFIX(ArrayElement):
 	.type	GL_PREFIX(BindTexture), @function
 GL_PREFIX(BindTexture):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2456(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11088,7 +12742,17 @@ GL_PREFIX(BindTexture):
 	.type	GL_PREFIX(ColorPointer), @function
 GL_PREFIX(ColorPointer):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2464(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11133,7 +12797,9 @@ GL_PREFIX(ColorPointer):
 	.type	GL_PREFIX(DisableClientState), @function
 GL_PREFIX(DisableClientState):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2472(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11162,7 +12828,13 @@ GL_PREFIX(DisableClientState):
 	.type	GL_PREFIX(DrawArrays), @function
 GL_PREFIX(DrawArrays):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2480(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11199,7 +12871,17 @@ GL_PREFIX(DrawArrays):
 	.type	GL_PREFIX(DrawElements), @function
 GL_PREFIX(DrawElements):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2488(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11244,7 +12926,13 @@ GL_PREFIX(DrawElements):
 	.type	GL_PREFIX(EdgeFlagPointer), @function
 GL_PREFIX(EdgeFlagPointer):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2496(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11281,7 +12969,9 @@ GL_PREFIX(EdgeFlagPointer):
 	.type	GL_PREFIX(EnableClientState), @function
 GL_PREFIX(EnableClientState):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2504(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11310,7 +13000,13 @@ GL_PREFIX(EnableClientState):
 	.type	GL_PREFIX(IndexPointer), @function
 GL_PREFIX(IndexPointer):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2512(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11347,7 +13043,9 @@ GL_PREFIX(IndexPointer):
 	.type	GL_PREFIX(Indexub), @function
 GL_PREFIX(Indexub):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2520(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11376,7 +13074,9 @@ GL_PREFIX(Indexub):
 	.type	GL_PREFIX(Indexubv), @function
 GL_PREFIX(Indexubv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2528(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11405,7 +13105,13 @@ GL_PREFIX(Indexubv):
 	.type	GL_PREFIX(InterleavedArrays), @function
 GL_PREFIX(InterleavedArrays):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2536(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11442,7 +13148,13 @@ GL_PREFIX(InterleavedArrays):
 	.type	GL_PREFIX(NormalPointer), @function
 GL_PREFIX(NormalPointer):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2544(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11479,7 +13191,13 @@ GL_PREFIX(NormalPointer):
 	.type	GL_PREFIX(PolygonOffset), @function
 GL_PREFIX(PolygonOffset):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	2552(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11516,7 +13234,17 @@ GL_PREFIX(PolygonOffset):
 	.type	GL_PREFIX(TexCoordPointer), @function
 GL_PREFIX(TexCoordPointer):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2560(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11561,7 +13289,17 @@ GL_PREFIX(TexCoordPointer):
 	.type	GL_PREFIX(VertexPointer), @function
 GL_PREFIX(VertexPointer):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2568(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11606,7 +13344,13 @@ GL_PREFIX(VertexPointer):
 	.type	GL_PREFIX(AreTexturesResident), @function
 GL_PREFIX(AreTexturesResident):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2576(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11643,7 +13387,21 @@ GL_PREFIX(AreTexturesResident):
 	.type	GL_PREFIX(CopyTexImage1D), @function
 GL_PREFIX(CopyTexImage1D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2584(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11696,7 +13454,21 @@ GL_PREFIX(CopyTexImage1D):
 	.type	GL_PREFIX(CopyTexImage2D), @function
 GL_PREFIX(CopyTexImage2D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2592(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11749,7 +13521,21 @@ GL_PREFIX(CopyTexImage2D):
 	.type	GL_PREFIX(CopyTexSubImage1D), @function
 GL_PREFIX(CopyTexSubImage1D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2600(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11802,7 +13588,21 @@ GL_PREFIX(CopyTexSubImage1D):
 	.type	GL_PREFIX(CopyTexSubImage2D), @function
 GL_PREFIX(CopyTexSubImage2D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2608(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11855,7 +13655,13 @@ GL_PREFIX(CopyTexSubImage2D):
 	.type	GL_PREFIX(DeleteTextures), @function
 GL_PREFIX(DeleteTextures):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2616(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11892,7 +13698,13 @@ GL_PREFIX(DeleteTextures):
 	.type	GL_PREFIX(GenTextures), @function
 GL_PREFIX(GenTextures):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2624(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11929,7 +13741,13 @@ GL_PREFIX(GenTextures):
 	.type	GL_PREFIX(GetPointerv), @function
 GL_PREFIX(GetPointerv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	2632(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11966,7 +13784,9 @@ GL_PREFIX(GetPointerv):
 	.type	GL_PREFIX(IsTexture), @function
 GL_PREFIX(IsTexture):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2640(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -11995,7 +13815,13 @@ GL_PREFIX(IsTexture):
 	.type	GL_PREFIX(PrioritizeTextures), @function
 GL_PREFIX(PrioritizeTextures):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2648(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12032,7 +13858,21 @@ GL_PREFIX(PrioritizeTextures):
 	.type	GL_PREFIX(TexSubImage1D), @function
 GL_PREFIX(TexSubImage1D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2656(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12085,7 +13925,21 @@ GL_PREFIX(TexSubImage1D):
 	.type	GL_PREFIX(TexSubImage2D), @function
 GL_PREFIX(TexSubImage2D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2664(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12138,7 +13992,9 @@ GL_PREFIX(TexSubImage2D):
 	.type	GL_PREFIX(PopClientAttrib), @function
 GL_PREFIX(PopClientAttrib):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	2672(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12167,7 +14023,9 @@ GL_PREFIX(PopClientAttrib):
 	.type	GL_PREFIX(PushClientAttrib), @function
 GL_PREFIX(PushClientAttrib):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2680(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12196,7 +14054,17 @@ GL_PREFIX(PushClientAttrib):
 	.type	GL_PREFIX(BlendColor), @function
 GL_PREFIX(BlendColor):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2688(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12241,7 +14109,9 @@ GL_PREFIX(BlendColor):
 	.type	GL_PREFIX(BlendEquation), @function
 GL_PREFIX(BlendEquation):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2696(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12270,7 +14140,21 @@ GL_PREFIX(BlendEquation):
 	.type	GL_PREFIX(DrawRangeElements), @function
 GL_PREFIX(DrawRangeElements):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2704(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12323,7 +14207,21 @@ GL_PREFIX(DrawRangeElements):
 	.type	GL_PREFIX(ColorTable), @function
 GL_PREFIX(ColorTable):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2712(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12376,7 +14274,13 @@ GL_PREFIX(ColorTable):
 	.type	GL_PREFIX(ColorTableParameterfv), @function
 GL_PREFIX(ColorTableParameterfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2720(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12413,7 +14317,13 @@ GL_PREFIX(ColorTableParameterfv):
 	.type	GL_PREFIX(ColorTableParameteriv), @function
 GL_PREFIX(ColorTableParameteriv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2728(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12450,7 +14360,17 @@ GL_PREFIX(ColorTableParameteriv):
 	.type	GL_PREFIX(CopyColorTable), @function
 GL_PREFIX(CopyColorTable):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2736(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12495,7 +14415,17 @@ GL_PREFIX(CopyColorTable):
 	.type	GL_PREFIX(GetColorTable), @function
 GL_PREFIX(GetColorTable):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2744(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12540,7 +14470,13 @@ GL_PREFIX(GetColorTable):
 	.type	GL_PREFIX(GetColorTableParameterfv), @function
 GL_PREFIX(GetColorTableParameterfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2752(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12577,7 +14513,13 @@ GL_PREFIX(GetColorTableParameterfv):
 	.type	GL_PREFIX(GetColorTableParameteriv), @function
 GL_PREFIX(GetColorTableParameteriv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2760(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12614,7 +14556,21 @@ GL_PREFIX(GetColorTableParameteriv):
 	.type	GL_PREFIX(ColorSubTable), @function
 GL_PREFIX(ColorSubTable):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2768(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12667,7 +14623,17 @@ GL_PREFIX(ColorSubTable):
 	.type	GL_PREFIX(CopyColorSubTable), @function
 GL_PREFIX(CopyColorSubTable):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2776(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12712,7 +14678,21 @@ GL_PREFIX(CopyColorSubTable):
 	.type	GL_PREFIX(ConvolutionFilter1D), @function
 GL_PREFIX(ConvolutionFilter1D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2784(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12765,7 +14745,21 @@ GL_PREFIX(ConvolutionFilter1D):
 	.type	GL_PREFIX(ConvolutionFilter2D), @function
 GL_PREFIX(ConvolutionFilter2D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2792(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12818,7 +14812,15 @@ GL_PREFIX(ConvolutionFilter2D):
 	.type	GL_PREFIX(ConvolutionParameterf), @function
 GL_PREFIX(ConvolutionParameterf):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%xmm0, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm0
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	2800(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12859,7 +14861,13 @@ GL_PREFIX(ConvolutionParameterf):
 	.type	GL_PREFIX(ConvolutionParameterfv), @function
 GL_PREFIX(ConvolutionParameterfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2808(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12896,7 +14904,13 @@ GL_PREFIX(ConvolutionParameterfv):
 	.type	GL_PREFIX(ConvolutionParameteri), @function
 GL_PREFIX(ConvolutionParameteri):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2816(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12933,7 +14947,13 @@ GL_PREFIX(ConvolutionParameteri):
 	.type	GL_PREFIX(ConvolutionParameteriv), @function
 GL_PREFIX(ConvolutionParameteriv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2824(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -12970,7 +14990,17 @@ GL_PREFIX(ConvolutionParameteriv):
 	.type	GL_PREFIX(CopyConvolutionFilter1D), @function
 GL_PREFIX(CopyConvolutionFilter1D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2832(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13015,7 +15045,21 @@ GL_PREFIX(CopyConvolutionFilter1D):
 	.type	GL_PREFIX(CopyConvolutionFilter2D), @function
 GL_PREFIX(CopyConvolutionFilter2D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2840(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13068,7 +15112,17 @@ GL_PREFIX(CopyConvolutionFilter2D):
 	.type	GL_PREFIX(GetConvolutionFilter), @function
 GL_PREFIX(GetConvolutionFilter):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2848(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13113,7 +15167,13 @@ GL_PREFIX(GetConvolutionFilter):
 	.type	GL_PREFIX(GetConvolutionParameterfv), @function
 GL_PREFIX(GetConvolutionParameterfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2856(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13150,7 +15210,13 @@ GL_PREFIX(GetConvolutionParameterfv):
 	.type	GL_PREFIX(GetConvolutionParameteriv), @function
 GL_PREFIX(GetConvolutionParameteriv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2864(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13187,7 +15253,21 @@ GL_PREFIX(GetConvolutionParameteriv):
 	.type	GL_PREFIX(GetSeparableFilter), @function
 GL_PREFIX(GetSeparableFilter):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2872(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13240,7 +15320,21 @@ GL_PREFIX(GetSeparableFilter):
 	.type	GL_PREFIX(SeparableFilter2D), @function
 GL_PREFIX(SeparableFilter2D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2880(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13293,7 +15387,17 @@ GL_PREFIX(SeparableFilter2D):
 	.type	GL_PREFIX(GetHistogram), @function
 GL_PREFIX(GetHistogram):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2888(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13338,7 +15442,13 @@ GL_PREFIX(GetHistogram):
 	.type	GL_PREFIX(GetHistogramParameterfv), @function
 GL_PREFIX(GetHistogramParameterfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2896(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13375,7 +15485,13 @@ GL_PREFIX(GetHistogramParameterfv):
 	.type	GL_PREFIX(GetHistogramParameteriv), @function
 GL_PREFIX(GetHistogramParameteriv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2904(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13412,7 +15528,17 @@ GL_PREFIX(GetHistogramParameteriv):
 	.type	GL_PREFIX(GetMinmax), @function
 GL_PREFIX(GetMinmax):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2912(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13457,7 +15583,13 @@ GL_PREFIX(GetMinmax):
 	.type	GL_PREFIX(GetMinmaxParameterfv), @function
 GL_PREFIX(GetMinmaxParameterfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2920(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13494,7 +15626,13 @@ GL_PREFIX(GetMinmaxParameterfv):
 	.type	GL_PREFIX(GetMinmaxParameteriv), @function
 GL_PREFIX(GetMinmaxParameteriv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2928(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13531,7 +15669,17 @@ GL_PREFIX(GetMinmaxParameteriv):
 	.type	GL_PREFIX(Histogram), @function
 GL_PREFIX(Histogram):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2936(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13576,7 +15724,13 @@ GL_PREFIX(Histogram):
 	.type	GL_PREFIX(Minmax), @function
 GL_PREFIX(Minmax):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2944(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13613,7 +15767,9 @@ GL_PREFIX(Minmax):
 	.type	GL_PREFIX(ResetHistogram), @function
 GL_PREFIX(ResetHistogram):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2952(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13642,7 +15798,9 @@ GL_PREFIX(ResetHistogram):
 	.type	GL_PREFIX(ResetMinmax), @function
 GL_PREFIX(ResetMinmax):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2960(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13671,7 +15829,21 @@ GL_PREFIX(ResetMinmax):
 	.type	GL_PREFIX(TexImage3D), @function
 GL_PREFIX(TexImage3D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2968(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13724,7 +15896,21 @@ GL_PREFIX(TexImage3D):
 	.type	GL_PREFIX(TexSubImage3D), @function
 GL_PREFIX(TexSubImage3D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2976(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13777,7 +15963,21 @@ GL_PREFIX(TexSubImage3D):
 	.type	GL_PREFIX(CopyTexSubImage3D), @function
 GL_PREFIX(CopyTexSubImage3D):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	2984(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13830,7 +16030,9 @@ GL_PREFIX(CopyTexSubImage3D):
 	.type	GL_PREFIX(ActiveTextureARB), @function
 GL_PREFIX(ActiveTextureARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	2992(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13859,7 +16061,9 @@ GL_PREFIX(ActiveTextureARB):
 	.type	GL_PREFIX(ClientActiveTextureARB), @function
 GL_PREFIX(ClientActiveTextureARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	3000(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13888,7 +16092,13 @@ GL_PREFIX(ClientActiveTextureARB):
 	.type	GL_PREFIX(MultiTexCoord1dARB), @function
 GL_PREFIX(MultiTexCoord1dARB):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	3008(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13925,7 +16135,13 @@ GL_PREFIX(MultiTexCoord1dARB):
 	.type	GL_PREFIX(MultiTexCoord1dvARB), @function
 GL_PREFIX(MultiTexCoord1dvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3016(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13962,7 +16178,13 @@ GL_PREFIX(MultiTexCoord1dvARB):
 	.type	GL_PREFIX(MultiTexCoord1fARB), @function
 GL_PREFIX(MultiTexCoord1fARB):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	3024(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -13999,7 +16221,13 @@ GL_PREFIX(MultiTexCoord1fARB):
 	.type	GL_PREFIX(MultiTexCoord1fvARB), @function
 GL_PREFIX(MultiTexCoord1fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3032(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14036,7 +16264,13 @@ GL_PREFIX(MultiTexCoord1fvARB):
 	.type	GL_PREFIX(MultiTexCoord1iARB), @function
 GL_PREFIX(MultiTexCoord1iARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3040(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14073,7 +16307,13 @@ GL_PREFIX(MultiTexCoord1iARB):
 	.type	GL_PREFIX(MultiTexCoord1ivARB), @function
 GL_PREFIX(MultiTexCoord1ivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3048(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14110,7 +16350,13 @@ GL_PREFIX(MultiTexCoord1ivARB):
 	.type	GL_PREFIX(MultiTexCoord1sARB), @function
 GL_PREFIX(MultiTexCoord1sARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3056(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14147,7 +16393,13 @@ GL_PREFIX(MultiTexCoord1sARB):
 	.type	GL_PREFIX(MultiTexCoord1svARB), @function
 GL_PREFIX(MultiTexCoord1svARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3064(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14184,7 +16436,15 @@ GL_PREFIX(MultiTexCoord1svARB):
 	.type	GL_PREFIX(MultiTexCoord2dARB), @function
 GL_PREFIX(MultiTexCoord2dARB):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	3072(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14225,7 +16485,13 @@ GL_PREFIX(MultiTexCoord2dARB):
 	.type	GL_PREFIX(MultiTexCoord2dvARB), @function
 GL_PREFIX(MultiTexCoord2dvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3080(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14262,7 +16528,15 @@ GL_PREFIX(MultiTexCoord2dvARB):
 	.type	GL_PREFIX(MultiTexCoord2fARB), @function
 GL_PREFIX(MultiTexCoord2fARB):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	3088(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14303,7 +16577,13 @@ GL_PREFIX(MultiTexCoord2fARB):
 	.type	GL_PREFIX(MultiTexCoord2fvARB), @function
 GL_PREFIX(MultiTexCoord2fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3096(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14340,7 +16620,13 @@ GL_PREFIX(MultiTexCoord2fvARB):
 	.type	GL_PREFIX(MultiTexCoord2iARB), @function
 GL_PREFIX(MultiTexCoord2iARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3104(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14377,7 +16663,13 @@ GL_PREFIX(MultiTexCoord2iARB):
 	.type	GL_PREFIX(MultiTexCoord2ivARB), @function
 GL_PREFIX(MultiTexCoord2ivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3112(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14414,7 +16706,13 @@ GL_PREFIX(MultiTexCoord2ivARB):
 	.type	GL_PREFIX(MultiTexCoord2sARB), @function
 GL_PREFIX(MultiTexCoord2sARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3120(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14451,7 +16749,13 @@ GL_PREFIX(MultiTexCoord2sARB):
 	.type	GL_PREFIX(MultiTexCoord2svARB), @function
 GL_PREFIX(MultiTexCoord2svARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3128(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14488,7 +16792,17 @@ GL_PREFIX(MultiTexCoord2svARB):
 	.type	GL_PREFIX(MultiTexCoord3dARB), @function
 GL_PREFIX(MultiTexCoord3dARB):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%xmm2, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm2
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	3136(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14533,7 +16847,13 @@ GL_PREFIX(MultiTexCoord3dARB):
 	.type	GL_PREFIX(MultiTexCoord3dvARB), @function
 GL_PREFIX(MultiTexCoord3dvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3144(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14570,7 +16890,17 @@ GL_PREFIX(MultiTexCoord3dvARB):
 	.type	GL_PREFIX(MultiTexCoord3fARB), @function
 GL_PREFIX(MultiTexCoord3fARB):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%xmm2, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm2
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	3152(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14615,7 +16945,13 @@ GL_PREFIX(MultiTexCoord3fARB):
 	.type	GL_PREFIX(MultiTexCoord3fvARB), @function
 GL_PREFIX(MultiTexCoord3fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3160(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14652,7 +16988,17 @@ GL_PREFIX(MultiTexCoord3fvARB):
 	.type	GL_PREFIX(MultiTexCoord3iARB), @function
 GL_PREFIX(MultiTexCoord3iARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3168(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14697,7 +17043,13 @@ GL_PREFIX(MultiTexCoord3iARB):
 	.type	GL_PREFIX(MultiTexCoord3ivARB), @function
 GL_PREFIX(MultiTexCoord3ivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3176(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14734,7 +17086,17 @@ GL_PREFIX(MultiTexCoord3ivARB):
 	.type	GL_PREFIX(MultiTexCoord3sARB), @function
 GL_PREFIX(MultiTexCoord3sARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3184(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14779,7 +17141,13 @@ GL_PREFIX(MultiTexCoord3sARB):
 	.type	GL_PREFIX(MultiTexCoord3svARB), @function
 GL_PREFIX(MultiTexCoord3svARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3192(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14816,7 +17184,19 @@ GL_PREFIX(MultiTexCoord3svARB):
 	.type	GL_PREFIX(MultiTexCoord4dARB), @function
 GL_PREFIX(MultiTexCoord4dARB):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%xmm2, 24(%rsp)
+	movq	%xmm3, 32(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	32(%rsp), %xmm3
+	movq	24(%rsp), %xmm2
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	3200(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14865,7 +17245,13 @@ GL_PREFIX(MultiTexCoord4dARB):
 	.type	GL_PREFIX(MultiTexCoord4dvARB), @function
 GL_PREFIX(MultiTexCoord4dvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3208(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14902,7 +17288,19 @@ GL_PREFIX(MultiTexCoord4dvARB):
 	.type	GL_PREFIX(MultiTexCoord4fARB), @function
 GL_PREFIX(MultiTexCoord4fARB):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%xmm2, 24(%rsp)
+	movq	%xmm3, 32(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	32(%rsp), %xmm3
+	movq	24(%rsp), %xmm2
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	3216(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14951,7 +17349,13 @@ GL_PREFIX(MultiTexCoord4fARB):
 	.type	GL_PREFIX(MultiTexCoord4fvARB), @function
 GL_PREFIX(MultiTexCoord4fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3224(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -14988,7 +17392,17 @@ GL_PREFIX(MultiTexCoord4fvARB):
 	.type	GL_PREFIX(MultiTexCoord4iARB), @function
 GL_PREFIX(MultiTexCoord4iARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3232(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15033,7 +17447,13 @@ GL_PREFIX(MultiTexCoord4iARB):
 	.type	GL_PREFIX(MultiTexCoord4ivARB), @function
 GL_PREFIX(MultiTexCoord4ivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3240(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15070,7 +17490,17 @@ GL_PREFIX(MultiTexCoord4ivARB):
 	.type	GL_PREFIX(MultiTexCoord4sARB), @function
 GL_PREFIX(MultiTexCoord4sARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3248(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15115,7 +17545,13 @@ GL_PREFIX(MultiTexCoord4sARB):
 	.type	GL_PREFIX(MultiTexCoord4svARB), @function
 GL_PREFIX(MultiTexCoord4svARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3256(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15152,7 +17588,13 @@ GL_PREFIX(MultiTexCoord4svARB):
 	.type	GL_PREFIX(AttachShader), @function
 GL_PREFIX(AttachShader):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3264(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15189,7 +17631,9 @@ GL_PREFIX(AttachShader):
 	.type	GL_PREFIX(CreateProgram), @function
 GL_PREFIX(CreateProgram):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	3272(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15218,7 +17662,9 @@ GL_PREFIX(CreateProgram):
 	.type	GL_PREFIX(CreateShader), @function
 GL_PREFIX(CreateShader):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	3280(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15247,7 +17693,9 @@ GL_PREFIX(CreateShader):
 	.type	GL_PREFIX(DeleteProgram), @function
 GL_PREFIX(DeleteProgram):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	3288(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15276,7 +17724,9 @@ GL_PREFIX(DeleteProgram):
 	.type	GL_PREFIX(DeleteShader), @function
 GL_PREFIX(DeleteShader):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	3296(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15305,7 +17755,13 @@ GL_PREFIX(DeleteShader):
 	.type	GL_PREFIX(DetachShader), @function
 GL_PREFIX(DetachShader):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3304(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15342,7 +17798,17 @@ GL_PREFIX(DetachShader):
 	.type	GL_PREFIX(GetAttachedShaders), @function
 GL_PREFIX(GetAttachedShaders):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3312(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15387,7 +17853,17 @@ GL_PREFIX(GetAttachedShaders):
 	.type	GL_PREFIX(GetProgramInfoLog), @function
 GL_PREFIX(GetProgramInfoLog):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3320(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15432,7 +17908,13 @@ GL_PREFIX(GetProgramInfoLog):
 	.type	GL_PREFIX(GetProgramiv), @function
 GL_PREFIX(GetProgramiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3328(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15469,7 +17951,17 @@ GL_PREFIX(GetProgramiv):
 	.type	GL_PREFIX(GetShaderInfoLog), @function
 GL_PREFIX(GetShaderInfoLog):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3336(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15514,7 +18006,13 @@ GL_PREFIX(GetShaderInfoLog):
 	.type	GL_PREFIX(GetShaderiv), @function
 GL_PREFIX(GetShaderiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3344(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15551,7 +18049,9 @@ GL_PREFIX(GetShaderiv):
 	.type	GL_PREFIX(IsProgram), @function
 GL_PREFIX(IsProgram):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	3352(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15580,7 +18080,9 @@ GL_PREFIX(IsProgram):
 	.type	GL_PREFIX(IsShader), @function
 GL_PREFIX(IsShader):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	3360(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15609,7 +18111,17 @@ GL_PREFIX(IsShader):
 	.type	GL_PREFIX(StencilFuncSeparate), @function
 GL_PREFIX(StencilFuncSeparate):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3368(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15654,7 +18166,13 @@ GL_PREFIX(StencilFuncSeparate):
 	.type	GL_PREFIX(StencilMaskSeparate), @function
 GL_PREFIX(StencilMaskSeparate):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3376(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15691,7 +18209,17 @@ GL_PREFIX(StencilMaskSeparate):
 	.type	GL_PREFIX(StencilOpSeparate), @function
 GL_PREFIX(StencilOpSeparate):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3384(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15736,7 +18264,17 @@ GL_PREFIX(StencilOpSeparate):
 	.type	GL_PREFIX(UniformMatrix2x3fv), @function
 GL_PREFIX(UniformMatrix2x3fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3392(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15781,7 +18319,17 @@ GL_PREFIX(UniformMatrix2x3fv):
 	.type	GL_PREFIX(UniformMatrix2x4fv), @function
 GL_PREFIX(UniformMatrix2x4fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3400(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15826,7 +18374,17 @@ GL_PREFIX(UniformMatrix2x4fv):
 	.type	GL_PREFIX(UniformMatrix3x2fv), @function
 GL_PREFIX(UniformMatrix3x2fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3408(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15871,7 +18429,17 @@ GL_PREFIX(UniformMatrix3x2fv):
 	.type	GL_PREFIX(UniformMatrix3x4fv), @function
 GL_PREFIX(UniformMatrix3x4fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3416(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15916,7 +18484,17 @@ GL_PREFIX(UniformMatrix3x4fv):
 	.type	GL_PREFIX(UniformMatrix4x2fv), @function
 GL_PREFIX(UniformMatrix4x2fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3424(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -15961,7 +18539,17 @@ GL_PREFIX(UniformMatrix4x2fv):
 	.type	GL_PREFIX(UniformMatrix4x3fv), @function
 GL_PREFIX(UniformMatrix4x3fv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3432(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16006,7 +18594,13 @@ GL_PREFIX(UniformMatrix4x3fv):
 	.type	GL_PREFIX(ClampColor), @function
 GL_PREFIX(ClampColor):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3440(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16043,7 +18637,17 @@ GL_PREFIX(ClampColor):
 	.type	GL_PREFIX(ClearBufferfi), @function
 GL_PREFIX(ClearBufferfi):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%xmm0, 16(%rsp)
+	movq	%rdx, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %rdx
+	movq	16(%rsp), %xmm0
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	3448(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16088,7 +18692,13 @@ GL_PREFIX(ClearBufferfi):
 	.type	GL_PREFIX(ClearBufferfv), @function
 GL_PREFIX(ClearBufferfv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3456(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16125,7 +18735,13 @@ GL_PREFIX(ClearBufferfv):
 	.type	GL_PREFIX(ClearBufferiv), @function
 GL_PREFIX(ClearBufferiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3464(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16162,7 +18778,13 @@ GL_PREFIX(ClearBufferiv):
 	.type	GL_PREFIX(ClearBufferuiv), @function
 GL_PREFIX(ClearBufferuiv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3472(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16199,7 +18821,13 @@ GL_PREFIX(ClearBufferuiv):
 	.type	GL_PREFIX(GetStringi), @function
 GL_PREFIX(GetStringi):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3480(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16236,7 +18864,13 @@ GL_PREFIX(GetStringi):
 	.type	GL_PREFIX(TexBuffer), @function
 GL_PREFIX(TexBuffer):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3488(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16273,7 +18907,17 @@ GL_PREFIX(TexBuffer):
 	.type	GL_PREFIX(FramebufferTexture), @function
 GL_PREFIX(FramebufferTexture):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3496(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16318,7 +18962,13 @@ GL_PREFIX(FramebufferTexture):
 	.type	GL_PREFIX(GetBufferParameteri64v), @function
 GL_PREFIX(GetBufferParameteri64v):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3504(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16355,7 +19005,13 @@ GL_PREFIX(GetBufferParameteri64v):
 	.type	GL_PREFIX(GetInteger64i_v), @function
 GL_PREFIX(GetInteger64i_v):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3512(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16392,7 +19048,13 @@ GL_PREFIX(GetInteger64i_v):
 	.type	GL_PREFIX(VertexAttribDivisor), @function
 GL_PREFIX(VertexAttribDivisor):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3520(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16429,7 +19091,9 @@ GL_PREFIX(VertexAttribDivisor):
 	.type	GL_PREFIX(LoadTransposeMatrixdARB), @function
 GL_PREFIX(LoadTransposeMatrixdARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	3528(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16458,7 +19122,9 @@ GL_PREFIX(LoadTransposeMatrixdARB):
 	.type	GL_PREFIX(LoadTransposeMatrixfARB), @function
 GL_PREFIX(LoadTransposeMatrixfARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	3536(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16487,7 +19153,9 @@ GL_PREFIX(LoadTransposeMatrixfARB):
 	.type	GL_PREFIX(MultTransposeMatrixdARB), @function
 GL_PREFIX(MultTransposeMatrixdARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	3544(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16516,7 +19184,9 @@ GL_PREFIX(MultTransposeMatrixdARB):
 	.type	GL_PREFIX(MultTransposeMatrixfARB), @function
 GL_PREFIX(MultTransposeMatrixfARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	3552(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16545,7 +19215,13 @@ GL_PREFIX(MultTransposeMatrixfARB):
 	.type	GL_PREFIX(SampleCoverageARB), @function
 GL_PREFIX(SampleCoverageARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3560(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16582,7 +19258,21 @@ GL_PREFIX(SampleCoverageARB):
 	.type	GL_PREFIX(CompressedTexImage1DARB), @function
 GL_PREFIX(CompressedTexImage1DARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3568(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16635,7 +19325,21 @@ GL_PREFIX(CompressedTexImage1DARB):
 	.type	GL_PREFIX(CompressedTexImage2DARB), @function
 GL_PREFIX(CompressedTexImage2DARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3576(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16688,7 +19392,21 @@ GL_PREFIX(CompressedTexImage2DARB):
 	.type	GL_PREFIX(CompressedTexImage3DARB), @function
 GL_PREFIX(CompressedTexImage3DARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3584(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16741,7 +19459,21 @@ GL_PREFIX(CompressedTexImage3DARB):
 	.type	GL_PREFIX(CompressedTexSubImage1DARB), @function
 GL_PREFIX(CompressedTexSubImage1DARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3592(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16794,7 +19526,21 @@ GL_PREFIX(CompressedTexSubImage1DARB):
 	.type	GL_PREFIX(CompressedTexSubImage2DARB), @function
 GL_PREFIX(CompressedTexSubImage2DARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3600(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16847,7 +19593,21 @@ GL_PREFIX(CompressedTexSubImage2DARB):
 	.type	GL_PREFIX(CompressedTexSubImage3DARB), @function
 GL_PREFIX(CompressedTexSubImage3DARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3608(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16900,7 +19660,13 @@ GL_PREFIX(CompressedTexSubImage3DARB):
 	.type	GL_PREFIX(GetCompressedTexImageARB), @function
 GL_PREFIX(GetCompressedTexImageARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3616(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16937,7 +19703,9 @@ GL_PREFIX(GetCompressedTexImageARB):
 	.type	GL_PREFIX(DisableVertexAttribArrayARB), @function
 GL_PREFIX(DisableVertexAttribArrayARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	3624(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16966,7 +19734,9 @@ GL_PREFIX(DisableVertexAttribArrayARB):
 	.type	GL_PREFIX(EnableVertexAttribArrayARB), @function
 GL_PREFIX(EnableVertexAttribArrayARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	3632(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -16995,7 +19765,13 @@ GL_PREFIX(EnableVertexAttribArrayARB):
 	.type	GL_PREFIX(GetProgramEnvParameterdvARB), @function
 GL_PREFIX(GetProgramEnvParameterdvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3640(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17032,7 +19808,13 @@ GL_PREFIX(GetProgramEnvParameterdvARB):
 	.type	GL_PREFIX(GetProgramEnvParameterfvARB), @function
 GL_PREFIX(GetProgramEnvParameterfvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3648(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17069,7 +19851,13 @@ GL_PREFIX(GetProgramEnvParameterfvARB):
 	.type	GL_PREFIX(GetProgramLocalParameterdvARB), @function
 GL_PREFIX(GetProgramLocalParameterdvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3656(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17106,7 +19894,13 @@ GL_PREFIX(GetProgramLocalParameterdvARB):
 	.type	GL_PREFIX(GetProgramLocalParameterfvARB), @function
 GL_PREFIX(GetProgramLocalParameterfvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3664(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17143,7 +19937,13 @@ GL_PREFIX(GetProgramLocalParameterfvARB):
 	.type	GL_PREFIX(GetProgramStringARB), @function
 GL_PREFIX(GetProgramStringARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3672(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17180,7 +19980,13 @@ GL_PREFIX(GetProgramStringARB):
 	.type	GL_PREFIX(GetProgramivARB), @function
 GL_PREFIX(GetProgramivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3680(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17217,7 +20023,13 @@ GL_PREFIX(GetProgramivARB):
 	.type	GL_PREFIX(GetVertexAttribdvARB), @function
 GL_PREFIX(GetVertexAttribdvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3688(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17254,7 +20066,13 @@ GL_PREFIX(GetVertexAttribdvARB):
 	.type	GL_PREFIX(GetVertexAttribfvARB), @function
 GL_PREFIX(GetVertexAttribfvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3696(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17291,7 +20109,13 @@ GL_PREFIX(GetVertexAttribfvARB):
 	.type	GL_PREFIX(GetVertexAttribivARB), @function
 GL_PREFIX(GetVertexAttribivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3704(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17328,7 +20152,21 @@ GL_PREFIX(GetVertexAttribivARB):
 	.type	GL_PREFIX(ProgramEnvParameter4dARB), @function
 GL_PREFIX(ProgramEnvParameter4dARB):
 #if defined(GLX_USE_TLS)
+	subq	$56, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%xmm0, 16(%rsp)
+	movq	%xmm1, 24(%rsp)
+	movq	%xmm2, 32(%rsp)
+	movq	%xmm3, 40(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	40(%rsp), %xmm3
+	movq	32(%rsp), %xmm2
+	movq	24(%rsp), %xmm1
+	movq	16(%rsp), %xmm0
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$56, %rsp
 	movq	3712(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17381,7 +20219,13 @@ GL_PREFIX(ProgramEnvParameter4dARB):
 	.type	GL_PREFIX(ProgramEnvParameter4dvARB), @function
 GL_PREFIX(ProgramEnvParameter4dvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3720(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17418,7 +20262,21 @@ GL_PREFIX(ProgramEnvParameter4dvARB):
 	.type	GL_PREFIX(ProgramEnvParameter4fARB), @function
 GL_PREFIX(ProgramEnvParameter4fARB):
 #if defined(GLX_USE_TLS)
+	subq	$56, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%xmm0, 16(%rsp)
+	movq	%xmm1, 24(%rsp)
+	movq	%xmm2, 32(%rsp)
+	movq	%xmm3, 40(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	40(%rsp), %xmm3
+	movq	32(%rsp), %xmm2
+	movq	24(%rsp), %xmm1
+	movq	16(%rsp), %xmm0
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$56, %rsp
 	movq	3728(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17471,7 +20329,13 @@ GL_PREFIX(ProgramEnvParameter4fARB):
 	.type	GL_PREFIX(ProgramEnvParameter4fvARB), @function
 GL_PREFIX(ProgramEnvParameter4fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3736(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17508,7 +20372,21 @@ GL_PREFIX(ProgramEnvParameter4fvARB):
 	.type	GL_PREFIX(ProgramLocalParameter4dARB), @function
 GL_PREFIX(ProgramLocalParameter4dARB):
 #if defined(GLX_USE_TLS)
+	subq	$56, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%xmm0, 16(%rsp)
+	movq	%xmm1, 24(%rsp)
+	movq	%xmm2, 32(%rsp)
+	movq	%xmm3, 40(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	40(%rsp), %xmm3
+	movq	32(%rsp), %xmm2
+	movq	24(%rsp), %xmm1
+	movq	16(%rsp), %xmm0
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$56, %rsp
 	movq	3744(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17561,7 +20439,13 @@ GL_PREFIX(ProgramLocalParameter4dARB):
 	.type	GL_PREFIX(ProgramLocalParameter4dvARB), @function
 GL_PREFIX(ProgramLocalParameter4dvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3752(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17598,7 +20482,21 @@ GL_PREFIX(ProgramLocalParameter4dvARB):
 	.type	GL_PREFIX(ProgramLocalParameter4fARB), @function
 GL_PREFIX(ProgramLocalParameter4fARB):
 #if defined(GLX_USE_TLS)
+	subq	$56, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%xmm0, 16(%rsp)
+	movq	%xmm1, 24(%rsp)
+	movq	%xmm2, 32(%rsp)
+	movq	%xmm3, 40(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	40(%rsp), %xmm3
+	movq	32(%rsp), %xmm2
+	movq	24(%rsp), %xmm1
+	movq	16(%rsp), %xmm0
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$56, %rsp
 	movq	3760(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17651,7 +20549,13 @@ GL_PREFIX(ProgramLocalParameter4fARB):
 	.type	GL_PREFIX(ProgramLocalParameter4fvARB), @function
 GL_PREFIX(ProgramLocalParameter4fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3768(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17688,7 +20592,17 @@ GL_PREFIX(ProgramLocalParameter4fvARB):
 	.type	GL_PREFIX(ProgramStringARB), @function
 GL_PREFIX(ProgramStringARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3776(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17733,7 +20647,13 @@ GL_PREFIX(ProgramStringARB):
 	.type	GL_PREFIX(VertexAttrib1dARB), @function
 GL_PREFIX(VertexAttrib1dARB):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	3784(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17770,7 +20690,13 @@ GL_PREFIX(VertexAttrib1dARB):
 	.type	GL_PREFIX(VertexAttrib1dvARB), @function
 GL_PREFIX(VertexAttrib1dvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3792(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17807,7 +20733,13 @@ GL_PREFIX(VertexAttrib1dvARB):
 	.type	GL_PREFIX(VertexAttrib1fARB), @function
 GL_PREFIX(VertexAttrib1fARB):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	3800(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17844,7 +20776,13 @@ GL_PREFIX(VertexAttrib1fARB):
 	.type	GL_PREFIX(VertexAttrib1fvARB), @function
 GL_PREFIX(VertexAttrib1fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3808(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17881,7 +20819,13 @@ GL_PREFIX(VertexAttrib1fvARB):
 	.type	GL_PREFIX(VertexAttrib1sARB), @function
 GL_PREFIX(VertexAttrib1sARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3816(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17918,7 +20862,13 @@ GL_PREFIX(VertexAttrib1sARB):
 	.type	GL_PREFIX(VertexAttrib1svARB), @function
 GL_PREFIX(VertexAttrib1svARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3824(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17955,7 +20905,15 @@ GL_PREFIX(VertexAttrib1svARB):
 	.type	GL_PREFIX(VertexAttrib2dARB), @function
 GL_PREFIX(VertexAttrib2dARB):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	3832(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -17996,7 +20954,13 @@ GL_PREFIX(VertexAttrib2dARB):
 	.type	GL_PREFIX(VertexAttrib2dvARB), @function
 GL_PREFIX(VertexAttrib2dvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3840(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18033,7 +20997,15 @@ GL_PREFIX(VertexAttrib2dvARB):
 	.type	GL_PREFIX(VertexAttrib2fARB), @function
 GL_PREFIX(VertexAttrib2fARB):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	3848(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18074,7 +21046,13 @@ GL_PREFIX(VertexAttrib2fARB):
 	.type	GL_PREFIX(VertexAttrib2fvARB), @function
 GL_PREFIX(VertexAttrib2fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3856(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18111,7 +21089,13 @@ GL_PREFIX(VertexAttrib2fvARB):
 	.type	GL_PREFIX(VertexAttrib2sARB), @function
 GL_PREFIX(VertexAttrib2sARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3864(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18148,7 +21132,13 @@ GL_PREFIX(VertexAttrib2sARB):
 	.type	GL_PREFIX(VertexAttrib2svARB), @function
 GL_PREFIX(VertexAttrib2svARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3872(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18185,7 +21175,17 @@ GL_PREFIX(VertexAttrib2svARB):
 	.type	GL_PREFIX(VertexAttrib3dARB), @function
 GL_PREFIX(VertexAttrib3dARB):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%xmm2, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm2
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	3880(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18230,7 +21230,13 @@ GL_PREFIX(VertexAttrib3dARB):
 	.type	GL_PREFIX(VertexAttrib3dvARB), @function
 GL_PREFIX(VertexAttrib3dvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3888(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18267,7 +21273,17 @@ GL_PREFIX(VertexAttrib3dvARB):
 	.type	GL_PREFIX(VertexAttrib3fARB), @function
 GL_PREFIX(VertexAttrib3fARB):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%xmm2, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm2
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	3896(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18312,7 +21328,13 @@ GL_PREFIX(VertexAttrib3fARB):
 	.type	GL_PREFIX(VertexAttrib3fvARB), @function
 GL_PREFIX(VertexAttrib3fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3904(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18349,7 +21371,17 @@ GL_PREFIX(VertexAttrib3fvARB):
 	.type	GL_PREFIX(VertexAttrib3sARB), @function
 GL_PREFIX(VertexAttrib3sARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3912(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18394,7 +21426,13 @@ GL_PREFIX(VertexAttrib3sARB):
 	.type	GL_PREFIX(VertexAttrib3svARB), @function
 GL_PREFIX(VertexAttrib3svARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3920(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18431,7 +21469,13 @@ GL_PREFIX(VertexAttrib3svARB):
 	.type	GL_PREFIX(VertexAttrib4NbvARB), @function
 GL_PREFIX(VertexAttrib4NbvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3928(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18468,7 +21512,13 @@ GL_PREFIX(VertexAttrib4NbvARB):
 	.type	GL_PREFIX(VertexAttrib4NivARB), @function
 GL_PREFIX(VertexAttrib4NivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3936(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18505,7 +21555,13 @@ GL_PREFIX(VertexAttrib4NivARB):
 	.type	GL_PREFIX(VertexAttrib4NsvARB), @function
 GL_PREFIX(VertexAttrib4NsvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3944(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18542,7 +21598,17 @@ GL_PREFIX(VertexAttrib4NsvARB):
 	.type	GL_PREFIX(VertexAttrib4NubARB), @function
 GL_PREFIX(VertexAttrib4NubARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	3952(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18587,7 +21653,13 @@ GL_PREFIX(VertexAttrib4NubARB):
 	.type	GL_PREFIX(VertexAttrib4NubvARB), @function
 GL_PREFIX(VertexAttrib4NubvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3960(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18624,7 +21696,13 @@ GL_PREFIX(VertexAttrib4NubvARB):
 	.type	GL_PREFIX(VertexAttrib4NuivARB), @function
 GL_PREFIX(VertexAttrib4NuivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3968(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18661,7 +21739,13 @@ GL_PREFIX(VertexAttrib4NuivARB):
 	.type	GL_PREFIX(VertexAttrib4NusvARB), @function
 GL_PREFIX(VertexAttrib4NusvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3976(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18698,7 +21782,13 @@ GL_PREFIX(VertexAttrib4NusvARB):
 	.type	GL_PREFIX(VertexAttrib4bvARB), @function
 GL_PREFIX(VertexAttrib4bvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	3984(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18735,7 +21825,19 @@ GL_PREFIX(VertexAttrib4bvARB):
 	.type	GL_PREFIX(VertexAttrib4dARB), @function
 GL_PREFIX(VertexAttrib4dARB):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%xmm2, 24(%rsp)
+	movq	%xmm3, 32(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	32(%rsp), %xmm3
+	movq	24(%rsp), %xmm2
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	3992(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18784,7 +21886,13 @@ GL_PREFIX(VertexAttrib4dARB):
 	.type	GL_PREFIX(VertexAttrib4dvARB), @function
 GL_PREFIX(VertexAttrib4dvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4000(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18821,7 +21929,19 @@ GL_PREFIX(VertexAttrib4dvARB):
 	.type	GL_PREFIX(VertexAttrib4fARB), @function
 GL_PREFIX(VertexAttrib4fARB):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%xmm2, 24(%rsp)
+	movq	%xmm3, 32(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	32(%rsp), %xmm3
+	movq	24(%rsp), %xmm2
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	4008(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18870,7 +21990,13 @@ GL_PREFIX(VertexAttrib4fARB):
 	.type	GL_PREFIX(VertexAttrib4fvARB), @function
 GL_PREFIX(VertexAttrib4fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4016(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18907,7 +22033,13 @@ GL_PREFIX(VertexAttrib4fvARB):
 	.type	GL_PREFIX(VertexAttrib4ivARB), @function
 GL_PREFIX(VertexAttrib4ivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4024(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18944,7 +22076,17 @@ GL_PREFIX(VertexAttrib4ivARB):
 	.type	GL_PREFIX(VertexAttrib4sARB), @function
 GL_PREFIX(VertexAttrib4sARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4032(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -18989,7 +22131,13 @@ GL_PREFIX(VertexAttrib4sARB):
 	.type	GL_PREFIX(VertexAttrib4svARB), @function
 GL_PREFIX(VertexAttrib4svARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4040(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19026,7 +22174,13 @@ GL_PREFIX(VertexAttrib4svARB):
 	.type	GL_PREFIX(VertexAttrib4ubvARB), @function
 GL_PREFIX(VertexAttrib4ubvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4048(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19063,7 +22217,13 @@ GL_PREFIX(VertexAttrib4ubvARB):
 	.type	GL_PREFIX(VertexAttrib4uivARB), @function
 GL_PREFIX(VertexAttrib4uivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4056(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19100,7 +22260,13 @@ GL_PREFIX(VertexAttrib4uivARB):
 	.type	GL_PREFIX(VertexAttrib4usvARB), @function
 GL_PREFIX(VertexAttrib4usvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4064(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19137,7 +22303,21 @@ GL_PREFIX(VertexAttrib4usvARB):
 	.type	GL_PREFIX(VertexAttribPointerARB), @function
 GL_PREFIX(VertexAttribPointerARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4072(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19190,7 +22370,13 @@ GL_PREFIX(VertexAttribPointerARB):
 	.type	GL_PREFIX(BindBufferARB), @function
 GL_PREFIX(BindBufferARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4080(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19227,7 +22413,17 @@ GL_PREFIX(BindBufferARB):
 	.type	GL_PREFIX(BufferDataARB), @function
 GL_PREFIX(BufferDataARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4088(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19272,7 +22468,17 @@ GL_PREFIX(BufferDataARB):
 	.type	GL_PREFIX(BufferSubDataARB), @function
 GL_PREFIX(BufferSubDataARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4096(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19317,7 +22523,13 @@ GL_PREFIX(BufferSubDataARB):
 	.type	GL_PREFIX(DeleteBuffersARB), @function
 GL_PREFIX(DeleteBuffersARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4104(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19354,7 +22566,13 @@ GL_PREFIX(DeleteBuffersARB):
 	.type	GL_PREFIX(GenBuffersARB), @function
 GL_PREFIX(GenBuffersARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4112(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19391,7 +22609,13 @@ GL_PREFIX(GenBuffersARB):
 	.type	GL_PREFIX(GetBufferParameterivARB), @function
 GL_PREFIX(GetBufferParameterivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4120(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19428,7 +22652,13 @@ GL_PREFIX(GetBufferParameterivARB):
 	.type	GL_PREFIX(GetBufferPointervARB), @function
 GL_PREFIX(GetBufferPointervARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4128(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19465,7 +22695,17 @@ GL_PREFIX(GetBufferPointervARB):
 	.type	GL_PREFIX(GetBufferSubDataARB), @function
 GL_PREFIX(GetBufferSubDataARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4136(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19510,7 +22750,9 @@ GL_PREFIX(GetBufferSubDataARB):
 	.type	GL_PREFIX(IsBufferARB), @function
 GL_PREFIX(IsBufferARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4144(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19539,7 +22781,13 @@ GL_PREFIX(IsBufferARB):
 	.type	GL_PREFIX(MapBufferARB), @function
 GL_PREFIX(MapBufferARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4152(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19576,7 +22824,9 @@ GL_PREFIX(MapBufferARB):
 	.type	GL_PREFIX(UnmapBufferARB), @function
 GL_PREFIX(UnmapBufferARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4160(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19605,7 +22855,13 @@ GL_PREFIX(UnmapBufferARB):
 	.type	GL_PREFIX(BeginQueryARB), @function
 GL_PREFIX(BeginQueryARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4168(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19642,7 +22898,13 @@ GL_PREFIX(BeginQueryARB):
 	.type	GL_PREFIX(DeleteQueriesARB), @function
 GL_PREFIX(DeleteQueriesARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4176(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19679,7 +22941,9 @@ GL_PREFIX(DeleteQueriesARB):
 	.type	GL_PREFIX(EndQueryARB), @function
 GL_PREFIX(EndQueryARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4184(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19708,7 +22972,13 @@ GL_PREFIX(EndQueryARB):
 	.type	GL_PREFIX(GenQueriesARB), @function
 GL_PREFIX(GenQueriesARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4192(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19745,7 +23015,13 @@ GL_PREFIX(GenQueriesARB):
 	.type	GL_PREFIX(GetQueryObjectivARB), @function
 GL_PREFIX(GetQueryObjectivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4200(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19782,7 +23058,13 @@ GL_PREFIX(GetQueryObjectivARB):
 	.type	GL_PREFIX(GetQueryObjectuivARB), @function
 GL_PREFIX(GetQueryObjectuivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4208(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19819,7 +23101,13 @@ GL_PREFIX(GetQueryObjectuivARB):
 	.type	GL_PREFIX(GetQueryivARB), @function
 GL_PREFIX(GetQueryivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4216(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19856,7 +23144,9 @@ GL_PREFIX(GetQueryivARB):
 	.type	GL_PREFIX(IsQueryARB), @function
 GL_PREFIX(IsQueryARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4224(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19885,7 +23175,13 @@ GL_PREFIX(IsQueryARB):
 	.type	GL_PREFIX(AttachObjectARB), @function
 GL_PREFIX(AttachObjectARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4232(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19922,7 +23218,9 @@ GL_PREFIX(AttachObjectARB):
 	.type	GL_PREFIX(CompileShaderARB), @function
 GL_PREFIX(CompileShaderARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4240(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19951,7 +23249,9 @@ GL_PREFIX(CompileShaderARB):
 	.type	GL_PREFIX(CreateProgramObjectARB), @function
 GL_PREFIX(CreateProgramObjectARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	4248(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -19980,7 +23280,9 @@ GL_PREFIX(CreateProgramObjectARB):
 	.type	GL_PREFIX(CreateShaderObjectARB), @function
 GL_PREFIX(CreateShaderObjectARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4256(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20009,7 +23311,9 @@ GL_PREFIX(CreateShaderObjectARB):
 	.type	GL_PREFIX(DeleteObjectARB), @function
 GL_PREFIX(DeleteObjectARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4264(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20038,7 +23342,13 @@ GL_PREFIX(DeleteObjectARB):
 	.type	GL_PREFIX(DetachObjectARB), @function
 GL_PREFIX(DetachObjectARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4272(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20075,7 +23385,21 @@ GL_PREFIX(DetachObjectARB):
 	.type	GL_PREFIX(GetActiveUniformARB), @function
 GL_PREFIX(GetActiveUniformARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4280(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20128,7 +23452,17 @@ GL_PREFIX(GetActiveUniformARB):
 	.type	GL_PREFIX(GetAttachedObjectsARB), @function
 GL_PREFIX(GetAttachedObjectsARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4288(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20173,7 +23507,9 @@ GL_PREFIX(GetAttachedObjectsARB):
 	.type	GL_PREFIX(GetHandleARB), @function
 GL_PREFIX(GetHandleARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4296(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20202,7 +23538,17 @@ GL_PREFIX(GetHandleARB):
 	.type	GL_PREFIX(GetInfoLogARB), @function
 GL_PREFIX(GetInfoLogARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4304(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20247,7 +23593,13 @@ GL_PREFIX(GetInfoLogARB):
 	.type	GL_PREFIX(GetObjectParameterfvARB), @function
 GL_PREFIX(GetObjectParameterfvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4312(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20284,7 +23636,13 @@ GL_PREFIX(GetObjectParameterfvARB):
 	.type	GL_PREFIX(GetObjectParameterivARB), @function
 GL_PREFIX(GetObjectParameterivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4320(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20321,7 +23679,17 @@ GL_PREFIX(GetObjectParameterivARB):
 	.type	GL_PREFIX(GetShaderSourceARB), @function
 GL_PREFIX(GetShaderSourceARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4328(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20366,7 +23734,13 @@ GL_PREFIX(GetShaderSourceARB):
 	.type	GL_PREFIX(GetUniformLocationARB), @function
 GL_PREFIX(GetUniformLocationARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4336(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20403,7 +23777,13 @@ GL_PREFIX(GetUniformLocationARB):
 	.type	GL_PREFIX(GetUniformfvARB), @function
 GL_PREFIX(GetUniformfvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4344(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20440,7 +23820,13 @@ GL_PREFIX(GetUniformfvARB):
 	.type	GL_PREFIX(GetUniformivARB), @function
 GL_PREFIX(GetUniformivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4352(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20477,7 +23863,9 @@ GL_PREFIX(GetUniformivARB):
 	.type	GL_PREFIX(LinkProgramARB), @function
 GL_PREFIX(LinkProgramARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4360(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20506,7 +23894,17 @@ GL_PREFIX(LinkProgramARB):
 	.type	GL_PREFIX(ShaderSourceARB), @function
 GL_PREFIX(ShaderSourceARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4368(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20551,7 +23949,13 @@ GL_PREFIX(ShaderSourceARB):
 	.type	GL_PREFIX(Uniform1fARB), @function
 GL_PREFIX(Uniform1fARB):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	4376(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20588,7 +23992,13 @@ GL_PREFIX(Uniform1fARB):
 	.type	GL_PREFIX(Uniform1fvARB), @function
 GL_PREFIX(Uniform1fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4384(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20625,7 +24035,13 @@ GL_PREFIX(Uniform1fvARB):
 	.type	GL_PREFIX(Uniform1iARB), @function
 GL_PREFIX(Uniform1iARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4392(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20662,7 +24078,13 @@ GL_PREFIX(Uniform1iARB):
 	.type	GL_PREFIX(Uniform1ivARB), @function
 GL_PREFIX(Uniform1ivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4400(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20699,7 +24121,15 @@ GL_PREFIX(Uniform1ivARB):
 	.type	GL_PREFIX(Uniform2fARB), @function
 GL_PREFIX(Uniform2fARB):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	4408(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20740,7 +24170,13 @@ GL_PREFIX(Uniform2fARB):
 	.type	GL_PREFIX(Uniform2fvARB), @function
 GL_PREFIX(Uniform2fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4416(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20777,7 +24213,13 @@ GL_PREFIX(Uniform2fvARB):
 	.type	GL_PREFIX(Uniform2iARB), @function
 GL_PREFIX(Uniform2iARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4424(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20814,7 +24256,13 @@ GL_PREFIX(Uniform2iARB):
 	.type	GL_PREFIX(Uniform2ivARB), @function
 GL_PREFIX(Uniform2ivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4432(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20851,7 +24299,17 @@ GL_PREFIX(Uniform2ivARB):
 	.type	GL_PREFIX(Uniform3fARB), @function
 GL_PREFIX(Uniform3fARB):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%xmm2, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm2
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	4440(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20896,7 +24354,13 @@ GL_PREFIX(Uniform3fARB):
 	.type	GL_PREFIX(Uniform3fvARB), @function
 GL_PREFIX(Uniform3fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4448(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20933,7 +24397,17 @@ GL_PREFIX(Uniform3fvARB):
 	.type	GL_PREFIX(Uniform3iARB), @function
 GL_PREFIX(Uniform3iARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4456(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -20978,7 +24452,13 @@ GL_PREFIX(Uniform3iARB):
 	.type	GL_PREFIX(Uniform3ivARB), @function
 GL_PREFIX(Uniform3ivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4464(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21015,7 +24495,19 @@ GL_PREFIX(Uniform3ivARB):
 	.type	GL_PREFIX(Uniform4fARB), @function
 GL_PREFIX(Uniform4fARB):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%xmm2, 24(%rsp)
+	movq	%xmm3, 32(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	32(%rsp), %xmm3
+	movq	24(%rsp), %xmm2
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	4472(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21064,7 +24556,13 @@ GL_PREFIX(Uniform4fARB):
 	.type	GL_PREFIX(Uniform4fvARB), @function
 GL_PREFIX(Uniform4fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4480(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21101,7 +24599,17 @@ GL_PREFIX(Uniform4fvARB):
 	.type	GL_PREFIX(Uniform4iARB), @function
 GL_PREFIX(Uniform4iARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4488(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21146,7 +24654,13 @@ GL_PREFIX(Uniform4iARB):
 	.type	GL_PREFIX(Uniform4ivARB), @function
 GL_PREFIX(Uniform4ivARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4496(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21183,7 +24697,17 @@ GL_PREFIX(Uniform4ivARB):
 	.type	GL_PREFIX(UniformMatrix2fvARB), @function
 GL_PREFIX(UniformMatrix2fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4504(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21228,7 +24752,17 @@ GL_PREFIX(UniformMatrix2fvARB):
 	.type	GL_PREFIX(UniformMatrix3fvARB), @function
 GL_PREFIX(UniformMatrix3fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4512(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21273,7 +24807,17 @@ GL_PREFIX(UniformMatrix3fvARB):
 	.type	GL_PREFIX(UniformMatrix4fvARB), @function
 GL_PREFIX(UniformMatrix4fvARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4520(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21318,7 +24862,9 @@ GL_PREFIX(UniformMatrix4fvARB):
 	.type	GL_PREFIX(UseProgramObjectARB), @function
 GL_PREFIX(UseProgramObjectARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4528(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21347,7 +24893,9 @@ GL_PREFIX(UseProgramObjectARB):
 	.type	GL_PREFIX(ValidateProgramARB), @function
 GL_PREFIX(ValidateProgramARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4536(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21376,7 +24924,13 @@ GL_PREFIX(ValidateProgramARB):
 	.type	GL_PREFIX(BindAttribLocationARB), @function
 GL_PREFIX(BindAttribLocationARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4544(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21413,7 +24967,21 @@ GL_PREFIX(BindAttribLocationARB):
 	.type	GL_PREFIX(GetActiveAttribARB), @function
 GL_PREFIX(GetActiveAttribARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4552(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21466,7 +25034,13 @@ GL_PREFIX(GetActiveAttribARB):
 	.type	GL_PREFIX(GetAttribLocationARB), @function
 GL_PREFIX(GetAttribLocationARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4560(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21503,7 +25077,13 @@ GL_PREFIX(GetAttribLocationARB):
 	.type	GL_PREFIX(DrawBuffersARB), @function
 GL_PREFIX(DrawBuffersARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4568(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21540,7 +25120,17 @@ GL_PREFIX(DrawBuffersARB):
 	.type	GL_PREFIX(DrawArraysInstancedARB), @function
 GL_PREFIX(DrawArraysInstancedARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4576(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21585,7 +25175,17 @@ GL_PREFIX(DrawArraysInstancedARB):
 	.type	GL_PREFIX(DrawElementsInstancedARB), @function
 GL_PREFIX(DrawElementsInstancedARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4584(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21630,7 +25230,17 @@ GL_PREFIX(DrawElementsInstancedARB):
 	.type	GL_PREFIX(RenderbufferStorageMultisample), @function
 GL_PREFIX(RenderbufferStorageMultisample):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4592(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21675,7 +25285,17 @@ GL_PREFIX(RenderbufferStorageMultisample):
 	.type	GL_PREFIX(FramebufferTextureARB), @function
 GL_PREFIX(FramebufferTextureARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4600(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21720,7 +25340,17 @@ GL_PREFIX(FramebufferTextureARB):
 	.type	GL_PREFIX(FramebufferTextureFaceARB), @function
 GL_PREFIX(FramebufferTextureFaceARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4608(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21765,7 +25395,13 @@ GL_PREFIX(FramebufferTextureFaceARB):
 	.type	GL_PREFIX(ProgramParameteriARB), @function
 GL_PREFIX(ProgramParameteriARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4616(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21802,7 +25438,13 @@ GL_PREFIX(ProgramParameteriARB):
 	.type	GL_PREFIX(VertexAttribDivisorARB), @function
 GL_PREFIX(VertexAttribDivisorARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4624(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21839,7 +25481,13 @@ GL_PREFIX(VertexAttribDivisorARB):
 	.type	GL_PREFIX(FlushMappedBufferRange), @function
 GL_PREFIX(FlushMappedBufferRange):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4632(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21876,7 +25524,17 @@ GL_PREFIX(FlushMappedBufferRange):
 	.type	GL_PREFIX(MapBufferRange), @function
 GL_PREFIX(MapBufferRange):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4640(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21921,7 +25579,9 @@ GL_PREFIX(MapBufferRange):
 	.type	GL_PREFIX(BindVertexArray), @function
 GL_PREFIX(BindVertexArray):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4648(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21950,7 +25610,13 @@ GL_PREFIX(BindVertexArray):
 	.type	GL_PREFIX(GenVertexArrays), @function
 GL_PREFIX(GenVertexArrays):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4656(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -21987,7 +25653,17 @@ GL_PREFIX(GenVertexArrays):
 	.type	GL_PREFIX(CopyBufferSubData), @function
 GL_PREFIX(CopyBufferSubData):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4664(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22032,7 +25708,13 @@ GL_PREFIX(CopyBufferSubData):
 	.type	GL_PREFIX(ClientWaitSync), @function
 GL_PREFIX(ClientWaitSync):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4672(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22069,7 +25751,9 @@ GL_PREFIX(ClientWaitSync):
 	.type	GL_PREFIX(DeleteSync), @function
 GL_PREFIX(DeleteSync):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4680(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22098,7 +25782,13 @@ GL_PREFIX(DeleteSync):
 	.type	GL_PREFIX(FenceSync), @function
 GL_PREFIX(FenceSync):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4688(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22135,7 +25825,13 @@ GL_PREFIX(FenceSync):
 	.type	GL_PREFIX(GetInteger64v), @function
 GL_PREFIX(GetInteger64v):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4696(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22172,7 +25868,17 @@ GL_PREFIX(GetInteger64v):
 	.type	GL_PREFIX(GetSynciv), @function
 GL_PREFIX(GetSynciv):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4704(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22217,7 +25923,9 @@ GL_PREFIX(GetSynciv):
 	.type	GL_PREFIX(IsSync), @function
 GL_PREFIX(IsSync):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4712(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22246,7 +25954,13 @@ GL_PREFIX(IsSync):
 	.type	GL_PREFIX(WaitSync), @function
 GL_PREFIX(WaitSync):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4720(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22283,7 +25997,17 @@ GL_PREFIX(WaitSync):
 	.type	GL_PREFIX(DrawElementsBaseVertex), @function
 GL_PREFIX(DrawElementsBaseVertex):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4728(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22328,7 +26052,21 @@ GL_PREFIX(DrawElementsBaseVertex):
 	.type	GL_PREFIX(DrawRangeElementsBaseVertex), @function
 GL_PREFIX(DrawRangeElementsBaseVertex):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4736(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22381,7 +26119,21 @@ GL_PREFIX(DrawRangeElementsBaseVertex):
 	.type	GL_PREFIX(MultiDrawElementsBaseVertex), @function
 GL_PREFIX(MultiDrawElementsBaseVertex):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4744(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22434,7 +26186,13 @@ GL_PREFIX(MultiDrawElementsBaseVertex):
 	.type	GL_PREFIX(BlendEquationSeparateiARB), @function
 GL_PREFIX(BlendEquationSeparateiARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4752(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22471,7 +26229,13 @@ GL_PREFIX(BlendEquationSeparateiARB):
 	.type	GL_PREFIX(BlendEquationiARB), @function
 GL_PREFIX(BlendEquationiARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4760(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22508,7 +26272,17 @@ GL_PREFIX(BlendEquationiARB):
 	.type	GL_PREFIX(BlendFuncSeparateiARB), @function
 GL_PREFIX(BlendFuncSeparateiARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4768(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22553,7 +26327,13 @@ GL_PREFIX(BlendFuncSeparateiARB):
 	.type	GL_PREFIX(BlendFunciARB), @function
 GL_PREFIX(BlendFunciARB):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4776(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22590,7 +26370,13 @@ GL_PREFIX(BlendFunciARB):
 	.type	GL_PREFIX(BindTransformFeedback), @function
 GL_PREFIX(BindTransformFeedback):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4784(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22627,7 +26413,13 @@ GL_PREFIX(BindTransformFeedback):
 	.type	GL_PREFIX(DeleteTransformFeedbacks), @function
 GL_PREFIX(DeleteTransformFeedbacks):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4792(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22664,7 +26456,13 @@ GL_PREFIX(DeleteTransformFeedbacks):
 	.type	GL_PREFIX(DrawTransformFeedback), @function
 GL_PREFIX(DrawTransformFeedback):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4800(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22701,7 +26499,13 @@ GL_PREFIX(DrawTransformFeedback):
 	.type	GL_PREFIX(GenTransformFeedbacks), @function
 GL_PREFIX(GenTransformFeedbacks):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4808(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22738,7 +26542,9 @@ GL_PREFIX(GenTransformFeedbacks):
 	.type	GL_PREFIX(IsTransformFeedback), @function
 GL_PREFIX(IsTransformFeedback):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4816(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22767,7 +26573,9 @@ GL_PREFIX(IsTransformFeedback):
 	.type	GL_PREFIX(PauseTransformFeedback), @function
 GL_PREFIX(PauseTransformFeedback):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	4824(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22796,7 +26604,9 @@ GL_PREFIX(PauseTransformFeedback):
 	.type	GL_PREFIX(ResumeTransformFeedback), @function
 GL_PREFIX(ResumeTransformFeedback):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	4832(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22825,7 +26635,9 @@ GL_PREFIX(ResumeTransformFeedback):
 	.type	GL_PREFIX(ClearDepthf), @function
 GL_PREFIX(ClearDepthf):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4840(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22854,7 +26666,13 @@ GL_PREFIX(ClearDepthf):
 	.type	GL_PREFIX(DepthRangef), @function
 GL_PREFIX(DepthRangef):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4848(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22891,7 +26709,17 @@ GL_PREFIX(DepthRangef):
 	.type	GL_PREFIX(GetShaderPrecisionFormat), @function
 GL_PREFIX(GetShaderPrecisionFormat):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4856(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22936,7 +26764,9 @@ GL_PREFIX(GetShaderPrecisionFormat):
 	.type	GL_PREFIX(ReleaseShaderCompiler), @function
 GL_PREFIX(ReleaseShaderCompiler):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	4864(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -22965,7 +26795,17 @@ GL_PREFIX(ReleaseShaderCompiler):
 	.type	GL_PREFIX(ShaderBinary), @function
 GL_PREFIX(ShaderBinary):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4872(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23010,7 +26850,13 @@ GL_PREFIX(ShaderBinary):
 	.type	GL_PREFIX(PolygonOffsetEXT), @function
 GL_PREFIX(PolygonOffsetEXT):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	4880(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23048,7 +26894,13 @@ GL_PREFIX(PolygonOffsetEXT):
 	HIDDEN(GL_PREFIX(_dispatch_stub_611))
 GL_PREFIX(_dispatch_stub_611):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4888(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23086,7 +26938,13 @@ GL_PREFIX(_dispatch_stub_611):
 	HIDDEN(GL_PREFIX(_dispatch_stub_612))
 GL_PREFIX(_dispatch_stub_612):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4896(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23124,7 +26982,13 @@ GL_PREFIX(_dispatch_stub_612):
 	HIDDEN(GL_PREFIX(_dispatch_stub_613))
 GL_PREFIX(_dispatch_stub_613):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	4904(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23162,7 +27026,13 @@ GL_PREFIX(_dispatch_stub_613):
 	HIDDEN(GL_PREFIX(_dispatch_stub_614))
 GL_PREFIX(_dispatch_stub_614):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4912(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23200,7 +27070,13 @@ GL_PREFIX(_dispatch_stub_614):
 	HIDDEN(GL_PREFIX(_dispatch_stub_615))
 GL_PREFIX(_dispatch_stub_615):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4920(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23238,7 +27114,13 @@ GL_PREFIX(_dispatch_stub_615):
 	HIDDEN(GL_PREFIX(_dispatch_stub_616))
 GL_PREFIX(_dispatch_stub_616):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4928(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23276,7 +27158,13 @@ GL_PREFIX(_dispatch_stub_616):
 	HIDDEN(GL_PREFIX(_dispatch_stub_617))
 GL_PREFIX(_dispatch_stub_617):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	4936(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23314,7 +27202,9 @@ GL_PREFIX(_dispatch_stub_617):
 	HIDDEN(GL_PREFIX(_dispatch_stub_618))
 GL_PREFIX(_dispatch_stub_618):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	4944(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23343,7 +27233,17 @@ GL_PREFIX(_dispatch_stub_618):
 	.type	GL_PREFIX(ColorPointerEXT), @function
 GL_PREFIX(ColorPointerEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4952(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23388,7 +27288,13 @@ GL_PREFIX(ColorPointerEXT):
 	.type	GL_PREFIX(EdgeFlagPointerEXT), @function
 GL_PREFIX(EdgeFlagPointerEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4960(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23425,7 +27331,17 @@ GL_PREFIX(EdgeFlagPointerEXT):
 	.type	GL_PREFIX(IndexPointerEXT), @function
 GL_PREFIX(IndexPointerEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4968(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23470,7 +27386,17 @@ GL_PREFIX(IndexPointerEXT):
 	.type	GL_PREFIX(NormalPointerEXT), @function
 GL_PREFIX(NormalPointerEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4976(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23515,7 +27441,17 @@ GL_PREFIX(NormalPointerEXT):
 	.type	GL_PREFIX(TexCoordPointerEXT), @function
 GL_PREFIX(TexCoordPointerEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4984(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23560,7 +27496,17 @@ GL_PREFIX(TexCoordPointerEXT):
 	.type	GL_PREFIX(VertexPointerEXT), @function
 GL_PREFIX(VertexPointerEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	4992(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23605,7 +27551,13 @@ GL_PREFIX(VertexPointerEXT):
 	.type	GL_PREFIX(PointParameterfEXT), @function
 GL_PREFIX(PointParameterfEXT):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	5000(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23642,7 +27594,13 @@ GL_PREFIX(PointParameterfEXT):
 	.type	GL_PREFIX(PointParameterfvEXT), @function
 GL_PREFIX(PointParameterfvEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5008(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23679,7 +27637,13 @@ GL_PREFIX(PointParameterfvEXT):
 	.type	GL_PREFIX(LockArraysEXT), @function
 GL_PREFIX(LockArraysEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5016(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23716,7 +27680,9 @@ GL_PREFIX(LockArraysEXT):
 	.type	GL_PREFIX(UnlockArraysEXT), @function
 GL_PREFIX(UnlockArraysEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	5024(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23745,7 +27711,13 @@ GL_PREFIX(UnlockArraysEXT):
 	.type	GL_PREFIX(SecondaryColor3bEXT), @function
 GL_PREFIX(SecondaryColor3bEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5032(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23782,7 +27754,9 @@ GL_PREFIX(SecondaryColor3bEXT):
 	.type	GL_PREFIX(SecondaryColor3bvEXT), @function
 GL_PREFIX(SecondaryColor3bvEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5040(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23811,7 +27785,15 @@ GL_PREFIX(SecondaryColor3bvEXT):
 	.type	GL_PREFIX(SecondaryColor3dEXT), @function
 GL_PREFIX(SecondaryColor3dEXT):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	5048(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23852,7 +27834,9 @@ GL_PREFIX(SecondaryColor3dEXT):
 	.type	GL_PREFIX(SecondaryColor3dvEXT), @function
 GL_PREFIX(SecondaryColor3dvEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5056(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23881,7 +27865,15 @@ GL_PREFIX(SecondaryColor3dvEXT):
 	.type	GL_PREFIX(SecondaryColor3fEXT), @function
 GL_PREFIX(SecondaryColor3fEXT):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	5064(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23922,7 +27914,9 @@ GL_PREFIX(SecondaryColor3fEXT):
 	.type	GL_PREFIX(SecondaryColor3fvEXT), @function
 GL_PREFIX(SecondaryColor3fvEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5072(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23951,7 +27945,13 @@ GL_PREFIX(SecondaryColor3fvEXT):
 	.type	GL_PREFIX(SecondaryColor3iEXT), @function
 GL_PREFIX(SecondaryColor3iEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5080(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -23988,7 +27988,9 @@ GL_PREFIX(SecondaryColor3iEXT):
 	.type	GL_PREFIX(SecondaryColor3ivEXT), @function
 GL_PREFIX(SecondaryColor3ivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5088(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24017,7 +28019,13 @@ GL_PREFIX(SecondaryColor3ivEXT):
 	.type	GL_PREFIX(SecondaryColor3sEXT), @function
 GL_PREFIX(SecondaryColor3sEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5096(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24054,7 +28062,9 @@ GL_PREFIX(SecondaryColor3sEXT):
 	.type	GL_PREFIX(SecondaryColor3svEXT), @function
 GL_PREFIX(SecondaryColor3svEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5104(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24083,7 +28093,13 @@ GL_PREFIX(SecondaryColor3svEXT):
 	.type	GL_PREFIX(SecondaryColor3ubEXT), @function
 GL_PREFIX(SecondaryColor3ubEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5112(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24120,7 +28136,9 @@ GL_PREFIX(SecondaryColor3ubEXT):
 	.type	GL_PREFIX(SecondaryColor3ubvEXT), @function
 GL_PREFIX(SecondaryColor3ubvEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5120(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24149,7 +28167,13 @@ GL_PREFIX(SecondaryColor3ubvEXT):
 	.type	GL_PREFIX(SecondaryColor3uiEXT), @function
 GL_PREFIX(SecondaryColor3uiEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5128(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24186,7 +28210,9 @@ GL_PREFIX(SecondaryColor3uiEXT):
 	.type	GL_PREFIX(SecondaryColor3uivEXT), @function
 GL_PREFIX(SecondaryColor3uivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5136(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24215,7 +28241,13 @@ GL_PREFIX(SecondaryColor3uivEXT):
 	.type	GL_PREFIX(SecondaryColor3usEXT), @function
 GL_PREFIX(SecondaryColor3usEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5144(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24252,7 +28284,9 @@ GL_PREFIX(SecondaryColor3usEXT):
 	.type	GL_PREFIX(SecondaryColor3usvEXT), @function
 GL_PREFIX(SecondaryColor3usvEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5152(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24281,7 +28315,17 @@ GL_PREFIX(SecondaryColor3usvEXT):
 	.type	GL_PREFIX(SecondaryColorPointerEXT), @function
 GL_PREFIX(SecondaryColorPointerEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5160(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24326,7 +28370,17 @@ GL_PREFIX(SecondaryColorPointerEXT):
 	.type	GL_PREFIX(MultiDrawArraysEXT), @function
 GL_PREFIX(MultiDrawArraysEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5168(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24371,7 +28425,17 @@ GL_PREFIX(MultiDrawArraysEXT):
 	.type	GL_PREFIX(MultiDrawElementsEXT), @function
 GL_PREFIX(MultiDrawElementsEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5176(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24416,7 +28480,13 @@ GL_PREFIX(MultiDrawElementsEXT):
 	.type	GL_PREFIX(FogCoordPointerEXT), @function
 GL_PREFIX(FogCoordPointerEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5184(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24453,7 +28523,11 @@ GL_PREFIX(FogCoordPointerEXT):
 	.type	GL_PREFIX(FogCoorddEXT), @function
 GL_PREFIX(FogCoorddEXT):
 #if defined(GLX_USE_TLS)
+	subq	$8, %rsp
+	movq	%xmm0, (%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	(%rsp), %xmm0
+	addq	$8, %rsp
 	movq	5192(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24486,7 +28560,9 @@ GL_PREFIX(FogCoorddEXT):
 	.type	GL_PREFIX(FogCoorddvEXT), @function
 GL_PREFIX(FogCoorddvEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5200(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24515,7 +28591,11 @@ GL_PREFIX(FogCoorddvEXT):
 	.type	GL_PREFIX(FogCoordfEXT), @function
 GL_PREFIX(FogCoordfEXT):
 #if defined(GLX_USE_TLS)
+	subq	$8, %rsp
+	movq	%xmm0, (%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	(%rsp), %xmm0
+	addq	$8, %rsp
 	movq	5208(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24548,7 +28628,9 @@ GL_PREFIX(FogCoordfEXT):
 	.type	GL_PREFIX(FogCoordfvEXT), @function
 GL_PREFIX(FogCoordfvEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5216(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24578,7 +28660,9 @@ GL_PREFIX(FogCoordfvEXT):
 	HIDDEN(GL_PREFIX(_dispatch_stub_653))
 GL_PREFIX(_dispatch_stub_653):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5224(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24607,7 +28691,17 @@ GL_PREFIX(_dispatch_stub_653):
 	.type	GL_PREFIX(BlendFuncSeparateEXT), @function
 GL_PREFIX(BlendFuncSeparateEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5232(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24652,7 +28746,9 @@ GL_PREFIX(BlendFuncSeparateEXT):
 	.type	GL_PREFIX(FlushVertexArrayRangeNV), @function
 GL_PREFIX(FlushVertexArrayRangeNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	5240(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24681,7 +28777,13 @@ GL_PREFIX(FlushVertexArrayRangeNV):
 	.type	GL_PREFIX(VertexArrayRangeNV), @function
 GL_PREFIX(VertexArrayRangeNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5248(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24718,7 +28820,21 @@ GL_PREFIX(VertexArrayRangeNV):
 	.type	GL_PREFIX(CombinerInputNV), @function
 GL_PREFIX(CombinerInputNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5256(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24771,7 +28887,21 @@ GL_PREFIX(CombinerInputNV):
 	.type	GL_PREFIX(CombinerOutputNV), @function
 GL_PREFIX(CombinerOutputNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5264(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24824,7 +28954,13 @@ GL_PREFIX(CombinerOutputNV):
 	.type	GL_PREFIX(CombinerParameterfNV), @function
 GL_PREFIX(CombinerParameterfNV):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	5272(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24861,7 +28997,13 @@ GL_PREFIX(CombinerParameterfNV):
 	.type	GL_PREFIX(CombinerParameterfvNV), @function
 GL_PREFIX(CombinerParameterfvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5280(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24898,7 +29040,13 @@ GL_PREFIX(CombinerParameterfvNV):
 	.type	GL_PREFIX(CombinerParameteriNV), @function
 GL_PREFIX(CombinerParameteriNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5288(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24935,7 +29083,13 @@ GL_PREFIX(CombinerParameteriNV):
 	.type	GL_PREFIX(CombinerParameterivNV), @function
 GL_PREFIX(CombinerParameterivNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5296(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -24972,7 +29126,17 @@ GL_PREFIX(CombinerParameterivNV):
 	.type	GL_PREFIX(FinalCombinerInputNV), @function
 GL_PREFIX(FinalCombinerInputNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5304(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25017,7 +29181,17 @@ GL_PREFIX(FinalCombinerInputNV):
 	.type	GL_PREFIX(GetCombinerInputParameterfvNV), @function
 GL_PREFIX(GetCombinerInputParameterfvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5312(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25062,7 +29236,17 @@ GL_PREFIX(GetCombinerInputParameterfvNV):
 	.type	GL_PREFIX(GetCombinerInputParameterivNV), @function
 GL_PREFIX(GetCombinerInputParameterivNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5320(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25107,7 +29291,17 @@ GL_PREFIX(GetCombinerInputParameterivNV):
 	.type	GL_PREFIX(GetCombinerOutputParameterfvNV), @function
 GL_PREFIX(GetCombinerOutputParameterfvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5328(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25152,7 +29346,17 @@ GL_PREFIX(GetCombinerOutputParameterfvNV):
 	.type	GL_PREFIX(GetCombinerOutputParameterivNV), @function
 GL_PREFIX(GetCombinerOutputParameterivNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5336(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25197,7 +29401,13 @@ GL_PREFIX(GetCombinerOutputParameterivNV):
 	.type	GL_PREFIX(GetFinalCombinerInputParameterfvNV), @function
 GL_PREFIX(GetFinalCombinerInputParameterfvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5344(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25234,7 +29444,13 @@ GL_PREFIX(GetFinalCombinerInputParameterfvNV):
 	.type	GL_PREFIX(GetFinalCombinerInputParameterivNV), @function
 GL_PREFIX(GetFinalCombinerInputParameterivNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5352(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25271,7 +29487,9 @@ GL_PREFIX(GetFinalCombinerInputParameterivNV):
 	.type	GL_PREFIX(ResizeBuffersMESA), @function
 GL_PREFIX(ResizeBuffersMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	5360(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25300,7 +29518,13 @@ GL_PREFIX(ResizeBuffersMESA):
 	.type	GL_PREFIX(WindowPos2dMESA), @function
 GL_PREFIX(WindowPos2dMESA):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	5368(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25337,7 +29561,9 @@ GL_PREFIX(WindowPos2dMESA):
 	.type	GL_PREFIX(WindowPos2dvMESA), @function
 GL_PREFIX(WindowPos2dvMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5376(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25366,7 +29592,13 @@ GL_PREFIX(WindowPos2dvMESA):
 	.type	GL_PREFIX(WindowPos2fMESA), @function
 GL_PREFIX(WindowPos2fMESA):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	5384(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25403,7 +29635,9 @@ GL_PREFIX(WindowPos2fMESA):
 	.type	GL_PREFIX(WindowPos2fvMESA), @function
 GL_PREFIX(WindowPos2fvMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5392(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25432,7 +29666,13 @@ GL_PREFIX(WindowPos2fvMESA):
 	.type	GL_PREFIX(WindowPos2iMESA), @function
 GL_PREFIX(WindowPos2iMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5400(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25469,7 +29709,9 @@ GL_PREFIX(WindowPos2iMESA):
 	.type	GL_PREFIX(WindowPos2ivMESA), @function
 GL_PREFIX(WindowPos2ivMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5408(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25498,7 +29740,13 @@ GL_PREFIX(WindowPos2ivMESA):
 	.type	GL_PREFIX(WindowPos2sMESA), @function
 GL_PREFIX(WindowPos2sMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5416(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25535,7 +29783,9 @@ GL_PREFIX(WindowPos2sMESA):
 	.type	GL_PREFIX(WindowPos2svMESA), @function
 GL_PREFIX(WindowPos2svMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5424(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25564,7 +29814,15 @@ GL_PREFIX(WindowPos2svMESA):
 	.type	GL_PREFIX(WindowPos3dMESA), @function
 GL_PREFIX(WindowPos3dMESA):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	5432(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25605,7 +29863,9 @@ GL_PREFIX(WindowPos3dMESA):
 	.type	GL_PREFIX(WindowPos3dvMESA), @function
 GL_PREFIX(WindowPos3dvMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5440(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25634,7 +29894,15 @@ GL_PREFIX(WindowPos3dvMESA):
 	.type	GL_PREFIX(WindowPos3fMESA), @function
 GL_PREFIX(WindowPos3fMESA):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$24, %rsp
 	movq	5448(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25675,7 +29943,9 @@ GL_PREFIX(WindowPos3fMESA):
 	.type	GL_PREFIX(WindowPos3fvMESA), @function
 GL_PREFIX(WindowPos3fvMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5456(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25704,7 +29974,13 @@ GL_PREFIX(WindowPos3fvMESA):
 	.type	GL_PREFIX(WindowPos3iMESA), @function
 GL_PREFIX(WindowPos3iMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5464(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25741,7 +30017,9 @@ GL_PREFIX(WindowPos3iMESA):
 	.type	GL_PREFIX(WindowPos3ivMESA), @function
 GL_PREFIX(WindowPos3ivMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5472(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25770,7 +30048,13 @@ GL_PREFIX(WindowPos3ivMESA):
 	.type	GL_PREFIX(WindowPos3sMESA), @function
 GL_PREFIX(WindowPos3sMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5480(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25807,7 +30091,9 @@ GL_PREFIX(WindowPos3sMESA):
 	.type	GL_PREFIX(WindowPos3svMESA), @function
 GL_PREFIX(WindowPos3svMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5488(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25836,7 +30122,17 @@ GL_PREFIX(WindowPos3svMESA):
 	.type	GL_PREFIX(WindowPos4dMESA), @function
 GL_PREFIX(WindowPos4dMESA):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	5496(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25881,7 +30177,9 @@ GL_PREFIX(WindowPos4dMESA):
 	.type	GL_PREFIX(WindowPos4dvMESA), @function
 GL_PREFIX(WindowPos4dvMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5504(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25910,7 +30208,17 @@ GL_PREFIX(WindowPos4dvMESA):
 	.type	GL_PREFIX(WindowPos4fMESA), @function
 GL_PREFIX(WindowPos4fMESA):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%xmm0, (%rsp)
+	movq	%xmm1, 8(%rsp)
+	movq	%xmm2, 16(%rsp)
+	movq	%xmm3, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm3
+	movq	16(%rsp), %xmm2
+	movq	8(%rsp), %xmm1
+	movq	(%rsp), %xmm0
+	addq	$40, %rsp
 	movq	5512(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25955,7 +30263,9 @@ GL_PREFIX(WindowPos4fMESA):
 	.type	GL_PREFIX(WindowPos4fvMESA), @function
 GL_PREFIX(WindowPos4fvMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5520(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -25984,7 +30294,17 @@ GL_PREFIX(WindowPos4fvMESA):
 	.type	GL_PREFIX(WindowPos4iMESA), @function
 GL_PREFIX(WindowPos4iMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5528(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26029,7 +30349,9 @@ GL_PREFIX(WindowPos4iMESA):
 	.type	GL_PREFIX(WindowPos4ivMESA), @function
 GL_PREFIX(WindowPos4ivMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5536(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26058,7 +30380,17 @@ GL_PREFIX(WindowPos4ivMESA):
 	.type	GL_PREFIX(WindowPos4sMESA), @function
 GL_PREFIX(WindowPos4sMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5544(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26103,7 +30435,9 @@ GL_PREFIX(WindowPos4sMESA):
 	.type	GL_PREFIX(WindowPos4svMESA), @function
 GL_PREFIX(WindowPos4svMESA):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5552(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26133,7 +30467,17 @@ GL_PREFIX(WindowPos4svMESA):
 	HIDDEN(GL_PREFIX(_dispatch_stub_695))
 GL_PREFIX(_dispatch_stub_695):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5560(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26179,7 +30523,21 @@ GL_PREFIX(_dispatch_stub_695):
 	HIDDEN(GL_PREFIX(_dispatch_stub_696))
 GL_PREFIX(_dispatch_stub_696):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5568(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26233,7 +30591,13 @@ GL_PREFIX(_dispatch_stub_696):
 	HIDDEN(GL_PREFIX(_dispatch_stub_697))
 GL_PREFIX(_dispatch_stub_697):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5576(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26271,7 +30635,9 @@ GL_PREFIX(_dispatch_stub_697):
 	HIDDEN(GL_PREFIX(_dispatch_stub_698))
 GL_PREFIX(_dispatch_stub_698):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5584(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26301,7 +30667,13 @@ GL_PREFIX(_dispatch_stub_698):
 	HIDDEN(GL_PREFIX(_dispatch_stub_699))
 GL_PREFIX(_dispatch_stub_699):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5592(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26339,7 +30711,13 @@ GL_PREFIX(_dispatch_stub_699):
 	HIDDEN(GL_PREFIX(_dispatch_stub_700))
 GL_PREFIX(_dispatch_stub_700):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5600(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26377,7 +30755,9 @@ GL_PREFIX(_dispatch_stub_700):
 	HIDDEN(GL_PREFIX(_dispatch_stub_701))
 GL_PREFIX(_dispatch_stub_701):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5608(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26407,7 +30787,13 @@ GL_PREFIX(_dispatch_stub_701):
 	HIDDEN(GL_PREFIX(_dispatch_stub_702))
 GL_PREFIX(_dispatch_stub_702):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5616(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26445,7 +30831,9 @@ GL_PREFIX(_dispatch_stub_702):
 	HIDDEN(GL_PREFIX(_dispatch_stub_703))
 GL_PREFIX(_dispatch_stub_703):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5624(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26474,7 +30862,13 @@ GL_PREFIX(_dispatch_stub_703):
 	.type	GL_PREFIX(AreProgramsResidentNV), @function
 GL_PREFIX(AreProgramsResidentNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5632(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26511,7 +30905,13 @@ GL_PREFIX(AreProgramsResidentNV):
 	.type	GL_PREFIX(BindProgramNV), @function
 GL_PREFIX(BindProgramNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5640(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26548,7 +30948,13 @@ GL_PREFIX(BindProgramNV):
 	.type	GL_PREFIX(DeleteProgramsNV), @function
 GL_PREFIX(DeleteProgramsNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5648(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26585,7 +30991,13 @@ GL_PREFIX(DeleteProgramsNV):
 	.type	GL_PREFIX(ExecuteProgramNV), @function
 GL_PREFIX(ExecuteProgramNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5656(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26622,7 +31034,13 @@ GL_PREFIX(ExecuteProgramNV):
 	.type	GL_PREFIX(GenProgramsNV), @function
 GL_PREFIX(GenProgramsNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5664(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26659,7 +31077,17 @@ GL_PREFIX(GenProgramsNV):
 	.type	GL_PREFIX(GetProgramParameterdvNV), @function
 GL_PREFIX(GetProgramParameterdvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5672(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26704,7 +31132,17 @@ GL_PREFIX(GetProgramParameterdvNV):
 	.type	GL_PREFIX(GetProgramParameterfvNV), @function
 GL_PREFIX(GetProgramParameterfvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5680(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26749,7 +31187,13 @@ GL_PREFIX(GetProgramParameterfvNV):
 	.type	GL_PREFIX(GetProgramStringNV), @function
 GL_PREFIX(GetProgramStringNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5688(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26786,7 +31230,13 @@ GL_PREFIX(GetProgramStringNV):
 	.type	GL_PREFIX(GetProgramivNV), @function
 GL_PREFIX(GetProgramivNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5696(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26823,7 +31273,17 @@ GL_PREFIX(GetProgramivNV):
 	.type	GL_PREFIX(GetTrackMatrixivNV), @function
 GL_PREFIX(GetTrackMatrixivNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5704(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26868,7 +31328,13 @@ GL_PREFIX(GetTrackMatrixivNV):
 	.type	GL_PREFIX(GetVertexAttribPointervNV), @function
 GL_PREFIX(GetVertexAttribPointervNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5712(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26905,7 +31371,13 @@ GL_PREFIX(GetVertexAttribPointervNV):
 	.type	GL_PREFIX(GetVertexAttribdvNV), @function
 GL_PREFIX(GetVertexAttribdvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5720(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26942,7 +31414,13 @@ GL_PREFIX(GetVertexAttribdvNV):
 	.type	GL_PREFIX(GetVertexAttribfvNV), @function
 GL_PREFIX(GetVertexAttribfvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5728(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -26979,7 +31457,13 @@ GL_PREFIX(GetVertexAttribfvNV):
 	.type	GL_PREFIX(GetVertexAttribivNV), @function
 GL_PREFIX(GetVertexAttribivNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5736(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27016,7 +31500,9 @@ GL_PREFIX(GetVertexAttribivNV):
 	.type	GL_PREFIX(IsProgramNV), @function
 GL_PREFIX(IsProgramNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	5744(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27045,7 +31531,17 @@ GL_PREFIX(IsProgramNV):
 	.type	GL_PREFIX(LoadProgramNV), @function
 GL_PREFIX(LoadProgramNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5752(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27090,7 +31586,17 @@ GL_PREFIX(LoadProgramNV):
 	.type	GL_PREFIX(ProgramParameters4dvNV), @function
 GL_PREFIX(ProgramParameters4dvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5760(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27135,7 +31641,17 @@ GL_PREFIX(ProgramParameters4dvNV):
 	.type	GL_PREFIX(ProgramParameters4fvNV), @function
 GL_PREFIX(ProgramParameters4fvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5768(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27180,7 +31696,13 @@ GL_PREFIX(ProgramParameters4fvNV):
 	.type	GL_PREFIX(RequestResidentProgramsNV), @function
 GL_PREFIX(RequestResidentProgramsNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5776(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27217,7 +31739,17 @@ GL_PREFIX(RequestResidentProgramsNV):
 	.type	GL_PREFIX(TrackMatrixNV), @function
 GL_PREFIX(TrackMatrixNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5784(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27262,7 +31794,13 @@ GL_PREFIX(TrackMatrixNV):
 	.type	GL_PREFIX(VertexAttrib1dNV), @function
 GL_PREFIX(VertexAttrib1dNV):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	5792(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27299,7 +31837,13 @@ GL_PREFIX(VertexAttrib1dNV):
 	.type	GL_PREFIX(VertexAttrib1dvNV), @function
 GL_PREFIX(VertexAttrib1dvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5800(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27336,7 +31880,13 @@ GL_PREFIX(VertexAttrib1dvNV):
 	.type	GL_PREFIX(VertexAttrib1fNV), @function
 GL_PREFIX(VertexAttrib1fNV):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	5808(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27373,7 +31923,13 @@ GL_PREFIX(VertexAttrib1fNV):
 	.type	GL_PREFIX(VertexAttrib1fvNV), @function
 GL_PREFIX(VertexAttrib1fvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5816(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27410,7 +31966,13 @@ GL_PREFIX(VertexAttrib1fvNV):
 	.type	GL_PREFIX(VertexAttrib1sNV), @function
 GL_PREFIX(VertexAttrib1sNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5824(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27447,7 +32009,13 @@ GL_PREFIX(VertexAttrib1sNV):
 	.type	GL_PREFIX(VertexAttrib1svNV), @function
 GL_PREFIX(VertexAttrib1svNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5832(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27484,7 +32052,15 @@ GL_PREFIX(VertexAttrib1svNV):
 	.type	GL_PREFIX(VertexAttrib2dNV), @function
 GL_PREFIX(VertexAttrib2dNV):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	5840(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27525,7 +32101,13 @@ GL_PREFIX(VertexAttrib2dNV):
 	.type	GL_PREFIX(VertexAttrib2dvNV), @function
 GL_PREFIX(VertexAttrib2dvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5848(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27562,7 +32144,15 @@ GL_PREFIX(VertexAttrib2dvNV):
 	.type	GL_PREFIX(VertexAttrib2fNV), @function
 GL_PREFIX(VertexAttrib2fNV):
 #if defined(GLX_USE_TLS)
+	subq	$24, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$24, %rsp
 	movq	5856(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27603,7 +32193,13 @@ GL_PREFIX(VertexAttrib2fNV):
 	.type	GL_PREFIX(VertexAttrib2fvNV), @function
 GL_PREFIX(VertexAttrib2fvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5864(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27640,7 +32236,13 @@ GL_PREFIX(VertexAttrib2fvNV):
 	.type	GL_PREFIX(VertexAttrib2sNV), @function
 GL_PREFIX(VertexAttrib2sNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5872(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27677,7 +32279,13 @@ GL_PREFIX(VertexAttrib2sNV):
 	.type	GL_PREFIX(VertexAttrib2svNV), @function
 GL_PREFIX(VertexAttrib2svNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5880(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27714,7 +32322,17 @@ GL_PREFIX(VertexAttrib2svNV):
 	.type	GL_PREFIX(VertexAttrib3dNV), @function
 GL_PREFIX(VertexAttrib3dNV):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%xmm2, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm2
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	5888(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27759,7 +32377,13 @@ GL_PREFIX(VertexAttrib3dNV):
 	.type	GL_PREFIX(VertexAttrib3dvNV), @function
 GL_PREFIX(VertexAttrib3dvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5896(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27796,7 +32420,17 @@ GL_PREFIX(VertexAttrib3dvNV):
 	.type	GL_PREFIX(VertexAttrib3fNV), @function
 GL_PREFIX(VertexAttrib3fNV):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%xmm2, 24(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	24(%rsp), %xmm2
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	5904(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27841,7 +32475,13 @@ GL_PREFIX(VertexAttrib3fNV):
 	.type	GL_PREFIX(VertexAttrib3fvNV), @function
 GL_PREFIX(VertexAttrib3fvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5912(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27878,7 +32518,17 @@ GL_PREFIX(VertexAttrib3fvNV):
 	.type	GL_PREFIX(VertexAttrib3sNV), @function
 GL_PREFIX(VertexAttrib3sNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5920(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27923,7 +32573,13 @@ GL_PREFIX(VertexAttrib3sNV):
 	.type	GL_PREFIX(VertexAttrib3svNV), @function
 GL_PREFIX(VertexAttrib3svNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5928(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -27960,7 +32616,19 @@ GL_PREFIX(VertexAttrib3svNV):
 	.type	GL_PREFIX(VertexAttrib4dNV), @function
 GL_PREFIX(VertexAttrib4dNV):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%xmm2, 24(%rsp)
+	movq	%xmm3, 32(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	32(%rsp), %xmm3
+	movq	24(%rsp), %xmm2
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	5936(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28009,7 +32677,13 @@ GL_PREFIX(VertexAttrib4dNV):
 	.type	GL_PREFIX(VertexAttrib4dvNV), @function
 GL_PREFIX(VertexAttrib4dvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5944(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28046,7 +32720,19 @@ GL_PREFIX(VertexAttrib4dvNV):
 	.type	GL_PREFIX(VertexAttrib4fNV), @function
 GL_PREFIX(VertexAttrib4fNV):
 #if defined(GLX_USE_TLS)
+	subq	$40, %rsp
+	movq	%rdi, (%rsp)
+	movq	%xmm0, 8(%rsp)
+	movq	%xmm1, 16(%rsp)
+	movq	%xmm2, 24(%rsp)
+	movq	%xmm3, 32(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	32(%rsp), %xmm3
+	movq	24(%rsp), %xmm2
+	movq	16(%rsp), %xmm1
+	movq	8(%rsp), %xmm0
+	movq	(%rsp), %rdi
+	addq	$40, %rsp
 	movq	5952(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28095,7 +32781,13 @@ GL_PREFIX(VertexAttrib4fNV):
 	.type	GL_PREFIX(VertexAttrib4fvNV), @function
 GL_PREFIX(VertexAttrib4fvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5960(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28132,7 +32824,17 @@ GL_PREFIX(VertexAttrib4fvNV):
 	.type	GL_PREFIX(VertexAttrib4sNV), @function
 GL_PREFIX(VertexAttrib4sNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5968(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28177,7 +32879,13 @@ GL_PREFIX(VertexAttrib4sNV):
 	.type	GL_PREFIX(VertexAttrib4svNV), @function
 GL_PREFIX(VertexAttrib4svNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5976(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28214,7 +32922,17 @@ GL_PREFIX(VertexAttrib4svNV):
 	.type	GL_PREFIX(VertexAttrib4ubNV), @function
 GL_PREFIX(VertexAttrib4ubNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	5984(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28259,7 +32977,13 @@ GL_PREFIX(VertexAttrib4ubNV):
 	.type	GL_PREFIX(VertexAttrib4ubvNV), @function
 GL_PREFIX(VertexAttrib4ubvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	5992(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28296,7 +33020,17 @@ GL_PREFIX(VertexAttrib4ubvNV):
 	.type	GL_PREFIX(VertexAttribPointerNV), @function
 GL_PREFIX(VertexAttribPointerNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6000(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28341,7 +33075,13 @@ GL_PREFIX(VertexAttribPointerNV):
 	.type	GL_PREFIX(VertexAttribs1dvNV), @function
 GL_PREFIX(VertexAttribs1dvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6008(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28378,7 +33118,13 @@ GL_PREFIX(VertexAttribs1dvNV):
 	.type	GL_PREFIX(VertexAttribs1fvNV), @function
 GL_PREFIX(VertexAttribs1fvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6016(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28415,7 +33161,13 @@ GL_PREFIX(VertexAttribs1fvNV):
 	.type	GL_PREFIX(VertexAttribs1svNV), @function
 GL_PREFIX(VertexAttribs1svNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6024(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28452,7 +33204,13 @@ GL_PREFIX(VertexAttribs1svNV):
 	.type	GL_PREFIX(VertexAttribs2dvNV), @function
 GL_PREFIX(VertexAttribs2dvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6032(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28489,7 +33247,13 @@ GL_PREFIX(VertexAttribs2dvNV):
 	.type	GL_PREFIX(VertexAttribs2fvNV), @function
 GL_PREFIX(VertexAttribs2fvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6040(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28526,7 +33290,13 @@ GL_PREFIX(VertexAttribs2fvNV):
 	.type	GL_PREFIX(VertexAttribs2svNV), @function
 GL_PREFIX(VertexAttribs2svNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6048(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28563,7 +33333,13 @@ GL_PREFIX(VertexAttribs2svNV):
 	.type	GL_PREFIX(VertexAttribs3dvNV), @function
 GL_PREFIX(VertexAttribs3dvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6056(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28600,7 +33376,13 @@ GL_PREFIX(VertexAttribs3dvNV):
 	.type	GL_PREFIX(VertexAttribs3fvNV), @function
 GL_PREFIX(VertexAttribs3fvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6064(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28637,7 +33419,13 @@ GL_PREFIX(VertexAttribs3fvNV):
 	.type	GL_PREFIX(VertexAttribs3svNV), @function
 GL_PREFIX(VertexAttribs3svNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6072(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28674,7 +33462,13 @@ GL_PREFIX(VertexAttribs3svNV):
 	.type	GL_PREFIX(VertexAttribs4dvNV), @function
 GL_PREFIX(VertexAttribs4dvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6080(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28711,7 +33505,13 @@ GL_PREFIX(VertexAttribs4dvNV):
 	.type	GL_PREFIX(VertexAttribs4fvNV), @function
 GL_PREFIX(VertexAttribs4fvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6088(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28748,7 +33548,13 @@ GL_PREFIX(VertexAttribs4fvNV):
 	.type	GL_PREFIX(VertexAttribs4svNV), @function
 GL_PREFIX(VertexAttribs4svNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6096(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28785,7 +33591,13 @@ GL_PREFIX(VertexAttribs4svNV):
 	.type	GL_PREFIX(VertexAttribs4ubvNV), @function
 GL_PREFIX(VertexAttribs4ubvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6104(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28822,7 +33634,13 @@ GL_PREFIX(VertexAttribs4ubvNV):
 	.type	GL_PREFIX(GetTexBumpParameterfvATI), @function
 GL_PREFIX(GetTexBumpParameterfvATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6112(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28859,7 +33677,13 @@ GL_PREFIX(GetTexBumpParameterfvATI):
 	.type	GL_PREFIX(GetTexBumpParameterivATI), @function
 GL_PREFIX(GetTexBumpParameterivATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6120(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28896,7 +33720,13 @@ GL_PREFIX(GetTexBumpParameterivATI):
 	.type	GL_PREFIX(TexBumpParameterfvATI), @function
 GL_PREFIX(TexBumpParameterfvATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6128(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28933,7 +33763,13 @@ GL_PREFIX(TexBumpParameterfvATI):
 	.type	GL_PREFIX(TexBumpParameterivATI), @function
 GL_PREFIX(TexBumpParameterivATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6136(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -28970,7 +33806,21 @@ GL_PREFIX(TexBumpParameterivATI):
 	.type	GL_PREFIX(AlphaFragmentOp1ATI), @function
 GL_PREFIX(AlphaFragmentOp1ATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6144(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29023,7 +33873,21 @@ GL_PREFIX(AlphaFragmentOp1ATI):
 	.type	GL_PREFIX(AlphaFragmentOp2ATI), @function
 GL_PREFIX(AlphaFragmentOp2ATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6152(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29076,7 +33940,21 @@ GL_PREFIX(AlphaFragmentOp2ATI):
 	.type	GL_PREFIX(AlphaFragmentOp3ATI), @function
 GL_PREFIX(AlphaFragmentOp3ATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6160(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29129,7 +34007,9 @@ GL_PREFIX(AlphaFragmentOp3ATI):
 	.type	GL_PREFIX(BeginFragmentShaderATI), @function
 GL_PREFIX(BeginFragmentShaderATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	6168(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29158,7 +34038,9 @@ GL_PREFIX(BeginFragmentShaderATI):
 	.type	GL_PREFIX(BindFragmentShaderATI), @function
 GL_PREFIX(BindFragmentShaderATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	6176(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29187,7 +34069,21 @@ GL_PREFIX(BindFragmentShaderATI):
 	.type	GL_PREFIX(ColorFragmentOp1ATI), @function
 GL_PREFIX(ColorFragmentOp1ATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6184(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29240,7 +34136,21 @@ GL_PREFIX(ColorFragmentOp1ATI):
 	.type	GL_PREFIX(ColorFragmentOp2ATI), @function
 GL_PREFIX(ColorFragmentOp2ATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6192(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29293,7 +34203,21 @@ GL_PREFIX(ColorFragmentOp2ATI):
 	.type	GL_PREFIX(ColorFragmentOp3ATI), @function
 GL_PREFIX(ColorFragmentOp3ATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6200(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29346,7 +34270,9 @@ GL_PREFIX(ColorFragmentOp3ATI):
 	.type	GL_PREFIX(DeleteFragmentShaderATI), @function
 GL_PREFIX(DeleteFragmentShaderATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	6208(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29375,7 +34301,9 @@ GL_PREFIX(DeleteFragmentShaderATI):
 	.type	GL_PREFIX(EndFragmentShaderATI), @function
 GL_PREFIX(EndFragmentShaderATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	6216(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29404,7 +34332,9 @@ GL_PREFIX(EndFragmentShaderATI):
 	.type	GL_PREFIX(GenFragmentShadersATI), @function
 GL_PREFIX(GenFragmentShadersATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	6224(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29433,7 +34363,13 @@ GL_PREFIX(GenFragmentShadersATI):
 	.type	GL_PREFIX(PassTexCoordATI), @function
 GL_PREFIX(PassTexCoordATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6232(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29470,7 +34406,13 @@ GL_PREFIX(PassTexCoordATI):
 	.type	GL_PREFIX(SampleMapATI), @function
 GL_PREFIX(SampleMapATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6240(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29507,7 +34449,13 @@ GL_PREFIX(SampleMapATI):
 	.type	GL_PREFIX(SetFragmentShaderConstantATI), @function
 GL_PREFIX(SetFragmentShaderConstantATI):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6248(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29544,7 +34492,13 @@ GL_PREFIX(SetFragmentShaderConstantATI):
 	.type	GL_PREFIX(PointParameteriNV), @function
 GL_PREFIX(PointParameteriNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6256(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29581,7 +34535,13 @@ GL_PREFIX(PointParameteriNV):
 	.type	GL_PREFIX(PointParameterivNV), @function
 GL_PREFIX(PointParameterivNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6264(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29619,7 +34579,9 @@ GL_PREFIX(PointParameterivNV):
 	HIDDEN(GL_PREFIX(_dispatch_stub_784))
 GL_PREFIX(_dispatch_stub_784):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	6272(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29649,7 +34611,9 @@ GL_PREFIX(_dispatch_stub_784):
 	HIDDEN(GL_PREFIX(_dispatch_stub_785))
 GL_PREFIX(_dispatch_stub_785):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	6280(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29679,7 +34643,13 @@ GL_PREFIX(_dispatch_stub_785):
 	HIDDEN(GL_PREFIX(_dispatch_stub_786))
 GL_PREFIX(_dispatch_stub_786):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6288(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29717,7 +34687,13 @@ GL_PREFIX(_dispatch_stub_786):
 	HIDDEN(GL_PREFIX(_dispatch_stub_787))
 GL_PREFIX(_dispatch_stub_787):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6296(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29755,7 +34731,9 @@ GL_PREFIX(_dispatch_stub_787):
 	HIDDEN(GL_PREFIX(_dispatch_stub_788))
 GL_PREFIX(_dispatch_stub_788):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	6304(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29784,7 +34762,17 @@ GL_PREFIX(_dispatch_stub_788):
 	.type	GL_PREFIX(GetProgramNamedParameterdvNV), @function
 GL_PREFIX(GetProgramNamedParameterdvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6312(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29829,7 +34817,17 @@ GL_PREFIX(GetProgramNamedParameterdvNV):
 	.type	GL_PREFIX(GetProgramNamedParameterfvNV), @function
 GL_PREFIX(GetProgramNamedParameterfvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6320(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29874,7 +34872,23 @@ GL_PREFIX(GetProgramNamedParameterfvNV):
 	.type	GL_PREFIX(ProgramNamedParameter4dNV), @function
 GL_PREFIX(ProgramNamedParameter4dNV):
 #if defined(GLX_USE_TLS)
+	subq	$56, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%rdx, 16(%rsp)
+	movq	%xmm0, 24(%rsp)
+	movq	%xmm1, 32(%rsp)
+	movq	%xmm2, 40(%rsp)
+	movq	%xmm3, 48(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	48(%rsp), %xmm3
+	movq	40(%rsp), %xmm2
+	movq	32(%rsp), %xmm1
+	movq	24(%rsp), %xmm0
+	movq	16(%rsp), %rdx
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$56, %rsp
 	movq	6328(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29931,7 +34945,17 @@ GL_PREFIX(ProgramNamedParameter4dNV):
 	.type	GL_PREFIX(ProgramNamedParameter4dvNV), @function
 GL_PREFIX(ProgramNamedParameter4dvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6336(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -29976,7 +35000,23 @@ GL_PREFIX(ProgramNamedParameter4dvNV):
 	.type	GL_PREFIX(ProgramNamedParameter4fNV), @function
 GL_PREFIX(ProgramNamedParameter4fNV):
 #if defined(GLX_USE_TLS)
+	subq	$56, %rsp
+	movq	%rdi, (%rsp)
+	movq	%rsi, 8(%rsp)
+	movq	%rdx, 16(%rsp)
+	movq	%xmm0, 24(%rsp)
+	movq	%xmm1, 32(%rsp)
+	movq	%xmm2, 40(%rsp)
+	movq	%xmm3, 48(%rsp)
 	call	_x86_64_get_dispatch at PLT
+	movq	48(%rsp), %xmm3
+	movq	40(%rsp), %xmm2
+	movq	32(%rsp), %xmm1
+	movq	24(%rsp), %xmm0
+	movq	16(%rsp), %rdx
+	movq	8(%rsp), %rsi
+	movq	(%rsp), %rdi
+	addq	$56, %rsp
 	movq	6344(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30033,7 +35073,17 @@ GL_PREFIX(ProgramNamedParameter4fNV):
 	.type	GL_PREFIX(ProgramNamedParameter4fvNV), @function
 GL_PREFIX(ProgramNamedParameter4fvNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6352(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30078,7 +35128,9 @@ GL_PREFIX(ProgramNamedParameter4fvNV):
 	.type	GL_PREFIX(PrimitiveRestartIndexNV), @function
 GL_PREFIX(PrimitiveRestartIndexNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	6360(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30107,7 +35159,9 @@ GL_PREFIX(PrimitiveRestartIndexNV):
 	.type	GL_PREFIX(PrimitiveRestartNV), @function
 GL_PREFIX(PrimitiveRestartNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	6368(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30137,7 +35191,13 @@ GL_PREFIX(PrimitiveRestartNV):
 	HIDDEN(GL_PREFIX(_dispatch_stub_797))
 GL_PREFIX(_dispatch_stub_797):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6376(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30175,7 +35235,13 @@ GL_PREFIX(_dispatch_stub_797):
 	HIDDEN(GL_PREFIX(_dispatch_stub_798))
 GL_PREFIX(_dispatch_stub_798):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6384(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30212,7 +35278,13 @@ GL_PREFIX(_dispatch_stub_798):
 	.type	GL_PREFIX(BindFramebufferEXT), @function
 GL_PREFIX(BindFramebufferEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6392(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30249,7 +35321,13 @@ GL_PREFIX(BindFramebufferEXT):
 	.type	GL_PREFIX(BindRenderbufferEXT), @function
 GL_PREFIX(BindRenderbufferEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6400(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30286,7 +35364,9 @@ GL_PREFIX(BindRenderbufferEXT):
 	.type	GL_PREFIX(CheckFramebufferStatusEXT), @function
 GL_PREFIX(CheckFramebufferStatusEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	6408(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30315,7 +35395,13 @@ GL_PREFIX(CheckFramebufferStatusEXT):
 	.type	GL_PREFIX(DeleteFramebuffersEXT), @function
 GL_PREFIX(DeleteFramebuffersEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6416(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30352,7 +35438,13 @@ GL_PREFIX(DeleteFramebuffersEXT):
 	.type	GL_PREFIX(DeleteRenderbuffersEXT), @function
 GL_PREFIX(DeleteRenderbuffersEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6424(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30389,7 +35481,17 @@ GL_PREFIX(DeleteRenderbuffersEXT):
 	.type	GL_PREFIX(FramebufferRenderbufferEXT), @function
 GL_PREFIX(FramebufferRenderbufferEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6432(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30434,7 +35536,17 @@ GL_PREFIX(FramebufferRenderbufferEXT):
 	.type	GL_PREFIX(FramebufferTexture1DEXT), @function
 GL_PREFIX(FramebufferTexture1DEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6440(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30479,7 +35591,17 @@ GL_PREFIX(FramebufferTexture1DEXT):
 	.type	GL_PREFIX(FramebufferTexture2DEXT), @function
 GL_PREFIX(FramebufferTexture2DEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6448(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30524,7 +35646,21 @@ GL_PREFIX(FramebufferTexture2DEXT):
 	.type	GL_PREFIX(FramebufferTexture3DEXT), @function
 GL_PREFIX(FramebufferTexture3DEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6456(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30577,7 +35713,13 @@ GL_PREFIX(FramebufferTexture3DEXT):
 	.type	GL_PREFIX(GenFramebuffersEXT), @function
 GL_PREFIX(GenFramebuffersEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6464(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30614,7 +35756,13 @@ GL_PREFIX(GenFramebuffersEXT):
 	.type	GL_PREFIX(GenRenderbuffersEXT), @function
 GL_PREFIX(GenRenderbuffersEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6472(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30651,7 +35799,9 @@ GL_PREFIX(GenRenderbuffersEXT):
 	.type	GL_PREFIX(GenerateMipmapEXT), @function
 GL_PREFIX(GenerateMipmapEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	6480(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30680,7 +35830,17 @@ GL_PREFIX(GenerateMipmapEXT):
 	.type	GL_PREFIX(GetFramebufferAttachmentParameterivEXT), @function
 GL_PREFIX(GetFramebufferAttachmentParameterivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6488(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30725,7 +35885,13 @@ GL_PREFIX(GetFramebufferAttachmentParameterivEXT):
 	.type	GL_PREFIX(GetRenderbufferParameterivEXT), @function
 GL_PREFIX(GetRenderbufferParameterivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6496(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30762,7 +35928,9 @@ GL_PREFIX(GetRenderbufferParameterivEXT):
 	.type	GL_PREFIX(IsFramebufferEXT), @function
 GL_PREFIX(IsFramebufferEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	6504(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30791,7 +35959,9 @@ GL_PREFIX(IsFramebufferEXT):
 	.type	GL_PREFIX(IsRenderbufferEXT), @function
 GL_PREFIX(IsRenderbufferEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	6512(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30820,7 +35990,17 @@ GL_PREFIX(IsRenderbufferEXT):
 	.type	GL_PREFIX(RenderbufferStorageEXT), @function
 GL_PREFIX(RenderbufferStorageEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6520(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30866,7 +36046,21 @@ GL_PREFIX(RenderbufferStorageEXT):
 	HIDDEN(GL_PREFIX(_dispatch_stub_816))
 GL_PREFIX(_dispatch_stub_816):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6528(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30920,7 +36114,13 @@ GL_PREFIX(_dispatch_stub_816):
 	HIDDEN(GL_PREFIX(_dispatch_stub_817))
 GL_PREFIX(_dispatch_stub_817):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6536(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30958,7 +36158,13 @@ GL_PREFIX(_dispatch_stub_817):
 	HIDDEN(GL_PREFIX(_dispatch_stub_818))
 GL_PREFIX(_dispatch_stub_818):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6544(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -30995,7 +36201,13 @@ GL_PREFIX(_dispatch_stub_818):
 	.type	GL_PREFIX(BindFragDataLocationEXT), @function
 GL_PREFIX(BindFragDataLocationEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6552(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31032,7 +36244,13 @@ GL_PREFIX(BindFragDataLocationEXT):
 	.type	GL_PREFIX(GetFragDataLocationEXT), @function
 GL_PREFIX(GetFragDataLocationEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6560(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31069,7 +36287,13 @@ GL_PREFIX(GetFragDataLocationEXT):
 	.type	GL_PREFIX(GetUniformuivEXT), @function
 GL_PREFIX(GetUniformuivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6568(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31106,7 +36330,13 @@ GL_PREFIX(GetUniformuivEXT):
 	.type	GL_PREFIX(GetVertexAttribIivEXT), @function
 GL_PREFIX(GetVertexAttribIivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6576(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31143,7 +36373,13 @@ GL_PREFIX(GetVertexAttribIivEXT):
 	.type	GL_PREFIX(GetVertexAttribIuivEXT), @function
 GL_PREFIX(GetVertexAttribIuivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6584(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31180,7 +36416,13 @@ GL_PREFIX(GetVertexAttribIuivEXT):
 	.type	GL_PREFIX(Uniform1uiEXT), @function
 GL_PREFIX(Uniform1uiEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6592(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31217,7 +36459,13 @@ GL_PREFIX(Uniform1uiEXT):
 	.type	GL_PREFIX(Uniform1uivEXT), @function
 GL_PREFIX(Uniform1uivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6600(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31254,7 +36502,13 @@ GL_PREFIX(Uniform1uivEXT):
 	.type	GL_PREFIX(Uniform2uiEXT), @function
 GL_PREFIX(Uniform2uiEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6608(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31291,7 +36545,13 @@ GL_PREFIX(Uniform2uiEXT):
 	.type	GL_PREFIX(Uniform2uivEXT), @function
 GL_PREFIX(Uniform2uivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6616(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31328,7 +36588,17 @@ GL_PREFIX(Uniform2uivEXT):
 	.type	GL_PREFIX(Uniform3uiEXT), @function
 GL_PREFIX(Uniform3uiEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6624(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31373,7 +36643,13 @@ GL_PREFIX(Uniform3uiEXT):
 	.type	GL_PREFIX(Uniform3uivEXT), @function
 GL_PREFIX(Uniform3uivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6632(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31410,7 +36686,17 @@ GL_PREFIX(Uniform3uivEXT):
 	.type	GL_PREFIX(Uniform4uiEXT), @function
 GL_PREFIX(Uniform4uiEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6640(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31455,7 +36741,13 @@ GL_PREFIX(Uniform4uiEXT):
 	.type	GL_PREFIX(Uniform4uivEXT), @function
 GL_PREFIX(Uniform4uivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6648(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31492,7 +36784,13 @@ GL_PREFIX(Uniform4uivEXT):
 	.type	GL_PREFIX(VertexAttribI1iEXT), @function
 GL_PREFIX(VertexAttribI1iEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6656(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31529,7 +36827,13 @@ GL_PREFIX(VertexAttribI1iEXT):
 	.type	GL_PREFIX(VertexAttribI1ivEXT), @function
 GL_PREFIX(VertexAttribI1ivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6664(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31566,7 +36870,13 @@ GL_PREFIX(VertexAttribI1ivEXT):
 	.type	GL_PREFIX(VertexAttribI1uiEXT), @function
 GL_PREFIX(VertexAttribI1uiEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6672(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31603,7 +36913,13 @@ GL_PREFIX(VertexAttribI1uiEXT):
 	.type	GL_PREFIX(VertexAttribI1uivEXT), @function
 GL_PREFIX(VertexAttribI1uivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6680(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31640,7 +36956,13 @@ GL_PREFIX(VertexAttribI1uivEXT):
 	.type	GL_PREFIX(VertexAttribI2iEXT), @function
 GL_PREFIX(VertexAttribI2iEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6688(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31677,7 +36999,13 @@ GL_PREFIX(VertexAttribI2iEXT):
 	.type	GL_PREFIX(VertexAttribI2ivEXT), @function
 GL_PREFIX(VertexAttribI2ivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6696(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31714,7 +37042,13 @@ GL_PREFIX(VertexAttribI2ivEXT):
 	.type	GL_PREFIX(VertexAttribI2uiEXT), @function
 GL_PREFIX(VertexAttribI2uiEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6704(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31751,7 +37085,13 @@ GL_PREFIX(VertexAttribI2uiEXT):
 	.type	GL_PREFIX(VertexAttribI2uivEXT), @function
 GL_PREFIX(VertexAttribI2uivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6712(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31788,7 +37128,17 @@ GL_PREFIX(VertexAttribI2uivEXT):
 	.type	GL_PREFIX(VertexAttribI3iEXT), @function
 GL_PREFIX(VertexAttribI3iEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6720(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31833,7 +37183,13 @@ GL_PREFIX(VertexAttribI3iEXT):
 	.type	GL_PREFIX(VertexAttribI3ivEXT), @function
 GL_PREFIX(VertexAttribI3ivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6728(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31870,7 +37226,17 @@ GL_PREFIX(VertexAttribI3ivEXT):
 	.type	GL_PREFIX(VertexAttribI3uiEXT), @function
 GL_PREFIX(VertexAttribI3uiEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6736(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31915,7 +37281,13 @@ GL_PREFIX(VertexAttribI3uiEXT):
 	.type	GL_PREFIX(VertexAttribI3uivEXT), @function
 GL_PREFIX(VertexAttribI3uivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6744(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31952,7 +37324,13 @@ GL_PREFIX(VertexAttribI3uivEXT):
 	.type	GL_PREFIX(VertexAttribI4bvEXT), @function
 GL_PREFIX(VertexAttribI4bvEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6752(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -31989,7 +37367,17 @@ GL_PREFIX(VertexAttribI4bvEXT):
 	.type	GL_PREFIX(VertexAttribI4iEXT), @function
 GL_PREFIX(VertexAttribI4iEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6760(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32034,7 +37422,13 @@ GL_PREFIX(VertexAttribI4iEXT):
 	.type	GL_PREFIX(VertexAttribI4ivEXT), @function
 GL_PREFIX(VertexAttribI4ivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6768(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32071,7 +37465,13 @@ GL_PREFIX(VertexAttribI4ivEXT):
 	.type	GL_PREFIX(VertexAttribI4svEXT), @function
 GL_PREFIX(VertexAttribI4svEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6776(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32108,7 +37508,13 @@ GL_PREFIX(VertexAttribI4svEXT):
 	.type	GL_PREFIX(VertexAttribI4ubvEXT), @function
 GL_PREFIX(VertexAttribI4ubvEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6784(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32145,7 +37551,17 @@ GL_PREFIX(VertexAttribI4ubvEXT):
 	.type	GL_PREFIX(VertexAttribI4uiEXT), @function
 GL_PREFIX(VertexAttribI4uiEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6792(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32190,7 +37606,13 @@ GL_PREFIX(VertexAttribI4uiEXT):
 	.type	GL_PREFIX(VertexAttribI4uivEXT), @function
 GL_PREFIX(VertexAttribI4uivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6800(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32227,7 +37649,13 @@ GL_PREFIX(VertexAttribI4uivEXT):
 	.type	GL_PREFIX(VertexAttribI4usvEXT), @function
 GL_PREFIX(VertexAttribI4usvEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6808(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32264,7 +37692,17 @@ GL_PREFIX(VertexAttribI4usvEXT):
 	.type	GL_PREFIX(VertexAttribIPointerEXT), @function
 GL_PREFIX(VertexAttribIPointerEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6816(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32309,7 +37747,17 @@ GL_PREFIX(VertexAttribIPointerEXT):
 	.type	GL_PREFIX(FramebufferTextureLayerEXT), @function
 GL_PREFIX(FramebufferTextureLayerEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6824(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32354,7 +37802,17 @@ GL_PREFIX(FramebufferTextureLayerEXT):
 	.type	GL_PREFIX(ColorMaskIndexedEXT), @function
 GL_PREFIX(ColorMaskIndexedEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6832(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32399,7 +37857,13 @@ GL_PREFIX(ColorMaskIndexedEXT):
 	.type	GL_PREFIX(DisableIndexedEXT), @function
 GL_PREFIX(DisableIndexedEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6840(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32436,7 +37900,13 @@ GL_PREFIX(DisableIndexedEXT):
 	.type	GL_PREFIX(EnableIndexedEXT), @function
 GL_PREFIX(EnableIndexedEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6848(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32473,7 +37943,13 @@ GL_PREFIX(EnableIndexedEXT):
 	.type	GL_PREFIX(GetBooleanIndexedvEXT), @function
 GL_PREFIX(GetBooleanIndexedvEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6856(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32510,7 +37986,13 @@ GL_PREFIX(GetBooleanIndexedvEXT):
 	.type	GL_PREFIX(GetIntegerIndexedvEXT), @function
 GL_PREFIX(GetIntegerIndexedvEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6864(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32547,7 +38029,13 @@ GL_PREFIX(GetIntegerIndexedvEXT):
 	.type	GL_PREFIX(IsEnabledIndexedEXT), @function
 GL_PREFIX(IsEnabledIndexedEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6872(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32584,7 +38072,17 @@ GL_PREFIX(IsEnabledIndexedEXT):
 	.type	GL_PREFIX(ClearColorIiEXT), @function
 GL_PREFIX(ClearColorIiEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6880(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32629,7 +38127,17 @@ GL_PREFIX(ClearColorIiEXT):
 	.type	GL_PREFIX(ClearColorIuiEXT), @function
 GL_PREFIX(ClearColorIuiEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6888(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32674,7 +38182,13 @@ GL_PREFIX(ClearColorIuiEXT):
 	.type	GL_PREFIX(GetTexParameterIivEXT), @function
 GL_PREFIX(GetTexParameterIivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6896(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32711,7 +38225,13 @@ GL_PREFIX(GetTexParameterIivEXT):
 	.type	GL_PREFIX(GetTexParameterIuivEXT), @function
 GL_PREFIX(GetTexParameterIuivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6904(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32748,7 +38268,13 @@ GL_PREFIX(GetTexParameterIuivEXT):
 	.type	GL_PREFIX(TexParameterIivEXT), @function
 GL_PREFIX(TexParameterIivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6912(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32785,7 +38311,13 @@ GL_PREFIX(TexParameterIivEXT):
 	.type	GL_PREFIX(TexParameterIuivEXT), @function
 GL_PREFIX(TexParameterIuivEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6920(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32822,7 +38354,13 @@ GL_PREFIX(TexParameterIuivEXT):
 	.type	GL_PREFIX(BeginConditionalRenderNV), @function
 GL_PREFIX(BeginConditionalRenderNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	6928(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32859,7 +38397,9 @@ GL_PREFIX(BeginConditionalRenderNV):
 	.type	GL_PREFIX(EndConditionalRenderNV), @function
 GL_PREFIX(EndConditionalRenderNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	6936(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32888,7 +38428,9 @@ GL_PREFIX(EndConditionalRenderNV):
 	.type	GL_PREFIX(BeginTransformFeedbackEXT), @function
 GL_PREFIX(BeginTransformFeedbackEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	6944(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32917,7 +38459,13 @@ GL_PREFIX(BeginTransformFeedbackEXT):
 	.type	GL_PREFIX(BindBufferBaseEXT), @function
 GL_PREFIX(BindBufferBaseEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6952(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32954,7 +38502,17 @@ GL_PREFIX(BindBufferBaseEXT):
 	.type	GL_PREFIX(BindBufferOffsetEXT), @function
 GL_PREFIX(BindBufferOffsetEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6960(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -32999,7 +38557,17 @@ GL_PREFIX(BindBufferOffsetEXT):
 	.type	GL_PREFIX(BindBufferRangeEXT), @function
 GL_PREFIX(BindBufferRangeEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
 	call	_x86_64_get_dispatch at PLT
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6968(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33044,7 +38612,9 @@ GL_PREFIX(BindBufferRangeEXT):
 	.type	GL_PREFIX(EndTransformFeedbackEXT), @function
 GL_PREFIX(EndTransformFeedbackEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	6976(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33073,7 +38643,21 @@ GL_PREFIX(EndTransformFeedbackEXT):
 	.type	GL_PREFIX(GetTransformFeedbackVaryingEXT), @function
 GL_PREFIX(GetTransformFeedbackVaryingEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%r8
+	pushq	%r9
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%r9
+	popq	%r8
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6984(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33126,7 +38710,17 @@ GL_PREFIX(GetTransformFeedbackVaryingEXT):
 	.type	GL_PREFIX(TransformFeedbackVaryingsEXT), @function
 GL_PREFIX(TransformFeedbackVaryingsEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	6992(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33171,7 +38765,9 @@ GL_PREFIX(TransformFeedbackVaryingsEXT):
 	.type	GL_PREFIX(ProvokingVertexEXT), @function
 GL_PREFIX(ProvokingVertexEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	7000(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33201,7 +38797,13 @@ GL_PREFIX(ProvokingVertexEXT):
 	HIDDEN(GL_PREFIX(_dispatch_stub_876))
 GL_PREFIX(_dispatch_stub_876):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	7008(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33239,7 +38841,13 @@ GL_PREFIX(_dispatch_stub_876):
 	HIDDEN(GL_PREFIX(_dispatch_stub_877))
 GL_PREFIX(_dispatch_stub_877):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	7016(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33276,7 +38884,17 @@ GL_PREFIX(_dispatch_stub_877):
 	.type	GL_PREFIX(GetObjectParameterivAPPLE), @function
 GL_PREFIX(GetObjectParameterivAPPLE):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	7024(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33321,7 +38939,13 @@ GL_PREFIX(GetObjectParameterivAPPLE):
 	.type	GL_PREFIX(ObjectPurgeableAPPLE), @function
 GL_PREFIX(ObjectPurgeableAPPLE):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	7032(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33358,7 +38982,13 @@ GL_PREFIX(ObjectPurgeableAPPLE):
 	.type	GL_PREFIX(ObjectUnpurgeableAPPLE), @function
 GL_PREFIX(ObjectUnpurgeableAPPLE):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	7040(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33395,7 +39025,9 @@ GL_PREFIX(ObjectUnpurgeableAPPLE):
 	.type	GL_PREFIX(ActiveProgramEXT), @function
 GL_PREFIX(ActiveProgramEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdi
 	movq	7048(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33424,7 +39056,13 @@ GL_PREFIX(ActiveProgramEXT):
 	.type	GL_PREFIX(CreateShaderProgramEXT), @function
 GL_PREFIX(CreateShaderProgramEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	7056(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33461,7 +39099,13 @@ GL_PREFIX(CreateShaderProgramEXT):
 	.type	GL_PREFIX(UseShaderProgramEXT), @function
 GL_PREFIX(UseShaderProgramEXT):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	7064(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33498,7 +39142,9 @@ GL_PREFIX(UseShaderProgramEXT):
 	.type	GL_PREFIX(TextureBarrierNV), @function
 GL_PREFIX(TextureBarrierNV):
 #if defined(GLX_USE_TLS)
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
 	movq	7072(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33528,7 +39174,17 @@ GL_PREFIX(TextureBarrierNV):
 	HIDDEN(GL_PREFIX(_dispatch_stub_885))
 GL_PREFIX(_dispatch_stub_885):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	7080(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33574,7 +39230,17 @@ GL_PREFIX(_dispatch_stub_885):
 	HIDDEN(GL_PREFIX(_dispatch_stub_886))
 GL_PREFIX(_dispatch_stub_886):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	7088(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33620,7 +39286,17 @@ GL_PREFIX(_dispatch_stub_886):
 	HIDDEN(GL_PREFIX(_dispatch_stub_887))
 GL_PREFIX(_dispatch_stub_887):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
+	pushq	%rcx
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rcx
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	7096(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33666,7 +39342,13 @@ GL_PREFIX(_dispatch_stub_887):
 	HIDDEN(GL_PREFIX(_dispatch_stub_888))
 GL_PREFIX(_dispatch_stub_888):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	7104(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33704,7 +39386,13 @@ GL_PREFIX(_dispatch_stub_888):
 	HIDDEN(GL_PREFIX(_dispatch_stub_889))
 GL_PREFIX(_dispatch_stub_889):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rdx
 	call	_x86_64_get_dispatch at PLT
+	popq	%rdx
+	popq	%rsi
+	popq	%rdi
 	movq	7112(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33741,7 +39429,13 @@ GL_PREFIX(_dispatch_stub_889):
 	.type	GL_PREFIX(EGLImageTargetRenderbufferStorageOES), @function
 GL_PREFIX(EGLImageTargetRenderbufferStorageOES):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	7120(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
@@ -33778,7 +39472,13 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES):
 	.type	GL_PREFIX(EGLImageTargetTexture2DOES), @function
 GL_PREFIX(EGLImageTargetTexture2DOES):
 #if defined(GLX_USE_TLS)
+	pushq	%rdi
+	pushq	%rsi
+	pushq	%rbp
 	call	_x86_64_get_dispatch at PLT
+	popq	%rbp
+	popq	%rsi
+	popq	%rdi
 	movq	7128(%rax), %r11
 	jmp	*%r11
 #elif defined(PTHREADS)
diff --git a/src/mapi/glapi/glapi_x86.S b/src/mapi/glapi/glapi_x86.S
index 2ef45f3..2233aed 100644
--- a/src/mapi/glapi/glapi_x86.S
+++ b/src/mapi/glapi/glapi_x86.S
@@ -57,18 +57,11 @@
 
 #ifdef GLX_USE_TLS
 
-#ifdef GLX_X86_READONLY_TEXT
-# define CTX_INSNS MOV_L(GS:(EAX), EAX)
-#else
-# define CTX_INSNS NOP /* Pad for init_glapi_relocs() */
-#endif
-
 #  define GL_STUB(fn,off,fn_alt)			\
 ALIGNTEXT16;						\
 GLOBL_FN(GL_PREFIX(fn, fn_alt));			\
 GL_PREFIX(fn, fn_alt):					\
 	CALL(_x86_get_dispatch) ;			\
-	CTX_INSNS ;					\
 	JMP(GL_OFFSET(off))
 
 #elif defined(PTHREADS)
@@ -119,10 +112,14 @@ SEG_TEXT
 	HIDDEN(GLNAME(_x86_get_dispatch))
 ALIGNTEXT16
 GLNAME(_x86_get_dispatch):
+	pushl	%ebx
 	call	1f
-1:	popl	%eax
-	addl	$_GLOBAL_OFFSET_TABLE_+[.-1b], %eax
-	movl	_glapi_tls_Dispatch at GOTNTPOFF(%eax), %eax
+1:	popl	%ebx
+	addl	$_GLOBAL_OFFSET_TABLE_+[.-1b], %ebx
+	leal	_glapi_tls_Dispatch at tlsgd(,%ebx,1), %eax
+	call	___tls_get_addr at plt
+	movl	(%eax),%eax
+	popl	%ebx
 	ret
 
 #elif defined(PTHREADS)
-- 
1.7.4.1



More information about the mesa-dev mailing list