Diff of /Backend/If1opt/world.h [32eb06] .. [28e18d]  Maximize  Restore

Switch to side-by-side view

--- a/Backend/If1opt/world.h
+++ b/Backend/If1opt/world.h
@@ -1,7 +1,223 @@
-/* $Log$
-/* Revision 1.1  2000/12/31 17:56:43  patmiller
-/* Initial revision
+#ifndef WORLD_H
+#define WORLD_H
+
+/**************************************************************************/
+/* FILE   **************           world.h         ************************/
+/**************************************************************************/
+/* Author: Dave Cann                                                      */
+/* Update: Patrick Miller -- Ansi support (Dec 2000)                      */
+/* Copyright (C) University of California Regents                         */
+/**************************************************************************/
+/**************************************************************************/
+
+
+#include "sisalInfo.h"
+#include "../Library/IFX.h"
+
+extern int    asetl;            /* REMOVE UNNECESSARY ASetL NODES? */
+extern int    ifuse;            /* PERFORM INDEPENDENT FUSION */
+extern int    sfuse;            /* PERFORM SELECT FUSION? */
+extern int    dfuse;            /* PERFORM DEPENDENT FUSION? */
+extern int    info;             /* DUMP INFORMATION? */
+extern int    slfis;            /* PERFORM STREAM LOOP FISSION? */
+extern int    inter;            /* PERFORM INLINE EXPANSION? */
+extern int    inlineall;        /* INLINE EVERYTHING BUT REQUESTS? */
+extern int    intrinsics;       /* FOLD Math intrinsic functions */
+extern int    native;           /* FLAG NODES NOT SUPPORTED IN NATIVE COMPILATION */
+extern int    dope;             /* PEFORM DOPE VECTOR OPTIMIZATIONS? */
+extern int    amove;            /* PERFORM ANTI-MOVEMENT */
+extern int    unroll;           /* PERFORM FORALL UNROLLING? */
+extern int    split;            /* PERFORM FORALL SPLITTING? */
+extern int    invert;           /* PERFORM LOOP INVERSION? */
+extern int    vec;              /* VECTOR MODE? */
+extern int    concur;           /* CONCURRENT MODE? */
+
+extern  int   Oinvar;           /* OUTERMOST LOOP INVARIANT REMOVAL? */
+
+extern int ikcnt;               /* COUNT OF COMBINED K IMPORTS */
+extern int unnec;               /* COUNT OF UNNECESSARY EDGES OR LITERALS */
+extern int unused;              /* COUNT OF UNUSED VALUES */
+extern int dscnt;               /* COUNT OF DEAD SIMPLE NODES */
+extern int dccnt;               /* COUNT OF DEAD COMPOUND NODES */
+extern int agcnt;               /* COUNT OF DEAD AGather NODES */
+extern int tgcse;               /* TRY AND FORCE GCSE IMPORVEMENTS? */
+
+extern int maxunroll;/* MAX NUMBER OF ITERATIONS ALLOWED IN AN UNROLLED LOOP */
+
+extern int cRay;                /* COMPILING FOR THE CRAY? */
+extern int alliantfx;           /* COMPILING FOR THE ALLIANT? */
+
+extern int normidx;             /* NORMALIZE ARRAY INDEXING OPERATIONS? */
+extern int fchange;             /* WAS A FUSION DONE? */
+
+extern int glue;                /* ELIMINATE DEAD FUNCTION CALLS? */ 
+extern int NoInlining;          /* Inline no functions */
+extern int noincnt;             /* FUNCTION CALL LIST INDEX */
+extern char *noin[];            /* FUNCTION CALL LIST */
+
+extern double iter;             /* LOOP ITERATION COUNT DEFAULT */
+
+extern int agcse;               /* DO ANTI-GLOBAL CSE? */
+
+extern int prof;                /* PROFILE THE OPTIMIZER? */
+
+extern int DeBuG;               /* OPT FOR PROGRAM DEBUGGING? */
+extern int noassoc;             /* NO ASSOCIATIVE TRANSFORMATIONS */
+
+extern int AggressiveVectors;   /* Aggressively combine vectorizing loops? */
+
+extern FILE *infoptr;
+
+/* ------------------------------------------------------------ */
+
+/* callreorder.c */
+extern void     CallReorder PROTO((void));
+
+/* cascade.c */
+extern void     If1TestCascade PROTO((void));
+
+/* if1check.c */
+extern void     If1Check PROTO((void));
+
+/* if1count.c */
+extern void     If1Count PROTO((void));
+
+/* if1cse.c */
+extern void     WriteCseInfo PROTO((void));
+extern void     If1Cse PROTO((void));
+
+/* if1dead.c */
+extern void     CombineKports PROTO((void));
+extern void     FastCleanGraph PROTO((void));
+extern void     OptRemoveDeadNode PROTO((void));
+extern void     RemoveDeadEdge PROTO((void));
+extern void     WriteCleanInfo PROTO((void));
+extern void     If1Clean PROTO((void));
+
+/* if1dope.c */
+extern void     If1Dope PROTO((void));
+extern void     WriteDopeInfo PROTO((void));
+
+/* if1explode.c */
+extern void     WriteExplodeInfo PROTO((void));
+extern void     If1Explode PROTO((void));
+
+/* if1fission.c */
+extern void     WriteFissionInfo PROTO((void));
+extern void     If1Fission PROTO((void));
+
+/* if1fold.c */
+extern void     OptNormalizeNode PROTO((void));
+extern char     *DoubleToReal PROTO((void));
+extern void     WriteFoldInfo PROTO((void));
+extern void     If1Fold PROTO((void));
+
+/* if1fusion.c */
+extern void     If1DFusion PROTO((void));
+extern void     WriteFusionInfo PROTO((void));
+extern void     If1IFusion PROTO((void));
+
+/* if1gcse.c */
+extern void     WriteGCseInfo PROTO((void));
+extern void     OptRemoveSCses PROTO((void));
+extern void     If1GCse PROTO((void));
+
+/* if1inline.c */
+extern void     SpliceInGraph PROTO((void));
+extern void     If1Inline PROTO((void));
+
+/* if1invar.c */
+extern int      OptIsEdgeInvariant PROTO((void));
+extern void     ExposeInvariants PROTO((void));
+extern void     AntiMovement PROTO((void));
+extern void     WriteInvarInfo PROTO((void));
+extern void     If1Invar PROTO((void));
+
+/* if1invert.c */
+extern void     WriteInvertInfo PROTO((void));
+extern void     If1Invert PROTO((void));
+
+/* if1move.c */
+extern void     FindAndLinkToSource PROTO((void));
+extern void     RemoveNode PROTO((void));
+extern void     InsertNode PROTO((void));
+
+/* if1normal.c */
+extern void     EliminateDeadFunctions PROTO((void));
+extern void     If1Normalize PROTO((void));
+
+/* if1parallel.c */
+extern int      OptIsVecCandidate PROTO((void));
+extern void     WriteConcurInfo PROTO((void));
+extern void     If1Vec PROTO((void));
+extern void     If1Par PROTO((void));
+
+/* if1pprint.c */
+extern void     If1PPrint PROTO((void));
+
+/* if1reduce.c */
+extern void     If1Reduce PROTO((void));
+extern void     WriteReduceInfo PROTO((void));
+
+/* if1split.c */
+extern void     WriteSplitInfo PROTO((void));
+extern void     If1Split PROTO((void));
+
+/* if1unroll.c */
+extern void     WriteUnrollInfo PROTO((void));
+extern void     If1Unroll PROTO((void));
+
+/* ifxstuff.c */
+extern void     PlaceInEntryTable PROTO((void));
+extern void     PlaceInFortranTable PROTO((void));
+extern void     PlaceInCTable PROTO((void));
+extern void     PragInitPragmas PROTO((void));
+extern void     NodeInitPragmas PROTO((void));
+extern void     TypeInitPragmas PROTO((void));
+extern void     EdgeInitPragmas PROTO((void));
+extern void     TypeAssignPragmas PROTO((void));
+extern void     EdgeAssignPragmas PROTO((void));
+extern void     NodeAssignPragmas PROTO((void));
+
+/* util.c */
+extern int      OptIsInvariant PROTO((void));
+extern void     DecodeIndexing PROTO((void));
+extern void     EncodeIndexing PROTO((void));
+
+/* AssignIDs.c */
+extern void     NewCompoundID PROTO((void));
+extern void     AssignCompoundIDs PROTO((void));
+
 /*
+ * $Log$
+ * Revision 1.2  2001/01/01 05:46:22  patmiller
+ * Adding prototypes and header info -- all will be broken
+ *
+ * Revision 1.1.1.1  2000/12/31 17:56:43  patmiller
+ * Well, here is the first set of big changes in the distribution
+ * in 5 years!  Right now, I did a lot of work on configuration/
+ * setup (now all autoconf), breaking out the machine dependent
+ * #ifdef's (with a central acconfig.h driven config file), changed
+ * the installation directories to be more gnu style /usr/local
+ * (putting data in the /share/sisal14 dir for instance), and
+ * reduced the footprint in the top level /usr/local/xxx hierarchy.
+ *
+ * I also wrote a new compiler tool (sisalc) to replace osc.  I
+ * found that the old logic was too convoluted.  This does NOT
+ * replace the full functionality, but then again, it doesn't have
+ * 300 options on it either.
+ *
+ * Big change is making the code more portably correct.  It now
+ * compiles under gcc -ansi -Wall mostly.  Some functions are
+ * not prototyped yet.
+ *
+ * Next up: Full prototypes (little) checking out the old FLI (medium)
+ * and a new Frontend for simpler extension and a new FLI (with clean
+ * C, C++, F77, and Python! support).
+ *
+ * Pat
+ *
+ *
  * Revision 1.15  1994/06/16  21:30:06  mivory
  * info format and option changes M. Y. I.
  *
@@ -41,181 +257,7 @@
  *
  * Revision 1.5  1993/01/07  00:37:59  miller
  * Make changes for LINT and combined files.
- * */
-
-#include "sisalInfo.h"
-#include "../Library/IFX.h"
-
-extern int    asetl;		/* REMOVE UNNECESSARY ASetL NODES? */
-extern int    ifuse;		/* PERFORM INDEPENDENT FUSION */
-extern int    sfuse;		/* PERFORM SELECT FUSION? */
-extern int    dfuse;		/* PERFORM DEPENDENT FUSION? */
-extern int    info;		/* DUMP INFORMATION? */
-extern int    slfis;		/* PERFORM STREAM LOOP FISSION? */
-extern int    inter;		/* PERFORM INLINE EXPANSION? */
-extern int    inlineall;	/* INLINE EVERYTHING BUT REQUESTS? */
-extern int    intrinsics;	/* FOLD Math intrinsic functions */
-extern int    native;		/* FLAG NODES NOT SUPPORTED IN NATIVE COMPILATION */
-extern int    dope;		/* PEFORM DOPE VECTOR OPTIMIZATIONS? */
-extern int    amove;		/* PERFORM ANTI-MOVEMENT */
-extern int    unroll;		/* PERFORM FORALL UNROLLING? */
-extern int    split;		/* PERFORM FORALL SPLITTING? */
-extern int    invert;		/* PERFORM LOOP INVERSION? */
-extern int    vec;		/* VECTOR MODE? */
-extern int    concur;		/* CONCURRENT MODE? */
-
-extern  int   Oinvar;		/* OUTERMOST LOOP INVARIANT REMOVAL? */
-
-extern int ikcnt;		/* COUNT OF COMBINED K IMPORTS */
-extern int unnec;		/* COUNT OF UNNECESSARY EDGES OR LITERALS */
-extern int unused;		/* COUNT OF UNUSED VALUES */
-extern int dscnt;		/* COUNT OF DEAD SIMPLE NODES */
-extern int dccnt;		/* COUNT OF DEAD COMPOUND NODES */
-extern int agcnt;		/* COUNT OF DEAD AGather NODES */
-extern int tgcse;		/* TRY AND FORCE GCSE IMPORVEMENTS? */
-
-extern int maxunroll;/* MAX NUMBER OF ITERATIONS ALLOWED IN AN UNROLLED LOOP */
-
-extern int cRay;		/* COMPILING FOR THE CRAY? */
-extern int alliantfx;		/* COMPILING FOR THE ALLIANT? */
-
-extern int normidx;		/* NORMALIZE ARRAY INDEXING OPERATIONS? */
-extern int fchange;		/* WAS A FUSION DONE? */
-
-extern int glue;		/* ELIMINATE DEAD FUNCTION CALLS? */ 
-extern int NoInlining;		/* Inline no functions */
-extern int noincnt;		/* FUNCTION CALL LIST INDEX */
-extern char *noin[];		/* FUNCTION CALL LIST */
-
-extern double iter;		/* LOOP ITERATION COUNT DEFAULT */
-
-extern int agcse;		/* DO ANTI-GLOBAL CSE? */
-
-extern int prof;		/* PROFILE THE OPTIMIZER? */
-
-extern int DeBuG;		/* OPT FOR PROGRAM DEBUGGING? */
-extern int noassoc;		/* NO ASSOCIATIVE TRANSFORMATIONS */
-
-extern int AggressiveVectors;	/* Aggressively combine vectorizing loops? */
-
-extern FILE *infoptr;
-
-/* ------------------------------------------------------------ */
-
-/* callreorder.c */
-extern void	CallReorder();
-
-/* cascade.c */
-extern void	If1TestCascade();
-
-/* if1check.c */
-extern void	If1Check();
-
-/* if1count.c */
-extern void	If1Count();
-
-/* if1cse.c */
-extern void	WriteCseInfo();
-extern void	If1Cse();
-
-/* if1dead.c */
-extern void	CombineKports();
-extern void	FastCleanGraph();
-extern void	OptRemoveDeadNode();
-extern void	RemoveDeadEdge();
-extern void	WriteCleanInfo();
-extern void	If1Clean();
-
-/* if1dope.c */
-extern void	If1Dope();
-extern void	WriteDopeInfo();
-
-/* if1explode.c */
-extern void	WriteExplodeInfo();
-extern void	If1Explode();
-
-/* if1fission.c */
-extern void	WriteFissionInfo();
-extern void	If1Fission();
-
-/* if1fold.c */
-extern void	OptNormalizeNode();
-extern char	*DoubleToReal();
-extern void	WriteFoldInfo();
-extern void	If1Fold();
-
-/* if1fusion.c */
-extern void	If1DFusion();
-extern void	WriteFusionInfo();
-extern void	If1IFusion();
-
-/* if1gcse.c */
-extern void	WriteGCseInfo();
-extern void	OptRemoveSCses();
-extern void	If1GCse();
-
-/* if1inline.c */
-extern void	SpliceInGraph();
-extern void	If1Inline();
-
-/* if1invar.c */
-extern int	OptIsEdgeInvariant();
-extern void	ExposeInvariants();
-extern void	AntiMovement();
-extern void	WriteInvarInfo();
-extern void	If1Invar();
-
-/* if1invert.c */
-extern void	WriteInvertInfo();
-extern void	If1Invert();
-
-/* if1move.c */
-extern void	FindAndLinkToSource();
-extern void	RemoveNode();
-extern void	InsertNode();
-
-/* if1normal.c */
-extern void	EliminateDeadFunctions();
-extern void	If1Normalize();
-
-/* if1parallel.c */
-extern int	OptIsVecCandidate();
-extern void	WriteConcurInfo();
-extern void	If1Vec();
-extern void	If1Par();
-
-/* if1pprint.c */
-extern void	If1PPrint();
-
-/* if1reduce.c */
-extern void	If1Reduce();
-extern void	WriteReduceInfo();
-
-/* if1split.c */
-extern void	WriteSplitInfo();
-extern void	If1Split();
-
-/* if1unroll.c */
-extern void	WriteUnrollInfo();
-extern void	If1Unroll();
-
-/* ifxstuff.c */
-extern void	PlaceInEntryTable();
-extern void	PlaceInFortranTable();
-extern void	PlaceInCTable();
-extern void	PragInitPragmas();
-extern void	NodeInitPragmas();
-extern void	TypeInitPragmas();
-extern void	EdgeInitPragmas();
-extern void	TypeAssignPragmas();
-extern void	EdgeAssignPragmas();
-extern void	NodeAssignPragmas();
-
-/* util.c */
-extern int	OptIsInvariant();
-extern void	DecodeIndexing();
-extern void	EncodeIndexing();
-
-/* AssignIDs.c */
-extern void	NewCompoundID();
-extern void	AssignCompoundIDs();
+ *
+ */
+
+#endif

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.





No, thanks