How to migrate hs17's LIR_Assembler::emit_exception_handler to hs25?

Leslie Zhai lesliezhai at llvm.org.cn
Sun Apr 1 01:05:12 UTC 2018


Hi Andrew,

Thanks for your response!


在 2018年04月01日 01:21, Andrew Haley 写道:
> On 03/27/2018 04:57 PM, Leslie Zhai wrote:
>> Hi HotSpot compiler developers,
>>
>> I am new to HotSpot, and trying to migrate hs17 to hs25, but JDK-6919934
>> changed:
> Hi,
>
> What exactly are you trying to do?  Why do you need to do this?
> Are you porting this 8 years old HotSpot to another processor?
>
> If you explained, people might help.
I am learning x86 [1] and aarch64 [2] for porting to other *targets*, 
for example, riscv. I often investigate the history of changeset when 
porting, for an instance, LLVM instruction selection SelectionDAG 
porting to GlobalISel [3]
And I found that JDK-6964458, JDK-7012914, JDK-6919934 ... refactory 
heavily, so I need to make a ChangeLog about the migration [4]

>
>> Then reuse hs17's `LIR_Assembler::emit_exception_handler`,
>> `Runtime1::generate_handle_exception`, `Runtime1::generate_code_for`...
>> in hs25, but it is monkey patch... not easy to merge upstream.
>>
>> Please share your porting experience, and give me some advice, thanks a lot!
> I didn't write the AArch64 port of that code until 2013, I'm afraid.  But
> none of the x86 code looks particularly weird: it's just tedious.
>

I feel awe when porting DraongEgg to GCC 8.x and LLVM 7.x [5] and my 
sincere thanks will goto your colleague David Malcolm, he taught me a 
lot about migrating from GCC 4.x to 8.x


[1] 
http://hg.openjdk.java.net/jdk6/jdk6/hotspot/file/a74480137e6e/src/cpu/x86/vm
[2] 
http://hg.openjdk.java.net/aarch64-port/jdk8u/hotspot/file/b08b1e9e2963/src/cpu/aarch64/vm
[3] http://lists.llvm.org/pipermail/llvm-dev/2018-January/120098.html
[4] https://www.leetcode.cn/2018/03/migrate-hs14-to-25.html
[5] https://gcc.gnu.org/ml/gcc/2017-08/msg00245.html

-- 
Regards,
Leslie Zhai - https://reviews.llvm.org/p/xiangzhai/





More information about the hotspot-compiler-dev mailing list