Browse Source
several different places. * ldgram.y (statement, memory_spec, section): Allow INCLUDE. (memory, memory_spec_list): Simplify BNF (memory_spec_list_opt): New rule. * ldlex.l (INCLUDE): Recognize in EXPRESSION. testsuite/ * ld-scripts/include-1.d: New. * ld-scripts/include-1.t: New. * ld-scripts/include-data.t: New. * ld-scripts/include-mem.t: New. * ld-scripts/include-ram.t: New. * ld-scripts/include-sections.t: New. * ld-scripts/include-subdata.t: New. * ld-scripts/include.exp: New. * ld-scripts/include.s: New.binutils-arc-20080908-branch
14 changed files with 117 additions and 5 deletions
@ -0,0 +1,11 @@ |
|||
# name: include-1 |
|||
# source: include.s |
|||
# ld: -T include-1.t |
|||
# objdump: -w -h |
|||
|
|||
.*: file format .* |
|||
|
|||
Sections: |
|||
Idx +Name +Size +VMA +LMA +File off +Algn +Flags |
|||
0 .text 0+000000c 0+0000000 0+0000000 [0-9a-f]+ 2\*\*[0-9]+ CONTENTS, ALLOC, LOAD, READONLY, CODE |
|||
1 .data 0+000000c 0+0100000 0+0100000 [0-9a-f]+ 2\*\*[0-9]+ CONTENTS, ALLOC, LOAD, DATA |
|||
@ -0,0 +1,4 @@ |
|||
|
|||
INCLUDE include-mem.t |
|||
_start = 0x1000; |
|||
INCLUDE include-sections.t |
|||
@ -0,0 +1,4 @@ |
|||
.data : { |
|||
INCLUDE include-subdata.t |
|||
__end = .; |
|||
}>ram |
|||
@ -0,0 +1,5 @@ |
|||
|
|||
MEMORY { |
|||
rom (rwx) : ORIGIN = 0, LENGTH = 0x1000 |
|||
INCLUDE include-ram.t |
|||
} |
|||
@ -0,0 +1 @@ |
|||
ram (rw) : ORIGIN = 0x100000, LENGTH = 512 |
|||
@ -0,0 +1,4 @@ |
|||
SECTIONS { |
|||
.text : { *(.text) } >rom |
|||
INCLUDE include-data.t |
|||
} |
|||
@ -0,0 +1,2 @@ |
|||
*(.data) |
|||
|
|||
@ -0,0 +1,35 @@ |
|||
# Test for proper diagnosis of overflowed memory regions. |
|||
# Copyright 2008 Free Software Foundation, Inc. |
|||
# |
|||
# This file is part of the GNU Binutils. |
|||
# |
|||
# This program 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 3 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., 51 Franklin Street - Fifth Floor, Boston, |
|||
# MA 02110-1301, USA. |
|||
|
|||
load_lib ld-lib.exp |
|||
|
|||
set old_ldflags $LDFLAGS |
|||
if { [istarget spu*-*-*] } { |
|||
set LDFLAGS "$LDFLAGS --no-overlays" |
|||
} |
|||
|
|||
set test_list [lsort [glob -nocomplain $srcdir/$subdir/include*.d]] |
|||
foreach test_file $test_list { |
|||
set test_name [file rootname $test_file] |
|||
set map_file "tmpdir/[file tail $test_name].map" |
|||
verbose $test_name |
|||
run_dump_test $test_name |
|||
} |
|||
set LDFLAGS $old_ldflags |
|||
@ -0,0 +1,9 @@ |
|||
.section .text, "ax", "progbits" |
|||
.4byte 0x11223344 |
|||
.4byte 0x55667788 |
|||
.4byte 0x99aabbcc |
|||
|
|||
.section .data, "aw", "progbits" |
|||
.4byte 0x01020304 |
|||
.4byte 0x05060708 |
|||
.4byte 0x090a0b0c |
|||
Loading…
Reference in new issue