mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-02-26 02:05:29 +08:00
utils.c: Do not include function.h, pointer-set.h, and gimple.h.
* gcc-interface/utils.c: Do not include function.h, pointer-set.h, and gimple.h. Explain why rtl.h has to be included. (handle_vector_size_attribute): Call reconstruct_complex_type directly. * gcc-interface/targtyps.c: Do not include tm_p.h * gcc-interface/utils2.c: Do not include flags.h. * gcc-interface/trans.c: Do not include expr.h. Include rtl.h instead, and explain why it has to be included. * gcc-interface/misc.c: Do not include expr.h, libfuncs.h, cgraph.h, and optabs.h. Include function.h and explain why. Explain why except.h is included. (enumerate_modes): Remove unused function. * gcc-interface/gigi.h (enumerate_modes): Remove prototype. * gcc-interface/Make-lang.in: Update dependencies. From-SVN: r159844
This commit is contained in:
parent
e233a3b258
commit
9b4690892c
@ -1,3 +1,19 @@
|
||||
2010-05-25 Steven Bosscher <steven@gcc.gnu.org>
|
||||
|
||||
* gcc-interface/utils.c: Do not include function.h, pointer-set.h,
|
||||
and gimple.h. Explain why rtl.h has to be included.
|
||||
(handle_vector_size_attribute): Call reconstruct_complex_type directly.
|
||||
* gcc-interface/targtyps.c: Do not include tm_p.h
|
||||
* gcc-interface/utils2.c: Do not include flags.h.
|
||||
* gcc-interface/trans.c: Do not include expr.h. Include rtl.h instead,
|
||||
and explain why it has to be included.
|
||||
* gcc-interface/misc.c: Do not include expr.h, libfuncs.h, cgraph.h,
|
||||
and optabs.h.
|
||||
Include function.h and explain why. Explain why except.h is included.
|
||||
(enumerate_modes): Remove unused function.
|
||||
* gcc-interface/gigi.h (enumerate_modes): Remove prototype.
|
||||
* gcc-interface/Make-lang.in: Update dependencies.
|
||||
|
||||
2010-05-25 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* gcc-interface/misc.c (internal_error_function): Add context
|
||||
|
@ -1233,8 +1233,8 @@ ada/decl.o : ada/gcc-interface/decl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
|
||||
$(COMPILER) -c $(ALL_COMPILERFLAGS) -I.. $(ALL_CPPFLAGS) $< -o $@
|
||||
|
||||
ada/misc.o : ada/gcc-interface/misc.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
|
||||
$(TM_H) $(TREE_H) $(DIAGNOSTIC_H) $(TARGET_H) $(EXPR_H) libfuncs.h \
|
||||
$(FLAGS_H) debug.h $(CGRAPH_H) $(OPTABS_H) toplev.h except.h langhooks.h \
|
||||
$(TM_H) $(TREE_H) $(DIAGNOSTIC_H) $(TARGET_H) $(FUNCTION_H) \
|
||||
$(FLAGS_H) debug.h toplev.h $(EXCEPT_H) langhooks.h \
|
||||
$(LANGHOOKS_DEF_H) opts.h options.h $(TREE_INLINE_H) $(PLUGIN_H) \
|
||||
ada/gcc-interface/ada.h ada/adadecode.h ada/types.h ada/atree.h \
|
||||
ada/elists.h ada/namet.h ada/nlists.h ada/stringt.h ada/uintp.h ada/fe.h \
|
||||
@ -1243,14 +1243,14 @@ ada/misc.o : ada/gcc-interface/misc.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
|
||||
$(COMPILER) -c $(ALL_COMPILERFLAGS) -I.. $(ALL_CPPFLAGS) $< -o $@
|
||||
|
||||
ada/targtyps.o : ada/gcc-interface/targtyps.c $(CONFIG_H) $(SYSTEM_H) \
|
||||
coretypes.h $(TM_H) $(TM_P_H) $(TREE_H) ada/gcc-interface/ada.h \
|
||||
coretypes.h $(TM_H) $(TREE_H) ada/gcc-interface/ada.h \
|
||||
ada/types.h ada/atree.h ada/elists.h ada/namet.h ada/nlists.h \
|
||||
ada/snames.h ada/stringt.h ada/uintp.h ada/urealp.h ada/fe.h ada/sinfo.h \
|
||||
ada/einfo.h $(ADA_TREE_H) ada/gcc-interface/gigi.h
|
||||
$(COMPILER) -c $(ALL_COMPILERFLAGS) -I.. $(ALL_CPPFLAGS) $< -o $@
|
||||
|
||||
ada/trans.o : ada/gcc-interface/trans.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
|
||||
$(TM_H) $(TREE_H) $(FLAGS_H) $(EXPR_H) output.h tree-iterator.h \
|
||||
$(TM_H) $(TREE_H) $(FLAGS_H) output.h tree-iterator.h \
|
||||
$(GIMPLE_H) ada/gcc-interface/ada.h ada/adadecode.h ada/types.h \
|
||||
ada/atree.h ada/elists.h ada/namet.h ada/nlists.h ada/snames.h \
|
||||
ada/stringt.h ada/uintp.h ada/urealp.h ada/fe.h ada/sinfo.h ada/einfo.h \
|
||||
@ -1260,15 +1260,15 @@ ada/trans.o : ada/gcc-interface/trans.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
|
||||
|
||||
ada/utils.o : ada/gcc-interface/utils.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
|
||||
$(TM_H) $(TREE_H) $(FLAGS_H) toplev.h $(RTL_H) output.h debug.h convert.h \
|
||||
$(TARGET_H) function.h langhooks.h pointer-set.h $(CGRAPH_H) \
|
||||
$(TREE_DUMP_H) $(TREE_INLINE_H) tree-iterator.h $(GIMPLE_H) \
|
||||
$(TARGET_H) function.h langhooks.h $(CGRAPH_H) \
|
||||
$(TREE_DUMP_H) $(TREE_INLINE_H) tree-iterator.h \
|
||||
ada/gcc-interface/ada.h ada/types.h ada/atree.h ada/elists.h ada/namet.h \
|
||||
ada/nlists.h ada/stringt.h ada/uintp.h ada/fe.h ada/sinfo.h ada/einfo.h \
|
||||
$(ADA_TREE_H) ada/gcc-interface/gigi.h gt-ada-utils.h gtype-ada.h
|
||||
$(COMPILER) -c $(ALL_COMPILERFLAGS) -I.. $(ALL_CPPFLAGS) $< -o $@
|
||||
|
||||
ada/utils2.o : ada/gcc-interface/utils2.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
|
||||
$(TM_H) $(TREE_H) $(FLAGS_H) output.h $(TREE_INLINE_H) \
|
||||
$(TM_H) $(TREE_H) output.h $(TREE_INLINE_H) \
|
||||
ada/gcc-interface/ada.h ada/types.h ada/atree.h ada/elists.h ada/namet.h \
|
||||
ada/nlists.h ada/snames.h ada/stringt.h ada/uintp.h ada/fe.h ada/sinfo.h \
|
||||
ada/einfo.h $(ADA_TREE_H) ada/gcc-interface/gigi.h
|
||||
|
@ -863,20 +863,6 @@ extern bool default_pass_by_ref (tree gnu_type);
|
||||
if it should be passed by reference. */
|
||||
extern bool must_pass_by_ref (tree gnu_type);
|
||||
|
||||
/* This function is called by the front end to enumerate all the supported
|
||||
modes for the machine. We pass a function which is called back with
|
||||
the following integer parameters:
|
||||
|
||||
FLOAT_P nonzero if this represents a floating-point mode
|
||||
COMPLEX_P nonzero is this represents a complex mode
|
||||
COUNT count of number of items, nonzero for vector mode
|
||||
PRECISION number of bits in data representation
|
||||
MANTISSA number of bits in mantissa, if FP and known, else zero.
|
||||
SIZE number of bits used to store data
|
||||
ALIGN number of bits to which mode is aligned. */
|
||||
extern void enumerate_modes (void (*f) (int, int, int, int, int, int,
|
||||
unsigned int));
|
||||
|
||||
/* Return the size of the FP mode with precision PREC. */
|
||||
extern int fp_prec_to_size (int prec);
|
||||
|
||||
|
@ -34,21 +34,17 @@
|
||||
#include "tree.h"
|
||||
#include "diagnostic.h"
|
||||
#include "target.h"
|
||||
#include "expr.h"
|
||||
#include "libfuncs.h"
|
||||
#include "ggc.h"
|
||||
#include "flags.h"
|
||||
#include "debug.h"
|
||||
#include "cgraph.h"
|
||||
#include "optabs.h"
|
||||
#include "toplev.h"
|
||||
#include "except.h"
|
||||
#include "langhooks.h"
|
||||
#include "langhooks-def.h"
|
||||
#include "opts.h"
|
||||
#include "options.h"
|
||||
#include "tree-inline.h"
|
||||
#include "plugin.h"
|
||||
#include "function.h" /* For pass_by_reference. */
|
||||
#include "except.h" /* For USING_SJLJ_EXCEPTIONS. */
|
||||
|
||||
#include "ada.h"
|
||||
#include "adadecode.h"
|
||||
@ -719,85 +715,6 @@ must_pass_by_ref (tree gnu_type)
|
||||
&& TREE_CODE (TYPE_SIZE (gnu_type)) != INTEGER_CST));
|
||||
}
|
||||
|
||||
/* This function is called by the front end to enumerate all the supported
|
||||
modes for the machine. We pass a function which is called back with
|
||||
the following integer parameters:
|
||||
|
||||
FLOAT_P nonzero if this represents a floating-point mode
|
||||
COMPLEX_P nonzero is this represents a complex mode
|
||||
COUNT count of number of items, nonzero for vector mode
|
||||
PRECISION number of bits in data representation
|
||||
MANTISSA number of bits in mantissa, if FP and known, else zero.
|
||||
SIZE number of bits used to store data
|
||||
ALIGN number of bits to which mode is aligned. */
|
||||
|
||||
void
|
||||
enumerate_modes (void (*f) (int, int, int, int, int, int, unsigned int))
|
||||
{
|
||||
int iloop;
|
||||
|
||||
for (iloop = 0; iloop < NUM_MACHINE_MODES; iloop++)
|
||||
{
|
||||
enum machine_mode i = (enum machine_mode) iloop;
|
||||
enum machine_mode j;
|
||||
bool float_p = 0;
|
||||
bool complex_p = 0;
|
||||
bool vector_p = 0;
|
||||
bool skip_p = 0;
|
||||
int mantissa = 0;
|
||||
enum machine_mode inner_mode = i;
|
||||
|
||||
switch (GET_MODE_CLASS (i))
|
||||
{
|
||||
case MODE_INT:
|
||||
break;
|
||||
case MODE_FLOAT:
|
||||
float_p = 1;
|
||||
break;
|
||||
case MODE_COMPLEX_INT:
|
||||
complex_p = 1;
|
||||
inner_mode = GET_MODE_INNER (i);
|
||||
break;
|
||||
case MODE_COMPLEX_FLOAT:
|
||||
float_p = 1;
|
||||
complex_p = 1;
|
||||
inner_mode = GET_MODE_INNER (i);
|
||||
break;
|
||||
case MODE_VECTOR_INT:
|
||||
vector_p = 1;
|
||||
inner_mode = GET_MODE_INNER (i);
|
||||
break;
|
||||
case MODE_VECTOR_FLOAT:
|
||||
float_p = 1;
|
||||
vector_p = 1;
|
||||
inner_mode = GET_MODE_INNER (i);
|
||||
break;
|
||||
default:
|
||||
skip_p = 1;
|
||||
}
|
||||
|
||||
/* Skip this mode if it's one the front end doesn't need to know about
|
||||
(e.g., the CC modes) or if there is no add insn for that mode (or
|
||||
any wider mode), meaning it is not supported by the hardware. If
|
||||
this a complex or vector mode, we care about the inner mode. */
|
||||
for (j = inner_mode; j != VOIDmode; j = GET_MODE_WIDER_MODE (j))
|
||||
if (optab_handler (add_optab, j)->insn_code != CODE_FOR_nothing)
|
||||
break;
|
||||
|
||||
if (float_p)
|
||||
{
|
||||
const struct real_format *fmt = REAL_MODE_FORMAT (inner_mode);
|
||||
|
||||
mantissa = fmt->p;
|
||||
}
|
||||
|
||||
if (!skip_p && j != VOIDmode)
|
||||
(*f) (float_p, complex_p, vector_p ? GET_MODE_NUNITS (i) : 0,
|
||||
GET_MODE_BITSIZE (i), mantissa,
|
||||
GET_MODE_SIZE (i) * BITS_PER_UNIT, GET_MODE_ALIGNMENT (i));
|
||||
}
|
||||
}
|
||||
|
||||
/* Return the size of the FP mode with precision PREC. */
|
||||
|
||||
int
|
||||
|
@ -30,7 +30,6 @@
|
||||
#include "coretypes.h"
|
||||
#include "tree.h"
|
||||
#include "tm.h"
|
||||
#include "tm_p.h"
|
||||
|
||||
#include "ada.h"
|
||||
#include "types.h"
|
||||
|
@ -29,7 +29,9 @@
|
||||
#include "tm.h"
|
||||
#include "tree.h"
|
||||
#include "flags.h"
|
||||
#include "expr.h"
|
||||
#include "rtl.h" /* FIXME: For set_stack_check_libfunc and
|
||||
gen_rtx_SYMBOL_REF -- here is a front end
|
||||
still trying to generate RTL! */
|
||||
#include "ggc.h"
|
||||
#include "output.h"
|
||||
#include "tree-iterator.h"
|
||||
|
@ -30,20 +30,17 @@
|
||||
#include "tree.h"
|
||||
#include "flags.h"
|
||||
#include "toplev.h"
|
||||
#include "rtl.h"
|
||||
#include "output.h"
|
||||
#include "ggc.h"
|
||||
#include "debug.h"
|
||||
#include "convert.h"
|
||||
#include "target.h"
|
||||
#include "function.h"
|
||||
#include "langhooks.h"
|
||||
#include "pointer-set.h"
|
||||
#include "cgraph.h"
|
||||
#include "tree-dump.h"
|
||||
#include "tree-inline.h"
|
||||
#include "tree-iterator.h"
|
||||
#include "gimple.h"
|
||||
#include "rtl.h" /* For decl_default_tls_model. */
|
||||
|
||||
#include "ada.h"
|
||||
#include "types.h"
|
||||
@ -5314,7 +5311,7 @@ handle_vector_size_attribute (tree *node, tree name, tree args,
|
||||
new_type = build_vector_type (type, nunits);
|
||||
|
||||
/* Build back pointers if needed. */
|
||||
*node = lang_hooks.types.reconstruct_complex_type (*node, new_type);
|
||||
*node = reconstruct_complex_type (*node, new_type);
|
||||
|
||||
return NULL_TREE;
|
||||
}
|
||||
|
@ -29,7 +29,6 @@
|
||||
#include "tm.h"
|
||||
#include "tree.h"
|
||||
#include "ggc.h"
|
||||
#include "flags.h"
|
||||
#include "output.h"
|
||||
#include "tree-inline.h"
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user