]>
Commit | Line | Data |
---|---|---|
fe4549c4 | 1 | 2015-06-01 Martin Liska <mliska@suse.cz> |
2 | ||
3 | * regcprop.c (free_debug_insn_changes): Use new type-based pool allocator. | |
4 | (replace_oldest_value_reg): Likewise. | |
5 | (pass_cprop_hardreg::execute): Likewise. | |
6 | ||
91211101 | 7 | 2015-06-01 Martin Liska <mliska@suse.cz> |
8 | ||
9 | * ira-build.c (initiate_cost_vectors): Use new type-based pool allocator. | |
10 | (ira_allocate_cost_vector): Likewise. | |
11 | (ira_free_cost_vector): Likewise. | |
12 | (finish_cost_vectors): Likewise. | |
13 | ||
e26b6f42 | 14 | 2015-06-01 Martin Liska <mliska@suse.cz> |
15 | ||
16 | * sel-sched-ir.c (alloc_sched_pools): Use new type-based pool allocator. | |
17 | (free_sched_pools): Likewise. | |
18 | * sel-sched-ir.h (_list_alloc): Likewise. | |
19 | (_list_remove): Likewise. | |
20 | ||
41003862 | 21 | 2015-06-01 Martin Liska <mliska@suse.cz> |
22 | ||
23 | * stmt.c (add_case_node): Use new type-based pool allocator. | |
24 | (expand_case): Likewise. | |
25 | (expand_sjlj_dispatch_table): Likewise. | |
26 | ||
d8e7268c | 27 | 2015-06-01 Martin Liska <mliska@suse.cz> |
28 | ||
29 | * tree-ssa-math-opts.c (occ_new): Use new type-based pool allocator. | |
30 | (free_bb): Likewise. | |
31 | (pass_cse_reciprocals::execute): Likewise. | |
32 | ||
317998ba | 33 | 2015-06-01 Martin Liska <mliska@suse.cz> |
34 | ||
35 | * tree-sra.c (sra_initialize): Use new type-based pool allocator. | |
36 | (sra_deinitialize) Likewise. | |
37 | (create_access_1) Likewise. | |
38 | (build_accesses_from_assign) Likewise. | |
39 | (create_artificial_child_access) Likewise. | |
40 | ||
55c5ac9f | 41 | 2015-06-01 Martin Liska <mliska@suse.cz> |
42 | ||
43 | * dse.c (get_group_info):Use new type-based pool allocator. | |
44 | (dse_step0) Likewise. | |
45 | (free_store_info) Likewise. | |
46 | (delete_dead_store_insn) Likewise. | |
47 | (free_read_records) Likewise. | |
48 | (record_store) Likewise. | |
49 | (replace_read) Likewise. | |
50 | (check_mem_read_rtx) Likewise. | |
51 | (scan_insn) Likewise. | |
52 | (dse_step1) Likewise. | |
53 | (dse_step7) Likewise. | |
54 | ||
399ea05d | 55 | 2015-06-01 Martin Liska <mliska@suse.cz> |
56 | ||
57 | * df-scan.c (struct df_scan_problem_data):Use new type-based pool allocator. | |
58 | (df_scan_free_internal) Likewise. | |
59 | (df_scan_alloc) Likewise. | |
60 | (df_grow_reg_info) Likewise. | |
61 | (df_free_ref) Likewise. | |
62 | (df_insn_create_insn_record) Likewise. | |
63 | (df_mw_hardreg_chain_delete) Likewise. | |
64 | (df_insn_info_delete) Likewise. | |
65 | (df_free_collection_rec) Likewise. | |
66 | (df_mw_hardreg_chain_delete_eq_uses) Likewise. | |
67 | (df_sort_and_compress_mws) Likewise. | |
68 | (df_ref_create_structure) Likewise. | |
69 | (df_ref_record) Likewise. | |
70 | ||
a964de4b | 71 | 2015-06-01 Martin Liska <mliska@suse.cz> |
72 | ||
73 | * df-problems.c (df_chain_create):Use new type-based pool allocator. | |
74 | (df_chain_unlink_1) Likewise. | |
75 | (df_chain_unlink) Likewise. | |
76 | (df_chain_remove_problem) Likewise. | |
77 | (df_chain_alloc) Likewise. | |
78 | (df_chain_free) Likewise. | |
79 | * df.h (struct dataflow) Likewise. | |
80 | ||
f7d27fdc | 81 | 2015-06-01 Martin Liska <mliska@suse.cz> |
82 | ||
83 | * cselib.c (new_elt_list):Use new type-based pool allocator. | |
84 | (new_elt_loc_list) Likewise. | |
85 | (unchain_one_elt_list) Likewise. | |
86 | (unchain_one_elt_loc_list) Likewise. | |
87 | (unchain_one_value) Likewise. | |
88 | (new_cselib_val) Likewise. | |
89 | (cselib_init) Likewise. | |
90 | (cselib_finish) Likewise. | |
91 | ||
f56b5538 | 92 | 2015-06-01 Martin Liska <mliska@suse.cz> |
93 | ||
94 | * config/sh/sh.c (add_constant):Use new type-based pool allocator. | |
95 | (sh_reorg) Likewise. | |
96 | ||
1394066b | 97 | 2015-06-01 Martin Liska <mliska@suse.cz> |
98 | ||
99 | * cfg.c (initialize_original_copy_tables):Use new type-based pool allocator. | |
100 | (free_original_copy_tables) Likewise. | |
101 | (copy_original_table_clear) Likewise. | |
102 | (copy_original_table_set) Likewise. | |
103 | ||
e815c2c5 | 104 | 2015-06-01 Martin Liska <mliska@suse.cz> |
105 | ||
106 | * asan.c (asan_mem_ref_get_alloc_pool):Use new type-based pool allocator. | |
107 | (asan_mem_ref_new) Likewise. | |
108 | (free_mem_ref_resources) Likewise. | |
109 | ||
9789d67d | 110 | 2015-06-01 Martin Liska <mliska@suse.cz> |
111 | ||
112 | * var-tracking.c (variable_htab_free):Use new type-based pool allocator. | |
113 | (attrs_list_clear) Likewise. | |
114 | (attrs_list_insert) Likewise. | |
115 | (attrs_list_copy) Likewise. | |
116 | (shared_hash_unshare) Likewise. | |
117 | (shared_hash_destroy) Likewise. | |
118 | (unshare_variable) Likewise. | |
119 | (var_reg_delete_and_set) Likewise. | |
120 | (var_reg_delete) Likewise. | |
121 | (var_regno_delete) Likewise. | |
122 | (drop_overlapping_mem_locs) Likewise. | |
123 | (variable_union) Likewise. | |
124 | (insert_into_intersection) Likewise. | |
125 | (canonicalize_values_star) Likewise. | |
126 | (variable_merge_over_cur) Likewise. | |
127 | (dataflow_set_merge) Likewise. | |
128 | (remove_duplicate_values) Likewise. | |
129 | (variable_post_merge_new_vals) Likewise. | |
130 | (dataflow_set_preserve_mem_locs) Likewise. | |
131 | (dataflow_set_remove_mem_locs) Likewise. | |
132 | (variable_from_dropped) Likewise. | |
133 | (variable_was_changed) Likewise. | |
134 | (set_slot_part) Likewise. | |
135 | (clobber_slot_part) Likewise. | |
136 | (delete_slot_part) Likewise. | |
137 | (loc_exp_insert_dep) Likewise. | |
138 | (notify_dependents_of_changed_value) Likewise. | |
139 | (emit_notes_for_differences_1) Likewise. | |
140 | (vt_emit_notes) Likewise. | |
141 | (vt_initialize) Likewise. | |
142 | (vt_finalize) Likewise. | |
143 | ||
fff2cf25 | 144 | 2015-06-01 Martin Liska <mliska@suse.cz> |
145 | ||
146 | * ira-color.c (init_update_cost_records):Use new type-based pool allocator. | |
147 | (get_update_cost_record) Likewise. | |
148 | (free_update_cost_record_list) Likewise. | |
149 | (finish_update_cost_records) Likewise. | |
150 | (initiate_cost_update) Likewise. | |
151 | ||
16f90944 | 152 | 2015-06-01 Martin Liska <mliska@suse.cz> |
153 | ||
154 | * lra.c (init_insn_regs): Use new type-based pool allocator. | |
155 | (new_insn_reg) Likewise. | |
156 | (free_insn_reg) Likewise. | |
157 | (free_insn_regs) Likewise. | |
158 | (finish_insn_regs) Likewise. | |
159 | (init_insn_recog_data) Likewise. | |
160 | (init_reg_info) Likewise. | |
161 | (finish_reg_info) Likewise. | |
162 | (lra_free_copies) Likewise. | |
163 | (lra_create_copy) Likewise. | |
164 | (invalidate_insn_data_regno_info) Likewise. | |
165 | ||
a940269d | 166 | 2015-06-01 Martin Liska <mliska@suse.cz> |
167 | ||
168 | * lra-lives.c (free_live_range): Use new type-based pool allocator. | |
169 | (free_live_range_list) Likewise. | |
170 | (create_live_range) Likewise. | |
171 | (copy_live_range) Likewise. | |
172 | (lra_merge_live_ranges) Likewise. | |
173 | (remove_some_program_points_and_update_live_ranges) Likewise. | |
174 | (lra_live_ranges_init) Likewise. | |
175 | (lra_live_ranges_finish) Likewise. | |
176 | ||
63c440eb | 177 | 2015-06-01 Martin Liska <mliska@suse.cz> |
178 | ||
179 | * et-forest.c (et_new_occ): Use new type-based pool allocator. | |
180 | (et_new_tree): Likewise. | |
181 | (et_free_tree): Likewise. | |
182 | (et_free_tree_force): Likewise. | |
183 | (et_free_pools): Likewise. | |
184 | (et_split): Likewise. | |
185 | ||
419f2d62 | 186 | 2015-06-01 Martin Liska <mliska@suse.cz> |
187 | ||
188 | * alloc-pool.c (struct alloc_pool_descriptor): Move definition | |
189 | to header file. | |
190 | * alloc-pool.h (pool_allocator::pool_allocator): New function. | |
191 | (pool_allocator::release): Likewise. | |
192 | (inline pool_allocator::release_if_empty): Likewise. | |
193 | (inline pool_allocator::~pool_allocator): Likewise. | |
194 | (pool_allocator::allocate): Likewise. | |
195 | (pool_allocator::remove): Likewise. | |
196 | ||
6da3491c | 197 | 2015-06-01 James Greenhalgh <james.greenhalgh@arm.com> |
198 | ||
199 | * sched-deps.c (sched_analyze_2): Replace fuseable with fusible | |
200 | in comment. | |
201 | ||
5bf8e0f8 | 202 | 2015-06-01 James Greenhalgh <james.greenhalgh@arm.com> |
203 | ||
204 | * gcc/config/arm/arm-protos.h (tune_params): Rename fuseable_ops | |
205 | to fusible_ops. | |
206 | * gcc/config/arm/arm.c (arm_print_tune_info): Likewise. | |
207 | (arm_macro_fusion_p): Likewise. | |
208 | (arm_macro_fusion_pair_p): Likewise. | |
209 | ||
37ef9e23 | 210 | 2015-06-01 James Greenhalgh <james.greenhalgh@arm.com> |
211 | ||
212 | * config/aarch64/aarch64-protos.h (tune_params): Rename | |
213 | fuseable_ops to fusible_ops. | |
214 | * config/aarch64/aarch64.c (generic_tunings): Rename | |
215 | fuseable_ops to fusible_ops. | |
216 | (cortexa53_tunings): Likewise. | |
217 | (cortexa57_tunings): Likewise. | |
218 | (thunderx_tunings): Likewise. | |
219 | (xgene1_tunings): Likewise. | |
220 | (aarch64_macro_fusion_p): Likewise. | |
221 | (aarch64_macro_fusion_pair_p): Likewise. | |
222 | ||
db249f37 | 223 | 2015-06-01 Dominik Vogt <vogt@linux.vnet.ibm.com> |
224 | ||
225 | * config/s390/driver-native.c: New file. | |
226 | * config/s390/x-native: New file. | |
227 | * config.host: Add new files for s390. | |
228 | * config/s390/s390.h (DRIVER_SELF_SPECS): Add support for -mtune=native | |
229 | and -march=native | |
230 | * config.gcc: Likewise. | |
231 | * config/s390/s390.opt (march): Likewise; add PROCESSOR_NATIVE | |
232 | * config/s390/s390-opts.h (enum processor_type): Ditto. | |
233 | * config/s390/s390.c (s390_option_override): Catch unhandled | |
234 | PROCESSOR_NATIVE | |
235 | ||
100c2304 | 236 | 2015-06-01 Ilya Enkovich <ilya.enkovich@intel.com> |
237 | ||
238 | PR target/65527 | |
239 | * cgraph.c (cgraph_edge::redirect_call_stmt_to_callee): Add | |
240 | redirection for instrumented calls. | |
241 | * lto-wrapper.c (merge_and_complain): Merge -fcheck-pointer-bounds. | |
242 | (append_compiler_options): Append -fcheck-pointer-bounds. | |
243 | * tree-chkp.h (chkp_copy_call_skip_bounds): New. | |
244 | (chkp_redirect_edge): New. | |
245 | * tree-chkp.c (chkp_copy_call_skip_bounds): New. | |
246 | (chkp_redirect_edge): New. | |
247 | ||
0906dd56 | 248 | 2015-06-01 Richard Biener <rguenther@suse.de> |
249 | ||
250 | PR tree-optimization/66280 | |
251 | * tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Fix pattern | |
252 | def-use walking. | |
253 | ||
b9432776 | 254 | 2015-06-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
255 | ||
256 | * config/aarch64/aarch64.md | |
257 | (*<LOGICAL:optab>_one_cmpl_<SHIFT:optab><mode>3): Change type to | |
258 | logic_shift_imm. | |
259 | ||
7ebb8c82 | 260 | 2015-06-01 Eric Botcazou <ebotcazou@adacore.com> |
261 | ||
262 | * config/i386/winnt.c (i386_pe_encode_section_info) <FUNCTION_DECL>: | |
263 | Remove obsolete kludge. | |
264 | ||
e86e65ef | 265 | 2015-06-01 Richard Biener <rguenther@suse.de> |
266 | ||
267 | * tree-ssa-reassoc.c (get_rank): Simplify. | |
268 | ||
ba637bab | 269 | 2015-05-31 H.J. Lu <hongjiu.lu@intel.com> |
270 | ||
271 | * configure.ac (NO_PIE_CFLAGS): Check CXXFLAGS instead of CFLAGS. | |
272 | * configure: Regenerated. | |
273 | ||
1e0b903d | 274 | 2015-05-31 Mikhail Maltsev <maltsevm@gmail.com> |
275 | ||
276 | * config/cris/cris.h (CRIS_ARCH_CPP_DEFAULT): Fix C++11 compatibility | |
277 | issue (add space between string literal and macro). | |
278 | * config/i386/mingw32.h (REAL_LIBGCC_SPEC): Likewise. | |
279 | ||
4341f847 | 280 | 2015-05-30 Andreas Schwab <schwab@linux-m68k.org> |
281 | ||
282 | * config/m68k/m68k.h (ASM_PCREL_SPEC): Pass --pcrel also for | |
283 | implict or explicit -fPIE or -fpie. | |
284 | ||
ef1a5efb | 285 | 2015-05-30 Mike Frysinger <vapier@gentoo.org> |
286 | ||
287 | * gcc/config/alpha/elf.h (ASM_SPEC): Add %{mcpu=*:-m%*}. | |
288 | ||
d342df18 | 289 | 2015-05-28 DJ Delorie <dj@redhat.com> |
290 | ||
291 | * expmed.c (extract_bit_field_1): Avoid clobbering a | |
292 | yet-to-be-used base/index register. | |
293 | ||
fdc195e1 | 294 | 2015-05-30 Jan Hubicka <hubicka@ucw.cz> |
295 | ||
296 | * alias.c (alias_set_entry_d): Add is_pointer and has_pointer. | |
297 | (alias_stats): Add num_universal. | |
298 | (alias_set_subset_of): Special case pointers; be ready for NULL | |
299 | children. | |
300 | (alias_sets_conflict_p): Special case pointers; be ready for NULL | |
301 | children. | |
302 | (init_alias_set_entry): Break out from ... | |
303 | (record_alias_subset): ... here; propagate new fields; | |
304 | allocate children only when really needed. | |
305 | (get_alias_set): Do less generous pointer globbing. | |
306 | (dump_alias_stats_in_alias_c): Update statistics. | |
307 | ||
846754b6 | 308 | 2015-05-30 Alan Modra <amodra@gmail.com> |
309 | ||
310 | * config/rs6000/rs6000.c (split_stack_arg_pointer_used_p): Scan | |
311 | correct block for use of r12. | |
312 | (rs6000_expand_split_stack_prologue): Error on r29 asm global reg. | |
313 | ||
8ae6e291 | 314 | 2015-05-29 Dominik Vogt <vogt@linux.vnet.ibm.com> |
315 | ||
316 | PR target/66215 | |
317 | * config/s390/s390.c (s390_reorg): Fix placement of post-label NOPs | |
318 | with -mhotpatch=. | |
319 | ||
2f439a71 | 320 | 2015-05-29 Jakub Jelinek <jakub@redhat.com> |
321 | ||
322 | PR tree-optimization/66142 | |
323 | * tree-if-conv.c (if_convertible_phi_p): Don't give up on | |
324 | virtual phis that feed themselves. | |
325 | ||
874cacba | 326 | 2015-05-29 Richard Biener <rguenther@suse.de> |
327 | ||
328 | PR tree-optimization/66314 | |
329 | * tree-ssa-threadupdate.c (create_block_for_threading): Add | |
330 | parameter that says which loop the new block belongs to. | |
331 | (ssa_create_duplicates): Blocks duplicated for the threaded | |
332 | path belong to the loop of the thread destination. | |
333 | ||
79d46209 | 334 | 2015-05-29 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
335 | ||
336 | * config/arm/neon-testgen.ml (emit_epilogue): Remove manual call | |
337 | to cleanup-saved-temps. | |
338 | * doc/sourcebuild.texi (Clean up generated test files): Expand | |
339 | introduction. | |
340 | (dg-keep-saved-temps): Document new proc. | |
341 | (cleanup-ipa-dump, cleanup-rtl-dump, cleanup-tree-dump, | |
342 | cleanup-saved-temps): Remove. | |
343 | ||
93da3efe | 344 | 2015-05-28 Andreas Tobler <andreast@gcc.gnu.org> |
345 | ||
346 | * configure.ac: Move the atoll check from AC_CHECK_FUNCS to | |
347 | gcc_AC_CHECK_DECLS. | |
348 | * configure: Regenerate. | |
349 | ||
774b89af | 350 | 2015-05-28 Mike Frysinger <vapier@gentoo.org> |
351 | ||
352 | * config/nios2/linux.h (CPP_SPEC): Define. | |
353 | ||
2a524945 | 354 | 2015-05-28 Mike Frysinger <vapier@gentoo.org> |
355 | ||
356 | * config/microblaze/linux.h (CPP_SPEC): Define. | |
357 | ||
6fded034 | 358 | 2015-05-28 Mike Frysinger <vapier@gentoo.org> |
359 | ||
360 | * config/pa/pa-linux.h (CPP_SPEC): Change so -D_REENTRANT is used when | |
361 | -pthread is specified. | |
362 | ||
34563054 | 363 | 2015-05-28 Richard Biener <rguenther@suse.de> |
364 | ||
365 | * tree-vect-loop.c (vect_fixup_reduc_chain): New function. | |
366 | (vect_fixup_scalar_cycles_with_patterns): Likewise. | |
367 | (vect_analyze_loop_2): Call vect_fixup_scalar_cycles_with_patterns | |
368 | after pattern recog. | |
369 | (vect_create_epilog_for_reduction): Properly handle reductions | |
370 | with patterns. | |
371 | (vectorizable_reduction): Likewise. | |
372 | * tree-vect-slp.c (vect_analyze_slp_instance): Properly mark | |
373 | reduction chains. | |
374 | (vect_get_constant_vectors): Create the correct number of | |
375 | initial values for reductions. | |
376 | (vect_schedule_slp_instance): Handle reduction chains that are | |
377 | type changing properly. | |
378 | * tree-vect-stmts.c (vect_analyze_stmt): Adjust. | |
379 | ||
6325605f | 380 | 2015-05-28 Richard Biener <rguenther@suse.de> |
381 | ||
382 | PR tree-optimization/66142 | |
383 | * tree-ssa-sccvn.c (vn_reference_lookup_3): Handle non-GIMPLE | |
384 | values better in memcpy destination handling. Handle non-aliasing | |
385 | we discover here. | |
386 | ||
598bdc16 | 387 | 2015-05-28 Lawrence Velázquez <vq@larryv.me> |
388 | ||
389 | PR target/63810 | |
390 | * config/darwin-c.c (version_components): New global enum. | |
391 | (parse_version, version_as_legacy_macro) | |
392 | (version_as_modern_macro, macosx_version_as_macro): New functions. | |
393 | (version_as_macro): Remove. | |
394 | (darwin_cpp_builtins): Use new function. | |
395 | ||
86181b33 | 396 | 2015-05-28 H.J. Lu <hongjiu.lu@intel.com> |
397 | ||
398 | * builtins.c (expand_builtin_acc_on_device): Mark parameters | |
399 | with ATTRIBUTE_UNUSED. | |
400 | ||
071f2c66 | 401 | 2015-05-28 Julian Brown <julian@codesourcery.com> |
402 | ||
403 | PR libgomp/65742 | |
404 | ||
405 | * builtins.c (expand_builtin_acc_on_device): Don't use open-coded | |
406 | sequence for !ACCEL_COMPILER. | |
407 | ||
75759166 | 408 | 2015-05-28 Nick Clifton <nickc@redhat.com> |
409 | ||
410 | * config/rx/rx.c (push_regs): New function. Extracts code from... | |
411 | (rx_expand_prologue): ... here. Use push_regs to push even small | |
412 | spans of registers. | |
413 | (pop_regs): New function. | |
414 | (rx_expand_epilogue): Use pop_regs to pop even small spans of | |
415 | registers. | |
416 | ||
31bf2c9a | 417 | 2015-05-28 Richard Biener <rguenther@suse.de> |
418 | ||
419 | * tree-vectorizer.h (struct _slp_instance): Remove body_cost_vec | |
420 | member. | |
421 | (SLP_INSTANCE_BODY_COST_VEC): Remove. | |
422 | (vect_update_slp_costs_according_to_vf): Likewise. | |
423 | (vect_slp_analyze_operations): Update prototype. | |
424 | * tree-vect-loop.c (vect_analyze_loop_2): Remove call to | |
425 | vect_update_slp_costs_according_to_vf, adjust. | |
426 | * tree-vect-slp.c (vect_free_slp_instance): Adjust. | |
427 | (vect_analyze_slp_cost_1): Likewise. | |
428 | (vect_analyze_slp_cost): Likewise. Properly deal with | |
429 | widening reduction ops. Commit body costs. | |
430 | (vect_analyze_slp_instance): Adjust. Do not analyze SLP | |
431 | cost for loops from here. | |
432 | (vect_slp_analyze_operations): But do it from here when | |
433 | the vectorization factor is known and stmts are analyzed. | |
434 | (vect_bb_vectorization_profitable_p): Simplify. | |
435 | (vect_slp_analyze_bb_1): Do not compute SLP cost here. | |
436 | (vect_update_slp_costs_according_to_vf): Remove. | |
437 | ||
e9abca4f | 438 | 2015-05-27 Magnus Granberg <zorry@gentoo.org> |
439 | H.J. Lu <hongjiu.lu@intel.com> | |
440 | ||
441 | * Makefile.in (COMPILER): Add @NO_PIE_CFLAGS@. | |
442 | (BUILD_CFLAGS): Likewise. | |
443 | (BUILD_CXXFLAGS): Likewise. | |
444 | (LINKER): Add @NO_PIE_FLAG@. | |
445 | (BUILD_LDFLAGS): Likewise. | |
446 | (libgcc.mvars): Set NO_PIE_CFLAGS to -fno-PIE for | |
447 | --enable-default-pie. | |
448 | * common.opt (fPIE): Initialize to -1. | |
449 | (fpie): Likewise. | |
450 | (no-pie): New option. | |
451 | (pie): Replace "Negative(shared)" with "Negative(no-pie)". | |
452 | * configure.ac: Add --enable-default-pie. | |
453 | (NO_PIE_CFLAGS): New. Check if -fno-PIE works. AC_SUBST. | |
454 | (NO_PIE_FLAG): New. Check if -no-pie works. AC_SUBST. | |
455 | * defaults.h (DEFAULT_FLAG_PIE): New. Default PIE to -fPIE. | |
456 | * gcc.c (NO_PIE_SPEC): New. | |
457 | (PIE_SPEC): Likewise. | |
458 | (NO_FPIE1_SPEC): Likewise. | |
459 | (FPIE1_SPEC): Likewise. | |
460 | (NO_FPIE2_SPEC): Likewise. | |
461 | (FPIE2_SPEC): Likewise. | |
462 | (NO_FPIE2_SPEC): Likewise. | |
463 | (FPIE_SPEC): Likewise. | |
464 | (NO_FPIE_SPEC): Likewise. | |
465 | (NO_FPIC1_SPEC): Likewise. | |
466 | (FPIC1_SPEC): Likewise. | |
467 | (NO_FPIC2_SPEC): Likewise. | |
468 | (FPIC2_SPEC): Likewise. | |
469 | (NO_FPIC2_SPEC): Likewise. | |
470 | (FPIC_SPEC): Likewise. | |
471 | (NO_FPIC_SPEC): Likewise. | |
472 | (NO_FPIE1_AND_FPIC1_SPEC): Likewise. | |
473 | (FPIE1_OR_FPIC1_SPEC): Likewise. | |
474 | (NO_FPIE2_AND_FPIC2_SPEC): Likewise. | |
475 | (FPIE2_OR_FPIC2_SPEC): Likewise. | |
476 | (NO_FPIE_AND_FPIC_SPEC): Likewise. | |
477 | (FPIE_OR_FPIC_SPEC): Likewise. | |
478 | (LD_PIE_SPEC): Likewise. | |
479 | (LINK_PIE_SPEC): Handle -no-pie. Use PIE_SPEC and LD_PIE_SPEC. | |
480 | * opts.c (finish_options): Update opts->x_flag_pie if it is -1. | |
481 | * config/darwin.h (PIE_SPEC): Renamed to ... | |
482 | (DARWIN_PIE_SPEC): This. | |
483 | (LINK_SPEC): Replace PIE_SPEC with DARWIN_PIE_SPEC. | |
484 | * config/darwin9.h (PIE_SPEC): Renamed to ... | |
485 | (DARWIN_PIE_SPEC): This. | |
486 | * config/gnu-user.h (GNU_USER_TARGET_STARTFILE_SPEC): Use | |
487 | PIE_SPEC and NO_PIE_SPEC if HAVE_LD_PIE is defined. | |
488 | * config/openbsd.h (ASM_SPEC): Use FPIE1_OR_FPIC1_SPEC and | |
489 | FPIE2_OR_FPIC2_SPEC. | |
490 | * config/m68k/netbsd-elf.h (ASM_SPEC): Likewise. | |
491 | * config/m68k/openbsd.h (ASM_SPEC): Likewise. | |
492 | * gcc/config/sol2.h (ASM_PIC_SPEC): Likewise. | |
493 | * config/arm/freebsd.h (SUBTARGET_EXTRA_ASM_SPEC): Likewise. | |
494 | * config/arm/netbsd-elf.h (SUBTARGET_EXTRA_ASM_SPEC): Likewise. | |
495 | * config/arm/semi.h (SUBTARGET_EXTRA_ASM_SPEC): Likewise. | |
496 | * config/cris/linux.h (CRIS_ASM_SUBTARGET_SPEC): Likewise. | |
497 | * config/m32r/m32r.h (ASM_SPEC): Likewise. | |
498 | * config/m68k/uclinux.h (DRIVER_SELF_SPECS): Likewise. | |
499 | * config/rs6000/linux64.h (ASM_SPEC32): Likewise. | |
500 | * config/rs6000/sysv4.h (ASM_SPEC): Likewise. | |
501 | * config/sparc/freebsd.h (ASM_SPEC): Likewise. | |
502 | * config/sparc/linux.h (ASM_SPEC): Likewise. | |
503 | * config/sparc/linux64.h (ASM_SPEC): Likewise. | |
504 | * config/sparc/netbsd-elf.h (ASM_SPEC): Likewise. | |
505 | * config/sparc/openbsd64.h (ASM_SPEC): Likewise. | |
506 | * config/sparc/sp-elf.h (ASM_SPEC): Likewise. | |
507 | * config/sparc/sp64-elf.h (ASM_SPEC): Likewise. | |
508 | * config/sparc/sparc.h (ASM_SPEC): Likewise. | |
509 | * config/sparc/sysv4.h (ASM_SPEC): Likewise. | |
510 | * config/sparc/vxworks.h (ASM_SPEC): Likewise. | |
511 | * config/c6x/elf-common.h (ASM_SPEC): Use NO_FPIC2_SPEC, | |
512 | FPIC2_SPEC, FPIC1_SPEC and FPIC2_SPEC. | |
513 | * config/c6x/uclinux-elf.h (LINK_SPEC): Use FPIE_SPEC. | |
514 | * config/frv/frv.h (DRIVER_SELF_SPECS): Use FPIC_SPEC, | |
515 | NO_FPIC_SPEC and NO_FPIE1_AND_FPIC1_SPEC. | |
516 | (ASM_SPEC): Use FPIE1_OR_FPIC1_SPEC and FPIE2_OR_FPIC2_SPEC. | |
517 | * config/m68k/m68k.h (ASM_PCREL_SPEC): Use FPIC_SPEC and | |
518 | NO_FPIC_SPEC. | |
519 | * config/mips/gnu-user.h (NO_SHARED_SPECS): Use | |
520 | NO_FPIE_AND_FPIC_SPEC. | |
521 | * config/mips/vxworks.h (SUBTARGET_ASM_SPEC): Use FPIC_SPEC. | |
522 | * config/rs6000/freebsd64.h (ASM_SPEC32): Likewise. | |
523 | * config/rs6000/vxworks.h (ASM_SPEC): Likewise. | |
524 | * config/vax/linux.h (ASM_SPEC): Likewise. | |
525 | * doc/install.texi: Document --enable-default-pie. | |
526 | * doc/invoke.texi: Document -no-pie. | |
527 | * config.in: Regenerated. | |
528 | * configure: Likewise. | |
529 | ||
734ac122 | 530 | 2015-05-28 Thomas Preud'homme <thomas.preudhomme@arm.com> |
531 | ||
532 | PR rtl-optimization/66168 | |
533 | * loop-invariant.c (move_invariant_reg): Pass dest rather than reg to | |
534 | can_move_invariant_reg. | |
535 | ||
bcfa200d | 536 | 2015-05-27 John David Anglin <danglin@gcc.gnu.org> |
537 | ||
59ed0a0f | 538 | PR target/66148 |
539 | * config/pa/pa.c (pa_emit_move_sequence): Correct placement of | |
540 | REG_EQUAL note when doing insert. | |
541 | ||
bcfa200d | 542 | * config/pa/pa.c (pa_print_operand): Use HOST_WIDE_INT_PRINT_DEC |
543 | instead of "%d" for 'o' operand. | |
544 | ||
9521eda4 | 545 | 2015-05-27 Nathan Sidwell <nathan@acm.org> |
546 | ||
547 | PR c++/66270 | |
548 | * tree.c (build_pointer_type_for_mode): Canonical type does not | |
549 | inherit can_alias_all. | |
550 | (build_reference_type_for_mode): Likewise. | |
551 | ||
e0b2f2ab | 552 | 2015-05-27 Eric Botcazou <ebotcazou@adacore.com> |
553 | ||
554 | * expr.h (array_at_struct_end_p): Move to... | |
555 | (array_ref_element_size): Likewise. | |
556 | (component_ref_field_offset): Likewise. | |
557 | * tree.h (array_ref_element_size): ...here. | |
558 | (array_at_struct_end_p): Likewise. | |
559 | (component_ref_field_offset): Likewise. | |
560 | * expr.c (array_ref_element_size): Move to... | |
561 | (array_ref_low_bound): Likewise. | |
562 | (array_at_struct_end_p): Likewise. | |
563 | (array_ref_up_bound): Likewise. | |
564 | (component_ref_field_offset): Likewise. | |
565 | * tree.c (array_ref_element_size): ...here. | |
566 | (array_ref_low_bound): Likewise. | |
567 | (array_ref_up_bound): Likewise. | |
568 | (array_at_struct_end_p): Likewise. | |
569 | (component_ref_field_offset): Likewise. | |
570 | ||
b3ff21cf | 571 | 2015-05-27 Gregor Richards <gregor.richards@uwaterloo.ca> |
572 | Szabolcs Nagy <szabolcs.nagy@arm.com> | |
573 | ||
574 | * config/aarch64/aarch64-linux.h (MUSL_DYNAMIC_LINKER): Define. | |
575 | ||
a487af0e | 576 | 2015-05-27 Jason Merrill <jason@redhat.com> |
577 | ||
578 | PR bootstrap/66304 | |
579 | * configure.ac: Use ACX_PROG_CXX_WARNING_OPTS, | |
580 | ACX_PROG_CXX_WARNING_ALMOST_PEDANTIC, and | |
581 | ACX_PROG_CXX_WARNINGS_ARE_ERRORS. | |
582 | ||
53d04190 | 583 | 2015-05-22 Aditya Kumar <hiraditya@msn.com> |
584 | ||
f3942525 | 585 | * auto-profile.c (afdo_calculate_branch_prob): Break once has_sample |
586 | is true. | |
587 | ||
53d04190 | 588 | * statistics.c (statistics_fini_pass): Print pass name. |
589 | ||
f146c442 | 590 | 2015-05-27 Richard Biener <rguenther@suse.de> |
591 | ||
592 | PR tree-optimization/66272 | |
593 | Revert parts of | |
594 | 2014-08-15 Richard Biener <rguenther@suse.de> | |
595 | ||
596 | PR tree-optimization/62031 | |
597 | * tree-data-ref.c (dr_analyze_indices): Do not set | |
598 | DR_UNCONSTRAINED_BASE. | |
599 | (dr_may_alias_p): All indirect accesses have to go the | |
600 | formerly DR_UNCONSTRAINED_BASE path. | |
601 | * tree-data-ref.h (struct indices): Remove | |
602 | unconstrained_base member. | |
603 | (DR_UNCONSTRAINED_BASE): Remove. | |
604 | ||
a9de8605 | 605 | 2015-05-27 Aldy Hernandez <aldyh@redhat.com> |
606 | ||
607 | * dwarf2out.c: Remove block_map. | |
608 | (gen_call_site_die): Replace block_map use with BLOCK_DIE. | |
609 | (gen_lexical_block_die): Same. | |
610 | (dwarf2out_function_decl): Remove block_map use. | |
611 | (dwarf2out_c_finalize): Same. | |
612 | * tree-core.h (struct tree_block): Add die field. | |
613 | * tree.h (BLOCK_DIE): New. | |
614 | ||
a95e5776 | 615 | 2015-05-27 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
616 | ||
617 | PR target/65358 | |
618 | * expr.c (memory_load_overlap): New function. | |
619 | (emit_push_insn): When pushing partial args to the stack would | |
620 | clobber the register part load the overlapping part into a pseudo | |
621 | and put it into the hard reg after pushing. Change return type | |
622 | to bool. Add bool argument. | |
623 | * expr.h (emit_push_insn): Change return type to bool. | |
624 | Add bool argument. | |
625 | * calls.c (expand_call): Cancel sibcall optimization when encountering | |
626 | partial argument on targets with ARGS_GROW_DOWNWARD and | |
627 | !STACK_GROWS_DOWNWARD. | |
628 | (emit_library_call_value_1): Update callsite of emit_push_insn. | |
629 | (store_one_arg): Likewise. | |
630 | ||
de799bd0 | 631 | 2015-05-27 Gregor Richards <gregor.richards@uwaterloo.ca> |
632 | ||
633 | * config/arm/linux-eabi.h (MUSL_DYNAMIC_LINKER): Define. | |
634 | ||
0ff42de5 | 635 | 2015-05-27 Martin Liska <mliska@suse.cz> |
636 | ||
637 | * Makefile.in: Add additional dependencies related to memory report | |
638 | enhancement. | |
639 | * alloc-pool.c (allocate_pool_descriptor): Use new ctor. | |
640 | * bitmap.c (struct bitmap_descriptor_d): Remove. | |
641 | (struct loc): Likewise. | |
642 | (struct bitmap_desc_hasher): Likewise. | |
643 | (bitmap_desc_hasher::hash): Likewise. | |
644 | (bitmap_desc_hasher::equal): Likewise. | |
645 | (get_bitmap_descriptor): Likewise. | |
646 | (bitmap_register): User new memory descriptor API. | |
647 | (register_overhead): Likewise. | |
648 | (bitmap_find_bit): Register nsearches and search_iter statistics. | |
649 | (struct bitmap_output_info): Remove. | |
650 | (print_statistics): Likewise. | |
651 | (dump_bitmap_statistics): Use new memory descriptor. | |
652 | * bitmap.h (struct bitmap_usage): New class. | |
653 | * genmatch.c: Extend header file inclusion. | |
654 | * genpreds.c: Likewise. | |
655 | * ggc-common.c (struct ggc_usage): New class. | |
656 | (struct ggc_loc_desc_hasher): Remove. | |
657 | (ggc_loc_desc_hasher::hash): Likewise. | |
658 | (ggc_loc_desc_hasher::equal): Likewise. | |
659 | (struct ggc_ptr_hash_entry): Likewise. | |
660 | (struct ptr_hash_hasher): Likewise. | |
661 | (ptr_hash_hasher::hash): Likewise. | |
662 | (ptr_hash_hasher::equal): Likewise. | |
663 | (make_loc_descriptor): Likewise. | |
664 | (ggc_prune_ptr): Likewise. | |
665 | (dump_ggc_loc_statistics): Use new memory descriptor. | |
666 | (ggc_record_overhead): Likewise. | |
667 | (ggc_free_overhead): Likewise. | |
668 | (final_cmp_statistic): Remove. | |
669 | (cmp_statistic): Likewise. | |
670 | (ggc_add_statistics): Liekwise. | |
671 | (ggc_prune_overhead_list): Likewise. | |
672 | * hash-map-traits.h: New file. | |
673 | * hash-map.h (struct default_hashmap_traits): Move the traits to a | |
674 | separate header file. | |
675 | * hash-set.h: Pass memory statistics info to ctor. | |
676 | * hash-table.c (void dump_hash_table_loc_statistics): New function. | |
677 | * hash-table.h (hash_table::hash_table): Add new ctor arguments. | |
678 | (hash_table::~hash_table): Register memory release operation. | |
679 | (hash_table::alloc_entries): Handle memory allocation operation. | |
680 | (hash_table::expand): Likewise. | |
681 | * inchash.c (iterative_hash_hashval_t): Move implementation to header | |
682 | file. | |
683 | (iterative_hash_host_wide_int): Likewise. | |
684 | * inchash.h (class hash): Likewise. | |
685 | * mem-stats-traits.h: New file. | |
686 | * mem-stats.h: New file. | |
687 | (mem_location): Add new class. | |
688 | (mem_usage): Likewise. | |
689 | (mem_alloc_description): Likewise. | |
690 | * sese.c: Add new header file inclusision. | |
691 | * toplev.c (dump_memory_report): Add report for hash_table, hash_map | |
692 | and hash_set. | |
693 | * tree-sra.c: Add new header file inclusision. | |
694 | * vec.c (struct vec_descriptor): Remove. | |
695 | (hash_descriptor): Likewise. | |
696 | (struct vec_usage): Likewise. | |
697 | (struct ptr_hash_entry): Likewise. | |
698 | (hash_ptr): Likewise. | |
699 | (eq_ptr): Likewise. | |
700 | (vec_prefix::register_overhead): Use new memory descriptor API. | |
701 | (vec_prefix::release_overhead): Likewise. | |
702 | (add_statistics): Remove. | |
703 | (dump_vec_loc_statistics): Use new memory descriptor API. | |
704 | * vec.h (struct vec_prefix): Likewise. | |
705 | (va_heap::reserve): Likewise. | |
706 | (va_heap::release): Likewise. | |
707 | * emit-rtl.c (gen_raw_REG): Fix passing MEM_STAT. | |
708 | ||
81ad436b | 709 | 2015-05-27 Richard Biener <rguenther@suse.de> |
710 | ||
711 | * tree-vect-stmts.c (vectorizable_load): Initialize slp_perm | |
712 | earlier and remove ??? comment. | |
713 | (vect_analyze_stmt): If we are analyzing a pure SLP stmt | |
714 | and got called from loop analysis bail out. Always pass the SLP | |
715 | node to the vectorizable_* functions. | |
716 | * tree-vect-loop.c (vect_analyze_loop_operations): Remove | |
717 | the premature SLP check here. | |
718 | * tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Dump hybrid | |
719 | detected SLP stmts. | |
720 | (vect_detect_hybrid_slp_1): Likewise. | |
721 | ||
9943b198 | 722 | 2015-05-26 Jeff Law <law@redhat.com> |
723 | ||
bebaef09 | 724 | * combine.c (find_split_point): Verify that the shift count is a |
725 | constant when choosing (plus (ashift ...)) as a split point. | |
726 | ||
9943b198 | 727 | * tree-ssa-threadupdate.c: Replace 8 space sequences with tabs. |
728 | No functional changes. | |
729 | ||
e821df4d | 730 | 2015-05-26 Jan Hubicka <hubicka@ucw.cz> |
731 | ||
732 | * ipa-polymorphic-call.c | |
733 | (ipa_polymorphic_call_context::get_dynamic_type): Short circuit the | |
734 | case when call target is already known. | |
735 | ||
21a7a8c2 | 736 | 2015-05-26 Oleg Endo <olegendo@gcc.gnu.org> |
737 | ||
738 | PR target/65979 | |
739 | * config/sh/sh.md (tstsi_t peephole2): Use gen_rtx_SET and | |
740 | take into account the case that operands[1] and operands[2] | |
741 | are the same register. | |
742 | ||
b11ca813 | 743 | 2015-05-26 Michael Matz <matz@suse.de> |
744 | ||
745 | PR middle-end/66251 | |
746 | ||
747 | * tree-vect-stmts.c (vect_model_store_cost): Handled strided group | |
748 | stores. | |
749 | (vect_create_vectorized_demotion_stmts): Always set | |
750 | STMT_VINFO_VEC_STMT, also with SLP. | |
751 | (vectorizable_store): Handle strided group stores. | |
752 | ||
8d4f39c3 | 753 | 2015-05-26 Venkataramanan Kumar <venkataramanan.kumar@amd.com> |
754 | ||
755 | PR target/66049 | |
756 | * config/aarch64/aarch64.md | |
757 | (*adds_shift_imm_<mode>): New pattern. | |
758 | (*subs_shift_imm_<mode>): Likewise. | |
759 | (*adds_<optab><ALLX:mode>_shift_<GPI:mode>): Likewise. | |
760 | (*subs_<optab><ALLX:mode>_shift_<GPI:mode>): Likewise. | |
761 | (*add_uxt<mode>_shift2): Likewise. | |
762 | (*add_uxtsi_shift2_uxtw): Likewise. | |
763 | (*sub_uxt<mode>_shift2): Likewise. | |
764 | (*sub_uxtsi_shift2_uxtw): Likewise. | |
765 | ||
55919abb | 766 | 2015-05-26 David Edelsohn <dje.gcc@gmail.com> |
767 | ||
768 | * config/rs6000/constraints.md (Y, U): Use match_test. | |
769 | ||
92568e6b | 770 | 2015-05-26 Christian Bruel <christian.bruel@st.com> |
74489440 | 771 | |
772 | PR target/52144 | |
773 | * config/arm/arm.c (arm_option_check_internal) | |
774 | (arm_option_params_internal): Check opts->target_flags to set macros. | |
775 | (TREE_TARGET_ARM, TREE_TARGET_THUMB) | |
776 | (TREE_TARGET_THUMB1, TREE_TARGET_THUMB2) Replace with... | |
777 | (TARGET_ARM_P, TARGET_THUMB_P, TARGET_THUMB1_P, TARGET_THUMB2_P) | |
778 | (builtin_define): Replaced with def_or_undef_macro. | |
779 | * config/arm/arm.h (TREE_TARGET_ARM, TREE_TARGET_THUMB) | |
780 | TREE_TARGET_THUMB1, TREE_TARGET_THUMB2) Redefine with... | |
781 | (TARGET_ARM_P, TARGET_THUMB_P, TARGET_THUMB1_P, TARGET_THUMB2_P) | |
782 | (TARGET_32BIT_P, TARGET_ARM_QBIT_P, TARGET_ARM_SAT_P, TARGET_IDIV_P) | |
783 | (TARGET_HAVE_LDREX_P, TARGET_HAVE_LDREXBH_P, TARGET_HAVE_LDREXD_P) | |
784 | (TARGET_ARM_FEATURE_LDREX_P) | |
785 | (TARGET_DSP_MULTIPLY_P, TARGET_INT_SIMD_P): New macros. | |
e572c080 | 786 | * config/arm/arm-c.c (def_or_undef_macro): New function. |
787 | (arm_cpu_cpp_builtins): Use def_or_undef_macro for macros definition. | |
74489440 | 788 | |
4b11ffbd | 789 | 2015-05-26 Christian Bruel <christian.bruel@st.com> |
790 | ||
791 | * c-common.h (builtin_define_with_int_value) | |
792 | (builtin_define_type_sizeof): Declare. | |
793 | * c-cppbuiltin.c (builtin_define_with_int_value) | |
794 | (builtin_define_type_sizeof): Externalize. | |
795 | (builtin_define_std): Cleanup declaration. | |
796 | * config/arm/arm-protos.h (arm_cpu_cpp_builtins): Declare. | |
797 | * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Move macro defines into... | |
798 | * config/arm/arm-c.c (arm_cpu_cpp_builtins): New function. | |
799 | (builtin_define, builtin_assert): New macros. | |
800 | ||
e5d08bfd | 801 | 2015-05-26 Richard Biener <rguenther@suse.de> |
802 | ||
803 | PR tree-optimization/66142 | |
804 | * tree-ssa-sccvn.c (vn_reference_lookup_3): Manually compare | |
805 | MEM_REFs for the same base address. | |
806 | ||
038ce8c6 | 807 | 2015-05-26 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> |
808 | ||
809 | PR ipa/66181 | |
810 | * tree.c (verify_type_variant): Do not check TYPE_NO_FORCE_BLK. | |
811 | ||
c20b03af | 812 | 2015-05-26 Jason Merrill <jason@redhat.com> |
813 | ||
2822b473 | 814 | * configure.ac: Set CXXFLAGS for ISL test. |
815 | * configure: Regenerate. | |
816 | ||
c20b03af | 817 | * configure.ac: Use C++ for all tests. Use AC_CHECK_DECLS for |
818 | strstr and basename. | |
819 | * configure: Regenerate. | |
820 | ||
c09f2960 | 821 | 2015-05-26 Richard Biener <rguenther@suse.de> |
822 | ||
823 | * fold-const.c (fold_binary_loc): Move X % -Y -> X % Y and | |
824 | X % C -> X & (C - 1) for C being a power-of two to ... | |
825 | * match.pd: ... patterns. | |
826 | ||
0c3c84e3 | 827 | 2015-05-26 Marc Glisse <marc.glisse@inria.fr> |
828 | ||
829 | * match.pd (swapped_tcc_comparison): New operator list. | |
830 | (-A CMP -B): New simplification. | |
831 | * fold-const.c (fold_comparison): Remove corresponding code. | |
832 | ||
dcd6d0f4 | 833 | 2015-05-26 Richard Sandiford <richard.sandiford@arm.com> |
834 | ||
835 | * caller-save.c (init_caller_save): Base temporary register numbers | |
836 | on LAST_VIRTUAL_REGISTER + 1 rather than FIRST_PSEUDO_REGISTER. | |
837 | * cfgloopanal.c (init_set_costs): Likewise. | |
838 | * dojump.c (prefer_and_bit_test): Likewise. | |
839 | * expr.c (init_expr_target): Likewise. | |
840 | * ira.c (setup_prohibited_mode_move_regs): Likewise. | |
841 | * lower-subreg.c (init_lower_subreg): Likewise. | |
842 | * postreload.c (reload_cse_regs_1): Likewise. | |
843 | ||
d5e47a46 | 844 | 2015-05-26 Richard Sandiford <richard.sandiford@arm.com> |
845 | ||
846 | * gensupport.h (compute_test_codes): Declare. | |
847 | * gensupport.c (compute_predicate_codes): Rename to... | |
848 | (compute_test_codes): ...this. Generalize error message. | |
849 | (process_define_predicate): Update accordingly. | |
850 | * genpreds.c (compute_maybe_allows): Delete. | |
851 | (add_constraint): Use compute_test_codes to determine whether | |
852 | something can accept a SUBREG, REG or MEM. | |
853 | ||
cb369051 | 854 | 2015-05-26 Torvald Riegel <triegel@redhat.com> |
855 | ||
856 | * doc/extend.texi (__atomic Builtins): Use 'memory order' instead of | |
857 | 'memory model' to align with C++11; fix description of memory orders; | |
858 | fix a few typos. | |
859 | ||
5cb834f3 | 860 | 2015-05-26 Richard Biener <rguenther@suse.de> |
861 | ||
862 | * tree-vect-loop.c (vect_update_vf_for_slp): Split out from ... | |
863 | (vect_analyze_loop_operations): ... here. Remove slp parameter, | |
864 | detect whether we apply SLP. Remove call to | |
865 | vect_update_slp_costs_according_to_vf. | |
866 | (vect_analyze_loop_2): Call vect_update_vf_for_slp and | |
867 | vect_update_slp_costs_according_to_vf from here. Dispatch | |
868 | to vect_slp_analyze_operations to analyze SLP stmts. | |
869 | * tree-vect-slp.c (vect_slp_analyze_node_operations): Drop | |
870 | unused bb_vec_info parameter, adjust assert. | |
871 | (vect_slp_analyze_operations): Pass in the slp instance tree | |
872 | instead of bb_vec_info. | |
873 | (vect_slp_analyze_bb_1): Adjust call to vect_slp_analyze_operations. | |
874 | * tree-vectorizer.h (vect_slp_analyze_operations): Declare. | |
875 | ||
5971a5b3 | 876 | 2015-05-25 Alexander Monakov <amonakov@ispras.ru> |
877 | ||
878 | * config/i386/i386.h (enum reg_class): Move CLOBBERED_REGS prior to | |
879 | Q_REGS. Expand comment. | |
880 | (REG_CLASS_NAMES): Ditto. | |
881 | (REG_CLASS_CONTENTS): Ditto. | |
882 | ||
ea0685f5 | 883 | 2015-05-25 Uros Bizjak <ubizjak@gmail.com> |
884 | ||
885 | PR target/66274 | |
886 | * config/i386/i386.c (print_reg): Only print "r" for TARGET_64BIT | |
887 | when LEGACY_INT_REGNO_P is processed. | |
888 | ||
ad32aa90 | 889 | 2015-05-25 Alexander Monakov <amonakov@ispras.ru> |
890 | ||
891 | * config/i386/i386.c (ix86_function_ok_for_sibcall): Check flag_plt. | |
892 | ||
f1c4a634 | 893 | 2015-05-25 Pitchumani Sivanupandi <pitchumani.s@atmel.com> |
894 | ||
895 | * config/avr/avr.c (avr_out_load_psi_reg_no_disp_tiny): Restore base | |
896 | register if not marked dead/unused, before return. | |
897 | ||
ad32aa90 | 898 | 2015-05-24 Jan Hubicka <hubicka@ucw.cz> |
960a5573 | 899 | |
900 | PR lto/66180 | |
901 | * ipa-devirt.c (type_with_linkage): Check that TYPE_STUB_DECL | |
902 | is set; check for assembler name at LTO time. | |
903 | (type_in_anonymous_namespace): Remove hacks, check that all | |
904 | anonymous types are called "<anon>" | |
905 | (odr_type_p): Simplify; add check for "<anon>" | |
906 | (odr_subtypes_equivalent): Add odr_type_p check. | |
907 | * tree.c (need_assembler_name_p): Even anonymous namespace needs | |
908 | assembler name. | |
909 | ||
ad32aa90 | 910 | 2015-05-24 Jan Hubicka <hubicka@ucw.cz> |
1fda15e2 | 911 | |
912 | * ipa-utils.h (method_class_type): Remove. | |
960184c2 | 913 | * cgraphunit.c (walk_polymorphic_call_targets): Use |
914 | TYPE_METHOD_BASETYPE. | |
1fda15e2 | 915 | * ipa-devirt.c (type_in_anonymous_namespace_p): Check that it is called |
916 | on main variants only. | |
917 | (method_class_type): Remove. | |
918 | (update_type_inheritance_graph): Use TYPE_METHOD_BASETYPE. | |
919 | (build_type_inheritance_graph): Likewise. | |
920 | * ipa-icf.c (sem_function::equals_wpa): Likewise. | |
960184c2 | 921 | * pa-polymorphic-call.c (decl_maybe_in_construction_p, |
1fda15e2 | 922 | check_stmt_for_type_change): Use TYPE_METHOD_BASETYPE. |
923 | ||
ad32aa90 | 924 | 2015-05-24 Jan Hubicka <hubicka@ucw.cz> |
6ffeceb1 | 925 | |
926 | * tree.c (prototype_p, virtual_method_call_p, obj_type_ref_class, | |
927 | is_typedef_decl, typedef_variant_p): Constify. | |
928 | * tree.h (prototype_p, virtual_method_call_p, obj_type_ref_class, | |
929 | is_typedef_decl, typedef_variant_p): Constify. | |
930 | ||
b67840ef | 931 | 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
932 | ||
933 | * defaults.h (gen_tablejump): New function. | |
934 | (HAVE_tablejump): Add default value. | |
935 | * expr.c: Adjust. | |
936 | * stmt.c: Likewise. | |
937 | ||
440220c9 | 938 | 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
939 | ||
940 | * defaults.h (gen_store_multiple): New function. | |
941 | (HAVE_store_multiple): Add default value. | |
942 | * expr.c (move_block_from_reg): Adjust. | |
943 | ||
95951ddc | 944 | 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
945 | ||
946 | * defaults.h (gen_load_multiple): New function. | |
947 | (HAVE_load_multiple): Add default value. | |
948 | * expr.c (move_block_to_reg): Adjust. | |
949 | ||
d0751ac9 | 950 | 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
951 | ||
952 | * defaults.h (gen_mem_signal_fence): New function. | |
953 | (HAVE_mem_signal_fence): Add default value. | |
954 | * optabs.c: Adjust. | |
955 | ||
6b5c01be | 956 | 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
957 | ||
958 | * defaults.h (gen_memory_barrier): New function. | |
959 | (HAVE_memory_barrier): Add default value. | |
960 | * optabs.c: Adjust. | |
961 | ||
eaa700f2 | 962 | 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
963 | ||
964 | * defaults.h (gen_mem_thread_fence): New function. | |
965 | (HAVE_mem_thread_fence): Add default definition. | |
966 | * optabs.c: Adjust. | |
967 | ||
6cc3d6ec | 968 | 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
969 | ||
970 | * combine.c (find_split_point): Check the value of HAVE_lo_sum | |
971 | instead of if it is defined. | |
972 | (combine_simplify_rtx): Likewise. | |
973 | * lra-constraints.c (process_address_1): Likewise. | |
974 | * config/darwin.c: Adjust. | |
975 | * genconfig.c (main): Always define HAVE_lo_sum. | |
976 | ||
b2f775ec | 977 | 2015-05-23 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
978 | ||
960184c2 | 979 | * genmatch.c (parser::parse_operation): Reject expanding |
980 | operator-list inside 'for'. | |
b2f775ec | 981 | |
f6083535 | 982 | 2015-05-23 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
dbe4b31f | 983 | |
960184c2 | 984 | * genmatch.c (parser::parse_for): Reject iterator if used as |
985 | operator-list. | |
dbe4b31f | 986 | |
a03dcfdb | 987 | 2015-05-23 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
988 | ||
960184c2 | 989 | * genmatch.c (parser::parse_operator_list): Check for CPP_CLOSE_PAREN |
990 | after end of id-list. | |
a03dcfdb | 991 | |
24a769d9 | 992 | 2015-05-22 Jan Hubicka <hubicka@ucw.cz> |
993 | ||
994 | * tree.c (gimple_canonical_types_compatible_p): Sanity check that | |
995 | we do not try to compute canonical type for type that does not need | |
996 | alias set. | |
997 | (verify_type): Drop FIXME for METHOD_TYPE, update FIXME for | |
998 | FUNCITON_TYPE. | |
999 | * tree.h (type_with_alias_set_p): New. | |
1000 | ||
5b50c035 | 1001 | 2015-05-22 Jan Hubicka <hubicka@ucw.cz> |
1002 | ||
1003 | * tree.c (gimple_canonical_types_compatible_p): Do not compare | |
1004 | function attributes. | |
1005 | (verify_type): Remove METHOD_TYPE FIXME; update FUNCTION_TYPE. | |
1006 | ||
eeec71b4 | 1007 | 2015-05-22 Jim Wilson <jim.wilson@linaro.org> |
1008 | ||
1009 | * Makefile.in (check_gcc_parallelize): Delete. | |
1010 | (lang_checks_parallelized): Update comment. | |
1011 | ||
ea44a2ac | 1012 | 2015-05-22 Mikhail Maltsev <maltsevm@gmail.com> |
1013 | ||
1014 | PR rtl-optimization/66237 | |
1015 | * bb-reorder.c (fix_crossing_conditional_branches): Fix wrong | |
1016 | location of an "as_a" cast. | |
1017 | ||
97782bc4 | 1018 | 2015-05-22 Jeff Law <law@redhat.com> |
1019 | ||
1020 | * config/pa/pa.md (non-canonical shift-add insns): Remove. | |
1021 | (peepholes with non-canonical RTL sources): Remove. | |
1022 | (peepholes for indexed stores of FP regs in integer modes): Match and | |
1023 | generate canonical RTL. | |
1024 | ||
c59372d1 | 1025 | 2015-05-22 Marc Glisse <marc.glisse@inria.fr> |
1026 | ||
1027 | PR tree-optimization/63387 | |
1028 | * match.pd ((X /[ex] A) * A -> X): Remove unnecessary condition. | |
1029 | ((x ord x) & (y ord y) -> (x ord y), | |
1030 | (x ord x) & (x ord y) -> (x ord y)): New simplifications. | |
1031 | * fold-const.c (tree_unary_nonnegative_warnv_p) <ABS_EXPR>: Handle | |
1032 | vectors like scalars. | |
1033 | ||
cc77228c | 1034 | 2015-05-22 Marc Glisse <marc.glisse@inria.fr> |
1035 | ||
1036 | * convert.c (convert_to_integer, convert_to_vector): Include the | |
1037 | types in the error message. | |
1038 | ||
5af95dbe | 1039 | 2015-05-22 Marc Glisse <marc.glisse@inria.fr> |
1040 | ||
1041 | * match.pd ((x | y) & ~x -> y & ~x, (x & y) | ~x -> y | ~x): New | |
1042 | simplifications. | |
1043 | ||
dedf65c3 | 1044 | 2015-05-22 Jeff Law <law@redhat.com> |
1045 | ||
3cc6ed02 | 1046 | * config/pa/pa.md (integer_indexed_store splitters): Use |
1047 | mem_shadd_operand. Use ASHIFT rather than MULT in the resulting | |
1048 | insns -- adjusting the constant 2nd operand accordingly. | |
1049 | ||
b3676e5e | 1050 | * combine.c (try_combine): Canonicalize (plus (mult X pow2) Y) into |
1051 | (plus (ashift X log2) Y) if it is a split point. | |
1052 | ||
97782bc4 | 1053 | * config/pa/pa.c (mem_shadd_or_shadd_rtx_p): New function factoredx |
1054 | out of hppa_legitimize_address to handle both forms of a multiply | |
dedf65c3 | 1055 | by 2, 4 or 8. |
960184c2 | 1056 | (hppa_legitimize_address): Use mem_shadd_or_shadd_rtx_p. |
dedf65c3 | 1057 | Always generate the ASHIFT variant as the result is not directly |
1058 | used in a MEM. Update comments and refactor slightly to improve | |
1059 | readability. | |
1060 | ||
d86303d8 | 1061 | 2015-05-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
1062 | ||
1063 | PR target/65491 | |
1064 | * config/aarch64/aarch64.c (aarch64_short_vector_p): Move above | |
1065 | aarch64_composite_type_p. Remove check for aarch64_composite_type_p. | |
1066 | (aarch64_composite_type_p): Return false if given type and mode are | |
1067 | for a short vector. | |
1068 | ||
423475a3 | 1069 | 2015-05-22 Richard Biener <rguenther@suse.de> |
1070 | ||
1071 | * tree-vectorizer.h (struct _slp_oprnd_info): Add second_pattern | |
1072 | member. | |
1073 | * tree-vect-loop.c (vect_analyze_loop_operations): Look at | |
1074 | patterns when determining whether SLP is pure. | |
1075 | (vect_is_slp_reduction): Remove check for pattern stmts. | |
1076 | (vect_is_simple_reduction_1): Remove dead code. | |
1077 | * tree-vect-slp.c (vect_create_oprnd_info): Initialize second_pattern. | |
1078 | (vect_get_and_check_slp_defs): Pass in the stmt number. | |
1079 | Allow the first def in a reduction to be not a pattern stmt when | |
1080 | the rest of the stmts def are patterns. | |
1081 | (vect_build_slp_tree_1): Allow tcc_expression codes like | |
1082 | SAD_EXPR and DOT_PROD_EXPR. | |
1083 | (vect_build_slp_tree): Adjust. | |
1084 | (vect_analyze_slp): Refactor and move BB vect error message ... | |
1085 | (vect_slp_analyze_bb_1): ... here. | |
1086 | ||
0f9e75c9 | 1087 | 2015-05-22 Aldy Hernandez <aldyh@redhat.com> |
1088 | ||
1089 | * tree-switch-conversion.c (build_one_array): Set DECL_IGNORED_P | |
1090 | for CSWTCH temporary. | |
1091 | ||
ddbcfcd0 | 1092 | 2015-05-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
1093 | ||
1094 | * config/arm/arm.c (arm_new_rtx_costs): Handle UNSPEC_VOLATILE. | |
1095 | (arm_unspec_cost): Allow UNSPEC_VOLATILE. Do not recurse inside | |
1096 | unknown unspecs. | |
1097 | ||
126fecae | 1098 | 2015-05-22 Richard Biener <rguenther@suse.de> |
1099 | ||
1100 | PR tree-optimization/66251 | |
1101 | * tree-vect-stmts.c (vectorizable_conversion): Properly | |
1102 | set STMT_VINFO_VEC_STMT even for the SLP case. | |
1103 | ||
09c66167 | 1104 | 2015-05-22 Marek Polacek <polacek@redhat.com> |
1105 | ||
1106 | * doc/extend.texi: Use @pxref instead of @xref. | |
1107 | ||
bb882464 | 1108 | 2015-05-22 hiraditya <hiraditya@msn.com> |
1109 | ||
1110 | * gimple.h (gimple_expr_type): Refactor to make it concise. Remove | |
1111 | redundant if. | |
1112 | ||
eb10b471 | 1113 | 2015-05-22 Richard Biener <rguenther@suse.de> |
1114 | ||
1115 | PR tree-optimization/65701 | |
1116 | * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): | |
1117 | Move peeling cost models into one place. Peel for alignment | |
1118 | for single loads only if an aligned load is cheaper than | |
1119 | an unaligned load. | |
1120 | ||
5a4c69dd | 1121 | 2015-05-22 Marek Polacek <polacek@redhat.com> |
1122 | ||
1123 | PR c/47043 | |
1124 | * doc/extend.texi (Enumerator Attributes): New section. | |
1125 | Document syntax of enumerator attributes. | |
1126 | ||
95fd3578 | 1127 | 2015-05-22 Richard Biener <rguenther@suse.de> |
1128 | ||
1129 | * tree-vect-loop.c (get_reduction_op): New function. | |
1130 | (vect_model_reduction_cost): Use it, add reduc_index parameter. | |
1131 | Make ready for BB reductions. | |
1132 | (vect_create_epilog_for_reduction): Use get_reduction_op. | |
1133 | (vectorizable_reduction): Init reduc_index to a valid value. | |
1134 | Adjust vect_model_reduction_cost call. | |
1135 | * tree-vect-slp.c (vect_get_constant_vectors): Use the proper | |
1136 | operand for reduction defaults. Add SAD_EXPR support. | |
1137 | Assert we have a neutral op for SLP reductions. | |
1138 | * tree-vect-stmts.c (vect_mark_stmts_to_be_vectorized): When | |
1139 | walking pattern stmt ops only recurse to SSA names. | |
1140 | ||
741d8227 | 1141 | 2015-05-22 Richard Biener <rguenther@suse.de> |
1142 | ||
1143 | * tree-vect-patterns.c (vect_recog_dot_prod_pattern): Replace | |
1144 | assert with guard, remove check on detected reduction. | |
1145 | (vect_recog_sad_pattern): Likewise. | |
1146 | (vect_recog_widen_sum_pattern): Likewise. | |
1147 | ||
588ee06b | 1148 | 2015-05-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
1149 | ||
1150 | * config/aarch64/arm_neon.h (vaeseq_u8): Add __extension__ and | |
1151 | __always_inline__ attribute. | |
1152 | (vaesdq_u8): Likewise. | |
1153 | (vaesmcq_u8): Likewise. | |
1154 | (vaesimcq_u8): Likewise. | |
1155 | (vsha1cq_u32): Likewise. | |
1156 | (vsha1mq_u32): Likewise. | |
1157 | (vsha1pq_u32): Likewise. | |
1158 | (vsha1h_u32): Likewise. | |
1159 | (vsha1su0q_u32): Likewise. | |
1160 | (vsha1su1q_u32): Likewise. | |
1161 | (vsha256hq_u32): Likewise. | |
1162 | (vsha256h2q_u32): Likewise. | |
1163 | (vsha256su0q_u32): Likewise. | |
1164 | (vsha256su1q_u32): Likewise. | |
1165 | (vmull_p64): Likewise. | |
1166 | (vmull_high_p64): Likewise. | |
1167 | ||
044580bb | 1168 | 2015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
211a5d90 | 1169 | |
1170 | * final.c (final_scan_insn): Don't check HAVE_peephole with the | |
1171 | preprocessor. | |
1172 | * output.h: Likewise. | |
1173 | * genconfig.c (main): Alwways define HAVE_peephole. | |
1174 | * genpeep.c: Don't emit checks of HAVE_peephole. | |
1175 | ||
044580bb | 1176 | 2015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
9630036a | 1177 | |
1178 | * combine.c, expmed.c, expr.c, optabs.c optabs.h, toplev.c: DOn't | |
1179 | check HAVE_conditional_move with the preprocessor. | |
1180 | ||
044580bb | 1181 | 2015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
cf2f2c56 | 1182 | |
1183 | * genconfig.c (main): Always define HAVE_conditional_move. | |
1184 | * combine.c, expmed.c, expr.c, ifcvt.c, optabs.c, optabs.h, | |
1185 | toplev.c, tree-ssa-phiopt.c: Don't check if HAVE_conditional_move | |
1186 | is defined. | |
1187 | ||
044580bb | 1188 | 2015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
c6bb296a | 1189 | |
1190 | * combine.c, df-problems.c, df-scan.c, emit-rtl.c, reginfo.c, | |
1191 | reload.c, rtlanal.c: Remove comparison of ARG_FRAME_POINTER_REGNUM | |
1192 | and FRAME_POINTER_REGNUM with the preprocessor. | |
1193 | ||
044580bb | 1194 | 2015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
279a4851 | 1195 | |
1196 | * defaults.h: Add default for STACK_PUSH_CODE. | |
1197 | * expr.c: Don't redefine STACK_PUSH_CODE. | |
1198 | * recog.c: Likewise. | |
1199 | ||
044580bb | 1200 | 2015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3764c94e | 1201 | |
1202 | * builtins.c, dwarf2cfi.c, explow.c, expr.c, recog.c, | |
1203 | sched-deps.c: Use if instead of preprocessor checks with | |
1204 | STACK_GROWS_DOWNWARD. | |
1205 | ||
044580bb | 1206 | 2015-05-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
2b785411 | 1207 | |
1208 | * *.c: Check the value of STACK_GROWS_DOWNWARD rather than if it | |
1209 | is defined. | |
1210 | * config/**/*.h: Define STACK_GROWS_DOWNWARD to an integer. | |
1211 | * defaults.h: Provide default for STACK_GROWS_DOWNWARD. | |
1212 | * doc/tm.texi.in: Update references to STACK_GROWS_DOWNWARD. | |
1213 | * doc/tm.texi: Regenerate. | |
1214 | ||
38e98f58 | 1215 | 2015-05-21 H.J. Lu <hongjiu.lu@intel.com> |
1216 | ||
1217 | PR target/66232 | |
1218 | * config/i386/constraints.md (Bg): New constraint for GOT memory | |
1219 | operand. | |
1220 | * config/i386/i386.md (*call_got_x32): New pattern. | |
1221 | (*call_value_got_x32): Likewise. | |
1222 | * config/i386/predicates.md (GOT_memory_operand): New predicate. | |
1223 | ||
bcce7ce7 | 1224 | 2015-05-21 Jakub Jelinek <jakub@redhat.com> |
1225 | ||
1226 | PR tree-optimization/66233 | |
1227 | * match.pd (ocvt (icvt@1 @0)): Don't handle vector types. | |
1228 | Simplify. | |
1229 | ||
098e94fb | 1230 | 2015-05-21 Jeff Law <law@redhat.com> |
1231 | ||
1232 | * config/pa/pa.md (add-with-constant splitter): Use ASHIFT rather | |
1233 | than MULT for shadd sequences. | |
1234 | ||
5b6bf098 | 1235 | 2015-05-08 Jan Hubicka <hubicka@ucw.cz> |
1236 | ||
960184c2 | 1237 | * alias.c (alias_stats): New static var. |
5b6bf098 | 1238 | (alias_sets_conflict_p, alias_sets_must_conflict_p): Update stats. |
1239 | (dump_alias_stats_in_alias_c): New function. | |
1240 | * alias.h (dump_alias_stats_in_alias_c): Declare. | |
1241 | * tree-ssa-alias.c (dump_alias_stats): Call it. | |
1242 | ||
e1c75243 | 1243 | 2015-05-08 Michael Matz <matz@suse.de> |
1244 | ||
1245 | * tree-vectorizer.h (struct _stmt_vec_info): Rename stride_load_p | |
1246 | to strided_p. | |
1247 | (STMT_VINFO_STRIDE_LOAD_P): Rename to ... | |
1248 | (STMT_VINFO_STRIDED_P): ... this. | |
1249 | * tree-vect-data-refs.c (vect_compute_data_ref_alignment): Adjust. | |
1250 | (vect_verify_datarefs_alignment): Likewise. | |
1251 | (vect_enhance_data_refs_alignment): Likewise. | |
1252 | (vect_analyze_data_ref_access): Likewise. | |
1253 | (vect_analyze_data_refs): Accept strided stores. | |
1254 | * tree-vect-stmts.c (vect_model_store_cost): Count strided stores. | |
1255 | (vect_model_load_cost): Adjust for macro rename. | |
1256 | (vectorizable_mask_load_store): Likewise. | |
1257 | (vectorizable_load): Likewise. | |
1258 | (vectorizable_store): Open code strided stores. | |
1259 | ||
20e93ff8 | 1260 | 2015-05-21 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
1261 | ||
1262 | * doc/sourcebuild.texi (7.2.3.9 Other hardware attributes): | |
1263 | Document sqrt_insn. | |
1264 | ||
1ebb5060 | 1265 | 2015-05-21 Richard Biener <rguenther@suse.de> |
1266 | ||
1267 | PR c++/66211 | |
1268 | * match.pd: Guard pattern optimzing (int)(float)int | |
1269 | conversions to apply only on GIMPLE. | |
1270 | ||
100a3e05 | 1271 | 2015-05-21 Jeff Law <law@redhat.com> |
1272 | ||
1273 | * combine.c (find_split_point): Handle ASHIFT like MULT to encourage | |
1274 | multiply-accumulate/shift-add insn generation. | |
1275 | ||
dedba428 | 1276 | 2015-05-21 Oleg Endo <olegendo@gcc.gnu.org> |
1277 | ||
1278 | PR target/54236 | |
1279 | * config/sh/sh.md (*round_int_even): Reject pattern if operands[0] and | |
1280 | operands[1] are the same. | |
1281 | ||
cf6a4316 | 1282 | 2015-05-21 Ilya Enkovich <enkovich.gnu@gmail.com> |
1283 | ||
1284 | PR middle-end/66221 | |
1285 | * ipa-chkp.c (chkp_copy_function_type_adding_bounds): Use | |
1286 | build_distinct_type_copy to copy bounds. | |
1287 | ||
00788409 | 1288 | 2015-05-21 Thomas Schwinge <thomas@codesourcery.com> |
1289 | ||
1290 | * genrecog.c (MAX_DEPTH, MIN_NUM_STATEMENTS, MAX_NUM_STATEMENTS): | |
1291 | Change to unsigned int. | |
1292 | ||
edb1ad78 | 1293 | 2015-05-20 Jeff Law <law@redhat.com> |
1294 | ||
1295 | * config/pa/pa.c (pa_print_operand): New 'o' output modifier. | |
1296 | (pa_mem_shadd_constant_p): Renamed from pa_shadd_constant_p. | |
1297 | (pa_shadd_constant_p): Allow constants for shadd insns rather | |
1298 | than valid scaling constants for memory addresses. | |
1299 | * config/pa/pa-protos.h (pa_mem_shadd_constant_p): Add prototype. | |
1300 | * config/pa/predicates.md (mem_shadd_operand): New predicate. | |
1301 | * config/pa/pa.md (shift-add insns using MULT): Use mem_shadd_operand. | |
1302 | (shift-add insns using ASHIFT): New patterns. | |
1303 | ||
f9a00e9e | 1304 | 2015-05-20 Mikhail Maltsev <maltsevm@gmail.com> |
1305 | ||
1306 | * bb-reorder.c (set_edge_can_fallthru_flag): Use rtx_jump_insn where | |
1307 | feasible. | |
1308 | (fix_up_fall_thru_edges): Likewise. | |
1309 | (fix_crossing_conditional_branches): Likewise. Promote jump targets | |
1310 | from to rtx_insn to rtx_code_label where feasible. | |
1311 | * bt-load.c (move_btr_def): Remove as-a cast of the value returned by | |
1312 | gen_move_insn (returned type changed to rtx_insn). | |
1313 | * builtins.c (expand_errno_check): Fix arguments of | |
1314 | do_compare_rtx_and_jump (now expects rtx_code_label). | |
1315 | (expand_builtin_acc_on_device): Likewise. | |
1316 | * cfgcleanup.c (try_simplify_condjump): Add cast when calling | |
1317 | invert_jump (now exprects rtx_jump_insn). | |
1318 | * cfgexpand.c (label_rtx_for_bb): Promote return type to rtx_code_label. | |
1319 | (construct_init_block): Use rtx_code_label. | |
1320 | * cfgrtl.c (block_label): Promote return type to rtx_code_label. | |
1321 | (try_redirect_by_replacing_jump): Use cast to rtx_jump_insn when | |
1322 | calling redirect_jump. | |
1323 | (patch_jump_insn): Likewise. | |
1324 | (redirect_branch_edge): Likewise. | |
1325 | (force_nonfallthru_and_redirect): Likewise. | |
1326 | (fixup_reorder_chain): Explicitly use rtx_jump_insn instead of rtx_insn | |
1327 | when suitable. | |
1328 | (rtl_lv_add_condition_to_bb): Update call of do_compare_rtx_and_jump. | |
1329 | * cfgrtl.h: Promote return type of block_label to rtx_code_label. | |
1330 | * config/bfin/bfin.c (hwloop_optimize): Fix call of emit_label_before. | |
1331 | * config/i386/i386.c (ix86_emit_cmove): Explicitly use rtx_code_label | |
1332 | to store the value retured by gen_label_rtx. | |
1333 | * config/mips/mips.c (mips16_split_long_branches): Promote rtx_insn to | |
1334 | rtx_jump_insn. | |
1335 | * config/sh/sh.c (gen_far_branch): Likewise. Fix call of invert_jump. | |
1336 | (split_branches): Fix calls of redirect_jump. | |
960184c2 | 1337 | * dojump.c (jumpifnot): Promote argument type from rtx to |
1338 | rtx_code_label. | |
f9a00e9e | 1339 | (jumpifnot_1): Likewise. |
1340 | (jumpif): Likewise. | |
1341 | (jumpif_1): Likewise. | |
1342 | (do_jump_1): Likewise. | |
1343 | (do_jump): Likewise. Use rtx_code_label when feasible. | |
1344 | (do_jump_by_parts_greater_rtx): Likewise. | |
1345 | (do_jump_by_parts_zero_rtx): Likewise. | |
1346 | (do_jump_by_parts_equality_rtx): Likewise. | |
1347 | (do_compare_rtx_and_jump): Likewise. | |
1348 | * dojump.h: Update function prototypes. | |
1349 | * dse.c (emit_inc_dec_insn_before): Remove case (gen_move_insn now | |
1350 | returns rtx_insn). | |
1351 | * emit-rtl.c (emit_jump_insn_before_noloc): Promote return type to | |
1352 | rtx_jump_insn. | |
1353 | (emit_label_before): Likewise. | |
1354 | (emit_jump_insn_after_noloc): Likewise. | |
1355 | (emit_jump_insn_after_setloc): Likewise. | |
1356 | (emit_jump_insn_after): Likewise | |
1357 | (emit_jump_insn_before_setloc): Likewise. | |
1358 | (emit_jump_insn_before): Likewise. | |
1359 | (emit_label_before): Promote return type to rtx_code_label. | |
1360 | (emit_label): Likewise. | |
1361 | * except.c (sjlj_emit_dispatch_table): Use jump_target_rtx. | |
1362 | * explow.c (emit_stack_save): Use gen_move_insn_uncast instead of | |
1363 | gen_move_insn. | |
1364 | (emit_stack_restore): Likewise. | |
1365 | * expmed.c (emit_store_flag_force): Fix calls of do_compare_rtx_and_jump. | |
1366 | (do_cmp_and_jump): Likewise. | |
1367 | * expr.c (expand_expr_real_2): Likewise. Promote some local variables | |
1368 | from rtx to rtx_code_label. | |
1369 | (gen_move_insn_uncast): New function. | |
1370 | * expr.h: Update return type of gen_move_insn (promote to rtx_insn). | |
1371 | * function.c (convert_jumps_to_returns): Fix call of redirect_jump. | |
1372 | * gcse.c (pre_insert_copy_insn): Use rtx_insn instead of rtx. | |
1373 | * ifcvt.c (dead_or_predicable): Use rtx_jump_insn when calling | |
1374 | invert_jump_1 and redirect_jump_1. | |
1375 | * internal-fn.c (expand_arith_overflow_result_store): Fix call of | |
1376 | do_compare_rtx_and_jump. | |
1377 | (expand_addsub_overflow): Likewise. | |
1378 | (expand_neg_overflow): Likewise. | |
1379 | (expand_mul_overflow): Likewise. | |
1380 | * ira.c (split_live_ranges_for_shrink_wrap): Use rtx_insn for | |
1381 | return value of gen_move_insn. | |
1382 | * jump.c (redirect_jump): Promote argument from rtx to rtx_jump_insn. | |
1383 | * loop-doloop.c (add_test): Use rtx_code_label. | |
1384 | (doloop_modify): Likewise. | |
1385 | (doloop_optimize): Likewise. | |
1386 | * loop-unroll.c (compare_and_jump_seq): Promote rtx to rtx_code_label. | |
1387 | * lra-constraints.c (emit_spill_move): Remove cast of value returned | |
1388 | by gen_move_insn. | |
1389 | (inherit_reload_reg): Add cast when calling dump_insn_slim. | |
1390 | (split_reg): Likewise. | |
1391 | * modulo-sched.c (schedule_reg_moves): Remove cast of value returned by | |
1392 | gen_move_insn. | |
1393 | * optabs.c (expand_binop_directly): Remove casts of values returned by | |
1394 | maybe_gen_insn. | |
1395 | (expand_unop_direct): Likewise. | |
1396 | (expand_abs): Likewise. | |
1397 | (maybe_emit_unop_insn): Likewise. | |
1398 | (maybe_gen_insn): Promote return type to rtx_insn. | |
1399 | * optabs.h: Update prototype of maybe_gen_insn. | |
1400 | * postreload-gcse.c (eliminate_partially_redundant_load): Remove | |
1401 | redundant cast. | |
1402 | * recog.c (struct peep2_insn_data): Promote type of insn field to | |
1403 | rtx_insn. | |
1404 | (peep2_reinit_state): Use NULL instead of NULL_RTX. | |
1405 | (peep2_attempt): Remove casts of insn in peep2_insn_data. | |
1406 | (peep2_fill_buffer): Promote argument from rtx to rtx_insn | |
1407 | * recog.h (struct insn_gen_fn): Promote return types of function | |
1408 | pointers and operator ().from rtx to rtx_insn. | |
1409 | * reorg.c (fill_simple_delay_slots): Promote rtx_insn to rtx_jump_insn. | |
1410 | (fill_eager_delay_slots): Likewise. | |
1411 | (relax_delay_slots): Likewise. | |
1412 | (make_return_insns): Likewise. | |
1413 | (dbr_schedule): Likewise. | |
1414 | (optimize_skips): Likewise. | |
1415 | (reorg_redirect_jump): Likewise. | |
1416 | (fill_slots_from_thread): Likewise. | |
1417 | * reorg.h: Update prototypes. | |
1418 | * resource.c (find_dead_or_set_registers): Use dyn_cast to | |
1419 | rtx_jump_insn instead of check. Use it's jump_target method. | |
1420 | * rtl.h (rtx_jump_insn::jump_label): Define new method. | |
1421 | (rtx_jump_insn::jump_target): Define new method. | |
1422 | (rtx_jump_insn::set_jump_target): Define new method. | |
1423 | * rtlanal.c (tablejump_p): Promote type of one local variable. | |
1424 | * sched-deps.c (sched_analyze_2): Promote rtx to rtx_insn_list. | |
1425 | (sched_analyze_insn): Likewise. | |
1426 | * sched-vis.c (print_insn_with_notes): Promote rtx to rtx_insn. | |
1427 | (print_insn): Likewise. | |
1428 | * stmt.c (label_rtx): Promote return type to rtx_insn. | |
1429 | (force_label_rtx): Likewise. | |
1430 | (jump_target_rtx): Define new function. | |
1431 | (expand_label): Use it, get rid of one cast. | |
1432 | (expand_naked_return): Promote rtx to rtx_code_label. | |
1433 | (do_jump_if_equal): Fix do_compare_rtx_and_jump call. | |
1434 | (expand_case): Use rtx_code_label instread of rtx where feasible. | |
1435 | (expand_sjlj_dispatch_table): Likewise. | |
1436 | (emit_case_nodes): Likewise. | |
1437 | * stmt.h: Declare jump_target_rtx. Update prototypes. Fix comments. | |
1438 | * store-motion.c (insert_store): Make use of new return type of | |
1439 | gen_move_insn and remove a cast. | |
1440 | (replace_store_insn): Likewise. | |
1441 | ||
64ab0923 | 1442 | 2015-05-20 Max Filippov <jcmvbkbc@gmail.com> |
1443 | ||
1444 | * config/xtensa/xtensa.c (init_alignment_context): Replace MULT | |
1445 | by BITS_PER_UNIT with ASHIFT by exact_log2 (BITS_PER_UNIT). | |
1446 | ||
5d293e79 | 1447 | 2015-05-20 Jeff Law <law@redhat.com> |
1448 | ||
1449 | * tree-ssa-threadupdate.c (mark_threaded_blocks): Properly | |
1450 | dispose of the jump thread path when the jump threading | |
1451 | opportunity is cancelled. | |
1452 | ||
e943462b | 1453 | 2015-05-20 Manuel López-Ibáñez <manu@gcc.gnu.org> |
1454 | ||
1455 | * diagnostic.c (diagnostic_print_caret_line): Fix off-by-one error | |
1456 | when printing the caret character. | |
1457 | ||
72f8014e | 1458 | 2015-05-20 Marek Polacek <polacek@redhat.com> |
1459 | ||
1460 | * cfgexpand.c (expand_debug_expr): Use UNARY_CLASS_P. | |
1461 | ||
21c8a0ab | 1462 | 2015-05-20 Marek Polacek <polacek@redhat.com> |
1463 | ||
1464 | * expr.c (expand_cond_expr_using_cmove): Use COMPARISON_CLASS_P. | |
1465 | * gimple-expr.c (gimple_cond_get_ops_from_tree): Likewise. | |
1466 | * gimple-fold.c (canonicalize_bool): Likewise. | |
1467 | (same_bool_result_p): Likewise. | |
1468 | * tree-if-conv.c (parse_predicate): Likewise. | |
1469 | ||
74efe522 | 1470 | 2015-05-20 Marek Polacek <polacek@redhat.com> |
1471 | ||
1472 | * gimple-fold.c (fold_const_aggregate_ref_1): Use DECL_P. | |
1473 | * gimplify.c (gimplify_modify_expr_rhs): Likewise. | |
1474 | ||
c4985cef | 1475 | 2015-05-20 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
1476 | ||
1477 | * config/aarch64/aarch64.c (aarch64_class_max_nregs): | |
1478 | Use UNITS_PER_VREG and UNITS_PER_WORD instead of their direct | |
1479 | values. | |
1480 | ||
60b5d25f | 1481 | 2015-05-20 Robert Suchanek <robert.suchanek@imgtec.com> |
1482 | ||
1483 | * config/mips/mips.h (micromips_globals): Declare. | |
1484 | ||
41fddcd4 | 1485 | 2015-05-20 David Malcolm <dmalcolm@redhat.com> |
1486 | ||
1487 | * timevar.def (TV_INITIALIZE_RTL): New. | |
1488 | * toplev.c (initialize_rtl): Use an auto_timevar to account this | |
1489 | function's time to TV_INITIALIZE_RTL. | |
1490 | ||
3ec9c447 | 1491 | 2015-05-20 Ilya Enkovich <enkovich.gnu@gmail.com> |
1492 | ||
1493 | * tree-chkp.c (chkp_maybe_copy_and_register_bounds): Remove useless | |
1494 | gimple_build_nop calls. | |
1495 | (chkp_find_bounds_for_elem): Likewise. | |
1496 | (chkp_get_zero_bounds): Likewise. | |
1497 | (chkp_get_none_bounds): Likewise. | |
1498 | (chkp_get_bounds_by_definition): Likewise. | |
1499 | (chkp_generate_extern_var_bounds): Likewise. | |
1500 | (chkp_get_bounds_for_decl_addr): Likewise. | |
1501 | (chkp_get_bounds_for_string_cst): Likewise. | |
1502 | ||
ad478851 | 1503 | 2015-05-20 Bin Cheng <bin.cheng@arm.com> |
1504 | ||
1505 | PR tree-optimization/65447 | |
1506 | * tree-ssa-loop-ivopts.c (struct iv_use): New fields. | |
1507 | (dump_use, dump_uses): Support to dump sub use. | |
1508 | (record_use): New parameters to support sub use. Remove call to | |
1509 | dump_use. | |
1510 | (record_sub_use, record_group_use): New functions. | |
1511 | (compute_max_addr_offset, split_all_small_groups): New functions. | |
1512 | (group_address_uses, rewrite_use_address): New functions. | |
1513 | (strip_offset): New declaration. | |
1514 | (find_interesting_uses_address): Call record_group_use. | |
1515 | (add_candidate): New assertion. | |
1516 | (infinite_cost_p): Move definition forward. | |
1517 | (add_costs): Check INFTY cost and return immediately. | |
1518 | (get_computation_cost_at): Clear setup cost and dependent bitmap | |
1519 | for sub uses. | |
1520 | (determine_use_iv_cost_address): Compute cost for sub uses. | |
1521 | (rewrite_use_address_1): Rename from old rewrite_use_address. | |
1522 | (free_loop_data): Free sub uses. | |
1523 | (tree_ssa_iv_optimize_loop): Call group_address_uses. | |
1524 | ||
155e90fe | 1525 | 2015-05-20 Kugan Vivekanandarajah <kuganv@linaro.org> |
1526 | Jim Wilson <jim.wilson@linaro.org> | |
1527 | ||
1528 | * config/arm/aarch-common-protos.h (struct mem_cost_table): Added | |
1529 | new fields loadv and storev. | |
1530 | * config/aarch64/aarch64-cost-tables.h (thunderx_extra_costs): | |
1531 | Initialize loadv and storev. | |
1532 | * config/arm/aarch-cost-tables.h (generic_extra_costs): Likewise. | |
1533 | (cortexa53_extra_costs): Likewise. | |
1534 | (cortexa57_extra_costs): Likewise. | |
1535 | (xgene1_extra_costs): Likewise. | |
1536 | * config/aarch64/aarch64.c (aarch64_rtx_costs): Update vector | |
1537 | rtx_costs. | |
1538 | ||
1539 | 2015-05-20 Kugan Vivekanandarajah <kuganv@linaro.org> | |
1540 | ||
1541 | * config/arm/arm.c (cortexa9_extra_costs): Initialize loadv and | |
1542 | storev. | |
1543 | (cortexa8_extra_costs): Likewise. | |
1544 | (cortexa5_extra_costs): Likewise. | |
1545 | (cortexa7_extra_costs): Likewise. | |
1546 | (cortexa12_extra_costs): Likewise. | |
1547 | (cortexa15_extra_costs): Likewise. | |
1548 | (v7m_extra_costs): Likewise. | |
1549 | ||
32b97880 | 1550 | 2015-05-20 Jeff Law <law@redhat.com> |
1551 | ||
1552 | * tree-ssa-threadupdate.c (thread_single_edge): Use delete_jump_thread | |
1553 | instead of open-coded version. Also delete the jump thread created | |
1554 | within this function. | |
1555 | ||
2c50f1c8 | 1556 | 2015-05-20 Alan Modra <amodra@gmail.com> |
1557 | ||
1558 | * config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Return | |
1559 | stack adjusting insn. Formatting. | |
1560 | (rs6000_emit_prologue): Track stack adjusting insn, and use of | |
1561 | r12. If possible, emit first -fsplit-stack arg pointer insn | |
1562 | before stack adjust. Don't use r12 to save cr if split-stack. | |
1563 | ||
ec3f28c9 | 1564 | 2015-05-20 Alan Modra <amodra@gmail.com> |
1565 | ||
1566 | * common/config/rs6000/rs6000-common.c (TARGET_SUPPORTS_SPLIT_STACK): | |
1567 | Define. | |
1568 | (rs6000_supports_split_stack): New function. | |
1569 | * gcc/config/rs6000/rs6000.c (machine_function): Add | |
1570 | split_stack_arg_pointer. | |
1571 | (TARGET_EXTRA_LIVE_ON_ENTRY, TARGET_INTERNAL_ARG_POINTER): Define. | |
1572 | (setup_incoming_varargs): Use crtl->args.internal_arg_pointer | |
1573 | rather than virtual_incoming_args_rtx. | |
1574 | (rs6000_va_start): Likewise. | |
1575 | (split_stack_arg_pointer_used_p): New function. | |
1576 | (rs6000_emit_prologue): Set up arg pointer for -fsplit-stack. | |
1577 | (morestack_ref): New var. | |
1578 | (gen_add3_const, rs6000_expand_split_stack_prologue, | |
1579 | rs6000_internal_arg_pointer, rs6000_live_on_entry, | |
1580 | rs6000_split_stack_space_check): New functions. | |
1581 | (rs6000_elf_file_end): Call file_end_indicate_split_stack. | |
1582 | * gcc/config/rs6000/rs6000.md (UNSPEC_STACK_CHECK): Define. | |
1583 | (UNSPECV_SPLIT_STACK_RETURN): Define. | |
1584 | (split_stack_prologue, load_split_stack_limit, | |
1585 | load_split_stack_limit_di, load_split_stack_limit_si, | |
1586 | split_stack_return, split_stack_space_check): New expands and insns. | |
1587 | * gcc/config/rs6000/rs6000-protos.h | |
1588 | (rs6000_expand_split_stack_prologue): Declare. | |
1589 | (rs6000_split_stack_space_check): Declare. | |
1590 | ||
6cd388e6 | 1591 | 2015-05-20 Alan Modra <amodra@gmail.com> |
1592 | ||
1593 | * config/rs6000/rs6000.c (struct rs6000_stack): Correct comments. | |
1594 | (rs6000_stack_info): Don't zero offsets when not saving registers. | |
1595 | (debug_stack_info): Adjust to omit printing unused offsets, | |
1596 | as before. | |
1597 | (direct_return): Test vrsave_size rather than vrsave_mask. | |
1598 | (rs6000_emit_prologue): Likewise. Remove redundant altivec tests. | |
1599 | (rs6000_emit_epilogue): Likewise. | |
1600 | ||
cf8caba3 | 1601 | 2015-05-20 Alan Modra <amodra@gmail.com> |
1602 | ||
1603 | * config/rs6000/rs6000.c (rs6000_stack_info): Don't zero offsets | |
1604 | when not saving registers. | |
1605 | (debug_stack_info): Adjust to omit printing unused offsets, | |
1606 | as before. | |
1607 | (rs6000_emit_epilogue): Adjust use_backchain_to_restore_sp | |
1608 | expression. | |
1609 | ||
5f042f2e | 1610 | 2015-05-19 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
1611 | ||
1612 | PR c++/65835 | |
1613 | * config/i386/winnt.c (struct wrapped_symbol_hasher): Change | |
1614 | value_type to const char *. | |
1615 | ||
bcfd2aea | 1616 | 2015-05-19 Sandra Loosemore <sandra@codesourcery.com> |
1617 | ||
1618 | * config.gcc [powerpc*-*-linux*]: Allow --enable-targets=all | |
1619 | to build a biarch toolchain again. | |
1620 | ||
2bfdc8e7 | 1621 | 2015-05-19 Jan Hubicka <hubicka@ucw.cz> |
1622 | ||
1623 | * ipa-devirt.c (type_in_anonymous_namespace_p): Return true | |
1624 | or implicit declarations. | |
1625 | (odr_type_p): Check that TYPE_NAME is TYPE_DECL before looking | |
1626 | into it. | |
1627 | (get_odr_type): Check type has linkage before adding bases. | |
1628 | (register_odr_type): Check that type has linkage before adding it. | |
1629 | (type_known_to_have_no_deriavations_p): Rename to .. | |
1630 | (type_known_to_have_no_derivations_p): This one. | |
1631 | * ipa-utils.h (type_known_to_have_no_deriavations_p): Rename to .. | |
1632 | (type_known_to_have_no_derivations_p): This one. | |
1633 | * ipa-polymorphic-call.c | |
1634 | (ipa_polymorphic_call_context::restrict_to_inner_type): Check that | |
1635 | type has linkage. | |
1636 | ||
3d54a731 | 1637 | 2015-05-19 Eric Botcazou <ebotcazou@adacore.com> |
1638 | ||
1639 | * stor-layout.c (finalize_type_size): Use AGGREGATE_TYPE_P. | |
1640 | (layout_type): Use RECORD_OR_UNION_TYPE_P. | |
1641 | ||
f0c550e7 | 1642 | 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com> |
1643 | ||
1644 | * config/s390/s390.c (s390_vector_bool_type_p): New function. | |
1645 | (s390_invalid_binary_op): New function. | |
1646 | (TARGET_INVALID_BINARY_OP): Define macro. | |
1647 | ||
09c7ce53 | 1648 | 2015-05-19 David Sherwood <david.sherwood@arm.com> |
1649 | ||
1650 | * loop-invariant.c (create_new_invariant): Don't calculate address cost | |
1651 | if mode is not a scalar integer. | |
1652 | (get_inv_cost): Increase computational cost for unused invariants. | |
1653 | ||
7b2097d6 | 1654 | 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com> |
1655 | ||
1656 | * config.gcc: Add vecintrin.h to extra_headers. Add s390-c.o to | |
1657 | c_target_objs and cxx_target_objs. Add t-s390 to tmake_file. | |
1658 | * config/s390/s390-builtin-types.def: New file. | |
1659 | * config/s390/s390-builtins.def: New file. | |
1660 | * config/s390/s390-builtins.h: New file. | |
1661 | * config/s390/s390-c.c: New file. | |
1662 | * config/s390/s390-modes.def: Add modes CCVEQANY, CCVH, | |
1663 | CCVHANY, CCVHU, CCVHUANY, CCVFHANY, CCVFHEANY. | |
1664 | * config/s390/s390-protos.h (s390_expand_vec_compare_cc) | |
1665 | (s390_cpu_cpp_builtins, s390_register_target_pragmas): Add | |
1666 | prototypes. | |
1667 | * config/s390/s390.c (s390-builtins.h, s390-builtins.def): | |
1668 | Include. | |
1669 | (flags_builtin, flags_overloaded_builtin_var, s390_builtin_types) | |
1670 | (s390_builtin_fn_types, s390_builtin_decls, code_for_builtin): New | |
1671 | variable definitions. | |
1672 | (s390_const_operand_ok): New function. | |
1673 | (s390_expand_builtin): Rewrite. | |
1674 | (s390_init_builtins): New function. | |
1675 | (s390_handle_vectorbool_attribute): New function. | |
1676 | (s390_attribute_table): Add s390_vector_bool attribute. | |
1677 | (s390_match_ccmode_set): Handle new cc modes CCVH, CCVHU. | |
1678 | (s390_branch_condition_mask): Generate masks for new modes. | |
1679 | (s390_expand_vec_compare_cc): New function. | |
1680 | (s390_mangle_type): Add mangling for vector bool types. | |
1681 | (enum s390_builtin): Remove. | |
1682 | (s390_atomic_assign_expand_fenv): Rename constants for sfpc and | |
1683 | efpc builtins. | |
1684 | * config/s390/s390.h (TARGET_CPU_CPP_BUILTINS): Call | |
1685 | s390_cpu_cpp_builtins. | |
1686 | (REGISTER_TARGET_PRAGMAS): New macro. | |
1687 | * config/s390/s390.md: Define more UNSPEC_VEC_* constants. | |
1688 | (insn_cmp mode attribute): Add new CC modes. | |
1689 | (s390_sfpc, s390_efpc): Rename patterns to sfpc and efpc. | |
1690 | (lcbb): New pattern definition. | |
1691 | * config/s390/s390intrin.h: Include vecintrin.h. | |
1692 | * config/s390/t-s390: New file. | |
1693 | * config/s390/vecintrin.h: New file. | |
1694 | * config/s390/vector.md: Include vx-builtins.md. | |
1695 | * config/s390/vx-builtins.md: New file.S/390 zvector builtin | |
1696 | support. | |
1697 | ||
26233f43 | 1698 | 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com> |
1699 | ||
1700 | * config/s390/s390-modes.def: Add new modes CCVEQ, CCVFH, and | |
1701 | CCVFHE. | |
1702 | * config/s390/s390.c (s390_match_ccmode_set): Handle new modes. | |
1703 | (s390_select_ccmode): Likewise. | |
1704 | (s390_canonicalize_comparison): Swap operands if necessary. | |
1705 | (s390_expand_vec_compare_scalar): Expand DFmode compare using | |
1706 | single element vector instructions. | |
1707 | (s390_emit_compare): Call s390_expand_vec_compare_scalar. | |
1708 | (s390_branch_condition_mask): Generate CC masks for the new modes. | |
1709 | * config/s390/s390.md (v0, vf, vd): New mode attributes. | |
1710 | (VFCMP, asm_fcmp, insn_cmp): New mode iterator and attributes. | |
1711 | (*vec_cmp<insn_cmp>df_cconly, *fixuns_truncdfdi2_z13) | |
1712 | (*fix_trunc<BFP:mode><GPR:mode>2_bfp, *floatunsdidf2_z13) | |
1713 | (*floatuns<GPR:mode><FP:mode>2, *extendsfdf2_z13) | |
1714 | (*extend<DSF:mode><BFP:mode>2): New insn definition. | |
1715 | (fix_trunc<BFP:mode><GPR:mode>2_bfp, loatuns<GPR:mode><FP:mode>2) | |
1716 | (extend<DSF:mode><BFP:mode>2): Turn into expander. | |
1717 | (floatdi<mode>2, truncdfsf2, add<mode>3, sub<mode>3, mul<mode>3) | |
1718 | (div<mode>3, *neg<mode>2, *abs<mode>2, *negabs<mode>2) | |
1719 | (sqrt<mode>2): Add vector instruction. | |
1720 | ||
76a4c804 | 1721 | 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com> |
1722 | ||
1723 | * config/s390/constraints.md (j00, jm1, jxx, jyy, v): New | |
1724 | constraints. | |
1725 | * config/s390/predicates.md (const0_operand, constm1_operand) | |
1726 | (constable_operand): Accept vector operands. | |
1727 | * config/s390/s390-modes.def: Add supported vector modes. | |
1728 | * config/s390/s390-protos.h (s390_cannot_change_mode_class) | |
1729 | (s390_function_arg_vector, s390_contiguous_bitmask_vector_p) | |
1730 | (s390_bytemask_vector_p, s390_expand_vec_strlen) | |
1731 | (s390_expand_vec_compare, s390_expand_vcond) | |
1732 | (s390_expand_vec_init): Add prototypes. | |
1733 | * config/s390/s390.c (VEC_ARG_NUM_REG): New macro. | |
1734 | (s390_vector_mode_supported_p): New function. | |
1735 | (s390_contiguous_bitmask_p): Mask out the irrelevant bits. | |
1736 | (s390_contiguous_bitmask_vector_p): New function. | |
1737 | (s390_bytemask_vector_p): New function. | |
1738 | (s390_split_ok_p): Vector regs don't work either. | |
1739 | (regclass_map): Add VEC_REGS. | |
1740 | (s390_legitimate_constant_p): Handle vector constants. | |
1741 | (s390_cannot_force_const_mem): Handle CONST_VECTOR. | |
1742 | (legitimate_reload_vector_constant_p): New function. | |
1743 | (s390_preferred_reload_class): Handle CONST_VECTOR. | |
1744 | (s390_reload_symref_address): Likewise. | |
1745 | (s390_secondary_reload): Vector memory instructions only support | |
1746 | short displacements. Rename reload*_nonoffmem* to reload*_la*. | |
1747 | (s390_emit_ccraw_jump): New function. | |
1748 | (s390_expand_vec_strlen): New function. | |
1749 | (s390_expand_vec_compare): New function. | |
1750 | (s390_expand_vcond): New function. | |
1751 | (s390_expand_vec_init): New function. | |
1752 | (s390_dwarf_frame_reg_mode): New function. | |
1753 | (print_operand): Handle addresses with 'O' and 'R' constraints. | |
1754 | (NR_C_MODES, constant_modes): Add vector modes. | |
1755 | (s390_output_pool_entry): Handle vector constants. | |
1756 | (s390_hard_regno_mode_ok): Handle vector registers. | |
1757 | (s390_class_max_nregs): Likewise. | |
1758 | (s390_cannot_change_mode_class): New function. | |
1759 | (s390_invalid_arg_for_unprototyped_fn): New function. | |
1760 | (s390_function_arg_vector): New function. | |
1761 | (s390_function_arg_float): Remove size variable. | |
1762 | (s390_pass_by_reference): Handle vector arguments. | |
1763 | (s390_function_arg_advance): Likewise. | |
1764 | (s390_function_arg): Likewise. | |
1765 | (s390_return_in_memory): Vector values are returned in a VR if | |
1766 | possible. | |
1767 | (s390_function_and_libcall_value): Handle vector arguments. | |
1768 | (s390_gimplify_va_arg): Likewise. | |
1769 | (s390_call_saved_register_used): Consider the arguments named. | |
1770 | (s390_conditional_register_usage): Disable v16-v31 for non-vec | |
1771 | targets. | |
1772 | (s390_preferred_simd_mode): New function. | |
1773 | (s390_support_vector_misalignment): New function. | |
1774 | (s390_vector_alignment): New function. | |
1775 | (TARGET_STRICT_ARGUMENT_NAMING, TARGET_DWARF_FRAME_REG_MODE) | |
1776 | (TARGET_VECTOR_MODE_SUPPORTED_P) | |
1777 | (TARGET_INVALID_ARG_FOR_UNPROTOTYPED_FN) | |
1778 | (TARGET_VECTORIZE_PREFERRED_SIMD_MODE) | |
1779 | (TARGET_VECTORIZE_SUPPORT_VECTOR_MISALIGNMENT) | |
1780 | (TARGET_VECTOR_ALIGNMENT): Define target macro. | |
1781 | * config/s390/s390.h (FUNCTION_ARG_PADDING): Define macro. | |
1782 | (FIRST_PSEUDO_REGISTER): Increase value. | |
1783 | (VECTOR_NOFP_REGNO_P, VECTOR_REGNO_P, VECTOR_NOFP_REG_P) | |
1784 | (VECTOR_REG_P): Define macros. | |
1785 | (FIXED_REGISTERS, CALL_USED_REGISTERS) | |
1786 | (CALL_REALLY_USED_REGISTERS, REG_ALLOC_ORDER) | |
1787 | (HARD_REGNO_CALL_PART_CLOBBERED, REG_CLASS_NAMES) | |
1788 | (FUNCTION_ARG_REGNO_P, FUNCTION_VALUE_REGNO_P, REGISTER_NAMES): | |
1789 | Add vector registers. | |
1790 | (CANNOT_CHANGE_MODE_CLASS): Call C function. | |
1791 | (enum reg_class): Add VEC_REGS, ADDR_VEC_REGS, GENERAL_VEC_REGS. | |
1792 | (SECONDARY_MEMORY_NEEDED): Allow SF<->SI mode moves without | |
1793 | memory. | |
1794 | (DBX_REGISTER_NUMBER, FIRST_VEC_ARG_REGNO, LAST_VEC_ARG_REGNO) | |
1795 | (SHORT_DISP_IN_RANGE, VECTOR_STORE_FLAG_VALUE): Define macro. | |
1796 | * config/s390/s390.md (UNSPEC_VEC_*): New constants. | |
1797 | (VR*_REGNUM): New constants. | |
1798 | (ALL): New mode iterator. | |
1799 | (INTALL): Remove mode iterator. | |
1800 | Include vector.md. | |
1801 | (movti): Implement TImode moves for VRs. | |
1802 | Disable TImode splitter for VR targets. | |
1803 | Implement splitting TImode GPR<->VR moves. | |
1804 | (reload*_tomem_z10, reload*_toreg_z10): Replace INTALL with ALL. | |
1805 | (reload<mode>_nonoffmem_in, reload<mode>_nonoffmem_out): Rename to | |
1806 | reload<mode>_la_in, reload<mode>_la_out. | |
1807 | (*movdi_64, *movsi_zarch, *movhi, *movqi, *mov<mode>_64dfp) | |
1808 | (*mov<mode>_64, *mov<mode>_31): Add vector instructions. | |
1809 | (TD/TF mode splitter): Enable for GPRs only (formerly !FP). | |
1810 | (mov<mode> SF SD): Prefer lder, lde for loading. | |
1811 | Add lrl and strl instructions. | |
1812 | Add vector instructions. | |
1813 | (strlen<mode>): Rename old strlen<mode> to strlen_srst<mode>. | |
1814 | Call s390_expand_vec_strlen on z13. | |
1815 | (*cc_to_int): Change predicate to nonimmediate_operand. | |
1816 | (addti3): Rename to *addti3. New expander. | |
1817 | (subti3): Rename to *subti3. New expander. | |
1818 | * config/s390/vector.md: New file. | |
1819 | ||
cc79fcc9 | 1820 | 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com> |
1821 | ||
1822 | * common/config/s390/s390-common.c (processor_flags_table): Add | |
1823 | z13. | |
1824 | * config.gcc: Add z13. | |
1825 | * config/s390/s390-opts.h (enum processor_type): Add | |
1826 | PROCESSOR_2964_Z13. | |
1827 | * config/s390/s390.c (s390_adjust_priority): Check for | |
1828 | PROCESSOR_2964_Z13. | |
1829 | (s390_reorg): Likewise. | |
1830 | (s390_sched_reorder): Likewise. | |
1831 | (s390_sched_variable_issue): Likewise. | |
1832 | (s390_loop_unroll_adjust): Likewise. | |
1833 | (s390_option_override): Likewise. Default to -mvx when available. | |
1834 | * config/s390/s390.h (enum processor_flags): Add PF_Z13 and PF_VX. | |
1835 | (TARGET_CPU_Z13, TARGET_CPU_VX, TARGET_Z13, TARGET_VX) | |
1836 | (TARGET_VX_ABI): Define macros. | |
1837 | macros. | |
1838 | (TARGET_DEFAULT): Add MASK_OPT_VX. | |
1839 | * config/s390/s390.md ("cpu" attribute): Add z13. | |
1840 | ("cpu_facility" attribute): Add vec. | |
1841 | * config/s390/s390.opt (processor_type): Add z13. | |
1842 | (mvx): New options. | |
1843 | * doc/invoke.texi: Add z13 option for -march. | |
1844 | ||
3cddccea | 1845 | 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com> |
1846 | ||
1847 | * config/s390/predicates.md (shift_count_or_setmem_operand): Add | |
1848 | mode check to make sure that only scalar integer values are | |
1849 | accepted. | |
1850 | ||
82915df7 | 1851 | 2015-05-19 Jan Hubicka <hubicka@ucw.cz> |
1852 | ||
1853 | * tree.c (verify_type_variant): Fix #undef. | |
1854 | (gimple_canonical_types_compatible_p): Move here from lto.c | |
1855 | (verify_type): Verify TYPE_CANONICAL compatibility. | |
1856 | * tree.h (gimple_canonical_types_compatible_p): Declare. | |
1857 | ||
d7729e26 | 1858 | 2015-05-19 Jakub Jelinek <jakub@redhat.com> |
1859 | ||
1860 | PR middle-end/66199 | |
1861 | * tree.h (OMP_TEAMS_COMBINED): Define. | |
1862 | * gimplify.c (enum gimplify_omp_var_data): Add | |
1863 | GOVD_LINEAR_LASTPRIVATE_NO_OUTER. | |
1864 | (enum omp_region_type): Add ORT_COMBINED_TEAMS. | |
1865 | (omp_notice_variable): Accept both ORT_TEAMS | |
1866 | and ORT_COMBINED_TEAMS. Don't recurse if | |
1867 | GOVD_LINEAR_LASTPRIVATE_NO_OUTER is set and either | |
1868 | GOVD_LINEAR is set, or GOVD_LASTPRIVATE without | |
1869 | GOVD_FIRSTPRIVATE. | |
1870 | (omp_no_lastprivate): New function. | |
1871 | (gimplify_scan_omp_clauses): For OMP_CLAUSE_LASTPRIVATE | |
1872 | and OMP_CLAUSE_LINEAR, if omp_no_lastprivate, don't | |
1873 | notice_outer and set appropriate bits, otherwise make | |
1874 | sure default(none) combined constructs won't complain. | |
1875 | (gimplify_adjust_omp_clauses): Remove OMP_CLAUSE_LINEAR | |
1876 | outer special casing, for OMP_CLAUSE_LASTPRIVATE if | |
1877 | omp_no_lastprivate either remove the clause or turn it | |
1878 | into OMP_CLAUSE_PRIVATE. | |
1879 | (gimplify_omp_for): Fix up handling of implicit | |
1880 | lastprivate or linear iterators. | |
1881 | (gimplify_omp_workshare): For OMP_TEAMS_COMBINED use | |
1882 | ORT_COMBINED_TEAMS. | |
1883 | * omp-low.c (lower_omp_for_lastprivate): For combined | |
1884 | for simd use fd.loop.n2 from the for rather than simd. | |
1885 | ||
e8ac5777 | 1886 | 2015-05-19 Richard Sandiford <richard.sandiford@arm.com> |
1887 | ||
1888 | * config/cris/cris.c (cris_expand_prologue): Use gen_raw_REG | |
1889 | instead of gen_rtx_raw_REG. | |
1890 | (cris_expand_epilogue): Likewise. | |
1891 | * config/microblaze/microblaze.c (microblaze_classify_address): | |
1892 | Likewise. | |
1893 | * config/sparc/sparc.md: Likewise. | |
1894 | ||
7bc95bfb | 1895 | 2015-05-19 Uros Bizjak <ubizjak@gmail.com> |
1896 | ||
1897 | * config/alpha/alpha.c (alpha_legitimize_reload_address) | |
1898 | (alpha_preferred_reload_class, alpha_legitimate_constant_p): Use | |
1899 | CONST_INT_P, CONST_SCALAR_INT_P and CONST_DOUBLE_P predicates. | |
1900 | (alpha_split_reload_pair) <case CONST_INT, case CONST_WIDE_INT>: | |
1901 | Use CASE_CONST_SCALAR_INT. | |
1902 | (print_operand) <case 'M'>: Use mode_width_operand to check the | |
1903 | value of the constant. | |
1904 | * config/alpha/alpha.md (movti): Use CONST_SCALAR_INT_P predicate. | |
1905 | * config/alpha/predicates.md (input_operand): Use general_operand | |
1906 | instead of match_code as operand check. | |
1907 | (symbolic_operand): Use match_code with subexpression digits. | |
1908 | * config/alpha/constraints.md (Q): Ditto. | |
1909 | ||
cc0a1ae3 | 1910 | 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com> |
1911 | ||
1912 | * optabs.c (expand_vec_perm): Don't re-use SEL as target operand. | |
1913 | ||
ddb92daa | 1914 | 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com> |
1915 | ||
1916 | * config/s390/s390.c (s390_secondary_reload): Fix check for | |
1917 | load/store relative. | |
1918 | ||
e8cdfdfd | 1919 | 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com> |
1920 | ||
1921 | * recog.h: Increase MAX_RECOG_ALTERNATIVES. Change type of | |
1922 | alternative_mask to uint64_t. | |
1923 | ||
676ec1ba | 1924 | 2015-05-19 Jakub Jelinek <jakub@redhat.com> |
1925 | ||
1926 | PR tree-optimization/66187 | |
1927 | * match.pd ((bit_and (plus/minus (convert @0) (convert @1)) mask)): | |
1928 | Pass TYPE_SIGN to tree_int_cst_min_precision. If | |
1929 | !TYPE_OVERFLOW_WRAPS, ensure @4 is non-negative. | |
1930 | ||
551e34da | 1931 | 2015-05-19 David Malcolm <dmalcolm@redhat.com> |
1932 | ||
1933 | * diagnostic.c (diagnostic_report_current_module): Strengthen | |
1934 | local "new_map" from const line_map * to | |
1935 | const line_map_ordinary *. | |
1936 | * genmatch.c (error_cb): Likewise for local "map". | |
1937 | (output_line_directive): Likewise for local "map". | |
1938 | * input.c (expand_location_1): Likewise for local "map". | |
1939 | Pass NULL rather than &map to | |
1940 | linemap_unwind_to_first_non_reserved_loc, since the value is never | |
1941 | read from there, and the value written back not read from here. | |
1942 | (is_location_from_builtin_token): Strengthen local "map" from | |
1943 | const line_map * to const line_map_ordinary *. | |
1944 | (dump_location_info): Strengthen locals "map" from | |
1945 | line_map *, one to const line_map_ordinary *, the other | |
1946 | to const line_map_macro *. | |
1947 | * tree-diagnostic.c (loc_map_pair): Strengthen field "map" from | |
1948 | const line_map * to const line_map_macro *. | |
1949 | (maybe_unwind_expanded_macro_loc): Add a call to | |
1950 | linemap_check_macro when writing to the "map" field of the | |
1951 | loc_map_pair. | |
1952 | Introduce local const line_map_ordinary * "ord_map", using it in | |
1953 | place of "map" in the part of the function where we know we have | |
1954 | an ordinary map. Strengthen local "m" from const line_map * to | |
1955 | const line_map_ordinary *. | |
1956 | ||
02737e05 | 1957 | 2015-05-19 Nick Clifton <nickc@redhat.com> |
1958 | ||
1959 | PR target/66156 | |
1960 | * config/msp430/msp430.md (zero_extendhisi2): Add support for | |
1961 | separate source and destination registers. | |
1962 | ||
41fdc863 | 1963 | 2015-05-19 Richard Biener <rguenther@suse.de> |
1964 | ||
1965 | PR tree-optimization/66165 | |
1966 | * tree-vect-slp.c (vect_supported_load_permutation_p): Add guard | |
1967 | for no load permutation. | |
1968 | ||
1969 | PR tree-optimization/66185 | |
1970 | * tree-vect-slp.c (vect_build_slp_tree): Properly roll back | |
1971 | when building the SLP node from scalars. | |
1972 | ||
97354ae4 | 1973 | 2015-05-19 Eric Botcazou <ebotcazou@adacore.com> |
1974 | Tristan Gingold <gingold@adacore.com> | |
1975 | ||
1976 | * insn-notes.def (UPDATE_SJLJ_CONTEXT): New note. | |
1977 | * builtins.c (expand_builtin_update_setjmp_buf): Make global. | |
1978 | (expand_stack_restore): Call record_new_stack_level. | |
1979 | (expand_stack_save): Do not call do_pending_stack_adjust. | |
1980 | * builtins.h (expand_builtin_update_setjmp_buf): Declare. | |
1981 | * calls.c (expand_call): Call record_new_stack_level for alloca. | |
1982 | * except.c (sjlj_mark_call_sites): Expand builtin_update_setjmp_buf | |
1983 | wherever a NOTE_INSN_UPDATE_SJLJ_CONTEXT note is present. | |
1984 | (update_sjlj_context): New global function. | |
1985 | * except.h (update_sjlj_context): Declare. | |
1986 | * explow.c (record_new_stack_level): New global function. | |
1987 | (allocate_dynamic_stack_space): Call record_new_stack_level. | |
1988 | * explow.h (record_new_stack_level): Declare. | |
1989 | * final.c (final_scan_insn): Deal with NOTE_INSN_UPDATE_SJLJ_CONTEXT. | |
1990 | * cfgrtl.c (duplicate_insn_chain): Likewise. | |
1991 | ||
a8b58ffb | 1992 | 2015-05-19 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
1993 | ||
1994 | * calls.c: Always define STACK_GROWS_DOWNWARD as 0 or 1. | |
1995 | (mem_overlaps_already_clobbered_arg_p): Rewrite ifdef | |
1996 | STACK_GROWS_DOWNWARD as normal if. | |
02737e05 | 1997 | (expand_call): Likewise. |
a8b58ffb | 1998 | |
cf9350df | 1999 | 2015-05-19 Oleg Endo <olegendo@gcc.gnu.org> |
2000 | ||
2001 | PR target/54236 | |
2002 | * config/sh/sh.md (*round_int_even): New insn_and_split and | |
2003 | accompanying new unnamed split. | |
2004 | ||
837d3ea8 | 2005 | 2015-05-19 Richard Sandiford <richard.sandiford@arm.com> |
2006 | ||
2007 | * bitmap.c (bitmap_set_range): Handle count==1 specially. | |
2008 | (bitmap_clear_range): Likewise. | |
2009 | * cfgcleanup.c (mark_effect): Use bitmap_clear_range and | |
2010 | bitmap_set_range unconditionally. | |
2011 | * df-problems.c (df_simulate_one_insn_forwards): Likewise. | |
2012 | * df-scan.c (df_mark_reg): Likewise. | |
2013 | * haifa-sched.c (setup_ref_regs): Likewise. | |
2014 | * sched-rgn.c (update_live_1): Likewise. | |
2015 | ||
788bed51 | 2016 | 2015-05-19 Richard Sandiford <richard.sandiford@arm.com> |
2017 | ||
2018 | * regs.h (END_HARD_REGNO): Delete. | |
2019 | (END_REGNO): Move to... | |
2020 | * rtl.h: ...here. | |
2021 | * bt-load.c (note_btr_set): Use END_REGNO instead of END_HARD_REGNO. | |
2022 | * caller-save.c (mark_set_regs): Likewise. | |
2023 | * combine.c (move_deaths, distribute_notes): Likewise. | |
2024 | * cse.c (invalidate, invalidate_for_call): Likewise. | |
2025 | * df-scan.c (df_ref_record): Likewise. | |
2026 | * postreload-gcse.c (reg_changed_after_insn_p): Likewise. | |
2027 | (record_last_reg_set_info): Likewise. | |
2028 | * reg-stack.c (convert_regs_exit): Likewise. | |
2029 | * reload.c (reg_overlap_mentioned_for_reload_p): Likewise. | |
2030 | * resource.c (update_live_status): Likewise. | |
2031 | * rtlanal.c (find_reg_fusage, find_regno_fusage): Likewise. | |
2032 | ||
1c0849e5 | 2033 | 2015-05-19 Richard Sandiford <richard.sandiford@arm.com> |
2034 | ||
2035 | * rtl.h (reg_info): Add an nregs field. | |
2036 | (REG_NREGS): Use it. | |
2037 | (SET_REGNO_RAW): Delete. | |
2038 | (set_regno_raw): New function. | |
2039 | * regs.h (END_HARD_REGNO): Make equivalent to END_REGNO. | |
2040 | (END_REGNO): Redefine in terms of REG_NREGS. | |
2041 | * read-rtl.c (read_rtx_code): Call set_regno_raw instead of | |
2042 | SET_REGNO_RAW. | |
2043 | * emit-rtl.c (set_mode_and_regno): Likewise. | |
2044 | * df-scan.c (df_ref_change_reg_with_loc): Use set_mode_and_regno | |
2045 | instead of SET_REGNO_RAW. | |
2046 | ||
937ca48e | 2047 | 2015-05-19 Richard Sandiford <richard.sandiford@arm.com> |
2048 | ||
2049 | * rtl.h (PUT_MODE_RAW): New macro. | |
2050 | (PUT_REG_NOTE_KIND): Use it. | |
2051 | (set_mode_and_regno): Declare. | |
2052 | (gen_raw_REG): Change regno to "unsigned int". | |
2053 | (gen_rtx_REG): Change "unsigned" to "unsigned int". | |
2054 | (PUT_MODE): Forward to PUT_MODE_RAW for generators, otherwise | |
2055 | use set_mode_and_regno to change the mode of registers. | |
2056 | * gengenrtl.c (gendef): Use PUT_MODE_RAW. | |
2057 | * emit-rtl.c (set_mode_and_regno): New function. | |
2058 | (gen_raw_REG): Change regno to unsigned int. Use set_mode_and_regno. | |
2059 | * caller-save.c (reg_save_code): Use set_mode_and_regno. | |
2060 | * expr.c (init_expr_target): Likewise. | |
2061 | * ira.c (setup_prohibited_mode_move_regs): Likewise. | |
2062 | * postreload.c (reload_cse_simplify_operands): Likewise. | |
2063 | ||
06a78ffe | 2064 | 2015-05-19 Richard Sandiford <richard.sandiford@arm.com> |
2065 | ||
2066 | * caller-save.c (init_caller_save): Use word_mode and | |
2067 | FIRST_PSEUDO_REGISTER when creating temporary rtxes. | |
2068 | * expr.c (init_expr_target): Likewise. | |
2069 | * ira.c (setup_prohibited_mode_move_regs): Likewise. | |
2070 | * postreload.c (reload_cse_regs_1): Likewise. | |
2071 | ||
15183fd2 | 2072 | 2015-05-19 Richard Sandiford <richard.sandiford@arm.com> |
2073 | ||
2074 | * rtl.def (REG): Change format to "r". | |
2075 | * rtl.h (rtunion): Remove rt_reg. | |
2076 | (reg_info): New structure. | |
2077 | (rtx_def): Add reg field to main union. | |
2078 | (X0REGATTR): Delete. | |
2079 | (REG_CHECK): New macro. | |
2080 | (SET_REGNO_RAW, rhs_regno, REG_ATTRS): Use it. | |
2081 | * rtl.c (rtx_format): Document "r". | |
2082 | (rtx_code_size): Handle REG specially. | |
2083 | * gengenrtl.c (special_format): Return true for formats | |
2084 | that include 'r'. | |
2085 | * gengtype.c (adjust_field_rtx_def): Handle 'r' fields. | |
2086 | Deal with REG_ATTRS after the field loop. | |
2087 | * emit-rtl.c (gen_raw_REG): Call rtx_alloc_stat directly. | |
2088 | * expmed.c (init_expmed): Call gen_raw_REG instead of | |
2089 | gen_rtx_raw_REG. | |
2090 | * expr.c (init_expr_target): Likewise. | |
2091 | * regcprop.c (maybe_mode_change): Likewise. | |
2092 | * varasm.c (make_decl_rtl): Likewise. | |
2093 | * final.c (leaf_renumber_regs_insn): Return early after | |
2094 | handling REGs. | |
2095 | * genemit.c (gen_exp): Handle 'r' fields. | |
2096 | * genpeep.c (match_rtx): Likewise. | |
2097 | * gensupport.c (subst_pattern_match): Likewise. | |
2098 | (get_alternatives_number, collect_insn_data, alter_predicate_for_insn) | |
2099 | (alter_constraints, subst_dup): Likewise. | |
2100 | * read-rtl.c (read_rtx_code): Likewise. | |
2101 | * print-rtl.c (print_rtx): Likewise. | |
2102 | * genrecog.c (find_operand, find_matching_operand): Likewise. | |
2103 | (validate_pattern, match_pattern_2): Likewise. | |
2104 | (parameter::UINT, rtx_test::REGNO_FIELD): New enum values. | |
2105 | (rtx_test::regno_field): New function. | |
2106 | (operator ==, safe_to_hoist_p, transition_parameter_type) | |
2107 | (parameter_type_string, print_parameter_value) | |
2108 | (print_nonbool_test, print_test): Handle new enum values. | |
2109 | * cselib.c (rtx_equal_for_cselib_1): Handle REG specially. | |
2110 | * lra-constraints.c (operands_match_p): Likewise. | |
2111 | ||
91f5b5cb | 2112 | 2015-05-19 Richard Sandiford <richard.sandiford@arm.com> |
2113 | ||
2114 | * df.h (df_ref_change_reg_with_loc): Remove old_regno parameter. | |
2115 | Change type of new_regno to unsigned int. | |
2116 | * df-scan.c (df_ref_change_reg_with_loc_1): Change type of | |
2117 | new_regno to unsigned int. | |
2118 | (df_ref_change_reg_with_loc): Remove old_regno parameter. | |
2119 | Change type of new_regno to unsigned int. Use SET_REGNO_RAW. | |
2120 | * rtl.h (SET_REGNO): Update call to df_ref_change_reg_with_loc. | |
2121 | (SET_REGNO_RAW): Add space after ",". | |
2122 | ||
0933f1d9 | 2123 | 2015-05-19 Richard Sandiford <richard.sandiford@arm.com> |
2124 | ||
2125 | * rtl.h (REG_NREGS): New macro | |
2126 | * alias.c (record_set): Use it. | |
2127 | * cfgcleanup.c (mark_effect): Likewise. | |
2128 | * combine.c (likely_spilled_retval_1): Likewise. | |
2129 | (likely_spilled_retval_p, can_change_dest_mode): Likewise. | |
2130 | (move_deaths, distribute_notes): Likewise. | |
2131 | * cselib.c (cselib_record_set): Likewise. | |
2132 | * df-problems.c (df_simulate_one_insn_forwards): Likewise. | |
2133 | * df-scan.c (df_mark_reg): Likewise. | |
2134 | * dse.c (look_for_hardregs): Likewise. | |
2135 | * dwarf2out.c (reg_loc_descriptor): Likewise. | |
2136 | (multiple_reg_loc_descriptor): Likewise. | |
2137 | * expr.c (write_complex_part, read_complex_part): Likewise. | |
2138 | (emit_move_complex): Likewise. | |
2139 | * haifa-sched.c (setup_ref_regs): Likewise. | |
2140 | * ira-lives.c (mark_hard_reg_live): Likewise. | |
2141 | * lra.c (lra_set_insn_recog_data): Likewise. | |
2142 | * mode-switching.c (create_pre_exit): Likewise. | |
2143 | * postreload.c (reload_combine_recognize_const_pattern): Likewise. | |
2144 | (reload_combine_recognize_pattern): Likewise. | |
2145 | (reload_combine_note_use, move2add_record_mode): Likewise. | |
2146 | (reload_cse_move2add): Likewise. | |
2147 | * reg-stack.c (subst_stack_regs_pat): Likewise. | |
2148 | * regcprop.c (kill_value, copy_value): Likewise. | |
2149 | (copyprop_hardreg_forward_1): Likewise. | |
2150 | * regrename.c (verify_reg_in_set, scan_rtx_reg): Likewise. | |
2151 | (build_def_use): Likewise. | |
2152 | * sched-deps.c (mark_insn_reg_birth, mark_reg_death): Likewise. | |
2153 | (deps_analyze_insn): Likewise. | |
2154 | * sched-rgn.c (check_live_1, update_live_1): Likewise. | |
2155 | * sel-sched.c (count_occurrences_equiv): Likewise. | |
2156 | * valtrack.c (dead_debug_insert_temp): Likewise. | |
2157 | ||
6a298741 | 2158 | 2015-05-19 Richard Sandiford <richard.sandiford@arm.com> |
2159 | ||
2160 | * cfgcleanup.c (mentions_nonequal_regs): Use END_REGNO. | |
2161 | * dse.c (note_add_store): Likewise. | |
2162 | * ira-lives.c (mark_hard_reg_dead): Likewise. | |
2163 | * loop-invariant.c (mark_reg_store): Likewise. | |
2164 | (mark_reg_death): Likewise. | |
2165 | * postreload.c (reload_combine): Likewise. | |
2166 | (reload_combine_note_store): Likewise. | |
2167 | (reload_combine_note_use): Likewise. | |
2168 | * recog.c (peep2_reg_dead_p): Likewise. | |
2169 | ||
d27fe72b | 2170 | 2015-05-19 Alan Modra <amodra@gmail.com> |
2171 | ||
2172 | * config/rs6000/predicates.md (gpc_reg_operand): Don't allow all | |
2173 | hard registers numbered greater or equal to ARG_POINTER_REGNUM. | |
2174 | (reg_or_neg_short_operand, fix_trunc_dest_operand): Delete | |
2175 | unused predicates. | |
2176 | * config/rs6000/altivec.md (save_vregs_*, restore_vregs_*): | |
2177 | Use altivec_register_operand. Make insn predicate TARGET_ALTIVEC. | |
2178 | * config/rs6000/rs6000.md (extzvdi_internal2): Use cc_reg_operand. | |
2179 | * config/rs6000/vsx.md (vsx_float<VSi><mode>2): Expand comment. | |
2180 | ||
069b9d52 | 2181 | 2015-05-19 Sameera Deshpande <Sameera.Deshpande@imgtec.com> |
2182 | ||
2183 | * config/mips/mips.md (JOIN_MODE): New mode iterator. | |
2184 | (join2_load_Store<JOIN_MODE:mode>): New pattern. | |
2185 | (join2_loadhi): Likewise. | |
2186 | (define_peehole2): Add peephole2 patterns to join 2 HI/SI/SF/DF-mode | |
2187 | load-load and store-stores. | |
2188 | * config/mips/mips.opt (mload-store-pairs): New option. | |
2189 | (TARGET_LOAD_STORE_PAIRS): New macro. | |
2190 | * config/mips/mips.h (ENABLE_LD_ST_PAIRS): Likewise. | |
2191 | * config/mips/mips-protos.h (mips_load_store_bonding_p): New prototype. | |
2192 | * config/mips/mips.c (mips_load_store_bonding_p): New function. | |
2193 | ||
dfcf26a5 | 2194 | 2015-05-19 Mikhail Maltsev <maltsevm@gmail.com> |
2195 | ||
2196 | * bb-reorder.c (fix_up_fall_thru_edges): Use std::swap instead of | |
2197 | explicit swaps. | |
2198 | * dojump.c (do_compare_rtx_and_jump): Likewise. | |
2199 | * expmed.c (emit_store_flag_1): Likewise. | |
2200 | * fibonacci_heap.h (fibonacci_heap::union_with): Likewise. | |
2201 | * final.c (sprint_ul): Use std::reverse for reversing a string. | |
2202 | * fold-const.c (extract_muldiv_1): Use std::swap. | |
2203 | * genmodes.c (emit_mode_int_n): Likewise. | |
2204 | * ifcvt.c (dead_or_predicable): Likewise. | |
2205 | * ira-build.c (ira_merge_live_ranges): Likewise. | |
2206 | (swap_allocno_copy_ends_if_necessary): Likewise. | |
2207 | * ira.c (ira_setup_alts): Likewise. | |
2208 | * loop-iv.c (iv_analyze_expr): Likewise. | |
2209 | (implies_p): Likewise. | |
2210 | (canon_condition): Likewise. | |
2211 | * lra-constraints.c (swap_operands): Likewise. | |
2212 | * lra-lives.c (lra_merge_live_ranges): Likewise. | |
2213 | * omega.c (swap): Remove. | |
2214 | (bswap): Remove. | |
2215 | (omega_unprotect_1): Use std::swap. | |
2216 | (omega_solve_geq): Likewise. | |
2217 | * optabs.c (expand_binop_directly): Likewise. | |
2218 | (expand_binop): Likewise. | |
2219 | (emit_conditional_move): Likewise. | |
2220 | (emit_conditional_add): Likewise. | |
2221 | * postreload.c (reload_cse_simplify_operands): Likewise. | |
2222 | * reg-stack.c (emit_swap_insn): Likewise. | |
2223 | (swap_to_top): Likewise. | |
2224 | (compare_for_stack_reg): Likewise. | |
2225 | (subst_asm_stack_regs): Likewise. | |
2226 | * reload.c (find_reloads): Likewise. | |
2227 | * reload1.c (gen_reload_chain_without_interm_reg_p): Likewise. | |
2228 | * sel-sched.c (invoke_reorder_hooks): Likewise. | |
2229 | (create_block_for_bookkeeping): Likewise. | |
2230 | * tree-data-ref.c (lambda_matrix_row_exchange): Remove. | |
2231 | (lambda_matrix_right_hermite): Use std::swap. | |
2232 | * tree-ssa-coalesce.c (sort_coalesce_list): Likewise. | |
2233 | * tree-ssa-ifcombine.c (ifcombine_ifandif): Likewise. | |
2234 | * tree-ssa-loop-ivopts.c (iv_ca_delta_reverse): Likewise. | |
2235 | * tree-ssa-math-opts.c (is_widening_mult_p): Likewise. | |
2236 | * tree-ssa-phiopt.c (hoist_adjacent_loads): Likewise. | |
2237 | * tree-ssa-reassoc.c (linearize_expr_tree): Likewise. | |
2238 | * tree-ssa-threadedge.c (simplify_control_stmt_condition): Likewise. | |
2239 | * tree-vrp.c (compare_ranges): Likewise. | |
2240 | * var-tracking.c (add_with_sets): Likewise. | |
2241 | (vt_find_locations): Likewise. | |
2242 | ||
c13554dd | 2243 | 2015-05-18 Andreas Tobler <andreast@gcc.gnu.org> |
2244 | ||
2245 | * config/freebsd-spec.h (FBSD_STARTFILE_SPEC): Add the bits to build | |
2246 | pie executables. | |
2247 | (FBSD_ENDFILE_SPEC): Likewise. | |
2248 | * config/i386/freebsd.h (STARTFILE_SPEC): Remove and use the one from | |
2249 | config/freebsd-spec.h. | |
2250 | (ENDFILE_SPEC): Likewise. | |
2251 | ||
21469cdd | 2252 | 2015-05-18 Uros Bizjak <ubizjak@gmail.com> |
2253 | Richard Henderson <rth@redhat.com> | |
2254 | ||
2255 | PR target/57032 | |
2256 | * config/alpha/constraints.md (Q): Rewrite as define_memory_constraint. | |
2257 | Check for a memory location that is not a reference (using an AND) | |
2258 | to an unaligned location here. | |
2259 | * config/alpha/predicates.md (normal_memory_operand): Remove. | |
2260 | ||
9ed784d8 | 2261 | 2015-05-18 Alex Velenko <Alex.Velenko@arm.com> |
2262 | ||
2263 | * config/arm/arm.md (andsi_not_shiftsi_si_scc): New pattern. | |
2264 | (andsi_not_shiftsi_si_scc_no_reuse): New pattern. | |
2265 | ||
c4d69063 | 2266 | 2015-05-18 Robert Suchanek <robert.suchanek@imgtec.com> |
2267 | ||
2268 | * config/mips/mips.c (micromips_globals): New variable. | |
2269 | (mips_set_compression_mode): Save and reinitialize target-dependent | |
2270 | state for microMIPS. | |
2271 | ||
bf4fc919 | 2272 | 2015-05-18 Martin Liska <mliska@suse.cz> |
2273 | ||
2274 | * dbgcnt.def: Add new counter. | |
7bc95bfb | 2275 | * ipa-icf.c (sem_item_optimizer::merge_classes): Use the counter. |
bf4fc919 | 2276 | |
0c976409 | 2277 | 2015-05-18 Martin Liska <mliska@suse.cz> |
2278 | ||
2279 | * dbgcnt.def: Sort counters. | |
2280 | * opts.c (common_handle_option): Do not compile if | |
2281 | -fdbg-cnt-list is enabled. | |
2282 | ||
2e474820 | 2283 | 2015-05-18 Tom de Vries <tom@codesourcery.com> |
2284 | ||
2285 | * gimplify.c (gimplify_modify_expr): Remove do_deref handling. | |
2286 | (gimplify_va_arg_expr): Remove do_deref handling. Remove adding of | |
2287 | address operator to va_list operand. | |
2288 | * tree-stdarg.c (expand_ifn_va_arg_1): Do deref of va_list operand | |
2289 | unconditionally. | |
2290 | * config/i386/i386.c (ix86_gimplify_va_arg): Remove deref on va_list | |
2291 | operand. | |
2292 | * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Same. | |
2293 | * config/s390/s390.c (s390_gimplify_va_arg): Same. | |
2294 | * config/spu/spu.c (spu_gimplify_va_arg_expr): Same. | |
2295 | ||
67a8fb5d | 2296 | 2015-05-18 Tom de Vries <tom@codesourcery.com> |
2297 | ||
2298 | * tree-ssa-tail-merge.c: Fix whitespace. | |
2299 | ||
56c066e0 | 2300 | 2015-05-17 Jim Wilson <jim.wilson@linaro.org> |
2301 | ||
2302 | * doc/invoke.texi (ARM Options, mtune): Add generic-armv7-a, | |
2303 | cortex-a17, and cortex-a17.cortex-a7. | |
2304 | ||
cc3ebac3 | 2305 | 2015-05-17 Oleg Endo <olegendo@gcc.gnu.org> |
2306 | ||
2307 | PR target/54236 | |
2308 | * config/sh/sh.md (*addc_2r_t): Use ashift instead of mult. | |
2309 | ||
d997eb17 | 2310 | 2015-05-17 Uros Bizjak <ubizjak@gmail.com> |
2311 | ||
2312 | PR target/66174 | |
2313 | * config/i386/i386.c (expand_vec_perm_blend): Enable HImode and | |
2314 | QImode inner modes for TARGET_AVX512BW. Force mask operand | |
2315 | to a register for AVX512F modes. | |
2316 | ||
2317 | 2015-05-16 Jan Hubicka <hubicka@ucw.cz> | |
5be0de38 | 2318 | |
2319 | * toplev.c (emit_debug_global_declarations): Do not output debug info | |
2320 | when doing slim LTO objects. | |
2321 | ||
d997eb17 | 2322 | 2015-05-16 Jan Hubicka <hubicka@ucw.cz> |
2c803c54 | 2323 | |
2324 | * ipa-utils.h (warn_types_mismatch, odr_or_derived_type_p, | |
2325 | odr_types_equivalent_p): Declare. | |
2326 | (odr_type_p): Use gcc_checking_assert. | |
2327 | (type_in_anonymous_namespace_p) Declare. | |
2328 | (type_with_linkage_p): Declare. | |
2329 | * common.opt (Wlto-type-mismatch): New warning. | |
2330 | * ipa-devirt.c (compound_type_base): New function. | |
2331 | (odr_or_derived_type_p): New function. | |
2332 | (odr_types_equivalent_p): New function. | |
2333 | (add_type_duplicate): Simplify. | |
2334 | (type_with_linkage_p): Add hack to prevent false positives on C types | |
2335 | (type_in_anonymous_namespace_p): Likewise. | |
2336 | * tree.c (need_assembler_name_p): Use type_with_linkage. | |
2337 | * tree.h (type_in_anonymous_namespace_p): Remove. | |
2338 | * doc/invoke.texi (-Wlto-type-mismatch): Document | |
2339 | ||
d997eb17 | 2340 | 2015-05-16 Jan Hubicka <hubicka@ucw.cz> |
17223f31 | 2341 | |
2342 | * tree.c (verify_type_variant): Verify tree_base and type_common flags. | |
2343 | (verify_type): Verify STRING_FLAG. | |
2344 | ||
09172322 | 2345 | 2015-05-16 Manuel López-Ibáñez <manu@gcc.gnu.org> |
2346 | ||
2347 | PR fortran/44054 | |
2348 | * tree-pretty-print.c (percent_K_format): Replace locus pointer | |
2349 | with accessor function. | |
2350 | * tree-diagnostic.c (diagnostic_report_current_function): Use | |
2351 | diagnostic_location function. | |
2352 | (maybe_unwind_expanded_macro_loc): Likewise. | |
2353 | (virt_loc_aware_diagnostic_finalizer): Likewise. | |
2354 | (default_tree_printer): Replace locus pointer with accessor function. | |
2355 | * diagnostic.c (diagnostic_initialize): Initialize caret_chars array. | |
2356 | (diagnostic_set_info_translated): Initialize second location. | |
2357 | (diagnostic_build_prefix): Use CARET_LINE_MARGIN. | |
2358 | (diagnostic_show_locus): Handle two locations. Call | |
2359 | diagnostic_print_caret_line. | |
2360 | (diagnostic_print_caret_line): New. | |
2361 | (default_diagnostic_starter): Use diagnostic_location function. | |
2362 | (diagnostic_report_diagnostic): Use diagnostic_location function. | |
2363 | (verbatim): Do not set text.locus. | |
2364 | * diagnostic.h (struct diagnostic_info): Remove location field. | |
2365 | (struct diagnostic_context): Make caret_chars an array of two. | |
2366 | (diagnostic_location): New inline. | |
2367 | (diagnostic_expand_location): Handle two locations. | |
2368 | (diagnostic_same_line): New inline. | |
2369 | (diagnostic_print_caret_line): Declare. | |
2370 | (CARET_LINE_MARGIN): New constant. | |
2371 | * pretty-print.c (pp_printf): Do not set text.locus. | |
2372 | (pp_verbatim): Do not set text.locus. | |
2373 | * pretty-print.h (MAX_LOCATIONS_PER_MESSAGE): New constant. | |
2374 | (struct text_info): Replace locus pointer with locations | |
2375 | array. Add accessor functions. | |
2376 | ||
17202aa5 | 2377 | 2015-05-16 Kugan Vivekanandarajah <kuganv@linaro.org> |
2378 | Zhenqiang Chen <zhenqiang.chen@linaro.org> | |
2379 | ||
2380 | PR target/65768 | |
2381 | * config/arm/arm.h (DONT_EARLY_SPLIT_CONSTANT): New macro. | |
2382 | * config/arm/arm.md (subsi3, andsi3, iorsi3, xorsi3, movsi): Keep some | |
2383 | large constants in register instead of splitting them. | |
2384 | ||
b4e5c0d9 | 2385 | 2015-05-16 Uros Bizjak <ubizjak@gmail.com> |
2386 | ||
2387 | PR target/66140 | |
2388 | * config/alpha/alpha.c (get_aligned_mem): Also look for reload | |
2389 | replacements in memory addresses. | |
2390 | (get_unaligned_address): Ditto. | |
2391 | ||
d792dcdf | 2392 | 2015-05-15 Marc Glisse <marc.glisse@inria.fr> |
2393 | ||
2394 | PR tree-optimization/64454 | |
2395 | * match.pd ((X % Y) % Y, (X % Y) < Y): New patterns. | |
2396 | (-1 - A -> ~A): Remove unnecessary condition. | |
2397 | ||
5551c8d9 | 2398 | 2015-05-15 Gregor Richards <gregor.richards@uwaterloo.ca> |
2399 | ||
2400 | * config/i386/linux.h (MUSL_DYNAMIC_LINKER): Define. | |
2401 | * config/i386/linux64.h (MUSL_DYNAMIC_LINKER32): Define. | |
2402 | (MUSL_DYNAMIC_LINKER64, MUSL_DYNAMIC_LINKERX32): Define. | |
2403 | ||
9664a778 | 2404 | 2015-05-15 Ilya Enkovich <ilya.enkovich@intel.com> |
2405 | ||
2406 | * ipa-chkp.h (chkp_wrap_function): New. | |
2407 | * ipa-chkp.c (chkp_wrap_function): Remove 'static'. | |
2408 | (chkp_wrap_function_name): New. | |
2409 | (chkp_build_instrumented_fndecl): Use chkp_wrap_function_name | |
2410 | to get wrapper name. | |
2411 | * lto-cgraph.c: Include ipa-chkp.h. | |
2412 | (input_cgraph_1): Avoid alias chain for wrappers. | |
2413 | ||
d86dfeae | 2414 | 2015-05-15 Ilya Enkovich <enkovich.gnu@gmail.com> |
2415 | ||
2416 | PR middle-end/66134 | |
2417 | * tree-chkp.c (chkp_get_orginal_bounds_for_abnormal_copy): New. | |
2418 | (chkp_maybe_copy_and_register_bounds): Don't copy abnormal copy. | |
2419 | ||
0da7e4e7 | 2420 | 2015-05-15 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
2421 | ||
2422 | * config/aarch64/aarch64.h (AARCH64_TUNE_SLOWMUL): Delete. | |
2423 | (AARCH64_FL_SLOWMUL): Delete. | |
2424 | (AARCH64_FL_CRC): Redefine to 1<<3. | |
2425 | (AARCH64_FL_USE_FMA_STEERING_PASS): Redefine to 1<<4. | |
2426 | ||
38663330 | 2427 | 2015-05-15 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> |
2428 | ||
2429 | * config/arm/arm.h (LOGICAL_OP_NON_SHORT_CIRCUIT): Add appropriate | |
2430 | casting. | |
2431 | ||
4afce771 | 2432 | 2015-05-15 Uros Bizjak <ubizjak@gmail.com> |
2433 | ||
2434 | * config/alpha/alpha.md (extendqidi2): Use general_operand | |
2435 | instead of some_operand for operand[1] predicate. | |
2436 | (extendhidi2): Ditto. | |
2437 | (cbranchdi4): Use general_operand instead of some_operand | |
2438 | for operand[1] and operands[2] predicates. | |
2439 | (cstoredi4): Ditto. | |
2440 | * config/alpha/predicates.md (some_operand): Remove unused predicate. | |
2441 | (some_ni_operand): Ditto. | |
2442 | ||
316e4f71 | 2443 | 2015-05-15 Uros Bizjak <ubizjak@gmail.com> |
2444 | ||
2445 | * config/alpha/alpha.c (alpha_extract_integer): Do not handle | |
2446 | CONST_WIDE_INT and CONST_DOUBLE. Assert CONST_INT_P (x). | |
2447 | (alpha_legitimate_constant_p) <case CONST_WIDE_INT>: Check high and | |
2448 | low part of the constant using alpha_emit_set_const_1. | |
2449 | (alpha_expand_mov): Do not handle CONST_WIDE_INT and CONST_DOUBLE. | |
2450 | ||
8e2a42ca | 2451 | 2015-05-14 Rohit Arul Raj <rohitrulraj@freescale.com> |
2452 | ||
2453 | * varasm.c (output_constant_pool_1): Pass down alignment from | |
2454 | constant pool entry's descriptor to output_constant_pool_2. | |
2455 | (output_object_block): Add comment prior to call to | |
2456 | output_constant_pool_1. | |
2457 | ||
20c3c7fc | 2458 | 2015-05-14 Vladimir Makarov <vmakarov@redhat.com> |
2459 | ||
2460 | PR rtl-optimization/65862 | |
2461 | * target.def (ira_change_pseudo_allocno_class): New hook. | |
2462 | * targhooks.c (default_ira_change_pseudo_allocno_class): Default | |
2463 | value of the hook. | |
316e4f71 | 2464 | * targhooks.h (default_ira_change_pseudo_allocno_class): New extern. |
20c3c7fc | 2465 | * doc/tm.texi.in (TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS): Add the |
2466 | hook. | |
2467 | * ira-costs.c (find_costs_and_classes): Call the hook and change | |
2468 | classes when it is necessary. | |
2469 | * doc/tm.texi: Update. | |
2470 | ||
d92a49b5 | 2471 | 2015-05-14 Alexander Monakov <amonakov@ispras.ru> |
2472 | ||
2473 | * config/i386/i386.md (sibcall_memory): Check that register with | |
2474 | callee address is not also used as one of the arguments, instead | |
2475 | of checking that it is not live after the sibcall. | |
2476 | (sibcall_pop_memory): Ditto. | |
2477 | (sibcall_value_memory): Ditto. | |
316e4f71 | 2478 | (sibcall_value_pop_memory): Ditto. |
d92a49b5 | 2479 | |
b1306f12 | 2480 | 2015-05-14 Marc Glisse <marc.glisse@inria.fr> |
2481 | ||
2482 | * generic-match-head.c (types_match): Handle non-types. | |
2483 | * gimple-match-head.c (types_match): Likewise. | |
2484 | * match.pd: Remove unnecessary TREE_TYPE for types_match. | |
2485 | ||
f036380a | 2486 | 2015-05-14 Wilco Dijkstra <wdijkstr@arm.com> |
2487 | ||
2488 | * config/aarch64/aarch64.md (absdi2): Optimize abs expansion. | |
2489 | (csneg3<mode>_insn): Enable expansion of pattern. | |
2490 | ||
8d2e95d3 | 2491 | 2015-05-14 Nick Clifton <nickc@redhat.com> |
2492 | ||
2493 | * config/rl78/rl78.c (rl78_select_section): Select the correct | |
2494 | default section based upon the category of the decl. | |
2495 | ||
ee8d5530 | 2496 | 2015-05-13 Segher Boessenkool <segher@kernel.crashing.org> |
2497 | ||
2498 | PR rtl-optimization/30967 | |
2499 | * config/rs6000/rs6000.c (rs6000_rtx_costs): Don't consider | |
2500 | destination mode for the cost of scc patterns. | |
2501 | ||
8fc8b916 | 2502 | 2015-05-13 Uros Bizjak <ubizjak@gmail.com> |
2503 | ||
2504 | * config/i386/i386.md (*mul<mode>3_1): Merge with *mulhi3_1 | |
2505 | using SWIM248 mode iterator. | |
2506 | (*mulv<mode>4): Use x86_64_sext_operand for operand[2] constraint. | |
2507 | (*mulvhi4): mark operand[1] as commutative. Use nonimmediate_operand | |
2508 | for operand[2] constraint. | |
2509 | (*mulv<mode>4_1): Merge with *mulvhi4_1 using SWI248 mode iterator. | |
2510 | ||
b25f70fd | 2511 | 2015-05-13 Jakub Jelinek <jakub@redhat.com> |
2512 | ||
2513 | PR middle-end/66133 | |
2514 | * omp-low.c (expand_omp_taskreg): For GIMPLE_OMP_TASK expansion, | |
2515 | make sure it is never noreturn, even when the task body does not | |
2516 | return. | |
2517 | (lower_omp_taskreg): For GIMPLE_OMP_TASK, emit GIMPLE_OMP_CONTINUE | |
2518 | right before GIMPLE_OMP_RETURN. | |
2519 | (make_gimple_omp_edges): Accept GIMPLE_OMP_CONTINUE as ->cont | |
2520 | for GIMPLE_OMP_TASK. For GIMPLE_OMP_RETURN corresponding to | |
2521 | GIMPLE_OMP_TASK add an EDGE_ABNORMAL edge from entry to exit. | |
2522 | ||
c3206272 | 2523 | 2015-05-13 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
2524 | ||
2525 | * params.def (PARAM_MAX_POW_SQRT_DEPTH): New param. | |
2526 | * tree-ssa-math-opts.c: Include params.h | |
2527 | (pow_synth_sqrt_info): New struct. | |
2528 | (representable_as_half_series_p): New function. | |
2529 | (get_fn_chain): Likewise. | |
2530 | (print_nested_fn): Likewise. | |
2531 | (dump_fractional_sqrt_sequence): Likewise. | |
2532 | (dump_integer_part): Likewise. | |
2533 | (expand_pow_as_sqrts): Likewise. | |
2534 | (gimple_expand_builtin_pow): Use above to attempt to expand | |
2535 | pow as series of square roots. Removed now unused variables. | |
2536 | ||
debb7e7a | 2537 | 2015-05-13 Uros Bizjak <ubizjak@gmail.com> |
2538 | ||
2539 | * config/alpha/alpha.c (alpha_emit_set_long_const): Remove c1 argument. | |
2540 | (alpha_extract_integer): Redeclare as static HOST_WIDE_INT. | |
2541 | Remove *p0 and *p1 arguments. Rewrite function. | |
2542 | (alpha_legitimate_constant_p): Update call to alpha_extract_integer. | |
2543 | (alpha_split_const_mov): Update calls to alpha_extract_integer and | |
2544 | alpha_emit_set_long_const. | |
2545 | (alpha_expand_epilogue): Update calls to alpha_emit_set_long_const. | |
2546 | (alpha_output_mi_thunk_osf): Ditto. | |
2547 | * config/alpha/alpha.md (movti): Do not check operands[1] | |
2548 | for CONST_DOUBLE. | |
2549 | ||
7f2a705a | 2550 | 2015-05-13 Richard Biener <rguenther@suse.de> |
2551 | ||
2552 | PR tree-optimization/66129 | |
2553 | * tree-vect-slp.c (vect_build_slp_tree): Make sure all ops are | |
2554 | commutative. | |
2555 | (vect_schedule_slp_instance): Fix typo. | |
2556 | ||
28f17529 | 2557 | 2015-05-13 David Malcolm <dmalcolm@redhat.com> |
2558 | ||
2559 | * common.opt (fdump-internal-locations): New option. | |
2560 | * input.c: Include diagnostic-core.h. | |
2561 | (get_end_location): New function. | |
2562 | (write_digit): New function. | |
2563 | (write_digit_row): New function. | |
2564 | (dump_location_range): New function. | |
2565 | (dump_labelled_location_range): New function. | |
2566 | (dump_location_info): New function. | |
2567 | * input.h (dump_location_info): New prototype. | |
2568 | * toplev.c (compile_file): Handle flag_dump_locations. | |
2569 | ||
1fa87479 | 2570 | 2015-05-13 Eric Botcazou <ebotcazou@adacore.com> |
2571 | ||
2572 | * gimple-expr.h (is_gimple_constant): Reorder. | |
2573 | * tree-ssa-propagate.c (before_dom_children): Use inline accessor. | |
2574 | ||
bbaa616a | 2575 | 2015-05-13 Segher Boessenkool <segher@kernel.crashing.org> |
2576 | ||
2577 | * combine.c (simplify_set): When generating a CC set, if the | |
2578 | source already is in the correct mode, do not wrap it in a | |
2579 | compare. Simplify the rest of that code. | |
2580 | ||
db0dd9ee | 2581 | 2015-05-13 Richard Biener <rguenther@suse.de> |
2582 | ||
2583 | PR tree-optimization/66123 | |
2584 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Check if we found | |
2585 | a taken edge. | |
2586 | ||
e8a68f8c | 2587 | 2015-05-13 Richard Biener <rguenther@suse.de> |
2588 | ||
2589 | PR middle-end/66110 | |
2590 | * alias.c (alias_sets_conflict_p): Do not treat has_zero_child | |
2591 | specially. | |
2592 | * Makefile.in (dfp.o-warn): Add -Wno-strict-aliasing. | |
2593 | ||
771e3be2 | 2594 | 2015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com> |
2595 | ||
2596 | * doc/install.texi: Bump latest automake 1.11 version to 1.11.6. | |
2597 | * aclocal.m4: Regenerated with automake-1.11.6. | |
2598 | ||
20d9b9e9 | 2599 | 2015-05-13 Tom de Vries <tom@codesourcery.com> |
2600 | ||
2601 | PR tree-optimization/66010 | |
2602 | * gimplify.h (gimplify_va_arg_internal): Remove declaration. | |
2603 | * gimplify.c (gimplify_va_arg_internal): Remove and inline into ... | |
2604 | * tree-stdarg.c (expand_ifn_va_arg_1): ... here. Choose between lval | |
2605 | and rval based on do_deref. | |
2606 | ||
5f895b5c | 2607 | 2015-05-13 Ilya Enkovich <ilya.enkovich@intel.com> |
2608 | ||
2609 | PR target/65103 | |
2610 | * config/i386/i386.c (ix86_rtx_costs): We want to propagate | |
2611 | link time constants into adress expressions and therefore set | |
2612 | their cost to 0. | |
2613 | ||
4e417836 | 2614 | 2015-05-13 Jakub Jelinek <jakub@redhat.com> |
2615 | ||
3aa63c73 | 2616 | PR target/66112 |
2617 | * config/i386/i386.md (mulv<mode>4, umulv<mode>4, *umulv<mode>4): | |
2618 | Use SWI248 iterator instead of SWI. | |
2619 | (*mulv<mode>4_1): Use SWI48 instead of SWI. Simplify output template. | |
2620 | Use eq_attr "alternative" "0" instead of match_test in | |
2621 | length_immediate attribute computation. | |
2622 | (*mulvhi4, *mulvhi4_1): New define_insns. | |
2623 | ||
4e417836 | 2624 | PR target/66112 |
2625 | * internal-fn.c (get_min_precision): Use UNSIGNED instead of | |
2626 | SIGNED to get precision of non-negative value. | |
2627 | ||
1b172b45 | 2628 | 2015-05-13 Ilya Enkovich <ilya.enkovich@intel.com> |
2629 | ||
2630 | PR target/66048 | |
2631 | * function.c (diddle_return_value_1): Process bounds first. | |
2632 | * config/i38/i386.c (ix86_function_value_regno_p): Add bnd1 | |
2633 | register. | |
2634 | ||
570c7ca7 | 2635 | 2015-05-13 Thomas Preud'homme <thomas.preudhomme@arm.com> |
2636 | ||
2637 | PR rtl-optimization/64616 | |
2638 | * loop-invariant.c (can_move_invariant_reg): New. | |
2639 | (move_invariant_reg): Call above new function to decide whether | |
2640 | instruction can just be moved, skipping creation of temporary | |
2641 | register. | |
2642 | ||
f5eab8eb | 2643 | 2015-05-12 Jan Hubicka <hubicka@ucw.cz> |
2644 | ||
2645 | PR target/pr66047.c | |
2646 | * i386.c (ix86_function_sseregparm): Only return -1 if local function | |
2647 | with implied regparm is called from -mno-sse function. | |
2648 | (init_cumulative_args): Output error if ix86_function_sseregparm | |
2649 | return -1 and SSE register would be needed. | |
2650 | (function_arg_advance_32): Likewise. | |
2651 | (function_arg_32): Likewise. | |
2652 | * i386.h (ix86_args): Add decl field. | |
2653 | ||
be8cbfec | 2654 | 2015-05-12 Jan Hubicka <hubicka@ucw.cz> |
2655 | ||
2656 | PR ipa/65873 | |
2657 | * ipa-inline.c (can_inline_edge_p): Allow early inlining of always | |
2658 | inlines across optimization boundary. | |
2659 | ||
9d247a3d | 2660 | 2015-05-12 Jason Merrill <jason@redhat.com> |
2661 | ||
2662 | * config/mmix/mmix.c, config/msp430/msp430.c: Add space between | |
2663 | string literal and macro name. | |
2664 | ||
a30fc7a9 | 2665 | 2015-05-12 Steve Ellcey <sellcey@imgtec.com> |
2666 | ||
2667 | * config/mips/mips.c (mips_print_operand): Remove 'y' operand code. | |
2668 | * config/mips/mips.md (<GPR:d>lsa): Rewrite with shift operator. | |
2669 | * config/mips/predicates.md (const_immlsa_operand): Remove log call. | |
2670 | ||
e5f01cba | 2671 | 2015-05-12 David Malcolm <dmalcolm@redhat.com> |
2672 | ||
2673 | * doc/invoke.texi (Warning Options): Add -Wmisleading-indentation. | |
2674 | (-Wmisleading-indentation): New option. | |
2675 | * Makefile.in (C_COMMON_OBJS): Add c-family/c-indentation.o. | |
2676 | ||
5c5c1f00 | 2677 | 2015-05-12 Uros Bizjak <ubizjak@gmail.com> |
2678 | ||
2679 | * config/alpha/alpha.h (TARGET_SUPPORTS_WIDE_INT): New define. | |
2680 | * config/alpha/alpha.c (alpha_rtx_costs): Handle CONST_WIDE_INT. | |
2681 | (alpha_extract_integer): Ditto. | |
2682 | (alpha_legitimate_constant_p): Ditto. | |
2683 | (alpha_split_tmode_pair): Ditto. | |
2684 | (alpha_preferred_reload_class): Add CONST_WIDE_INT. | |
2685 | (alpha_expand_mov): Ditto. | |
2686 | (print_operand): Remove handling of 'H' modifier. | |
2687 | <case 'm'>: Remove CONST_DOUBLE handling. | |
2688 | (summarize_insn): Handle CONST_WIDE_INT. | |
2689 | * config/alpha/alpha.md (*andsi_internal): Remove H constraint. | |
2690 | (anddi3): Ditto. | |
2691 | (movti): Handle CONST_WIDE_INT. | |
2692 | * config/alpha/constraints.md ('H'): Remove constraint definition. | |
2693 | ('G'): Do not match MODE_FLOAT class. | |
2694 | * config/alpha/predicates.md (const0_operand): Also match | |
2695 | const_wide_int. | |
2696 | (non_add_const_operand): Ditto. | |
2697 | (non_zero_const_operand): Ditto. | |
2698 | (some_operand): Ditto. | |
2699 | (input_operand): Ditto. Handle CONST_WIDE_INT. | |
2700 | (and_operand): Do not match const_double. | |
2701 | * config/alpha/sync.md (fetchop_constr): Remove H constraint. | |
2702 | ||
a372f7ca | 2703 | 2015-05-12 Andrew MacLeod <amacleod@redhat.com> |
2704 | ||
2705 | PR target/65697 | |
2706 | * coretypes.h (MEMMODEL_SYNC, MEMMODEL_BASE_MASK): New macros. | |
2707 | (enum memmodel): Add SYNC_{ACQUIRE,RELEASE,SEQ_CST}. | |
2708 | * tree.h (memmodel_from_int, memmodel_base, is_mm_relaxed, | |
2709 | is_mm_consume,is_mm_acquire, is_mm_release, is_mm_acq_rel, | |
2710 | is_mm_seq_cst, is_mm_sync): New accessor functions. | |
2711 | * builtins.c (expand_builtin_sync_operation, | |
2712 | expand_builtin_compare_and_swap): Use MEMMODEL_SYNC_SEQ_CST. | |
2713 | (expand_builtin_sync_lock_release): Use MEMMODEL_SYNC_RELEASE. | |
2714 | (get_memmodel, expand_builtin_atomic_compare_exchange, | |
2715 | expand_builtin_atomic_load, expand_builtin_atomic_store, | |
2716 | expand_builtin_atomic_clear): Use new accessor routines. | |
2717 | (expand_builtin_sync_synchronize): Use MEMMODEL_SYNC_SEQ_CST. | |
2718 | * optabs.c (expand_compare_and_swap_loop): Use MEMMODEL_SYNC_SEQ_CST. | |
2719 | (maybe_emit_sync_lock_test_and_set): Use new accessors and | |
2720 | MEMMODEL_SYNC_ACQUIRE. | |
2721 | (expand_sync_lock_test_and_set): Use MEMMODEL_SYNC_ACQUIRE. | |
2722 | (expand_mem_thread_fence, expand_mem_signal_fence, expand_atomic_load, | |
2723 | expand_atomic_store): Use new accessors. | |
2724 | * emit-rtl.c (need_atomic_barrier_p): Add additional enum cases. | |
2725 | * tsan.c (instrument_builtin_call): Update check for memory model beyond | |
2726 | final enum to use MEMMODEL_LAST. | |
2727 | * c-family/c-common.c: Use new accessor for memmodel_base. | |
2728 | * config/aarch64/aarch64.c (aarch64_expand_compare_and_swap): Use new | |
2729 | accessors. | |
2730 | * config/aarch64/atomics.md (atomic_load<mode>,atomic_store<mode>, | |
2731 | arch64_load_exclusive<mode>, aarch64_store_exclusive<mode>, | |
2732 | mem_thread_fence, *dmb): Likewise. | |
2733 | * config/alpha/alpha.c (alpha_split_compare_and_swap, | |
2734 | alpha_split_compare_and_swap_12): Likewise. | |
2735 | * config/arm/arm.c (arm_expand_compare_and_swap, | |
2736 | arm_split_compare_and_swap, arm_split_atomic_op): Likewise. | |
2737 | * config/arm/sync.md (atomic_load<mode>, atomic_store<mode>, | |
2738 | atomic_loaddi): Likewise. | |
2739 | * config/i386/i386.c (ix86_destroy_cost_data, ix86_memmodel_check): | |
2740 | Likewise. | |
2741 | * config/i386/sync.md (mem_thread_fence, atomic_store<mode>): Likewise. | |
2742 | * config/ia64/ia64.c (ia64_expand_atomic_op): Add new memmodel cases and | |
2743 | use new accessors. | |
2744 | * config/ia64/sync.md (mem_thread_fence, atomic_load<mode>, | |
2745 | atomic_store<mode>, atomic_compare_and_swap<mode>, | |
2746 | atomic_exchange<mode>): Use new accessors. | |
2747 | * config/mips/mips.c (mips_process_sync_loop): Likewise. | |
2748 | * config/pa/pa.md (atomic_loaddi, atomic_storedi): Likewise. | |
2749 | * config/rs6000/rs6000.c (rs6000_pre_atomic_barrier, | |
2750 | rs6000_post_atomic_barrier): Add new cases. | |
2751 | (rs6000_expand_atomic_compare_and_swap): Use new accessors. | |
2752 | * config/rs6000/sync.md (mem_thread_fence): Add new cases. | |
2753 | (atomic_load<mode>): Add new cases and use new accessors. | |
2754 | (store_quadpti): Add new cases. | |
2755 | * config/s390/s390.md (mem_thread_fence, atomic_store<mode>): Use new | |
2756 | accessors. | |
2757 | * config/sparc/sparc.c (sparc_emit_membar_for_model): Use new accessors. | |
2758 | * doc/extend.texi: Update docs to indicate 16 bits are used for memory | |
2759 | model, not 8. | |
2760 | ||
1a39dc4d | 2761 | 2015-05-12 Jan Hubicka <hubicka@ucw.cz> |
2762 | ||
2763 | * ipa-devirt.c (type_with_linkage_p): New function. | |
2764 | (type_in_anonymous_namespace_p): Move here from tree.c; assert that | |
2765 | type has linkage. | |
2766 | (odr_type_p): Move here from ipa-utils.h; use type_with_linkage_p. | |
2767 | (can_be_name_hashed_p): Simplify. | |
2768 | (hash_odr_name): Check that type has linkage before checking if it is | |
2769 | anonymous. | |
2770 | (types_same_for_odr): Likewise. | |
2771 | (odr_name_hasher::equal): Likewise. | |
2772 | (odr_subtypes_equivalent_p): Likewise. | |
2773 | (warn_types_mismatch): Likewise. | |
2774 | (get_odr_type): Likewise. | |
2775 | (odr_types_equivalent_p): Fix checking of TYPE_MAIN_VARIANT. | |
2776 | * ipa-utils.h (odr_type_p): Move offline. | |
2777 | * tree.c (need_assembler_name_p): Fix handling of types | |
2778 | without linkages. | |
2779 | (type_in_anonymous_namespace_p): Move to ipa-devirt.c | |
2780 | ||
dd4d567f | 2781 | 2015-05-12 David Malcolm <dmalcolm@redhat.com> |
2782 | ||
2783 | * timevar.c (timevar_enable): Delete in favor of... | |
2784 | (g_timer): New global. | |
2785 | (struct timevar_def): Move to timevar.h inside class timer. | |
2786 | (struct timevar_stack_def): Likewise. | |
2787 | (timevars): Delete global in favor of field "m_timevars" within | |
2788 | class timer in timevar.h | |
2789 | (stack): Likewise, in favor of field "m_stack". | |
2790 | (unused_stack_instances): Likewise, in favor of field | |
2791 | "m_unused_stack_instances". | |
2792 | (start_time): Likewise, in favor of field "m_start_time". | |
2793 | (get_time): Eliminate check for timevar_enable. | |
2794 | (timer::timer): New function, built from part of timevar_init. | |
2795 | (timevar_init): Rewrite idempotency test from using | |
2796 | "timevar_enable" bool to using dynamic allocation of "g_timer". | |
2797 | Move rest of implementation into timer's constructor. | |
2798 | (timevar_push_1): Rename to... | |
2799 | (timer::push): ...this, adding "m_" prefixes to variables that | |
2800 | are now fields of timer. | |
2801 | (timevar_pop_1): Likewise, rename to... | |
2802 | (timer::pop): ...this, and add "m_" prefixes. | |
2803 | (timevar_start): Replace test for "timevar_enable" with one for | |
2804 | "g_timer", and move bulk of implementation to... | |
2805 | (timer::start): ...here, adding "m_" prefixes. | |
2806 | (timevar_stop): Likewise, from here... | |
2807 | (timer::stop): ...to here. | |
2808 | (timevar_cond_start): Likewise, from here... | |
2809 | (timer::cond_start): ...to here. | |
2810 | (timevar_cond_stop): Likewise, from here... | |
2811 | (timer::cond_stop): ...to here. | |
2812 | (validate_phases): Rename to... | |
2813 | (timer::validate_phases): ...this, and add "m_" prefixes. Make | |
2814 | locals "total" and "tv" const. | |
2815 | (timevar_print): Rename to... | |
2816 | (timer::print): ...this, and add "m_" prefixes. Make locals | |
2817 | "total" and "tv" const. Eliminate test for timevar_enable. | |
2818 | * timevar.h (timevar_enable): Eliminate. | |
2819 | (g_timer): New declaration. | |
2820 | (timevar_push_1): Eliminate. | |
2821 | (timevar_pop_1): Eliminate. | |
2822 | (timevar_print): Eliminate. | |
2823 | (class timer): New class. | |
2824 | (timevar_push): Rewrite to use g_timer. | |
2825 | (timevar_pop): Likewise. | |
2826 | * toplev.c (toplev::~toplev): Likewise. | |
2827 | ||
07b456c3 | 2828 | 2015-05-12 Richard Earnshaw <rearnsha@arm.com> |
2829 | ||
2830 | * arm-protos.h (arm_sched_autopref): Delete. | |
2831 | (tune_params): Re-organize, use enums for flag values. | |
2832 | (FUSE_OPS): New macro. | |
2833 | * arm.c (ARM_PREFETCH_NOT_BENEFICIAL): Update. | |
2834 | (ARM_PREFETCH_BENEFICIAL): Likewise. | |
2835 | (ARM_FUSE_NOTHING, ARM_FUSE_MOVW_MOVT): Delete. | |
2836 | (arm_slowmul_tune, arm_fastmul_tune, arm_strongarm_tune) | |
2837 | (arm_xscale_tune, arm_9e_tune, arm_marvell_pj4_tune) | |
2838 | (arm_v6t2_tune, arm_cortex_tune, arm_cortex_a8_tune) | |
2839 | (arm_cortex_a7_tune, arm_cortex_a15_tune, arm_cortex_a53_tune) | |
2840 | (arm_cortex_a57_tune, arm_xgene1_tune, arm_cortex_a5_tune) | |
2841 | (arm_cortex_a9_tune, arm_cortex_a12_tune, arm_v7m_tune) | |
2842 | (arm_cortex_m7_tune, arm_v6m_tune, arm_fa726te_tune): Use new | |
2843 | format. | |
2844 | (arm_option_override, thumb2_reorg, arm_print_tune_info) | |
2845 | (aarch_macro_fusion_pair_p): Update uses of current_tune. | |
38663330 | 2846 | * arm.h (LOGICAL_OP_NON_SHORT_CIRCUIT): Likewise. |
07b456c3 | 2847 | |
1fe5296b | 2848 | 2015-05-12 Sandra Loosemore <sandra@codesourcery.com> |
2849 | ||
2850 | * config/nios2/nios2.md (trap, ctrapsi4): Use "trap" instead of | |
2851 | "break". | |
2852 | ||
1d67120d | 2853 | 2015-05-12 Chung-Lin Tang <cltang@codesourcery.com> |
2854 | Sandra Loosemore <sandra@codesourcery.com> | |
2855 | ||
2856 | * config/nios2/nios2.h (enum reg_class): Add IJMP_REGS enum | |
2857 | value. | |
2858 | (REG_CLASS_NAMES): Add "IJMP_REGS". | |
2859 | (REG_CLASS_CONTENTS): Add new entry for IJMP_REGS. | |
2860 | * config/nios2/nios2.md (indirect_jump,*tablejump): Adjust to | |
2861 | use new "c" register constraint. | |
2862 | * config/nios2/constraint.md (c): New register constraint | |
2863 | corresponding to IJMP_REGS. | |
2864 | ||
11e11570 | 2865 | 2015-05-12 Segher Boessenkool <segher@kernel.crashing.org> |
2866 | ||
2867 | * config/rs6000/rs6000.md (*rotlsi3_internal4, *rotlsi3_internal5, | |
2868 | *rotlsi3_internal6, rlwinm, 5 unnamed define_insns, and 6 | |
2869 | define_splits): Delete, revamp, transmogrify into ... | |
2870 | (*rotlsi3_mask, *rotlsi3_mask_dot, *rotlsi3_mask_dot2, | |
2871 | *ashlsi3_imm_mask, *ashlsi3_imm_mask_dot, *ashlsi3_imm_mask_dot2, | |
2872 | *lshrsi3_imm_mask, *lshrsi3_imm_mask_dot, *lshrsi3_imm_mask_dot2): | |
2873 | New. | |
2874 | ||
66708653 | 2875 | 2015-05-12 Segher Boessenkool <segher@kernel.crashing.org> |
2876 | ||
2877 | * config/rs6000/rs6000.md (rs6000_adjust_atomic_subword): Use | |
2878 | gen_ashlsi3 and gen_andsi3 instead of gen_rlwinm. | |
2879 | ||
8031ee3d | 2880 | 2015-05-12 Segher Boessenkool <segher@kernel.crashing.org> |
2881 | ||
2882 | * config/rs6000/rs6000.md (extzv): FAIL for SImode. | |
2883 | (extzvsi_internal, *extzvsi_internal1, *extzvsi_internal2, | |
2884 | *rotlsi3_internal7le, *rotlsi3_internal7be, *rotlsi3_internal8le, | |
2885 | *rotlsi3_internal8be, *rotlsi3_internal9le, *rotlsi3_internal9be, | |
2886 | *rotlsi3_internal10le, *rotlsi3_internal10be, *rotlsi3_internal11le, | |
2887 | *rotlsi3_internal11be, *rotlsi3_internal12le, *rotlsi3_internal12be, | |
2888 | *lshiftrt_internal1le, *lshiftrt_internal1be, *lshiftrt_internal2le, | |
2889 | *lshiftrt_internal2be, *lshiftrt_internal3le, *lshiftrt_internal3be, | |
2890 | *lshiftrt_internal4le, *lshiftrt_internal4be, *lshiftrt_internal5le, | |
2891 | *lshiftrt_internal5be, *lshiftrt_internal5le, *lshiftrt_internal5be, | |
2892 | *rotldi3_internal7le, *rotldi3_internal7be, *rotldi3_internal8le, | |
2893 | *rotldi3_internal8be, *rotldi3_internal9le, *rotldi3_internal9be, | |
2894 | *rotldi3_internal10le, *rotldi3_internal10be, *rotldi3_internal11le, | |
2895 | *rotldi3_internal11be, *rotldi3_internal12le, *rotldi3_internal12be, | |
2896 | *rotldi3_internal13le, *rotldi3_internal13be, *rotldi3_internal14le, | |
2897 | *rotldi3_internal14be, *rotldi3_internal15le, *rotldi3_internal15be, | |
2898 | and 30 corresponding splitters): Delete. | |
2899 | ||
bace1071 | 2900 | 2015-05-12 Segher Boessenkool <segher@kernel.crashing.org> |
2901 | ||
2902 | * config/rs6000/rs6000.md (define_split for bswaphi): Don't use | |
2903 | zero_extract. | |
2904 | ||
f5882f7a | 2905 | 2015-05-12 Segher Boessenkool <segher@kernel.crashing.org> |
2906 | ||
2907 | * combine.c (recog_for_combine_1): New function, factored out | |
2908 | from recog_for_combine. | |
2909 | (change_zero_ext): New function. | |
2910 | (recog_for_combine): If recog fails, try again with the pattern | |
2911 | modified by change_zero_ext; if that still fails, restore the | |
2912 | pattern. | |
2913 | ||
20985f44 | 2914 | 2015-05-12 Segher Boessenkool <segher@kernel.crashing.org> |
2915 | ||
2916 | * combine.c (get_undo_marker): New function. | |
2917 | (undo_to_marker): New function, largely factored out from ... | |
2918 | (undo_all): ... this. Adjust. | |
2919 | ||
c1d1f6d2 | 2920 | 2015-05-12 Richard Biener <rguenther@suse.de> |
2921 | ||
2922 | PR tree-optimization/66101 | |
2923 | * tree-ssa-dce.c (remove_dead_stmt): Properly mark loops for | |
2924 | fixup if we turn a loop exit edge to a fallthru edge. | |
2925 | ||
66e30248 | 2926 | 2015-05-12 Richard Biener <rguenther@suse.de> |
2927 | ||
2928 | PR tree-optimization/37021 | |
2929 | * tree-vectorizer.h (struct _slp_tree): Add two_operators flag. | |
2930 | (SLP_TREE_TWO_OPERATORS): New define. | |
2931 | * tree-vect-slp.c (vect_create_new_slp_node): Initialize | |
2932 | SLP_TREE_TWO_OPERATORS. | |
2933 | (vect_build_slp_tree_1): Allow two mixing plus/minus in an | |
2934 | SLP node. | |
2935 | (vect_build_slp_tree): Adjust. | |
2936 | (vect_analyze_slp_cost_1): Likewise. | |
2937 | (vect_schedule_slp_instance): Vectorize mixing plus/minus by | |
2938 | emitting two vector stmts and mixing the results. | |
2939 | ||
9291c52b | 2940 | 2015-05-12 Dominik Vogt <vogt@linux.vnet.ibm.com> |
2941 | ||
2942 | * call.c (print_z_candidates): Remove dead code. | |
2943 | ||
5ed1f72b | 2944 | 2015-05-12 Andreas Krebbel <krebbel@linux.vnet.ibm.com> |
2945 | ||
2946 | * config/s390/2827.md: Split zEC12_simple into zEC12_simple_int | |
2947 | and zEC12_simple_fp. | |
2948 | * config/s390/s390.c (s390_issue_rate): Set issue rate for zEC12 | |
2949 | to 1. | |
2950 | ||
c37be9ec | 2951 | 2015-05-12 Tom de Vries <tom@codesourcery.com> |
2952 | ||
2953 | PR tree-optimization/66010 | |
2954 | * gimplify.c (gimplify_modify_expr): Handle new do_deref argument of | |
2955 | ifn_va_arg. | |
2956 | * gimplify.h (gimplify_va_arg_internal): Remove loc parameter. | |
2957 | (gimplify_va_arg_internal): Remove loc parameter. Assert no array-typed | |
2958 | va_lists are passed, and remove corresponding handling. | |
2959 | (gimplify_va_arg_expr): Only take address of ap if necessary. Add | |
2960 | do_deref argument to ifn_va_arg. | |
2961 | * tree-stdarg.c (expand_ifn_va_arg_1): Handle new do_deref argument of | |
2962 | ifn_va_arg. | |
2963 | ||
22440aeb | 2964 | 2015-05-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
2965 | ||
2966 | PR target/65955 | |
2967 | * config/arm/arm.md (movcond_addsi): Check that operands[2] is a | |
2968 | REG before taking its REGNO. | |
2969 | ||
1f451691 | 2970 | 2015-05-12 Thomas Preud'homme <thomas.preudhomme@arm.com> |
2971 | ||
2972 | * combine.c i(set_nonzero_bits_and_sign_copies): Split code updating | |
2973 | rsp->sign_bit_copies and rsp->nonzero_bits into ... | |
2974 | (update_rsp_from_reg_equal): This. Also use REG_EQUAL note on src if | |
2975 | present to get more accurate information about the number of sign bit | |
2976 | copies and non zero bits. | |
2977 | ||
0d80b45d | 2978 | 2015-05-12 Richard Biener <rguenther@suse.de> |
2979 | ||
2980 | * tree-vect-slp.c (vect_build_slp_tree_1): For BB vectorization | |
2981 | do not allow unrolling. | |
2982 | ||
f969a6d2 | 2983 | 2015-05-11 Richard Henderson <rth@redhat.com> |
2984 | ||
2985 | * config/i386/i386-modes.def (CCP): New. | |
2986 | * config/i386/i386.c (put_condition_code): Handle it. | |
2987 | (ix86_match_ccmode, ix86_cc_modes_compatible): Likewise. | |
2988 | ||
2af3d775 | 2989 | 2015-05-11 Richard Henderson <rth@redhat.com> |
2990 | ||
2991 | * target.def (md_asm_clobbers): Replace with... | |
2992 | (md_asm_adjust): this. | |
2993 | * tm.texi.in (TARGET_MD_ASM_CLOBBERS): Remove. | |
2994 | (TARGET_MD_ASM_ADJUST): New. | |
2995 | * tm.texi: Rebuild. | |
2996 | * hooks.c (hook_tree_tree_tree_tree_3rd_identity): Remove. | |
2997 | * hooks.h (hook_tree_tree_tree_tree_3rd_identity): Remove. | |
2998 | * system.h (TARGET_MD_ASM_CLOBBERS): Poison. | |
2999 | ||
3000 | * cfgexpand.c (check_operand_nalternatives): Accept vector of | |
3001 | constraints instead of lists of outputs and inputs. | |
3002 | (expand_asm_stmt): Save and restore input_location around the | |
3003 | body of the function. Move asm data into vectors instead of | |
3004 | building tree lists. Generate cleanup sequences as needed, | |
3005 | rather than waiting til the end. Use new md_asm_adjust hook. | |
3006 | ||
3007 | * config/vxworks.c: Include vec.h before target.h. | |
3008 | * gimple.c: Likewise. | |
3009 | * incpath.c: Likewise. | |
3010 | * mode-switching.c: Likewise. | |
3011 | ||
3012 | * config/cris/cris.c (cris_md_asm_clobbers): Convert to... | |
3013 | (cris_md_asm_adjust): this. | |
3014 | (TARGET_MD_ASM_CLOBBERS): Remove. | |
3015 | (TARGET_MD_ASM_ADJUST): New. | |
3016 | * config/i386/i386.c (ix86_md_asm_clobbers): Convert to... | |
3017 | (ix86_md_asm_adjust): this. | |
3018 | (TARGET_MD_ASM_CLOBBERS): Remove. | |
3019 | (TARGET_MD_ASM_ADJUST): New. | |
3020 | * config/mn10300/mn10300.c (mn10300_md_asm_clobbers): Convert to... | |
3021 | (mn10300_md_asm_adjust): this. | |
3022 | (TARGET_MD_ASM_CLOBBERS): Remove. | |
3023 | (TARGET_MD_ASM_ADJUST): New. | |
3024 | * config/rs6000/rs6000.c (rs6000_md_asm_clobbers): Convert to... | |
3025 | (rs6000_md_asm_adjust): this. | |
3026 | (TARGET_MD_ASM_CLOBBERS): Remove. | |
3027 | (TARGET_MD_ASM_ADJUST): New. | |
3028 | * config/visium/visium.c (visium_md_asm_clobbers): Convert to... | |
3029 | (visium_md_asm_adjust): this. | |
3030 | (TARGET_MD_ASM_CLOBBERS): Remove. | |
3031 | (TARGET_MD_ASM_ADJUST): New. | |
3032 | ||
2d564016 | 3033 | 2015-05-11 Richard Henderson <rth@redhat.com> |
3034 | ||
6753c3c6 | 3035 | * gimplify.c (gimplify_asm_expr): Set gimple_asm_volatile_p |
3036 | if noutputs is zero. | |
3037 | * cfgexpand.c (expand_asm_stmt): Use gimple_asm_volatile_p unchanged. | |
3038 | ||
ae231cbd | 3039 | * cfgexpand.c (expand_asm_operands): Merge into... |
3040 | (expand_asm_stmt): ... here. | |
3041 | ||
2d564016 | 3042 | * cfgexpand.c (expand_asm_operands): Don't call |
3043 | resolve_asm_operand_names. | |
3044 | * stmt.c (resolve_asm_operand_names): Clarify block comment. | |
3045 | ||
041558e3 | 3046 | 2015-05-11 Jan Hubicka <hubicka@ucw.cz> |
3047 | ||
3048 | * dwarf2out.c (gen_member_die): Sanity check that we access | |
3049 | TYPE_MAIN_VARIANT for TYPE_METHODS. | |
3050 | * function.c (use_register_for_decl): Look for TYPE_MAIN_VARIANT when | |
3051 | checking TYPE_METHODS. | |
3052 | * tree.c (free_lang_data_in_type): See TYPE_METHODS to error_mark_node | |
3053 | if non-null. | |
3054 | (build_distinct_type_copy): Clear TYPE_METHODS. | |
3055 | (verify_type_variant): Verify that TYPE_METHODS is NULL for variants. | |
3056 | (verify_type): Allow TYPE_METHODS to be error_mark_node. | |
3057 | * tree.def: Update docs of TYPE_STUB_DECL and TYPE_METHODS. | |
3058 | ||
57e999d9 | 3059 | 2015-05-11 Eric Botcazou <ebotcazou@adacore.com> |
3060 | ||
3061 | * emit-rtl.c (emit_pattern_after_setloc): Add missing guard. | |
3062 | (emit_pattern_before_setloc): Likewise. | |
3063 | ||
a545c6cd | 3064 | 2015-05-11 Richard Sandiford <richard.sandiford@arm.com> |
3065 | ||
3066 | * genrecog.c (match_pattern_1): Expect the pattern to be a SEQUENCE | |
3067 | for define_peephole2s. | |
3068 | (get_peephole2_pattern): New function. | |
3069 | (main): Use it. Call validate_pattern. | |
3070 | ||
ed0ab386 | 3071 | 2015-05-11 Pitchumani Sivanupandi <pitchumani.s@atmel.com> |
3072 | ||
3073 | * config/avr/avr.c (avr_hard_regno_call_part_clobbered): Use | |
3074 | LAST_CALLEE_SAVED_REG instead of hard-coded register number. | |
3075 | (Last callee saved reg is different for AVR_TINY architecture) | |
3076 | ||
9e009662 | 3077 | 2015-05-11 Uros Bizjak <ubizjak@gmail.com> |
3078 | ||
3079 | * config/i386/i386.c (ix86_loop_unroll_adjust): Use PATTERN (insn) | |
3080 | when looking for memory references. | |
3081 | ||
a91ca74b | 3082 | 2015-05-11 Alexander Monakov <amonakov@ispras.ru> |
3083 | ||
3084 | PR target/65753 | |
3085 | * config/i386/i386.c (ix86_function_ok_for_sibcall): Allow PIC sibcalls | |
3086 | via function pointers. | |
3087 | ||
562ef5cc | 3088 | 2015-05-11 Alexander Monakov <amonakov@ispras.ru> |
3089 | ||
3090 | * calls.c (prepare_call_address): Transform PLT call to GOT lookup and | |
3091 | indirect call by forcing address into a pseudo with -fno-plt. | |
3092 | * common.opt (flag_plt): New option. | |
3093 | * doc/invoke.texi (Code Generation Options): Add -fno-plt. | |
3094 | ([-fno-plt]): Document. | |
3095 | ||
4090805f | 3096 | 2015-05-11 Markus Trippelsdorf <markus@trippelsdorf.de> |
9e009662 | 3097 | |
4090805f | 3098 | PR bootstrap/66105 |
3099 | * config/rs6000/option-defaults.h: Add space between string literal | |
3100 | and macro name. | |
3101 | ||
37d9d8a1 | 3102 | 2015-05-11 Thomas Preud'homme <thomas.preudhomme@arm.com> |
3103 | ||
3104 | * gcc.target/arm/pr64616.c: Test dump rather than assembly to work | |
3105 | accross ARM targets. | |
3106 | ||
7ca9423a | 3107 | 2015-05-11 Christian Bruel <christian.bruel@st.com> |
3108 | ||
3109 | * config/arm/arm-protos.h (thumb_code, thumb1_code): Remove. | |
3110 | * config/arm/vxworks.h (thumb_code): Replace with TARGET_THUMB. | |
3111 | ||
4f7f3b39 | 3112 | 2015-05-11 Richard Sandiford <richard.sandiford@arm.com> |
3113 | ||
3114 | PR rtl-optimization/66076 | |
3115 | * rtlanal.c (generic_subrtx_iterator <T>::add_single_to_queue): | |
3116 | Don't grow the heap array if it is already big enough from a | |
3117 | previous iteration. | |
3118 | ||
1e63a052 | 3119 | 2015-05-11 Christian Bruel <christian.bruel@st.com> |
3120 | ||
3121 | * config/arm/arm-protos.h (arm_declare_function_name): Declare. | |
3122 | (is_called_in_ARM_mode): Remove. | |
3123 | * config/arm/arm.c (is_called_in_ARM_mode): Declare static bool. | |
3124 | (arm_declare_function_name): Moved from from ARM_DECLARE_FUNCTION_NAME. | |
3125 | * config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME): Call | |
3126 | arm_declare_function_name. | |
3127 | ||
b0a6b2be | 3128 | 2015-05-11 Christian Bruel <christian.bruel@st.com> |
8724f216 | 3129 | |
3130 | * config/arm/arm.c (arm_option_override): Reoganized and split into : | |
3131 | (arm_option_params_internal); New function. | |
3132 | (arm_option_check_internal): New function. | |
3133 | (arm_option_override_internal): New function. | |
3134 | (thumb_code, thumb1_code): Remove. | |
3135 | * config/arm/arm.h (TREE_TARGET_THUMB, TREE_TARGET_THUMB1): New macros. | |
3136 | (TREE_TARGET_THUM2, TREE_TARGET_ARM): Likewise. | |
3137 | (thumb_code, thumb1_code): Remove. | |
3138 | * config/arm/arm.md (is_thumb, is_thumb1): Check TARGET flag. | |
3139 | ||
a2d7211e | 3140 | 2015-05-11 Uros Bizjak <ubizjak@gmail.com> |
3141 | ||
3142 | * config/alpha/alpha.c (alpha_emit_set_const_1) | |
3143 | (alpha_emit_set_long_const, alpha_extract_integer) | |
3144 | (alpha_legitimate_constant_p, alpha_split_const_mov) | |
3145 | (alpha_expand_block_clear, alpha_expand_zap_mask, print_operand): | |
3146 | [HOST_BITS_PER_WIDE_INT < 64]: Remove dead code. | |
3147 | (alpha_emit_set_const_1): Change "(HOST_WIDE_INT) 1" to | |
3148 | HOST_WIDE_INT_1U. | |
3149 | * config/alpha/predicates.md (mode_mask_operand): Do not match | |
3150 | const_double RTX. | |
3151 | [HOST_BITS_PER_WIDE_INT < 64]: Remove dead code. | |
3152 | * config/alpha/alpha.md (abstf, *abstf_internal, UNSPEC_ZAP splitter): | |
3153 | Change "(HOST_WIDE_INT) 1" to HOST_WIDE_INT_1U. | |
3154 | [HOST_BITS_PER_WIDE_INT < 64]: Remove dead code. | |
3155 | (*negtf_internal): Use gen_int_mode instead of immed_double_const. | |
3156 | ||
c4b26167 | 3157 | 2015-05-11 Jakub Jelinek <jakub@redhat.com> |
3158 | ||
3159 | PR target/65780 | |
3160 | * config/s390/linux.h (TARGET_BINDS_LOCAL_P): Define to | |
3161 | default_binds_local_p_2. | |
3162 | * config/arm/linux-elf.h (TARGET_BINDS_LOCAL_P): Likewise. | |
3163 | * config/aarch64/aarch64-linux.h (TARGET_BINDS_LOCAL_P): Likewise. | |
3164 | ||
6ad400d2 | 3165 | 2015-05-09 Jan Hubicka <hubicka@ucw.cz> |
3166 | ||
3167 | * tree.c (verify_type_variant): Check TYPE_VALUES_RAW and TYPE_PRECISION | |
3168 | ||
3e301e70 | 3169 | 2015-05-09 Jan Hubicka <hubicka@ucw.cz> |
3170 | ||
3171 | Patch by Richard Biener | |
3172 | * coverage.c (coverage_obj_init): Delay building of type variant | |
3173 | until the type is finished. | |
3174 | ||
359bd426 | 3175 | 2015-05-09 Jan Hubicka <hubicka@ucw.cz> |
3176 | ||
3177 | * ipa-devirt.c (warn_types_mismatch): Do not ICE when warning about | |
3178 | mismatch between C and C++ type; compoare correctly ARG_TYPES | |
3179 | for non-prototypes and output correctly parameter index for METHOD_TYPE. | |
3180 | (odr_types_equivalent_p): Fix wording of warning about attributes; | |
3181 | it is OK to match prototype and non-prototype. | |
3182 | ||
14c014b1 | 3183 | 2015-05-09 Jan Hubicka <hubicka@ucw.cz> |
3184 | ||
3185 | * tree.c (free_lang_data_in_type): Free TREE_PURPOSE of | |
3186 | TYPE_ARG_TYPES list. | |
3187 | (verify_type): Permit non-NULL TREE_PURPOSE in non-LTO builds. | |
3188 | * tree.def (FUNCTION_TYPE): Document TREE_PURPOSE in TYPE_ARG_TYPES | |
3189 | ||
edd397fd | 3190 | 2015-05-09 Jan Hubicka <hubicka@ucw.cz> |
3191 | ||
3192 | * tree.c (verify_type): Verify TYPE_BINFO and TYPE_VALUES_RAW. | |
57d24ff6 | 3193 | * tree.h (is_lang_specific): Constify. |
edd397fd | 3194 | |
9ec6ad4e | 3195 | 2015-05-09 Marc Glisse <marc.glisse@inria.fr> |
3196 | ||
3197 | PR tree-optimization/64454 | |
3198 | * tree-vrp.c (extract_range_from_binary_expr_1) <TRUNC_MOD_EXPR>: | |
3199 | Rewrite. | |
3200 | ||
f03df321 | 3201 | 2015-05-08 Jason Merrill <jason@redhat.com> |
3202 | ||
3203 | * bitmap.c, c/c-aux-info.c, cfg.c, cfghooks.c, cgraph.c, | |
3204 | config/aarch64/aarch64.md config/alpha/vms.h, config/darwin.c, | |
3205 | config/darwin.h, config/darwin9.h, config/elfos.h, | |
3206 | config/i386/bsd.h, config/ia64/ia64.c, config/lm32/lm32.h, | |
3207 | config/microblaze/microblaze.h, config/mips/mips.h, | |
3208 | config/mmix/mmix.c, config/msp430/msp430.c, config/nios2/nios2.h, | |
3209 | config/nvptx/nvptx.c, config/nvptx/nvptx.h, config/pa/pa.c, | |
3210 | config/pa/pa.h, config/rs6000/rs6000.c, config/rs6000/sysv4.h, | |
3211 | config/rs6000/xcoff.h, config/rx/rx.h, config/s390/s390.h, | |
3212 | config/sparc/sol2.h, config/sparc/sparc.h, config/visium/visium.h, | |
3213 | cppbuiltin.c, defaults.h, doc/invoke.texi, dwarf2cfi.c, | |
3214 | dwarf2out.c, final.c, gcc.c, gcov-dump.c, gcov.c, ipa-cp.c, | |
3215 | ipa-inline.c, ipa-polymorphic-call.c, ipa-profile.c, ipa-prop.c, | |
3216 | ira-color.c, ira.c, loop-doloop.c, loop-iv.c, mcf.c, | |
3217 | modulo-sched.c, predict.c, profile.c, stor-layout.c, toplev.c, | |
3218 | tree-ssa-reassoc.c, value-prof.c, wide-int-print.cc: Add space | |
3219 | between string literal and macro name. | |
3220 | ||
548a37a8 | 3221 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3222 | ||
3223 | * jump.c: Change argument types to rtx_insn *. | |
3224 | * rtl.h: Adjust. | |
3225 | ||
4da92723 | 3226 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3227 | ||
3228 | * lra-constraints.c: Change argument type to rtx_insn *. | |
3229 | ||
210ccc05 | 3230 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3231 | ||
3232 | * df-problems.c: Change argument type to rtx_insn *. | |
3233 | ||
a9d77cc5 | 3234 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3235 | ||
3236 | * combine.c: Change argument type to rtx_insn *. | |
3237 | ||
b9452872 | 3238 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3239 | ||
3240 | * rtl.h: Adjust. | |
3241 | * rtlanal.c: Change argument type to rtx_insn *. | |
3242 | ||
a1db0f0f | 3243 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3244 | ||
3245 | * sched-deps.c: Change argument types to rtx_insn *. | |
3246 | * sched-int.h: Adjust. | |
3247 | ||
bfc53c49 | 3248 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3249 | ||
3250 | * dwarf2cfi.c: Change argument type to rtx_insn *. | |
3251 | ||
5efdbe21 | 3252 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3253 | ||
3254 | * ira.c (decrease_live_ranges_number): Changetype of local | |
3255 | variable to rtx_insn *. | |
3256 | * recog.c: Change argument types to rtx_insn *. | |
3257 | * recog.h: Adjust. | |
3258 | ||
f6860e7f | 3259 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3260 | ||
3261 | * reorg.c: Change argument types to rtx_insn *. | |
3262 | ||
50b1b178 | 3263 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3264 | ||
3265 | * ira-color.c: Change argument types to rtx_insn *. | |
3266 | * lra-eliminations.c: Likewise. | |
3267 | * ira.h: Adjust. | |
3268 | ||
84b4ae13 | 3269 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3270 | ||
3271 | * gcse.c: Change argument types to rtx_insn *. | |
3272 | ||
41805aed | 3273 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3274 | ||
3275 | * cse.c (cse_change_cc0_mode): Change argument type to rtx_insn *. | |
3276 | ||
5518cf83 | 3277 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3278 | ||
3279 | * emit-rtl.c (emit_debug_insn_before): Change argument type to | |
3280 | rtx_insn *. | |
3281 | * rtl.h: Adjust. | |
3282 | ||
1dc26636 | 3283 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3284 | ||
3285 | * emit-rtl.c (emit_note_before): Change argument type to rtx_insn *. | |
3286 | * rtl.h: Adjust. | |
3287 | ||
4d86329d | 3288 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3289 | ||
3290 | * emit-rtl.c (emit_note_after): Change argument type to rtx_insn *. | |
3291 | * rtl.h: Adjust. | |
3292 | ||
fd8b0a1a | 3293 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3294 | ||
3295 | * emit-rtl.c (prev_cc0_setter): Change argument type to rtx_insn *. | |
3296 | * rtl.h: Adjust. | |
3297 | ||
e79ab52b | 3298 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3299 | ||
3300 | * rtlanal.c (noop_move_p): Change argument type to rtx_insn *. | |
3301 | * rtl.h: Adjust. | |
3302 | ||
ca336a81 | 3303 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3304 | ||
3305 | * rtlanal.c (add_shallow_copy_of_reg_note): Change argument type | |
3306 | to rtx_insn *. | |
3307 | * rtl.h: Adjust. | |
3308 | ||
6dbed5c7 | 3309 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3310 | ||
3311 | * rtlanal.c (remove_reg_equal_equiv_notes): Change argument type | |
3312 | to rtx_insn *. | |
3313 | * rtl.h: Likewise. | |
3314 | ||
c0bf26af | 3315 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3316 | ||
3317 | * except.c (can_nonlocal_goto): Change type of argument to | |
3318 | rtx_insn *. | |
3319 | * rtl.h: Adjust. | |
3320 | ||
181908bb | 3321 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3322 | ||
3323 | * rtlanal.c (computed_jump_p): Cange argument type to rtx_insn *. | |
3324 | * rtl.h: Adjust. | |
3325 | ||
7a680a39 | 3326 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3327 | ||
3328 | * rtlanal.c (in_insn_list_p): Renamed from in_expr_list_p. | |
3329 | * cfgrtl.c (can_delete_label_p): Adjust. | |
3330 | * rtl.h: likewise. | |
3331 | ||
31886f96 | 3332 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3333 | ||
3334 | * reorg.c (stop_search_p): Change argument to rtx_insn *. | |
3335 | ||
d69632e3 | 3336 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3337 | ||
3338 | * except.c (make_reg_eh_region_note): Change argument to | |
3339 | rtx_insn *. | |
3340 | (make_reg_eh_region_note_nothrow_nononlocal): Likewise. | |
3341 | * except.h: Adjust. | |
3342 | ||
e0f97a1a | 3343 | 2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3344 | ||
3345 | * mode-switching.c (commit_mode_sets): Change type of local | |
3346 | variable from rtx to rtx_insn *. | |
3347 | ||
f51ed531 | 3348 | 2015-05-08 Jim Wilson <jim.wilson@linaro.org> |
3349 | ||
3350 | * doc/install.texi (--enable-languages): Add missing jit and lto info. | |
3351 | Add ^ to grep command. | |
3352 | * doc/match-and-simplify.texi (GIMPLE API): Add missing fourth tree | |
3353 | arg to last gimple_simplify declaration. Add missing gimple_build | |
3354 | declaration for built-in function case with four tree args. | |
3355 | ||
2550b6a8 | 3356 | 2015-05-08 Gregor Richards <gregor.richards@uwaterloo.ca> |
3357 | Szabolcs Nagy <szabolcs.nagy@arm.com> | |
3358 | ||
3359 | * config/mips/linux.h (MUSL_DYNAMIC_LINKER32): Define. | |
3360 | (MUSL_DYNAMIC_LINKER64, MUSL_DYNAMIC_LINKERN32): Define. | |
3361 | (GNU_USER_DYNAMIC_LINKERN32): Update. | |
3362 | ||
994be998 | 3363 | 2015-05-08 Richard Biener <rguenther@suse.de> |
3364 | ||
3365 | PR tree-optimization/66036 | |
3366 | * tree-vect-data-refs.c (vect_compute_data_ref_alignment): | |
3367 | Handle strided group loads. | |
3368 | (vect_verify_datarefs_alignment): Likewise. | |
3369 | (vect_enhance_data_refs_alignment): Likewise. | |
3370 | (vect_analyze_group_access): Likewise. | |
3371 | (vect_analyze_data_ref_access): Likewise. | |
3372 | (vect_analyze_data_ref_accesses): Likewise. | |
3373 | * tree-vect-stmts.c (vect_model_load_cost): Likewise. | |
3374 | (vectorizable_load): Likewise. | |
3375 | ||
a5222812 | 3376 | 2015-05-08 Segher Boessenkool <segher@kernel.crashing.org> |
3377 | ||
3378 | * config/rs6000/rs6000.md: Require operand inequality in one | |
3379 | of the peepholes. | |
3380 | ||
382f24d5 | 3381 | 2015-05-08 Richard Sandiford <richard.sandiford@arm.com> |
3382 | Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | |
3383 | ||
3384 | * config/i386/i386.md (<mode>_ldx, *<mode>_ldx): Remove mode | |
3385 | from (set ...). | |
3386 | * config/rx/rx.md (movdi, movdf): Likewise. | |
3387 | Likewise for define_peephole2s. | |
3388 | ||
dc3738cb | 3389 | 2015-05-08 Alan Lawrence <alan.lawrence@arm.com> |
3390 | ||
3391 | * config/aarch64/arm_neon.h (vceq_s64, vceq_u64, vceqz_s64, vceqz_u64, | |
3392 | vcge_s64, vcge_u64, vcgez_s64, vcgt_s64, vcgt_u64, vcgtz_s64, vcle_s64, | |
3393 | vcle_u64, vclez_s64, vclt_s64, vclt_u64, vcltz_s64, vtst_s64, | |
3394 | vtst_u64): Rewrite using gcc vector extensions. | |
3395 | ||
d81e9009 | 3396 | 2015-05-08 Alan Lawrence <alan.lawrence@arm.com> |
3397 | ||
3398 | * config/aarch64/aarch64-simd.md (aarch64_vcond_internal<mode><mode>, | |
3399 | vcond<mode><mode>, vcondu<mode><mode>): Add DImode variant. | |
3400 | ||
2ea8270a | 3401 | 2015-05-08 Alan Lawrence <alan.lawrence@arm.com> |
3402 | ||
3403 | * optabs.c (vector_compare_rtx): Handle RTL operands having VOIDmode. | |
3404 | ||
f2d678af | 3405 | 2015-05-08 Szabolcs Nagy <szabolcs.nagy@arm.com> |
3406 | ||
3407 | * config/glibc-stdint.h (OPTION_MUSL): Define. | |
3408 | (INT_FAST16_TYPE, INT_FAST32_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE): | |
3409 | Change the definition based on OPTION_MUSL for 64 bit targets. | |
3410 | * config/linux.h (OPTION_MUSL): Redefine. | |
3411 | * config/alpha/linux.h (OPTION_MUSL): Redefine. | |
3412 | * config/rs6000/linux.h (OPTION_MUSL): Redefine. | |
3413 | * config/rs6000/linux64.h (OPTION_MUSL): Redefine. | |
3414 | ||
a9173cea | 3415 | 2015-05-08 Gregor Richards <gregor.richards@uwaterloo.ca> |
3416 | Szabolcs Nagy <szabolcs.nagy@arm.com> | |
3417 | ||
3418 | * config.gcc (LIBC_MUSL): New tm_defines macro. | |
3419 | * config/linux.h (OPTION_MUSL): Define. | |
3420 | (MUSL_DYNAMIC_LINKER, MUSL_DYNAMIC_LINKER32,) | |
3421 | (MUSL_DYNAMIC_LINKER64, MUSL_DYNAMIC_LINKERX32,) | |
3422 | (INCLUDE_DEFAULTS_MUSL_GPP, INCLUDE_DEFAULTS_MUSL_LOCAL,) | |
3423 | (INCLUDE_DEFAULTS_MUSL_PREFIX, INCLUDE_DEFAULTS_MUSL_CROSS,) | |
3424 | (INCLUDE_DEFAULTS_MUSL_TOOL, INCLUDE_DEFAULTS_MUSL_NATIVE): Define. | |
3425 | * config/linux.opt (mmusl): New option. | |
3426 | * doc/invoke.texi (GNU/Linux Options): Document -mmusl. | |
3427 | * configure.ac (gcc_cv_libc_provides_ssp): Add *-*-musl*. | |
3428 | (gcc_cv_target_dl_iterate_phdr): Add *-linux-musl*. | |
3429 | * configure: Regenerate. | |
3430 | ||
83337fd6 | 3431 | 2015-05-08 H.J. Lu <hongjiu.lu@intel.com> |
3432 | Bernhard Reutner-Fischer <aldot@gcc.gnu.org> | |
3433 | ||
3434 | PR target/48904 | |
3435 | * config.gcc (x86_64-*-knetbsd*-gnu): Add i386/knetbsd-gnu64.h. | |
3436 | * config/i386/knetbsd-gnu64.h: New file. | |
3437 | ||
dc5945dc | 3438 | 2015-05-08 Marek Polacek <polacek@redhat.com> |
3439 | ||
3440 | PR c/64918 | |
3441 | * doc/invoke.texi: Document -Woverride-init-side-effects. | |
3442 | ||
cdc64059 | 3443 | 2015-05-07 Marek Polacek <polacek@redhat.com> |
3444 | ||
3445 | PR c/65179 | |
3446 | * doc/invoke.texi: Document -Wshift-negative-value. | |
3447 | ||
e58b5f40 | 3448 | 2015-05-06 Aditya Kumar <hiraditya@msn.com> |
3449 | ||
3450 | * gcov-tool.c (do_merge): Refactore to remove int ret. | |
3451 | * ipa-icf.c (sem_item::hash_referenced_symbol_properties): Change | |
3452 | !type == FUNC to type != FUNC. | |
3453 | * reload.h (struct target_reload): Changee to type of | |
3454 | x_spill_indirect_levels from bool to unsigned char. | |
3455 | ||
d1f9b275 | 3456 | 2015-05-07 Richard Sandiford <richard.sandiford@arm.com> |
3457 | ||
3458 | * rtl.h (always_void_p): New function. | |
3459 | * gengenrtl.c (always_void_p): Likewise. | |
3460 | (genmacro): Don't add a mode parameter to gen_rtx_foo if rtxes | |
3461 | with code foo are always VOIDmode. | |
3462 | * genemit.c (gen_exp): Update gen_rtx_foo calls accordingly. | |
3463 | * builtins.c, caller-save.c, calls.c, cfgexpand.c, combine.c, | |
3464 | compare-elim.c, config/aarch64/aarch64.c, | |
3465 | config/aarch64/aarch64.md, config/alpha/alpha.c, | |
3466 | config/alpha/alpha.md, config/arc/arc.c, config/arc/arc.md, | |
3467 | config/arm/arm-fixed.md, config/arm/arm.c, config/arm/arm.md, | |
3468 | config/arm/ldrdstrd.md, config/arm/thumb2.md, config/arm/vfp.md, | |
3469 | config/avr/avr.c, config/bfin/bfin.c, config/c6x/c6x.c, | |
3470 | config/c6x/c6x.md, config/cr16/cr16.c, config/cris/cris.c, | |
3471 | config/cris/cris.md, config/darwin.c, config/epiphany/epiphany.c, | |
3472 | config/epiphany/epiphany.md, config/fr30/fr30.c, config/frv/frv.c, | |
3473 | config/frv/frv.md, config/h8300/h8300.c, config/i386/i386.c, | |
3474 | config/i386/i386.md, config/i386/sse.md, config/ia64/ia64.c, | |
3475 | config/ia64/vect.md, config/iq2000/iq2000.c, | |
3476 | config/iq2000/iq2000.md, config/lm32/lm32.c, config/lm32/lm32.md, | |
3477 | config/m32c/m32c.c, config/m32r/m32r.c, config/m68k/m68k.c, | |
3478 | config/m68k/m68k.md, config/mcore/mcore.c, config/mcore/mcore.md, | |
3479 | config/mep/mep.c, config/microblaze/microblaze.c, | |
3480 | config/mips/mips.c, config/mips/mips.md, config/mmix/mmix.c, | |
3481 | config/mn10300/mn10300.c, config/msp430/msp430.c, | |
3482 | config/nds32/nds32-memory-manipulation.c, config/nds32/nds32.c, | |
3483 | config/nds32/nds32.md, config/nios2/nios2.c, config/nvptx/nvptx.c, | |
3484 | config/pa/pa.c, config/pa/pa.md, config/rl78/rl78.c, | |
3485 | config/rs6000/altivec.md, config/rs6000/rs6000.c, | |
3486 | config/rs6000/rs6000.md, config/rs6000/vector.md, | |
3487 | config/rs6000/vsx.md, config/rx/rx.c, config/rx/rx.md, | |
3488 | config/s390/s390.c, config/s390/s390.md, config/sh/sh.c, | |
3489 | config/sh/sh.md, config/sh/sh_treg_combine.cc, | |
3490 | config/sparc/sparc.c, config/sparc/sparc.md, config/spu/spu.c, | |
3491 | config/spu/spu.md, config/stormy16/stormy16.c, | |
3492 | config/tilegx/tilegx.c, config/tilegx/tilegx.md, | |
3493 | config/tilepro/tilepro.c, config/tilepro/tilepro.md, | |
3494 | config/v850/v850.c, config/v850/v850.md, config/vax/vax.c, | |
3495 | config/visium/visium.c, config/xtensa/xtensa.c, cprop.c, dse.c, | |
3496 | expr.c, gcse.c, ifcvt.c, ira.c, jump.c, lower-subreg.c, | |
3497 | lra-constraints.c, lra-eliminations.c, lra.c, postreload.c, ree.c, | |
3498 | reg-stack.c, reload.c, reload1.c, reorg.c, sel-sched.c, | |
3499 | var-tracking.c: Update calls accordingly. | |
3500 | ||
1dc4e116 | 3501 | 2015-05-07 Segher Boessenkool <segher@kernel.crashing.org> |
3502 | ||
3503 | PR middle-end/192 | |
3504 | PR middle-end/54303 | |
3505 | * varasm.c (function_mergeable_rodata_prefix): New function. | |
3506 | (mergeable_string_section): Use it. | |
3507 | (mergeable_constant_section): Use it. | |
3508 | ||
8cd9143e | 3509 | 2015-05-07 Jeff Law <law@redhat.com> |
3510 | ||
6fa6a871 | 3511 | PR target/39726 |
8cd9143e | 3512 | * match.pd (bit_and (plus/minus (convert @0) (convert @1) mask): New |
3513 | simplifier to narrow arithmetic. | |
3514 | * generic-match-head.c: (types_match, single_use): New functions. | |
3515 | * gimple-match-head.c: (types_match, single_use): New functions. | |
3516 | ||
fabf2608 | 3517 | 2015-05-07 Venkataramanan Kumar <venkataramanan.kumar@amd.com> |
3518 | ||
3519 | * combine.c (make_compound_operation): Remove checks for PLUS/MINUS | |
3520 | rtx type. | |
3521 | ||
cce09224 | 3522 | 2015-05-07 Richard Biener <rguenther@suse.de> |
3523 | ||
3524 | PR tree-optimization/66002 | |
3525 | * passes.def: Schedule another pass_merge_phi after ifcombine, right | |
3526 | before phiopt. | |
3527 | ||
8cafe283 | 3528 | 2015-05-07 Marek Polacek <polacek@redhat.com> |
3529 | Martin Uecker <uecker@eecs.berkeley.edu> | |
3530 | ||
3531 | * doc/invoke.texi: Document -fsanitize=bounds-strict. | |
3532 | * flag-types.h (enum sanitize_code): Add SANITIZE_BOUNDS_STRICT, or it | |
3533 | into SANITIZE_NONDEFAULT. | |
3534 | * opts.c (common_handle_option): Handle -fsanitize=bounds-strict. | |
3535 | ||
3032a4ea | 3536 | 2015-05-07 Uros Bizjak <ubizjak@gmail.com> |
3537 | ||
3538 | PR target/66015 | |
3539 | * config/alpha/alpha.c (alpha_override_options_after_change): New. | |
3540 | (TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE): New. | |
3541 | (alpha_override_options): Move align_loops, align_jumps and | |
3542 | align_functions handling into alpha_override_options_after_change. | |
3543 | ||
1ddaa252 | 3544 | 2015-05-06 Sandra Loosemore <sandra@codesourcery.com> |
3545 | Chris Jones <chrisj@nvidia.com> | |
3546 | Joshua Conner <jconner@nvidia.com> | |
3547 | ||
3548 | * config/arm/unknown-elf.h (STARTFILE_SPEC): Add conditional | |
3549 | linking of crtfastmath.o. | |
3550 | * config/arm/linux-eabi.h (STARTFILE_SPEC): Likewise. | |
3551 | ||
b176768d | 3552 | 2015-05-06 Segher Boessenkool <segher@kernel.crashing.org> |
3553 | ||
3554 | * config/rs6000/rs6000.md (cstore<mode>4_signed_imm): New expander. | |
3555 | (cstore<mode>4_unsigned_imm): New expander. | |
3556 | (cstore<mode>4): Remove empty constraint strings. Use the new | |
3557 | expanders. | |
3558 | ||
803253c2 | 3559 | 2015-05-06 Yvan Roux <yvan.roux@linaro.org> |
3560 | ||
3561 | PR target/64208 | |
3562 | * config/arm/iwmmxt.md ("*iwmmxt_arm_movdi"): Cleanup redundant | |
3563 | alternatives. | |
3564 | ||
11667a90 | 3565 | 2015-05-06 Szabolcs Nagy <szabolcs.nagy@arm.com> |
3566 | ||
3567 | * config/aarch64/geniterators.sh: Use standard BRE in sed. | |
3568 | ||
4ff08325 | 3569 | 2015-05-06 Alan Modra <amodra@gmail.com> |
3570 | ||
3571 | PR target/66033 | |
3572 | * config/rs6000/rs6000.md (nop): Use an unspec pattern. | |
3573 | (UNSPEC_NOP): Define. | |
3574 | (reload_vsx_from_gpr<mode>): Add missing DONE. | |
3575 | (reload_gpr_from_vsx<mode>): Likewise. | |
3576 | * config/rs6000/vsx.md (vsx_mul_v2di): Likewise. | |
3577 | (vsx_div_v2di, vsx_udiv_v2di): Likewise. | |
3578 | ||
431164c5 | 3579 | 2015-05-06 Christian Bruel <christian.bruel@st.com> |
3580 | ||
3581 | PR target/66015 | |
3582 | * config/aarch64/aarch64.c (aarch64_override_options): Move align_loops, | |
3583 | align_jumps, align_functions into aarch64_override_options_after_change. | |
3584 | ||
aa83abc3 | 3585 | 2015-05-06 Richard Biener <rguenther@suse.de> |
3586 | ||
3587 | * tree-vect-slp.c (vect_supported_load_permutation_p): Use | |
3588 | vect_transform_slp_perm_load to check if we support a permutation | |
3589 | for basic-block vectorization. | |
3590 | ||
52337e94 | 3591 | 2015-05-06 Nick Clifton <nickc@redhat.com> |
3592 | ||
3593 | * config/rl78/rl78.c (need_to_save): Save register 22 if it is | |
3594 | used, even if it is not being used as a frame pointer. | |
3595 | ||
2b89ba2d | 3596 | 2015-05-05 Jason Merrill <jason@redhat.com> |
3597 | ||
3598 | * dwarf2out.c (gen_member_die): Don't emit anything for an | |
3599 | anonymous class constructor. | |
3600 | ||
5c6f6a61 | 3601 | 2015-05-05 David Malcolm <dmalcolm@redhat.com> |
3602 | ||
3603 | * auto-profile.c (afdo_find_equiv_class): Fix indentation so | |
3604 | that it reflects the block structure. | |
3605 | (afdo_propagate_edge): Likewise. | |
3606 | (afdo_calculate_branch_prob): Likewise. | |
3607 | (afdo_annotate_cfg): Likewise. | |
3608 | * cfgcleanup.c (equal_different_set_p): Likewise. | |
3609 | (try_crossjump_to_edge): Likewise. | |
3610 | * cgraph.c (cgraph_node::verify_node): Likewise. | |
3611 | * cgraphunit.c (expand_all_functions): Likewise. | |
3612 | * config/i386/i386.c (ix86_expand_copysign): Likewise. | |
3613 | (exact_dependency_1): Likewise. | |
3614 | * dwarf2asm.c (dw2_output_indirect_constants): Likewise. | |
3615 | * dwarf2out.c (tree_add_const_value_attribute_for_decl): Likewise. | |
3616 | * gensupport.c (process_define_subst): Likewise. | |
3617 | * lto-wrapper.c (merge_and_complain): Likewise. | |
3618 | * tree-if-conv.c (if_convertible_bb_p): Likewise. | |
3619 | * tree-ssa-loop-prefetch.c (find_or_create_group): Likewise. | |
3620 | * tree-ssa-tail-merge.c (gsi_advance_fw_nondebug_nonlocal): Likewise. | |
3621 | * tree-vect-data-refs.c (vect_grouped_load_supported): Likewise. | |
3622 | * tree-vect-loop.c (vectorizable_reduction): Likewise. | |
3623 | * tree-vect-slp.c (vect_transform_slp_perm_load): Likewise. | |
3624 | * tree-vect-stmts.c (vectorizable_shift): Likewise. | |
3625 | * tree-vrp.c (vrp_finalize): Likewise. | |
3626 | * tree.c (variably_modified_type_p): Likewise. | |
3627 | ||
182d4990 | 3628 | 2015-05-05 Jack Howarth <howarth.at.gcc@gmail.com> |
3629 | ||
3630 | * config.gcc: Use darwin9.h, darwin10.h and darwin12.h | |
3631 | on darwin12 and later. | |
3632 | * config/darwin12.h (LINK_GCC_C_SEQUENCE_SPEC): Add | |
3633 | file to pass -rdynamic on darwin12 and later. | |
3634 | * config/darwin.opt (rdynamic): Add. | |
3635 | ||
635c615f | 3636 | 2015-05-05 Uros Bizjak <ubizjak@gmail.com> |
3637 | ||
3638 | * doc/extend.texi (C Extensions): Update menu for moved Variable | |
3639 | Attributes and Type Attributes sections. | |
3640 | ||
e27f3f57 | 3641 | 2015-05-05 Uros Bizjak <ubizjak@gmail.com> |
3642 | ||
3643 | PR target/65990 | |
3644 | * config/i386/i386.c (ix86_parse_stringop_strategy_string): Error out | |
3645 | if rep_8byte stringop strategy was specified for 32-bit target. | |
3646 | ||
3cd66da2 | 3647 | 2015-05-05 Ilya Tocar <ilya.tocar@intel.com> |
3648 | ||
3649 | PR target/65915 | |
3650 | * config/i386/i386.md (vector convert to float spltiter): Check for | |
3651 | xmm16+, when splitting scalar float conversion. | |
3652 | * config/i386/sse.md (sse2_cvtsi2sd): Support EVEX version. | |
3653 | ||
ab9c90cd | 3654 | 2015-05-05 Nick Clifton <nickc@redhat.com> |
3655 | ||
3656 | * config/msp430/msp430-opts.h (enum msp430_regions): New. | |
3657 | * config/msp430/msp430.c (msp430_override_options): Complain if | |
3658 | -mcode-region or -mdata-region is used on a non MSP430X. | |
3659 | (msp430_section_attr): New function. Checks lower, upper and | |
3660 | either attributes. | |
3661 | (msp430_attribute_table): Add lower, upper and either. | |
3662 | (gen_prefix): New function. Generates a prefix for a section | |
3663 | name. | |
3664 | (msp430_select_section): New function - handles the choice of | |
3665 | section for an object. Takes into account memory region | |
3666 | attributes and options. | |
3667 | (msp430_function_section): Use gen_prefix. | |
3668 | (TARGET_SECTION_TYPE_FLAGS): Define. | |
3669 | (msp430_section_type_flags): New function. | |
3670 | (TARGET_ASM_UNIQUE_SECTION): Define. | |
3671 | (msp430_unique_section): New function. | |
3672 | (msp430_output_aligned_decl_common): New function. | |
3673 | (msp430_do_not_relax_short_jumps): New function. | |
3674 | * config/msp430/msp430.h (USE_SELECT_SECTION_FOR_FUNCTIONS): | |
3675 | Define. | |
3676 | (ASM_OUTPUT_ALIGNED_DECL_COMMON): Define. | |
3677 | * config/msp430/msp430-protos.h | |
3678 | (msp430_do_not_relax_short_jumps): New prototype. | |
3679 | (msp430_output_aligned_decl_common): New prototype. | |
3680 | * config/msp430/msp430.md (length): New attribute. | |
3681 | (cbranchhi4_real): If msp430_do_not_relax_short_jumps is true | |
3682 | then use a long code sequence for short jumps. | |
3683 | * config/msp430/msp430.opt (mcode-region): New. | |
3684 | (mdata-region): New. | |
3685 | * doc/invoke.texi: Document new options. | |
3686 | * doc/extend.texi: Document new attributes. | |
3687 | ||
d05ee6d2 | 3688 | 2015-05-05 Matthew Wahab <matthew.wahab@arm.com> |
3689 | ||
3690 | * gcc/config/aarch64-protos.h (struct cpu_branch_cost): New. | |
9e009662 | 3691 | (tune_params): Add field branch_costs. |
d05ee6d2 | 3692 | (aarch64_branch_cost): Declare. |
3693 | * gcc/config/aarch64.c (generic_branch_cost): New. | |
3694 | (generic_tunings): Set field cpu_branch_cost to generic_branch_cost. | |
3695 | (cortexa53_tunings): Likewise. | |
3696 | (cortexa57_tunings): Likewise. | |
3697 | (thunderx_tunings): Likewise. | |
3698 | (xgene1_tunings): Likewise. | |
3699 | (aarch64_branch_cost): Define. | |
3700 | * gcc/config/aarch64/aarch64.h (BRANCH_COST): Redefine. | |
3701 | ||
0967d20f | 3702 | 2015-05-05 Uros Bizjak <ubizjak@gmail.com> |
3703 | ||
3704 | * config/i386/i386.c: Use HOST_WIDE_INT_1 instead of (HOST_WIDE_INT) 1 | |
3705 | and HOST_WIDE_INT_1U instead of (unsigned HOST_WIDE_INT) 1. | |
3706 | * config/i386/i386.md: Ditto. | |
3707 | * config/i386/winnt.c: Ditto. | |
3708 | ||
a13791be | 3709 | 2015-05-05 Matthew Wahab <matthew.wahab@arm.com> |
3710 | ||
3711 | * doc/extend.texi (__atomic Builtins): Move implementation details | |
3712 | to the end of the description, rewrite opening paragraphs, state | |
3713 | difference with __sync builtins, state C11/C++11 assumptions, | |
3714 | weaken itemized descriptions, add explanation of memory model | |
3715 | behaviour, expand description of compare-exchange, simplify text. | |
3716 | ||
6b4fd5ff | 3717 | 2015-05-05 Renlin Li <renlin.li@arm.com> |
3718 | ||
3719 | * config/aarch64/aarch64.md (add<mode>3): Use mov when allowed. | |
3720 | ||
3de2f3c9 | 3721 | 2015-05-05 Yvan Roux <yvan.roux@linaro.org> |
3722 | ||
3723 | * config/aarch64/aarch64-elf-raw.h (CA53_ERR_843419_SPEC): Define. | |
3724 | (LINK_SPEC): Include CA53_ERR_843419_SPEC. | |
3725 | * config/aarch64/aarch64-linux.h (CA53_ERR_843419_SPEC): Define. | |
3726 | (LINK_SPEC): Include CA53_ERR_843419_SPEC. | |
3727 | * config/aarch64/aarch64.opt (mfix-cortex-a53-843419): New option. | |
3728 | * configure: Regenerate. | |
3729 | * configure.ac: Add --enable-fix-cortex-a53-843419 option. | |
3730 | * doc/install.texi (aarch64*-*-*): Document new | |
3731 | --enable-fix-cortex-a53-843419 option. | |
3732 | * doc/invoke.texi (AArch64 Options): Document -mfix-cortex-a53-843419 | |
3733 | and -mno-fix-cortex-a53-843419 options. | |
3734 | ||
57bae6ad | 3735 | 2015-05-05 Uros Bizjak <ubizjak@gmail.com> |
3736 | ||
3737 | PR target/65871 | |
3738 | * config/i386/i386.md (*bmi_andn_<mode>_ccno): New pattern. | |
3739 | ||
3740 | 2015-05-04 Jan Hubicka <hubicka@ucw.cz> | |
51c5663b | 3741 | |
3742 | * tree.c (verify_type): Check various uses of TYPE_MAXVAL; | |
3743 | fix overactive TYPE_MIN_VALUE check and add FIXME for type | |
3744 | compatibility problems. | |
3745 | ||
769dd1e6 | 3746 | 2015-05-04 Ajit Agarwal <ajitkum@xilinx.com> |
3747 | ||
3748 | * config/microblaze/microblaze.md (cbranchsi4): Added immediate | |
3749 | constraints. | |
3750 | (cbranchsi4_reg): New. | |
3751 | * config/microblaze/microblaze.c | |
3752 | (microblaze_expand_conditional_branch_reg): New. | |
3753 | * config/microblaze/microblaze-protos.h | |
3754 | (microblaze_expand_conditional_branch_reg): New prototype. | |
3755 | ||
9237c3de | 3756 | 2015-05-04 Ajit Agarwal <ajitkum@xilinx.com> |
3757 | ||
3758 | * config/microblaze/microblaze.md (peephole2): New. | |
3759 | ||
ca1f69f1 | 3760 | 2015-05-04 Jeff Law <law@redhat.com> |
3761 | ||
3762 | Revert: | |
3763 | 2015-05-04 Jeff Law <law@redhat.com> | |
3764 | ||
9237c3de | 3765 | * match.pd (bit_and (plus/minus (convert @0) (convert @1) mask): New |
3766 | simplifier to narrow arithmetic. | |
3767 | * generic-match-head.c: (types_match, single_use): New functions. | |
3768 | * gimple-match-head.c: (types_match, single_use): New functions. | |
ca1f69f1 | 3769 | |
22e34ea6 | 3770 | 2015-05-04 Kaz Kojima <kkojima@gcc.gnu.org> |
3771 | ||
3772 | PR target/65987 | |
3773 | * config/sh/sh.c (output_far_jump): Take into account crossing jumps. | |
3774 | (split_branches): Likewise. | |
3775 | ||
2d66501e | 3776 | 2015-05-04 Sandra Loosemore <sandra@codesourcery.com> |
3777 | ||
3778 | * common.opt (fdelete-null-pointer-checks): Init to -1. | |
3779 | * config/nios2/elf.h (SUBTARGET_OVERRIDE_OPTIONS): Define to | |
3780 | override flag_delete_null_pointer_checks default. | |
3781 | * doc/invoke.texi (-fdelete-null-pointer-checks): Clarify | |
3782 | behavior re address zero. Better document target-specific behavior. | |
3783 | (-fisolate-errneous-paths-dereference): Mention relationship to | |
3784 | -fdelete-null-pointer-checks. | |
3785 | ||
df6e3469 | 3786 | 2015-05-04 Jakub Jelinek <jakub@redhat.com> |
3787 | ||
3788 | PR tree-optimization/65984 | |
3789 | * ubsan.c: Include tree-cfg.h. | |
3790 | (instrument_bool_enum_load): Use stmt_ends_bb_p instead of | |
3791 | stmt_could_throw_p test, rename can_throw variable to ends_bb. | |
3792 | ||
672cf86b | 3793 | 2015-05-04 Uros Bizjak <ubizjak@gmail.com> |
3794 | ||
3795 | * config/i386/i386.c: Change GET_CODE (...) == CONST_DOUBLE check | |
3796 | to CONST_DOUBLE_P predicate. | |
3797 | (standard_sse_constant_p): Return 0 for !TARGET_SSE. | |
3798 | (ix86_legitimate_constant_p) <case CONST_WIDE_INT>: For 32bit targets, | |
3799 | allow only operands that satisfy standard_sse_constant_p predicate. | |
3800 | * config/i386/i386.md: Change GET_CODE (...) == CONST_DOUBLE check | |
3801 | to CONST_DOUBLE_P predicate. | |
3802 | ||
c8c9ffdb | 3803 | 2015-05-04 Jeff Law <law@redhat.com> |
3804 | ||
3805 | * match.pd (bit_and (plus/minus (convert @0) (convert @1) mask): New | |
3806 | simplifier to narrow arithmetic. | |
3807 | * generic-match-head.c: (types_match, single_use): New functions. | |
3808 | * gimple-match-head.c: (types_match, single_use): New functions. | |
3809 | ||
62b41575 | 3810 | 2015-05-04 Andreas Tobler <andreast@gcc.gnu.org> |
3811 | ||
3812 | * config/arm/arm.c: Restore bootstrap. | |
3813 | ||
23e9258a | 3814 | 2015-05-04 Uros Bizjak <ubizjak@gmail.com> |
3815 | ||
3816 | * config/i386/i386.h (TARGET_SUPPORTS_WIDE_INT): New define. | |
3817 | * config/i386/i386.c (ix86_legitimate_constant_p): Handle TImode | |
3818 | as CONST_WIDE_INT, not CONST_DOUBLE. | |
3819 | (ix86_cannot_force_const_mem): Handle CONST_WIDE_INT. | |
3820 | (output_pic_addr_const): Do not handle VOIDmode CONST_DOUBLEs. | |
3821 | (ix86_find_base_term): Do not check for CONST_DOUBLE. | |
3822 | (ix86_print_operand): Do not handle non-FPmode CONST_DOUBLEs. | |
3823 | (ix86_build_signbit_mask): Rewrite using wide ints. | |
3824 | (ix86_split_to_parts) [HOST_BITS_PER_WIDE_INT < 64]: Remove. | |
3825 | (ix86_rtx_costs): Handle CONST_WIDE_INT. | |
3826 | (find_constant): Ditto. | |
3827 | * config/i386/i386.md (bts, btr, btc peepholes): Rewrite | |
3828 | using gen_int_mode. | |
3829 | * config/i386/predicates.md (x86_64_immediate_operand) | |
3830 | <case CONST_INT>: Remove HOST_BITS_PER_WIDE_INT == 32 code. | |
3831 | (x86_64_zext_immediate_operand): Remove CONST_DOUBLE handling. | |
3832 | <case CONST_INT>: Remove HOST_BITS_PER_WIDE_INT == 32 code. | |
3833 | (const0_operand): Also match const_wide_int. | |
3834 | (constm1_operand): Ditto. | |
3835 | (const1_operand): Ditto. | |
3836 | ||
3599384d | 3837 | 2015-05-04 Richard Biener <rguenther@suse.de> |
3838 | ||
3839 | PR tree-optimization/65965 | |
3840 | * tree-vect-data-refs.c (vect_analyze_data_ref_accesses): Split | |
3841 | store groups at gaps. | |
3842 | ||
f116baa1 | 3843 | 2015-05-04 Richard Biener <rguenther@suse.de> |
3844 | ||
3845 | PR tree-optimization/65935 | |
3846 | * tree-vect-slp.c (vect_build_slp_tree): If we swapped operands | |
3847 | then make sure to apply that swapping to the IL. | |
3848 | ||
47cccfda | 3849 | 2015-05-04 Jakub Jelinek <jakub@redhat.com> |
3850 | ||
3851 | * Makefile.in (PATCHLEVEL_c): New variable. | |
3852 | (DATESTAMP_s, REVISION_s): If PATCHLEVEL_c is not 0, | |
3853 | expand the same way as if DEVPHASE_c was non-empty. | |
3854 | ||
0d64e1fb | 3855 | 2015-05-04 Kai Tietz <ktietz@redhat.com> |
3856 | ||
3857 | PR target/65559 | |
3858 | * lto-wrapper.c (run_gcc): Open filename | |
13965b26 | 3859 | in binary-mode. |
0d64e1fb | 3860 | |
9a7820df | 3861 | 2015-05-03 Sandra Loosemore <sandra@codesourcery.com> |
3862 | ||
3863 | * doc/extend.texi (Variable Attributes, Type Attributes): Move | |
3864 | sections up in file, to immediately after the Function Attributes | |
3865 | section. | |
3866 | ||
f7f4072c | 3867 | 2015-05-02 Jan Hubicka <hubicka@ucw.cz> |
3868 | ||
3869 | * tree.c (verify_type): Check various uses of TYPE_MINVAL. | |
3870 | ||
c3b448d0 | 3871 | 2015-05-02 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3872 | ||
3873 | * tree-outof-ssa.c (emit_partition_copy): Return rtx_insn *. | |
3874 | (insert_partition_copy_on_edge): Adjust. | |
3875 | (insert_rtx_to_part_on_edge): Likewise. | |
3876 | (insert_part_to_rtx_on_edge): Likewise. | |
3877 | ||
a9634f6a | 3878 | 2015-05-02 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3879 | ||
3880 | * function.c (set_return_jump_label): Change type of argument to | |
3881 | rtx_insn *. | |
3882 | * function.h (set_return_jump_label): Adjust. | |
3883 | ||
8d017f25 | 3884 | 2015-05-02 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3885 | ||
3886 | * reload.h (struct reg_equivs_t): Change type of init to | |
3887 | rtx_insn *. | |
3888 | * ira.c (fix_reg_equiv_init): Adjust. | |
3889 | * reload1.c (eliminate_regs_1): Likewise. | |
3890 | (init_eliminable_invariants): Likewise. | |
3891 | ||
33923896 | 3892 | 2015-05-02 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3893 | ||
3894 | * cselib.c (fp_setter_insn): Take a rtx_insn *. | |
3895 | * cselib.h (fp_setter_insn): Adjust. | |
3896 | ||
e603a422 | 3897 | 2015-05-02 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3898 | ||
3899 | * recog.c (struct validate_replace_src_data): Change type of | |
3900 | insn field to rtx_insn *. | |
3901 | (validate_replace_src_group): Change type of argument to rtx_insn *. | |
3902 | * recog.h (validate_replace_src_group): Adjust. | |
3903 | ||
71ce7f59 | 3904 | 2015-05-02 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3905 | ||
3906 | * haifa-sched.c: Change the type of some variables to rtx_insn *. | |
3907 | * sched-deps.c: Likewise. | |
3908 | * sched-int.h: Likewise. | |
3909 | * sched-rgn.c: Likewise. | |
3910 | * sel-sched.c: Likewise. | |
3911 | ||
98e056f6 | 3912 | 2015-05-02 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3913 | ||
3914 | to rtx_insn *. | |
3915 | * config/i386/i386.c: Change the type of some arguments to | |
3916 | rtx_insn *. | |
3917 | * config/arm/arm.c: Likewise. | |
3918 | ||
c265d2aa | 3919 | 2015-05-02 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3920 | ||
3921 | * lra-constraints.c: Change type of some arguments to rtx_insn *. | |
3922 | ||
8108f3f0 | 3923 | 2015-05-02 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3924 | ||
3925 | * regcprop.c (kill_autoinc_value): Change type of argument to | |
3926 | rtx_insn *. | |
3927 | ||
60ff05a9 | 3928 | 2015-05-02 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3929 | ||
3930 | * genrecog.c (print_subroutine): Adjust. | |
3931 | * recog.c (get_bool_attr_mask_uncached): Likewise. | |
3932 | * recog.h (struct recog_data_d): Change the type of insn to | |
3933 | rtx_insn *. | |
3934 | ||
c0937357 | 3935 | 2015-05-02 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3936 | ||
3937 | * dwarf2cfi.c (add_cfi_insn): Change type to rtx_insn *. | |
3938 | ||
ef22ff6d | 3939 | 2015-05-02 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3940 | ||
3941 | * df-problems.c (df_set_note): Change type of argument to | |
3942 | rtx_insn *. | |
3943 | ||
bf79ca12 | 3944 | 2015-05-02 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
3945 | ||
3946 | * builtins.c (expand_builtin_trap): Change type of local | |
3947 | variable to rtx_insn *. | |
3948 | (add_sched_insns_for_speculation): Likewise. | |
3949 | (ix86_emit_save_regs): Likewise. | |
3950 | (get_scratch_register_on_entry): Likewise. | |
3951 | (ix86_emit_restore_reg_using_pop): Likewise. | |
3952 | (ix86_emit_leave): Likewise. | |
3953 | (ix86_emit_restore_regs_using_mov): Likewise. | |
3954 | (ix86_expand_epilogue): Likewise. | |
3955 | Likewise. | |
3956 | (rl78_alloc_physical_registers_umul): Likewise. | |
3957 | * cselib.c (discard_useless_locs): Likewise. | |
3958 | (cselib_invalidate_regno): Likewise. | |
3959 | (cselib_invalidate_mem): Likewise. | |
3960 | * function.c (expand_function_start): Likewise. | |
3961 | (emit_use_return_register_into_block): Likewise. | |
3962 | * gcse.c: Likewise. | |
3963 | * haifa-sched.c (ok_for_early_queue_removal): Likewise. | |
3964 | * ifcvt.c (noce_get_alt_condition): Likewise. | |
3965 | * loop-doloop.c (doloop_condition_get): Likewise. | |
3966 | * lra-constraints.c (inherit_in_ebb): Likewise. | |
3967 | * modulo-sched.c (sms_schedule_by_order): Likewise. | |
3968 | * recog.c (next_insn_tests_no_inequality): Likewise. | |
3969 | * reorg.c (emit_delay_sequence): Likewise. | |
3970 | (update_reg_dead_notes): Likewise. | |
3971 | (fix_reg_dead_note): Likewise. | |
3972 | (fill_slots_from_thread): Likewise. | |
3973 | (delete_computation): Likewise. | |
3974 | ||
47239e3f | 3975 | 2015-05-01 Sandra Loosemore <sandra@codesourcery.com> |
3976 | ||
3977 | * doc/extend.texi (Variable Attributes): Add menu and proper | |
3978 | @nodes to subsections. Move Microsoft Windows attributes to | |
3979 | their own subsection. | |
3980 | (Type Attributes): Reorganize introduction to remove duplicate | |
3981 | list of attributes. Add menu and proper @nodes to subsections. | |
3982 | Alphabetize the main table of common attributes. | |
3983 | ||
c0cf1b24 | 3984 | 2015-05-01 Rasmus Villemoes <rv@rasmusvillemoes.dk> |
3985 | ||
3986 | * match.pd: New simplification patterns. | |
3987 | (x + (x & 1)) -> ((x + 1) & ~1) | |
3988 | (x & ~(x & y)) -> ((x & ~y)) | |
3989 | (x | ~(x | y)) -> ((x | ~y)) | |
3990 | ||
91302006 | 3991 | 2015-05-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
3992 | ||
3993 | * target.def (attribute_table): Mention that struct attribute_spec | |
3994 | is defined in tree-core.h rather than tree.h | |
3995 | * doc/tm.texi: Regenerate. | |
3996 | ||
abef0e58 | 3997 | 2015-05-01 Richard Sandiford <richard.sandiford@arm.com> |
3998 | ||
3999 | * genrecog.c (test): Rename to rtx_test. Update rest of file | |
4000 | accordingly. | |
4001 | ||
33c423fe | 4002 | 2015-05-01 Andreas Schwab <schwab@linux-m68k.org> |
4003 | ||
4004 | PR translation/65959 | |
4005 | * params.h (DEFPARAM): Rename msgid to nocmsgid. | |
4006 | ||
f7429d30 | 4007 | 2015-05-01 Wilco Dijkstra <wdijkstr@arm.com> |
4008 | ||
4009 | * gcc/config/aarch64/aarch64-protos.h (tune_params): | |
4010 | Add min_div_recip_mul_sf and min_div_recip_mul_df fields. | |
4011 | * gcc/config/aarch64/aarch64.c (aarch64_min_divisions_for_recip_mul): | |
4012 | Return value depending on target. | |
4013 | (generic_tunings): Initialize new target settings. | |
4014 | (cortexa53_tunings): Likewise. | |
4015 | (cortexa57_tunings): Likewise. | |
4016 | (thunderx_tunings): Likewise. | |
4017 | (xgene1_tunings): Likewise. | |
4018 | ||
bec4d629 | 4019 | 2015-05-01 Wilco Dijkstra <wdijkstr@arm.com> |
4020 | ||
4021 | * gcc/config/arm/aarch-cost-tables.h (cortexa53_extra_costs): | |
4022 | Make Cortex-A53 shift costs more accurate. | |
4023 | ||
61f1e9bc | 4024 | 2015-05-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4025 | ||
4026 | * config/aarch64/aarch64.c (aarch64_rtx_costs): Handle FLOAT and | |
4027 | UNSIGNED_FLOAT. | |
4028 | ||
aa32f5e1 | 4029 | 2015-05-01 Wilco Dijkstra <wdijkstr@arm.com> |
4030 | ||
4031 | * gcc/config/aarch64/aarch64.c (aarch64_rtx_costs): | |
4032 | Calculate cost of op0 and op1 in PLUS and MINUS cases. | |
4033 | ||
25b6d1de | 4034 | 2015-05-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4035 | ||
4036 | * config/aarch64/aarch64.c (aarch64_rtx_costs, COMPARE case): | |
4037 | Add cost of op0 in the compare-with-fpzero case. | |
4038 | ||
7082509e | 4039 | 2015-04-30 David Malcolm <dmalcolm@redhat.com> |
4040 | ||
4041 | * builtins.c (fold_builtin_1): Remove spurious second | |
4042 | semicolon. | |
4043 | * cgraph.h (symtab_node::get_availability): Likewise. | |
4044 | * opts.c (common_handle_option): Remove spurious second semicolon. | |
4045 | * tree-ssa-loop-ivopts.c (extract_cond_operands): Likewise. | |
4046 | * tree-ssa-loop-niter.c (derive_constant_upper_bound_ops): Likewise. | |
4047 | ||
3e1bd9b8 | 4048 | 2015-04-30 Caroline Tice <cmtice@google.com> |
4049 | ||
9e009662 | 4050 | PR gcov-profile/65929 |
3e1bd9b8 | 4051 | * config/elfos.h (ASM_DECLARE_COLD_FUNCTION_NAME): New macro definition. |
4052 | (ASM_DECLARE_COLD_FUNCTION_SIZE): New macro definition. | |
4053 | * doc/tm.texi.in (ASM_DECLARE_COLD_FUNCTION_NAME): Document new macro. | |
4054 | (ASM_DECLARE_COLD_FUNCTION_SIZE): Document new macro. | |
a59970a6 | 4055 | * doc/tm.texi: Regenerate. |
3e1bd9b8 | 4056 | * final.c (final_scan_insn): Use ASM_DECLARE_COLD_FUNCTION_NAME |
4057 | instead of ASM_DECLARE_FUNCTION_NAME for cold partition name. | |
4058 | * varasm.c (assemble_end_function): Use ASM_DECLARE_COLD_FUNCTION_SIZE | |
4059 | instead of ASM_DECLARE_FUNCTION_SIZE for cold partition size. | |
4060 | ||
51aab393 | 4061 | 2015-04-30 Marek Polacek <polacek@redhat.com> |
4062 | ||
4063 | * varasm.c (handle_cache_entry): Fix logic. | |
4064 | ||
7e733b67 | 4065 | 2015-04-30 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4066 | ||
4067 | * config/aarch64/aarch64.md (*extr<mode>5_insn_alt): New pattern. | |
4068 | (*extrsi5_insn_uxtw_alt): Likewise. | |
4069 | * config/aarch64/aarch64.c (aarch64_extr_rtx_p): New function. | |
4070 | (aarch64_rtx_costs, IOR case): Use above to properly cost extr | |
4071 | operations. | |
4072 | ||
1db16df8 | 4073 | 2015-04-30 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4074 | ||
4075 | * config/aarch64/aarch64.c (aarch64_rtx_costs): Handle pattern for | |
4076 | fabd in ABS case. | |
4077 | ||
17a5981f | 4078 | 2015-04-30 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4079 | ||
4080 | * config/aarch64/aarch64.md | |
4081 | (*eor_one_cmpl_<SHIFT:optab><mode>3_alt): New pattern. | |
4082 | (*eor_one_cmpl_<SHIFT:optab>sidi3_alt_ze): Likewise. | |
4083 | * config/aarch64/aarch64.c (aarch64_rtx_costs): Handle MVN-shift | |
4084 | appropriately. Handle alternative EON form. | |
4085 | ||
5bea7977 | 4086 | 2015-04-30 Renlin Li <renlin.li@arm.com> |
4087 | ||
4088 | * config/aarch64/aarch64-simd.md (vec_shr): Defined as an unspec. | |
4089 | * config/aarch64/iterators.md (unspec): Add UNSPEC_VEC_SHR. | |
4090 | ||
a64b3549 | 4091 | 2015-04-30 Jan Hubicka <hubicka@ucw.cz> |
4092 | ||
4093 | PR ipa/65873 | |
4094 | * ipa-inline.c (can_inline_edge_p): It is safe to inline across | |
4095 | -fstrict-aliasing boundaries. | |
4096 | ||
e087eb70 | 4097 | 2015-04-30 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4098 | ||
4099 | * config/aarch64/aarch64.c (aarch64_rtx_mult_cost): Handle MNEG | |
4100 | and [SU]MNEGL patterns. | |
4101 | ||
4ab3c0df | 4102 | 2015-04-30 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4103 | ||
4104 | * config/aarch64/aarch64.c (aarch64_shift_p): New function. | |
4105 | (aarch64_rtx_mult_cost): Update comment to reflect that it also handles | |
4106 | combined arithmetic-shift ops. Properly handle all shift and extend | |
4107 | operations that can occur in combination with PLUS/MINUS. | |
4108 | Rename maybe_fma to compound_p. | |
4109 | (aarch64_rtx_costs): Use aarch64_shift_p when costing compound | |
4110 | arithmetic and shift operations. | |
4111 | ||
f6935cdd | 4112 | 2015-04-30 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4113 | ||
4114 | * config/aarch64/aarch64.c (aarch64_rtx_costs): Use extend_arith | |
4115 | rather than arith_shift cost when costing ADD/MINUS of an | |
4116 | extended value. | |
4117 | ||
d08a3f89 | 4118 | 2015-04-30 Jan Hubicka <hubicka@ucw.cz> |
4119 | ||
4120 | PR lto/65948 | |
4121 | * ipa-devirt.c (odr_types_equivalent_p): NULLPTR_TYPE is equivalent | |
4122 | to itself. | |
4123 | ||
fe512d6d | 4124 | 2015-04-30 Richard Sandiford <richard.sandiford@arm.com> |
4125 | ||
4126 | * genrecog.c (simplify_tests): Check that CONST_INT and XWINT tests | |
4127 | are for the same position. | |
4128 | ||
e0e5f8dc | 4129 | 2015-04-29 Aditya Kumar <hiraditya@hotmail.com> |
4130 | ||
4131 | * tree-vectorizer.c (set_uid_loop_bbs): New. Factored out of | |
4132 | vectorize_loops. | |
4133 | (vectorize_loops): Use it. | |
4134 | ||
9da64769 | 4135 | 2015-04-29 Jan Hubicka <hubicka@ucw.cz> |
4136 | ||
4137 | * ipa-devirt.c (odr_subtypes_equivalent_p): Compare TYPE_NAME only | |
4138 | for aggregate types. | |
4139 | (register_odr_type): Be ready for MAIN_VARIANT of ODR type | |
4140 | type to be non_ODR. | |
4141 | * tree.c (need_assembler_name_p): Compute mangled name for | |
4142 | non-fundamental types and integer types. | |
4143 | ||
1d1a557c | 4144 | 2015-04-29 Mikhail Maltsev <maltsevm@gmail.com> |
4145 | ||
4146 | * dojump.c (do_compare_rtx_and_jump): Use std::swap instead of | |
4147 | manual swaps. | |
4148 | * expr.c (expand_expr_real_2): Likewise. | |
4149 | ||
0241f4a1 | 4150 | 2015-04-29 Jan Hubicka <hubicka@ucw.cz> |
4151 | ||
4152 | * tree.c (build_common_builtin_nodes): Do not build | |
4153 | __builtin_alloca_with_align as equivalent of library alloca. | |
4154 | ||
988cf7b9 | 4155 | 2015-04-29 Jan Hubicka <hubicka@ucw.cz> |
4156 | ||
4157 | * dwarf2out.c (gen_type_die_with_usage): Call verify_type. | |
4158 | * ipa-chkp.c (chkp_copy_function_type_adding_bounds): Do not produce | |
4159 | bugus variants. | |
4160 | * tree.c: Include print-tree.h and ipa-utils.h | |
4161 | (free_lang_data_in_type): Clear TYPE_VFIELD leaked by C FE. | |
4162 | (free_lang_data_in_cgraph): Call verify_type. | |
4163 | (verify_type_variant): New function. | |
4164 | (verify_type): New function. | |
4165 | * tree.h (verify_type): Declare. | |
4166 | ||
0a6c9dff | 4167 | 2015-04-29 Steve Ellcey <sellcey@imgtec.com> |
4168 | ||
4169 | * config/mips/mips-cpus.def: (mips4): Change default processor | |
4170 | from PROCESSOR_R8000 to PROCESSOR_R10000. | |
4171 | ||
3e42171c | 4172 | 2015-04-29 Petar Jovanovic <petar.jovanovic@rt-rk.com> |
4173 | ||
4174 | * config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Fix the macro to use | |
4175 | la/jalr instead of jal. | |
4176 | ||
6835e01d | 4177 | 2015-04-29 Uros Bizjak <ubizjak@gmail.com> |
4178 | ||
4179 | PR target/65871 | |
57bae6ad | 4180 | * config/i386/i386.md (*bmi_bextr_<mode>_ccz): New pattern. |
4181 | (*bmi2_bzhi_<mode>3_1_ccz): Ditto. | |
2825339a | 4182 | (setcc+movzbl peephole2): Check also clobbered reg. |
4183 | (setcc+andl peephole2): Ditto. | |
6835e01d | 4184 | |
df615909 | 4185 | 2015-04-29 Thomas Schwinge <thomas@codesourcery.com> |
4186 | ||
4187 | PR libgomp/65099 | |
4188 | * config/nvptx/mkoffload.c (target_ilp32): New variable. | |
4189 | (main): Set it depending on "-foffload-abi=[...]". | |
4190 | (compile_native, main): Use it to pass "-m32" or "-m64" to the | |
4191 | compiler. | |
4192 | ||
59d865b5 | 4193 | 2015-04-29 Alan Lawrence <alan.lawrence@arm.com> |
4194 | ||
4195 | PR target/65770 | |
4196 | * config/aarch64/aarch64-simd.md (vec_store_lanesoi_lane<mode>, | |
4197 | vec_store_lanesci_lane<mode>, vec_store_lanesxi_lane<mode>): | |
4198 | Flip lane index back at assembly time for bigendian. | |
4199 | ||
95cfd391 | 4200 | 2015-04-29 Thomas Schwinge <thomas@codesourcery.com> |
4201 | ||
4202 | * tree.h (OMP_STANDALONE_CLAUSES): New macro. | |
4203 | * gimplify.c (gimplify_omp_workshare): Use it. | |
4204 | ||
59250a8d | 4205 | 2015-04-29 Richard Sandiford <richard.sandiford@arm.com> |
4206 | ||
4207 | * Makefile.in (build/genrecog.o): Depend on inchash.h. | |
4208 | (build/genrecog$(build_exeext): Depend on build/hash-table.o and | |
4209 | build/inchash.o | |
4210 | * genrecog.c: Rewrite most of the code except for the third page. | |
4211 | ||
c46201cf | 4212 | 2015-04-29 Richard Sandiford <richard.sandiford@arm.com> |
4213 | ||
4214 | * inchash.h, inchash.c: Include bconfig.h for build objects. | |
4215 | * Makefile.in (build/inchash.o): New rule. | |
4216 | ||
02f930d3 | 4217 | 2015-04-29 Yvan Roux <yvan.roux@linaro.org> |
4218 | ||
4219 | PR target/65924 | |
4220 | * config/arm/thumb2.md (*thumb2_addsi3_compare0_scratch): Fix operand | |
4221 | number in type attribute expression. | |
4222 | ||
63401591 | 4223 | 2015-04-29 Richard Sandiford <richard.sandiford@arm.com> |
4224 | ||
4225 | * loop-iv.c (canon_condition): Generalize to all types of integer | |
4226 | constant. | |
4227 | ||
81b5048b | 4228 | 2015-04-29 Bernhard Reuther-Fischer <aldot@gcc.gnu.org> |
4229 | ||
4230 | * gimple-walk.c: Prune duplicate or unneeded includes. | |
4231 | (walk_gimple_asm): Only call parse_input_constraint or | |
4232 | parse_output_constraint if their findings are used. | |
4233 | Honour parse_input_constraint and parse_output_constraint | |
4234 | result. | |
4235 | ||
eb284139 | 4236 | 2015-04-29 Alan Lawrence <alan.lawrence@arm.com> |
4237 | ||
4238 | * config/arm/neon.md (vec_shl<mode>, vec_shr<mode>): Remove. | |
4239 | ||
379c7683 | 4240 | 2015-04-29 Tom de Vries <tom@codesourcery.com> |
4241 | ||
4242 | PR tree-optimization/65893 | |
4243 | * passes.def (pass_all_optimizations): Move pass_stdarg to after | |
4244 | pass_dce. | |
4245 | ||
257941fb | 4246 | 2015-04-29 Richard Biener <rguenther@suse.de> |
4247 | ||
4248 | * tree-vect-data-refs.c (vect_analyze_group_access): Properly | |
4249 | compute GROUP_SIZE for basic-block SLP. | |
4250 | * tree-vect-slp.c (vect_get_place_in_interleaving_chain): Properly | |
4251 | take into account gaps. | |
4252 | (vect_get_mask_element): Properly reject references to previous | |
4253 | vectors. | |
4254 | (vect_transform_slp_perm_load): Likewise. | |
4255 | ||
711f417f | 4256 | 2015-04-29 Christian Bruel <christian.bruel@st.com> |
4257 | ||
4258 | PR target/64835 | |
4259 | * config/i386/i386.c (ix86_default_align): New function. | |
4260 | (ix86_override_options_after_change): Call ix86_default_align. | |
4261 | (TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE): New hook. | |
4262 | (ix86_override_options_after_change): New function. | |
4263 | ||
59ffbbb9 | 4264 | 2015-04-28 Jeff Law <law@redhat.com> |
4265 | ||
4266 | * tree-ssa-dom.c (record_equality); Fix comment typos. | |
4267 | ||
f7fec1c7 | 4268 | 2015-04-28 Tom de Vries <tom@codesourcery.com> |
4269 | ||
4270 | PR tree-optimization/65887 | |
4271 | * gimplify.c (gimplify_modify_expr): Remove ifn_va_arg ap fixup. | |
4272 | ||
f1e18532 | 4273 | 2015-04-28 Sandra Loosemore <sandra@codesourcery.com> |
4274 | ||
4275 | * doc/extend.texi (Declaring Attributes of Functions): Split into | |
4276 | subsections by target. Alphabetize the table of common attributes. | |
4277 | Rewrite some of the introductory text to reflect the new structure. | |
4278 | Update some cross-references to point to the new subsections. | |
4279 | (Attribute Syntax): Put paragraph about "__" naming here. Remove | |
4280 | duplicate copies in the discussion of function, label, and type | |
4281 | attributes. | |
4282 | ||
0c708369 | 4283 | 2015-04-28 Dominique d'Humieres <dominiq@lps.ens.fr> |
4284 | ||
4285 | PR bootstrap/65910 | |
4286 | * varasm.c (assemble_end_function): Guard ASM_DECLARE_FUNCTION_SIZE. | |
4287 | ||
8c522687 | 4288 | 2015-04-28 Jason Merrill <jason@redhat.com> |
4289 | ||
4290 | PR c++/65734 | |
4291 | * stor-layout.c (layout_type): Layout the TYPE_MAIN_VARIANT. | |
4292 | (finalize_type_size): Respect TYPE_USER_ALIGN. | |
4293 | (layout_type) [ARRAY_TYPE]: Likewise. | |
4294 | ||
282b4c75 | 4295 | 2015-04-28 Yvan Roux <yvan.roux@linaro.org> |
4296 | ||
4297 | * config/arm/arm.md (*arm_movt): Fix type attribute. | |
4298 | (*cmpsi_shiftsi): Likewise. | |
4299 | (*cmpsi_shiftsi_swp): Likewise. | |
4300 | (*movsicc_insn): Likewise. | |
4301 | (*cond_move): Likewise. | |
4302 | (*if_plus_move): Likewise. | |
4303 | (*if_move_plus): Likewise. | |
4304 | (*if_arith_move): Likewise. | |
4305 | (*if_move_arith): Likewise. | |
4306 | (*if_shift_move): Likewise. | |
4307 | (*if_move_shift): Likewise. | |
4308 | (*arm_movtas_ze): Likewise. | |
4309 | * config/arm/thumb2.md (*thumb2_movsicc_insn): Fix alternative | |
4310 | redundancy and type attribute. | |
4311 | (*thumb2_movsi_insn): Fix type attribute. | |
4312 | (*thumb2_addsi_short): Likewise. | |
4313 | (thumb2_addsi3_compare0): Likewise. | |
4314 | (*thumb2_addsi3_compare0_scratch): Merge alternatives and fix | |
4315 | attributes accordingly. | |
4316 | ||
9e37e96e | 4317 | 2015-04-28 Markus Trippelsdorf <markus@trippelsdorf.de> |
4318 | ||
4319 | PR other/65911 | |
4320 | * function.c (pad_to_arg_alignment): Add parentheses. | |
4321 | ||
005a5ef5 | 4322 | 2015-04-28 Uros Bizjak <ubizjak@gmail.com> |
4323 | ||
4324 | * config/frv/frv.h (CRT_GET_RFIB_DATA): Move definition to | |
4325 | libgcc/config/frv/elf-lib.h. | |
4326 | ||
1f5fe264 | 4327 | 2015-04-28 Tom de Vries <tom@codesourcery.com> |
4328 | ||
4329 | * tree-call-cdce.c: Fix example in header comment. | |
4330 | ||
6501e749 | 4331 | 2015-04-28 Richard Biener <rguenther@suse.de> |
4332 | ||
4333 | PR tree-optimization/62283 | |
4334 | * tree-vect-slp.c (vect_build_slp_tree): When the SLP build | |
4335 | fails fatally and we are vectorizing a basic-block simply | |
4336 | cause the child to be constructed piecewise. | |
4337 | (vect_analyze_slp_cost_1): Adjust. | |
4338 | (vect_detect_hybrid_slp_stmts): Likewise. | |
4339 | (vect_bb_slp_scalar_cost): Likewise. | |
4340 | (vect_get_constant_vectors): For piecewise constructed | |
4341 | constants place them after the last def. | |
4342 | (vect_get_slp_defs): Adjust. | |
4343 | * tree-vect-stmts.c (vect_is_simple_use): Detect in-BB | |
4344 | externals for basic-block vectorization. | |
4345 | ||
ee7ef7ab | 4346 | 2015-04-28 Thomas Preud'homme <thomas.preudhomme@arm.com> |
4347 | ||
4348 | PR target/63503 | |
4349 | * config.gcc: Add cortex-a57-fma-steering.o to extra_objs for | |
4350 | aarch64-*-*. | |
4351 | * config/aarch64/t-aarch64: Add a rule for cortex-a57-fma-steering.o. | |
4352 | * config/aarch64/aarch64.h (AARCH64_FL_USE_FMA_STEERING_PASS): Define. | |
4353 | (AARCH64_TUNE_FMA_STEERING): Likewise. | |
4354 | * config/aarch64/aarch64-cores.def: Set | |
4355 | AARCH64_FL_USE_FMA_STEERING_PASS for cores with dynamic steering of | |
4356 | FMUL/FMADD instructions. | |
4357 | * config/aarch64/aarch64.c (aarch64_register_fma_steering): Declare. | |
4358 | (aarch64_override_options): Include cortex-a57-fma-steering.h. Call | |
4359 | aarch64_register_fma_steering () if AARCH64_TUNE_FMA_STEERING is true. | |
4360 | * config/aarch64/cortex-a57-fma-steering.h: New file. | |
4361 | * config/aarch64/cortex-a57-fma-steering.c: Likewise. | |
4362 | ||
562b4de2 | 4363 | 2015-04-28 Richard Sandiford <richard.sandiford@arm.com> |
4364 | ||
4365 | * gensupport.c (std_preds): Add missing codes to address_operand entry. | |
4366 | ||
27de3d43 | 4367 | 2015-04-28 Richard Biener <rguenther@suse.de> |
4368 | ||
4369 | PR tree-optimization/65851 | |
4370 | * tree-ssa-ccp.c (set_lattice_value): Perform a meet when | |
4371 | changing CONSTANT to CONSTANT non-copy. Get new_val by reference. | |
4372 | (ccp_lattice_meet): Remove stray argument. Use operand_equal_p | |
4373 | rather than simple_cst_equal as the latter doesn't handle COMPLEX_CST. | |
4374 | (ccp_visit_phi_node): Adjust. | |
4375 | (evaluate_stmt): For simplifications to SSA names return its | |
4376 | lattice value if that isn't VARYING. Return immediately when | |
4377 | simplified to a constant. | |
4378 | (visit_assignment): Adjust. | |
4379 | (ccp_visit_stmt): Likewise. | |
4380 | ||
5beb86d5 | 4381 | 2015-04-28 Tom de Vries <tom@codesourcery.com> |
4382 | ||
4383 | PR tree-optimization/65818 | |
4384 | * tree-stdarg.c (expand_ifn_va_arg_1): Ensure that side-effects are | |
4385 | evaluated. | |
4386 | ||
ccccd62c | 4387 | 2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
4388 | ||
4389 | * calls.c (save_fixed_argument_area): Don't check | |
4390 | ARGS_GROW_DOWNWARD with the preprocessor. | |
4391 | (restore_fixed_argument_area): Likewise. | |
4392 | (mem_overlaps_already_clobbered_arg_p): Likewise. | |
4393 | (check_sibcall_argument_overlap): Likewise. | |
4394 | (expand_call): Likewise. | |
4395 | (emit_library_call_value_1): Likewise. | |
4396 | (store_one_arg): Likewise. | |
4397 | * function.c (assign_parms): Likewise. | |
4398 | (locate_and_pad_parm): Likewise. | |
4399 | (pad_to_arg_alignment): Likewise. | |
4400 | * targhooks.c (std_gimplify_va_arg_expr): Likewise. | |
4401 | ||
25ecdd6d | 4402 | 2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
4403 | ||
4404 | * config/pa/pa.h (ARGS_GROW_DOWNWARD): Define to 1. | |
4405 | * defaults.h (ARGS_GROW_DOWNWARD): Define it to 0 by default. | |
4406 | * calls.c (save_fixed_argument_area): Don't chekc if | |
4407 | ARGS_GROW_DOWNWARD is defined. | |
4408 | (restore_fixed_argument_area): Likewise. | |
4409 | (mem_overlaps_already_clobbered_arg_p): Likewise. | |
4410 | (check_sibcall_argument_overlap): Likewise. | |
4411 | (expand_call): Likewise. | |
4412 | (emit_library_call_value_1): Likewise. | |
4413 | (store_one_arg): Likewise. | |
4414 | * function.c (assign_parms): Likewise. | |
4415 | (locate_and_pad_parm): Likewise. | |
4416 | (pad_to_arg_alignment): Likewise. | |
4417 | * targhooks.c (std_gimplify_va_arg_expr): Likewise. | |
4418 | ||
317443b3 | 4419 | 2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
4420 | ||
4421 | * defaults.h (gen_epilogue): New function. | |
4422 | * alias.c (init_alias_analysis): don't check if HAVE_epilogue is | |
4423 | defined. | |
4424 | * cfgrtl.c (cfg_layout_finalize): Likewise. | |
4425 | * df-scan.c: Likewise. | |
4426 | * function.c (thread_prologue_and_epilogue_insns): Likewise. | |
4427 | (reposition_prologue_and_epilogue_notes): Likewise. | |
4428 | * reorg.c (find_end_label): Likewise. | |
4429 | * toplev.c: Likewise. | |
4430 | ||
ae6fd0a8 | 4431 | 2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
4432 | ||
4433 | * bb-reorder.c (HAVE_return): Don't check if its undefined. | |
4434 | * defaults.h (gen_simple_return): New function. | |
4435 | (gen_simple_return): Likewise. | |
4436 | (HAVE_return): Add default definition to false. | |
4437 | (HAVE_simple_return): Likewise. | |
4438 | * cfgrtl.c (force_nonfallthru_and_redirect): Remove checks if | |
4439 | HAVE_return and HAVE_simple_return are defined. | |
4440 | * function.c (gen_return_pattern): Likewise. | |
4441 | (convert_jumps_to_returns): Likewise. | |
4442 | (thread_prologue_and_epilogue_insns): Likewise. | |
4443 | * reorg.c (find_end_label): Likewise. | |
4444 | (dbr_schedule): Likewise. | |
4445 | * shrink-wrap.c: Likewise. | |
4446 | * shrink-wrap.h: Likewise. | |
4447 | ||
10ea5dad | 4448 | 2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
4449 | ||
4450 | * defaults.h (EPILOGUE_USES): Add default definition of false. | |
4451 | * df-scan.c (EPILOGUE_USES): Remove check if its undefined. | |
4452 | * resource.c (init_resource_info): Likewise. | |
4453 | ||
0791e28d | 4454 | 2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
4455 | ||
4456 | * defaults.h (PCC_BITFIELD_TYPE_MATTERS): Add default definition | |
4457 | to false. | |
4458 | * dwarf2out.c (field_byte_offset): REmove check if | |
4459 | PCC_BITFIELD_TYPE_MATTERS is defined. | |
4460 | * stor-layout.c (layout_decl): Likewise. | |
4461 | (update_alignment_for_field): Likewise. | |
4462 | (place_field): Likewise. | |
4463 | ||
e239bb25 | 4464 | 2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
4465 | ||
4466 | * defaults.h (HARD_REGNO_RENAME_OK): Add default definition to | |
4467 | true. | |
4468 | * regrename.c (check_new_reg_p): Remove check if | |
4469 | HARD_REGNO_RENAME_OK is defined. | |
4470 | * sel-sched.c (sel_hard_regno_rename_ok): Likewise. | |
4471 | ||
93516111 | 4472 | 2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
4473 | ||
4474 | * calls.c (prepare_call_address): Remove ifdef NO_FUNCTION_CSE. | |
4475 | * cse.c (fold_rtx): Likewise. | |
4476 | * config/alpha/alpha.h (NO_FUNCTION_CSE): Define to 1. | |
4477 | * config/arc/arc.h (NO_FUNCTION_CSE): Likewise. | |
4478 | * config/avr/avr.h (NO_FUNCTION_CSE): Likewise. | |
4479 | * config/cr16/cr16.h (NO_FUNCTION_CSE): Likewise. | |
4480 | * config/epiphany/epiphany.h (NO_FUNCTION_CSE): Likewise. | |
4481 | * config/frv/frv.h (NO_FUNCTION_CSE): Likewise. | |
4482 | * config/h8300/h8300.h (NO_FUNCTION_CSE): Likewise. | |
4483 | * config/i386/i386.h (NO_FUNCTION_CSE): Likewise. | |
4484 | * config/ia64/ia64.h (NO_FUNCTION_CSE): Likewise. | |
4485 | * config/lm32/lm32.h (enum reg_class) (NO_FUNCTION_CSE): | |
4486 | * Likewise. | |
4487 | * config/m32r/m32r.h (NO_FUNCTION_CSE): Likewise. | |
4488 | * config/mep/mep.h (NO_FUNCTION_CSE): Likewise. | |
4489 | * config/mn10300/mn10300.h (NO_FUNCTION_CSE): Likewise. | |
4490 | * config/nds32/nds32.h (NO_FUNCTION_CSE): Likewise. | |
4491 | * config/nios2/nios2.h (NO_FUNCTION_CSE): Likewise. | |
4492 | * config/pa/pa.h (NO_FUNCTION_CSE): Likewise. | |
4493 | * config/rs6000/rs6000.h (NO_FUNCTION_CSE): Likewise. | |
4494 | * config/s390/s390.h (NO_FUNCTION_CSE): Likewise. | |
4495 | * config/sparc/sparc.h (NO_FUNCTION_CSE): Likewise. | |
4496 | * config/spu/spu.h (NO_FUNCTION_CSE): Likewise. | |
4497 | * config/stormy16/stormy16.h (NO_FUNCTION_CSE): Likewise. | |
4498 | * config/v850/v850.h (NO_FUNCTION_CSE): Likewise. | |
4499 | * defaults.h (NO_FUNCTION_CSE): Provide default definition to 0. | |
4500 | * doc/tm.texi: Regenerate. | |
4501 | * doc/tm.texi.in: Document NO_FUNCTION_CSE is always defined to | |
4502 | either true or false. | |
4503 | ||
fd762ec1 | 4504 | 2015-04-27 Jeff Law <law@redhat.com> |
4505 | ||
4506 | PR tree-optimization/65217 | |
4507 | * tree-ssa-dom.c (record_equality): Given two SSA_NAMEs, if just one | |
4508 | of them has a single use, make sure it is the LHS of the implied | |
4509 | copy. | |
4510 | ||
029eed15 | 4511 | 2015-04-28 Alan Modra <amodra@gmail.com> |
4512 | ||
4513 | PR target/65810 | |
4514 | * config/rs6000/rs6000.c (POWERPC64_TOC_POINTER_ALIGNMENT): Define. | |
4515 | (offsettable_ok_by_alignment): Use minimum of decl and toc | |
4516 | pointer alignment. Replace dead code with assertion. | |
4517 | (use_toc_relative_ref): Add mode arg. Return false in -mcmodel=medium | |
4518 | case if size exceeds toc pointer alignment. | |
4519 | (rs6000_legitimize_reload_address): Update use_toc_relative_ref call. | |
4520 | (rs6000_emit_move): Likewise. | |
4521 | * configure.ac: Add linker toc pointer alignment check. | |
4522 | * configure: Regenerate. | |
4523 | * config.in: Regenerate. | |
4524 | ||
acff2768 | 4525 | 2015-04-27 Yoshinori Sato <ysato@users.sourceforge.jp> |
4526 | ||
4527 | * config.gcc: Add h8300-*-linux. | |
4528 | * config/h8300/linux.h: New. | |
4529 | * config/h8300/t-linux: New. | |
4530 | * config/h8300/h8300.c (h8300_option_override): Normal mode | |
4531 | is not supported for h8300-*-linux. | |
4532 | (h8300_file_start): Target priority change. | |
4533 | (get_shift_alg): Likewise. | |
4534 | (h8300_shift_need_scratch_p): Likewise. | |
4535 | * config/h8300/h8300.h (TARGET_CPU_CPP_BUILTINS): Likewise. | |
4536 | * config/h8300/h8300.md (define_peephole2): Remove duplicate condition. | |
4537 | ||
08cb962f | 4538 | 2015-04-27 Caroline Tice <cmtice@google.com> |
4539 | ||
fe17dddc | 4540 | * final.c (final_scan_insn): Output cold_function_name as function |
08cb962f | 4541 | type. |
fe17dddc | 4542 | * varasm.c (cold_function_name): Make global. |
08cb962f | 4543 | (assemble_start_function): Re-set cold_function_name. |
4544 | (assemble_end_function): Output cold partition size. | |
fe17dddc | 4545 | * varasm.h (cold_function_name): Declare global. |
08cb962f | 4546 | |
36f7991c | 4547 | 2015-04-27 Ilya Tocar <ilya.tocar@intel.com> |
4548 | ||
4549 | * config/i386/i386.h (EXT_REX_SSE_REG_P): New. | |
4550 | * config/i386/i386.md (*cmpi<FPCMP:unord><MODEF:mode>_mixed): Use "v" | |
4551 | constraint. | |
4552 | (*movxi_internal_avx512f): Ditto. | |
4553 | (define_split): Check for xmm16+, when splitting scalar float_extend. | |
4554 | (*extendsfdf2_mixed): Use "v" constraint. | |
4555 | (define_split): Check for xmm16+, when splitting scalar float_truncate. | |
4556 | (*truncdfsf_fast_sse): Use "v" constraint. | |
4557 | (fix_trunc<MODEF:mode><SWI48:mode>_sse): Ditto. | |
4558 | (*float<SWI48:mode><MODEF:mode>2_sse): Ditto. | |
4559 | (define_peephole2): Check for xmm16+, when converting scalar | |
4560 | float_truncate. | |
4561 | (define_peephole2): Check for xmm16+, when converting scalar | |
4562 | float_extend. | |
4563 | (*fop_<mode>_comm_mixed): Use "v" constraint. | |
4564 | (*fop_<mode>_comm_sse): Ditto. | |
4565 | (*fop_<mode>_1_mixed): Ditto. | |
4566 | (*sqrt<mode>2_sse): Ditto. | |
4567 | (*ieee_s<ieee_maxmin><mode>3): Ditto. | |
4568 | ||
c3d65ba7 | 4569 | 2015-04-27 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4570 | ||
4571 | * combine.c (simplify_if_then_else): Use std::swap instead | |
4572 | of manually swapping. | |
4573 | (known_cond): Likewise. | |
4574 | (simplify_comparison): Likewise. | |
4575 | ||
cb2c281a | 4576 | 2015-04-27 Peter Bergner <bergner@vnet.ibm.com> |
4577 | ||
4578 | PR target/64579 | |
4579 | * config/rs6000/htm.md: Remove all define_expands. | |
4580 | (UNSPECV_HTM_TABORTDC, UNSPECV_HTM_TABORTDCI, UNSPECV_HTM_TABORTWC, | |
4581 | UNSPECV_HTM_TABORTWCI): Remove. | |
4582 | (UNSPECV_HTM_TABORTXC, UNSPECV_HTM_TABORTXCI, UNSPECV_HTM_TTEST): New. | |
4583 | (tabort_internal, tbegin_internal, tcheck_internal, tend_internal, | |
4584 | trechkpt_internal, treclaim_internal, tsr_internal): Rename from this... | |
4585 | (tabort, tbegin, tcheck, tend, trechkpt, treclaim, tsr): ...to this. | |
4586 | (tabortdc_internal, tabortdci_internal, tabortwc_internal, | |
4587 | tabortwci_internal): Remove define_insns. | |
4588 | (tabort<wd>c, tabort<wd>ci): New define_insns. | |
4589 | (tabort): Use gpc_reg_operand. | |
4590 | (tcheck): Remove operand. | |
4591 | (htm_mfspr_<mode>, htm_mtspr_<mode>): Use GPR mode macro. | |
4592 | * config/rs6000/htmxlintrin.h (__TM_end): Use _HTM_TRANSACTIONAL as | |
4593 | expected value. | |
4594 | * config/rs6000/rs6000-builtin.def (BU_HTM_SPR0): Remove. | |
4595 | (BU_HTM_SPR1): Rename to BU_HTM_V1. Remove use of RS6000_BTC_SPR. | |
4596 | (tabort, tabortdc, tabortdci, tabortwc, tabortwci, tbegin, | |
4597 | tcheck, tend, tendall, trechkpt, treclaim, tresume, tsuspend, | |
4598 | tsr, ttest): Pass in the RS6000_BTC_CR attribute. | |
4599 | (get_tfhar, set_tfhar, get_tfiar, set_tfiar, get_texasr, set_texasr, | |
4600 | get_texasru, set_texasru): Pass in the RS6000_BTC_SPR attribute. | |
4601 | (tcheck): Remove builtin argument. | |
4602 | * config/rs6000/rs6000.c (rs6000_htm_spr_icode): Use TARGET_POWERPC64 | |
4603 | not TARGET_64BIT. | |
4604 | (htm_expand_builtin): Fix usage of expandedp. Disallow usage of the | |
4605 | tabortdc and tabortdci builtins when not in 64-bit mode. | |
4606 | Modify code to handle the loss of the HTM define_expands. | |
4607 | Emit code to copy the CR register to TARGET. | |
4608 | (htm_init_builtins): Modify code to handle the loss of the HTM | |
4609 | define_expands. | |
4610 | * config/rs6000/rs6000.h (RS6000_BTC_32BIT): Delete. | |
4611 | (RS6000_BTC_64BIT): Likewise. | |
4612 | (RS6000_BTC_CR): New macro. | |
4613 | * doc/extend.texi: Update documentation for htm builtins. | |
4614 | ||
d2d0f161 | 4615 | 2015-04-27 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4616 | ||
4617 | * simplify-rtx.c (simplify_gen_binary): Use std::swap instead | |
4618 | of manually swapping. | |
4619 | (simplify_associative_operation): Likewise. | |
4620 | (simplify_binary_operation): Likewise. | |
4621 | (simplify_plus_minus): Likewise. | |
4622 | (simplify_relational_operation): Likewise. | |
4623 | (simplify_ternary_operation): Likewise. | |
4624 | ||
925d7c62 | 4625 | 2015-04-27 Richard Sandiford <richard.sandiford@arm.com> |
4626 | ||
4627 | * config/stormy16/predicates.md (xs_hi_general_operand): Delete. | |
4628 | (xs_hi_nonmemory_operand): Remove error. | |
4629 | * config/stormy16/stormy16.md (movhi, movhi_internal): Use | |
4630 | general_operand rather than xs_hi_general_operand. | |
4631 | ||
83617aa2 | 4632 | 2015-04-27 Richard Biener <rguenther@suse.de> |
4633 | ||
4634 | * tree-ssa-dom.c (record_equivalences_from_phis): Valueize PHI arg. | |
4635 | (record_equivalences_from_stmt): Valueize rhs. | |
4636 | (record_equality): Canonicalize x and y order via | |
4637 | tree_swap_operands_p. Do not swap operands for same loop depth. | |
4638 | ||
4073a6d0 | 4639 | 2015-04-27 Georg-Johann Lay <avr@gjlay.de> |
4640 | ||
4641 | PR target/65296 | |
4642 | PR target/65895 | |
4643 | * config/avr/gen-avr-mmcu-specs.c (print_mcu): Close file. | |
4644 | Add hint how to use own spec file. | |
4645 | ||
77988f58 | 4646 | 2015-04-27 Jakub Jelinek <jakub@redhat.com> |
4647 | ||
4648 | PR tree-optimization/65875 | |
4649 | * tree-vrp.c (update_value_range): If in is_new case setting | |
4650 | old_vr to VR_VARYING, also set new_vr to it. Remove | |
4651 | old_vr->type == VR_VARYING test. | |
4652 | (vrp_visit_phi_node): Return SSA_PROP_VARYING instead of | |
4653 | SSA_PROP_INTERESTING if update_value_range returned true, | |
4654 | but new range is VR_VARYING. | |
4655 | ||
1b52292c | 4656 | 2015-04-27 Thomas Preud'homme <thomas.preudhomme@arm.com> |
4657 | ||
4658 | * combine.c (sign_extend_short_imm): New. | |
4659 | (set_nonzero_bits_and_sign_copies): Use above new function for sign | |
4660 | extension of src short immediate. | |
4661 | (reg_nonzero_bits_for_combine): Likewise for tem. | |
4662 | ||
5759dc8e | 4663 | 2015-04-27 Eric Botcazou <ebotcazou@adacore.com> |
4664 | ||
4665 | * stor-layout.c (self_referential_component_ref_p): New predicate. | |
4666 | (copy_self_referential_tree_r): Use it. | |
4667 | (self_referential_size): Punt for simple operations directly involving | |
4668 | self-referential component references. | |
4669 | * tree-cfg.c (dump_function_to_file): Add missing final curly bracket. | |
4670 | ||
ea67ac1e | 4671 | 2015-04-27 Eric Botcazou <ebotcazou@adacore.com> |
4672 | ||
4673 | * ipa-icf.c (icf_handled_component_p): Remove redundant tests. | |
4674 | ||
103be950 | 4675 | 2015-04-27 Richard Sandiford <richard.sandiford@arm.com> |
4676 | ||
4677 | * vec.h (vec): Make splice arguments const. Update definitions | |
4678 | accordingly. | |
4679 | ||
3a44c5a9 | 4680 | 2015-04-27 Yvan Roux <yvan.roux@linaro.org> |
4681 | ||
4682 | * config/arm/arm.md (*arm_subsi3_insn): Fixed redundant | |
4683 | alternatives. | |
4684 | ||
8047debf | 4685 | 2015-04-26 Tom de Vries <tom@codesourcery.com> |
4686 | ||
4687 | PR tree-optimization/65826 | |
4688 | * internal-fn.def: Mark VA_ARG with ECF_LEAF. | |
4689 | ||
8308f1d9 | 4690 | 2015-04-24 Steve Ellcey <sellcey@imgtec.com> |
4691 | ||
4692 | * config/mips/mips.md: (*madd4<mode>) Remove accum_in attribute. | |
4693 | (*madd3<mode>): Ditto. | |
4694 | (*msub4<mode>): Ditto. | |
4695 | (*msub3<mode>): Ditto. | |
4696 | (*nmadd4<mode>): Ditto. | |
4697 | (*nmadd3<mode>): Ditto. | |
4698 | (*nmadd4<mode>_fastmath): Ditto. | |
4699 | (*nmadd3<mode>_fastmath): Ditto. | |
4700 | (*nmsub4<mode>): Ditto. | |
4701 | (*nmsub3<mode>): Ditto. | |
4702 | (*nmsub4<mode>_fastmath): Ditto. | |
4703 | (*nmsub3<mode>_fastmath): Ditto. | |
4704 | ||
f6d0c5d5 | 4705 | 2015-04-24 Jason Merrill <jason@redhat.com> |
4706 | ||
4707 | PR c++/50800 | |
4708 | * tree.c (build_reference_type_for_mode): Don't pass can_alias_all | |
4709 | down when building TYPE_CANONICAL. | |
4710 | (build_pointer_type_for_mode): Likewise. | |
4711 | ||
f1a7e25b | 4712 | 2015-04-24 Chen Gang <gang.chen.5i5j@gmail.com> |
4713 | ||
4714 | * genrecog.c (validate_pattern): Check matching constraint refers | |
4715 | to a lower numbered operand. | |
4716 | ||
7990e5de | 4717 | 2015-04-24 Michael Meissner <meissner@linux.vnet.ibm.com> |
4718 | ||
4719 | PR target/65849 | |
4720 | * config/rs6000/rs6000.opt (-mvsx-align-128): Make options that | |
4721 | save to independent variables use the Save attribute. This will | |
4722 | allow these options to be modified with the #pragma/attribute | |
4723 | target support. | |
4724 | (-mallow-movmisalign): Likewise. | |
4725 | (-mallow-df-permute): Likewise. | |
4726 | (-msched-groups): Likewise. | |
4727 | (-malways-hint): Likewise. | |
4728 | (-malign-branch-targets): Likewise. | |
4729 | (-mvectorize-builtins): Likewise. | |
4730 | (-msave-toc-indirect): Likewise. | |
4731 | ||
4732 | * config/rs6000/rs6000.c (rs6000_opt_masks): Add more options that | |
4733 | can be set via the #pragma/attribute target support. | |
4734 | (rs6000_opt_vars): Likewise. | |
4735 | (rs6000_inner_target_options): If VSX was set, also set | |
4736 | -mno-avoid-indexed-addresses. | |
4737 | ||
9b23f0a7 | 4738 | 2015-04-24 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4739 | ||
4740 | * config/arm/iterators.md (shiftable_ops): Rename to... | |
4741 | (SHIFTABLE_OPS): ... This. Update use in comments. | |
4742 | (ior_xor): Rename to... | |
4743 | (IOR_XOR): ... This. | |
4744 | (vqh_ops): Rename to... | |
4745 | (VQH_OPS): ... This. | |
4746 | (vqhs_ops): Rename to... | |
4747 | (VQHS_OPS): ... This. | |
4748 | (rshifts): Rename to... | |
4749 | (RSHIFTS): ... This. | |
4750 | (returns): Rename to... | |
4751 | (RETURNS): ... This. | |
4752 | * config/arm/arm.md: Update uses of the above. | |
4753 | * config/arm/neon.md: Likewise. | |
4754 | ||
8b81ce60 | 4755 | 2014-04-24 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4756 | ||
4757 | * config.host (case ${host}): Add aarch64*-*-linux case. | |
4758 | * config/aarch64/aarch64-cores.def: Add IMPLEMENTER_ID and PART_NUMBER | |
4759 | fields to all the cores. | |
4760 | * config/aarch64/aarch64-elf.h (DRIVER_SELF_SPECS): | |
4761 | Add MCPU_MTUNE_NATIVE_SPECS. | |
4762 | * config/aarch64/aarch64-option-extensions.def: Add FEATURE_STRING | |
4763 | field to all extensions. | |
4764 | * config/aarch64/aarch64-opts.h: Adjust definition of AARCH64_CORE. | |
4765 | * config/aarch64/aarch64.c: Adjust definition of AARCH64_CORE. | |
4766 | Adjust definition of AARCH64_OPT_EXTENSION. | |
4767 | * config/aarch64/aarch64.h: Adjust definition of AARCH64_CORE. | |
4768 | (MCPU_MTUNE_NATIVE_SPECS): Define. | |
4769 | * config/aarch64/driver-aarch64.c: New file. | |
4770 | * config/aarch64/x-arch64: New file. | |
4771 | * doc/invoke.texi (AArch64 Options): Document native value for -mcpu, | |
4772 | -mtune and -march. | |
4773 | ||
6a5f6dde | 4774 | 2015-04-24 Uros Bizjak <ubizjak@gmail.com> |
4775 | Wei Mi <wmi@google.com> | |
4776 | ||
4777 | * config/i386/i386-protos.h (ix86_operands_ok_for_move_multiple): New. | |
4778 | * config/i386/i386.c (extract_base_offset_in_addr): New function. | |
4779 | (ix86_operands_ok_for_move_multiple): Ditto. | |
4780 | * config/i386/sse.md (movsd/movhpd to movupd peephole2): New pattern. | |
4781 | (movlpd/movhpd to movupd peephole2): Ditto. | |
4782 | ||
439606a9 | 4783 | 2015-04-24 Marek Polacek <polacek@redhat.com> |
4784 | ||
4785 | PR c/61534 | |
4786 | * input.h (from_macro_expansion_at): Define. | |
485f6b9c | 4787 | |
4788 | PR c/63357 | |
4789 | * doc/invoke.texi: Update description of -Wlogical-op. | |
439606a9 | 4790 | |
8c4ec4a5 | 4791 | 2015-04-24 Thomas Preud'homme <thomas.preudhomme@arm.com> |
4792 | ||
4793 | * config/arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): fix | |
4794 | ternary operator in fprintf and harmonize spacing. | |
4795 | ||
81e2b8ad | 4796 | 2015-04-24 Uros Bizjak <ubizjak@gmail.com> |
4797 | ||
4798 | * config/i386/sse.md (*vec_widen_smult_even_v8si<mask_name>): | |
4799 | Mark operand1 commutative. | |
4800 | ||
0a281fd0 | 4801 | 2015-04-24 Uros Bizjak <ubizjak@gmail.com> |
4802 | ||
4803 | * config/i386/sse.md (*vec_concatv2sf_sse4_1): Do not allow both | |
4804 | input operands in memory. | |
4805 | (*vec_concatv2si_sse4_1): Ditto. | |
4806 | (*vec_concatv2df): Ditto, except for SSE3 and equal input operands. | |
4807 | (vec_extract_lo_<mode><mask_name>): Change operand 1 predicate to | |
4808 | register_operand. | |
4809 | (vec_extract_hi_v32hi): Ditto. | |
4810 | (vec_extract_hi_v64hi): Ditto. | |
4811 | (<mask_codefor>avx512f_unpckhpd512<mask_name>): Ditto. | |
4812 | ||
f4e4e414 | 4813 | 2015-04-24 Thomas Preud'homme <thomas.preudhomme@arm.com> |
4814 | Steven Bosscher <steven@gcc.gnu.org> | |
4815 | ||
4816 | PR rtl-optimization/34503 | |
4817 | * cprop.c (cprop_reg_p): New. | |
4818 | (hash_scan_set): Use above function to check if register can be | |
4819 | propagated. | |
4820 | (find_avail_set): Return up to two sets, one whose source is a | |
4821 | register and one whose source is a constant. Sets are returned in an | |
4822 | array passed as parameter rather than as a return value. | |
4823 | (cprop_insn): Use a do while loop rather than a goto. Try each of the | |
4824 | sets returned by find_avail_set, starting with the one whose source is | |
4825 | a constant. Use cprop_reg_p to check if register can be propagated. | |
4826 | (do_local_cprop): Use cprop_reg_p to check if register can be | |
4827 | propagated. | |
4828 | (implicit_set_cond_p): Likewise. | |
4829 | ||
b3b9039b | 4830 | 2015-04-23 Jan Hubicka <hubicka@ucw.cz> |
4831 | ||
4832 | * ipa-icf.c (sem_function::equals_wpa): Compare thunk info. | |
4833 | (sem_function::equals): IGNORED_NODES parameter is now unused; | |
4834 | update call of equals_private. | |
4835 | (sem_function::equals_private): Do not call equals_wpa; skip | |
4836 | gimple body matching if there is no body. | |
4837 | (sem_function::init): Add logic to hash tthunk info. | |
4838 | (sem_function::parse): Also parse thunks. | |
4839 | * ipa-icf.h (equals_private): Update declaration. | |
4840 | ||
4dc2d9a9 | 4841 | 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
4842 | ||
4843 | * config/rs6000/altivec.md (*altivec_lvx_<mode>_internal): Remove | |
4844 | asterisk from name so this can be generated directly. | |
4845 | (*altivec_stvx_<mode>_internal): Likewise. | |
4846 | * config/rs6000/rs6000.c (rs6000_emit_le_vsx_store): Add assert | |
4847 | that this is never called during or after reload/lra. | |
4848 | (rs6000_frame_related): Remove split_reg | |
4849 | argument and logic that references it. | |
4850 | (emit_frame_save): Remove last parameter from call to | |
4851 | rs6000_frame_related. | |
4852 | (rs6000_emit_prologue): Remove last parameter from eight calls to | |
4853 | rs6000_frame_related. Force generation of stvx instruction for | |
4854 | Altivec register saves. Remove split_reg handling, which is no | |
4855 | longer needed. | |
4856 | (rs6000_emit_epilogue): Force generation of lvx instruction for | |
4857 | Altivec register restores. | |
4858 | ||
40997e58 | 4859 | 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
4860 | ||
4861 | * config/rs6000/rs6000.opt (mcrypto): Change option description to | |
4862 | match category changes in ISA 2.07B. | |
4863 | ||
996c516f | 4864 | 2015-04-23 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4865 | ||
4866 | * config/arm/iterators.md (GTGE, GTUGEU, COMPARISONS): New code | |
4867 | iterators. | |
4868 | (cmp_op, cmp_type): New code attributes. | |
4869 | (NEON_VCMP, NEON_VACMP): New int iterators. | |
4870 | (cmp_op_unsp): New int attribute. | |
4871 | * config/arm/neon.md (neon_vc<cmp_op><mode>): New define_expand. | |
4872 | (neon_vceq<mode>): Delete. | |
4873 | (neon_vc<cmp_op><mode>_insn): New pattern. | |
4874 | (neon_vc<cmp_op_unsp><mode>_insn_unspec): Likewise. | |
4875 | (neon_vcgeu<mode>): Delete. | |
4876 | (neon_vcle<mode>): Likewise. | |
4877 | (neon_vclt<mode>: Likewise. | |
4878 | (neon_vcage<mode>): Likewise. | |
4879 | (neon_vcagt<mode>): Likewise. | |
4880 | (neon_vca<cmp_op><mode>): New define_expand. | |
4881 | (neon_vca<cmp_op><mode>_insn): New pattern. | |
4882 | (neon_vca<cmp_op_unsp><mode>_insn_unspec): Likewise. | |
4883 | ||
65f1366e | 4884 | 2015-04-23 Jan Hubicka <hubicka@ucw.cz> |
4885 | ||
4886 | * tree.h (attribute_value_equal): Declare. | |
4887 | * tree.c (attribute_value_equal): Export. | |
4888 | ||
b08f05cd | 4889 | 2015-04-23 Jan Hubicka <hubicka@ucw.cz> |
4890 | ||
4891 | * ipa-icf.c (sem_item::compare_attributes): New function. | |
4892 | (sem_item::compare_referenced_symbol_properties): Compare variable | |
4893 | attributes. | |
4894 | (sem_item::hash_referenced_symbol_properties): Record DECL_ALIGN. | |
4895 | (sem_function::param_used_p): New function. | |
4896 | (sem_function::equals_wpa): Fix attribute comparsion; match | |
4897 | parameter type codes; do not compare paremter flags when | |
4898 | they are not used; compare edge flags; compare indirect calls. | |
4899 | (sem_item::update_hash_by_addr_refs): Hash reference type. | |
4900 | (sem_function::equals_private): Do not match DECL_ATTRIBUTES. | |
4901 | (sem_variable::equals_wpa): Do not match DECL_ALIGN; match | |
4902 | reference use type. | |
4903 | (sem_item_optimizer::update_hash_by_addr_refs): Use param_used_p. | |
4904 | * ipa-icf.h (compare_attributes, param_used_p): Declare. | |
4905 | ||
c2f8a09e | 4906 | 2015-04-23 Jan Hubicka <hubicka@ucw.cz> |
4907 | ||
4908 | * ipa-icf.c (symbol_compare_collection::symbol_compare_collection): | |
4909 | cleanup. | |
4910 | (sem_function::get_hash): Do not hash DECL_DISREGARD_INLINE_LIMITS, | |
4911 | DECL_DECLARED_INLINE_P and DECL_IS_OPERATOR_NEW. | |
4912 | (sem_item::compare_referenced_symbol_properties): New. | |
4913 | (sem_item::hash_referenced_symbol_properties): New. | |
4914 | (sem_item::compare_cgraph_references): Rename to ... | |
4915 | (sem_item::compare_symbol_references): ... this one; use | |
4916 | compare_referenced_symbol_properties. | |
4917 | (sem_function::equals_wpa): Do not compare | |
4918 | DECL_DISREGARD_INLINE_LIMITS, DECL_DECLARED_INLINE_P, | |
4919 | DECL_IS_OPERATOR_NEW; compare pointer sizes. | |
4920 | (sem_item::update_hash_by_addr_refs): Call | |
4921 | hash_referenced_symbol_properties. | |
4922 | (sem_item::update_hash_by_local_refs): Cleanup. | |
4923 | (sem_function::merge): Do not mix up symbol properties. | |
4924 | (sem_variable::equals_wpa): Use compare_symbol_references. | |
4925 | * ipa-icf.h (sem_item::compare_referenced_symbol_properties): New. | |
4926 | (sem_item::hash_referenced_symbol_properties): New. | |
4927 | (sem_item::compare_symbol_references): New. | |
4928 | (sem_item::compare_cgraph_references): Remove. | |
4929 | ||
07dfc3c4 | 4930 | 2015-04-23 Kwok Cheung Yeung <kcy@codesourcery.com> |
4931 | ||
4932 | PR target/26702 | |
4933 | * config/arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): | |
4934 | Emit size of local. | |
4935 | ||
d1f90de5 | 4936 | 2015-04-23 Nick Clifton <nickc@redhat.com> |
4937 | ||
4938 | * config/rl78/rl78.c (rl78_preferred_reload_class): Add | |
4939 | ATTRIBUTE_UNUSED to x parameter. | |
4940 | * config/rl78/rl78-opts.h (enum rl78_mul_types): Remove unused MUL_RL78. | |
4941 | ||
eb3421e6 | 4942 | 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
4943 | ||
4944 | * config/rs6000/crypto.md (crypto_vpmsum<CR_char>): Change | |
4945 | TARGET_CRYPTO to TARGET_P8_VECTOR> | |
4946 | (crypto_vpermxor_<mode>): Likewise. | |
4947 | * config/rs6000/rs6000-builtin.def (BU_CRYPTO_2A): New #define. | |
4948 | (BU_CRYPTO_3A): Likewise. | |
4949 | (BU_CRYPTO_OVERLOAD_2A): Rename from BU_CRYPTO_OVERLOAD_2. | |
4950 | (BU_CRYPTO_OVERLOAD_3A): New #define. | |
4951 | (VPMSUMB): Change from BU_CRYPTO_2 to BU_CRYPTO_2A. | |
4952 | (VPMSUMH): Likewise. | |
4953 | (VPMSUMW): Likewise. | |
4954 | (VPMSUMD): Likewise. | |
4955 | (VPERMXOR_V2DI): Change from BU_CRYPTO_3 to BU_CRYPTO_3A. | |
4956 | (VPERMXOR_V4SI): Likewise. | |
4957 | (VPERMXOR_V8HI): Likewise. | |
4958 | (VPERMXOR_V16QI): Likewise. | |
4959 | (VPMSUM): Change from BU_CRYPTO_OVERLOAD_2 to | |
4960 | BU_CRYPTO_OVERLOAD_2A. | |
4961 | (VPERMXOR): Change from BU_CRYPTO_OVERLOAD3 to | |
4962 | BU_CRYPTO_OVERLOAD_3A. | |
4963 | * config/rs6000/rs6000.opt (mcrypto): Change description of | |
4964 | option. | |
4965 | ||
bc1d3d97 | 4966 | 2015-04-23 Richard Biener <rguenther@suse.de> |
4967 | ||
4968 | * passes.def: Remove copy propagation passes run directly after CCP. | |
4969 | * tree-ssa-ccp.c (get_value_for_expr): Fall back to a COPY for | |
4970 | SSA names. | |
4971 | (ccp_visit_phi_node): Rework to handle first executable edge | |
4972 | specially. | |
4973 | ||
84af8480 | 4974 | 2015-04-23 Matthew Wahab <matthew.wahab@arm.com> |
4975 | ||
4976 | * config/arm/arm.h (LEGITIMIZE_RELOAD_ADDRESS): Remove. | |
4977 | (ARM_LEGITIMIZE_RELOAD_ADDRESS): Remove. | |
4978 | (THUMB_LEGITIMIZE_RELOAD_ADDRESS): Remove. | |
4979 | * config/arm/arm.c (arm_legimitimize_reload_address): Remove. | |
4980 | (thumb_legimitimize_reload_address): Remove. | |
4981 | * config/arm/arm-protos.h (arm_legimitimize_reload_address): | |
4982 | Remove. | |
4983 | (thumb_legimitimize_reload_address): Remove. | |
4984 | ||
e3542a23 | 4985 | 2015-04-23 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4986 | ||
4987 | * conditions.h (CC_STATUS_INIT): Gate on #ifndef CC_STATUS_INIT. | |
4988 | ||
6e628811 | 4989 | 2015-04-23 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4990 | ||
4991 | * config/arm/arm.md (load_multiple): Reject operand 2 greater than | |
4992 | MAX_LDM_STM_OPS. | |
4993 | (store_multiple): Likewise. | |
4994 | ||
39127e6b | 4995 | 2015-04-23 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
4996 | ||
4997 | * config/arm/arm-protos.h (struct tune_params): Add issue_rate field. | |
4998 | * config/arm/arm.c (arm_slowmul_tune, arm_fastmul_tune, | |
4999 | arm_strongarm_tune, arm_xscale_tune, arm_9e_tune, arm_v6t2_tune, | |
5000 | arm_cortex_tune, arm_cortex_a8_tune, arm_cortex_a7_tune, | |
5001 | arm_cortex_a15_tune, arm_cortex_a53_tune, arm_cortex_a57_tune, | |
5002 | arm_cortex_a9_tune, arm_cortex_a12_tune, arm_v7m_tune, arm_v6m_tune, | |
5003 | arm_fa726te_tune arm_cortex_a5_tune, arm_xgene1_tune): | |
5004 | Specify issue_rate value. | |
5005 | (arm_issue_rate): Look up issue rate from tuning structs. Remove | |
5006 | large switch statement. | |
5007 | (arm_marvell_pj4_tune): New struct. | |
5008 | * config/arm/arm-cores.def (marvell-pj4): Use arm_marvell_pj4_tune | |
5009 | struct. | |
5010 | ||
b4026f25 | 5011 | 2015-04-23 Richard Biener <rguenther@suse.de> |
5012 | ||
5013 | * tree-vect-slp.c (vect_find_first_load_in_slp_instance): Remove. | |
5014 | (vect_find_last_store_in_slp_instance): Rename to ... | |
5015 | (vect_find_last_scalar_stmt_in_slp): ... this and generalize. | |
5016 | (vect_analyze_slp_cost_1): Use vector_load for constant defs | |
5017 | and vec_construct for external defs when estimating prologue cost. | |
5018 | (vect_analyze_slp_instance): Do not init SLP_INSTANCE_FIRST_LOAD_STMT. | |
5019 | Compute costs here only when vectorizing loops. | |
5020 | (vect_slp_analyze_bb_1): Compute SLP cost here, after vector types | |
5021 | have been determined. | |
5022 | (vect_schedule_slp_instance): Simplify vectorized code placement | |
5023 | and prepare for in-BB external defs. | |
5024 | * tree-vectorizer.h (struct _slp_instance): Remove first_load member. | |
5025 | (SLP_INSTANCE_FIRST_LOAD_STMT): Remove. | |
5026 | * tree-vect-stmts.c (vect_model_store_cost): Remove PURE_SLP_STMT | |
5027 | guard. | |
5028 | (vect_model_load_cost): Likewise. | |
5029 | (vectorizable_store): Instead add it here. | |
5030 | (vectorizable_load): Likewise. | |
5031 | (vect_is_simple_use): Dump def type textually. | |
5032 | ||
1ebce849 | 5033 | 2015-04-23 Richard Biener <rguenther@suse.de> |
5034 | ||
5035 | * cfgexpand.c (expand_gimple_stmt_1): Use ops.code. | |
5036 | * cfgloop.c (verify_loop_structure): Verify the root loop node. | |
5037 | * except.c (duplicate_eh_regions): Call get_eh_region_from_lp_number_fn | |
5038 | instead of get_eh_region_from_lp_number. | |
5039 | * loop-init.c (fix_loop_structure): If we removed a loop, reset | |
5040 | the SCEV cache. | |
5041 | ||
e95d0248 | 5042 | 2015-04-23 Anton Blanchard <anton@samba.org> |
5043 | ||
5044 | * config/rs6000/rs6000.c (rs6000_output_function_prologue): No | |
5045 | need for -mprofile-kernel to save LR to stack. | |
5046 | ||
2d9fc394 | 5047 | 2015-04-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
5048 | ||
5049 | * config/rs6000/rs6000.c (rtx_is_swappable_p): Commentary | |
5050 | adjustments. | |
5051 | (insn_is_swappable_p): Return 1 for a convert from double to | |
5052 | single precision when all of its uses are splats of BE element | |
5053 | zero. | |
5054 | ||
e1f8c2dd | 5055 | 2015-04-23 Kugan Vivekanandarajah <kuganv@linaro.org> |
5056 | ||
5057 | * ira-costs.c (record_operand_costs): Fix typo (remove redundant code). | |
5058 | ||
69a88c20 | 5059 | 2015-04-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
5060 | ||
5061 | PR target/65456 | |
5062 | * config/rs6000/rs6000.c (rs6000_option_override_internal): For | |
5063 | VSX + POWER8, enable TARGET_ALLOW_MOVMISALIGN and | |
5064 | TARGET_EFFICIENT_UNALIGNED_VSX if not selected by command line | |
5065 | option. | |
5066 | (rs6000_builtin_mask_for_load): Return 0 for targets with | |
5067 | efficient unaligned VSX accesses so that the vectorizer will use | |
5068 | direct unaligned loads. | |
5069 | (rs6000_builtin_support_vector_misalignment): Always return true | |
5070 | for targets with efficient unaligned VSX accesses. | |
5071 | (rs6000_builtin_vectorization_cost): Cost of unaligned loads and | |
5072 | stores on targets with efficient unaligned VSX accesses is almost | |
5073 | always the same as the cost of an aligned load or store, so model | |
5074 | it that way. | |
5075 | * config/rs6000/rs6000.h (SLOW_UNALIGNED_ACCESS): Return 0 for | |
5076 | unaligned vectors if we have efficient unaligned VSX accesses. | |
5077 | * config/rs6000/rs6000.opt (mefficient-unaligned-vector): New | |
5078 | undocumented option. | |
5079 | ||
8e872464 | 5080 | 2015-04-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
5081 | ||
5082 | Revert: | |
5083 | 2015-04-22 Gregor Richards <gregor.richards@uwaterloo.ca> | |
5084 | ||
5085 | * config.gcc (LIBC_MUSL): New tm_defines macro. | |
5086 | * config/linux.h (OPTION_MUSL): Define. | |
5087 | (INCLUDE_DEFAULTS_MUSL_GPP, INCLUDE_DEFAULTS_MUSL_LOCAL,) | |
5088 | (INCLUDE_DEFAULTS_MUSL_PREFIX, INCLUDE_DEFAULTS_MUSL_CROSS,) | |
5089 | (INCLUDE_DEFAULTS_MUSL_TOOL, INCLUDE_DEFAULTS_MUSL_NATIVE): Define. | |
5090 | ||
5091 | * config/linux.opt (mmusl): New option. | |
5092 | * configure.ac (gcc_cv_libc_provides_ssp): Add *-*-musl*. | |
5093 | (gcc_cv_target_dl_iterate_phdr): Add *-linux-musl*. | |
5094 | ||
5095 | * configure: Regenerate. | |
5096 | ||
ca06e9a5 | 5097 | 2015-04-22 Gregor Richards <gregor.richards@uwaterloo.ca> |
5098 | ||
5099 | * config.gcc (LIBC_MUSL): New tm_defines macro. | |
5100 | * config/linux.h (OPTION_MUSL): Define. | |
5101 | (INCLUDE_DEFAULTS_MUSL_GPP, INCLUDE_DEFAULTS_MUSL_LOCAL,) | |
5102 | (INCLUDE_DEFAULTS_MUSL_PREFIX, INCLUDE_DEFAULTS_MUSL_CROSS,) | |
5103 | (INCLUDE_DEFAULTS_MUSL_TOOL, INCLUDE_DEFAULTS_MUSL_NATIVE): Define. | |
5104 | ||
5105 | * config/linux.opt (mmusl): New option. | |
5106 | * configure.ac (gcc_cv_libc_provides_ssp): Add *-*-musl*. | |
5107 | (gcc_cv_target_dl_iterate_phdr): Add *-linux-musl*. | |
5108 | ||
5109 | * configure: Regenerate. | |
5110 | ||
5cd86e48 | 5111 | 2015-04-22 Yury Gribov <y.gribov@samsung.com> |
5112 | ||
5113 | * doc/invoke.texi (-fsanitize-sections): Update description. | |
5114 | * asan.c (set_sanitized_sections): Parse incoming arg. | |
5115 | (section_sanitized_p): Support wildcards. | |
5116 | ||
0fd9bea8 | 5117 | 2015-04-22 Tom de Vries <tom@codesourcery.com> |
5118 | ||
5119 | PR tree-optimization/65823 | |
5120 | * gimplify.c (gimplify_modify_expr): Use operand_equal_p to test for | |
5121 | equality between ap_copy and ap. | |
5122 | ||
2c0afffd | 5123 | 2015-04-22 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
5124 | ||
5125 | PR target/47098 | |
5126 | * config/openbsd-oldgas.h (OBSD_LIB_SPEC): Add. | |
5127 | ||
a27111cc | 5128 | 2015-04-22 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
5129 | ||
5130 | PR target/47122 | |
5131 | * config.gcc (vax-*-openbsd*): Fix name of pthread spec header. | |
5132 | ||
45e5f010 | 5133 | 2015-04-22 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
5134 | ||
5135 | PR target/55144 | |
5136 | * config.gcc (bfin*-linux-uclibc*): Prepend tmake_file and | |
5137 | remove already contained t-files. | |
5138 | ||
5c72dbe7 | 5139 | 2015-04-22 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
5140 | ||
5141 | * tree-tailcall.c (suitable_for_tail_opt_p, find_tail_calls): | |
5142 | Remove unneeded forward declarations. | |
5143 | (suitable_for_tail_call_opt_p): Commentary typo fix. | |
5144 | ||
581d25a9 | 5145 | 2015-04-22 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
5146 | ||
5147 | * varasm.c (emit_bss): Remove redundant guard. | |
5148 | ||
10f2bf10 | 5149 | 2015-04-22 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
5150 | ||
5151 | * config/c6x/c6x.h (TARGET_CPU_CPP_BUILTINS): Add unk_isa. | |
5152 | ||
070ed8d8 | 5153 | 2015-04-22 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
5154 | ||
5155 | * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Add BFIN_CPU_UNKNOWN. | |
5156 | ||
d9cc0972 | 5157 | 2015-04-22 Hale Wang <hale.wang@arm.com> |
5158 | Terry Guo <terry.guo@arm.com> | |
5159 | ||
5160 | PR rtl-optimization/64818 | |
5161 | * combine.c (can_combine_p): Don't combine user-specified | |
5162 | register if it is in an asm input. | |
5163 | ||
23db877c | 5164 | 2015-04-21 Jan Hubicka <hubicka@ucw.cz> |
5165 | ||
5166 | PR ipa/65076 | |
5167 | * passes.def (early_optimizations): Add pass_dse. | |
5168 | ||
6d7f2074 | 5169 | 2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
5170 | ||
5171 | * defaults.h (INSN_REFERENCES_ARE_DELAYED): New definition. | |
5172 | * reorg.c (redundant_insn): Remove ifdef | |
5173 | INSN_REFERENCES_ARE_DELAYED. | |
5174 | * resource.c (mark_referenced_resources): Likewise. | |
5175 | ||
91f95f00 | 5176 | 2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
5177 | ||
5178 | * defaults.h (INSN_SETS_ARE_DELAYED): New definition. | |
5179 | * reorg.c (redundant_insn): Remove ifdef INSN_SETS_ARE_DELAYED. | |
5180 | * resource.c (mark_set_resources): Likewise. | |
5181 | ||
693c9f42 | 5182 | 2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
5183 | ||
5184 | * caller-save.c (insert_one_insn): Remove ifdef HAVE_cc0. | |
5185 | * cfgcleanup.c (flow_find_cross_jump): Likewise. | |
5186 | (flow_find_head_matching_sequence): Likewise. | |
5187 | (try_head_merge_bb): Likewise. | |
5188 | * combine.c (can_combine_p): Likewise. | |
5189 | (try_combine): Likewise. | |
5190 | (distribute_notes): Likewise. | |
5191 | * df-problems.c (can_move_insns_across): Likewise. | |
5192 | * final.c (final): Likewise. | |
5193 | * gcse.c (insert_insn_end_basic_block): Likewise. | |
5194 | * ira.c (find_moveable_pseudos): Likewise. | |
5195 | * reorg.c (try_merge_delay_insns): Likewise. | |
5196 | (fill_simple_delay_slots): Likewise. | |
5197 | (fill_slots_from_thread): Likewise. | |
5198 | * sched-deps.c (sched_analyze_2): Likewise. | |
5199 | ||
099a99b5 | 5200 | 2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
5201 | ||
5202 | * df-scan.c (df_get_entry_block_def_set): Remove #ifdef | |
5203 | PIC_OFFSET_TABLE_REGNUM. | |
5204 | ||
f703b3d6 | 5205 | 2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
5206 | ||
5207 | * alias.c (init_alias_target): Remove ifdef | |
5208 | * HARD_FRAME_POINTER_IS_FRAME_POINTER. | |
5209 | * df-scan.c (df_insn_refs_collect): Likewise. | |
5210 | (df_get_regular_block_artificial_uses): Likewise. | |
5211 | (df_get_eh_block_artificial_uses): Likewise. | |
5212 | (df_get_entry_block_def_set): Likewise. | |
5213 | (df_get_exit_block_use_set): Likewise. | |
5214 | * emit-rtl.c (gen_rtx_REG): Likewise. | |
5215 | * ira.c (ira_setup_eliminable_regset): Likewise. | |
5216 | * reginfo.c (init_reg_sets_1): Likewise. | |
5217 | * regrename.c (rename_chains): Likewise. | |
5218 | * reload1.c (reload): Likewise. | |
5219 | (eliminate_regs_in_insn): Likewise. | |
5220 | * resource.c (mark_referenced_resources): Likewise. | |
5221 | (init_resource_info): Likewise. | |
5222 | ||
f564fb30 | 5223 | 2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
5224 | ||
5225 | * defaults.h (MASK_RETURN_ADDR): New definition. | |
5226 | * except.c (expand_builtin_extract_return_addr): Remove ifdef | |
5227 | MASK_RETURN_ADDR. | |
5228 | ||
5d3b61f6 | 5229 | 2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
5230 | ||
5231 | * defaults.h (RETURN_ADDR_OFFSET): New definition. | |
5232 | * except.c (expand_builtin_extract_return_addr): Remove ifdef | |
5233 | RETURN_ADDR_OFFSET. | |
5234 | (expand_builtin_frob_return_addr): Likewise. | |
5235 | ||
ff900b8e | 5236 | 2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
5237 | ||
5238 | * cfgrtl.c (rtl_merge_blocks): Change #if HAVE_cc0 to if (HAVE_cc0) | |
5239 | (try_redirect_by_replacing_jump): Likewise. | |
5240 | (rtl_tidy_fallthru_edge): Likewise. | |
5241 | * combine.c (insn_a_feeds_b): Likewise. | |
5242 | (find_split_point): Likewise. | |
5243 | (simplify_set): Likewise. | |
5244 | * cprop.c (cprop_jump): Likewise. | |
5245 | * cse.c (cse_extended_basic_block): Likewise. | |
5246 | * df-problems.c (can_move_insns_across): Likewise. | |
5247 | * function.c (emit_use_return_register_into_block): Likewise. | |
5248 | * haifa-sched.c (sched_init): Likewise. | |
5249 | * ira.c (find_moveable_pseudos): Likewise. | |
5250 | * loop-invariant.c (find_invariant_insn): Likewise. | |
5251 | * lra-constraints.c (curr_insn_transform): Likewise. | |
5252 | * postreload.c (reload_combine_recognize_const_pattern): | |
5253 | * Likewise. | |
5254 | * reload.c (find_reloads): Likewise. | |
5255 | * reorg.c (delete_scheduled_jump): Likewise. | |
5256 | (steal_delay_list_from_target): Likewise. | |
5257 | (steal_delay_list_from_fallthrough): Likewise. | |
5258 | (redundant_insn): Likewise. | |
5259 | (fill_simple_delay_slots): Likewise. | |
5260 | (fill_slots_from_thread): Likewise. | |
5261 | (delete_computation): Likewise. | |
5262 | * sched-rgn.c (add_branch_dependences): Likewise. | |
5263 | ||
27a6f97d | 5264 | 2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
5265 | ||
5266 | * genconfig.c (main): Always define HAVE_cc0. | |
5267 | * caller-save.c (insert_one_insn): Change ifdef HAVE_cc0 to #if | |
5268 | HAVE_cc0. | |
5269 | * cfgcleanup.c (flow_find_cross_jump): Likewise. | |
5270 | (flow_find_head_matching_sequence): Likewise. | |
5271 | (try_head_merge_bb): Likewise. | |
5272 | * cfgrtl.c (rtl_merge_blocks): Likewise. | |
5273 | (try_redirect_by_replacing_jump): Likewise. | |
5274 | (rtl_tidy_fallthru_edge): Likewise. | |
5275 | * combine.c (do_SUBST_MODE): Likewise. | |
5276 | (insn_a_feeds_b): Likewise. | |
5277 | (combine_instructions): Likewise. | |
5278 | (can_combine_p): Likewise. | |
5279 | (try_combine): Likewise. | |
5280 | (find_split_point): Likewise. | |
5281 | (subst): Likewise. | |
5282 | (simplify_set): Likewise. | |
5283 | (distribute_notes): Likewise. | |
5284 | * cprop.c (cprop_jump): Likewise. | |
5285 | * cse.c (cse_extended_basic_block): Likewise. | |
5286 | * df-problems.c (can_move_insns_across): Likewise. | |
5287 | * final.c (final): Likewise. | |
5288 | (final_scan_insn): Likewise. | |
5289 | * function.c (emit_use_return_register_into_block): Likewise. | |
5290 | * gcse.c (insert_insn_end_basic_block): Likewise. | |
5291 | * haifa-sched.c (sched_init): Likewise. | |
5292 | * ira.c (find_moveable_pseudos): Likewise. | |
5293 | * loop-invariant.c (find_invariant_insn): Likewise. | |
5294 | * lra-constraints.c (curr_insn_transform): Likewise. | |
5295 | * optabs.c (prepare_cmp_insn): Likewise. | |
5296 | * postreload.c (reload_combine_recognize_const_pattern): | |
5297 | * Likewise. | |
5298 | * reload.c (find_reloads): Likewise. | |
5299 | (find_reloads_address_1): Likewise. | |
5300 | * reorg.c (delete_scheduled_jump): Likewise. | |
5301 | (steal_delay_list_from_target): Likewise. | |
5302 | (steal_delay_list_from_fallthrough): Likewise. | |
5303 | (try_merge_delay_insns): Likewise. | |
5304 | (redundant_insn): Likewise. | |
5305 | (fill_simple_delay_slots): Likewise. | |
5306 | (fill_slots_from_thread): Likewise. | |
5307 | (delete_computation): Likewise. | |
5308 | (relax_delay_slots): Likewise. | |
5309 | * sched-deps.c (sched_analyze_2): Likewise. | |
5310 | * sched-rgn.c (add_branch_dependences): Likewise. | |
5311 | ||
e989288c | 5312 | 2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
5313 | ||
5314 | * combine.c (find_single_use): Remove HAVE_cc0 ifdef for code | |
5315 | that is trivially ded on non cc0 targets. | |
5316 | (simplify_set): Likewise. | |
5317 | (mark_used_regs_combine): Likewise. | |
5318 | * cse.c (new_basic_block): Likewise. | |
5319 | (fold_rtx): Likewise. | |
5320 | (cse_insn): Likewise. | |
5321 | (cse_extended_basic_block): Likewise. | |
5322 | (set_live_p): Likewise. | |
5323 | * rtlanal.c (canonicalize_condition): Likewise. | |
5324 | * simplify-rtx.c (simplify_binary_operation_1): Likewise. | |
5325 | ||
a57e230a | 5326 | 2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
5327 | ||
5328 | * conditions.h: Define macros even if HAVE_cc0 is undefined. | |
5329 | * emit-rtl.c: Define functions even if HAVE_cc0 is undefined. | |
5330 | * final.c: Likewise. | |
5331 | * jump.c: Likewise. | |
5332 | * recog.c: Likewise. | |
5333 | * recog.h: Declare functions even when HAVE_cc0 is undefined. | |
5334 | * sched-deps.c (sched_analyze_2): Always compile case for cc0. | |
5335 | ||
0973afac | 5336 | 2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
5337 | ||
5338 | * defaults.h: New definition of EH_RETURN_DATA_REGNO. | |
5339 | * except.c: Remove definition of EH_RETURN_DATA_REGNO. | |
5340 | * builtins.c (expand_builtin): Remove check if | |
5341 | EH_RETURN_DATA_REGNO is defined. | |
5342 | * df-scan.c (df_bb_refs_collect): Likewise. | |
5343 | (df_get_exit_block_use_set): Likewise. | |
5344 | * haifa-sched.c (initiate_bb_reg_pressure_info): Likewise. | |
5345 | * ira-lives.c (process_bb_node_lives): Likewise. | |
5346 | * lra-lives.c (process_bb_lives): Likewise. | |
5347 | ||
4f73497a | 5348 | 2015-04-21 Uros Bizjak <ubizjak@gmail.com> |
5349 | ||
5350 | * config/i386/i386.md (ARGP_REG, FRAME_REG, BND2_REG, BND3_REG, | |
5351 | FIRST_PSEUDO_REG): New. | |
5352 | * config/i386/i386.h (STACK_POINTER_REGNUM): Define to SP_REG. | |
5353 | (ARG_POINTER_REGNUM): Define to ARGP_REG. | |
5354 | (FRAME_POINTER_REGNUM): Define to FRAME_REG. | |
5355 | (HARD_FRAME_POINTER_REGNUM): Define to BP_REG. | |
5356 | (FIRST_PSEUDO_REGISTER): Define to FIRST_PSEUDO_REG. | |
5357 | (FIRST_INT_REG): New. | |
5358 | (LAST_INT_REG): New. | |
5359 | (FIRST_*_REG): Define using *_REG. | |
5360 | (LAST_*_REG): Ditto. | |
5361 | (QI_REGNO_P): Define using FIRST_QU_REG and LAST_QI_REG. | |
5362 | (LEGACY_INT_REGNO_P): Define using FIRST_INT_REG and LAST_INT_REG. | |
5363 | (FIRST_FLOAT_REG): Define to FIRST_STACK_REG. | |
5364 | ||
59699fd3 | 5365 | 2015-04-21 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
5366 | ||
5367 | * expmed.c: (synth_mult): Only assume overlapping | |
5368 | shift with previous steps in alg_sub_t_m2 case. | |
5369 | ||
fc6cc27b | 5370 | 2015-04-21 Richard Biener <rguenther@suse.de> |
5371 | ||
5372 | PR tree-optimization/65650 | |
5373 | * tree-ssa-ccp.c (valid_lattice_transition): Allow lattice | |
5374 | transitions involving copies. | |
5375 | (set_lattice_value): Adjust for copy lattice state. | |
5376 | (ccp_lattice_meet): Do not merge UNDEFINED and a copy to the copy | |
5377 | if that doesn't dominate the merge point. | |
5378 | (bit_value_unop): Adjust what we treat as varying mask. | |
5379 | (bit_value_binop): Likewise. | |
5380 | (bit_value_assume_aligned): Likewise. | |
5381 | (evaluate_stmt): When we simplified to a SSA name record a copy | |
5382 | instead of dropping to varying. | |
5383 | (visit_assignment): Simplify. | |
5384 | ||
5385 | * gimple-match.h (gimple_simplify): Add another callback. | |
5386 | * gimple-fold.c (fold_stmt_1): Adjust caller. | |
5387 | (gimple_fold_stmt_to_constant_1): Likewise - pass valueize | |
5388 | for the 2nd callback. | |
5389 | * gimple-match-head.c (gimple_simplify): Add a callback that is | |
5390 | used to valueize the stmt operands and use it that way. | |
5391 | ||
4c9206f2 | 5392 | 2015-04-21 Richard Biener <rguenther@suse.de> |
5393 | ||
5394 | PR tree-optimization/65788 | |
5395 | * tree-ssa-ccp.c (evaluate_stmt): Evaluate to UNDEFINED early. | |
5396 | ||
fe1ec7bc | 5397 | 2015-04-21 Richard Biener <rguenther@suse.de> |
5398 | ||
5399 | * config/i386/i386.c (ix86_builtin_vectorization_cost): Scale | |
5400 | vec_construct cost by vec_stmt_cost. | |
5401 | ||
4302d619 | 5402 | 2015-04-21 Richard Biener <rguenther@suse.de> |
5403 | ||
5404 | * cfghooks.h (create_basic_block): Replace with two overloads | |
5405 | for RTL and GIMPLE. | |
5406 | (split_block): Likewise. | |
5407 | * cfghooks.c (split_block): Rename to ... | |
5408 | (split_block_1): ... this. | |
5409 | (split_block): Add two type-safe overloads for RTL and GIMPLE. | |
5410 | (split_block_after_labels): Call split_block_1. | |
5411 | (create_basic_block): Rename to ... | |
5412 | (create_basic_block_1): ... this. | |
5413 | (create_basic_block): Add two type-safe overloads for RTL and GIMPLE. | |
5414 | (create_empty_bb): Call create_basic_block_1. | |
5415 | * cfgrtl.c (fixup_fallthru_exit_predecessor): Use | |
5416 | split_block_after_labels. | |
5417 | * omp-low.c (expand_parallel_call): Likewise. | |
5418 | (expand_omp_target): Likewise. | |
5419 | (simd_clone_adjust): Likewise. | |
5420 | * tree-chkp.c (chkp_get_entry_block): Likewise. | |
5421 | * cgraphunit.c (init_lowered_empty_function): Use the GIMPLE | |
5422 | create_basic_block overload. | |
5423 | (cgraph_node::expand_thunk): Likewise. | |
5424 | * tree-cfg.c (make_blocks): Likewise. | |
5425 | (handle_abnormal_edges): Likewise. | |
5426 | * tree-inline.c (copy_bb): Likewise. | |
5427 | ||
12b34fda | 5428 | 2015-04-21 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
5429 | ||
5430 | * config/aarch64/aarch64.md (*<NLOGICAL:optab>_one_cmplsidi3_ze): | |
5431 | New pattern. | |
5432 | (*xor_one_cmplsidi3_ze): Likewise. | |
5433 | ||
4ef6d61b | 5434 | 2015-04-21 Thomas Preud'homme <thomas.preudhomme@arm.com> |
5435 | ||
5436 | * df-core.c (df_finish_pass): Iterate over df->problems_by_index[] and | |
5437 | use df_remove_problem rather than manually removing problems, leaving | |
5438 | holes in df->problems_in_order[]. | |
5439 | ||
d8ed84e7 | 5440 | 2015-04-21 Tom de Vries <tom@codesourcery.com> |
5441 | ||
5442 | PR tree-optimization/65802 | |
5443 | * internal-fn.def (VA_ARG): Add ECF_NOTROW to flags. | |
5444 | ||
e06408d0 | 5445 | 2015-04-21 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
5446 | ||
5447 | * common/config/aarch64/aarch64-common.c (AARCH64_CPU_NAME_LENGTH): | |
5448 | Increase to 128. | |
5449 | (aarch64_rewrite_selected_cpu): Do not chop off extensions starting | |
5450 | at '.'. Assert that there's enough space for everything. | |
5451 | ||
9c8e84c1 | 5452 | 2015-04-21 Uros Bizjak <ubizjak@gmail.com> |
5453 | ||
5454 | PR tree-optimization/64950 | |
5455 | Revert: | |
5456 | 2010-08-02 Uros Bizjak <ubizjak@gmail.com> | |
5457 | ||
5458 | PR target/41089 | |
5459 | * config/alpha/alpha.c (alpha_build_builtin_va_list): Mark __offset | |
5460 | as volatile. | |
5461 | ||
961843f3 | 5462 | 2015-04-20 Shiva Chen <shiva0217@gmail.com> |
5463 | ||
5464 | PR rtl-optimization/64916 | |
5465 | * cfgcleanup.c (values_equal_p): New function. | |
5466 | (can_replace_by): Use it. | |
5467 | ||
e36ce2a1 | 5468 | 2015-04-20 Paolo Carlini <paolo.carlini@oracle.com> |
5469 | ||
5470 | PR c++/65801 | |
5471 | * doc/invoke.texi ([-Wnarrowing]): Update. | |
5472 | ||
581c1a3c | 5473 | 2015-04-20 Jeff Law <law@redhat.com> |
5474 | ||
5475 | PR tree-optimization/65658 | |
5476 | * tree-ssa-threadupdate.c (redirection_block_p): Remove | |
5477 | redundant test for GIMPLE_ASSIGN in last change. | |
5478 | ||
9c8e84c1 | 5479 | 2015-04-20 Uros Bizjak <ubizjak@gmail.com> |
d3181ef9 | 5480 | |
5481 | * config/i386/i386.c (set_pic_reg_ever_live): Remove. | |
5482 | (legitimize_pic_address): Do not call set_pic_reg_ever_live. | |
5483 | (legitimize_tls_address): Ditto. | |
5484 | (ix86_expand_move): Ditto. | |
5485 | (ix86_expand_binary_operator): Remove reload_in_progress checks. | |
5486 | (ix86_expand_unary_operator): Ditto. | |
5487 | * config/i386/predicates.md (index_register_operand): Ditto. | |
5488 | ||
d147c6d7 | 5489 | 2015-04-20 Selim Belbachir <selim.belbachir@fr.thalesgroup.com> |
5490 | ||
5491 | * reorg.c (try_merge_delay_insns): Improve correctness checking | |
5492 | for targets with multiple delay slots. | |
5493 | ||
c7566ddf | 5494 | 2015-04-20 Jeff Law <law@redhat.com> |
5495 | ||
5496 | PR tree-optimization/65658 | |
5497 | * tree-ssa-threadupdate.c (redirection_block_p): Ignore clobber | |
5498 | statements too. | |
5499 | ||
5a7715dd | 5500 | 2015-04-20 Alan Lawrence <alan.lawrence@arm.com> |
5501 | ||
5502 | * config/aarch64/aarch64.c (aarch64_simd_emit_pair_result_insn): Delete. | |
5503 | * config/aarch64/aarch64-protos.h (aarch64_simd_emit_pair_result_insn): | |
5504 | Delete. | |
5505 | ||
9d16ba85 | 5506 | 2015-04-20 Jakub Jelinek <jakub@redhat.com> |
5507 | ||
5508 | PR debug/65807 | |
5509 | * dwarf2out.c (add_AT_wide): Clear attr.dw_attr_val.val_entry. | |
5510 | ||
85627475 | 5511 | 2015-04-20 Richard Biener <rguenther@suse.de> |
5512 | ||
5513 | * gimple-fold.h (gimple_build): Remove optional valueize arguments. | |
5514 | * gimple-fold.c (gimple_build_valueize): New function. | |
5515 | (gimple_build): Always use gimple_build_valueize as valueize hook. | |
5516 | ||
e956e9df | 5517 | 2015-04-20 Alan Lawrence <alan.lawrence@arm.com> |
5518 | ||
5519 | PR target/64134 | |
5520 | * config/aarch64/aarch64.c (aarch64_expand_vector_init): Load constant | |
5521 | and overwrite variable parts if <= 1/2 the elements are variable. | |
5522 | ||
99535fab | 5523 | 2015-04-19 Vladimir Makarov <vmakarov@redhat.com> |
5524 | ||
5525 | PR rtl-optimization/65805 | |
5526 | * lra-eliminations.c (lra_eliminate_regs_1): Add new assert. | |
5527 | Don't use difference of offset and previous offset if | |
5528 | update_sp_offset is non-zero. | |
5529 | (eliminate_regs_in_insn): Ditto. | |
5530 | * lra-spills.c (remove_pseudos): Exchange 4th and 6th args in | |
5531 | lra_eliminate_regs_1 call. | |
5532 | * lra-constraints.c (get_equiv_with_elimination): Ditto. | |
5533 | ||
9969c043 | 5534 | 2015-04-18 Trevor Saunders <tsaunders@mozilla.com> |
5535 | ||
5536 | * hash-table.h: Remove version of hash_table that stored value_type *. | |
5537 | * asan.c, attribs.c, bitmap.c, cfg.c, cgraph.h, config/arm/arm.c, | |
5538 | config/i386/winnt.c, config/ia64/ia64.c, config/mips/mips.c, | |
5539 | config/sol2.c, coverage.c, cselib.c, dse.c, dwarf2cfi.c, | |
5540 | dwarf2out.c, except.c, gcse.c, genmatch.c, ggc-common.c, | |
5541 | gimple-ssa-strength-reduction.c, gimplify.c, haifa-sched.c, | |
5542 | hard-reg-set.h, hash-map.h, hash-set.h, ipa-devirt.c, ipa-icf.h, | |
5543 | ipa-profile.c, ira-color.c, ira-costs.c, loop-invariant.c, | |
5544 | loop-iv.c, loop-unroll.c, lto-streamer.h, plugin.c, postreload-gcse.c, | |
5545 | reginfo.c, statistics.c, store-motion.c, trans-mem.c, tree-cfg.c, | |
5546 | tree-eh.c, tree-hasher.h, tree-into-ssa.c, tree-parloops.c, | |
5547 | tree-sra.c, tree-ssa-coalesce.c, tree-ssa-dom.c, tree-ssa-live.c, | |
5548 | tree-ssa-loop-im.c, tree-ssa-loop-ivopts.c, tree-ssa-phiopt.c, | |
5549 | tree-ssa-pre.c, tree-ssa-reassoc.c, tree-ssa-sccvn.c, | |
5550 | tree-ssa-structalias.c, tree-ssa-tail-merge.c, | |
5551 | tree-ssa-threadupdate.c, tree-vectorizer.c, tree-vectorizer.h, | |
5552 | valtrack.h, var-tracking.c, vtable-verify.c, vtable-verify.h: Adjust. | |
5553 | ||
487216e0 | 5554 | 2015-04-17 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
5e263235 | 5555 | Jakub Jelinek <jakub@redhat.com> |
487216e0 | 5556 | |
5557 | PR target/65787 | |
5558 | * config/rs6000/rs6000.c (rtx_is_swappable_p): Ensure that a | |
5559 | subsequent SH_NONE operand does not overwrite an existing *special | |
5560 | value. | |
5561 | (adjust_extract): Handle case where a vec_extract operation is | |
5562 | wrapped in a PARALLEL. | |
5563 | ||
d006842d | 5564 | 2015-04-17 H.J. Lu <hongjiu.lu@intel.com> |
5565 | ||
5566 | PR target/65780 | |
5567 | * config/i386/i386.c (ix86_binds_local_p): Define only if | |
5568 | TARGET_MACHO and TARGET_DLLIMPORT_DECL_ATTRIBUTES are false. | |
5569 | ||
545372c5 | 5570 | 2015-04-17 Jeff Law <law@redhat.com> |
5571 | ||
5572 | PR tree-optimization/47679 | |
5573 | * Makefile.in (OBJS); Add tree-ssa-scopedtables.o. | |
5574 | * tree-ssa-scopedtables.c: New file. | |
5575 | * tree-ssa-scopedtables.h: New file. | |
5576 | * tree-ssa-dom.c: Include tree-ssa-scopedtables.h. | |
5577 | (const_and_copies): Change name/type. | |
5578 | (record_const_or_copy): Move into tree-ssa-scopedtables.c | |
5579 | (record_const_or_copy_1): Similarly. | |
5580 | (restore_vars_to_original_value): Similarly. | |
5581 | (pass_dominator::execute): Create and destroy const_and_copies table. | |
5582 | (thread_across_edge): Update passing of const_and_copies. | |
5583 | (record_temporary_equivalence): Use method calls rather than | |
5584 | manipulating const_and_copies directly. | |
5585 | (record_equality, cprop_into_successor_phis): Similarly. | |
5586 | (dom_opt_dom_walker::before_dom_children): Similarly. | |
5587 | (dom_opt_dom_walker::after_dom_children): Similarly. | |
5588 | (eliminate_redundant_computations): Similarly. | |
5589 | * tree-ssa-threadedge.c (remove_temporary_equivalences): Delete. | |
5590 | (record_temporary_equivalence): Likewise. | |
5591 | (invalidate_equivalences): Likewise. | |
5592 | (record_temporary_equivalences_from_phis): Update due to type | |
5593 | change of const_and_copies. Use method calls rather than | |
5594 | manipulating the stack directly. | |
5595 | (record_temporary_equivalences_from_stmts_at_dest): Likewise. | |
5596 | (thread_through_normal_block, thread_across_edge): Likewise. | |
5597 | (thread_across_edge): Likewise. | |
5598 | * tree-ssa-threadedge.h (thread_across_edge): Update prototype. | |
5599 | * tree-vrp.c: Include tree-ssa-scopedtables.h. Change type | |
5600 | of equiv_stack. | |
5601 | (identify_jump_threads): Update due to type change of equiv_stack. | |
5602 | (finalize_jump_threads): Delete the equiv_stack when complete. | |
5603 | ||
fce667e3 | 5604 | 2015-04-17 Uros Bizjak <ubizjak@gmail.com> |
5605 | ||
5606 | * config/i386/i386.h (LEGITIMIZE_RELOAD_ADDRESS): Remove. | |
5607 | * config/i386/i386.c (ix86_legitimize_reload_address): Ditto. | |
5608 | * config/i386/i386-protos.h (ix86_legitimize_reload_address): Ditto. | |
5609 | ||
31d35465 | 5610 | 2015-04-17 Andreas Tobler <andreast@gcc.gnu.org> |
5611 | ||
5612 | PR target/65535 | |
5613 | * config.gcc: Exit with a comment when we do not have a major version | |
5614 | number for the FreeBSD target. | |
5615 | ||
dce70584 | 5616 | 2015-04-17 Jakub Jelinek <jakub@redhat.com> |
5617 | ||
5618 | PR target/65689 | |
5619 | * genpreds.c (struct constraint_data): Add maybe_allows_reg and | |
5620 | maybe_allows_mem bitfields. | |
5621 | (maybe_allows_none_start, maybe_allows_none_end, | |
5622 | maybe_allows_reg_start, maybe_allows_reg_end, maybe_allows_mem_start, | |
5623 | maybe_allows_mem_end): New variables. | |
5624 | (compute_maybe_allows): New function. | |
5625 | (add_constraint): Use it to initialize maybe_allows_reg and | |
5626 | maybe_allows_mem fields. | |
5627 | (choose_enum_order): Sort the non-is_register/is_const_int/is_memory/ | |
5628 | is_address constraints such that those that allow neither mem nor | |
5629 | reg come first, then those that only allow reg but not mem, then | |
5630 | those that only allow mem but not reg, then the rest. | |
5631 | (write_allows_reg_mem_function): New function. | |
5632 | (write_tm_preds_h): Call it. | |
5633 | * stmt.c (parse_output_constraint, parse_input_constraint): Use | |
5634 | the generated insn_extra_constraint_allows_reg_mem function | |
5635 | instead of always setting *allows_reg = true; *allows_mem = true; | |
5636 | for unknown extra constraints. | |
5637 | ||
a4b04269 | 5638 | 2015-04-17 H.J. Lu <hongjiu.lu@intel.com> |
5639 | ||
5640 | PR target/65780 | |
5641 | * output.h (default_binds_local_p_3): New. | |
5642 | * varasm.c (default_binds_local_p_3): Make it public. Take an | |
5643 | argument to indicate if common symbol may be local. If common | |
5644 | symbol may be local, treat non-external variable as defined | |
5645 | locally. | |
5646 | (default_binds_local_p_2): Pass !flag_pic to default_binds_local_p_3. | |
5647 | (default_binds_local_p_1): Pass false to default_binds_local_p_3. | |
5648 | * config/i386/i386.c (ix86_binds_local_p): New. | |
5649 | (TARGET_BINDS_LOCAL_P): Replace default_binds_local_p_2 with | |
5650 | ix86_binds_local_p. | |
5651 | ||
bc04ebcb | 5652 | 2015-04-17 Jakub Jelinek <jakub@redhat.com> |
5653 | ||
5654 | PR debug/65771 | |
5655 | * dwarf2out.c (mem_loc_descriptor): For CONST, fallback to | |
5656 | trying mem_loc_descriptor on XEXP (rtl, 0). | |
5657 | ||
4f8a0233 | 5658 | 2015-04-17 Martin Liska <mliska@suse.cz> |
5659 | ||
5660 | * ipa-icf.c (sem_item_optimizer::subdivide_classes_by_sensitive_refs): | |
5661 | Release symbol_compare_collection. | |
5662 | * ipa-reference.c: Add TODO that a vector should be released. | |
5663 | ||
719eb899 | 5664 | 2015-04-17 Sivanupandi Pitchumani <Pitchumani.Sivanupandi@atmel.com> |
5665 | ||
5666 | PR target/65296 | |
5667 | * config/avr/gen-avr-mmcu-specs.c (*avrlibc_startfile): Adjust | |
5668 | to new AVR-LibC file layout (bug #44574). | |
5669 | (*avrlibc_devicelib): Same. | |
5670 | * config/avr/avr-mcus.def: Adjust comments. | |
5671 | * config/avr/avr.opt (nodevicelib): Adjust help. | |
5672 | ||
f8544110 | 5673 | 2015-04-17 Alan Lawrence <alan.lawrence@arm.com> |
5674 | ||
5675 | * config/aarch64/arm_neon.h (vdup_n_f32): Remove forward declaration. | |
5676 | ||
7e8f098c | 5677 | 2015-04-17 Patrick Palka <ppalka@gcc.gnu.org> |
5678 | ||
5679 | PR c++/64527 | |
5680 | * gimplify.c (gimplify_init_constructor): Always emit a | |
5681 | side-effecting constructor. | |
5682 | ||
8e21ebb1 | 5683 | 2015-04-17 Tom de Vries <tom@codesourcery.com> |
5684 | ||
c7b64aaa | 5685 | PR tree-optimization/64950 |
8e21ebb1 | 5686 | * gimplify.c (gimplify_function_tree): Tentatively set PROP_gimple_lva |
5687 | in cfun->curr_properties. | |
5688 | (gimplify_va_arg_expr): Clear PROP_gimple_lva in cfun->curr_properties | |
5689 | if we generate an IFN_VA_ARG. | |
5690 | * tree-inline.c (expand_call_inline): Reset PROP_gimple_lva in dest | |
5691 | function if PROP_gimple_lva is not set in src function. | |
5692 | ||
82fc0e0a | 5693 | 2015-04-17 Tom de Vries <tom@codesourcery.com> |
5694 | Michael Matz <matz@suse.de> | |
5695 | ||
c7b64aaa | 5696 | PR tree-optimization/64950 |
82fc0e0a | 5697 | * gimple-iterator.c (update_modified_stmts): Remove static. |
5698 | * gimple-iterator.h (update_modified_stmts): Declare. | |
5699 | * gimplify.c (gimplify_modify_expr): Handle IFN_VA_ARG. | |
5700 | (gimplify_va_arg_internal): New function. | |
5701 | (gimplify_va_arg_expr): Use IFN_VA_ARG. | |
5702 | * gimplify.h (gimplify_va_arg_internal): Declare. | |
5703 | * internal-fn.c (expand_VA_ARG): New unreachable function. | |
5704 | * internal-fn.def (VA_ARG): New DEF_INTERNAL_FN. | |
5705 | * tree-stdarg.c (gimple_call_ifn_va_arg_p, expand_ifn_va_arg_1) | |
5706 | (expand_ifn_va_arg): New function. | |
5707 | (pass_data_stdarg): Add PROP_gimple_lva to properties_provided field. | |
5708 | (pass_stdarg::execute): Call expand_ifn_va_arg. | |
5709 | (pass_data_lower_vaarg): New pass_data. | |
5710 | (pass_lower_vaarg): New gimple_opt_pass. | |
5711 | (pass_lower_vaarg::gate, pass_lower_vaarg::execute) | |
5712 | (make_pass_lower_vaarg): New function. | |
5713 | * cfgexpand.c (pass_data_expand): Add PROP_gimple_lva to | |
5714 | properties_required field. | |
5715 | * passes.def (all_passes): Add pass_lower_vaarg. | |
5716 | * tree-pass.h (PROP_gimple_lva): Add define. | |
5717 | (make_pass_lower_vaarg): Declare. | |
5718 | ||
4036aeb0 | 5719 | 2015-04-17 Tom de Vries <tom@codesourcery.com> |
5720 | ||
5721 | * fold-const.c (operand_equal_p): Handle INTERNAL_FNs. | |
5722 | * calls.c (call_expr_flags): Same. | |
5723 | ||
0de0b987 | 5724 | 2015-04-17 Tom de Vries <tom@codesourcery.com> |
5725 | ||
5726 | * tree-stdarg.c (optimize_va_list_gpr_fpr_size): Factor out of ... | |
5727 | (pass_stdarg::execute): ... here. | |
5728 | ||
5f8ad053 | 5729 | 2015-04-17 Tom de Vries <tom@codesourcery.com> |
5730 | Michael Matz <matz@suse.de> | |
5731 | ||
5732 | * tree-cfg.c (make_blocks_1): Factor out of ... | |
5733 | (make_blocks): ... here. | |
5734 | (make_edges_bb): Factor out of ... | |
5735 | (make_edges): ... here. | |
5736 | (gimple_find_sub_bbs): New function. | |
5737 | * tree-cfg.h (gimple_find_sub_bbs): Declare. | |
5738 | ||
5cb32292 | 5739 | 2015-04-17 Tom de Vries <tom@codesourcery.com> |
5740 | ||
5741 | * tree.c (free_lang_data): Disable lang_hooks.gimplify_expr. | |
5742 | ||
4d3c996b | 5743 | 2015-04-17 Yury Gribov <y.gribov@samsung.com> |
5744 | ||
5745 | * asan.c (set_sanitized_sections): New function. | |
5746 | (section_sanitized_p): Ditto. | |
5747 | (asan_protect_global): Optionally sanitize user-defined | |
5748 | sections. | |
5749 | * asan.h (set_sanitized_sections): Declare new function. | |
5750 | * common.opt (fsanitize-sections): New option. | |
5751 | * doc/invoke.texi (-fsanitize-sections): Document new option. | |
5752 | * opts-global.c (handle_common_deferred_options): Handle new | |
5753 | option. | |
5754 | ||
06065ecc | 5755 | 2015-04-17 Jakub Jelinek <jakub@redhat.com> |
5756 | ||
5757 | PR debug/65771 | |
5758 | * dwarf2out.c (loc_list_from_tree): Return NULL | |
5759 | for DEBUG_EXPR_DECL. | |
5760 | ||
b1369c42 | 5761 | 2015-04-17 Christian Bruel <christian.bruel@st.com> |
5762 | ||
5763 | * ipa-inline.c (can_inline_edge_p): Allow inlining of functions with | |
5764 | same attributes. | |
5765 | ||
5766 | 2015-04-16 Zhouyi Zhou <yizhouzhou@ict.ac.cn> | |
16ff56f6 | 5767 | |
5768 | * ira-color.c (setup_left_conflict_sizes_p): Do not process | |
5769 | node itself when computing left conflict subnode size. | |
5770 | ||
9faeb927 | 5771 | 2015-04-16 Uros Bizjak <ubizjak@gmail.com> |
5772 | ||
5773 | * config/i386/predicates.md (register_mixssei387nonimm_operand): New. | |
5774 | * config/i386/i386.md (*fop_<mode>_1_mixed): Merge with | |
5775 | *fop_<mode>_1_sse using enabled attribute. Use | |
5776 | register_mixssei387nonimm_operand operand 1 predicate. Change | |
5777 | alternative 3 constraints from "x" to "v". | |
5778 | ||
c0a4b664 | 5779 | 2015-04-16 Richard Biener <rguenther@suse.de> |
5780 | ||
5781 | PR tree-optimization/65774 | |
5782 | * tree-ssa-ccp.c (evaluate_stmt): Constrain types we invoke | |
5783 | bit-value tracking on. | |
5784 | ||
f9e88e0c | 5785 | 2015-04-16 Richard Biener <rguenther@suse.de> |
5786 | ||
5787 | PR tree-optimization/64277 | |
5788 | * tree-vrp.c (check_array_ref): Fix anti-range handling, | |
5789 | simplify upper bound handling. | |
5790 | (search_for_addr_array): Simplify. | |
5791 | (check_array_bounds): Handle ADDR_EXPRs here. | |
5792 | (check_all_array_refs): Simplify. | |
5793 | ||
69deb15a | 5794 | 2015-04-16 Uros Bizjak <ubizjak@gmail.com> |
5795 | ||
5796 | * config/i386/i386.c (print_reg): Rewrite function. | |
5797 | ||
3f4fdd8c | 5798 | 2015-04-16 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
5799 | ||
5800 | * config/s390/s390.h (IRA_HARD_REGNO_ADD_COST_MULTIPLIER): | |
5801 | Invert the condition. | |
5802 | ||
af2cb099 | 5803 | 2015-04-16 Renlin Li <renlin.li@arm.com> |
5804 | ||
5805 | * simplify-rtx.c (simplify_unary_operation_1): Fix a typo. Enable two | |
5806 | simplifications for UNSIGNED_FLOAT. | |
5807 | ||
e98e1692 | 5808 | 2015-04-16 Nick Clifton <nickc@redhat.com> |
5809 | ||
5810 | * config/rl78/rl78-opts.h (enum rl78_mul_types): Add MUL_G14 and | |
5811 | MUL_UNINIT. | |
5812 | (enum rl78_cpu_type): New. | |
5813 | * config/rl78/rl78-virt.md (attr valloc): Add divhi and divsi. | |
5814 | (umulhi3_shift_virt): Remove m constraint from operand 1. | |
5815 | (umulqihi3_virt): Likewise. | |
5816 | * config/rl78/rl78.c (rl78_option_override): Add code to process | |
5817 | -mcpu and -mmul options. | |
5818 | (rl78_alloc_physical_registers): Add code to handle divhi and | |
5819 | divsi valloc attributes. | |
5820 | (set_origin): Likewise. | |
5821 | * config/rl78/rl78.h (RL78_MUL_G14): Define. | |
5822 | (TARGET_G10, TARGET_G13, TARGET_G14): Define. | |
5823 | (TARGET_CPU_CPP_BUILTINS): Define __RL78_MUL_xxx__ and | |
5824 | __RL78_Gxx__. | |
5825 | (ASM_SPEC): Pass -mcpu on to assembler. | |
5826 | * config/rl78/rl78.md (mulqi3): Add a clobber of AX. | |
5827 | (mulqi3_rl78): Likewise. | |
5828 | (mulhi3_g13): Likewise. | |
5829 | (mulhi3): Generate the G13 or G14 versions of the insn directly. | |
5830 | (mulsi3): Likewise. | |
5831 | (mulhi3_g14): Add clobbers of AX and BC. | |
5832 | (mulsi3_g14): Likewise. | |
5833 | (mulsi3_g13): Likewise. | |
5834 | (udivmodhi4, udivmodhi4_g14, udivmodsi4): New patterns. | |
5835 | (udivmodsi4_g14, udivmodsi4_g13): New patterns. | |
5836 | * config/rl78/rl78.opt (mmul): Initialise value to | |
5837 | RL78_MUL_UNINIT. | |
5838 | (mcpu): New option. | |
5839 | (m13, m14, mrl78): New option aliases. | |
5840 | * config/rl78/t-rl78 (MULTILIB_OPTIONS): Add mg13 and mg14. | |
5841 | (MULTILIB_DIRNAMES): Add g13 and g14. | |
5842 | * doc/invoke.texi: Document -mcpu and -mmul options. | |
5843 | ||
a8a0d56e | 5844 | 2015-04-16 Richard Biener <rguenther@suse.de> |
5845 | ||
5846 | * tree-ssa-ccp.c (likely_value): See if we have operands that | |
5847 | are marked as never simulate again and return CONSTANT in this | |
5848 | case. | |
5849 | * tree-ssa-propagate.c (simulate_stmt): Mark stmts that do | |
5850 | not have any operands that will be simulated again as | |
5851 | not being simulated again. | |
5852 | ||
23bebc67 | 5853 | 2015-04-15 Uros Bizjak <ubizjak@gmail.com> |
5854 | ||
5855 | * config/i386/i386.md (*cmpi<FPCMP:unord><MODEF:mode>_mixed): | |
5856 | Merge with *cmpi<FPCMP:unord><MODEF:mode>_sse using enabled attribute. | |
5857 | (*extendsfdf2_mixed): Merge with *extendsfdf2_sse using enabled | |
5858 | attribute. | |
5859 | (*truncdfsf_fast_mixed): Merge with *truncdfsf_fast_sse using | |
5860 | enabled attribute. | |
5861 | (*float<SWI48:mode><MODEF:mode>2_mixed): Rename from | |
5862 | *float<SWI48:mode><MODEF:mode>2_sse. | |
5863 | (*absneg<mode>2_mixed): Merge with *absneg<mode>2_sse using | |
5864 | enabled attribute. | |
5865 | (*fop_<mode>_comm_mixed): Merge with *fop_<mode>_comm_sse using | |
5866 | enabled attribute. | |
5867 | ||
20dc3373 | 5868 | 2015-04-15 Tom de Vries <tom@codesourcery.com> |
5869 | ||
5870 | PR other/65487 | |
5871 | * function.c (push_dummy_function): New function. | |
5872 | (init_dummy_function_start): Use push_dummy_function. | |
5873 | (pop_dummy_function): New function. Factored out of ... | |
5874 | (expand_dummy_function_end): ... here. | |
5875 | * function.h (push_dummy_function, pop_dummy_function): Declare. | |
5876 | * passes.c (pass_manager::dump_passes): Use push_dummy_function and | |
5877 | pop_dummy_function. | |
5878 | * tree-chkp.c (chkp_gate): Handle cgraph_node::get (cfun->decl) == NULL. | |
5879 | ||
b803a3c1 | 5880 | 2015-04-15 Jeff Law <law@redhat.com> |
5881 | ||
970975d0 | 5882 | PR tree-optimization/47679 |
5883 | * tree-ssa-dom.c (build_and_record_new_cond): Moved to avoid | |
5884 | need for forward declaration in upcoming changes. | |
5885 | (record_conditions, record_edge_info): Likewise. | |
5886 | ||
b803a3c1 | 5887 | PR rtl-optimization/42522 |
5888 | * cse.c (fold_rtx): Try to simplify a ZERO_EXTRACT or | |
5889 | SIGN_EXTRACT as a whole object rather than simplifying | |
5890 | its operand. | |
5891 | ||
1c543545 | 5892 | 2015-04-15 Jakub Jelinek <jakub@redhat.com> |
5893 | ||
5894 | PR ipa/65765 | |
5895 | * ipa-icf-gimple.c (func_checker::compare_bb): For GIMPLE_NOP | |
5896 | and GIMPLE_PREDICT use break instead of return true. For | |
5897 | GIMPLE_EH_DISPATCH, compare dispatch region. | |
5898 | ||
255d8fb7 | 5899 | 2015-04-14 Matthew Wahab <matthew.wahab@arm.com> |
5900 | ||
5901 | * doc/extend.texi (__sync Builtins): Simplify some text. Update | |
5902 | details about the implementation. Make clear preference for | |
5903 | __atomic builtins. Reduce possibility of future change. | |
5904 | ||
6202f892 | 5905 | 2015-04-15 Nick Clifton <nickc@redhat.com> |
5906 | ||
5907 | * config/rx/rx.opt (mallow-string-insns): New option. | |
5908 | * config/rx/rx.c (RX_BUILTIN_RMPA): Disable the use of this | |
5909 | builtin if string instructions are denied. | |
5910 | * config/rx/rx.h (TARGET_CPU_CPP_BUILTINS): Define | |
5911 | __RX_ALLOW_STRING_INSNS__ or __RX_DISALLOW_STRING_INSNS__, as | |
5912 | appropriate. | |
5913 | (ASM_SPEC): Pass -mno-allow-string-insns on to the assembler. | |
5914 | * config/rx/rx.md (movstr): Enable pattern only if string | |
5915 | instructions are allowed. | |
5916 | (rx_movstr, rx_strend, movmemsi, rx_movmem): Likewise. | |
5917 | (cmpstrnsi, cmpstrsi, rx_cmpstrn, rmpa): Likewise. | |
5918 | * config/rx/t-rx (MULTILIB_OPTIONS): Add mno-allow-string-insns. | |
5919 | (MULTILIB_DIRNAMES): Add no-strings. | |
5920 | * doc/invoke.texi: Document -mno-allow-string-insns. | |
e98e1692 | 5921 | |
72f2d6cc | 5922 | 2015-04-15 Alan Modra <amodra@gmail.com> |
5923 | ||
5924 | PR target/65408 | |
5925 | PR target/58744 | |
5926 | PR middle-end/36043 | |
5927 | * calls.c (load_register_parameters): Don't load past end of | |
5928 | mem unless suitably aligned. | |
5929 | ||
d1dc25ff | 5930 | 2015-04-15 Nick Clifton <nickc@redhat.com> |
5931 | ||
5932 | * config/rl78/rl78.c (rl78_expand_prologue): Mark large stack | |
5933 | decrement instruction as being frame related. | |
5934 | (rl78_print_operand_1): Handle 'p' modifier to add +0 to HL | |
5935 | based addresses. | |
5936 | If zero extending a function address enclose the operation in | |
5937 | %code(...). | |
5938 | (rl78_preferred_reload_class): New function. | |
5939 | (TARGET_PREFERRED_RELOAD_CLASS): Define. | |
5940 | * config/rl78/rl78.md: Remove useless constraints in expanders. | |
5941 | (mulqi3_rl78): Remove + qualifier on input-only operand 1. | |
5942 | (mulhi3_rl78): Likewise. | |
5943 | (mulhi3_g13): Likewise. | |
5944 | (mulsi3_rl78): Likewise. | |
5945 | (es_addr): Move to before the multiply patterns. | |
5946 | ||
c36aa54b | 5947 | 2015-04-15 Alan Modra <amodra@gmail.com> |
5948 | ||
5949 | * function.h (struct emit_status): Delete x_first_insn, x_last_insn | |
5950 | and sequence_stack. Add seq. | |
5951 | (seq_stack): Delete. | |
5952 | * function.c (prepare_function_start): Don't access x_last_insn. | |
5953 | * emit-rtl.h (get_current_sequence, get_topmost_sequence): New. | |
5954 | (get_insns, set_first_insn, get_last_insn, set_last_insn): Use them. | |
5955 | * emit_rtl.c (start_sequence, push_topmost_sequence, | |
5956 | pop_topmost_sequence, end_sequence, in_sequence_p, init_emit): Use | |
5957 | sequence accessors. | |
5958 | (get_last_insn_anywhere, add_insn_after_nobb, add_insn_before_nobb, | |
5959 | remove_insn): Likewise. Simplify. | |
5960 | * config/m32c/m32c.c (m32c_leaf_function_p): Use push_topmost_sequence | |
5961 | and pop_topmost_sequence. | |
5962 | (m32c_function_needs_enter): Use get_topmost_sequence. Ignore | |
5963 | debug insns. | |
5964 | * config/rs6000/rs6000.c (rs6000_call_aix): Use get_current_sequence. | |
5965 | ||
e6ea917c | 5966 | 2015-04-14 Yvan Roux <yvan.roux@linaro.org> |
5967 | ||
5968 | PR target/65729 | |
5969 | * lra-constraints.c (prohibited_class_reg_set_mode_p): Restore and fix | |
5970 | the assertiion. | |
5971 | ||
22e23375 | 5972 | 2015-04-14 Uros Bizjak <ubizjak@gmail.com> |
5973 | ||
5974 | * config/i386/i386.h (LEGACY_INT_REG_P): New define. | |
5975 | (LEGACY_INT_REGNO_P): Ditto. | |
5976 | (GENERAL_REGNO_P): Use LEGACY_INT_REGNO_P. | |
5977 | (ANY_MASK_REG_P): Remove. | |
5978 | (BND_REG_P): Rename from ANY_BND_REG_P. | |
5979 | * config/i386/i386.c (print_reg): Use LEGACY_INT_REG_P to print | |
5980 | legacy integer registers. Do not handle MMX_REG_P in a special way. | |
5981 | Merge 64byte and 32byte SSE handling. | |
5982 | ||
2ff88218 | 5983 | 2015-04-14 Nick Clifton <nickc@redhat.com> |
5984 | ||
5985 | * expr.c (expand_assignment): Force an address offset computation | |
5986 | into a register before changing its mode. | |
5987 | (expand_expr_real_1): Likewise. | |
5988 | ||
f7507320 | 5989 | 2015-04-14 Alan Lawrence <alan.lawrence@arm.com> |
5990 | ||
5991 | * config/aarch64/arm_neon.h (vst1_lane_f32, vst1_lane_f64, | |
5992 | vst1_lane_p8, vst1_lane_p16, vst1_lane_s8, vst1_lane_s16, | |
5993 | vst1_lane_s32, vst1_lane_s64, vst1_lane_u8, vst1_lane_u16, | |
5994 | vst1_lane_u32, vst1_lane_u64, vst1q_lane_f32, vst1q_lane_f64, | |
5995 | vst1q_lane_p8, vst1q_lane_p16, vst1q_lane_s8, vst1q_lane_s16, | |
5996 | vst1q_lane_s32, vst1q_lane_s64, vst1q_lane_u8, vst1q_lane_u16, | |
5997 | vst1q_lane_u32, vst1q_lane_u64): Reimplement with pointer dereference | |
5998 | and __aarch64_vget_lane_any. | |
5999 | ||
33a2aaa4 | 6000 | 2015-04-14 Jakub Jelinek <jakub@redhat.com> |
6001 | ||
6002 | PR rtl-optimization/65761 | |
6003 | * cfgrtl.c (rtl_split_edge): For EDGE_CROSSING split, use | |
6004 | get_last_bb_insn (after) instead of NEXT_INSN (BB_END (after)). | |
6005 | ||
6cf9f9e0 | 6006 | 2015-04-14 Richard Biener <rguenther@suse.de> |
6007 | ||
6008 | * graphite-scop-detection.c: Do not include cp/cp-tree.h. | |
6009 | (graphite_can_represent_scev): Use POINTER_TYPE_P. | |
6010 | ||
c90d2c17 | 6011 | 2015-04-14 Richard Biener <rguenther@suse.de> |
6012 | ||
6013 | PR tree-optimization/65758 | |
6014 | * tree-ssa-ccp.c (get_value_from_alignment): Adjust mask test | |
6015 | against -1. | |
6016 | (ccp_lattice_meet): Likewise. | |
6017 | (bit_value_unop): Likewise. | |
6018 | (bit_value_binop): Likewise. | |
6019 | (bit_value_assume_aligned): Likewise. | |
6020 | ||
2d4340b0 | 6021 | 2015-04-14 Christian Bruel <christian.bruel@st.com> |
6022 | ||
6023 | * execute_dwarf2_frame (dw_frame_pointer_regnum): Reinitialize for each | |
6024 | function. | |
6025 | ||
57d742ac | 6026 | 2015-04-14 Marc Glisse <marc.glisse@inria.fr> |
6027 | ||
6028 | PR tree-optimization/63387 | |
6029 | * match.pd ((x unord x) | (y unord y) -> (x unord y), | |
6030 | (x unord x) | (x unord y) -> (x unord y)): New simplifications. | |
6031 | ||
f15065c9 | 6032 | 2015-04-14 Uros Bizjak <ubizjak@gmail.com> |
6033 | ||
6034 | * config/i386/predicates.md (any_QIreg_operand): Rename from | |
6035 | q_regs_operand. Do not process subregs. | |
6036 | (QIreg_operand): Use QI_REGNO_P predicate. | |
6037 | (ext_QIreg_operand): Ditto. | |
6038 | (ext_register_operand): Ditto. | |
6039 | * config/i386/i386.md (TEST splitters): Use QIreg_operand predicate. | |
6040 | (AND splitters): Ditto. | |
6041 | (AND with -65536 splitter): Add SWI48 mode for operand 0. | |
6042 | (AND with -256 splitter): Use any_QIreg_operand predicate and | |
6043 | SWI248 mode for operand 0. | |
6044 | (AND with -65281 splitter): Use QIreg_operand predicate and SWI248 | |
6045 | mode for operand 0. | |
6046 | (SETCC + MOVZBL peepholes): Update for renamed any_QIreg_operand. | |
6047 | ||
9acf6420 | 6048 | 2015-04-13 Gerald Pfeifer <gerald@pfeifer.com> |
6049 | ||
6050 | * doc/plugins.texi: Rewrite first introductory paragraph. | |
6051 | ||
be57e812 | 6052 | 2015-04-12 Jan Hubicka <hubicka@ucw.cz> |
6053 | ||
6054 | * tree-vrp.c (nonnull_arg_p): THIS pointers and references are non-zero. | |
6055 | (gimple_stmt_nonzero_warnv_p): Reference return values are non-zero. | |
6056 | ||
6f3dcc1e | 6057 | 2015-04-12 Jan Hubicka <hubicka@ucw.cz> |
6058 | ||
6059 | * ipa-profie.c (ipa_profile): Check number of parameters | |
6060 | and possible polymorphic call targets before | |
6061 | devirtualizing. | |
6062 | ||
00daaa9c | 6063 | 2015-04-13 Uros Bizjak <ubizjak@gmail.com> |
6064 | ||
6065 | * config/i386/i386.md (*bmi2_umul<mode><dwi>3_1): Merge from | |
6066 | *bmi2_umulsidi3_1 and *bmi2_umulditi3_1 using DWIH mode iterator. | |
6067 | ||
db48deb0 | 6068 | 2015-04-13 Richard Biener <rguenther@suse.de> |
6069 | ||
6070 | PR tree-optimization/65204 | |
6071 | * tree-ssa-ccp.c (evaluate_stmt): Always evaluate address | |
6072 | takens for bit-CCP. | |
6073 | ||
48b24f49 | 6074 | 2015-04-13 Richard Biener <rguenther@suse.de> |
6075 | ||
6076 | PR target/65660 | |
6077 | * config/i386/i386.c (bdver1_cost): Double cond_taken_branch_cost | |
6078 | and cond_not_taken_branch_cost to 4 and 2. | |
6079 | (bdver2_cost): Likewise. | |
6080 | (bdver3_cost): Likewise. | |
6081 | (bdver4_cost): Likewise. | |
6082 | ||
e7826ae1 | 6083 | 2015-04-12 Jan Hubicka <hubicka@ucw.cz> |
6084 | ||
6085 | * hash-table.h (hash_table constructor): Add mem stats. | |
6086 | (alloc_entries): Likewise. | |
6087 | ||
71fe79b2 | 6088 | 2015-04-12 Jan Hubicka <hubicka@ucw.cz> |
6089 | ||
6090 | * ipa-cp.c (ipcp_driver): Relase prev_edge. | |
6091 | * passes.c (execute_one_pass): Only add transform if pass has one. | |
6092 | ||
525643d8 | 6093 | 2015-04-12 Joseph Myers <joseph@codesourcery.com> |
6094 | ||
6095 | * config/i386/i386.c (ix86_option_override_internal): Don't set | |
6096 | -fprefetch-loop-arrays if optimizing for size. | |
6097 | ||
b8e27798 | 6098 | 2015-04-12 Jan Hubicka <hubicka@ucw.cz> |
6099 | Gerald Pfeifer <gerald@pfeifer.com> | |
6100 | ||
6101 | * doc/contrib.texi (Contributors): Add Martin Jambor and | |
6102 | Michael Matz. | |
6103 | ||
905be4e6 | 6104 | 2015-04-12 Jakub Jelinek <jakub@redhat.com> |
6105 | ||
2d444913 | 6106 | * BASE-VER: Set to 6.0.0. |
6107 | ||
905be4e6 | 6108 | PR tree-optimization/65747 |
6109 | * ipa-icf-gimple.c (func_checker::compare_operand): Use compare_operand | |
6110 | rather than compare_ssa_name for OBJ_TYPE_REF_OBJECT. | |
6111 | ||
f1f52d51 | 6112 | 2015-04-12 Gerald Pfeifer <gerald@pfeifer.com> |
6113 | ||
6114 | * doc/invoke.texi (-Wmemset-transposed-args): Break a long | |
6115 | sentence. Improve grammar. | |
6116 | ||
c4681006 | 6117 | 2015-04-12 Gerald Pfeifer <gerald@pfeifer.com> |
6118 | ||
6119 | * doc/contrib.texi (Contributors): Add Maxim Kuvyrkov. | |
6120 | ||
51a019c5 | 6121 | 2015-04-11 Jan Hubicka <hubicka@ucw.cz> |
7ab096e0 | 6122 | |
6123 | PR ipa/65743 | |
6124 | * ipa-inline-transform.c (speculation_removed): Remove static var. | |
6125 | (check_speculations): New function. | |
6126 | (clone_inlined_nodes): Do not check spculations. | |
6127 | (inline_call): Call check_speculations. | |
6128 | * ipa-prop.c (ipa_make_edge_direct_to_target): Do not | |
6129 | consider non-invariants. | |
6130 | ||
51a019c5 | 6131 | 2015-04-11 Jan Hubicka <hubicka@ucw.cz> |
6132 | Martin Liska <mliska@suse.cz> | |
a72b1e34 | 6133 | |
6134 | PR ipa/65722 | |
6135 | * ipa-icf.c (sem_item::compare_cgraph_references): function and | |
6136 | variable can not match. | |
6137 | (sem_item::update_hash_by_addr_refs): Fix handling of virtual tables. | |
6138 | (sem_variable::equals_wpa): Fix checking of DECL_FINAL_P patch. | |
6139 | ||
7bcba067 | 6140 | 2015-04-11 Jakub Jelinek <jakub@redhat.com> |
6141 | ||
6142 | PR tree-optimization/65735 | |
6143 | * tree-ssa-threadedge.c (fsm_find_control_statement_thread_paths): | |
6144 | Remove visited_phis argument, add visited_bbs, avoid recursing into the | |
6145 | same bb rather than just into the same phi node. | |
6146 | (thread_through_normal_block): Adjust caller. | |
6147 | ||
7bbc6c39 | 6148 | 2015-04-11 Gerald Pfeifer <gerald@pfeifer.com> |
6149 | ||
6150 | * doc/contrib.texi (Contributors): Add Ira Rosen. | |
6151 | ||
911ecac2 | 6152 | 2015-04-11 Benno Schulenberg <bensberg@justemail.net> |
6153 | ||
6154 | * gcov.c (find_source): Fix miswording in error message. | |
6155 | * config/i386/i386.c (ix86_handle_cconv_attribute): Likewise. | |
6156 | (ix86_expand_sse_comi_round): Fix typo in error message. | |
6157 | ||
3c82f2b4 | 6158 | 2015-04-11 Gerald Pfeifer <gerald@pfeifer.com> |
6159 | ||
6160 | * doc/contrib.texi (Contributors): Add Laurynas Biveinis. | |
6161 | ||
f1c25d13 | 6162 | 2015-04-10 Gerald Pfeifer <gerald@pfeifer.com> |
6163 | ||
6164 | * doc/contrib.texi (Contributors): Update Joe Buck's entry. | |
6165 | ||
b439aebd | 6166 | 2015-04-10 Vladimir Makarov <vmakarov@redhat.com> |
6167 | ||
6168 | PR target/65710 | |
6169 | * lra-assigns.c (spill_for): Update smallest_bad_spills_num. | |
6170 | Print bad_spills_num and insn_pseudos_num. | |
6171 | ||
d5cfbc8c | 6172 | 2015-04-10 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
6173 | ||
6174 | PR target/65694 | |
6175 | * config/arm/arm.c (arm_canonicalize_comparison): Use ARM_SIGN_EXTEND | |
6176 | when creating +1 values for SImode. | |
6177 | ||
b133333e | 6178 | 2015-04-10 Vladimir Makarov <vmakarov@redhat.com> |
6179 | ||
6180 | PR target/65729 | |
6181 | * lra-constraints.c (prohibited_class_reg_set_mode_p): Comment the | |
6182 | assert. | |
6183 | ||
fb5ccd6d | 6184 | 2015-04-10 Jakub Jelinek <jakub@redhat.com> |
6185 | Iain Sandoe <iain@codesourcery.com> | |
6186 | ||
6187 | PR target/65351 | |
6188 | * configure: Regenerate. | |
6189 | ||
9fbb8dbd | 6190 | 2015-04-09 Kirill Yukhin <kirill.yukhin@intel.com> |
6191 | ||
6192 | PR target/65671 | |
9adfaa03 | 6193 | * config/i386/sse.md: Generate vextract32x4 if AVX-512DQ is disabled. |
9fbb8dbd | 6194 | |
52e75185 | 6195 | 2015-04-09 Gerald Pfeifer <gerald@pfeifer.com> |
6196 | ||
6197 | * doc/contrib.texi (Contributors): Add John Marino. | |
6198 | ||
ca6ed334 | 6199 | 2015-04-09 Jakub Jelinek <jakub@redhat.com> |
6200 | ||
6201 | PR tree-optimization/65709 | |
6202 | * ubsan.c (instrument_mem_ref): Use TREE_TYPE (base) instead of | |
6203 | TREE_TYPE (TREE_TYPE (t)). | |
6204 | ||
0f7b6a0d | 6205 | 2015-04-09 Vladimir Makarov <vmakarov@redhat.com> |
6206 | ||
6207 | PR target/65710 | |
6208 | * lra-int.h (lra_bad_spill_regno_start): New. | |
6209 | * lra.c (lra_bad_spill_regno_start): New. | |
6210 | (lra): Set up lra_bad_spill_regno_start. Set up | |
6211 | lra_constraint_new_regno_start unconditionally. | |
6212 | * lra-assigns.c (spill_for): Use lra_bad_spill_regno_start for | |
6213 | spill preferences. | |
6214 | ||
fbbdee2b | 6215 | 2015-04-09 Marek Polacek <polacek@redhat.com> |
6216 | Jakub Jelinek <jakub@redhat.com> | |
6217 | ||
6218 | PR middle-end/65554 | |
6219 | * gimple-fold.c (gimple_fold_builtin_memory_op): Update comment. | |
6220 | (fold_ctor_reference): Use STRIP_USELESS_TYPE_CONVERSION instead | |
6221 | of STRIP_NOPS. | |
6222 | ||
35206d02 | 6223 | 2015-04-09 Segher Boessenkool <segher@kernel.crashing.org> |
6224 | ||
6225 | PR rtl-optimization/65693 | |
6226 | * combine.c (is_parallel_of_n_reg_sets): Move outside of | |
6227 | #ifndef HAVE_cc0. | |
6228 | ||
fec08444 | 6229 | 2015-04-09 Georg-Johann Lay <avr@gjlay.de> |
6230 | ||
6231 | PR target/65296 | |
6232 | * config/avr/driver-avr.c (avr_devicespecs_file): Don't specify a | |
6233 | device specs file if "device-specs%s" didn't resolve to a path. | |
6234 | ||
23af5d95 | 6235 | 2015-04-09 Kirill Yukhin <kirill.yukhin@intel.com> |
6236 | ||
6237 | PR target/65676 | |
6238 | * config/i386/i386.c (fixup_modeless_constant): New. | |
6239 | (ix86_expand_args_builtin): Fixup modeless constant operand. | |
6240 | (ix86_expand_round_builtin): Ditto. | |
6241 | (ix86_expand_special_args_builtin): Ditto. | |
6242 | (ix86_expand_builtin): Ditto. | |
6243 | ||
8f44ec1f | 6244 | 2015-04-09 Jakub Jelinek <jakub@redhat.com> |
6245 | ||
6246 | PR target/65693 | |
6247 | * config/i386/i386.md (*udivmod<mode>4_pow2): Allow | |
6248 | any pow2 integer in between 2 and 0x80000000U inclusive. | |
6249 | ||
1e4f4b17 | 6250 | 2015-04-08 Segher Boessenkool <segher@kernel.crashing.org> |
6251 | ||
6252 | PR rtl-optimization/65693 | |
6253 | * combine.c (is_parallel_of_n_reg_sets): Change first argument | |
6254 | from an rtx_insn * to an rtx. | |
6255 | (try_combine): Adjust both callers. Use it once more. | |
6256 | ||
07c77ccc | 6257 | 2015-04-08 Ilya Enkovich <ilya.enkovich@intel.com> |
6258 | ||
6259 | * tree-chkp.c (chkp_find_const_bounds_var): Remove. | |
6260 | (chkp_make_static_const_bounds): Search existing | |
6261 | symbol by assembler name. Use make_decl_one_only. | |
6262 | (chkp_get_zero_bounds_var): Remove node search which | |
6263 | is now performed in chkp_make_static_const_bounds. | |
6264 | (chkp_get_none_bounds_var): Likewise. | |
6265 | ||
7d7e74e1 | 6266 | 2015-04-08 Michael Witten <mfwitten@gmail.com> |
6267 | ||
6268 | * doc/extend.texi (Attribute Syntax): Add a trailing semicolon | |
6269 | to an example. | |
6270 | ||
a24816da | 6271 | 2015-04-08 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
6272 | ||
6273 | * tree.h (CONVERT_EXPR_P): Commentary typo fix. | |
6274 | ||
162add2a | 6275 | 2015-04-08 Gerald Pfeifer <gerald@pfeifer.com> |
6276 | ||
6277 | * doc/extend.texi (__sync Builtins): Fix grammar. | |
6278 | ||
0ff6e7cc | 6279 | 2015-04-08 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
6280 | ||
6281 | * doc/cfg.texi (GIMPLE statement iterators): Fix typo. | |
6282 | ||
db36f475 | 6283 | 2015-04-08 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
6284 | ||
6285 | * varasm.c (emit_local): Move definition of align. | |
6286 | ||
0a1fe572 | 6287 | 2015-04-08 Julian Brown <julian@codesourcery.com> |
6288 | ||
6289 | * config/nvptx/mkoffload.c (process): Support variable mapping. | |
6290 | ||
1ddffe86 | 6291 | 2015-03-27 Trevor Saunders <tbsaunde@tbsaunde.org> |
6292 | ||
6293 | * config/alpha/alpha.c (alpha_use_linkage): Change type of slot to | |
6294 | alpha_links **. | |
6295 | (alpha_write_one_linkage): Correct typo. | |
6296 | ||
6f59b325 | 6297 | 2015-04-08 Ilya Enkovich <ilya.enkovich@intel.com> |
6298 | ||
6299 | * ipa-comdats.c (propagate_comdat_group): Walk through thunks. | |
6300 | ||
1fa2d0d0 | 6301 | 2015-04-08 Gerald Pfeifer <gerald@pfeifer.com> |
6302 | ||
9adfaa03 | 6303 | * doc/install.texi (bootstrap-lto-noplugin): Rewrite. |
1fa2d0d0 | 6304 | |
17c596cc | 6305 | 2015-04-08 Ilya Enkovich <ilya.enkovich@intel.com> |
6306 | ||
6307 | * tree-chkp.h (chkp_insert_retbnd_call): New. | |
6308 | * tree-chkp.c (chkp_insert_retbnd_call): New. | |
6309 | * ipa-split.c (insert_bndret_call_after): Remove. | |
6310 | (split_function): Use chkp_insert_retbnd_call. | |
6311 | * cgraphunit.c (cgraph_node::expand_thunk): Build returned | |
6312 | bounds for instrumented functions. | |
6313 | ||
6b7d03d8 | 6314 | 2015-04-07 Jan Hubicka <hubicka@ucw.cz> |
6315 | ||
6316 | PR ipa/65540 | |
6317 | * calls.c (initialize_argument_information): When producing tail | |
6318 | call also turn SSA_NAMES passed by references to original PARM_DECLs | |
6319 | ||
0c832c1c | 6320 | 2015-04-07 Vladimir Makarov <vmakarov@redhat.com> |
6321 | ||
2ba70752 | 6322 | PR target/65648 |
0c832c1c | 6323 | * lra-remat.c (do_remat): Process input and non-input insn |
6324 | registers separately. | |
6325 | ||
f7572df2 | 6326 | 2015-04-07 Jakub Jelinek <jakub@redhat.com> |
6327 | ||
596f7cca | 6328 | PR debug/65678 |
6329 | * valtrack.c (debug_lowpart_subreg): New function. | |
6330 | (dead_debug_insert_temp): Use it. | |
6331 | ||
f7572df2 | 6332 | PR middle-end/65680 |
6333 | * expr.c (get_inner_reference): Handle bit_offset that doesn't fit | |
6334 | into signed HOST_WIDE_INT the same as negative bit_offset. | |
6335 | ||
8bfefdea | 6336 | 2015-04-07 Ilya Enkovich <ilya.enkovich@intel.com> |
6337 | ||
6338 | * ipa-comdats.c (ipa_comdats): Visit all thunks | |
6339 | to set proper comdat group. | |
6340 | ||
798bfc5d | 6341 | 2015-04-07 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
6342 | ||
6343 | PR target/65489 | |
6344 | * config/arm/arm.c (arm_legitimate_constant_p_1): Remove restriction | |
6345 | on constants for NEON VSTRUCT modes. | |
6346 | ||
b1b085e0 | 6347 | 2015-04-07 Jakub Jelinek <jakub@redhat.com> |
6348 | Iain Sandoe <iain@codesourcery.com> | |
6349 | ||
6350 | PR target/65351 | |
6351 | * configure: Regenerate. | |
6352 | ||
a40ce17e | 6353 | 2015-04-06 Michael Meissner <meissner@linux.vnet.ibm.com> |
6354 | ||
6355 | PR target/65614 | |
6356 | * config/rs6000/rs6000.c (struct processor_costs): Add cost field | |
6357 | for SF->DF conversions to make FLOAT_EXTEND more expensive, so | |
6358 | that LFD is used to load double constants instead of LFS. Add | |
6359 | defaults for all costs structures. Add comments for missing | |
6360 | initialization fields. | |
6361 | (size32_cost): Likewise. | |
6362 | (size64_cost): Likewise. | |
6363 | (rs64a_cost): Likewise. | |
6364 | (mpccore_cost): Likewise. | |
6365 | (ppc403_cost): Likewise. | |
6366 | (ppc405_cost): Likewise. | |
6367 | (ppc440_cost): Likewise. | |
6368 | (ppc476_cost): Likewise. | |
6369 | (ppc601_cost): Likewise. | |
6370 | (ppc603_cost): Likewise. | |
6371 | (ppc604_cost): Likewise. | |
6372 | (ppc604e_cost): Likewise. | |
6373 | (ppc620_cost): Likewise. | |
6374 | (ppc630_cost): Likewise. | |
6375 | (ppccell_cost): Likewise. | |
6376 | (ppc750_cost): Likewise. | |
6377 | (ppc7450_cost): Likewise. | |
6378 | (ppc8540_cost): Likewise. | |
6379 | (ppce300c2c3_cost): Likewise. | |
6380 | (ppce500mc_cost): Likewise. | |
6381 | (ppce500mc64_cost): Likewise. | |
6382 | (ppce5500_cost): Likewise. | |
6383 | (ppce6500_cost): Likewise. | |
6384 | (titan_cost): Likewise. | |
6385 | (power4_cost): Likewise. | |
6386 | (power6_cost): Likewise. | |
6387 | (power7_cost): Likewise. | |
6388 | (power8_cost): Likewise. | |
6389 | (ppca2_cost): Likewise. | |
6390 | (rs6000_rtx_costs): Make FLOAT_EXTEND use SFDF_convert field. | |
6391 | ||
6392 | * config/rs6000/rs6000.md (extendsfdf2_fpr): Generate XSCPSGNDP | |
6393 | instead of XXLOR to copy SFmode to clear out dirty bits created | |
6394 | when SFmode denormals are generated. | |
6395 | (mov<mode>_hardfloat, FMOVE32 case): Likewise. | |
6396 | (truncdfsf2_fpr): Add support for ISA 2.07 XSRSP instruction. | |
6397 | ||
1fa6e64d | 6398 | 2015-04-06 Evandro Menezes <e.menezes@samsung.com> |
6399 | ||
6400 | * doc/invoke.texi (AARCH64/mtune): Add exynos-m1 as an option. | |
6401 | * config/aarch64/aarch64-cores.def (exynos-m1): New core. | |
6402 | * config/aarch64/aarch64-tune.md: Regenerate. | |
6403 | ||
1ca8545b | 6404 | 2015-04-06 Evandro Menezes <e.menezes@samsung.com> |
6405 | ||
6406 | * doc/invoke.texi (ARM/mtune): Add "exynos-m1" as an option. | |
6407 | * config/arm/arm.c (arm_issue_rate): Specify "3" for "exynosm1". | |
6408 | * config/arm/arm-cores.def (exynos-m1): New core. | |
6409 | * config/arm/arm-tune.md: Regenerate. | |
6410 | * config/arm/arm-tables.opt: Add entry for "exynos-m1". | |
6411 | * config/arm/bpabi.h: Likewise. | |
6412 | ||
50fc5f3c | 6413 | 2015-04-06 Ilya Enkovich <ilya.enkovich@intel.com> |
6414 | ||
6415 | * ipa-cp (set_single_call_flag): Remove too | |
6416 | restrictive assert. | |
6417 | ||
0d8c703d | 6418 | 2015-04-06 Ilya Verbin <ilya.verbin@intel.com> |
6419 | ||
6420 | * config/i386/intelmic-mkoffload.c (generate_host_descr_file): Call | |
6421 | GOMP_offload_unregister from the destructor. | |
6422 | ||
0c57c0f9 | 6423 | 2015-04-06 Ilya Enkovich <ilya.enkovich@intel.com> |
6424 | ||
6425 | * ipa-chkp.c (chkp_maybe_create_clone): Reset cdtor | |
6426 | flags for instrumentation thunk. | |
6427 | (chkp_produce_thunks): Likewise. | |
6428 | ||
1bb258de | 6429 | 2015-04-05 Martin Liska <mliska@suse.cz> |
6430 | ||
6431 | PR ipa/65665 | |
6432 | * ipa-icf.c (sem_function::equals_wpa): Verify that IPA CP | |
6433 | has computed data structure. | |
6434 | (sem_item_optimizer::update_hash_by_addr_refs): Likewise. | |
6435 | ||
ec4ff5c6 | 6436 | 2015-04-04 Jan Hubicka <hubicka@ucw.cz> |
6437 | ||
6438 | * invoke.texi (inline-unit-growth): Increase growth to 20% | |
6439 | * params.def (PARAM_INLINE_UNIT_GROWTH): Likewise. | |
6440 | ||
fa4f0b4e | 6441 | 2015-04-04 Vladimir Makarov <vmakarov@redhat.com> |
6442 | ||
6443 | PR target/65647 | |
6444 | * lra-int.h (LRA_MAX_REMATERIALIZATION_PASSES): New. Add its | |
6445 | value checking. | |
6446 | (lra_rematerialization_iter): New. | |
6447 | * lra.c (lra): Initialize lra_rematerialization_iter. | |
6448 | Stop updating lra_constraint_new_regno_start after switching of | |
6449 | inheritance and rematerialization. | |
6450 | * lra-remat.c (lra_rematerialization_iter): New. | |
6451 | (lra_remat): Add printing pass iteration. Do rematerialization | |
6452 | only first LRA_MAX_REMATERIALIZATION_PASSES iterations. | |
6453 | ||
7a66d0cf | 6454 | 2015-04-04 Richard Biener <rguenther@suse.de> |
6455 | ||
6456 | PR tree-optimization/64909 | |
6457 | PR tree-optimization/65660 | |
6458 | * tree-vectorizer.h (vect_get_known_peeling_cost): Adjust | |
6459 | to take a cost vector for scalar iteration cost. | |
6460 | (vect_get_single_scalar_iteration_cost): Likewise. | |
6461 | * tree-vect-loop.c (vect_get_single_scalar_iteration_cost): | |
6462 | Compute the scalar iteration cost into a cost vector. | |
6463 | (vect_get_known_peeling_cost): Use the scalar cost vector to | |
6464 | account for the cost of the peeled iterations. | |
6465 | (vect_estimate_min_profitable_iters): Likewise. | |
6466 | * tree-vect-data-refs.c (vect_peeling_hash_get_lowest_cost): | |
6467 | Likewise. | |
6468 | ||
b0c27777 | 6469 | 2015-04-04 Alan Modra <amodra@gmail.com> |
6470 | ||
6471 | PR target/65576 | |
6472 | PR target/65240 | |
6473 | * config/rs6000/predicates.md (zero_reg_mem_operand): Exclude | |
6474 | 0.0 constant unless TARGET_VSX. | |
6475 | * config/rs6000/rs6000.md (extenddftf2_internal): Remove last | |
6476 | alternative. | |
6477 | ||
6737c56a | 6478 | 2015-04-03 Jan Hubicka <hubicka@ucw.cz> |
6479 | ||
2ba70752 | 6480 | PR ipa/65654 |
6737c56a | 6481 | * ipa-inline-transform.c (inline_call): Skip sanity check to work |
6482 | around the ICE | |
6483 | ||
93b6a5b4 | 6484 | 2015-04-03 Jan Hubicka <hubicka@ucw.cz> |
6485 | ||
6486 | PR ipa/65655 | |
6487 | * ipa-inline-analysis.c (edge_set_predicate): Do not redirect | |
6488 | speculative indirect edges to avoid ordering issue. | |
6489 | ||
05c71fb5 | 6490 | 2015-04-03 Jan Hubicka <hubicka@ucw.cz> |
6491 | ||
6492 | PR ipa/65076 | |
6493 | * ipa-inline.c (edge_badness): Add combined size to the denominator. | |
6494 | ||
240131b5 | 6495 | 2015-04-03 Jakub Jelinek <jakub@redhat.com> |
6496 | ||
6497 | * omp-low.c (scan_omp_parallel, scan_omp_task, scan_omp_target): Set | |
6498 | TYPE_ARTIFICIAL on the .omp_data* types. | |
6499 | ||
e4436fff | 6500 | 2015-04-02 Ilya Enkovich <ilya.enkovich@intel.com> |
6501 | ||
6502 | * cgraphunit.c (cgraph_node::expand_thunk): Don't expand | |
6503 | instrumentation thunks. | |
6504 | ||
307bb9d5 | 6505 | 2015-04-02 Ilya Enkovich <ilya.enkovich@intel.com> |
6506 | ||
6507 | * config/i386/i386.c (ix86_expand_call): Avoid nested | |
6508 | PARALLEL in returned call value. | |
6509 | ||
576be896 | 6510 | 2015-04-02 Ilya Enkovich <ilya.enkovich@intel.com> |
6511 | ||
6512 | * lto-cgraph.c (input_cgraph_1): Always link instrumented | |
6513 | assembler name with original one. | |
6514 | ||
5b2e963f | 6515 | 2015-04-02 Uros Bizjak <ubizjak@gmail.com> |
6516 | ||
6517 | * config/i386/i386.c (ix86_register_priority): Use AX_REG. | |
6518 | ||
cc16fdea | 6519 | 2015-04-02 Uros Bizjak <ubizjak@gmail.com> |
6520 | ||
6521 | Revert parts of r216820. | |
6522 | * config/i386/i386.md (movqi_internal): Correct type calculation | |
6523 | for alternatives 3 and 5. | |
6524 | ||
c378948c | 6525 | 2015-04-02 Jakub Jelinek <jakub@redhat.com> |
6526 | ||
6527 | PR preprocessor/61977 | |
6528 | * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Don't | |
6529 | predefine __vector/__bool/__pixel macros nor context sensitive | |
6530 | macros for CLK_ASM. | |
6531 | * config/spu/spu-c.c (spu_cpu_cpp_builtins): Similarly. | |
6532 | ||
1e237088 | 6533 | 2015-04-02 John David Anglin <danglin@gcc.gnu.org> |
6534 | ||
6535 | * config/pa/pa.c (pa_output_move_double): Directly handle register | |
6536 | indexed memory operand. Simplify handling of scaled register indexed | |
6537 | memory operands. | |
6538 | ||
556154e8 | 6539 | 2015-04-02 Ilya Enkovich <ilya.enkovich@intel.com> |
6540 | ||
6541 | PR driver/65444 | |
6542 | * config/i386/linux-common.h (MPX_SPEC): New. | |
6543 | (CHKP_SPEC): Add MPX_SPEC. | |
6544 | * doc/invoke.texi (-fcheck-pointer-boudns): Document | |
6545 | possible issues with '-z bndplt' support in linker. | |
6546 | ||
cb5d0a18 | 6547 | 2015-04-02 Uros Bizjak <ubizjak@gmail.com> |
6548 | ||
6549 | * config/i386/sync.md (UNSPEC_FILD_ATOMIC, UNSPEC_FIST_ATOMIC): New. | |
6550 | (loaddi_via_fpu): Use UNSPEC_FILD_ATOMIC. | |
6551 | (storedi_via_fpu): Use UNSPEC_FIST_ATOMIC. | |
6552 | * reg-stack.c (get_true_reg): Change UNSPEC_LDA to UNSPEC_FILD_ATOMIC. | |
6553 | (subst_stack_regs_pat): Change UNSPEC_STA to UNSPEC_FIST_ATOMIC. | |
6554 | ||
3a88ed33 | 6555 | 2015-04-01 Uros Bizjak <ubizjak@gmail.com> |
6556 | ||
6557 | * config/i386/sync.md (UNSPEC_MOVA): Remove. | |
6558 | (atomic_load<mode>): Change operand 0 predicate to | |
6559 | nonimmediate_operand and fix up the destination when needed. | |
6560 | Use UNSPEC_LDA. | |
6561 | (atomic_loaddi_fpu): Use UNSPEC_LDA. | |
6562 | (atomic_store<mode>): Change operand 1 predicate to | |
6563 | nonimmendate_operand and move the source to register when needed. | |
6564 | Use UNSPEC_STA. | |
6565 | (atomic_store<mode>_1): Use UNSPEC_STA. | |
6566 | (atomic_storedi_fpu): Change operand 1 to nonimmediate_operand. | |
6567 | Fix moves from memory operand. Use UNSPEC_STA. | |
6568 | ||
dda86e31 | 6569 | 2015-04-01 Bernd Edlinger <bernd.edlinger@hotmail.de> |
6570 | ||
6571 | * expmed.c (strict_volatile_bitfield_p): Check that the access will | |
6572 | not cross a MODESIZE boundary. | |
6573 | (store_bit_field, extract_bit_field): Added assertions in the | |
6574 | strict volatile bitfields code path. | |
6575 | ||
7fc3fdaf | 6576 | 2015-04-01 Max Ostapenko <m.ostapenko@partner.samsung.com> |
6577 | ||
6578 | PR target/65624 | |
3a88ed33 | 6579 | * config/aarch64/aarch64-builtins.c (aarch64_simd_expand_builtin): |
6580 | Increase args array size by one to avoid buffer overflow. | |
7fc3fdaf | 6581 | |
71e37927 | 6582 | 2015-03-31 Jan Hubicka <hubicka@ucw.cz> |
6583 | ||
6584 | * lto-cgraph.c (lto_output_node, input_overwrite_node): Stream | |
6585 | split_part. | |
6586 | * ipa-inline.c (edge_badness): Add wrapper penalty. | |
6587 | (sum_callers): Move up. | |
6588 | (inline_small_functions): Set single_caller. | |
6589 | * ipa-inline.h (inline_summary): Add single_caller. | |
6590 | * ipa-split.c (split_function): Set split_part. | |
6591 | (cgraph_node::create_clone): Do not shadow decl; copy split_part. | |
6592 | * cgraph.h (cgraph_node): Add split_part. | |
6593 | ||
76cddb96 | 6594 | 2015-03-31 Uros Bizjak <ubizjak@gmail.com> |
d2e9c252 | 6595 | |
76cddb96 | 6596 | PR target/58945 |
6597 | * config/i386/sync.md (atomic_compare_and_swap<dwi>_doubleword): | |
6598 | Do not split operands 0 and operands 2 to halfmode. | |
6599 | (atomic_compare_and_swap<mode>): Update for | |
6600 | atomic_compare_and_swap<dwi>_doubleword changes. | |
6601 | ||
6602 | 2015-03-31 Jan Hubicka <hubicka@ucw.cz> | |
6603 | ||
6604 | * tree.c (need_assembler_name_p): Artificial types have no ODR names. | |
d2e9c252 | 6605 | * ipa-devirt.c (warn_odr): Do not try to apply ODR cache when |
6606 | no caching is done. | |
6607 | ||
0428647c | 6608 | 2015-03-31 Martin Liska <mliska@suse.cz> |
6609 | ||
6610 | PR ipa/65557 | |
6611 | * ipa-icf.c (sem_function::equals_wpa): Check if IPA CP | |
6612 | has already filled up function summary. | |
6613 | (sem_item_optimizer::update_hash_by_addr_refs): Likewise. | |
6614 | ||
c75febdb | 6615 | 2015-03-31 Richard Biener <rguenther@suse.de> |
6616 | ||
6617 | * tree-sra.c (create_access_replacement): Drop under-/over-alignment | |
6618 | of types. | |
6619 | ||
06877232 | 6620 | 2015-03-31 Dominik Vogt <vogt@linux.vnet.ibm.com> |
6621 | ||
6622 | * config/s390/s390.c (s390_function_num_hotpatch_hw): Allow hotpatching | |
6623 | nested functions. | |
6624 | (s390_reorg): Adapt to new signature of s390_function_num_hotpatch_hw. | |
6625 | (s390_asm_output_function_label): Adapt to new signature of | |
6626 | s390_function_num_hotpatch_hw | |
6627 | Optimise the code generating assembler output. | |
6628 | Add comments to assembler file. | |
6629 | ||
305d4389 | 6630 | 2015-03-31 Richard Biener <rguenther@suse.de> |
6631 | ||
6632 | PR middle-end/65626 | |
6633 | * tree-cfgcleanup.c (fixup_noreturn_call): Only split the block | |
6634 | of the noreturn call so it is last and cleanup_control_flow_bb | |
6635 | can do the CFG part. | |
6636 | ||
4811e339 | 6637 | 2015-03-31 Ilya Enkovich <ilya.enkovich@intel.com> |
6638 | ||
6639 | PR target/65531 | |
6640 | * ipa-chkp.c (chkp_maybe_create_clone): Don't set | |
6641 | same_comdat_group for external symbols. | |
6642 | * symtab.c (symtab_node::verify_symtab_nodes): Avoid | |
6643 | infinite same_comdat_group traversal loop. | |
6644 | ||
b67fc3b2 | 6645 | 2015-03-31 Jakub Jelinek <jakub@redhat.com> |
6646 | ||
6647 | PR plugins/61176 | |
6648 | * Makefile.in (install-plugin): Add all gcc/*.{h,def} files | |
6649 | automatically to $headers. | |
6650 | ||
a467a47b | 6651 | 2015-03-30 Jakub Jelinek <jakub@redhat.com> |
6652 | ||
6653 | PR ipa/65610 | |
6654 | * ipa-utils.h (inlined_polymorphic_ctor_dtor_block_p): Declare. | |
6655 | * ipa-polymorphic-call.c (inlined_polymorphic_ctor_dtor_block_p): New | |
6656 | function. | |
6657 | (decl_maybe_in_construction_p, noncall_stmt_may_be_vtbl_ptr_store): | |
6658 | Use it. | |
6659 | * ipa-prop.c (param_type_may_change_p): Likewise. | |
6660 | * tree-ssa-live.c: Include ipa-utils.h and its dependencies. | |
6661 | (remove_unused_scope_block_p): Add in_ctor_dtor_block | |
6662 | argument. Before inlining, preserve | |
6663 | inlined_polymorphic_ctor_dtor_block_p blocks and the outermost block | |
6664 | with FUNCTION_DECL BLOCK_ABSTRACT_ORIGIN inside of them. Adjust | |
6665 | recursive calls. | |
6666 | (remove_unused_locals): Adjust remove_unused_scope_block_p caller. | |
6667 | ||
42d72e70 | 6668 | 2015-03-27 Jan Hubicka <hubicka@ucw.cz> |
6669 | ||
6670 | PR ipa/65076 | |
6671 | * ipa-inline.c (edge_badness): Base denominator on callee's | |
6672 | grwoth squared. | |
6673 | ||
39fcd838 | 6674 | 2015-03-27 Martin Jambor <mjambor@suse.cz> |
6675 | ||
6676 | PR ipa/65478 | |
6677 | * params.def (PARAM_IPA_CP_RECURSION_PENALTY) : New. | |
6678 | (PARAM_IPA_CP_SINGLE_CALL_PENALTY): Likewise. | |
6679 | * ipa-prop.h (ipa_node_params): New flags node_within_scc and | |
6680 | node_calling_single_call. | |
6681 | * ipa-cp.c (count_callers): New function. | |
6682 | (set_single_call_flag): Likewise. | |
6683 | (initialize_node_lattices): Count callers and set single_flag_call if | |
6684 | necessary. | |
6685 | (incorporate_penalties): New function. | |
6686 | (good_cloning_opportunity_p): Use it, dump new flags. | |
6687 | (propagate_constants_topo): Set node_within_scc flag if appropriate. | |
6688 | * doc/invoke.texi (ipa-cp-recursion-penalty, | |
6689 | ipa-cp-single-call-pentalty): Document. | |
6690 | ||
d1528ba2 | 6691 | 2015-03-27 Jan Hubicka <hubicka@ucw.cz> |
6692 | ||
6693 | PR ipa/65588 | |
6694 | * symtab.c (symtab_node::get_partitioning_class): Register vars | |
6695 | are duplicated. | |
6696 | * varpool.c (symbol_table::output_variables) Do not assemble unefined | |
6697 | decls for non-symbols. | |
6698 | ||
017e92fb | 6699 | 2015-03-27 H.J. Lu <hongjiu.lu@intel.com> |
6700 | ||
6701 | PR target/65248 | |
6702 | * output.h (default_binds_local_p_2): New. | |
6703 | * varasm.c (default_binds_local_p_2): Renamed to ... | |
6704 | (default_binds_local_p_3): This. Don't return true on protected | |
6705 | data symbol if protected data may be external. | |
6706 | (default_binds_local_p): Use default_binds_local_p_3. | |
6707 | (default_binds_local_p_1): Likewise. | |
6708 | (default_binds_local_p_2): New. | |
6709 | * config/i386/i386.c (TARGET_BINDS_LOCAL_P): Set to | |
6710 | default_binds_local_p_2 if TARGET_MACHO is undefined. | |
6711 | ||
5ee52e91 | 6712 | 2015-03-27 Jakub Jelinek <jakub@redhat.com> |
6713 | ||
6714 | PR target/65593 | |
6715 | * config/i386/i386.c (legitimize_pic_address): If base | |
6716 | is SYMBOL_REF or LABEL_REF using %rip addressing, force | |
6717 | it to reg to avoid PLUS of SYMBOL_REF/LABEL_REF and register. | |
6718 | ||
cabdaed9 | 6719 | 2015-03-27 Jan Hubicka <hubicka@ucw.cz> |
6720 | ||
6721 | PR target/65531 | |
6722 | * symtab.c (symtab_node::verify_symtab_nodes): Fix verification of | |
6723 | comdat groups. | |
6724 | ||
bdbe7747 | 6725 | 2015-03-27 Jan Hubicka <hubicka@ucw.cz> |
6726 | ||
6727 | PR ipa/65600 | |
6728 | * cgraph.c (cgraph_update_edges_for_call_stmt_node): Fix the case | |
6729 | of optimized out indirect call. | |
6730 | (redirect_to_unreachable): Always build symbol table node for | |
6731 | BUILT_IN_UNREACHABLE | |
6732 | ||
ec44a0da | 6733 | 2015-03-27 Vladimir Makarov <vmakarov@redhat.com> |
6734 | ||
6735 | PR target/65407 | |
6736 | * ira-costs.c (record_reg_classes): Process all constraint string | |
6737 | containing 0-9. | |
6738 | ||
96d2bfe0 | 6739 | 2015-03-27 Bernd Schmidt <bernds@codesourcery.com> |
6740 | ||
ed22b540 | 6741 | * config/c6x/c6x.md (movmisalign<mode>): Use MEM_P, not |
6742 | memory_operand. | |
6743 | ||
96d2bfe0 | 6744 | PR target/65052 |
9adfaa03 | 6745 | * config/c6x/constraints.md (S3): New constraint. |
6746 | * config/c6x/c6x.md (real_jump): Use it. | |
96d2bfe0 | 6747 | |
c6d4472f | 6748 | 2015-03-26 Jan Hubicka <hubicka@ucw.cz> |
6749 | ||
6750 | PR middle-end/65595 | |
6751 | * cgraph.c (cgraph_update_edges_for_call_stmt_node): Only | |
6752 | do redirection if the call is not optimized out. | |
6753 | ||
04dd26f6 | 6754 | 2015-03-27 Ilya Enkovich <ilya.enkovich@intel.com> |
6755 | ||
6756 | PR target/65495 | |
6757 | * c-family/c.opt (fcheck-pointer-bounds): List supported languages. | |
6758 | (fchkp-check-incomplete-type): Add LTO. | |
6759 | (fchkp-zero-input-bounds-for-main): Likewise. | |
6760 | (fchkp-first-field-has-own-bounds): Likewise. | |
6761 | (fchkp-narrow-bounds): Likewise. | |
6762 | (fchkp-narrow-to-innermost-array): Likewise. | |
6763 | (fchkp-use-static-bounds): Likewise. | |
6764 | (fchkp-use-static-const-bounds): Likewise. | |
6765 | (fchkp-treat-zero-dynamic-size-as-infinite): Likewise. | |
6766 | ||
df84cd8e | 6767 | 2015-03-27 Marek Polacek <polacek@redhat.com> |
6768 | ||
6769 | * gimple-iterator.h (gsi_prev_nondebug): Fix typo. | |
6770 | ||
83973b1b | 6771 | 2015-03-27 Marek Polacek <polacek@redhat.com> |
6772 | ||
6773 | PR sanitizer/65583 | |
6774 | * ubsan.c (ubsan_create_edge): New function. | |
6775 | (instrument_bool_enum_load): Call it. | |
6776 | (instrument_nonnull_arg): Likewise. | |
6777 | (instrument_nonnull_return): Likewise. | |
6778 | (instrument_object_size): Likewise. | |
6779 | ||
31942707 | 6780 | 2015-03-26 Jan Hubicka <hubicka@ucw.cz> |
6781 | ||
6782 | * lto-streamer.h (class lto_location_cache): Turn loc_cache into | |
6783 | auto_vec. | |
6784 | ||
97c2a3aa | 6785 | 2015-03-26 Jan Hubicka <hubicka@ucw.cz> |
6786 | ||
6787 | PR lto/65536 | |
6788 | * lto-streamer.h (class lto_location_cache): New. | |
6789 | (struct data_in): Add location_cache. | |
6790 | (lto_input_location): Update prototype. | |
6791 | (stream_input_location_now): New. | |
6792 | * streamer-hooks.h (struct streamer_hooks): Make input_location to take | |
6793 | pointer to location. | |
6794 | (stream_input_location): Update. | |
6795 | * ipa-devirt.c: Include streamer-hooks.h and lto-streamer.h | |
6796 | (warn_odr): Apply location cache before warning. | |
6797 | (lto_input_location): Update prototype. | |
6798 | * gimple-streamer-in.c (input_phi, input_gimple_stmt): | |
6799 | Use stream_input_location_now. | |
6800 | * lto-streamer-in.c (lto_location_cache::current_cache): New static | |
6801 | variable. | |
6802 | (lto_location_cache::cmp_loc): New function. | |
6803 | (lto_location_cache::apply_location_cache): New function. | |
6804 | (lto_location_cache::accept_location_cache): New function. | |
6805 | (lto_location_cache::revert_location_cache): New function. | |
6806 | (lto_location_cache::input_location): New function. | |
6807 | (lto_input_location): Do location caching. | |
6808 | (stream_input_location_now): New function. | |
6809 | (input_eh_region, input_struct_function_base): Use | |
6810 | stream_input_location_now. | |
6811 | (lto_data_in_create): use new. | |
6812 | (lto_data_in_delete): Use delete. | |
6813 | * tree-streamer-in.c (unpack_ts_block_value_fields, | |
6814 | unpack_ts_omp_clause_value_fields, streamer_read_tree_bitfields, | |
6815 | lto_input_ts_exp_tree_pointers): Update for cached location api. | |
6816 | ||
73594827 | 6817 | 2015-03-26 Jan Hubicka <hubicka@ucw.cz> |
6818 | ||
6819 | PR ipa/65076 | |
6820 | * passes.def: Add pass_nothrow. | |
6821 | * ipa-pure-const.c: (pass_data_nothrow): New. | |
6822 | (pass_nothrow): New. | |
6823 | (pass_nothrow::execute): New. | |
6824 | (make_pass_nothrow): New. | |
6825 | * tree-pass.h (make_pass_nothrow): Declare. | |
6826 | ||
99fe8cbd | 6827 | 2015-03-26 Jan Hubicka <hubicka@ucw.cz> |
6828 | ||
6829 | * ipa-inline-analysis.c (redirect_to_unreachable): Be prepared for | |
6830 | edge to change by speculation resolution or redirection. | |
6831 | (edge_set_predicate): Likewise. | |
6832 | (inline_summary_t::duplicate): Likewise. | |
6833 | (remap_edge_summaries): Likewise. | |
6834 | ||
c0abb913 | 6835 | 2015-03-26 Jan Hubicka <hubicka@ucw.cz> |
6836 | ||
6837 | * ipa-inline.c (check_maybe_up, check_maybe_down, check_match): | |
6838 | New macros. | |
6839 | (can_inline_edge_p): Relax option matching for always inline functions. | |
6840 | ||
648b0c25 | 6841 | 2015-03-26 Uros Bizjak <ubizjak@gmail.com> |
6842 | ||
6843 | PR target/65561 | |
6844 | * config/i386/sse.md (avx512dq_vextract<shuffletype>64x2_1_maskm): | |
6845 | Check operand 4 and operand 0 for equality. | |
6846 | (avx512f_vextract<shuffletype>32x4_1_maskm): | |
6847 | Check operand 6 and operand 0 for equality. | |
6848 | (vec_extract_lo_<mode>_maskm): Check operand 2 and operand 0 | |
6849 | for equality. | |
6850 | (vec_extract_hi_<mode>_maskm): Ditto. | |
6851 | ||
bfbaf6bb | 6852 | 2015-03-26 Jan Hubicka <hubicka@ucw.cz> |
6853 | ||
6854 | * cgraph.c (cgraph_update_edges_for_call_stmt_node): Do not bring | |
6855 | dead calls back to live. | |
6856 | (cgraph_edge::verify_count_and_frequency): Move cgraph/cfg frequency | |
6857 | cross check to ... | |
6858 | (cgraph_node::verify_node): ... here; verify only callee edges, | |
6859 | not caller. | |
75059f14 | 6860 | * cif-code.def (CILK_SPAWN): New code. |
bfbaf6bb | 6861 | |
e806c56f | 6862 | 2015-03-26 Jan Hubicka <hubicka@ucw.cz> |
6863 | ||
6864 | * ipa-inline-analysis.c (redirect_to_unreachable): New function. | |
6865 | (edge_set_predicate): Use it to mark unreachable edges. | |
6866 | (inline_summary_t::duplicate): Remove unnecesary code. | |
6867 | (remap_edge_summaries): Likewise. | |
6868 | (dump_inline_summary): Report contains_cilk_spawn. | |
6869 | (compute_inline_parameters): Compute contains_cilk_spawn. | |
6870 | (inline_read_section, inline_write_summary): Stream | |
6871 | contains_cilk_spawn. | |
648b0c25 | 6872 | * ipa-inline.c (can_inline_edge_p): Do not touch |
e806c56f | 6873 | DECL_STRUCT_FUNCTION that may not be available; |
6874 | use CIF_CILK_SPAWN for cilk; fix optimization attribute checks; | |
6875 | remove check for callee_fun->can_throw_non_call_exceptions and | |
6876 | replace it by optimization attribute check; check for flag_exceptions. | |
6877 | * ipa-inline-transform.c (inline_call): Maintain | |
6878 | DECL_FUNCTION_PERSONALITY | |
6879 | * ipa-inline.h (inline_summary): Add contains_cilk_spawn. | |
6880 | ||
9f9cf897 | 6881 | 2015-03-26 Jakub Jelinek <jakub@redhat.com> |
6882 | ||
6883 | PR tree-optimization/65551 | |
6884 | * tree-ssa-sccvn.c (fully_constant_vn_reference_p): Use | |
6885 | TYPE_PRECISION only for INTEGRAL_TYPE_P types. | |
6886 | ||
649cf3c4 | 6887 | 2015-03-26 Richard Biener <rguenther@suse.de> |
6888 | ||
6889 | PR middle-end/65555 | |
6890 | * tree-cfg.c (verify_gimple_call): Do not require a call to | |
6891 | have no LHS if it wasn't recognized as control altering yet. | |
6892 | ||
a5833d42 | 6893 | 2015-03-26 Jakub Jelinek <jakub@redhat.com> |
6894 | ||
ece434d4 | 6895 | PR tree-optimization/64715 |
648b0c25 | 6896 | * passes.def: Add another instance of pass_object_sizes before ccp1. |
ece434d4 | 6897 | * tree-object-size.c (pass_object_sizes::execute): In |
6898 | first_pass_instance, only handle __bos (, 1) and __bos (, 3) | |
6899 | calls, and keep the call in the IL, as {MIN,MAX}_EXPR of the | |
6900 | __bos result and the computed constant. Remove redundant | |
6901 | checks, obsoleted by gimple_call_builtin_p test. | |
6902 | ||
a5833d42 | 6903 | * var-tracking.c (variable_tracking_main_1): Don't track |
6904 | variables for targetm.no_register_allocation targets. | |
6905 | ||
6131e186 | 6906 | 2015-03-26 Oleg Endo <olegendo@gcc.gnu.org> |
6907 | ||
6908 | * config/sh/t-linux (DEFAULT_ENDIAN, MULTILIB_EXCEPTIONS): Remove. | |
6909 | * config/sh/t-sh (MULTILIB_EXCEPTIONS): Handle default endian. | |
6910 | ||
3f26f29d | 6911 | 2015-03-25 Michael Meissner <meissner@linux.vnet.ibm.com> |
6912 | ||
6913 | PR target/65569 | |
6914 | * config/rs6000/rs6000.md (extenddftf2_fprs): On VSX systems use | |
6915 | XXLXOR to create 0.0. On pre-VSX systems make sure the constant | |
6916 | 0.0 is correctly setup. | |
6917 | (extenddftf2_internal): Likewise. | |
6918 | ||
9e0d85a7 | 6919 | 2015-03-25 Sebastian Pop <s.pop@samsung.com> |
6920 | ||
6921 | PR tree-optimization/65177 | |
6922 | * tree-ssa-threadupdate.c (verify_seme): Renamed verify_jump_thread. | |
6923 | (bb_in_bbs): New. | |
6924 | (duplicate_seme_region): Renamed duplicate_thread_path. Redirect all | |
6925 | edges not adjacent on the path to the original code. | |
6926 | ||
65128e00 | 6927 | 2015-03-25 Uros Bizjak <ubizjak@gmail.com> |
6928 | ||
6929 | PR bootstrap/65537 | |
6930 | * doc/install.texi (Building a native compiler): Document new | |
6931 | bootstrap-lto-noplugin configuration. Mention that bootstrap-lto | |
6932 | configuration assumes that the host supports the linker plugin. | |
6933 | ||
a1406e97 | 6934 | 2015-03-25 Ilya Enkovich <ilya.enkovich@intel.com> |
6935 | ||
6936 | PR target/65508 | |
6937 | * tree-chkp.c (chkp_add_bounds_to_call_stmt): Set static | |
6938 | chain for generated call. | |
6939 | ||
c917f44f | 6940 | 2015-03-25 Richard Biener <rguenther@suse.de> |
6941 | ||
6942 | * passes.c (pass_manager::execute_early_local_passes): Guard | |
6943 | execution of pass_chkp_instrumentation_passes with | |
6944 | flag_check_pointer_bounds. | |
6945 | (pass_chkp_instrumentation_passes::gate): Likewise. | |
6946 | ||
50399213 | 6947 | 2015-03-25 Martin Liska <mliska@suse.cz> |
6948 | ||
6949 | PR tree-optimization/65538 | |
6950 | * symbol-summary.h (function_summary::~function_summary): | |
6951 | Relese memory for allocated summaries. | |
6952 | (function_summary::release): New function. | |
6953 | ||
35fafcb2 | 6954 | 2015-03-25 Jakub Jelinek <jakub@redhat.com> |
6955 | ||
6956 | PR lto/65515 | |
6957 | * lto-streamer-out.c (DFS::worklist): New struct. | |
6958 | (DFS::worklist_vec): New data member. | |
6959 | (DFS::next_dfs_num): Remove. | |
6960 | (DFS::DFS): Rewritten using worklist instead of recursion, | |
6961 | using most of code from DFS::DFS_write_tree. | |
6962 | (DFS::DFS_write_tree_body): Remove SINGLE_P argument, don't | |
6963 | pass it to DFS_write_tree calls. | |
6964 | (DFS::DFS_write_tree): Remove SINGLE_P argument, after | |
6965 | quick initial checks push it into worklist_vec and return. | |
6966 | ||
20617a2b | 6967 | 2015-03-25 Richard Biener <rguenther@suse.de> |
6968 | ||
6969 | PR middle-end/65519 | |
6970 | * genmatch.c (expr::gen_transform): Re-write to avoid | |
6971 | using gimple_build. | |
6972 | ||
b958105b | 6973 | 2015-03-25 Bin Cheng <bin.cheng@arm.com> |
6974 | ||
6975 | * doc/sourcebuild.texi (arm_tune_string_ops_prefer_neon): New. | |
6976 | ||
0c2a1f1d | 6977 | 2015-03-25 Bin Cheng <bin.cheng@arm.com> |
6978 | ||
6979 | * config/arm/arm.opt (print_tune_info): New option. | |
6980 | * config/arm/arm.c (arm_print_tune_info): New function. | |
6981 | (arm_file_start): Call arm_print_tune_info. | |
6982 | * config/arm/arm-protos.h (struct tune_params): Add comment. | |
6983 | * doc/invoke.texi (@item -mprint-tune-info): New item. | |
6984 | (-mtune): mention it in ARM Option Summary. | |
6985 | ||
40d1c891 | 6986 | 2015-03-25 DJ Delorie <dj@redhat.com> |
6987 | ||
6988 | * config/rl78/rl78.c (rl78_print_operand_1): Move 'p' test to | |
6989 | correct clause. | |
6990 | ||
4a34b76a | 6991 | 2015-03-24 Jan Hubicka <hubicka@ucw.cz> |
6992 | Martin Liska <mliska@suse.cz> | |
6993 | ||
6994 | * ipa-icf-gimple.h (return_with_result): Add missing colon to dump. | |
6995 | * ipa-icf.c (sem_function::get_hash): Hash new declaration properties. | |
6996 | (sem_item::add_type): New function. | |
6997 | (sem_function::hash_stmt): Add TREE_TYPE of gimple_op. | |
6998 | (sem_function::compare_polymorphic_p): Do not consider indirect calls. | |
6999 | (sem_item_optimizer::update_hash_by_addr_refs): Add ODR type to hash. | |
7000 | (sem_function::equals_wpa): Fix typo. | |
7001 | * ipa-icf.h (sem_item::add_type): New function. | |
7002 | (symbol_compare_hashmap_traits): Replace hashing of pointer with symbol | |
7003 | order. | |
7004 | ||
8979d917 | 7005 | 2015-03-24 Jakub Jelinek <jakub@redhat.com> |
7006 | ||
7007 | PR tree-optimization/65533 | |
7008 | * tree-vect-slp.c (vect_build_slp_tree): Before re-trying | |
7009 | with swapped operands, call vect_free_slp_tree on | |
7010 | SLP_TREE_CHILDREN of child and truncate the SLP_TREE_CHILDREN | |
7011 | vector. | |
7012 | ||
8d85945e | 7013 | 2015-03-24 Richard Biener <rguenther@suse.de> |
7014 | ||
7015 | PR middle-end/65517 | |
7016 | * tree-cfg.c (remove_edge_and_dominated_blocks): Mark loops | |
7017 | for fixup if necessary. | |
7018 | ||
fbaafbe6 | 7019 | 2015-03-23 Sandra Loosemore <sandra@codesourcery.com> |
7020 | ||
7021 | * doc/extend.texi (Function Attributes): Add @cindex entries | |
7022 | for all attributes and regularize their format. Delete text | |
7023 | about long-obsolete 68HC11 and 68HC12 targets. Move misplaced | |
7024 | information about "eightbit_data", "tiny_data", and "model" | |
7025 | variable attributes to the Variable Attributes section. Fix | |
7026 | some obvious typos and copy-editing issues. | |
7027 | (Variable Attributes, Type Attributes): Likewise add/fix | |
7028 | @cindex entries for all attributes. | |
7029 | ||
0bf92752 | 7030 | 2015-03-23 Jakub Jelinek <jakub@redhat.com> |
7031 | ||
7032 | PR target/65523 | |
7033 | * tree-chkp.c (chkp_build_returned_bound): Ignore | |
7034 | ERF_RETURNS_ARG calls if they have fewer than needed arguments. | |
7035 | ||
dfc7d67d | 7036 | 2015-03-23 Oleg Endo <olegendo@gcc.gnu.org> |
7037 | ||
7038 | PR target/65505 | |
7039 | * config/sh/predicates.md (simple_mem_operand, | |
7040 | displacement_mem_operand): Add test for reg. | |
7041 | (short_displacement_mem_operand): Test for displacement_mem_operand | |
7042 | before invoking sh_disp_addr_displacement. | |
7043 | * config/sh/constraints.md (Sdd, Sra): Simplify. | |
7044 | * config/sh/sync.md (atomic_mem_operand_0, atomic_mem_operand_1): | |
7045 | Remove redundant displacement_mem_operand tests. | |
7046 | ||
9b55c016 | 7047 | 2015-03-23 Georg-Johann Lay <avr@gjlay.de> |
7048 | ||
7049 | PR target/65296 | |
7050 | * config/avr/driver-avr.c (avr_devicespecs_file): Allow to specify | |
7051 | the same -mmcu=MCU more than once. | |
7052 | ||
391ddbe7 | 7053 | 2015-03-23 Jakub Jelinek <jakub@redhat.com> |
7054 | ||
3dc4e652 | 7055 | PR bootstrap/65522 |
7056 | * ipa-devirt.c: Remove duplicate demangle.h include. | |
7057 | ||
391ddbe7 | 7058 | PR target/65504 |
7059 | * config/i386/i386.c (ix86_copy_addr_to_reg): Set REG_POINTER | |
7060 | on the pseudo. | |
7061 | (expand_set_or_movmem_prologue_epilogue_by_misaligned_moves): Set | |
7062 | REG_POINTER on *destptr after adjusting it for prologue size. | |
418d75c4 | 7063 | |
7064 | PR ipa/65521 | |
7065 | * ipa-icf.c (sem_item::update_hash_by_addr_refs): Hash | |
7066 | ultimate_alias_target ()->order ints instead of | |
7067 | ultimate_alias_target () pointers. | |
7068 | ||
789e6149 | 7069 | 2015-03-23 Richard Biener <rguenther@suse.de> |
7070 | ||
7071 | PR tree-optimization/65518 | |
7072 | * tree-vect-stmts.c (vectorizable_load): Reject single-element | |
7073 | interleaving cases we generate absymal code for. | |
7074 | ||
bad02805 | 7075 | 2015-03-23 Richard Biener <rguenther@suse.de> |
7076 | ||
7077 | PR tree-optimization/65494 | |
7078 | * tree-vect-slp.c (vect_build_slp_tree): Do not (re-)allocate | |
7079 | matches here. | |
7080 | (vect_analyze_slp_instance): But do that here, always and once. | |
7081 | ||
bd725039 | 7082 | 2015-03-23 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
7083 | ||
7084 | * expmed.c (synth_mult): Fix comment about multiplying by T-1 and | |
7085 | adding T or multiplying by T+1 and subracting T. | |
7086 | ||
d2ac64b1 | 7087 | 2015-03-22 Jeff Law <law@redhat.com> |
7088 | ||
7089 | PR rtl-optimization/64317 | |
7090 | * Makefile.in (OBJS): Add gcse-common.c | |
7091 | * gcse.c: Include gcse-common.h | |
7092 | (struct modify_pair_s): Move structure definition to gcse-common.h | |
7093 | (compute_transp): Move function to gcse-common.c. | |
7094 | (canon_list_insert): Similarly. | |
7095 | (record_last_mem_set_info): Break out some code and put it into | |
7096 | gcse-common.c. Call into the new common code. | |
7097 | (compute_local_properties): Pass additional arguments to compute_transp. | |
7098 | * postreload-gcse.c: Include gcse-common.h and df.h | |
7099 | (modify_mem_list_set, blocks_with_calls): New variables. | |
7100 | (modify_mem_list, canon_modify_mem_list, transp): Likewise. | |
7101 | (get_bb_avail_insn): Pass in the expression index too. | |
7102 | (alloc_mem): Allocate memory for the new bitmaps and lists. | |
7103 | (free_mem): Free memory for the new bitmaps and lists. | |
7104 | (insert_expr_in_table): Record a bitmap index for each entry we | |
7105 | add to the table. | |
7106 | (record_last_mem_set_info): Call into common code in gcse-common.c. | |
7107 | (get_bb_avail_insn): If no available insn was found in the requested | |
7108 | BB. If BB has a single predecessor, see if the expression is | |
7109 | transparent in BB and available in that single predecessor. | |
7110 | (compute_expr_transp): New wrapper for compute_transp. | |
7111 | (eliminate_partially_redundant_load): Pass expression's bitmap_index | |
7112 | to get_bb_avail_insn. Compute next_pred_bb_end a bit later. | |
7113 | (gcse_after_reload_main): If there are elements in the hash table, | |
7114 | then compute transparency for all the elements in the hash table. | |
7115 | * gcse-common.h: New file. | |
7116 | * gcse-common.c: New file. | |
7117 | ||
e3bc09a1 | 7118 | 2015-03-22 Sandra Loosemore <sandra@codesourcery.com> |
7119 | ||
7120 | * doc/cpp.texi (Search Path): Hyphenate "command-line" when used | |
7121 | as an adjective. | |
7122 | (System Headers): Likewise. | |
7123 | (Ifdef): Likewise. | |
7124 | (Traditional macros): Likewise. | |
7125 | (Invocation): Likewise. | |
7126 | (Option Index): Likewise. | |
7127 | * doc/cppopts.texi (-M): Likewise. | |
7128 | (-finput-charset): Likewise. | |
7129 | (--help): Likewise. | |
7130 | * doc.invoke.texi (AVR Options): Likewise. | |
7131 | (V850 Options): Likewise. | |
ca0a430a | 7132 | |
bcdf9a31 | 7133 | 2015-03-22 Jan Hubicka <hubicka@ucw.cz> |
7134 | ||
7135 | PR ipa/65475 | |
7136 | * ipa-devirt.c: Include demangle.h | |
7137 | (odr_type_d): Add field rtti_broken. | |
7138 | (odr_subtypes_equivalent_p): Do not require name to match. | |
7139 | (compare_virtual_tables): Fix typo; if type already has ODR violation, | |
7140 | bypass the tests; be ready for function referneces in vtables that are | |
7141 | not DECL_VIRTUAL; make warnings to be OPT_Wodr. | |
7142 | (warn_odr): Give up for nameless types. | |
7143 | (warn_types_mismatch): Report mismatch in mangled names; | |
7144 | report mismatch in anonymous namespaces; look into component types to | |
7145 | give useful error; report when mismatch is dragged in from other ODR | |
7146 | type. | |
7147 | (odr_types_equivalent_p): Match types for being polymorphic; avoid | |
7148 | duplicated diagnostics. | |
7149 | (add_type_duplicate): Reorder checks so more informative ones come | |
7150 | first; fix typo; do not output "the extra base is defined here" when | |
7151 | we did not warn. | |
7152 | (BINFO_N_BASE_BINFOS): Relax sanity check. | |
db981b59 | 7153 | |
bcdf9a31 | 7154 | 2015-03-22 Martin Liska <mliska@suse.cz> |
db981b59 | 7155 | Jakub Jelinek <jakub@redhat.com> |
7156 | ||
7157 | * config/i386/i386.c (def_builtin): Set deferred_isa_values for | |
7158 | masks that can potentially include a builtin. | |
7159 | (ix86_add_new_builtins): Introduce fast filter for isa values | |
7160 | that cannot trigger builtin inclusion. | |
7161 | ||
4765f5e5 | 7162 | 2015-03-22 Martin Liska <mliska@suse.cz> |
7163 | ||
7164 | * ipa-icf.c (sem_item::update_hash_by_addr_refs): New function. | |
7165 | (sem_item::update_hash_by_local_refs): Likewise. | |
7166 | (sem_variable::get_hash): Empty line is fixed. | |
7167 | (sem_item_optimizer::execute): Include adding of hash references. | |
7168 | (sem_item_optimizer::update_hash_by_addr_refs): New function. | |
7169 | (sem_item_optimizer::build_hash_based_classes): Use local hash. | |
7170 | * ipa-icf.h (sem_item::update_hash_by_addr_refs): New function. | |
7171 | (sem_item::update_hash_by_local_refs): Likewise. | |
7172 | ||
f300163e | 7173 | 2015-03-20 Jan Hubicka <hubicka@ucw.cz> |
7174 | ||
7175 | PR ipa/65502 | |
7176 | * ipa-comdats.c (enqueue_references): Walk through thunks. | |
7177 | (ipa_comdats): Likewise. | |
7178 | (set_comdat_group_1): New function. | |
7179 | ||
98fec08e | 7180 | 2015-03-20 Jan Hubicka <hubicka@ucw.cz> |
7181 | ||
7182 | PR ipa/65475 | |
7183 | * ipa-devirt.c (add_type_duplicate): Prevail polymorphic type over | |
7184 | non-polymorphic | |
7185 | ||
19402f57 | 7186 | 2015-03-22 Dave Korn <dave.korn.cygwin@gmail.com> |
7187 | Gerald Pfeifer <gerald@pfeifer.com> | |
7188 | ||
7189 | * doc/contrib.texi (Contributors): Update entry for Danny Smith. | |
7190 | ||
c1fc07cd | 7191 | 2015-03-21 Chung-Lin Tang <cltang@codesourcery.com> |
7192 | Sandra Loosemore <sandra@codesourcery.com> | |
7193 | ||
7194 | * config/nios2/nios2-protos.h (nios2_adjust_call_address): Adjust | |
7195 | function parameter declaration. | |
7196 | * config/nios2/nios2.md (call,call_value,sibcall,sibcall_value): | |
7197 | Update arguments to nios2_adjust_call_address(). | |
7198 | (sibcall_internal): Rename from *sibcall. | |
7199 | (sibcall_value_internal): Rename from *sibcall_value. | |
7200 | * config/nios2/nios2.c (nios2_emit_add_constant): New function. | |
7201 | (nios2_large_got_address): Add target temp reg parameter. | |
7202 | (nios2_got_address): Adjust call to nios2_large_got_address, add | |
7203 | force_reg around it. | |
7204 | (nios2_load_pic_address): Add target temp reg parameter, replace call | |
7205 | to nios2_got_address with corresponding code. | |
7206 | (nios2_legitimize_constant_address): Update call to | |
7207 | nios2_load_pic_address. | |
7208 | (nios2_adjust_call_address): Add temp reg parameter, update PIC case | |
7209 | to use temp reg for PIC loading purposes. | |
7210 | (nios2_asm_output_mi_thunk): Implement TARGET_ASM_OUTPUT_MI_THUNK. | |
7211 | (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define. | |
7212 | (TARGET_ASM_OUTPUT_MI_THUNK): Likewise. | |
7213 | ||
066432fc | 7214 | 2015-03-21 Sandra Loosemore <sandra@codesourcery.com> |
7215 | ||
7216 | * doc/invoke.texi (-fno-diagnostics-show-caret): Fix | |
7217 | usage of "the @option{...}". | |
7218 | (-Wopenmp-simd): Likewise. | |
7219 | (-fsanitize-recover): Likewise. | |
7220 | (-fsanitize-undefined-trap-on-error): Likewise. | |
7221 | (-flto): Likewise. | |
7222 | (tracer-dynamic-coverage-feedback): Likewise. | |
7223 | (reorder-block-duplicate-feedback): Likewise. | |
7224 | (loop-unroll-jam-size): Likewise. | |
7225 | (-B): Likewise. | |
7226 | (-I-): Likewise. | |
7227 | (-mabs=legacy): Likewise. | |
7228 | (-mupper-regs-df): Likewise. | |
7229 | (-mupper-regs-sf): Likewise. | |
7230 | (-mpointers-to-nested-functions): Likewise. | |
7231 | ||
6d47499c | 7232 | 2015-03-21 Sandra Loosemore <sandra@codesourcery.com> |
7233 | ||
7234 | * doc/extend.texi (Cilk Plus Builtins): Add markup. | |
7235 | ||
d61629c3 | 7236 | 2015-03-21 Sandra Loosemore <sandra@codesourcery.com> |
7237 | ||
7238 | * doc/invoke.texi (-fcheck-pointer-bounds): Copy-edit, add | |
7239 | additional index entries and cross-references. | |
7240 | (-fchkp-check-incomplete-type): Likewise. | |
7241 | (-fchkp-first-field-has-own-bounds): Likewise. | |
7242 | (-fchkp-narrow-to-innermost-array): Likewise. | |
7243 | (-fchkp-use-fast-string-functions): Likewise. | |
7244 | (-fchkp-use-nochk-string-functions): Likewise. | |
7245 | (-fchkp-use-static-const-bounds): Likewise. | |
7246 | (-fchkp-treat-zero-dynamic-size-as-infinite): Likewise. | |
7247 | (-fchkp-instrument-marked-only): Likewise. | |
7248 | (-fchkp-use-wrappers): Likewise. | |
7249 | (-static-libmpx): Likewise. | |
7250 | (-static-libmpxwrappers): Likewise. | |
7251 | * doc/extend.texi (bnd_legacy): Likewise. | |
7252 | (bnd_instrument): Likewise. | |
7253 | (bnd_variable_size): Likewise. | |
7254 | (Pointer Bounds Checker builtins): Likewise. | |
7255 | ||
66460ec1 | 7256 | 2015-03-21 Tom de Vries <tom@codesourcery.com> |
7257 | ||
7258 | PR tree-optimization/65458 | |
7259 | * cgraph.c (cgraph_node::dump): Handle parallelized_function field. | |
7260 | * cgraph.h (cgraph_node): Add parallelized_function field. | |
7261 | * lto-cgraph.c (lto_output_node): Write parallelized_function field. | |
7262 | (input_overwrite_node): Read parallelized_function field. | |
7263 | * omp-low.c (expand_omp_taskreg, finalize_task_copyfn): Set | |
7264 | parallelized_function on cgraph_node for child_fn. | |
7265 | * tree-parloops.c: Add include of plugin-api.h, ipa-ref.h and cgraph.h. | |
7266 | Remove include of gt-tree-parloops.h. | |
7267 | (parallelized_functions): Remove static variable. | |
7268 | (parallelized_function_p): Rewrite using parallelized_function field of | |
7269 | cgraph_node. | |
7270 | (create_loop_fn): Remove adding to parallelized_functions. | |
7271 | * Makefile.in (GTFILES): Remove tree-parloops.c | |
7272 | ||
70ae5dc6 | 7273 | 2015-03-20 Vladimir Makarov <vmakarov@redhat.com> |
7274 | ||
7275 | PR rtl-optimization/64366 | |
7276 | * lra.c (lra_update_insn_regno_info): Consider regs in | |
7277 | CALL_INSN_FUNCTION_USAGE memory. | |
7278 | ||
24a12d10 | 7279 | 2015-03-20 Richard Biener <rguenther@suse.de> |
7280 | ||
7281 | PR middle-end/64715 | |
7282 | * tree-chrec.c (chrec_fold_poly_cst): Use useless_type_conversion_p | |
7283 | for type comparison and gcc_checking_assert. | |
7284 | (chrec_fold_plus_poly_poly): Likewise. | |
7285 | (chrec_fold_multiply_poly_poly): Likewise. | |
7286 | (chrec_convert_1): Likewise. | |
7287 | * gimplify.c (gimplify_expr): Remove premature folding of | |
7288 | &X + CST to &MEM[&X, CST]. | |
7289 | ||
0f3771a4 | 7290 | 2015-03-20 Jan Hubicka <hubicka@ucw.cz> |
7291 | ||
7292 | * ipa-inline.c (can_inline_edge_p): Short circuit if inline_failed | |
7293 | already is final. | |
7294 | (ipa_inline): Recompute inline_failed codes. | |
7295 | * cif-code.def (FUNCTION_NOT_OPTIMIZED, REDEFINED_EXTERN_INLINE, | |
ca0a430a | 7296 | USES_COMDAT_LOCAL, ATTRIBUTE_MISMATCH, UNREACHABLE): Declare as |
0f3771a4 | 7297 | CIF_FINAL_ERROR. |
7298 | ||
6805b310 | 7299 | 2015-03-20 Uros Bizjak <ubizjak@gmail.com> |
7300 | ||
7301 | PR rtl-optimization/60851 | |
7302 | * recog.c (constrain_operands): Accept a pseudo register before reload | |
7303 | for LRA enabled targets. | |
7304 | ||
2d5ee2b9 | 7305 | 2015-03-19 Michael Meissner <meissner@linux.vnet.ibm.com> |
7306 | ||
7307 | PR target/65240 | |
7308 | * config/rs6000/predicates.md (easy_fp_constant): Remove special | |
7309 | -ffast-math handling that kept non-0 constants live in the RTL | |
7310 | until reload. Remove logic testing the number of instructions it | |
7311 | took to create a constant in a GPR that was never used, due to a | |
7312 | test for soft-float earlier. | |
7313 | (memory_fp_constant): Delete, no longer used. | |
7314 | ||
7315 | * config/rs6000/rs6000.md (mov<MODE>_hardfloat): Remove | |
7316 | alternatives for loading non-0 constants into GPRs for hard | |
7317 | floating point that is no longer needed due to changes in | |
7318 | easy_fp_constant. Add support for loading 0.0 into GPRs. | |
7319 | (mov<mode>_hardfloat32): Likewise. | |
7320 | (mov<mode>_hardfloat64): Likewise. | |
7321 | (mov<mode>_64bit_dm): Likewise. | |
7322 | (movtd_64bit_nodm): Likewise. | |
7323 | (pre-reload move FP constant define_split): Delete define_split, | |
7324 | since it is no longer used. | |
7325 | (extenddftf2_internal): Remove GHF constraints that are not valid | |
7326 | for extenddftf2. | |
7327 | ||
b6c42921 | 7328 | 2015-03-19 Vladimir Makarov <vmakarov@redhat.com> |
7329 | ||
7330 | PR rtl-optimization/63491 | |
7331 | * lra-constraints.c (check_and_process_move): Use src instead of | |
7332 | sreg. Remove some dead code. | |
7333 | ||
bfdab17d | 7334 | 2015-03-19 Jan Hubicka <hubicka@ucw.cz> |
7335 | ||
7336 | PR ipa/65380 | |
7337 | * ipa-icf.c (sem_function::merge): Do not merge DECL_EXTERNAL symbols. | |
7338 | (sem_variable::merge): Likewise. | |
7339 | ||
50671005 | 7340 | 2015-03-19 Martin Liska <mliska@suse.cz> |
7341 | ||
7342 | PR ipa/65465 | |
7343 | * cgraphunit.c (cgraph_node::create_wrapper): Correctly reset | |
7344 | all fields of cgraph_thunk_info. | |
7345 | ||
ac553c65 | 7346 | 2015-03-19 Ilya Enkovich <ilya.enkovich@intel.com> |
7347 | ||
7348 | * ipa-chkp.c (chkp_maybe_create_clone): Don't try to | |
7349 | clone instrumented thunks. | |
7350 | ||
89e4e54e | 7351 | 2015-03-19 Richard Biener <rguenther@suse.de> |
7352 | ||
7353 | Revert | |
7354 | 2015-03-10 Richard Biener <rguenther@suse.de> | |
7355 | ||
7356 | PR middle-end/63155 | |
7357 | * tree-ssa-coalesce.h (verify_ssa_coalescing): Declare. | |
7358 | * tree-ssa-coalesce.c: Include timevar.h. | |
7359 | (attempt_coalesce): Handle graph being NULL. | |
7360 | (coalesce_partitions): Call verify_ssa_coalescing if ENABLE_CHECKING. | |
7361 | Split out abnormal coalescing to ... | |
7362 | (perform_abnormal_coalescing): ... this function. | |
7363 | (coalesce_ssa_name): Perform abnormal coalescing without computing | |
7364 | live/conflict. | |
7365 | (verify_ssa_coalescing_worker): New function. | |
7366 | (verify_ssa_coalescing): Likewise. | |
7367 | ||
a691030f | 7368 | 2015-03-19 Bernd Edlinger <bernd.edlinger@hotmail.de> |
7369 | Jakub Jelinek <jakub@redhat.com> | |
7370 | ||
7371 | PR sanitizer/65400 | |
7372 | * tsan.c (instrument_gimple): Clear tail call flag on | |
7373 | calls. | |
7374 | ||
a63cfc4d | 7375 | 2015-03-19 Jakub Jelinek <jakub@redhat.com> |
7376 | ||
7377 | PR sanitizer/65400 | |
7378 | * ipa-split.c (find_return_bb): Allow TSAN_FUNC_EXIT internal | |
7379 | call in the return bb. | |
7380 | (find_split_points): Add RETURN_BB argument, don't call | |
7381 | find_return_bb. | |
7382 | (split_function): Likewise. Add ADD_TSAN_FUNC_EXIT argument, | |
7383 | if true append TSAN_FUNC_EXIT internal call after the call to | |
7384 | the split off function. | |
7385 | (execute_split_functions): Call find_return_bb here. | |
7386 | Don't optimize if TSAN_FUNC_EXIT is found in unexpected places. | |
7387 | Adjust find_split_points and split_function calls. | |
7388 | ||
86697850 | 7389 | 2015-03-18 DJ Delorie <dj@redhat.com> |
b6c42921 | 7390 | |
86697850 | 7391 | * config/rl78/rl78-virt.md (andqi3_virt): Allow far operands. |
7392 | (iorqi3_virt): Likewise. | |
7393 | ||
4abc36e8 | 7394 | 2015-03-18 Tom de Vries <tom@codesourcery.com> |
7395 | ||
7396 | * tree-parloops.c (parallelize_loops): Make static. | |
7397 | * tree-parloops.h (parallelize_loops): Remove extern declaration. | |
7398 | ||
648877c4 | 7399 | 2015-03-18 Andrew Stubbs <ams@codesourcery.com> |
7400 | ||
7401 | PR middle-end/64491 | |
7402 | Revert: | |
7403 | 2014-11-20 Andrew Stubbs <ams@codesourcery.com> | |
7404 | ||
7405 | * tree-ssa-loop-niter.c (maybe_lower_iteration_bound): Warn if a loop | |
7406 | condition would be removed due to undefined behaviour. | |
7407 | ||
a5258856 | 7408 | 2015-03-18 Martin Liska <mliska@suse.cz> |
7409 | ||
7410 | PR ipa/65432 | |
7411 | * cgraph.c (cgraph_node::get_create): Remove unnecessary | |
7412 | xstrdup_for_dump wrapper. | |
7413 | * ipa-icf.c (sem_item::dump): Use symtab_node::name instead of | |
7414 | sem_item::name. | |
7415 | (sem_function::equals): Wrap symtab_node::name and symtab_node::asm_name | |
7416 | with xstrdup_for_dump. | |
7417 | (sem_variable::equals): Likewise. | |
7418 | (sem_item_optimizer::read_section): Use symtab_node::name instead of | |
7419 | sem_item::name. | |
7420 | (sem_item_optimizer::parse_funcs_and_vars): Likewise. | |
7421 | (sem_item_optimizer::merge_classes): Wrap symtab_node::name and | |
7422 | symtab_node::asm_name with xstrdup_for_dump. | |
7423 | (congruence_class::dump): Use symtab_node::name instead of | |
7424 | sem_item::name. | |
7425 | * ipa-icf.h (symtab_node::name): Remove. | |
7426 | (symtab_node::asm_name): Likewise. | |
7427 | ||
5b01b2c1 | 7428 | 2015-03-18 Jakub Jelinek <jakub@redhat.com> |
7429 | ||
4a2edd22 | 7430 | PR tree-optimization/65450 |
7431 | * tree-vect-data-refs.c (vect_duplicate_ssa_name_ptr_info): New | |
7432 | function. | |
7433 | (vect_create_addr_base_for_vector_ref, vect_create_data_ref_ptr): Use | |
7434 | it instead of duplicate_ssa_name_ptr_info. | |
7435 | ||
5b01b2c1 | 7436 | PR target/65222 |
7437 | * doc/invoke.texi: Add knl as x86 -march=/-mtune= CPU type. | |
7438 | ||
eb352584 | 7439 | 2015-03-18 Richard Biener <rguenther@suse.de> |
7440 | ||
7441 | * tree-data-ref.h (struct access_matrix): Remove. | |
7442 | (AM_LOOP_NEST, AM_NB_INDUCTION_VARS, AM_PARAMETERS, AM_MATRIX, | |
7443 | AM_NB_PARAMETERS, AM_CONST_COLUMN_INDEX, AM_NB_COLUMNS, | |
7444 | AM_GET_SUBSCRIPT_ACCESS_VECTOR, AM_GET_ACCESS_MATRIX_ELEMENT): Likewise. | |
7445 | (am_vector_index_for_loop): Likewise. | |
7446 | (struct data_reference): Remove access_matrix member. | |
7447 | (DR_ACCESS_MATRIX): Remove. | |
7448 | (lambda_vector_new): Add comment. | |
7449 | (lambda_matrix_new): Use XOBNEWVEC. | |
7450 | ||
051d7389 | 7451 | 2015-03-18 Richard Biener <rguenther@suse.de> |
7452 | ||
7453 | * tree-ssa-loop-ch.c (pass_data_ch): Remove TODO_cleanup_cfg. | |
7454 | (pass_ch::execute): Cleanup the CFG only if we did sth. | |
7455 | * tree-vect-generic.c (pass_data_lower_vector): Remove TODO_cleanup_cfg. | |
7456 | ||
68eaff07 | 7457 | 2015-03-18 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
7458 | ||
7459 | * expmed.c (synth_mult): Use std::swap instead of manually | |
7460 | swapping algorithms. | |
7461 | ||
f02daedb | 7462 | 2015-03-18 Jakub Jelinek <jakub@redhat.com> |
7463 | ||
7464 | PR target/65078 | |
7465 | * config/i386/sse.md (movsi/movdi -> vec_extract_*_0 splitter): New. | |
7466 | ||
22e771f8 | 7467 | 2015-03-16 Georg-Johann Lay <avr@gjlay.de> |
7468 | ||
7469 | PR target/65296 | |
7470 | * config/avr/avr.opt (-nodevicelib): New option. | |
7471 | * doc/invoke.texi (AVR Options): Document it. | |
7472 | * config/avr/avrlibc.h (LIB_SPEC, LIBGCC_SPEC) [avr1]: Don't link | |
7473 | libgcc.a, libc.a, libm.a. | |
7474 | * config/avr/specs.h: Same. | |
7475 | * config/avr/gen-avr-mmcu-specs.c (print_mcu): Don't print specs | |
7476 | which don't (directly) depend on the device. Print more help. | |
7477 | (*avrlibc_devicelib) [-nodevicelib]: Don't link libdev.a. | |
7478 | (*cpp): Don't define __AVR_DEV_LIB_NAME__. | |
7479 | * config/avr/driver-avr.c: Remove -nodevicelib from option list in | |
7480 | case of an error. | |
7481 | (avr_devicespecs_file): Use suffix "%s" instead of absolute path | |
7482 | for specs file name. | |
7483 | * config/avr/avr-arch.h (avr_mcu_t) [.library_name]: Remove. | |
7484 | * config/avr/avr-mcus.def: Adjust initializers and comments. | |
7485 | ||
7037b790 | 7486 | 2015-03-16 Jan Hubicka <hubicka@ucw.cz> |
7487 | ||
7488 | * tree-sra.c (ipa_sra_preliminary_function_checks): Use | |
7489 | DECL_ONE_ONLY to check if decl is one only. | |
7490 | * ipa-split.c (consider_split): Limit splitt of one only functions. | |
7491 | ||
7e64a875 | 7492 | 2015-03-16 Jakub Jelinek <jakub@redhat.com> |
7493 | ||
7494 | PR tree-optimization/65427 | |
7495 | * tree-vect-generic.c (do_cond, expand_vector_scalar_condition): New | |
7496 | functions. | |
7497 | (expand_vector_operations_1): Handle BLKmode vector COND_EXPR. | |
7498 | ||
36795c14 | 7499 | 2015-03-16 Marek Polacek <polacek@redhat.com> |
7500 | ||
7501 | * cgraph.h (add_new_static_var): Remove declaration. | |
7502 | * varpool.c (add_new_static_var): Remove function. | |
7503 | ||
42d49354 | 7504 | 2015-03-16 Jakub Jelinek <jakub@redhat.com> |
7505 | ||
02c05c9b | 7506 | * omp-low.c (expand_omp_target): Use auto_vec<tree, 11> |
7507 | instead of vec<tree> * with vec_alloc and release for args. | |
7508 | Adjust all users. | |
7509 | ||
42d49354 | 7510 | PR middle-end/65431 |
7511 | * omp-low.c (delete_omp_context): Only splay_tree_delete | |
7512 | reduction_map in GIMPLE_OMP_TARGET is_gimple_omp_offloaded | |
7513 | is_gimple_omp_oacc contexts. Don't look at ctx->outer. | |
7514 | ||
9dbe51a9 | 7515 | 2015-03-16 Max Ostapenko <m.ostapenko@partner.samsung.com> |
7516 | ||
7517 | PR sanitizer/64820 | |
7518 | * cfgexpand.c (align_base): New function. | |
7519 | (alloc_stack_frame_space): Call it. | |
7520 | (expand_stack_vars): Align prev_frame to be sure | |
7521 | data->asan_vec elements aligned properly. | |
7522 | ||
7081e928 | 7523 | 2015-03-16 Eric Botcazou <ebotcazou@adacore.com> |
7524 | ||
7525 | PR middle-end/65409 | |
7526 | * expr.c (store_field): Do not do a direct block copy if the source is | |
7527 | a PARALLEL with BLKmode. | |
7528 | ||
dcfa9a69 | 7529 | 2015-03-16 Tom de Vries <tom@codesourcery.com> |
7530 | ||
7531 | PR middle-end/65414 | |
7532 | Revert: | |
7533 | 2015-03-12 Tom de Vries <tom@codesourcery.com> | |
7534 | ||
7535 | PR rtl-optimization/64895 | |
7536 | * lra-lives.c (check_pseudos_live_through_calls): Use | |
7537 | actual_call_used_reg_set instead of call_used_reg_set, if available. | |
7538 | ||
cc12a806 | 7539 | 2015-03-16 Alan Modra <amodra@gmail.com> |
7540 | ||
7541 | PR target/63150 | |
7542 | * config/rs6000/rs6000.md (bswapdi2): Remove one scratch reg. | |
7543 | Modify Z->r bswapdi splitter to use dest in place of scratch. | |
7544 | In r->Z and Z->r bswapdi splitter rename word_high, word_low | |
7545 | to word1, word2 and rearrange logic to suit. | |
7546 | (bswapdi2_64bit): Remove early clobber on Z->r alternative. | |
7547 | (bswapdi2_ldbrx): Likewise. Remove '??' on r->r. | |
7548 | (bswapdi2_32bit): Remove early clobber on Z->r alternative. | |
7549 | Add one '?' on r->r. Modify Z->r splitter to avoid need for | |
7550 | early clobber. | |
7551 | ||
fcbc75fb | 7552 | 2015-03-14 Jakub Jelinek <jakub@redhat.com> |
7553 | ||
c6d23cfc | 7554 | PR tree-optimization/65369 |
7555 | * tree-vect-stmts.c (vectorizable_load) <case dr_explicit_realign>: | |
7556 | Set bump to vs * TYPE_SIZE_UNIT (elem_type) - 1 instead of | |
7557 | (vs - 1) * TYPE_SIZE_UNIT (elem_type). | |
7558 | ||
f6835415 | 7559 | PR tree-optimization/65418 |
7560 | * tree-ssa-reassoc.c (extract_bit_test_mask): If there | |
7561 | are casts in the first PLUS_EXPR operand, ensure tbias and | |
7562 | *totallowp are in the inner type. | |
7563 | ||
fcbc75fb | 7564 | PR rtl-optimization/65401 |
7565 | * combine.c (rtx_equal_for_field_assignment_p): Add widen_x | |
7566 | argument. If true, adjust_address_nv of x with big-endian | |
7567 | correction for the mode widening to GET_MODE (y). | |
7568 | (make_field_assignment): Don't do MEM mode widening here. | |
7569 | Use MEM_P instead of GET_CODE == MEM. | |
7570 | ||
69409999 | 7571 | 2015-03-13 Ilya Verbin <ilya.verbin@intel.com> |
7572 | ||
7573 | * varpool.c (varpool_node::get_create): Don't set 'offloadable' flag for | |
7574 | the external decls. | |
7575 | ||
a76dc189 | 7576 | 2015-03-13 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
7577 | ||
7578 | PR target/64600 | |
7579 | * config/arm/arm.c (arm_gen_constant, AND case): Use | |
7580 | ARM_SIGN_EXTEND when constructing AND mask. | |
7581 | ||
dccaa1c0 | 7582 | 2015-03-13 Thomas Preud'homme <thomas.preudhomme@arm.com> |
7583 | ||
7584 | * graph.c (print_graph_cfg): Make function names visible and append | |
7585 | parenthesis to it. Also make groups of basic blocks belonging to the | |
7586 | same function visible. | |
7587 | ||
98b2c85f | 7588 | 2015-03-12 Richard Biener <rguenther@suse.de> |
7589 | ||
7590 | PR middle-end/44563 | |
7591 | * tree-inline.c (gimple_expand_calls_inline): Walk BB backwards | |
7592 | to avoid quadratic behavior with inline expansion splitting blocks. | |
7593 | * tree-cfgcleanup.c (cleanup_tree_cfg_bb): Do not merge block | |
7594 | with the successor if the predecessor will be merged with it. | |
7595 | * tree-cfg.c (gimple_can_merge_blocks_p): We can't merge the | |
7596 | entry block with its successor. | |
7597 | ||
25959a39 | 7598 | 2015-03-13 Richard Biener <rguenther@suse.de> |
7599 | ||
7600 | PR middle-end/44563 | |
7601 | * tree-cfgcleanup.c (split_bb_on_noreturn_calls): Remove. | |
7602 | (cleanup_tree_cfg_1): Do not call it. | |
7603 | (execute_cleanup_cfg_post_optimizing): Fixup the CFG here. | |
7604 | (fixup_noreturn_call): Mark the stmt as control altering. | |
7605 | * tree-cfg.c (execute_fixup_cfg): Do not dump the function | |
7606 | here. | |
7607 | (pass_data_fixup_cfg): Produce a dump file. | |
7608 | * tree-ssa-dom.c: Include tree-cfgcleanup.h. | |
7609 | (need_noreturn_fixup): New global. | |
7610 | (pass_dominator::execute): Fixup queued noreturn calls. | |
7611 | (optimize_stmt): Queue calls that became noreturn for fixup. | |
7612 | * tree-ssa-forwprop.c (pass_forwprop::execute): Likewise. | |
7613 | * tree-ssa-pre.c: Include tree-cfgcleanup.h. | |
7614 | (el_to_fixup): New global. | |
7615 | (eliminate_dom_walker::before_dom_childre): Queue calls that | |
7616 | became noreturn for fixup. | |
7617 | (eliminate): Fixup queued noreturn calls. | |
7618 | * tree-ssa-propagate.c: Include tree-cfgcleanup.h. | |
7619 | (substitute_and_fold_dom_walker): New member stmts_to_fixup. | |
7620 | (substitute_and_fold_dom_walker::before_dom_children): Queue | |
7621 | alls that became noreturn for fixup. | |
7622 | (substitute_and_fold): Fixup queued noreturn calls. | |
7623 | ||
9f27b0ca | 7624 | 2015-03-12 Jan Hubicka <hubicka@ucw.cz> |
7625 | ||
7626 | * ipa-icf.c (sem_function::equals_wpa): Match CXX_CONSTRUCTOR_P | |
7627 | and CXX_DESTURCTOR_P. For consutrctors match ODR type of class they | |
7628 | are building; for methods check ODR type of class they belong to if | |
7629 | they may lead to a polymorphic call. | |
7630 | (sem_function::compare_polymorphic_p): Be bit smarter about testing | |
7631 | when function may lead to a polymorphic call. | |
7632 | (sem_function::compare_type_list): Remove. | |
7633 | (sem_variable::equals): Update use of compatible_types_p. | |
7634 | (sem_variable::parse_tree_refs): Remove. | |
7635 | (sem_item_optimizer::filter_removed_items): Do not filter out CXX | |
7636 | cdtor. | |
7637 | * ipa-icf-gimple.c (func_checker::compare_decl): Do polymorphic | |
7638 | matching here. | |
7639 | (func_checker::compatible_polymorphic_types_p): Break out from ... | |
7640 | (unc_checker::compatible_types_p): ... here. | |
7641 | * ipa-icf-gimple.h (func_checker::compatible_polymorphic_types_p): | |
7642 | Declare. | |
7643 | (unc_checker::compatible_types_p): Update. | |
7644 | * ipa-icf.h (compare_type_list, parse_tree_refs, compare_sections): | |
7645 | Remove. | |
7646 | ||
806052ba | 7647 | 2015-03-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
7648 | ||
f76d5810 | 7649 | PR rtl-optimization/65235 |
806052ba | 7650 | * simplify-rtx.c (simplify_binary_operation_1, VEC_SELECT case): |
7651 | When first element of vec_concat is const_int, calculate its size | |
7652 | using second element. | |
7653 | ||
7386c9d6 | 7654 | 2015-03-12 Richard Biener <rguenther@suse.de> |
7655 | ||
7656 | PR middle-end/65270 | |
7657 | * fold-const.c (operand_equal_p): Fix ordering of resetting | |
7658 | OEP_ADDRESS_OF and checking for it in the [TARGET_]MEM_REF case. | |
7659 | ||
f4252e72 | 7660 | 2015-03-12 Dominik Vogt <vogt@linux.vnet.ibm.com> |
7661 | ||
7662 | * config/s390/s390.c (s390_reorg): Move code to output nops after label | |
7663 | to s390_reorg (). | |
7664 | (s390_asm_output_function_label): Likewise. | |
7665 | * config/s390/s390.c (s390_asm_output_function_label): | |
7666 | Fix function label alignment with -mhtopatch. | |
7667 | * config/s390/s390.md ("unspecv"): New values UNSPECV_NOP_2_BYTE, | |
7668 | UNSPECV_NOP_4_BYTE and UNSPECV_NOP_6_BYTE | |
7669 | ("nop_2_byte"): New define_insn. | |
7670 | ("nop_4_byte"): Likewise. | |
7671 | ("nop_6_byte"): Likewise. | |
7672 | * doc/extend.texi (hotpatch): hotpatch attribute doc fixes. | |
7673 | * doc/invoke.texi (-mhotpatch): -mhotpatch doc fixes. | |
7674 | ||
b7b4b66a | 7675 | 2015-03-12 Ilya Enkovich <ilya.enkovich@intel.com> |
7676 | ||
7677 | PR target/65103 | |
7678 | * config/i386/i386.c (ix86_address_cost): Fix cost of a PIC | |
7679 | register. | |
7680 | ||
a67b9438 | 7681 | 2015-03-12 Ilya Enkovich <ilya.enkovich@intel.com> |
7682 | ||
7683 | PR target/65044 | |
7684 | * toplev.c (process_options): Restrict Pointer Bounds Checker | |
7685 | usage with Address Sanitizer. | |
7686 | ||
923635e7 | 7687 | 2015-03-12 Richard Biener <rguenther@suse.de> |
7688 | ||
7689 | * tree-cfg.c (gimple_split_block): Remove loop finding stmt | |
7690 | to split on. | |
7691 | * omp-low.c (expand_omp_taskreg): Split block before removing | |
7692 | the stmt. | |
7693 | (expand_omp_target): Likewise. | |
7694 | * ubsan.c (ubsan_expand_null_ifn): Adjust stmt if we replaced it. | |
7695 | * tree-parloops.c (create_call_for_reduction_1): Pass a proper | |
7696 | stmt to split_block. | |
7697 | ||
e2a16b91 | 7698 | 2015-03-12 Tom de Vries <tom@codesourcery.com> |
7699 | ||
0b7e41c0 | 7700 | PR rtl-optimization/64895 |
e2a16b91 | 7701 | * lra-lives.c (check_pseudos_live_through_calls): Use |
7702 | actual_call_used_reg_set instead of call_used_reg_set, if available. | |
7703 | ||
e9e2b82f | 7704 | 2015-03-10 Jan Hubicka <hubicka@ucw.cz> |
7705 | ||
7706 | * cgraph.c (cgraph_node::release_body): Free function_in_decl_state. | |
7707 | (cgraph_node::remove): Likewise. | |
7708 | (cgraph_node::get_untransformed_body): Likewise. | |
7709 | * varpool.c (varpool_node::remove): Likewise. | |
7710 | (varpool_node::get_constructor): Add sanity check. | |
7711 | ||
312da1e0 | 7712 | 2015-03-11 Sandra Loosemore <sandra@codesourcery.com> |
7713 | ||
c6e5fbeb | 7714 | * doc/invoke.texi (-fgnu89-inline): Remove discussion about |
312da1e0 | 7715 | old GCC versions. |
7716 | (-fabi-compat-version): Likewise. | |
7717 | (-ffriend-injection): Likewise. | |
7718 | (-Wdeclaration-after-statement): Likewise. | |
7719 | (-fomit-frame-pointer): Likewise. | |
7720 | (-ftree-coalesce-inlined-vars): Likewise. | |
7721 | (-fvisibility=): Likewise. | |
7722 | * doc/extend.texi (Typeof): Likewise. | |
7723 | (Zero Length): Likewise. | |
7724 | (Escaped Newlines): Likewise. | |
7725 | (Compound Literals): Likewise. | |
7726 | (Function Attributes): Likewise. | |
7727 | (Label Attributes): Likewise. | |
7728 | (Type Attributes): Likewise. | |
7729 | (Function Names): Likewise. | |
7730 | (Other Builtins): Likewise. | |
7731 | (Function Specific Option Pragmas): Likewise. | |
7732 | (C++ Interface): Likewise. | |
7733 | ||
5121139d | 7734 | 2015-03-11 Thomas Schwinge <thomas@codesourcery.com> |
7735 | ||
7736 | * config/nvptx/nvptx.h (LIBSTDCXX): Define to "gcc". | |
7737 | ||
fd2e7f43 | 7738 | 2015-03-11 Marek Polacek <polacek@redhat.com> |
7739 | ||
7740 | PR tree-optimization/65388 | |
7741 | * tree-ssa-tail-merge.c (same_succ_def::equal): Fix typo in comparison. | |
7742 | ||
fb51f994 | 7743 | 2015-03-10 Georg-Johann Lay <avr@gjlay.de> |
7744 | ||
7745 | PR target/65296 | |
7746 | * configure.ac [avr]: Check as for options -mrmw, --mlink-relax. | |
7747 | * configure: Regenerate. | |
7748 | * config.in: Regenerate. | |
7749 | * doc/invoke.texi (AVR Options) [-mrmw]: Document it. | |
7750 | [-mn-flash]: Document it. | |
7751 | [__AVR_ARCH__]: Document avrtiny. | |
7752 | ||
7753 | * config/avr/gen-avr-mmcu-specs.c (config.h): Include it. | |
7754 | (*asm_relax): Only define spec if HAVE_AS_AVR_MLINK_RELAX_OPTION. | |
7755 | (*asm_rmw): Only define spec if HAVE_AS_AVR_MRMW_OPTION. | |
7756 | ||
1255ea46 | 7757 | 2015-03-11 Andreas Krebbel <krebbel@linux.vnet.ibm.com> |
7758 | ||
7759 | * doc/invoke.texi: Add missing cpu values (z196, zEC12). | |
7760 | ||
622a20e1 | 7761 | 2015-03-11 Michael Meissner <meissner@linux.vnet.ibm.com> |
7762 | ||
7763 | PR target/65242 | |
7764 | * config/rs6000/rs6000.c (rs6000_preferred_reload_class): Do not | |
7765 | allow reloads of PLUS in floating point/VSX registers. | |
7766 | ||
751e044a | 7767 | 2015-03-11 Junmo Park <junmoz.park@samsung.com> |
7768 | ||
c6e5fbeb | 7769 | * config/arm/cortex-a57.md (cortex_a57_crypto_simple): Add |
7770 | crypto_sha256_fast. | |
751e044a | 7771 | (cortex_a57_crypto_complex): Add crypto_sha256_slow. |
7772 | ||
3596bc87 | 7773 | 2015-03-11 Richard Biener <rguenther@suse.de> |
7774 | ||
7775 | PR tree-optimization/65310 | |
7776 | * tree-sra.c (build_ref_for_offset): Also preserve larger | |
7777 | alignment. | |
7778 | ||
a99c832c | 7779 | 2015-03-11 Marat Zakirov <m.zakirov@samsung.com> |
7780 | ||
7781 | * asan.c (instrument_derefs): Disable instrumentation on asan-globals=0. | |
7782 | ||
0b42191e | 7783 | 2015-03-10 Jakub Jelinek <jakub@redhat.com> |
7784 | ||
7785 | PR target/65368 | |
7786 | * config/i386/i386.md (bmi2_bzhi_<mode>3): Removed define_insn, | |
7787 | new define_expand. | |
7788 | (*bmi2_bzhi_<mode>3, *bmi2_bzhi_<mode>3_1): New define_insns. | |
7789 | ||
5642ef7d | 7790 | 2015-03-10 Jan Hubicka <hubicka@ucw.cz> |
7791 | ||
c6e5fbeb | 7792 | * ipa-icf.c (sem_function::equals_wpa): Move here some checks from ... |
5642ef7d | 7793 | (sem_function::equals_wpa): ... here. |
7794 | ||
57583407 | 7795 | 2015-03-10 Marek Polacek <polacek@redhat.com> |
7796 | Jakub Jelinek <jakub@redhat.com> | |
7797 | ||
7798 | PR sanitizer/65367 | |
7799 | * ubsan.c (ubsan_expand_objsize_ifn): Update GSI instead of GSI_ORIG | |
7800 | when only removing the statement. Handle expanding UBSAN_OBJECT_SIZE | |
7801 | separately. | |
7802 | ||
2a13bc53 | 7803 | 2015-03-10 Jakub Jelinek <jakub@redhat.com> |
7804 | ||
7805 | PR target/65286 | |
7806 | * config/rs6000/t-linux: For powerpc64* target set | |
7807 | MULTILIB_OSDIRNAMES instead of MULTIARCH_DIRNAME. | |
7808 | ||
dbe7d25a | 7809 | 2015-03-10 Richard Biener <rguenther@suse.de> |
7810 | ||
7811 | PR middle-end/44563 | |
7812 | * tree-inline.c (copy_cfg_body): Skip block mapped to entry/exit | |
7813 | for redirect_all_calls. | |
7814 | ||
645cec52 | 7815 | 2015-03-10 Marek Polacek <polacek@redhat.com> |
7816 | ||
7817 | * gdbinit.in (pcfun): Define and document. | |
7818 | ||
f48d38ba | 7819 | 2015-03-10 Ilya Verbin <ilya.verbin@intel.com> |
7820 | ||
7821 | * config/i386/intelmic-mkoffload.c: Include intelmic-offload.h instead | |
7822 | of libgomp-plugin.h. | |
c6e5fbeb | 7823 | (find_target_compiler): Support a case when the path to gcc is |
7824 | specified in the PATH env var, so COLLECT_GCC doesn't contain a path. | |
f48d38ba | 7825 | (generate_host_descr_file): Use GOMP_DEVICE_INTEL_MIC from |
7826 | intelmic-offload.h instead of OFFLOAD_TARGET_TYPE_INTEL_MIC from | |
7827 | libgomp-plugin.h. | |
7828 | (main): Use GCC_INSTALL_NAME as target_driver_name. | |
7829 | * config/i386/t-intelmic (CFLAGS-mkoffload.o): Add GCC_INSTALL_NAME | |
7830 | define. | |
7831 | (mkoffload.o): Remove obsolete include path and defines. | |
7832 | (mkoffload$(exeext)): Use $(LINKER) instead of $(COMPILER). | |
7833 | ||
f1b7081b | 7834 | 2015-03-10 Richard Biener <rguenther@suse.de> |
7835 | ||
7836 | PR middle-end/63155 | |
7837 | * tree-ssa-coalesce.h (verify_ssa_coalescing): Declare. | |
7838 | * tree-ssa-coalesce.c: Include timevar.h. | |
7839 | (attempt_coalesce): Handle graph being NULL. | |
7840 | (coalesce_partitions): Call verify_ssa_coalescing if ENABLE_CHECKING. | |
7841 | Split out abnormal coalescing to ... | |
7842 | (perform_abnormal_coalescing): ... this function. | |
7843 | (coalesce_ssa_name): Perform abnormal coalescing without computing | |
7844 | live/conflict. | |
7845 | (verify_ssa_coalescing_worker): New function. | |
7846 | (verify_ssa_coalescing): Likewise. | |
7847 | ||
f0aa7fe2 | 7848 | 2015-03-10 Georg-Johann Lay <avr@gjlay.de> |
7849 | ||
7850 | PR target/65296 | |
7851 | * config.gcc (extra_options) [avr]: Remove. | |
7852 | (extra_gcc_objs) [avr]: Use driver-avr.o, avr-devices.o. | |
7853 | (tm_file) [avr]: Add avr/specs.h after avr/avr.h. | |
7854 | (tm_defines) [avr-*-rtems*]: Add WITH_RTEMS. | |
7855 | ||
7856 | * config/avr/avr.opt (config/avr/avr-arch.h): Remove include. | |
7857 | (-mmcu=): Add Var and MissingArgError properties. | |
7858 | (-march=): Remove. | |
7859 | * config/avr/genmultilib.awk: Use -mmcu= instead of -march=. | |
7860 | * config/avr/t-multilib: Regenerate. | |
7861 | * config/avr/specs.h: New file. | |
7862 | * config/avr/driver-avr.c: New file. | |
7863 | * config/avr/genopt.sh: Remove file. | |
7864 | * config/avr/avr-tables.opt: Remove file. | |
7865 | * config/avr/predicates.md (avr_current_arch): Rename to avr_arch. | |
7866 | * config/avr/avr-c.c: Same. | |
7867 | * avr-arch.h: Same. | |
7868 | (avr_current_device): Remove proto. | |
7869 | * config/avr/avr.h (avr_current_arch): Rename to avr_arch. | |
7870 | (AVR_HAVE_8BIT_SP): Don't depend on avr_current_device. | |
7871 | (EXTRA_SPEC_FUNCTIONS): Define. | |
7872 | (avr_devicespecs_file): New specs function proto. | |
7873 | (DRIVER_SELF_SPECS): Use device-specs-file spec function. | |
7874 | * config/avr/avr.c (avr_current_arch): Rename to avr_arch. | |
40ef495a | 7875 | (avr_current_device): Remove definition and usage. |
f0aa7fe2 | 7876 | (avr_set_core_architecture): New static function. |
7877 | (avr_option_override): Use it. | |
7878 | * config/avr/avr-devices.c (diagnostic.h, avr-arch.h): Include them. | |
7879 | (mcu_name): New static array. | |
7880 | (comparator, avr_archs_str, avr_mcus_str): New static functions. | |
7881 | (avr_inform_devices, avr_inform_core_architectures): New functions. | |
7882 | * config/avr/gen-avr-mmcu-specs.c (avr-arch.h, specs.h): Include. | |
7883 | (avrlibc.h) [WITH_AVRLIBC]: Include. | |
7884 | (../rtems.h, rtems.h) [WITH_RTEMS]: Include. | |
7885 | (print_mcu): Rewrite from scratch. | |
7886 | * config/avr/avrlibc.h (LIB_SPEC, LIBGCC_SPEC, STARTFILE_SPEC): | |
7887 | Forward to avr-specific specs defined in device-specs file. | |
7888 | * config/avr/t-avr (driver-avr.o): New rule. | |
7889 | (avr-devices.o): Depend on avr-arch.h. | |
7890 | (avr-mcus): No more depend on avr-tables.opt. | |
7891 | (avr-tables.opt): Remove rule. | |
7892 | (install-device-specs): Use INSTALL_DATA, not INSTALL_PROGRAM. | |
7893 | ||
4cefd7f7 | 7894 | 2015-03-10 Ilya Enkovich <ilya.enkovich@intel.com> |
7895 | ||
7896 | * c-family/c.opt (fchkp-use-wrappers): New. | |
7897 | * ipa-chkp.c (CHKP_WRAPPER_SYMBOL_PREFIX): New. | |
7898 | (chkp_wrap_function): New. | |
7899 | (chkp_build_instrumented_fndecl): Support wrapped | |
7900 | functions. | |
7901 | * doc/invoke.texi (-fcheck-pointer-bounds): New. | |
7902 | (-fchkp-check-incomplete-type): New. | |
7903 | (-fchkp-first-field-has-own-bounds): New. | |
7904 | (-fchkp-narrow-bounds): New. | |
7905 | (-fchkp-narrow-to-innermost-array): New. | |
7906 | (-fchkp-optimize): New. | |
7907 | (-fchkp-use-fast-string-functions): New. | |
7908 | (-fchkp-use-nochk-string-functions): New. | |
7909 | (-fchkp-use-static-bounds): New. | |
7910 | (-fchkp-use-static-const-bounds): New. | |
7911 | (-fchkp-treat-zero-dynamic-size-as-infinite): New. | |
7912 | (-fchkp-check-read): New. | |
7913 | (-fchkp-check-write): New. | |
7914 | (-fchkp-store-bounds): New. | |
7915 | (-fchkp-instrument-calls): New. | |
7916 | (-fchkp-instrument-marked-only): New. | |
7917 | (-fchkp-use-wrappers): New. | |
7918 | (-static-libmpx): New. | |
7919 | (-static-libmpxwrappers): New. | |
7920 | ||
8a325e42 | 7921 | 2015-03-10 Ilya Enkovich <ilya.enkovich@intel.com> |
7922 | ||
7923 | * config/i386/linux-common.h (LIBMPX_WRAPPERSSPEC): New. | |
7924 | (CHKP_SPEC): Add wrappers library. | |
7925 | * c-family/c.opt (static-libmpxwrappers): New. | |
7926 | ||
202baac8 | 7927 | 2015-03-10 Ilya Enkovich <ilya.enkovich@intel.com> |
7928 | ||
7929 | * config/i386/linux-common.h (LIBMPX_LIBS): New. | |
7930 | (LIBMPX_SPEC): New. | |
7931 | (CHKP_SPEC): New. | |
7932 | * gcc.c (CHKP_SPEC): New. | |
7933 | (LINK_COMMAND_SPEC): Add CHKP_SPEC. | |
7934 | * c-family/c.opt (static-libmpx): New. | |
7935 | ||
6f0f5716 | 7936 | 2015-03-10 Richard Biener <rguenther@suse.de> |
7937 | ||
7938 | PR middle-end/44563 | |
7939 | * cgraph.h (struct cgraph_edge_hasher): Add hash overload | |
7940 | for compare_type. | |
7941 | * cgraph.c (cgraph_edge_hasher::hash): Inline htab_hash_pointer. | |
7942 | (cgraph_update_edge_in_call_site_hash): Use cgraph_edge_hasher::hash. | |
7943 | (cgraph_add_edge_to_call_site_hash): Likewise. | |
7944 | (cgraph_node::get_edge): Likewise. | |
7945 | (cgraph_edge::set_call_stmt): Likewise. | |
7946 | (cgraph_edge::remove_caller): Likewise. | |
7947 | ||
afddacc6 | 7948 | 2015-03-10 Chung-Ju Wu <jasonwucj@gmail.com> |
7949 | ||
7950 | * config/nds32/nds32.h (callee_saved_regs_size): Rename to ... | |
7951 | (callee_saved_gpr_regs_size): ... this. | |
7952 | (callee_saved_regs_first_regno): Rename to ... | |
7953 | (callee_saved_first_gpr_regno): ... this. | |
7954 | (callee_saved_regs_last_regno) Rename to ... | |
7955 | (callee_saved_last_gpr_regno): ... this. | |
7956 | * config/nds32/nds32.c (nds32_compute_stack_frame): Adjust renamed | |
7957 | variables. | |
7958 | (nds32_initial_elimination_offset): Likewise. | |
7959 | (nds32_expand_prologue): Likewise. | |
7960 | (nds32_expand_epilogue): Likewise. | |
7961 | (nds32_expand_prologue_v3push): Likewise. | |
7962 | (nds32_expand_epilogue_v3pop): Likewise. | |
7963 | * config/nds32/nds32-md-auxiliary.c (nds32_output_stack_push): | |
7964 | Adjust renamed variables. | |
7965 | (nds32_output_stack_pop): Likewise. | |
7966 | ||
feb4b951 | 7967 | 2015-03-10 Thomas Preud'homme <thomas.preudhomme@arm.com> |
7968 | ||
7969 | * dominance.c (nearest_common_dominator_for_set): Fix A_Dominated_by_B | |
7970 | code in comment. | |
7971 | ||
bfaa965e | 7972 | 2015-03-10 Jakub Jelinek <jakub@redhat.com> |
7973 | ||
7974 | PR rtl-optimization/65321 | |
7975 | * cfgexpand.c (expand_debug_expr): Ensure shift amount isn't wider | |
7976 | than shift mode. | |
7977 | * var-tracking.c (use_narrower_mode): Likewise. | |
7978 | ||
5c8bc079 | 7979 | 2015-03-10 Jan Hubicka <hubicka@ucw.cz> |
7980 | ||
7981 | PR tree-optimization/65355 | |
7982 | * varasm.c (notice_global_symbol): Do not produce RTL. | |
7983 | * symtab.c (symtab_node::can_increase_alignment_p): Check for section | |
7984 | anchor. | |
7985 | * tree-vect-data-refs.c (vect_compute_data_ref_alignment): Do not | |
7986 | check for section anchors. | |
7987 | ||
7bb12776 | 7988 | 2015-03-10 Alan Modra <amodra@gmail.com> |
7989 | ||
7990 | PR target/65286 | |
7991 | * config.gcc (powerpc*-*-linux*): Arrange for powerpc64le-linux | |
7992 | to be single-arch by default. Set cpu_is_64bit for powerpc64 | |
7993 | given --with-cpu=native. | |
7994 | * config/rs6000/t-fprules: Do not set default MULTILIB vars. | |
7995 | * config/rs6000/t-linux (MULTIARCH_DIRNAME): Support powerpc64 | |
7996 | and powerpc64le. | |
7997 | * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Test | |
7998 | rs6000_isa_flags rather than TARGET_64BIT. | |
7999 | ||
c7c9d885 | 8000 | 2015-03-09 Yoshinori Sato <ysato@users.sourceforge.jp> |
8001 | Kaz Kojima <kkojima@gcc.gnu.org> | |
8002 | ||
8003 | * config/sh/t-linux (MULTILIB_EXCEPTIONS): Define for m2a cases. | |
8004 | ||
90fa3a2b | 8005 | 2015-03-09 Jakub Jelinek <jakub@redhat.com> |
8006 | ||
8007 | PR lto/65361 | |
8008 | * ipa-devirt.c (add_type_duplicate): Don't use DECL_CONTEXT | |
8009 | on a TREE_BINFO, instead use BINFO_TYPE. | |
8010 | ||
e48f86fe | 8011 | 2015-03-09 Richard Biener <rguenther@suse.de> |
8012 | ||
8013 | PR middle-end/65270 | |
8014 | * tree-core.h (enum operand_equal_flag): Add OEP_ADDRESS_OF. | |
8015 | * fold-const.c (operand_equal_p): When recursing for ADDR_EXPRs | |
8016 | operand set OEP_ADDRESS_OF. Clear it when recursing to non-bases | |
8017 | of that. When comparing dereferences compare alignment. | |
8018 | When comparing MEM_REFs or TARGET_MEM_REFs compare dependence info. | |
8019 | ||
b12b920e | 8020 | 2015-03-08 Jan Hubicka <hubicka@ucw.cz> |
8021 | ||
8022 | * ipa-inline-analysis.c (check_callers): Check | |
8023 | node->can_remove_if_no_direct_calls_and_refs_p. | |
8024 | (growth_likely_positive): Reorganize to call | |
8025 | can_remove_if_no_direct_calls_p later. | |
8026 | * cgraph.h (will_be_removed_from_program_if_no_direct_calls_p, | |
c6e5fbeb | 8027 | will_be_removed_from_program_if_no_direct_calls_p): Add |
b12b920e | 8028 | will_inline parameter. |
8029 | * cgraph.c (cgraph_node::can_remove_if_no_direct_calls_p, | |
8030 | cgraph_node::will_be_removed_from_program_if_no_direct_calls_p): | |
8031 | Handle inliner case correctly. | |
8032 | ||
4b8069b9 | 8033 | 2015-03-09 Thomas Preud'homme <thomas.preudhomme@arm.com> |
8034 | ||
8035 | PR tree-optimization/63743 | |
8036 | * cfgexpand.c (reorder_operands): Also reorder if only second operand | |
8037 | had its definition forwarded by TER. | |
8038 | ||
86f5465f | 8039 | 2015-03-08 Jan Hubicka <hubicka@ucw.cz> |
8040 | ||
8041 | PR lto/65316 | |
8042 | * ipa-utils.h (types_odr_comparable): Add strict argument. | |
8043 | * ipa-devirt.c: Fix whitespace; | |
8044 | (odr_hasher): Remove. | |
8045 | (odr_name_hasher, odr_vtable_hasher): New hashers. | |
8046 | (can_be_name_hashed_p): New predicate. | |
8047 | (hash_type_name): remove. | |
8048 | (hash_odr_name): New. | |
8049 | (odr_name_hasher::hash): new. | |
8050 | (can_be_vtable_hashed_p): New. | |
8051 | (hash_odr_vtable): New. | |
8052 | (odr_vtable_hasher::hash): New. | |
8053 | (types_same_for_odr): Add strict parameter. | |
8054 | (types_odr_comparable): Likewise. | |
8055 | (odr_name_hasher::equal): New. | |
8056 | (odr_vtable_hasher::equal): New. | |
8057 | (odr_name_hasher::remove): New. | |
8058 | (odr_hash_type): Change to hash_table<odr_name_hasher>. | |
8059 | (odr_vtable_hash_type): New. | |
8060 | (odr_vtable_hash): New. | |
8061 | (odr_subtypes_equivalent_p): Do strict comparsion. | |
8062 | (add_type_duplicate): Merge type names; cleanup; avoid type | |
8063 | duplicates. | |
8064 | (register_odr_type): Initialize vtable hash. | |
8065 | (build_type_inheritance_graph): Likewise | |
8066 | (get_odr_type): Reorg to use two hashes. | |
8067 | (dump_possible_polymorphic_call_targets): Move sanity check after debug | |
8068 | output. | |
8069 | (ipa_devirt): Dump type_inheritance_graph. | |
8070 | (types_same_for_odr): Add strict mode. | |
8071 | ||
331d5983 | 8072 | 2015-03-05 Jan Hubicka <hubicka@ucw.cz> |
8073 | ||
8074 | PR ipa/65334 | |
8075 | * cgraph.h (symtab_node): Add definition_alignment, | |
8076 | can_increase_alignment_p and increase_alignment. | |
8077 | * symtab.c (symtab_node::can_increase_alignment_p, | |
8078 | increase_alignment_1, symtab_node::increase_alignment, | |
8079 | symtab_node::definition_alignment): New. | |
8080 | * tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Use | |
8081 | can_increase_alignment_p. | |
8082 | * tree-vectorizer.c (increase_alignment): Use increase_alignment. | |
8083 | * tree-vect-stmts.c (ensure_base_align): Likewise. | |
88ada5e9 | 8084 | * varasm.c (function_section_1): Use definition_alignment. |
8085 | (assemble_start_function): Likewise. | |
8086 | (emit_local): likewise. | |
8087 | (build_constant_desc): Likewsie. | |
8088 | (output_constant_def_contents): Likewise. | |
8089 | (place_block_symbol): Likewise. | |
8090 | (output_object_block): Likewise. | |
331d5983 | 8091 | |
007b3880 | 8092 | 2015-03-05 Jan Hubicka <hubicka@ucw.cz> |
8093 | ||
8094 | PR ipa/65316 | |
8095 | * tree.c (free_lang_data_in_type): Be sure to keep BINFO_VTABLE | |
8096 | when outputting debug. | |
8097 | ||
9b22f73f | 8098 | 2015-03-07 Marek Polacek <polacek@redhat.com> |
8099 | Martin Uecker <uecker@eecs.berkeley.edu> | |
8100 | ||
8101 | PR sanitizer/65280 | |
8102 | * doc/invoke.texi: Update description of -fsanitize=bounds. | |
8103 | ||
4a7046f8 | 8104 | 2015-03-06 Wilco Dijkstra <wilco.dijkstra@arm.com> |
8105 | ||
8106 | * tree-ssa-phiopt.c (neg_replacement): Remove. | |
8107 | (tree_ssa_phiopt_worker): Remove negate optimization. | |
8108 | ||
f91d0326 | 8109 | 2015-03-05 Jan Hubicka <hubicka@ucw.cz> |
8110 | ||
8111 | PR ipa/65302 | |
8112 | * value-prof.c (gimple_ic): Pure dead eh edges when needed. | |
8113 | ||
78775228 | 8114 | 2015-03-06 Richard Biener <rguenther@suse.de> |
8115 | ||
8116 | PR middle-end/64928 | |
8117 | * tree-ssa-live.h (struct tree_live_info_d): Add livein_obstack | |
8118 | and liveout_obstack members. | |
8119 | (calculate_live_on_exit): Remove. | |
8120 | (calculate_live_ranges): Change declaration. | |
8121 | * tree-ssa-live.c (liveness_bitmap_obstack): Remove global var. | |
8122 | (new_tree_live_info): Adjust. | |
8123 | (calculate_live_ranges): Delete livein when not wanted. | |
8124 | (calculate_live_ranges): Do not initialize liveness_bitmap_obstack. | |
8125 | Deal with partly deleted live info. | |
8126 | (loe_visit_block): Remove temporary bitmap by using | |
8127 | bitmap_ior_and_compl_into. | |
8128 | (live_worklist): Adjust accordingly. | |
8129 | (calculate_live_on_exit): Make static. | |
8130 | * tree-ssa-coalesce.c (coalesce_ssa_name): Tell calculate_live_ranges | |
8131 | we do not need livein. | |
8132 | ||
698013f6 | 8133 | 2015-03-06 Jonathan Wakely <jwakely@redhat.com> |
8134 | ||
8135 | * real.c (real_from_string): Fix typo in assertion. | |
8136 | ||
ea4cdd31 | 8137 | 2015-03-06 Alex Velenko <alex.velenko@arm.com> |
8138 | ||
8139 | * ChangeLog (2015-03-05): Reflect Richard Henderson as actual author of | |
8140 | the patch. | |
8141 | ||
8a953cb8 | 8142 | 2015-03-05 Jan Hubicka <hubicka@ucw.cz> |
8143 | ||
8144 | * ipa-icf.c (sem_variable::equals_wpa): Check FINAL flags. | |
8145 | ||
02306e02 | 8146 | 2015-03-05 Vladimir Makarov <vmakarov@redhat.com> |
8147 | ||
8148 | PR target/64342 | |
8149 | * lra-assigns.c (find_hard_regno_for): Rename to | |
8150 | find_hard_regno_for_1. Add a new parameter. | |
8151 | (find_hard_regno_for): New function using find_hard_regno_for_1. | |
8152 | ||
c0ec5045 | 8153 | 2015-03-05 Bernd Edlinger <bernd.edlinger@hotmail.de> |
8154 | ||
8155 | PR rtl-optimization/65067 | |
8156 | * expmed.c (store_bit_field, extract_bit_field): Reworked the | |
8157 | strict volatile bitfield handling. | |
8158 | ||
fd82d052 | 8159 | 2015-03-05 Martin Liska <mliska@suse.cz> |
8160 | ||
8161 | PR ipa/65318 | |
8162 | * ipa-icf.c (sem_variable::equals): Compare variables types. | |
8163 | ||
ea4cdd31 | 8164 | 2015-03-05 Richard Henderson <rth@redhat.com> |
0f23e403 | 8165 | |
f12f9439 | 8166 | PR target/65121 |
0f23e403 | 8167 | * config/arm/arm.c (arm_function_in_section_p): Fix predicate to |
8168 | correctly check weak symbol binding. | |
8169 | ||
2bb1c7d1 | 8170 | 2015-03-05 Steve Ellcey <sellcey@imgtec.com> |
8171 | ||
8172 | PR middle-end/65315 | |
8173 | * cfgexpand.c (expand_stack_vars): Update large_align to maximum | |
8174 | needed alignment. | |
8175 | ||
fece9def | 8176 | 2015-03-05 Martin Liska <mliska@suse.cz> |
8177 | ||
8178 | * ipa-inline.c (inline_small_functions): Set default value to | |
8179 | prevent warning during bootstrap. | |
8180 | * tree.h: Add pragma guard that ignores false positives during | |
8181 | bootstrap. | |
8182 | ||
b4142d58 | 8183 | 2015-03-05 Richard Biener <rguenther@suse.de> |
8184 | ||
8185 | PR tree-optimization/65310 | |
8186 | * tree-vect-data-refs.c (vect_compute_data_ref_alignment): | |
8187 | Properly preserve alignment of the base of the access. | |
8188 | ||
6b1460de | 8189 | 2015-03-05 Richard Biener <rguenther@suse.de> |
8190 | ||
8191 | PR ipa/65270 | |
8192 | * ipa-icf-gimple.c (func_checker::compare_memory_operand): | |
8193 | Compare dependence info. | |
8194 | ||
9327cf31 | 8195 | 2015-03-05 Richard Biener <rguenther@suse.de> |
8196 | ||
8197 | PR middle-end/65233 | |
8198 | * ipa-polymorphic-call.c: Include tree-ssa-operands.h and | |
8199 | tree-into-ssa.h. | |
8200 | (walk_ssa_copies): Revert last chage. Instead do not walk | |
8201 | SSA names registered for SSA update. | |
8202 | ||
4c0b6eae | 8203 | 2015-03-03 Jan Hubicka <hubicka@ucw.cz> |
8204 | ||
ca0a430a | 8205 | PR ipa/65270 |
4c0b6eae | 8206 | * ipa-icf.c (sem_item::compare_cgraph_references): Compare |
8207 | vtable references for their containing type. | |
8208 | (sem_function::equals_wpa): Compare TYPE_RESTRICT | |
8209 | and type attributes. | |
8210 | ||
1237f646 | 8211 | 2015-03-04 Eric Botcazou <ebotcazou@adacore.com> |
8212 | ||
8213 | * fold-const.c (round_up_loc): Cast divisor to signed on all paths | |
8214 | before negating it. | |
8215 | * stor-layout.c (finalize_record_size): Revert latest change. | |
8216 | ||
c43a6d0d | 8217 | 2015-03-04 Andreas Tobler <andreast@gcc.gnu.org> |
8218 | ||
8219 | * config/rs6000/t-freebsd64: Remove 32-bit soft-float multilibs. | |
8220 | ||
e88fecaf | 8221 | 2015-03-03 Jan Hubicka <hubicka@ucw.cz> |
8222 | ||
8223 | * cgraph.c (cgraph_node::can_remove_if_no_direct_calls_p): Rewrite | |
8224 | for correct comdat handling. | |
8225 | (cgraph_node::will_be_removed_from_program_if_no_direct_calls_p): | |
8226 | Likewise. | |
8227 | * cgraph.h (call_for_symbol_and_aliases): Fix formating. | |
8228 | (used_from_object_file_p_worker): Remove. | |
8229 | (cgraph_node::only_called_directly_or_alised): Add | |
8230 | used_from_object_file_p. | |
8231 | * ipa-inline-analysis.c (growth_likely_positive): Optimie. | |
8232 | * ipa-inline-transform.c (can_remove_node_now_p_1): Use | |
8233 | can_remove_if_no_direct_calls_and_refs_p. | |
8234 | ||
30769e80 | 8235 | 2015-03-04 Nick Clifton <nickc@redhat.com> |
8236 | ||
8237 | * config/rl78/rl78.h (enum reg_class): Remove real registers from | |
8238 | General register class. | |
8239 | * config/rl78/rl78-real.md: Replace general register constraints | |
8240 | with real+virtual register constraints. | |
8241 | ||
8a2027f7 | 8242 | 2015-03-04 Andreas Krebbel <krebbel@linux.vnet.ibm.com> |
8243 | ||
1237f646 | 8244 | * config/s390/s390.c (s390_expand_builtin): Exlude non-htm builtins |
8245 | from checking for -mhtm option. | |
8a2027f7 | 8246 | |
840573bd | 8247 | 2015-03-03 Jan Hubicka <hubicka@ucw.cz> |
8248 | ||
8249 | * tree-sra.c (convert_callers): Use call_for_symbol_and_aliases. | |
8250 | (struct ipa_sra_check_caller_data): Add has_thunk field. | |
8251 | (ipa_sra_check_caller): Check for thunk. | |
8252 | (ipa_sra_preliminary_function_checks): Give up on function with | |
8253 | thunks. | |
8254 | (ipa_early_sra): Use call_for_symbol_and_aliases. | |
8255 | ||
53e094a9 | 8256 | 2015-03-03 Kaz Kojima <kkojima@gcc.gnu.org> |
8257 | ||
8258 | PR target/65249 | |
8259 | * config/sh/sh.md (symGOT_load): Use R0 reg for operands[2] when | |
8260 | called for __stack_chk_guard symbol. | |
8261 | ||
750dcfc5 | 8262 | 2015-03-03 DJ Delorie <dj@redhat.com> |
8263 | ||
8264 | * config/rl78/rl78-real.md (*addqi_real): Allow SADDR types for | |
8265 | inc/dec. | |
8266 | (*addhi3_real): Likewise. | |
8267 | * config/rl78/rl78-virt.md (*inc<mode>3_virt): Additional | |
8268 | pattern to match incrementing memory. | |
8269 | * config/rl78/predicates.md (rl78_1_2_operand): New. | |
8270 | * config/rl78/rl78.c (rl78_force_nonfar_3): Allow far mem-mem if | |
8271 | it's the same and only mem. | |
8272 | (rl78_alloc_physical_registers_op2): If there's effectively only | |
8273 | one MEM, transcode it into HL. | |
8274 | (rl78_far_p): Reject addresses that aren't legitimate. | |
8275 | ||
b7c08268 | 8276 | 2015-03-03 Eric Botcazou <ebotcazou@adacore.com> |
8277 | ||
8278 | * fold-const.c (round_up_loc): Cast divisor to HOST_WIDE_INT before | |
8279 | negating it. | |
8280 | ||
8281 | * tree-sra.c (pa_sra_preliminary_function_checks): Fix typo in message. | |
8282 | ||
b89c671b | 8283 | 2015-03-03 Max Filippov <jcmvbkbc@gmail.com> |
8284 | ||
8285 | Implement call0 ABI for xtensa | |
8286 | * config/xtensa/constraints.md ("a" constraint): Include stack | |
8287 | pointer in case of call0 ABI. | |
8288 | ("q" constraint): Make empty in case of call0 ABI. | |
8289 | ("D" constraint): Include stack pointer in case of call0 ABI. | |
8290 | * config/xtensa/xtensa-protos.h (xtensa_set_return_address, | |
8291 | xtensa_expand_epilogue, xtensa_regno_to_class): Add new function | |
8292 | prototypes. | |
8293 | * config/xtensa/xtensa.c (xtensa_callee_save_size): New | |
8294 | variable. | |
8295 | (xtensa_regno_to_class): Make it a local variable in the | |
8296 | function xtensa_regno_to_class. | |
8297 | (xtensa_function_epilogue, TARGET_ASM_FUNCTION_EPILOGUE): Remove | |
8298 | macro, function prototype and implementation. | |
8299 | (reg_nonleaf_alloc_order): Make it a local variable in the | |
8300 | function order_regs_for_local_alloc. | |
8301 | (xtensa_conditional_register_usage): New function. | |
8302 | (TARGET_CONDITIONAL_REGISTER_USAGE): Define macro. | |
8303 | (xtensa_valid_move): Allow direct moves to stack pointer | |
8304 | register in call0 ABI. | |
8305 | (xtensa_setup_frame_addresses): Only spill register windows in | |
8306 | windowed ABI. | |
8307 | (xtensa_emit_call): Emit call(x)8 or call(x)0 in windowed and | |
8308 | call0 ABI respectively. | |
8309 | (xtensa_function_arg_1): Only mark a7 register for copying in | |
8310 | windowed ABI. | |
8311 | (xtensa_call_save_reg): New function. | |
8312 | (compute_frame_size): Add space for callee saved register | |
8313 | storage to the frame size in call0 ABI. | |
8314 | (xtensa_expand_prologue): Generate code to set up stack frame | |
8315 | and save callee-saved registers in call0 ABI. | |
8316 | (xtensa_expand_epilogue): New function. | |
8317 | (xtensa_set_return_address): New function. | |
8318 | (xtensa_return_addr): Calculate return address in call0 ABI. | |
8319 | (xtensa_builtin_saveregs): Only mark a7 register for copying and | |
8320 | emit copying code in windowed ABI. | |
8321 | (order_regs_for_local_alloc): Add preferred register allocation | |
8322 | order for non-leaf function in call0 ABI. | |
8323 | (xtensa_static_chain): Add atatic chain passing for call0 ABI. | |
8324 | (xtensa_asm_trampoline_template): Add trampoline generation for | |
8325 | call0 ABI. | |
8326 | (xtensa_trampoline_init): Add trampoline initialization for | |
8327 | call0 ABI. | |
8328 | (xtensa_conditional_register_usage, xtensa_regno_to_class): New | |
8329 | functions. | |
8330 | * config/xtensa/xtensa.h (TARGET_WINDOWED_ABI): New macro. | |
8331 | (TARGET_CPU_CPP_BUILTINS): Add built-in define for call0 ABI. | |
8332 | (CALL_USED_REGISTERS): Modify to encode both windowed and call0 | |
8333 | ABI call-used registers. | |
8334 | (HARD_FRAME_POINTER_REGNUM): Add frame pointer for call0 ABI. | |
8335 | (INCOMING_REGNO, OUTGOING_REGNO): Use argument unchanged in | |
8336 | call0 ABI. | |
8337 | (REG_CLASS_CONTENTS): Include all registers into the preferred | |
8338 | reload registers set, adjust the set in the | |
8339 | xtensa_conditional_register_usage. | |
8340 | (xtensa_regno_to_class): Drop variable declaration. | |
8341 | (REGNO_REG_CLASS): Redefine to use xtensa_regno_to_class | |
8342 | function. | |
8343 | (WINDOW_SIZE): Define as 8 or 0 for windowed and call0 ABI | |
8344 | respectively. | |
8345 | (FUNCTION_PROFILER): Add _mcount call for call0 ABI. | |
8346 | (TRAMPOLINE_SIZE): Define trampoline size for call0 ABI. | |
8347 | (RETURN_ADDR_IN_PREVIOUS_FRAME): Define to 0 in call0 ABI. | |
8348 | (ASM_OUTPUT_POOL_PROLOGUE): Always generate literal pool | |
8349 | location in call0 ABI. | |
8350 | (EH_RETURN_STACKADJ_RTX): New definition, use a10 for passing | |
8351 | stack adjustment size when handling exception. | |
8352 | (CRT_CALL_STATIC_FUNCTION): Add definition for call0 ABI. | |
8353 | * config/xtensa/xtensa.md (A9_REG, UNSPECV_BLOCKAGE): New | |
8354 | definitions. | |
8355 | ("return" pattern): Generate ret.n/ret in call0 ABI. | |
8356 | ("epilogue" pattern): Expand epilogue. | |
8357 | ("nonlocal_goto" pattern): Use default in call0 ABI. | |
8358 | ("eh_return" pattern): Move implementation to eh_set_a0_windowed, | |
8359 | emit eh_set_a0_* depending on ABI. | |
8360 | ("eh_set_a0_windowed" pattern): Former eh_return pattern. | |
8361 | ("eh_set_a0_call0", "blockage"): New patterns. | |
8362 | ||
e4f2b9ef | 8363 | 2015-03-03 Martin Liska <mliska@suse.cz> |
8364 | ||
8365 | PR ipa/65287 | |
8366 | * ipa-icf.c (sem_variable::parse): Skip all alias variables. | |
8367 | ||
e78a28e5 | 8368 | 2015-03-03 Michael Meissner <meissner@linux.vnet.ibm.com> |
8369 | ||
8370 | PR 65138/target | |
8371 | * config/rs6000/rs6000-tables.opt: Regenerate table. | |
8372 | ||
9fe0a692 | 8373 | 2015-03-03 Renlin Li <renlin.li@arm.com> |
8374 | ||
8375 | * doc/md.texi (@item ^): Change ? into ^. | |
8376 | ||
32497dec | 8377 | 2015-03-03 H.J. Lu <hongjiu.lu@intel.com> |
8378 | ||
8379 | * doc/tm.texi: Regenerated. | |
8380 | ||
a26d6c60 | 8381 | 2015-03-03 Max Filippov <jcmvbkbc@gmail.com> |
8382 | ||
8383 | * builtins.c (expand_builtin_return_addr): Add | |
8384 | RETURN_ADDR_IN_PREVIOUS_FRAME to 'if' condition, remove | |
8385 | surrounding #ifdef. | |
8386 | * config/sparc/sparc.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Change | |
8387 | definition to 1. | |
8388 | * config/xtensa/xtensa.h (RETURN_ADDR_IN_PREVIOUS_FRAME): | |
8389 | Likewise. | |
8390 | * defaults.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Define to 0 if | |
8391 | undefined. | |
8392 | * doc/tm.texi.in (RETURN_ADDR_IN_PREVIOUS_FRAME): Update | |
8393 | paragraph. | |
8394 | ||
f5c995c5 | 8395 | 2015-03-03 Martin Jambor <mjambor@suse.cz> |
c6e5fbeb | 8396 | Eric Botcazou <ebotcazou@adacore.com> |
f5c995c5 | 8397 | |
8398 | * tree-sra.c (ipa_sra_check_caller_data): New type. | |
8399 | (has_caller_p): Removed. | |
8400 | (ipa_sra_check_caller): New function. | |
8401 | (ipa_sra_preliminary_function_checks): Use it. | |
8402 | ||
718d4bcf | 8403 | 2015-03-03 Martin Liska <mliska@suse.cz> |
8404 | ||
8405 | * ipa-icf.c (sem_item_optimizer::merge_classes): Use bit or | |
8406 | instead of if branch. | |
8407 | ||
d48b0431 | 8408 | 2015-03-03 Martin Liska <mliska@suse.cz> |
8409 | ||
8410 | PR ipa/65282 | |
8411 | * ipa-icf.c (sem_variable::equals): Fix wrong condition. | |
8412 | ||
18526d26 | 8413 | 2015-03-23 Jeff Law <law@redhat.com> |
8414 | ||
8415 | PR tree-optimization/65241 | |
8416 | * tree-ssa-dom.c (lookup_avail_expr): Only modify the avail_expr | |
8417 | hash table if INSERT is true. | |
8418 | ||
d0ed7b19 | 8419 | 2015-03-03 Georg-Johann Lay <avr@gjlay.de> |
8420 | ||
8421 | PR target/65296 | |
8422 | * config.gcc (extra_gcc_objs) [avr-*-rtems*]: Remove. | |
8423 | ||
40114021 | 8424 | 2015-03-03 Georg-Johann Lay <avr@gjlay.de> |
8425 | ||
8426 | PR target/64331 | |
8427 | * config/avr/avr.c (context.h, tree-pass.h): Include them. | |
8428 | (avr_pass_data_recompute_notes): New static variable. | |
8429 | (avr_pass_recompute_notes): New class. | |
8430 | (avr_register_passes): New static function. | |
8431 | (avr_option_override): Call it. | |
8432 | ||
2aa6267d | 8433 | 2015-03-03 Georg-Johann Lay <avr@gjlay.de> |
8434 | ||
8435 | Fix various problems with specs file generation. | |
8436 | ||
8437 | PR target/65296 | |
8438 | * config.gcc (extra_gcc_objs) [avr]: Remove. | |
8439 | * config/avr/driver-avr.c: Remove file. | |
8440 | * config/avr/t-avr (driver-avr.o): Remove rule. | |
8441 | (gen-avr-mmcu-specs): Use CXX_FOR_BUILD, CXXFLAGS_FOR_BUILD and | |
8442 | INCLUDES to build. Depend on TM_H. | |
8443 | * config/avr/gen-avr-mmcu-specs.c: Tidy up code. Fix various | |
8444 | build warnings. Fix non-matching types and non-existing %-codes. | |
8445 | (tm.h): Include. | |
8446 | (*lib) [!WITH_AVRLIBC]: Don't link libdev.a. | |
8447 | (*libgcc) [WITH_AVRLIBC]: Add "-lm". | |
8448 | * config/avr/avrlibc.h (LIBGCC_SPEC): Remove definition. | |
8449 | * config/avr/avr.h (DRIVER_SELF_SPECS): Fix handling of -march=. | |
8450 | (CPP_SPEC, CC1PLUS_SPEC, ASM_SPEC, LINK_SPEC, LIB_SPEC) | |
8451 | (LIBGCC_SPEC): Remove definitions. | |
8452 | ||
765568b0 | 8453 | 2015-03-03 Eric Botcazou <ebotcazou@adacore.com> |
8454 | ||
8455 | * config/ia64/ia64.c (expand_vec_perm_interleave_2): Use gen_raw_REG | |
8456 | to create a register in testing mode. | |
8457 | ||
c1df982e | 8458 | 2015-03-03 Martin Liska <mliska@suse.cz> |
ca0a430a | 8459 | Jan Hubicka <hubicka@ucw.cz> |
c1df982e | 8460 | |
8461 | PR ipa/65263 | |
8462 | * cgraph.c (cgraph_node::has_thunk_p): New function. | |
8463 | * cgraph.h (cgraph_node::has_thunk_p: Likewise. | |
8464 | * ipa-icf.c (redirect_all_callers): Do not redirect thunks. | |
8465 | (sem_function::merge): Assert is changed. | |
8466 | ||
796859e5 | 8467 | 2015-03-03 Martin Liska <mliska@suse.cz> |
8468 | Martin Jambor <mjambor@suse.cz> | |
8469 | ||
8470 | PR ipa/65087 | |
8471 | * ipa-icf.c (sem_item_optimizer::execute): Change function | |
8472 | return value to boolean. | |
8473 | (sem_item_optimizer::merge_classes): Likewise. | |
8474 | (ipa_icf_driver): Return TODO_remove_functions in case there's | |
8475 | a merge operation processed. | |
8476 | * ipa-icf.h: Change function return value to boolean. | |
8477 | ||
49a1b909 | 8478 | 2015-03-02 Michael Meissner <meissner@linux.vnet.ibm.com> |
8479 | ||
8480 | PR 65138/target | |
8481 | * config/rs6000/rs6000-cpus.def (powerpc64le): Add new generic | |
8482 | processor type for 64-bit little endian PowerPC. | |
8483 | ||
8484 | * config/rs6000/rs6000.c (rs6000_option_override_internal): If | |
8485 | -mdebug=reg, print TARGET_DEFAULT. Fix logic to use | |
8486 | TARGET_DEFAULT if there is no default cpu. Fix -mdebug=reg | |
8487 | printing built-in mask so it does not pass NULL pointers. | |
8488 | ||
8489 | * doc/invoke.texi (IBM RS/6000 and PowerPC options): Document | |
8490 | -mcpu=powerpc64le. | |
8491 | ||
95802f13 | 8492 | 2015-03-02 Steve Ellcey <sellcey@imgtec.com> |
8493 | ||
8494 | PR target/58158 | |
8495 | * config/mips/mips.md (mov<mode>cc): Change ISA_HAS_SEL check to | |
8496 | !ISA_HAS_FP_CONDMOVE. | |
8497 | ||
54dd33d0 | 8498 | 2015-03-02 Aldy Hernandez <aldyh@redhat.com> |
8499 | ||
8500 | * config/i386/i386.md (*udivmod<mode>4_pow2): Remove | |
8501 | reload_completed. | |
8502 | ||
06c3fbfc | 8503 | 2015-03-02 Ulrich Drepper <drepper@gmail.com> |
8504 | ||
8505 | * doc/invoke.texi (Options for Code Generation Conventions): | |
8506 | Fix URL of DSO paper. | |
49a1b909 | 8507 | |
c6e5fbeb | 8508 | 2015-03-02 Jan Hubicka <hubicka@ucw.cz> |
9dcc8702 | 8509 | |
8510 | PR ipa/65130 | |
8511 | * ipa-inline.c (check_callers): Looks for recursion. | |
8512 | (inline_to_all_callers): Give up on uninlinable or recursive edges. | |
8513 | * ipa-inline-analysis.c (inline_summary_t::duplicate): Do not update | |
8514 | summary of inline clones. | |
8515 | (do_estimate_growth_1): Fix recursion check. | |
8516 | ||
c6e5fbeb | 8517 | 2015-03-02 Jan Hubicka <hubicka@ucw.cz> |
ab89cd93 | 8518 | |
8519 | PR ipa/64988 | |
8520 | * ipa-inline-transform.c (clone_inlined_nodes): Do not dissolve | |
8521 | comdat groups. | |
8522 | ||
aa3393f7 | 8523 | 2015-03-02 Jan Hubicka <hubicka@ucw.cz> |
8524 | Aldy Hernandez <aldyh@redhat.com> | |
8525 | ||
8526 | PR lto/65276 | |
8527 | * ipa-devirt.c (add_type_duplicate): Remove odr_violated assert | |
8528 | when checking TYPE_BINFO. | |
8529 | ||
fbbe5f6b | 8530 | 2015-03-02 Richard Biener <rguenther@suse.de> |
8531 | ||
8532 | PR ipa/65270 | |
8533 | * ipa-icf-gimple.c: Include builtins.h. | |
8534 | (func_checker::compare_memory_operand): Compare base alignment. | |
8535 | ||
b32b49c1 | 8536 | 2015-03-02 Ilya Enkovich <ilya.enkovich@intel.com> |
8537 | ||
8538 | PR target/65184 | |
8539 | * gcc/config/i386/i386.c (ix86_pass_by_reference) Bounds | |
8540 | are never passed by reference. | |
8541 | ||
d0cb6a0d | 8542 | 2015-03-02 Ilya Enkovich <ilya.enkovich@intel.com> |
8543 | ||
8544 | PR target/65183 | |
8545 | * tree-chkp.c (chkp_check_lower): Don't check against | |
8546 | zero bounds for already instrumented functions. | |
8547 | (chkp_check_upper): Likewise. | |
8548 | (chkp_fini): Clean pass local data to avoid wrong reusage. | |
8549 | ||
551f8dfb | 8550 | 2015-02-28 Martin Liska <mliska@suse.cz> |
c6e5fbeb | 8551 | Jan Hubicka <hubicka@ucw.cz> |
551f8dfb | 8552 | |
8553 | * ipa-icf.c (sem_variable::equals): Improve debug output; | |
8554 | get variable constructor. | |
8555 | (sem_variable::parse): Do not filter out too early; give up on | |
8556 | volatile and register vars. | |
8557 | (sem_item_optimizer::filter_removed_items): Filter out nonreadonly | |
8558 | variables. | |
8559 | * ipa-icf.h (sem_variable::init): Do not set ctor. | |
8560 | (sem_variable::ctor): Remove. | |
8561 | ||
6357f22c | 8562 | 2015-03-01 Aldy Hernandez <aldyh@redhat.com> |
8563 | ||
8564 | PR middle-end/65233 | |
8565 | * ipa-polymorphic-call.c (walk_ssa_copies): Handle empty PHIs. | |
8566 | ||
2aaa1027 | 8567 | 2015-02-28 Jan Hubicka <hubicka@ucw.cz> |
8568 | ||
8569 | * ipa-icf.c: Include stor-layout.h | |
8570 | (sem_function::compare_cgraph_references): Rename to ... | |
8571 | (sem_item::compare_cgraph_references): ... this one. | |
8572 | (sem_variable::equals_wpa): New function | |
8573 | (sem_variable::equals): Do not check stuff already verified by | |
8574 | equals_wpa. | |
8575 | (sem_variable::equals): Reorg based on varasm.c:compare_constant. | |
8576 | * ipa-icf.h (sem_item): Add compare_cgraph_references. | |
8577 | (sem_function): Remove compare_cgraph_references. | |
8578 | (sem_variable): Turns equals_wpa into non-inline. | |
8579 | ||
d5d259d4 | 8580 | 2015-02-28 Jan Hubicka <hubicka@ucw.cz> |
8581 | ||
8582 | * ipa-icf.c (sem_function::init): Fix formating; skip GIMPLE_PREDICT. | |
8583 | (sem_item::add_expr): New function. | |
8584 | (sem_function::hash_stmt): Handle operands of most statements. | |
8585 | (sem_variable::get_hash): Hash the actual constructor. | |
8586 | * ipa-icf.h (sem_item): Add add_expr. | |
8587 | (sem_function): Update prototype of hash_stmt | |
8588 | ||
7fb15fe8 | 8589 | 2015-02-28 Martin Liska <mliska@suse.cz> |
c6e5fbeb | 8590 | Jan Hubicka <hubicka@ucw.cz> |
7fb15fe8 | 8591 | |
8592 | PR ipa/65245 | |
8593 | * ipa-icf-gimple.c (func_checker::compare_function_decl): | |
8594 | Remove. | |
8595 | (func_checker::compare_variable_decl): Skip symtab vars. | |
8596 | (func_checker::compare_cst_or_decl): Update. | |
8597 | * ipa-icf.c (sem_function::parse): Do not consider aliases. | |
8598 | (sem_function::compare_cgraph_references): Add ADDRESS parameter; | |
8599 | use correct symtab predicates. | |
8600 | (sem_function::equals_wpa): Update uses of compare_cgraph_references. | |
8601 | (sem_variable::parse): Update comment. | |
8602 | (sem_item_optimizer::build_graph): Consider ultimate aliases | |
8603 | for references. | |
8604 | ||
2f51f5cb | 8605 | 2015-02-28 Jan Hubicka <hubicka@ucw.cz> |
8606 | ||
8607 | * ipa-icf-gimple.c (func_checker::compare_operand): Fix handling | |
8608 | of OBJ_TYPE_REF. | |
8609 | ||
1bd06fb4 | 8610 | 2015-02-28 Jan Hubicka <hubicka@ucw.cz> |
8611 | ||
8612 | * ipa-icf.c (sem_function::merge): Fix handling of COMDAT. | |
8613 | (sem_variable::merge) Likewise. | |
8614 | ||
b9cb01c1 | 8615 | 2015-02-28 Jan Hubicka <hubicka@ucw.cz> |
2f3662f2 | 8616 | |
b9cb01c1 | 8617 | * ipa-inline.c (can_inline_edge_p): Match opt_for_fn on inline |
8618 | target; also match flag_ipa_devirt. | |
8619 | ||
8620 | 2015-03-01 Martin Liska <mliska@suse.cz> | |
c6e5fbeb | 8621 | Jan Hubicka <hubicka@ucw.cz> |
2f3662f2 | 8622 | |
8623 | * ipa-icf-gimple.c (func_checker::compare_variable_decl): | |
8624 | Validate variable alignment. | |
8625 | * ipa-icf.c (sem_function::equals_private): Be more precise | |
8626 | about non-common function attributes. | |
8627 | (sem_variable::equals): Likewise. | |
8628 | ||
97ccb517 | 8629 | 2015-02-28 Jan Hubicka <hubicka@ucw.cz> |
8630 | ||
8631 | PR ipa/65237 | |
8632 | * ipa-icf.c (sem_function::merge): Do not attempt to produce alias | |
8633 | across COMDAT group boundary. | |
8634 | ||
edd9cb46 | 8635 | 2015-02-28 Jan Hubicka <hubicka@ucw.cz> |
8636 | ||
8637 | PR ipa/65232 | |
8638 | * ipa-icf.c (clear_decl_rtl): New function. | |
8639 | (sem_function::merge): Clear RTL before forming alias. | |
8640 | (sem_variable::merge): Clear RTL before forming alias. | |
8641 | ||
86bbd552 | 8642 | 2015-02-28 Jan Hubicka <hubicka@ucw.cz> |
8643 | ||
8644 | PR ipa/65236 | |
c6e5fbeb | 8645 | * cgraphunit.c (cgraph_node::expand_thunk): Enable return slot opt. |
86bbd552 | 8646 | |
c03ae9b6 | 8647 | 2015-02-28 Xingxing Pan <xxingpan@marvell.com> |
8648 | ||
8649 | * config/aarch64/aarch64.md: (mov<mode>_aarch64): Change type | |
8650 | to neon_to_gp<q>. | |
8651 | ||
c9929b60 | 8652 | 2015-02-27 Vladimir Makarov <vmakarov@redhat.com> |
8653 | ||
8654 | * params.def (PARAM_LRA_INHERITANCE_EBB_PROBABILITY_CUTOFF): Fix | |
8655 | a typo in the description. | |
8656 | ||
4b69081d | 8657 | 2015-02-27 Vladimir Makarov <vmakarov@redhat.com> |
8658 | ||
8659 | PR target/64317 | |
8660 | * params.def (PARAM_LRA_INHERITANCE_EBB_PROBABILITY_CUTOFF): New. | |
8661 | * params.h (LRA_INHERITANCE_EBB_PROBABILITY_CUTOFF): New. | |
8662 | * lra-constraints.c: Include "params.h". | |
8663 | (EBB_PROBABILITY_CUTOFF): Use | |
8664 | LRA_INHERITANCE_EBB_PROBABILITY_CUTOFF. | |
8665 | (lra_inheritance): Use '<' instead of '<=' for | |
8666 | EBB_PROBABILITY_CUTOFF. | |
8667 | * doc/invoke.texi (lra-inheritance-ebb-probability-cutoff): | |
8668 | Document change. | |
8669 | ||
f52caa41 | 8670 | 2015-02-27 Martin Liska <mliska@suse.cz> |
8671 | ||
8672 | * ipa-icf.h (struct symbol_compare_hashmap_traits): Add missing | |
8673 | vector length condition. | |
8674 | ||
8327d69a | 8675 | 2015-02-27 Sandra Loosemore <sandra@codesourcery.com> |
8676 | ||
8677 | * doc/extend.texi (x86 transactional memory intrinsics): | |
8678 | Reorganize discussion of _xbegin. Clarify that the return | |
8679 | value is a bit mask. Expand example and move to end of section. | |
8680 | ||
091e5e39 | 8681 | 2015-02-26 Jakub Jelinek <jakub@redhat.com> |
8682 | Aldy Hernandez <aldyh@redhat.com> | |
8683 | ||
8684 | PR rtl-optimization/65220 | |
8685 | * config/i386/i386.md (*udivmod<mode>4_pow2): New. | |
8686 | ||
fb87313e | 8687 | 2015-02-27 Vladimir Makarov <vmakarov@redhat.com> |
8688 | ||
8689 | PR target/65032 | |
8690 | * lra-remat.c (update_scratch_ops): New. | |
8691 | (do_remat): Call it. | |
8692 | * lra.c (lra_register_new_scratch_op): New. Take code from ... | |
8693 | (remove_scratches): ... here. | |
8694 | * lra-int.h (lra_register_new_scratch_op): New prototype. | |
8695 | ||
495cbfb8 | 8696 | 2015-02-27 Marek Polacek <polacek@redhat.com> |
8697 | ||
8698 | PR c/65040 | |
8699 | * doc/invoke.texi: Update to reflect that -Wformat=2 doesn't enable | |
8700 | -Wformat-signedness anymore. | |
8701 | ||
90f58e2a | 8702 | 2015-02-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
8703 | ||
8704 | * config/s390/s390.c: (s390_atomic_assign_expand_fenv): New | |
8705 | function. | |
8706 | (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): Define macro. | |
8707 | ||
9cef796d | 8708 | 2015-02-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
8709 | ||
8710 | * config/s390/s390.c (enum s390_builtin): | |
8711 | Add S390_BUILTIN_S390_SFPC and S390_BUILTIN_S390_EFPC. | |
8712 | (code_for_builtin): Add CODE_FOR_s390_sfpc and CODE_FOR_s390_efpc. | |
8713 | (s390_init_builtins): Generate new builtin functions. | |
8714 | * config/s390/s390.md (UNSPECV_SFPC, UNSPECV_EFPC): New constants. | |
8715 | (s390_sfpc, s390_efpc): New pattern definitions. | |
8716 | ||
751c914e | 8717 | 2015-02-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
8718 | ||
8719 | * config/s390/s390.c: (enum s390_builtin, s390_expand_builtin): | |
8720 | Rename S390_BUILTIN_max to S390_BUILTIN_MAX. | |
8721 | (s390_builtin_decls): New array. | |
8722 | (s390_init_builtins): Put builtin decls into s390_builtin_decls. | |
8723 | (s390_builtin_decl): New function. | |
8724 | (TARGET_BUILTIN_DECL): Define macro. | |
8725 | ||
ab1e78e5 | 8726 | 2015-02-27 Richard Biener <rguenther@suse.de> |
8727 | ||
8728 | PR middle-end/63175 | |
8729 | * builtins.c (get_object_alignment_2): Make sure to re-apply | |
8730 | the ANDed mask after recursing to its operand gets us a new | |
8731 | misalignment bit position. | |
8732 | ||
ce7711df | 8733 | 2015-02-26 Jan Hubicka <hubicka@ucw.cz> |
8734 | Martin Liska <mliska@suse.cz> | |
8735 | ||
8736 | PR bootstrap/65150 | |
8737 | * ipa-icf.c (symbol_compare_collection::symbol_compare_colleciton): | |
8738 | Use address_matters_p. | |
8739 | (redirect_all_callers, set_addressable): New functions. | |
8740 | (sem_function::merge): Reorganize and fix merging issues. | |
8741 | (sem_variable::merge): Likewise. | |
8742 | (sem_variable::compare_sections): Remove. | |
8743 | * common.opt (fmerge-all-constants, fmerge-constants): Remove | |
8744 | Optimization flag. | |
8745 | * symtab.c (symtab_node::resolve_alias): When alias has aliases, | |
8746 | redirect them. | |
8747 | (symtab_node::make_decl_local): Set ADDRESSABLE bit when | |
8748 | decl is used. | |
8749 | (address_matters_1): New function. | |
8750 | (symtab_node::address_matters_p): New function. | |
8751 | * cgraph.c (cgraph_edge::verify_corresponds_to_fndecl): Fix | |
8752 | check for merged flag. | |
8753 | * cgraph.h (address_matters_p): Declare. | |
8754 | (symtab_node::address_taken_from_non_vtable_p): Remove. | |
8755 | (symtab_node::address_can_be_compared_p): New method. | |
8756 | (ipa_ref::address_matters_p): Move here from ipa-ref.c; simplify. | |
8757 | * ipa-visibility.c (symtab_node::address_taken_from_non_vtable_p): | |
8758 | Remove. | |
8759 | (comdat_can_be_unshared_p_1) Use address_matters_p. | |
8760 | (update_vtable_references): Fix formating. | |
8761 | * ipa-ref.c (ipa_ref::address_matters_p): Move inline. | |
8762 | * cgraphunit.c (cgraph_node::create_wrapper): Drop UNINLINABLE flag. | |
8763 | * cgraphclones.c: Preserve merged and icf_merged flags. | |
8764 | ||
6238b445 | 8765 | 2015-02-26 Sandra Loosemore <sandra@codesourcery.com> |
8766 | ||
8767 | * doc/extend.texi (Function Attributes): Fix spelling and typos. | |
8768 | (Label Attributes): Likewise. | |
8769 | (Cilk Plus Builtins): Likewise. | |
8770 | (ARC SIMD Built-in Functions): Likewise. | |
8771 | (ARM C Language Extensions (ACLE)): Likewise. | |
8772 | (PowerPC Built-in Functions): Likewise. | |
8773 | (PowerPC Hardware Transactional Memory Built-in Functions): | |
8774 | Likewise. | |
8775 | ||
1e6c1ce6 | 8776 | 2015-02-26 Jakub Jelinek <jakub@redhat.com> |
8777 | ||
229fa37d | 8778 | PR tree-optimization/65216 |
8779 | * tree-ssa-reassoc.c (rewrite_expr_tree): Force creation of | |
8780 | new stmt and new SSA_NAME for lhs whenever the arguments have | |
8781 | changed and weren't just swapped. Fix comment typo. | |
8782 | ||
1e6c1ce6 | 8783 | PR tree-optimization/65215 |
8784 | * tree-ssa-math-opts.c (find_bswap_or_nop_load): Return false | |
8785 | for PDP endian targets. | |
8786 | (perform_symbolic_merge, find_bswap_or_nop_1, find_bswap_or_nop): | |
8787 | Fix up formatting issues. | |
8788 | (bswap_replace): Likewise. For BYTES_BIG_ENDIAN, if the final access | |
8789 | size is smaller than the original, adjust MEM_REF offset by the | |
8790 | difference of sizes. Use is_gimple_mem_ref_addr instead of | |
8791 | is_gimple_min_invariant test to avoid adding address temporaries. | |
8792 | ||
0e62482d | 8793 | 2015-02-26 Martin Liska <mliska@suse.cz> |
8794 | Jan Hubicka <hubicka@ucw.cz> | |
8795 | ||
8796 | PR ipa/64693 | |
8797 | * ipa-icf.c (symbol_compare_collection::symbol_compare_collection): New. | |
8798 | (sem_item_optimizer::subdivide_classes_by_sensitive_refs): New function. | |
8799 | (sem_item_optimizer::process_cong_reduction): Include division by | |
8800 | sensitive references. | |
8801 | * ipa-icf.h (struct symbol_compare_hashmap_traits): New class. | |
8802 | * ipa-ref.c (ipa_ref::address_matters_p): New function. | |
8803 | * ipa-ref.h (ipa_ref::address_matters_p): Likewise. | |
8804 | ||
8992f348 | 8805 | 2015-02-26 Georg-Johann Lay <avr@gjlay.de> |
8806 | ||
8807 | PR target/65192 | |
8808 | * config/avr/avr-protos.h (tiny_valid_direct_memory_access_range): | |
8809 | Remove. | |
8810 | * config/avr/avr.c: Same. | |
8811 | (avr_legitimate_address_p) <AVR_TINY, CONSTANT_ADDRESS_P>: | |
8812 | Refuse any constant address not in 0..0xbf. | |
8813 | * config/avr/avr.md (*mov<mode>, *movsf): Remove | |
8814 | tiny_valid_direct_memory_access_range from insn conditions. | |
8815 | (mov<mode>): Don't special-case expansion of avrtiny addresses. | |
8816 | ||
e13062e7 | 8817 | 2015-02-26 Oleg Endo <olegendo@gcc.gnu.org> |
8818 | ||
8819 | PR target/61142 | |
8820 | * config/sh/sh.c (sh_check_add_incdec_notes): New function. | |
8821 | * config/sh/sh-protos.h (sh_check_add_incdec_notes): Declare it. | |
8822 | * config/sh/predicates.md (const_logical_operand): New predicate. | |
8823 | * config/sh/sh.md: Add new peephole2 patterns. | |
8824 | ||
897c92c3 | 8825 | 2015-02-26 Marek Polacek <polacek@redhat.com> |
8826 | ||
8827 | PR ipa/65008 | |
8828 | * ipa-inline.c (early_inliner): Recompute inline parameters. | |
8829 | ||
7c0c1f65 | 8830 | 2015-02-26 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
8831 | ||
8832 | PR target/65171 | |
8833 | * config/rs6000/rs6000.c (rs6000_analyze_swaps): Ensure | |
8834 | instructions with TImode operands are included in the analysis. | |
8835 | ||
c5baf1e1 | 8836 | 2015-02-26 Sebastian Pop <s.pop@samsung.com> |
8837 | ||
8838 | * tree-ssa-threadupdate.c (dump_jump_thread_path): Print all edges | |
8839 | of an EDGE_FSM_THREAD. | |
8840 | ||
ff4194af | 8841 | 2015-02-25 Adhemerval Zanella <azanella@linux.vnet.ibm.com> |
8842 | ||
8843 | * config/rs6000/htm.md (tcheck): Fix assembly encoding. | |
8844 | ||
d073a2ae | 8845 | 2015-02-25 Aldy Hernandez <aldyh@redhat.com> |
8846 | ||
8847 | PR debug/46102 | |
8848 | * dwarf2out.c (dwarf2out_init): Disable -feliminate-dwarf2-dups. | |
8849 | ||
b9903eb3 | 8850 | 2015-02-26 Sebastian Pop <s.pop@samsung.com> |
8851 | ||
8852 | PR tree-optimization/65048 | |
8853 | * tree-ssa-threadupdate.c (valid_jump_thread_path): New. | |
8854 | (thread_through_all_blocks): Call valid_jump_thread_path. | |
8855 | Remove invalid FSM jump-thread paths. | |
8856 | ||
2e971afd | 8857 | 2015-02-26 Jakub Jelinek <jakub@redhat.com> |
8858 | ||
8859 | * passes.c (ipa_write_summaries_1): Call lto_output_init_mode_table. | |
8860 | (ipa_write_optimization_summaries): Likewise. | |
8861 | * tree-streamer.h: Include data-streamer.h. | |
8862 | (streamer_mode_table): Declare extern variable. | |
8863 | (bp_pack_machine_mode, bp_unpack_machine_mode): New inline functions. | |
8864 | * lto-streamer-out.c (lto_output_init_mode_table, | |
8865 | lto_write_mode_table): New functions. | |
8866 | (produce_asm_for_decls): Call lto_write_mode_table when streaming | |
8867 | offloading LTO. | |
8868 | * lto-section-in.c (lto_section_name): Add "mode_table" entry. | |
8869 | (lto_create_simple_input_block): Add mode_table argument to the | |
8870 | lto_input_block constructors. | |
8871 | * ipa-prop.c (ipa_prop_read_section, read_replacements_section): | |
8872 | Likewise. | |
8873 | * data-streamer-in.c (string_for_index): Likewise. | |
8874 | * ipa-inline-analysis.c (inline_read_section): Likewise. | |
8875 | * ipa-icf.c (sem_item_optimizer::read_section): Likewise. | |
8876 | * lto-cgraph.c (input_cgraph_opt_section): Likewise. | |
8877 | * lto-streamer-in.c (lto_read_body_or_constructor, | |
8878 | lto_input_toplevel_asms): Likewise. | |
8879 | (lto_input_mode_table): New function. | |
8880 | * tree-streamer-out.c (pack_ts_fixed_cst_value_fields, | |
8881 | pack_ts_decl_common_value_fields, pack_ts_type_common_value_fields): | |
8882 | Use bp_pack_machine_mode. | |
8883 | * real.h (struct real_format): Add name field. | |
8884 | * lto-streamer.h (enum lto_section_type): Add LTO_section_mode_table. | |
8885 | (class lto_input_block): Add mode_table member. | |
8886 | (lto_input_block::lto_input_block): Add mode_table_ argument, | |
8887 | initialize mode_table. | |
8888 | (struct lto_file_decl_data): Add mode_table field. | |
8889 | (lto_input_mode_table, lto_output_init_mode_table): New prototypes. | |
8890 | * tree-streamer-in.c (unpack_ts_fixed_cst_value_fields, | |
8891 | unpack_ts_decl_common_value_fields, | |
8892 | unpack_ts_type_common_value_fields): Call bp_unpack_machine_mode. | |
8893 | * tree-streamer.c (streamer_mode_table): New variable. | |
8894 | * real.c (ieee_single_format, mips_single_format, | |
8895 | motorola_single_format, spu_single_format, ieee_double_format, | |
8896 | mips_double_format, motorola_double_format, | |
8897 | ieee_extended_motorola_format, ieee_extended_intel_96_format, | |
8898 | ieee_extended_intel_128_format, ieee_extended_intel_96_round_53_format, | |
8899 | ibm_extended_format, mips_extended_format, ieee_quad_format, | |
8900 | mips_quad_format, vax_f_format, vax_d_format, vax_g_format, | |
8901 | decimal_single_format, decimal_double_format, decimal_quad_format, | |
8902 | ieee_half_format, arm_half_format, real_internal_format): Add name | |
8903 | field. | |
8904 | * config/pdp11/pdp11.c (pdp11_f_format, pdp11_d_format): Likewise. | |
8905 | ||
d3aa9bd5 | 8906 | 2015-02-26 Yuri Rumyantsev <ysrumyan@gmail.com> |
8907 | ||
8908 | PR target/65161 | |
8909 | * config/i386/i386.c (ix86_sched_reorder): Skip instruction | |
8910 | reordering for selective scheduling. | |
8911 | ||
580f4c48 | 8912 | 2015-02-26 Terry Guo <terry.guo@arm.com> |
8913 | ||
8914 | * config/arm/arm-cores.def (cortex-m7): Add flag FL_NO_VOLATILE_CE. | |
8915 | * config/arm/arm-protos.h (FL_NO_VOLATILE_CE): New flag. | |
8916 | (arm_arch_no_volatile_ce): Declare new global variable. | |
8917 | * config/arm/arm.c (arm_arch_no_volatile_ce): New global variable. | |
8918 | (arm_option_override): Assign value to arm_arch_no_volatile_ce. | |
8919 | * config/arm/arm.h (arm_arch_no_volatile_ce): Declare it. | |
8920 | (TARGET_NO_VOLATILE_CE): New macro. | |
8921 | * config/arm/arm.md (arm_comparison_operator): Disabled if not allow | |
8922 | volatile memory access in IT block | |
8923 | ||
93d8e5f3 | 8924 | 2015-02-25 Kai Tietz <ktietz@redhat.com> |
8925 | ||
8926 | PR tree-optimization/61917 | |
8927 | * tree-vect-loop.c (vectorizable_reduction): Handle obvious case | |
8928 | that reduc_def_stmt is null. | |
8929 | ||
819a768f | 8930 | 2015-02-25 Martin Liska <mliska@suse.cz> |
8931 | ||
8932 | * ipa-icf-gimple.c (func_checker::compare_variable_decl): Compare | |
8933 | hard register variables. | |
8934 | ||
76284587 | 8935 | 2015-02-25 Kai Tietz <ktietz@redhat.com> |
8936 | ||
8937 | PR target/64212 | |
8938 | * symtab.c (symtab::make_decl_local): Set DECL_IMPORT_P explicit to 0. | |
8939 | (symtab::noninterposable_alias): Likewise. | |
8940 | ||
c2098d00 | 8941 | 2015-02-25 Ilya Enkovich <ilya.enkovich@intel.com> |
8942 | ||
8943 | PR target/65167 | |
8944 | * gcc/config/i386/i386.c (ix86_function_arg_regno_p): Support | |
8945 | bounds registers. | |
8946 | (avoid_func_arg_motion): Add dependencies for BNDSTX insns. | |
8947 | ||
95b0e572 | 8948 | 2015-02-25 Alan Lawrence <alan.lawrence@arm.com> |
8949 | ||
8950 | PR target/64997 | |
8951 | * config/aarch64/aarch64.md (*xor_one_cmpl<mode>3): Use FP_REGNUM_P | |
8952 | as split condition; force split via '#' in output pattern. | |
8953 | ||
de3aabcf | 8954 | 2015-02-25 Richard Biener <rguenther@suse.de> |
c6e5fbeb | 8955 | Kai Tietz <ktietz@redhat.com> |
de3aabcf | 8956 | |
8957 | PR tree-optimization/61917 | |
8958 | * tree-vect-loop.c (vectorizable_reduction): Allow | |
8959 | vect_internal_def without reduction to exit graceful. | |
8960 | ||
cb5cf35e | 8961 | 2015-02-25 Georg-Johann Lay <avr@gjlay.de> |
8962 | ||
8963 | PR target/65196 | |
8964 | * config/avr/avr.c (avr_adjust_insn_length): Call recog_memoized | |
8965 | only with NONDEBUG_INSN_P. | |
8966 | ||
9d4943b2 | 8967 | 2015-02-25 Georg-Johann Lay <avr@gjlay.de> |
8968 | ||
8969 | Use variadic macros with avr-log.c. | |
8970 | ||
8971 | * config/avr/avr-protos.h (avr_vdump): New prototype. | |
8972 | (avr_log_set_caller_e, avr_log_set_caller_f): Remove protos. | |
8973 | (avr_edump, avr_fdump, avr_dump): (Re)define to use avr_vdump. | |
8974 | * config/avr/avr-log.c: Adjust comments. | |
8975 | (avr_vdump): New function. | |
8976 | (avr_vadump): Pass caller as 2nd argument instead of format string. | |
8977 | (avr_log_caller, avr_log_fdump_e, avr_log_fdump_f) | |
8978 | (avr_log_set_caller_e, avr_log_set_caller_f): Remove. | |
8979 | ||
ff7cb116 | 8980 | 2015-02-25 Jakub Jelinek <jakub@redhat.com> |
8981 | ||
8982 | PR lto/64374 | |
8983 | * target.def (target_option_stream_in): New target hook. | |
8984 | * tree-streamer-in.c (streamer_read_tree_bitfields): Invoke | |
8985 | targetm.target_option.post_stream_in if non-NULL. | |
8986 | * doc/tm.texi.in: Add @hook TARGET_OPTION_POST_STREAM_IN. | |
8987 | * doc/tm.texi: Updated. | |
8988 | * config/i386/i386.c (ix86_function_specific_post_stream_in): New | |
8989 | function. | |
8990 | (TARGET_OPTION_POST_STREAM_IN): Redefine. | |
8991 | ||
3a1a667f | 8992 | 2015-02-24 Jeff Law <law@redhat.com> |
8993 | ||
8994 | PR target/65117 | |
8995 | * config/xtensa/xtensa.md (zero_cost_loop_start): Reverse numbering | |
8996 | of operand 0 and operand 2. | |
8997 | (zero_cost_loop_end, loop_end): Similarly. | |
9d4943b2 | 8998 | |
2084326e | 8999 | 2015-02-24 Aldy Hernandez <aldyh@redhat.com> |
9000 | ||
9001 | * gimple.h (gimple_build_assign): Rename CXX_MEM_STAT_DECL to | |
9002 | CXX_MEM_STAT_INFO. | |
9003 | ||
29236229 | 9004 | 2015-02-24 DJ Delorie <dj@redhat.com> |
9005 | ||
c6e5fbeb | 9006 | * config/rl78/rl78-protos.h (rl78_split_movsi): Accept a mode as well. |
29236229 | 9007 | * config/rl78/rl78-expand.md (movsf): New, same as movsi. |
9008 | * config/rl78/rl78.c (rl78_split_movsi): Accept a mode, use it | |
9009 | instead of hardcoding SImode. | |
9010 | ||
ec12b31a | 9011 | 2015-02-24 Bernd Schmidt <bernds@codesourcery.com> |
9012 | ||
9013 | * omp-low.c (create_omp_child_function): Tag entrypoint | |
9014 | functions with a special attribute. | |
9015 | ||
bfea87e3 | 9016 | 2015-02-24 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com> |
9017 | ||
9018 | PR target/65058 | |
9019 | * config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Drop unused variable. | |
9020 | ||
b83f34d0 | 9021 | 2015-02-24 Vladimir Makarov <vmakarov@redhat.com> |
9022 | ||
9023 | PR rtl-optimization/65123 | |
9024 | * lra-remat.c (operand_to_remat): Check hard regs in insn | |
9025 | definition too. | |
9026 | ||
36c7f07f | 9027 | 2015-02-24 Nick Clifton <nickc@redhat.com> |
9028 | ||
9029 | * config/v850/v850.h (ASM_SPEC): Pass -msoft-float/-mhard-float on | |
9030 | to the assembler. | |
9031 | ||
6349b8cc | 9032 | 2015-02-24 Thomas Schwinge <thomas@codesourcery.com> |
9033 | ||
9034 | PR libgomp/64625 | |
9035 | * omp-builtins.def (BUILT_IN_GOACC_DATA_START): Specify as | |
9036 | BT_FN_VOID_INT_SIZE_PTR_PTR_PTR, not | |
9037 | BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR. | |
9038 | (BUILT_IN_GOACC_ENTER_EXIT_DATA, BUILT_IN_GOACC_UPDATE): Specify as | |
9039 | BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_INT_INT_VAR, not | |
9040 | BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR. | |
9041 | (BUILT_IN_GOACC_PARALLEL): Specify as | |
9042 | BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR, not | |
9043 | BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR. | |
9044 | * builtin-types.def | |
9045 | (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR) | |
9046 | (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR): | |
9047 | Remove function types. | |
9048 | (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR) | |
9049 | (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_INT_INT_VAR) | |
9050 | (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR): | |
9051 | New function types. | |
9052 | ||
a1faa210 | 9053 | 2015-02-24 Georg-Johann Lay <avr@gjlay.de> |
9054 | ||
9055 | * config/avr/stdfix.h [__WITH_AVRLIBC__]: Include <stdfix-avrlibc.h>. | |
9056 | ||
da002466 | 9057 | 2015-02-24 Jakub Jelinek <jakub@redhat.com> |
9058 | ||
9059 | PR tree-optimization/65170 | |
9060 | * wide-int.cc (wi::mul_internal): For the umul_ppmm optimization, | |
9061 | if val[1] < 0, clear also val[2] and return 3. | |
9062 | ||
269e3273 | 9063 | 2015-02-24 Alan Modra <amodra@gmail.com> |
9064 | ||
e4899945 | 9065 | PR target/65172 |
269e3273 | 9066 | * config/rs6000/rs6000.c (get_memref_parts): Only return true |
9067 | when *base is a reg. Handle nested plus addresses. Simplify | |
9068 | pre_modify test. | |
9069 | ||
2a63d225 | 9070 | 2015-02-22 Max Filippov <jcmvbkbc@gmail.com> |
9071 | ||
9072 | * config/xtensa/xtensa.h (CONSTANT_ALIGNMENT, DATA_ALIGNMENT): | |
9073 | use natural alignment when optimizing for size. | |
9074 | ||
e6935d2f | 9075 | 2015-02-23 Kaz Kojima <kkojima@gcc.gnu.org> |
9076 | ||
9077 | PR target/65153 | |
9078 | * config/sh/sh.md (movsicc_true+3): Remove peephole. | |
9079 | * config/sh/sh-protos.h (replace_n_hard_rtx): Don't declare. | |
9080 | * config/sh/sh.c (replace_n_hard_rtx): Remove. | |
9081 | ||
a140fb64 | 9082 | 2015-02-23 Richard Sandiford <richard.sandiford@arm.com> |
9083 | ||
9084 | PR fortran/63427 | |
9085 | * wide-int.cc (wi::from_mpz): Cope with unwrapped values that are | |
9086 | too big for a wide_int. Implement missing wrapping operation. | |
9087 | ||
e8a63d75 | 9088 | 2015-02-23 Oleg Endo <olegendo@gcc.gnu.org> |
9089 | ||
9090 | PR target/65163 | |
9091 | * config/sh/sh.md (swapbsi2, related peephole2): Use const_int -65536 | |
9092 | instead of const_int 4294901760. | |
9093 | ||
75e53476 | 9094 | 2015-02-23 Georg-Johann Lay <avr@gjlay.de> |
9095 | ||
9096 | * config/avr/t-avr: Fix typo in comment. | |
9097 | ||
704f0707 | 9098 | 2015-02-21 Richard Sandiford <richard.sandiford@arm.com> |
9099 | ||
9100 | * doc/rtl.texi (fma): Clarify documentation. | |
9101 | ||
54d28c30 | 9102 | 2015-02-20 Aldy Hernandez <aldyh@redhat.com> |
9103 | ||
9104 | PR debug/58123 | |
9105 | * gimplify.c (gimplify_expr): Prefer location of TRY_FINALLY_EXPR | |
9106 | over input_location. | |
9107 | ||
41971a20 | 9108 | 2015-02-20 Bernd Schmidt <bernds@codesourcery.com> |
9109 | ||
9110 | * tree-streamer-in.c (unpack_ts_decl_common_value_fields, | |
9111 | unpack_ts_type_common_value_fields): If ACCEL_COMPILER, | |
9112 | restrict alignments to absolute_biggest_alignment. | |
9113 | * config/i386/i386.c (TARGET_ABSOLUTE_BIGGEST_ALIGNMENT): | |
9114 | Define. | |
9115 | * doc/tm.texi.in (TARGET_ABSOLUTE_BIGGEST_ALIGNMENT): Add. | |
9116 | * doc/tm.texi: Regenerate. | |
9117 | * target.def (absolute_biggest_alignment): New DEFHOOKPOD. | |
9118 | ||
a1641aaa | 9119 | 2015-02-20 Vladimir Makarov <vmakarov@redhat.com> |
9120 | ||
9121 | PR target/64172 | |
c6e5fbeb | 9122 | * ira-color.c (color_pass): Prevent splitting multi-register pseudos. |
a1641aaa | 9123 | |
bb80be62 | 9124 | 2015-02-20 Richard Biener <rguenther@suse.de> |
9125 | ||
9126 | PR tree-optimization/65136 | |
9127 | * tree-ssa-propagate.c: Include cfgloop.h. | |
9128 | (replace_phi_args_in): Avoid replacing loop latch edge PHI | |
9129 | arguments with constants. | |
9130 | ||
c80f87ec | 9131 | 2015-02-20 Jakub Jelinek <jakub@redhat.com> |
9132 | Martin Liska <mliska@suse.cz> | |
9133 | ||
9134 | PR target/63892 | |
9135 | * ipa-icf.c (sem_function::merge): If DECL_COMDAT_GROUP (alias->decl), | |
9136 | don't try to create_thunk if stdarg_p. If | |
9137 | !sem_item::target_supports_symbol_aliases_p (), similarly, and try to | |
9138 | redirect_callers if possible. | |
9139 | (sem_item_optimizer::execute): Call unregister_hooks here... | |
9140 | (ipa_icf_driver): ... instead of here. | |
9141 | ||
aadc98cb | 9142 | 2015-02-20 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
9143 | ||
9144 | * config/aarch64/aarch64.md (*aarch64_lshr_sisd_or_int_<mode>3): | |
9145 | Mark operand 0 as earlyclobber in 2nd alternative. | |
9146 | (1st define_split below *aarch64_lshr_sisd_or_int_<mode>3): | |
9147 | Write negated shift amount into QI lowpart operand 0 and use it | |
9148 | in the shift step. | |
9149 | (2nd define_split below *aarch64_lshr_sisd_or_int_<mode>3): Likewise. | |
9150 | ||
a73afd90 | 9151 | 2015-02-20 Bernd Schmidt <bernds@codesourcery.com> |
9152 | ||
c6e5fbeb | 9153 | * cgraph.h (clone_function_name_1): Declare. |
9154 | * cgraphclones.c (clone_function_name_1): New function. | |
9155 | (clone_function_name): Use it. | |
9156 | * lto-partition.c: Include "stringpool.h". | |
9157 | (must_not_rename, maybe_rewrite_identifier) | |
9158 | (validize_symbol_for_target): New static functions. | |
9159 | (privatize_symbol_name): Use must_not_rename. | |
9160 | (promote_symbol): Call validize_symbol_for_target. | |
9161 | (lto_promote_cross_file_statics): Likewise. | |
9162 | (lto_promote_statics_nonwpa): Likewise. | |
a73afd90 | 9163 | |
8968f6ff | 9164 | 2015-02-20 Georg-Johann Lay <avr@gjlay.de> |
9165 | ||
9166 | PR target/64452 | |
9167 | * config/avr/avr.md (pushhi_insn): New insn. | |
9168 | (push<mode>1): Push virtual regs in one chunk using pushhi1_insn. | |
9169 | ||
92aa450f | 9170 | 2015-02-20 Bernd Schmidt <bernds@codesourcery.com> |
9171 | Jakub Jelinek <jakub@redhat.com> | |
9172 | ||
9173 | * tree-streamer.c (preload_common_nodes): Don't preload | |
9174 | TI_VA_LIST* for offloading. | |
9175 | * tree-stdarg.c (pass_stdarg::gate): Disable for ACCEL_COMPILER | |
9176 | in_lto_p. | |
9177 | ||
786391d9 | 9178 | 2015-02-19 John David Anglin <danlgin@gcc.gnu.org> |
9179 | ||
9180 | * config/pa/pa.c (pa_emit_move_sequence): Always force | |
9181 | (const (plus (symbol) (const_int))) to const mem. Put REG_EQUAL | |
9182 | note on insn. | |
0e485231 | 9183 | |
9184 | * config/pa/pa.c (pa_reloc_rw_mask): New function. | |
9185 | (TARGET_ASM_RELOC_RW_MASK): Define. | |
9186 | (pa_cannot_force_const_mem): Revert previous change. | |
9187 | ||
f8298177 | 9188 | 2015-02-19 Martin Jambor <mjmabor@suse.cz> |
9189 | Jan Hubicka <hubicka@ucw.cz> | |
9190 | ||
9191 | PR ipa/65028 | |
9192 | * ipa-cp.c (propagate_alignment_accross_jump_function): Fix propagation | |
9193 | across jump functions. | |
9194 | ||
6ca5d410 | 9195 | 2015-02-19 Uros Bizjak <ubizjak@gmail.com> |
9196 | ||
9197 | * config/alpha/alpha.c (alpha_in_small_data_p): Reject common symbols. | |
9198 | ||
e5200f9f | 9199 | 2015-02-19 Sandra Loosemore <sandra@codesourcery.com> |
9200 | ||
6ca5d410 | 9201 | * doc/extend.texi (x86 transactional memory intrinsics): Copy-edit. |
e5200f9f | 9202 | |
bfefb5bd | 9203 | 2015-02-19 Richard Henderson <rth@redhat.com> |
9204 | ||
9205 | PR middle-end/65074 | |
9206 | * varasm.c (default_binds_local_p_2): Don't test node->definition; | |
9207 | test DECL_EXTERNAL independent of symtab_node. | |
9208 | ||
00984d17 | 9209 | 2015-02-19 Jakub Jelinek <jakub@redhat.com> |
9210 | ||
9211 | PR lto/65012 | |
9212 | * varpool.c (varpool_node::get_constructor): Return early | |
9213 | if this->lto_file_data is NULL. | |
9214 | ||
e2508366 | 9215 | 2015-02-19 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> |
9216 | ||
6ca5d410 | 9217 | * haifa-sched.c (enum rfs_decision, rfs_str): Remove RFS_DEBUG. |
9218 | (rank_for_schedule_debug): Update. | |
9219 | (ready_sort): Make static. Move sorting logic to ... | |
9220 | (ready_sort_debug, ready_sort_real): New static functions. | |
9221 | (schedule_block): Sort both debug insns and real insns in preparation | |
9222 | for ready list trimming. Improve debug output. | |
9223 | * sched-int.h (ready_sort): Remove global declaration. | |
e2508366 | 9224 | |
8ed0255a | 9225 | 2015-02-18 Trevor Saunders <tsaunders@mozilla.com> |
9226 | ||
9227 | * ipa-icf.c (sem_function::equals_private): Adjust. | |
9228 | (sem_function::bb_dict_test): Take a vec<int> * instead of | |
9229 | auto_vec<int>. | |
9230 | * ipa-icf.h (bb_dict_test): Likewise. | |
9231 | ||
4422041b | 9232 | 2015-02-18 Jakub Jelinek <jakub@redhat.com> |
9233 | ||
9234 | PR gcov-profile/64634 | |
9235 | * tree-eh.c (frob_into_branch_around): Fix up typos | |
9236 | in function comment. | |
9237 | (lower_catch): Put eh_seq resulting from EH lowering of | |
995c6643 | 9238 | the cleanup sequence after the cleanup rather than before it. |
4422041b | 9239 | |
7c09c5f7 | 9240 | 2015-02-18 Tom de Vries <tom@codesourcery.com> |
9241 | ||
9242 | * common.opt (fstdarg-opt): New option. | |
9243 | * tree-stdarg.c (pass_stdarg::gate): Use flag_stdarg_opt. | |
9244 | * doc/invoke.texi (@item Optimization Options): Add -fstdarg-opt. | |
9245 | (@item -fstdarg-opt): New item. | |
9246 | ||
a21aaa7e | 9247 | 2015-02-18 H.J. Lu <hongjiu.lu@intel.com> |
9248 | ||
9249 | PR target/65064 | |
9250 | * config/ia64/predicates.md (sdata_symbolic_operand): Return false | |
9251 | for common symbols. | |
9252 | ||
99988a8c | 9253 | 2015-02-18 Jakub Jelinek <jakub@redhat.com> |
9254 | ||
9255 | * config/i386/t-intelmic (mkoffload.o): Remove dependency on | |
9256 | insn-modes.h. | |
9257 | (ALL_HOST_OBJS): Add mkoffload.o. | |
9258 | * config/nvptx/t-nvptx (ALL_HOST_OBJS): Likewise. | |
9259 | ||
efb3a774 | 9260 | 2015-02-18 Jan Hubicka <hubicka@ucw.cz> |
9261 | ||
9262 | * ipa-devirt.c (odr_subtypes_equivalent_p): Fix formating. | |
9263 | (compare_virtual_tables): Be smarter about skipping typeinfos; | |
9264 | do sane output on virtual table table mismatch. | |
9265 | (warn_odr): Be ready for forward declarations of enums; | |
9266 | output sane info on base mismatch and virtual table mismatch. | |
9267 | (add_type_duplicate): Fix code choosing prevailing type; do not ICE | |
9268 | when only one type is polymorphic. | |
9269 | (get_odr_type): Fix hashtable corruption. | |
9270 | (dump_odr_type): Dump mangled names. | |
9271 | ||
67a97bd8 | 9272 | 2015-02-18 Richard Biener <rguenther@suse.de> |
9273 | ||
9274 | PR tree-optimization/65063 | |
9275 | * tree-predcom.c (determine_unroll_factor): Return 1 if we | |
9276 | have replaced looparound PHIs. | |
9277 | ||
9b8af749 | 9278 | 2015-02-18 Martin Liska <mliska@suse.cz> |
9279 | ||
9280 | * lto-streamer.c (lto_streamer_init): Encapsulate | |
9281 | streamer_check_handled_ts_structures with checking macro. | |
9282 | ||
033ab5d3 | 9283 | 2015-02-18 Jakub Jelinek <jakub@redhat.com> |
9284 | ||
9285 | PR ipa/65087 | |
9286 | * cgraphclones.c (cgraph_node::create_virtual_clone): Only copy | |
9287 | section if !implicit_section. | |
9288 | (cgraph_node::create_version_clone_with_body): Likewise. | |
9289 | * trans-mem.c (ipa_tm_create_version): Likewise. | |
9290 | ||
0dbca901 | 9291 | 2015-02-18 Richard Biener <rguenther@suse.de> |
9292 | ||
9293 | PR tree-optimization/62217 | |
9294 | * tree-ssa-dom.c (cprop_operand): Avoid propagating copies | |
9295 | into BIVs. | |
9296 | ||
243af147 | 9297 | 2015-02-18 Marek Polacek <polacek@redhat.com> |
9298 | ||
9299 | PR sanitizer/65081 | |
9300 | * ubsan.c (OBJSZ_MAX_OFFSET): Define. | |
9301 | (ubsan_expand_objsize_ifn): Don't emit run-time check if the offset | |
9302 | is in range [-16K, -1]. Don't issue run-time error if | |
9303 | (ptr > ptr + offset). | |
9304 | ||
2fdc66a9 | 9305 | 2015-02-18 Thomas Schwinge <thomas@codesourcery.com> |
9306 | ||
b8c9c5c2 | 9307 | * doc/install.texi (nvptx-*-none): New section. |
9308 | * doc/invoke.texi (Nvidia PTX Options): Likewise. | |
9309 | * config/nvptx/nvptx.opt: Update. | |
9310 | ||
a7243b52 | 9311 | * config/nvptx/mkoffload.c (parse_env_var, free_array_of_ptrs) |
9312 | (access_check): New functions, copied from | |
9313 | config/i386/intelmic-mkoffload.c. | |
9314 | (main): For non-installed testing, look in all COMPILER_PATHs for | |
9315 | GCC_INSTALL_NAME. | |
9316 | ||
2fdc66a9 | 9317 | * config/nvptx/nvptx.h (GOMP_SELF_SPECS): Define macro. |
9318 | ||
8f46e8a7 | 9319 | 2015-02-18 Andrew Pinski <apinski@cavium.com> |
9320 | Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com> | |
9321 | ||
9322 | * config/aarch64/aarch64.c (*aarch64_load_symref_appropriately): | |
9323 | Check whether the destination of SYMBOL_SMALL_TPREL is Pmode. | |
9324 | ||
7feaa33e | 9325 | 2015-02-17 Jan Hubicka <hubicka@ucw.cz> |
9326 | ||
9327 | * ipa-visibility.c (function_and_variable_visibility): Only | |
9328 | check locality if node is not already local. | |
9329 | * ipa-inline.c (want_inline_function_to_all_callers_p): Use | |
9330 | call_for_symbol_and_aliases instead of | |
9331 | call_for_symbol_thunks_and_aliases. | |
9332 | (ipa_inline): Likewise. | |
9333 | * cgraph.c (cgraph_node::call_for_symbol_thunks_and_aliases): | |
9334 | first walk aliases. | |
9335 | * ipa.c (symbol_table::remove_unreachable_nodes): Use | |
9336 | call_for_symbol_and_aliases. | |
9337 | * ipa-profile.c (ipa_propagate_frequency_data): Add function_symbol. | |
9338 | (ipa_propagate_frequency_1): Use it; use opt_for_fn | |
9339 | (ipa_propagate_frequency): Update. | |
9340 | (ipa_profile): Add opt_for_fn gueards. | |
9341 | ||
e38c7760 | 9342 | 2015-02-17 Oleg Endo <olegendo@gcc.gnu.org> |
9343 | ||
9344 | * config/sh/sh.opt (mcbranch-force-delay-slot): New option. | |
9345 | * doc/invoke.texi (SH options): Document it. | |
9346 | * config/sh/sh.c (sh_insn_length_adjustment): Check | |
9347 | TARGET_CBRANCH_FORCE_DELAY_SLOT instead of sh_cpu_attr == CPU_SH2E. | |
9348 | ||
7715e0c8 | 9349 | 2015-02-17 H.J. Lu <hongjiu.lu@intel.com> |
9350 | ||
9351 | * common.opt (fipa-cp-alignment): New. | |
9352 | * ipa-cp.c (ipcp_store_alignment_results): Check | |
9353 | flag_ipa_cp_alignment. | |
9354 | * opts.c (default_options_table): Enable -fipa-cp-alignment for | |
9355 | -O2. | |
9356 | (enable_fdo_optimizations): Set x_flag_ipa_cp_alignment. | |
9357 | * doc/invoke.texi: Document -fipa-cp-alignment. | |
9358 | ||
fdee3e8a | 9359 | 2015-02-17 Oleg Endo <olegendo@gcc.gnu.org> |
9360 | ||
9361 | PR target/64793 | |
9362 | * config/sh/sh.md (cbranch define_delay): Set annulled true branch insn | |
9363 | to nil. Adjust comments. | |
9364 | ||
e3f2be84 | 9365 | 2015-02-17 Jan Hubicka <hubicka@ucw.cz> |
9366 | ||
9367 | * ipa-visibility.c (function_and_variable_visibility): Only | |
9368 | check locality if node is not already local. | |
9369 | * ipa-inline.c (want_inline_function_to_all_callers_p): Use | |
9370 | call_for_symbol_and_aliases instead of | |
9371 | call_for_symbol_thunks_and_aliases. | |
9372 | (ipa_inline): Likewise. | |
9373 | * cgraph.c (cgraph_node::call_for_symbol_thunks_and_aliases): | |
9374 | first walk aliases. | |
9375 | * ipa.c (symbol_table::remove_unreachable_nodes): Use | |
9376 | call_for_symbol_and_aliases. | |
9377 | * ipa-profile.c (ipa_propagate_frequency_data): Add function_symbol. | |
9378 | (ipa_propagate_frequency_1): Use it; use opt_for_fn | |
9379 | (ipa_propagate_frequency): Update. | |
9380 | (ipa_profile): Add opt_for_fn guards. | |
9381 | ||
5947a4f0 | 9382 | 2015-02-17 Thomas Schwinge <thomas@codesourcery.com> |
9383 | ||
9384 | * config/nvptx/mkoffload.c (parse_file): Fix logic error in | |
9385 | skipping of "strange" tokens. | |
9386 | ||
a8d15480 | 9387 | 2015-02-17 Jeff Law <law@redhat.com> |
9388 | ||
9389 | * tree-vrp.c (identify_jump_threads): Use last_stmt. Remove | |
9390 | obsolete comment. | |
9391 | ||
75482765 | 9392 | 2015-02-17 James Greenhalgh <james.greenhalgh@arm.com> |
9393 | ||
9394 | * haifa-sched.c (recompute_todo_spec): Treat SCHED_GROUP_P | |
9395 | as forcing a HARD_DEP between instructions, thereby | |
9396 | disallowing rewriting to break dependencies. | |
9397 | ||
ddd4cdce | 9398 | 2015-02-16 Jan Hubicka <hubicka@ucw.cz> |
9399 | ||
9400 | * symtab.c (symtab_node::verify_base): Verify body_removed->!definiton | |
9401 | * lto-cgraph.c (lto_output_varpool_node): Do not keep definition of | |
9402 | variables in boundary that have no inlitalizer encoded and are | |
9403 | not aliases. | |
9404 | * varasm.c (default_binds_local_p_2): External definitions do not | |
9405 | count as definitions here. | |
9406 | ||
849b1089 | 9407 | 2015-02-16 Jeff Law <law@redhat.com> |
9408 | ||
9409 | PR tree-optimization/64823 | |
9410 | * tree-vrp.c (identify_jump_threads): Handle blocks with no real | |
9411 | statements. | |
9412 | * tree-ssa-threadedge.c (potentially_threadable_block): Allow | |
9413 | threading through blocks with PHIs, but no statements. | |
9414 | (thread_through_normal_block): Distinguish between blocks where | |
9415 | we did not process all the statements and blocks with no statements. | |
9416 | ||
022a2340 | 9417 | 2015-02-16 Jakub Jelinek <jakub@redhat.com> |
9418 | James Greenhalgh <james.greenhalgh@arm.com> | |
9419 | ||
9420 | PR ipa/64963 | |
9421 | * cgraphclones.c (cgraph_node::create_virtual_clone): Copy | |
9422 | section if not linkonce. Fix up formatting. | |
9423 | (cgraph_node::create_version_clone_with_body): Copy section. | |
9424 | * trans-mem.c (ipa_tm_create_version): Likewise. | |
9425 | ||
a69f2cf8 | 9426 | 2015-02-16 Richard Biener <rguenther@suse.de> |
9427 | ||
9428 | PR tree-optimization/65077 | |
9429 | * tree-ssa-structalias.c (get_constraint_for_1): Handle | |
9430 | IMAGPART_EXPR, REALPART_EXPR and BIT_FIELD_REF. | |
9431 | (find_func_aliases): Allow float values to carry pointers again. | |
9432 | ||
897891b5 | 9433 | 2015-02-16 James Greenhalgh <james.greenhalgh@arm.com> |
9434 | ||
9435 | * doc/install.texi (Specific): Reorder targets list to put | |
9436 | aarch64 in alphabetical order. Add a link to aarch64*-*-* | |
9437 | from the top menu. | |
9438 | ||
1079e475 | 9439 | 2015-02-16 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com> |
9440 | David Edelsohn <dje.gcc@gmail.com> | |
9441 | ||
9442 | PR target/65058 | |
9443 | * config/rs6000/rs6000.c (rs6000_output_symbol_ref): Append storage | |
9444 | mapping class to external variable or function reference. | |
9445 | * config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Do not append storage | |
9446 | mapping class. | |
9447 | ||
9448 | 2015-02-16 David Eelsohn <dje.gcc@gmail.com> | |
9449 | ||
9450 | PR target/53348 | |
9451 | * config/rs6000/rs6000.c (rs6000_declare_alias): Only use | |
9452 | ASM_WEAKEN_DECL if defined. | |
9453 | ||
17953d13 | 9454 | 2015-02-16 Richard Biener <rguenther@suse.de> |
9455 | ||
9456 | PR lto/65015 | |
9457 | * varasm.c (default_file_start): For LTO produced units | |
9458 | emit <artificial> as file directive. | |
9459 | ||
182624fa | 9460 | 2015-02-16 Richard Biener <rguenther@suse.de> |
9461 | ||
9462 | PR tree-optimization/63593 | |
9463 | * tree-predcom.c (execute_pred_commoning_chain): Delay removing | |
9464 | stmts and releasing SSA names until... | |
9465 | (execute_pred_commoning): ... after processing all chains. | |
9466 | ||
c61d51af | 9467 | 2015-02-16 Jan Hubicka <hubicka@ucw.cz> |
9468 | ||
9469 | PR ipa/65059 | |
9470 | * ipa-comdats.c (ipa_comdats): Do not categorize thunks to | |
9471 | external functions. | |
9472 | ||
7760911e | 9473 | 2015-02-15 Sandra Loosemore <sandra@codesourcery.com> |
9474 | ||
9475 | * doc/bugreport.texi: Adjust section titles throughout the file | |
9476 | to use "Title Case". | |
9477 | * doc/extend.texi: Likewise. | |
9478 | * doc/gcov.texi: Likewise. | |
9479 | * doc/implement-c.texi: Likewise. | |
9480 | * doc/implement-cxx.texi: Likewise. | |
9481 | * doc/invoke.texi: Likewise. | |
9482 | * doc/objc.texi: Likewise. | |
9483 | * doc/standards.texi: Likewise. | |
9484 | * doc/trouble.texi: Likewise. | |
9485 | ||
5154126f | 9486 | 2015-02-15 Jan Hubicka <hubicka@ucw.cz> |
9487 | ||
9488 | * cgraph.h (symtab_node::has_aliases_p): Simplify. | |
9489 | (symtab_node::call_for_symbol_and_aliases): Use has_aliases_p | |
9490 | * tree.c (lookup_binfo_at_offset): Make static. | |
9491 | (get_binfo_at_offset): Do not shadow offset; add explanatory | |
9492 | comment. | |
9493 | ||
18d8d57c | 9494 | 2015-02-15 John David Anglin <danglin@gcc.gnu.org> |
9495 | ||
9496 | * config/pa/pa.c (pa_secondary_reload): Request a secondary reload | |
9497 | for all floading point loads and stores except those using a register | |
9498 | index address. | |
9499 | * config/pa/pa.md: Add new patterns to load a lo_sum DLT operand | |
9500 | to a register. | |
9501 | ||
6a044047 | 9502 | 2015-02-14 Jan Hubicka <hubicka@ucw.cz> |
9503 | ||
9504 | * ipa-inline-analysis.c (growth_data): Add uninlinable field. | |
9505 | (do_estimate_growth_1): Record if any uninlinable edge was seen. | |
9506 | (estimate_growth): Handle uninlinable edges correctly. | |
9507 | (check_callers): New. | |
9508 | (growth_likely_positive): Handle aliases correctly. | |
9509 | ||
50f2a18b | 9510 | 2015-02-14 Jan Hubicka <hubicka@ucw.cz> |
9511 | ||
9512 | * ipa-chkp.c: Use iterate_direct_aliases. | |
9513 | * symtab.c (resolution_used_from_other_file_p): Move inline. | |
9514 | (symtab_node::create_reference): Fix formating. | |
9515 | (symtab_node::has_aliases_p): Move inline; use iterate_direct_aliases. | |
9516 | (symtab_node::iterate_reference): Move inline. | |
9517 | (symtab_node::iterate_referring): Move inline. | |
9518 | (symtab_node::iterate_direct_aliases): Move inline. | |
9519 | (symtab_node::used_from_object_file_p_worker): Inline into ... | |
9520 | (symtab_node::used_from_object_file_p): ... this one; move inline. | |
9521 | (symtab_node::call_for_symbol_and_aliases): Move inline; | |
9522 | use iterate_direct_aliases. | |
9523 | (symtab_node::call_for_symbol_and_aliases_1): New method. | |
9524 | (cgraph_node::call_for_symbol_and_aliases): Move inline; | |
9525 | use iterate_direct_aliases. | |
9526 | (cgraph_node::call_for_symbol_and_aliases_1): New method. | |
9527 | (varpool_node::call_for_node_and_aliases): Rename to ... | |
9528 | (varpool_node::call_for_symbol_and_aliases): ... this one; Move inline; | |
9529 | use iterate_direct_aliases. | |
9530 | (varpool_node::call_for_symbol_and_aliases_1): New method. | |
9531 | * ipa.c (ipa_single_use): Use iterate_direct_aliases. | |
9532 | (ipa_discover_readonly_nonaddressable_var): Update. | |
9533 | * ipa-devirt.c: Fix formating. | |
9534 | * cgraph.c (cgraph_node::can_remove_if_no_direct_calls_and_refs_p): | |
9535 | Move inline. | |
9536 | (cgraph_node::call_for_symbol_and_aliases): Move inline. | |
9537 | (cgraph_node::call_for_symbol_and_aliases_1): New function.. | |
9538 | * cgraph.h (used_from_object_file_p_worker): Remove. | |
9539 | (resolution_used_from_other_file_p): Move inline. | |
9540 | (symtab_node::has_aliases_p): Move inline; use iterate_direct_aliases. | |
9541 | (symtab_node::iterate_reference): Move inline. | |
9542 | (symtab_node::iterate_referring): Move inline. | |
9543 | (symtab_node::iterate_direct_aliases): Move inline. | |
9544 | (symtab_node::used_from_object_file_p_worker): Inline into ... | |
9545 | (symtab_node::used_from_object_file_p): Move inline. | |
9546 | * tree-emutls.c (ipa_lower_emutls): Update. | |
9547 | * varpool.c (varpool_node::call_for_symbol_and_aliases_1): New method. | |
9548 | (varpool_node::call_for_node_and_aliases): Remove. | |
9549 | ||
927d5076 | 9550 | 2015-02-14 Jakub Jelinek <jakub@redhat.com> |
9551 | ||
9552 | PR tree-optimization/62209 | |
9553 | * tree-ssa-reassoc.c (update_range_test): If stmt is a PHI and | |
9554 | op == range->exp, insert seq and gimplified code after labels | |
9555 | instead of after the phi. | |
9556 | ||
bb1779ad | 9557 | 2015-02-13 Jeff Law <law@redhat.com> |
9558 | ||
9559 | PR bootstrap/65060 | |
9560 | Revert my change for tree-optimization/64823. | |
9561 | ||
18c06fb8 | 9562 | 2015-02-13 Jakub Jelinek <jakub@redhat.com> |
9563 | ||
9564 | PR tree-optimization/65053 | |
9565 | * tree-ssa-phiopt.c (value_replacement): When moving assign before | |
9566 | cond, either reset VR on lhs or set it to phi result VR. | |
9567 | ||
eaa6752e | 9568 | 2015-02-13 Jeff Law <law@redhat.com> |
9569 | ||
c3fcfd44 | 9570 | PR tree-optimization/64823 |
9571 | * tree-vrp.c (identify_jump_threads): Handle blocks with no statements. | |
9572 | * tree-ssa-threadedge.c (potentially_threadable_block): Allow | |
9573 | threading through blocks with PHIs, but no statements. | |
9574 | (thread_through_normal_block): Distinguish between blocks where | |
9575 | we did not process all the statements and blocks with no statements. | |
9576 | ||
eaa6752e | 9577 | PR rtl-optimization/47477 |
9578 | * match.pd (convert (plus/minus (convert @0) (convert @1): New | |
9579 | simplifier to narrow arithmetic. | |
9580 | ||
82a343d2 | 9581 | 2015-02-13 Jan Hubicka <hubicka@ucw.cz> |
9582 | ||
9583 | PR ipa/65028 | |
9584 | * ipa-prop.c (update_indirect_edges_after_inlining): Do not drop | |
9585 | polymorphic call info when type is not known to be preserved. | |
9586 | ||
2bec7365 | 9587 | 2015-02-13 Maritn Jambor <mjambor@suse.cz> |
9588 | ||
9589 | PR ipa/65028 | |
9590 | * ipa-inline-transform.c (mark_all_inlined_calls_cdtor): New function. | |
9591 | (inline_call): Use it. | |
6ca5d410 | 9592 | |
8fbeb436 | 9593 | 2015-02-13 Thomas Schwinge <thomas@codesourcery.com> |
9594 | ||
9595 | * config/nvptx/offload.h (ACCEL_COMPILER_acc_device): Define to | |
9596 | GOMP_DEVICE_NVIDIA_PTX. | |
9597 | ||
eb8ea0c7 | 9598 | 2015-02-13 Jakub Jelinek <jakub@redhat.com> |
9599 | ||
9600 | PR ipa/65034 | |
9601 | * stmt.c (emit_case_nodes): Use void_type_node instead of | |
9602 | NULL_TREE as LABEL_DECL type. | |
9603 | ||
213647b1 | 9604 | 2015-02-13 John David Anglin <danglin@gcc.gnu.org> |
9605 | ||
9606 | * config/pa/constraints.md: Change "Q" and "T" constraints to memory | |
9607 | constraints. | |
9608 | * config/pa/pa.c (pa_cannot_force_const_mem): Don't allow constant | |
9609 | symbolic references to data to be forced to constant memory on the | |
9610 | SOM target. | |
9611 | ||
a35c3f55 | 9612 | 2015-02-13 Ilya Enkovich <ilya.enkovich@intel.com> |
9613 | ||
9614 | PR tree-optimization/65002 | |
9615 | * tree-cfg.c (pass_data_fixup_cfg): Don't update | |
9616 | SSA on start. | |
9617 | * tree-sra.c (some_callers_have_no_vuse_p): New. | |
9618 | (ipa_early_sra): Reject functions whose callers | |
9619 | assume function is read only. | |
9620 | ||
a7c6c843 | 9621 | 2015-02-13 Richard Biener <rguenther@suse.de> |
9622 | ||
9623 | PR lto/65015 | |
9624 | * dwarf2out.c (dwarf2out_finish): Use <artificial> as DW_AT_name | |
9625 | for LTO produced CUs. | |
9626 | ||
02acb8f3 | 9627 | 2015-02-13 Bin Cheng <bin.cheng@arm.com> |
9628 | ||
9629 | PR tree-optimization/64705 | |
9630 | * tree-ssa-loop-niter.h (expand_simple_operations): New parameter. | |
9631 | * tree-ssa-loop-niter.c (expand_simple_operations): New parameter. | |
9632 | * tree-ssa-loop-ivopts.c (extract_single_var_from_expr): New. | |
9633 | (find_bivs, find_givs_in_stmt_scev): Pass new argument to | |
9634 | expand_simple_operations. | |
9635 | ||
9636 | 2015-02-13 H.J. Lu <hongjiu.lu@intel.com> | |
78db4b4d | 9637 | Richard Henderson <rth@redhat.com> |
9638 | ||
9639 | PR rtl/32219 | |
9640 | * cgraphunit.c (cgraph_node::finalize_function): Set definition | |
9641 | before notice_global_symbol. | |
9642 | (varpool_node::finalize_decl): Likewise. | |
9643 | * varasm.c (default_binds_local_p_2): Rename from | |
9644 | default_binds_local_p_1, add weak_dominate argument. Use direct | |
9645 | returns instead of assigning to local variable. Unify varpool and | |
9646 | cgraph paths via symtab_node. Reject undef weak variables before | |
9647 | testing visibility. Reorder tests for simplicity. | |
9648 | (default_binds_local_p): Use default_binds_local_p_2. | |
9649 | (default_binds_local_p_1): Likewise. | |
9650 | (decl_binds_to_current_def_p): Unify varpool and cgraph paths | |
9651 | via symtab_node. | |
9652 | (default_elf_asm_output_external): Emit visibility when specified. | |
9653 | ||
c5075336 | 9654 | 2015-02-13 Alan Modra <amodra@gmail.com> |
9655 | ||
9656 | * config/rs6000/rs6000.c (rs6000_emit_epilogue): Fix typo in | |
9657 | code setting up r11 for out-of-line fp restore. | |
9658 | ||
02acb8f3 | 9659 | 2015-02-13 Eric Botcazou <ebotcazou@adacore.com> |
c7105f0f | 9660 | |
9661 | * config/visium/visium.opt (msv-mode): Add RejectNegative and Report. | |
9662 | (muser-mode): Likewise. | |
9663 | ||
fb0b6ac1 | 9664 | 2015-02-13 Alan Modra <amodra@gmail.com> |
9665 | ||
9666 | * config/rs6000/rs6000.c (rs6000_emit_epilogue): Use addsi3_carry | |
9667 | or adddi3_carry when restoring frame_reg_rtx from r0 after restvr. | |
9668 | ||
4cb42f43 | 9669 | 2015-02-12 David Howells <dhowells@redhat.com> |
9670 | ||
9671 | * tree-sra.c (dump_dereferences_table): Avoid -Wformat-security | |
9672 | warning. | |
9673 | * tree-ssa-uninit.c (dump_predicates): Likewise. | |
9674 | * opts.c (print_filtered_help): Likewise. | |
9675 | ||
b2f40a0d | 9676 | 2015-02-12 Jakub Jelinek <jakub@redhat.com> |
9677 | ||
a487aadc | 9678 | * dwarf2out.c (output_die): Use "%s", name instead of name to |
9679 | avoid -Wformat-security warning. | |
9680 | ||
b2f40a0d | 9681 | * dwarf2asm.c (dw2_asm_output_vms_delta): Only define |
9682 | if ASM_OUTPUT_DWARF_VMS_DELTA is defined. | |
9683 | * dwarf2out.c (output_die): Use dw2_asm_output_vms_delta | |
9684 | only if ASM_OUTPUT_DWARF_VMS_DELTA is defined. | |
9685 | ||
e65bc032 | 9686 | 2015-02-12 Jason Merrill <jason@redhat.com> |
9687 | ||
9688 | * common.opt (-flifetime-dse): New. | |
9689 | ||
ca5b5c77 | 9690 | 2015-02-12 Jakub Jelinek <jakub@redhat.com> |
9691 | ||
b3a30e6d | 9692 | PR sanitizer/65019 |
9693 | * ubsan.c (ubsan_expand_objsize_ifn): Always return true. | |
9694 | ||
ca5b5c77 | 9695 | PR tree-optimization/65014 |
9696 | * fold-const.c (fold_binary_loc): When creating {L,R}ROTATE_EXPR, | |
9697 | use original second operand of arg0 or arg1 instead of | |
9698 | that adjusted by STRIP_NOPS. | |
9699 | ||
74e43422 | 9700 | 2015-02-11 Jeff Law <law@redhat.com> |
9701 | ||
9702 | PR target/63347 | |
9703 | * haifa-sched.c (prune_ready_list): If we have a SCHED_GROUP_P insn | |
9704 | that needs to be queued, just queue it for a single cycle. | |
9705 | ||
6cb8fb82 | 9706 | 2015-02-11 Jan Hubicka <hubicka@ucw.cz> |
9707 | ||
9708 | * ipa.c (symbol_table::remove_unreachable_nodes): Avoid releasing | |
9709 | bodies of thunks; comment on why. | |
9710 | * symtab.c (symtab_node::get_partitioning_class): Aliases of extern | |
9711 | symbols are extern. | |
9712 | ||
9eb0aee3 | 9713 | 2015-02-11 Richard Henderson <rth@redhat.com> |
9714 | ||
9715 | PR sanitize/65000 | |
9716 | * tree-eh.c (mark_reachable_handlers): Mark source and destination | |
9717 | regions of __builtin_eh_copy_values. | |
9718 | ||
16a26093 | 9719 | 2015-02-11 Jakub Jelinek <jakub@redhat.com> |
9720 | ||
9721 | PR middle-end/65003 | |
9722 | * varasm.c (place_block_symbol): Assert that DECL_RTL of the | |
9723 | ultimate alias is MEM with SYMBOL_REF satisfying | |
9724 | SYMBOL_REF_HAS_BLOCK_INFO_P as its operand. Don't pass the MEM | |
9725 | to place_block_symbol, but instead pass the SYMBOL_REF operand of it. | |
9726 | ||
ab0e6fbc | 9727 | 2015-02-11 Thomas Schwinge <thomas@codesourcery.com> |
9728 | ||
bfeb7c1c | 9729 | * config/nvptx/mkoffload.c: Include "diagnostic.h" instead of |
9730 | "diagnostic-core.h". | |
9731 | (main): Initialize progname, and call diagnostic_initialize. | |
9732 | ||
c84c7f19 | 9733 | * config/nvptx/mkoffload.c (process): Refer to __OFFLOAD_TABLE__ |
9734 | instead of __OPENMP_TARGET__. | |
9735 | ||
ab0e6fbc | 9736 | * config/nvptx/mkoffload.c: Include "gomp-constants.h". |
9737 | (process): Use its GOMP_DEVICE_NVIDIA_PTX instead of (wrongly) | |
9738 | hard-coding PTX_ID. | |
9739 | ||
4dba1042 | 9740 | 2015-02-11 H.J. Lu <hongjiu.lu@intel.com> |
9741 | ||
9742 | * doc/sourcebuild.texi (pie_enabled): Document. | |
9743 | ||
e9a9dc09 | 9744 | 2015-02-11 Martin Liska <mliska@suse.cz> |
9745 | ||
9746 | PR ipa/64813 | |
9747 | * cgraphunit.c (cgraph_node::expand_thunk): Do not create | |
9748 | a return value for call to a function that is noreturn. | |
9749 | ||
108b3f6e | 9750 | 2015-02-11 Richard Biener <rguenther@suse.de> |
9751 | ||
9752 | PR lto/65015 | |
9753 | * dwarf2out.c (gen_producer_string): Drop -fltrans-output-list | |
9754 | and -fresolution. | |
9755 | ||
1b59d1a1 | 9756 | 2015-02-11 Andrew Pinski <apinski@cavium.com> |
9757 | ||
9758 | PR target/64893 | |
9759 | * config/aarch64/aarch64-builtins.c (aarch64_init_simd_builtins): | |
9760 | Change the first argument type to size_type_node and add another | |
9761 | size_type_node. | |
9762 | (aarch64_simd_expand_builtin): Handle the new argument to | |
9763 | AARCH64_SIMD_BUILTIN_LANE_CHECK and don't ICE but rather | |
9764 | print an out when the first two arguments are not | |
9765 | nonzero integer constants. | |
9766 | * config/aarch64/arm_neon.h (__AARCH64_LANE_CHECK): | |
9767 | Pass the sizeof directly to __builtin_aarch64_im_lane_boundsi. | |
9768 | ||
c65bd8cd | 9769 | 2015-02-11 Jakub Jelinek <jakub@redhat.com> |
9770 | ||
9771 | PR target/61925 | |
9772 | * config/i386/i386.c (ix86_reset_to_default_globals): Removed. | |
9773 | (ix86_reset_previous_fndecl): Restore it here, unconditionally. | |
9774 | (ix86_set_current_function): Rewritten. | |
9775 | (ix86_add_new_builtins): Temporarily clear current_target_pragma | |
9776 | when creating builtin fndecls. | |
9777 | ||
c5e076fc | 9778 | 2015-02-10 Jan Hubicka <hubicka@ucw.cz> |
9779 | ||
9780 | PR ipa/65005 | |
9781 | * ipa-visibility.c (cgraph_node::non_local_p): Turn into static | |
9782 | function. | |
9783 | * symtab.c (symtab_node::verify_base): Remove check that non-definitions | |
9784 | have no comdat group. | |
9785 | * lto-cgraph.c (lto_output_node): Always output thunk and alias info. | |
9786 | (lto_output_varpool_node): Always output alias info. | |
9787 | (output_refs): Output refs of boundary aliases, too. | |
9788 | (compute_ltrans_boundary): Add alias and thunk target into boundaries. | |
9789 | (output_symtab): Output call eges in thunks in boundary. | |
9790 | (get_alias_symbol): Remove. | |
9791 | (input_node, input_varpool_node): Do not special case weakrefs. | |
9792 | * ipa.c (symbol_table::remove_unreachable_nodes): Do not remove | |
9793 | alias and thunks targets in the boundary; do not take removed symbols | |
9794 | from their comdat groups. | |
9795 | * cgraph.c (cgraph_node::local_info): Look through aliases and thunks. | |
9796 | (cgraph_node::global_info): Remove. | |
9797 | (cgraph_node::rtl_info): Look through aliases and thunks. | |
9798 | * cgrpah.h (global_info): Remove. | |
9799 | (non_local_p): Remove. | |
9800 | ||
6a3671ce | 9801 | 2015-02-10 David Wohlferd <dw@LimeGreenSocks.com> |
9802 | Sandra Loosemore <sandra@codesourcery.com> | |
9803 | ||
9804 | * doc/invoke.texi (x86 Options [-masm=dialect]): Add cross-references | |
9805 | to inline asm. List dialects in proper order. | |
9806 | ||
4fc381d4 | 9807 | 2015-02-10 David Wohlferd <dw@LimeGreenSocks.com> |
9808 | Sandra Loosemore <sandra@codesourcery.com> | |
9809 | ||
9810 | * doc/extend.texi (Loop-Specific Pragmas): Fix grammar error. | |
9811 | ||
d6121807 | 9812 | 2015-02-10 David Wohlferd <dw@LimeGreenSocks.com> |
9813 | ||
9814 | * doc/extend.texi (Symbol-Renaming Pragmas): Restore (slightly | |
6ca5d410 | 9815 | modified) reference to Solaris. |
d6121807 | 9816 | |
5b6d2c73 | 9817 | 2015-02-10 Sandra Loosemore <sandra@codesourcery.com> |
9818 | ||
9819 | * doc/extend.texi (Extended Asm): Fix typos. | |
9820 | ||
56464312 | 9821 | 2015-02-10 Jakub Jelinek <jakub@redhat.com> |
9822 | ||
9823 | PR sanitizer/65004 | |
9824 | * ubsan.c (ubsan_expand_vptr_ifn): Always return true. | |
9825 | ||
6cf92cc1 | 9826 | 2015-02-10 Oleg Endo <olegendo@gcc.gnu.org> |
9827 | ||
9828 | PR target/64661 | |
9829 | * config/sh/sh-protos.h (TARGET_ATOMIC_ANY, TARGET_ATOMIC_STRICT, | |
9830 | TARGET_ATOMIC_SOFT_GUSA, TARGET_ATOMIC_HARD_LLCS, | |
9831 | TARGET_ATOMIC_SOFT_TCB, TARGET_ATOMIC_SOFT_IMASK): Add parentheses. | |
9832 | * config/sh/constraints.md (Ara, Add): New constraints. | |
9833 | * config/sh/sync.md (atomic_mem_operand_0, atomic_mem_operand_1): New | |
9834 | predicates. | |
9835 | (atomic_compare_and_swap<mode>, atomic_exchange<mode>): Use | |
9836 | atomic_mem_operand_0. Don't use force_reg on the memory address. | |
9837 | (atomic_compare_and_swapsi_hard): Use atomic_mem_operand_0 predicate and | |
9838 | Sra constraint. Convert to insn_and_split. Add workaround for | |
9839 | PR 64974. | |
9840 | (atomic_compare_and_swap<mode>_hard): Copy to | |
9841 | atomic_compare_and_swap<mode>_hard_1. Convert to insn_and_split. | |
9842 | Use atomic_mem_operand_0 predicate. | |
9843 | (atomic_compare_and_swap<mode>_soft_gusa, | |
9844 | atomic_exchange<mode>_soft_gusa): Use atomic_mem_operand_0 predicate and | |
9845 | AraAdd constraints. | |
9846 | (atomic_compare_and_swap<mode>_soft_tcb, | |
9847 | atomic_compare_and_swap<mode>_soft_imask, | |
9848 | atomic_exchange<mode>_soft_tcb, atomic_exchange<mode>_soft_imask): Use | |
9849 | atomic_mem_operand_0 predicate and SraSdd constraints. | |
9850 | (atomic_exchangesi_hard) Use atomic_mem_operand_0 predicate and Sra | |
9851 | constraint. | |
9852 | (atomic_exchange<mode>_hard): Copy to atomic_exchange<mode>_hard_1. | |
9853 | Convert to insn_and_split. Use atomic_mem_operand_0 predicate. | |
9854 | (atomic_fetch_<fetchop_name><mode>, atomic_fetch_nand<mode>, | |
9855 | atomic_<fetchop_name>_fetch<mode>): Use atomic_mem_operand_1. Don't use | |
9856 | force_reg on the memory address. | |
9857 | (atomic_fetch_<fetchop_name>si_hard, atomic_fetch_notsi_hard, | |
9858 | atomic_fetch_nandsi_hard, atomic_<fetchop_name>_fetchsi_hard, | |
9859 | atomic_not_fetchsi_hard, atomic_nand_fetchsi_hard): Use | |
9860 | atomic_mem_operand_1 predicate and Sra constraint. | |
9861 | (atomic_fetch_<fetchop_name><mode>_hard): Copy to | |
9862 | atomic_fetch_<fetchop_name><mode>_hard_1. Convert to insn_and_split. | |
9863 | Use atomic_mem_operand_1 predicate. | |
9864 | (atomic_<fetchop_name><mode>_hard): Copy to | |
9865 | atomic_<fetchop_name><mode>_hard_1. Convert to insn_and_split. | |
9866 | Use atomic_mem_operand_1 predicate. | |
9867 | (atomic_fetch_nand<mode>_hard): Copy to atomic_fetch_nand<mode>_hard_1. | |
9868 | Convert to insn_and_split. Use atomic_mem_operand_1 predicate. | |
9869 | (atomic_nand<mode>_hard): Copy to atomic_nand<mode>_hard_1. Convert to | |
9870 | insn_and_split. Use atomic_mem_operand_1 predicate. | |
9871 | (atomic_<fetchop_name>_fetch<mode>_hard): Copy to | |
9872 | atomic_<fetchop_name>_fetch<mode>_hard_1. Convert to insn_and_split. | |
9873 | Use atomic_mem_operand_1 predicate. | |
9874 | (atomic_nand_fetch<mode>_hard): Copy to atomic_nand_fetch<mode>_hard_1. | |
9875 | Convert to insn_and_split. Use atomic_mem_operand_1 predicate. | |
9876 | (atomic_fetch_not<mode>_hard, atomic_not_fetch<mode>_hard): Replace mems | |
9877 | in generated insn with original mem operand before emitting the insn. | |
9878 | (atomic_fetch_<fetchop_name><mode>_soft_gusa, | |
9879 | atomic_fetch_not<mode>_soft_gusa, atomic_fetch_nand<mode>_soft_gusa, | |
9880 | atomic_<fetchop_name>_fetch<mode>_soft_gusa, | |
9881 | atomic_not_fetch<mode>_soft_gusa, atomic_nand_fetch<mode>_soft_gusa): | |
9882 | Use atomic_mem_operand_1 predicate and AraAdd constraints. | |
9883 | (atomic_fetch_<fetchop_name><mode>_soft_tcb, | |
9884 | atomic_<fetchop_name><mode>_soft_tcb, atomic_fetch_not<mode>_soft_tcb, | |
9885 | atomic_not<mode>_soft_tcb, atomic_fetch_<fetchop_name><mode>_soft_imask, | |
9886 | atomic_fetch_not<mode>_soft_imask, atomic_fetch_nand<mode>_soft_tcb, | |
9887 | atomic_nand<mode>_soft_tcb, atomic_fetch_nand<mode>_soft_imask, | |
9888 | atomic_<fetchop_name>_fetch<mode>_soft_tcb, | |
9889 | atomic_not_fetch<mode>_soft_tcb, | |
9890 | atomic_<fetchop_name>_fetch<mode>_soft_imask, | |
9891 | atomic_not_fetch<mode>_soft_imask, atomic_nand_fetch<mode>, | |
9892 | atomic_nand_fetch<mode>_soft_tcb, atomic_nand_fetch<mode>_soft_imask): | |
9893 | Use atomic_mem_operand_1 predicate and SraSdd constraints. | |
9894 | ||
d3b01257 | 9895 | 2015-02-10 Uros Bizjak <ubizjak@gmail.com> |
9896 | ||
9897 | * config/alpha/alpha.md (reload_out<mode>_aligned): Make operands 2 | |
9898 | and 3 earlyclobber operands. | |
9899 | ||
e137219a | 9900 | 2015-02-10 Jan Hubicka <hubicka@ucw.cz> |
9901 | ||
9902 | * common.opt (fstack-reuse): Mark as optimization. | |
9903 | ||
17bbda62 | 9904 | 2015-02-10 Jan Hubicka <hubicka@ucw.cz> |
9905 | ||
9906 | PR ipa/64982 | |
d3b01257 | 9907 | * cgraphunit.c (cgraph_node::expand_thunk): Look for stdarg thunks. |
17bbda62 | 9908 | |
d55cde62 | 9909 | 2015-02-10 Trevor Saunders <tsaunders@mozilla.com> |
9910 | ||
9911 | PR tree-optimization/64326 | |
9912 | * cfghooks.c (make_forwarder_block): Cap frequency of created block. | |
9913 | ||
fe504175 | 9914 | 2015-02-10 Rainer Emrich <rainer@emrich-ebersheim.de> |
9915 | ||
9916 | PR gcov-profile/61889 | |
9917 | * gcov-tool.c: Remove wrong #if !defined(_WIN32) | |
9918 | ||
9251bb6f | 9919 | 2015-02-10 Richard Biener <rguenther@suse.de> |
9920 | ||
9921 | PR tree-optimization/64995 | |
9922 | * tree-ssa-sccvn.c (set_ssa_val_to): Assert that the | |
9923 | value we use is final. | |
9924 | (visit_reference_op_store): Always valueize op. | |
9925 | (visit_use): Properly valueize vuses. | |
9926 | ||
41ae9eb4 | 9927 | 2015-02-10 Richard Biener <rguenther@suse.de> |
9928 | ||
9929 | PR tree-optimization/64909 | |
9930 | * tree-vect-loop.c (vect_estimate_min_profitable_iters): Properly | |
9931 | pass a scalar-stmt count estimate to the cost model. | |
9932 | * tree-vect-data-refs.c (vect_peeling_hash_get_lowest_cost): Likewise. | |
9933 | ||
33653cfd | 9934 | 2015-02-10 Alexander Monakov <amonakov@ispras.ru> |
9935 | ||
9936 | * doc/invoke.texi (-fvar-tracking-assignments): Clarify that VTA is | |
9937 | enabled by default together with var-tracking. | |
9938 | ||
aa569c41 | 9939 | 2015-02-10 Nick Clifton <nickc@redhat.com> |
9940 | ||
9941 | * config/rl78/rl78.c: Remove DIV attribute code accidentally | |
9942 | included in previous rl78 commit. | |
9943 | ||
205b5601 | 9944 | 2015-02-10 Richard Biener <rguenther@suse.de> |
9945 | ||
9946 | * tree-streamer.h (streamer_read_tree_bitfields): Adjust. | |
9947 | * tree-streamer-in.c (streamer_read_tree_bitfields): Do not | |
9948 | return the bitpack. | |
9949 | ||
eb4b8219 | 9950 | 2015-02-09 Trevor Saunders <tsaunders@mozilla.com> |
9951 | ||
9952 | PR gcov-profile/61889 | |
9953 | * config.in: regenerate. | |
9954 | * configure.in: Likewise. | |
9955 | * configure.ac: Check for ftw.h. | |
9956 | * gcov-tool.c: Check for ftw.h before using nftw. | |
9957 | ||
a0e59ca8 | 9958 | 2015-02-09 Trevor Saunders <tsaunders@mozilla.com> |
9959 | ||
9960 | PR lto/64076 | |
9961 | * ipa-visibility.c (update_visibility_by_resolution_info): Only | |
9962 | assert when not in lto mode. | |
9963 | ||
c6e5fbeb | 9964 | 2015-02-09 Zhouyi Zhou <yizhouzhou@ict.ac.cn> |
1a952cb7 | 9965 | |
9966 | * ira-color.c (setup_left_conflict_sizes_p): Simplify | |
9967 | initialization/assignment of conflict_size. | |
9968 | ||
675f1812 | 9969 | 2015-02-09 Jan Hubicka <hubicka@ucw.cz> |
9970 | ||
9971 | PR ipa/64978 | |
9972 | * ipa-cp.c (gather_caller_stats): Skip thunks. | |
9973 | (propagate_constants_topo): Skip aliases. | |
9974 | ||
2ca3b52d | 9975 | 2015-02-09 Kaz Kojima <kkojima@gcc.gnu.org> |
9976 | ||
9977 | PR target/64761 | |
9978 | * config/sh/sh.c (sh_option_override): Don't change | |
9979 | -freorder-blocks-and-partition to -freorder-blocks even when | |
9980 | unwinding is enabled. | |
9981 | (sh_can_follow_jump): Return false if the followee jump is | |
9982 | a crossing jump when -freorder-blocks-and-partition is specified. | |
9983 | * config/sh/sh.md (*jump_compact_crossing): New insn. | |
9984 | ||
7ab0488c | 9985 | 2015-02-09 Joern Rennecke <joern.rennecke@embecosm.com> |
9986 | Kaz Kojima <kkojima@gcc.gnu.org> | |
9987 | ||
9988 | PR target/64761 | |
9989 | * config/sh/sh-protos.h (sh_can_redirect_branch): Don't declare. | |
9990 | * config/sh/sh.c (TARGET_CAN_FOLLOW_JUMP): Redefine. | |
9991 | (sh_can_redirect_branch): Rename to ... | |
9992 | (sh_can_follow_jump): ... this. Constify argument types. | |
9993 | * config/sh/sh.h (MD_CAN_REDIRECT_BRANCH): Don't define. | |
9994 | * doc/tm.texi.in (MD_CAN_REDIRECT_BRANCH): Remove documentation. | |
9995 | * reorg.c (steal_delay_list_from_target): Use targetm.can_follow_jump. | |
9996 | * doc/tm.texi: Regenerate. | |
9997 | ||
4e2f4ed5 | 9998 | 2015-02-09 Jakub Jelinek <jakub@redhat.com> |
9999 | ||
10000 | PR sanitizer/64981 | |
10001 | * builtins.c (expand_builtin): Call targetm.expand_builtin | |
10002 | for BUILT_IN_MD builtins regardless of asan_intercepted_p. | |
10003 | ||
770eccb8 | 10004 | 2015-02-08 Jan Hubicka <hubicka@ucw.cz> |
10005 | ||
10006 | PR ipa/61548 | |
10007 | * tree-emutls.c (ipa_lower_emutls): Avoid duplicates in TLS_VARS. | |
10008 | ||
2568b0e9 | 10009 | 2015-02-08 Jan Hubicka <hubicka@ucw.cz> |
10010 | ||
aa569c41 | 10011 | PR ipa/63566 |
2568b0e9 | 10012 | * ipa-icf.c (set_local): New function. |
10013 | (sem_function::merge): Use it. | |
10014 | ||
87a9c1b6 | 10015 | 2015-02-08 Jan Hubicka <hubicka@ucw.cz> |
10016 | ||
10017 | * ipa-devirt.c (odr_types_equivalent_p): Fix formating. | |
10018 | (add_type_duplicate): Fix comparison of BINFOs. | |
10019 | ||
41a1ab48 | 10020 | 2015-02-08 Jan Hubicka <hubicka@ucw.cz> |
10021 | ||
10022 | * ipa-polymorphic-call.c (ipa_polymorphic_call_context): Avoid ICE | |
10023 | on getting VOID pointer. | |
10024 | ||
5300bef0 | 10025 | 2015-02-09 Jakub Jelinek <jakub@redhat.com> |
10026 | ||
10027 | PR target/64979 | |
10028 | * tree-stdarg.c (pass_stdarg::execute): Scan phi node args for | |
10029 | va_list escapes. | |
10030 | ||
25ea41ee | 10031 | 2015-02-09 Richard Biener <rguenther@suse.de> |
10032 | ||
10033 | * genmatch.c (replace_id): Copy expr_type. | |
10034 | ||
c76dc468 | 10035 | 2015-02-09 Richard Biener <rguenther@suse.de> |
10036 | ||
10037 | * tree-streamer.h (streamer_pack_tree_bitfields): Remove. | |
10038 | (streamer_write_tree_bitfields): Declare. | |
10039 | * tree-streamer-in.c (unpack_ts_base_value_fields): Inline, | |
10040 | properly unpack padding. | |
10041 | (unpack_value_fields): Inline ... | |
10042 | (streamer_read_tree_bitfields): ... here. | |
10043 | * tree-streamer-out.c (pack_ts_base_value_fields): Inline | |
10044 | and properly add padding bits. | |
10045 | (streamer_pack_tree_bitfields): Fold into ... | |
10046 | (streamer_write_tree_bitfields): ... this new function, | |
10047 | exposing the bitpack object. | |
10048 | * lto-streamer-out.c (lto_write_tree_1): Call | |
10049 | streamer_write_tree_bitfields. | |
10050 | ||
fca76508 | 10051 | 2015-02-09 Richard Biener <rguenther@suse.de> |
10052 | ||
10053 | PR tree-optimization/54000 | |
10054 | * tree-ssa-looo-ivopts.c: Include tree-vectorizer.h. | |
10055 | (struct ivopts_data): Add loop_loc member. | |
10056 | (tree_ssa_iv_optimize_loop): Dump loop location. | |
10057 | (create_new_ivs): Likewise, also dump number of IVs generated. | |
10058 | ||
e83edd3f | 10059 | 2015-02-09 Martin Liska <mliska@suse.cz> |
10060 | ||
10061 | * ipa-icf.c (sem_item_optimizer::register_hooks): Register hooks | |
10062 | just if not yet registered. | |
10063 | (ipa_icf_generate_summary): Register callgraph hooks. | |
10064 | ||
0171d725 | 10065 | 2015-02-08 Andrew Pinski <apinski@cavium.com> |
10066 | ||
10067 | * config/aarch64/aarch64.c (gty_dummy): Delete. | |
10068 | ||
a09576fe | 10069 | 2015-02-08 Jan Hubicka <hubicka@ucw.cz> |
10070 | ||
aa569c41 | 10071 | PR ipa/63566 |
a09576fe | 10072 | * ipa-visibility.c (cgraph_node::non_local_p): Accept aliases. |
10073 | (cgraph_node::local_p): Remove thunk related FIXME. | |
10074 | ||
6543cf8b | 10075 | 2015-02-08 Jan Hubicka <hubicka@ucw.cz> |
10076 | ||
aa569c41 | 10077 | PR ipa/63566 |
6543cf8b | 10078 | * i386.c (ix86_function_regparm): Look through aliases to see if callee |
10079 | is local and optimized. | |
10080 | (ix86_function_sseregparm): Likewise; also use target's SSE math | |
10081 | settings; error out instead of silently generating wrong code | |
10082 | on mismatches. | |
10083 | (init_cumulative_args): Look through aliases. | |
10084 | ||
c670165e | 10085 | 2015-02-08 Jan Hubicka <hubicka@ucw.cz> |
10086 | ||
aa569c41 | 10087 | PR ipa/63566 |
c670165e | 10088 | * ipa-split.c (execute_split_functions): Split if function has aliases. |
10089 | ||
07f32730 | 10090 | 2015-02-08 Jan Hubicka <hubicka@ucw.cz> |
10091 | ||
aa569c41 | 10092 | PR ipa/63566 |
07f32730 | 10093 | * cgraphunit.c (cgraph_node::analyze): Be sure target of thunk is |
10094 | aliases before trying to expand it. | |
10095 | (cgraph_node::expand_thunk): Fix formating. | |
10096 | ||
dfba1d8c | 10097 | 2015-02-07 Sandra Loosemore <sandra@codesourcery.com> |
10098 | ||
10099 | * doc/extend.texi (Function Attributes [naked]): Copy-edit. | |
10100 | (Using Assembly Language with C): Expand introduction. | |
10101 | (Basic Asm): Copy-edit. Add more information about uses of | |
10102 | basic asm. | |
10103 | (Extended Asm): Copy-edit. Document new escape syntax and | |
10104 | %l[label] syntax. | |
10105 | (Global Reg Vars): Copy-edit. | |
10106 | (Local Reg Vars): Likewise. | |
10107 | ||
09625888 | 10108 | 2015-02-06 David Edelsohn <dje.gcc@gmail.com> |
10109 | ||
10110 | PR debug/2714 | |
10111 | PR bootstrap/64256 | |
10112 | * xcoffout.h (DBX_CONTIN_LENGTH): Define as 16384. | |
10113 | (DBX_CONTIN_CHAR): Define. | |
10114 | ||
b472bf0c | 10115 | 2015-02-06 Sebastian Pop <s.pop@samsung.com> |
10116 | Brian Rzycki <b.rzycki@samsung.com> | |
10117 | ||
10118 | PR tree-optimization/64878 | |
10119 | * tree-ssa-threadedge.c: Include tree-ssa-loop.h. | |
10120 | (fsm_find_control_statement_thread_paths): Add parameter seen_loop_phi. | |
10121 | Stop recursion at loop phi nodes after having visited a loop phi node. | |
10122 | ||
91df30af | 10123 | 2015-02-06 Jakub Jelinek <jakub@redhat.com> |
10124 | ||
dd0d4e52 | 10125 | * toplev.c (process_options): Change flag_ipa_ra before creating |
10126 | optimization_{default,current}_node. | |
10127 | ||
91df30af | 10128 | PR ipa/64896 |
10129 | * cgraphunit.c (cgraph_node::expand_thunk): If | |
10130 | restype is not is_gimple_reg_type nor the thunk_fndecl | |
10131 | returns aggregate_value_p, set restmp to a temporary variable | |
10132 | instead of resdecl. | |
10133 | ||
ee61ca2e | 10134 | 2015-02-06 Vladimir Makarov <vmakarov@redhat.com> |
10135 | ||
10136 | * lra.c (lra_emit_add): Fix a typo in using disp instead of base. | |
10137 | ||
a49a5a56 | 10138 | 2015-02-06 Michael Meissner <meissner@linux.vnet.ibm.com> |
10139 | ||
10140 | PR target/64205 | |
10141 | * config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Do not | |
10142 | add a general secondary reload handler for SDmode, unless we have | |
10143 | both read/write support for SDmode. | |
10144 | ||
4ab0ccd4 | 10145 | 2015-02-06 Jakub Jelinek <jakub@redhat.com> |
10146 | ||
10147 | PR middle-end/64937 | |
10148 | * dwarf2out.c (set_block_abstract_flags, set_decl_abstract_flags): | |
10149 | Replace setting argument with abstract_vec, always set BLOCK_ABSTRACT | |
10150 | or DECL_ABSTRACT_P flags to 1 rather than to setting, and if it wasn't | |
10151 | 1 before, push it to abstract_vec. | |
10152 | (dwarf2out_abstract_function): Adjust caller. Don't call | |
10153 | set_decl_abstract_flags second time, instead clear BLOCK_ABSTRACT or | |
10154 | DECL_ABSTRACT_P flags for all abstract_vec elts. | |
10155 | ||
08110213 | 10156 | 2015-02-06 Renlin Li <renlin.li@arm.com> |
10157 | ||
10158 | * tree-ssa-forwprop.c (execute): Keep location info while rewrite | |
10159 | complex gimple. | |
10160 | * tree-ssa.c (execute_update_addresses_taken): Likewise. | |
10161 | ||
42231db5 | 10162 | 2015-02-06 Jeff Law <law@redhat.com> |
10163 | ||
10164 | PR target/64889 | |
10165 | * config/h8300/h8300.c (push): New argument "in_prologue". | |
10166 | Pass "in_prologue" along to "F". | |
10167 | (h8300_push_pop): Corresponding changes. | |
10168 | (h8300_expand_prologue): Likewise. | |
10169 | (h8300_swap_into_er6): Likewise. Do not set RTX_FRAME_RELATED_P. | |
a49a5a56 | 10170 | |
bb779bf0 | 10171 | 2015-02-06 Jakub Jelinek <jakub@redhat.com> |
10172 | ||
10173 | PR rtl-optimization/64957 | |
10174 | PR debug/64817 | |
10175 | * simplify-rtx.c (simplify_binary_operation_1): Use ~cval for | |
10176 | IOR rather than for AND. | |
10177 | ||
74c2de3c | 10178 | 2015-02-06 Eric Botcazou <ebotcazou@adacore.com> |
10179 | ||
10180 | PR target/62631 | |
10181 | * tree-ssa-loop-ivopts.c (get_shiftadd_cost): Use the mininum of costs | |
10182 | of shift-add and (add + shift) operations. Rename local variable. | |
10183 | ||
17b364c4 | 10184 | 2015-02-05 Jeff Law <law@redhat.com> |
10185 | ||
817c5748 | 10186 | PR target/17306 |
10187 | * config/h8300/constraints.md (U): Correctly dectect | |
10188 | "eightbit_data" memory addresses. | |
10189 | * config/h8300/h8300.c (eightbit_constant_address_p): Also | |
10190 | handle (const (plus (symbol_ref (x)))) where x is declared | |
10191 | as an 8-bit data memory address. | |
10192 | * config/h8300/h8300.md (call, call_value): Correctly detect | |
10193 | "funcvec" functions. | |
10194 | ||
17b364c4 | 10195 | PR target/43264 |
10196 | * config/h8300/h8300.c (get_shift_alg): Fix ASHIFTRT by | |
10197 | 24 to 28 bits for the H8/300. | |
10198 | ||
8fc9dbfb | 10199 | 2015-02-06 Alan Modra <amodra@gmail.com> |
10200 | ||
10201 | PR target/64876 | |
10202 | * config/rs6000/rs6000.c (chain_already_loaded): New function. | |
10203 | (rs6000_call_aix): Use it. | |
10204 | ||
49c97b81 | 10205 | 2015-02-05 Jan Hubicka <hubicka@ucw.cz> |
10206 | ||
10207 | * ipa-cp.c (ipa_value_from_jfunc, ipa_context_from_jfunc): Add bounds | |
10208 | check. | |
10209 | ||
62d764b1 | 10210 | 2015-02-05 Joern Rennecke <joern.rennecke@embecosm.com> |
10211 | ||
10212 | * config/h8300/constraints.md ("U" constraint): Use strict | |
10213 | variant of REG_OK_FOR_BASE_P after reload has started. | |
10214 | ||
dc44066f | 10215 | 2015-02-04 Mantas Mikaitis <mantas.mikaitis@arm.com> |
10216 | ||
10217 | * config/arm/arm.h (TARGET_NEON_FP): Removed conditional definition, | |
10218 | define to zero if !TARGET_NEON. | |
99d6a6df | 10219 | (TARGET_ARM_FP): Added !TARGET_SOFT_FLOAT into conditional definition. |
dc44066f | 10220 | |
f1f488f7 | 10221 | 2015-02-04 Jan Hubicka <hubicka@ucw.cz> |
10222 | Trevor Saunders <tsaunders@mozilla.com> | |
10223 | ||
10224 | PR ipa/61548 | |
10225 | * tree-emultls.c (new_emutls_decl): Resolve alias after creating it. | |
10226 | ||
e7610412 | 10227 | 2015-02-04 Jan Hubicka <hubicka@ucw.cz> |
10228 | ||
10229 | PR ipa/61548 | |
10230 | * ipa.c (symbol_table::remove_unreachable_nodes): Fix ordering issue | |
10231 | when removing varpool nodes. | |
10232 | ||
a70a8c3a | 10233 | 2015-02-04 Jan Hubicka <hubicka@ucw.cz> |
10234 | ||
10235 | PR ipa/61548 | |
10236 | * varpool.c (varpool_node::remove): Fix order of variables. | |
10237 | ||
e346cd98 | 10238 | 2015-02-04 Jan Hubicka <hubicka@ucw.cz> |
10239 | ||
10240 | PR ipa/64686 | |
10241 | * ipa-inline.c (inline_small_functions): Fix ordering issue between | |
10242 | speculation resolution and key updates. | |
10243 | ||
dd1f9fb5 | 10244 | 2015-02-04 Jan Hubicka <hubicka@ucw.cz> |
10245 | ||
10246 | * ipa-prop.c (update_indirect_edges_after_inlining): By more careful | |
10247 | about not letting any speculative edges unupdated. | |
10248 | ||
f6c27254 | 10249 | 2015-02-04 Jan Hubicka <hubicka@ucw.cz> |
10250 | ||
10251 | PR gcov/64123 | |
10252 | * gcov-io.c (gcov_var): Export. | |
10253 | ||
d122d93c | 10254 | 2015-02-04 Jan Hubicka <hubicka@ucw.cz> |
10255 | ||
10256 | PR middle-end/64922 | |
10257 | * ipa-prop.c (update_indirect_edges_after_inlining): Correctly update | |
10258 | edges that become speculative. | |
10259 | ||
f36f9b8b | 10260 | 2015-02-04 Jakub Jelinek <jakub@redhat.com> |
10261 | ||
10262 | * dwarf2out.c (is_fortran): Also return true for DW_LANG_Fortran03 | |
10263 | or DW_LANG_Fortran08. | |
10264 | (lower_bound_default): Return 1 for DW_LANG_Fortran03 or | |
10265 | DW_LANG_Fortran08. | |
10266 | (gen_compile_unit_die): Handle "GNU Fortran2003" and | |
10267 | "GNU Fortran2008" language strings. | |
10268 | * dbxout.c (get_lang_number): Use lang_GNU_Fortran. | |
10269 | * langhooks.h (lang_GNU_Fortran): New prototype. | |
10270 | * langhooks.c (lang_GNU_Fortran): New function. | |
10271 | * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Use | |
10272 | lang_GNU_Fortran. | |
10273 | ||
09484478 | 10274 | 2015-02-04 Eric Botcazou <ebotcazou@adacore.com> |
10275 | ||
10276 | * config/sparc/sparc.c (RTX_OK_FOR_OFFSET_P): Fix off-by-one error. | |
10277 | (RTX_OK_FOR_OLO10_P): Likewise. | |
10278 | ||
88dabaf7 | 10279 | 2015-02-04 Eric Botcazou <ebotcazou@adacore.com> |
10280 | ||
10281 | * tree-ssa-loop-ivopts.c (get_address_cost): Use right mode for offset. | |
10282 | ||
aee8a3e8 | 10283 | 2015-02-04 Jan Hubicka <hubicka@ucw.cz> |
10284 | ||
10285 | PR middle-end/64922 | |
10286 | * gimple.c: Include gimple-ssa.h. | |
10287 | (maybe_remove_unused_call_args): New function. | |
10288 | * gimple.h (maybe_remove_unused_call_args): Declare. | |
10289 | * cgraph.c (cgraph_edge::redirect_call_stmt_to_callee): Use it. | |
10290 | * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Likewise. | |
10291 | * gimple-fold.c (gimple_fold_call): Likewise. | |
10292 | ||
2f1be71f | 10293 | 2015-02-04 H.J. Lu <hongjiu.lu@intel.com> |
10294 | ||
10295 | PR rtl-optimization/64905 | |
10296 | * lra-eliminations.c (setup_can_eliminate): Clear hard frame | |
10297 | pointer alignment if it isn't needed. | |
10298 | ||
0e2152d3 | 10299 | 2015-02-04 Matthew Wahab <matthew.wahab@arm.com> |
10300 | ||
10301 | * config/aarch64/aarch64-cores.def: Add cortex-a72 and | |
10302 | cortex-a72.cortex-a53. | |
10303 | * config/aarch64/aarch64-tune.md: Regenerate. | |
10304 | * doc/invoke.texi (AArch64 Options/-mtune): Add "cortex-a72". | |
10305 | ||
889a65e7 | 10306 | 2015-02-04 Nick Clifton <nickc@redhat.com> |
10307 | ||
10308 | * config/rl78/rl78.c (rl78_note_reg_set): Note the use of REGs | |
10309 | inside a MEM. | |
10310 | ||
97c9021f | 10311 | 2015-02-04 Jakub Jelinek <jakub@redhat.com> |
10312 | ||
10313 | * builtins.def (DEF_BUILTIN_CHKP): Define if not defined. | |
10314 | (DEF_LIB_BUILTIN_CHKP, DEF_EXT_LIB_BUILTIN_CHKP): Redefine. | |
10315 | (DEF_CHKP_BUILTIN): Define using DEF_BUILTIN_CHKP instead | |
10316 | of DEF_BUILTIN. | |
10317 | (BUILT_IN_MEMCPY, BUILT_IN_MEMMOVE, BUILT_IN_MEMSET, BUILT_IN_STRCAT, | |
10318 | BUILT_IN_STRCHR, BUILT_IN_STRCPY, BUILT_IN_STRLEN): Use | |
10319 | DEF_LIB_BUILTIN_CHKP macro instead of DEF_LIB_BUILTIN. | |
10320 | (BUILT_IN_MEMCPY_CHK, BUILT_IN_MEMMOVE_CHK, BUILT_IN_MEMPCPY_CHK, | |
10321 | BUILT_IN_MEMPCPY, BUILT_IN_MEMSET_CHK, BUILT_IN_STPCPY_CHK, | |
10322 | BUILT_IN_STPCPY, BUILT_IN_STRCAT_CHK, BUILT_IN_STRCPY_CHK): Use | |
10323 | DEF_EXT_LIB_BUILTIN_CHKP macro instead of DEF_EXT_LIB_BUILTIN. | |
10324 | * tree-core.h (enum built_in_function): In between | |
10325 | BEGIN_CHKP_BUILTINS and END_CHKP_BUILTINS only define enum values | |
10326 | for builtins that use DEF_BUILTIN_CHKP macro. | |
10327 | ||
e956927c | 10328 | 2015-02-04 Alexandre Oliva <aoliva@redhat.com> |
10329 | ||
71b39a64 | 10330 | PR debug/64817 |
10331 | * cfgexpand.c (expand_debug_expr): Compute unsignedp from | |
10332 | operands for tcc_comparison exprs. Fix typos. | |
10333 | ||
d0b7c554 | 10334 | PR debug/64817 |
10335 | * simplify-rtx.c (simplify_binary_operation_1): Simplify one | |
10336 | of two XORs that have an intervening AND or IOR. | |
10337 | ||
e956927c | 10338 | PR debug/64817 |
10339 | * simplify-rtx.c (simplify_binary_operation_1): Rewrite | |
10340 | simplification of XOR of AND to not allocate new rtx before | |
10341 | committing to a simplification. | |
10342 | ||
ab068f1a | 10343 | 2015-02-04 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
10344 | ||
10345 | * config/aarch64/aarch64-ldpstp.md: Use std::swap instead of | |
10346 | manual swaps in all peepholes. | |
10347 | ||
9c110f15 | 10348 | 2015-02-04 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
10349 | ||
10350 | * config/aarch64/aarch64.c (aarch64_evpc_ext): Use std::swap instead | |
10351 | of manual swapping implementation. | |
10352 | (aarch64_expand_vec_perm_const_1): Likewise. | |
10353 | ||
f05bfe67 | 10354 | 2015-02-04 James Greenhalgh <james.greenhalgh@arm.com> |
10355 | ||
10356 | * config/aarch64/aarch64.c (NAMED_PARAM): Delete it. | |
10357 | (generic_addrcost_table): Remove NAMED_PARAM. | |
10358 | (cortexa57_addrcost_table): Likewise. | |
10359 | (xgene1_addrcost_table): Likewise. | |
10360 | (generic_regmove_table): Likewise. | |
10361 | (cortexa53_regmove_table): Likewise. | |
10362 | (xgene1_regmove_table): Likewise. | |
10363 | (generic_vector_table): Likewise. | |
10364 | (cortexa57_vector_table): Likewise. | |
10365 | (xgene1_vector_table): Likewise. | |
10366 | (generic_tunings): Likewise. | |
10367 | (cortexa53_tunings): Likewise. | |
10368 | (cortexa57_tunings): Likewise. | |
10369 | (xgene1_tunings): Likewise. | |
10370 | ||
c2b72614 | 10371 | 2015-02-04 Matthew Wahab <matthew.wahab@arm.com> |
10372 | ||
10373 | * config/arm/arm-cores.def: Add cortex-a72 and | |
10374 | cortex-a72.cortex-a53. | |
10375 | * config/arm/bpabi.h (BE8_LINK_SPEC): Likewise. | |
10376 | * config/arm/t-aprofile (MULTILIB_MATCHES): Likewise. | |
10377 | * config/arm/arm-tune.md: Regenerate. | |
10378 | * config/arm/arm-tables.opt: Add entries for "cortex-a72" and | |
10379 | "cortex-a72.cortex-a53". | |
10380 | * doc/invoke.texi (ARM Options/-mtune): Likewise. | |
10381 | ||
c2e656e1 | 10382 | 2015-02-04 Nick Clifton <nickc@redhat.com> |
10383 | ||
93b3969e | 10384 | PR target/64408 |
10385 | * config/fr30/predicates.md (di_operand): Add SUBREG to the list | |
10386 | of accepted codes. | |
10387 | (nonimmediate_di_operand): Likewise. | |
10388 | ||
c2e656e1 | 10389 | * config/msp430/msp430.c (msp430_use_f5_series_hwmult): Add more |
10390 | prefixes of known F5 using MSP430 MCUs. | |
10391 | ||
f62d2c15 | 10392 | 2015-02-04 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
10393 | ||
10394 | * config/aarch64/aarch64-simd-builtins.def (sqrt): Use BUILTIN_VDQF_DF. | |
10395 | * config/aarch64/arm_neon.h (vsqrt_f64): Use __builtin_aarch64_sqrtdf | |
10396 | instead of __builtin_sqrt. | |
10397 | ||
952a806d | 10398 | 2015-02-04 Ilya Enkovich <ilya.enkovich@intel.com> |
10399 | ||
10400 | * varasm.c (do_assemble_alias): Follow transparent alias | |
10401 | chain for target. | |
10402 | (default_assemble_visibility): Follow transparent alias | |
10403 | chain for decl name. | |
10404 | ||
3cbadbb7 | 10405 | 2015-02-04 Thomas Preud'homme <thomas.preudhomme@arm.com> |
10406 | ||
10407 | PR middle-end/62103 | |
10408 | * tree-ssa-sccvn.c (fully_constant_vn_reference_p): Use TYPE_PRECISION | |
10409 | to compute size of referenced value in the constant case. | |
10410 | ||
7a49a822 | 10411 | 2015-02-03 Jakub Jelinek <jakub@redhat.com> |
10412 | ||
10413 | PR rtl-optimization/64756 | |
10414 | * cse.c (invalidate_dest): New function. | |
10415 | (cse_insn): Use it. If dest != SET_DEST (sets[i].rtl) and | |
10416 | HASH (SET_DEST (sets[i].rtl), mode) computation sets do_not_record, | |
10417 | invalidate and do not record it. | |
10418 | ||
7566f1eb | 10419 | 2015-02-03 Oleg Endo <olegendo@gcc.gnu.org> |
10420 | ||
10421 | PR target/64660 | |
10422 | * config/sh/sync.md (atomic_<fetchop_name><mode>_hard, | |
10423 | atomic_not<mode>_hard, atomic_<fetchop_name><mode>_soft_tcb, | |
10424 | atomic_not<mode>_soft_tcb, atomic_nand<mode>_hard, | |
10425 | atomic_nand<mode>_soft_tcb): New insns. | |
10426 | (atomic_fetch_<fetchop_name>si_hard): Convert to insn_and_split. | |
10427 | Split into atomic_<fetchop_name>_fetchsi_hard if operands[0] is unused. | |
10428 | (define_insn "atomic_fetch_notsi_hard): Convert to insn_and_split. | |
10429 | Split into atomic_not_fetchsi_hard if operands[0] is unused. | |
10430 | (atomic_fetch_<fetchop_name><mode>_hard): Convert to insn_and_split. | |
10431 | Split into atomic_<fetchop_name><mode>_hard if operands[0] is unused. | |
10432 | (atomic_fetch_not<mode>_hard): Convert to insn_and_split. Split into | |
10433 | atomic_not<mode>_hard if operands[0] is unused. | |
10434 | (atomic_fetch_<fetchop_name><mode>_soft_gusa): Convert to | |
10435 | insn_and_split. Split into atomic_<fetchop_name>_fetch<mode>_soft_gusa | |
10436 | if operands[0] is unused. | |
10437 | (atomic_fetch_not<mode>_soft_gusa): Convert to insn_and_split. Split | |
10438 | into atomic_not_fetch<mode>_soft_gusa if operands[0] is unused. | |
10439 | (atomic_fetch_<fetchop_name><mode>_soft_tcb): Convert to insn_and_split. | |
10440 | Split into atomic_<fetchop_name><mode>_soft_tcb if operands[0] is | |
10441 | unused. | |
10442 | (atomic_fetch_not<mode>_soft_tcb): Convert to insn_and_split. Split | |
10443 | into atomic_not<mode>_soft_tcb if operands[0] is unused. | |
10444 | (atomic_fetch_<fetchop_name><mode>_soft_imask): Convert to | |
10445 | insn_and_split. Split into atomic_<fetchop_name>_fetch<mode>_soft_imask | |
10446 | if operands[0] is unused. | |
10447 | (atomic_fetch_not<mode>_soft_imask): Convert to insn_and_split. Split | |
10448 | into atomic_not_fetch<mode>_soft_imask is operands[0] is unused. | |
10449 | (atomic_fetch_nandsi_hard): Convert to insn_and_split. Split into | |
10450 | atomic_nand_fetchsi_hard if operands[0] is unused. | |
10451 | (atomic_fetch_nand<mode>_hard): Convert to insn_and_split. Split into | |
10452 | atomic_nand<mode>_hard if operands[0] is unused. | |
10453 | (atomic_fetch_nand<mode>_soft_gusa): Convert to insn_and_split. Split | |
10454 | into atomic_nand_fetch<mode>_soft_gusa if operands[0] is unused. | |
10455 | (atomic_fetch_nand<mode>_soft_tcb): Convert to insn_and_split. Split | |
10456 | into atomic_nand<mode>_soft_tcb if operands[0] is unused. | |
10457 | (atomic_fetch_nand<mode>_soft_imask): Convert to insn_and_split. Split | |
10458 | into atomic_nand_fetch<mode>_soft_imask if operands[0] is unused. | |
10459 | (atomic_<fetchop_name>_fetch<mode>_hard): Convert to insn_and_split. | |
10460 | Split into atomic_<fetchop_name><mode>_hard if operands[0] is unused. | |
10461 | (atomic_not_fetch<mode>_hard): Convert to insn_and_split. Split into | |
10462 | atomic_not<mode>_hard if operands[0] is unused. | |
10463 | (atomic_<fetchop_name>_fetch<mode>_soft_tcb): Convert to insn_and_split. | |
10464 | Split into atomic_<fetchop_name><mode>_soft_tcb if operands[0] is | |
10465 | unused. | |
10466 | (atomic_not_fetch<mode>_soft_tcb): Convert to insn_and_split. Split | |
10467 | into atomic_not<mode>_soft_tcb if operands[0] is unused. | |
10468 | (atomic_nand_fetch<mode>_hard): Convert to insn_and_split. Split into | |
10469 | atomic_nand<mode>_hard if operands[0] is unused. | |
10470 | (atomic_nand_fetch<mode>_soft_tcb): Convert to insn_and_split. Split | |
10471 | into atomic_nand<mode>_soft_tcb if operands[0] is unused. | |
10472 | ||
cbbb2345 | 10473 | 2015-02-03 David Malcolm <dmalcolm@redhat.com> |
10474 | ||
10475 | PR jit/64810 | |
10476 | * Makefile.in (GCC_OBJS): Add gcc-main.o. | |
10477 | * gcc-main.c: New file, containing "main" taken from gcc.c. | |
10478 | * gcc.c (do_self_spec): Free decoded_options. | |
10479 | (class driver): Move declaration to gcc.h. | |
10480 | (main): Move declaration and implementation to new file | |
10481 | gcc-main.c. | |
10482 | (driver_get_configure_time_options): New function. | |
10483 | * gcc.h (class driver): Move this declaration here, from | |
10484 | gcc.c. | |
10485 | (driver_get_configure_time_options): New declaration. | |
10486 | ||
57e20c4a | 10487 | 2015-02-03 Jan Hubicka <hubicka@ucw.cz> |
10488 | ||
10489 | * ipa-inline-analysis.c (simple_edge_hints): Fix check for | |
10490 | cross-module inlining. | |
10491 | * cgraph.h (cgraph_node): Add flag merged. | |
10492 | * ipa-icf.c (sem_function::merge): Maintain it. | |
10493 | ||
b817769e | 10494 | 2015-02-03 Richard Sandiford <richard.sandiford@arm.com> |
10495 | ||
10496 | * config/arm/arm.c (thumb2_reorg): Test UNARY_P and BINARY_P | |
10497 | instead of OBJECT_P. | |
10498 | ||
30774b94 | 10499 | 2015-02-03 Eric Botcazou <ebotcazou@adacore.com> |
10500 | ||
10501 | PR target/62631 | |
10502 | * config/sparc/sparc.h (TARGET_HARD_MUL): Remove TARGET_V8PLUS. | |
10503 | (TARGET_HARD_MUL32): Rewrite based on TARGET_HARD_MUL. | |
10504 | * config/sparc/sparc.c (sparc_rtx_costs) <MULT>: Return costs based on | |
10505 | int_mulX for integers in 64-bit mode if TARGET_HARD_MUL is not set. | |
10506 | ||
35e665ab | 10507 | 2015-02-03 Jakub Jelinek <jakub@redhat.com> |
10508 | ||
10509 | PR other/63504 | |
10510 | * combine.c (reg_n_sets_max): New variable. | |
10511 | (can_change_dest_mode, reg_nonzero_bits_for_combine, | |
10512 | reg_num_sign_bit_copies_for_combine, get_last_value_validate, | |
10513 | get_last_value): Use REG_N_SETS only on pseudos < reg_n_sets_max. | |
10514 | (try_combine): Use INC_REG_N_SETS only on pseudos < reg_n_sets_max. | |
10515 | (rest_of_handle_combine): Initialize reg_n_sets_max. | |
10516 | ||
b06b9ff6 | 10517 | 2015-02-02 Jan Hubicka <hubicka@ucw.cz> |
10518 | ||
10519 | * ipa-inline.c (early_inliner): Skip inlining only in always_inlined; | |
10520 | if some always_inline was inlined, apply changes before inlining | |
10521 | heuristically. | |
10522 | ||
7cb68891 | 10523 | 2015-02-02 David Malcolm <dmalcolm@redhat.com> |
10524 | ||
10525 | PR jit/64810 | |
10526 | * config/arm/arm.c (arm_option_override): Set | |
10527 | arm_selected_arch/cpu/tune to NULL on entry. | |
10528 | ||
73626f6a | 10529 | 2015-02-02 Tejas Belagod <tejas.belagod@arm.com> |
10530 | Andrew Pinski <pinskia@gcc.gnu.org> | |
10531 | Jakub Jelinek <jakub@gcc.gnu.org> | |
10532 | ||
10533 | PR target/64231 | |
10534 | * config/aarch64/aarch64.c (aarch64_classify_symbol): Fix large | |
10535 | integer typing for small model. Use IN_RANGE. | |
10536 | ||
2160d5ba | 10537 | 2015-02-02 Richard Biener <rguenther@suse.de> |
10538 | ||
10539 | * tree-ssa-ccp.c (valueize_op_1): Always allow valueizing default-defs. | |
10540 | * tree-vrp.c (vrp_valueize_1): Likewise. | |
10541 | ||
dc40b8b5 | 10542 | 2015-02-02 Alan Modra <amodra@gmail.com> |
10543 | ||
10544 | * config/rs6000/rs6000.c (rs6000_call_aix): Use unspec rather | |
10545 | than mem for toc_restore. | |
10546 | * config/rs6000/rs6000.md (UNSPEC_TOCSLOT): Define. | |
10547 | (call_indirect_aix, call_value_indirect_aix): Adjust to suit. | |
10548 | (call_indirect_elfv2, call_value_indirect_elfv2): Likewise. | |
10549 | ||
434b5fa9 | 10550 | 2015-02-01 David Edelsohn <dje.gcc@gmail.com> |
10551 | ||
10552 | PR target/64047 | |
10553 | * config/rs6000/rs6000.c (rs6000_set_current_function): Handle | |
10554 | explicit default options. | |
10555 | ||
10556 | 2015-02-01 Jan Hubicka <hubicka@ucw.cz> | |
96bf18ea | 10557 | |
10558 | PR ipa/64872 | |
10559 | * ipa-utils.c (ipa_merge_profiles): Add release argument. | |
10560 | * ipa-icf.c (sem_function::merge): Do not release body when merging. | |
10561 | * ipa-utils.h (ipa_merge_profiles): Update prototype. | |
10562 | ||
54497144 | 10563 | 2015-02-01 Jakub Jelinek <jakub@redhat.com> |
10564 | ||
10565 | PR debug/64817 | |
10566 | * cfgexpand.c (deep_ter_debug_map): New variable. | |
10567 | (avoid_deep_ter_for_debug): New function. | |
10568 | (expand_debug_expr): If TERed SSA_NAME is in | |
10569 | deep_ter_debug_map, use the corresponding DEBUG_EXPR_DECL | |
10570 | instead of trying to expand SSA_NAME's def stmt. | |
10571 | (expand_debug_locations): When expanding debug bind | |
10572 | of a DEBUG_EXPR_DECL to corresponding SSA_NAME, | |
10573 | temporarily remove the DEBUG_EXPR_DECL from deep_ter_debug_map's | |
10574 | value. | |
10575 | (pass_expand::execute): Call avoid_deep_ter_for_debug on | |
10576 | all debug bind stmts. Delete deep_ter_debug_map after | |
10577 | expand_debug_location if non-NULL and clear it. | |
10578 | ||
746ebdc3 | 10579 | 2015-02-01 Oleg Endo <olegendo@gcc.gnu.org> |
10580 | ||
10581 | PR target/64851 | |
10582 | * config/sh/sync.md (atomic_fetch_notsi_hard, | |
10583 | atomic_fetch_not<mode>_hard, atomic_fetch_not<mode>_soft_gusa, | |
10584 | atomic_fetch_not<mode>_soft_tcb, atomic_fetch_not<mode>_soft_imask, | |
10585 | atomic_not_fetchsi_hard, atomic_not_fetch<mode>_hard, | |
10586 | atomic_not_fetch<mode>_soft_gusa, atomic_not_fetch<mode>_soft_tcb, | |
10587 | atomic_not_fetch<mode>_soft_imask): New insns. | |
10588 | ||
770c9167 | 10589 | 2015-02-01 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> |
10590 | ||
10591 | * haifa-sched.c (INSN_RFS_DEBUG_ORIG_ORDER): New access macro. | |
10592 | (rank_for_schedule_debug): Split from ... | |
10593 | (rank_for_schedule): ... this. | |
10594 | (ready_sort): Sort DEBUG_INSNs separately from normal INSNs. | |
10595 | * sched-int.h (struct _haifa_insn_data): New field rfs_debug_orig_order. | |
10596 | ||
b483a630 | 10597 | 2015-01-31 Sandra Loosemore <sandra@codesourcery.com> |
10598 | ||
10599 | * doc/md.texi (Machine Constraints): Alphabetize table by target. | |
10600 | * doc/extend.texi (x86 Variable Attributes): Move section to | |
10601 | correct alphabetization after renaming. | |
10602 | (x86 Type Attributes): Likewise. | |
10603 | (Target Builtins): Re-alphabetize menu. | |
10604 | (x86 Built-in Functions): Move section to correct alphabetization | |
10605 | after renaming. | |
10606 | (x86 transactional memory intrinsics): Likewise. | |
10607 | * doc/invoke.texi (Option Summary): Re-alphabetize x86 Options | |
10608 | and x86 Windows Options in table and menu. | |
10609 | (x86 Options): Move section to correct alphabetization after | |
10610 | renaming. | |
10611 | (x86 Windows Options): Likewise. | |
10612 | ||
17b45f0b | 10613 | 2015-01-31 Sandra Loosemore <sandra@codesourcery.com> |
10614 | ||
10615 | * doc/extend.texi: Use "x86", "x86-32", and "x86-64" as the | |
10616 | preferred names of the architecture and its 32- and 64-bit | |
10617 | variants. | |
10618 | * doc/invoke.texi: Likewise. | |
10619 | * doc/md.texi: Likewise. | |
10620 | ||
3094ddd8 | 10621 | 2015-01-31 Uros Bizjak <ubizjak@gmail.com> |
10622 | ||
746ebdc3 | 10623 | PR target/64882 |
3094ddd8 | 10624 | * config/i386/predicates.md (address_no_seg_operand): Reject |
10625 | non-CONST_INT_P operands in invalid mode. | |
10626 | ||
10627 | 2015-01-31 Uros Bizjak <ubizjak@gmail.com> | |
10628 | ||
10629 | * config/i386/i386.md (*prefetch_prefetchw1): Remove mode of | |
10630 | address_operand 0. Rename from *prefetch_prefetchwt1_<mode>. | |
10631 | * config/i386/predicates.md (address_no_seg_operand): Call | |
10632 | address_operand with VOIDmode. | |
10633 | (vsib_address_operand): Ditto. | |
10634 | (address_mpx_no_base_operand): Ditto. | |
10635 | (address_mpx_no_index_operand): Ditto. | |
10636 | ||
1aae95ec | 10637 | 2015-01-30 Vladimir Makarov <vmakarov@redhat.com> |
10638 | ||
10639 | PR target/64688 | |
10640 | * lra-constraints.c (original_subreg_reg_mode): New. | |
10641 | (simplify_operand_subreg): Try to simplify subreg of const. Use | |
10642 | original_subreg_reg_mode for it. | |
10643 | (swap_operands): Update original_subreg_reg_mode. | |
10644 | (curr_insn_transform): Set up original_subreg_reg_mode. | |
10645 | ||
25cd984c | 10646 | 2015-01-30 Vladimir Makarov <vmakarov@redhat.com> |
10647 | ||
10648 | PR target/64617 | |
10649 | * lra-constraints.c (prohibited_class_reg_set_mode_p): New | |
10650 | function. | |
10651 | (process_alt_operands): Use it. | |
10652 | (curr_insn_transform): Check the optional reload pseudo class is | |
10653 | ok for the mode. | |
10654 | ||
c05be867 | 10655 | 2015-01-30 Joseph Myers <joseph@codesourcery.com> |
10656 | ||
10657 | * diagnostic.c (fatal_error (const char *, ...)): Remove function. | |
10658 | * diagnostic-core.h (fatal_error (const char *, ...)): Remove | |
10659 | prototype. | |
10660 | * toplev.h (init_asm_output): Update comment on use of | |
10661 | UNKNOWN_LOCATION with fatal_error. | |
10662 | * cgraph.c, collect-utils.c, collect2.c, config/arc/arc.c, | |
10663 | config/arc/arc.md, config/avr/avr.c, config/c6x/c6x.h, | |
10664 | config/darwin.c, config/host-darwin.c, config/i386/host-cygwin.c, | |
10665 | config/i386/intelmic-mkoffload.c, config/nios2/nios2.c, | |
10666 | config/nvptx/mkoffload.c, config/nvptx/nvptx.h, | |
10667 | config/rs6000/host-darwin.c, config/rs6000/rs6000.c, | |
10668 | config/s390/s390.c, gcc.c, gcov-io.h, gcov-tool.c, ggc-common.c, | |
10669 | ggc-page.c, graph.c, ipa-inline-analysis.c, ipa-reference.c, | |
10670 | lto-cgraph.c, lto-section-in.c, lto-streamer-in.c, lto-streamer.c, | |
10671 | lto-wrapper.c, objc/objc-act.c, opts.c, passes.c, plugin.c, | |
10672 | tlink.c, toplev.c, tree-streamer-in.c, varpool.c: All callers of | |
10673 | fatal_error changed to pass input_location as first argument. | |
10674 | ||
9620a2cb | 10675 | 2015-01-30 Martin Liska <mliska@suse.cz> |
10676 | ||
10677 | * tree.h: Change GCC_VERSION >= 4004 to GCC_VERSION >= 4006 | |
10678 | in #pragma GCC diagnostic guards. | |
10679 | ||
c8927928 | 10680 | 2015-01-30 Richard Biener <rguenther@suse.de> |
10681 | ||
10682 | PR tree-optimization/64829 | |
10683 | * tree-vect-patterns.c (vect_handle_widen_op_by_const): Do | |
10684 | not add a widening conversion pattern but hand off extra | |
10685 | widenings to callers. | |
10686 | (vect_recog_widen_mult_pattern): Handle extra widening produced | |
10687 | by vect_handle_widen_op_by_const. | |
10688 | (vect_recog_widen_shift_pattern): Likewise. | |
10689 | (vect_pattern_recog_1): Remove excess vertical space in dumping. | |
10690 | * tree-vect-stmts.c (vect_mark_stmts_to_be_vectorized): Likewise. | |
10691 | (vect_init_vector_1): Likewise. | |
10692 | (vect_get_vec_def_for_operand): Likewise. | |
10693 | (vect_finish_stmt_generation): Likewise. | |
10694 | (vectorizable_load): Likewise. | |
10695 | (vect_analyze_stmt): Likewise. | |
10696 | (vect_is_simple_use): Likewise. | |
10697 | ||
cb8f8246 | 10698 | 2015-01-29 Jeff Law <law@redhat.com> |
10699 | ||
10700 | * combine.c (try_combine): Fix typo in comment. | |
10701 | ||
c55914bb | 10702 | 2015-01-29 Segher Boessenkool <segher@kernel.crashing.org> |
10703 | ||
10704 | PR target/64580 | |
10705 | * config.rs6000/rs6000.c (compute_vrsave_mask): Reverse loop order. | |
10706 | (rs6000_stack_info): Add assert. | |
10707 | (rs6000_output_savres_externs): New function, split off from... | |
10708 | (rs6000_output_function_prologue): ... here. Do not call it for | |
10709 | thunks. | |
10710 | ||
50a2b7fd | 10711 | 2015-01-29 Jeff Law <law@redhat.com> |
10712 | ||
c55914bb | 10713 | PR target/15184 |
50a2b7fd | 10714 | * combine.c (try_combine): If I0 is a memory load and I3 a store |
10715 | to a related address, increase the "goodness" of doing a 4-insn | |
10716 | combination with I0-I3. | |
10717 | (make_field_assignment): Handle SUBREGs in the ior+and case. | |
10718 | ||
d3815dd1 | 10719 | 2015-01-29 Yuri Rumyantsev <ysrumyan@gmail.com> |
10720 | ||
10721 | PR tree-optimization/64746 | |
10722 | * tree-if-conv.c (mask_exists): New function. | |
10723 | (predicate_mem_writes): Save created mask with given size for further | |
10724 | use. | |
10725 | (stmt_is_root_of_bool_pattern): Remove argument VAR and store to it. | |
10726 | (ifcvt_repair_bool_pattern): Collect all statements that are root | |
10727 | of bool pattern and use iterative algorithm to remove multiple uses | |
10728 | of predicates, display number of required iterations. | |
10729 | ||
bc8fa068 | 10730 | 2015-01-29 Richard Biener <rguenther@suse.de> |
10731 | ||
10732 | PR tree-optimization/64853 | |
10733 | * tree-vrp.c (vrp_valueize_1): Do not return anything if the | |
10734 | stmt will get simulated again. | |
10735 | * tree-ssa-ccp.c (valueize_op_1): Likewise. | |
10736 | ||
a35cc24a | 10737 | 2015-01-29 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
10738 | ||
10739 | * config/arm/arm.c (arm_emit_multi_reg_pop): Simplify definition of | |
10740 | return_in_pc. Remove redundant assignments. | |
10741 | (thumb2_emit_ldrd_pop): Simplify definition of return_in_pc. | |
10742 | (arm_expand_epilogue): Don't compare boolean with true in if condition. | |
10743 | ||
bef5f3b7 | 10744 | 2015-01-29 Uros Bizjak <ubizjak@gmail.com> |
10745 | ||
10746 | * config/i386/i386.c (ix86_mode_after): Make static. | |
10747 | ||
e4eca2de | 10748 | 2015-01-29 Richard Biener <rguenther@suse.de> |
10749 | ||
10750 | PR tree-optimization/64844 | |
10751 | * tree-vect-loop.c (vect_estimate_min_profitable_iters): Always | |
10752 | dump cost model analysis. | |
10753 | * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): | |
10754 | Do not register adjusted load/store costs here. | |
10755 | ||
0554566a | 10756 | 2015-01-29 Ilya Enkovich <ilya.enkovich@intel.com> |
10757 | Uros Bizjak <ubizjak@gmail.com> | |
10758 | ||
10759 | * config/i386/i386-protos.h (ix86_use_pseudo_pic_reg): New. | |
10760 | * config/i386/i386.h (PIC_OFFSET_TABLE_REGNUM): Simplify by | |
10761 | using x86_use_pseudo_pic_reg. | |
10762 | * config/i386/i386.c (ix86_conditional_register_usage): Remove | |
10763 | support for fixed PIC register. | |
10764 | (ix86_use_pseudo_pic_reg): Not static any more. | |
10765 | ||
562fafb8 | 10766 | 2015-01-29 Ilya Enkovich <ilya.enkovich@intel.com> |
10767 | ||
10768 | PR middle-end/64805 | |
10769 | * ipa-inline.c (early_inliner): Rebuild IPA_REF_CHKP reference | |
10770 | to avoid error in cgraph node verification. | |
10771 | ||
8c7631cc | 10772 | 2015-01-29 Marek Polacek <polacek@redhat.com> |
10773 | ||
10774 | * doc/standards.texi: Reflect that the default for C is gnu11. | |
10775 | ||
27e4242f | 10776 | 2015-01-29 Kaz Kojima <kkojima@gcc.gnu.org> |
10777 | ||
10778 | PR target/64761 | |
10779 | * reorg.c (switch_text_sections_between_p): New function. | |
10780 | (relax_delay_slots): Call it when testing if the jump insn | |
10781 | is removable. Use targetm.can_follow_jump when testing if | |
10782 | the conditional branch can follow an unconditional jump. | |
10783 | ||
5be42fa9 | 10784 | 2015-01-27 Caroline Tice <cmtice@google.com> |
10785 | ||
10786 | Committing VTV Cywin/Ming patch for Patrick Wollgast | |
10787 | * config/i386/cygwin.h (STARTFILE_SPEC): Add vtv_start.o, | |
10788 | if -fvtable-verify=preinit/std is used. | |
10789 | * config/i386/mingw-w64.h (STARTFILE_SPEC): Likewise. | |
10790 | * config/i386/mingw32.h (STARTFILE_SPEC): Likewise. | |
10791 | * config/i386/cygwin.h (ENDFILE_SPEC): Add vtv_end.o, | |
10792 | if -fvtable-verify=preinit/std is used. | |
10793 | * config/i386/mingw32.h (ENDFILE_SPEC): Likewise. | |
10794 | * config/i386/cygwin.h (LIB_SPEC): Pass -lvtv and -lpsapi, | |
10795 | if -fvtable-verify=preinit/std is used. | |
10796 | * config/i386/mingw-w64.h (LIB_SPEC): Likewise. | |
10797 | * config/i386/mingw32.h (LIB_SPEC): Likewise. | |
10798 | * varasm.c (assemble_variable): Add code to properly set the comdat | |
10799 | section and name for the .vtable_map_vars section in case the | |
10800 | target is PE or COFF. | |
10801 | ||
3a9f48e7 | 10802 | 2015-01-29 Jan Hubicka <hubicka@ucw.cz> |
10803 | ||
10804 | PR ipa/64801 | |
10805 | * cgraphunit.c (init_lowered_empty_function): Add CoUNT parameter; | |
10806 | make sane BB profile. | |
10807 | (cgraph_node::expand_thunk): Make sane BB profile. | |
10808 | (cgraph_node::create_wrapper): Do not set call_stmt_cannot_inline_p. | |
10809 | * cgraph.h (init_lowered_empty_function): Update prototype. | |
10810 | * config/i386/i386.c (make_resolver_func): Update call. | |
10811 | * predict.c (gate): Disable branch prediction pass if | |
10812 | profile is already there. | |
10813 | ||
b92389a6 | 10814 | 2015-01-29 Jan Hubicka <hubicka@ucw.cz> |
10815 | ||
10816 | * optc-save-gen.awk: flag_fp_contract_mode is no longer speical. | |
10817 | * opth-gen.awk: Likewise. | |
10818 | * common.opt: Mark flag_fp_contract_mode as Optimization. | |
10819 | ||
c0670fd7 | 10820 | 2015-01-29 Bernd Edlinger <bernd.edlinger@hotmail.de> |
10821 | ||
10822 | * config/i386/cygwin.h (LIBGCJ_SONAME): Set libgcj version to -16. | |
10823 | * config/i386/mingw32.h (LIBGCJ_SONAME): Set libgcj version to -16. | |
10824 | ||
20c3dd32 | 10825 | 2015-01-28 Oleg Endo <olegendo@gcc.gnu.org> |
10826 | ||
10827 | PR target/64659 | |
10828 | * config/sh/predicates.md (atomic_arith_operand, | |
10829 | atomic_logical_operand): Remove. | |
10830 | * config/sh/sync.md (fetchop_predicate, fetchop_constraint): Remove. | |
10831 | (atomic_arith_operand_0): New predicate. | |
10832 | (atomic_compare_and_swap<mode>): Use arith_reg_dest for output values. | |
10833 | Use atomic_arith_operand_0 for input values. | |
10834 | (atomic_compare_and_swapsi_hard, atomic_compare_and_swap<mode>_hard, | |
10835 | atomic_compare_and_swap<mode>_soft_gusa, | |
10836 | atomic_compare_and_swap<mode>_soft_tcb, | |
10837 | atomic_compare_and_swap<mode>_soft_imask): Use arith_reg_dest and | |
10838 | arith_reg_operand instead of register_operand. | |
10839 | (atomic_exchange<mode>): Use arith_reg_dest for output value. Use | |
10840 | atomic_arith_operand_0 for newval input. | |
10841 | (atomic_exchangesi_hard, atomic_exchange<mode>_hard, | |
10842 | atomic_exchange<mode>_soft_gusa, atomic_exchange<mode>_soft_tcb, | |
10843 | atomic_exchange<mode>_soft_imask): Use arith_reg_dest and | |
10844 | arith_reg_operand instead of register_operand. | |
10845 | (atomic_arith_operand_1, atomic_logical_operand_1): New predicates. | |
10846 | fetchop_predicate_1, fetchop_constraint_1_llcs, | |
10847 | fetchop_constraint_1_gusa, fetchop_constraint_1_tcb, | |
10848 | fetchop_constraint_1_imask): New code iterator attributes. | |
10849 | (atomic_fetch_<fetchop_name><mode>): Use arith_reg_dest instead of | |
10850 | register_operand. Use fetchop_predicate_1. | |
10851 | (atomic_fetch_<fetchop_name>si_hard, | |
10852 | atomic_fetch_<fetchop_name><mode>_hard): Use arith_reg_dest instead of | |
10853 | register_operand. Use fetchop_predicate_1, fetchop_constraint_1_llcs. | |
10854 | (atomic_fetch_<fetchop_name><mode>_soft_gusa): Use arith_reg_dest | |
10855 | and arith_reg_operand instead of register_operand. Use | |
10856 | fetchop_predicate_1, fetchop_constraint_1_gusa. | |
10857 | (atomic_fetch_<fetchop_name><mode>_soft_tcb): Use arith_reg_dest | |
10858 | and arith_reg_operand instead of register_operand. Use | |
10859 | fetchop_predicate_1, fetchop_constraint_1_tcb. Adjust asm sequence | |
10860 | to allow R0 usage. | |
10861 | (atomic_fetch_<fetchop_name><mode>_soft_imask): Use arith_reg_dest | |
10862 | and arith_reg_operand instead of register_operand. Use | |
10863 | fetchop_predicate_1, fetchop_constraint_1_imask. Adjust asm sequence | |
10864 | to allow R0 usage. | |
10865 | (atomic_fetch_nand<mode>): Use arith_reg_dest instead of | |
10866 | register_operand. Use atomic_logical_operand_1. | |
10867 | (atomic_fetch_nandsi_hard, atomic_fetch_nand<mode>_hard, | |
10868 | atomic_fetch_nand<mode>_soft_gusa): Use arith_reg_dest and | |
10869 | arith_reg_operand instead of register_operand. | |
10870 | (atomic_fetch_nand<mode>_soft_tcb, atomic_fetch_nand<mode>_soft_imask): | |
10871 | Use arith_reg_dest and arith_reg_operand instead of register_operand. | |
10872 | Use logical_operand and rK08. Adjust asm sequence to allow R0 usage. | |
10873 | (atomic_<fetchop_name>_fetch<mode>): Use arith_reg_dest instead of | |
10874 | register_operand. Use fetchop_predicate_1. | |
10875 | (atomic_<fetchop_name>_fetchsi_hard, | |
10876 | atomic_<fetchop_name>_fetch<mode>_hard): Use arith_reg_dest and | |
10877 | arith_reg_operand instead of register_operand. Use fetchop_predicate_1, | |
10878 | fetchop_constraint_1_llcs. | |
10879 | (atomic_<fetchop_name>_fetch<mode>_soft_gusa): Use arith_reg_dest and | |
10880 | arith_reg_operand instead of register_operand. Use fetchop_predicate_1, | |
10881 | fetchop_constraint_1_gusa. | |
10882 | (atomic_<fetchop_name>_fetch<mode>_soft_tcb): Use arith_reg_dest and | |
10883 | arith_reg_operand instead of register_operand. Use fetchop_predicate_1, | |
10884 | fetchop_constraint_1_tcb. Adjust asm sequence to allow R0 usage. | |
10885 | (atomic_<fetchop_name>_fetch<mode>_soft_imask): Use arith_reg_dest and | |
10886 | arith_reg_operand instead of register_operand. Use fetchop_predicate_1, | |
10887 | fetchop_constraint_1_imask. Adjust asm sequence to allow R0 usage. | |
10888 | (atomic_nand_fetch<mode>): Use arith_reg_dest instead of | |
10889 | register_operand. Use atomic_logical_operand_1. | |
10890 | (atomic_nand_fetchsi_hard, atomic_nand_fetch<mode>_hard, | |
10891 | atomic_nand_fetch<mode>_soft_gusa): Use arith_reg_dest and | |
10892 | arith_reg_operand instead of register_operand. | |
10893 | (atomic_nand_fetch<mode>_soft_tcb): Use arith_reg_dest and | |
10894 | arith_reg_operand instead of register_operand. Use logical_operand | |
10895 | and K08. Adjust asm sequence to allow R0 usage. | |
10896 | (atomic_nand_fetch<mode>_soft_imask): Use arith_reg_dest and | |
10897 | arith_reg_operand instead of register_operand. Use logical_operand | |
10898 | and K08. | |
10899 | ||
ae395326 | 10900 | 2015-01-28 Jakub Jelinek <jakub@redhat.com> |
10901 | ||
10902 | PR other/63504 | |
10903 | * dwarf2out.c (add_AT_wide, mem_loc_descriptor, loc_descriptor): | |
10904 | Use ggc_alloc<wide_int> instead of ggc_cleared_alloc<wide_int>. | |
10905 | (attr_checksum, attr_checksum_ordered, hash_loc_operands): Checksum | |
10906 | only get_full_len HOST_WIDE_INTs from get_val () array rather than | |
10907 | all bits in *val_wide. | |
10908 | ||
8b741ed1 | 10909 | 2015-01-28 Jan Hubicka <hubicka@ucw.cz> |
10910 | ||
10911 | * varpool.c (tls_model_names): Fix names. | |
10912 | (varpool_node::dump): Dump tls- prefix for tls models. | |
10913 | ||
9c08fbb3 | 10914 | 2015-01-28 Thomas Schwinge <thomas@codesourcery.com> |
10915 | Bernd Schmidt <bernds@codesourcery.com> | |
10916 | Nathan Sidwell <nathan@codesourcery.com> | |
10917 | ||
10918 | * config/nvptx/mkoffload.c: New file. | |
10919 | * config/nvptx/t-nvptx: Add build rules for it. | |
10920 | * config.gcc <nvptx-*> [$enable_as_accelerator = yes] | |
10921 | (extra_programs): Add mkoffload. | |
10922 | * config/nvptx/nvptx.c (nvptx_record_offload_symbol): New | |
10923 | function. | |
10924 | (TARGET_RECORD_OFFLOAD_SYMBOL): Define macro to use it. | |
10925 | ||
31aebeec | 10926 | 2015-01-28 Yuri Rumyantsev <ysrumyan@gmail.com> |
10927 | ||
10928 | PR middle-end/64809 | |
10929 | * cfgexpand.c (reorder_operands): Skip debug gimples. | |
10930 | ||
97178c4f | 10931 | 2015-01-28 Ilya Enkovich <ilya.enkovich@intel.com> |
10932 | ||
10933 | PR tree-optimization/64277 | |
10934 | * tree-ssa-loop-niter.c (record_nonwrapping_iv): Use base | |
10935 | range info when possible to refine estimation. | |
10936 | ||
904c73a0 | 10937 | 2015-01-28 Thomas Preud'homme <thomas.preudhomme@arm.com> |
10938 | ||
10939 | PR tree-optimization/64718 | |
10940 | * tree-ssa-math-opts.c (pass_optimize_bswap::execute): Make bswap_type | |
10941 | be a 16bit unsigned integer when n->range is 16. | |
10942 | (bswap_replace): Convert src to that type if necessary for all bswap | |
10943 | sizes. Fix rotation right notation in nearby comment. Use bswap_type | |
10944 | set in pass_optimize_bswap::execute (). | |
10945 | ||
260d579b | 10946 | 2015-01-28 James Greenhalgh <james.greenhalgh@arm.com> |
10947 | ||
10948 | * config/aarch64/aarch64-simd.md (aarch64_abs<mode>): New. | |
10949 | * config/aarch64/aarch64-simd-builtins.def (abs): Split by | |
10950 | integer and floating point variants. | |
10951 | * config/aarch64/iterators.md (unspec): Add UNSPEC_ABS. | |
10952 | ||
b47145cf | 10953 | 2015-01-28 Robert Suchanek <robert.suchanek@imgtec.com> |
10954 | ||
10955 | * config/mips/mips.c (mips_hard_regno_mode_ok_p): Prohibit accumulators | |
10956 | for all vector modes. | |
10957 | ||
09475d99 | 10958 | 2015-01-28 Jakub Jelinek <jakub@redhat.com> |
10959 | ||
10960 | PR bootstrap/64612 | |
10961 | * doc/sourcebuild.texi (comdat_group): Document. | |
10962 | ||
56640707 | 10963 | 2015-01-28 Terry Guo <terry.guo@arm.com> |
10964 | ||
10965 | * config/arm/thumb1.md (*thumb1_movpc_insn): New insn pattern. | |
10966 | ||
b86fa9da | 10967 | 2015-01-27 David Malcolm <dmalcolm@redhat.com> |
10968 | ||
10969 | * toplev.c (print_version): Add param "show_global_state", and | |
10970 | only print GGC and plugin information if it is true. | |
10971 | (init_asm_output): Pass in "true" for the new param when calling | |
10972 | print_version. | |
10973 | (process_options): Likewise. | |
10974 | (toplev::main): Likewise. | |
10975 | * toplev.h (print_version): Add new param to decl. | |
10976 | ||
2fdf87a8 | 10977 | 2015-01-27 Jan Hubicka <hubicka@ucw.cz> |
10978 | ||
10979 | PR ipa/60871 | |
10980 | PR ipa/64139 | |
10981 | * tree.c (lookup_binfo_at_offset): New function. | |
10982 | (get_binfo_at_offset): Use it. | |
10983 | ||
5c318c08 | 10984 | 2015-01-27 Jan Hubicka <hubicka@ucw.cz> |
10985 | ||
10986 | PR ipa/64282 | |
10987 | * gimple-fold.c (gimple_get_virt_method_for_vtable): Remove assert | |
10988 | on vtable being vtable. | |
10989 | ||
11762b83 | 10990 | 2015-01-27 Dominik Vogt <vogt@linux.vnet.ibm.com> |
10991 | ||
bef5f3b7 | 10992 | * doc/extend.texi: s/390: Update documentation of hotpatch attribute. |
10993 | * doc/invoke.texi (-mhotpatch): s/390: Update documentation of | |
10994 | -mhotpatch= option. | |
10995 | * config/s390/s390.opt (mhotpatch): s/390: Remove -mhotpatch and | |
10996 | -mno-hotpatch options. Change syntax of -mhotpatch= option. | |
10997 | * config/s390/s390.c (s390_hotpatch_trampoline_halfwords_default): | |
10998 | Renamed. | |
10999 | (s390_hotpatch_trampoline_halfwords_max): Renamed. | |
11000 | (s390_hotpatch_hw_max): New name. | |
11001 | (s390_hotpatch_trampoline_halfwords): Renamed. | |
11002 | (s390_hotpatch_hw_before_label): New name. | |
11003 | (get_hotpatch_attribute): Removed. | |
11004 | (s390_hotpatch_hw_after_label): New name. | |
11005 | (s390_handle_hotpatch_attribute): Add second parameter to hotpatch | |
11006 | attribute. | |
11007 | (s390_attribute_table): Ditto. | |
11008 | (s390_function_num_hotpatch_trampoline_halfwords): Renamed. | |
11009 | (s390_function_num_hotpatch_hw): New name. | |
11010 | Remove special handling of inline functions and hotpatching. | |
11011 | Return number of nops before and after the function label. | |
11012 | (s390_can_inline_p): Removed. | |
11013 | (s390_asm_output_function_label): Emit a configurable number of nops | |
11014 | after the function label. | |
11015 | (s390_option_override): Update -mhotpatch= syntax and remove -mhotpatch. | |
11016 | (TARGET_CAN_INLINE_P) Removed. | |
11017 | (TARGET_FUNCTION_ATTRIBUTE_INLINABLE_P): New. | |
11762b83 | 11018 | |
e846bde8 | 11019 | 2015-01-27 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> |
11020 | Jiong Wang <jiong.wang@arm.com> | |
11021 | ||
11022 | * config/aarch64/aarch64.md (tb<optab><mode>1): Clobber CC reg instead | |
11023 | of scratch reg. | |
11024 | (cb<optab><mode>1): Likewise. | |
11025 | * config/aarch64/iterators.md (bcond): New define_code_attr. | |
11026 | ||
9a071c9f | 11027 | 2015-01-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
11028 | ||
11029 | * config/s390/s390.c (s390_memory_move_cost): Increase costs for | |
11030 | memory accesses. | |
11031 | ||
5fe5762e | 11032 | 2015-01-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
11033 | ||
11034 | * config/s390/s390.c (s390_register_move_cost): Increase costs for | |
11035 | FPR->GPR moves. | |
11036 | ||
51f82904 | 11037 | 2015-01-27 Richard Biener <rguenther@suse.de> |
11038 | ||
11039 | * tree-vrp.c (update_value_range): Intersect the range with | |
11040 | old recorded SSA name range information. | |
11041 | ||
90f06e32 | 11042 | 2015-01-27 Nick Clifton <nickc@redhat.com> |
11043 | ||
11044 | * config/rl78/rl78.c (rl78_expand_prologue): In G10 mode push the | |
11045 | BC, DE and HL registers directly, not via AX. | |
11046 | When decrementing the stack pointer by a large amount, transfer SP | |
11047 | into AX and perform the subtraction there. | |
11048 | (rl78_expand_epilogue): Perform the inverse of the above | |
11049 | enhancements. | |
11050 | ||
43cbcd84 | 11051 | 2015-01-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
11052 | ||
11053 | * config/i386/sysv4.h (CRT_GET_RFIB_DATA): Remove. | |
11054 | ||
739b9247 | 11055 | 2015-01-27 Jakub Jelinek <jakub@redhat.com> |
11056 | Yury Gribov <y.gribov@samsung.com> | |
11057 | ||
11058 | PR ubsan/64741 | |
11059 | * ubsan.c (ubsan_source_location): Refactor code. | |
11060 | (ubsan_type_descriptor): Update type size. Refactor code. | |
11061 | ||
fdb2733b | 11062 | 2015-01-27 Richard Biener <rguenther@suse.de> |
11063 | ||
11064 | PR tree-optimization/56273 | |
11065 | PR tree-optimization/59124 | |
11066 | PR tree-optimization/64277 | |
11067 | * tree-vrp.c (vrp_finalize): Emit array-bound warnings only | |
11068 | from the first VRP pass. | |
11069 | ||
e2810e72 | 11070 | 2015-01-27 Jakub Jelinek <jakub@redhat.com> |
11071 | ||
8c2b231e | 11072 | PR ipa/64776 |
11073 | * cgraphunit.c (cgraph_node::expand_thunk): If not this_adjusting, | |
11074 | handle the first argument in the same loop as all the other arguments. | |
11075 | ||
e2810e72 | 11076 | PR rtl-optimization/61058 |
11077 | * jump.c (cleanup_barriers): Update basic block boundaries | |
11078 | if BLOCK_FOR_INSN is non-NULL on PREV. | |
11079 | ||
cf5a1dfc | 11080 | 2015-01-27 Ilya Enkovich <ilya.enkovich@intel.com> |
11081 | ||
11082 | * tree-chkp.c (chkp_call_returns_bounds_p): Fix handling of | |
11083 | bounds narrowing, already instrumented calls and calls to | |
11084 | not instrumentable functions. | |
11085 | ||
e80d050d | 11086 | 2015-01-27 Jakub Jelinek <jakub@redhat.com> |
11087 | ||
11088 | PR tree-optimization/64807 | |
11089 | * wide-int.cc (wi::divmod_internal): Clear | |
11090 | b_dividend[dividend_blocks_needed]. | |
11091 | ||
f648448d | 11092 | 2015-01-26 DJ Delorie <dj@redhat.com> |
11093 | ||
11094 | * config/rl78/rl78.c (move_elim_pass): Don't optimize away | |
11095 | volatile memory references. | |
11096 | ||
da519e84 | 11097 | 2015-01-26 Oleg Endo <olegendo@gcc.gnu.org> |
11098 | ||
11099 | PR target/49263 | |
11100 | * config/sh/sh.c (sh_split_treg_set_expr): Invoke emit_insn before | |
11101 | remove_insn. | |
11102 | * config/sh/sh.md (tstsi_t): Don't try to optimize constant with right | |
11103 | shifts if it already fits into K08. | |
11104 | ||
4e4baaad | 11105 | 2015-01-26 Jakub Jelinek <jakub@redhat.com> |
11106 | ||
4abdcfcb | 11107 | PR ipa/64730 |
11108 | * ipa-inline.c (inline_small_functions): Print "unknown" even | |
11109 | if edge->call_stmt is non-NULL, but has builtins or unknown | |
11110 | location. | |
11111 | ||
4e4baaad | 11112 | PR middle-end/64421 |
11113 | * omp-low.c (simd_clone_mangle): If DECL_ASSEMBLER_NAME starts | |
11114 | with asterisk, skip the first character. | |
11115 | ||
202b2a31 | 11116 | 2015-01-26 H.J. Lu <hongjiu.lu@intel.com> |
11117 | ||
11118 | PR target/64806 | |
11119 | * config/i386/i386 (feature_priority): Revert the last P_POPCNT | |
11120 | order change. | |
11121 | ||
89e2ddc9 | 11122 | 2015-01-26 Uros Bizjak <ubizjak@gmail.com> |
11123 | ||
bef5f3b7 | 11124 | PR target/64795 |
89e2ddc9 | 11125 | * config/i386/i386.md (*movdi_internal): Also check operand 0 |
11126 | to determine TYPE_LEA operand. | |
11127 | (*movsi_internal): Ditto. | |
11128 | ||
83c54f52 | 11129 | 2015-01-26 Jakub Jelinek <jakub@redhat.com> |
11130 | ||
11131 | * config/rs6000/rs6000-cpus.def (POWERPC_MASKS): Add | |
11132 | OPTION_MASK_QUAD_MEMORY_ATOMIC. | |
11133 | ||
208e784b | 11134 | 2015-01-26 Renlin Li <renlin.li@arm.com> |
11135 | ||
11136 | * config/aarch64/aarch64.c (aarch64_load_symref_appropriately): Correct | |
11137 | the comment. | |
11138 | * config/aarch64/aarch64.md (tlsle_small_<mode>): Add left shift 12-bit | |
11139 | for higher part. | |
11140 | ||
e9b1fbeb | 11141 | 2015-01-26 Richard Biener <rguenther@suse.de> |
11142 | ||
11143 | PR middle-end/64764 | |
11144 | * tree-ssa-uninit.c (is_pred_expr_subset_of): Handle | |
11145 | combining two BIT_AND_EXPR predicates. | |
11146 | ||
0ca349c0 | 11147 | 2015-01-26 H.J. Lu <hongjiu.lu@intel.com> |
11148 | ||
11149 | PR bootstrap/64754 | |
11150 | * tree-ssa-structalias.c (new_var_info): Initialize ruid. | |
e9b1fbeb | 11151 | |
b91bef5c | 11152 | 2015-01-26 Terry Guo <terry.guo@arm.com> |
11153 | ||
11154 | * config/arm/arm.c (arm_file_start): Update the assignment of | |
11155 | Tag_ABI_HardFP_use. | |
11156 | ||
bef5f3b7 | 11157 | 2015-01-25 James Greenhalgh <james.greenhalgh@arm.com> |
b1099bfd | 11158 | |
11159 | * config/arm/arm-cores.def (cortex-a57): Use the new Cortex-A57 | |
11160 | pipeline model. | |
11161 | config/arm/arm.md: Include the new Cortex-A57 model. | |
11162 | (generic_sched): Don't use generic_sched when tuning for | |
11163 | Cortex-A57. | |
11164 | ||
f8956357 | 11165 | 2015-01-25 Allan Sandfeld Jensen <sandfeld@kde.org> |
11166 | Uros Bizjak <ubizjak@gmail.com> | |
11167 | ||
11168 | * config/i386/i386.c (get_builtin_code_for_version): Add | |
11169 | support for BMI and BMI2 multiversion functions. | |
11170 | ||
3de84d7f | 11171 | 2015-01-25 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
11172 | ||
11173 | * emit-rtl.h (store_bit_field): Move prototype to expmed.h. | |
11174 | (extract_bit_field): Likewise. | |
11175 | (extract_low_bits): Likewise. | |
11176 | (expand_mult): Likewise. | |
11177 | (expand_mult_highpart_adjust): Likewise. | |
11178 | ||
1b738d4d | 11179 | 2015-01-24 H.J. Lu <hongjiu.lu@intel.com> |
11180 | ||
11181 | * config/i386/driver-i386.c (host_detect_local_cpu): Check new | |
11182 | Silvermont, Haswell, Broadwell and Knights Landing model numbers. | |
11183 | * config/i386/i386.c (processor_model): Add | |
11184 | M_INTEL_COREI7_BROADWELL. | |
11185 | (arch_names_table): Add "broadwell". | |
11186 | ||
6c97af1b | 11187 | 2015-01-24 Oleg Endo <olegendo@gcc.gnu.org> |
11188 | ||
11189 | PR target/49263 | |
11190 | PR target/53987 | |
11191 | PR target/64345 | |
11192 | PR target/59533 | |
11193 | PR target/52933 | |
11194 | PR target/54236 | |
11195 | PR target/51244 | |
11196 | * config/sh/sh-protos.h | |
11197 | (sh_extending_set_of_reg::can_use_as_unextended_reg, | |
11198 | sh_extending_set_of_reg::use_as_unextended_reg, | |
11199 | sh_is_nott_insn, sh_movt_set_dest, sh_movrt_set_dest, sh_is_movt_insn, | |
11200 | sh_is_movrt_insn, sh_insn_operands_modified_between_p, | |
11201 | sh_reg_dead_or_unused_after_insn, sh_in_recog_treg_set_expr, | |
11202 | sh_recog_treg_set_expr, sh_split_treg_set_expr): New functions. | |
11203 | (sh_treg_insns): New class. | |
11204 | * config/sh/sh.c (TARGET_LEGITIMATE_COMBINED_INSN): Define target hook. | |
11205 | (scope_counter): New class. | |
11206 | (sh_legitimate_combined_insn, sh_is_nott_insn, sh_movt_set_dest, | |
11207 | sh_movrt_set_dest, sh_reg_dead_or_unused_after_insn, | |
11208 | sh_extending_set_of_reg::can_use_as_unextended_reg, | |
11209 | sh_extending_set_of_reg::use_as_unextended_reg, sh_recog_treg_set_expr, | |
11210 | sh_in_recog_treg_set_expr, sh_try_split_insn_simple, | |
11211 | sh_split_treg_set_expr): New functions. | |
11212 | (addsubcosts): Handle treg_set_expr. | |
11213 | (sh_rtx_costs): Handle IF_THEN_ELSE and ZERO_EXTRACT. | |
11214 | (sh_rtx_costs): Use arith_reg_operand in SIGN_EXTEND and ZERO_EXTEND. | |
11215 | (sh_rtx_costs): Handle additional bit test patterns in EQ and AND cases. | |
11216 | (sh_insn_operands_modified_between_p): Make non-static. | |
11217 | * config/sh/predicates.md (zero_extend_movu_operand): Allow | |
11218 | simple_mem_operand in addition to displacement_mem_operand. | |
11219 | (zero_extend_operand): Don't allow zero_extend_movu_operand. | |
11220 | (treg_set_expr, treg_set_expr_not_const01, | |
11221 | arith_reg_or_treg_set_expr): New predicates. | |
11222 | * config/sh/sh.md (tstsi_t): Use arith_reg_operand and | |
11223 | arith_or_int_operand instead of logical_operand. Convert to | |
11224 | insn_and_split. Try to optimize constant operand in splitter. | |
11225 | (tsthi_t, tstqi_t): Fold into *tst<mode>_t. Convert to insn_and_split. | |
11226 | (*tstqi_t_zero): Delete. | |
11227 | (*tst<mode>_t_subregs): Add !sh_in_recog_treg_set_expr split condition. | |
11228 | (tstsi_t_and_not): Delete. | |
11229 | (tst<mode>_t_zero_extract_eq): Rename to *tst<mode>_t_zero_extract. | |
11230 | Convert to insn_and_split. | |
11231 | (unnamed split, tstsi_t_zero_extract_xor, | |
11232 | tstsi_t_zero_extract_subreg_xor_little, | |
11233 | tstsi_t_zero_extract_subreg_xor_big): Delete. | |
11234 | (*tstsi_t_shift_mask): New insn_and_split. | |
11235 | (cmpeqsi_t, cmpgesi_t): Add new split for const_int 0 operands and try | |
11236 | to recombine with surrounding insns when splitting. | |
11237 | (*negtstsi): Add !sh_in_recog_treg_set_expr condition. | |
11238 | (cmp_div0s_0, cmp_div0s_1, *cmp_div0s_0, *cmp_div0s_1): Rewrite as ... | |
11239 | (cmp_div0s, *cmp_div0s_1, *cmp_div0s_2, *cmp_div0s_3, *cmp_div0s_4, | |
11240 | *cmp_div0s_5, *cmp_div0s_6): ... these new insn_and_split patterns. | |
11241 | (*cbranch_div0s: Delete. | |
11242 | (*addc): Convert to insn_and_split. Use treg_set_expr as 3rd operand. | |
11243 | Try to recombine with surrounding insns when splitting. Add operand | |
11244 | order variants. | |
11245 | (*addc_t_r, *addc_r_t): Use treg_set_expr_not_const01. | |
11246 | (*addc_r_r_1, *addc_r_lsb, *addc_r_r_lsb, *addc_r_lsb_r, *addc_r_msb, | |
11247 | *addc_r_r_msb, *addc_2r_msb): Delete. | |
11248 | (*addc_2r_lsb): Rename to *addc_2r_t. Use treg_set_expr. Add operand | |
11249 | order variant. | |
11250 | (*addc_negreg_t): New insn_and_split. | |
11251 | (*subc): Convert to insn_and_split. Use treg_set_expr as 3rd operand. | |
11252 | Try to recombine with surrounding insns when splitting. | |
89e2ddc9 | 11253 | Add operand order variants. |
6c97af1b | 11254 | (*subc_negt_reg, *subc_negreg_t, *reg_lsb_t, *reg_msb_t): New |
11255 | insn_and_split patterns. | |
11256 | (*rotcr): Use arith_reg_or_treg_set_expr. Try to recombine with | |
11257 | surrounding insns when splitting. | |
11258 | (unnamed rotcr split): Use arith_reg_or_treg_set_expr. | |
11259 | (*rotcl): Likewise. Add zero_extract variant. | |
11260 | (*ashrsi2_31): New insn_and_split. | |
11261 | (*negc): Convert to insn_and_split. Use treg_set_expr. | |
11262 | (*zero_extend<mode>si2_disp_mem): Update comment. | |
11263 | (movrt_negc, *movrt_negc, nott): Add !sh_in_recog_treg_set_expr split | |
11264 | condition. | |
11265 | (*mov_t_msb_neg, mov_neg_si_t): Use treg_set_expr. Try to recombine | |
11266 | with surrounding insns when splitting. | |
11267 | (any_treg_expr_to_reg): New insn_and_split. | |
11268 | (*neg_zero_extract_0, *neg_zero_extract_1, *neg_zero_extract_2, | |
11269 | *neg_zero_extract_3, *neg_zero_extract_4, *neg_zero_extract_5, | |
11270 | *neg_zero_extract_6, *zero_extract_0, *zero_extract_1, | |
11271 | *zero_extract_2): New single bit zero extract patterns. | |
11272 | (bld_reg, *bld_regqi): Fold into bld<mode>_reg. | |
11273 | (*get_thread_pointersi, store_gbr, *mov<mode>_gbr_load, | |
11274 | *mov<mode>_gbr_load, *mov<mode>_gbr_load, *mov<mode>_gbr_load, | |
11275 | *movdi_gbr_load): Use arith_reg_dest instead of register_operand for | |
11276 | set destination. | |
11277 | (set_thread_pointersi, load_gbr): Use arith_reg_operand instead of | |
11278 | register_operand for set source. | |
11279 | ||
0295dbbd | 11280 | 2015-01-23 Jan Hubicka <hubicka@ucw.cz> |
11281 | ||
11282 | * i386.opt (prefetch_sse): New targetsave. | |
11283 | * i386.c (ix86_function_specific_save): Save prefetch_sse. | |
11284 | (ix86_function_specific_restore): Restore prefetch_sse and initialize | |
11285 | ix86_cost/ix86_tune_cost. | |
11286 | ||
5cd82172 | 11287 | 2015-01-23 David Malcolm <dmalcolm@redhat.com> |
11288 | ||
11289 | * config/rs6000/rs6000.c (rs6000_output_function_epilogue): | |
11290 | Support the JIT by using 0 as the language type. | |
11291 | ||
472565f8 | 11292 | 2015-01-23 Vladimir Makarov <vmakarov@redhat.com> |
11293 | ||
11294 | PR target/64317 | |
11295 | * lra-lives.c (make_hard_regno_born): Add parameter. Don't make | |
11296 | REAL_PIC_OFFSET_TABLE_REGNUM conflicting with pic offset pseudo. | |
cbcca16e | 11297 | (mark_regno_live, process_bb_lives): Pass new parameter value to |
472565f8 | 11298 | make_hard_regno_born. |
11299 | ||
20d3ff08 | 11300 | 2015-01-23 Jakub Jelinek <jakub@redhat.com> |
11301 | ||
11302 | PR rtl-optimization/63637 | |
11303 | PR rtl-optimization/60663 | |
11304 | * cse.c (merge_equiv_classes): Set new_elt->cost to MAX_COST | |
11305 | if elt->cost is MAX_COST for ASM_OPERANDS. | |
11306 | (find_sets_in_insn): Fix up comment typo. | |
11307 | (cse_insn): Don't set src_volatile for all non-volatile | |
11308 | ASM_OPERANDS in PARALLELs, but just those with multiple outputs | |
11309 | or with "memory" clobber. Set elt->cost to MAX_COST | |
11310 | for ASM_OPERANDS in PARALLEL. Set src_elt->cost to MAX_COST | |
11311 | if new_src is ASM_OPERANDS and elt->cost is MAX_COST. | |
11312 | ||
dea561ed | 11313 | 2015-01-23 Uros Bizjak <ubizjak@gmail.com> |
11314 | ||
11315 | * config/i386/sse.md (sse2_loadld): Set attribute isa to sse2 for | |
11316 | alternative 1. | |
11317 | ||
11318 | 2015-01-23 Uros Bizjak <ubizjak@gmail.com> | |
58ca7445 | 11319 | |
11320 | * config/i386/gnu-user.h (CRT_GET_RFIB_DATA): Move definition to | |
11321 | libgcc/config/i386/elf-lib.h. | |
11322 | ||
c1a114c2 | 11323 | 2015-01-23 Jakub Jelinek <jakub@redhat.com> |
11324 | ||
2782c04c | 11325 | PR driver/64737 |
11326 | * gcc.c (print_configuration): Don't print a blank line at the end | |
11327 | here... | |
11328 | (run_attempt): ... but here unstead. | |
11329 | ||
c1a114c2 | 11330 | PR middle-end/64734 |
11331 | * omp-low.c (scan_sharing_clauses): Don't ignore | |
11332 | OMP_CLAUSE_MAP_ZERO_BIAS_ARRAY_SECTION GOMP_MAP_POINTER clauses | |
11333 | on target data/update constructs. | |
11334 | ||
2cd6aee1 | 11335 | 2015-01-23 Bernd Edlinger <bernd.edlinger@hotmail.de> |
11336 | ||
11337 | PR target/50928 | |
11338 | * config/m32c/m32c.c (encode_pattern_1): Removed gcc_unreachable here. | |
11339 | (DEBUG_RELOAD): Removed define. | |
11340 | (m32c_limit_reload_class): Enable traces with if DEBUG0. | |
11341 | (m32c_function_arg): Added a type cast. | |
11342 | (m32c_legitimize_reload_address): Push A_REGS reload with PSImode. | |
11343 | * config/m32c/addsub.md (addsi3_1): Specify the mode of all arguments. | |
11344 | * config/m32c/bitops.md (andqi3_16): Likewise. | |
11345 | * config/m32c/mov.md (m32c_immd_dbl_mov): Likewise. | |
11346 | (push_a01_l): Likewise. | |
11347 | ||
4d31ecc4 | 11348 | 2015-01-23 David Malcolm <dmalcolm@redhat.com> |
11349 | ||
11350 | PR jit/64721 | |
11351 | * main.c (main): Construct toplev instances with init_signals=true. | |
11352 | * toplev.c (general_init): Add param "init_signals", and use it to | |
11353 | conditionalize the calls to signal and host_hooks.extra_signals. | |
11354 | (toplev::toplev): Add param "init_signals". | |
11355 | (toplev::main): When invoking general_init, pass m_init_signals | |
11356 | to control whether signal-handlers are installed. | |
11357 | * toplev.h (toplev::toplev): Add param "init_signals". | |
11358 | (toplev::m_init_signals): New field. | |
11359 | ||
639f32a2 | 11360 | 2015-01-23 David Malcolm <dmalcolm@redhat.com> |
11361 | ||
11362 | PR jit/64722 | |
11363 | * emit-rtl.c (init_emit_regs): Set pic_offset_table_rtx to | |
11364 | NULL_RTX before testing PIC_OFFSET_TABLE_REGNUM, since the | |
11365 | latter may be affected by the former (e.g. on i686). | |
11366 | ||
75e5ecf3 | 11367 | 2015-01-23 Martin Liska <mliska@suse.cz> |
11368 | ||
11369 | * tree.h (tree_vec_elt_check): Workaround -Wstrict-overflow | |
11370 | false positive during profiledbootstrap. | |
11371 | ||
85977647 | 11372 | 2015-01-23 Tom de Vries <tom@codesourcery.com> |
11373 | ||
11374 | PR libgomp/64672 | |
11375 | * lto-opts.c (lto_write_options): Output non-explicit conservative | |
11376 | -fno-openacc. | |
11377 | * lto-wrapper.c (merge_and_complain): Handle merging -fopenacc. | |
11378 | (append_compiler_options): Pass -fopenacc through. | |
11379 | ||
fa175926 | 11380 | 2015-01-23 Tom de Vries <tom@codesourcery.com> |
11381 | ||
11382 | PR libgomp/64707 | |
11383 | * lto-opts.c (lto_write_options): Output non-explicit conservative | |
11384 | -fno-openmp. | |
11385 | * lto-wrapper.c (merge_and_complain): Handle merging -fopenmp. | |
11386 | (append_compiler_options): Pass -fopenmp through. | |
11387 | ||
9d7131bf | 11388 | 2015-01-23 Jakub Jelinek <jakub@redhat.com> |
11389 | ||
0f41242a | 11390 | PR debug/64511 |
11391 | * dwarf2out.c (struct dw_loc_descr_node): Add chain_next | |
11392 | GTY markup. | |
11393 | ||
9d7131bf | 11394 | * diagnostic-core.h (internal_error_no_backtrace): New prototype. |
11395 | * diagnostic.def (DK_ICE_NOBT): New kind. | |
11396 | * diagnostic.c (diagnostic_action_after_output): Handle DK_ICE_NOBT | |
11397 | like DK_ICE, but never print backtrace. | |
11398 | (diagnostic_report_diagnostic): Handle DK_ICE_NOBT like DK_ICE. | |
11399 | (internal_error_no_backtrace): New function. | |
11400 | * gcc.c (execute): Use internal_error_no_backtrace instead of | |
11401 | internal_error. | |
11402 | ||
8dc239d3 | 11403 | 2015-01-22 Jeff Law <law@redhat.com> |
11404 | ||
11405 | PR target/52076 | |
11406 | * config/m68k/m68k.md (xorsi3_internal): Twiddle constraints to | |
11407 | improve code density for small immediate to memory case. | |
11408 | (insv): Better handle bitfield assignments when the field is | |
11409 | being set to all ones. | |
11410 | * config/m68k/predicates.md (reg_or_pow2_m1_operand): New | |
11411 | operand predicate. | |
11412 | ||
f1c9126b | 11413 | 2015-01-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
11414 | Jakub Jelinek <jakub@redhat.com> | |
11415 | ||
0982cb6d | 11416 | PR middle-end/64729 |
f1c9126b | 11417 | * gcc.c (LINK_SSP_SPEC): Handle -fstack-protector-explicit |
11418 | for !TARGET_LIBC_PROVIDES_SSP version and | |
11419 | -fstack-protector-{all,strong,explicit} otherwise. | |
11420 | * config/freebsd.h (LINK_SSP_SPEC): Handle | |
11421 | -fstack-protector-{strong,explicit}. | |
11422 | ||
805e955d | 11423 | 2015-01-22 Jan Hubicka <hubicka@ucw.cz> |
11424 | H.J. Lu <hongjiu.lu@intel.com> | |
11425 | ||
11426 | PR ipa/64694 | |
11427 | * ipa-inline.c (inline_small_functions): Fix thinko in maintenance of | |
11428 | heap. | |
11429 | ||
90f3e775 | 11430 | 2015-01-22 Wei Mi <wmi@google.com> |
11431 | ||
11432 | PR rtl-optimization/64557 | |
11433 | * dse.c (record_store): Call get_addr for mem_addr. | |
11434 | (check_mem_read_rtx): Likewise. | |
11435 | ||
eb1e3e62 | 11436 | 2015-01-22 Eric Botcazou <ebotcazou@adacore.com> |
11437 | ||
11438 | * fold-const.c (const_binop): Add early return for non-tcc_binary. | |
11439 | ||
11440 | 2015-01-22 Chen Gang <gang.chen.5i5j@gmail.com> | |
f2c5b126 | 11441 | |
e351f8ce | 11442 | * toplev.c (init_local_tick): Process the failure when read |
11443 | fails for random_seed. | |
11444 | ||
f2c5b126 | 11445 | * ubsan.c (ubsan_type_descriptor): Use 'pretty_print' for |
11446 | 'pretty_name' to avoid memory overflow. | |
11447 | ||
dfad1cc1 | 11448 | 2015-01-22 Richard Biener <rguenther@suse.de> |
11449 | ||
11450 | PR middle-end/64728 | |
11451 | * tree-ssa-coalesce.c (coalesce_partitions): Do not perform | |
11452 | abnormal coalescing on undefined SSA names. | |
11453 | ||
43483afb | 11454 | 2015-22-01 Uros Bizjak <ubizjak@gmail.com> |
11455 | ||
11456 | PR target/64688 | |
11457 | PR target/64477 | |
11458 | * config/i386/sse.md (vec_set<mode>_0): Use (Yi/r/C) constraints | |
11459 | for alternative 3. | |
5d896697 | 11460 | (*vec_dup<mode>): Use (Yi/$r) constraints for alternative 1. |
43483afb | 11461 | |
4413b64c | 11462 | 2015-01-22 Trevor Saunders <tsaunders@mozilla.com> |
11463 | ||
11464 | PR middle-end/63325 | |
11465 | * fold-const.c (fold_checksum_tree): Don't include value of | |
11466 | expr->decl_with_vis.symtab_node in the checksum. | |
11467 | ||
c90d3047 | 11468 | 2015-01-22 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
11469 | ||
ae7127b8 | 11470 | * config/s390/s390.md (atomic code attribute): Fix typo "ior" -> "or". |
c90d3047 | 11471 | |
5a01908f | 11472 | 2015-01-22 Max Ostapenko <m.ostapenko@partner.samsung.com> |
11473 | ||
11474 | PR driver/64690 | |
11475 | * gcc.c (insert_comments): New function. | |
11476 | (try_generate_repro): Call it. | |
11477 | (append_text): Removed. | |
11478 | ||
30bd9534 | 11479 | 2015-01-22 Richard Biener <rguenther@suse.de> |
11480 | ||
11481 | * ipa-inline.c (can_inline_edge_p): Disable inlining of edges | |
11482 | with IL incompatible options. Properly honor user optimize | |
11483 | attributes. | |
11484 | ||
37000a88 | 11485 | 2015-01-21 Segher Boessenkool <segher@kernel.crashing.org> |
11486 | ||
11487 | PR rtl-optimization/64682 | |
11488 | * combine.c (distribute_notes): When moving a death note for | |
11489 | a register that is set in the new I2, make sure to put it | |
11490 | before that new I2. | |
11491 | ||
cb7247b1 | 11492 | 2015-01-21 David Edelsohn <dje.gcc@gmail.com> |
11493 | ||
11494 | * config/rs6000/rs6000.c (rs6000_file_start): Use rs6000_isa_flags | |
11495 | not TARGET_DEFAULT. | |
11496 | ||
1f91a12d | 11497 | 2015-01-21 Jakub Jelinek <jakub@redhat.com> |
11498 | ||
27f3dbf1 | 11499 | PR debug/64511 |
11500 | * simplify-rtx.c (simplify_relational_operation_1): Don't try to | |
11501 | optimize (eq/ne (and (side_effects) (const_int 0)) (const_int 0)) | |
11502 | into (eq/ne (and (not (side_effects)) (const_int 0)) (const_int 0)). | |
11503 | ||
79401df8 | 11504 | PR sanitizer/64706 |
11505 | * doc/invoke.texi (-fsanitize=vptr): Document. | |
11506 | ||
1f91a12d | 11507 | PR rtl-optimization/62078 |
11508 | * dse.c: Include cfgcleanup.h. | |
11509 | (rest_of_handle_dse): For -fnon-call-exceptions, if DSE removed | |
11510 | anything call purge_all_dead_edges and cleanup_cfg at the end | |
11511 | of the pass. | |
11512 | ||
7b1e7168 | 11513 | 2015-01-21 Jan Hubicka <hubicka@ucw.cz> |
11514 | ||
11515 | * ipa-utils.c (ipa_merge_profiles): Avoid ICE on mismatch in indirect | |
11516 | edges. | |
11517 | ||
1e666245 | 11518 | 2015-01-21 Bernd Edlinger <bernd.edlinger@hotmail.de> |
11519 | ||
11520 | * gimplify.c (gimplify_function_tree): Check the no_sanitize_thread | |
11521 | decl attribute. | |
11522 | ||
6bc95aa6 | 11523 | 2015-01-21 David Sherwood <david.sherwood@arm.com> |
11524 | Tejas Belagod <Tejas.Belagod@arm.com> | |
11525 | ||
11526 | * config/aarch64/aarch64.h (CANNOT_CHANGE_MODE_CLASS): Removed. | |
11527 | * config/aarch64/aarch64.c (aarch64_cannot_change_mode_class): Removed. | |
11528 | * config/aarch64/aarch64-protos.h (aarch64_cannot_change_mode_class): | |
11529 | Removed. | |
11530 | ||
a91cc579 | 11531 | 2015-01-21 David Sherwood <david.sherwood@arm.com> |
11532 | Tejas Belagod <Tejas.Belagod@arm.com> | |
11533 | ||
11534 | * config/aarch64/aarch64-protos.h (aarch64_simd_attr_length_rglist) | |
11535 | (aarch64_reverse_mask): New decls. | |
11536 | * config/aarch64/iterators.md (UNSPEC_REV_REGLIST): New enum. | |
11537 | (insn_count): New mode_attr. | |
11538 | * config/aarch64/aarch64-simd.md (vec_store_lanesoi, vec_store_lanesci) | |
11539 | (vec_store_lanesxi, vec_load_lanesoi, vec_load_lanesci) | |
11540 | (vec_load_lanesxi): Made ABI compliant for Big Endian targets. | |
11541 | (aarch64_rev_reglist, aarch64_simd_ld2, aarch64_simd_ld3) | |
11542 | (aarch64_simd_ld4, aarch64_simd_st2, aarch64_simd_st3) | |
11543 | (aarch64_simd_st4): New patterns. | |
11544 | * config/aarch64/aarch64.c (aarch64_simd_attr_length_rglist) | |
11545 | (aarch64_reverse_mask): New functions. | |
11546 | ||
8bcdf19e | 11547 | 2015-01-21 Richard Sandiford <richard.sandiford@arm.com> |
11548 | ||
11549 | * config/aarch64/aarch64-protos.h (aarch64_simd_disambiguate_copy): | |
11550 | Declare. | |
11551 | * config/aarch64/aarch64.c (aarch64_classify_address): Allow extra | |
11552 | addressing modes for BE. | |
11553 | (aarch64_print_operand): Add 'R' specifier. | |
11554 | (aarch64_simd_disambiguate_copy): Delete. | |
11555 | (aarch64_simd_emit_reg_reg_move): New function. | |
11556 | * config/aarch64/aarch64-simd.md: Use aarch64_simd_emit_reg_reg_move | |
11557 | in define_splits for structural moves. | |
11558 | (mov<mode>): Use less restrictive predicates. | |
11559 | (*aarch64_mov<mode>): Simplify and only allow for LE. | |
11560 | (*aarch64_be_movoi, *aarch64_be_movci, *aarch64_be_movxi): New. | |
11561 | ||
ef8a7a52 | 11562 | 2015-01-21 Alan Hayward <alan.hayward@arm.com> |
11563 | ||
bef5f3b7 | 11564 | * rtlanal.c (subreg_get_info): Exit early for simple and common cases. |
ef8a7a52 | 11565 | |
7e6fef85 | 11566 | 2015-01-21 Richard Henderson <rth@redhat.com> |
11567 | ||
11568 | PR target/64669 | |
11569 | * ccmp.c (used_in_cond_stmt_p): Remove. | |
11570 | (expand_ccmp_expr): Don't use it. | |
11571 | ||
315b808d | 11572 | 2015-01-21 Nick Clifton <nickc@redhat.com> |
11573 | ||
11574 | * config/rl78/rl78.c (rl78_calculate_death_notes): Look inside | |
11575 | PARALLELs. | |
11576 | ||
cffdfb3d | 11577 | 2015-01-21 Richard Biener <rguenther@suse.de> |
11578 | ||
11579 | PR middle-end/64313 | |
11580 | * tree-core.h (builtin_info, builtin_info_type): Turn from | |
11581 | an object with two arrays into an array of an object with | |
11582 | decl and two flags, implicit_p and declared_p. | |
11583 | * tree.h (builtin_decl_explicit, builtin_decl_implicit, | |
11584 | set_builtin_decl, set_builtin_decl_implicit_p, | |
11585 | builtin_decl_explicit_p, builtin_decl_implicit_p): Adjust. | |
11586 | (set_builtin_decl_declared_p, builtin_decl_declared_p): New functions. | |
11587 | * builtins.c (builtin_info): Adjust. | |
11588 | * gimplify.c (gimplify_addr_expr): References to builtins | |
11589 | that have been declared by the user makes them eligible for | |
11590 | use by the compiler. Call set_builtin_decl_implicit_p on them. | |
11591 | ||
9ba76f64 | 11592 | 2015-01-20 Jeff Law <law@redhat.com> |
11593 | ||
11594 | PR target/59946 | |
11595 | * config/m68k/m68k.md (Comparison expanders and patterns): Do not | |
11596 | allow pc-relative addresses in operand predicates or constraints. | |
11597 | ||
71b315ee | 11598 | 2015-01-21 Bin Cheng <bin.cheng@arm.com> |
11599 | ||
11600 | * config/arm/arm.c (arm_cortex_a53_tune, arm_cortex_a57_tune): Prefer | |
11601 | neon on aarch32 processors for stringops. | |
11602 | ||
69d99fc4 | 11603 | 2015-01-19 Jan Hubicka <hubicka@ucw.cz> |
11604 | ||
11605 | PR ipa/63576 | |
11606 | * ipa-utils.c (ipa_merge_profiles): Merge speculative edges. | |
11607 | ||
a6d60179 | 11608 | 2015-01-19 Jan Hubicka <hubicka@ucw.cz> |
11609 | ||
11610 | PR lto/45375 | |
11611 | * ipa-inline.c: Include lto-streamer.h | |
11612 | (report_inline_failed_reason): Output source file differences and | |
11613 | flags on optimization/target node mismatch. | |
11614 | (can_inline_edge_p): Consider caller to be the outer inline function; | |
11615 | be less restrictive about matching opimize and optimize_size attributes. | |
11616 | (inline_account_function_p): Break out from ... | |
11617 | (inline_small_functions): ... here. | |
11618 | * ipa-inline-transform.c (clone_inlined_nodes): Use | |
11619 | inline_account_function_p. | |
11620 | (inline_call): Use optimize attribution; use inline_account_function_p. | |
11621 | (inline_transform): Use opt_for_fn. | |
11622 | * ipa-inline.h (inline_account_function_p): Declare. | |
11623 | ||
01ec5786 | 11624 | 2015-01-20 Jakub Jelinek <jakub@redhat.com> |
11625 | ||
11626 | PR debug/64663 | |
11627 | * dwarf2out.c (decl_piece_node): Don't put bitsize into | |
11628 | mode if bitsize <= 0. | |
11629 | (decl_piece_bitsize, adjust_piece_list, add_var_loc_to_decl, | |
11630 | dw_sra_loc_expr): Use HOST_WIDE_INT instead of int for bit | |
11631 | sizes and positions. | |
11632 | ||
c46389f0 | 11633 | 2015-01-20 Chung-Lin Tang <cltang@codesourcery.com> |
11634 | ||
11635 | * config/nios2/nios2.c (nios2_asm_file_end): Implement | |
11636 | TARGET_ASM_FILE_END hook for adding .note.GNU-stack section when | |
11637 | needed. | |
11638 | (TARGET_ASM_FILE_END): Define. | |
11639 | ||
84916591 | 11640 | 2015-01-20 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> |
11641 | ||
11642 | * config/arm/arm-protos.h (enum arm_sched_autopref): New constants. | |
11643 | (struct tune_params): Use the enum. | |
11644 | * arm.c (arm_*_tune): Update. | |
11645 | (arm_option_override): Update. | |
11646 | ||
d205f219 | 11647 | 2015-01-20 Richard Biener <rguenther@suse.de> |
11648 | ||
11649 | PR ipa/64684 | |
11650 | * ipa-reference.c (add_static_var): Inline ... | |
11651 | (analyze_function): ... here after splitting out from ... | |
11652 | (is_proper_for_analysis): ... this. | |
11653 | ||
8abeb180 | 11654 | 2015-01-20 Matthew Wahab <matthew.wahab@arm.com> |
11655 | ||
11656 | PR target/64149 | |
11657 | * config/arm/arm.opt: Remove lra option and arm_lra_flag variablesle. | |
11658 | * config/arm/arm.h (MODE_BASE_REG_CLASS): Remove use of arm_lra_flagag, | |
11659 | replace the conditional with it's true branch. | |
11660 | * config/arm/arm.config (TARGET_LRA_P): Set to hook_bool_void_true. | |
11661 | (arm_lra_p): Remove. | |
11662 | ||
4de6c58f | 11663 | 2015-01-20 Eric Botcazou <ebotcazou@adacore.com> |
11664 | ||
11665 | * config/visium/visium.h (LIB_SPEC): Adjust in default case. | |
11666 | ||
703d60ea | 11667 | 2015-01-20 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
11668 | ||
bef5f3b7 | 11669 | * config/tilegx/mul-tables.c: Move symtab.h include after |
11670 | coretypes.h include. | |
11671 | * config/tilepro/mul-tables.c: Add includes hashtab.h, hash-set.h, | |
11672 | vec.h, machmode.h, tm.h, hard-reg-set.h, input.h, function.h, rtl.h, | |
11673 | flags.h, statistics.h, double-int.h, real.h, fixed-value.h, alias.h, | |
11674 | wide-int.h, inchash.h, tree.h, insn-config.h, expmed.h, dojump.h, | |
11675 | explow.h, calls.h, emit-rtl.h, varasm.h, stmt.h. | |
703d60ea | 11676 | |
c102b5b9 | 11677 | 2015-01-20 Igor Zamyatin <igor.zamyatin@intel.com> |
11678 | ||
11679 | PR bootstrap/64676 | |
11680 | Revert: | |
11681 | 2015-01-19 Igor Zamyatin <igor.zamyatin@intel.com> | |
11682 | ||
11683 | PR rtl-optimization/64081 | |
11684 | * loop-iv.c (def_pred_latch_p): New function. | |
11685 | (latch_dominating_def): Allow specific cases with non-single | |
11686 | definitions. | |
11687 | (iv_get_reaching_def): Likewise. | |
11688 | (check_complex_exit_p): New function. | |
11689 | (check_simple_exit): Use check_complex_exit_p to allow certain cases | |
11690 | with exits not executing on any iteration. | |
11691 | ||
fa125df2 | 11692 | 2015-01-19 Jan Hubicka <hubicka@ucw.cz> |
11693 | ||
11694 | PR lto/45375 | |
11695 | * i386.c (ix86_option_override_internal): Use ix86_tune_cost | |
11696 | to set branch cost. | |
11697 | ||
f00377d6 | 11698 | 2015-01-19 Jan Hubicka <hubicka@ucw.cz> |
11699 | ||
11700 | PR lto/45375 | |
11701 | * i386.c (gate): Check flag_expensive_optimizations and | |
11702 | optimize_size. | |
11703 | (ix86_option_override_internal): Drop optimize_size condition | |
11704 | on MASK_ACCUMULATE_OUTGOING_ARGS, MASK_VZEROUPPER, | |
11705 | MASK_AVX256_SPLIT_UNALIGNED_LOAD, MASK_AVX256_SPLIT_UNALIGNED_STORE, | |
11706 | MASK_PREFER_AVX128. | |
11707 | (ix86_avx256_split_vector_move_misalign, | |
11708 | ix86_avx256_split_vector_move_misalign): Check optimize_insn_for_speed. | |
11709 | * sse.md (all uses of TARGET_PREFER_AVX128): Add | |
11710 | optimize_insn_for_speed_p check. | |
11711 | ||
b33cff21 | 11712 | 2015-01-19 Matthew Fortune <matthew.fortune@imgtec.com> |
11713 | ||
11714 | * config/mips/mips.h (FP_ASM_SPEC): New define. | |
11715 | (ASM_SPEC): Remove floating-point options and use FP_ASM_SPEC | |
11716 | instead. | |
11717 | ||
4a03e703 | 11718 | 2015-01-19 Oleg Endo <olegendo@gcc.gnu.org> |
11719 | ||
11720 | PR target/53988 | |
11721 | * config/sh/sh-protos.h (sh_find_set_of_reg): Make sure not to return | |
11722 | nullptr for insn when reaching the first insn. | |
11723 | * config/sh/sh.c (sh_unspec_insn_p): Rewrite using subrtx_iterator. | |
11724 | (sh_insn_operands_modified_between_p): Add nullptr check. | |
11725 | (sh_find_extending_set_of_reg): Fix log message. Don't accept | |
11726 | sign extending mem load if the insn contains any UNSPEC or | |
11727 | UNSPEC_VOLATILE. | |
11728 | ||
55636075 | 11729 | 2015-01-19 Jan Hubicka <hubicka@ucw.cz> |
11730 | ||
11731 | * params.def (inline-unit-growth): Drop to 15%. | |
11732 | * invoke.texi (inline-unit-growth): Document change. | |
11733 | ||
6bf7b9a1 | 11734 | 2015-01-19 Martin Liska <mliska@suse.cz> |
11735 | ||
11736 | PR ipa/64668 | |
11737 | * ipa-icf-gimple.c (func_checker::compare_operand): Call proper | |
11738 | function for second argument of OBJ_TYPE_REF. | |
11739 | ||
ae1b96a8 | 11740 | 2015-01-19 Jan Hubicka <hubicka@ucw.cz> |
11741 | ||
11742 | PR ipa/64218 | |
11743 | * ipa-inline.c (want_inline_function_to_all_callers_p): Fix check | |
11744 | whether function is an alias. | |
11745 | ||
e7d46f62 | 11746 | 2015-01-19 Jan Hubicka <hubicka@ucw.cz> |
11747 | ||
11748 | * ipa-devirt.c (ipa_devirt): Drop polymorphic call info in hopeless | |
11749 | cases. | |
11750 | ||
dcf57248 | 11751 | 2015-01-19 Vladimir Makarov <vmakarov@redhat.com> |
11752 | ||
11753 | PR rtl-optimization/64671 | |
11754 | * lra-remat.c (operand_to_remat): Don't consider jump and call | |
11755 | insns. | |
11756 | ||
5379d8d4 | 11757 | 2015-01-19 David Edelsohn <dje.gcc@gmail.com> |
11758 | ||
1cd12d8a | 11759 | PR target/59828 |
5379d8d4 | 11760 | * config/rs6000/default64.h: Include rs6000-cpus.def. |
11761 | (TARGET_DEFAULT) [LITTLE_ENDIAN]: Use ISA 2.7 (POWER8). | |
11762 | (TARGET_DEFAULT) [BIG_ENDIAN]: Use POWER4. | |
11763 | * config/rs6000/driver-rs6000.c (detect_processor_aix): Add POWER7 | |
11764 | and POWER8. | |
11765 | * config/rs6000/linux64.h (PROCESSOR_DEFAULT64): Always default to | |
11766 | POWER8. | |
11767 | * config/rs6000/rs6000.c (rs6000_file_start): Emit .machine | |
11768 | pseudo-op to specify assembler dialect. | |
11769 | ||
11a161de | 11770 | 2015-01-19 Martin Liska <mliska@suse.cz> |
11771 | ||
11772 | PR ipa/64664 | |
11773 | * ipa-icf.c (sem_item_optimizer::filter_removed_items): | |
11774 | Handle safe potentially removed nodes during filtering. | |
11775 | ||
85fbea97 | 11776 | 2015-01-19 Martin Liska <mliska@suse.cz> |
11777 | ||
11778 | * doc/extend.texi (no_icf): Add new attribute description. | |
11779 | * ipa-icf.c (sem_item_optimizer::merge_classes): Handle cases | |
11780 | where the pass attempts to merge a function with no_icf attribute. | |
11781 | ||
c16b7ed5 | 11782 | 2015-01-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> |
11783 | ||
11784 | PR target/64532 | |
11785 | * doc/md.texi (ARM Options): Document register constraints. | |
11786 | ||
681296cb | 11787 | 2015-01-19 Jiong Wang <jiong.wang@arm.com> |
11788 | Andrew Pinski <apinski@cavium.com> | |
11789 | ||
11790 | PR target/64304 | |
11791 | * config/aarch64/aarch64.md (define_insn "*ashl<mode>3_insn"): Deleted. | |
11792 | (ashl<mode>3): Don't expand if operands[2] is not constant. | |
11793 | ||
de661a1a | 11794 | 2015-01-19 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
11795 | ||
11796 | PR target/64448 | |
11797 | * config/aarch64/aarch64-simd.md (aarch64_simd_bsl<mode>_internal): | |
11798 | Match xor-and-xor RTL pattern. | |
11799 | ||
86709046 | 11800 | 2015-01-19 Igor Zamyatin <igor.zamyatin@intel.com> |
11801 | ||
11802 | PR rtl-optimization/64081 | |
11803 | * loop-iv.c (def_pred_latch_p): New function. | |
11804 | (latch_dominating_def): Allow specific cases with non-single | |
11805 | definitions. | |
11806 | (iv_get_reaching_def): Likewise. | |
11807 | (check_complex_exit_p): New function. | |
11808 | (check_simple_exit): Use check_complex_exit_p to allow certain cases | |
11809 | with exits not executing on any iteration. | |
11810 | ||
f36e946d | 11811 | 2015-01-19 Jakub Jelinek <jakub@redhat.com> |
11812 | ||
11813 | * common.opt (fgraphite): Fix a typo. | |
11814 | ||
ef416414 | 11815 | 2015-01-19 Felix Yang <felix.yang@huawei.com> |
11816 | ||
11817 | * config/aarch64/aarch64-simd.md (aarch64_<maxmin_uns>p<mode>): New | |
11818 | pattern. | |
11819 | * config/aarch64/aarch64-simd-builtins.def (smaxp, sminp, umaxp, | |
11820 | uminp, smax_nanp, smin_nanp): New builtins. | |
11821 | * config/aarch64/arm_neon.h (vpmax_s8, vpmax_s16, vpmax_s32, | |
11822 | vpmax_u8, vpmax_u16, vpmax_u32, vpmaxq_s8, vpmaxq_s16, vpmaxq_s32, | |
11823 | vpmaxq_u8, vpmaxq_u16, vpmaxq_u32, vpmax_f32, vpmaxq_f32, vpmaxq_f64, | |
11824 | vpmaxqd_f64, vpmaxs_f32, vpmaxnm_f32, vpmaxnmq_f32, vpmaxnmq_f64, | |
11825 | vpmaxnmqd_f64, vpmaxnms_f32, vpmin_s8, vpmin_s16, vpmin_s32, vpmin_u8, | |
11826 | vpmin_u16, vpmin_u32, vpminq_s8, vpminq_s16, vpminq_s32, vpminq_u8, | |
11827 | vpminq_u16, vpminq_u32, vpmin_f32, vpminq_f32, vpminq_f64, vpminqd_f64, | |
11828 | vpmins_f32, vpminnm_f32, vpminnmq_f32, vpminnmq_f64, vpminnmqd_f64, | |
11829 | vpminnms_f32): Rewrite using builtin functions. | |
11830 | ||
dc19c8fd | 11831 | 2015-01-19 Thomas Schwinge <thomas@codesourcery.com> |
11832 | ||
dfa9bd43 | 11833 | PR libgomp/64625 |
dc19c8fd | 11834 | * omp-low.c (offload_symbol_decl): Remove variable. |
11835 | (get_offload_symbol_decl): Remove function. | |
11836 | (expand_omp_target): For BUILT_IN_GOMP_TARGET, | |
11837 | BUILT_IN_GOMP_TARGET_DATA, BUILT_IN_GOMP_TARGET_UPDATE pass NULL | |
11838 | instead of &__OFFLOAD_TABLE__, for BUILT_IN_GOACC_DATA_START, | |
11839 | BUILT_IN_GOACC_ENTER_EXIT_DATA, BUILT_IN_GOACC_PARALLEL, | |
11840 | BUILT_IN_GOACC_UPDATE don't pass it at all. | |
11841 | ||
c5dc4e92 | 11842 | 2015-01-19 Ilya Enkovich <ilya.enkovich@intel.com> |
11843 | ||
11844 | * tree-sra.c (some_callers_have_mismatched_arguments_p): Allow thunk | |
11845 | callers. | |
11846 | ||
312322ab | 11847 | 2015-01-19 Ilya Enkovich <ilya.enkovich@intel.com> |
11848 | ||
11849 | * ipa-chkp.c (chkp_produce_thunks): Add early param | |
11850 | to split thunks production into two passes. Keep | |
11851 | 'always_inline' function bodies after the first pass. | |
11852 | (pass_data_ipa_chkp_early_produce_thunks): New. | |
11853 | (pass_ipa_chkp_early_produce_thunks): New. | |
11854 | (pass_ipa_chkp_produce_thunks::execute): Adjust to new | |
11855 | chkp_produce_thunks signature. | |
11856 | (make_pass_ipa_chkp_early_produce_thunks): New. | |
11857 | * passes.def (pass_ipa_chkp_early_produce_thunks): New. | |
11858 | (pass_ipa_chkp_produce_thunks): Move after local optimizations. | |
11859 | * tree-pass.h (make_pass_ipa_chkp_early_produce_thunks): New. | |
11860 | ||
f070b34d | 11861 | 2015-01-18 Jan Hubicka <hubicka@ucw.cz> |
11862 | ||
11863 | * cgraph.c (cgraph_node::dump): Dump profile flags. | |
11864 | ||
9d67ffb2 | 11865 | 2015-01-18 Oleg Endo <olegendo@gcc.gnu.org> |
11866 | ||
11867 | PR target/64652 | |
11868 | * config/sh/sh.md (udivsi3_i4, divsi3_i4): Make use of sfunc address | |
11869 | reg appear first in the parallel. | |
11870 | ||
bfedbed1 | 11871 | 2015-01-18 Jan Hubicka <hubicka@ucw.cz> |
11872 | ||
11873 | * ipa-reference.c (set_reference_optimization_summary, | |
f070b34d | 11874 | ipa_reference_get_not_written_global): Do nothing if ipa-reference is |
11875 | disabled. | |
bfedbed1 | 11876 | (ignore_module_statics): New static var. |
f070b34d | 11877 | (propagate_bits): If ipa-reference is disabled, do not look into local |
11878 | properties. | |
bfedbed1 | 11879 | (analyze_function): Disable analysis when ipa_reference is disabled. |
11880 | (generate_summary): Do not dump when reference is disabled; | |
11881 | collect vars accessed from functions with ipa-reference disabled. | |
11882 | (get_read_write_all_from_node): When ipa-reference is disabled, use the | |
11883 | node flags. | |
11884 | (gate): Enable for LTO. | |
11885 | (ignore_edge_p): New function. | |
11886 | (propagate): Skip functions w/o ipa-reference analysis. | |
11887 | * optc-save-gen.awk: Handle optimize_debug correctly. | |
11888 | * opth-gen.awk: Likewise. | |
11889 | * common.opt (fauto-inc-dec, fdelete-dead-exceptions, ffunction-cse, | |
11890 | fgraphite, fstrict-volatile-bitfields, fira-algorithm, fira-region, | |
11891 | fira-share-save-slots, fira-share-spill-slots, | |
11892 | fmodulo-sched-allow-regmoves, fpartial-inlining, | |
11893 | sched-stalled-insns, fsched-stalled-insns-dep, fstrict-overflow, | |
11894 | ftracer, ftree-parallelize-loops, fassociative-math, | |
11895 | freciprocal-math, fvect-cost-model, fsimd-cost-model): Mark as | |
11896 | Optimization | |
11897 | (fauto-profile, fcommon, fdata-sections, fipa-icf-variables, | |
bef5f3b7 | 11898 | ftoplevel-reorder, funit-at-a-time, fwhole-program): Do not mark as |
11899 | Optimization. | |
bfedbed1 | 11900 | * ipa-icf.c (gate, sem_item_optimizer::filter_removed_items): |
11901 | Fix for IPA. | |
11902 | ||
2c9d5cb8 | 11903 | 2015-01-18 Jan Hubicka <hubicka@ucw.cz> |
11904 | ||
11905 | PR ipa/64378 | |
11906 | * ipa-prop.c (try_make_edge_direct_virtual_call): Clear speculative | |
11907 | flag correctly. | |
11908 | * ipa-cp.c (ipa_get_indirect_edge_target_1): Handle speculation. | |
11909 | ||
d40a7894 | 11910 | 2015-01-18 Sandra Loosemore <sandra@codesourcery.com> |
11911 | ||
11912 | * doc/invoke.texi ([-funroll-loops], [-funroll-all-loops]): | |
11913 | Remove duplicate option listings. | |
11914 | ||
7f3c7cea | 11915 | 2015-01-18 Felix Yang <felix.yang@huawei.com> |
11916 | ||
11917 | * auto-profile.c (afdo_find_equiv_class): Remove unnecessary test. | |
11918 | (autofdo_source_profile::get_callsite_total_count, | |
11919 | function_instance::get_function_instance_by_decl, | |
11920 | string_table::get_index, string_table::get_index_by_decl, | |
11921 | afdo_vpt_for_early_inline, afdo_callsite_hot_enough_for_early_inline): | |
11922 | Fix comment typos. Reformatting and minor code rearrangement. | |
11923 | ||
406d6b7a | 11924 | 2015-01-17 Segher Boessenkool <segher@kernel.crashing.org> |
11925 | ||
11926 | * config/rs6000/rs6000.md (probe_stack): Delete. | |
11927 | (probe_stack_address): New. | |
11928 | ||
7dee532e | 11929 | 2015-01-17 Segher Boessenkool <segher@kernel.crashing.org> |
11930 | ||
11931 | * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Use TARGET_32BIT | |
11932 | to test for 32-bit ABIs, not !TARGET_POWERPC64. | |
11933 | ||
ee645a3b | 11934 | 2015-01-17 Segher Boessenkool <segher@kernel.crashing.org> |
11935 | ||
11936 | * config/rs6000/rs6000.c (rs6000_parallel_return): New function. | |
11937 | (rs6000_function_value): Use it. Handle SCmode and TCmode as well, | |
11938 | for TARGET_32BIT && TARGET_POWERPC64. Fix another BITS_PER_WORD | |
11939 | snafu. | |
11940 | (rs6000_libcall_value): Use the new function. | |
11941 | ||
e4ee8a48 | 11942 | 2015-01-17 Sandra Loosemore <sandra@codesourcery.com> |
11943 | ||
11944 | * doc/invoke.texi ([-ftracer]): Remove duplicate option listing. | |
11945 | ||
8f8029b2 | 11946 | 2015-01-17 Eric Botcazou <ebotcazou@adacore.com> |
11947 | ||
11948 | * reorg.c (fill_simple_delay_slots): If TARGET_FLAGS_REGNUM is valid, | |
11949 | implement a more precise life analysis for it during backward scan. | |
11950 | ||
e9f39926 | 11951 | 2015-01-17 Jan Kratochvil <jan.kratochvil@redhat.com> |
11952 | ||
11953 | * dwarf2out.c (gen_producer_string): Ignore also OPT_fpreprocessed. | |
11954 | ||
8700bf9e | 11955 | 2015-01-17 Bernd Schmidt <bernds@codesourcery.com> |
11956 | ||
11957 | PR rtl-optimization/52773 | |
11958 | * calls.c (emit_library_call_value): When pushing arguments use | |
11959 | stack_pointer_rtx rather than virtual_outgoing_args_rtx in | |
11960 | CALL_INSN_FUNCTION_USAGE. Only emit one of use of the magic | |
11961 | stack pointer reference into CALL_INSN_FUNCTION_USAGE. | |
11962 | ||
9cc65060 | 11963 | 2015-01-17 Jeff Law <law@redhat.com> |
11964 | ||
11965 | PR rtl-optimization/32790 | |
11966 | * reginfo.c (reg_scan_mark_refs): Look for ZERO_EXTRACT, | |
11967 | not ZERO_EXTEND in SET_DESTs. | |
11968 | ||
c63e3c45 | 11969 | 2015-01-17 Alan Modra <amodra@gmail.com> |
11970 | ||
11971 | * cprop.c (do_local_cprop): Revert last change. | |
11972 | ||
0c5d0bfa | 11973 | 2015-01-16 DJ Delorie <dj@redhat.com> |
11974 | Nick Clifton <nickc@redhat.com> | |
11975 | ||
11976 | * config/rl78/rl78-real.md (addqi3_real): Allow volatiles. | |
11977 | (addhi3_real): Likewise. Fix [HL+0] syntax. | |
11978 | (subqi3_real): Likewise. | |
11979 | (subhi3_real): Likewise. | |
11980 | (cbranchqi4_real): Likewise. Allow saddr,#imm. | |
11981 | (cbranchhi4_real): Likewise. | |
11982 | (cbranchhi4_real_inverted): Likewise. | |
11983 | (cbranchsi4_real_lt): Likewise. | |
11984 | (cbranchsi4_real_ge): Likewise. | |
11985 | (cbranchsi4_real_ge): Likewise. | |
11986 | * config/rl78/rl78-virt.md (add<mode>3_virt): Likewise. | |
11987 | (sub<mode>3_virt): Likewise. | |
11988 | (cbranchqi4_virt): Likewise. | |
11989 | (cbranchhi4_virt): Likewise. | |
11990 | * config/rl78/rl78.c (rl78_print_operand_1): 'p' modifier means | |
11991 | always use '[reg+imm]' even when imm is zero. | |
11992 | * config/rl78/predicates.md (rl78_volatile_memory_operand): New. | |
11993 | (rl78_general_operand): New. | |
11994 | (rl78_nonimmediate_operand): New. | |
11995 | (rl78_nonfar_operand): Use them. | |
11996 | (rl78_nonfar_nonimm_operand): Likewise. | |
11997 | (rl78_stack_based_mem): Fix. | |
11998 | * config/rl78/constraints.md (Ibqi): New. | |
11999 | (IBqi): New. | |
12000 | (Wsa): New. | |
12001 | (Wsf): New. | |
12002 | (Cs1): Fix. | |
12003 | * config/rl78/rl78-expand.md (andqi3): Accept volatiles. | |
12004 | (iorqi3): Likewise. | |
12005 | (xorqi3): Likewise. | |
12006 | * config/rl78/rl78-protos.h (rl78_sfr_p): New. | |
12007 | ||
bef5f3b7 | 12008 | * config/rl78/constrains (Qs8): New constraint. |
12009 | * config/rl78/rl78.c (rl78_flags_already_set): New function. | |
12010 | * config/rl78/rl78-protos.h (rl78_flags_already_set): New prototype. | |
12011 | * config/rl78/rl78-real.md (update_Z): New attribute. | |
12012 | Update patterns to set it. | |
12013 | (cbranchqi4_real): Call rl78_flags_already_set() to determine if a | |
12014 | shorter compare and branch sequence can be used. | |
12015 | (cbranchhi4_real): Likewise. | |
12016 | (cbranchhi4_real_inverted): Likewise. | |
0c5d0bfa | 12017 | |
12018 | * config/rl78/predicates.md (uword_operand): Allow symbol_refs. | |
12019 | * config/rl78/rl78-c.c (rl78_register_pragmas): Register __near | |
12020 | address space. | |
12021 | * config/rl78/rl78.c (rl78_get_name_encoding): New. | |
12022 | (rl78_option_override): Allow -mes0 only if C. | |
12023 | (characterize_address): Support subregs of symbol_refs. | |
12024 | (rl78_addr_space_address_mode): Move. Add __near. | |
12025 | (rl78_far_p): Likewise. | |
12026 | (rl78_addr_space_pointer_mode): Likewise. | |
12027 | (rl78_as_legitimate_address): Likewise. | |
12028 | (rl78_addr_space_subset_p): Likewise. | |
12029 | (rl78_addr_space_convert): Likewise. | |
12030 | (rl78_print_operand_1): Support 16-bit addressing of 32-bit | |
12031 | symbols with -mes0. | |
12032 | (transcode_memory_rtx): Don't copy ES if -mes0. Allow symbol[BC] | |
12033 | addressing. | |
12034 | (rl78_alloc_physical_registers_op1): Change logic to prefer | |
12035 | symbol[BC] addressing. | |
12036 | (frodata_section): New. | |
12037 | (rl78_asm_init_sections): Initialize it. | |
12038 | (rl78_select_section): Put __far readonly symbols in .frodata. | |
12039 | (rl78_make_type_far): New. | |
bef5f3b7 | 12040 | (rl78_insert_attributes): Force all readonly symbols to be |
12041 | __far when -mes0. | |
0c5d0bfa | 12042 | (rl78_asm_out_integer): New. |
12043 | * config/rl78/rl78.h (ADDR_SPACE_NEAR): New. | |
12044 | * config/rl78/rl78.opt (-mes0): New. | |
12045 | ||
12046 | * config/rl78/rl78.h (ASM_OUTPUT_LABELREF): New. | |
12047 | (ASM_OUTPUT_ALIGNED_DECL_COMMON): New. | |
12048 | (ASM_OUTPUT_ALIGNED_DECL_LOCAL): New. | |
12049 | * config/rl78/rl78-protos.h (rl78_output_labelref): New. | |
12050 | (rl78_saddr_p): New. | |
12051 | (rl78_output_aligned_common): New. | |
12052 | * config/rl78/rl78.c (rl78_output_symbol_ref): Strip encodings. | |
12053 | (rl78_handle_saddr_attribute): New. | |
12054 | (rl78_handle_naked_attribute): New. | |
12055 | (rl78_attribute_table): Add saddr. | |
12056 | (rl78_print_operand_1): Don't print '!' on saddr operands. | |
12057 | (rl78_print_operand_1): Strip encodings. | |
12058 | (rl78_sfr_p): New. | |
12059 | (rl78_strip_name_encoding): New. | |
12060 | (rl78_attrlist_to_encoding): New. | |
12061 | (rl78_encode_section_info): New. | |
12062 | (rl78_asm_init_sections): New. | |
12063 | (rl78_select_section): New. | |
12064 | (rl78_output_labelref): New. | |
12065 | (rl78_output_aligned_common): New. | |
12066 | (rl78_asm_out_integer): New. | |
12067 | (rl78_asm_ctor_dtor): New. | |
12068 | (rl78_asm_constructor): New. | |
12069 | (rl78_asm_destructor): New. | |
12070 | ||
12071 | * config/rl78/rl78-real.md (movqi_es): Rename to movqi_to_es. | |
12072 | * config/rl78/rl78.c (rl78_expand_epilogue): Update. | |
12073 | (transcode_memory_rtx): Update. | |
12074 | (rl78_expand_epilogue): Use A_REG instead of 0. | |
12075 | ||
34aaed43 | 12076 | 2015-01-17 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> |
12077 | ||
12078 | * config/arm/arm-protos.h (struct tune_params): New field | |
12079 | sched_autopref_queue_depth. | |
12080 | * config/arm/arm.c (sched-int.h): Include header. | |
12081 | (arm_first_cycle_multipass_dfa_lookahead_guard,) | |
12082 | (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD): Define hook. | |
12083 | (arm_slowmul_tune, arm_fastmul_tune, arm_strongarm_tune,) | |
12084 | (arm_xscale_tune, arm_9e_tune, arm_v6t2_tune, arm_cortex_tune,) | |
12085 | (arm_cortex_a8_tune, arm_cortex_a7_tune, arm_cortex_a15_tune,) | |
12086 | (arm_cortex_a53_tune, arm_cortex_a57_tune, arm_xgene1_tune,) | |
12087 | (arm_cortex_a5_tune, arm_cortex_a9_tune, arm_cortex_a12_tune,) | |
12088 | (arm_v7m_tune, arm_cortex_m7_tune, arm_v6m_tune, arm_fa726te_tune): | |
12089 | Specify sched_autopref_queue_depth value. Enabled for A15 and A57. | |
12090 | * config/arm/t-arm (arm.o): Update. | |
12091 | * haifa-sched.c (update_insn_after_change): Update. | |
12092 | (rank_for_schedule): Use auto-prefetcher model, if requested. | |
12093 | (autopref_multipass_init): New static function. | |
12094 | (autopref_rank_for_schedule): New rank_for_schedule heuristic. | |
12095 | (autopref_multipass_dfa_lookahead_guard_started_dump_p): New static | |
12096 | variable for debug dumps. | |
12097 | (autopref_multipass_dfa_lookahead_guard_1): New static helper function. | |
12098 | (autopref_multipass_dfa_lookahead_guard): New global function that | |
12099 | implements TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD hook. | |
12100 | (init_h_i_d): Update. | |
12101 | * params.def (PARAM_SCHED_AUTOPREF_QUEUE_DEPTH): New tuning knob. | |
12102 | * sched-int.h (enum autopref_multipass_data_status): New const enum. | |
12103 | (autopref_multipass_data_): Structure for auto-prefetcher data. | |
12104 | (autopref_multipass_data_def, autopref_multipass_data_t): New typedefs. | |
12105 | (struct _haifa_insn_data:autopref_multipass_data): New field. | |
12106 | (INSN_AUTOPREF_MULTIPASS_DATA): New access macro. | |
12107 | (autopref_multipass_dfa_lookahead_guard): Declare. | |
12108 | ||
b61d7819 | 12109 | 2015-01-17 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> |
12110 | ||
12111 | * rtlanal.c (get_base_term): Handle SCRATCH. | |
12112 | ||
65d538fd | 12113 | 2015-01-17 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> |
12114 | ||
12115 | * config/aarch64/aarch64.c | |
12116 | (aarch64_sched_first_cycle_multipass_dfa_lookahead): Implement hook. | |
12117 | (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Define. | |
12118 | * config/arm/arm.c | |
12119 | (arm_first_cycle_multipass_dfa_lookahead): Implement hook. | |
12120 | (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Define. | |
12121 | ||
1c00a6ae | 12122 | 2015-01-17 Alan Modra <amodra@gmail.com> |
12123 | ||
12124 | * cprop.c (do_local_cprop): Disallow replacement of fixed | |
12125 | hard registers. | |
12126 | ||
edc35e20 | 12127 | 2015-01-16 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
12128 | ||
12129 | PR target/62066 | |
12130 | * config/arm/arm-builtins.c (arm_expand_neon_args): Call va_end before | |
12131 | early return 0. | |
12132 | ||
24fe68b6 | 12133 | 2015-01-16 Bernd Edlinger <bernd.edlinger@hotmail.de> |
12134 | ||
bebfcb12 | 12135 | * sanitizer.def (BUILT_IN_TSAN_VPTR_UPDATE): Fixed parameters. |
24fe68b6 | 12136 | * tsan.c (instrument_expr): Fixed parameters of __tsan_vptr_update. |
12137 | ||
6988da2f | 12138 | 2015-01-16 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
12139 | ||
12140 | * config/arm/arm.md: Move comment about splitting Thumb1 patterns to... | |
12141 | * config/arm/thumb1.md: ... Here. | |
12142 | ||
ee5701b7 | 12143 | 2015-01-16 Segher Boessenkool <segher@kernel.crashing.org> |
12144 | ||
12145 | * config/rs6000/rs6000.c (rs6000_scalar_mode_supported_p): Disallow | |
12146 | TImode for TARGET_32BIT. | |
12147 | ||
82c9887b | 12148 | 2015-01-16 Segher Boessenkool <segher@kernel.crashing.org> |
12149 | ||
12150 | * config/rs6000/rs6000.c (TARGET_LIBGCC_CMP_RETURN_MODE, | |
12151 | TARGET_LIBGCC_SHIFT_COUNT_MODE, TARGET_UNWIND_WORD_MODE): Implement | |
12152 | as ... | |
12153 | (rs6000_abi_word_mode): New function. | |
12154 | ||
0d656be0 | 12155 | 2015-01-16 Segher Boessenkool <segher@kernel.crashing.org> |
12156 | ||
12157 | * config/rs6000/rs6000.c (rs6000_va_start): Use MIN_UNITS_PER_WORD | |
12158 | instead of UNITS_PER_WORD to describe the size of stack slots. | |
12159 | ||
e5174016 | 12160 | 2015-01-16 Segher Boessenkool <segher@kernel.crashing.org> |
12161 | ||
12162 | * config/rs6000/rs6000.c (TARGET_PROMOTE_FUNCTION_MODE): Implement | |
12163 | as rs6000_promote_function_mode. Move comment to there. | |
12164 | (rs6000_promote_function_mode): New function. | |
12165 | ||
2f4fe32e | 12166 | 2015-01-16 Segher Boessenkool <segher@kernel.crashing.org> |
12167 | ||
12168 | * config/rs6000/rs6000.h (PROMOTE_MODE): Correct test for when -m32 | |
12169 | -mpowerpc64 is active. | |
12170 | ||
74ab45d6 | 12171 | 2015-01-16 Ilya Enkovich <ilya.enkovich@intel.com> |
12172 | ||
12173 | PR middle-end/64353 | |
12174 | * tree-cfg.c (pass_data_fixup_cfg): Update SSA for | |
12175 | virtuals on start. | |
12176 | ||
553d8de1 | 12177 | 2015-01-16 James Greenhalgh <james.greenhalgh@arm.com> |
12178 | ||
12179 | * config/arm/cortex-a57.md: Remove duplicate of file accidentally | |
12180 | introduced in revision 219724. | |
12181 | ||
81b5bfe7 | 12182 | 2015-01-16 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
bef5f3b7 | 12183 | Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> |
81b5bfe7 | 12184 | |
12185 | PR target/64263 | |
12186 | * config/aarch64/aarch64.md (*movsi_aarch64): Don't split if the | |
12187 | destination is not a GP reg. | |
12188 | (*movdi_aarch64): Likewise. | |
12189 | ||
cbc34774 | 12190 | 2015-01-16 David Edelsohn <dje.gcc@gmail.com> |
12191 | ||
12192 | PR target/64623 | |
12193 | * config/rs6000/default64.h: Revert ISA change. | |
12194 | ||
cac06b02 | 12195 | 2015-01-16 Richard Biener <rguenther@suse.de> |
12196 | ||
12197 | PR middle-end/64614 | |
12198 | * tree-ssa-uninit.c: Include tree-cfg.h. | |
12199 | (MAX_SWITCH_CASES): New define. | |
12200 | (convert_control_dep_chain_into_preds): Handle switch statements. | |
12201 | (is_pred_expr_subset_of): Handle x == CST vs. (x & CST) != 0. | |
12202 | (normalize_one_pred_1): Do not split bit-manipulations. | |
12203 | Record (x & CST). | |
12204 | ||
b6d76e68 | 12205 | 2015-01-16 Richard Biener <rguenther@suse.de> |
12206 | ||
12207 | PR tree-optimization/64568 | |
12208 | * tree-ssa-forwprop.c (pass_forwprop::execute): Guard | |
12209 | complex load rewriting for TARGET_MEM_REFs. | |
12210 | ||
15b4214c | 12211 | 2015-01-16 Uros Bizjak <ubizjak@gmail.com> |
12212 | ||
12213 | * builtins.c (expand_builtin_acc_on_device): Check target for NULL. | |
12214 | ||
757bc674 | 12215 | 2015-01-16 Matthew Wahab <matthew.wahab@arm.com> |
12216 | ||
12217 | PR target/64149 | |
12218 | * config/aarch64/aarch64.opt: Remove lra option and aarch64_lra_flag | |
12219 | variable. | |
12220 | * config/aarch64/aarch64.c (TARGET_LRA_P): Set to hook_bool_void_true. | |
12221 | (aarch64_lra_p): Remove. | |
12222 | ||
66124ce7 | 12223 | 2015-01-16 Ilya Enkovich <ilya.enkovich@intel.com> |
12224 | ||
12225 | PR target/64363 | |
12226 | * ipa-chkp.h (chkp_instrumentable_p): New. | |
12227 | * ipa-chkp.c: Include tree-inline.h. | |
12228 | (chkp_instrumentable_p): New. | |
12229 | (chkp_maybe_create_clone): Use chkp_instrumentable_p. | |
12230 | Fix processing of not instrumentable functions. | |
12231 | (chkp_versioning): Use chkp_instrumentable_p. Warn about | |
12232 | not instrumentable functions. | |
12233 | * tree-chkp.c (chkp_add_bounds_to_call_stmt): Use | |
12234 | chkp_instrumentable_p. | |
12235 | * tree-inline.h (copy_forbidden): New. | |
12236 | * tree-inline.c (copy_forbidden): Not static anymore. | |
12237 | ||
304eacdf | 12238 | 2015-01-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
12239 | ||
12240 | * optc-save-gen.awk (cl_target_option_print_diff): Mark indent, | |
12241 | ptr1, ptr2 unused. | |
12242 | ||
90f51e67 | 12243 | 2015-01-16 Robert Suchanek <robert.suchanek@imgtec.com> |
12244 | ||
12245 | * lra-constraints.c (curr_insn_transform): Change a reload pseudo of | |
12246 | type OP_OUT to OP_INOUT. | |
12247 | ||
e0226bda | 12248 | 2015-01-16 Robert Suchanek <robert.suchanek@imgtec.com> |
12249 | ||
12250 | * simplify-rtx.c (simplify_replace_fn_rtx): Simplify (lo_sum | |
12251 | (high x) y) to y if x and y have the same base. | |
12252 | ||
e5393284 | 12253 | 2015-01-16 James Greenhalgh <james.greenhalgh@arm.com> |
12254 | ||
12255 | * config/arm/cortex-a57.md: New. | |
12256 | * config/aarch64/aarch64.md: Include it. | |
12257 | * config/aarch64/aarch64-cores.def (cortex-a57): Tune for it. | |
12258 | * config/aarch64/aarch64-tune.md: Regenerate. | |
12259 | ||
636fb80b | 12260 | 2015-01-16 Zhenqiang Chen <zhenqiang.chen@arm.com> |
12261 | ||
12262 | PR target/64015 | |
12263 | * ccmp.c (expand_ccmp_next): New function. | |
12264 | (expand_ccmp_expr_1, expand_ccmp_expr): Handle operand insn sequence | |
12265 | and compare insn sequence. | |
12266 | * config/aarch64/aarch64.c (aarch64_code_to_ccmode, | |
12267 | aarch64_gen_ccmp_first, aarch64_gen_ccmp_next): New functions. | |
12268 | (TARGET_GEN_CCMP_FIRST, TARGET_GEN_CCMP_NEXT): New MICRO. | |
12269 | * config/aarch64/aarch64.md (*ccmp_and): Changed to ccmp_and<mode>. | |
12270 | (*ccmp_ior): Changed to ccmp_ior<mode>. | |
12271 | (cmp<mode>): New pattern. | |
12272 | * doc/tm.texi (TARGET_GEN_CCMP_FIRST, TARGET_GEN_CCMP_NEXT): Update | |
12273 | parameters. | |
12274 | * target.def (gen_ccmp_first, gen_ccmp_next): Update parameters. | |
12275 | ||
89862b24 | 12276 | 2015-01-16 Ilya Tocar <ilya.tocar@intel.com> |
12277 | ||
12278 | * config/i386/avx2intrin.h (_mm256_bslli_epi128, | |
12279 | _mm256_bsrli_epi128): New. | |
12280 | * config/i386/emmintrin.h (_mm_bsrli_si128, _mm_bslli_si128): Ditto. | |
12281 | ||
11581eb7 | 12282 | 2015-01-15 Jiong Wang <jiong.wang@arm.com> |
12283 | ||
12284 | * expmed.c (store_bit_field_using_insv): Improve warning message. | |
12285 | Use %wu instead of HOST_WIDE_INT_PRINT_UNSIGNED. | |
12286 | ||
d2d18163 | 12287 | 2015-01-15 Jiong Wang <jiong.wang@arm.com> |
12288 | ||
12289 | PR rtl-optimization/64011 | |
12290 | * expmed.c (store_bit_field_using_insv): Warn and truncate bitsize when | |
12291 | there is partial overflow. | |
12292 | ||
7ea565c0 | 12293 | 2015-01-16 Chung-Ju Wu <jasonwucj@gmail.com> |
12294 | ||
12295 | * config/nds32/nds32-protos.h (nds32_expand_epilogue): Change | |
12296 | prototype. | |
12297 | (nds32_expand_epilogue_v3pop): Likewise. | |
12298 | * config/nds32/nds32.md (sibcall): Define this for sibling call | |
12299 | optimization. | |
12300 | (sibcall_register): Likewise. | |
12301 | (sibcall_immediate): Likewise. | |
12302 | (sibcall_value): Likewise. | |
12303 | (sibcall_value_register): Likewise. | |
12304 | (sibcall_value_immediate): Likewise. | |
12305 | (sibcall_epilogue): Likewise. | |
12306 | (epilogue): Pass false to indicate this is not a sibcall epilogue. | |
12307 | * config/nds32/nds32.c (nds32_expand_epilogue): Consider sibcall case. | |
12308 | (nds32_expand_epilogue_v3pop): Likewise. | |
12309 | ||
c2927786 | 12310 | 2015-01-16 Chung-Ju Wu <jasonwucj@gmail.com> |
12311 | ||
12312 | * config/nds32/nds32-protos.h (nds32_can_use_return_insn): New. | |
12313 | * config/nds32/nds32.md (unspec_volatile_func_return): Remove. | |
12314 | (return_internal): New. | |
12315 | (return): Define this named pattern. | |
12316 | (simple_return): Define this named pattern. | |
12317 | * config/nds32/nds32.c (nds32_expand_epilogue): Emit return_internal | |
12318 | pattern instead of unspec_volatile_func_return. | |
12319 | (nds32_expand_epilogue_v3pop): Likewise. | |
12320 | (nds32_can_use_return_insn): New function. | |
12321 | ||
405249c1 | 12322 | 2015-01-16 Chung-Ju Wu <jasonwucj@gmail.com> |
12323 | ||
12324 | * config/nds32/constants.md (UNSPEC_VOLATILE_POP25_RETURN): New. | |
12325 | * config/nds32/nds32.md (pop25return): New. | |
12326 | * config/nds32/nds32.c (nds32_expand_epilogue_v3pop): Emit | |
12327 | pop25return pattern. | |
12328 | ||
81c424e2 | 12329 | 2015-01-16 Chung-Ju Wu <jasonwucj@gmail.com> |
12330 | ||
12331 | * doc/invoke.texi (NDS32 Options): Remove -mforce-fp-as-gp, | |
12332 | -mforbid-fp-as-gp, and -mex9 options. | |
12333 | ||
78526656 | 12334 | 2015-01-16 Chung-Ju Wu <jasonwucj@gmail.com> |
12335 | ||
12336 | * doc/invoke.texi (NDS32 Options): Add -mcmodel= option and | |
12337 | remove -mgp-direct option. | |
12338 | ||
c3fed600 | 12339 | 2015-01-15 Jan Hubicka <hubicka@ucw.cz> |
89e2ddc9 | 12340 | |
c3fed600 | 12341 | * doc/invoke.texi (--param early-inlining-insns): Update default value. |
12342 | * params.def (PARAM_EARLY_INLINING_INSNS): Set to 14. | |
12343 | ||
f27875b5 | 12344 | 2015-01-15 Jan Hubicka <hubicka@ucw.cz> |
12345 | ||
12346 | * ipa-inline.c (inline_small_functions): Work around hints | |
12347 | cache issue. | |
12348 | ||
16e50f82 | 12349 | 2015-01-15 Sandra Loosemore <sandra@codesourcery.com> |
12350 | ||
12351 | PR target/59710 | |
12352 | * doc/invoke.texi (Option Summary): Document new Nios II | |
12353 | -mgpopt= syntax. | |
12354 | (Nios II Options): Likewise. | |
12355 | * config/nios2/nios2.opt: Add -mgpopt= option support. | |
12356 | Modify existing -mgpopt and -mno-gpopt options to be aliases. | |
12357 | * config/nios2/nios2-opts.h (enum nios2_gpopt_type): New. | |
12358 | * config/nios2/nios2.c (nios2_option_override): Adjust | |
12359 | -mgpopt defaulting. | |
12360 | (nios2_in_small_data_p): Return true for explicit small data | |
12361 | sections even with -G0. | |
12362 | (nios2_symbol_ref_in_small_data_p): Adjust to handle new -mgpopt= | |
12363 | option choices. | |
12364 | ||
6365c927 | 12365 | 2015-01-15 Jan Hubicka <hubicka@ucw.cz> |
12366 | ||
12367 | PR ipa/64612 | |
12368 | * ipa-inline-transform.c (can_remove_node_now_p): Fix handling | |
12369 | of comdat locals. | |
12370 | (inline_call): Fix removal of aliases. | |
12371 | ||
32cf7025 | 12372 | 2015-01-15 Jakub Jelinek <jakub@redhat.com> |
12373 | ||
12374 | * flag-types.h (enum sanitize_code): Add SANITIZE_VPTR, | |
12375 | include SANITIZE_VPTR in SANITIZE_UNDEFINED. | |
12376 | * opts.c (common_handle_option): Add -fsanitize=vptr. | |
12377 | * sanitizer.def (BUILT_IN_UBSAN_HANDLE_DYNAMIC_TYPE_CACHE_MISS, | |
12378 | BUILT_IN_UBSAN_HANDLE_DYNAMIC_TYPE_CACHE_MISS_ABORT): New. | |
12379 | * ubsan.h (enum ubsan_null_ckind): Add UBSAN_DOWNCAST_POINTER, | |
12380 | UBSAN_DOWNCAST_REFERENCE, UBSAN_UPCAST and UBSAN_CAST_TO_VBASE. | |
12381 | (ubsan_expand_vptr_ifn): New prototype. | |
12382 | * internal-fn.c (expand_ANNOTATE, expand_GOMP_SIMD_LANE, | |
12383 | expand_GOMP_SIMD_VF, expand_GOMP_SIMD_LAST_LANE, expand_UBSAN_NULL, | |
12384 | expand_UBSAN_BOUNDS, expand_UBSAN_OBJECT_SIZE, expand_ASAN_CHECK, | |
12385 | expand_LOOP_VECTORIZED): Make argument nameless, remove | |
12386 | ATTRIBUTE_UNUSED. | |
12387 | (expand_UBSAN_VPTR): New function. | |
12388 | * internal-fn.def (UBSAN_NULL, ASAN_CHECK): Use R instead of W | |
12389 | in fn spec. | |
12390 | (UBSAN_VPTR): New internal function. | |
12391 | * sanopt.c (tree_map_traits): Renamed to ... | |
12392 | (sanopt_tree_map_traits): ... this. | |
12393 | (sanopt_tree_triplet, sanopt_tree_triplet_map_traits): New classes. | |
12394 | (sanopt_ctx): Adjust asan_check_map type for tree_map_traits | |
12395 | to sanopt_tree_map_traits renaming. Add vptr_check_map field. | |
12396 | (maybe_optimize_ubsan_vptr_ifn): New function. | |
12397 | (sanopt_optimize_walker): Handle IFN_UBSAN_VPTR. | |
12398 | (pass_sanopt::execute): Likewise. Call sanopt_optimize even for | |
12399 | -fsanitize=vptr. | |
12400 | * tree-ssa-alias.c (call_may_clobber_ref_p_1): Handle certain | |
12401 | internal calls like pure functions for aliasing, even when they | |
12402 | have other side-effects that prevent making them ECF_PURE. | |
12403 | * ubsan.c (ubsan_vptr_type_cache_decl): New variable. | |
12404 | (ubsan_expand_vptr_ifn): New function. | |
12405 | ||
ed6272f7 | 12406 | 2015-01-15 Vladimir Makarov <vmakarov@redhat.com> |
12407 | ||
12408 | PR rtl-optimization/64110 | |
12409 | * stmt.c (parse_output_constraint): Process '^' and '$'. | |
12410 | (parse_input_constraint): Ditto. | |
12411 | * lra-constraints.c (process_alt_operands): Process the new | |
12412 | constraints. | |
12413 | * ira-costs.c (record_reg_classes): Process the new constraint | |
12414 | '^'. | |
12415 | * genoutput.c (indep_constraints): Add '^' and '$'. | |
12416 | * config/i386/sse.md (*vec_dup<mode>): Use '$' instead of '!'. | |
12417 | * doc/md.texi: Add description of the new constraints. | |
12418 | ||
ca4c3545 | 12419 | 2015-01-15 Thomas Schwinge <thomas@codesourcery.com> |
12420 | Bernd Schmidt <bernds@codesourcery.com> | |
12421 | Cesar Philippidis <cesar@codesourcery.com> | |
12422 | James Norris <jnorris@codesourcery.com> | |
12423 | Tom de Vries <tom@codesourcery.com> | |
12424 | Ilmir Usmanov <i.usmanov@samsung.com> | |
12425 | Dmitry Bocharnikov <dmitry.b@samsung.com> | |
12426 | Evgeny Gavrin <e.gavrin@samsung.com> | |
12427 | Jakub Jelinek <jakub@redhat.com> | |
12428 | ||
12429 | * builtin-types.def (BT_FN_VOID_INT_INT_VAR) | |
12430 | (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR) | |
12431 | (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR): | |
12432 | New function types. | |
12433 | * builtins.c: Include "gomp-constants.h". | |
12434 | (expand_builtin_acc_on_device): New function. | |
12435 | (expand_builtin, is_inexpensive_builtin): Handle | |
12436 | BUILT_IN_ACC_ON_DEVICE. | |
12437 | * builtins.def (DEF_GOACC_BUILTIN, DEF_GOACC_BUILTIN_COMPILER): | |
12438 | New macros. | |
12439 | * cgraph.c (cgraph_node::create): Consider flag_openacc next to | |
12440 | flag_openmp. | |
12441 | * config.gcc <nvptx-*> (tm_file): Add nvptx/offload.h. | |
12442 | <*-intelmic-* | *-intelmicemul-*> (tm_file): Add | |
12443 | i386/intelmic-offload.h. | |
12444 | * gcc.c (LINK_COMMAND_SPEC, GOMP_SELF_SPECS): For -fopenacc, link | |
12445 | to libgomp and its dependencies. | |
12446 | * config/arc/arc.h (LINK_COMMAND_SPEC): Likewise. | |
12447 | * config/darwin.h (LINK_COMMAND_SPEC_A): Likewise. | |
12448 | * config/i386/mingw32.h (GOMP_SELF_SPECS): Likewise. | |
12449 | * config/ia64/hpux.h (LIB_SPEC): Likewise. | |
12450 | * config/pa/pa-hpux11.h (LIB_SPEC): Likewise. | |
12451 | * config/pa/pa64-hpux.h (LIB_SPEC): Likewise. | |
12452 | * doc/generic.texi: Update for OpenACC changes. | |
12453 | * doc/gimple.texi: Likewise. | |
12454 | * doc/invoke.texi: Likewise. | |
12455 | * doc/sourcebuild.texi: Likewise. | |
12456 | * gimple-pretty-print.c (dump_gimple_omp_for): Handle | |
12457 | GF_OMP_FOR_KIND_OACC_LOOP. | |
12458 | (dump_gimple_omp_target): Handle GF_OMP_TARGET_KIND_OACC_KERNELS, | |
12459 | GF_OMP_TARGET_KIND_OACC_PARALLEL, GF_OMP_TARGET_KIND_OACC_DATA, | |
12460 | GF_OMP_TARGET_KIND_OACC_UPDATE, | |
12461 | GF_OMP_TARGET_KIND_OACC_ENTER_EXIT_DATA. | |
12462 | Dump more data. | |
12463 | * gimple.c: Update comments for OpenACC changes. | |
12464 | * gimple.def: Likewise. | |
12465 | * gimple.h: Likewise. | |
12466 | (enum gf_mask): Add GF_OMP_FOR_KIND_OACC_LOOP, | |
12467 | GF_OMP_TARGET_KIND_OACC_PARALLEL, GF_OMP_TARGET_KIND_OACC_KERNELS, | |
12468 | GF_OMP_TARGET_KIND_OACC_DATA, GF_OMP_TARGET_KIND_OACC_UPDATE, | |
12469 | GF_OMP_TARGET_KIND_OACC_ENTER_EXIT_DATA. | |
12470 | (gimple_omp_for_cond, gimple_omp_for_set_cond): Sort in the | |
12471 | appropriate place. | |
12472 | (is_gimple_omp_oacc, is_gimple_omp_offloaded): New functions. | |
12473 | * gimplify.c: Include "gomp-constants.h". | |
12474 | Update comments for OpenACC changes. | |
12475 | (is_gimple_stmt): Handle OACC_PARALLEL, OACC_KERNELS, OACC_DATA, | |
12476 | OACC_HOST_DATA, OACC_DECLARE, OACC_UPDATE, OACC_ENTER_DATA, | |
12477 | OACC_EXIT_DATA, OACC_CACHE, OACC_LOOP. | |
12478 | (gimplify_scan_omp_clauses, gimplify_adjust_omp_clauses): Handle | |
12479 | OMP_CLAUSE__CACHE_, OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT, | |
12480 | OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS, | |
12481 | OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_GANG, OMP_CLAUSE_WORKER, | |
12482 | OMP_CLAUSE_VECTOR, OMP_CLAUSE_DEVICE_RESIDENT, | |
12483 | OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE_INDEPENDENT, OMP_CLAUSE_AUTO, | |
12484 | OMP_CLAUSE_SEQ. | |
12485 | (gimplify_adjust_omp_clauses_1, gimplify_adjust_omp_clauses): Use | |
12486 | GOMP_MAP_* instead of OMP_CLAUSE_MAP_*. Use | |
12487 | OMP_CLAUSE_SET_MAP_KIND. | |
12488 | (gimplify_oacc_cache): New function. | |
12489 | (gimplify_omp_for): Handle OACC_LOOP. | |
12490 | (gimplify_omp_workshare): Handle OACC_KERNELS, OACC_PARALLEL, | |
12491 | OACC_DATA. | |
12492 | (gimplify_omp_target_update): Handle OACC_ENTER_DATA, | |
12493 | OACC_EXIT_DATA, OACC_UPDATE. | |
12494 | (gimplify_expr): Handle OACC_LOOP, OACC_CACHE, OACC_HOST_DATA, | |
12495 | OACC_DECLARE, OACC_KERNELS, OACC_PARALLEL, OACC_DATA, | |
12496 | OACC_ENTER_DATA, OACC_EXIT_DATA, OACC_UPDATE. | |
12497 | (gimplify_body): Consider flag_openacc next to flag_openmp. | |
12498 | * lto-streamer-out.c: Include "gomp-constants.h". | |
12499 | * omp-builtins.def (BUILT_IN_ACC_GET_DEVICE_TYPE) | |
12500 | (BUILT_IN_GOACC_DATA_START, BUILT_IN_GOACC_DATA_END) | |
12501 | (BUILT_IN_GOACC_ENTER_EXIT_DATA, BUILT_IN_GOACC_PARALLEL) | |
12502 | (BUILT_IN_GOACC_UPDATE, BUILT_IN_GOACC_WAIT) | |
12503 | (BUILT_IN_GOACC_GET_THREAD_NUM, BUILT_IN_GOACC_GET_NUM_THREADS) | |
12504 | (BUILT_IN_ACC_ON_DEVICE): New builtins. | |
12505 | * omp-low.c: Include "gomp-constants.h". | |
12506 | Update comments for OpenACC changes. | |
12507 | (struct omp_context): Add reduction_map, gwv_below, gwv_this | |
12508 | members. | |
12509 | (extract_omp_for_data, use_pointer_for_field, install_var_field) | |
12510 | (new_omp_context, delete_omp_context, scan_sharing_clauses) | |
12511 | (create_omp_child_function, scan_omp_for, scan_omp_target) | |
12512 | (check_omp_nesting_restrictions, lower_reduction_clauses) | |
12513 | (build_omp_regions_1, diagnose_sb_0, make_gimple_omp_edges): | |
12514 | Update for OpenACC changes. | |
12515 | (scan_sharing_clauses): Handle OMP_CLAUSE_NUM_GANGS: | |
12516 | OMP_CLAUSE_NUM_WORKERS: OMP_CLAUSE_VECTOR_LENGTH, | |
12517 | OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT, OMP_CLAUSE_GANG, | |
12518 | OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR, OMP_CLAUSE_DEVICE_RESIDENT, | |
12519 | OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE__CACHE_, OMP_CLAUSE_INDEPENDENT, | |
12520 | OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ. Use GOMP_MAP_* instead of | |
12521 | OMP_CLAUSE_MAP_*. | |
12522 | (expand_omp_for_static_nochunk, expand_omp_for_static_chunk): | |
12523 | Handle GF_OMP_FOR_KIND_OACC_LOOP. | |
12524 | (expand_omp_target, lower_omp_target): Handle | |
12525 | GF_OMP_TARGET_KIND_OACC_PARALLEL, GF_OMP_TARGET_KIND_OACC_KERNELS, | |
12526 | GF_OMP_TARGET_KIND_OACC_UPDATE, | |
12527 | GF_OMP_TARGET_KIND_OACC_ENTER_EXIT_DATA, | |
12528 | GF_OMP_TARGET_KIND_OACC_DATA. | |
12529 | (pass_expand_omp::execute, execute_lower_omp) | |
12530 | (pass_diagnose_omp_blocks::gate): Consider flag_openacc next to | |
12531 | flag_openmp. | |
12532 | (offload_symbol_decl): New variable. | |
12533 | (oacc_get_reduction_array_id, oacc_max_threads) | |
12534 | (get_offload_symbol_decl, get_base_type, lookup_oacc_reduction) | |
12535 | (maybe_lookup_oacc_reduction, enclosing_target_ctx) | |
12536 | (oacc_loop_or_target_p, oacc_lower_reduction_var_helper) | |
12537 | (oacc_gimple_assign, oacc_initialize_reduction_data) | |
12538 | (oacc_finalize_reduction_data, oacc_process_reduction_data): New | |
12539 | functions. | |
12540 | (is_targetreg_ctx): Remove function. | |
12541 | * tree-core.h (enum omp_clause_code): Add OMP_CLAUSE__CACHE_, | |
12542 | OMP_CLAUSE_DEVICE_RESIDENT, OMP_CLAUSE_USE_DEVICE, | |
12543 | OMP_CLAUSE_GANG, OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT, | |
12544 | OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ, OMP_CLAUSE_INDEPENDENT, | |
12545 | OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR, OMP_CLAUSE_NUM_GANGS, | |
12546 | OMP_CLAUSE_NUM_WORKERS, OMP_CLAUSE_VECTOR_LENGTH. | |
12547 | * tree.c (omp_clause_code_name, walk_tree_1): Update accordingly. | |
12548 | * tree.h (OMP_CLAUSE_GANG_EXPR, OMP_CLAUSE_GANG_STATIC_EXPR) | |
12549 | (OMP_CLAUSE_ASYNC_EXPR, OMP_CLAUSE_WAIT_EXPR) | |
12550 | (OMP_CLAUSE_VECTOR_EXPR, OMP_CLAUSE_WORKER_EXPR) | |
12551 | (OMP_CLAUSE_NUM_GANGS_EXPR, OMP_CLAUSE_NUM_WORKERS_EXPR) | |
12552 | (OMP_CLAUSE_VECTOR_LENGTH_EXPR): New macros. | |
12553 | * tree-core.h: Update comments for OpenACC changes. | |
12554 | (enum omp_clause_map_kind): Remove. | |
12555 | (struct tree_omp_clause): Change type of map_kind member from enum | |
12556 | omp_clause_map_kind to unsigned char. | |
12557 | * tree-inline.c: Update comments for OpenACC changes. | |
12558 | * tree-nested.c: Likewise. Include "gomp-constants.h". | |
12559 | (convert_nonlocal_reference_stmt, convert_local_reference_stmt) | |
12560 | (convert_tramp_reference_stmt, convert_gimple_call): Update for | |
12561 | OpenACC changes. Use GOMP_MAP_* instead of OMP_CLAUSE_MAP_*. Use | |
12562 | OMP_CLAUSE_SET_MAP_KIND. | |
12563 | * tree-pretty-print.c: Include "gomp-constants.h". | |
12564 | (dump_omp_clause): Handle OMP_CLAUSE_DEVICE_RESIDENT, | |
12565 | OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE__CACHE_, OMP_CLAUSE_GANG, | |
12566 | OMP_CLAUSE_ASYNC, OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ, | |
12567 | OMP_CLAUSE_WAIT, OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR, | |
12568 | OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS, | |
12569 | OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_INDEPENDENT. Use GOMP_MAP_* | |
12570 | instead of OMP_CLAUSE_MAP_*. | |
12571 | (dump_generic_node): Handle OACC_PARALLEL, OACC_KERNELS, | |
12572 | OACC_DATA, OACC_HOST_DATA, OACC_DECLARE, OACC_UPDATE, | |
12573 | OACC_ENTER_DATA, OACC_EXIT_DATA, OACC_CACHE, OACC_LOOP. | |
12574 | * tree-streamer-in.c: Include "gomp-constants.h". | |
12575 | (unpack_ts_omp_clause_value_fields) Use GOMP_MAP_* instead of | |
12576 | OMP_CLAUSE_MAP_*. Use OMP_CLAUSE_SET_MAP_KIND. | |
12577 | * tree-streamer-out.c: Include "gomp-constants.h". | |
12578 | (pack_ts_omp_clause_value_fields): Use GOMP_MAP_* instead of | |
12579 | OMP_CLAUSE_MAP_*. | |
12580 | * tree.def (OACC_PARALLEL, OACC_KERNELS, OACC_DATA) | |
12581 | (OACC_HOST_DATA, OACC_LOOP, OACC_CACHE, OACC_DECLARE) | |
12582 | (OACC_ENTER_DATA, OACC_EXIT_DATA, OACC_UPDATE): New tree codes. | |
12583 | * tree.c (omp_clause_num_ops): Update accordingly. | |
12584 | * tree.h (OMP_BODY, OMP_CLAUSES, OMP_LOOP_CHECK, OMP_CLAUSE_SIZE): | |
12585 | Likewise. | |
12586 | (OACC_PARALLEL_BODY, OACC_PARALLEL_CLAUSES, OACC_KERNELS_BODY) | |
12587 | (OACC_KERNELS_CLAUSES, OACC_DATA_BODY, OACC_DATA_CLAUSES) | |
12588 | (OACC_HOST_DATA_BODY, OACC_HOST_DATA_CLAUSES, OACC_CACHE_CLAUSES) | |
12589 | (OACC_DECLARE_CLAUSES, OACC_ENTER_DATA_CLAUSES) | |
12590 | (OACC_EXIT_DATA_CLAUSES, OACC_UPDATE_CLAUSES) | |
12591 | (OACC_KERNELS_COMBINED, OACC_PARALLEL_COMBINED): New macros. | |
12592 | * tree.h (OMP_CLAUSE_MAP_KIND): Cast it to enum gomp_map_kind. | |
12593 | (OMP_CLAUSE_SET_MAP_KIND): New macro. | |
12594 | * varpool.c (varpool_node::get_create): Consider flag_openacc next | |
12595 | to flag_openmp. | |
12596 | * config/i386/intelmic-offload.h: New file. | |
12597 | * config/nvptx/offload.h: Likewise. | |
12598 | ||
232364e7 | 12599 | 2015-01-15 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
12600 | ||
12601 | * explow.h: Remove duplicate contents. | |
12602 | * dojump.h: Likewise. | |
12603 | ||
2ca6edcb | 12604 | 2015-01-15 Richard Earnshaw <rearnsha@arm.com> |
12605 | ||
12606 | * arm.c (arm_xgene_tune): Add default initializer for instruction | |
12607 | fusion. | |
12608 | ||
ea30d751 | 12609 | 2015-01-15 Jan Hubicka <hubicka@ucw.cz> |
12610 | ||
12611 | PR ipa/64068 | |
12612 | PR ipa/64559 | |
12613 | * ipa.c (symbol_table::remove_unreachable_nodes): | |
12614 | Do not put abstract origins into boundary. | |
12615 | ||
c0e77144 | 12616 | 2015-01-15 Evgeny Stupachenko <evstupac@gmail.com> |
12617 | ||
12618 | * config/i386/gnu-user.h (CRT_GET_RFIB_DATA): Remove EBX register usage. | |
12619 | * config/i386/sysv4.h (CRT_GET_RFIB_DATA): Ditto. | |
2fe70ee1 | 12620 | |
c0e77144 | 12621 | 2015-01-15 Steve Ellcey <sellcey@mips.com> |
60fdd2f3 | 12622 | |
2fe70ee1 | 12623 | * Makefile.in (PLUGIN_HEADERS): Add dominance.h, cfg.h, cfgrtl.h, |
12624 | cfganal.h, cfgbuild.h, cfgcleanup.h, lcm.h, cfgloopmanip.h, | |
60fdd2f3 | 12625 | builtins.def, and chkp-builtins.def. |
2fe70ee1 | 12626 | |
2fa47868 | 12627 | 2015-01-15 David Edelsohn <dje.gcc@gmail.com> |
37b0af60 | 12628 | |
12629 | * config/rs6000/default64.h (TARGET_DEFAULT) [LITTLE_ENDIAN]: Use | |
12630 | ISA 2.7 (POWER8). | |
12631 | ||
aa24bd23 | 12632 | 2015-01-15 Richard Biener <rguenther@suse.de> |
12633 | ||
12634 | PR tree-optimization/61743 | |
12635 | * tree-ssa-pre.c (insert_into_preds_of_block): Preserve range | |
12636 | information on PHIs for some simple cases. | |
12637 | ||
55a94dda | 12638 | 2015-01-15 Philipp Tomsich <philipp.tomsich@theobroma-systems.com> |
12639 | ||
12640 | * config/arm/arm.md (generic_sched): Specify xgene1 in 'no' list. | |
12641 | Include xgene1.md. | |
12642 | * config/arm/arm.c (arm_issue_rate): Specify 4 for xgene1. | |
12643 | * config/arm/arm-cores.def (xgene1): New entry. | |
12644 | * config/arm/arm-tables.opt: Regenerate. | |
12645 | * config/arm/arm-tune.md: Regenerate. | |
12646 | * config/arm/bpabi.h (BE8_LINK_SPEC): Specify mcpu=xgene1. | |
12647 | ||
040b4eee | 12648 | 2015-01-15 Yuri Rumyantsev <ysrumyan@gmail.com> |
12649 | ||
12650 | * tree-if-conv.c: Include hash-map.h. | |
12651 | (aggressive_if_conv): New variable. | |
12652 | (fold_build_cond_expr): Add simplification of non-zero condition. | |
12653 | (add_to_dst_predicate_list): Invoke add_to_predicate_list if edge | |
12654 | destination block is not always executed. | |
12655 | (if_convertible_phi_p): Fix commentary, allow phi nodes have more | |
12656 | than two predecessors if AGGRESSIVE_IF_CONV is true. | |
12657 | (if_convertible_stmt_p): Fix commentary. | |
12658 | (all_preds_critical_p): New function. | |
12659 | (has_pred_critical_p): New function. | |
12660 | (if_convertible_bb_p): Fix commentary, if AGGRESSIVE_IF_CONV is true | |
12661 | BB can have more than two predecessors and all incoming edges can be | |
12662 | critical. | |
12663 | (predicate_bbs): Skip predication for loop exit block, use build2_loc | |
12664 | to compute predicate for true edge. | |
12665 | (find_phi_replacement_condition): Delete this function. | |
12666 | (is_cond_scalar_reduction): Add arguments ARG_0, ARG_1 and EXTENDED. | |
12667 | Allow interchange PHI arguments if EXTENDED is false. | |
12668 | Change check that block containing reduction statement candidate | |
12669 | is predecessor of phi-block since phi may have more than two arguments. | |
12670 | (phi_args_hash_traits): New helper structure. | |
12671 | (struct phi_args_hash_traits): New type. | |
12672 | (phi_args_hash_traits::hash): New function. | |
12673 | (phi_args_hash_traits::equal_keys): New function. | |
12674 | (gen_phi_arg_condition): New function. | |
12675 | (predicate_scalar_phi): Add handling of phi nodes with more than two | |
12676 | arguments, delete COND and TRUE_BB arguments, insert body of | |
12677 | find_phi_replacement_condition to predicate ordinary phi nodes. | |
12678 | (predicate_all_scalar_phis): Skip blocks with the only predecessor, | |
12679 | delete call of find_phi_replacement_condition and invoke | |
12680 | predicate_scalar_phi with two arguments. | |
12681 | (insert_gimplified_predicates): Add assert that non-predicated block | |
12682 | don't have statements to insert. | |
12683 | (ifcvt_split_critical_edges): New function. | |
12684 | (ifcvt_split_def_stmt): Likewise. | |
12685 | (ifcvt_walk_pattern_tree): Likewise. | |
12686 | (stmt_is_root_of_bool_pattern): Likewise. | |
12687 | (ifcvt_repair_bool_pattern): Likewise. | |
12688 | (ifcvt_local_dce): Likewise. | |
12689 | (tree_if_conversion): Add initialization of AGGRESSIVE_IF_CONV which | |
12690 | is copy of inner or outer loop force_vectorize field, invoke | |
12691 | ifcvt_split_critical_edges, ifcvt_local_dce and | |
12692 | ifcvt_repair_bool_pattern for aggressive if-conversion. | |
12693 | ||
41251276 | 12694 | 2015-01-15 Philipp Tomsich <ptomsich@theobroma-systems.com> |
12695 | ||
12696 | * config/aarch64/aarch64.md: Include xgene1.md. | |
12697 | * config/aarch64/xgene1.md: New file. | |
12698 | ||
552fa694 | 12699 | 2015-01-15 Philipp Tomsich <philipp.tomsich@theobroma-systems.com> |
12700 | ||
12701 | * config/aarch64/aarch64-cores.def (xgene1): Update/add the | |
12702 | xgene1 (APM XGene-1) core definition. | |
12703 | * gcc/config/aarch64/aarch64.c: Add cost tables for APM XGene-1 | |
12704 | * config/arm/aarch-cost-tables.h: Add cost tables for APM XGene-1 | |
12705 | * doc/invoke.texi: Document -mcpu=xgene1. | |
12706 | ||
bef5f3b7 | 12707 | 2015-01-15 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
d53441c8 | 12708 | |
12709 | * dojump.h: New header file. | |
12710 | * explow.h: Likewise. | |
12711 | * expr.h: Remove includes. | |
12712 | Move expmed.c prototypes to expmed.h. | |
12713 | Move dojump.c prototypes to dojump.h. | |
12714 | Move alias.c prototypes to alias.h. | |
12715 | Move explow.c prototypes to explow.h. | |
12716 | Move calls.c prototypes to calls.h. | |
12717 | Move emit-rtl.c prototypes to emit-rtl.h. | |
12718 | Move varasm.c prototypes to varasm.h. | |
12719 | Move stmt.c prototypes to stmt.h. | |
12720 | (saved_pending_stack_adjust): Move to dojump.h. | |
12721 | (adjust_address): Move to explow.h. | |
12722 | (adjust_address_nv): Move to emit-rtl.h. | |
12723 | (adjust_bitfield_address): Likewise. | |
12724 | (adjust_bitfield_address_size): Likewise. | |
12725 | (adjust_bitfield_address_nv): Likewise. | |
12726 | (adjust_automodify_address_nv): Likewise. | |
12727 | * explow.c (expr_size): Move to expr.c. | |
12728 | (int_expr_size): Likewise. | |
12729 | (tree_expr_size): Likewise. | |
12730 | Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12731 | fixed-value.h hashtab.h statistics.h stmt.h varasm.h. | |
bef5f3b7 | 12732 | * genemit.c (main): Generate includes statistics.h, real.h, |
12733 | fixed-value.h, insn-config.h, expmed.h, dojump.h, explow.h, emit-rtl.h, | |
d53441c8 | 12734 | stmt.h. |
bef5f3b7 | 12735 | * genopinit.c (main): Generate includes hashtab.h, hard-reg-set.h, |
12736 | function.h, statistics.h, real.h, fixed-value.h, expmed.h, dojump.h, | |
12737 | explow.h, emit-rtl.h, stmt.h. | |
d53441c8 | 12738 | * genoutput.c (main): Generate includes hashtab.h, statistics.h, real.h, |
12739 | fixed-value.h, expmed.h, dojump.h, explow.h, emit-rtl.h, stmt.h. | |
bef5f3b7 | 12740 | * genemit.c (open_base_files): Generate includes flags.h, statistics.h, |
12741 | real.h, fixed-value.h, tree.h, expmed.h, dojump.h, explow.h, calls.h, | |
12742 | emit-rtl.h, varasm.h, stmt.h. | |
12743 | * config/tilepro/gen-mul-tables.cc: Generate includes hashtab.h, | |
12744 | hash-set.h, vec.h, machmode.h, tm.h, hard-reg-set.h, input.h, | |
12745 | function.h, rtl.h, flags.h, statistics.h, double-int.h, real.h, | |
12746 | fixed-value.h, alias.h, wide-int.h, inchash.h, tree.h, insn-config.h, | |
12747 | expmed.h, dojump.h, explow.h, calls.h, emit-rtl.h, varasm.h, stmt.h. | |
d53441c8 | 12748 | * config/tilegx/mul-tables.c: Include alias.h calls.h dojump.h |
12749 | double-int.h emit-rtl.h explow.h expmed.h fixed-value.h flags.h | |
12750 | function.h hard-reg-set.h hash-set.h hashtab.h inchash.h input.h | |
12751 | insn-config.h machmode.h real.h rtl.h statistics.h stmt.h symtab.h | |
12752 | tm.h tree.h varasm.h vec.h wide-int.h. | |
12753 | * rtlhooks.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h | |
12754 | explow.h expmed.h fixed-value.h flags.h function.h hard-reg-set.h | |
12755 | hash-set.h hashtab.h inchash.h input.h insn-config.h machmode.h | |
12756 | real.h statistics.h stmt.h tree.h varasm.h vec.h wide-int.h. | |
bef5f3b7 | 12757 | * cfgloopanal.c: Include alias.h calls.h dojump.h double-int.h |
12758 | emit-rtl.h explow.h expmed.h fixed-value.h flags.h inchash.h | |
12759 | insn-config.h real.h statistics.h stmt.h tree.h varasm.h wide-int.h. | |
d53441c8 | 12760 | * loop-iv.c: Likewise. |
bef5f3b7 | 12761 | * lra-assigns.c: Include alias.h calls.h dojump.h double-int.h |
12762 | emit-rtl.h explow.h expmed.h fixed-value.h flags.h inchash.h real.h | |
d53441c8 | 12763 | statistics.h stmt.h tree.h varasm.h wide-int.h. |
12764 | * lra-constraints.c: Likewise. | |
12765 | * lra-eliminations.c: Likewise. | |
12766 | * lra-lives.c: Likewise. | |
12767 | * lra-remat.c: Likewise. | |
12768 | * bt-load.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h | |
12769 | explow.h expmed.h fixed-value.h inchash.h insn-config.h real.h | |
12770 | statistics.h stmt.h tree.h varasm.h wide-int.h. | |
12771 | * hw-doloop.c: Likewise. | |
12772 | * ira-color.c: Likewise. | |
12773 | * ira-emit.c: Likewise. | |
12774 | * loop-doloop.c: Likewise. | |
12775 | * loop-invariant.c: Likewise. | |
12776 | * reload.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h | |
12777 | explow.h expmed.h fixed-value.h inchash.h real.h rtl.h | |
12778 | statistics.h stmt.h tree.h varasm.h wide-int.h. | |
bef5f3b7 | 12779 | * caller-save.c: Include alias.h calls.h dojump.h double-int.h |
12780 | emit-rtl.h explow.h expmed.h fixed-value.h inchash.h real.h | |
12781 | statistics.h stmt.h tree.h varasm.h wide-int.h. | |
d53441c8 | 12782 | * combine-stack-adj.c: Likewise. |
12783 | * cse.c: Likewise. | |
12784 | * ddg.c: Likewise. | |
12785 | * ifcvt.c: Likewise. | |
12786 | * ira-costs.c: Likewise. | |
12787 | * jump.c: Likewise. | |
12788 | * lra-coalesce.c: Likewise. | |
12789 | * lra-spills.c: Likewise. | |
12790 | * profile.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h | |
12791 | explow.h expmed.h fixed-value.h insn-config.h real.h statistics.h | |
12792 | stmt.h varasm.h wide-int.h. | |
12793 | * lra.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h | |
12794 | explow.h expmed.h fixed-value.h real.h statistics.h stmt.h | |
12795 | varasm.h. | |
12796 | * config/sh/sh_treg_combine.cc: Include alias.h calls.h dojump.h | |
12797 | double-int.h explow.h expmed.h fixed-value.h flags.h real.h | |
12798 | statistics.h stmt.h varasm.h wide-int.h. | |
12799 | * reorg.c: Include alias.h calls.h dojump.h double-int.h explow.h | |
12800 | expmed.h fixed-value.h inchash.h real.h statistics.h stmt.h tree.h | |
12801 | varasm.h wide-int.h. | |
12802 | * reload1.c: Include alias.h calls.h dojump.h double-int.h explow.h | |
12803 | expmed.h fixed-value.h real.h rtl.h statistics.h stmt.h varasm.h. | |
12804 | * config/tilegx/tilegx.c: Include alias.h dojump.h double-int.h | |
12805 | emit-rtl.h explow.h expmed.h fixed-value.h flags.h real.h | |
12806 | statistics.h stmt.h. | |
12807 | * config/tilepro/tilepro.c: Likewise. | |
12808 | * config/mmix/mmix.c: Include alias.h dojump.h double-int.h emit-rtl.h | |
12809 | explow.h expmed.h fixed-value.h real.h statistics.h stmt.h. | |
12810 | * config/pdp11/pdp11.c: Likewise. | |
12811 | * config/xtensa/xtensa.c: Likewise. | |
12812 | * config/lm32/lm32.c: Include alias.h dojump.h double-int.h emit-rtl.h | |
12813 | explow.h expmed.h fixed-value.h real.h statistics.h stmt.h | |
12814 | varasm.h. | |
12815 | * tree-chkp.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12816 | fixed-value.h flags.h function.h hard-reg-set.h hashtab.h | |
12817 | insn-config.h real.h rtl.h statistics.h stmt.h tm.h. | |
12818 | * cilk-common.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12819 | fixed-value.h flags.h function.h hard-reg-set.h hashtab.h | |
12820 | insn-config.h real.h rtl.h statistics.h stmt.h tm.h varasm.h. | |
12821 | * rtl-chkp.c: Likewise. | |
12822 | * tree-chkp-opt.c: Likewise. | |
bef5f3b7 | 12823 | * config/arm/arm-builtins.c: Include calls.h dojump.h emit-rtl.h |
12824 | explow.h expmed.h fixed-value.h flags.h function.h hard-reg-set.h | |
12825 | hashtab.h insn-config.h real.h statistics.h stmt.h varasm.h. | |
d53441c8 | 12826 | * ipa-icf.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h |
12827 | fixed-value.h flags.h hashtab.h insn-config.h real.h rtl.h | |
12828 | statistics.h stmt.h. | |
12829 | * tree-vect-data-refs.c: Likewise. | |
12830 | * graphite-sese-to-poly.c: Include calls.h dojump.h emit-rtl.h explow.h | |
12831 | expmed.h fixed-value.h flags.h hashtab.h insn-config.h real.h | |
12832 | rtl.h statistics.h stmt.h varasm.h. | |
12833 | * internal-fn.c: Likewise. | |
12834 | * ipa-icf-gimple.c: Likewise. | |
12835 | * lto-section-out.c: Likewise. | |
12836 | * tree-data-ref.c: Likewise. | |
12837 | * tree-nested.c: Likewise. | |
12838 | * tree-outof-ssa.c: Likewise. | |
12839 | * tree-predcom.c: Likewise. | |
12840 | * tree-pretty-print.c: Likewise. | |
12841 | * tree-scalar-evolution.c: Likewise. | |
12842 | * tree-ssa-strlen.c: Likewise. | |
12843 | * tree-vect-loop.c: Likewise. | |
12844 | * tree-vect-patterns.c: Likewise. | |
12845 | * tree-vect-slp.c: Likewise. | |
12846 | * tree-vect-stmts.c: Likewise. | |
12847 | * tsan.c: Likewise. | |
12848 | * targhooks.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12849 | fixed-value.h flags.h hashtab.h insn-config.h real.h statistics.h | |
12850 | stmt.h. | |
12851 | * config/sh/sh-mem.cc: Include calls.h dojump.h emit-rtl.h explow.h | |
12852 | expmed.h fixed-value.h flags.h hashtab.h insn-config.h real.h | |
12853 | statistics.h stmt.h varasm.h. | |
12854 | * loop-unroll.c: Likewise. | |
12855 | * ubsan.c: Likewise. | |
12856 | * tree-ssa-loop-prefetch.c: Include calls.h dojump.h emit-rtl.h explow.h | |
12857 | expmed.h fixed-value.h flags.h hashtab.h real.h rtl.h statistics.h | |
12858 | stmt.h varasm.h. | |
12859 | * dse.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12860 | fixed-value.h function.h hashtab.h statistics.h stmt.h varasm.h. | |
12861 | * tree-switch-conversion.c: Include calls.h dojump.h emit-rtl.h explow.h | |
12862 | expmed.h fixed-value.h hashtab.h insn-config.h real.h rtl.h | |
12863 | statistics.h stmt.h. | |
12864 | * generic-match-head.c: Include calls.h dojump.h emit-rtl.h explow.h | |
12865 | expmed.h fixed-value.h hashtab.h insn-config.h real.h rtl.h | |
12866 | statistics.h stmt.h varasm.h. | |
12867 | * gimple-match-head.c: Likewise. | |
12868 | * lto-cgraph.c: Likewise. | |
12869 | * lto-section-in.c: Likewise. | |
12870 | * lto-streamer-in.c: Likewise. | |
12871 | * lto-streamer-out.c: Likewise. | |
12872 | * tree-affine.c: Likewise. | |
12873 | * tree-cfg.c: Likewise. | |
12874 | * tree-cfgcleanup.c: Likewise. | |
12875 | * tree-if-conv.c: Likewise. | |
12876 | * tree-into-ssa.c: Likewise. | |
12877 | * tree-ssa-alias.c: Likewise. | |
12878 | * tree-ssa-copyrename.c: Likewise. | |
12879 | * tree-ssa-dse.c: Likewise. | |
12880 | * tree-ssa-forwprop.c: Likewise. | |
12881 | * tree-ssa-live.c: Likewise. | |
12882 | * tree-ssa-math-opts.c: Likewise. | |
12883 | * tree-ssa-pre.c: Likewise. | |
12884 | * tree-ssa-sccvn.c: Likewise. | |
12885 | * tree-tailcall.c: Likewise. | |
12886 | * tree-vect-generic.c: Likewise. | |
12887 | * tree-sra.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12888 | fixed-value.h hashtab.h insn-config.h real.h rtl.h stmt.h varasm.h. | |
12889 | * stor-layout.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12890 | fixed-value.h hashtab.h insn-config.h real.h statistics.h stmt.h. | |
12891 | * varasm.c: Likewise. | |
12892 | * coverage.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12893 | fixed-value.h hashtab.h insn-config.h real.h statistics.h stmt.h | |
12894 | varasm.h. | |
12895 | * init-regs.c: Likewise. | |
12896 | * ira.c: Likewise. | |
12897 | * omp-low.c: Likewise. | |
12898 | * stack-ptr-mod.c: Likewise. | |
12899 | * tree-ssa-reassoc.c: Likewise. | |
12900 | * tree-complex.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12901 | fixed-value.h hashtab.h insn-config.h rtl.h statistics.h stmt.h | |
12902 | varasm.h. | |
12903 | * dwarf2cfi.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12904 | fixed-value.h hashtab.h insn-config.h statistics.h stmt.h varasm.h. | |
12905 | * shrink-wrap.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12906 | fixed-value.h hashtab.h real.h rtl.h statistics.h stmt.h. | |
12907 | * recog.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12908 | fixed-value.h hashtab.h real.h rtl.h statistics.h stmt.h varasm.h. | |
12909 | * tree-ssa-phiopt.c: Likewise. | |
12910 | * config/darwin.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12911 | fixed-value.h hashtab.h real.h statistics.h stmt.h. | |
12912 | * config/fr30/fr30.c: Likewise. | |
12913 | * config/frv/frv.c: Likewise. | |
12914 | * expr.c: Likewise. | |
12915 | * final.c: Likewise. | |
12916 | * optabs.c: Likewise. | |
12917 | * passes.c: Likewise. | |
12918 | * simplify-rtx.c: Likewise. | |
12919 | * stmt.c: Likewise. | |
12920 | * toplev.c: Likewise. | |
12921 | * var-tracking.c: Likewise. | |
12922 | * gcse.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12923 | fixed-value.h hashtab.h real.h statistics.h stmt.h varasm.h. | |
12924 | * lower-subreg.c: Likewise. | |
12925 | * postreload-gcse.c: Likewise. | |
12926 | * ree.c: Likewise. | |
12927 | * reginfo.c: Likewise. | |
12928 | * store-motion.c: Likewise. | |
12929 | * combine.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12930 | fixed-value.h hashtab.h real.h stmt.h varasm.h. | |
12931 | * emit-rtl.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12932 | fixed-value.h hashtab.h statistics.h stmt.h. | |
12933 | * dojump.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12934 | fixed-value.h hashtab.h statistics.h stmt.h varasm.h. | |
12935 | * except.c: Likewise. | |
12936 | * explow.c: Likewise. | |
12937 | * tree-dfa.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12938 | fixed-value.h insn-config.h real.h rtl.h statistics.h stmt.h | |
12939 | varasm.h. | |
12940 | * gimple-fold.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12941 | fixed-value.h insn-config.h real.h rtl.h statistics.h varasm.h. | |
12942 | * tree-ssa-structalias.c: Likewise. | |
12943 | * cfgexpand.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12944 | fixed-value.h insn-config.h real.h statistics.h. | |
12945 | * calls.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12946 | fixed-value.h insn-config.h real.h statistics.h stmt.h. | |
12947 | * bb-reorder.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12948 | fixed-value.h insn-config.h real.h statistics.h stmt.h varasm.h. | |
12949 | * cfgbuild.c: Likewise. | |
12950 | * function.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12951 | fixed-value.h real.h rtl.h statistics.h stmt.h. | |
12952 | * cfgrtl.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12953 | fixed-value.h real.h rtl.h statistics.h stmt.h varasm.h. | |
12954 | * dbxout.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12955 | fixed-value.h real.h statistics.h stmt.h. | |
12956 | * auto-inc-dec.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h | |
12957 | fixed-value.h real.h statistics.h stmt.h varasm.h. | |
12958 | * cprop.c: Likewise. | |
12959 | * modulo-sched.c: Likewise. | |
12960 | * postreload.c: Likewise. | |
12961 | * ccmp.c: Include calls.h dojump.h emit-rtl.h explow.h fixed-value.h | |
12962 | flags.h function.h hard-reg-set.h hashtab.h insn-config.h real.h | |
12963 | statistics.h stmt.h varasm.h. | |
12964 | * gimple-ssa-strength-reduction.c: Include calls.h dojump.h emit-rtl.h | |
12965 | explow.h fixed-value.h flags.h hashtab.h insn-config.h real.h | |
12966 | rtl.h statistics.h stmt.h varasm.h. | |
12967 | * tree-ssa-loop-ivopts.c: Include calls.h dojump.h emit-rtl.h explow.h | |
12968 | fixed-value.h flags.h hashtab.h real.h rtl.h statistics.h stmt.h | |
12969 | varasm.h. | |
12970 | * expmed.c: Include calls.h dojump.h emit-rtl.h explow.h fixed-value.h | |
12971 | function.h hard-reg-set.h hashtab.h real.h statistics.h stmt.h | |
12972 | varasm.h. | |
12973 | * target-globals.c: Include calls.h dojump.h emit-rtl.h explow.h | |
12974 | fixed-value.h function.h hashtab.h real.h statistics.h stmt.h | |
12975 | varasm.h. | |
12976 | * tree-ssa-address.c: Include calls.h dojump.h emit-rtl.h explow.h | |
12977 | fixed-value.h hashtab.h real.h statistics.h stmt.h varasm.h. | |
12978 | * cfgcleanup.c: Include calls.h dojump.h explow.h expmed.h fixed-value.h | |
12979 | function.h real.h statistics.h stmt.h varasm.h. | |
12980 | * alias.c: Include calls.h dojump.h explow.h expmed.h fixed-value.h | |
12981 | insn-config.h real.h statistics.h stmt.h. | |
12982 | * dwarf2out.c: Include calls.h dojump.h explow.h expmed.h fixed-value.h | |
12983 | statistics.h stmt.h. | |
12984 | * config/nvptx/nvptx.c: Include dojump.h emit-rtl.h explow.h expmed.h | |
12985 | fixed-value.h flags.h hard-reg-set.h insn-config.h real.h | |
12986 | statistics.h stmt.h varasm.h. | |
bef5f3b7 | 12987 | * gimplify.c: Include dojump.h emit-rtl.h explow.h expmed.h |
12988 | fixed-value.h flags.h hashtab.h insn-config.h real.h rtl.h statistics.h. | |
d53441c8 | 12989 | * asan.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h |
12990 | flags.h hashtab.h insn-config.h real.h rtl.h statistics.h stmt.h. | |
12991 | * ipa-devirt.c: Include dojump.h emit-rtl.h explow.h expmed.h | |
12992 | fixed-value.h flags.h hashtab.h insn-config.h real.h rtl.h | |
12993 | statistics.h stmt.h varasm.h. | |
12994 | * ipa-polymorphic-call.c: Likewise. | |
bef5f3b7 | 12995 | * config/aarch64/aarch64.c: Include dojump.h emit-rtl.h explow.h |
d53441c8 | 12996 | expmed.h fixed-value.h flags.h hashtab.h insn-config.h real.h |
bef5f3b7 | 12997 | statistics.h stmt.h. |
12998 | * config/c6x/c6x.c: Likewise. | |
12999 | * config/aarch64/aarch64-builtins.c: Include dojump.h emit-rtl.h | |
13000 | explow.h expmed.h fixed-value.h flags.h hashtab.h insn-config.h real.h | |
d53441c8 | 13001 | statistics.h stmt.h varasm.h. |
bef5f3b7 | 13002 | * ipa-prop.c: Include dojump.h emit-rtl.h explow.h expmed.h |
13003 | fixed-value.h hashtab.h insn-config.h real.h rtl.h statistics.h | |
13004 | stmt.h varasm.h. | |
d53441c8 | 13005 | * ipa-split.c: Likewise. |
13006 | * tree-eh.c: Likewise. | |
13007 | * tree-ssa-dce.c: Likewise. | |
13008 | * tree-ssa-loop-niter.c: Likewise. | |
13009 | * tree-vrp.c: Likewise. | |
13010 | * config/nds32/nds32-cost.c: Include dojump.h emit-rtl.h explow.h | |
13011 | expmed.h fixed-value.h hashtab.h insn-config.h real.h statistics.h | |
13012 | stmt.h. | |
13013 | * config/nds32/nds32-fp-as-gp.c: Likewise. | |
13014 | * config/nds32/nds32-intrinsic.c: Likewise. | |
13015 | * config/nds32/nds32-isr.c: Likewise. | |
13016 | * config/nds32/nds32-md-auxiliary.c: Likewise. | |
13017 | * config/nds32/nds32-memory-manipulation.c: Likewise. | |
13018 | * config/nds32/nds32-pipelines-auxiliary.c: Likewise. | |
13019 | * config/nds32/nds32-predicates.c: Likewise. | |
13020 | * config/nds32/nds32.c: Likewise. | |
13021 | * config/cris/cris.c: Include dojump.h emit-rtl.h explow.h expmed.h | |
13022 | fixed-value.h hashtab.h real.h statistics.h. | |
13023 | * config/alpha/alpha.c: Include dojump.h emit-rtl.h explow.h expmed.h | |
13024 | fixed-value.h hashtab.h real.h statistics.h stmt.h. | |
13025 | * config/arm/arm.c: Likewise. | |
13026 | * config/avr/avr.c: Likewise. | |
13027 | * config/bfin/bfin.c: Likewise. | |
13028 | * config/h8300/h8300.c: Likewise. | |
13029 | * config/i386/i386.c: Likewise. | |
13030 | * config/ia64/ia64.c: Likewise. | |
13031 | * config/iq2000/iq2000.c: Likewise. | |
13032 | * config/m32c/m32c.c: Likewise. | |
13033 | * config/m32r/m32r.c: Likewise. | |
13034 | * config/m68k/m68k.c: Likewise. | |
13035 | * config/mcore/mcore.c: Likewise. | |
13036 | * config/mep/mep.c: Likewise. | |
13037 | * config/mips/mips.c: Likewise. | |
13038 | * config/mn10300/mn10300.c: Likewise. | |
13039 | * config/moxie/moxie.c: Likewise. | |
13040 | * config/pa/pa.c: Likewise. | |
13041 | * config/rl78/rl78.c: Likewise. | |
13042 | * config/rx/rx.c: Likewise. | |
13043 | * config/s390/s390.c: Likewise. | |
13044 | * config/sh/sh.c: Likewise. | |
13045 | * config/sparc/sparc.c: Likewise. | |
13046 | * config/spu/spu.c: Likewise. | |
13047 | * config/stormy16/stormy16.c: Likewise. | |
13048 | * config/v850/v850.c: Likewise. | |
13049 | * config/vax/vax.c: Likewise. | |
13050 | * config/cr16/cr16.c: Include dojump.h emit-rtl.h explow.h expmed.h | |
13051 | fixed-value.h hashtab.h real.h statistics.h stmt.h varasm.h. | |
13052 | * config/msp430/msp430.c: Likewise. | |
13053 | * predict.c: Likewise. | |
13054 | * value-prof.c: Likewise. | |
13055 | * config/epiphany/epiphany.c: Include dojump.h emit-rtl.h explow.h | |
13056 | expmed.h fixed-value.h hashtab.h statistics.h stmt.h. | |
13057 | * config/microblaze/microblaze.c: Likewise. | |
13058 | * config/nios2/nios2.c: Likewise. | |
13059 | * config/rs6000/rs6000.c: Likewise. | |
13060 | * tree.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h | |
13061 | insn-config.h real.h rtl.h statistics.h stmt.h. | |
13062 | * cgraph.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h | |
13063 | insn-config.h real.h statistics.h stmt.h. | |
13064 | * fold-const.c: Include dojump.h emit-rtl.h explow.h expmed.h | |
13065 | fixed-value.h insn-config.h real.h statistics.h stmt.h varasm.h. | |
13066 | * tree-inline.c: Include dojump.h emit-rtl.h explow.h expmed.h | |
13067 | fixed-value.h real.h rtl.h statistics.h stmt.h varasm.h. | |
bef5f3b7 | 13068 | * builtins.c: Include dojump.h emit-rtl.h explow.h expmed.h |
13069 | fixed-value.h real.h statistics.h stmt.h. | |
d53441c8 | 13070 | * config/arc/arc.c: Include dojump.h emit-rtl.h explow.h expmed.h |
13071 | fixed-value.h statistics.h stmt.h. | |
13072 | * config/visium/visium.c: Include dojump.h emit-rtl.h explow.h expmed.h | |
13073 | stmt.h. | |
13074 | ||
a561ec10 | 13075 | 2015-01-15 Jakub Jelinek <jakub@redhat.com> |
13076 | ||
13077 | * gengtype.c (create_user_defined_type): Workaround | |
13078 | -Wmaybe-uninitialized false positives. | |
13079 | * cse.c (fold_rtx): Likewise. | |
13080 | * loop-invariant.c (gain_for_invariant): Likewise. | |
13081 | ||
db219949 | 13082 | 2015-01-15 Eric Botcazou <ebotcazou@adacore.com> |
13083 | ||
13084 | * expr.c (expand_expr_real_1) <normal_inner_ref>: Use the expression to | |
13085 | set the memory attributes in all cases but clear MEM_EXPR if need be. | |
13086 | ||
f7974718 | 13087 | 2015-01-15 Yuri Rumyantsev <ysrumyan@gmail.com> |
13088 | ||
13089 | PR tree-optimization/64434 | |
13090 | * cfgexpand.c (reorder_operands): New function. | |
13091 | (expand_gimple_basic_block): Insert call of reorder_operands if | |
13092 | optimized is true. | |
13093 | ||
01d2893e | 13094 | 2015-01-15 Matthew Fortune <matthew.fortune@imgtec.com> |
13095 | ||
13096 | * config/mips/micromips.md (*swp): Remove explicit parallel. | |
13097 | (jraddiusp, *movep<MOVEP1:mode><MOVEP2:mode>): Likewise. | |
13098 | * config/mips/mips-dsp.md (add<DSPV:mode>3): Likewise. | |
13099 | (mips_add<DSP:dspfmt1>_s_<DSP:dspfmt2>, sub<DSPV:mode>3): Likewise. | |
13100 | (mips_sub<DSP:dspfmt1>_s_<DSP:dspfmt2>, mips_addsc): Likewise. | |
13101 | (mips_addwc, mips_absq_s_<DSPQ:dspfmt2>): Likewise. | |
13102 | (mips_precrq_rs_ph_w, mips_precrqu_s_qb_ph): Likewise. | |
13103 | (mips_shll_<DSPV:dspfmt2>, mips_shll_s_<DSPQ:dspfmt2>): Likewise. | |
13104 | (mips_muleu_s_ph_qbl, mips_muleu_s_ph_qbr): Likewise. | |
13105 | (mips_mulq_rs_ph, mips_muleq_s_w_phl, mips_muleq_s_w_phr): Likewise. | |
13106 | (mips_dpaq_s_w_ph, mips_dpsq_s_w_ph, mips_mulsaq_s_w_ph): Likewise. | |
13107 | (mips_dpaq_sa_l_w, mips_dpsq_sa_l_w, mips_maq_s_w_phl): Likewise. | |
13108 | (mips_maq_s_w_phr, mips_maq_sa_w_phl, mips_maq_sa_w_phr): Likewise. | |
13109 | (mips_extr_w, mips_extr_r_w, mips_extr_rs_w): Likewise. | |
13110 | (mips_extr_s_h, mips_extp, mips_extpdp, mips_mthlip): Likewise. | |
13111 | (mips_wrdsp): Likewise. | |
13112 | * config/mips/mips-dspr2.md (mips_absq_s_qb): Remove explicit | |
13113 | parallel. | |
13114 | (mips_addu_ph, mips_addu_s_ph, mips_cmpgdu_eq_qb): Likewise. | |
13115 | (mips_cmpgdu_lt_qb, mips_cmpgdu_le_qb, mulv2hi3): Likewise. | |
13116 | (mips_mul_s_ph, mips_mulq_rs_w, mips_mulq_s_ph): Likewise. | |
13117 | (mips_mulq_s_w, mips_subu_ph, mips_subu_s_ph): Likewise. | |
13118 | (mips_dpaqx_s_w_ph, mips_dpaqx_sa_w_ph): Likewise. | |
13119 | (mips_dpsqx_s_w_ph, mips_dpsqx_sa_w_ph): Likewise. | |
13120 | * config/mips/mips-fixed.md (usadd<mode>3): Remove explicit parallel. | |
13121 | (ssadd<mode>3, ussub<mode>3, sssub<mode>3, ssmul<mode>3): Likewise. | |
13122 | (ssmaddsqdq4, ssmsubsqdq4): Likewise. | |
13123 | ||
79c79069 | 13124 | 2015-01-14 Matthew Fortune <matthew.fortune@imgtec.com> |
13125 | ||
13126 | * config/mips/mips.c (mips_rtx_costs): Set costs for LSA/DLSA. | |
13127 | (mips_print_operand): Support 'y' to print exact log2 in decimal | |
13128 | of a const_int. | |
13129 | * config/mips/mips.h (ISA_HAS_LSA): New define. | |
13130 | (ISA_HAS_DLSA): Likewise. | |
13131 | * config/mips/mips.md (<GPR:d>lsa): New define_insn. | |
13132 | * config/mips/predicates.md (const_immlsa_operand): New predicate. | |
13133 | ||
ec5ca250 | 13134 | 2015-01-15 Martin Liska <mliska@suse.cz> |
13135 | ||
13136 | PR target/64377 | |
13137 | * optc-save-gen.awk: Add support for array types. | |
13138 | ||
43085be3 | 13139 | 2015-01-15 Richard Biener <rguenther@suse.de> |
13140 | ||
13141 | PR middle-end/64365 | |
13142 | * tree-data-ref.c (dr_analyze_indices): Make sure that accesses | |
13143 | for MEM_REF access functions with the same base can never partially | |
13144 | overlap. | |
13145 | ||
947aa916 | 13146 | 2015-01-14 Marcos Diaz <marcos.diaz@tallertechnologies.com> |
13147 | ||
13148 | * common.opt: New option -fstack-protector-explicit. | |
13149 | * cfgexpand.c (SPCT_FLAG_EXPLICIT): New enum. | |
13150 | (stack_protect_decl_phase): Handle stack_protect attribute for | |
13151 | explicit stack protection requests. | |
13152 | (expand_used_vars): Similarly. | |
13153 | * doc/cpp.texi (__SSP_EXPLICIT__): Document predefined macro. | |
13154 | * doc/extend.texi: Add documentation for "stack_protect" attribute. | |
13155 | * doc/invoke.texi: Add documentation for -fstack-protector-explicit. | |
13156 | ||
394e78ee | 13157 | 2015-01-14 Oleg Endo <olegendo@gcc.gnu.org> |
13158 | ||
13159 | PR target/53988 | |
13160 | * config/sh/sh-protos.h (sh_find_set_of_reg): Add option to ignore | |
13161 | reg-reg copies. | |
13162 | (sh_extending_set_of_reg): New struct. | |
13163 | (sh_find_extending_set_of_reg, sh_split_tst_subregs, | |
13164 | sh_remove_reg_dead_or_unused_notes): New Declarations. | |
13165 | * config/sh/sh.c (sh_remove_reg_dead_or_unused_notes, | |
13166 | sh_find_extending_set_of_reg, sh_split_tst_subregs, | |
13167 | sh_extending_set_of_reg::use_as_extended_reg): New functions. | |
13168 | * config/sh/sh.md (*tst<mode>_t_zero): Rename to *tst<mode>_t_subregs, | |
13169 | convert to insn_and_split and use new function sh_split_tst_subregs. | |
13170 | ||
a336442d | 13171 | 2015-01-14 Sandra Loosemore <sandra@codesourcery.com> |
13172 | ||
13173 | * doc/invoke.texi (Option Summary): Reclassify -fuse-ld as a linker | |
13174 | option. | |
13175 | (Optimization Options): Move -fuse-ld documentation to... | |
13176 | (Link Options): ...here. | |
13177 | ||
05af34e2 | 13178 | 2015-01-14 Matthew Fortune <matthew.fortune@imgtec.com> |
13179 | ||
13180 | * config/mips/constraints.md (ZC): Add support for R6 LL/SC | |
13181 | offsets. | |
13182 | (ZD): Update to use ISA_HAS_9BIT_DISPLACEMENT. | |
13183 | * config/mips/mips.h (ISA_HAS_PREFETCH_9BIT): Rename to... | |
13184 | (ISA_HAS_9BIT_DISPLACEMENT): ... this. New macro. | |
13185 | * config/mips/sync.md (sync_compare_and_swap<mode>): Use ZC | |
13186 | instead of ZR for the memory operand of LL/SC. | |
13187 | (compare_and_swap_12, sync_add<mode>): Likewise. | |
13188 | (sync_<optab>_12, sync_old_<optab>_12): Likewise. | |
13189 | (sync_new_<optab>_12, sync_nand_12): Likewise. | |
13190 | (sync_old_nand_12, sync_new_nand_12): Likewise. | |
13191 | (sync_sub<mode>, sync_old_add<mode>): Likewise. | |
13192 | (sync_old_sub<mode>, sync_new_add<mode>): Likewise. | |
13193 | (sync_new_sub<mode>, sync_<optab><mode>): Likewise. | |
13194 | (sync_old_<optab><mode>, sync_new_<optab><mode>"): Likewise. | |
13195 | (sync_nand<mode>, sync_old_nand<mode>): Likewise. | |
13196 | (sync_new_nand<mode>, sync_lock_test_and_set<mode>): Likewise. | |
13197 | (test_and_set_12, atomic_compare_and_swap<mode>): Likewise. | |
13198 | (atomic_exchange<mode>_llsc, atomic_fetch_add<mode>_llsc): Likewise. | |
13199 | * doc/md.texi (ZC): Update description. | |
13200 | ||
086f4e33 | 13201 | 2015-01-14 Andrew MacLeod <amacleod@redhat.com> |
13202 | ||
13203 | * builtins.c (expand_builtin_atomic_exchange): Remove error when | |
13204 | memory model is CONSUME. | |
13205 | (expand_builtin_atomic_compare_exchange, expand_builtin_atomic_load, | |
13206 | expand_builtin_atomic_store): Change invalid memory model errors to | |
13207 | warnings. | |
13208 | (expand_builtin_atomic_clear): Change invalid model errors to warnings | |
13209 | and issue warning for CONSUME. | |
13210 | ||
1cd6246c | 13211 | 2015-01-14 Aldy Hernandez <aldyh@redhat.com> |
13212 | ||
13213 | * lto-cgraph: Update function comments for | |
13214 | lto_symtab_encoder_encode_*. | |
13215 | ||
04270ae2 | 13216 | 2015-01-14 Ilya Verbin <ilya.verbin@intel.com> |
13217 | ||
13218 | * Makefile.in (site.exp): Do not set ENABLE_LTO. | |
13219 | ||
9d65fe51 | 13220 | 2015-01-14 Ilya Verbin <ilya.verbin@intel.com> |
13221 | ||
13222 | * cgraphunit.c (ipa_passes): Remove argument from ipa_write_summaries. | |
13223 | * lto-cgraph.c (select_what_to_stream): Remove argument, use | |
13224 | lto_stream_offload_p instead. | |
13225 | * lto-streamer.h (select_what_to_stream): Remove argument. | |
13226 | * passes.c (ipa_write_summaries): Likewise. | |
13227 | * tree-pass.h (ipa_write_summaries): Likewise. | |
13228 | ||
631db480 | 13229 | 2015-01-14 Richard Biener <rguenther@suse.de> |
13230 | ||
13231 | PR tree-optimization/59354 | |
13232 | * tree-vect-slp.c (vect_build_slp_tree_1): Treat loads from | |
13233 | groups larger than the slp group size as having gaps. | |
13234 | ||
3070f133 | 13235 | 2015-01-14 Andrew MacLeod <amacleod@redhat.com> |
13236 | ||
13237 | PR middle-end/59448 | |
13238 | * builtins.c (get_memmodel): Promote consume to acquire always. | |
13239 | ||
d4cbe45a | 13240 | 2015-01-14 Ilya Tocar <ilya.tocar@intel.com> |
43a6ee30 | 13241 | |
13242 | PR target/64386 | |
13243 | * config/i386/i386.c (ix86_expand_sse_cmp): Handle V64QImode, | |
89e2ddc9 | 13244 | V32HImode. |
43a6ee30 | 13245 | |
d4cbe45a | 13246 | 2015-01-14 Ilya Tocar <ilya.tocar@intel.com> |
1c699c14 | 13247 | |
13248 | PR target/64393 | |
13249 | * common/config/i386/i386-common.c (OPTION_MASK_ISA_AVX512VBMI_SET): | |
13250 | Enable AVX512BW. | |
13251 | (OPTION_MASK_ISA_AVX512BW_UNSET): Disable AVX512VBMI. | |
13252 | * config/i386/i386.c (ix86_hard_regno_mode_ok): Don't check | |
13253 | AVX512VBMI, as it implies AVX512BW. | |
13254 | ||
d4cbe45a | 13255 | 2015-01-14 Ilya Tocar <ilya.tocar@intel.com> |
9f8bc6e8 | 13256 | |
13257 | PR target/64387 | |
13258 | * config/i386/sse.md (vec_unpacks_hi_v8sf): Fix predicate. | |
13259 | (vec_unpacks_hi_v16sf): Ditto. | |
13260 | ||
1ed5a048 | 13261 | 2015-01-14 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
13262 | ||
13263 | * config/aarch64/arm_neon.h: Error out if AdvancedSIMD | |
13264 | is not available. | |
13265 | ||
6dd55040 | 13266 | 2015-01-14 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
13267 | ||
13268 | * doc/invoke.texi (mapcs): Mention deprecation. | |
13269 | (mapcs-frame): Likewise. | |
13270 | ||
0aa63fc5 | 13271 | 2015-01-14 Thomas Preud'homme <thomas.preudhomme@arm.com> |
13272 | ||
13273 | PR target/64453 | |
13274 | * config/arm/arm.c (callee_saved_reg_p): Define. | |
13275 | (arm_compute_save_reg0_reg12_mask): Use callee_saved_reg_p to check if | |
13276 | register is callee saved instead of !call_used_regs[reg]. | |
13277 | (thumb1_compute_save_reg_mask): Likewise. | |
13278 | ||
e51040ea | 13279 | 2015-01-14 Hale Wang <hale.wang@arm.com> |
13280 | ||
13281 | * config/arm/arm.c: Tune the max_cond_insns/branch_cost for | |
13282 | Cortex-M7. | |
13283 | ||
7d16b377 | 13284 | 2015-01-14 Richard Biener <rguenther@suse.de> |
13285 | ||
13286 | PR lto/64415 | |
13287 | * tree-inline.c (insert_debug_decl_map): Check destination | |
13288 | function MAY_HAVE_DEBUG_STMTS. | |
13289 | (insert_init_debug_bind): Likewise. | |
13290 | (insert_init_stmt): Remove redundant check. | |
13291 | (remap_gimple_stmt): Drop debug stmts if the destination | |
13292 | function has var-tracking assignments disabled. | |
13293 | ||
cadb17da | 13294 | 2015-01-14 Martin Liska <mliska@suse.cz> |
13295 | ||
13296 | * ipa-icf-gimple.c (func_checker::compare_operand): Add support for | |
13297 | IMAGPART_EXPR and REALPART_EXPR and fix BIT_FIELD_REF comparison. | |
13298 | ||
753d9835 | 13299 | 2015-01-14 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
13300 | ||
13301 | PR target/64460 | |
13302 | * config/arm/arm.md (*<arith_shift_insn>_multsi): Set 'shift' to 2. | |
13303 | (*<arith_shift_insn>_shiftsi): Set 'shift' attr to 3. | |
13304 | ||
c1fe1a98 | 13305 | 2015-01-14 Matthew Fortune <matthew.fortune@imgtec.com> |
13306 | ||
e1e4663f | 13307 | * config/mips/mips.h (MIPS_ISA_LEVEL_SPEC): Only infer an ISA |
13308 | level from an ARCH; do not inject the default. | |
13309 | (MIPS_DEFAULT_ISA_LEVEL_SPEC): New macro split out from | |
13310 | MIPS_ISA_LEVEL_SPEC. | |
13311 | (MIPS_ISA_NAN2008_SPEC): Update comment. | |
13312 | (BASE_DRIVER_SELF_SPECS): Likewise. | |
13313 | * config/mips/elfoabi.h (DRIVER_SELF_SPECS): Add | |
13314 | MIPS_DEFAULT_ISA_LEVEL_SPEC. | |
13315 | * config/mips/mti-elf.h (DRIVER_SELF_SPECS): Likewise. | |
13316 | * config/mips/mti-linux.h (DRIVER_SELF_SPECS): Likewise. | |
13317 | * config/mips/sde.h (DRIVER_SELF_SPECS): Likewise. | |
c1fe1a98 | 13318 | |
0f76de8e | 13319 | 2015-01-14 Richard Biener <rguenther@suse.de> |
13320 | ||
13321 | PR tree-optimization/64493 | |
13322 | PR tree-optimization/64495 | |
13323 | * tree-vect-loop.c (vect_finalize_reduction): For double-reductions | |
13324 | assign the proper vectorized PHI to the inner loop exit PHIs. | |
13325 | ||
c433f338 | 13326 | 2015-01-14 Joey Ye <joey.ye@arm.com> |
13327 | ||
13328 | * config/arm/arm.c (arm_compute_save_reg_mask): | |
13329 | Do not save lr in case of tail call. | |
13330 | * config/arm/thumb2.md (*thumb2_pop_single): New pattern. | |
13331 | ||
2fa47868 | 13332 | 2015-01-14 Martin Uecker <uecker@eecs.berkeley.edu> |
e4fd7af1 | 13333 | |
13334 | * tree-vrp.c (check_array_ref): Emit more warnings | |
13335 | for warn_array_bounds >= 2. | |
13336 | * common.opt: New option -Warray-bounds=. | |
13337 | * doc/invoke.texi: Document -Warray-bounds=. | |
13338 | ||
496649d9 | 13339 | 2015-01-14 Chung-Ju Wu <jasonwucj@gmail.com> |
13340 | ||
13341 | * config/nds32/nds32.opt (mforce-fp-as-gp): Remove. | |
13342 | (mforbid-fp-as-gp): Remove. | |
13343 | (mex9): Remove. | |
13344 | * config/nds32/nds32-fp-as-gp.c (nds32_have_prologue_p): Remove. | |
13345 | (nds32_symbol_load_store_p): Remove. | |
13346 | (nds32_fp_as_gp_check_available): Clean up implementation. | |
13347 | * config/nds32/nds32.h (LINK_SPEC): Remove -mforce-as-gp and -mex9 | |
13348 | cases. | |
13349 | * config/nds32/nds32.c (nds32_asm_file_start): No need to consider | |
13350 | fp-as-gp and ex9 cases. | |
13351 | ||
ca13b0e8 | 13352 | 2015-01-13 Jan Hubicka <hubicka@ucw.cz> |
13353 | ||
13354 | * tree-profile.c (init_ic_make_global_vars): Drop workaround | |
13355 | for bintuils bug 14342. | |
13356 | (init_ic_make_global_vars): Likewise. | |
13357 | (gimple_init_edge_profiler): Likewise. | |
13358 | (gimple_gen_ic_func_profiler): Likewise. | |
13359 | ||
c433f338 | 13360 | 2015-01-13 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com> |
a353d6b1 | 13361 | |
13362 | * ipa-inline.c (inline_small_functions): Swap the operands in | |
13363 | enum. | |
13364 | ||
bc42c20c | 13365 | 2015-01-13 Jan Hubicka <hubicka@ucw.cz> |
13366 | ||
13367 | PR ipa/64481 | |
13368 | * ipa-inline-analysis.c (node_growth_cache): Remove. | |
13369 | (initialize_growth_caches): Do not initialize it. | |
13370 | (free_growth_caches): Do not free it. | |
13371 | (do_estimate_growth): Rename to ... | |
13372 | (estimate_growth): ... this one; drop growth cache code. | |
13373 | (growth_likely_positive): Always go the heuristics way. | |
13374 | * ipa-inline.c (can_inline_edge_p): Walk through aliases. | |
13375 | (reset_edge_caches): Do not reset node growth. | |
13376 | (heap_edge_removal_hook): Do not maintain cache. | |
13377 | (inline_small_functions): Likewise; strenghten sanity check. | |
13378 | (ipa_inline): Do not maintain caches. | |
13379 | * ipa-inline.h (node_growth_cache): Remove. | |
13380 | (do_estimate_growth): Remove to ... | |
13381 | (estimate_growth): this one; remove inline version. | |
13382 | (reset_node_growth_cache): Remove. | |
13383 | ||
251346b0 | 13384 | 2015-01-13 Jan Hubicka <hubicka@ucw.cz> |
13385 | ||
13386 | PR ipa/64565 | |
13387 | * ipa-inline.c (inline_small_functions): Update callee keys after | |
13388 | resolving speculation | |
13389 | (inline_small_functions): Always check monotonicity of the queue. | |
13390 | ||
547355ae | 13391 | 2015-01-13 Marek Polacek <polacek@redhat.com> |
13392 | ||
13393 | PR middle-end/64391 | |
13394 | * trans-mem.c (get_attrs_for): Return NULL_TREE if X is NULL_TREE. | |
13395 | ||
b1f5faea | 13396 | 2015-01-13 Jakub Jelinek <jakub@redhat.com> |
13397 | ||
13398 | PR rtl-optimization/64286 | |
13399 | * ree.c (combine_reaching_defs): Move part of comment earlier, | |
13400 | remove !SCALAR_INT_MODE_P check. | |
13401 | (add_removable_extension): Don't add vector mode | |
13402 | extensions if all uses of the source register aren't the same | |
13403 | vector extensions. | |
13404 | ||
31307954 | 13405 | 2015-01-13 Renlin Li <renlin.li@arm.com> |
13406 | ||
13407 | * config/arm/arm.h (CLZ_DEFINED_VALUE_AT_ZERO): Return 2. | |
13408 | (CTZ_DEFINED_VALUE_AT_ZERO): Ditto. | |
13409 | ||
7174b54b | 13410 | 2015-01-13 Martin Liska <mliska@suse.cz> |
13411 | ||
13412 | * ipa-icf.c (sem_function::equals_private): Call new functions | |
13413 | cl_target_option_print_diff and cl_optimization_print_diff. | |
13414 | * optc-save-gen.awk (cl_target_option_print_diff): New function. | |
13415 | (cl_optimization_print_diff): Likewise. | |
13416 | * opth-gen.awk: Likewise. | |
13417 | ||
aec7ccda | 13418 | 2015-01-13 Richard Sandiford <richard.sandiford@arm.com> |
13419 | ||
13420 | * config/aarch64/aarch64.md (subsi3, *subsi3_uxtw, subdi3) | |
13421 | (*sub_<optab><ALLX:mode>_<GPI:mode>, *sub_<optab><SHORT:mode>_si_uxtw) | |
13422 | (*sub_<optab><ALLX:mode>_shft_<GPI:mode>) | |
13423 | (*sub_<optab><SHORT:mode>_shft_si_uxtw, *sub_<optab><mode>_multp2) | |
13424 | (*sub_<optab>si_multp2_uxtw, *sub_uxt<mode>_multp2) | |
13425 | (*sub_uxtsi_multp2_uxtw): Add stack pointer sources. | |
13426 | ||
c6e5fbeb | 13427 | 2015-01-13 Andrew Pinski <apinski@cavium.com> |
090a52f8 | 13428 | |
13429 | * config/aarch64/aarch64.c (fusion_load_store): Check dest mode | |
89e2ddc9 | 13430 | instead of src mode. |
090a52f8 | 13431 | |
f570604f | 13432 | 2015-01-13 Richard Biener <rguenther@suse.de> |
13433 | ||
13434 | PR lto/64373 | |
13435 | * lto-streamer-out.c (tree_is_indexable): Guard for NULL | |
13436 | DECL_CONTEXT. | |
13437 | ||
c6e5fbeb | 13438 | 2015-01-13 Andrew Pinski <apinski@cavium.com> |
8bf5b2f8 | 13439 | |
13440 | * config/aarch64/aarch64.c (aarch64_operands_ok_for_ldpstp): Reject | |
13441 | volatile mems. | |
13442 | (aarch64_operands_adjust_ok_for_ldpstp): Likewise. | |
13443 | ||
f0325271 | 13444 | 2015-01-13 Jakub Jelinek <jakub@redhat.com> |
13445 | ||
13446 | PR middle-end/63974 | |
13447 | * cfgexpand.c (expand_computed_goto): Don't call | |
13448 | convert_memory_address here. | |
13449 | ||
505d3633 | 13450 | 2015-01-13 Richard Biener <rguenther@suse.de> |
13451 | ||
13452 | PR tree-optimization/64406 | |
13453 | * tree-loop-distibution.c (pass_loop_distribution::execute): | |
13454 | Reset the SCEV hashtable if we distributed anything. | |
13455 | ||
371edde1 | 13456 | 2015-01-13 Richard Biener <rguenther@suse.de> |
13457 | ||
13458 | PR tree-optimization/64404 | |
13459 | * tree-vect-stmts.c (vectorizable_load): Reject conflicting | |
13460 | SLP types for CSEd loads. | |
13461 | ||
f7a40894 | 13462 | 2015-01-13 Thomas Preud'homme <thomas.preudhomme@arm.com> |
13463 | ||
13464 | PR tree-optimization/64436 | |
13465 | * tree-ssa-math-opts.c (find_bswap_or_nop_1): Move code performing the | |
13466 | merge of two symbolic numbers for a bitwise OR to ... | |
13467 | (perform_symbolic_merge): This. Also fix computation of the range and | |
13468 | end of the symbolic number corresponding to the result of a bitwise OR. | |
13469 | ||
2fa47868 | 13470 | 2015-01-13 Richard Biener <rguenther@suse.de> |
7fb03128 | 13471 | |
13472 | PR tree-optimization/64568 | |
13473 | * tree-ssa-forwprop.c (pass_forwprop::execute): Properly | |
13474 | release defs of removed stmts, avoid splitting TARGET_MEM_REFs. | |
13475 | ||
34cb34cb | 13476 | 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com> |
13477 | ||
13478 | * config/nds32/nds32.c (nds32_legitimate_address_p): Consider | |
13479 | TARGET_CMODEL_LARGE and TARGET_CMODEL_MEDIUM cases. | |
13480 | ||
8e4f6b00 | 13481 | 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com> |
13482 | ||
13483 | * config/nds32/nds32.h (NDS32_SYMBOL_FLAG_RODATA): Define our own | |
13484 | target-specific symbol_ref flag. | |
13485 | (NDS32_SYMBOL_REF_RODATA_P): Define it to check if the symbol_ref | |
13486 | resides in rodata section. | |
13487 | * config/nds32/nds32.c (TARGET_ENCODE_SECTION_INFO): Define. | |
13488 | (nds32_encode_section_info): New function. | |
13489 | ||
b129c8c3 | 13490 | 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com> |
13491 | ||
13492 | * config/nds32/nds32.md (call): Use pseudo instruction bal which | |
13493 | clobbers TA_REGNUM if large code model is specified. | |
13494 | (call_register): Likewise. | |
13495 | (call_immediate): Likewise. | |
13496 | (call_value): Likewise. | |
13497 | (call_value_register): Likewise. | |
13498 | (call_value_immediate): Likewise. | |
13499 | ||
abc509c0 | 13500 | 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com> |
13501 | ||
13502 | * config/nds32/nds32.h (TARGET_CMODEL_SMALL): New macro. | |
13503 | (TARGET_CMODEL_MEDIUM): New macro. | |
13504 | (TARGET_CMODEL_LARGE): New macro. | |
13505 | * config/nds32/nds32.c (nds32_asm_file_start): Display corresponding | |
13506 | code model setting in assembly code. | |
13507 | ||
d1bacc44 | 13508 | 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com> |
13509 | ||
13510 | * common/config/nds32/nds32-common.c (TARGET_DEFAULT_TARGET_FLAGS): | |
13511 | Remove MASK_GP_DIRECT flag. | |
13512 | * config/nds32/nds32.h (MULTILIB_DEFAULTS): Have -mcmodel=medium as | |
13513 | one of the multilib default options. | |
13514 | * config/nds32/nds32.opt (mgp-direct): Remove. | |
13515 | * config/nds32/t-mlibs (MULTILIB_OPTIONS): Use -mcmodel instead of | |
13516 | -mgp-direct. We also remove unnecessary -mlittle-endian/-mbig-endian. | |
13517 | ||
da2e70a9 | 13518 | 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com> |
13519 | ||
13520 | * config/nds32/nds32.opt (mcmodel): Add new option. | |
13521 | * config/nds32/nds32-opts.h (nds32_cmodel_type): Add new enum type | |
13522 | to describe code model. | |
13523 | ||
8624ddf6 | 13524 | 2015-01-13 Oleg Endo <olegendo@gcc.gnu.org> |
13525 | ||
13526 | PR target/64479 | |
13527 | * rtlanal.c (set_reg_p): Handle SEQUENCE constructs. | |
13528 | ||
54adac16 | 13529 | 2015-01-12 Kaz Kojima <kkojima@gcc.gnu.org> |
13530 | ||
13531 | * config/sh/sh.c (sh_atomic_assign_expand_fenv): New function. | |
13532 | (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): Define. | |
13533 | (sh_builtin_get_fpscr, sh_builtin_set_fpscr): New variables. | |
13534 | (sh_init_builtins): Record decls for __builtin_sh_get_fpscr and | |
13535 | __builtin_sh_set_fpscr. | |
13536 | ||
516766a2 | 13537 | 2015-01-12 Sandra Loosemore <sandra@codesourcery.com> |
13538 | ||
13539 | * doc/invoke.texi ([-Wsuggest-attribute=]): Don't use parentheses | |
13540 | after a funtion name just to indicate it is a function. | |
13541 | ([-fsanitize-undefined-trap-on-error]): Likewise. | |
13542 | ([-fdbg-cnt=]): Likewise. | |
13543 | ([-mmemcpy]): Likewise. | |
13544 | ([-mflush-func]): Likewise. | |
13545 | ([-msynci]): Likewise. | |
13546 | ||
9f6e2339 | 13547 | 2015-01-12 Sandra Loosemore <sandra@codesourcery.com> |
13548 | ||
13549 | * doc/invoke.texi ([-Wbad-function-cast]): Rewrite to avoid confusing | |
13550 | example. | |
89e2ddc9 | 13551 | |
e031f282 | 13552 | 2015-01-12 Jakub Jelinek <jakub@redhat.com> |
13553 | ||
74e83cd5 | 13554 | PR tree-optimization/64563 |
13555 | * tree-vrp.c (vrp_evaluate_conditional): Check for VR_RANGE | |
13556 | instead of != VR_VARYING. | |
13557 | ||
a7816469 | 13558 | PR target/64513 |
13559 | * config/i386/i386.c (ix86_expand_prologue): Add | |
13560 | REG_FRAME_RELATED_EXPR to %rax and %r10 pushes. | |
13561 | ||
dbecfd54 | 13562 | PR tree-optimization/64454 |
13563 | * tree-vrp.c (simplify_div_or_mod_using_ranges): Optimize | |
13564 | op0 % op1 into op0 if op0 is in range [-op1 + 1, op1 - 1] | |
13565 | for signed or [0, op1 - 1] for unsigned modulo. | |
13566 | (simplify_stmt_using_ranges): Call simplify_div_or_mod_using_ranges | |
13567 | even if op1 does not satisfy integer_pow2p. | |
13568 | ||
e031f282 | 13569 | PR other/64370 |
13570 | * sreal.c (sreal::to_double): Use ldexp instead of scalbnl. | |
13571 | ||
7a5fbc9c | 13572 | 2015-01-12 Jeff Law <law@redhat.com> |
13573 | ||
423c20f0 | 13574 | PR target/64461 |
9680dd14 | 13575 | * config/m68k/m68k.md (truncsiqi2): Disable for TARGET_COLDFIRE. |
13576 | (trunchiqi2, truncsihi2): Similarly. | |
13577 | ||
7a5fbc9c | 13578 | * config/h8300/h8300.c (Fpa): Use RTX_FRAME_RELATED_P directly |
13579 | rather than calling F. | |
13580 | ||
5a17c7cc | 13581 | 2015-01-12 Bernd Edlinger <bernd.edlinger@hotmail.de> |
13582 | ||
13583 | * tsan.c (instrument_expr): Use force_gimple_operand. | |
13584 | Use may_be_nonaddressable_p instead of is_gimple_addressable. | |
13585 | ||
b34b273b | 13586 | 2015-01-12 Richard Biener <rguenther@suse.de> |
13587 | ||
13588 | PR tree-optimization/64530 | |
13589 | * tree-loop-distribution.c (pg_add_dependence_edges): Shuffle | |
13590 | back dr1. | |
13591 | ||
88120a34 | 13592 | 2015-01-12 Richard Biener <rguenther@suse.de> |
13593 | ||
13594 | PR middle-end/64357 | |
13595 | * tree-cfg.c (gimple_can_merge_blocks_p): Protect simple | |
13596 | latches properly. | |
13597 | ||
56363b23 | 13598 | 2015-01-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
13599 | ||
13600 | * config/arm/arm.c (arm_cortex_a12_tune): Update entries to match | |
13601 | Cortex-A17 tuning parameters. | |
13602 | * config/arm/arm-cores.def (cortex-a12): Schedule for cortex-a17. | |
13603 | ||
1407d0e8 | 13604 | 2015-01-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
13605 | ||
13606 | * config/arm/arm-protos.h (tune_params): Add fuseable_ops field. | |
13607 | * config/arm/arm.c (arm_macro_fusion_p): New function. | |
13608 | (arm_macro_fusion_pair_p): Likewise. | |
13609 | (TARGET_SCHED_MACRO_FUSION_P): Define. | |
13610 | (TARGET_SCHED_MACRO_FUSION_PAIR_P): Likewise. | |
13611 | (ARM_FUSE_NOTHING): Likewise. | |
13612 | (ARM_FUSE_MOVW_MOVT): Likewise. | |
13613 | (arm_slowmul_tune, arm_fastmul_tune, arm_strongarm_tune, | |
13614 | arm_xscale_tune, arm_9e_tune, arm_v6t2_tune, arm_cortex_tune, | |
13615 | arm_cortex_a8_tune, arm_cortex_a7_tune, arm_cortex_a15_tune, | |
13616 | arm_cortex_a53_tune, arm_cortex_a57_tune, arm_cortex_a9_tune, | |
13617 | arm_cortex_a12_tune, arm_v7m_tune, arm_v6m_tune, arm_fa726te_tune | |
13618 | arm_cortex_a5_tune): Specify fuseable_ops value. | |
13619 | ||
32f62b18 | 13620 | 2015-01-12 H.J. Lu <hongjiu.lu@intel.com> |
13621 | ||
13622 | PR bootstrap/64561 | |
13623 | * configure.ac (HAVE_LD_PIE_COPYRELOC): Update Linux/x86-64 linker | |
13624 | test for PIE with copy reloc. | |
13625 | * configure: Regenerated. | |
13626 | ||
35d8220c | 13627 | 2015-01-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
e62d0db9 | 13628 | |
13629 | * config/arm/arm.c (arm_load_tp): Use R0_REGNUM instead of constant 0 | |
13630 | in gen_rtx_REG. | |
13631 | (arm_tls_descseq_addr): Likewise. | |
13632 | (arm_gen_movmemqi): Likewise. | |
13633 | (arm_expand_epilogue_apcs_frame): Likewise. | |
13634 | (arm_expand_epilogue): Likewise. | |
13635 | (arm_expand_prologue): Likewise. Use R1_REGNUM instead of constant 1 | |
13636 | in gen_rtx_REG. | |
13637 | ||
810430af | 13638 | 2015-01-12 Martin Liska <mliska@suse.cz> |
13639 | ||
13640 | PR ipa/64550 | |
13641 | * ipa-icf-gimple.c (func_checker::compare_memory_operand): Compare | |
13642 | volatility for correct operands. | |
13643 | ||
13644 | 2015-01-12 Martin Liska <mliska@suse.cz> | |
13645 | ||
13646 | * ipa-icf.c (sem_function::equals_wpa): Add indirect_calls as indication | |
13647 | that a function is not leaf. | |
13648 | (sem_function::compare_polymorphic_p): Likewise. | |
13649 | ||
7b774922 | 13650 | 2015-01-12 Martin Liska <mliska@suse.cz> |
13651 | ||
13652 | * ipa-icf.c (sem_function::equals_wpa): Add indirect_calls as indication | |
13653 | that a function is not leaf. | |
13654 | (sem_function::compare_polymorphic_p): Likewise. | |
13655 | ||
41eaccd7 | 13656 | 2015-01-12 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
13657 | ||
13658 | * config/visium/visium.c: Add includes hashtab.h, hash-set.h, | |
13659 | machmode.h, input.h, statistics.h, vec.h, double-int.h, real.h, | |
13660 | fixed-value.h, alias.h, symtab.h, tree-core.h, wide-int.h, inchash.h, | |
13661 | fold-const.h, tree-check.h. | |
13662 | ||
1d77f63b | 13663 | 2015-01-12 Jan Hubicka <hubicka@ucw.cz> |
13664 | ||
13665 | PR ipa/63967 | |
13666 | PR ipa/64425 | |
13667 | * ipa-inline.c (compute_uninlined_call_time, | |
13668 | compute_inlined_call_time): Use counts for extra precision when | |
13669 | needed possible. | |
13670 | (big_speedup_p): Fix formating. | |
13671 | (RELATIVE_TIME_BENEFIT_RANGE): Remove. | |
13672 | (relative_time_benefit): Remove. | |
13673 | (edge_badness): Turn DECL_DISREGARD_INLINE_LIMITS into hint; | |
13674 | merge guessed and read profile paths. | |
13675 | (inline_small_functions): Count only !optimize_size functions into | |
13676 | initial size; be more lax about sanity check when profile is used; | |
13677 | be sure to update inlined function profile when profile is read. | |
13678 | ||
1a92a535 | 13679 | 2015-01-12 Jan Hubicka <hubicka@ucw.cz> |
13680 | ||
13681 | PR ipa/63470 | |
13682 | * ipa-inline-analysis.c (inline_edge_duplication_hook): Adjust | |
13683 | cost when edge becomes direct. | |
13684 | * ipa-prop.c (make_edge_direct): Do not adjust when speculation | |
13685 | is resolved or when introducing new speculation. | |
13686 | ||
175a3ae1 | 13687 | 2015-01-12 Chen Gang <gang.chen.5i5j@gmail.com> |
13688 | ||
175a3ae1 | 13689 | PR ipa/64551 |
13690 | PR ipa/64552 | |
13691 | * ipa-icf.c (sem_function::equals_private): Use '&&' instead of | |
13692 | '||' to fix typo issue. | |
13693 | ||
13694 | * gcc/tree.h (target_opts_for_fn): Check NULL_TREE since it can | |
13695 | accept and return NULL. | |
13696 | ||
c308ecc8 | 13697 | 2015-01-12 Martin Liska <mliska@suse.cz> |
13698 | ||
13699 | * cgraph.c (cgraph_edge::remove_callee): Move function to header | |
13700 | file for being inlined. | |
13701 | (cgraph_set_edge_callee): Delete. | |
13702 | (cgraph_edge::redirect_callee): Move function to header file | |
13703 | for being inlined. | |
13704 | (cgraph_edge::make_direct): Use new function. | |
13705 | (cgraph_edge::dump_edge_flags): New function created from | |
13706 | static dump_edge_flags function. | |
13707 | (cgraph_node::dump): Use new function. | |
13708 | (cgraph_edge::verify_count_and_frequency): New function created | |
13709 | from verify_edge_count_and_frequency. | |
13710 | (cgraph_edge::verify_corresponds_to_fndecl): New function created | |
13711 | from verify_edge_corresponds_to_fndecl. | |
13712 | (verify_edge_corresponds_to_fndecl): Delete. | |
13713 | (cgraph_node::verify_node): Use new function. | |
13714 | * cgraph.h (cgraph_edge::set_callee): New function. | |
13715 | (cgraph_edge::dump_edge_flags): Likewise. | |
13716 | (cgraph_edge::verify_corresponds_to_fndecl): Likewise. | |
13717 | ||
549519dd | 13718 | 2015-01-11 Jan Hubicka <hubicka@ucw.cz> |
13719 | ||
13720 | * ipa-utils.c (estimate_function_body_sizes): Do not | |
13721 | free node params when called late with early=true. | |
13722 | ||
efdbd62c | 13723 | 2015-01-11 James Greenhalgh <james.greenhalgh@arm.com> |
13724 | ||
13725 | * doc/md.texi (Instruction Patterns): Rewrite text for | |
13726 | clarity. | |
13727 | (Example): Likewise. | |
13728 | ||
b5d95b9b | 13729 | 2015-01-10 Sandra Loosemore <sandra@codesourcery.com> |
13730 | ||
13731 | * doc/invoke.texi (Option Summary): Break long lines. | |
13732 | [(-fdiagnostics-color)]: Put long literal in @smallexample | |
13733 | instead of inline. | |
13734 | [(-fsanitize-recover)]: Likewise. | |
13735 | [(-fdump-rtl-split*)]: Rewrite to fix over-full hbox. | |
13736 | [(-ffast-math)]: Likewise. | |
13737 | [(--param max-inline-insns-recursive)]: Likewise. | |
13738 | [(--param max-inline-recursive-depth)]: Likewise. | |
13739 | [(-mno-text-section-literals)]: Likewise. | |
89e2ddc9 | 13740 | |
c35c9a62 | 13741 | 2015-01-10 Thomas Schwinge <thomas@codesourcery.com> |
13742 | ||
13743 | * doc/install.texi: Update for libgomp being renamed from "GNU | |
13744 | OpenMP Runtime Library" to "GNU Offloading and Multi Processing | |
13745 | Runtime Library". | |
13746 | * doc/sourcebuild.texi: Likewise. | |
13747 | ||
83d8a9ab | 13748 | 2015-01-10 Anthony Green <green@moxielogic.com> |
13749 | ||
13750 | * config/moxie/moxie.c (moxie_option_override): Fix forcing of | |
13751 | mul.x availability for moxiebox configuration. | |
13752 | ||
d28cb33b | 13753 | 2015-01-09 Anthony Green <green@moxielogic.com> |
13754 | ||
13755 | * config/moxie/moxie.md: Tabify assembly output. | |
13756 | ||
b1a967b2 | 13757 | 2015-01-09 Anthony Green <green@moxielogic.com> |
13758 | ||
13759 | * config/moxie/moxie.md (CC_REG): Correct register definition. | |
13760 | ||
a606234e | 13761 | 2015-01-09 Sandra Loosemore <sandra@codesourcery.com> |
13762 | ||
13763 | * doc/invoke.texi ([-fvtable-verify]): Copy-edit and fix markup. | |
13764 | ([-fvtv-debug], [-fvtv-counts]): Likewise. Correct location | |
13765 | of log files. | |
13766 | ||
0f369cfe | 13767 | 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org> |
13768 | ||
13769 | * config/arm/arm.h (MAX_SYNC_LIBFUNC_SIZE): Delete semicolon. | |
13770 | ||
ba000093 | 13771 | 2015-01-09 Bernd Schmidt <bernds@codesourcery.com> |
13772 | Jakub Jelinek <jakub@redhat.com> | |
13773 | ||
13774 | PR middle-end/64412 | |
13775 | * lto-streamer.h (lto_stream_offload_p): New declaration. | |
13776 | * lto-streamer.c (lto_stream_offload_p): New variable. | |
13777 | * cgraphunit.c (ipa_passes): Set lto_stream_offload_p | |
13778 | at the same time as section_name_prefix. | |
13779 | * lto-streamer-out.c (hash_tree): Don't hash TREE_TARGET_OPTION | |
13780 | if lto_stream_offload_p. | |
13781 | * tree-streamer-out.c (streamer_pack_tree_bitfields): Don't | |
13782 | stream TREE_TARGET_OPTION if lto_stream_offload_p. | |
13783 | (write_ts_function_decl_tree_pointers): Don't | |
13784 | stream DECL_FUNCTION_SPECIFIC_TARGET if lto_stream_offload_p. | |
13785 | * tree-streamer-in.c (unpack_value_fields): Don't stream | |
13786 | TREE_TARGET_OPTION in if ACCEL_COMPILER. | |
13787 | (lto_input_ts_function_decl_tree_pointers): Don't stream | |
13788 | DECL_FUNCTION_SPECIFIC_TARGET in if ACCEL_COMPILER. | |
13789 | * lto-opts.c (lto_write_options): Use lto_stream_offload_p | |
13790 | instead of section_name_prefix string comparisons. | |
13791 | ||
1f78217c | 13792 | 2015-01-09 Jakub Jelinek <jakub@redhat.com> |
13793 | ||
13794 | PR rtl-optimization/64536 | |
13795 | * cfgrtl.c (rtl_tidy_fallthru_edge): Handle removal of degenerate | |
13796 | tablejumps. | |
13797 | ||
b20a8bb4 | 13798 | 2015-01-09 Michael Collison <michael.collison@linaro.org> |
1f78217c | 13799 | |
f070b34d | 13800 | PR tree-optimization/64322 |
13801 | * tree-vrp.c (extract_range_from_binary_expr_1): Attempt to derive | |
13802 | range for RSHIFT_EXPR even if vr0 range is not VR_RANGE or is symbolic. | |
13803 | ||
9c4a0128 | 13804 | 2015-01-09 Tom de Vries <tom@codesourcery.com> |
13805 | ||
13806 | PR rtl-optimization/64539 | |
13807 | * regcprop.c (kill_clobbered_values): Factor out of ... | |
13808 | (copyprop_hardreg_forward_1): ... here. Use kill_clobbered_values | |
13809 | instead of note_stores with kill_clobbered_value. | |
13810 | ||
0375cff7 | 13811 | 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org> |
13812 | ||
13813 | * ginclude/unwind-arm-common.h: Revert previous commit. | |
13814 | ||
275d0a7c | 13815 | 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org> |
13816 | ||
13817 | * config.gcc (arm*-*-freebsd*): New configuration. | |
13818 | * config/arm/freebsd.h: New file. | |
13819 | * config.host: Add extra components for arm*-*-freebsd*. | |
13820 | * config/arm/arm.h: Introduce MAX_SYNC_LIBFUNC_SIZE. | |
13821 | * config/arm/arm.c (arm_init_libfuncs): Use MAX_SYNC_LIBFUNC_SIZE. | |
13822 | ||
9fda4277 | 13823 | 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de> |
13824 | ||
13825 | * config/rs6000/rtems.h (CPP_OS_RTEMS_SPEC): Define __PPC_CPU_E6500__ | |
13826 | for -mcpu=e6500. | |
13827 | * config/rs6000/t-rtems: Add e6500 multilibs. | |
13828 | ||
53ba535c | 13829 | 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de> |
13830 | ||
13831 | * config/rs6000/t-rtems: Add -mno-spe to soft-float multilib for | |
13832 | MPC8540. | |
13833 | ||
3be5524a | 13834 | 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de> |
13835 | ||
13836 | * config/rs6000/t-rtems: Use MULTILIB_REQUIRED instead of | |
13837 | MULTILIB_EXCEPTIONS. | |
13838 | ||
61af80a9 | 13839 | 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de> |
13840 | ||
13841 | * config/arm/t-rtems: Use MULTILIB_REQUIRED instead of | |
13842 | MULTILIB_EXCEPTIONS. | |
13843 | ||
b5404134 | 13844 | 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de> |
13845 | ||
13846 | * config/arm/t-rtems-eabi: Rename to... | |
13847 | * config/arm/t-rtems: ...this. | |
13848 | * config/arm/rtems-eabi.h: Rename to... | |
13849 | * config/arm/rtems.h: ...this. | |
13850 | * config.gcc (arm*-*-rtems*): Reflect changes above. | |
13851 | ||
e3c6a1ed | 13852 | 2015-01-09 Richard Biener <rguenther@suse.de> |
13853 | ||
13854 | PR tree-optimization/64410 | |
13855 | * tree-ssa.c (non_rewritable_lvalue_p): Allow REALPART/IMAGPART_EXPR | |
13856 | on the LHS. | |
13857 | (execute_update_addresses_taken): Deal with that. | |
13858 | * tree-ssa-forwprop.c (pass_forwprop::execute): Use component-wise | |
13859 | loads/stores for complex variables. | |
13860 | ||
05e3f053 | 13861 | 2015-01-09 Martin Liska <mliska@suse.cz> |
13862 | ||
13863 | * ipa-icf-gimple.c (func_checker::compare_ssa_name): Enhance SSA | |
13864 | name comparison. | |
13865 | (func_checker::compare_memory_operand): New function. | |
13866 | (func_checker::compare_operand): Split case to newly | |
13867 | added functions. | |
13868 | (func_checker::compare_cst_or_decl): New function. | |
13869 | (func_checker::compare_gimple_call): Identify | |
13870 | memory operands. | |
13871 | (func_checker::compare_gimple_assign): Likewise. | |
13872 | * ipa-icf-gimple.h: New function. | |
13873 | ||
04478c40 | 13874 | 2015-01-09 Martin Liska <mliska@suse.cz> |
13875 | ||
13876 | PR ipa/64503 | |
13877 | * sreal.c (sreal::dump): Change unsigned format to signed for | |
13878 | m_exp value. | |
13879 | (sreal::to_double): Replace exp2 with scalbln. | |
13880 | ||
275e2756 | 13881 | 2015-01-09 Martin Liska <mliska@suse.cz> |
13882 | ||
13883 | * cgraphunit.c (cgraph_node::create_wrapper): Fix level of indentation. | |
13884 | * ipa-icf.c (sem_function::equals_private): Add support for target and | |
13885 | (sem_item_optimizer::merge_classes): Remove redundant function | |
13886 | optimization flags comparison. | |
13887 | * tree.h (target_opts_for_fn): New function. | |
13888 | ||
a6f1094f | 13889 | 2015-01-09 Tom de Vries <tom@codesourcery.com> |
13890 | ||
13891 | * omp-low.c (expand_omp_for_static_chunk): Fix assert. | |
13892 | ||
52793acd | 13893 | 2015-01-09 Kito Cheng <kito@0xlab.org> |
13894 | ||
13895 | PR rtl-optimization/64348 | |
13896 | * lra-constraints.c (split_reg): Fix caller-save store/restore | |
13897 | instruction generation. | |
13898 | ||
f404fe25 | 13899 | 2015-01-08 John David Anglin <danglin@gcc.gnu.org> |
13900 | ||
13901 | PR gcov-profile/61790 | |
13902 | * gcov-tool.c (do_rewrite): Use strtoll instead of atoll if host has | |
13903 | long long. Fallback to int64_t if host doesn't have long long and | |
13904 | use strtol if int64_t is long. Otherwise, use sscanf for conversion. | |
13905 | ||
17853422 | 13906 | 2015-01-08 Jakub Jelinek <jakub@redhat.com> |
13907 | ||
150a0f7d | 13908 | PR tree-optimization/63989 |
13909 | * params.def (PARAM_MAX_TRACKED_STRLENS): Increment default | |
13910 | from 1000 to 10000. | |
13911 | * tree-ssa-strlen.c (get_strinfo): Moved earlier. | |
13912 | (get_stridx): If we don't have a record for certain SSA_NAME, | |
13913 | but it is POINTER_PLUS_EXPR of some SSA_NAME we do with | |
13914 | constant offset, call get_stridx_plus_constant. | |
13915 | (get_stridx_plus_constant): New function. | |
13916 | (zero_length_string): Don't use get_stridx here. | |
13917 | ||
17853422 | 13918 | PR target/55023 |
13919 | PR middle-end/64388 | |
13920 | * dse.c (struct insn_info): Mention frame_read set also | |
13921 | before reload for tail calls on some targets. | |
13922 | (scan_insn): Revert 2014-12-22 change. Set frame_read | |
13923 | also before reload for tail calls if | |
13924 | HARD_FRAME_POINTER_IS_ARG_POINTER. Call add_wild_read | |
13925 | instead of add_non_frame_wild_read for non-const/memset | |
13926 | tail calls after reload. | |
13927 | ||
411b7663 | 13928 | 2015-01-08 Jason Merrill <jason@redhat.com> |
13929 | ||
13930 | * ubsan.c (do_ubsan_in_current_function): New. | |
13931 | (pass_ubsan::gate): Use it. | |
13932 | * ubsan.h: Declare it. | |
13933 | * convert.c (convert_to_integer): Use it. | |
13934 | ||
6a1b0694 | 13935 | 2015-01-08 Jakub Jelinek <jakub@redhat.com> |
13936 | ||
13937 | PR target/64338 | |
13938 | * config/i386/i386.c (ix86_expand_int_movcc): Don't reverse | |
13939 | compare_code when it is unconditionally overwritten afterwards. | |
13940 | Use ix86_reverse_condition instead of reverse_condition. Don't | |
13941 | change code if *reverse_condition* returned UNKNOWN and don't | |
13942 | swap ct/cf and negate diff in that case. | |
13943 | ||
d1e96383 | 13944 | 2015-01-08 Mike Stump <mikestump@comcast.net> |
13945 | ||
13946 | * tsan.c (pass_tsan::gate): Add no_sanitize_thread support. | |
13947 | (pass_tsan_O0::gate): Likewise. | |
13948 | * extend.texi (Function Attributes): Add no_sanitize_thread | |
13949 | documentation. | |
13950 | ||
c049b358 | 13951 | 2015-01-08 Thomas Schwinge <thomas@codesourcery.com> |
13952 | ||
752cfdfd | 13953 | * builtins.def (DEF_GOMP_BUILTIN): Also consider flag_offload_abi |
13954 | for registering builtins. | |
13955 | * config/i386/intelmic-mkoffload.c (prepare_target_image): Don't | |
13956 | add -fopenmp to the argv_obstack used when invoking | |
13957 | compile_for_target. | |
13958 | ||
c049b358 | 13959 | * config/i386/intelmic-mkoffload.c (compile_for_target): Always |
13960 | add "-m32" or "-m64" to argv_obstack. | |
13961 | (generate_host_descr_file): Likewise, when invoking host_compiler. | |
13962 | (main): Always add "-m elf_i386" or "-m elf_x86_64" when invoking | |
13963 | ld. | |
13964 | ||
f07efc97 | 13965 | 2015-01-08 Oleg Endo <olegendo@gcc.gnu.org> |
13966 | ||
13967 | * config/sh/sh-mem.cc: Use constant as second operand when emitting | |
13968 | tstsi_t insns. | |
13969 | ||
3795ffe4 | 13970 | 2015-01-08 Oleg Endo <olegendo@gcc.gnu.org> |
13971 | ||
13972 | PR target/55212 | |
13973 | * config/sh/sh.md (*addsi3_compact): Emit reg-reg copy instead of | |
13974 | constant load if constant operand fits into I08. | |
13975 | ||
18e2d12f | 13976 | 2015-01-08 Jakub Jelinek <jakub@redhat.com> |
13977 | ||
13978 | PR sanitizer/64336 | |
13979 | * tree.c (build2_stat): Fix up initialization of TREE_READONLY | |
13980 | and TREE_THIS_VOLATILE for MEM_REFs. | |
13981 | (build5_stat): Fix up initialization of TREE_READONLY and | |
13982 | TREE_THIS_VOLATILE for TARGET_MEM_REFs. | |
13983 | ||
c3f707fc | 13984 | 2015-01-08 Kaz Kojima <kkojima@gcc.gnu.org> |
13985 | ||
13986 | PR target/64533 | |
13987 | * config/sh/sh.md (*addsi3_compact): Use u constraint instead | |
13988 | of r for the second alternative of the destination operand. | |
13989 | ||
67d7e7e4 | 13990 | 2015-01-07 Segher Boessenkool <segher@kernel.crashing.org> |
13991 | ||
13992 | PR target/36557 | |
13993 | * config/rs6000/rs6000.md (*eqsi3_ext<mode>, *nesi3_ext<mode>): New. | |
13994 | ||
f4d72cb8 | 13995 | 2015-01-07 Sandra Loosemore <sandra@codesourcery.com> |
13996 | ||
13997 | * doc/invoke.texi ([-fvtable-verify]): Fix markup on option | |
13998 | keywords. | |
13999 | ([-fivar-visibility], [-fvisibility]): Likewise. | |
14000 | ||
6216a210 | 14001 | 2015-01-07 Sandra Loosemore <sandra@codesourcery.com> |
14002 | ||
14003 | * doc/invoke.texi: Fix incorrect uses of @samp markup throughout | |
14004 | the file where @code, @command, etc is more appropriate. | |
14005 | ||
8b328301 | 14006 | 2015-01-06 Sandra Loosemore <sandra@codesourcery.com> |
14007 | ||
14008 | * doc/invoke.texi (RS/6000 and PowerPC Options): Tidy formatting | |
14009 | of -mrecip= documentation. | |
14010 | ||
e9a133fc | 14011 | 2015-01-06 Michael Meissner <meissner@linux.vnet.ibm.com> |
14012 | ||
14013 | PR target/64505 | |
14014 | * config/rs6000/rs6000.c (rs6000_secondary_reload): Return the | |
14015 | correct reload handler if -m32 -mpowerpc64 is used. | |
14016 | ||
ee5b36af | 14017 | 2015-01-06 Tom de Vries <tom@codesourcery.com> |
14018 | ||
14019 | * tree-ssa-tail-merge.c: Fix typo in struct same_succ_def comment. | |
14020 | ||
7756601d | 14021 | 2015-01-08 Christian Bruel <christian.bruel@st.com> |
14022 | ||
14023 | PR target/64507 | |
14024 | * config/sh/sh-mem.cc (sh_expand_cmpnstr): Check 0 length. | |
14025 | ||
bbb9b536 | 14026 | 2015-01-06 Thomas Preud'homme <thomas.preudhomme@arm.com> |
14027 | ||
14028 | PR tree-optimization/63259 | |
14029 | * tree-ssa-math-opts.c (pass_optimize_bswap::execute): Stop checking | |
14030 | if optab exists for 16bit byteswap. | |
14031 | ||
9b442f46 | 14032 | 2015-01-06 Jakub Jelinek <jakub@redhat.com> |
14033 | ||
14034 | * opts.c (common_handle_option): Add support for | |
14035 | -fno-sanitize=all and -f{,no-}sanitize-recover=all. | |
14036 | * doc/invoke.texi: Document -fno-sanitize=all, | |
14037 | -f{,no-}sanitize-recover=all. Document that | |
14038 | -fsanitize=float-cast-overflow is not enabled | |
14039 | by -fsanitize=undefined. Fix up documentation | |
14040 | of -f{,no-}sanitize-recover. | |
14041 | ||
8992df51 | 14042 | 2015-01-06 Eric Botcazou <ebotcazou@adacore.com> |
14043 | ||
14044 | * config.gcc: Add Visium support. | |
14045 | * configure.ac: Likewise. | |
14046 | * configure: Regenerate. | |
14047 | * doc/extend.texi (interrupt attribute): Add Visium. | |
14048 | * doc/invoke.texi: Document Visium options. | |
14049 | * doc/install.texi: Document Visium target. | |
14050 | * doc/md.texi: Document Visium constraints. | |
14051 | * common/config/visium: New directory. | |
14052 | * config/visium: Likewise. | |
14053 | ||
e377fe09 | 14054 | 2015-01-05 Segher Boessenkool <segher@kernel.crashing.org> |
14055 | ||
14056 | * simplify-rtx.c (simplify_binary_operation_1): Handle more cases | |
14057 | for the "(and X (ior (not X) Y) -> (and X Y)" transform. | |
14058 | ||
87f350e9 | 14059 | 2015-01-05 Segher Boessenkool <segher@kernel.crashing.org> |
14060 | ||
14061 | * combine.c (combine_validate_cost): Do not count the cost of a | |
14062 | split I2 twice. Do not display it twice in the dump, either. | |
14063 | ||
3e83d36a | 14064 | 2015-01-05 Sandra Loosemore <sandra@codesourcery.com> |
14065 | ||
14066 | Revert parts of r219199. | |
14067 | * doc/invoke.texi ([-Wliteral-suffix]): Restore markup on | |
14068 | <inttypes.h>. | |
14069 | ([-Wtraditional]): Restore markup on <limits.h>. | |
14070 | ||
678a4e3e | 14071 | 2015-01-05 Trevor Saunders <tsaunders@mozilla.com> |
14072 | ||
14073 | PR c++/31397 | |
14074 | * doc/invoke.texi: Document -Wsuggest-override. | |
14075 | ||
def3bf8c | 14076 | 2015-01-05 Radovan Obradovic <radovan.obradovic@imgtec.com> |
14077 | ||
14078 | PR rtl-optimization/64287 | |
14079 | * toplev.c (HAVE_epilogue, HAVE_prologue): Provide default. | |
14080 | (process_options): Disable flag_ipa_ra if profiling. | |
14081 | ||
bb6966b7 | 14082 | 2015-01-05 Eric Botcazou <ebotcazou@adacore.com> |
14083 | ||
14084 | * config/nds32/nds32-peephole2.md: Do not mention define_peephole. | |
14085 | ||
14086 | 2015-01-05 Max Filippov <jcmvbkbc@gmail.com> | |
833dfc8b | 14087 | |
14088 | * config/xtensa/xtensa.c (hwloop_optimize, hwloop_fail, | |
14089 | hwloop_pattern_reg, xtensa_doloop_hooks, xtensa_reorg_loops): | |
14090 | put under #if TARGET_LOOPS guard. | |
14091 | ||
e7b4e529 | 14092 | 2015-01-05 Uros Bizjak <ubizjak@gmail.com> |
14093 | ||
14094 | * config/i386/i386.c (output_387_binary_op): Use std::swap. | |
14095 | ||
2ec77a7c | 14096 | 2015-01-05 Oleg Endo <olegendo@gcc.gnu.org> |
14097 | ||
14098 | * rtlanal.c (refers_to_regno_p): Change return value from int to bool. | |
14099 | * rtl.h (refers_to_regno_p): Add overload. | |
14100 | * cse.c: Use it. | |
14101 | * bt-load.c: Likewise. | |
14102 | * combine.c: Likewise. | |
14103 | * df-scan.c: Likewise. | |
14104 | * sched-deps.c: Likewise. | |
14105 | * config/s390/s390.c: Likewise. | |
14106 | * config/m32r/m32r.c: Likewise. | |
14107 | * config/rs6000/spe.md: Likewise. | |
14108 | * config/rs6000/rs6000.c: Likewise. | |
14109 | * config/pa/pa.c: Likewise. | |
14110 | * config/stormy16/stormy16.c: Likewise. | |
14111 | * config/cris/cris.c: Likewise. | |
14112 | * config/arc/arc.md: Likewise. | |
14113 | * config/arc/arc.c: Likewise. | |
14114 | * config/sh/sh.md: Likewise. | |
14115 | * config/sh/sh.c: Likewise. | |
14116 | * config/frv/frv.c: Likewise. | |
14117 | ||
d8a5b688 | 14118 | 2015-01-05 Jakub Jelinek <jakub@redhat.com> |
14119 | ||
ed53cebe | 14120 | PR sanitizer/64265 |
14121 | * gimplify.c (gimplify_function_tree): Add TSAN_FUNC_EXIT internal | |
14122 | call as cleanup of the whole body. | |
14123 | * internal-fn.def (TSAN_FUNC_EXIT): New internal call. | |
14124 | * tsan.c (replace_func_exit): New function. | |
14125 | (instrument_func_exit): Moved earlier. | |
14126 | (instrument_memory_accesses): Adjust TSAN_FUNC_EXIT internal calls. | |
14127 | Call instrument_func_exit if no TSAN_FUNC_EXIT internal calls have | |
14128 | been found. | |
14129 | (tsan_pass): Don't call instrument_func_exit. | |
14130 | * internal-fn.c (expand_TSAN_FUNC_EXIT): New function. | |
14131 | * tree-inline.c (copy_bb): Drop TSAN_FUNC_EXIT internal calls during | |
14132 | inlining. | |
14133 | ||
823a9dd4 | 14134 | PR sanitizer/64344 |
14135 | * ubsan.h (ubsan_instrument_float_cast): Add ARG argument. | |
14136 | * ubsan.c (ubsan_instrument_float_cast): Add ARG argument, pass | |
14137 | it to libubsan handler instead of EXPR. Fold comparisons earlier, | |
14138 | if the result is integer_zerop, return NULL_TREE. | |
14139 | * convert.c (convert_to_integer): Pass expr as ARG. | |
14140 | ||
d8a5b688 | 14141 | PR tree-optimization/64465 |
14142 | * tree-inline.c (redirect_all_calls): During inlining | |
14143 | clean up EH stmts and EH edges if redirect_call_stmt_to_callee | |
14144 | changed the stmt to a non-throwing call. | |
14145 | ||
b9df7353 | 14146 | 2015-01-05 Sandra Loosemore <sandra@codesourcery.com> |
14147 | ||
14148 | * doc/invoke.texi: Fix incorrect uses of @code, @option, @samp, | |
14149 | etc markup throughout the file. | |
14150 | ||
1ae41b1e | 14151 | 2015-01-05 Bernd Edlinger <bernd.edlinger@hotmail.de> |
14152 | ||
14153 | Enable experimental TSAN support for Ada. | |
14154 | * tsan.c (instrument_expr): Handle VIEW_CONVERT_EXPR. | |
14155 | ||
ccf6cffa | 14156 | 2015-01-05 Jakub Jelinek <jakub@redhat.com> |
14157 | ||
14158 | PR tree-optimization/64494 | |
14159 | * tree-ssa-loop-im.c (move_computations_dom_walker::before_dom): Also | |
14160 | clear SSA_NAME_ANTI_RANGE_P flag. | |
14161 | ||
c1fd7731 | 14162 | 2015-01-05 Marek Polacek <polacek@redhat.com> |
14163 | ||
14164 | * doc/extend.texi (Arrays of Length Zero): Add missing comma. | |
14165 | ||
9d2adcd7 | 14166 | 2015-01-05 Jakub Jelinek <jakub@redhat.com> |
14167 | ||
d353bf18 | 14168 | Update copyright years. |
14169 | ||
e3afb61d | 14170 | * gcc.c (process_command): Update copyright notice dates. |
14171 | * gcov-dump.c: Ditto. | |
14172 | * gcov.c: Ditto. | |
14173 | * doc/cpp.texi: Bump @copying's copyright year. | |
14174 | * doc/cppinternals.texi: Ditto. | |
14175 | * doc/gcc.texi: Ditto. | |
14176 | * doc/gccint.texi: Ditto. | |
14177 | * doc/gcov.texi: Ditto. | |
14178 | * doc/install.texi: Ditto. | |
14179 | * doc/invoke.texi: Ditto. | |
14180 | ||
9d2adcd7 | 14181 | * auto-profile.c, auto-profile.h: Fix up Copyright line. |
14182 | ||
a57aa272 | 14183 | 2015-01-04 Sandra Loosemore <sandra@codesourcery.com> |
14184 | ||
14185 | * doc/invoke.texi ([-fsized-deallocation]): Copy-edit to fix | |
14186 | verb tense, etc. | |
14187 | ([-fvtable-verify], [-fvtv-debug]): Likewise. | |
14188 | ([-Wabi]): Likewise. | |
14189 | ([-fmessage-length]): Likewise. | |
14190 | ([-Wsuggest-final-types], [-Wsuggest-final-methods]): Likewise. | |
14191 | ([-Wno-discarded-qualifiers]): Likewise. | |
14192 | ([-Wnodiscarded-array-qualifiers]): Likewise. | |
14193 | ([-Wno-virtual-move-assign]): Likewise. | |
14194 | ([-fsanitize=address], [-fsanitize=thread]): Likewise. | |
14195 | ([-fsanitize=leak], [-fsanitize=undefined]): Likewise. | |
14196 | ([-fsanitize=unreachable], [-fsanitize-recover]): Likewise. | |
14197 | ([-fsanitize-undefined-trap-on-error]): Likewise. | |
14198 | ([-floop-interchange]): Likewise. | |
14199 | ([-ftree-coalesce-inlined-vars]): Likewise. | |
14200 | ([-fvect-cost-model]): Likewise. | |
14201 | ([-flto]): Likewise. | |
14202 | ([--param]): Likewise. | |
14203 | (Spec Files): Likewise. | |
14204 | ([-mstrict-align]): Likewise. | |
14205 | ([-mfix-cortex-a53-835769]): Likewise. | |
14206 | ([-march], [-mtune]): Likewise. | |
14207 | ([-mpic-register]): Likewise. | |
14208 | ([-munaligned-access]): Likewise. | |
14209 | ([-msp8]): Likewise. | |
14210 | (EIND and Devices with more than 128 Ki Bytes of Flash): Likewise. | |
14211 | (AVR Built-in Macros): Likewise. | |
14212 | ([-mpreferred-stack-boundary]): Likewise. | |
14213 | ([-mtune-crtl]): Likewise. | |
14214 | ([-mashf]): Likewise. | |
14215 | ([-mmcu=]): Likewise. | |
14216 | ([-minrt]): Likewise. | |
14217 | ([-maltivec], [-maltivec=be], [-maltivec=le]): Likewise. | |
14218 | ([-mupper-regs]): Likewise. | |
14219 | ([-matomic-model]): Likewise. | |
14220 | ([-mdiv]): Likewise. | |
14221 | ([-mzdcbranch]): Likewise. | |
14222 | ([-mdisable-callt]): Likewise. | |
14223 | ([-msoft-float]): Likewise. | |
14224 | ([-m8byte-align]): Likewise. | |
14225 | ([-fstack-reuse]): Likewise. | |
14226 | ||
8c4cc813 | 14227 | 2015-01-03 Sandra Loosemore <sandra@codesourcery.com> |
14228 | ||
14229 | * doc/invoke.texi ([-fprofile-generate], [-fprofile-use]): | |
14230 | Fix markup, light copy-editing. | |
14231 | ([-fauto-profile]): Rewrite to fix formatting and content | |
14232 | problems. | |
14233 | ||
3c770735 | 14234 | 2015-01-03 Sandra Loosemore <sandra@codesourcery.com> |
14235 | ||
14236 | * doc/invoke.texi ([-fisolate-erroneous-paths-dereference]): | |
14237 | Copy-edit description. | |
14238 | ([-fisolate-erroneous-paths-attribute]): Likewise. | |
14239 | * common.opt (fisolate-erroneous-paths-dereference): | |
14240 | Copy-edit description. | |
14241 | (fisolate-erroneous-paths-attribute): Likewise. | |
14242 | ||
5e5e0098 | 14243 | 2015-01-03 Sandra Loosemore <sandra@codesourcery.com> |
14244 | ||
14245 | * doc/invoke.texi ([-fsemantic-interposition]): Fix typos and | |
14246 | tidy grammar. | |
14247 | ||
8d0a65c4 | 14248 | 2015-01-03 Sandra Loosemore <sandra@codesourcery.com> |
14249 | ||
14250 | * doc/invoke.texi ([-fplan9-extensions]): Add/fix @opindex. | |
14251 | ([-fvtv-debug]): Likewise. | |
14252 | ([-Wc++-compat]): Likewise. | |
14253 | ([-Wc++11-compat]): Likewise. | |
14254 | ([-Wc++14-compat]): Likewise. | |
14255 | ([-Wno-sized-deallocation]): Likewise. | |
14256 | ([-femit-class-debug-always]): Likewise. | |
14257 | ([-femit-struct-debug-detailed]): Likewise. | |
14258 | ([-fno-keep-inline-dllexport]): Likewise. | |
14259 | ([-fira-algorithm]): Likewise. | |
14260 | ([-fira-region]): Likewise. | |
14261 | ([-flra-remat]): Likewise. | |
14262 | ([-fipa-ra]): Likewise. | |
14263 | ([-fhoist-adjacent-loads]): Likewise. | |
14264 | ([-fisolate-erroneous-paths-dereference]): Likewise. | |
14265 | ([-fisolate-erroneous-paths-attribute]): Likewise. | |
14266 | ([-ftree-switch-conversion]): Likewise. | |
14267 | ([-ftree-tail-merge]): Likewise. | |
14268 | ([-ftree-loop-if-convert]): Likewise. | |
14269 | ([-ftree-loop-if-convert-stores]): Likewise. | |
14270 | ([-ftree-loop-distribution]): Likewise. | |
14271 | ([-ftree-loop-distribute-patterns]): Likewise. | |
14272 | ([-flto-compression-level]): Likewise. | |
14273 | ([-flto-report]): Likewise. | |
14274 | ([-flto-report-wpa]): Likewise. | |
14275 | ([-fuse-linker-plugin]): Likewise. | |
14276 | ([-mfix-cortex-a53-835769]): Likewise. | |
14277 | ([-mno-fix-cortex-a53-835769]): Likewise. | |
14278 | ([-mmmx]...[-mno-3dnow]): Remove the -mno- forms from the | |
14279 | explicit listing; add a note to the discussion indicating they | |
14280 | exist. Reorder table to group similar options. Add missing | |
14281 | @opindex entries. Add @need commands throughout the table to | |
14282 | allow it to be split across multiple pages. | |
14283 | ([-m8bit-idiv]): Fix @opindex. | |
14284 | ([-mavx256-split-unaligned-load]): Likewise. | |
14285 | ([-mavx256-split-unaligned-store]): Likewise. | |
14286 | ([-mstack-protector-guard]): Likewise. | |
14287 | ([-mcpu=]): Likewise. | |
14288 | ([-mcpu]): Likewise. | |
14289 | ([-mpointer-size=]): Likewise. | |
14290 | ||
cbd0ca2f | 14291 | 2015-01-03 John David Anglin <danglin@gcc.gnu.org> |
14292 | ||
14293 | * config/pa/pa.md (decrement_and_branch_until_zero): Use `Q' constraint | |
14294 | instead of `m' constraint. Likewise for unnamed movb comparison | |
14295 | patterns using reg_before_reload_operand predicate. | |
14296 | * config/pa/predicates.md (reg_before_reload_operand): Tighten | |
14297 | predicate to reject register index and LO_SUM DLT memory forms | |
14298 | after reload. | |
e7b4e529 | 14299 | |
27f6a8a0 | 14300 | 2015-01-02 Sandra Loosemore <sandra@codesourcery.com> |
14301 | ||
14302 | * doc/invoke.texi (Option Summary): Fix spelling of | |
14303 | -fdevirtualize-at-ltrans. | |
14304 | ([-fdevirtualize]): Fix markup. | |
14305 | ([-fdevirtualize-speculatively]): Fix typo. | |
14306 | ([-fdevirtualize-at-ltrans]): Likewise. Make description less | |
14307 | implementor-speaky. | |
14308 | * common.opt (fdevirtualize-at-ltrans): Likewise. | |
14309 | * ipa-devirt.c: Fix typos in comments throughout the file. | |
14310 | (ipa_devirt): Fix typos in format strings for dump output. | |
14311 | ||
6ed08c42 | 14312 | 2015-01-02 Sandra Loosemore <sandra@codesourcery.com> |
14313 | ||
14314 | * doc/invoke.texi ([-fopt-info]): Fix markup, consolidate | |
14315 | discussion of defaults, light copy-editing. | |
14316 | ||
71f0663f | 14317 | 2015-01-02 Bernd Edlinger <bernd.edlinger@hotmail.de> |
14318 | ||
14319 | * tsan.c (instrument_expr): corrected previous checkin. | |
14320 | ||
831b9bed | 14321 | 2015-01-02 Bernd Edlinger <bernd.edlinger@hotmail.de> |
14322 | ||
14323 | Instrument bit field and unaligned accesses for TSAN. | |
14324 | * sanitizer.def (BUILT_IN_TSAN_READ_RANGE): New built-in function. | |
14325 | (BUILT_IN_TSAN_WRITE_RANGE): New built-in function. | |
14326 | * tsan.c (instrument_expr): Handle COMPONENT_REF and BIT_FIELD_REF. | |
14327 | Use BUILT_IN_TSAN_READ_RANGE and BUILT_IN_TSAN_WRITE_RANGE for | |
14328 | unaligned memory regions. | |
14329 | ||
e64e0023 | 14330 | 2015-01-01 Anthony Green <green@moxielogic.com> |
5e9ac72e | 14331 | |
e64e0023 | 14332 | * config/moxie/predicates.md (moxie_general_movsrc_operand): |
14333 | Restrict move source register offsets to 16 bits. | |
7dfbd804 | 14334 | \f |
e64e0023 | 14335 | Copyright (C) 2015 Free Software Foundation, Inc. |
7dfbd804 | 14336 | |
14337 | Copying and distribution of this file, with or without modification, | |
14338 | are permitted in any medium without royalty provided the copyright | |
14339 | notice and this notice are preserved. |