1 # Handlers for additional dg-xxx keywords in tests.
3 # Copyright (C) 2004-2013 Free Software Foundation, Inc.
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 3 of the License, or
8 # (at your option) any later version.
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with this program; see the file COPYING3. If not see
17 # <http://www.gnu.org/licenses/>.
19 proc dg-require-c-std { args } {
20 if { ![ check_v3_target_c_std ] } {
21 upvar dg-do-what dg-do-what
22 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
28 proc dg-require-debug-mode { args } {
29 if { ![ check_v3_target_debug_mode ] } {
30 upvar dg-do-what dg-do-what
31 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
37 proc dg-require-profile-mode { args } {
38 if { ![ check_v3_target_profile_mode ] } {
39 upvar dg-do-what dg-do-what
40 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
46 proc dg-require-normal-mode { args } {
47 if { ![ check_v3_target_normal_mode ] } {
48 upvar dg-do-what dg-do-what
49 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
55 proc dg-require-parallel-mode { args } {
56 if { ![ check_v3_target_parallel_mode ] } {
57 upvar dg-do-what dg-do-what
58 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
64 proc dg-require-fileio { args } {
65 if { ![ check_v3_target_fileio ] } {
66 upvar dg-do-what dg-do-what
67 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
73 proc dg-require-namedlocale { args } {
74 if { ![ check_v3_target_namedlocale [lindex $args 1] ] } {
75 upvar dg-do-what dg-do-what
76 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
82 proc dg-require-sharedlib { args } {
83 if { ![ check_v3_target_sharedlib ] } {
84 upvar dg-do-what dg-do-what
85 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
91 proc dg-require-time { args } {
92 if { ![ check_v3_target_time ] } {
93 upvar dg-do-what dg-do-what
94 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
100 proc dg-require-cstdint { args } {
101 if { ![ check_v3_target_cstdint ] } {
102 upvar dg-do-what dg-do-what
103 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
109 proc dg-require-cmath { args } {
110 if { ![ check_v3_target_cmath ] } {
111 upvar dg-do-what dg-do-what
112 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
118 proc dg-require-atomic-builtins { args } {
119 if { ![ check_v3_target_atomic_builtins ] } {
120 upvar dg-do-what dg-do-what
121 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
127 proc dg-require-gthreads { args } {
128 if { ![ check_v3_target_gthreads ] } {
129 upvar dg-do-what dg-do-what
130 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
136 proc dg-require-gthreads-timed { args } {
137 if { ![ check_v3_target_gthreads_timed ] } {
138 upvar dg-do-what dg-do-what
139 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
145 proc dg-require-sleep { args } {
146 if { ![ check_v3_target_sleep ] } {
147 upvar dg-do-what dg-do-what
148 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
154 proc dg-require-sched-yield { args } {
155 if { ![ check_v3_target_sched_yield ] } {
156 upvar dg-do-what dg-do-what
157 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
163 proc dg-require-string-conversions { args } {
164 if { ![ check_v3_target_string_conversions ] } {
165 upvar dg-do-what dg-do-what
166 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
172 proc dg-require-swprintf { args } {
173 if { ![ check_v3_target_swprintf ] } {
174 upvar dg-do-what dg-do-what
175 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
181 proc dg-require-binary-io { args } {
182 if { ![ check_v3_target_binary_io ] } {
183 upvar dg-do-what dg-do-what
184 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
190 proc dg-require-nprocs { args } {
191 if { ![ check_v3_target_nprocs ] } {
192 upvar dg-do-what dg-do-what
193 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
199 proc dg-require-static-libstdcxx { args } {
200 if { ![ check_v3_target_static_libstdcxx ] } {
201 upvar dg-do-what dg-do-what
202 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
208 proc dg-require-little-endian { args } {
209 if { ![ check_v3_target_little_endian ] } {
210 upvar dg-do-what dg-do-what
211 set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
217 proc add_options_for_no_pch { flags } {
218 # This forces any generated and possibly included PCH to be invalid.
219 return "-D__GLIBCXX__=99999999"