This patch clarifies the ABI requirements for data-logging functions in libitm's documentation. Thanks to Luke Dalessandro for pointing this out.
OK for trunk? Torvald
commit b9cbb260f958f53afbea69675458f3f15a04b812 Author: Torvald Riegel <trie...@redhat.com> Date: Tue Oct 23 14:56:32 2012 +0200 Clarify ABI requirements for data-logging functions. * libitm.texi: Clarify ABI requirements for data-logging functions. diff --git a/libitm/libitm.texi b/libitm/libitm.texi index 6cfcaf9..7e5c413 100644 --- a/libitm/libitm.texi +++ b/libitm/libitm.texi @@ -156,6 +156,13 @@ about which memory locations are shared and which are not shared with other threads (i.e., data must be accessed either transactionally or nontransactionally). Otherwise, non-write-through TM algorithms would not work. +For memory locations on the stack, this requirement extends to only the +lifetime of the stack frame that the memory location belongs to (or the +lifetime of the transaction, whichever is shorter). Thus, memory that is +reused for several stack frames could be target of both data logging and +transactional accesses; however, this is harmless because these stack frames' +lifetimes will end before the transaction finishes. + @subsection [No changes] Scatter/gather calls @subsection [No changes] Serial and irrevocable mode @subsection [No changes] Transaction descriptor