@Aleksey,

1. Why do you find it is a bug in tierred compilation machinery? It is not 
on my eye.  The compilation level is: C2, level 4

2. I have still a doubt: why profiling counter is not synchronized. What if 
2 or more threads executing a function 
simple()

Can you explain?




W dniu niedziela, 4 lutego 2018 00:31:28 UTC+1 użytkownik John Hening 
napisał:
>
> public static int dontOptimize;
>
>
> public static int simple(){
>  return dontOptimize;
> }
>
> And JITed version of that:
>
>
>   0x00007fdc75112aa0: mov    %eax,-0x14000(%rsp)
>   0x00007fdc75112aa7: push   %rbp
>   0x00007fdc75112aa8: sub    $0x30,%rsp
>   *0x00007fdc75112aac*: mov    $0x7fdc7443be90,%rax  ;   {metadata(method 
> data for {method} {0x00007fdc7443bb30} 'simple' '()I' in 'Main')}
>   0x00007fdc75112ab6: mov    0xdc(%rax),%esi
>   0x00007fdc75112abc: add    $0x8,%esi
>   0x00007fdc75112abf: mov    %esi,0xdc(%rax)
>   0x00007fdc75112ac5: mov    $0x7fdc7443bb30,%rax  ;   {metadata({method} 
> {0x00007fdc7443bb30} 'simple' '()I' in 'Main')}
>   0x00007fdc75112acf: and    $0x1ff8,%esi
>   0x00007fdc75112ad5: cmp    $0x0,%esi
>   *0x00007fdc75112ad8*: je     0x00007fdc75112af7
>   0x00007fdc75112ade: mov    $0x76d2414f0,%rax  ;   {oop(a 
> 'java/lang/Class' = 'Main')}
>   0x00007fdc75112ae8: mov    0x68(%rax),%eax    ;*getstatic dontOptimize
>                                                 ; - Main::simple@0 (line 
> 11)
>
>   0x00007fdc75112aeb: add    $0x30,%rsp
>   0x00007fdc75112aef: pop    %rbp
>   0x00007fdc75112af0: test   %eax,0x1861060a(%rip)        # 
> 0x00007fdc8d723100
>                                                 ;   {poll_return}
>   0x00007fdc75112af6: retq   
>
>
>
>
>
> Though I know assembly I cannot understand a such simple code. Especially, 
> what does lines between 0x00007fdc75112aac-*0x00007fdc75112ad8* means? I 
> highlighted it. 
>

-- 
You received this message because you are subscribed to the Google Groups 
"mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mechanical-sympathy+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to