diff gcc/df-byte-scan.c @ 55:77e2b8dfacca gcc-4.4.5

update it from 4.4.3 to 4.5.0
author ryoma <e075725@ie.u-ryukyu.ac.jp>
date Fri, 12 Feb 2010 23:39:51 +0900
parents a06113de4d67
children
line wrap: on
line diff
--- a/gcc/df-byte-scan.c	Sun Feb 07 18:28:00 2010 +0900
+++ b/gcc/df-byte-scan.c	Fri Feb 12 23:39:51 2010 +0900
@@ -43,12 +43,12 @@
 /* Helper for df_compute_accessed_bytes.  Ref is some sort of extract.
    Return true if this effects the entire reg in REF.  Return false if
    otherwise and set START_BYTE and LAST_BYTE.  See the description of
-   df_compute_accessed_bytes for a description of MM.  */ 
+   df_compute_accessed_bytes for a description of MM.  */
 
-static bool 
+static bool
 df_compute_accessed_bytes_extract (df_ref ref,
 				   enum df_mm mm ,
-				   unsigned int *start_byte, 
+				   unsigned int *start_byte,
 				   unsigned int *last_byte)
 {
   int start;
@@ -61,12 +61,12 @@
 
   /* (*_extract:M1 (reg:M2 X) WIDTH POS)
      (*_extract:M1 (subreg:M1 (reg:M2 X N) WIDTH POS)
-      
+
      This is a bitfield extraction.  The assignment clobbers/extracts
      exactly the bits named by WIDTH and POS and does not affect the
      other bits in register X.  It is also technically possible that
      the bits asked for are longer than units per word.  */
-  
+
   int offset = DF_REF_EXTRACT_OFFSET (ref);
   int width = DF_REF_EXTRACT_WIDTH (ref);
 
@@ -134,9 +134,9 @@
     last = m2_size;
 
   if (dump_file)
-    fprintf (dump_file, "    cpb extract regno=%d start=%d last=%d\n", 
+    fprintf (dump_file, "    cpb extract regno=%d start=%d last=%d\n",
 	     DF_REF_REGNO (ref), start, last);
-  
+
   *start_byte = start;
   *last_byte = last;
   return false;
@@ -145,11 +145,11 @@
 
 /* Helper for df_compute_accessed_bytes.  Ref is a strict_low_part.
    Return true if this effects the entire reg in REF. Return false if
-   otherwise and set START_BYTE and LAST_BYTE.  */ 
+   otherwise and set START_BYTE and LAST_BYTE.  */
 
-static bool 
-df_compute_accessed_bytes_strict_low_part (df_ref ref, 
-					   unsigned int *start_byte, 
+static bool
+df_compute_accessed_bytes_strict_low_part (df_ref ref,
+					   unsigned int *start_byte,
 					   unsigned int *last_byte)
 {
   int start;
@@ -177,17 +177,17 @@
   gcc_assert (m1_size <= m2_size);
 
   /* (set (strict_low_part (subreg:M1 (reg:M2 X) N)) ...)
-      
+
   This is a bitfield insertion.  The assignment clobbers exactly the
   bits named by the subreg--the M1 bits at position N.  It is also
   technically possible that the bits asked for are longer than units
   per word.  */
-  
+
   start = offset;
   last = offset + m1_size;
 
   if (dump_file)
-    fprintf (dump_file, "    cpb strict low part regno=%d start=%d last=%d\n", 
+    fprintf (dump_file, "    cpb strict low part regno=%d start=%d last=%d\n",
 	     DF_REF_REGNO (ref), start, last);
 
   *start_byte = start;
@@ -197,10 +197,10 @@
 
 /* Helper for df_compute_accessed_bytes.  Ref is a naked subreg.
    Return true if this effects the entire reg in REF. Return false if
-   otherwise and set START_BYTE and LAST_BYTE.  */ 
+   otherwise and set START_BYTE and LAST_BYTE.  */
 
-static bool 
-df_compute_accessed_bytes_subreg (df_ref ref, unsigned int *start_byte, 
+static bool
+df_compute_accessed_bytes_subreg (df_ref ref, unsigned int *start_byte,
 				  unsigned int *last_byte)
 
 {
@@ -231,7 +231,7 @@
   /* Defs and uses are different in the amount of the reg that touch.  */
   if (DF_REF_REG_DEF_P (ref))
     {
-      /* This is an lvalue.  */ 
+      /* This is an lvalue.  */
 
       if (m2_size > UNITS_PER_WORD)
 	{
@@ -239,23 +239,23 @@
 	     Look at the bytes named by the subreg, and expand it to
 	     cover a UNITS_PER_WORD part of register X.  That part of
 	     register X is clobbered, the rest is not.
-	     
+
 	     E.g., (subreg:SI (reg:DI X) 0), where UNITS_PER_WORD is the
 	     size of SImode, clobbers the first SImode part of X, and does
 	     not affect the second SImode part.
-	     
+
 	     E.g., (subreg:QI (reg:DI X) 0), where UNITS_PER_WORD is the
 	     size of SImode, clobbers the first SImode part of X, and does
 	     not affect the second SImode part.  Here the QImode byte is
 	     expanded to a UNITS_PER_WORD portion of the register for
 	     purposes of determining what is clobbered.
-	     
+
 	     If this is an rvalue, then it touches just the bytes that it
 	     talks about.  */
 	  int offset = SUBREG_BYTE (reg);
-	  
+
 	  start = offset & ~(UNITS_PER_WORD - 1);
-	  last = (offset + m1_size + UNITS_PER_WORD - 1) 
+	  last = (offset + m1_size + UNITS_PER_WORD - 1)
 	    & ~(UNITS_PER_WORD - 1);
 	}
       else
@@ -264,7 +264,7 @@
 	   X.  */
 	return true;
     }
-  else 
+  else
     {
       /* This is an rvalue. It touches just the bytes they explicitly
 	 mentioned.  */
@@ -272,9 +272,9 @@
       start = offset;
       last = start + m1_size;
     }
-  
+
   if (dump_file)
-    fprintf (dump_file, "    cpb subreg regno=%d start=%d last=%d\n", 
+    fprintf (dump_file, "    cpb subreg regno=%d start=%d last=%d\n",
 	     DF_REF_REGNO (ref), start, last);
 
   *start_byte = start;
@@ -299,15 +299,15 @@
    in, START_BYTE and LAST_BYTE are set to 0 and false is returned.
    This means that this use can be ignored.  */
 
-bool 
-df_compute_accessed_bytes (df_ref ref, enum df_mm mm, 
-			   unsigned int *start_byte, 
+bool
+df_compute_accessed_bytes (df_ref ref, enum df_mm mm,
+			   unsigned int *start_byte,
 			   unsigned int *last_byte)
 {
   if (!dbg_cnt (df_byte_scan))
     return true;
 
-  if (!DF_REF_REG_DEF_P (ref) 
+  if (!DF_REF_REG_DEF_P (ref)
       && DF_REF_FLAGS_IS_SET (ref, DF_REF_READ_WRITE))
     {
       if (DF_REF_FLAGS_IS_SET (ref, DF_REF_PRE_POST_MODIFY))
@@ -331,7 +331,7 @@
   if (DF_REF_FLAGS_IS_SET (ref, DF_REF_SIGN_EXTRACT | DF_REF_ZERO_EXTRACT))
     return df_compute_accessed_bytes_extract (ref, mm, start_byte, last_byte);
   else if (DF_REF_FLAGS_IS_SET (ref, DF_REF_STRICT_LOW_PART))
-    return df_compute_accessed_bytes_strict_low_part (ref, 
+    return df_compute_accessed_bytes_strict_low_part (ref,
 						      start_byte, last_byte);
   else if (GET_CODE (DF_REF_REG (ref)) == SUBREG)
     return df_compute_accessed_bytes_subreg (ref, start_byte, last_byte);