From: Fernando Nasser <fnasser@redhat.com>
To: Corinna Vinschen <vinschen@redhat.com>
Cc: gdb <gdb@sources.redhat.com>,
gdb-patches <gdb-patches@sources.redhat.com>,
Michael Snyder <msnyder@cygnus.com>
Subject: Re: [RFC]: Use `gdb_compile' instead of `target_link' for linking asm-source testcase
Date: Tue, 18 Dec 2001 10:38:00 -0000 [thread overview]
Message-ID: <3C1F8D1C.77D4D94E@redhat.com> (raw)
In-Reply-To: <20011218145813.Y21898@cygbert.vinschen.de>
This looks reasonable to me.
Fernando
Corinna Vinschen wrote:
>
> Hi,
>
> I would like to propose a change in the asm testcase in testsuite/gdb.asm.
>
> The target_link should get substituted by a call to gdb_compile
> using the `-nostartfiles' option for the following reason.
>
> Some (many?) targets have to support several different variants
> as, e.g., coff or elf exec format, simulated or real HW targets,
> etc.
>
> Each of these styles need a slightly different handling. E.g. some
> embedded boards need a special link flag while another board using
> the same CPU need another link flag while the simulated target needs
> again another flag (-Tfoo.ld, -Tfoo-bar.ld, -Tfoo-sim.ld, ...)
>
> While the gcc flags for these variants are typically correctly setup
> in the external board files, we can't rely on these flags correctly
> set up for a direct call to the linker, resulting in an increasingly
> messy target depended prologue in asm-source.exp as new targets support
> that test.
>
> Therefore I'm proposing to change the call to target_link in this
> testcase as soon as possible to a call to gdb_compile with the
> gcc flag `-nostartfiles' set, which result in the same testcase but
> w/o the need to care for each single flag needed for our targets.
>
> The patch itself is easy. If it's really necessary, a target could
> still add link-flags but e.g. for the XStormy16 target I could even
> drop that setting. It's superfluous now since the board description
> files already care for the correct settings.
>
> The below patch would do it (including dropping the XScale link-flags
> setting.
>
> Corinna
>
> 2001-12-18 Corinna Vinschen <vinschen@redhat.com>
>
> * gdb.asm/asm-source.exp: Drop setting link-flags for xstormy16.
> Substitute call to target_link by call to gdb_compile.
>
> Index: gdb.asm/asm-source.exp
> ===================================================================
> RCS file: /cvs/src/src/gdb/testsuite/gdb.asm/asm-source.exp,v
> retrieving revision 1.14
> diff -u -p -r1.14 asm-source.exp
> --- asm-source.exp 2001/12/13 13:42:19 1.14
> +++ asm-source.exp 2001/12/18 13:58:18
> @@ -53,7 +53,6 @@ if [istarget "sparc-*-*"] then {
> if [istarget "xstormy16-*-*"] then {
> set asm-arch xstormy16
> set asm-flags "-gdwarf2 -I${srcdir}/${subdir} -I${objdir}/${subdir}"
> - set link-flags "-L${objdir}/../../gcc"
> }
> if { "${asm-arch}" == "" } {
> gdb_suppress_entire_file "Assembly source test -- not implemented for this target."
> @@ -76,7 +75,11 @@ if {[target_assemble ${src2} asmsrc2.o "
> gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
> }
>
> -if { [target_link "asmsrc1.o asmsrc2.o" ${binfile} "${link-flags}"] != "" } {
> +set opts "debug ldflags=-nostartfiles"
> +foreach i ${link-flags} {
> + append opts " ldflags=$i"
> +}
> +if { [gdb_compile "asmsrc1.o asmsrc2.o" "${binfile}" executable $opts] != "" } {
> gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
> }
>
> --
> Corinna Vinschen
> Cygwin Developer
> Red Hat, Inc.
> mailto:vinschen@redhat.com
--
Fernando Nasser
Red Hat - Toronto E-Mail: fnasser@redhat.com
2323 Yonge Street, Suite #300
Toronto, Ontario M4P 2C9
next prev parent reply other threads:[~2001-12-18 18:38 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-12-18 5:59 Corinna Vinschen
2001-12-18 10:38 ` Fernando Nasser [this message]
2001-12-20 3:35 ` Corinna Vinschen
2001-12-20 5:54 ` Fernando Nasser
2001-12-20 8:09 ` Corinna Vinschen
2001-12-27 6:30 ` Mark Kettenis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3C1F8D1C.77D4D94E@redhat.com \
--to=fnasser@redhat.com \
--cc=gdb-patches@sources.redhat.com \
--cc=gdb@sources.redhat.com \
--cc=msnyder@cygnus.com \
--cc=vinschen@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox