mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-25 20:59:51 +00:00
drop some un-edited text for pure and ldc in here.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65579 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
9de4221e6e
commit
ab68e9e7fe
@ -13,6 +13,7 @@
|
||||
<ol>
|
||||
<li><a href="#intro">Introduction</a></li>
|
||||
<li><a href="#subproj">Sub-project Status Update</a></li>
|
||||
<li><a href="#externalproj">External Projects Using LLVM 2.5</a></li>
|
||||
<li><a href="#whatsnew">What's New in LLVM?</a></li>
|
||||
<li><a href="GettingStarted.html">Installation Instructions</a></li>
|
||||
<li><a href="#portability">Portability and Supported Platforms</a></li>
|
||||
@ -61,6 +62,8 @@ current one. To see the release notes for a specific release, please see the
|
||||
one MBB to another
|
||||
debug info for optimized code
|
||||
interpreter + libffi
|
||||
postalloc scheduler: anti dependence breaking, hazard recognizer?
|
||||
|
||||
-->
|
||||
|
||||
<!-- for announcement email:
|
||||
@ -98,7 +101,8 @@ and code generator. While Clang is not included in the LLVM 2.5 release, it
|
||||
is continuing to make major strides forward in all areas. Its C and Objective-C
|
||||
parsing and code generation support is now very solid. For example, it is
|
||||
capable of successfully building many real applications for X86-32 and X86-64,
|
||||
including the FreeBSD kernel. C++ is also making <a
|
||||
including <a href="http://wiki.freebsd.org/BuildingFreeBSDWithClang">the FreeBSD
|
||||
kernel</a>. C++ is also making <a
|
||||
href="http://clang.llvm.org/cxx_status.html">incredible progress</a>, and work
|
||||
on templates has recently started.</p>
|
||||
|
||||
@ -188,6 +192,64 @@ Spec JVM98 is 6x faster (performance gain of 83%).</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<!-- *********************************************************************** -->
|
||||
<div class="doc_section">
|
||||
<a name="externalproj">External Projects Using LLVM 2.5</a>
|
||||
</div>
|
||||
<!-- *********************************************************************** -->
|
||||
|
||||
<!--=========================================================================-->
|
||||
<div class="doc_subsection">
|
||||
<a name="pure">Pure</a>
|
||||
</div>
|
||||
|
||||
<div class="doc_text">
|
||||
<p>
|
||||
http://pure-lang.googlecode.com/
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Pure is an algebraic/functional programming language based on term rewriting.
|
||||
Programs are collections of equations which are used to evaluate expressions in
|
||||
a symbolic fashion. Pure offers dynamic typing, eager and lazy evaluation,
|
||||
lexical closures, a hygienic macro system (also based on term rewriting),
|
||||
built-in list and matrix support (including list and matrix comprehensions) and
|
||||
an easy-to-use C interface. The interpreter uses LLVM as a backend to
|
||||
JIT-compile Pure programs to fast native code.</p>
|
||||
|
||||
<p>In addition to the usual algebraic data structures, Pure also has
|
||||
MATLAB-style matrices in order to support numeric computations and signal
|
||||
processing in an efficient way. Pure is mainly aimed at mathematical
|
||||
applications right now, but it has been designed as a general purpose language.
|
||||
The dynamic interpreter environment and the C interface make it possible to use
|
||||
it as a kind of functional scripting language for many application areas.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
<!--=========================================================================-->
|
||||
<div class="doc_subsection">
|
||||
<a name="ldc">LLVM D Compiler</a>
|
||||
</div>
|
||||
|
||||
<div class="doc_text">
|
||||
<p>
|
||||
http://www.dsource.org/projects/ldc
|
||||
</p>
|
||||
|
||||
<p>
|
||||
I'd like to inform that the LDC project (LLVM D
|
||||
Compiler) is working with release 2.5 of LLVM. In fact we've required
|
||||
2.5 in our trunk since the release was branched.
|
||||
The improvements in 2.5 have fixed a lot of problems with LDC, more
|
||||
specifically the new inline asm constraints, better debug info
|
||||
support, general bugfixes :) and better x86-64 support have allowed
|
||||
some major improvements in LDC, getting us much closer to being as
|
||||
fully featured as the original DMD compiler from DigitalMars.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- *********************************************************************** -->
|
||||
<div class="doc_section">
|
||||
@ -243,7 +305,7 @@ how to write a backend doc docs/WritingAnLLVMBackend.html
|
||||
fastisel + exception handling
|
||||
vector widening <3 x float> -> <4 x float>
|
||||
arm port improvements? arm jit encoding stuff, constant island support?
|
||||
JIT TLS support on x86-32.
|
||||
JIT TLS support on x86-32 but not x86-64.
|
||||
mem2reg now faster on code with huge basic blocks
|
||||
stack protectors/stack canaries, -fstack-protector, controllable on a
|
||||
per-function basis with attributes.
|
||||
@ -254,13 +316,12 @@ llvm/Analysis/DebugInfo.h classes, llvm-gcc and clang and codegen use them.
|
||||
DebugInfoBuilder gone.
|
||||
asmprinters seperate from targets for jits
|
||||
PBQP register allocator now supports register coalescing.
|
||||
JIT supports exceptions on linux/x86-64.
|
||||
JIT supports exceptions on linux/x86-64 and linux/x86-64.
|
||||
integer overflow intrinsics for [us](add/sub/mul). Supported on all targets,
|
||||
but only generates efficient code on x86.
|
||||
X86 backend now supports -disable-mmx.
|
||||
noalias attribute on return value indicates that function returns new memory
|
||||
(e.g. malloc).
|
||||
postalloc scheduler: anti dependence breaking, hazard recognizer?
|
||||
llvmc2 renamed to llvmc
|
||||
Jump threading more powerful: it is iterative, handles threading based on values
|
||||
with fully redundant and partially redundant loads.
|
||||
|
Loading…
Reference in New Issue
Block a user