]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - iconvdata/iso-2022-cn.c
hurd: Fix SS_ONSTACK support
[thirdparty/glibc.git] / iconvdata / iso-2022-cn.c
index b8d10062a44ee650d278264bfa02eb3aa56a62e9..9661e06d75a08e6cb8e91d3fcab07be22ae08810 100644 (file)
@@ -1,5 +1,5 @@
 /* Conversion module for ISO-2022-CN.
-   Copyright (C) 1999, 2000-2002, 2007, 2008 Free Software Foundation, Inc.
+   Copyright (C) 1999-2019 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999.
 
@@ -44,6 +44,7 @@
 #define DEFINE_FINI            1
 #define FROM_LOOP              from_iso2022cn_loop
 #define TO_LOOP                        to_iso2022cn_loop
+#define ONE_DIRECTION                  0
 #define FROM_LOOP_MIN_NEEDED_FROM      1
 #define FROM_LOOP_MAX_NEEDED_FROM      4
 #define FROM_LOOP_MIN_NEEDED_TO                4
@@ -88,7 +89,7 @@ enum
        {                                                                     \
          /* We are not in the initial state.  To switch back we have         \
             to emit `SI'.  */                                                \
-         if (__builtin_expect (outbuf == outend, 0))                         \
+         if (__glibc_unlikely (outbuf == outend))                            \
            /* We don't have enough room in the output buffer.  */            \
            status = __GCONV_FULL_OUTPUT;                                     \
          else                                                                \
@@ -121,7 +122,7 @@ enum
     uint32_t ch = *inptr;                                                    \
                                                                              \
     /* This is a 7bit character set, disallow all 8bit characters.  */       \
-    if (__builtin_expect (ch >= 0x7f, 0))                                    \
+    if (__glibc_unlikely (ch >= 0x7f))                                       \
       STANDARD_FROM_LOOP_ERR_HANDLER (1);                                    \
                                                                              \
     /* Recognize escape sequences.  */                                       \
@@ -246,7 +247,7 @@ enum
          {                                                                   \
            *outptr++ = SI;                                                   \
            set = ASCII_set;                                                  \
-           if (__builtin_expect (outptr == outend, 0))                       \
+           if (__glibc_unlikely (outptr == outend))                          \
              {                                                               \
                result = __GCONV_FULL_OUTPUT;                                 \
                break;                                                        \
@@ -319,7 +320,7 @@ enum
              {                                                               \
                const char *escseq;                                           \
                                                                              \
-               if (__builtin_expect (outptr + 4 > outend, 0))                \
+               if (__glibc_unlikely (outptr + 4 > outend))                   \
                  {                                                           \
                    result = __GCONV_FULL_OUTPUT;                             \
                    break;                                                    \
@@ -342,7 +343,7 @@ enum
                                                                              \
            if (used == CNS11643_2_set)                                       \
              {                                                               \
-               if (__builtin_expect (outptr + 2 > outend, 0))                \
+               if (__glibc_unlikely (outptr + 2 > outend))                   \
                  {                                                           \
                    result = __GCONV_FULL_OUTPUT;                             \
                    break;                                                    \
@@ -357,7 +358,7 @@ enum
                   SO charset.  */                                            \
                if (set == ASCII_set)                                         \
                  {                                                           \
-                   if (__builtin_expect (outptr + 1 > outend, 0))            \
+                   if (__glibc_unlikely (outptr + 1 > outend))               \
                      {                                                       \
                        result = __GCONV_FULL_OUTPUT;                         \
                        break;                                                \
@@ -368,13 +369,13 @@ enum
                                                                              \
            /* Always test the length here since we have used up all the      \
               guaranteed output buffer slots.  */                            \
-           if (__builtin_expect (outptr + 2 > outend, 0))                    \
+           if (__glibc_unlikely (outptr + 2 > outend))                       \
              {                                                               \
                result = __GCONV_FULL_OUTPUT;                                 \
                break;                                                        \
              }                                                               \
          }                                                                   \
-       else if (__builtin_expect (outptr + 2 > outend, 0))                   \
+       else if (__glibc_unlikely (outptr + 2 > outend))                      \
          {                                                                   \
            result = __GCONV_FULL_OUTPUT;                                     \
            break;                                                            \