qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] loads-stores.rst: add footnote that clarifies GETPC usage
@ 2020-10-15  9:51 Emanuele Giuseppe Esposito
  2020-10-20 13:18 ` Peter Maydell
  0 siblings, 1 reply; 2+ messages in thread
From: Emanuele Giuseppe Esposito @ 2020-10-15  9:51 UTC (permalink / raw)
  To: qemu-devel
  Cc: Peter Maydell, Richard Henderson, Emanuele Giuseppe Esposito,
	Paolo Bonzini

Current documentation is not too clear on the GETPC usage.
In particular, when used outside the top level helper function
it causes unexpected behavior.

Signed-off-by: Emanuele Giuseppe Esposito <e.emanuelegiuseppe@gmail.com>
---
 docs/devel/loads-stores.rst | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/docs/devel/loads-stores.rst b/docs/devel/loads-stores.rst
index 9a944ef1af..59c1225391 100644
--- a/docs/devel/loads-stores.rst
+++ b/docs/devel/loads-stores.rst
@@ -93,7 +93,13 @@ guest CPU state in case of a guest CPU exception.  This is passed
 to ``cpu_restore_state()``.  Therefore the value should either be 0,
 to indicate that the guest CPU state is already synchronized, or
 the result of ``GETPC()`` from the top level ``HELPER(foo)``
-function, which is a return address into the generated code.
+function, which is a return address into the generated code [#gpc]_.
+
+.. [#gpc] Note that ``GETPC()`` should be used with great care: calling
+          it in other functions that are *not* the top level
+          ``HELPER(foo)`` will cause unexpected behavior. Instead, the
+          value of ``GETPC()`` should be read from the helper and passed
+          if needed to the functions that the helper calls.
 
 Function names follow the pattern:
 
-- 
2.17.1



^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] loads-stores.rst: add footnote that clarifies GETPC usage
  2020-10-15  9:51 [PATCH] loads-stores.rst: add footnote that clarifies GETPC usage Emanuele Giuseppe Esposito
@ 2020-10-20 13:18 ` Peter Maydell
  0 siblings, 0 replies; 2+ messages in thread
From: Peter Maydell @ 2020-10-20 13:18 UTC (permalink / raw)
  To: Emanuele Giuseppe Esposito
  Cc: Paolo Bonzini, Richard Henderson, QEMU Developers

On Thu, 15 Oct 2020 at 10:51, Emanuele Giuseppe Esposito
<e.emanuelegiuseppe@gmail.com> wrote:
>
> Current documentation is not too clear on the GETPC usage.
> In particular, when used outside the top level helper function
> it causes unexpected behavior.
>
> Signed-off-by: Emanuele Giuseppe Esposito <e.emanuelegiuseppe@gmail.com>



Applied to target-arm.next, thanks.

-- PMM


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-10-20 13:28 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-15  9:51 [PATCH] loads-stores.rst: add footnote that clarifies GETPC usage Emanuele Giuseppe Esposito
2020-10-20 13:18 ` Peter Maydell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).