diff options
author | Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> | 2023-01-08 14:03:49 +0900 |
---|---|---|
committer | Max Filippov <jcmvbkbc@gmail.com> | 2023-01-08 14:14:39 -0800 |
commit | e3a4bd0bbdccdde0cff85f93064b01a44fb10d2a (patch) | |
tree | af5850f8f6f9e67c813cfad94e50d3dc3763edab /gcc/ada/debug.adb | |
parent | d901bf8a44a85e1285b7f678056aa2eed0118f56 (diff) | |
download | gcc-e3a4bd0bbdccdde0cff85f93064b01a44fb10d2a.zip gcc-e3a4bd0bbdccdde0cff85f93064b01a44fb10d2a.tar.gz gcc-e3a4bd0bbdccdde0cff85f93064b01a44fb10d2a.tar.bz2 |
xtensa: Optimize bitwise splicing operation
This patch optimizes the operation of cutting and splicing two register
values at a specified bit position, in other words, combining (bitwise
ORing) bits 0 through (C-1) of the register with bits C through 31
of the other, where C is the specified immediate integer 17 through 31.
This typically applies to signed copy of floating point number and
__builtin_return_address() if the windowed register ABI, and saves one
instruction compared to four shifts and a bitwise OR by the default RTL
combination pass.
gcc/ChangeLog:
* config/xtensa/xtensa.md (*splice_bits):
New insn_and_split pattern.
Diffstat (limited to 'gcc/ada/debug.adb')
0 files changed, 0 insertions, 0 deletions