File: archive.exp

package info (click to toggle)
binutils 2.46-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 417,728 kB
  • sloc: ansic: 1,487,513; asm: 829,455; cpp: 216,692; exp: 80,527; makefile: 73,165; sh: 24,213; yacc: 15,060; lisp: 13,632; perl: 13,404; lex: 1,714; ada: 1,681; pascal: 1,446; cs: 879; python: 638; java: 478; sed: 191; xml: 95; awk: 25
file content (84 lines) | stat: -rw-r--r-- 2,713 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# Test for archive handling, CRIS format switching.
# Copyright (C) 2025-2026 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; see the file COPYING3. If not,
# see <http://www.gnu.org/licenses/>.
#

if [istarget cris-*-*aout*] {
    set asemul "--emulation=criself"
    set aremul "--target=elf32-us-cris"
    set ldemul "-m criself"
} elseif { [istarget cris-*-linux*] || [istarget crisv32-*-linux*] } {
    return
} elseif { [istarget cris-*-*] || [istarget crisv32-*-*] } {
    set asemul "--emulation=crisaout"
    set aremul "--target=a.out-cris"
    set ldemul "-m crisaout"
} else {
    return
}

remote_file host delete \
    "tmpdir/ab.a" "tmpdir/abt.a" "tmpdir/abn.a" "tmpdir/abnt.a"

run_ld_link_tests [list \
    [list "CRIS regular archive create (explicit emulation)" \
	"$aremul" "" \
	"$asemul" {../ld-archive/a.s ../ld-archive/b.s ../ld-archive/x.s} \
	{} \
	"ab.a"] \
    [list "CRIS thin archive create (explicit emulation)" \
	"$aremul T" "" \
	"$asemul" {../ld-archive/a.s ../ld-archive/b.s ../ld-archive/x.s} \
	{} \
	"abt.a"] \
    [list "CRIS regular archive w/o index create (explicit emulation)" \
	"$aremul S" "" \
	"$asemul" {../ld-archive/a.s ../ld-archive/b.s ../ld-archive/x.s} \
	{} \
	"abn.a"] \
    [list "CRIS thin archive w/o index create (explicit emulation)" \
	"$aremul ST" "" \
	"$asemul" {../ld-archive/a.s ../ld-archive/b.s ../ld-archive/x.s} \
	{} \
	"abnt.a"] \
]

# Single archive tests.
run_ld_link_tests [list \
    [list "CRIS regular archive link (explicit emulation)" \
	"$ldemul -e ff" "tmpdir/ab.a --verbose --print-map" \
	"$asemul" {../ld-archive/abc.s} \
	{{ld ../ld-archive/abc.vd} \
	 {nm "" ../ld-archive/abc.nd} \
	 {nm "" ../ld-archive/nx.nd}} \
	"abcx" \
    ] \
]
if { ![istarget cris-*-*aout*] } {
    setup_xfail "binutils/33485" "*-*-*"
}
run_ld_link_tests [list \
    [list "CRIS thin archive link (explicit emulation)" \
	"$ldemul -e ff" "tmpdir/abt.a --verbose --print-map" \
	"$asemul" {../ld-archive/abc.s} \
	{{ld ../ld-archive/abtc.vd} \
	 {nm "" ../ld-archive/abc.nd} \
	 {nm "" ../ld-archive/nx.nd}} \
	"abtcx" \
    ] \
]