Index: xdocs/subcomponents/drlvm/Jitrino_PMF.html =================================================================== --- xdocs/subcomponents/drlvm/Jitrino_PMF.html (revision 545153) +++ xdocs/subcomponents/drlvm/Jitrino_PMF.html (working copy) @@ -65,6 +65,7 @@
  • Logging System
    1. Defining Streams
    2. +
    3. Using Filters in Logging
    4. Assigning a Stream to a File
      1. Using Filename Masks
      2. @@ -386,14 +387,14 @@

        The general form of the JIT command is the following:

        --XDjit.<JIT>.<pipeline>.<parameter>=<value>
        +-XX:jit.<JIT>.<pipeline>.<parameter>=<value>
         

        Where

        • - -XDjit. is the mandatory prefix enabling + -XX:jit. is the mandatory prefix enabling JIT commands selection from VM commands.

          Note

          @@ -462,13 +463,13 @@ a command file and read this file with a special read command:

          --XDjit.read=<command filename>
          +-XX:jit.read=<command filename>
           

          Note

          Write commands in the command file without - the prefix -XDjit. The read command + the prefix -XX:jit. The read command itself can be used in the command file. The command file can contain empty lines and comment lines starting with # or //.

          @@ -497,7 +498,7 @@ non-terminal node of the tree is called a path and defined by the following path definition command:

          --XDjit.<JIT>.<pipeline>.path.<name>=<child1>,<child2>,...
          +-XX:jit.<JIT>.<pipeline>.path.<name>=<child1>,<child2>,...
           

          The given command introduces a node with the specified name @@ -521,9 +522,9 @@ and a, b and c are the action names.

          --XDjit.OPT.path=M,N
          --XDjit.OPT.path.M=a
          --XDjit.OPT.path.N=b,c
          +-XX:jit.OPT.path=M,N
          +-XX:jit.OPT.path.M=a
          +-XX:jit.OPT.path.N=b,c
           

          The given commands describe the simple @@ -581,7 +582,7 @@

          To define a filter, use the following command format:

          --XDjit.<JIT>.<pipeline>.filter=<class>.<method><signature>
          +-XX:jit.<JIT>.<pipeline>.filter=<class>.<method><signature>
           

          Where

          @@ -616,7 +617,7 @@

          Example

          --XDjit.OPT.p.filter=java/lang/Thread.check
          +-XX:jit.OPT.p.filter=java/lang/Thread.check
           

          The following methods can match the @@ -634,12 +635,12 @@

          Example

          --XDjit.OPT.path=M,N
          --XDjit.OPT.path.M=a
          --XDjit.OPT.path.N=b,c
          --XDjit.OPT.p.path=M,N,O
          --XDjit.OPT.p.path.O=a
          --XDjit.OPT.p.filter=java/lang/Thread.check
          +-XX:jit.OPT.path=M,N
          +-XX:jit.OPT.path.M=a
          +-XX:jit.OPT.path.N=b,c
          +-XX:jit.OPT.p.path=M,N,O
          +-XX:jit.OPT.p.path.O=a
          +-XX:jit.OPT.p.filter=java/lang/Thread.check
           

          The commands above are associated with @@ -677,7 +678,7 @@ parameters passing convention. The parameter definition command pattern is the following:

          --XDjit.<JIT>.<pipeline>.arg.<full name>.<param>=<value>
          +-XX:jit.<JIT>.<pipeline>.arg.<full name>.<param>=<value>
           

          Where

          @@ -709,7 +710,7 @@

          Example

          --XDjit.OPT.p.arg.a.verify=1
          +-XX:jit.OPT.p.arg.a.verify=1
           

          The given command sets the @@ -734,7 +735,7 @@ - -XDjit.OPT.p.arg.N.b.verify=2 + -XX:jit.OPT.p.arg.N.b.verify=2

          @@ -752,7 +753,7 @@ - -XDjit.OPT.p.arg.N.verify=2 + -XX:jit.OPT.p.arg.N.verify=2
          @@ -767,7 +768,7 @@ - -XDjit.OPT.p.arg.verify=2 + -XX:jit.OPT.p.arg.verify=2 <full name> @@ -781,7 +782,7 @@ - -XDjit.OPT.arg.N.verify=2 + -XX:jit.OPT.arg.N.verify=2 <pipeline> @@ -797,8 +798,8 @@

          The special form of argument definition commands controls the pipeline construction process:

          --XDjit.<JIT>.<pipeline>.arg.<full name>=on
          --XDjit.<JIT>.<pipeline>.arg.<full name>=off
          +-XX:jit.<JIT>.<pipeline>.arg.<full name>=on
          +-XX:jit.<JIT>.<pipeline>.arg.<full name>=off
           

          Note

          @@ -818,7 +819,7 @@

          To exclude action b from the pipeline, apply the following command:

          --XDjit.OPT.p.arg.N.b=off
          +-XX:jit.OPT.p.arg.N.b=off
           

          To enable/disable nodes directly in the path definition @@ -868,7 +869,7 @@ enabled, c2 is disabled and c3 is enabled and mandatory:

          --XDjit.<JIT>.<pipeline>.path.<name>=c1+,c2-,c3!
          +-XX:jit.<JIT>.<pipeline>.path.<name>=c1+,c2-,c3!
           

          If you try to disable any mandatory node with the @@ -971,7 +972,7 @@

          To enable outputting log information to a stream, enter a command of the following syntax:

          --XDjit.<JIT>.<pipeline>.arg.<full name>.log=<stream1>,<stream2>,...
          +-XX:jit.<JIT>.<pipeline>.arg.<full name>.log=<stream1>,<stream2>,...
           

          The left part of the command specifies the name of the JIT @@ -1001,12 +1002,32 @@ N.b and N.c by the same name. The streams can be assigned to different files.

          --XDjit.OPT.p.arg.N.b.log=ct
          --XDjit.OPT.p.arg.N.c.log=ct
          +-XX:jit.OPT.p.arg.N.b.log=ct
          +-XX:jit.OPT.p.arg.N.c.log=ct
           

          Back to Top

          +

          Using Filters in Logging

          + +

          Method filter may be used to filter + logging by package, class or method name. For logging purposes an empty + pipeline with an appropriate method filter may be defined. This pipeline + may be considered as a filter name for simplicity.

          + +

          Example

          +

          The following commands implicitly defines + an empty pipeline f for filtering purposes, + defines a method filter for this pipeline and enables logging for + the methods corresponding to f.

          + +
          -XX:jit.OPT.f.filter=main
          +-XX:jit.f.arg.log=ct
          +
          + +

          Back to Top

          +

          Assigning a Stream to a File

          @@ -1014,7 +1035,7 @@

          To assign a stream to a file, use the following command syntax:

          --XDjit.<JIT>.<pipeline>.arg.<full name>.log.<stream>.file=<filename mask>
          +-XX:jit.<JIT>.<pipeline>.arg.<full name>.log.<stream>.file=<filename mask>
           

          In the given command, the <filename mask> @@ -1190,8 +1211,8 @@ append/truncate mode for the log files that are opened for the first time:

          --XDjit.<JIT>.<pipeline>.arg.<full name>.log.<stream>.append=true
          --XDjit.<JIT>.<pipeline>.arg.<full name>.log.<stream>.append=false
          +-XX:jit.<JIT>.<pipeline>.arg.<full name>.log.<stream>.append=true
          +-XX:jit.<JIT>.<pipeline>.arg.<full name>.log.<stream>.append=false
           

          Back to Top

          @@ -1233,7 +1254,7 @@ <prefix> <arg def> <prefix> <file read> -<prefix> : -XDjit. +<prefix> : -XX:jit. <base> : [ <JIT> . ] [ <pipeline> . ]