Blame SOURCES/glibc-rh1505492-undef-14.patch

147e83
commit 27822ce67fbf7f2b204992a410e7da2e8c1e2607
147e83
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
147e83
Date:   Wed Mar 26 15:37:35 2014 -0500
147e83
147e83
    Define _STRING_ARCH_unaligned unconditionally
147e83
    
147e83
    This patch defines _STRING_ARCH_unaligned to 0 on default bits/string.h
147e83
    header to avoid undefined compiler warnings on platforms that do not
147e83
    define it.  It also make adjustments in code where tests checked if macro
147e83
    existed or not.
147e83
147e83
Conflicts:
147e83
	resolv/res_send.c
147e83
147e83
Conflict due to stub resolver rebase in glibc-rh677316-resolv.patch.
147e83
147e83
diff --git a/bits/string.h b/bits/string.h
147e83
index f8630d2c52a9298a..b88a6bc601803f68 100644
147e83
--- a/bits/string.h
147e83
+++ b/bits/string.h
147e83
@@ -8,5 +8,7 @@
147e83
 #ifndef _BITS_STRING_H
147e83
 #define _BITS_STRING_H	1
147e83
 
147e83
+/* Define if architecture can access unaligned multi-byte variables.  */
147e83
+#define _STRING_ARCH_unaligned   0
147e83
 
147e83
 #endif /* bits/string.h */
147e83
diff --git a/crypt/sha256.c b/crypt/sha256.c
147e83
index aea94651391f19ae..1cbd2bc8381d6778 100644
147e83
--- a/crypt/sha256.c
147e83
+++ b/crypt/sha256.c
147e83
@@ -124,7 +124,7 @@ __sha256_finish_ctx (ctx, resbuf)
147e83
   memcpy (&ctx->buffer[bytes], fillbuf, pad);
147e83
 
147e83
   /* Put the 64-bit file length in *bits* at the end of the buffer.  */
147e83
-#ifdef _STRING_ARCH_unaligned
147e83
+#if _STRING_ARCH_unaligned
147e83
   ctx->buffer64[(bytes + pad) / 8] = SWAP64 (ctx->total64 << 3);
147e83
 #else
147e83
   ctx->buffer32[(bytes + pad + 4) / 4] = SWAP (ctx->total[TOTAL64_low] << 3);
147e83
diff --git a/iconv/gconv_simple.c b/iconv/gconv_simple.c
147e83
index 48932ee695083595..03fa5f2e2c771ebc 100644
147e83
--- a/iconv/gconv_simple.c
147e83
+++ b/iconv/gconv_simple.c
147e83
@@ -112,7 +112,7 @@ internal_ucs4_loop (struct __gconv_step *step,
147e83
   return result;
147e83
 }
147e83
 
147e83
-#ifndef _STRING_ARCH_unaligned
147e83
+#if !_STRING_ARCH_unaligned
147e83
 static inline int
147e83
 __attribute ((always_inline))
