⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 script.exp

📁 GNU binutils是GNU交叉工具链中的一个源码包
💻 EXP
字号:
# Test basic linker script functionality# By Ian Lance Taylor, Cygnus Support#   Copyright 1999, 2000, 2001, 2002, 2004#   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.set testname "script"if ![ld_assemble $as $srcdir/$subdir/script.s tmpdir/script.o] {     unresolved $testname    return}proc check_script { } {    global nm    global testname    global nm_output    if ![ld_nm $nm "" tmpdir/script] {	unresolved $testname	return    }     if {![info exists nm_output(text_start)] \	    || ![info exists nm_output(text_end)] \	    || ![info exists nm_output(data_start)] \	    || ![info exists nm_output(data_end)]} {	send_log "bad output from nm\n"	verbose "bad output from nm"	fail $testname	return    }     set passes 1    set text_end 0x104    set data_end 0x1004    if [istarget *c4x*-*-*] then {	set text_end 0x101	set data_end 0x1001    }    if [istarget *c54x*-*-*] then {	set text_end 0x102	set data_end 0x1002    }    if {$nm_output(text_start) != 0x100} {	send_log "text_start == $nm_output(text_start)\n"	verbose "text_start == $nm_output(text_start)"	set passes 0    }     if {$nm_output(text_end) < $text_end \	    || $nm_output(text_end) > 0x110} {	send_log "text_end == $nm_output(text_end)\n"	verbose "text_end == $nm_output(text_end)"	set passes 0    }     if {$nm_output(data_start) != 0x1000} {	send_log "data_start == $nm_output(data_start)\n"	verbose "data_start == $nm_output(data_start)"	set passes 0    }     if {$nm_output(data_end) < $data_end \	    || $nm_output(data_end) > 0x1010} {	send_log "data_end == $nm_output(data_end)\n"	verbose "data_end == $nm_output(data_end)"	set passes 0    }     if { $passes } {	pass $testname    } else {	fail $testname    }}# PE targets need to set the image base to 0 to avoid complications from nm.set flags ""if {[istarget "*-*-pe*"] \    || [istarget "*-*-cygwin*"] \    || [istarget "*-*-mingw32*"] \    || [istarget "*-*-winnt*"] \    || [istarget "*-*-nt"] \    || [istarget "*-*-interix*"] } then {  set flags "--image-base 0"}if ![ld_simple_link $ld tmpdir/script "$flags -T $srcdir/$subdir/script.t tmpdir/script.o"] {    fail $testname} else {    check_script}set testname "MRI script"if ![ld_simple_link $ld tmpdir/script "$flags -c $srcdir/$subdir/scriptm.t"] {    fail $testname} else {    check_script}set testname "MEMORY"if ![ld_simple_link $ld tmpdir/script "$flags -T $srcdir/$subdir/memory.t tmpdir/script.o"] {    fail $testname} else {    check_script}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -