Getting ciObject from oop/jobject

Nick Williams nicholas+openjdk at nicholaswilliams.net
Wed Jul 31 19:17:54 UTC 2013


In native code (library_call.cpp), if I have an oop (which I can convert to a jobject if need be), how do I get a ciObject? I see that ciEnv has a ciObject* get_object(oop) method, but it's private. And ciObjectFactory has a ciObject* get(oop) method, but I can't figure out how to get the ciObjectFactory instance.

I know that ciObject keeps a jobject internally, and I know that ciObject has a ciObject(oop) constructor, but it's protected (for good reason).

If it helps, I'm trying to inline a method and need to set_result(makecon(TypeInstPtr::make(oopInstance))). I may be going down the wrong path.

Thanks in advance for any help,

Nick


More information about the core-libs-dev mailing list