http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52294
Steven Bosscher <steven at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |rearnsha at gcc dot | |gnu.org, steven at gcc dot | |gnu.org --- Comment #3 from Steven Bosscher <steven at gcc dot gnu.org> 2012-02-18 12:27:50 UTC --- Richard, I suppose you mean the problem is in this define_insn: (define_insn "*thumb1_ashlsi3" [(set (match_operand:SI 0 "register_operand" "=l,l") (ashift:SI (match_operand:SI 1 "register_operand" "l,0") (match_operand:SI 2 "nonmemory_operand" "N,l")))] "TARGET_THUMB1" "lsl\\t%0, %1, %2" [(set_attr "length" "2") (set_attr "conds" "set")]) which should set "length" depending on the operands? (BTW when should ARM_LSL_NAME be used instead of "lsl"? Or is ARM_LSL_NAME not relevant for Thumb?)