Browse Source
* ldlang.c (IGNORE_SECTION): Remove check for zero size.
(lang_check_section_addresses): Ignore zero size sections here.
ld/testsuite/ChangeLog:
* ld-scripts/empty-orphan.d, ld-scripts/empty-orphan.exp,
ld-scripts/empty-orphan.s, ld-scripts/emtpy-orphan.t: New test.
csl-arm-20050325-branch
7 changed files with 70 additions and 4 deletions
@ -0,0 +1,3 @@ |
|||
#source: empty-orphan.s |
|||
#ld: -T empty-orphan.t |
|||
#error: no memory region specified for loadable section |
|||
@ -0,0 +1,27 @@ |
|||
# Make sure orphan sections do not lead to huge output files. |
|||
# By David Heine, Tensilica, Inc. |
|||
# Copyright 2005 |
|||
# Free Software Foundation, Inc. |
|||
# |
|||
# This file is free software; you can redistribute it and/or modify |
|||
# it under the terms of the GNU General Public License as published by |
|||
# the Free Software Foundation; either version 2 of the License, or |
|||
# (at your option) any later version. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with this program; if not, write to the Free Software |
|||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
|||
|
|||
# PHDRS is only meaningful for ELF. |
|||
if ![is_elf_format] { |
|||
return |
|||
} |
|||
|
|||
set testname "empty-orphan" |
|||
|
|||
run_dump_test empty-orphan |
|||
@ -0,0 +1,4 @@ |
|||
.section .orphan_data, "a" |
|||
# empty but defined |
|||
.section .data |
|||
.word 0x1111 |
|||
@ -0,0 +1,21 @@ |
|||
MEMORY |
|||
{ |
|||
default_mem : ORIGIN = 0x0, LENGTH = 0x100000 |
|||
text_mem : ORIGIN = 0x60000000, LENGTH = 0x100 |
|||
data_mem : ORIGIN = 0x70000000, LENGTH = 0x100 |
|||
} |
|||
|
|||
PHDRS |
|||
{ |
|||
default_phdr PT_LOAD; |
|||
text_phdr PT_LOAD; |
|||
data_phdr PT_LOAD; |
|||
} |
|||
|
|||
SECTIONS |
|||
{ |
|||
.text : { *(.text) } > text_mem : text_phdr |
|||
.data : { *(.data) } > data_mem : data_phdr |
|||
.bss : { *(.bss) } > data_mem : data_phdr |
|||
/* .orphan_data is an orphan */ |
|||
} |
|||
Loading…
Reference in new issue