Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8221306

JVMTI spec for FramePop(), MethodExit(), and MethodEnter() could use some cleanup

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • 15
    • None
    • hotspot
    • None
    • b26

      The JVMTI spec for FramePop(), MethodExit(), and MethodEnter() all provide some info on how to access the frame being popped, exited, or entered. However, there is some inconsistency in what is provided, some useful info omitted, and some mistakes:

      https://docs.oracle.com/en/java/javase/11/docs/specs/jvmti.html#FramePop

      Here is a summary:

      All 3 mention calling GetFrameLocation() to get information about the frame, but none mention that 0 should be passed for the depth argument to get the frame in question (the one being popped, entered, or exited). It would be useful to the reader to mention this.
       
      MethodExit() has the following incorrect text:

      "The frame field provides access to the stack frame for the method."

      It should be removed. There is no "frame field".

      MethodExit() includes the following:

      "The method field uniquely identifies the method being entered or exited."

      There is no need for it to mention "the method being entered", only the "the method being exited. Also, "field" should be replaced with "argument". Also, similar text is missing from FramePop() and MethodEnter(). All 3 should include a line documenting what the method argument contains, or this description of the "method" argument should just be removed since it is already described in the "parameters" section.

            sspitsyn Serguei Spitsyn
            cjplummer Chris Plummer
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: