aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/dependency.cc
diff options
context:
space:
mode:
authorJiufu Guo <guojiufu@linux.ibm.com>2023-12-13 08:10:25 +0800
committerguojiufu <guojiufu@linux.ibm.com>2023-12-13 08:53:10 +0800
commit97b3b38e5faec2b5486368f5a0ffb16eb4ab4190 (patch)
treecb008b702005b4b46e31957f46ac1227bfb52415 /gcc/fortran/dependency.cc
parent8a5d6ce0e83c17a48541d27758291d6f7ef5c829 (diff)
downloadgcc-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