Commit 7ac1b8a0 by H.J. Lu Committed by H.J. Lu

Add testcases for PRs 47449/47446.

2011-08-06  H.J. Lu  <hongjiu.lu@intel.com>

	PR middle-end/47449
	* gcc.target/i386/pr47449.c: New.

	PR target/47446
	* gcc.dg/pr47446-1.c: New.
	* gcc.dg/pr47446-2.c: Likewise.

From-SVN: r177512
parent 08094409
2011-08-06 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/47449
* gcc.target/i386/pr47449.c: New.
PR target/47446
* gcc.dg/pr47446-1.c: New.
* gcc.dg/pr47446-2.c: Likewise.
2011-08-06 H.J. Lu <hongjiu.lu@intel.com>
PR target/47766
* gcc.dg/pr47766.c: New.
......
/* { dg-do assemble } */
/* { dg-options "-O2" } */
extern void abort (void);
enum
{
__GCONV_OK = 0,
__GCONV_NOCONV,
__GCONV_NODB,
__GCONV_NOMEM,
__GCONV_EMPTY_INPUT,
__GCONV_FULL_OUTPUT,
__GCONV_ILLEGAL_INPUT,
__GCONV_INCOMPLETE_INPUT,
__GCONV_ILLEGAL_DESCRIPTOR,
__GCONV_INTERNAL_ERROR
};
int
foo (int result)
{
int irreversible = 0;
switch (result)
{
case __GCONV_ILLEGAL_INPUT:
irreversible = -1L;
break;
case __GCONV_FULL_OUTPUT:
irreversible = -2L;
break;
case __GCONV_INCOMPLETE_INPUT:
irreversible = -3L;
break;
case __GCONV_EMPTY_INPUT:
case __GCONV_OK:
break;
default:
abort ();
}
return irreversible;
}
/* { dg-do assemble } */
/* { dg-require-effective-target fpic } */
/* { dg-options "-O2 -fpic" } */
extern void abort (void);
enum
{
__GCONV_OK = 0,
__GCONV_NOCONV,
__GCONV_NODB,
__GCONV_NOMEM,
__GCONV_EMPTY_INPUT,
__GCONV_FULL_OUTPUT,
__GCONV_ILLEGAL_INPUT,
__GCONV_INCOMPLETE_INPUT,
__GCONV_ILLEGAL_DESCRIPTOR,
__GCONV_INTERNAL_ERROR
};
int
foo (int result)
{
int irreversible = 0;
switch (result)
{
case __GCONV_ILLEGAL_INPUT:
irreversible = -1L;
break;
case __GCONV_FULL_OUTPUT:
irreversible = -2L;
break;
case __GCONV_INCOMPLETE_INPUT:
irreversible = -3L;
break;
case __GCONV_EMPTY_INPUT:
case __GCONV_OK:
break;
default:
abort ();
}
return irreversible;
}
/* { dg-do compile } */
/* { dg-options "-O2" } */
void bar (void *, void *);
int
foo (void *p1, void *p2)
{
int ret1, ret2;
__asm ("" : "=D" (ret1), "=S" (ret2));
bar (p1, p2);
return ret1 + ret2;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment