RFR(M): 8024921: PPC64 (part 113): Extend Load and Store nodes to know about memory ordering.

Vladimir Kozlov vladimir.kozlov at oracle.com
Tue Nov 12 18:57:33 PST 2013


Goetz,

Too much changes due to explicit params which are not used on our 
platforms. Can you leave current make_load()/store_to_memory() for 
unordered case and add new make_load_ordered() and 
store_to_memory_ordered() for which you pass all parameters (and they 
call make_load()/store_to_memory()) ?

Can you explain why?:
"Maintaining this change has shown very error prone if the defaults for 
the new field are ::unordered."
Did you tried what I suggested above?

Changes to memory nodes (and LoadNode::make()/ StoreNode::make()) are 
fine since we need to record ordering case and there is no other way. 
And it is less cases than make_load()/store_to_memory().

Regarding David's concern about memory barriers I think changes are fine 
because MemBar are preserved in IR graph. Some of them are different 
kind but it is fine for C2 - it just needs some barriers to preserve 
order of loads and stores.

As Vitaly I also don't know what is 'Sem'. Please, translate :)

Thanks,
Vladimir

On 11/12/13 8:30 AM, Lindenmaier, Goetz wrote:
> Hi,
>
> I updated this webrev to work with the latest version of the staging repository.
> http://cr.openjdk.java.net/~goetz/webrevs/8024921-0-ldst/
>
> Best regards,
>    Goetz.
>
> From: goetz.lindenmaier at sap.com
> Sent: Freitag, 11. Oktober 2013 15:34
> To: hotspot-dev developers; ppc-aix-port-dev at openjdk.java.net; Vladimir Kozlov
> Subject: RFR(M): 8024921: PPC64 (part 113): Extend Load and Store nodes to know about memory ordering.
>
> Hi,
>
> I prepared a webrev for 8024921<https://bugs.openjdk.java.net/browse/JDK-8024921>Extend Load and Store nodes to know about memory ordering.
> This is part of the PPC port.
> http://cr.openjdk.java.net/~goetz/webrevs/8024921-0-ldst/
>
> For a detailed description see the text in the webrev and bug description.
>
> All this basically does is add a field to load and store nodes and
> change all constructor calls to set this field.  So the effect on
> existing platforms should be very small.  Therefore I marked this
> 'M', although quite some lines of code are touched.
>
> Please review and test this change.
> I'm happy to incorporate your comments and any improvements
> you propose.
>
> Best regards,
>    Goetz.
>
>
>
>


More information about the ppc-aix-port-dev mailing list