diff options
author | Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> | 2015-10-06 15:09:43 +0000 |
---|---|---|
committer | Ramana Radhakrishnan <ramana@gcc.gnu.org> | 2015-10-06 15:09:43 +0000 |
commit | 09ba9ef71cb8a178d221e7d6ad7d6326c97c87e8 (patch) | |
tree | 0d541978359a42b1b82b90946182ad5c27ff48e0 /gcc | |
parent | 2d83470f102057c45b076e6bc7474dc04fe2b685 (diff) | |
download | gcc-09ba9ef71cb8a178d221e7d6ad7d6326c97c87e8.zip gcc-09ba9ef71cb8a178d221e7d6ad7d6326c97c87e8.tar.gz gcc-09ba9ef71cb8a178d221e7d6ad7d6326c97c87e8.tar.bz2 |
Fix PR c/65345 for AArch64
2015-10-06 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/aarch64/aarch64-builtins.c | 10 |
2 files changed, 11 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 75de0c9..89e3baf 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-10-06 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> + + 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 <alexander.fomin@intel.com> PR target/67849 diff --git a/gcc/config/aarch64/aarch64-builtins.c b/gcc/config/aarch64/aarch64-builtins.c index 80916a9..716ed6e 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); |