platform_bionic/tests/libs/segment_gap_outer.lds
Stephen Hines 15027e048f Specify sections to merge in segment_gap_outer.lds more precisely
https://reviews.llvm.org/D75225 changed the way that orphan sections are
retained, breaking this test. The test relied on these sections being
merged in an implementation-defined order that no longer holds true. We
can use custom sections to place the symbols we want more precisely.

Bug: http://b/161943302
Test: adb shell /data/nativetest64/bionic-unit-tests/bionic-unit-tests --gtest_filter=dlfcn.segment_gap --no_isolate
Change-Id: I65656080e39be16833191cb92d3d4c41e409b216
2020-07-24 10:57:48 -07:00

26 lines
642 B
Text

SECTIONS {
# This starts off fairly normal: rodata, text, dynamic, data, bss with
# appropriate alignment between them.
. = SIZEOF_HEADERS;
.rodata : {*(.rodata .rodata.*)}
. = ALIGN(0x1000);
.text : {*(.text .text.*)}
. = ALIGN(0x1000);
.dynamic : {*(.dynamic)}
. = ALIGN(0x1000);
.data : {*(.data .data.*)}
.bss : {*(.bss .bss.*)}
# Now create the gap. We need a text segment first to prevent the linker from
# merging .bss with .custom_bss.
. = ALIGN(0x1000);
.custom_text : {
*(.custom_text);
}
# Place custom_bss at the end of the gap.
. = 0x1000000;
.custom_bss : {
*(.custom_bss);
}
}