OSDN Git Service

* tree-ssa-structalias.c (find_func_aliases_for_builtin_call): Fix
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 30 Jun 2011 10:43:59 +0000 (10:43 +0000)
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 30 Jun 2011 10:43:59 +0000 (10:43 +0000)
handling of BUILT_IN_ASSUME_ALIGNED.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175695 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/tree-ssa-structalias.c

index fceef96..cf9bfa2 100644 (file)
@@ -1,5 +1,8 @@
 2011-06-30  Jakub Jelinek  <jakub@redhat.com>
 
+       * tree-ssa-structalias.c (find_func_aliases_for_builtin_call): Fix
+       handling of BUILT_IN_ASSUME_ALIGNED.
+
        PR debug/49364
        * dwarf2out.c (output_abbrev_section): Don't return early
        if abbrev_die_table_in_use is 1.
index f786207..dba8b01 100644 (file)
@@ -4002,7 +4002,6 @@ find_func_aliases_for_builtin_call (gimple t)
       case BUILT_IN_STPCPY_CHK:
       case BUILT_IN_STRCAT_CHK:
       case BUILT_IN_STRNCAT_CHK:
-      case BUILT_IN_ASSUME_ALIGNED:
        {
          tree res = gimple_call_lhs (t);
          tree dest = gimple_call_arg (t, (DECL_FUNCTION_CODE (fndecl)
@@ -4068,6 +4067,20 @@ find_func_aliases_for_builtin_call (gimple t)
          VEC_free (ce_s, heap, lhsc);
          return true;
        }
+      case BUILT_IN_ASSUME_ALIGNED:
+       {
+         tree res = gimple_call_lhs (t);
+         tree dest = gimple_call_arg (t, 0);
+         if (res != NULL_TREE)
+           {
+             get_constraint_for (res, &lhsc);
+             get_constraint_for (dest, &rhsc);
+             process_all_all_constraints (lhsc, rhsc);
+             VEC_free (ce_s, heap, lhsc);
+             VEC_free (ce_s, heap, rhsc);
+           }
+         return true;
+       }
       /* All the following functions do not return pointers, do not
         modify the points-to sets of memory reachable from their
         arguments and do not add to the ESCAPED solution.  */