This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Ann: MELT plugin 0.9.8 release for GCC 4.6, 4.7 & future 4.8


Dear All,

It is my pleasure to announce the MELT plugin 0.9.8 for GCC 4.6, 4.7 & future 4.8

Download 
 http://www.gcc-melt.org/melt-0.9.8-plugin-for-gcc-4.6-or-4.7-or-4.8.tar.gz
a gzipped source tarball of 5377928 bytes of md5sum 
6c0721202857c44a8edb1ae2252605e8 extracted from MELT branch svn rev. 194693 
on december 22nd 2012.

MELT is a high-level domain specific language to extend the GCC compiler. 
See http://gcc-melt.org/ for more. Notice that the web site gcc-melt.org has 
been revamped and contains much more information than before (and more tutorial information 
as web pages, even if that is still incomplete).

Download http://www.gcc-melt.org/melt-0.9.8-plugin-for-gcc-4.6-or-4.7-or-4.8.tar.gz
If you wan a two-page printable leaflet about MELT download gcc-melt.org/gcc-melt-sheet.pdf

################################################################
NEWS for 0.9.8 MELT plugin for GCC 4.6 & 4.7 & future 4.8
[[december, 22th, 2012]]

   Language improvements
   =====================

   * The LET syntax accepts bindings with the :auto ctype-annotation, like e.g.

       (let ( (:auto four (+i 2 2)) )
        (debug "four=" four))

   the ctype is the obtained by the expression defining that binding 
   i.e.   (+i 2 2) it the above example which is of ctype_long. 

   The default ctype annotation -which used to be :value- is now :auto
   this change is upward compatible but is very significant.

   
   * BOX-ing and CONSTANT_BOX-ing syntactic constructs

   The (BOX <stuff>) syntax makes a mutable value boxing the given
   stuff. So for example (BOX (+i 2 1)) is the same 
   as (MAKE_INTEGERBOX DISCR_INTEGER (+i 2 1))

   The (CONSTANT_BOX <stuff>) syntax makes a constant value boxing the 
   given stuff. So for example (CONSTANT_BOX 1) is the same as
   the expression (MAKE_INTEGERBOX DISCR_CONSTANT_INTEGER 1)

   * UNBOX-ing syntactic construct
   
   The (UNBOX <ctype> <value>) is a convenient way to unbox values. For example
   the expression (UNBOX :TREE V) is the same as (TREE_CONTENT V)


   Runtime improvements
   ====================

   A new evalfile mode is available to evaluate expressions from a
   file (default is standard input).

   The evaluating modes are diplaying the last evaluated expression
   using the debug depth parameter, which can be set with
   -fplugin-arg-melt-debug-depth=10 program argument.

   C-types have now autoboxing fields. Discriminants for constant
   boxing of stuff have been added, notably
   DISCR_CONSTANT_BASIC_BLOCK, DISCR_CONSTANT_EDGE,
   DISCR_CONSTANT_GIMPLE, DISCR_CONSTANT_GIMPLE_SEQ,
   DISCR_CONSTANT_LOOP, DISCR_CONSTANT_TREE

   Vector from GCC 4.8 are now possible inside MELT.

   A melt_intern_cstring function is available in C to intern
   arbitrary null-terminated strings.

   The melt-module.mk makefile is accepting the
   GCCMELT_MODULE_VERBOSE_BUILD variable.

   Several primitives have been added.

   * Numerous bug fixes. 

########################################################################

Comments are welcome, notably on the gcc-melt@googlegroups.com list.

I strongly invite every person downloading MELT to subscribe & read that list.

Merry Christmas and Happy New Year to everyone.

Regards.
-- 
Basile STARYNKEVITCH         http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mines, sont seulement les miennes} ***


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]