fix x86 darwin

Dale Johannesen dalej@apple.com
Mon Aug 9 19:44:00 GMT 2004


On Aug 9, 2004, at 9:20 AM, Mike Stump wrote:

> This fixes the builds on x86 darwin.  They've been broken since:

The following bit changes behavior on non-Darwin targets (consider
PLUS (MINUS (UNSPEC  const) const)
so I don't believe I can approve it (indeed, I don't know whether
it should be approved).  The rest looks OK, and the code below
looks OK on darwin.


*************** legitimate_constant_p (rtx x)
*** 5937,5944 ****
   	  && tls_symbolic_operand (XEXP (inner, 0), Pmode))
   	return false;

!       if (GET_CODE (inner) == PLUS
! 	  || GET_CODE (inner) == MINUS)
   	{
   	  if (GET_CODE (XEXP (inner, 1)) != CONST_INT)
   	    return false;
--- 5959,5975 ----
   	  && tls_symbolic_operand (XEXP (inner, 0), Pmode))
   	return false;

!       if (GET_CODE (inner) == PLUS)
! 	{
! 	  if (GET_CODE (XEXP (inner, 1)) != CONST_INT)
! 	    return false;
! 	  inner = XEXP (inner, 0);
! 	}
!
!       if (TARGET_MACHO && darwin_local_data_pic (inner))
! 	return true;
!
!       if (GET_CODE (inner) == MINUS)
   	{
   	  if (GET_CODE (XEXP (inner, 1)) != CONST_INT)
   	    return false;



More information about the Gcc-patches mailing list