<div class="__aliyun_email_body_block"><div  style="line-height:1.7;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;"><div  style="clear:both;"><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;">Hi <span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">Vladimir,</span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;"><br ></span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">Thank you for the newly-added hs_err and further tests. I guess it might have some relationship with the discussed [misaligned issue](<span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;"><a  href="https://mail.openjdk.org/pipermail/riscv-port-dev/2022-July/000559.html" target="_blank">https://mail.openjdk.org/pipermail/riscv-port-dev/2022-July/000559.html</a></span>) here. But just guessing. I have noticed one interesting thing that the crashed hs_err files are often like:</span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;"><br ></span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">```</span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">...</span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">  0x0000003f7cc2f91e:   mv a0,s7</span><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;clear:both;">  0x0000003f7cc2f922:   auipc t0,0x10494</div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;clear:both;">  0x0000003f7cc2f926:   jalr 664(t0) # 0x0000003f8d0c3bba = AdapterHandlerEntry::print_adapter_on(outputStream*) const+470   <--- ??? Misaligned address: <span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;background-color:#ffffff;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline;">0x0000003f7cc2f926</span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;clear:both;">  0x0000003f7cc2f92a:   sd zero,704(s7)</div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">  0x0000003f7cc2f92e:   sd zero,712(s7)</span></div><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">...</span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">```</span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;"><br ></span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">With RVC, it is certainly <span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">legal</span> to locate at a 2-byte aligned address. But, this location is relocatable, which means it will be patched.</span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;"><br ></span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">So, I might doubt something weird happened when performing the patching behavior. The patching logic, referencing the instruction segment, does not care about the alignment but only performs 4-byte memory load operations, such as <span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">Assembler::patch(). On machines having the misaligned address support, it would not go wrong of course; but it seems that our FPGA board discussed lacks this support. So I guess there might be an interesting chemical reaction happening here. I have written two patches to debug this issue and released one fastdebug build only for debugging purposes, and I put it at<span > </span><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;"><a  href="https://github.com/zhengxiaolinX/jdk/releases/tag/test-unaligned" target="_blank">https://github.com/zhengxiaolinX/jdk/releases/tag/test-unaligned</a></span>. The two patches fix most of the misaligned accesses to the instruction segment. I was wondering if you could have a simple test of it when you are available, to see whether this issue still exists?</span></span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;"><br ></span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">I am just guessing the problem here, hope it can reveal something to us.</span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;"><br ></span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">Thank you very much.</span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;"><br ></span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">Best,</span></div><div  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;color:#000000;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:.0px;text-transform:none;white-space:normal;word-spacing:.0px;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;clear:both;"><span  style="margin:.0px;padding:.0px;border:.0px;outline:.0px;">Xiaolin</span></div></div><div  style="clear:both;"><br /></div><blockquote  style="margin-right:0;margin-top:0;margin-bottom:0;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;"><div  style="clear:both;">------------------------------------------------------------------</div><div  style="clear:both;">From:Vladimir Kempik <vladimir.kempik@gmail.com></div><div  style="clear:both;">Send Time:2022年9月15日(星期四) 23:25</div><div  style="clear:both;">To:郑孝林(云矅) <yunyao.zxl@alibaba-inc.com></div><div  style="clear:both;">Cc:riscv-port-dev <riscv-port-dev-retn@openjdk.org>; Aleksey Shipilev <shade@redhat.com>; riscv-port-dev@openjdk.org <riscv-port-dev@openjdk.org></div><div  style="clear:both;">Subject:Re: RVC by default?</div><div  style="clear:both;"><br /></div><head ></head><div  class="">Hello</div>Looks pretty similar to me.<div  class="">for me it was vanilla recent jdk19 <br  class=""><div >But later, when I backported next patches to my jdk19 branch, the issue became different ( Arena alloc issue I have reported earlier):</div><div ><br  class=""></div><div ><div >8290496: riscv: Fix build warnings-as-errors with GCC 11</div><div >8290280: riscv: Clean up stack and register handling in interpreter</div><div >8290137: riscv: small refactoring for add_memory_int32/64</div><div >8290164: compiler/runtime/TestConstantsInError.java fails on riscv</div><div >8291952: riscv: Remove PRAGMA_NONNULL_IGNORED</div><div >8291947: riscv: fail to build after JDK-8290840</div><div >8291893: riscv: remove fence.i used in user space Backport-of:...</div><div >8292713: Unsafe.allocateInstance should be intrinsified without UseUnalignedAccesses</div><div >8292867: RISC-V: Simplify weak CAS return value handling</div><div >8292407: Improve Weak CAS VarHandle/Unsafe tests resilience under spurious failures</div><div >8293100: RISC-V: Need to save and restore callee-saved FloatRegisters in...</div><div >8293050: RISC-V: Remove redundant non-null assertions about macro-assembler</div><div >8293474: RISC-V: Unify the way of moving function pointer</div><div >8293524: RISC-V: Use macro-assembler functions as appropriate</div><div >8293566: RISC-V: Clean up push and pop registers</div><div ><br  class=""></div><div >I’m gonna bisect this list and find what changed the behaviour.</div></div><div ><br  class=""></div><div >The workaround says - update to ubuntu 21.04, but its not clear - update runtime environment or build environment.</div><div >For me the runtime is ubuntu 22.04, but I build the jdk with sysroot of ubuntu 20.04 ( for better compatibility) and gcc 11.2</div><div ><br  class=""></div><div >Regards, Vladimir<br  class=""><div  class="">15 сент. 2022 г., в 18:17, Xiaolin Zheng <<a  class="" href="mailto:yunyao.zxl@alibaba-inc.com" target="_blank">yunyao.zxl@alibaba-inc.com</a>> написал(а):</div><br  class="Apple-interchange-newline"><div  class=""><div  class="" style="line-height:1.7;font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;"><div  class="" style="clear:both;">Hi Vladimir,</div><div  class="" style="clear:both;"><br  class=""></div><div  class="" style="clear:both;">The mailing list says my e-mail exceeds 40KB so I get rejected. But I want to send it out anyway before getting off today's work. So here is a work around:</div><div  class="" style="clear:both;">Please check:</div><div  class="" style="clear:both;"><span  class=""><a  class="" href="https://gist.github.com/zhengxiaolinX/25c32853690f7ac1c125d2fe1da19710" target="_blank">https://gist.github.com/zhengxiaolinX/25c32853690f7ac1c125d2fe1da19710</a></span></div><div  class="" style="clear:both;"><br  class=""></div><div  class="" style="clear:both;">Looking forward to your opinions.</div><div  class="" style="clear:both;"><br  class=""></div><div  class="" style="clear:both;">Best,</div><div  class="" style="clear:both;">Xiaolin</div></div></div></div><br  class=""></div></blockquote></div></div>