15027e048f
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
26 lines
642 B
Text
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);
|
|
}
|
|
}
|