From: Florian Krohm Date: Wed, 24 Sep 2014 12:06:55 +0000 (+0000) Subject: Ripple from constifying parameters of instrumentation functions and X-Git-Tag: svn/VALGRIND_3_11_0~969 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e383c673ddf399f54af3b4547fc84e841fbda50d;p=thirdparty%2Fvalgrind.git Ripple from constifying parameters of instrumentation functions and callbacks from VexTranslateArgs. See VEX r2958. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14564 --- diff --git a/cachegrind/cg_main.c b/cachegrind/cg_main.c index 4bb465e9e0..9746b75806 100644 --- a/cachegrind/cg_main.c +++ b/cachegrind/cg_main.c @@ -1048,9 +1048,9 @@ void addEvent_Bi ( CgState* cgs, InstrInfo* inode, IRAtom* whereTo ) static IRSB* cg_instrument ( VgCallbackClosure* closure, IRSB* sbIn, - VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* archinfo_host, + const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* archinfo_host, IRType gWordTy, IRType hWordTy ) { Int i, isize; diff --git a/callgrind/main.c b/callgrind/main.c index 5562c9edfb..86a93385dd 100644 --- a/callgrind/main.c +++ b/callgrind/main.c @@ -950,10 +950,10 @@ void addBBSetupCall(ClgState* clgs) static IRSB* CLG_(instrument)( VgCallbackClosure* closure, - IRSB* sbIn, - VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* archinfo_host, + IRSB* sbIn, + const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* archinfo_host, IRType gWordTy, IRType hWordTy ) { Int i; diff --git a/coregrind/m_gdbserver/m_gdbserver.c b/coregrind/m_gdbserver/m_gdbserver.c index 46bfbed19d..3ce18606aa 100644 --- a/coregrind/m_gdbserver/m_gdbserver.c +++ b/coregrind/m_gdbserver/m_gdbserver.c @@ -483,7 +483,7 @@ Bool VG_(is_watched)(PointKind kind, Addr addr, Int szB) } /* Returns the reason for which gdbserver instrumentation is needed */ -static VgVgdb VG_(gdbserver_instrumentation_needed) (VexGuestExtents* vge) +static VgVgdb VG_(gdbserver_instrumentation_needed) (const VexGuestExtents* vge) { GS_Address* g; int e; @@ -1088,8 +1088,8 @@ void VG_(helperc_invalidate_if_not_gdbserved) ( Addr addr ) static void VG_(add_stmt_call_invalidate_if_not_gdbserved) ( IRSB* sb_in, - VexGuestLayout* layout, - VexGuestExtents* vge, + const VexGuestLayout* layout, + const VexGuestExtents* vge, IRTemp jmp, IRSB* irsb) { @@ -1126,8 +1126,8 @@ static void VG_(add_stmt_call_invalidate_if_not_gdbserved) debugger statement will be inserted for all instructions of a block. */ static void VG_(add_stmt_call_gdbserver) (IRSB* sb_in, /* block being translated */ - VexGuestLayout* layout, - VexGuestExtents* vge, + const VexGuestLayout* layout, + const VexGuestExtents* vge, IRType gWordTy, IRType hWordTy, Addr iaddr, /* Addr of instruction being instrumented */ UChar delta, /* delta to add to iaddr to obtain IP */ @@ -1201,8 +1201,8 @@ static void VG_(add_stmt_call_gdbserver) or VG_(add_stmt_call_invalidate_if_not_gdbserved). */ static void VG_(add_stmt_call_invalidate_exit_target_if_not_gdbserved) (IRSB* sb_in, - VexGuestLayout* layout, - VexGuestExtents* vge, + const VexGuestLayout* layout, + const VexGuestExtents* vge, IRType gWordTy, IRSB* irsb) { @@ -1220,8 +1220,8 @@ static void VG_(add_stmt_call_invalidate_exit_target_if_not_gdbserved) IRSB* VG_(instrument_for_gdbserver_if_needed) (IRSB* sb_in, - VexGuestLayout* layout, - VexGuestExtents* vge, + const VexGuestLayout* layout, + const VexGuestExtents* vge, IRType gWordTy, IRType hWordTy) { IRSB* sb_out; diff --git a/coregrind/m_tooliface.c b/coregrind/m_tooliface.c index d95462de7e..4b1c96eb29 100644 --- a/coregrind/m_tooliface.c +++ b/coregrind/m_tooliface.c @@ -41,8 +41,8 @@ VgToolInterface VG_(tdict); void VG_(basic_tool_funcs)( void(*post_clo_init)(void), IRSB*(*instrument)(VgCallbackClosure*, IRSB*, - VexGuestLayout*, VexGuestExtents*, VexArchInfo*, - IRType, IRType), + const VexGuestLayout*, const VexGuestExtents*, + const VexArchInfo*, IRType, IRType), void(*fini)(Int) ) { diff --git a/coregrind/m_translate.c b/coregrind/m_translate.c index 322c31096f..72311bc787 100644 --- a/coregrind/m_translate.c +++ b/coregrind/m_translate.c @@ -59,7 +59,7 @@ #include "pub_core_execontext.h" // VG_(make_depth_1_ExeContext_from_Addr) -#include "pub_core_gdbserver.h" // VG_(tool_instrument_then_gdbserver_if_needed) +#include "pub_core_gdbserver.h" // VG_(instrument_for_gdbserver_if_needed) #include "libvex_emnote.h" // For PPC, EmWarn_PPC64_redir_underflow @@ -219,10 +219,10 @@ static IRExpr* mk_ecu_Expr ( Addr64 guest_IP ) */ static IRSB* tool_instrument_then_gdbserver_if_needed ( VgCallbackClosure* closureV, - IRSB* sb_in, - VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* vai, + IRSB* sb_in, + const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* vai, IRType gWordTy, IRType hWordTy ) { @@ -261,9 +261,9 @@ IRSB* tool_instrument_then_gdbserver_if_needed ( VgCallbackClosure* closureV, static IRSB* vg_SP_update_pass ( void* closureV, IRSB* sb_in, - VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* vai, + const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* vai, IRType gWordTy, IRType hWordTy ) { @@ -776,7 +776,7 @@ static Bool translations_allowable_from_seg ( NSegment const* seg, Addr addr ) return convention. */ static UInt needs_self_check ( void* closureV, - VexGuestExtents* vge ) + const VexGuestExtents* vge ) { VgCallbackClosure* closure = (VgCallbackClosure*)closureV; UInt i, bitset; @@ -1622,16 +1622,16 @@ Bool VG_(translate) ( ThreadId tid, They are entirely legal but longwinded so as to maximise the chance of the C typechecker picking up any type snafus. */ IRSB*(*f)(VgCallbackClosure*, - IRSB*,VexGuestLayout*,VexGuestExtents*, VexArchInfo*, - IRType,IRType) + IRSB*,const VexGuestLayout*,const VexGuestExtents*, + const VexArchInfo*,IRType,IRType) = VG_(clo_vgdb) != Vg_VgdbNo ? tool_instrument_then_gdbserver_if_needed : VG_(tdict).tool_instrument; IRSB*(*g)(void*, - IRSB*,VexGuestLayout*,VexGuestExtents*,VexArchInfo*, - IRType,IRType) - = (IRSB*(*)(void*,IRSB*,VexGuestLayout*,VexGuestExtents*, - VexArchInfo*,IRType,IRType))f; + IRSB*,const VexGuestLayout*,const VexGuestExtents*, + const VexArchInfo*,IRType,IRType) + = (IRSB*(*)(void*,IRSB*,const VexGuestLayout*, + const VexGuestExtents*, const VexArchInfo*,IRType,IRType))f; vta.instrument1 = g; } /* No need for type kludgery here. */ diff --git a/coregrind/pub_core_gdbserver.h b/coregrind/pub_core_gdbserver.h index de5b5dae73..5dd2d84380 100644 --- a/coregrind/pub_core_gdbserver.h +++ b/coregrind/pub_core_gdbserver.h @@ -150,8 +150,8 @@ extern Bool VG_(client_monitor_command) (HChar* cmd); gdbserver. */ extern IRSB* VG_(instrument_for_gdbserver_if_needed) (IRSB* sb_in, /* block to be instrumented */ - VexGuestLayout* layout, - VexGuestExtents* vge, + const VexGuestLayout* layout, + const VexGuestExtents* vge, IRType gWordTy, IRType hWordTy); /* reason for which gdbserver connection must be finished */ diff --git a/coregrind/pub_core_tooliface.h b/coregrind/pub_core_tooliface.h index e9d3631164..65311d8468 100644 --- a/coregrind/pub_core_tooliface.h +++ b/coregrind/pub_core_tooliface.h @@ -110,8 +110,8 @@ typedef struct { void (*tool_post_clo_init)(void); IRSB* (*tool_instrument) (VgCallbackClosure*, IRSB*, - VexGuestLayout*, VexGuestExtents*, - VexArchInfo*, IRType, IRType); + const VexGuestLayout*, const VexGuestExtents*, + const VexArchInfo*, IRType, IRType); void (*tool_fini) (Int); // VG_(needs).core_errors diff --git a/drd/drd_load_store.c b/drd/drd_load_store.c index afb88e16fd..a7928d5571 100644 --- a/drd/drd_load_store.c +++ b/drd/drd_load_store.c @@ -590,9 +590,9 @@ static void instrument_store(IRSB* const bb, IRExpr* addr_expr, IRSB* DRD_(instrument)(VgCallbackClosure* const closure, IRSB* const bb_in, - VexGuestLayout* const layout, - VexGuestExtents* const vge, - VexArchInfo* archinfo_host, + const VexGuestLayout* const layout, + const VexGuestExtents* const vge, + const VexArchInfo* archinfo_host, IRType const gWordTy, IRType const hWordTy) { diff --git a/drd/drd_load_store.h b/drd/drd_load_store.h index 532a38cc5d..ec8b4a5d1d 100644 --- a/drd/drd_load_store.h +++ b/drd/drd_load_store.h @@ -41,9 +41,9 @@ Bool DRD_(get_first_race_only)(void); void DRD_(set_first_race_only)(const Bool fro); IRSB* DRD_(instrument)(VgCallbackClosure* const closure, IRSB* const bb_in, - VexGuestLayout* const layout, - VexGuestExtents* const vge, - VexArchInfo* const archinfo_host, + const VexGuestLayout* const layout, + const VexGuestExtents* const vge, + const VexArchInfo* const archinfo_host, IRType const gWordTy, IRType const hWordTy); void DRD_(trace_mem_access)(const Addr addr, const SizeT size, diff --git a/exp-bbv/bbv_main.c b/exp-bbv/bbv_main.c index b133efa955..8926af46b4 100644 --- a/exp-bbv/bbv_main.c +++ b/exp-bbv/bbv_main.c @@ -345,10 +345,10 @@ static Int get_inst_type(Int len, Addr addr) /* gWordTy = size of guest word */ /* hWordTy = size of host word */ static IRSB* bbv_instrument ( VgCallbackClosure* closure, - IRSB* sbIn, VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* archinfo_host, - IRType gWordTy, IRType hWordTy ) + IRSB* sbIn, const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* archinfo_host, + IRType gWordTy, IRType hWordTy ) { Int i,n_instrs=1; IRSB *sbOut; diff --git a/exp-dhat/dh_main.c b/exp-dhat/dh_main.c index e18b395f48..78465ee0cd 100644 --- a/exp-dhat/dh_main.c +++ b/exp-dhat/dh_main.c @@ -872,9 +872,9 @@ void addMemEvent(IRSB* sbOut, Bool isWrite, Int szB, IRExpr* addr, static IRSB* dh_instrument ( VgCallbackClosure* closure, IRSB* sbIn, - VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* archinfo_host, + const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* archinfo_host, IRType gWordTy, IRType hWordTy ) { Int i, n = 0; diff --git a/exp-sgcheck/h_main.c b/exp-sgcheck/h_main.c index ea0fed88cc..ed1ac1dcca 100644 --- a/exp-sgcheck/h_main.c +++ b/exp-sgcheck/h_main.c @@ -607,9 +607,9 @@ static IRTemp for_sg__newIRTemp_cb ( IRType ty, void* opaque ) IRSB* h_instrument ( VgCallbackClosure* closure, IRSB* sbIn, - VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* archinfo_host, + const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* archinfo_host, IRType gWordTy, IRType hWordTy ) { Bool verboze = 0||False; diff --git a/exp-sgcheck/h_main.h b/exp-sgcheck/h_main.h index e41cc2edc1..b52af8c70f 100644 --- a/exp-sgcheck/h_main.h +++ b/exp-sgcheck/h_main.h @@ -70,9 +70,9 @@ SizeT h_replace_malloc_usable_size ( ThreadId tid, void* p ); /* Note that this also does the sg_ instrumentation. */ IRSB* h_instrument ( VgCallbackClosure* closure, IRSB* sbIn, - VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* archinfo_host, + const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* archinfo_host, IRType gWordTy, IRType hWordTy ); #endif diff --git a/exp-sgcheck/sg_main.c b/exp-sgcheck/sg_main.c index c9037b0462..30743e6dca 100644 --- a/exp-sgcheck/sg_main.c +++ b/exp-sgcheck/sg_main.c @@ -2079,7 +2079,7 @@ struct _SGEnv { static IRTemp gen_Get_SP ( struct _SGEnv* sge, IRSB* bbOut, - VexGuestLayout* layout, + const VexGuestLayout* layout, Int hWordTy_szB ) { IRExpr* sp_expr; @@ -2097,7 +2097,7 @@ static IRTemp gen_Get_SP ( struct _SGEnv* sge, static IRTemp gen_Get_FP ( struct _SGEnv* sge, IRSB* bbOut, - VexGuestLayout* layout, + const VexGuestLayout* layout, Int hWordTy_szB ) { IRExpr* fp_expr; @@ -2120,7 +2120,7 @@ static void instrument_mem_access ( struct _SGEnv* sge, Bool isStore, Int hWordTy_szB, Addr curr_IP, - VexGuestLayout* layout ) + const VexGuestLayout* layout ) { IRType tyAddr = Ity_INVALID; XArray* frameBlocks = NULL; @@ -2198,7 +2198,7 @@ void sg_instrument_fini ( struct _SGEnv * env ) void sg_instrument_IRStmt ( /*MOD*/struct _SGEnv * env, /*MOD*/IRSB* sbOut, IRStmt* st, - VexGuestLayout* layout, + const VexGuestLayout* layout, IRType gWordTy, IRType hWordTy ) { if (!sg_clo_enable_sg_checks) @@ -2333,7 +2333,7 @@ void sg_instrument_final_jump ( /*MOD*/struct _SGEnv * env, /*MOD*/IRSB* sbOut, IRExpr* next, IRJumpKind jumpkind, - VexGuestLayout* layout, + const VexGuestLayout* layout, IRType gWordTy, IRType hWordTy ) { if (!sg_clo_enable_sg_checks) diff --git a/exp-sgcheck/sg_main.h b/exp-sgcheck/sg_main.h index 36034de055..007c63b649 100644 --- a/exp-sgcheck/sg_main.h +++ b/exp-sgcheck/sg_main.h @@ -62,14 +62,14 @@ void sg_instrument_fini ( struct _SGEnv * env ); void sg_instrument_IRStmt ( /*MOD*/struct _SGEnv * env, /*MOD*/IRSB* sbOut, IRStmt* st, - VexGuestLayout* layout, + const VexGuestLayout* layout, IRType gWordTy, IRType hWordTy ); void sg_instrument_final_jump ( /*MOD*/struct _SGEnv * env, /*MOD*/IRSB* sbOut, IRExpr* next, IRJumpKind jumpkind, - VexGuestLayout* layout, + const VexGuestLayout* layout, IRType gWordTy, IRType hWordTy ); #endif diff --git a/helgrind/hg_main.c b/helgrind/hg_main.c index 673e41380d..d346fb9f53 100644 --- a/helgrind/hg_main.c +++ b/helgrind/hg_main.c @@ -4478,9 +4478,9 @@ static Bool is_in_dynamic_linker_shared_object( Addr64 ga ) static IRSB* hg_instrument ( VgCallbackClosure* closure, IRSB* bbIn, - VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* archinfo_host, + const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* archinfo_host, IRType gWordTy, IRType hWordTy ) { Int i; diff --git a/include/pub_tool_tooliface.h b/include/pub_tool_tooliface.h index 434f5e27ce..4349c1bb7a 100644 --- a/include/pub_tool_tooliface.h +++ b/include/pub_tool_tooliface.h @@ -218,9 +218,9 @@ extern void VG_(basic_tool_funcs)( */ IRSB*(*instrument)(VgCallbackClosure* closure, IRSB* sb_in, - VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* archinfo_host, + const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* archinfo_host, IRType gWordTy, IRType hWordTy), diff --git a/lackey/lk_main.c b/lackey/lk_main.c index bfa2fd8db8..f76998f8e9 100644 --- a/lackey/lk_main.c +++ b/lackey/lk_main.c @@ -652,9 +652,9 @@ static void lk_post_clo_init(void) static IRSB* lk_instrument ( VgCallbackClosure* closure, IRSB* sbIn, - VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* archinfo_host, + const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* archinfo_host, IRType gWordTy, IRType hWordTy ) { IRDirty* di; diff --git a/massif/ms_main.c b/massif/ms_main.c index 9f33546c4e..7d78b5f092 100644 --- a/massif/ms_main.c +++ b/massif/ms_main.c @@ -2087,9 +2087,9 @@ static IRSB* ms_instrument2( IRSB* sbIn ) static IRSB* ms_instrument ( VgCallbackClosure* closure, IRSB* sbIn, - VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* archinfo_host, + const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* archinfo_host, IRType gWordTy, IRType hWordTy ) { if (! have_started_executing_code) { diff --git a/memcheck/mc_include.h b/memcheck/mc_include.h index 258d3c6665..39e03824a0 100644 --- a/memcheck/mc_include.h +++ b/memcheck/mc_include.h @@ -657,9 +657,9 @@ VG_REGPARM(1) UWord MC_(helperc_b_load32)( Addr a ); /* Functions defined in mc_translate.c */ IRSB* MC_(instrument) ( VgCallbackClosure* closure, IRSB* bb_in, - VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* archinfo_host, + const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* archinfo_host, IRType gWordTy, IRType hWordTy ); IRSB* MC_(final_tidy) ( IRSB* ); diff --git a/memcheck/mc_translate.c b/memcheck/mc_translate.c index 5efa5ade13..1f7402dd6c 100644 --- a/memcheck/mc_translate.c +++ b/memcheck/mc_translate.c @@ -210,7 +210,7 @@ typedef /* READONLY: the guest layout. This indicates which parts of the guest state should be regarded as 'always defined'. */ - VexGuestLayout* layout; + const VexGuestLayout* layout; /* READONLY: the host word type. Needed for constructing arguments of type 'HWord' to be passed to helper functions. @@ -6197,9 +6197,9 @@ static Bool checkForBogusLiterals ( /*FLAT*/ IRStmt* st ) IRSB* MC_(instrument) ( VgCallbackClosure* closure, IRSB* sb_in, - VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* archinfo_host, + const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* archinfo_host, IRType gWordTy, IRType hWordTy ) { Bool verboze = 0||False; diff --git a/none/nl_main.c b/none/nl_main.c index c56b9b32f3..574486a0e1 100644 --- a/none/nl_main.c +++ b/none/nl_main.c @@ -38,9 +38,9 @@ static void nl_post_clo_init(void) static IRSB* nl_instrument ( VgCallbackClosure* closure, IRSB* bb, - VexGuestLayout* layout, - VexGuestExtents* vge, - VexArchInfo* archinfo_host, + const VexGuestLayout* layout, + const VexGuestExtents* vge, + const VexArchInfo* archinfo_host, IRType gWordTy, IRType hWordTy ) { return bb;