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]

Release of new gcc api technology : introspector datacubes


HI all,

thought you might like to try out this new toy gui for introspecting
the gccs asts.

One important aspect that is should mention is that this providers a
fulll access to the gcc interface via code generation and subsequent
execution. That creates the possibiltly to require that the users of
that generated code make thier derivitive works under the gpl. That
just might solve the wishes of those who want only free software to
interface to the gcc..

peace,

I have released a new version of the introspector, a proof of concept, 
something you can look at and learn from. A self contained demo program
that allows you to graphically explore the structure of a almost any
program that you can compile with the gcc!

It features the introspector ice cube.
The ice cube contains a superfast and compressed extract of the
semantic data of the program that can be compiled in as a lib and
loaded into memory in miliseconds.

The graph alogorithms are also very fast on constant size arrays of
object!

Hopefully It will become the new way to embed a static semantic
resources into your new programs.

We then slice the ice cube for each by Property into nice thin C
arrays. 

It has a gcc tree extracted out of the dotgnu pnet idlasm code emit
function. That means i have reversed engineered an free software
component. 

The results of the reverse engineering are stored in a rdf repository.
This has cwm,perl, and shell scripts doing semantic processing of the
data. An redland RDF repository is used to interface into the guts of
the gcc compiler.

 The asts are serialized by a patched gcc3.4 experimental
-fdump-translation-unit, you can find the source code in the cvs.

That is emitted into rdf and converted by a perl script into a ice
cube.

 That are served into slices of data, each attribute its own vector
that has the length of the number of nodes in the selected rdf
property. There is in fact a matrix of all the objects and
relationships between them stored in the Array.

This program contains just the linux binary of the program that has all
this data compiled into an ICE Cube :

That is emitted into a inline c array for compiling into the target
program.

Please join up on the list, come to the #introspector chat zone on
freenode.net, and jabber me at mdupont@nureality.ca

You can find the source download here :
http://prdownloads.sourceforge.net/introspector/introspectorgraph-0.1.tar.gz?download

Here is a binary for linux :


and a screenshot here :
http://introspector.sourceforge.net/2003/10/node_dialog.png


=====
James Michael DuPont
http://introspector.sourceforge.net/

__________________________________
Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard
http://antispam.yahoo.com/whatsnewfree


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