Boris Boesler <baem...@gmx.de> writes: > Am 10.06.2010 um 15:27 schrieb Ian Lance Taylor: > >> Boris Boesler <baem...@gmx.de> writes: >> >>> I get an internal compiler error with gcc-4.2.1 and my own back-end >>> when I support conditional execution: >>> >>> ../build/gcc/cc1 -Wall -O1 -o bug.O1.s bug.c >>> >>> bug.c: In function ‘cond_assign_les0’: >>> bug.c:13: internal compiler error: in elim_reg_cond, at flow.c:3486 >> >> What is 'x' when that error occurs? From a quick glance at the code >> that can only happen if your backend has somehow built a conditional >> with a component which is not a conditional. > > I don't really know what 'x' is (but its code is 0/UnKnown);
The first step to debugging this kind of problem is figuring what 'x' is. If you use gdb, then your gcc object directory will have a .gdbinit file. When you run gdb on cc1, you can say "print x" and then "pr" to see the value of 'x'. More at http://gcc.gnu.org/wiki/DebuggingGCC . I don't see anything wrong with your code. Ian