[clang] [llvm] [clang][DebugInfo] Add symbol for debugger with VTable information. (PR #130255)
Carlos Alberto Enciso via cfe-commits
cfe-commits at lists.llvm.org
Tue May 20 06:31:21 PDT 2025
CarlosAlbertoEnciso wrote:
@dwblaikie I have used bloaty to get some debug info size changes.
The VTable work is based on this specific revision c02019141.
I built Clang using `DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS=clang`:
- at that specific revision c02019141 (original Clang) --> **original**.
- and that revision with the current patch applied --> **modified**.
Using those builds I built Clang twice with debug info, using `DCMAKE_BUILD_TYPE=Debug -DLLVM_ENABLE_PROJECTS=clang`:
Using **original** --> **reference**
Using **modified** --> **vtables**
These are the sizes reported by `bloaty`
```
$ [...]./bloaty [...]/vtables/bin/clang++ -- [...]/reference/bin/clang++
FILE SIZE VM SIZE
-------------- --------------
+0.2% +436Ki [ = ] 0 .debug_str
+0.1% +361Ki [ = ] 0 .debug_info
+3.2% +300Ki [ = ] 0 .debug_abbrev
+0.3% +122Ki [ = ] 0 .debug_addr
+0.1% +69.9Ki [ = ] 0 .debug_str_offsets
+0.0% +9.75Ki [ = ] 0 .debug_line
+0.0% +2.51Ki [ = ] 0 .debug_rnglists
+0.0% +21 [ = ] 0 .debug_line_str
+9.9% +15 [ = ] 0 .comment
+0.0% +1 [ = ] 0 .debug_loclists
+0.1% +1.27Mi [ = ] 0 TOTAL
$ ls -Ll [...]/vtables/bin/clang++ [...]/reference/bin/clang++
-rwxrwxr-x 1 [...] 1678577192 May 20 10:53 [...]/vtables/bin/clang++
-rwxrwxr-x 1 [...] 1677243032 May 20 10:35 [...]/reference/bin/clang++
```
```
$ [...]./bloaty [...]/vtables/bin/llc -- [...]/reference/bin/llc
FILE SIZE VM SIZE
-------------- --------------
+0.2% +291Ki [ = ] 0 .debug_str
+0.1% +283Ki [ = ] 0 .debug_info
+3.0% +202Ki [ = ] 0 .debug_abbrev
+0.3% +71.1Ki [ = ] 0 .debug_addr
+0.1% +42.0Ki [ = ] 0 .debug_str_offsets
+0.0% +1.94Ki [ = ] 0 .debug_rnglists
+0.0% +486 [ = ] 0 .debug_line
+0.0% +18 [ = ] 0 .debug_line_str
+9.9% +15 [ = ] 0 .comment
+0.0% +1 [ = ] 0 .debug_loclists
+0.1% +892Ki [ = ] 0 TOTAL
```
```
$ [...]./bloaty [...]/vtables/bin/opt -- [...]/reference/bin/opt
FILE SIZE VM SIZE
-------------- --------------
+0.2% +293Ki [ = ] 0 .debug_str
+0.1% +283Ki [ = ] 0 .debug_info
+3.0% +202Ki [ = ] 0 .debug_abbrev
+0.3% +71.3Ki [ = ] 0 .debug_addr
+0.1% +42.1Ki [ = ] 0 .debug_str_offsets
+0.0% +1.93Ki [ = ] 0 .debug_rnglists
+0.0% +486 [ = ] 0 .debug_line
+0.0% +18 [ = ] 0 .debug_line_str
+9.9% +15 [ = ] 0 .comment
+0.0% +1 [ = ] 0 .debug_loclists
+0.1% +895Ki [ = ] 0 TOTAL
```
```
$ [...]./bloaty [...]/vtables/bin/llvm-as -- [...]/reference/bin/llvm-as
FILE SIZE VM SIZE
-------------- --------------
+0.1% +59.6Ki [ = ] 0 .debug_info
+0.1% +34.6Ki [ = ] 0 .debug_str
+2.7% +29.9Ki [ = ] 0 .debug_abbrev
+0.3% +11.2Ki [ = ] 0 .debug_addr
+0.1% +6.51Ki [ = ] 0 .debug_str_offsets
+0.0% +288 [ = ] 0 .debug_rnglists
+0.0% +18 [ = ] 0 .debug_line_str
+9.9% +15 [ = ] 0 .comment
-0.0% -22 [ = ] 0 .debug_line
+0.1% +142Ki [ = ] 0 TOTAL
```
https://github.com/llvm/llvm-project/pull/130255
More information about the cfe-commits
mailing list