This adds some basic infrastructure to allow for varying the
authorjaw <jaw>
Mon, 15 Sep 2008 17:38:17 +0000 (17:38 +0000)
committerjaw <jaw>
Mon, 15 Sep 2008 17:38:17 +0000 (17:38 +0000)
commit4727b80e7694837a0c1daf44bc28773471d5c690
treeef4bd810c78c1a2c6c43cee29a9cc5f1405a03ad
parent5f2758eb533a4b362852455f825576a431bc6d25
This adds some basic infrastructure to allow for varying the
underlying implementation of annotations by providing a template
parameter.  The template parameter is referred to as IMPL in the
Annotatable.h file and is presently an enum:

typedef enum {
   anno_impl_static_sparse,
   anno_impl_static_dense,
   anno_impl_local_dense,
} annotation_implementation_t;

The implementations that I put together are schematic at best, except
for the static_sparse one, which should be functionally the same as
what we had before. The
last one may not strictly be an "annotation" scheme since all storage
used by it is local to the annotatee, not static, and not really tied into
the annotation naming scheme.
dyninstAPI/make.module.tmpl
dyninstAPI/tests/make.module.tmpl
dyninstAPI/x86_64-unknown-linux2.4/Makefile
dynutil/h/Annotatable.h
instructionAPI/make.module.tmpl