Hi Marc,

Yes, StackMod is only implemented for x86 and x86-64 in rewrite mode.  I'm not 
sure why only rewrite mode is supported, perhaps someone else could comment?

But the major challenge we're facing is that it is often difficult to obtain a 
complete-enough understanding of how the stack is accessed to safely modify the 
stack.  One reason for this is that it's frequently tough to determine whether 
a memory store/load accesses the stack or not.  And even if we know a stack 
access is occurring, it is often difficult to determine where on the stack is 
being accessed.  As a result, our current StackMod implementation is unable to 
modify ~50% of otherwise instrumentable functions.  Our current efforts are 
focused on reducing this percentage.

Specific approaches we've considered (and started working on) include:
  *  Reducing unnecessary conservativeness in our StackAnalysis procedure
  *  Adding memory-tracking to StackAnalysis
  *  Limited interprocedural analysis to track stack pointers that are passed 
between functions

- Matt
________________________________________
From: Dyninst-api <dyninst-api-boun...@cs.wisc.edu> on behalf of Marc Brünink 
<m...@u.nus.edu>
Sent: Thursday, January 07, 2016 9:52 PM
To: dyninst-api@cs.wisc.edu
Subject: [DynInst_API:] StackMod

Dear all,

I never used StackMod nor did I look at the code so far.
If I remember correctly Stackmod only works for x86* in rewriting mode.

I was wondering why it is limited to rewriting, what are the
limitations, remaining open challenges etc.

Marc


_______________________________________________
Dyninst-api mailing list
Dyninst-api@cs.wisc.edu
https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api

_______________________________________________
Dyninst-api mailing list
Dyninst-api@cs.wisc.edu
https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api

Reply via email to