------- Comment #7 from rearnsha at gcc dot gnu dot org 2009-07-24 14:08 ------- (In reply to comment #6) > In fact even the compare isn't a separate insn:
There's a reason for that. If you separate compares from uses of the flags then reload may end up inserting add or mov instructions in between the comparison and its use. Since thumb1 does not have non-flag setting versions of those instructions (at least for the lo-regs case) we thus cannot separate the two. To mitigate this, there are already a number of patterns in the thumb description that try to exploit flag-setting instructions more efficiently, but there are bound to be more cases that are not yet handled. Beware, however, of generating sequences that are impossible to reload. -- rearnsha at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |rearnsha at gcc dot gnu dot | |org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40835