Message ID | 53747F0B.2060107@arm.com |
---|---|
State | New |
Headers | show |
On 15/05/14 09:47, Kyrill Tkachov wrote: > Hi all, > > Shifted arithmetic operations can never be encoded in 16-bits in and therefore > can not appear in Thumb2 IT blocks under ARMv8-A rules (and the -mrestrict-it > rules). This patch adjusts the relevant pattern for that purpose. > > Tested and bootstrapped on arm-none-linux-gnueabihf and made sure no performance > regressions on a number of benchmarks. > > This is a bug (not wrong-code though) in -mrestrict-it that affects 4.9 as well > as trunk, so is it ok to backport it there? > > > Thanks, > Kyrill > > 2014-05-15 Kyrylo Tkachov <kyrylo.tkachov@arm.com> > > * config/arm/arm.md (arith_shiftsi): Do not predicate for > arm_restrict_it. > OK both. R.
commit 8d54d43e84925ee5c53e70ecc7036bc5a7e867ba Author: Kyrylo Tkachov <kyrylo.tkachov@arm.com> Date: Fri Apr 4 16:10:39 2014 +0100 [ARM] Adjust arith_shiftsi for arm_restrict_it diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md index 38ca058..9468c70 100644 --- a/gcc/config/arm/arm.md +++ b/gcc/config/arm/arm.md @@ -9860,6 +9860,7 @@ "TARGET_32BIT" "%i1%?\\t%0, %2, %4%S3" [(set_attr "predicable" "yes") + (set_attr "predicable_short_it" "no") (set_attr "shift" "4") (set_attr "arch" "a,t2,t2,a") ;; Thumb2 doesn't allow the stack pointer to be used for