diff options
author | hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-08-18 04:00:39 +0000 |
---|---|---|
committer | hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-08-18 04:00:39 +0000 |
commit | b25026a571b110ce4dd2fa426eaa7e2ce954077e (patch) | |
tree | 276fe92182ba9cb1ddb05efbb251c0e382ca23cc /gcc/builtins.c | |
parent | 5073c3a06557e7b1360b17c0cde82601cecd19ac (diff) | |
parent | a0553bffda7fd6a0a7a1ffc17c700ea03b31543e (diff) | |
download | gcc-x32.tar.gz |
Merged with trunk at revision 177828.x32
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/x32@177844 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/builtins.c')
-rw-r--r-- | gcc/builtins.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/gcc/builtins.c b/gcc/builtins.c index e0afc908d5a..1f263073fe5 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -1680,6 +1680,7 @@ expand_builtin_apply (rtx function, rtx arguments, rtx argsize) else #endif emit_stack_restore (SAVE_BLOCK, old_stack_level); + fixup_args_size_notes (call_insn, get_last_insn(), 0); OK_DEFER_POP; @@ -3630,7 +3631,8 @@ expand_builtin_bzero (tree exp) calling bzero instead of memset. */ return expand_builtin_memset_args (dest, integer_zero_node, - fold_convert_loc (loc, sizetype, size), + fold_convert_loc (loc, + size_type_node, size), const0_rtx, VOIDmode, exp); } @@ -4224,11 +4226,10 @@ std_gimplify_va_arg_expr (tree valist, tree type, gimple_seq *pre_p, fold_build_pointer_plus_hwi (valist_tmp, boundary - 1)); gimplify_and_add (t, pre_p); - t = fold_convert (sizetype, valist_tmp); t = build2 (MODIFY_EXPR, TREE_TYPE (valist), valist_tmp, - fold_convert (TREE_TYPE (valist), - fold_build2 (BIT_AND_EXPR, sizetype, t, - size_int (-boundary)))); + fold_build2 (BIT_AND_EXPR, TREE_TYPE (valist), + valist_tmp, + build_int_cst (TREE_TYPE (valist), -boundary))); gimplify_and_add (t, pre_p); } else @@ -7968,7 +7969,7 @@ fold_builtin_bzero (location_t loc, tree dest, tree size, bool ignore) calling bzero instead of memset. */ return fold_builtin_memset (loc, dest, integer_zero_node, - fold_convert_loc (loc, sizetype, size), + fold_convert_loc (loc, size_type_node, size), void_type_node, ignore); } |