This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/50712] [4.7 regression] invalid argument to gimple call
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 13 Oct 2011 10:10:50 +0000
- Subject: [Bug middle-end/50712] [4.7 regression] invalid argument to gimple call
- Auto-submitted: auto-generated
- References: <bug-50712-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50712
Richard Guenther <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |hubicka at gcc dot gnu.org
--- Comment #3 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-10-13 10:10:50 UTC ---
More likely caused by adding checking to pass_split_functions. It splits
MSVCRT_vfprintf_s (struct MSVCRT_FILE * file, const char * format, char *
valist)
{
int D.2058;
<bb 2>:
if (file_2(D) == 0B)
goto <bb 3>;
else
goto <bb 4>;
<bb 3>:
MSVCRT__invalid_parameter (0B, 0B, 0B, 0, 0);
goto <bb 5>;
<bb 4>:
D.2058_4 = pf_printf_a (&valist);
<bb 5>:
# D.2058_1 = PHI <-1(3), D.2058_4(4)>
return D.2058_1;
to
MSVCRT_vfprintf_s (struct MSVCRT_FILE * file, const char * format, char *
valist)
{
int D.2058;
<bb 2>:
if (file_2(D) == 0B)
goto <bb 3>;
else
goto <bb 4>;
<bb 3>:
D.2058_5 = MSVCRT_vfprintf_s.part.0 (file_2(D), format_3(D), valist);
goto <bb 5>;
<bb 4>:
D.2058_4 = pf_printf_a (&valist);
<bb 5>:
# D.2058_1 = PHI <D.2058_5(3), D.2058_4(4)>
return D.2058_1;
but fails to realize that for passing the address-taken parameter valist
it has to gimplify it.