die_mem_stack_signal events.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3622
/* For tracking memory events, indicate the entire frame has been
allocated. */
- VG_TRACK( new_mem_stack_signal, addr, size );
+ VG_TRACK( new_mem_stack_signal, addr - VGA_STACK_REDZONE_SIZE, size );
return True;
}
size = restore_rt_sigframe(tst, (struct rt_sigframe *)rsp, &sigNo);
- VG_TRACK( die_mem_stack_signal, rsp, size );
+ VG_TRACK( die_mem_stack_signal, rsp - VGA_STACK_REDZONE_SIZE, size );
if (VG_(clo_trace_signals))
VG_(message)(
/* For tracking memory events, indicate the entire frame has been
allocated. */
- VG_TRACK( new_mem_stack_signal, addr, size );
+ VG_TRACK( new_mem_stack_signal, addr - VGA_STACK_REDZONE_SIZE, size );
return True;
}
else
size = restore_rt_sigframe(tst, (struct rt_sigframe *)esp, &sigNo);
- VG_TRACK( die_mem_stack_signal, esp, size );
+ VG_TRACK( die_mem_stack_signal - VGA_STACK_REDZONE_SIZE, esp, size );
if (VG_(clo_trace_signals))
VG_(message)(
VG_(threads)[tid].altstack.ss_sp = ss->ss_sp;
VG_(threads)[tid].altstack.ss_size = ss->ss_size;
VG_(threads)[tid].altstack.ss_flags = 0;
+
+ VG_TRACK( new_mem_stack_signal,
+ ss->ss_sp + ss->ss_size - VGA_STACK_REDZONE_SIZE,
+ VGA_STACK_REDZONE_SIZE );
}
}
SET_SYSCALL_RETVAL(tid, 0);