re PR middle-end/41734 (ICE in cgraph_mark_functions_to_output, at cgraphunit.c:1137 with -fwhopr)

2010-04-23  Richard Guenther  <rguenther@suse.de>

	PR lto/41734
	* gcc.dg/lto/20100423-2_0.c: New testcase.
	* gcc.dg/lto/20100423-2_0.c: Likewise.

From-SVN: r158670
This commit is contained in:
Richard Guenther 2010-04-23 15:32:22 +00:00 committed by Richard Biener
parent 8fd8a06f0e
commit 7a38245d60
3 changed files with 51 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2010-04-23 Richard Guenther <rguenther@suse.de>
PR lto/41734
* gcc.dg/lto/20100423-2_0.c: New testcase.
* gcc.dg/lto/20100423-2_0.c: Likewise.
2010-04-23 Richard Guenther <rguenther@suse.de>
PR lto/43455

View File

@ -0,0 +1,25 @@
/* { dg-lto-do link } */
/* { dg-lto-options {{-O2 -flto} {-O2 -fwhopr} {-O3 -flto} {-O3 -fwhopr}} } */
typedef unsigned int size_t;
extern struct _IO_FILE *stderr;
typedef unsigned char uch;
extern uch inbuf[];
unsigned insize;
char *progname;
extern void read_error (void);
int fill_inbuf(int eof_ok)
{
if (insize == 0)
{
if (eof_ok)
return -1;
read_error();
}
return inbuf[0];
}
void read_error(void)
{
__builtin_fprintf(stderr, "\n%s: ", progname);
}

View File

@ -0,0 +1,20 @@
typedef unsigned char uch;
uch inbuf[8];
extern unsigned insize;
unsigned inptr;
int to_stdout = 0;
int force = 0;
extern int fill_inbuf (int);
int get_method(int in)
{
char magic[2];
if (force && to_stdout)
magic[0] = (char)(inptr < insize ? inbuf[inptr++] : fill_inbuf(1));
else
magic[1] = (char)(inptr < insize ? inbuf[inptr++] : fill_inbuf(0));
}
int main()
{
return 0;
}