This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: ATTRIBUTE_NORETURN on sets_cc0_p
- To: "Kaveh R. Ghazi" <ghazi at caip dot rutgers dot edu>
- Subject: Re: ATTRIBUTE_NORETURN on sets_cc0_p
- From: Jeffrey A Law <law at cygnus dot com>
- Date: Fri, 16 Oct 1998 02:10:05 -0600
- cc: egcs at cygnus dot com, mark at markmitchell dot com
- Reply-To: law at cygnus dot com
In message <199810150408.AAA26944@caip.rutgers.edu>you write:
> Right. HAVE_cc0 is defined in insn-config.h which appears after
> rtl.h in jump.c. We have to move insn-config.h above rtl.h, but in
> *every* file, not just jump.c. The harmful scenario is other files
> which incorrectly assume sets_cc0_p() doesn't return, (and don't even
> complain about it.)
Ugh. Note this includes backends, possibly the insn*.c files, and possibly
even front-ends since many want to include rtl.h (including front-ends we
don't control yet like ada, pascal, & modula).
Another thought would be to include insn-config via rtl.h. We've tried to
avoid too much of this in the gcc sources though.
I'm not sure which is the cleaner solution.
I'm very tempted to punt it for now since marking sets_cc0_p as noreturn is
strictly an optimization.
jeff