aboutsummaryrefslogtreecommitdiff
path: root/gcc/value-range.h
diff options
context:
space:
mode:
authorDimitar Dimitrov <dimitar@dinux.eu>2022-09-22 23:08:43 +0300
committerDimitar Dimitrov <dimitar@dinux.eu>2022-10-09 14:38:34 +0300
commit73137f365a01327ae245fa0a9f0b127cb06e0cb3 (patch)
treeaa5f20dc7b5d3565ae5534a8fbe541c2f6f7f7c8 /gcc/value-range.h
parent66c48be23e0fa5ee7474b4b078e013f901c71eed (diff)
downloadgcc-73137f365a01327ae245fa0a9f0b127cb06e0cb3.zip
gcc-73137f365a01327ae245fa0a9f0b127cb06e0cb3.tar.gz
gcc-73137f365a01327ae245fa0a9f0b127cb06e0cb3.tar.bz2
pru: Optimize DI shifts
If the number of shift positions is a constant, then the DI shift operation is expanded to a sequence of 2 to 4 machine instructions. That is more efficient than the default action to call libgcc. gcc/ChangeLog: * config/pru/pru.md (lshrdi3): New expand pattern. (ashldi3): Ditto. gcc/testsuite/ChangeLog: * gcc.target/pru/ashiftdi-1.c: New test. * gcc.target/pru/lshiftrtdi-1.c: New test. Signed-off-by: Dimitar Dimitrov <dimitar@dinux.eu>
Diffstat (limited to 'gcc/value-range.h')
0 files changed, 0 insertions, 0 deletions