The following files were modified from the regular Fjalar distribution
(as posted on the Fjalar web site) in order to accommodate for
DynComp.  DynComp requires some additional hacking into Memcheck and
the Valgrind core that is probably not necessary for most other tools.

valgrind/fjalar/mc_main.c
valgrind/fjalar/mc_translate.c
valgrind/coregrind/vg_main.c
valgrind/coregrind/vg_scheduler.c
valgrind/coregrind/x86/core_arch.h
valgrind/include/tool.h.base (which auto-generates tool.h during ./auto-everything)
vex/priv/host-generic/reg_alloc2.c

Please see the respective files in this directory for the diffs.

For all of these files, I checked in a version into CVS with the
following message:

FJALAR 1.0 RELEASE - MODIFIED THIS FILE TO CUT OUT DYNCOMP-SPECIFIC
THINGS - I WILL ROLL-BACK THESE MODIFICATIONS AFTER I MAKE THE RELEASE

I will roll back those changes after I make the Fjalar release

Most files had simple 1-line changes, but some were more significant:

Index: reg_alloc2.c
===================================================================
RCS file: /afs/csail.mit.edu/group/pag/projects/invariants/.CVS/valgrind-3/vex/priv/host-generic/reg_alloc2.c,v
retrieving revision 1.3
diff -u -r1.3 reg_alloc2.c
--- reg_alloc2.c        25 Apr 2005 22:47:55 -0000      1.3
+++ reg_alloc2.c        16 Dec 2005 00:18:09 -0000
@@ -681,8 +681,7 @@
       /* This reflects LibVEX's hard-wired knowledge of the baseBlock
          layout: the guest state, then an equal sized area following
          it for shadow state, and then the spill area. */
-   // PG - changed from 2 to 6 to account for vex_extra_shadow in ThreadArchState
-      vreg_lrs[j].spill_offset = toShort(guest_sizeB * 6 + k * 8);
+      vreg_lrs[j].spill_offset = toShort(guest_sizeB * 2 + k * 8);
 
       /* if (j > max_ss_no) */
       /*    max_ss_no = j; */



Index: tool.h.base
===================================================================
RCS file: /afs/csail.mit.edu/group/pag/projects/invariants/.CVS/valgrind-3/valgrind/include/tool.h.base,v
retrieving revision 1.8
diff -u -r1.8 tool.h.base
--- tool.h.base 20 Jun 2005 18:46:09 -0000      1.8
+++ tool.h.base 16 Dec 2005 00:13:14 -0000
@@ -292,7 +292,7 @@
 extern Addr VG_(get_SP) ( ThreadId tid );
 extern Addr VG_(get_IP) ( ThreadId tid );
 
-// PG - Hacked for Kvasir (we really need a more elegant solution)
+// PG - Hacked for Fjalar (we really need a more elegant solution)
 extern UInt VG_(get_EAX) ( ThreadId tid );
 extern UInt VG_(get_EDX) ( ThreadId tid );
 extern double VG_(get_FPU_stack_top) ( ThreadId tid ); // 64-bit read
@@ -301,12 +301,6 @@
 extern UInt VG_(get_shadow_EDX) ( ThreadId tid );
 extern ULong VG_(get_shadow_FPU_stack_top) ( ThreadId tid ); // 64-bit read
 
-// SUPER HACK!  Watch out now.
-extern UInt VG_(get_EAX_tag) ( ThreadId tid );
-extern UInt VG_(get_EDX_tag) ( ThreadId tid );
-extern UInt VG_(get_FPU_stack_top_tag) ( ThreadId tid );
-// Super-duper hack!!!
-extern UInt* VG_(get_tag_ptr_for_x86_guest_offset) ( ThreadId tid, UInt offset );
 
 /*====================================================================*/
 /*=== Valgrind's version of libc                                   ===*/



