C1 for PPC64 contribution

Igor Veresov igor.veresov at oracle.com
Tue Oct 6 23:40:12 UTC 2015

> On Oct 6, 2015, at 5:59 AM, Doerr, Martin <martin.doerr at sap.com> wrote:
> Hi,
> SAP has ported the C1 compiler to PPC64.  To contribute it, we require to do
> some minor shared changes to C1.  Some are bugfixes, others minor adaptions
> to support PPC64 specialities.  We will send out RFRs for the following changes
> step by step:
> http://cr.openjdk.java.net/~mdoerr/8138890_c1_ambiguous_delete
> http://cr.openjdk.java.net/~mdoerr/8138891_c1_cms_membar
> http://cr.openjdk.java.net/~mdoerr/8138892_c1_counter_overflow

Could you please be add LIR_Assembler::store_parameter() on x86 to support metadata constant? Otherwise it kind of breaks the pattern used in CounterOverflowStub. I guess, it’s all just to produce a little tighter code by moving constant materialization to the stub, or is it something else? Any visible effects?

> http://cr.openjdk.java.net/~mdoerr/8138894_c1_IRIW
> http://cr.openjdk.java.net/~mdoerr/8138895_c1_syncLockOpr
> http://cr.openjdk.java.net/~mdoerr/8138896_c1_patching_fix
> http://cr.openjdk.java.net/~mdoerr/8138952_c1_PPC64_defs

-#if defined(__SOFTFP__) || defined(PPC32)
+#if defined(__SOFTFP__) || defined(PPC)

 double SharedRuntime::dsqrt(double f) {
   return sqrt(f);

-#if defined(__SOFTFP__) || defined(PPC32)
+#if defined(__SOFTFP__) || defined(PPC)

   static double dsqrt(double f);

So here is PPC defined if either PPC32 and PPC64 is defined?


> After this, we will contribute the changes to the ppc files in one blob.
> We would appreciate your help in reviewing and especially sponsoring!
> Best regards,
> Martin

More information about the hotspot-compiler-dev mailing list