docs: use figure/figcaption instead of tables
authorErik Faye-Lund <erik.faye-lund@collabora.com>
Thu, 16 Jan 2020 18:57:13 +0000 (19:57 +0100)
committerErik Faye-Lund <erik.faye-lund@collabora.com>
Sat, 18 Jan 2020 10:39:07 +0000 (11:39 +0100)
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3443>

docs/dispatch.html
docs/mesa.css

index 1e6377ad818d4fa37e1b4128c699c18eeae1b98e..89f500d9a2c9795378c5c54c0e770a1b7d5aab3d 100644 (file)
@@ -77,17 +77,17 @@ table.</li>
 <p>This can be implemented in just a few lines of C code.  The file
 <code>src/mesa/glapi/glapitemp.h</code> contains code very similar to this.</p>
 
-<blockquote>
-<table border="1">
-<tr><td><pre>
+<figure>
+<pre>
 void glVertex3f(GLfloat x, GLfloat y, GLfloat z)
 {
     const struct _glapi_table * const dispatch = GET_DISPATCH();
 
     (*dispatch-&gt;Vertex3f)(x, y, z);
-}</pre></td></tr>
-<tr><td>Sample dispatch function</td></tr></table>
-</blockquote>
+}
+</pre>
+<figcaption>Sample dispatch function</figcaption>
+</figure>
 
 <p>The problem with this simple implementation is the large amount of
 overhead that it adds to every GL function call.</p>
@@ -129,15 +129,14 @@ The resulting implementation of <code>GET_DISPATCH</code> is slightly more
 complex, but it avoids the expensive <code>pthread_getspecific</code> call in
 the common case.</p>
 
-<blockquote>
-<table border="1">
-<tr><td><pre>
+<figure>
+<pre>
 #define GET_DISPATCH() \
     (_glapi_Dispatch != NULL) \
         ? _glapi_Dispatch : pthread_getspecific(&amp;_glapi_Dispatch_key)
-</pre></td></tr>
-<tr><td>Improved <code>GET_DISPATCH</code> Implementation</td></tr></table>
-</blockquote>
+</pre>
+<figcaption>Improved <code>GET_DISPATCH</code> Implementation</figcaption>
+</figure>
 
 <h3>3.2. ELF TLS</h3>
 
@@ -154,16 +153,15 @@ direct rendering drivers that use either interface.  Once the pointer is
 properly declared, <code>GET_DISPACH</code> becomes a simple variable
 reference.</p>
 
-<blockquote>
-<table border="1">
-<tr><td><pre>
+<figure>
+<pre>
 extern __thread struct _glapi_table *_glapi_tls_Dispatch
     __attribute__((tls_model("initial-exec")));
 
 #define GET_DISPATCH() _glapi_tls_Dispatch
-</pre></td></tr>
-<tr><td>TLS <code>GET_DISPATCH</code> Implementation</td></tr></table>
-</blockquote>
+</pre>
+<figcaption>TLS <code>GET_DISPATCH</code> Implementation</figcaption>
+</figure>
 
 <p>Use of this path is controlled by the preprocessor define
 <code>USE_ELF_TLS</code>.  Any platform capable of using ELF TLS should use this
@@ -215,13 +213,12 @@ of the assembly source file different implementations of the macro are
 selected based on the defined preprocessor variables.  The assembly code
 then consists of a series of invocations of the macros such as:
 
-<blockquote>
-<table border="1">
-<tr><td><pre>
+<figure>
+<pre>
 GL_STUB(Color3fv, _gloffset_Color3fv)
-</pre></td></tr>
-<tr><td>SPARC Assembly Implementation of <code>glColor3fv</code></td></tr></table>
-</blockquote>
+</pre>
+<figcaption>SPARC Assembly Implementation of <code>glColor3fv</code></figcaption>
+</figure>
 
 <p>The benefit of this technique is that changes to the calling pattern
 (i.e., addition of a new dispatch table pointer access method) require fewer
index f7f37b2715a37bbcc2dc961a13fe8047b1d86144..bf3cec5728ab94ca8842a8ff6a8377bff29c1708 100644 (file)
@@ -34,6 +34,20 @@ iframe {
        float: left;
 }
 
+figure {
+       margin: 0.5em;
+       padding: 0.5em;
+       border: 1px solid #ccc;
+}
+
+figure pre {
+       margin: 0;
+}
+
+figure figcaption {
+       padding-top: 0.5em;
+}
+
 .content {
        position: absolute;
        left: 20em;