You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Eugene S. Ostrovsky (JIRA)" <ji...@apache.org> on 2006/11/10 13:20:37 UTC

[jira] Created: (HARMONY-2145) [drlvm][jvmti] Compiled Method Load event - inlined method support

[drlvm][jvmti] Compiled Method Load event - inlined method support
------------------------------------------------------------------

                 Key: HARMONY-2145
                 URL: http://issues.apache.org/jira/browse/HARMONY-2145
             Project: Harmony
          Issue Type: New Feature
          Components: DRLVM
            Reporter: Eugene S. Ostrovsky


Current VM doesn't report Compiled Method Load event for methods that are inlined by JIT. 
Though spec requires it to be sent for every compiled method:
http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html#CompiledMethodLoad

We need to add some function to interface between VM and JIT in order to let VM know about inlined methods.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (HARMONY-2145) [drlvm][jvmti] Compiled Method Load event - inlined method support

Posted by "George Timoshenko (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-2145?page=all ]

George Timoshenko updated HARMONY-2145:
---------------------------------------

    Attachment: exe_notify_compile_method_load_added.diff

There is already some implementation of required functionality.

The patch appends exe_notify_compile_method_load flag into the OpenMethodExecutionParam struct (FALSE by default).

When the flag is turned on code emitter (Jitrino OPT) runs sendCompiledMethodLoadEvent for each method that was compiled during current compilation session.

Here is the current implementation of sendCompiledMethodLoadEvent (in DrlVMInterface.cpp):

void DrlVMCompilationInterface::sendCompiledMethodLoadEvent(MethodDesc * methodDesc, 
        uint32 codeSize, void* codeAddr, uint32 mapLength, 
        AddrLocation* addrLocationMap, void* compileInfo) {

    // VM-JIT interface function should be called here instead of logging
    if (Log::isEnabled()) {
        Log::out() << "   ** Inlined method: " 
                << methodDesc->getName() << std::endl;
        Log::out() << "   ** Number of locations:" << mapLength 
                << std::endl;
    }
}

sendCompiledMethodLoadEvent 's signature AFAIU is exactly the same as the one from SPEC.
So all we need IMO is to insert into sendCompiledMethodLoadEvent a call to VM that raises necessary event.



> [drlvm][jvmti] Compiled Method Load event - inlined method support
> ------------------------------------------------------------------
>
>                 Key: HARMONY-2145
>                 URL: http://issues.apache.org/jira/browse/HARMONY-2145
>             Project: Harmony
>          Issue Type: New Feature
>          Components: DRLVM
>            Reporter: Eugene S. Ostrovsky
>         Attachments: exe_notify_compile_method_load_added.diff
>
>
> Current VM doesn't report Compiled Method Load event for methods that are inlined by JIT. 
> Though spec requires it to be sent for every compiled method:
> http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html#CompiledMethodLoad
> We need to add some function to interface between VM and JIT in order to let VM know about inlined methods.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira