[PATCH] iconv: use bswap_32 instead of __builtin_bswap32

Collin Funk collin.funk1@gmail.com
Mon Aug 4 02:17:37 GMT 2025


This file uses a mix of both functions, perfer the non-builtin version.
---
 iconv/gconv_simple.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/iconv/gconv_simple.c b/iconv/gconv_simple.c
index 1e29eb1a80..0ebdccee90 100644
--- a/iconv/gconv_simple.c
+++ b/iconv/gconv_simple.c
@@ -90,7 +90,7 @@ internal_ucs4_loop (struct __gconv_step *step,
   for (cnt = 0; cnt < n_convert; ++cnt, inptr += 4, outptr += 4)
     {
       uint32_t val = get32 (inptr);
-      put32 (outptr, __builtin_bswap32 (val));
+      put32 (outptr, bswap_32 (val));
     }
 
   *inptrp = inptr;
@@ -196,7 +196,7 @@ ucs4_internal_loop (struct __gconv_step *step,
     {
       uint32_t inval = get32 (inptr);
 #if __BYTE_ORDER == __LITTLE_ENDIAN
-      inval = __builtin_bswap32 (inval);
+      inval = bswap_32 (inval);
 #endif
 
       if (__glibc_unlikely (inval > 0x7fffffff))
@@ -337,7 +337,7 @@ internal_ucs4le_loop (struct __gconv_step *step,
   for (cnt = 0; cnt < n_convert; ++cnt, inptr += 4, outptr += 4)
     {
       uint32_t val = get32 (inptr);
-      put32 (outptr, __builtin_bswap32 (val));
+      put32 (outptr, bswap_32 (val));
     }
 
   *inptrp = inptr;
@@ -442,7 +442,7 @@ ucs4le_internal_loop (struct __gconv_step *step,
     {
       uint32_t inval = get32 (inptr);
 #if __BYTE_ORDER == __BIG_ENDIAN
-      inval = __builtin_bswap32 (inval);
+      inval = bswap_32 (inval);
 #endif
 
       if (__glibc_unlikely (inval > 0x7fffffff))
-- 
2.50.1



More information about the Libc-alpha mailing list