builtin-types.def (BT_FN_PTR_CONST_PTR_SIZE_VAR): New.
authorJakub Jelinek <jakub@redhat.com>
Mon, 27 Jun 2011 16:52:23 +0000 (18:52 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Mon, 27 Jun 2011 16:52:23 +0000 (18:52 +0200)
commit45d439ac1a9e2df33ac7ef573009749dbebf581b
treeefa39246412ef14d5214fe10b53a962abeab3d20
parentdc2a58daabf95cfac0dd346ff717902bdc6e3d93
builtin-types.def (BT_FN_PTR_CONST_PTR_SIZE_VAR): New.

* builtin-types.def (BT_FN_PTR_CONST_PTR_SIZE_VAR): New.
* builtins.def (BUILT_IN_ASSUME_ALIGNED): New builtin.
* tree-ssa-structalias.c (find_func_aliases_for_builtin_call,
find_func_clobbers): Handle BUILT_IN_ASSUME_ALIGNED.
* tree-ssa-ccp.c (bit_value_assume_aligned): New function.
(evaluate_stmt, execute_fold_all_builtins): Handle
BUILT_IN_ASSUME_ALIGNED.
* tree-ssa-dce.c (propagate_necessity): Likewise.
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1,
call_may_clobber_ref_p_1): Likewise.
* builtins.c (is_simple_builtin, expand_builtin): Likewise.
(expand_builtin_assume_aligned): New function.
* doc/extend.texi (__builtin_assume_aligned): Document.

* c-common.c (check_builtin_function_arguments): Handle
BUILT_IN_ASSUME_ALIGNED.

* gcc.dg/builtin-assume-aligned-1.c: New test.
* gcc.dg/builtin-assume-aligned-2.c: New test.
* gcc.target/i386/builtin-assume-aligned-1.c: New test.

From-SVN: r175541
15 files changed:
gcc/ChangeLog
gcc/builtin-types.def
gcc/builtins.c
gcc/builtins.def
gcc/c-family/ChangeLog
gcc/c-family/c-common.c
gcc/doc/extend.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/builtin-assume-aligned-1.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/builtin-assume-aligned-2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/builtin-assume-aligned-1.c [new file with mode: 0644]
gcc/tree-ssa-alias.c
gcc/tree-ssa-ccp.c
gcc/tree-ssa-dce.c
gcc/tree-ssa-structalias.c