1 # Copyright
(C
) 1997-2024 Free Software Foundation
, Inc.
3 # This
program is free software
; you can redistribute it and
/or modify
4 # it under the terms of the GNU General Public License as published by
5 # the Free Software Foundation
; either version
3 of the License
, or
6 #
(at your option
) any later version.
8 # This
program is distributed in the hope that it will be useful
,
9 # but WITHOUT
ANY WARRANTY
; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the
11 # GNU General Public License
for more details.
13 # You should have received a copy of the GNU General Public License
14 # along with GCC
; see the file COPYING3.
If not see
15 #
<http
://www.gnu.org
/licenses
/>.
17 # GCC testsuite
for ARM
's -mpure-code option, using the `dg.exp' driver.
19 # Exit immediately
if this is an ARM FDPIC target
(it uses PIC code
,
20 # which is incompatible with
-mpure
-code
).
21 if [istarget arm
*-*-uclinuxfdpiceabi
] then {
28 #
If a testcase doesn
't have special options, use these.
30 if ![info exists DEFAULT_CFLAGS] then {
31 set DEFAULT_CFLAGS " -ansi -pedantic-errors"
34 # The -mpure-code option is only available for M-profile targets.
35 if {[check_effective_target_arm_cortex_m]} then {
40 set saved
-dg
-do-what
-default $
{dg
-do-what
-default
}
41 set dg
-do-what
-default
"assemble"
43 set saved
-lto_torture_options $
{LTO_TORTURE_OPTIONS
}
45 # Add
-ffat
-lto
-objects option to all LTO options such that we can
do assembly
47 proc add_fat_objects
{ list
} {
49 foreach el $list
{set res
[lappend res
[concat $el
" -ffat-lto-objects"]]}
52 set LTO_TORTURE_OPTIONS
[add_fat_objects $
{LTO_TORTURE_OPTIONS
}]
54 gcc
-dg
-runtest
[lsort
[glob $srcdir
/$subdir
/*.c
]] \
57 # Restore global
values
58 set dg
-do-what
-default $
{saved
-dg
-do-what
-default
}
59 set LTO_TORTURE_OPTIONS $
{saved
-lto_torture_options
}