aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-structalias.cc
diff options
context:
space:
mode:
authorJiufu Guo <guojiufu@linux.ibm.com>2023-01-10 20:52:33 +0800
committerguojiufu <guojiufu@linux.ibm.com>2023-10-08 10:17:08 +0800
commit8f1a70a4fbcc6441c70da60d4ef6db1e5635e18a (patch)
treeec33e6489a2d4026ab4e14116360bd8ad5d4ca47 /gcc/tree-ssa-structalias.cc
parent6e5f627492ff547e3c2fc7782c232e77402ead62 (diff)
downloadgcc-8f1a70a4fbcc6441c70da60d4ef6db1e5635e18a.zip
gcc-8f1a70a4fbcc6441c70da60d4ef6db1e5635e18a.tar.gz
gcc-8f1a70a4fbcc6441c70da60d4ef6db1e5635e18a.tar.bz2
rs6000: build constant via li/lis;rldicl/rldicr
If a constant is possible left/right cleaned on a rotated value from a negative value of "li/lis". Then, using "li/lis ; rldicl/rldicr" to build the constant. gcc/ChangeLog: * config/rs6000/rs6000.cc (can_be_built_by_li_lis_and_rldicl): New function. (can_be_built_by_li_lis_and_rldicr): New function. (rs6000_emit_set_long_const): Call can_be_built_by_li_lis_and_rldicr and can_be_built_by_li_lis_and_rldicl. gcc/testsuite/ChangeLog: * gcc.target/powerpc/const-build.c: Add more tests.
Diffstat (limited to 'gcc/tree-ssa-structalias.cc')
0 files changed, 0 insertions, 0 deletions