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>
|
<ol>
|
||||||
<li><a href="#intro">Introduction</a></li>
|
<li><a href="#intro">Introduction</a></li>
|
||||||
<li><a href="#subproj">Sub-project Status Update</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="#whatsnew">What's New in LLVM?</a></li>
|
||||||
<li><a href="GettingStarted.html">Installation Instructions</a></li>
|
<li><a href="GettingStarted.html">Installation Instructions</a></li>
|
||||||
<li><a href="#portability">Portability and Supported Platforms</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
|
one MBB to another
|
||||||
debug info for optimized code
|
debug info for optimized code
|
||||||
interpreter + libffi
|
interpreter + libffi
|
||||||
|
postalloc scheduler: anti dependence breaking, hazard recognizer?
|
||||||
|
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<!-- for announcement email:
|
<!-- 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
|
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
|
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,
|
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
|
href="http://clang.llvm.org/cxx_status.html">incredible progress</a>, and work
|
||||||
on templates has recently started.</p>
|
on templates has recently started.</p>
|
||||||
|
|
||||||
@ -188,6 +192,64 @@ Spec JVM98 is 6x faster (performance gain of 83%).</li>
|
|||||||
</ul>
|
</ul>
|
||||||
</div>
|
</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">
|
<div class="doc_section">
|
||||||
@ -243,7 +305,7 @@ how to write a backend doc docs/WritingAnLLVMBackend.html
|
|||||||
fastisel + exception handling
|
fastisel + exception handling
|
||||||
vector widening <3 x float> -> <4 x float>
|
vector widening <3 x float> -> <4 x float>
|
||||||
arm port improvements? arm jit encoding stuff, constant island support?
|
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
|
mem2reg now faster on code with huge basic blocks
|
||||||
stack protectors/stack canaries, -fstack-protector, controllable on a
|
stack protectors/stack canaries, -fstack-protector, controllable on a
|
||||||
per-function basis with attributes.
|
per-function basis with attributes.
|
||||||
@ -254,13 +316,12 @@ llvm/Analysis/DebugInfo.h classes, llvm-gcc and clang and codegen use them.
|
|||||||
DebugInfoBuilder gone.
|
DebugInfoBuilder gone.
|
||||||
asmprinters seperate from targets for jits
|
asmprinters seperate from targets for jits
|
||||||
PBQP register allocator now supports register coalescing.
|
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,
|
integer overflow intrinsics for [us](add/sub/mul). Supported on all targets,
|
||||||
but only generates efficient code on x86.
|
but only generates efficient code on x86.
|
||||||
X86 backend now supports -disable-mmx.
|
X86 backend now supports -disable-mmx.
|
||||||
noalias attribute on return value indicates that function returns new memory
|
noalias attribute on return value indicates that function returns new memory
|
||||||
(e.g. malloc).
|
(e.g. malloc).
|
||||||
postalloc scheduler: anti dependence breaking, hazard recognizer?
|
|
||||||
llvmc2 renamed to llvmc
|
llvmc2 renamed to llvmc
|
||||||
Jump threading more powerful: it is iterative, handles threading based on values
|
Jump threading more powerful: it is iterative, handles threading based on values
|
||||||
with fully redundant and partially redundant loads.
|
with fully redundant and partially redundant loads.
|
||||||
|
Loading…
Reference in New Issue
Block a user