[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Update for `ooc' available.
Hello to all of you.
First of all, a merry christmas and a happy new year to you!
A new update of `ooc' can be found at the location
ftp://cognac.informatik.uni-kl.de/pub/ooc
So long,
Juergen Zimmermann
Here's part of the ChangeLog:
Wed Dec 20 09:55:50 1995 Juergen Zimmermann <jnzimmer@informatik.uni-kl.de>
* optimizers/ooo.Mod: Replaced `SimpleScheduler' by `TopologicalOrder'.
* optimizers/Worklist.Mod: Derived `Worklist' from `Data.Info'.
Tue Dec 19 20:33:10 1995 Michael van Acken <acken@informatik.uni-kl.de>
* frontend/ParseStatm.Mod (AssignToVar):
When creating a new gate due to an assignment of a gate
to a variable, then use the old gate's `oldValue' entry to set the new
one's `oldValue'. This value may differ from the one currently stored
in the variable's symbol table entry.
Tue Dec 19 18:39:48 1995 Juergen Zimmermann <jnzimmer@informatik.uni-kl.de>
* optimizers/TopologicalOrder.Mod: Initial revision
Tue Dec 19 17:04:38 1995 Michael van Acken <acken@informatik.uni-kl.de>
* frontend/ParseExpr.Mod (FieldAddress, ElementAddress):
Set file position for operands of
address calculations.
Mon Dec 18 15:02:23 1995 Juergen Zimmermann <jnzimmer@informatik.uni-kl.de>
* optimizers/Worklist.Mod:
New procedures `AddUsingInstrUnique' and `AddInstrUnique'.
Changed parameter type of `UsingHook' to reflect the fact that all
Uses could be used by instructions, not only other instructions.
* optimizers/ConstPropagation.Mod:
Forgot to initialize all results of predefined & SYSTEM procedures as
`bottom'.
Only the first result was set to `bottom', all other results were not
classified at all. Now, all instructions with more than one result are
classified as `bottom', and all using instructions - for all results -
are added to the worklist.
Regions classified as `FALSE' are now stripped off the corresponding
merges.
If only one region is left at the merge, this region will always be
executed, so the corresponding instructions are moved up one region.
Sun Dec 17 12:20:44 1995 Michael van Acken <acken@informatik.uni-kl.de>
* frontend/doc/Differences: Initial revision
* frontend/UndefVar.Mod (CheckVars):
Ignore structured (ie, record or array) variables when
searching for undefined vars.
* frontend/ParseDecl.Mod (Module, ProcDecl):
Don't look for unresolved forward references or unused
objects if an error was found beforehand.
Fri Dec 15 14:34:25 1995 Michael van Acken <acken@informatik.uni-kl.de>
* frontend/Opcode.Mod (Commutative):
New. Predicate to test opcode for "a op b = b op a".
I hope I got the name right :).
* frontend/Opcode.Mod:
Fixed typo in div/mod spec: x div y = ENTIER (x / y).
Changed names of set operators to inter(section),
sym(mmetrical)diff(erence), and union (was and, xor, or).
Fri Dec 15 13:04:11 1995 Juergen Zimmermann <jnzimmer@informatik.uni-kl.de>
* optimizers/AlgebraicTransformation.Mod: First version
Thu Dec 14 11:56:28 1995 Michael van Acken <acken@informatik.uni-kl.de>
* frontend/ParseDecl.Mod (ProcDecl, Module):
Copy propagation and dead code elimintation are
done right after a global region is completed. The idea is to make
the bulk of the dead code collectable by the gc as soon as possible.
Setting `removeDeadCode' to FALSE will suppress cp and dce.
* backend/ansi-c/oo2c.Mod (PreSymbolFile):
Moved copy propagation and dead code elimination into
the front-end (ie, into ParseDecl).
(DeleteGRegList): New. Called after the completion of every module to
get rid of references to GSA code, allowing the gc to collect the
intermediate code data structure.