This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[wwwdocs, patch] Add libgccjit to gcc-5/changes.html
- From: David Malcolm <dmalcolm at redhat dot com>
- To: gcc-patches at gcc dot gnu dot org, Gerald Pfeifer <gerald at pfeifer dot com>
- Date: Thu, 05 Feb 2015 21:47:35 -0500
- Subject: [wwwdocs, patch] Add libgccjit to gcc-5/changes.html
- Authentication-results: sourceware.org; auth=none
This patch adds an <h2>-level section about libgccjit between the
sections on languages and targets.
It has various links to the documentation (now that that's on the
website), and to a couple of 3rd party repos (the Python and D
bindings). It also mentions the license of the library.
OK to commit?
Dave
Index: htdocs/gcc-5/changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-5/changes.html,v
retrieving revision 1.78
diff -u -p -r1.78 changes.html
--- htdocs/gcc-5/changes.html 5 Feb 2015 13:52:05 -0000 1.78
+++ htdocs/gcc-5/changes.html 6 Feb 2015 02:46:57 -0000
@@ -451,6 +451,33 @@ void operator delete[] (void *, std::siz
<!-- h3 id="go">Go</h3 -->
<!--h3 id="java">Java (GCJ)</h3-->
+<h2 id="jit">libgccjit</h2>
+<p>New in GCC 5 is the ability to build gcc as a shared library for embedding
+in other processes (such as interpreters), suitable for Just-In-Time
+compilation to machine code.</p>
+
+<p>The shared library has a <a href="https://gcc.gnu.org/onlinedocs/jit/intro/index.html">C API</a>
+and a
+<a href="https://gcc.gnu.org/onlinedocs/jit/cp/index.html">C++ wrapper API</a>
+providing some "syntactic sugar".
+There are also bindings available from 3rd parties for
+<a href="https://github.com/davidmalcolm/pygccjit">Python</a> and for
+<a href="https://github.com/ibuclaw/gccjitd">D</a>.</p>
+
+<p>For example, this library can be used by interpreters for
+<a href="https://gcc.gnu.org/onlinedocs/jit/intro/tutorial04.html">compiling
+functions from bytecode to machine code</a>.</p>
+
+<p>The library can also be used for ahead-of-time compilation, enabling
+GCC to be plugged into a pre-existing frontend. An example of using
+this to build a compiler for an esoteric language we'll refer to as "brainf"
+can be seen <a href="https://gcc.gnu.org/onlinedocs/jit/intro/tutorial05.html">
+here</a>.</p>
+
+<p>libgccjit is licensed under the GPLv3 (or at your option, any later version)</p>
+
+<p>It should be regarded as experimental at this time.</p>
+
<h2 id="targets">New Targets and Target Specific Improvements</h2>
<h3 id="aarch64">AArch64</h3>