From: Ramana Radhakrishnan Date: Tue, 6 Oct 2015 15:09:43 +0000 (+0000) Subject: Fix PR c/65345 for AArch64 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=09ba9ef71cb8a178d221e7d6ad7d6326c97c87e8;p=gcc.git Fix PR c/65345 for AArch64 2015-10-06 Ramana Radhakrishnan PR c/65345 * config/aarch64/aarch64-builtins.c (aarch64_atomic_assign_expand_fenv): Use create_tmp_var_raw instead of create_tmp_var. From-SVN: r228526 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 75de0c94c28..89e3bafccad 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-10-06 Ramana Radhakrishnan + + PR c/65345 + * config/aarch64/aarch64-builtins.c (aarch64_atomic_assign_expand_fenv): + Use create_tmp_var_raw instead of create_tmp_var. + 2015-10-06 Alexander Fomin PR target/67849 diff --git a/gcc/config/aarch64/aarch64-builtins.c b/gcc/config/aarch64/aarch64-builtins.c index 80916a9fca2..716ed6e6272 100644 --- a/gcc/config/aarch64/aarch64-builtins.c +++ b/gcc/config/aarch64/aarch64-builtins.c @@ -1462,8 +1462,8 @@ aarch64_atomic_assign_expand_fenv (tree *hold, tree *clear, tree *update) __builtin_aarch64_set_cr (masked_cr); __builtin_aarch64_set_sr (masked_sr); */ - fenv_cr = create_tmp_var (unsigned_type_node); - fenv_sr = create_tmp_var (unsigned_type_node); + fenv_cr = create_tmp_var_raw (unsigned_type_node); + fenv_sr = create_tmp_var_raw (unsigned_type_node); get_fpcr = aarch64_builtin_decls[AARCH64_BUILTIN_GET_FPCR]; set_fpcr = aarch64_builtin_decls[AARCH64_BUILTIN_SET_FPCR]; @@ -1476,9 +1476,9 @@ aarch64_atomic_assign_expand_fenv (tree *hold, tree *clear, tree *update) ~(AARCH64_FE_ALL_EXCEPT)); ld_fenv_cr = build2 (MODIFY_EXPR, unsigned_type_node, - fenv_cr, build_call_expr (get_fpcr, 0)); + fenv_cr, build_call_expr (get_fpcr, 0)); ld_fenv_sr = build2 (MODIFY_EXPR, unsigned_type_node, - fenv_sr, build_call_expr (get_fpsr, 0)); + fenv_sr, build_call_expr (get_fpsr, 0)); masked_fenv_cr = build2 (BIT_AND_EXPR, unsigned_type_node, fenv_cr, mask_cr); masked_fenv_sr = build2 (BIT_AND_EXPR, unsigned_type_node, fenv_sr, mask_sr); @@ -1509,7 +1509,7 @@ aarch64_atomic_assign_expand_fenv (tree *hold, tree *clear, tree *update) __atomic_feraiseexcept (new_fenv_var); */ - new_fenv_var = create_tmp_var (unsigned_type_node); + new_fenv_var = create_tmp_var_raw (unsigned_type_node); reload_fenv = build2 (MODIFY_EXPR, unsigned_type_node, new_fenv_var, build_call_expr (get_fpsr, 0)); restore_fnenv = build_call_expr (set_fpsr, 1, fenv_sr);