[PATCH] D78387: [AIX][XCOFF] add symbol priority for the llvm-objdump -D -symbol-description
Digger via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 29 08:00:59 PDT 2020
DiggerLin added a comment.
Herald added a reviewer: MaskRay.
In D78387#1998567 <https://reviews.llvm.org/D78387#1998567>, @jhenderson wrote:
> This behaviour seems significantly under-tested. Just looking at the new operator, there are three different comparisons, so I'd expect to see at least 4 test cases for that alone (one for each side of the branch point). Furthermore, there's a big new switch in the same file that isn't exercised in any depth.
I do not think it is under-tested.
I dump all the symbol of the xcoff-section-headers.o
bash-5.0$ dump -tv xcoff-section-headers.o
xcoff-section-headers.o:
***Symbol Table Information***
[Index] m Value Scn Aux Sclass Type Name
[Index] a0 Fname
[Index] a1 Tagndx Lnno Size Lnoptr Endndx
[Index] a2 Tagndx Fsiz Lnoptr Endndx
[Index] a3 Tagndx Lnno Size Dimensions
[Index] a4 CSlen PARMhsh SNhash SMtype SMclass Stab SNstab
[Index] a5 SECTlen #RELent #LINnums
[0] m 0x00000000 debug 3 FILE C:COM .file
[1] a0 sections.c
[2] a0 Thu Apr 18 10:26:01 2019
[3] a0 IBM XL C for AIX, Version 16.1.0.1
[4] m 0x00000000 .text 1 static .text
[5] a5 0x00000080 0x0001 0x0000
[6] m 0x00000080 .data 1 static .data
[7] a5 0x00000024 0x0007 0x0000
[8] m 0x000000a4 .bss 1 static .bss
[9] a5 0x00000004 0x0000 0x0000
[10] m 0x00000000 .tdata 1 static .tdata
[11] a5 0x00000024 0x0000 0x0000
[12] m 0x00000008 .tbss 1 static .tbss
[13] a5 0x00000004 0x0000 0x0000
[14] m 0x00000000 .text 1 unamex **No Symbol**
[15] a4 0x00000080 0 0 SD PR 0 0
[16] m 0x00000000 .text 1 extern .func
[17] a4 0x0000000e 0 0 LD PR 0 0
[18] m 0x00000080 .data 1 unamex TOC
[19] a4 0x00000000 0 0 SD TC0 0 0
[20] m 0x00000094 .data 1 extern func
[21] a4 0x0000000c 0 0 SD DS 0 0
[22] m 0x00000080 .data 1 unamex func
[23] a4 0x00000004 0 0 SD TC 0 0
[24] m 0x000000a4 .bss 1 extern a
[25] a4 0x00000004 0 0 CM RW 0 0
[26] m 0x00000084 .data 1 unamex a
[27] a4 0x00000004 0 0 SD TC 0 0
[28] m 0x000000a0 .data 1 extern b
[29] a4 0x00000004 0 0 SD RW 0 0
[30] m 0x00000088 .data 1 unamex b
[31] a4 0x00000004 0 0 SD TC 0 0
[32] m 0x00000008 .tbss 1 extern c
[33] a4 0x00000004 0 0 CM UL 0 0
[34] m 0x0000008c .data 1 unamex c
[35] a4 0x00000004 0 0 SD TC 0 0
[36] m 0x00000000 .tdata 1 extern d
[37] a4 0x00000008 0 0 SD TL 0 0
[38] m 0x00000090 .data 1 unamex d
[39] a4 0x00000004 0 0 SD TC 0 0
there are
[4] m 0x00000000 .text 1 static .text
[5] a5 0x00000080 0x0001 0x0000
[14] m 0x00000000 .text 1 unamex **No Symbol**
[15] a4 0x00000080 0 0 SD PR 0 0
[16] m 0x00000000 .text 1 extern .func
[17] a4 0x0000000e 0 0 LD PR 0 0
symbol .text and .func have the same address. symbol .text do not has storage mapping class , **No Symbol** has storage mapping class and .func is a label.
the output is label ".func" . we tested it.
there are
[6] m 0x00000080 .data 1 static .data
[7] a5 0x00000024 0x0007 0x0000
[20] m 0x00000094 .data 1 extern func
[21] a4 0x0000000c 0 0 SD DS 0 0
symbol .data and func[DS] have the same address. symbol .data do not have not has storage mapping class , func[DS] has storage mapping class. the output is func[DS].
we tested it.
there are
[18] m 0x00000080 .data 1 unamex TOC
[19] a4 0x00000000 0 0 SD TC0 0 0
[22] m 0x00000080 .data 1 unamex func
[23] a4 0x00000004 0 0 SD TC 0 0
symbol .TOC and func[TC] have the same address . the output is func[TC] we tested it.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D78387/new/
https://reviews.llvm.org/D78387
More information about the llvm-commits
mailing list