RFR (M): 8030863: PPC64: (part 220): ConstantTableBase for calls between args and jvms

Vladimir Kozlov vladimir.kozlov at oracle.com
Mon Dec 23 12:00:40 PST 2013


Goetz,

Can you explain the problem in details? When you say 'during expand' do 
you mean 'during postalloc_expand'? Because normal expand happens during 
matching. And I did not get how it is related to derived/base pairs.

Thanks,
Vladimir

On 12/20/13 7:20 AM, Lindenmaier, Goetz wrote:
> Hi,
>
> The change "8028580: PPC64 (part 114/120): Support for Call nodes with constants. "
> adds MachConstantBase node for Calls at req()-1 during
> expand. Register allocation adds the derived/base pairs and then
> uses the wrong register maps for allocation, because the MachConstantBase
> node is no more at req()-1
>
> Now add the edge in the matcher when the node is complete. Add it
> after parameters and before jvms. Adapt jvms offsets. Also assure
> jvms is always cloned, else the offset gets wrong.
>
> So far, $constanttablebase is only used in Calls on PPC, so this has no effect on
> other platforms.
>
> Please review and test this change.
> http://cr.openjdk.java.net/~goetz/webrevs/8030863-0-call/
>
> Best regards,
>    Goetz.
>


More information about the hotspot-dev mailing list