This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/58269] [4.9 Regression] ICE when building libobjc on x86_64-apple-darwin* after revision 201915


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58269

--- Comment #15 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
(In reply to Iain Sandoe from comment #14)
> assuming that the patch above is applied to deal with pr58139,

Indeed!

> Are you saying that:
> -  if (TARGET_MACHO)
> -    {
> -      if (SSE_REGNO_P (regno) && TARGET_SSE)
> -        return true;
> -    }
> -  else
> -    {
> -      if (TARGET_SSE && SSE_REGNO_P (regno)
> -          && (regno < FIRST_SSE_REG + SSE_REGPARM_MAX))
> -        return true;
> -    }
> +  if (TARGET_SSE && SSE_REGNO_P (regno)
> +      && (regno < FIRST_SSE_REG + SSE_REGPARM_MAX))
> +    return true;
> gives a compare fail for you?

No: I did not test it although the initial fix worked for me). The comparison
failures occur with r202318 and the patch for pr58139 only. These failures are
fixed by the patch

--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -5708,7 +5708,8 @@ ix86_function_arg_regno_p (int regno)

   if (TARGET_MACHO)
     {
-      if (SSE_REGNO_P (regno) && TARGET_SSE)
+      if (SSE_REGNO_P (regno) && TARGET_SSE
+         && ! EXT_REX_SSE_REGNO_P (regno))
         return true;
     }
   else

from comment #6.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]