Filewatcher File Search
FTP Search
  
Directory (beta)
  
Content Search (beta)
   
pkg://compat-reuters-1.0-1.src.rpm:18808837/gcc-align-memcpy.patch  info  downloads

2000-05-02  Jakub Jelinek  <jakub@redhat.com>

	* builtins.c (get_pointer_alignment): If exp is pointer type, return
	at least BITS_PER_UNIT.

--- gcc/builtins.c.jj	Tue Apr 25 21:02:50 2000
+++ gcc/builtins.c	Tue May  2 15:39:17 2000
@@ -135,7 +135,7 @@ get_pointer_alignment (exp, max_align)
 	case NON_LVALUE_EXPR:
 	  exp = TREE_OPERAND (exp, 0);
 	  if (TREE_CODE (TREE_TYPE (exp)) != POINTER_TYPE)
-	    return align;
+	    return MAX (align, BITS_PER_UNIT);
 
 	  inner = TYPE_ALIGN (TREE_TYPE (TREE_TYPE (exp)));
 	  align = MIN (inner, max_align);
@@ -146,7 +146,7 @@ get_pointer_alignment (exp, max_align)
 	     imposed by the integer.  If not, we can't do any better than
 	     ALIGN.  */
 	  if (! host_integerp (TREE_OPERAND (exp, 1), 1))
-	    return align;
+	    return MAX (align, BITS_PER_UNIT);
 
 	  while (((tree_low_cst (TREE_OPERAND (exp, 1), 1) * BITS_PER_UNIT)
 		  & (max_align - 1))
@@ -167,10 +167,11 @@ get_pointer_alignment (exp, max_align)
 	  else if (TREE_CODE_CLASS (TREE_CODE (exp)) == 'c')
 	    align = CONSTANT_ALIGNMENT (exp, align);
 #endif
-	  return MIN (align, max_align);
+	  align = MIN (align, max_align);
+	  /* FALLTHROUGH */
 
 	default:
-	  return align;
+	  return MAX (align, BITS_PER_UNIT);
 	}
     }
 }
Results 1 - 1
Help - FTP Sites List - Software Dir.
Searching half a billion files worldwide
© 1997-2008 Oliver Maruhn