The negdi2 patterns for ARM and Thumb-2 are duplicated because Thumb-2 doesn't…
The negdi2 patterns for ARM and Thumb-2 are duplicated because Thumb-2 doesn't support RSC with an immediate. The negdi2 patterns for ARM and Thumb-2 are duplicated because Thumb-2 doesn't support RSC with an immediate. We can however emulate RSC with zero using a shifted SBC. If we add this to subsi3_carryin the negdi patterns can be merged, simplifying things a bit. This should generate identical code in all cases. gcc/ * config/arm/arm.md (subsi3_carryin): Add Thumb-2 RSC #0. (arm_negdi2) Rename to negdi2_insn, allow on Thumb-2. * config/arm/thumb2.md (thumb2_negdi2): Remove pattern. From-SVN: r243745
Showing
Please
register
or
sign in
to comment