aboutsummaryrefslogtreecommitdiff
path: root/gcc/json.cc
diff options
context:
space:
mode:
authorRichard Earnshaw <rearnsha@arm.com>2019-10-18 19:03:19 +0000
committerRichard Earnshaw <rearnsha@gcc.gnu.org>2019-10-18 19:03:19 +0000
commit0b478cddf9e95406cd865c94bf99705ec8acddde (patch)
treee4aea46ee82842c8dc421bca46b1c22e20ade936 /gcc/json.cc
parentf6ff841bc8dd87ce364deb217dc6d1ec5dc31de8 (diff)
downloadgcc-0b478cddf9e95406cd865c94bf99705ec8acddde.zip
gcc-0b478cddf9e95406cd865c94bf99705ec8acddde.tar.gz
gcc-0b478cddf9e95406cd865c94bf99705ec8acddde.tar.bz2
[arm] Add alternative canonicalizations for subtract-with-carry + shift
This patch adds a couple of alternative canonicalizations to allow combine to match a subtract-with-carry operation when one of the operands is shifted first. The most common case of this is when combining a sign-extend of one operand with a long-long value during subtraction. The RSC variant is only enabled for Arm, the SBC variant for any 32-bit compilation. * config/arm/arm.md (subsi3_carryin_shift_alt): New pattern. (rsbsi3_carryin_shift_alt): Likewise. From-SVN: r277176
Diffstat (limited to 'gcc/json.cc')
0 files changed, 0 insertions, 0 deletions