From: Jakub Jelinek Date: Tue, 17 Aug 2010 18:10:20 +0000 (+0200) Subject: tree.h (host_integerp): Add ATTRIBUTE_PURE when not ENABLE_TREE_CHECKING. X-Git-Tag: releases/gcc-4.6.0~4962 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a085a55ae20e806a5168191a0a2669661d6e2d23;p=thirdparty%2Fgcc.git tree.h (host_integerp): Add ATTRIBUTE_PURE when not ENABLE_TREE_CHECKING. * tree.h (host_integerp): Add ATTRIBUTE_PURE when not ENABLE_TREE_CHECKING. (tree_low_cst): Add inline version for !ENABLE_TREE_CHECKING and GCC >= 4.3. From-SVN: r163313 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 47aa331abdd8..a91099f8a5da 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2010-08-17 Jakub Jelinek + + * tree.h (host_integerp): Add ATTRIBUTE_PURE when not + ENABLE_TREE_CHECKING. + (tree_low_cst): Add inline version for !ENABLE_TREE_CHECKING + and GCC >= 4.3. + 2010-08-17 H.J. Lu * config/i386/i386.c (ix86_lea_for_add_ok): For !TARGET_OPT_AGU diff --git a/gcc/tree.h b/gcc/tree.h index d16a475a3533..4b0078a0963f 100644 --- a/gcc/tree.h +++ b/gcc/tree.h @@ -4099,8 +4099,20 @@ extern int attribute_list_contained (const_tree, const_tree); extern int tree_int_cst_equal (const_tree, const_tree); extern int tree_int_cst_lt (const_tree, const_tree); extern int tree_int_cst_compare (const_tree, const_tree); -extern int host_integerp (const_tree, int); +extern int host_integerp (const_tree, int) +#ifndef ENABLE_TREE_CHECKING + ATTRIBUTE_PURE /* host_integerp is pure only when checking is disabled. */ +#endif + ; extern HOST_WIDE_INT tree_low_cst (const_tree, int); +#if !defined ENABLE_TREE_CHECKING && (GCC_VERSION >= 4003) +extern inline __attribute__ ((__gnu_inline__)) HOST_WIDE_INT +tree_low_cst (const_tree t, int pos) +{ + gcc_assert (host_integerp (t, pos)); + return TREE_INT_CST_LOW (t); +} +#endif extern int tree_int_cst_msb (const_tree); extern int tree_int_cst_sgn (const_tree); extern int tree_int_cst_sign_bit (const_tree);