From 917cc71ae170601e9edcb8b20834ca9eecfa5efa Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 2 Mar 2009 02:37:32 +0000 Subject: [PATCH] start translating this into Engrish and organizing it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65797 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/ReleaseNotes.html | 226 ++++++++++++++++++++++++----------------- 1 file changed, 133 insertions(+), 93 deletions(-) diff --git a/docs/ReleaseNotes.html b/docs/ReleaseNotes.html index 035dace224d..e92be0d9b42 100644 --- a/docs/ReleaseNotes.html +++ b/docs/ReleaseNotes.html @@ -14,7 +14,7 @@
  • Introduction
  • Sub-project Status Update
  • External Projects Using LLVM 2.5
  • -
  • What's New in LLVM?
  • +
  • What's New in LLVM 2.5?
  • Installation Instructions
  • Portability and Supported Platforms
  • Known Problems
  • @@ -64,6 +64,9 @@ current one. To see the release notes for a specific release, please see the interpreter + libffi postalloc scheduler: anti dependence breaking, hazard recognizer? +initial support for debug line numbers when optimization enabled, not useful in + 2.5 but will be for 2.6. + --> @@ -166,7 +169,7 @@ The VMKit project is an implementation of a JVM and a CLI Virtual Machines (Microsoft .NET is an implementation of the CLI) using the Just-In-Time compiler of LLVM.

    -

    Following LLVM 2.5, VMKit has its first release ? that you can find on its +

    Following LLVM 2.5, VMKit has its first release that you can find on its webpage. The release includes bug fixes, cleanup and new features. The major changes are:

    @@ -202,11 +205,8 @@ Spec JVM98 is 6x faster (performance gain of 83%).

    -http://pure-lang.googlecode.com/ -

    - -

    -Pure is an algebraic/functional programming language based on term rewriting. +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), @@ -231,16 +231,11 @@ it as a kind of functional scripting language for many application areas.

    -http://www.dsource.org/projects/ldc -

    - -

    -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 +LDC is an implementation of +the D Programming Language using the LLVM optimizer and code generator. +LDC project works great with the LLVM 2.5 release. General improvmenets in this +cycle have included new inline asm constraint handling, better debug info +support, general bugfixes, and better x86-64 support. This has allowed some major improvements in LDC, getting us much closer to being as fully featured as the original DMD compiler from DigitalMars.

    @@ -252,17 +247,16 @@ fully featured as the original DMD compiler from DigitalMars.
    -

    http://code.roadsend.com/rphp

    - -

    Roadsend PHP is using LLVM for code generation. This is an open source -project. -

    +

    Roadsend PHP (rphp) is an open +source compiler for the PHP programming language that uses LLVM for its +optimizer, JIT, and static compiler. This is a reimplementation of an earlier +project that is now based on the LLVM.

    @@ -284,73 +278,25 @@ in this section.

    LLVM 2.5 includes several major new capabilities:

    @@ -368,7 +314,18 @@ front-ends and driver with the LLVM optimizer and code generator. It currently includes support for the C, C++, Objective-C, Ada, and Fortran front-ends.

    @@ -376,14 +333,52 @@ includes support for the C, C++, Objective-C, Ada, and Fortran front-ends.

    -LLVM Core Improvements +LLVM IR and Core Improvements
    -

    New features include:

    +

    LLVM IR has several new features that are used by our existing front-ends and +can be useful if you are writing a front-end for LLVM:

    @@ -401,7 +396,22 @@ release includes a few major enhancements and additions to the optimizers:

    @@ -430,10 +440,40 @@ The old type legalizer is still available and will be used if
  • ?
  • + +how to write a backend doc docs/WritingAnLLVMBackend.html +asmprinters seperate from targets for jits +fastisel + exception handling +vector widening <3 x float> -> <4 x float> +PBQP register allocator now supports register coalescing. + +
    + +
    +X86-32 and X86-64 Target Improvements +
    + +
    +

    New features of the X86 target include: +

    + + + + +
    @@ -560,7 +600,7 @@ from the previous release.

    @@ -666,7 +706,7 @@ href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">LLVMdev list.

    bugs due to lack of support for the 'u' inline assembly constraint and X87 floating point inline assembly.
  • The X86-64 backend does not yet support the LLVM IR instruction - va_arg. Currently, the llvm-gcc front-end supports variadic + va_arg. Currently, the llvm-gcc and front-ends support variadic argument constructs on X86-64 by lowering them manually.