This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug rtl-optimization/24626] [4.1 Regression] internal compiler error: verify_flow_info failed



------- Comment #10 from pinskia at gcc dot gnu dot org  2005-11-19 02:31 -------
Here is a shorter testcase:
long fff(int*);

long F2(int *node)
{
 long call_result = 0;

 if (call_result = fff(node))
  goto error_free_node;

 T(node);
 return 0;

error_free_node:
 T(node);
 return call_result;
}
-------

The problem is related to that instruction pattern in comment #9, for some
reason we think it is just a jump so we remove the fall through edge and BB and
then we ICE as we have a conditional jump and only one edge.

any_condjump_p returns the correct value of one but cleanup edges must use a
different function to check for this.  Looking more into this.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24626


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]