graalCodeInstaller questions, recording scopes, etc.
Doug Simon
doug.simon at oracle.com
Thu Jan 2 10:02:15 PST 2014
On Dec 20, 2013, at 3:41 PM, Deneau, Tom <tom.deneau at amd.com> wrote:
> Closing the loop again, for my original questions, adding answers
> below that were relayed in the Skype call on Thursday...
>
>> -----Original Message-----
>> From: Deneau, Tom
>> Sent: Monday, December 16, 2013 3:58 PM
>> To: graal-dev at openjdk.java.net
>> Subject: graalCodeInstaller questions, recording scopes, etc.
>>
<snip>
> * Our infopoints have byteCodePositions. The ones that get
>> "recorded" go thru record_scope which has all sorts of
>> host-specific checking on the scope info. For instance,
>> get_hotspot_value will compare a register # with
>> RegisterImpl::number_of_registers (which refers to the host) and
>> if it is, assert that the type is FLOAT or DOUBLE. None of this
>> holds with HSAIL registers. What is the best way to resolve
>> this?
>>
>
> This issue will be handled by the virtualization of some of the calls
> in graalCodeInstaller that Doug will be implementing.
I made the CodeInstaller class subclassable and the ScopeValue creation methods virtual[1]. At some point, I imagine CompilerToGPU.generateKernel() will be expanded to incorporate (and obsolete) HotSpotCodeCacheProvider.addExternalMethod(). This means the code for generateKernel in graalCompilerToGPU.cpp can use a GPU specific subclass of CodeInstaller to create GPU ScopeValues.
-Doug
[1] http://hg.openjdk.java.net/graal/graal/rev/03bb0ee05409
More information about the graal-dev
mailing list