Skip to content

Commit 2f8283f

Browse files
author
GCC Administrator
committed
Daily bump.
1 parent 7b3af2b commit 2f8283f

File tree

12 files changed

+505
-1
lines changed

12 files changed

+505
-1
lines changed

ChangeLog

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
2025-12-15 Jose E. Marchesi <[email protected]>
2+
3+
* MAINTAINERS: Add myself to DCO section.
4+
15
2025-12-12 Pietro Monteiro <[email protected]>
26

37
* MAINTAINERS: add myself to write after approval

contrib/ChangeLog

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
2025-12-15 Joseph Myers <[email protected]>
2+
3+
* test_installed (--enable-plugin, --with-plugincc=)
4+
(--with-plugincflags=, --with-gmpinc=): New options.
5+
16
2025-12-12 mengqinggang <[email protected]>
27
Jiajie Chen <[email protected]>
38

gcc/ChangeLog

Lines changed: 282 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,285 @@
1+
2025-12-15 Martin Jambor <[email protected]>
2+
3+
PR ipa/107666
4+
* common.opt (fspeculatively-call-stored-functions): New.
5+
* cgraph.h (cgraph_simple_indirect_info): New fields rec_type and
6+
fld_offset.
7+
* ipa-prop.h (ipa_analyze_var_static_initializer): Declare.
8+
(ipa_dump_noted_record_fnptrs): Likewise.
9+
(ipa_debug_noted_record_fnptrs): Likewise.
10+
(ipa_single_noted_fnptr_in_record): Likewise.
11+
(ipa_free_noted_fnptr_calls): Likewise.
12+
* ipa-cp.cc (ipcp_generate_summary): Call
13+
ipa_analyze_var_static_initializer on each varbool node with a static
14+
initializer.
15+
* ipa-devirt.cc (struct devirt_stats): New type.
16+
(devirt_target_ok_p): New function.
17+
(ipa_devirt): Move statistics counters to the new structure. dump
18+
noted function pointers stored in records. Check for edge hotness
19+
first and for odr_types only for polymorphic edges. Moved a number of
20+
checks to devirt_target_ok_p. Also add speculative direct calls for
21+
non-polymorphic indirect ones when ipa_single_noted_fnptr_in_record
22+
finds a likely target. Call ipa_free_noted_fnptr_calls.
23+
(pass_ipa_devirt::gate): Also check the new flag.
24+
* ipa-prop.cc (noted_fnptr_store): New type.
25+
(struct noted_fnptr_hasher): Likewise.
26+
(noted_fnptr_hasher::hash): New function.
27+
(noted_fnptr_hasher::equal): Likewise.
28+
(noted_fnptrs_in_records): New.
29+
(is_func_ptr_from_record): New function.
30+
(ipa_analyze_indirect_call_uses): Also simple create indirect info
31+
structures with fnptr_loaded_from_record set.
32+
(note_fnptr_in_record): New function.
33+
(ipa_dump_noted_record_fnptrs): Likewise.
34+
(ipa_debug_noted_record_fnptrs): Likewise.
35+
(ipa_single_noted_fnptr_in_record): Likewise.
36+
(ipa_free_noted_fnptr_calls): Likewise.
37+
(ipa_analyze_stmt_uses): Also look for stroes of function pointers to
38+
record structures.
39+
(ipa_analyze_var_static_initializer): New function.
40+
(ipa_write_indirect_edge_info): Also stream fnptr_loaded_from_record
41+
indirec infos.
42+
(ipa_read_indirect_edge_info): Likewise.
43+
(ipa_prop_write_jump_functions): Also stream the contents of
44+
noted_fnptrs_in_records.
45+
(ipa_prop_read_section): Likewise.
46+
* opts.cc (default_options_table): Also turn on
47+
OPT_fspeculatively_call_stored_functions at -O2.
48+
(common_handle_option): Turn flag_speculatively_call_stored_functions
49+
when using profile feedback.
50+
* doc/invoke.texi (-fspeculatively-call-stored-functions): New.
51+
52+
2025-12-15 Martin Jambor <[email protected]>
53+
54+
* cgraph.h (cgraph_node): Adjust the comment of member function
55+
create_indirect_edge.
56+
(enum cgraph_indirect_info_kind): New.
57+
(cgraph_indirect_call_info): Convert into a base class.
58+
(cgraph_simple_indirect_info): New.
59+
(cgraph_polymorphic_indirect_info): Likewise.
60+
(usable_polymorphic_info_p): Likewise.
61+
(is_a_helper <cgraph_simple_indirect_info *>::test): Likewise.
62+
(is_a_helper <cgraph_polymorphic_indirect_info *>::test): Likewise.
63+
(cgraph_allocate_init_indirect_info): Remove declaration.
64+
(ipa_polymorphic_call_context::ipa_polymorphic_call_context): Use the
65+
appropriate derived type of indirect info.
66+
* cgraph.cc (cgraph_allocate_init_indirect_info): Removed.
67+
(cgraph_node::create_indirect_edge): Create an appropriate type of
68+
indirect_info.
69+
(cgraph_node::dump): Dump indirect info using its dump function.
70+
(cgraph_indirect_call_info::dump): New function.
71+
(cgraph_indirect_call_info::debug): Likewise.
72+
* cgraphclones.cc (cgraph_edge::clone): Create an appropriate type of
73+
indirect_info.
74+
* cgraphunit.cc (analyze_functions): Use the appropriate derived type
75+
of indirect info.
76+
* ipa-cp.cc (initialize_node_lattices): Adjust the check for
77+
polymorphic indirect info.
78+
(ipa_get_indirect_edge_target_1): Use the appropriate derived types of
79+
indirect info.
80+
(ipcp_discover_new_direct_edges): Likewise.
81+
* ipa-devirt.cc (ipa_devirt): Use the polymorphis derived type of
82+
indirect info and check that it is usable.
83+
* ipa-inline.cc (dump_inline_stats): Adjust the check for polymorphic
84+
indirect info.
85+
* ipa-profile.cc (ipa_profile): Likewise and check usability.
86+
* ipa-prop.cc (ipa_print_node_jump_functions): Dump indirect info
87+
using its dumping member function.
88+
(ipa_note_param_call): Removed.
89+
(ipa_analyze_indirect_call_uses): Use the appropriate derived type of
90+
indirect info, set all fields of indirect info separately rather than
91+
relying on ipa_note_param_call.
92+
(ipa_analyze_virtual_call_uses): Use the polymorphis derived type of
93+
indirect info and check that it is usable, set all fields of indirect
94+
info separately rather than relying on ipa_note_param_call.
95+
(ipa_analyze_call_uses): Use the appropriate derived type of indirect
96+
info.
97+
(ipa_make_edge_direct_to_target): Use the appropriate derived type of
98+
indirect info. Remove wrong note that member_ptr check was not
99+
needed. Adjust check for polymorphic call when dumping.
100+
(try_make_edge_direct_simple_call): Use the appropriate derived type
101+
of indirect info.
102+
(try_make_edge_direct_virtual_call): Use the polymorphis derived type
103+
of indirect info and check that it is usable.
104+
(update_indirect_edges_after_inlining): Use the appropriate derived
105+
type of indirect info. Define local variables only before their first
106+
use.
107+
(ipa_write_indirect_edge_info): Also stream indirect info kind. Use
108+
the appropriate derived type of indirect info.
109+
(ipa_read_indirect_edge_info): Check that the streamed in indirect
110+
info kind matches rthe structure at hand. Use the appropriate derived
111+
type of indirect info.
112+
* ipa-utils.h (possible_polymorphic_call_targets): Use the
113+
polymorphis derived type of indirect info. Assert it is usable.
114+
(dump_possible_polymorphic_call_targets): Use the polymorphis
115+
derived type of indirect info and check it is usable.
116+
(possible_polymorphic_call_target_p): Likewise.
117+
* ipa.cc (symbol_table::remove_unreachable_nodes): Use
118+
usable_polymorphic_info_p.
119+
* lto-cgraph.cc (lto_output_edge): Stream indirect info kind.
120+
(compute_ltrans_boundary): Use usable_polymorphic_info_p.
121+
(input_edge): Move definition of ecf_flags before its first use.
122+
Pass true as the last parameter to create_indirect_edge. Stream
123+
indirect info kind and create a corresponding type to hold the
124+
information.
125+
* trans-mem.cc (ipa_tm_insert_gettmclone_call): Use the
126+
polymorphis derived type of indirect info.
127+
128+
2025-12-15 Martin Jambor <[email protected]>
129+
130+
* gengtype.cc (walk_subclasses): Avoid generating code with unused
131+
variables.
132+
133+
2025-12-15 Pengxuan Zheng <[email protected]>
134+
135+
PR tree-optimization/122987
136+
* tree-ssa-ifcombine.cc (ifcombine_ifandif): Replace
137+
force_gimple_operand_gsi with gimple_build.
138+
139+
2025-12-15 Joseph Myers <[email protected]>
140+
141+
* Makefile.in (PLUGIN_HEADERS): Add $(srcdir)/text-art/*.h.
142+
(install-plugin): Preserve directory structure for text-art
143+
headers.
144+
145+
2025-12-15 Alfie Richards <[email protected]>
146+
147+
* config/aarch64/aarch64-cores.def (cortex-a320): New core.
148+
* config/aarch64/aarch64-tune.md: Regenerate.
149+
150+
2025-12-15 Victor Do Nascimento <[email protected]>
151+
152+
* tree-vect-loop.cc (vect_analyze_loop_form): Relax niters
153+
condition.
154+
155+
2025-12-15 Victor Do Nascimento <[email protected]>
156+
157+
* tree-vect-data-refs.cc (vect_enhance_data_refs_alignment):
158+
Enable peeling for uncounted loops.
159+
* tree-vect-loop-manip.cc
160+
(slpeel_tree_duplicate_loop_to_edge_cfg): Add exit condition
161+
duplication functionality.
162+
* tree-vectorizer.h (slpeel_tree_duplicate_loop_to_edge_cfg):
163+
Modify function signature.
164+
(vect_do_peeling): Enable uncounted loop peeling.
165+
166+
2025-12-15 Victor Do Nascimento <[email protected]>
167+
168+
* tree-vect-data-refs.cc (vect_prune_runtime_alias_test_list):
169+
Reject when !operand_equal_p for any data ref pair.
170+
171+
2025-12-15 Victor Do Nascimento <[email protected]>
172+
173+
* tree-vect-loop.cc (vect_analyze_loop_2): Disable partial
174+
vector use for uncounted loops.
175+
176+
2025-12-15 Victor Do Nascimento <[email protected]>
177+
178+
* tree-vect-loop-manip.cc (slpeel_tree_duplicate_loop_to_edge_cfg):
179+
reset IVs and accumulators for all exits for uncounted loops.
180+
* tree-vectorizer.h (slpeel_tree_duplicate_loop_to_edge_cfg):
181+
add boolean `uncounted_p' argument.
182+
183+
2025-12-15 Victor Do Nascimento <[email protected]>
184+
185+
* tree-vect-loop-manip.cc (vect_do_peeling): Disable vector
186+
loop skip checking.
187+
(vect_loop_versioning): skip profitability check for uncounted loops.
188+
189+
2025-12-15 Victor Do Nascimento <[email protected]>
190+
191+
* tree-vect-loop-manip.cc (vect_do_peeling): Disable niters
192+
update.
193+
* tree-vect-loop.cc (vect_transform_loop): Likewise.
194+
195+
2025-12-15 Victor Do Nascimento <[email protected]>
196+
197+
* tree-vectorizer.h (LOOP_VINFO_IV_EXIT): Replace this...
198+
(LOOP_VINFO_MAIN_EXIT): ...with this.
199+
(LOOP_VINFO_EPILOGUE_IV_EXIT): Replace this...
200+
(LOOP_VINFO_EPILOGUE_MAIN_EXIT): ...with this.
201+
(LOOP_VINFO_SCALAR_IV_EXIT): Replace this...
202+
(LOOP_VINFO_SCALAR_MAIN_EXIT): ...with this.
203+
(class _loop_vec_info): s/iv/main for `vec_loop_iv_exit',
204+
`vec_epilogue_loop_main_exit' and `scalar_loop_main_exit'
205+
class members.
206+
* tree-vect-data-refs.cc
207+
(vect_enhance_data_refs_alignment):
208+
s/LOOP_VINFO_IV_EXIT/LOOP_VINFO_MAIN_EXIT/.
209+
* tree-vect-loop-manip.cc
210+
(vect_set_loop_controls_directly): Likewise.
211+
(vect_gen_vector_loop_niters_mult_vf): Likewise.
212+
(vect_loop_versioning): Likewise.
213+
(vect_do_peeling):
214+
s/LOOP_VINFO_IV_EXIT/LOOP_VINFO_MAIN_EXIT/,
215+
s/LOOP_VINFO_SCALAR_IV_EXIT/LOOP_VINFO_SCALAR_MAIN_EXIT,
216+
s/LOOP_VINFO_EPILOGUE_IV_EXIT/LOOP_VINFO_EPILOGUE_MAIN_EXIT.
217+
* tree-vect-loop.cc (_loop_vec_info::_loop_vec_info):
218+
s/iv_exit/main_exit/ in initializer list.
219+
(vec_init_loop_exit_info): Handle multiple-exit uncounted loops.
220+
(vect_analyze_loop_form): Fix `failure_at' message.
221+
(vect_create_loop_vinfo):
222+
s/LOOP_VINFO_IV_EXIT/LOOP_VINFO_MAIN_EXIT/.
223+
(vect_create_epilog_for_reduction): Likewise.
224+
(vectorizable_live_operation): Likewise.
225+
(vect_update_ivs_after_vectorizer_for_early_breaks): Likewise.
226+
(vect_transform_loop):
227+
s/LOOP_VINFO_IV_EXIT/LOOP_VINFO_MAIN_EXIT/,
228+
s/LOOP_VINFO_SCALAR_IV_EXIT/LOOP_VINFO_SCALAR_MAIN_EXIT.
229+
* tree-vectorizer.cc (set_uid_loop_bbs):
230+
s/LOOP_VINFO_SCALAR_IV_EXIT/LOOP_VINFO_SCALAR_MAIN_EXIT.
231+
232+
2025-12-15 Victor Do Nascimento <[email protected]>
233+
234+
* tree-vectorizer.h (LOOP_VINFO_EARLY_BREAKS_VECT_PEELED): OR
235+
its current definition with `LOOP_VINFO_NITERS_UNCOUNTED_P(L)'
236+
* tree-vect-loop.cc (vect_create_loop_vinfo): Don't populate
237+
`LOOP_VINFO_LOOP_IV_COND' for uncounted loops.
238+
239+
2025-12-15 Victor Do Nascimento <[email protected]>
240+
241+
* tree-vect-loop-manip.cc (vect_build_loop_niters): Gracefully
242+
handle uncounted loops.
243+
(vect_gen_prolog_loop_niters): Add type default of `sizetype'.
244+
(vect_gen_vector_loop_niters): Likewise.
245+
(vect_do_peeling): Likewise.
246+
* tree-vect-loop.cc (vect_min_prec_for_max_niters): Likewise.
247+
(loop_niters_no_overflow): Likewise.
248+
* tree-vectorizer.h (LOOP_VINFO_NITERS_UNCOUNTED_P): New.
249+
250+
2025-12-15 Peter Damianov <[email protected]>
251+
252+
PR target/108866
253+
* doc/install.texi: Document --with-windres configure option.
254+
255+
2025-12-15 Peter Damianov <[email protected]>
256+
257+
PR target/108866
258+
* gcc.cc (find_a_program): Add check for DEFAULT_WINDRES.
259+
* configure.ac: Add --with-windres= option.
260+
* config.in: Regenerate.
261+
* configure: Regenerate.
262+
263+
2025-12-15 Peter Damianov <[email protected]>
264+
265+
PR driver/108866
266+
* gcc.cc (default_compilers): Add EXTRA_DEFAULT_COMPILERS so the config
267+
of a target can add an extra compiler spec to default_compilers.
268+
* config/i386/cygming.h (WINDRES_FORMAT_SPEC): New macro to handle
269+
PE format selection based on TARGET_64BIT_DEFAULT and -m32/-m64 flags.
270+
(EXTRA_DEFAULT_COMPILERS): Add spec for windres.
271+
* config/aarch64/cygming.h (EXTRA_DEFAULT_COMPILERS): Likewise.
272+
273+
2025-12-15 Jerry Zhang Jian <[email protected]>
274+
275+
* config/riscv/gen-riscv-ext-opt.cc: Rename UPPERCAE_NAME to
276+
UPPERCASE_NAME.
277+
* config/riscv/gen-riscv-ext-texi.cc: Likewise.
278+
* config/riscv/riscv-ext-corev.def: Likewise.
279+
* config/riscv/riscv-ext-sifive.def: Likewise.
280+
* config/riscv/riscv-ext-thead.def: Likewise.
281+
* config/riscv/riscv-ext-ventana.def: Likewise.
282+
1283
2025-12-14 Lewis Hyatt <[email protected]>
2284

3285
PR tree-optimization/106409

gcc/DATESTAMP

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
20251215
1+
20251216

gcc/ada/ChangeLog

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,16 @@
1+
2025-12-15 Eric Botcazou <[email protected]>
2+
3+
PR ada/123138
4+
* sem_attr.adb (Resolve_Attribute) <Attribute_Reduce>: Override a
5+
universal numeric type only if the prefix is not an aggregate.
6+
7+
2025-12-15 Eric Botcazou <[email protected]>
8+
9+
PR ada/123060
10+
* gcc-interface/utils.cc (update_pointer_to): Synthesize a new
11+
TYPE_CANONICAL for the old pointer type in the case where there
12+
is no new pointer type. Likewise for references.
13+
114
2025-12-11 Eric Botcazou <[email protected]>
215

316
PR ada/123096

gcc/algol68/ChangeLog

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,21 @@
1+
2025-12-15 Mohammad-Reza Nabipoor <[email protected]>
2+
3+
* ga68-exports.pk (ga68_text_reloc_64): Renamed and
4+
adapted from ga68_text_reloc.
5+
(ga68_data_reloc_64): Renamed and adapted from ga68_data_reloc.
6+
(ga68_mode_64): Renamed and adapted from ga68_mode.
7+
(ga68_extract_64): Renamed and adapted from ga68_extract.
8+
(ga68_module_64): Renamed and adapted from ga68_module.
9+
(ga68_text_reloc_32): New type.
10+
(ga68_data_reloc_32): Likewise.
11+
(ga68_mode_32): Likewise.
12+
(ga68_extract_32): Likewise.
13+
(ga68_module_32): Likewise.
14+
15+
2025-12-15 Mohammad-Reza Nabipoor <[email protected]>
16+
17+
* ga68-exports.pk: Fix comment and value for magic number.
18+
119
2025-12-13 Jose E. Marchesi <[email protected]>
220

321
* a68-parser-bottom-up.cc (a68_bottom_up_coalesce_pub): Do not

gcc/analyzer/ChangeLog

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
2025-12-15 David Malcolm <[email protected]>
2+
3+
PR analyzer/123085
4+
* region-model.cc (region_model::scan_for_null_terminator_1): Use
5+
byte offset when accessing string constant.
6+
7+
2025-12-15 David Malcolm <[email protected]>
8+
9+
PR analyzer/122975
10+
* region-model-manager.cc (region_model_manager::maybe_fold_binop): Fold
11+
X + (-X) to zero.
12+
113
2025-12-12 David Malcolm <[email protected]>
214

315
* analyzer.opt.urls: Regenerate.

0 commit comments

Comments
 (0)