Merge 07-seginfo from Jeremy Fitzhardinge:
API for skins to extract information about mapped segments.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1245 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/include/vg_skin.h b/include/vg_skin.h
index 46cc838..7a2249d 100644
--- a/include/vg_skin.h
+++ b/include/vg_skin.h
@@ -1071,6 +1071,26 @@
It doesn't matter if debug info is present or not. */
extern Bool VG_(get_objname) ( Addr a, Char* objname, Int n_objname );
+/* A way to get information about what segments are mapped */
+typedef struct _SegInfo SegInfo;
+
+extern const SegInfo* VG_(next_seginfo)(const SegInfo *);
+extern Addr VG_(seg_start)(const SegInfo *);
+extern UInt VG_(seg_size)(const SegInfo *);
+extern const UChar* VG_(seg_filename)(const SegInfo *);
+extern UInt VG_(seg_sym_offset)(const SegInfo *);
+
+typedef
+ enum {
+ Vg_SectUnknown,
+ Vg_SectText,
+ Vg_SectGOT,
+ Vg_SectPLT
+ }
+ VgSectKind;
+
+extern VgSectKind VG_(seg_sect_kind)(Addr);
+
/*====================================================================*/
/*=== Shadow chunks and block-finding ===*/