This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: C PATCH for c/65345 (file-scope _Atomic expansion with floats)
- From: Andreas Krebbel <krebbel at linux dot vnet dot ibm dot com>
- To: Marek Polacek <polacek at redhat dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Thu, 8 Oct 2015 09:53:23 +0200
- Subject: Re: C PATCH for c/65345 (file-scope _Atomic expansion with floats)
- Authentication-results: sourceware.org; auth=none
- References: <20151001144941 dot GT6184 at redhat dot com>
On Thu, Oct 01, 2015 at 04:49:41PM +0200, Marek Polacek wrote:
> Joseph reminded me that I had forgotten about this patch. As mentioned
> here <https://gcc.gnu.org/ml/gcc-patches/2015-04/msg01792.html>, I'm
> removing the XFAILs in the tests so people are likely to see new FAILs.
>
> I think the following targets will need similar fix as the one below:
> * MIPS
> * rs6000
> * alpha
> * sparc
> * s390
> * arm
> * sh
> * aarch64
>
> I'm CCing the respective maintainers. You might want to XFAIL those tests.
I've applied the following patch for s390.
Bye,
-Andreas-
gcc/ChangeLog:
2015-10-08 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
PR c/65345
* config/s390/s390.c (s390_atomic_assign_expand_fenv): Use
create_tmp_var_raw instead of create_tmp_var.
diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c
index 5ab6ce7..b994cd2 100644
--- a/gcc/config/s390/s390.c
+++ b/gcc/config/s390/s390.c
@@ -13678,7 +13678,7 @@ s390_atomic_assign_expand_fenv (tree *hold, tree *clear, tree *update)
tree sfpc = s390_builtin_decls[S390_BUILTIN_s390_sfpc];
tree efpc = s390_builtin_decls[S390_BUILTIN_s390_efpc];
tree call_efpc = build_call_expr (efpc, 0);
- tree fenv_var = create_tmp_var (unsigned_type_node);
+ tree fenv_var = create_tmp_var_raw (unsigned_type_node);
#define FPC_EXCEPTION_MASK HOST_WIDE_INT_UC (0xf8000000)
#define FPC_FLAGS_MASK HOST_WIDE_INT_UC (0x00f80000)
@@ -13714,7 +13714,7 @@ s390_atomic_assign_expand_fenv (tree *hold, tree *clear, tree *update)
__builtin_s390_sfpc (fenv_var);
__atomic_feraiseexcept ((old_fpc & FPC_FLAGS_MASK) >> FPC_FLAGS_SHIFT); */
- old_fpc = create_tmp_var (unsigned_type_node);
+ old_fpc = create_tmp_var_raw (unsigned_type_node);
tree store_old_fpc = build2 (MODIFY_EXPR, void_type_node,
old_fpc, call_efpc);