RFR(S): 8235762: JVM crash in SWPointer during C2 compilation

Yangfei (Felix) felix.yang at huawei.com
Mon Dec 16 02:47:42 UTC 2019


Hi Christian,

  Yes, orig_msize is 0 for the test case in my webrev.  
  For the else case, I find it hard to manually create a test case for it.  
  Another choice is asserting that this else case never happens.  I am not going that way as I haven't got a strong reason for that.  
  

Thank,
Felix

> 
> Hi Felix
> 
> Thanks for explaining. Following your analysis with the provided test case,
> orig_msize is 0 in the end. Can you also provide a test case or show an example
> which covers the else case in this test:
> 
>   717             if (orig_msize == 0) {
>   718               best_align_to_mem_ref =
> memops.at(max_idx)->as_Mem();
>   719             } else {
>   720               for (uint i = 0; i < orig_msize; i++) {
>   721                 memops.remove(0);
>   722               }
>   723               best_align_to_mem_ref = find_align_to_ref(memops,
> max_idx);
>   724               assert(best_align_to_mem_ref == NULL, "sanity");
>   725               best_align_to_mem_ref =
> memops.at(max_idx)->as_Mem();
>   726             }


More information about the hotspot-compiler-dev mailing list