This patch adds new functionality to support using memory references are arguments to clean calls in DR.
I fully expect some issues from upstream to be reported regarding this. I wasn't sure of the best approach to integrating some aspects of this code, in terms of style and locality so didn't over think it in the first attempt.