# Note: Changes to this file should be made to the copy in the
# daikon/dcomp/ directory, named daikon.util.README. A copy of this
# file is placed in the daikon/util/ directory when the daikon.util
# package is created.


ABOUT THE DAIKON.UTIL PACKAGE

The daikon.util package is a copy of utilMDE; the files are copied by
make whenever DynComp is made. As a result, the source files in the
daikon/util/ directory are overwritten on a regular basis; DO NOT MAKE
CHANGES TO THESE SOURCE FILES, as any changes will be lost. As a
precaution, all source files in the daikon/util/ directory are
read-only.

Desired changes should be made to the utilMDE source files. Those
changes will propagate to this copy on the next compile.


WHY TWO COPIES?

Creating a copy of utilMDE is the strategy we use to allow DynComp to
be completely independent of Daikon. That is, the two pieces of
software share no code (except for the JDK). Daikon, Chicory and
DynComp all have need of the utilMDE classes, so we create a copy of
utilMDE, called daikon.util. Daikon uses utilMDE, while Chicory and
DynComp use daikon.util.

When DynComp instruments classfiles, it will instrument utilMDE, but
will not instrument daikon.util. This enables us to instrument Daikon
without instrumenting DynComp itself.
