1 /* Copyright (C) 2003 Free Software Foundation, Inc.
2 Test builtin preprocessor assertions.
3 By Kaveh Ghazi <ghazi@caip.rutgers.edu>. */
5 /* { dg-do preprocess } */
7 /* Check for #system assertions. */
9 #if defined __gnu_linux__
10 # if !#system(linux) || !#system(unix) || !#system(posix)
17 #if defined __gnu_hurd__
18 # if !#system(gnu) || !#system(unix) || !#system(posix) || !#system(mach)
25 #if defined __FreeBSD__
26 # if !#system(FreeBSD) || !#system(unix) || !#system(bsd)
29 #elif #system(FreeBSD)
33 #if defined __NetBSD__
34 # if !#system(NetBSD) || !#system(unix) || !#system(bsd)
41 #if defined __OpenBSD__
42 # if !#system(OpenBSD) || !#system(unix) || !#system(bsd)
45 #elif #system(OpenBSD)
49 #if defined __svr4__ || defined __SYSTYPE_SVR4__
50 # if !#system(svr4) || !#system(unix)
58 # if !#system(hpux) || !#system(unix)
66 # if !#system(aix) || !#system(unix)
74 # if !#system(lynx) || !#system(unix)
90 /* Check for #cpu and #machine assertions. */
93 # if !#cpu(arc) || !#machine(arc)
96 #elif #cpu(arc) || #machine(arc)
100 #if defined __alpha__
101 # if !#cpu(alpha) || !#machine(alpha) \
102 || (defined __alpha_cix__ && !#cpu(cix)) \
103 || (!defined __alpha_cix__ && #cpu(cix)) \
104 || (defined __alpha_fix__ && !#cpu(fix)) \
105 || (!defined __alpha_fix__ && #cpu(fix)) \
106 || (defined __alpha_bwx__ && !#cpu(bwx)) \
107 || (!defined __alpha_bwx__ && #cpu(bwx)) \
108 || (defined __alpha_max__ && !#cpu(max)) \
109 || (!defined __alpha_max__ && #cpu(max)) \
110 || (defined __alpha_ev6__ && !#cpu(ev6)) \
111 || (!defined __alpha_ev6__ && #cpu(ev6)) \
112 || (defined __alpha_ev5__ && !#cpu(ev5)) \
113 || (!defined __alpha_ev5__ && #cpu(ev5)) \
114 || (defined __alpha_ev4__ && !#cpu(ev4)) \
115 || (!defined __alpha_ev4__ && #cpu(ev4))
118 #elif #cpu(alpha) || #machine(alpha) || #cpu(cix) || #cpu(fix) || #cpu(bwx) \
119 || #cpu(max) || #cpu(ev6) || #cpu(ev5) || #cpu(ev4)
124 # if !#cpu(arm) || !#machine(arm)
127 #elif #cpu(arm) || #machine(arm)
132 # if !#cpu(cris) || !#machine(cris)
135 #elif #cpu(cris) || #machine(cris)
140 # if !#cpu(d30v) || !#machine(d30v)
143 #elif #cpu(d30v) || #machine(d30v)
148 # if !#cpu(fr30) || !#machine(fr30)
151 #elif #cpu(fr30) || #machine(fr30)
156 # if !#cpu(frv) || !#machine(frv)
159 #elif #cpu(frv) || #machine(frv)
163 #if defined __h8300__
164 # if !#cpu(h8300) || !#machine(h8300) \
165 || (defined __H8300__ && (!#cpu(h8300) || !#machine(h8300))) \
166 || (defined __H8300H__ && (!#cpu(h8300h) || !#machine(h8300h))) \
167 || (!defined __H8300H__ && (#cpu(h8300h) || #machine(h8300h))) \
168 || (defined __H8300S__ && (!#cpu(h8300s) || !#machine(h8300s))) \
169 || (!defined __H8300S__ && (#cpu(h8300s) || #machine(h8300s)))
172 #elif #cpu(h8300) || #machine(h8300) || #cpu(h8300h) || #machine(h8300h) || \
173 #cpu(h8300s) || #machine(h8300s)
178 # if !#cpu(hppa) || !#machine(hppa)
181 #elif #cpu(hppa) || #machine(hppa)
186 # if !#cpu(i370) || !#machine(i370)
189 #elif #cpu(i370) || #machine(i370)
193 #if defined __x86_64__
194 # if !#cpu(x86_64) || !#machine(x86_64)
197 #elif #cpu(x86_64) || #machine(x86_64)
202 # if !#cpu(i386) || !#machine(i386)
205 #elif #cpu(i386) || #machine(i386)
210 # if !#cpu(i860) || !#machine(i860)
213 #elif #cpu(i860) || #machine(i860)
218 # if !#cpu(i960) || !#machine(i960)
221 #elif #cpu(i960) || #machine(i960)
226 # if !#cpu(ia64) || !#machine(ia64)
229 #elif #cpu(ia64) || #machine(ia64)
233 #if defined __iq2000__
234 # if !#cpu(iq2000) || !#machine(iq2000)
237 #elif #cpu(iq2000) || #machine(iq2000)
242 # if !#cpu(m32r) || !#machine(m32r)
245 #elif #cpu(m32r) || #machine(m32r)
250 # if !#cpu(m68k) || !#machine(m68k)
253 #elif #cpu(m68k) || #machine(m68k)
257 #if defined __mcore__
258 # if !#cpu(mcore) || !#machine(mcore)
261 #elif #cpu(mcore) || #machine(mcore)
266 # if !#cpu(mips) || (defined __sgi__ && !#machine(sgi)) \
267 || (!defined __sgi__ && !#machine(mips))
270 #elif #cpu(mips) || #machine(sgi) || #machine(mips)
275 # if !#cpu(mmix) || !#machine(mmix)
278 #elif #cpu(mmix) || #machine(mcore)
282 #if defined __mn10300__
283 # if !#cpu(mn10300) || !#machine(mn10300)
286 #elif #cpu(mn10300) || #machine(mn10300)
290 #if defined __ns32k__
291 # if !#cpu(ns32k) || !#machine(ns32k)
294 #elif #cpu(ns32k) || #machine(ns32k)
298 #if defined __pdp11__
299 # if !#cpu(pdp11) || !#machine(pdp11)
302 #elif #cpu(pdp11) || #machine(pdp11)
306 #if defined __powerpc__
307 # if !#cpu(powerpc) || !#machine(powerpc)
310 #elif #cpu(powerpc) || #machine(powerpc)
314 #if defined __rs6000__
315 # if !#cpu(rs6000) || !#machine(rs6000)
318 #elif #cpu(rs6000) || #machine(rs6000)
323 # if !#cpu(s390) || !#machine(s390)
326 #elif #cpu(s390) || #machine(s390)
331 # if !#cpu(sh) || !#machine(sh)
334 #elif #cpu(sh) || #machine(sh)
338 #if defined __sparc__
339 # if (defined __arch64__ \
340 && (!#cpu(sparc64) || !#machine(sparc64) || #cpu(sparc) || #machine(sparc)))
341 || (!defined __arch64__ \
342 && (#cpu(sparc64) || #machine(sparc64) || !#cpu(sparc) || !#machine(sparc)))
345 #elif #cpu(sparc64) || #machine(sparc64) || #cpu(sparc) || #machine(sparc)
349 #if defined __xstormy16__
350 # if !#cpu(xstormy16) || !#machine(xstormy16)
353 #elif #cpu(xstormy16) || #machine(xstormy16)
358 # if !#cpu(v850) || !#machine(v850)
361 #elif #cpu(v850) || #machine(v850)
366 # if !#cpu(vax) || !#machine(vax)
369 #elif #cpu(vax) || #machine(vax)
373 #if defined __XTENSA__
374 # if !#cpu(xtensa) || !#machine(xtensa)
377 #elif #cpu(xtensa) || #machine(xtensa)