diff options
author | Jiufu Guo <guojiufu@linux.ibm.com> | 2023-01-10 21:40:48 +0800 |
---|---|---|
committer | guojiufu <guojiufu@linux.ibm.com> | 2023-10-08 10:17:08 +0800 |
commit | 3da32cc3d1e48f2eac1630e627d34723b9536166 (patch) | |
tree | 5b67a8de91268374a4b258bac2d94a57576ee4d9 /gcc/fortran/parse.cc | |
parent | 8f1a70a4fbcc6441c70da60d4ef6db1e5635e18a (diff) | |
download | gcc-3da32cc3d1e48f2eac1630e627d34723b9536166.zip gcc-3da32cc3d1e48f2eac1630e627d34723b9536166.tar.gz gcc-3da32cc3d1e48f2eac1630e627d34723b9536166.tar.bz2 |
rs6000: build constant via li/lis;rldic
This patch checks if a constant is possible to be built by "li;rldic".
Only need to take care of "negative li", other forms do not need to check.
For example, "negative lis" is just a "negative li" with an additional shift.
gcc/ChangeLog:
* config/rs6000/rs6000.cc (can_be_built_by_li_and_rldic): New function.
(rs6000_emit_set_long_const): Call can_be_built_by_li_and_rldic.
gcc/testsuite/ChangeLog:
* gcc.target/powerpc/const-build.c: Add more tests.
Diffstat (limited to 'gcc/fortran/parse.cc')
0 files changed, 0 insertions, 0 deletions