* gcc.c-torture/execute/string-opt-1.c: New test.

From-SVN: r37301
This commit is contained in:
Kaveh R. Ghazi 2000-11-07 22:13:58 +00:00 committed by Kaveh Ghazi
parent 8735550f7f
commit a7c683a887
2 changed files with 42 additions and 0 deletions

View File

@ -1,3 +1,7 @@
2000-11-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* gcc.c-torture/execute/string-opt-1.c: New test.
2000-11-07 Jeffrey Oldham <oldham@oz.codesourcery.com>
* gcc.c-torture/execute/va-arg-15.x: New file. Fails on

View File

@ -0,0 +1,38 @@
/* Copyright (C) 2000 Free Software Foundation.
Ensure all expected transformations of builtin strstr occur and
perform correctly.
Written by Kaveh R. Ghazi, 11/6/2000. */
extern void abort(void);
extern char *strstr (const char *, const char *);
int main()
{
const char *const foo = "hello world";
if (strstr (foo, "") != foo)
abort();
if (strstr (foo + 4, "") != foo + 4)
abort();
if (strstr (foo, "h") != foo)
abort();
if (strstr (foo, "w") != foo + 6)
abort();
if (strstr (foo + 6, "o") != foo + 7)
abort();
return 0;
}
#ifdef __OPTIMIZE__
/* When optimizing, all the above cases should be transformed into
something else. So any remaining calls to the original function
should abort. */
char *
strstr(const char *s1, const char *s2)
{
abort();
}
#endif