diff options
author | Razya Ladelsky <razya@il.ibm.com> | 2005-11-13 09:08:42 +0000 |
---|---|---|
committer | Razya Ladelsky <razya@gcc.gnu.org> | 2005-11-13 09:08:42 +0000 |
commit | a8bd670c5a5021e73a7727d585ac2bd806046295 (patch) | |
tree | 0c4ce54b172dca2af0179b2bd584285653c2378d /gcc/ipa-prop.c | |
parent | 42068fd90a57d8924cee466830d5e883794b58d0 (diff) | |
download | gcc-a8bd670c5a5021e73a7727d585ac2bd806046295.tar.gz |
ipa-prop.c (ipa_callsite_compute_param ): Removed obsolete type checking.
2005-11-13 Razya Ladelsky <razya@il.ibm.com>
* ipa-prop.c (ipa_callsite_compute_param ): Removed obsolete type
checking.
From-SVN: r106858
Diffstat (limited to 'gcc/ipa-prop.c')
-rw-r--r-- | gcc/ipa-prop.c | 51 |
1 files changed, 10 insertions, 41 deletions
diff --git a/gcc/ipa-prop.c b/gcc/ipa-prop.c index bcb2da315a6..84a3a424a18 100644 --- a/gcc/ipa-prop.c +++ b/gcc/ipa-prop.c @@ -431,7 +431,7 @@ void ipa_callsite_compute_param (struct cgraph_edge *cs) { tree call_tree; - tree arg, cst_decl, arg_type, formal_type; + tree arg, cst_decl; int arg_num; int i; struct cgraph_node *mt; @@ -457,18 +457,8 @@ ipa_callsite_compute_param (struct cgraph_edge *cs) ipa_callsite_param_set_type (cs, arg_num, UNKNOWN_IPATYPE); else { - arg_type = TREE_TYPE (TREE_VALUE (arg)); - formal_type = TREE_TYPE (ipa_method_get_tree (cs->callee, arg_num)); - if (TYPE_NAME (arg_type) == TYPE_NAME (formal_type) - && TYPE_CONTEXT (arg_type) == TYPE_CONTEXT (formal_type) - && attribute_list_equal (TYPE_ATTRIBUTES (arg_type), - TYPE_ATTRIBUTES (formal_type))) - { - ipa_callsite_param_set_type (cs, arg_num, FORMAL_IPATYPE); - ipa_callsite_param_set_info_type_formal (cs, arg_num, i); - } - else - ipa_callsite_param_set_type (cs, arg_num, UNKNOWN_IPATYPE); + ipa_callsite_param_set_type (cs, arg_num, FORMAL_IPATYPE); + ipa_callsite_param_set_info_type_formal (cs, arg_num, i); } } /* If a constant value was passed as argument, @@ -477,18 +467,9 @@ ipa_callsite_compute_param (struct cgraph_edge *cs) else if (TREE_CODE (TREE_VALUE (arg)) == INTEGER_CST || TREE_CODE (TREE_VALUE (arg)) == REAL_CST) { - arg_type = TREE_TYPE (TREE_VALUE (arg)); - formal_type = TREE_TYPE (ipa_method_get_tree (cs->callee, arg_num)); - if (TYPE_NAME (arg_type) == TYPE_NAME (formal_type) - && TYPE_CONTEXT (arg_type) == TYPE_CONTEXT (formal_type) - && attribute_list_equal (TYPE_ATTRIBUTES (arg_type), - TYPE_ATTRIBUTES (formal_type))) - { - ipa_callsite_param_set_type (cs, arg_num, CONST_IPATYPE); - ipa_callsite_param_set_info_type (cs, arg_num, TREE_VALUE (arg)); - } - else - ipa_callsite_param_set_type (cs, arg_num, UNKNOWN_IPATYPE); + ipa_callsite_param_set_type (cs, arg_num, CONST_IPATYPE); + ipa_callsite_param_set_info_type (cs, arg_num, + TREE_VALUE (arg)); } /* This is for the case of Fortran. If the address of a const_decl was passed as argument then we store @@ -499,25 +480,13 @@ ipa_callsite_compute_param (struct cgraph_edge *cs) CONST_DECL) { cst_decl = TREE_OPERAND (TREE_VALUE (arg), 0); - arg_type = TREE_TYPE (DECL_INITIAL (cst_decl)); - formal_type = - TREE_TYPE (TREE_TYPE (ipa_method_get_tree (cs->callee, arg_num))); if (TREE_CODE (DECL_INITIAL (cst_decl)) == INTEGER_CST || TREE_CODE (DECL_INITIAL (cst_decl)) == REAL_CST) { - if (TYPE_NAME (arg_type) == TYPE_NAME (formal_type) - && TYPE_CONTEXT (arg_type) == TYPE_CONTEXT (formal_type) - && attribute_list_equal (TYPE_ATTRIBUTES (arg_type), - TYPE_ATTRIBUTES (formal_type))) - - { - ipa_callsite_param_set_type (cs, arg_num, - CONST_IPATYPE_REF); - ipa_callsite_param_set_info_type (cs, arg_num, DECL_INITIAL (cst_decl)); - - } - else - ipa_callsite_param_set_type (cs, arg_num, UNKNOWN_IPATYPE); + ipa_callsite_param_set_type (cs, arg_num, + CONST_IPATYPE_REF); + ipa_callsite_param_set_info_type (cs, arg_num, + DECL_INITIAL (cst_decl)); } } else |