review request (S/M): 6951319 enable Sun Studio 12 update 1

John Coomes John.Coomes at oracle.com
Wed May 12 00:49:57 PDT 2010


David Holmes (David.Holmes at oracle.com) wrote:
> John,
> 
> First a dumb question :) Are the .il files only used with SunStudio?

Hi David,

Not dumb, and the answer is yes.

> For the dtrace tail-call problem won't this:
> 
> + // Work around dtrace tail call bug 6672627 until it is fixed in 
> solaris 10.
> + #define HS_DTRACE_WORKAROUND_TAIL_CALL_BUG() \
> +   do { volatile size_t dtrace_workaround_tail_call_bug = 1; } while (0)
> 
> be elided by any decent compiler - even though volatile it is a local 
> and so the assignment is vacuous ?

Sun Studio 12 and 12u1 respect volatile enough to leave it alone
(thankfully).  FWIW, here's part of vmGCOperations.s from a product
build; the 'mov $1,-12(%ebp)' corresponds to the
HS_DTRACE_WORKAROUND_TAIL_CALL_BUG() on line 40:

void VM_GC_Operation::notify_gc_end():
        push       %ebp                         ;/ line : 38
        movl       %esp,%ebp                            ;/ line : 38
        push       %ebx                         ;/ line : 38
        subl       $20,%esp                             ;/ line : 38
        call       .CG1.2806                            ;/ line : 38
.CG1.2806:
        pop        %ebx                         ;/ line : 38
        addl       $_GLOBAL_OFFSET_TABLE_+0x1,%ebx ;/ line : 38
        call       __dtrace_hotspot___gc__end at PLT ;/ line : 39
        movl       $1,-12(%ebp)                         ;/ line : 40
        addl       $20,%esp                             ;/ line : 40
        pop        %ebx                         ;/ line : 40
        leave                                   ;/ line : 40
        ret                                     ;/ line : 40
        .size void VM_GC_Operation::notify_gc_end(), . - void VM_GC_Operation::notify_gc_end()

-John

> John Coomes said the following on 05/12/10 08:39:
> > I'd appreciate reviews for the changes to enable builds using Sun
> > Studio 12 update 1 on solaris.  The webrev includes some comments
> > describing the various changes.
> > 
> > 	http://cr.openjdk.java.net/~jcoomes/6951319-ss12u1/
> > 
> > -John
> > 



More information about the hotspot-dev mailing list