Patchwork Patch: add {tree,gimple}-pretty-print.h & realmpfr.h to PLUGIN_HEADERS

login
register
mail settings
Submitter Basile Starynkevitch
Date April 7, 2011, 7:41 p.m.
Message ID <20110407214118.2b121fe9.basile@starynkevitch.net>
Download mbox | patch
Permalink /patch/90229/
State New
Headers show

Comments

Basile Starynkevitch - April 7, 2011, 7:41 p.m.
Hello All,

The following tiny patch add some files to PLUGIN_HEADERS. 
Since they are missing in 4.6, I had to copy them in the MELT plugin 
tar ball release candidate 0.

##### tiny patch to trunk 172124
 # generate the 'build fragment' b-header-vars
###### gcc/ChangeLog entry
2011-04-07  Basile Starynkevitch  <basile@starynkevitch.net>
	* Makefile.in (PLUGIN_HEADERS): Add gimple-pretty-print.h 
        tree-pretty-print.h & realmpfr.h.
######


Some more explanations about why I feel these files are badly needed
for plugins (not only for MELT as a plugin, but for other plugins).

Pretty printing routines are very useful to help understand, debug, and
dump any additional passes, so plugin providing passes working on
Gimple or Tree need the gimple-pretty-print.h & tree-pretty-print.h, 
since to call dumping or debug routines like debug_c_tree or 
print_declaration or dump_gimple_stmt you need to include these files.
Please consider that people coding plugins know Gimple & Tree much 
less than GCC top level experts, and they are much more likely to 
need debug or dumping routines!

The realmpfr.h file is needed to operate on tree or gimple containing 
real constants. For instance, a plugin to find all occurrences (in
Gimple) of 3.14159 need it, or also a plugin which constant-fold the
calls to <math.h> which are not already constant folded in GCC, or a
plugin which constant-fold calls to some other (but less standard)
numerical library.

Ok for trunk?

Cheers.

PS. If I am lucky enough to have this patch accepted for trunk, 
I might even later consider proposing to backport it to gcc 4.6.1.

Patch

Index: gcc/Makefile.in
===================================================================
--- gcc/Makefile.in	(revision 172124)
+++ gcc/Makefile.in	(working copy)
@@ -4534,6 +4534,7 @@ 
   $(EXCEPT_H) tree-ssa-sccvn.h real.h output.h $(IPA_UTILS_H) \
   $(C_PRAGMA_H)  $(CPPLIB_H)  $(FUNCTION_H) \
   cppdefault.h flags.h $(MD5_H) params.def params.h prefix.h
tree-inline.h \
+  gimple-pretty-print.h tree-pretty-print.h realmpfr.h \
   $(IPA_PROP_H) $(RTL_H) $(TM_P_H) $(CFGLOOP_H) $(EMIT_RTL_H) version.h