From 6eb29590d14e36a3f9b888de765eeb0ed4d85a74 Mon Sep 17 00:00:00 2001 From: rth Date: Wed, 25 Jul 2012 15:10:44 +0000 Subject: PR bootstrap/54092 * libfuncs.h: Don't include optabs.h. (struct libfunc_entry): Use "int" for op, mode1, mode2 members. * optabs.c (hash_libfunc): Don't cast members to int. * Makefile.in (LIBFUNCS_H): Don't include OPTABS_H. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189853 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/libfuncs.h | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'gcc/libfuncs.h') diff --git a/gcc/libfuncs.h b/gcc/libfuncs.h index 75f7a69f532..262e10fbcee 100644 --- a/gcc/libfuncs.h +++ b/gcc/libfuncs.h @@ -1,5 +1,5 @@ /* Definitions for code generation pass of GNU compiler. - Copyright (C) 2001, 2004, 2007, 2008, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2012 Free Software Foundation, Inc. This file is part of GCC. @@ -21,7 +21,6 @@ along with GCC; see the file COPYING3. If not see #define GCC_LIBFUNCS_H #include "hashtab.h" -#include "optabs.h" /* Enumeration of indexes into libfunc_table. */ enum libfunc_index @@ -48,12 +47,16 @@ enum libfunc_index LTI_MAX }; -/* Information about an optab-related libfunc. We use the same hashtable - for normal optabs and conversion optabs. In the first case mode2 - is unused. */ +/* Information about an optab-related libfunc. The op field is logically + an enum optab_d, and the mode fields are logically enum machine_mode. + However, in the absence of forward-declared enums, there's no practical + benefit of pulling in the defining headers. + + We use the same hashtable for normal optabs and conversion optabs. In + the first case mode2 is forced to VOIDmode. */ + struct GTY(()) libfunc_entry { - optab op; - enum machine_mode mode1, mode2; + int op, mode1, mode2; rtx libfunc; }; -- cgit v1.2.1