OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gcc.c-torture/] [execute/] [builtins/] [lib/] [strncat.c] - Blame information for rev 688

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 688 jeremybenn
extern void abort(void);
2
extern int inside_main;
3
 
4
typedef __SIZE_TYPE__ size_t;
5
 
6
__attribute__ ((__noinline__))
7
char *
8
strncat (char *s1, const char *s2, size_t n)
9
{
10
  char *dest = s1;
11
  char c = '\0';
12
#ifdef __OPTIMIZE__
13
  if (inside_main)
14
    abort();
15
#endif
16
  while (*s1) s1++;
17
  c = '\0';
18
  while (n > 0)
19
    {
20
      c = *s2++;
21
      *s1++ = c;
22
      if (c == '\0')
23
        return dest;
24
      n--;
25
    }
26
  if (c != '\0')
27
    *s1 = '\0';
28
  return dest;
29
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.