From d101034cd879822fbb76d8a2a50e4e27959e9d5b Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Wed, 23 Mar 2005 19:47:09 +0000 Subject: [PATCH] langhooks.h (truthvalue_conversion): Remove. * langhooks.h (truthvalue_conversion): Remove. * langhooks-def.h (LANG_HOOKS_INITIALIZER): Remove LANG_HOOKS_TRUTHVALUE_CONVERSION. * system.h (LANG_HOOKS_TRUTHVALUE_CONVERSION): Poison. * gimplify.c (gimple_boolify): Don't use truthvalue_conversion. * c-objc-common.h (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove. ada: * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove. cp: * cp-objcp-common.h (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove. fortran: * f95-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove. java: * lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove. treelang: * treetree.c (LANG_HOOKS_TRUTHVALUE_CONVERSION, tree_lang_truthvalue_conversion): Remove. * tree-convert.c: Don't call truthvalue_conversion. From-SVN: r96947 --- gcc/ChangeLog | 9 +++++++++ gcc/ada/ChangeLog | 4 ++++ gcc/ada/misc.c | 2 -- gcc/c-objc-common.h | 2 -- gcc/cp/ChangeLog | 4 ++++ gcc/cp/cp-objcp-common.h | 2 -- gcc/fortran/ChangeLog | 4 ++++ gcc/fortran/f95-lang.c | 2 -- gcc/gimplify.c | 4 ---- gcc/java/ChangeLog | 4 ++++ gcc/java/lang.c | 2 -- gcc/langhooks-def.h | 1 - gcc/langhooks.h | 13 ------------- gcc/system.h | 2 +- gcc/treelang/ChangeLog | 6 ++++++ gcc/treelang/tree-convert.c | 2 +- gcc/treelang/treetree.c | 10 ---------- 17 files changed, 33 insertions(+), 40 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 66bece7d1bd..081b91a62d7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2005-03-23 Joseph S. Myers + + * langhooks.h (truthvalue_conversion): Remove. + * langhooks-def.h (LANG_HOOKS_INITIALIZER): Remove + LANG_HOOKS_TRUTHVALUE_CONVERSION. + * system.h (LANG_HOOKS_TRUTHVALUE_CONVERSION): Poison. + * gimplify.c (gimple_boolify): Don't use truthvalue_conversion. + * c-objc-common.h (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove. + 2005-03-23 Kazu Hirata * params.def: Fix a typo. diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index bcd2cba0540..d0e73d327f4 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,7 @@ +2005-03-23 Joseph S. Myers + + * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove. + 2005-03-17 Pascal Obry * adaint.h, adaint.c (__gnat_waitpid): Moved to expect.c where it is diff --git a/gcc/ada/misc.c b/gcc/ada/misc.c index 03b156c25a3..39feb1cc9c2 100644 --- a/gcc/ada/misc.c +++ b/gcc/ada/misc.c @@ -137,8 +137,6 @@ static tree gnat_type_max_size (tree); #define LANG_HOOKS_EXPAND_EXPR gnat_expand_expr #undef LANG_HOOKS_MARK_ADDRESSABLE #define LANG_HOOKS_MARK_ADDRESSABLE gnat_mark_addressable -#undef LANG_HOOKS_TRUTHVALUE_CONVERSION -#define LANG_HOOKS_TRUTHVALUE_CONVERSION gnat_truthvalue_conversion #undef LANG_HOOKS_PRINT_DECL #define LANG_HOOKS_PRINT_DECL gnat_print_decl #undef LANG_HOOKS_PRINT_TYPE diff --git a/gcc/c-objc-common.h b/gcc/c-objc-common.h index c6cca43d3c0..de8c175c5c2 100644 --- a/gcc/c-objc-common.h +++ b/gcc/c-objc-common.h @@ -52,8 +52,6 @@ extern void c_initialize_diagnostics (diagnostic_context *); #define LANG_HOOKS_MARK_ADDRESSABLE c_mark_addressable #undef LANG_HOOKS_PARSE_FILE #define LANG_HOOKS_PARSE_FILE c_common_parse_file -#undef LANG_HOOKS_TRUTHVALUE_CONVERSION -#define LANG_HOOKS_TRUTHVALUE_CONVERSION c_common_truthvalue_conversion #undef LANG_HOOKS_FINISH_INCOMPLETE_DECL #define LANG_HOOKS_FINISH_INCOMPLETE_DECL c_finish_incomplete_decl #undef LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index c242a87dd34..2b3a99b1cf0 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,7 @@ +2005-03-23 Joseph S. Myers + + * cp-objcp-common.h (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove. + 2005-03-23 Joseph S. Myers * cp-tree.h (perform_integral_promotions): Remove. diff --git a/gcc/cp/cp-objcp-common.h b/gcc/cp/cp-objcp-common.h index 210a383e461..65a01c367f6 100644 --- a/gcc/cp/cp-objcp-common.h +++ b/gcc/cp/cp-objcp-common.h @@ -71,8 +71,6 @@ extern tree objcp_tsubst_copy_and_build (tree, tree, tsubst_flags_t, #define LANG_HOOKS_PARSE_FILE c_common_parse_file #undef LANG_HOOKS_DUP_LANG_SPECIFIC_DECL #define LANG_HOOKS_DUP_LANG_SPECIFIC_DECL cxx_dup_lang_specific_decl -#undef LANG_HOOKS_TRUTHVALUE_CONVERSION -#define LANG_HOOKS_TRUTHVALUE_CONVERSION c_common_truthvalue_conversion #undef LANG_HOOKS_SET_DECL_ASSEMBLER_NAME #define LANG_HOOKS_SET_DECL_ASSEMBLER_NAME mangle_decl #undef LANG_HOOKS_MARK_ADDRESSABLE diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index aa990eb616a..7a6962159fe 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,7 @@ +2005-03-23 Joseph S. Myers + + * f95-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove. + 2005-03-23 Steven Bosscher * convert.c (convert): Replace fold (buildN (...)) with fold_buildN. diff --git a/gcc/fortran/f95-lang.c b/gcc/fortran/f95-lang.c index 7f04b7ca261..e0c22daad5d 100644 --- a/gcc/fortran/f95-lang.c +++ b/gcc/fortran/f95-lang.c @@ -114,7 +114,6 @@ static void gfc_expand_function (tree); #undef LANG_HOOKS_POST_OPTIONS #undef LANG_HOOKS_PRINT_IDENTIFIER #undef LANG_HOOKS_PARSE_FILE -#undef LANG_HOOKS_TRUTHVALUE_CONVERSION #undef LANG_HOOKS_MARK_ADDRESSABLE #undef LANG_HOOKS_TYPE_FOR_MODE #undef LANG_HOOKS_TYPE_FOR_SIZE @@ -133,7 +132,6 @@ static void gfc_expand_function (tree); #define LANG_HOOKS_POST_OPTIONS gfc_post_options #define LANG_HOOKS_PRINT_IDENTIFIER gfc_print_identifier #define LANG_HOOKS_PARSE_FILE gfc_be_parse_file -#define LANG_HOOKS_TRUTHVALUE_CONVERSION gfc_truthvalue_conversion #define LANG_HOOKS_MARK_ADDRESSABLE gfc_mark_addressable #define LANG_HOOKS_TYPE_FOR_MODE gfc_type_for_mode #define LANG_HOOKS_TYPE_FOR_SIZE gfc_type_for_size diff --git a/gcc/gimplify.c b/gcc/gimplify.c index b902ce1c97f..9191baea26a 100644 --- a/gcc/gimplify.c +++ b/gcc/gimplify.c @@ -2073,10 +2073,6 @@ gimple_boolify (tree expr) if (TREE_CODE (type) == BOOLEAN_TYPE) return expr; - /* If this is the predicate of a COND_EXPR, it might not even be a - truthvalue yet. */ - expr = lang_hooks.truthvalue_conversion (expr); - switch (TREE_CODE (expr)) { case TRUTH_AND_EXPR: diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index bcf91565981..70ad11c3647 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,7 @@ +2005-03-23 Joseph S. Myers + + * lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove. + 2005-03-18 Andrew Haley PR java/20522 diff --git a/gcc/java/lang.c b/gcc/java/lang.c index 67bc0e48e1e..553e20cf57f 100644 --- a/gcc/java/lang.c +++ b/gcc/java/lang.c @@ -172,8 +172,6 @@ struct language_function GTY(()) #define LANG_HOOKS_PARSE_FILE java_parse_file #undef LANG_HOOKS_MARK_ADDRESSABLE #define LANG_HOOKS_MARK_ADDRESSABLE java_mark_addressable -#undef LANG_HOOKS_TRUTHVALUE_CONVERSION -#define LANG_HOOKS_TRUTHVALUE_CONVERSION java_truthvalue_conversion #undef LANG_HOOKS_DUP_LANG_SPECIFIC_DECL #define LANG_HOOKS_DUP_LANG_SPECIFIC_DECL java_dup_lang_specific_decl #undef LANG_HOOKS_DECL_PRINTABLE_NAME diff --git a/gcc/langhooks-def.h b/gcc/langhooks-def.h index fc6decaaf85..67ea0f325dc 100644 --- a/gcc/langhooks-def.h +++ b/gcc/langhooks-def.h @@ -267,7 +267,6 @@ extern tree lhd_make_node (enum tree_code); LANG_HOOKS_EXPAND_CONSTANT, \ LANG_HOOKS_EXPAND_EXPR, \ LANG_HOOKS_EXPAND_DECL, \ - LANG_HOOKS_TRUTHVALUE_CONVERSION, \ LANG_HOOKS_SAFE_FROM_P, \ LANG_HOOKS_FINISH_INCOMPLETE_DECL, \ LANG_HOOKS_MARK_ADDRESSABLE, \ diff --git a/gcc/langhooks.h b/gcc/langhooks.h index 97b8f5e1ce4..e3ff6724eff 100644 --- a/gcc/langhooks.h +++ b/gcc/langhooks.h @@ -277,19 +277,6 @@ struct lang_hooks 1 if handled, 0 otherwise. */ int (*expand_decl) (tree); - /* Prepare expr to be an argument of a TRUTH_NOT_EXPR or other logical - operation. - - This preparation consists of taking the ordinary representation - of an expression expr and producing a valid tree boolean - expression describing whether expr is nonzero. We could simply - always do build_binary_op (NE_EXPR, expr, integer_zero_node, 1), - but we optimize comparisons, &&, ||, and !. - - The result should be an expression of boolean type (if not an - error_mark_node). */ - tree (*truthvalue_conversion) (tree); - /* Hook called by safe_from_p for language-specific tree codes. It is up to the language front-end to install a hook if it has any such codes that safe_from_p needs to know about. Since same_from_p will diff --git a/gcc/system.h b/gcc/system.h index d45e56afb33..f285e87674c 100644 --- a/gcc/system.h +++ b/gcc/system.h @@ -670,7 +670,7 @@ extern void fancy_abort (const char *, int, const char *) ATTRIBUTE_NORETURN; LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS \ LANG_HOOKS_PUSHLEVEL LANG_HOOKS_SET_BLOCK \ LANG_HOOKS_MAYBE_BUILD_CLEANUP LANG_HOOKS_UPDATE_DECL_AFTER_SAVING \ - LANG_HOOKS_POPLEVEL + LANG_HOOKS_POPLEVEL LANG_HOOKS_TRUTHVALUE_CONVERSION /* Libiberty macros that are no longer used in GCC. */ #undef ANSI_PROTOTYPES diff --git a/gcc/treelang/ChangeLog b/gcc/treelang/ChangeLog index ae07033fec2..dbf1bdc3e90 100644 --- a/gcc/treelang/ChangeLog +++ b/gcc/treelang/ChangeLog @@ -1,3 +1,9 @@ +2005-03-23 Joseph S. Myers + + * treetree.c (LANG_HOOKS_TRUTHVALUE_CONVERSION, + tree_lang_truthvalue_conversion): Remove. + * tree-convert.c: Don't call truthvalue_conversion. + 2005-03-22 James A. Morrison * treetree.c (tree_code_if_start): Use fold_buildN. diff --git a/gcc/treelang/tree-convert.c b/gcc/treelang/tree-convert.c index 77741453f40..929fbd5506c 100644 --- a/gcc/treelang/tree-convert.c +++ b/gcc/treelang/tree-convert.c @@ -85,7 +85,7 @@ convert (tree type, tree expr) return fold (convert_to_integer (type, e)); if (code == BOOLEAN_TYPE) { - tree t = (*lang_hooks.truthvalue_conversion) (expr); + tree t = expr; /* If it returns a NOP_EXPR, we must fold it here to avoid infinite recursion between fold () and convert (). */ if (TREE_CODE (t) == NOP_EXPR) diff --git a/gcc/treelang/treetree.c b/gcc/treelang/treetree.c index 6f22298c151..6d98e235022 100644 --- a/gcc/treelang/treetree.c +++ b/gcc/treelang/treetree.c @@ -124,7 +124,6 @@ struct language_function GTY(()) char junk; /* dummy field to ensure struct is not empty */ }; -static tree tree_lang_truthvalue_conversion (tree expr); static bool tree_mark_addressable (tree exp); static tree tree_lang_type_for_size (unsigned precision, int unsignedp); static tree tree_lang_type_for_mode (enum machine_mode mode, int unsignedp); @@ -153,8 +152,6 @@ static void treelang_expand_function (tree fndecl); end). These are not really very language-dependent, i.e. treelang, C, Mercury, etc. can all use almost the same definitions. */ -#undef LANG_HOOKS_TRUTHVALUE_CONVERSION -#define LANG_HOOKS_TRUTHVALUE_CONVERSION tree_lang_truthvalue_conversion #undef LANG_HOOKS_MARK_ADDRESSABLE #define LANG_HOOKS_MARK_ADDRESSABLE tree_mark_addressable #undef LANG_HOOKS_SIGNED_TYPE @@ -781,13 +778,6 @@ dt (tree t) allocate each of them once. Signed and unsigned types are kept separate. */ static GTY(()) tree signed_and_unsigned_types[MAX_BITS_PER_WORD + 1][2]; -/* XXX is this definition OK? */ -static tree -tree_lang_truthvalue_conversion (tree expr) -{ - return expr; -} - /* Mark EXP saying that we need to be able to take the address of it; it should not be allocated in a register. Value is 1 if successful. -- 2.30.2