147e83
 internal_ucs4_loop_unaligned (struct __gconv_step *step,
147e83
@@ -289,7 +289,7 @@ ucs4_internal_loop (struct __gconv_step *step,
147e83
   return result;
147e83
 }
147e83
 
147e83
-#ifndef _STRING_ARCH_unaligned
147e83
+#if !_STRING_ARCH_unaligned
147e83
 static inline int
147e83
 __attribute ((always_inline))
147e83
 ucs4_internal_loop_unaligned (struct __gconv_step *step,
147e83
@@ -478,7 +478,7 @@ internal_ucs4le_loop (struct __gconv_step *step,
147e83
   return result;
147e83
 }
147e83
 
147e83
-#ifndef _STRING_ARCH_unaligned
147e83
+#if !_STRING_ARCH_unaligned
147e83
 static inline int
147e83
 __attribute ((always_inline))
147e83
 internal_ucs4le_loop_unaligned (struct __gconv_step *step,
147e83
@@ -660,7 +660,7 @@ ucs4le_internal_loop (struct __gconv_step *step,
147e83
   return result;
147e83
 }
147e83
 
147e83
-#ifndef _STRING_ARCH_unaligned
147e83
+#if !_STRING_ARCH_unaligned
147e83
 static inline int
147e83
 __attribute ((always_inline))
147e83
 ucs4le_internal_loop_unaligned (struct __gconv_step *step,
147e83
diff --git a/iconv/loop.c b/iconv/loop.c
147e83
index e11e86b5ecd4abd9..7b2499a3d0657265 100644
147e83
--- a/iconv/loop.c
147e83
+++ b/iconv/loop.c
147e83
@@ -63,7 +63,7 @@
147e83
    representations with a fixed width of 2 or 4 bytes.  But if we cannot
147e83
    access unaligned memory we still have to read byte-wise.  */
147e83
 #undef FCTNAME2
147e83
-#if defined _STRING_ARCH_unaligned || !defined DEFINE_UNALIGNED
147e83
+#if _STRING_ARCH_unaligned || !defined DEFINE_UNALIGNED
147e83
 /* We can handle unaligned memory access.  */
147e83
 # define get16(addr) *((const uint16_t *) (addr))
147e83
 # define get32(addr) *((const uint32_t *) (addr))
147e83
@@ -342,7 +342,7 @@ FCTNAME (LOOPFCT) (struct __gconv_step *step,
147e83
 
147e83
 /* Include the file a second time to define the function to handle
147e83
    unaligned access.  */
147e83
-#if !defined DEFINE_UNALIGNED && !defined _STRING_ARCH_unaligned \
147e83
+#if !defined DEFINE_UNALIGNED && !_STRING_ARCH_unaligned \
147e83
     && MIN_NEEDED_INPUT != 1 && MAX_NEEDED_INPUT % MIN_NEEDED_INPUT == 0 \
147e83
     && MIN_NEEDED_OUTPUT != 1 && MAX_NEEDED_OUTPUT % MIN_NEEDED_OUTPUT == 0
147e83
 # undef get16
147e83
diff --git a/iconv/skeleton.c b/iconv/skeleton.c
147e83
index 934b1fdde8d277df..176436a4c81f071b 100644
147e83
--- a/iconv/skeleton.c
147e83
+++ b/iconv/skeleton.c
147e83
@@ -203,7 +203,7 @@
147e83
 /* Define macros which can access unaligned buffers.  These macros are
147e83
    supposed to be used only in code outside the inner loops.  For the inner
147e83
    loops we have other definitions which allow optimized access.  */
147e83
-#ifdef _STRING_ARCH_unaligned
147e83
+#if _STRING_ARCH_unaligned
147e83
 /* We can handle unaligned memory access.  */
147e83
 # define get16u(addr) *((const uint16_t *) (addr))
147e83
 # define get32u(addr) *((const uint32_t *) (addr))
147e83
@@ -522,7 +522,7 @@ FUNCTION_NAME (struct __gconv_step *step, struct __gconv_step_data *data,
147e83
 	 INTERNAL, for which the subexpression evaluates to 1, but INTERNAL
147e83
 	 buffers are always aligned correctly.  */
147e83
 #define POSSIBLY_UNALIGNED \
147e83
-  (!defined _STRING_ARCH_unaligned					      \
147e83
+  (!_STRING_ARCH_unaligned					              \
147e83
    && (((FROM_LOOP_MIN_NEEDED_FROM != 1					      \
147e83
 	 && FROM_LOOP_MAX_NEEDED_FROM % FROM_LOOP_MIN_NEEDED_FROM == 0)	      \
147e83
 	&& (FROM_LOOP_MIN_NEEDED_TO != 1				      \
147e83
diff --git a/nscd/nscd_gethst_r.c b/nscd/nscd_gethst_r.c
147e83
index 41488ed6c033ffcd..5fe9f2f62fa28fd4 100644
147e83
--- a/nscd/nscd_gethst_r.c
147e83
+++ b/nscd/nscd_gethst_r.c
147e83
@@ -190,7 +190,7 @@ nscd_gethst_r (const char *key, size_t keylen, request_type type,
147e83
 	      goto out;
147e83
 	    }
147e83
 
147e83
-#ifndef _STRING_ARCH_unaligned
147e83
+#if !_STRING_ARCH_unaligned
147e83
 	  /* The aliases_len array in the mapped database might very
147e83
 	     well be unaligned.  We will access it word-wise so on
147e83
 	     platforms which do not tolerate unaligned accesses we
147e83
diff --git a/nscd/nscd_getserv_r.c b/nscd/nscd_getserv_r.c
147e83
index acf7e22f82582dbb..5880b1bc023d1c02 100644
147e83
--- a/nscd/nscd_getserv_r.c
147e83
+++ b/nscd/nscd_getserv_r.c
147e83
@@ -140,7 +140,7 @@ nscd_getserv_r (const char *crit, size_t critlen, const char *proto,
147e83
 				> recend, 0))
147e83
 	    goto out;
147e83
 
147e83
-#ifndef _STRING_ARCH_unaligned
147e83
+#if !_STRING_ARCH_unaligned
147e83
 	  /* The aliases_len array in the mapped database might very
147e83
 	     well be unaligned.  We will access it word-wise so on
147e83
 	     platforms which do not tolerate unaligned accesses we
147e83
diff --git a/nscd/nscd_helper.c b/nscd/nscd_helper.c
147e83
index 96fb93db768703cc..a46047b1fa0d502e 100644
147e83
--- a/nscd/nscd_helper.c
147e83
+++ b/nscd/nscd_helper.c
147e83
@@ -489,7 +489,7 @@ __nscd_cache_search (request_type type, const char *key, size_t keylen,
147e83
       struct hashentry *here = (struct hashentry *) (mapped->data + work);
147e83
       ref_t here_key, here_packet;
147e83
 
147e83
-#ifndef _STRING_ARCH_unaligned
147e83
+#if !_STRING_ARCH_unaligned
147e83
       /* Although during garbage collection when moving struct hashentry
147e83
 	 records around we first copy from old to new location and then
147e83
 	 adjust pointer from previous hashentry to it, there is no barrier
147e83
@@ -511,7 +511,7 @@ __nscd_cache_search (request_type type, const char *key, size_t keylen,
147e83
 	  struct datahead *dh
147e83
 	    = (struct datahead *) (mapped->data + here_packet);
147e83
 
147e83
-#ifndef _STRING_ARCH_unaligned
147e83
+#if !_STRING_ARCH_unaligned
147e83
 	  if ((uintptr_t) dh & (__alignof__ (*dh) - 1))
147e83
 	    return NULL;
147e83
 #endif
147e83
@@ -535,7 +535,7 @@ __nscd_cache_search (request_type type, const char *key, size_t keylen,
147e83
 	  struct hashentry *trailelem;
147e83
 	  trailelem = (struct hashentry *) (mapped->data + trail);
147e83
 
147e83
-#ifndef _STRING_ARCH_unaligned
147e83
+#if !_STRING_ARCH_unaligned
147e83
 	  /* We have to redo the checks.  Maybe the data changed.  */
147e83
 	  if ((uintptr_t) trailelem & (__alignof__ (*trailelem) - 1))
147e83
 	    return NULL;