1
1
mirror of https://github.com/rui314/mold.git synced 2024-08-15 16:00:33 +03:00

Compare commits

...

4 Commits

Author SHA1 Message Date
Shiv Dhar
30c4b82b46
Merge 5bf1955fa9 into b145377c39 2024-07-02 11:12:25 +03:00
Rui Ueyama
b145377c39
Merge pull request #1296 from marxin/improve-gdb-index-test
Improve --gdb-index test by using readelf --debug=gdb_index
2024-07-01 17:15:51 +09:00
Martin Liska
08f2a74be7 Improve --gdb-index test by using readelf --debug=gdb_index 2024-06-30 16:07:47 +02:00
Shiv Dhar
5bf1955fa9
Fix small typo 2024-03-02 01:36:05 +05:30
2 changed files with 4 additions and 1 deletions

View File

@ -163,7 +163,7 @@ tool.
(i.e. `_start`) or a few other root sections. In mold, we are using (i.e. `_start`) or a few other root sections. In mold, we are using
multiple threads to mark sections concurrently. multiple threads to mark sections concurrently.
- Similarly, BFD, gold an lld support Identical Comdat Folding (ICF) - Similarly, BFD, gold and lld support Identical Comdat Folding (ICF)
as yet another size optimization. ICF merges two or more read-only as yet another size optimization. ICF merges two or more read-only
sections that happen to have the same contents and relocations. sections that happen to have the same contents and relocations.
To do that, we have to find isomorphic subgraphs from larger graphs. To do that, we have to find isomorphic subgraphs from larger graphs.

View File

@ -65,6 +65,8 @@ $CC -c -o $t/d.o $t/d.c -fPIC -g -ggnu-pubnames -gdwarf-5 -ffunction-sections
$CC -B. -shared -o $t/e.so $t/a.o $t/b.o $t/c.o $t/d.o -Wl,--gdb-index $CC -B. -shared -o $t/e.so $t/a.o $t/b.o $t/c.o $t/d.o -Wl,--gdb-index
readelf -WS $t/e.so 2> /dev/null | grep -Fq .gdb_index readelf -WS $t/e.so 2> /dev/null | grep -Fq .gdb_index
readelf --debug=gdb_index $t/e.so 2> /dev/null | grep -q 'fn1: .* \[global, function\]'
readelf --debug=gdb_index $t/e.so 2> /dev/null | grep -q 'char: .* \[static, type\]'
cat <<EOF | $CC -c -o $t/f.o -fPIC -g -ggnu-pubnames -gdwarf-5 -xc - -gz cat <<EOF | $CC -c -o $t/f.o -fPIC -g -ggnu-pubnames -gdwarf-5 -xc - -gz
void fn1(); void fn1();
@ -76,6 +78,7 @@ EOF
$CC -B. -o $t/exe $t/e.so $t/f.o -Wl,--gdb-index $CC -B. -o $t/exe $t/e.so $t/f.o -Wl,--gdb-index
readelf -WS $t/exe 2> /dev/null | grep -Fq .gdb_index readelf -WS $t/exe 2> /dev/null | grep -Fq .gdb_index
readelf --debug=gdb_index $t/exe 2> /dev/null | grep -q 'main: .* \[global, function\]'
$QEMU $t/exe | grep -q 'Hello world' $QEMU $t/exe | grep -q 'Hello world'