diff options
author | Jiufu Guo <guojiufu@linux.ibm.com> | 2023-12-13 08:10:25 +0800 |
---|---|---|
committer | guojiufu <guojiufu@linux.ibm.com> | 2023-12-13 08:53:10 +0800 |
commit | 97b3b38e5faec2b5486368f5a0ffb16eb4ab4190 (patch) | |
tree | cb008b702005b4b46e31957f46ac1227bfb52415 /gcc/fortran/dependency.cc | |
parent | 8a5d6ce0e83c17a48541d27758291d6f7ef5c829 (diff) | |
download | gcc-97b3b38e5faec2b5486368f5a0ffb16eb4ab4190.zip gcc-97b3b38e5faec2b5486368f5a0ffb16eb4ab4190.tar.gz gcc-97b3b38e5faec2b5486368f5a0ffb16eb4ab4190.tar.bz2 |
rs6000: accurate num_insns_constant_gpr
Trunk gcc supports more constants to be built via two instructions:
e.g. "li/lis; xori/xoris/rldicl/rldicr/rldic".
And then num_insns_constant should also be updated.
Function "rs6000_emit_set_long_const" is used to build complicated
constants; and "num_insns_constant_gpr" is used to compute 'how
many instructions are needed" to build the constant. So, these
two functions should be aligned.
The idea of this patch is: to reuse "rs6000_emit_set_long_const" to
compute/record the instruction number(when computing the insn_num,
then do not emit instructions).
gcc/ChangeLog:
* config/rs6000/rs6000.cc (rs6000_emit_set_long_const): Add new
parameter to record number of instructions to build the constant.
(num_insns_constant_gpr): Call rs6000_emit_set_long_const to compute
num_insn.
Diffstat (limited to 'gcc/fortran/dependency.cc')
0 files changed, 0 insertions, 0 deletions