RFR(S) 8193318: ELF decoder should be able to use external debug info file
Zhengyu Gu
zgu at redhat.com
Wed Mar 14 17:27:05 UTC 2018
>>>
>>>
>>> Hi, I looked at this and I really wasn't happy with all this extra code going into the JVM. And I don't know this code. There's a large hex table in this file:
>>>
>>> http://cr.openjdk.java.net/~zgu/8193318/webrev.00/src/hotspot/os/linux/decoder_linux.cpp.udiff.html <http://cr.openjdk.java.net/~zgu/8193318/webrev.00/src/hotspot/os/linux/decoder_linux.cpp.udiff.html>
>>
>> I’m also curious - what is that code actually doing? Why is that hex table needed?
> If you look throught the code Zhengyu is patching it is used in
> gnu_debuglink_crc32 which gets called by verify_file_crc which is called
> from LinuxElfDebugInfo::by_debug_link which is called by
> ElfFile::load_debuginfo.
>
> The point of calling verify_file_crc is to ensure that the crc stored in
> the Elf debuginfo file matches the calue computed from the file
> contents. The table is needed to do the crc computation.
>
> The same table appears in the CRC intrinsic implementation in e.g. the
> AArch64 directory (look in stubRoutines_aarch64.cpp). I guess it is also
> in the equivalent x86 and sparc code. Hmm, looks like we now have an
> os-specific copy too!
Ah, I guess we have several copies of the same table.
Here is another one: jdk.hotspot.agent/linux/native/libsaproc/symtab.c
Any suggestions to consolidate them?
Thanks,
-Zhengyu
>
> regards,
>
>
> Andrew Dinn
> -----------
> Senior Principal Software Engineer
> Red Hat UK Ltd
> Registered in England and Wales under Company Registration No. 03798903
> Directors: Michael Cunningham, Michael ("Mike") O'Neill, Eric Shander
>
More information about the hotspot-runtime-dev
mailing list