" --pointercheck=no|yes enforce client address space limits [yes]\n"
" --support-elan3=no|yes hacks for Quadrics Elan3 support [no]\n"
" --show-emwarns=no|yes show warnings about emulation limits? [no]\n"
-" --smc-support=none|stack|all support for self-modifying code:\n"
-" none, for code found in stacks, or all [stack]\n"
+" --smc-check=none|stack|all checks for self-modifying code: none,\n"
+" only for code found in stacks, or all [stack]\n"
"\n"
" user options for Valgrind tools that report errors:\n"
" --xml=yes all output is in XML (Memcheck only)\n"
else VG_BNUM_CLO(arg, "--num-callers", VG_(clo_backtrace_size), 1,
VG_DEEPEST_BACKTRACE)
- else if (VG_CLO_STREQ(arg, "--smc-support=none"))
- VG_(clo_smc_support) = Vg_SmcNone;
- else if (VG_CLO_STREQ(arg, "--smc-support=stack"))
- VG_(clo_smc_support) = Vg_SmcStack;
- else if (VG_CLO_STREQ(arg, "--smc-support=all"))
- VG_(clo_smc_support) = Vg_SmcAll;
+ else if (VG_CLO_STREQ(arg, "--smc-check=none"))
+ VG_(clo_smc_check) = Vg_SmcNone;
+ else if (VG_CLO_STREQ(arg, "--smc-check=stack"))
+ VG_(clo_smc_check) = Vg_SmcStack;
+ else if (VG_CLO_STREQ(arg, "--smc-check=all"))
+ VG_(clo_smc_check) = Vg_SmcAll;
else VG_BNUM_CLO(arg, "--vex-iropt-verbosity",
VG_(clo_vex_control).iropt_verbosity, 0, 10)
Bool VG_(clo_show_emwarns) = False;
Int VG_(clo_max_stackframe) = 2000000;
Bool VG_(clo_wait_for_gdb) = False;
-VgSmc VG_(clo_smc_support) = Vg_SmcStack;
+VgSmc VG_(clo_smc_check) = Vg_SmcStack;
/*--------------------------------------------------------------------*/
Addr addr = (Addr)addr64;
/* All chasing disallowed if all bbs require self-checks. */
- if (VG_(clo_smc_support) == Vg_SmcAll)
+ if (VG_(clo_smc_check) == Vg_SmcAll)
goto dontchase;
/* AAABBBCCC: if default self-checks are in force, reject if we
would choose to have a self-check for the dest. Note, this must
match the logic at XXXYYYZZZ below. */
- if (VG_(clo_smc_support) == Vg_SmcStack) {
+ if (VG_(clo_smc_check) == Vg_SmcStack) {
Segment* seg = VG_(find_segment)(addr);
if (seg && (seg->flags & SF_GROWDOWN))
goto dontchase;
/* Do we want a self-checking translation? */
do_self_check = False;
- switch (VG_(clo_smc_support)) {
+ switch (VG_(clo_smc_check)) {
case Vg_SmcNone: do_self_check = False; break;
case Vg_SmcAll: do_self_check = True; break;
case Vg_SmcStack:
/* XXXYYYZZZ: must match the logic at AAABBBCCC above */
do_self_check = seg ? toBool(seg->flags & SF_GROWDOWN) : False;
break;
- default: vg_assert2(0, "unknown VG_(clo_smc_support) value");
+ default: vg_assert2(0, "unknown VG_(clo_smc_check) value");
}
/* True if a debug trans., or if bit N set in VG_(clo_trace_codegen). */
}
VgSmc;
-extern VgSmc VG_(clo_smc_support);
+extern VgSmc VG_(clo_smc_check);
#endif // __PUB_CORE_OPTIONS_H
prog: smc1
-vgopts: --smc-support=all
+vgopts: --smc-check=all
--pointercheck=no|yes enforce client address space limits [yes]
--support-elan3=no|yes hacks for Quadrics Elan3 support [no]
--show-emwarns=no|yes show warnings about emulation limits? [no]
- --smc-support=none|stack|all support for self-modifying code:
- none, for code found in stacks, or all [stack]
+ --smc-check=none|stack|all checks for self-modifying code: none,
+ only for code found in stacks, or all [stack]
user options for Valgrind tools that report errors:
--xml=yes all output is in XML (Memcheck only)
--pointercheck=no|yes enforce client address space limits [yes]
--support-elan3=no|yes hacks for Quadrics Elan3 support [no]
--show-emwarns=no|yes show warnings about emulation limits? [no]
- --smc-support=none|stack|all support for self-modifying code:
- none, for code found in stacks, or all [stack]
+ --smc-check=none|stack|all checks for self-modifying code: none,
+ only for code found in stacks, or all [stack]
user options for Valgrind tools that report errors:
--xml=yes all output is in XML (Memcheck only)
prog: smc1
-vgopts: --smc-support=all
+vgopts: --smc-check=all