]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ChangeLog
re PR c++/56481 (endless loop compiling a C++ file)
[thirdparty/gcc.git] / gcc / ChangeLog
CommitLineData
ba96cdfb
JG
12013-02-28 James Greenhalgh <james.greenhalgh@arm.com>
2
3 * config/aarch64/aarch64.c
4 (aarch64_float_const_representable): Remove unused variable.
5
6f549691
JG
62013-02-28 James Greenhalgh <james.greenhalgh@arm.com>
7
8 * config/aarch64/aarch64.c (aarch64_mangle_type): Make static.
9
af55e82d
JG
102013-02-28 James Greenhalgh <james.greenhalgh@arm.com>
11
12 * config/aarch64/aarch64-builtins.c
13 (aarch64_init_simd_builtins): Make static.
14
1df3f464
JG
152013-02-28 James Greenhalgh <james.greenhalgh@arm.com>
16
17 * config/aarch64/aarch64.c
18 (aarch64_simd_make_constant): Make static.
19
f8f42513
MJ
202013-02-28 Martin Jambor <mjambor@suse.cz>
21
22 * tree-sra.c (load_assign_lhs_subreplacements): Do not put replacements
23 with no initialization to the RHS of debug statements.
24
b48b3fc4
MJ
252013-02-28 Martin Jambor <mjambor@suse.cz>
26
27 PR tree-optimization/56294
28 * tree-sra.c (analyze_access_subtree): Create replacement declarations.
29 Adjust dumping.
30 (get_access_replacement): Do not call create_access_replacement.
31 Assert a replacement exists.
32 (get_repl_default_def_ssa_name): Create the replacement declaration
33 itself.
34
c3ae224c
RR
352013-02-28 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
36
37 * config/arm/arm.c (arm_output_mi_thunk): Call final_start_function and
38 final_end_function.
39
45fa0eef
MP
402013-02-28 Marek Polacek <polacek@redhat.com>
41
42 PR rtl-optimization/56466
43 * loop-unroll.c (unroll_and_peel_loops): Call fix_loop_structure
44 if we're changing a loop.
45 (peel_loops_completely): Likewise.
46
502c067d
PC
472013-02-28 Paolo Carlini <paolo.carlini@oracle.com>
48
49 PR c++/55813
50 * doc/invoke.texi ([-Wctor-dtor-privacy]): Complete.
51
ff24afc8
GJL
522013-02-28 Georg-Johann Lay <avr@gjlay.de>
53
54 PR target/56445
55 * config/avr/avr.c (avr_init_builtins): Use 'n' instead of empty
56 macro parameters with: FX_FTYPE_FX, FX_FTYPE_FX_INT, INT_FTYPE_FX,
57 INTX_FTYPE_FX, FX_FTYPE_INTX.
58 * config/avr/builtins.def: Adjust respective DEF_BUILTIN.
59
c7b1fc1b
GJL
602013-02-28 Georg-Johann Lay <avr@gjlay.de>
61
62 * avr/avr-mcus.def (ata5272, ata5505, attiny1634, ata6285)
63 (ata6286, atmega8a, atmega48pa, ata5790, ata5790n, ata5795)
64 (atmega164pa, atmega165pa, atmega168pa, atmega16hva, atmega16hvb)
65 (atmega16hvbrevb, atmega16m1, atmega16u4, atmega26hvg, atmega32a)
66 (atmega32a, atmega3250pa, atmega3290pa, atmega32c1, atmega32m1)
67 (atmega32u4, atmega32u6, atmega64a, atmega6490a, atmega6490p)
68 (atmega64c1, atmega64m1, atmega64rfa2, atmega64rfr2, atmega32hvb)
69 (atmega32hvbrevb, atmega16hva2, atmega48hvf, at90pwm161)
70 (atmega128a, atmega1284, atmxt112sl, atmxt224, atmxt224e)
71 (atmxt336s, atxmega16a4u, atxmega16c4, atxmega32a4u, atxmega32c4)
72 (atxmega32e5, atxmega64a3u, atxmega64a4u, atxmega64b1, atxmega64b3)
73 (atxmega64c3, atxmega64d4, atxmega128a3u, atxmega128b1)
74 (atxmega128b3, atxmega128c3, atxmega128d4, atmxt540s, atmxt540sreva)
75 (atxmega192a3u, atxmega192c3, atxmega256a3u, atxmega256c3)
76 (atxmega384c3, atxmega384d3, atxmega128a4u): New AVR_MCU.
77 (avrxmega6): Increase max flash segments from 5 to 6.
78 * config/avr/t-multilib: Regenerate.
79 * config/avr/avr-tables.opt: Regenerate.
80 * doc/avr-mmcu.texi: Regenerate.
81
4a0e3cfe
GJL
822013-02-28 Georg-Johann Lay <avr@gjlay.de>
83
84 * config/avr/avr.h (device_to_arch): Rename to device_to_ld.
85 (avr_device_to_arch): Rename to avr_device_to_ld.
86 (avr_device_to_as): New prototype.
87 (EXTRA_SPEC_FUNCTIONS): Add device_to_as.
88 (ASM_SPEC): Use device_to_as to get -mmcu= and -mno-skip-bug=.
89 * config/avr/driver-avr.c (avr_device_to_as): New.
90 (avr_device_to_arch): Rename to avr_device_to_ld.
91
97785e52
JJ
922013-02-27 Jakub Jelinek <jakub@redhat.com>
93
3f292312
JJ
94 PR middle-end/56461
95 * tree-vect-data-refs.c (vect_permute_load_chain): Avoid using copy
96 method on dr_chain and result_chain.
97
a344216b
JJ
98 PR middle-end/56461
99 * tree-ssa-loop-niter.c (maybe_lower_iteration_bound): Call
100 pointer_set_destroy on not_executed_last_iteration.
101
f121ad02
JJ
102 PR middle-end/56461
103 * tree-vect-loop.c (vectorizable_reduction): Release vect_defs
104 vector.
105
307f83a3
JJ
106 PR middle-end/56461
107 * ipa-pure-const.c (propagate): Use FOR_EACH_FUNCTION instead of
108 FOR_EACH_DEFINED_FUNCTION when freeing state.
109
e19624ee
JJ
110 PR middle-end/56461
111 * df-scan.c (df_insn_delete): Use df_scan_free_mws_vec before
112 pool_free.
113 (df_insn_rescan_debug_internal): Use df_scan_free_mws_vec before
114 overwriting it.
115
90e709fd
JJ
116 PR middle-end/56461
117 * ipa-cp.c (decide_whether_version_node): Call vec_free on
118 known_aggs[i].items and release known_aggs vector.
119
97785e52
JJ
120 PR middle-end/56461
121 * ipa-reference.c (propagate): Free node_info even for alias nodes.
122
1232013-02-27 Edgar E. Iglesias <edgar.iglesias@gmail.com>
bbb3a9e2 124
97785e52
JJ
125 * config/microblaze/microblaze.c (microblaze_emit_compare):
126 Use xor for EQ/NE comparisions.
127 * config/microblaze/microblaze.md (cstoresf4): Add constraints
128 (cbranchsf4): Adjust operator to comparison_operator.
bbb3a9e2 129
6fa5e0ed
JJ
1302013-02-27 Jakub Jelinek <jakub@redhat.com>
131
132 PR middle-end/56461
133 * tree-flow.h (edge_var_map_vector): Change into va_heap, vl_embed
134 vector.
135 * tree-ssa.c (redirect_edge_var_map_add): Use vec_safe_reserve and
136 vec_safe_push, always update *slot.
137 (redirect_edge_var_map_clear): Use vec_free.
138 (redirect_edge_var_map_dup): Use vec_safe_copy and vec_safe_reserve.
139 (free_var_map_entry): Use vec_free.
140 * tree-cfgcleanup.c (remove_forwarder_block_with_phi): Use
141 FOR_EACH_VEC_SAFE_ELT instead of FOR_EACH_VEC_ELT.
142
436a956a
AB
1432013-02-27 Andrey Belevantsev <abel@ispras.ru>
144
145 PR middle-end/45472
436a956a
AB
146 * sel-sched-ir.c (merge_expr): Also change vinsn of merged expr
147 when the may_trap_p bit of the exprs being merged differs.
436a956a
AB
148 Reorder tests for speculativeness in the logical and operator.
149
f5c2caca
JJ
1502013-02-27 Jakub Jelinek <jakub@redhat.com>
151
0fcb564b
JJ
152 * incpath.c (add_standard_paths): Use reconcat instead of concat
153 where appropriate and avoid leaking memory.
154
dc357798
JJ
155 * opts.h: Include obstack.h.
156 (opts_concat): New prototype.
157 (opts_obstack): New declaration.
158 * opts.c (opts_concat): New function.
159 (opts_obstack): New variable.
160 (init_options_struct): Call gcc_init_obstack on opts_obstack.
161 (finish_options): Use opts_concat instead of concat
162 and XOBNEWVEC instead of XNEWVEC.
163 * opts-common.c (generate_canonical_option, decode_cmdline_option,
164 generate_option): Likewise.
165 * Makefile.in (OPTS_H): Depend on $(OBSTACK_H).
166 * lto-wrapper.c (main): Call gcc_init_obstack on opts_obstack.
167
f5c2caca
JJ
168 PR target/56455
169 * stmt.c (expand_switch_as_decision_tree_p): If flag_pic
170 and ASM_OUTPUT_ADDR_DIFF_ELT isn't defined, return true.
171
d0163673
JJ
1722013-02-26 Jakub Jelinek <jakub@redhat.com>
173
174 PR middle-end/56461
175 * lra-spills.c (lra_spill): Free spill_hard_reg at the end.
176
b5ad2b8e
JR
1772013-02-26 Joern Rennecke <joern.rennecke@embecosm.com>
178
179 * config/arm/arm.c (const_ok_for_dimode_op): Back out last change.
180 (arm_block_move_unaligned_straight): Likewise.
181 (arm_adjust_block_mem): Likewise.
182
9b639e2c
JR
1832013-02-26 Joern Rennecke <joern.rennecke@embecosm.com>
184
185 PR target/48901
186 * config/lm32/lm32.c (gen_int_relational): Remove unused variables
187 temp, cond and label.
188 * config/lm32/lm32.md (ashlsi3): Remove unused variable one.
189
e13a0ccb
JR
190 PR target/52500
191 * config/c6x/c6x.c (dbx_register_map): Change to unsigned.
192 * config/c6x/c6x.h (dbx_register_map): Update declaration.
193
fbe4f171
JR
194 PR target/52501
195 * config/cr16/cr16-protos.h: Move end of RTX_CODE guard below end
196 of prologue/epilogue functions.
197
ae006543
JR
198 PR target/52550
199 * config/tilegx/tilegx.c (tilegx_expand_prologue):
200 Remove unused variable cfa_offset.
201 * config/tilepro/tilepro.c (tilepro_expand_prologue): Likewise.
202
c81369fa
JR
203 PR target/54639
204 * config/mn10300/mn10300.c (mn10300_expand_epilogue): Avoid offset
205 type promotion to unsigned.
206
f8a8fea7
JR
207 PR target/54640
208 * config/arm/arm.c (const_ok_for_dimode_op): Make code consistent
209 for HOST_WIDE_INT of 32 bit / same size as int.
210 (arm_block_move_unaligned_straight): Likewise.
211 (arm_adjust_block_mem): Likewise.
212
f8be5169
JR
213 PR target/54662
214 * config/mep/t-mep (mep-pragma.o): Use ALL_COMPILERFLAGS instead of
215 ALL_CFLAGS.
216
f1ad3354
MP
2172013-02-26 Marek Polacek <polacek@redhat.com>
218
219 PR tree-optimization/56426
220 * tree-ssa-loop.c (tree_ssa_loop_init): Always call
221 scev_initialize.
222
a6af0f42
RB
2232013-02-26 Richard Biener <rguenther@suse.de>
224
225 PR target/56444
226 * config/mn10300/mn10300.c (mn10300_scan_for_setlb_lcc): Remove
227 unused variable loops.
228
aca43c6c
JJ
2292013-02-26 Jakub Jelinek <jakub@redhat.com>
230
cecbe5d9
JJ
231 PR tree-optimization/56448
232 * fold-const.c (operand_equal_p) <case tcc_reference>: Don't look at
233 TREE_SIDE_EFFECTS if flags contain OEP_CONSTANT_ADDRESS_OF.
234 Clear OEP_CONSTANT_ADDRESS_OF from flags before recursing on second or
235 later operands of the references, or even first operand for
236 INDIRECT_REF, TARGET_MEM_REF or MEM_REF.
237
aca43c6c
JJ
238 PR tree-optimization/56443
239 * tree-vect-stmts.c (get_vectype_for_scalar_type_and_size): For
240 overaligned types, pass TYPE_UNSIGNED (scalar_type) as second argument
241 to type_for_mode langhook.
242
53e2e141
MT
2432013-02-25 Matt Turner <mattst88@gmail.com>
244
245 * doc/invoke.texi: Document r4700.
246
259ee451
RB
2472013-02-25 Richard Biener <rguenther@suse.de>
248
249 PR tree-optimization/56175
250 * tree-ssa-forwprop.c (hoist_conversion_for_bitop_p): New predicate,
251 split out from ...
252 (simplify_bitwise_binary): ... here. Also guard the conversion
253 of (type) X op CST to (type) (X op ((type-x) CST)) with it.
254
6d65e8f1
CM
2552013-02-25 Catherine Moore <clm@codesourcery.com>
256
257 Revert:
258 2013-02-24 Catherine Moore <clm@codesourcery.com>
259 Maciej W. Rozycki <macro@codesourcery.com>
260 Tom de Vries <tom@codesourcery.com>
261 Nathan Sidwell <nathan@codesourcery.com>
262 Iain Sandoe <iain@codesourcery.com>
263 Nathan Froyd <froydnj@codesourcery.com>
264 Chao-ying Fu <fu@mips.com>
265 * doc/extend.texi: (micromips, nomicromips, nocompression):
266 Document new function attributes.
267 * doc/invoke.texi (minterlink-compressed, mmicromips,
268 m14k, m14ke, m14kec): Document new options.
269 (minterlink-mips16): Update documentation.
270 * doc/md.texi (ZC, ZD): Document new constraints.
271 * configure.ac (gcc_cv_as_micromips): Check if linker
272 supports the .set micromips directive.
273 * configure: Regenerate.
274 * config.in: Regenerate.
275 * config/mips/mips-tables.opt: Regenerate.
276 * config/mips/micromips.md: New file.
277 * constraints.md (ZC, AD): New constraints.
278 * config/mips/predicates.md (movep_src_register): New predicate.
279 (movep_src_operand): New predicate.
280 (non_volatile_mem_operand): New predicate.
281 * config/mips/mips.md (multimem): New type.
282 (length): Differentiate between 17-bit and 18-bit branch offsets.
283 (MOVEP1, MOVEP2): New mode iterator.
284 (mov_<load>l): Use ZC constraint.
285 (mov_<load>r): Likewise.
286 (mov_<store>l): Likewise.
287 (mov_<store>r): Likewise.
288 (*branch_equality<mode>_inverted): Add microMIPS support.
289 (*branch_equality<mode>): Likewise.
290 (*jump_absolute): Likewise.
291 (indirect_jump_<mode>): Likewise.
292 (tablejump_<mode>): Likewise.
293 (<optab>_internal): Likewise.
294 (sibcall_internal): Likewise.
295 (sibcall_value_internal): Likewise.
296 (prefetch): Use constraint ZD.
297 * config/mips/mips.opt (minterlink-compressed): New option.
298 (minterlink-mips16): Now an alias for minterlink-compressed.
299 (mmicromips): New option.
300 * config/mips/sync.md (sync_compare_and_swap<mode>): Use ZR constraint.
301 (compare_and_swap_12): Likewise.
302 (sync_add<mode>): Likewise.
303 (sync_<optab>_12): Likewise.
304 (sync_old_<optab>_12): Likewise.
305 (sync_new_<optab>_12): Likewise.
306 (sync_nand_12): Likewise.
307 (sync_old_nand_12): Likewise.
308 (sync_new_nand_12): Likewise.
309 (sync_sub<mode>): Likewise.
310 (sync_old_add<mode>): Likewise.
311 (sync_old_sub<mode>): Likewise.
312 (sync_new_add<mode>): Likewise.
313 (sync_new_sub<mode>): Likewise.
314 (sync_<optab><mode>): Likewise.
315 (sync_old_<optab><mode>): Likewise.
316 (sync_new_<optab><mode>): Likewise.
317 (sync_nand<mode>): Likewise.
318 (sync_old_nand<mode>): Likewise.
319 (sync_new_nand<mode>): Likewise.
320 (sync_lock_test_and_set<mode>): Likewise.
321 (test_and_set_12): Likewise.
322 (atomic_compare_and_swap<mode>): Likewise.
323 (atomic_exchange<mode>_llsc): Likewise.
324 (atomic_fetch_add<mode>_llsc): Likewise.
325 * config/mips/mips-cpus.def (m14kc, m14k): New processors.
326 * config/mips/mips-protos.h (umips_output_save_restore): New prototype.
327 (umips_save_restore_pattern_p): Likewise.
328 (umips_load_store_pair_p): Likewise.
329 (umips_output_load_store_pair): Likewise.
330 (umips_movep_target_p): Likewise.
331 (umips_12bit_offset_address_p): Likewise.
332 * config/mips/mips.c (MIPS_MAX_FIRST_STEP): Update for microMIPS.
333 (mips_base_mips16): Rename this...
334 (mips_base_compression_flags): ...to this. Update all uses.
335 (mips_attribute_table): Add micromips, nomicromips and nocompression.
336 (mips_mips16_decl_p): Delete.
337 (mips_nomips16_decl_p): Delete.
338 (mips_get_compress_on_flags): New function.
339 (mips_get_compress_off_flags): New function.
340 (mips_get_compress_mode): New function.
341 (mips_get_compress_on_name): New function.
342 (mips_get_compress_off_name): New function.
343 (mips_insert_attributes): Support multiple compression types.
344 (mips_merge_decl_attributes): Likewise.
345 (umips_12bit_offset_address_p): New function.
346 (mips_start_function_definition): Emit .set micromips directive.
347 (mips_call_may_need_jalx_p): New function.
348 (mips_function_ok_for_sibcall): Add microMIPS support.
349 (mips_print_operand_punctuation): Support short delay slots and
350 compact jumps.
351 (umips_swm_mask, umips_swm_encoding): New.
352 (umips_build_save_restore): New function.
353 (mips_for_each_saved_gpr_and_fpr): Add microMIPS support.
354 (was_mips16_p): Remove.
355 (old_compression_mode): New.
356 (mips_set_compression_mode): New function.
357 (mips_set_current_function): Add microMIPS support.
358 (mips_option_override): Likewise.
359 (umips_save_restore_pattern_p): New function.
360 (umips_output_save_restore): New function.
361 (umips_load_store_pair_p_1): New function.
362 (umips_load_store_pair_p): New function.
363 (umips_output_load_store_pair_1): New function.
364 (umips_output_load_store_pair): New function.
365 (umips_movep_target_p) New function.
366 (mips_prepare_pch_save): Add microMIPS support.
367 * config/mips/mips.h (TARGET_COMPRESSION): New.
368 (TARGET_CPU_CPP_BUILTINS): Update macro
369 to use new compression flags and to support microMIPS.
370 (MIPS_ISA_LEVEL_SPEC): Add m14k processors.
371 (MIPS_ARCH_FLOAT_SPEC): Likewise.
372 (ISA_HAS_LWXS): Include TARGET_MICROMIPS.
373 (ISA_HAS_LOAD_DELAY): Exclude TARGET_MICROMIPS.
374 (ASM_SPEC): Support mmicromips and mno-micromips.
375 (M16STORE_REG_P): New macro.
376 (MIPS_CALL): Support TARGET_MICROMIPS.
377 (MICROMIPS_J): New macro.
378 (mips_base_mips16): Rename this...
379 (mips_base_compression_flags): ...to this.
380 (UMIPS_12BIT_OFFSET_P): New macro.
381 * config/mips/t-sde: (MULTILIB_OPTIONS): Add microMIPS.
382 (MULTILIB_DIRNAMES): Likewise.
383
5e5df392
TV
3842013-02-25 Tom de Vries <tom@codesourcery.com>
385
386 PR rtl-optimization/56131
387 * insn-notes.def (INSN_NOTE_BASIC_BLOCK): Update comment.
388 * cfgrtl.c (delete_insn): Don't reorder NOTE_INSN_DELETED_LABEL and
389 NOTE_INSN_BASIC_BLOCK if BLOCK_FOR_INSN == NULL.
390
3fdb53c1
TB
3912013-02-25 Tobias Burnus <burnus@net-b.de>
392
393 * doc/invoke.texi (-fsanitize=): Move from optimization
394 to debugging options.
395
ed358aea
AB
3962013-02-25 Andrey Belevantsev <abel@ispras.ru>
397
398 * sched-deps.c (sched_analyze_insn): Fix typo in comment.
399
f45e9053
AB
4002013-02-25 Andrey Belevantsev <abel@ispras.ru>
401 Alexander Monakov <amonakov@ispras.ru>
402
403 PR middle-end/56077
404 * sched-deps.c (sched_analyze_insn): When reg_pending_barrier,
405 flush pending lists also on non-jumps. Adjust comment.
406
6941b508
CM
4072013-02-24 Catherine Moore <clm@codesourcery.com>
408 Maciej W. Rozycki <macro@codesourcery.com>
409 Tom de Vries <tom@codesourcery.com>
410 Nathan Sidwell <nathan@codesourcery.com>
411 Iain Sandoe <iain@codesourcery.com>
412 Nathan Froyd <froydnj@codesourcery.com>
413 Chao-ying Fu <fu@mips.com>
414
415 * doc/extend.texi: (micromips, nomicromips, nocompression):
416 Document new function attributes.
417 * doc/invoke.texi (minterlink-compressed, mmicromips,
418 m14k, m14ke, m14kec): Document new options.
419 (minterlink-mips16): Update documentation.
420 * doc/md.texi (ZC, ZD): Document new constraints.
421 * configure.ac (gcc_cv_as_micromips): Check if linker
422 supports the .set micromips directive.
423 * configure: Regenerate.
424 * config.in: Regenerate.
425 * config/mips/mips-tables.opt: Regenerate.
426 * config/mips/micromips.md: New file.
427 * constraints.md (ZC, AD): New constraints.
428 * config/mips/predicates.md (movep_src_register): New predicate.
429 (movep_src_operand): New predicate.
430 (non_volatile_mem_operand): New predicate.
431 * config/mips/mips.md (multimem): New type.
432 (length): Differentiate between 17-bit and 18-bit branch offsets.
433 (MOVEP1, MOVEP2): New mode iterator.
3fdb53c1 434 (mov_<load>l): Use ZC constraint.
6941b508
CM
435 (mov_<load>r): Likewise.
436 (mov_<store>l): Likewise.
437 (mov_<store>r): Likewise.
438 (*branch_equality<mode>_inverted): Add microMIPS support.
439 (*branch_equality<mode>): Likewise.
440 (*jump_absolute): Likewise.
441 (indirect_jump_<mode>): Likewise.
442 (tablejump_<mode>): Likewise.
443 (<optab>_internal): Likewise.
444 (sibcall_internal): Likewise.
445 (sibcall_value_internal): Likewise.
446 (prefetch): Use constraint ZD.
447 * config/mips/mips.opt (minterlink-compressed): New option.
448 (minterlink-mips16): Now an alias for minterlink-compressed.
449 (mmicromips): New option.
450 * config/mips/sync.md (sync_compare_and_swap<mode>): Use ZR constraint.
451 (compare_and_swap_12): Likewise.
452 (sync_add<mode>): Likewise.
453 (sync_<optab>_12): Likewise.
454 (sync_old_<optab>_12): Likewise.
455 (sync_new_<optab>_12): Likewise.
456 (sync_nand_12): Likewise.
457 (sync_old_nand_12): Likewise.
458 (sync_new_nand_12): Likewise.
459 (sync_sub<mode>): Likewise.
460 (sync_old_add<mode>): Likewise.
461 (sync_old_sub<mode>): Likewise.
462 (sync_new_add<mode>): Likewise.
463 (sync_new_sub<mode>): Likewise.
464 (sync_<optab><mode>): Likewise.
465 (sync_old_<optab><mode>): Likewise.
466 (sync_new_<optab><mode>): Likewise.
467 (sync_nand<mode>): Likewise.
468 (sync_old_nand<mode>): Likewise.
469 (sync_new_nand<mode>): Likewise.
470 (sync_lock_test_and_set<mode>): Likewise.
471 (test_and_set_12): Likewise.
472 (atomic_compare_and_swap<mode>): Likewise.
473 (atomic_exchange<mode>_llsc): Likewise.
474 (atomic_fetch_add<mode>_llsc): Likewise.
475 * config/mips/mips-cpus.def (m14kc, m14k): New processors.
476 * config/mips/mips-protos.h (umips_output_save_restore): New prototype.
477 (umips_save_restore_pattern_p): Likewise.
478 (umips_load_store_pair_p): Likewise.
479 (umips_output_load_store_pair): Likewise.
480 (umips_movep_target_p): Likewise.
481 (umips_12bit_offset_address_p): Likewise.
482 * config/mips/mips.c (MIPS_MAX_FIRST_STEP): Update for microMIPS.
483 (mips_base_mips16): Rename this...
484 (mips_base_compression_flags): ...to this. Update all uses.
485 (mips_attribute_table): Add micromips, nomicromips and nocompression.
486 (mips_mips16_decl_p): Delete.
487 (mips_nomips16_decl_p): Delete.
3fdb53c1 488 (mips_get_compress_on_flags): New function.
6941b508
CM
489 (mips_get_compress_off_flags): New function.
490 (mips_get_compress_mode): New function.
491 (mips_get_compress_on_name): New function.
492 (mips_get_compress_off_name): New function.
493 (mips_insert_attributes): Support multiple compression types.
494 (mips_merge_decl_attributes): Likewise.
495 (umips_12bit_offset_address_p): New function.
496 (mips_start_function_definition): Emit .set micromips directive.
497 (mips_call_may_need_jalx_p): New function.
498 (mips_function_ok_for_sibcall): Add microMIPS support.
499 (mips_print_operand_punctuation): Support short delay slots and
500 compact jumps.
501 (umips_swm_mask, umips_swm_encoding): New.
502 (umips_build_save_restore): New function.
503 (mips_for_each_saved_gpr_and_fpr): Add microMIPS support.
504 (was_mips16_p): Remove.
505 (old_compression_mode): New.
506 (mips_set_compression_mode): New function.
507 (mips_set_current_function): Add microMIPS support.
508 (mips_option_override): Likewise.
509 (umips_save_restore_pattern_p): New function.
510 (umips_output_save_restore): New function.
511 (umips_load_store_pair_p_1): New function.
512 (umips_load_store_pair_p): New function.
513 (umips_output_load_store_pair_1): New function.
514 (umips_output_load_store_pair): New function.
515 (umips_movep_target_p) New function.
516 (mips_prepare_pch_save): Add microMIPS support.
517 * config/mips/mips.h (TARGET_COMPRESSION): New.
518 (TARGET_CPU_CPP_BUILTINS): Update macro
519 to use new compression flags and to support microMIPS.
520 (MIPS_ISA_LEVEL_SPEC): Add m14k processors.
521 (MIPS_ARCH_FLOAT_SPEC): Likewise.
522 (ISA_HAS_LWXS): Include TARGET_MICROMIPS.
523 (ISA_HAS_LOAD_DELAY): Exclude TARGET_MICROMIPS.
524 (ASM_SPEC): Support mmicromips and mno-micromips.
525 (M16STORE_REG_P): New macro.
526 (MIPS_CALL): Support TARGET_MICROMIPS.
527 (MICROMIPS_J): New macro.
528 (mips_base_mips16): Rename this...
529 (mips_base_compression_flags): ...to this.
530 (UMIPS_12BIT_OFFSET_P): New macro.
531 * config/mips/t-sde: (MULTILIB_OPTIONS): Add microMIPS.
532 (MULTILIB_DIRNAMES): Likewise.
533
cdebbc6d
JJ
5342013-02-24 Jakub Jelinek <jakub@redhat.com>
535
536 PR target/52555
537 * target-globals.c (save_target_globals): For init_reg_sets and
538 target_reinit remporarily set this_fn_optabs to this_target_optabs.
539
18c63565
JG
5402013-02-22 James Grennahlgh <james.greenhalgh@arm.com>
541
542 * config/aarch64/aarch64-simd-builtins.def: Add copyright header.
543 * config/aarch64/t-aarch64
544 (aarch64-builtins.o): Depend on aarch64-simd-builtins.def.
545
2194f7a2
VM
5462013-02-22 Vladimir Makarov <vmakarov@redhat.com>
547
548 PR inline-asm/56148
549 * lra-constraints.c (process_alt_operands): Reload operand
550 conflicting with earlier clobber only if no more other conflicting
551 operands.
552
7d613735
JJ
5532013-02-22 Jakub Jelinek <jakub@redhat.com>
554
555 PR sanitizer/56393
556 * config/gnu-user.h (LIBASAN_EARLY_SPEC): Link in libasan_preinit.o
557 if not linking a shared library.
558
ac8d93a7
SL
5592013-02-22 Seth LaForge <sethml@google.com>
560
561 * config.gcc (arm*-*-eabi*): Treat arm*eb as big-endian.
562
e0237780
GY
5632013-02-22 Greta Yorsh <Greta.Yorsh@arm.com>
564
3fdb53c1
TB
565 * config/arm/arm.md (split for extendsidi): Update condition.
566 (zero_extend<mode>di2,extend<mode>di2): Add an alternative.
567 * config/arm/iterators.md (qhs_extenddi_cstr): Likewise.
568 (qhs_zextenddi_cstr): Likewise.
e0237780 569
d7fde18c
JJ
5702013-02-21 Jakub Jelinek <jakub@redhat.com>
571
be63b77d
JJ
572 PR middle-end/56420
573 * expmed.c (EXACT_POWER_OF_2_OR_ZERO_P): Do subtraction in uhwi, to
574 avoid signed wrapping.
575 (expand_mult): Handle properly multiplication by
576 ((dword_type) -1) << (BITS_PER_WORD - 1). Improve multiplication by
577 ((dword_type) 1) << (BITS_PER_WORD - 1). Avoid undefined behavior
578 in the compiler if coeff is HOST_WIDE_INT_MIN.
579 (expand_divmod): Don't make ext_op1 static, change it's type to
580 uhwi. Avoid undefined behavior in -INTVAL (op1).
581
d7fde18c
JJ
582 PR rtl-optimization/50339
583 * lower-subreg.h (struct lower_subreg_choices): Add splitting_ashiftrt
584 field.
585 * lower-subreg.c (compute_splitting_shift): Handle ASHIFTRT.
586 (compute_costs): Call compute_splitting_shift also for ASHIFTRT
587 into splitting_ashiftrt field.
588 (find_decomposable_shift_zext, resolve_shift_zext): Handle also
589 ASHIFTRT.
590 (dump_choices): Fix up printing LSHIFTRT choices, print ASHIFTRT
591 choices.
592
6aad4455
AH
5932013-02-20 Aldy Hernandez <aldyh@redhat.com>
594
595 PR middle-end/56108
596 * trans-mem.c (execute_tm_mark): Do not expand transactions that
597 are sure to go irrevocable.
598
38fe784d
HPN
5992013-02-21 Hans-Peter Nilsson <hp@axis.com>
600
601 * doc/rtl.texi (vec_concat, vec_duplicate): Mention that
602 scalars are valid operands.
603
0fd44da3
MJ
6042013-02-21 Martin Jambor <mjambor@suse.cz>
605
606 PR tree-optimization/56310
607 * ipa-cp.c (agg_replacements_to_vector): New parameter index, copy
608 only matching indices and non-negative final offsets.
609 (intersect_aggregates_with_edge): Pass src_idx to
610 agg_replacements_to_vector. Pass src_idx insstead of index to
611 intersect_with_agg_replacements.
612
7a92038b
MJ
6132013-02-21 Martin Jambor <mjambor@suse.cz>
614
615 * ipa-cp.c (good_cloning_opportunity_p): Dump the real threshold
616 instead of hard-wired defaults.
617
c0da9c37
MR
6182013-02-21 Maciej W. Rozycki <macro@codesourcery.com>
619
620 * doc/invoke.texi (MIPS Options): Update documentation of the
621 floating-point multiply-accumulate instruction restrictions.
622
d247ea0c 6232013-02-21 Kostya Serebryany <kcc@google.com>
7df59255
KS
624
625 * config/i386/i386.c (ix86_asan_shadow_offset): Use 0x7fff8000 as
626 asan_shadow_offset on x86_64 linux.
627
22deefcb
RB
6282013-02-21 Richard Biener <rguenther@suse.de>
629
630 PR tree-optimization/56415
631 Revert
632 2013-02-11 Richard Biener <rguenther@suse.de>
633
634 PR tree-optimization/56273
635 * tree-vrp.c (simplify_cond_using_ranges): Disable for the
636 first VRP run.
637
7bcc6e75
JJ
6382013-02-21 Jakub Jelinek <jakub@redhat.com>
639
a0ad148f
JJ
640 PR bootstrap/56258
641 * doc/invoke.texi (-fdump-rtl-pro_and_epilogue): Use @item
642 instead of @itemx.
643
7bcc6e75
JJ
644 PR inline-asm/56405
645 * expr.c (expand_expr_real_1) <case TARGET_MEM_REF, MEM_REF>: Don't
646 use movmisalign or extract_bit_field for EXPAND_MEMORY modifier.
647
a0a7b611
JH
6482013-02-20 Jan Hubicka <jh@suse.cz>
649
650 PR tree-optimization/56265
651 * ipa-prop.c (ipa_make_edge_direct_to_target): Fixup callgraph when target is
652 referenced for firs ttime.
653
c0e50f72
RB
6542013-02-20 Richard Biener <rguenther@suse.de>
655
656 * tree-call-cdce.c (tree_call_cdce): Do not remove unused locals.
657 * tree-ssa-forwprop.c (ssa_forward_propagate_and_combine): Likewise.
658 * tree-ssa-dce.c (perform_tree_ssa_dce): Likewise.
659 * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Do
660 not return anything.
661 (rename_ssa_copies): Do not remove unused locals.
662 * tree-ssa-ccp.c (do_ssa_ccp): Likewise.
663 * tree-ssanames.c (pass_release_ssa_names): Remove unused
664 locals first.
665 * passes.c (execute_function_todo): Do not schedule unused locals
666 removal if cleanup_tree_cfg did something.
667 * tree-ssa-live.c (remove_unused_locals): Dump statistics
668 about the number of removed locals.
669
a52ca739
RB
6702013-02-20 Richard Biener <rguenther@suse.de>
671
672 PR tree-optimization/56398
673 * tree-vect-loop-manip.c (adjust_debug_stmts): Skip
674 SSA default defs.
675
ec9c9d1b
MJ
6762013-02-20 Martin Jambor <mjambor@suse.cz>
677
678 PR tree-optimization/55334
679 * ipa-cp.c (initialize_node_lattices): Disable IPA-CP through and to
680 restricted pointers to arrays.
681
e91c8ed6
RB
6822013-02-20 Richard Biener <rguenther@suse.de>
683 Jakub Jelinek <jakub@redhat.com>
684
685 PR tree-optimization/56396
686 * tree-ssa-ccp.c (n_const_val): New static variable.
687 (get_value): Return NULL for SSA names we don't have a lattice
688 entry for.
689 (ccp_initialize): Initialize n_const_val.
690 * tree-ssa-copy.c (n_copy_of): New static variable.
691 (init_copy_prop): Initialize n_copy_of.
692 (get_value): Return NULL_TREE for SSA names we don't have a
693 lattice entry for.
694
3d916479
MJ
6952013-02-20 Martin Jambor <mjambor@suse.cz>
696
697 * ipa-cp.c (initialize_node_lattices): Fix dumping condition.
698
71a86758
RB
6992013-02-20 Richard Biener <rguenther@suse.de>
700
701 * genpreds.c (write_lookup_constraint): Do not compare first
702 letter of the constraint again.
703
79836a12
RB
7042013-02-20 Richard Biener <rguenther@suse.de>
705
706 * tree-ssa-loop-ivopts.c (alloc_use_cost_map): Use bitmap_count_bits
707 and ceil_log2.
708 (get_use_iv_cost): Terminate hashtable walk when coming across
709 an empty entry.
710
bbe4fb2c
IZ
7112013-02-20 Igor Zamyatin <igor.zamyatin@intel.com>
712
713 * config/i386/i386.c (initial_ix86_tune_features): Turn on fp
714 reassociation for avx2 targets.
715
c77f83d5 7162012-02-19 Edgar E. Iglesias <edgar.iglesias@gmail.com>
79836a12 717
c77f83d5
EI
718 * config/microblaze/microblaze.c: microblaze_has_clz = 0
719 Add version check for v8.10.a to enable microblaze_has_clz
720 * config/microblaze/microblaze.h: Add TARGET_HAS_CLZ as combined
721 version and TARGET_PATTERN_COMPARE check
722 * config/microblaze/microblaze.md: New clzsi2 instruction
3fdb53c1 723
959434e6
EI
7242012-02-19 Edgar E. Iglesias <edgar.iglesias@gmail.com>
725
726 * config/microblaze/microblaze.md (call_value_intern): Check symbol is
727 function before branching.
728
242387fa
AB
7292012-02-19 Andrey Belevantsev <abel@ispras.ru>
730
731 * sel-sched-dump.c (dump_insn_rtx_flags): Explicitly set
732 DUMP_INSN_RTX_UID.
733 (dump_insn_rtx_1): Pass PATTERN (insn) to str_pattern_slim.
734
b4979ab9
AB
7352012-02-19 Andrey Belevantsev <abel@ispras.ru>
736
737 PR middle-end/55889
738
739 * sel-sched.c: Include ira.h.
740 (implicit_clobber_conflict_p): New function.
741 (moveup_expr): Use it.
742 * Makefile.in (sel-sched.o): Depend on ira.h.
743
24d63016
RB
7442013-02-19 Richard Biener <rguenther@suse.de>
745
746 PR tree-optimization/56384
747 * tree-ssa-sccvn.h (struct vn_phi_s): Add type member.
748 (vn_hash_type): Split out from ...
749 (vn_hash_constant_with_type): ... here.
750 * tree-ssa-sccvn.c (vn_phi_compute_hash): Use vn_hash_type.
751 (vn_phi_eq): Compare types from vn_phi_s structure.
752 (vn_phi_lookup): Populate vn_phi_s type.
753 (vn_phi_insert): Likewise.
754
a475fd3d
JJ
7552013-02-19 Jakub Jelinek <jakub@redhat.com>
756
47cc28f5
JJ
757 PR tree-optimization/56350
758 * tree-vect-loop.c (vectorizable_reduction): If orig_stmt, return false
759 if haven't found reduction or nested cycle operand, rather than
760 asserting we must find it.
761
a475fd3d
JJ
762 PR tree-optimization/56381
763 * tree-ssa-pre.c (create_expression_by_pieces): Fix up last argument
764 to fold_build3.
765
7662013-02-18 Aldy Hernandez <aldyh@redhat.com>
135204dd
AH
767 Jakub Jelinek <jakub@redhat.com>
768
769 PR target/52555
770 * genopinit.c (raw_optab_handler): Use this_fn_optabs.
771 (swap_optab_enable): Same.
772 (init_all_optabs): Use argument instead of global.
773 * tree.h (struct tree_optimization_option): New field
774 target_optabs.
775 * expr.h (init_all_optabs): Add argument to prototype.
776 (TREE_OPTIMIZATION_OPTABS): New.
777 (save_optabs_if_changed): Protoize.
778 * optabs.h: Declare this_fn_optabs.
779 * optabs.c (save_optabs_if_changed): New.
780 Declare this_fn_optabs.
781 (init_optabs): Add argument to init_all_optabs() call.
782 * function.c (invoke_set_current_function_hook): Handle per
783 function optabs.
784 * function.h (struct function): New field optabs.
785 * config/mips/mips.c (mips_set_mips16_mode): Handle when
786 optimization_current_node has changed.
787 * target-globals.h (save_target_globals_default_opts): Protoize.
788 * target-globals.c (save_target_globals_default_opts): New.
789
3f587ca3
JDA
7902013-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
791
792 PR target/56347
793 * config/pa/pa.c (pa_conditional_register_usage): On HP-UX, mark
794 registers %fr12 and %fr12R as call used.
ceaca33e
JDA
795
796 PR target/56214
797 * config/pa/predicates.md (base14_operand): Except for BLKmode, QImode
798 and HImode, require all displacements to be an integer multiple of their
799 mode size.
800 * config/pa/pa.c (pa_legitimate_address_p): For REG+BASE addresses,
801 only allow QImode and HImode when reload is in progress and strict is
802 true. Likewise for symbolic addresses. Use base14_operand to check
803 displacements in REG+BASE addresses.
804
fe0b4796
RB
8052013-02-18 Richard Biener <rguenther@suse.de>
806
807 PR tree-optimization/56366
808 * tree-vect-loop.c (get_initial_def_for_induction): Properly
809 handle sign-conversion of outer-loop initial induction value.
810
6aaf596b
RB
8112013-02-18 Richard Biener <rguenther@suse.de>
812
73db8ff1 813 PR middle-end/56349
6aaf596b
RB
814 * cfghooks.c (merge_blocks): If we merge a latch into another
815 block adjust references to it.
816 * cfgloop.c (flow_loops_find): Reset latch before recomputing it.
817 (verify_loop_structure): Verify that a recorded latch is in fact
818 a latch.
819
5e97dfb6
RB
8202013-02-18 Richard Biener <rguenther@suse.de>
821
822 PR tree-optimization/56321
823 * tree-ssa-reassoc.c (propagate_op_to_single_use): Properly
824 order SSA name release and virtual operand unlinking.
825
825527e8
EI
8262013-02-17 Edgar E. Iglesias <edgar.iglesias@gmail.com>
827
828 * config/microblaze/microblaze.md (save_stack_block): Define.
829 (restore_stack_block): Likewise.
830
debd11d9
EI
8312013-02-16 Edgar E. Iglesias <edgar.iglesias@gmail.com>
832
833 * config/microblaze/linux.h (TARGET_SUPPORTS_PIC): Define as 1.
834 * config/microblaze/microblaze.h (TARGET_SUPPORTS_PIC): Define as 1.
835 * config/microblaze/microblaze.c (microblaze_option_override):
836 Bail out early for PIC modes when target does not support PIC.
837
8ec77be0
EI
8382013-02-16 Edgar E. Iglesias <edgar.iglesias@gmail.com>
839
840 * config/microblaze/microblaze.c (microblaze_asm_trampoline_template):
841 Replace with a microblaze version.
842 (microblaze_trampoline_init): Adapt for microblaze.
843 * gcc/config/microblaze/microblaze.h (TRAMPOLINE_SIZE): Adapt for
844 microblaze.
845
b41288b3
JJ
8462013-02-16 Jakub Jelinek <jakub@redhat.com>
847 Dodji Seketeli <dodji@redhat.com>
848
849 PR asan/56330
850 * asan.c (get_mem_refs_of_builtin_call): White space and style
851 cleanup.
852 (instrument_mem_region_access): Do not forget to always put
853 instrumentation of the of 'base' and 'base + len' in a "if (len !=
854 0) statement, even for cases where either 'base' or 'base + len'
855 are not instrumented -- because they have been previously
856 instrumented. Simplify the logic by putting all the statements
857 instrument 'base + len' inside a sequence, and then insert that
858 sequence right before the current insertion point. Then, to
859 instrument 'base + len', just get an iterator on that statement.
860 And do not forget to update the pointer to iterator the function
861 received as argument.
862
47918951
VM
8632013-02-15 Vladimir Makarov <vmakarov@redhat.com>
864
865 PR rtl-optimization/56348
866 * lra-assigns.c (reload_pseudo_compare_func): Prefer bigger pseudos.
867
3fb7c699
SB
8682013-02-15 Steven Bosscher <steven@gcc.gnu.org>
869
870 * graph.c (start_graph_dump): Print dumpfile base as digraph label.
871 (clean_graph_dump_file): Pass base to start_graph_dump.
872
576fe41a
RH
8732013-02-14 Richard Henderson <rth@redhat.com>
874
875 PR target/55941
876 * lower-subreg.c (simple_move): Check dest mode instead of src mode.
877
bb3accfa
SB
8782013-02-14 Steven Bosscher <steven@gcc.gnu.org>
879
880 * collect2-aix.h: Define F_LOADONLY.
881
03143140
RB
8822013-02-14 Richard Biener <rguenther@suse.de>
883
884 PR lto/50494
885 * varasm.c (output_constant_def_1): Get the decl representing
886 the constant as argument.
887 (output_constant_def): Wrap output_constant_def_1.
888 (make_decl_rtl): Use output_constant_def_1 with the decl
889 representing the constant.
890 (build_constant_desc): Optionally re-use a decl already
891 representing the constant.
892 (tree_output_constant_def): Adjust.
893
8fb06726
DS
8942013-02-14 Dodji Seketeli <dodji@redhat.com>
895
896 Fix an asan crash
897 * asan.c (instrument_builtin_call): Really put the length of the
898 second source argument into src1_len.
899
c4bfe8bf
JJ
9002013-02-13 Jakub Jelinek <jakub@redhat.com>
901
902 * asan.c (create_cond_insert_point): Add create_then_fallthru_edge
903 argument. If it is false, don't create edge from then_bb to
904 fallthru_bb.
905 (insert_if_then_before_iter): Pass true to it.
906 (build_check_stmt): Pass false to it.
907 (transform_statements): Flush hash table only on extended basic
908 block boundaries, rather than at the beginning of every bb.
909 Don't flush hash table on nonfreeing_call_p calls.
910 * tree-flow.h (nonfreeing_call_p): New prototype.
911 * tree-ssa-phiopt.c (nonfreeing_call_p): No longer static.
912
7afe2801
DM
9132013-02-13 David S. Miller <davem@davemloft.net>
914
915 * expmed.c (expand_shift_1): Only strip scalar integer subregs.
916
70cc3288
VM
9172013-02-13 Vladimir Makarov <vmakarov@redhat.com>
918
919 PR target/56184
920 * ira.c (max_regno_before_ira): Move from ...
921 (ira): ... here.
922 (fix_reg_equiv_init): Use max_regno_before_ira instead of
923 vec_safe_length.
924
6422242b
JJ
9252013-02-13 Jakub Jelinek <jakub@redhat.com>
926
927 * config/i386/i386.c (ix86_asan_shadow_offset): Revert last change.
928
976a81ee
RB
9292013-02-13 Richard Biener <rguenther@suse.de>
930
931 PR lto/56295
932 * gimple-streamer-out.c (output_gimple_stmt): Undo wrapping
933 globals in MEM_REFs.
934
c1874a87
RB
9352013-02-13 Richard Biener <rguenther@suse.de>
936
937 * loop-init.c (loop_optimizer_init): Clear loop state when
938 re-initializing preserved loops.
939 * loop-unswitch.c (unswitch_single_loop): Return whether
940 we unswitched the loop. Do not verify loop state here.
941 (unswitch_loops): When we unswitched a loop discover new
942 loops.
943
b4ab7d34
KS
9442013-02-13 Kostya Serebryany <kcc@google.com>
945
946 * config/i386/i386.c: Use 0x7fff8000 as asan_shadow_offset on x86_64
947 linux.
948 * sanitizer.def: Rename __asan_init to __asan_init_v1.
949
bdcbe80c
DS
9502013-02-12 Dodji Seketeli <dodji@redhat.com>
951
952 Avoid instrumenting duplicated memory access in the same basic block
953 * Makefile.in (asan.o): Add new dependency on hash-table.h
954 * asan.c (struct asan_mem_ref, struct mem_ref_hasher): New types.
955 (asan_mem_ref_init, asan_mem_ref_get_end, get_mem_ref_hash_table)
956 (has_stmt_been_instrumented_p, empty_mem_ref_hash_table)
957 (free_mem_ref_resources, has_mem_ref_been_instrumented)
958 (has_stmt_been_instrumented_p, update_mem_ref_hash_table)
959 (get_mem_ref_of_assignment): New functions.
960 (get_mem_refs_of_builtin_call): Extract from
961 instrument_builtin_call and tweak a little bit to make it fit with
962 the new signature.
963 (instrument_builtin_call): Use the new
964 get_mem_refs_of_builtin_call. Use gimple_call_builtin_p instead
965 of is_gimple_builtin_call.
966 (instrument_derefs, instrument_mem_region_access): Insert the
967 instrumented memory reference into the hash table.
968 (maybe_instrument_assignment): Renamed instrument_assignment into
969 this, and change it to advance the iterator when instrumentation
970 actually happened and return true in that case. This makes it
971 homogeneous with maybe_instrument_assignment, and thus give a
972 chance to callers to be more 'regular'.
973 (transform_statements): Clear the memory reference hash table
974 whenever we enter a new BB, when we cross a function call, or when
975 we are done transforming statements. Use
976 maybe_instrument_assignment instead of instrumentation. No more
977 need to special case maybe_instrument_assignment and advance the
978 iterator after calling it; it's now handled just like
979 maybe_instrument_call. Update comment.
980
4861a1f7
RB
9812013-02-13 Richard Biener <rguenther@suse.de>
982
983 * config/mn10300/mn10300.c (mn10300_scan_for_setlb_lcc):
984 Fix loop discovery code.
985
1c86bd80
VM
9862013-02-12 Vladimir Makarov <vmakarov@redhat.com>
987
988 PR inline-asm/56148
989 * lra-constraints.c (process_alt_operands): Match early clobber
70cc3288 990 operand with itself. Check conflicts with earlyclobber only if
1c86bd80
VM
991 the operand is not reloaded. Prefer to reload conflicting operand
992 if earlyclobber and matching operands are the same.
993
7cbda518
RB
9942013-02-12 Richard Biener <rguenther@suse.de>
995
996 PR lto/56297
997 * lto-streamer-out.c (write_symbol): Do not output symbols
998 for hard register variables.
999
e68a4ef6
GJL
10002013-02-12 Georg-Johann Lay <avr@gjlay.de>
1001
1002 PR target/54222
1003 * config/avr/avr-dimode.md (umulsidi3, mulsidi3): New expanders.
1004 (umulsidi3_insn, mulsidi3_insn): New insns.
1005
2597da22
CL
10062013-02-12 Christophe Lyon <christophe.lyon@linaro.org>
1007
1008 * config/arm/arm-protos.h (struct cpu_vec_costs): New struct type.
1009 (struct tune_params): Add vec_costs field.
1010 * config/arm/arm.c (arm_builtin_vectorization_cost)
1011 (arm_add_stmt_cost): New functions.
1012 (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST)
1013 (TARGET_VECTORIZE_ADD_STMT_COST): Define.
1014 (arm_default_vec_cost): New struct of type cpu_vec_costs.
1015 (arm_slowmul_tune, arm_fastmul_tune, arm_strongarm_tune)
1016 (arm_xscale_tune, arm_9e_tune, arm_v6t2_tune, arm_cortex_tune)
1017 (arm_cortex_a15_tune, arm_cortex_a5_tune, arm_cortex_a9_tune)
1018 (arm_v6m_tune, arm_fa726te_tune): Define new vec_costs field.
1019
43320568
RB
10202013-02-12 Richard Biener <rguenther@suse.de>
1021
1022 PR lto/56295
1023 * gimple-streamer-in.c (input_gimple_stmt): Strip MEM_REFs off
1024 decls again if possible.
1025
a011aa39
RB
10262013-02-12 Richard Biener <rguenther@suse.de>
1027
1028 PR middle-end/56288
1029 * tree-ssa.c (verify_ssa_name): Fix check, move
1030 SSA_NAME_IN_FREE_LIST check up.
1031
6da26889
JJ
10322013-02-12 Jakub Jelinek <jakub@redhat.com>
1033 Steven Bosscher <steven@gcc.gnu.org>
1034
1035 PR rtl-optimization/56151
1036 * optabs.c (add_equal_note): Don't return 0 if target is a MEM,
1037 equal to op0 or op1, and last_insn pattern is CODE operation
1038 with MEM dest and one of the operands matches that MEM.
1039
f80e0faf
ST
10402013-02-11 Sriraman Tallam <tmsriramgoogle.com>
1041
1042 * doc/extend.texi: Document Function Multiversioning and "default"
1043 parameter string to target attribute.
1044 * config/i386/i386.c (get_builtin_code_for_version): Return 0 if
1045 target attribute parameter is "default".
1046 (ix86_compare_version_priority): Remove checks for target attribute.
1047 (ix86_mangle_function_version_assembler_name): Change error to sorry.
1048 Remove check for target attribute equal to NULL. Add assert.
1049 (ix86_generate_version_dispatcher_body): Change error to sorry.
1050
6c59ffd1
IS
10512013-02-11 Iain Sandoe <iain@codesourcery.com>
1052 Jack Howarth <howarth@bromo.med.uc.edu>
1053 Patrick Marlier <patrick.marlier@gmail.com>
1054
1055 PR libitm/55693
1056 * config/darwin.h: Replace ENDFILE_SPEC with TM_DESTRUCTOR and
1057 define ENDFILE_SPEC as TM_DESTRUCTOR.
1058 * config/i386/darwin.h (ENDFILE_SPEC): Use TM_DESTRUCTOR.
1059
6a52ccb3
AP
10602013-02-11 Alexander Potapenko <glider@google.com>
1061 Jack Howarth <howarth@bromo.med.uc.edu>
1062 Jakub Jelinek <jakub@redhat.com>
1063
1064 PR sanitizer/55617
1065 * config/darwin.c (cdtor_record): Rename ctor_record.
1066 (sort_cdtor_records): Rename sort_ctor_records.
1067 (finalize_dtors): New routine to sort destructors by
1068 priority before use in assemble_integer.
1069 (machopic_asm_out_destructor): Use finalize_dtors if needed.
1070
b63fe007
UB
10712013-02-11 Uros Bizjak <ubizjak@gmail.com>
1072
1073 PR rtl-optimization/56275
1074 * simplify-rtx.c (avoid_constant_pool_reference): Check that
1075 offset is non-negative and less than cmode size before
1076 calling simplify_subreg.
1077
8e89b5b5
RB
10782013-02-11 Richard Biener <rguenther@suse.de>
1079
1080 PR tree-optimization/56264
1081 * cfgloop.h (fix_loop_structure): Adjust prototype.
1082 * loop-init.c (fix_loop_structure): Return the number of
1083 newly discovered loops.
1084 * tree-cfgcleanup.c (repair_loop_structures): When new loops
1085 are discovered, do a full loop-closed SSA rewrite.
1086
b4a4b56d
RB
10872013-02-11 Richard Biener <rguenther@suse.de>
1088
1089 PR tree-optimization/56273
1090 * tree-vrp.c (simplify_cond_using_ranges): Disable for the
1091 first VRP run.
1092 (check_array_ref): Fix missing newline in dumps.
1093 (search_for_addr_array): Likewise.
1094
0c885229
DE
10952013-02-09 David Edelsohn <dje.gcc@gmail.com>
1096
1097 * config/rs6000/aix61.h (OS_MISSING_ALTIVEC): Undefine.
1098
59ac9a55
JJ
10992013-02-09 Jakub Jelinek <jakub@redhat.com>
1100
1101 PR target/56256
1102 * config/rs6000/rs6000.h (ASSEMBLER_DIALECT): Define.
1103
25bb0bb5
VM
11042013-02-08 Vladimir Makarov <vmakarov@redhat.com>
1105
1106 PR rtl-optimization/56246
0c885229 1107 * lra-constraints.c (simplify_operand_subreg): Try to reuse
25bb0bb5
VM
1108 reload pseudo.
1109 * lra.c (lra): Clear lra_optional_reload_pseudos only when all
1110 constraints are satisfied.
1111
a698cc03
JL
11122013-02-08 Jeff Law <law@redhat.com>
1113
1114 PR debug/53948
1115 * emit-rtl.c (reg_is_parm_p): New function.
1116 * regs.h (reg_is_parm_p): New prototype.
1117 * ira-conflicts.c (ira_build_conflicts): Allow parameters in
1118 callee-clobbered registers.
1119
e1122ddd
MM
11202013-02-08 Michael Meissner <meissner@linux.vnet.ibm.com>
1121
1122 PR target/56043
1123 * config/rs6000/rs6000.c (rs6000_builtin_vectorized_libmass):
1124 If there is no implicit builtin declaration, just return NULL.
1125
19c5f6e6
UB
11262013-02-08 Uros Bizjak <ubizjak@gmail.com>
1127
1128 * config/i386/sse.md (FMAMODEM): New mode iterator.
1129 (fma<mode>4, fms<mode>4, fnma<mode>4, fnms<mode>4): Use FMAMODEM
1130 mode iterator. Do not use TARGET_SSE_MATH in insn constraint.
1131
2480f2ca 11322013-02-08 Uros Bizjak <ubizjak@gmail.com>
76ef61fb 1133
2480f2ca
UB
1134 * config/i386/gnu-user.h (TARGET_CAN_SPLIT_STACK): Define only
1135 when HAVE_GAS_CFI_PERSONALITY_DIRECTIVE is set.
1136 * config/i386/gnu-user64.h (TARGET_CAN_SPLIT_STACK): Ditto.
1137
11382013-02-08 Edgar E. Iglesias <edgar.iglesias@gmail.com>
1139
1140 * config.gcc (microblaze*-linux*): Add TARGET_BIG_ENDIAN_DEFAULT.
1141 (microblaze*-*-elf): Likewise.
1142 * config/microblaze/linux.h: Add -mbig-endian / -mlittle-endian to
1143 LINK_SPEC.
1144 * config/microblaze/microblaze-c.c: Add builtin defines for
1145 _LITTLE_ENDIAN and _BIG_ENDIAN.
1146 * config/microblaze/microblaze.h: Add TARGET_ENDIAN_DEFAULT and
1147 add to TARGET_DEFAULT flags.
76ef61fb 1148 Expand ASM_SPEC and LINK_SPEC.
2480f2ca
UB
1149 Update BYTES_BIG_ENDIAN and WORDS_BIG_ENDIAN.
1150 * config/microblaze/microblaze.md: Update extendsidi2 and
1151 movdi_internal instructions to use low-order / high-order reg
1152 print_operands.
1153 * config/microblaze/microblaze.opt: Add mbig-endian and mlittle-endian
1154 options and inversemask / mask of LITTLE_ENDIAN.
1155 * config/microblaze/t-microblaze: Expand multilib options to
1156 include mlittle-endian (le) and update exceptions patterns.
1157
600a5961
JJ
11582013-02-08 Jakub Jelinek <jakub@redhat.com>
1159
5df81313
JJ
1160 PR rtl-optimization/56195
1161 * lra-constraints.c (get_reload_reg): Don't reuse regs
1162 if they have smaller mode than requested, if they have
1163 wider mode than requested, try to return a SUBREG.
1164
600a5961
JJ
1165 PR tree-optimization/56250
1166 * fold-const.c (extract_muldiv_1) <case NEGATE_EXPR>: Don't optimize
1167 if type is unsigned and code isn't MULT_EXPR.
1168
ff544649
GJL
11692013-02-08 Georg-Johann Lay <avr@gjlay.de>
1170
1171 PR tree-optimization/56064
1172 * fixed-value.c (fixed_from_double_int): Sign/zero extend payload
1173 bits according to mode.
1174 * fixed-value.h (fixed_from_double_int)
1175 (const_fixed_from_double_int): Adjust comments.
1176
e45cde98
RB
11772013-02-08 Richard Biener <rguenther@suse.de>
1178
1179 PR lto/56231
1180 * lto-streamer.h (struct data_in): Remove current_file, current_line
1181 and current_col members.
1182 * lto-streamer-out.c (lto_output_location): Stream changed bits
1183 en-block for efficiency.
1184 * lto-streamer-in.c (clear_line_info): Remove.
1185 (lto_input_location): Cache current file, line and column
1186 globally via local statics. Read changed bits en-block.
1187 (input_function): Do not call clear_line_info.
1188 (lto_read_body): Likewise.
1189 (lto_input_toplevel_asms): Likewise.
1190
c1ca73d8
MM
11912013-02-08 Michael Matz <matz@suse.de>
1192
1193 PR tree-optimization/52448
1194 * tree-ssa-phiopt.c (struct name_to_bb): Add phase member.
1195 (nt_call_phase): New static.
1196 (add_or_mark_expr): Only mark accesses with newer phase than any
1197 call seen.
1198 (nonfreeing_call_p): New.
1199 (nt_init_block): Update nt_call_phase, mark blocks as visited.
1200 (nt_fini_block): Keep blocks marked as visited.
1201 (get_non_trapping): Initialize nt_call_phase, and reset aux pointer.
1202
57548aa2
RB
12032013-02-08 Richard Biener <rguenther@suse.de>
1204
1205 * ira.c (ira): Free broken dominator information.
1206
8e10366f
UB
12072013-02-08 Uros Bizjak <ubizjak@gmail.com>
1208
1209 * config/i386/i386.c (ix86_spill_class): Use INTEGER_CLASS_P macro.
1210
f64fb0fa
MP
12112013-02-08 Marek Polacek <polacek@redhat.com>
1212
8e10366f 1213 * cfgloop.c (verify_loop_structure): Add more checking of headers.
f64fb0fa 1214
0375167b
RB
12152013-02-08 Richard Biener <rguenther@suse.de>
1216
1217 PR middle-end/56181
1218 * cfgloop.h (flow_loops_find): Adjust.
1219 (bb_loop_header_p): Declare.
1220 * cfgloop.c (bb_loop_header_p): New function split out from ...
1221 (flow_loops_find): ... here. Adjust function signature,
1222 support incremental loop structure update.
1223 (verify_loop_structure): Cleanup. Verify a loop is a loop.
1224 * cfgloopmanip.c (fix_loop_structure): Move ...
1225 * loop-init.c (fix_loop_structure): ... here.
1226 (apply_loop_flags): Split out from ...
1227 (loop_optimizer_init): ... here.
1228 (fix_loop_structure): Use apply_loop_flags. Use flow_loops_find
1229 in incremental mode, only remove dead loops here.
1230
85d768f3
GJL
12312013-02-08 Georg-Johann Lay <avr@gjlay.de>
1232
1233 PR target/54222
1234 * config/avr/avr.md (unspec) <UNSPEC_ROUND>: Add.
1235 * config/avr/avr-fixed.md (ALL4QA, ALL124QA): New mode iterators.
1236 (round<mode>3, round<mode>3_const): New expanders for fixed-mode.
1237 (*round<mode>3.libgcc): New insns for fixed-modes.
1238 * config/avr/builtins.def (ABSxx): Use a non-NULL LIBNAME.
1239 (ROUNDxx, COUNTLSxx, BITSxx, xxBITS): New DEF_BUILTINs.
1240 (ROUNDFX, COUNTLSFX, ABSFX): New DEF_BUILTINs.
1241 * config/avr/stdfix.h (absFX, bitsFX, FXbits): Remove inline
1242 implementations. Define to __builtin_avr_absFX,
1243 __builtin_avr_bitsFX, __builtin_avr_FXbits, respectively.
1244 (roundFX, countlsFX): Define to __builtin_avr_roundFX,
1245 __builtin_avr_countlsFX, respectively.
1246 * config/avr/avr-c.c (target.h): Include it.
1247 (enum avr_builtin_id): New enum.
1248 (avr_resolve_overloaded_builtin): New static function.
1249 (avr_register_target_pragmas): Use it to set
1250 targetm.resolve_overloaded_builtin.
1251 * config/avr/avr.c (avr_init_builtins): Supply myriads of local
1252 tree nodes used by DEF_BUILTIN.
1253 (avr_expand_builtin) <AVR_BUILTIN_ROUNDxx>: Sanity-check them.
1254 (avr_fold_builtin) <AVR_BUILTIN_BITSxx>: Fold to VIEW_COVERT_EXPR.
1255 <AVR_BUILTIN_xxBITS>: Same.
1256
661bc682
RB
12572013-02-08 Richard Biener <rguenther@suse.de>
1258
1259 * cfgloop.c (verify_loop_structure): Properly handle
1260 a loop exiting to another loop header.
1261 * ira-int.h (ira_loops): Remove.
1262 * ira.c (ira_loops): Remove.
1263 (ira): Use loop_optimizer_init and loop_optimizer_finalize.
1264 (do_reload): Use loop_optimizer_finalize.
1265 * ira-build.c (create_loop_tree_nodes): Use get_loops and
1266 number_of_loops to access the loop tree.
1267 (more_one_region_p): Likewise.
1268 (finish_loop_tree_nodes): Likewise.
1269 (rebuild_regno_allocno_maps): Likewise.
1270 (mark_loops_for_removal): Likewise.
1271 (mark_all_loops_for_removal): Likewise.
1272 (remove_unnecessary_regions): Likewise.
1273 (ira_build): Likewise.
1274 * ira-emit.c (setup_entered_from_non_parent_p): Likewise.
1275
0d5049b2
RB
12762013-02-08 Richard Biener <rguenther@suse.de>
1277
1278 * Makefile.in (tree-tailcall.o): Add $(CFGLOOP_H) dependency.
1279 * ipa-pure-const.c (analyze_function): Avoid calling
1280 mark_irreducible_loops twice.
8e10366f 1281 * tree-tailcall.c (tree_optimize_tail_calls_1): Mark loops for fixup.
0d5049b2 1282
499f32e8
DM
12832013-02-07 David S. Miller <davem@davemloft.net>
1284
1285 * dwarf2out.c (based_loc_descr): Perform leaf register remapping
1286 on 'reg'.
1287 * var-tracking.c (vt_add_function_parameter): Test the presence of
1288 HAVE_window_save properly and do not remap argument registers when
1289 we have a leaf function.
1290
6edc3e32
UB
12912013-02-07 Uros Bizjak <ubizjak@gmail.com>
1292
1293 PR bootstrap/56227
1294 * ggc-page.c (ggc_print_statistics): Use HOST_LONG_LONG_FORMAT
1295 instead of "ll".
1296 * config/i386/i386.c (ix86_print_operand): Ditto.
1297
5306401f
VM
12982013-02-07 Vladimir Makarov <vmakarov@redhat.com>
1299
6edc3e32 1300 * lra-constraints.c (process_alt_operands): Fix recently added comment.
5306401f 1301
027ece11
VM
13022013-02-07 Vladimir Makarov <vmakarov@redhat.com>
1303
1304 PR rtl-optimization/56225
1305 * lra-constraints.c (process_alt_operands): Check that reload hard
1306 reg can hold value for strict_low_part.
1307
f980dfdb
JJ
13082013-02-07 Jakub Jelinek <jakub@redhat.com>
1309
1310 PR debug/56154
1311 * dwarf2out.c (dwarf2_debug_hooks): Set end_function hook to
1312 dwarf2out_end_function.
1313 (in_first_function_p, maybe_at_text_label_p,
1314 first_loclabel_num_not_at_text_label): New variables.
1315 (dwarf2out_var_location): In the first function find out
6edc3e32 1316 lowest loclabel_num N where .LVLN is known not to be equal to .Ltext0.
f980dfdb
JJ
1317 (find_empty_loc_ranges_at_text_label, dwarf2out_end_function): New
1318 functions.
1319
73dd3123
EB
13202013-02-07 Eric Botcazou <ebotcazou@adacore.com>
1321
1322 PR rtl-optimization/56178
1323 * cse.c (cse_insn): Do not create a REG_EQUAL note if the source is a
1324 SUBREG of a register. Tidy up related block of code.
1325 * fwprop.c (forward_propagate_and_simplify): Do not create a REG_EQUAL
1326 note if the source is a register or a SUBREG of a register.
1327
e3936f47
JJ
13282013-02-07 Jakub Jelinek <jakub@redhat.com>
1329
1330 PR target/56228
1331 * config/rs6000/rs6000.md (ptrm): New mode attr.
1332 (call_indirect_aix<ptrsize>, call_indirect_aix<ptrsize>_nor11,
1333 call_value_indirect_aix<pttrsize>,
1334 call_value_indirect_aix<pttrsize>_nor11): Use <ptrm> instead of
1335 m in constraints.
1336
d96d674b
MH
13372013-02-07 Michael Haubenwallner <michael.haubenwallner@salomon.at>
1338
1339 * collect2.c (main): Set aix64_flag for -G and -bsvr4 too, disable
1340 if -bnortl. Convert to strcmp and strncmp.
1341
921f2dee
AM
13422013-02-07 Alan Modra <amodra@gmail.com>
1343
1344 PR target/54009
1345 * config/rs6000/rs6000.c (mem_operand_gpr): Check that LO_SUM
1346 addresses won't wrap when offsetting.
1347 (rs6000_secondary_reload): Provide secondary reloads needed for
1348 wrapping LO_SUM addresses.
1349
d09c7dba
TS
13502013-02-06 Thomas Schwinge <thomas@codesourcery.com>
1351
1352 * config/gnu.h (GNU_USER_TARGET_OS_CPP_BUILTINS): Never define
1353 MACH, just __MACH__.
1354
a44bbd48
RB
13552013-02-06 Richard Biener <rguenther@suse.de>
1356
1357 * tracer.c (tracer): Mark loops with LOOPS_NEED_FIXUP
1358 instead of calling fix_loop_structure.
1359
6d840d99
JJ
13602013-02-06 Jakub Jelinek <jakub@redhat.com>
1361
1362 PR middle-end/56217
1363 * omp-low.c (use_pointer_for_field): Return false if
1364 lower_send_shared_vars doesn't generate any copy-out code.
1365
0f33baa9
TV
13662013-02-06 Tom de Vries <tom@codesourcery.com>
1367
1368 PR rtl-optimization/56131
1369 * cfgrtl.c (delete_insn): Use NOTE_BASIC_BLOCK instead of BLOCK_FOR_INSN
1370 to get the bb of a NOTE_INSN_BASIC_BLOCK. Handle the case that the bb
1371 of the label is NULL. Add comment.
1372
11f1e3ab
JJ
13732013-02-05 Jakub Jelinek <jakub@redhat.com>
1374
31502f9f
JJ
1375 * tree.h (struct tree_decl_with_vis): Remove thread_local field.
1376
a74db9bd
JJ
1377 PR sanitizer/55374
1378 * config/gnu-user.h (LIBTSAN_EARLY_SPEC): Define.
1379 (STATIC_LIBTSAN_LIBS): Likewise.
1380 * gcc.c (ADD_STATIC_LIBTSAN_LIBS, LIBTSAN_EARLY_SPEC): Define.
1381 (LIBTSAN_SPEC): Add ADD_STATIC_LIBTSAN_LIBS, if LIBTSAN_EARLY_SPEC
1382 is defined, don't add anything else beyond that.
1383 (SANITIZER_EARLY_SPEC, SANITIZER_SPEC): Define.
1384 (LINK_COMMAND_SPEC): Use them.
1385
11f1e3ab
JJ
1386 PR tree-optimization/56205
1387 * tree-stdarg.c (check_all_va_list_escapes): Return true if
1388 there are any PHI nodes that set non-va_list_escape_vars SSA_NAME
1389 and some va_list_escape_vars SSA_NAME appears in some PHI argument.
1390
14ac6aa2
RB
13912013-02-05 Richard Biener <rguenther@suse.de>
1392
1393 PR tree-optimization/53342
1394 PR tree-optimization/53185
1395 * tree-vectorizer.h (vect_check_strided_load): Remove.
1396 * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Do
1397 not disallow peeling for vectorized strided loads.
1398 (vect_check_strided_load): Make static and simplify.
1399 (vect_analyze_data_refs): Adjust.
1400 * tree-vect-stmts.c (vectorizable_load): Handle peeled loops
1401 correctly when vectorizing strided loads.
1402
6f22445a
RB
14032013-02-05 Richard Biener <rguenther@suse.de>
1404
1405 * doc/install.texi: Refer to ISL, not PPL.
1406
39f9719e
JH
14072013-02-05 Jan Hubicka <jh@suse.cz>
1408
ec4224ac
JH
1409 PR tree-optimization/55789
1410 * params.def (PARAM_EARLY_INLINER_MAX_ITERATIONS): Drop to 1.
1411
14122013-02-05 Jan Hubicka <jh@suse.cz>
1413
1414 PR tree-optimization/55789
39f9719e
JH
1415 * cgraphclones.c (cgraph_remove_node_and_inline_clones): Remove
1416 the dead call anyway.
1417
956d3b33
EB
14182013-02-05 Eric Botcazou <ebotcazou@adacore.com>
1419
1420 PR sanitizer/55374
1421 * config/gnu-user.h (LIBASAN_EARLY_SPEC): Add missing guard.
1422
14232013-02-04 Alexander Potapenko <glider@google.com>
1424 Jack Howarth <howarth@bromo.med.uc.edu>
ae526fe5
AP
1425 Jakub Jelinek <jakub@redhat.com>
1426
1427 PR sanitizer/55617
1428 * config/darwin.c (sort_ctor_records): Stabilized qsort
1429 on constructor priority by using original position.
1430 (finalize_ctors): New routine to sort constructors by
1431 priority before use in assemble_integer.
1432 (machopic_asm_out_constructor): Use finalize_ctors if needed.
1433
7ac3af38
JJ
14342013-02-04 Jakub Jelinek <jakub@redhat.com>
1435
1436 PR libstdc++/54314
1437 * config/i386/winnt.c (i386_pe_assemble_visibility): Don't warn
1438 about visibility on artificial decls.
1439 * config/sol2.c (solaris_assemble_visibility): Likewise.
1440
152689dc
KT
14412013-02-04 Kai Tietz <ktietz@redhat.com>
1442
1443 PR target/56186
1444 * config/i386/i386.c (function_value_ms_64): Add additional valtype
1445 argument and improve checking of return-argument types for 16-byte
1446 modes.
1447 (ix86_function_value_1): Add additional valtype argument on call
1448 of function_value_64.
1449 (return_in_memory_ms_64): Sync 16-byte sized mode handling with
1450 handling infunction_value_64 function.
1451
2b5987b5
MGD
14522013-02-04 Matthew Gretton-Dann <matthew.gretton-dann@linaro.org>
1453
7ac3af38 1454 * reload.c (subst_reloads): Fix DEBUG_RELOAD build issue.
2b5987b5 1455
14597080
RB
14562013-02-04 Richard Biener <rguenther@suse.de>
1457
1458 PR tree-optimization/56188
1459 * tree-ssa-structalias.c (label_visit): Consider case with
1460 initially non-empty points-to set.
1461 (perform_var_substitution): Dump node mapping and clean up.
1462
ed73881e
RG
14632013-02-04 Richard Guenther <rguenther@suse.de>
1464
1465 PR lto/56168
1466 * lto-symtab.c (lto_symtab_merge_decls_1): Make non-builtin
1467 node prevail as last resort.
1468 (lto_symtab_merge_decls): Remove guard on LTRANS here.
6edc3e32 1469 (lto_symtab_prevailing_decl): Builtins are their own prevailing decl.
ed73881e 1470
139a0707
RB
14712013-02-04 Richard Biener <rguenther@suse.de>
1472
1473 PR tree-optimization/56113
1474 * tree-ssa-structalias.c (equiv_class_lookup, equiv_class_add):
1475 Merge into ...
1476 (equiv_class_lookup_or_add): ... this.
1477 (label_visit): Adjust and fix error in previous patch.
1478 (perform_var_substitution): Adjust.
1479
50fe8924
OE
14802013-02-03 Oleg Endo <olegendo@gcc.gnu.org>
1481
1482 * config/sh/divtab.c: Fix formatting and comments throughout the file.
1483 * config/sh/sh4-300.md: Likewise.
1484 * config/sh/sh4a.md: Likewise.
1485 * config/sh/constraints.md: Likewise.
1486 * config/sh/sh.md: Likewise.
1487 * config/sh/netbsd-elf.h: Likewise.
1488 * config/sh/predicates.md: Likewise.
1489 * config/sh/sh-protos.h: Likewise.
1490 * config/sh/ushmedia.h: Likewise.
1491 * config/sh/linux.h: Likewise.
1492 * config/sh/sh.c: Likewise.
1493 * config/sh/superh.h: Likewise.
1494 * config/sh/elf.h: Likewise.
1495 * config/sh/sh4.md: Likewise.
1496 * config/sh/sh.h: Likewise.
1497
1a04ac2b
JDA
14982013-02-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1499
1500 * config/pa/constraints.md: Adjust unused letters. Change "T"
1501 constraint to match_test floating_point_store_memory_operand().
1502 * config/pa/predicates.md (reg_plus_base_memory_operand): New.
1503 (base14_operand): New.
1504 (floating_point_store_memory_operand): New.
1505 (integer_store_memory_operand): Revise to use base14_operand and
1506 reg_plus_base_memory_operand.
1507 (move_dest_operand): Allow symbolic_memory_operands.
1508 (symbolic_memory_operand): Check for LO_SOM.
1509 (symbolic_operand): Change default case to break.
1510 * config/pa/pa.md: Remove unamed DFmode and SFmode patterns to force
1511 CONST_DOUBLE values to be reloaded by putting them into memory when
1512 the destination is a floating point register.
1513 (movdf): Remove code to handle CONST_DOUBLE.
1514 (movsf): Likewise.
1515 (reload_indf_r1): New.
1516 (reload_insf_r1): New.
1517 Consistently use "Q" and "T" constraints with integer and floating
1518 point move instructions, respectively.
1519 (movdi): Remove FAIL.
1520 Change predicate for source operand unamed DImode move from
1521 general_operand to move_src_operand.
1522 (umulsidi3): Change predicate for destination operand to
1523 register_operand.
1524 Likewise for similar unamed patterns.
1525 * config/pa/pa-protos.h (pa_legitimize_reload_address): Declare.
1526 * config/pa/pa.c (pa_symbolic_expression_p): Remove extra parenthesis.
1527 (hppa_legitimize_address): Simplify mask calculation.
1528 (pa_emit_move_sequence): Revised handling of secondary reloads from
1529 REG+D addresses for floating point loads and stores. Directly handle
1530 loading CONST0_RTX (mode) to a floating point register.
1531 (pa_secondary_reload): Handle reloading DF and SFmode constant values
1532 to floating point registers. Don't restrict secondary reloads to
1533 floating point registers to integer modes. Revise some comments and
1534 cleanup some code.
1535 (TARGET_LEGITIMATE_ADDRESS_P): Define.
1536 (pa_legitimate_address_p): New.
1537 (pa_legitimize_reload_address): New.
1538 * config/pa/pa.h (STRICT_REG_OK_FOR_INDEX_P): New.
1539 (STRICT_REG_OK_FOR_BASE_P): New.
1540 (GO_IF_LEGITIMATE_ADDRESS): Delete. Update some related comments.
1541 (LEGITIMIZE_RELOAD_ADDRESS): Revise to use pa_legitimize_reload_address.
1542
3bf65591
DE
15432013-02-03 David Edelsohn <dje.gcc@gmail.com>
1544 Andrew Dixie <andrewd@gentrack.com>
1545
1546 * collect2.c (GCC_CHECK_HDR): Do not scan objects with F_LOADONLY
1547 flag set.
1548
c0a8a3e6
RS
15492013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
1550
1551 * expmed.c (extract_bit_field_1): Pass the full width of the
1552 structure to get_best_reg_extraction_insn.
1553
99113dff
DE
15542013-02-01 David Edelsohn <dje.gcc@gmail.com>
1555
1556 PR target/54601
1557 * configure.ac (use_cxa_atexit): Add AIX.
1558 * configure: Regenerate.
1559
1560 * config/rs6000/aix61.h (STARTFILE_SPEC): Add crtcxa.o.
1561
ddd84654
JJ
15622013-02-01 Jakub Jelinek <jakub@redhat.com>
1563
1564 PR debug/54793
1565 * final.c (need_profile_function): New variable.
1566 (final_start_function): Drop ATTRIBUTE_UNUSED from first argument.
1567 If first of NOTE_INSN_BASIC_BLOCK or NOTE_INSN_FUNCTION_BEG
1568 is only preceeded by NOTE_INSN_VAR_LOCATION or NOTE_INSN_DELETED
1569 notes, targetm.asm_out.function_prologue doesn't emit anything,
1570 HAVE_prologue and profiler should be emitted before prologue,
1571 set need_profile_function instead of emitting it.
1572 (final_scan_insn): If need_profile_function, emit
1573 profile_function on the first NOTE_INSN_BASIC_BLOCK or
1574 NOTE_INSN_FUNCTION_BEG note.
1575
15762013-02-01 Richard Henderson <rth@redhat.com>
749af8ee
RH
1577
1578 * config/rs6000/rs6000.md (smulditi3): New.
1579 (umulditi3): New.
1580
ff2a9d88
RH
1581 * config/alpha/alpha.md (umulditi3): New.
1582
14d52b90
DE
15832013-02-01 David Edelsohn <dje.gcc@gmail.com>
1584
1585 * config/rs6000/xcoff.h (ASM_OUTPUT_ALIGNED_COMMON): Use floor_log2.
1586 (ASM_OUTPUT_ALIGNED_LOCAL): New.
1587
8c7ca45c
RB
15882013-02-01 Richard Biener <rguenther@suse.de>
1589
1590 PR tree-optimization/56113
1591 * tree-ssa-structalias.c (label_visit): Reduce work for
1592 single-predecessor nodes.
1593
9f419393
EB
15942013-02-01 Eric Botcazou <ebotcazou@adacore.com>
1595
1596 * fold-const.c (make_range_step) <TRUTH_NOT_EXPR>: Bail out if the
1597 range isn't testing for zero.
1598
c5f4be84
SB
15992013-01-31 Steven Bosscher <steven@gcc.gnu.org>
1600
1601 PR middle-end/56113
1602 * fwprop.c (fwprop_init): Set up loops without CFG modifications.
1603
dbdbd982
NC
16042013-01-31 Hiroyuki Ono <hiroyuki.ono.jc@renesas.com>
1605 Nick Clifton <nickc@redhat.com>
1606
1607 * config/v850/constraints.md (Q): Define as a memory constraint.
1608 * config/v850/predicates.md (label_ref_operand): New predicate.
1609 (e3v5_shift_operand): New predicate.
1610 (ior_operator): New predicate.
1611 * config/v850/t-v850: Add e3v5 multilib.
1612 * config/v850/v850-protos.h (v850_adjust_insn_length): Prototype.
1613 (v850_gen_movdi): Prototype.
1614 * config/v850/v850.c: Add support for e3v5 architecture.
1615 Rename all uses of TARGET_V850E || TARGET_V850E2_ALL to
1616 TARGET_V850E_UP.
1617 (construct_save_jarl): Add e3v5 long JARL support.
1618 (v850_adjust_insn_length): New function. Adjust length of call
1619 insns when using e3v5 instructions.
1620 (v850_gen_movdi): New function: Generate instructions to move a
1621 DImode value.
1622 * config/v850/v850.h (TARGET_CPU_v850e3v5): Define.
1623 (CPP_SPEC): Define __v850e3v5__ as appropriate.
1624 (TARGET_USE_FPU): Enable for e3v5.
1625 (CONST_OK_FOR_W): New macro.
1626 (ADJUST_INSN_LENGTH): Define.
1627 * config/v850/v850.md (UNSPEC_LOOP): Define.
1628 (attr cpu): Add v850e3v5.
1629 Rename all uses of TARGET_V850E2 to TARGET_V850E2V3_UP.
1630 (movdi): New pattern.
1631 (movdi_internal): New pattern.
1632 (cbranchsf4): Conditionalize on TARGET_USE_FPU.
1633 (cbranchdf4): Conditionalize on TARGET_USE_FPU.
1634 (cstoresf4): Likewise.
1635 (cstoredf4): Likewise.
1636 (insv): New pattern.
1637 (rotlso3_a): New pattern.
1638 (rotlsi3_b): New pattern
1639 (rotlsi3_v850e3v5): New pattern.
1640 (doloop_begin): New pattern.
1641 (fix_loop_counter): New pattern.
1642 (doloop_end): New pattern.
1643 (branch_normal): Add e3v5 long branch support.
1644 (branch_invert): Likewise.
1645 (branch_z_normal): Likewise.
1646 (branch_z_invert): Likewise.
1647 (branch_nz_normal): Likewise.
1648 (branch_nz_invert): Likewise.
1649 (call_internal_short): Add e3v5 register-indirect JARL support.
1650 (call_internal_long): Likewise.
1651 (call_value_internal_short): Likewise.
1652 (call_value_internal_long): Likewise.
1653 * config/v850/v850.opt (mv850e3v5, mv850e2v4): New options.
1654 (mloop): New option.
1655 * config.gcc: Add support for configuring v840e3v5 target.
6edc3e32 1656 * doc/invoke.texi: Document new v850 specific command line options.
dbdbd982 1657
73861a41
PK
16582013-01-31 Paul Koning <ni1d@arrl.net>
1659
1660 PR debug/55059
1661 PR debug/54508
1662 * dwarf2out.c (prune_unused_types_mark): Mark all of parent's
1663 children if parent is a class.
1664 (prune_unused_types_prune): Don't add DW_AT_declaration.
1665
e44978dc
RB
16662013-01-31 Richard Biener <rguenther@suse.de>
1667
1668 PR tree-optimization/56157
1669 * tree-vect-slp.c (vect_get_slp_defs): More thoroughly try to
1670 match up operand with SLP child.
1671
90b10dec
JM
16722013-01-31 Jason Merrill <jason@redhat.com>
1673
04d2dadd 1674 PR debug/54410
90b10dec
JM
1675 * dwarf2out.c (gen_struct_or_union_type_die): Always schedule template
1676 parameters the first time.
1677 (gen_scheduled_generic_parms_dies): Check completeness here.
1678
6e616110
RB
16792013-01-31 Richard Biener <rguenther@suse.de>
1680
1681 PR middle-end/53073
1682 * common.opt (faggressive-loop-optimizations): New flag,
1683 enabled by default.
1684 * doc/invoke.texi (faggressive-loop-optimizations): Document.
1685 * tree-ssa-loop-niter.c (estimate_numbers_of_iterations_loop): Guard
1686 infer_loop_bounds_from_undefined by it.
1687
636f59cf
RB
16882013-01-31 Richard Biener <rguenther@suse.de>
1689
1690 PR tree-optimization/56150
1691 * tree-ssa-loop-manip.c (find_uses_to_rename_stmt): Do not
1692 visit virtual operands.
1693 (find_uses_to_rename_bb): Likewise.
1694
16952013-01-31 Richard Biener <rguenther@suse.de>
fcfa87ac
RB
1696
1697 PR tree-optimization/56150
1698 * tree-ssa-tail-merge.c (gimple_equal_p): Properly handle
1699 mixed store non-store stmts.
1700
32887460
JJ
17012013-01-30 Jakub Jelinek <jakub@redhat.com>
1702
e60e09a0
JJ
1703 PR sanitizer/55374
1704 * gcc.c (LIBASAN_SPEC): Define just to ADD_STATIC_LIBASAN_LIBS if
1705 LIBASAN_EARLY_SPEC is defined.
1706 (LIBASAN_EARLY_SPEC): Define to empty string if not already defined.
1707 (LINK_COMMAND_SPEC): Add LIBASAN_EARLY_SPEC for -fsanitize=address,
1708 before %o.
1709 * config/gnu-user.h (LIBASAN_EARLY_SPEC): Define.
1710
32887460
JJ
1711 PR c++/55742
1712 * config/i386/i386.c (ix86_valid_target_attribute_inner_p): Diagnose
1713 invalid args instead of ICEing on it.
1714 (ix86_valid_target_attribute_tree): Return error_mark_node if
1715 ix86_valid_target_attribute_inner_p failed.
1716 (ix86_valid_target_attribute_p): Return false only if
1717 ix86_valid_target_attribute_tree returned error_mark_node. Allow
1718 target("default") attribute.
1719 (sorted_attr_string): Change argument from const char * to tree,
1720 merge in all target attribute arguments rather than just one.
1721 Formatting fix. Use XNEWVEC instead of xmalloc and XDELETEVEC
1722 instead of free. Avoid using strcat.
1723 (ix86_mangle_function_version_assembler_name): Mangle
1724 target("default") as if no target attribute is present. Adjust
1725 sorted_attr_string caller. Avoid leaking memory. Use XNEWVEC
1726 instead of xmalloc and XDELETEVEC instead of free.
1727 (ix86_function_versions): Don't return true if one of the decls
1728 doesn't have target attribute. If they don't and one of the decls
1729 is DECL_FUNCTION_VERSIONED, report an error. Adjust
1730 sorted_attr_string caller. Use XDELETEVEC instead of free.
1731 (ix86_supports_function_versions): Remove.
1732 (make_name): Fix up formatting.
1733 (make_dispatcher_decl): Remove resolver_name and its initialization.
1734 Avoid leaking memory.
1735 (is_function_default_version): Return true if there is
1736 target("default") attribute rather than no target attribute at all.
1737 (make_resolver_func): Avoid leaking memory.
1738 (ix86_generate_version_dispatcher_body): Likewise.
1739 (TARGET_OPTION_SUPPORTS_FUNCTION_VERSIONS): Remove.
1740 * target.def (supports_function_versions): Remove.
1741 * doc/tm.texi.in (SUPPORTS_FUNCTION_VERSIONS): Remove.
1742 * doc/tm.texi: Regenerated.
1743
73cca0cc
VM
17442013-01-30 Vladimir Makarov <vmakarov@redhat.com>
1745
1746 PR rtl-optimization/56144
1747 * lra-constraints.c (get_reload_reg): Don't reuse reload pseudo
1748 for values with side effects.
1749
11452e7b
RB
17502013-01-30 Richard Biener <rguenther@suse.de>
1751
1752 * sparseset.h (sparseset_bit_p): Use gcc_checking_assert.
1753 (sparseset_pop): Likewise.
1754 * cfganal.c (compute_idf): Likewise. Increase work-stack size
1755 to be able to use quick_push in the worker loop.
1756
01cb1ef5
MP
17572013-01-30 Marek Polacek <polacek@redhat.com>
1758
1759 * cfgcleanup.c (cleanup_cfg): Don't mark affected BBs.
1760
e892936e
RB
17612013-01-30 Richard Biener <rguenther@suse.de>
1762
1763 PR lto/56147
6edc3e32 1764 * lto-symtab.c (lto_symtab_merge_decls_1): Guard DECL_BUILT_IN check.
e892936e 1765
cc06c01d
GJL
17662013-01-30 Georg-Johann Lay <avr@gjlay.de>
1767
1768 PR tree-optimization/56064
1769 * fixed-value.c (fixed_from_double_int): New function.
1770 * fixed-value.h (fixed_from_double_int): New prototype.
1771 (const_fixed_from_double_int): New static inline function.
1772 * fold-const.c (native_interpret_fixed): New static function.
1773 (native_interpret_expr) <FIXED_POINT_TYPE>: Use it.
1774 (can_native_interpret_type_p) <FIXED_POINT_TYPE>: Return true.
1775 (native_encode_fixed): New static function.
1776 (native_encode_expr) <FIXED_CST>: Use it.
1777 (native_interpret_int): Move double_int worker code to...
1778 * double-int.c (double_int::from_buffer): ...this new static method.
1779 * double-int.h (double_int::from_buffer): Prototype it.
1780
d394a308
RB
17812013-01-30 Richard Biener <rguenther@suse.de>
1782
1783 * tree-ssa-structalias.c (final_solutions, final_solutions_obstack):
1784 New pointer-map and obstack.
1785 (init_alias_vars): Allocate pointer-map and obstack.
1786 (delete_points_to_sets): Free them.
1787 (find_what_var_points_to): Cache result.
1788 (find_what_p_points_to): Adjust for changed interface of
1789 find_what_var_points_to.
1790 (compute_points_to_sets): Likewise.
1791 (ipa_pta_execute): Likewise.
1792
20804d96
RO
17932013-01-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1794
1795 * configure.ac (HAVE_AS_SPARC_NOBITS): New test.
1796 * configure: Regenerate.
1797 * config.in: Regenerate.
1798 * config/sparc/sparc.c (sparc_solaris_elf_asm_named_section): Emit
1799 #nobits/#progbits if supported.
1800
a7ad88a2
OE
18012013-01-29 Oleg Endo <olegendo@gcc.gnu.org>
1802
1803 PR target/56121
1804 * config/sh/sh.md (bclr_m2a, bset_m2a, bst_m2a, bld_m2a, bldsign_m2a,
1805 bld_reg, *bld_regqi, band_m2a, bandreg_m2a, bor_m2a, borreg_m2a,
1806 bxor_m2a, bxorreg_m2a): Add satisfies_constraint_K03 condition.
1807
7af79f92
GY
18082013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
1809
91bfca59
OE
1810 * config/arm/cortex-a7.md (cortex_a7_neon, cortex_a7_all): Remove.
1811 (cortex_a7_idiv): Use cortex_a7_both instead of cortex_a7_all.
7af79f92 1812
753bcf7b
GY
18132013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
1814
91bfca59
OE
1815 * config/arm/arm.c (cortexa7_younger): Return true for TYPE_CALL.
1816 * config/arm/cortex-a7.md (cortex_a7_call): Update required units.
753bcf7b 1817
8cbc2ea8
GY
18182013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
1819
91bfca59
OE
1820 * config/arm/arm-protos.h (arm_mac_accumulator_is_result): New
1821 declaration.
1822 * config/arm/arm.c (arm_mac_accumulator_is_result): New function.
1823 * config/arm/cortex-a7.md: New bypasses using
1824 arm_mac_accumulator_is_result.
8cbc2ea8 1825
697a3325
GY
18262013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
1827
91bfca59 1828 * config/arm/cortex-a7.md (cortex_a7_neon_mul): New reservation.
697a3325 1829 (cortex_a7_neon_mla): Likewise.
91bfca59
OE
1830 (cortex_a7_fpfmad): New reservation.
1831 (cortex_a7_fpmacs): Use ffmas and update required units.
1832 (cortex_a7_fpmuld): Update required units and latency.
1833 (cortex_a7_fpmacd): Likewise.
1834 (cortex_a7_fdivs, cortex_a7_fdivd): Likewise.
1835 (cortex_a7_neon). Likewise.
1836 (bypass) Update participating units.
697a3325 1837
29637783
GY
18382013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
1839
91bfca59
OE
1840 * config/arm/arm.md (type): Add ffmas and ffmad to "type" attribute.
1841 * config/arm/vfp.md (fma,fmsub,fnmsub,fnmadd): Change type
1842 from fmac to ffma.
1843 * config/arm/vfp11.md (vfp_farith): Use ffmas.
1844 (vfp_fmul): Use ffmad.
1845 * config/arm/cortex-r4f.md (cortex_r4_fmacs): Use ffmas.
1846 (cortex_r4_fmacd): Use ffmad.
1847 * config/arm/cortex-m4-fpu.md (cortex_m4_fmacs): Use ffmas.
1848 * config/arm/cortex-a9.md (cortex_a9_fmacs): Use ffmas.
1849 (cortex_a9_fmacd): Use ffmad.
1850 * config/arm/cortex-a8-neon.md (cortex_a8_vfp_macs): Use ffmas.
1851 (cortex_a8_vfp_macd): Use ffmad.
1852 * config/arm/cortex-a5.md (cortex_a5_fpmacs): Use ffmas.
1853 (cortex_a5_fpmacd): Use ffmad.
1854 * config/arm/cortex-a15-neon.md (cortex_a15_vfp_macs) Use ffmas.
1855 (cortex_a15_vfp_macd): Use ffmad.
1856 * config/arm/arm1020e.md (v10_fmul): Use ffmas and ffmad.
29637783 1857
2ee8a2d5
JM
18582013-01-29 Jason Merrill <jason@redhat.com>
1859
1860 PR libstdc++/54314
1861 * varasm.c (default_assemble_visibility): Don't warn about
1862 visibility on artificial decls.
1863
78d087bc
RB
18642013-01-29 Richard Biener <rguenther@suse.de>
1865
1866 PR tree-optimization/56113
1867 * tree-ssa-structalias.c (equiv_class_lookup): Also return
1868 the bitmap leader.
1869 (label_visit): Free duplicate bitmaps and record the leader instead.
1870 (perform_var_substitution): Adjust.
1871
83ba4d6f
RB
18722013-01-29 Richard Biener <rguenther@suse.de>
1873
1874 PR tree-optimization/55270
1875 * tree-ssa-dom.c (eliminate_degenerate_phis): If we changed
1876 the CFG, schedule loops for fixup.
1877
66dfe13f
NC
18782013-01-29 Nick Clifton <nickc@redhat.com>
1879
1880 * config/rl78/rl78.c (rl78_regno_mode_code_ok_for_base_p): Allow
1881 SP_REG.
1882
5a579c3b
LE
18832013-01-28 Leif Ekblad <leif@rdos.net>
1884
1885 * config.gcc (i[34567]86-*-rdos*, x86_64-*-rdos*): New targets.
1886 * config/i386/i386.h (TARGET_RDOS): New macro.
1887 (DEFAULT_LARGE_SECTION_THRESHOLD): New macro.
1888 * config/i386/i386.c (ix86_option_override_internal): For 64bit
1889 TARGET_RDOS, set ix86_cmodel to CM_MEDIUM_PIC and flag_pic to 1.
1890 * config/i386/i386.opt (mlarge-data-threshold): Initialize to
1891 DEFAULT_LARGE_SECTION_THRESHOLD.
1892 * config/i386/i386.md (R14_REG, R15_REG): New constants.
1893 * config/i386/rdos.h: New file.
1894 * config/i386/rdos64.h: New file.
1895
51e44392
BS
18962013-01-28 Bernd Schmidt <bernds@codesourcery.com>
1897
1898 PR other/54814
1899 * reload.c (find_valid_class_1): Use in_hard_reg_set_p instead of
1900 TEST_HARD_REG_BIT.
1901
db1fb332
JJ
19022013-01-28 Jakub Jelinek <jakub@redhat.com>
1903
1904 PR rtl-optimization/56117
1905 * sched-deps.c (sched_analyze_2) <case PREFETCH>: For use_cselib
1906 call cselib_lookup_from_insn on the MEM before calling
1907 add_insn_mem_dependence.
1908
16917761
RB
19092013-01-28 Richard Biener <rguenther@suse.de>
1910
1911 * tree-inline.c (remap_gimple_stmt): Do not assing a BLOCK
1912 to a stmt that didn't have one.
1913 (copy_phis_for_bb): Likewise for PHI arguments.
1914 (copy_debug_stmt): Likewise for debug stmts.
1915
b9fc0497
RB
19162013-01-28 Richard Biener <rguenther@suse.de>
1917
1918 PR tree-optimization/56034
6edc3e32 1919 * tree-loop-distribution.c (enum partition_kind): Add PKIND_REDUCTION.
b9fc0497
RB
1920 (partition_builtin_p): Adjust.
1921 (generate_code_for_partition): Handle PKIND_REDUCTION. Assert
1922 it is the last partition.
1923 (rdg_flag_uses): Check SSA_NAME_IS_DEFAULT_DEF before looking
1924 up the vertex for the definition.
1925 (classify_partition): Classify whether a partition is a
1926 PKIND_REDUCTION, thus has uses outside of the loop.
1927 (ldist_gen): Inherit PKIND_REDUCTION when merging partitions.
1928 Merge all PKIND_REDUCTION partitions into the last partition.
1929 (tree_loop_distribution): Seed partitions from reductions as well.
1930
aa710d25
JJ
19312013-01-28 Jakub Jelinek <jakub@redhat.com>
1932
0bfbca58
JJ
1933 PR tree-optimization/56125
1934 * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Don't optimize
1935 pow(x,c) into sqrt(x) * powi(x, n/2) or
1936 1.0 / (sqrt(x) * powi(x, abs(n/2))) if c is an integer or when
1937 optimizing for size.
1938 Don't optimize pow(x,c) into powi(x, n/3) * powi(cbrt(x), n%3) or
1939 1.0 / (powi(x, abs(n)/3) * powi(cbrt(x), abs(n)%3)) if 2c is an
1940 integer.
1941
aa710d25
JJ
1942 PR tree-optimization/56094
1943 * gimplify.c (force_gimple_operand_1): Temporarily set input_location
1944 to UNKNOWN_LOCATION while gimplifying expr.
1945
77dc5297
UB
19462013-01-27 Uros Bizjak <ubizjak@gmail.com>
1947
1948 PR target/56114
1949 * config/i386/i386.md (*movabs<mode>_1): Add square brackets around
1950 operand 0 in movabs insn template for -masm=intel asm alternative.
1951 (*movabs<mode>_2): Ditto for operand 1.
1952
0bfbca58 19532013-01-26 David Holsgrove <david.holsgrove@xilinx.com>
fbf0cf90
DH
1954
1955 PR target/54663
1956 * config.gcc (microblaze*-linux*): Add tmake_file to allow building
1957 of microblaze-c.o
1958
0bfbca58 19592013-01-26 Edgar E. Iglesias <edgar.iglesias@gmail.com>
6f14eef2
EI
1960
1961 * config.gcc (microblaze*-*-*): Rename microblaze*-*-elf, update
1962 tm_file.
1963
0bfbca58 19642013-01-25 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
706b2314
N
1965
1966 * config/aarch64/aarch64.c (TARGET_FIXED_CONDITION_CODE_REGS):
1967 Undef to avoid warning.
1968
478f60f9
MH
19692013-01-25 Michael Haubenwallner <michael.haubenwallner@salomon.at>
1970
1971 * configure.ac (gcc_cv_ld_static_dynamic): Define for AIX native ld.
1972 * configure: Regenerate.
1973
d7fa6ee2
JJ
19742013-01-25 Jakub Jelinek <jakub@redhat.com>
1975
1976 PR tree-optimization/56098
1977 * tree-ssa-phiopt.c (nt_init_block): Don't call add_or_mark_expr
1978 for stmts with volatile ops.
1979 (cond_store_replacement): Don't optimize if assign has volatile ops.
1980 (cond_if_else_store_replacement_1): Don't optimize if either
1981 then_assign or else_assign have volatile ops.
1982 (hoist_adjacent_loads): Don't optimize if either def1 or def2 have
1983 volatile ops.
1984
f8fe87bd
GJL
19852013-01-25 Georg-Johann Lay <avr@gjlay.de>
1986
1987 * doc/invoke.texi (AVR Built-in Macros): Document __XMEGA__.
1988
28398d0d
GJL
19892013-01-25 Georg-Johann Lay <avr@gjlay.de>
1990
1991 * doc/extend.texi (Example of asm with clobbered asm reg): Fix
1992 missing ':' in asm example.
1993
b7d7d917
TB
19942013-01-25 Tejas Belagod <tejas.belagod@arm.com>
1995
1996 * config/aarch64/aarch64-simd-builtins.def: Separate sq<r>dmulh_lane
1997 entries into lane and laneq entries.
77dc5297
UB
1998 * config/aarch64/aarch64-simd.md (aarch64_sq<r>dmulh_lane<mode>):
1999 Remove AdvSIMD scalar modes.
b7d7d917
TB
2000 (aarch64_sq<r>dmulh_laneq<mode>): New.
2001 (aarch64_sq<r>dmulh_lane<mode>): New RTL pattern for Scalar AdvSIMD
2002 modes.
2003 * config/aarch64/arm_neon.h: Fix all the vq<r>dmulh_lane* intrinsics'
2004 builtin implementations to relfect changes in RTL in aarch64-simd.md.
2005 * config/aarch64/iterators.md (VCOND): New.
2006 (VCONQ): New.
2007
556f9906
GJL
20082013-01-25 Georg-Johann Lay <avr@gjlay.de>
2009
2010 PR target/54222
2011 * config/avr/builtins.def (DEF_BUILTIN): Add LIBNAME argument.
2012 Add NULL LIBNAME argument to existing definitions.
2013 (ABSHR, ABSR, ABSLR, ABSLLR, ABSHK, ABSK, ABSLK, ABSLLK): New.
2014 * config/avr/avr-c.c (DEF_BUILTIN): Add LIBNAME argument.
2015 * config/avr/avr.c (DEF_BUILTIN): Same.
2016 (avr_init_builtins): Pass down LIBNAME to add_builtin_function.
2017 (avr_expand_builtin): Expand to a vanilla call if a libgcc
2018 implementation is available (DECL_ASSEMBLER_NAME is set).
2019 (avr_fold_absfx): New static function.
2020 (avr_fold_builtin): Use it to handle: AVR_BUILTIN_ABSHR,
2021 AVR_BUILTIN_ABSR, AVR_BUILTIN_ABSLR, AVR_BUILTIN_ABSLLR,
2022 AVR_BUILTIN_ABSHK, AVR_BUILTIN_ABSK, AVR_BUILTIN_ABSLK,
2023 AVR_BUILTIN_ABSLLK.
2024 * config/avr/stdfix.h (abshr, absr, abslr, absllr)
2025 (abshk, absk, abslk, absllk): Provide as static inline functions.
2026
1f546bbb
MP
20272013-01-25 Marek Polacek <polacek@redhat.com>
2028
2029 PR tree-optimization/56035
2030 * cfgloopmanip.c (fix_loop_structure): Remove redundant condition.
2031
7e184bd7
UB
20322012-01-24 Uros Bizjak <ubizjak@gmail.com>
2033
2034 * config/i386/i386.md (*movti_internal_rex64): Add (o,e) alternative.
2035 (*movtf_internal_rex64): Add (!o,C) alternative
2036 (*movxf_internal_rex64): Ditto.
2037 (*movdf_internal_rex64): Add (?r,C) and (?m,C) alternatives.
2038
f5ba49ac
SM
20392013-01-24 Shenghou Ma <minux.ma@gmail.com>
2040
2041 * doc/invoke.texi: fix typo.
2042 * doc/objc.texi: fix typo.
2043
a6343728
RS
20442013-01-24 Richard Sandiford <rdsandiford@googlemail.com>
2045
2046 * config/mips/mips.md (*and<mode>3_mips16): Use the "W" constraint
2047 for the first two alternatives.
2048
cd030c07
DN
20492013-01-24 Diego Novillo <dnovillo@google.com>
2050
77dc5297 2051 * Makefile.in (GGC): Remove. Replace all instances with ggc-page.o.
cd030c07
DN
2052 (ggc-zone.o): Remove.
2053 * configure.ac: Remove option --with-gc.
2054 * configure: Re-generate.
2055 * doc/install.texi: Remove documentation for --with-gc.
2056 * gengtype.c (write_enum_defn): Remove. Update all users.
2057 (write_Types_process_field): Remove generation of gt_e_* argument.
2058 (output_type_enum): Remove. Update all users.
2059 (write_enum_defn): Remove. Update all users.
2060 (enum alloc_zone): Remove. Update all users.
77dc5297 2061 (write_splay_tree_allocator_def): Remove generation of gt_e_* argument.
cd030c07
DN
2062 * ggc-common.c (ggc_splay_alloc): Remove first argument.
2063 Update all callers.
2064 (struct ptr_data): Remove field TYPE. Update all users.
77dc5297 2065 (gt_pch_note_object): Remove argument TYPE. Update all users.
cd030c07
DN
2066 * ggc-internal.h (ggc_pch_alloc_object): Remove last argument.
2067 Update all users.
aaf1e810 2068 * ggc-none.c (ggc_alloc_typed_stat): Remove.
cd030c07
DN
2069 (struct alloc_zone): Remove.
2070 (ggc_internal_alloc_zone_stat): Remove.
2071 (ggc_internal_cleared_alloc_zone_stat): Remove.
2072 * ggc-page.c (ggc_alloc_typed_stat): Remove.
77dc5297
UB
2073 (ggc_pch_count_object): Remove last argument. Update all users.
2074 (ggc_pch_alloc_object): Remove last argument. Update all users.
cd030c07
DN
2075 (struct alloc_zone): Remove.
2076 * ggc-zone.c: Remove.
77dc5297 2077 * ggc.h (gt_pch_note_object): Remove last argument. Update all users.
cd030c07
DN
2078 (struct alloc_zone): Remove.
2079 (ggc_alloc_typed_stat): Remove.
2080 (ggc_alloc_typed): Remove.
2081 (ggc_splay_alloc): Remove first argument.
2082 (rtl_zone): Remove. Update all users.
2083 (tree_zone): Remove. Update all users.
2084 (tree_id_zone): Remove. Update all users.
2085 (ggc_internal_zone_alloc_stat): Remove. Update all users.
77dc5297 2086 (ggc_internal_zone_cleared_alloc_stat): Remove. Update all users.
cd030c07 2087 (ggc_internal_zone_vec_alloc_stat): Remove. Update all users.
77dc5297 2088 * tree-ssanames.c: Remove references to zone allocator in comments.
cd030c07 2089
a861ffa4
GJL
20902013-01-24 Georg-Johann Lay <avr@gjlay.de>
2091
2092 * config/avr/avr.c (avr_out_fract): Make register numbers that
2093 might be outside of source operand signed.
2094
593c0ddd
UB
20952013-01-24 Uros Bizjak <ubizjak@gmail.com>
2096
2097 * config/i386/constraints.md (Yf): New constraint.
2098 * config/i386/i386.md (*movdf_internal_rex64): Use Yf*f instead
2099 of f constraint to conditionaly disable x87 register preferences.
2100 (*movdf_internal): Ditto.
2101 (*movsf_internal): Ditto.
2102
e86c0101
SB
21032013-01-24 Steven Bosscher <steven@gcc.gnu.org>
2104
2105 PR inline-asm/55934
2106 * lra-assigns.c (assign_by_spills): Throw away the pattern of asms
2107 that have operands with impossible constraints.
2108 Add a FIXME for a speed-up opportunity.
2109 * lra-constraints.c (process_alt_operands): Verify that a class
2110 selected from constraints on asms is valid for the operand mode.
2111 (curr_insn_transform): Remove incorrect comment.
2112
f6fee35f
DE
21132013-01-23 David Edelsohn <dje.gcc@gmail.com>
2114
2115 * config/rs6000/rs6000.c (rs6000_delegitimize_address): Check that
2116 TOC operand is a valid symbol ref in the constant pool.
2117
21182013-01-23 Edgar E. Iglesias <edgar.iglesias@gmail.com>
c7729184 2119
aaf1e810 2120 * config/microblaze/linux.h: Add TARGET_OS_CPP_BUILTINS
c7729184 2121
dc62d7d1
GJL
21222013-01-23 Georg-Johann Lay <avr@gjlay.de>
2123
2124 PR target/54222
2125 * config/avr/stdfix.h: New file.
2126 * t-avr (stdfix-gcc.h): New rule to build it.
2127 (EXTRA_HEADERS): Set it to install stdfix.h, stdfix-gcc.h.
2128
2660d12d
KS
21292013-01-23 Kostya Serebryany <kcc@google.com>
2130
77dc5297
UB
2131 * config/darwin.h: remove dependency on
2132 CoreFoundation (asan on Mac OS).
2660d12d 2133
a70418fc
JJ
21342013-01-23 Jakub Jelinek <jakub@redhat.com>
2135
2136 PR target/49069
2137 * config/arm/arm.md (cbranchdi4, cstoredi4): Use s_register_operand
2138 instead of cmpdi_operand for first comparison operand.
2139 Don't assert that comparison operands aren't both constants.
2140
47876a2a
JW
21412013-01-22 Jonathan Wakely <jwakely.gcc@gmail.com>
2142
2143 * doc/install.texi (Downloading the Source): Update references to
2144 downloading separate components.
2145
21462013-01-22 Jonathan Wakely <jwakely.gcc@gmail.com>
4ebd56a5
JW
2147
2148 * doc/extend.texi (__int128): Improve grammar.
2149
47876a2a 21502013-01-22 Uros Bizjak <ubizjak@gmail.com>
32fc5b8a
UB
2151
2152 PR target/56028
2153 * config/i386/i386.md (*movti_internal_rex64): Change (o,riF)
2154 alternative to (o,r).
2155 (*movdi_internal_rex64): Remove (!o,n) alternative.
2156 (DImode immediate->memory splitter): Remove.
2157 (DImode immediate->memory peephole2): Remove.
2158 (movtf): Enable for TARGET_64BIT || TARGET_SSE.
2159 (*movtf_internal_rex64): Rename from *movtf_internal. Change (!o,F*r)
2160 alternative to (!o,*r).
2161 (*movtf_internal_sse): New pattern.
2162 (*movxf_internal_rex64): New pattern.
2163 (*movxf_internal): Disable for TARGET_64BIT.
2164 (*movdf_internal_rex64): Remove (!o,F) alternative.
2165
3a984f10
JJ
21662013-01-22 Jakub Jelinek <jakub@redhat.com>
2167
502498d5
JJ
2168 PR middle-end/56074
2169 * dumpfile.c (dump_loc): Only print loc if LOCATION_LOCUS (loc)
2170 isn't UNKNOWN_LOCATION nor BUILTINS_LOCATION.
2171 * tree-vect-loop-manip.c (find_loop_location): Also ignore
2172 stmt locations where LOCATION_LOCUS of the stmt location is
2173 UNKNOWN_LOCATION or BUILTINS_LOCATION.
2174
3a984f10
JJ
2175 PR target/55686
2176 * config/i386/i386.md (UNSPEC_STOS): New.
2177 (strset_singleop, *strsetdi_rex_1, *strsetsi_1, *strsethi_1,
2178 *strsetqi_1): Add UNSPEC_STOS.
2179
fa817f7f
PC
21802013-01-22 Paolo Carlini <paolo.carlini@oracle.com>
2181
2182 PR c++/56067
2183 * doc/invoke.texi: Remove left over -Wsynth example.
2184
8f498c1b
JJ
21852013-01-21 Jakub Jelinek <jakub@redhat.com>
2186
2187 PR tree-optimization/56051
2188 * fold-const.c (fold_binary_loc): Don't fold
2189 X < (cast) (1 << Y) into (X >> Y) != 0 if cast is either
2190 a narrowing conversion, or widening conversion from signed
2191 to unsigned.
2192
47876a2a 21932013-01-21 Uros Bizjak <ubizjak@gmail.com>
35d59da7
UB
2194
2195 PR rtl-optimization/56023
2196 * haifa-sched.c (fix_inter_tick): Do not update ticks of instructions,
2197 dependent on debug instruction.
2198
5b9db1bc
MJ
21992013-01-21 Martin Jambor <mjambor@suse.cz>
2200
2201 PR middle-end/56022
2202 * function.c (allocate_struct_function): Call
2203 invoke_set_current_function_hook earlier.
2204
e8bb7d68
JJ
22052013-01-21 Jakub Jelinek <jakub@redhat.com>
2206
2207 * reload1.c (init_reload): Only initialize reload_obstack
2208 during the first call.
2209
616a4e32
MP
22102013-01-21 Marek Polacek <polacek@redhat.com>
2211
2212 * cfgloop.c (verify_loop_structure): Fix up grammar.
2213
4401981b
YHH
22142013-01-21 Yi-Hsiu Hsu <ahsu@marvell.com>
2215
2216 * config/arm/marvell-pj4.md (pj4_shift_conds, pj4_alu_shift,
2217 pj4_alu_shift_conds, pj4_shift): Handle simple_alu_shift.
2218
8e87740b
RR
22192013-01-21 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
2220
2221 PR target/56058
2222 * config/arm/marvell-pj4.md: Update copyright year.
2223 Fix up use of alu to alu_reg and simple_alu_imm.
2224
47876a2a 22252013-01-21 Uros Bizjak <ubizjak@gmail.com>
1f6bc337
UB
2226
2227 * config/i386/i386.md (enabled): Do not disable fma4 for TARGET_FMA.
2228
89d56d79
VM
22292013-01-20 Vladimir Makarov <vmakarov@redhat.com>
2230
2231 PR target/55433
2232 * lra-constraints.c (curr_insn_transform): Don't reuse original
1f6bc337 2233 insn for secondary memory move when memory mode should be different.
89d56d79 2234
fe603553
JDA
22352013-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2236
2237 * config/pa/pa.md (atomic_loaddi, atomic_loaddi_1, atomic_storedi,
2238 atomic_storedi_1): New patterns.
2239
01284895
VK
22402013-01-20 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
2241
2242 btver2 pipeline descriptions.
2243 * config/i386/i386.c: Enable CPU_BTVER2 to use btver2 pipeline
2244 descriptions.
2245 * config/i386/i386.md (btver2_decode): New type attributes.
1f6bc337 2246 * config/i386/sse.md (btver2_decode, btver2_sse_attr): New
01284895
VK
2247 type attributes.
2248 * config/i386/btver2.md: New file describing btver2 pipelines.
2249
5630e3e1
JL
22502013-01-19 Andrew Pinski <apinski@cavium.com>
2251
2252 PR tree-optimization/52631
2253 * tree-ssa-sccvn (visit_use): Before looking up the original
2254 statement, try looking up the simplified expression.
2255
650ae806
AG
22562013-01-19 Anthony Green <green@moxielogic.com>
2257
2258 * config/moxie/moxie.c (moxie_expand_prologue): Set
2259 current_function_static_stack_size.
2260
e300ec2d
JJ
22612013-01-18 Jakub Jelinek <jakub@redhat.com>
2262
2263 PR tree-optimization/56029
2264 * tree-phinodes.c (reserve_phi_args_for_new_edge): Set
2265 gimple_phi_arg_location for the new arg to UNKNOWN_LOCATION.
2266
a3d7af04
SS
22672013-01-18 Sharad Singhai <singhai@google.com>
2268
2269 PR tree-optimization/55995
2270 * dumpfile.c (dump_loc): Print location only if available.
2271 * tree-vectorizer.c (increase_alignment): Intialize vect_location.
2272
66aa7879
VM
22732013-01-18 Vladimir Makarov <vmakarov@redhat.com>
2274
2275 PR target/55433
2276 * lra-constraints.c (curr_insn_transform): Reuse original insn for
2277 secondary memory move.
2278 (inherit_reload_reg): Use rclass instead of cl for
2279 check_secondary_memory_needed_p.
2280
3f0fee7b
JJ
22812013-01-18 Jakub Jelinek <jakub@redhat.com>
2282
2283 PR middle-end/56015
2284 * expr.c (expand_expr_real_2) <case COMPLEX_EXPR>: Handle
1f6bc337 2285 the case where writing real complex part of target modifies op1.
3f0fee7b 2286
70c67693
JG
22872013-01-18 James Greenhalgh <james.greenhalgh@arm.com>
2288
2289 * config/aarch64/aarch64-simd.md
2290 (aarch64_vcond_internal<mode>): Handle unordered cases.
2291 * config/aarch64/iterators.md (v_cmp_result): New.
2292
df8de9b3
YHH
22932013-01-18 Yi-Hsiu Hsu <ahsu@marvell.com>
2294 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
2295
2296 * config/arm/marvell-pj4.md: New file.
2297 * config/arm/arm.c (arm_issue_rate): Add marvell_pj4.
2298 * config/arm/arm.md (generic_sched): Add marvell_pj4.
2299 (generic_vfp): Likewise.
2300 * config/arm/arm-cores.def: Add marvell-pj4.
2301 * config/arm/arm-tune.md: Regenerate.
2302 * config/arm/arm-tables.opt: Regenerate.
2303 * config/arm/bpabi.h (BE8_LINK_SPEC): Add marvell_pj4.
2304 * doc/invoke.texi: Document marvell-pj4.
2305
be30c356
TB
23062013-01-18 Tejas Belagod <tejas.belagod@arm.com>
2307
2308 * config/aarch64/arm_neon.h: Map scalar types to standard types.
2309
0bfbca58 23102013-01-18 Alexandre Oliva <aoliva@redhat.com>
af6236c1
AO
2311
2312 PR debug/54114
2313 PR debug/54402
2314 PR debug/49888
2315 * var-tracking.c (negative_power_of_two_p): New.
2316 (global_get_addr_cache, local_get_addr_cache): New.
2317 (get_addr_from_global_cache, get_addr_from_local_cache): New.
2318 (vt_canonicalize_addr): Rewrite using the above. Adjust the
2319 heading comment.
2320 (vt_stack_offset_p): Remove.
2321 (vt_canon_true_dep): Always canonicalize loc's address.
2322 (clobber_overlapping_mems): Make sure we have a MEM.
2323 (local_get_addr_clear_given_value): New.
2324 (val_reset): Clear local cached entries.
2325 (compute_bb_dataflow): Create and release the local cache.
2326 Disable duplicate MEMs clobbering.
2327 (emit_notes_in_bb): Clobber MEMs likewise.
2328 (vt_emit_notes): Create and release the local cache.
2329 (vt_initialize, vt_finalize): Create and release the global
2330 cache, respectively.
1f6bc337 2331 * alias.c (rtx_equal_for_memref_p): Compare operands of ENTRY_VALUEs.
af6236c1 2332
0bfbca58 23332013-01-18 Alexandre Oliva <aoliva@redhat.com>
7ff37ffa
AO
2334
2335 PR libmudflap/53359
2336 * tree-mudflap.c (mudflap_finish_file): Skip deferred decls
2337 not found in the symtab.
2338
0bfbca58 23392013-01-18 Alexandre Oliva <aoliva@redhat.com>
3aa03517 2340
c350ba53 2341 PR debug/56006
3aa03517
AO
2342 PR rtl-optimization/55547
2343 PR rtl-optimization/53827
2344 PR debug/53671
2345 PR debug/49888
2346 * alias.c (offset_overlap_p): New, factored out of...
2347 (memrefs_conflict_p): ... this. Use absolute sizes. Retain
2348 the conservative special case for symbolic constants. Don't
2349 adjust zero sizes on alignment.
2350
c664546f
JL
23512013-01-18 Bernd Schmidt <bernds@codesourcery.com>
2352
2353 PR rtl-optimization/52573
2354 * regrename.c (build_def_use): Ignore REG_DEAD notes if there is a
2355 REG_UNUSED for the same register.
2356
1bd3f750
MP
23572013-01-17 Richard Biener <rguenther@suse.de>
2358 Marek Polacek <polacek@redhat.com>
2359
2360 PR rtl-optimization/55833
2361 * loop-unswitch.c (unswitch_loops): Move loop verification...
2362 (unswitch_single_loop): ...here. Call mark_irreducible_loops.
2363 * cfgloopmanip.c (fix_loop_placement): Add IRRED_INVALIDATED parameter.
2364 Set it to true when we're removing a loop from hierarchy tree in
2365 an irreducible region.
2366 (fix_bb_placements): Adjust caller.
2367 (fix_loop_placements): Likewise.
2368
e52a8b71
GJL
23692013-01-17 Georg-Johann Lay <avr@gjlay.de>
2370
2371 * config/avr/builtins.def (DEF_BUILTIN): Factor out
2372 "__builtin_avr_" from NAME, turn NAME to an uppercase identifier.
2373 Factor out 'CODE_FOR_' from ICODE, use 'nothing' instead of '-1'.
2374 Remove ID. Adjust comments.
2375 * config/avr/avr-c.c (avr_builtin_name): Remove.
2376 (avr_cpu_cpp_builtins): Use DEF_BUILTIN instead of for-loop.
2377 * config/avr/avr.c (avr_tolower): New static function.
2378 (DEF_BUILTIN): Remove parameter ID. Prefix ICODE by 'CODE_FOR_'.
2379 Stringify NAME, prefix it with "__builtin_avr_" and lowercase it.
2380 (avr_expand_builtin): Assert insn_code != CODE_FOR_nothing for
2381 default expansion.
2382
8386a7ea
JH
23832013-01-17 Jan Hubicka <jh@suse.cz>
2384
610fb637 2385 PR tree-optimization/55273
8386a7ea
JH
2386 * loop-iv.c (iv_number_of_iterations): Consider zero iteration case.
2387
47876a2a 23882013-01-17 Uros Bizjak <ubizjak@gmail.com>
8abaebcd
UB
2389
2390 PR target/55981
2391 * config/i386/sync.md (atomic_store<mode>): Always generate SWImode
2392 store through atomic_store<mode>_1.
2393 (atomic_store<mode>_1): Macroize insn using SWI mode iterator.
2394
8222c37e
MJ
23952013-01-17 Martin Jambor <mjambor@suse.cz>
2396
2397 PR tree-optimizations/55264
2398 * ipa-inline-transform.c (can_remove_node_now_p_1): Never return true
2399 for virtual methods.
2400 * ipa.c (symtab_remove_unreachable_nodes): Never return true for
2401 virtual methods before inlining is over.
2402 * cgraph.h (cgraph_only_called_directly_or_aliased_p): Return false for
2403 virtual functions.
2404 * cgraphclones.c (cgraph_create_virtual_clone): Mark clones as
2405 non-virtual.
2406
79f01c76
VM
24072013-01-16 Vladimir Makarov <vmakarov@redhat.com>
2408
2409 PR rtl-optimization/56005
2410 * sched-deps.c (sched_analyze_2): Check deps->readonly for adding
2411 pending reads for prefetch.
2412
d0b6bb1b
IB
24132013-01-16 Ian Bolton <ian.bolton@arm.com>
2414
aaf1e810 2415 * config/aarch64/aarch64.md
d0b6bb1b
IB
2416 (*cstoresi_neg_uxtw): New pattern.
2417 (*cmovsi_insn_uxtw): New pattern.
2418 (*<optab>si3_uxtw): New pattern.
2419 (*<LOGICAL:optab>_<SHIFT:optab>si3_uxtw): New pattern.
2420 (*<optab>si3_insn_uxtw): New pattern.
2421 (*bswapsi2_uxtw): New pattern.
2422
cb9cf03b
RB
24232013-01-16 Richard Biener <rguenther@suse.de>
2424
2425 * tree-inline.c (tree_function_versioning): Remove set but
2426 never used variable.
2427
2cfc56b9
RB
24282013-01-16 Richard Biener <rguenther@suse.de>
2429
2430 PR tree-optimization/55964
2431 * tree-flow.h (rename_variables_in_loop): Remove.
2432 (rename_variables_in_bb): Likewise.
2433 * tree-loop-distribution.c (update_phis_for_loop_copy): Remove.
2434 (copy_loop_before): Adjust and delete update-ssa status.
2435 * tree-vect-loop-manip.c (rename_variables_in_bb): Make static.
8abaebcd 2436 (rename_variables_in_bb): Likewise. Properly walk over predecessors.
2cfc56b9
RB
2437 (rename_variables_in_loop): Remove.
2438 (slpeel_update_phis_for_duplicate_loop): Likewise.
2439 (slpeel_tree_duplicate_loop_to_edge_cfg): Handle nested loops,
2440 use available cfg machinery instead of duplicating it.
2441 Update PHI nodes and perform poor-mans SSA update here.
2442 (slpeel_tree_peel_loop_to_edge): Adjust.
2443
c25a0c60
RB
24442013-01-16 Richard Biener <rguenther@suse.de>
2445
2446 PR tree-optimization/54767
2447 PR tree-optimization/53465
2448 * tree-vrp.c (vrp_meet_1): Revert original fix for PR53465.
2449 (vrp_visit_phi_node): For PHI arguments coming via backedges
2450 drop all symbolical range information.
2451 (execute_vrp): Compute backedges.
2452
04b535af
RB
24532013-01-16 Richard Biener <rguenther@suse.de>
2454
2455 * doc/install.texi: Update CLooG and ISL requirements to
2456 0.18.0 and 0.11.1.
2457
8b0a1e0b
CB
24582013-01-16 Christian Bruel <christian.bruel@st.com>
2459
2460 PR target/55301
2461 * config/sh/sh.c (sh_expand_prologue): Postpone new_stack mem symbol.
2462 (broken_move): Handle UNSPECV_SP_SWITCH_B.
2463 * config/sh/sh.md (sp_switch_1): Use set (reg:SI SP_REG).
2464
24652013-01-16 DJ Delorie <dj@redhat.com>
2466
2467 * config/sh/sh.md (UNSPECV_SP_SWITCH_B): New.
2468 (UNSPECV_SP_SWITCH_E): New.
2469 (sp_switch_1): Change to an unspec.
2470 (sp_switch_2): Change to an unspec. Don't use post-inc when we
2471 replace $r15.
2472
24732013-01-16 Uros Bizjak <ubizjak@gmail.com>
88e784e6
UB
2474
2475 * emit-rtl.c (need_atomic_barrier_p): Mask memory model argument
2476 with MEMMODEL_MASK before comparing with MEMMODEL_* memory types.
2477 * optabs.c (maybe_emit_sync_lock_test_and_set): Ditto.
2478 (expand_mem_thread_fence): Ditto.
2479 (expand_mem_signal_fence): Ditto.
2480 (expand_atomic_load): Ditto.
2481 (expand_atomic_store): Ditto.
2482
0bfbca58 24832013-01-16 Alexandre Oliva <aoliva@redhat.com>
5147bf6a
AO
2484
2485 PR rtl-optimization/55547
2486 PR rtl-optimization/53827
2487 PR debug/53671
2488 PR debug/49888
2489 * alias.c (memrefs_conflict_p): Set sizes to negative after
2490 AND adjustments.
2491
305e3ac1
JJ
24922013-01-15 Jakub Jelinek <jakub@redhat.com>
2493
2494 PR target/55940
2495 * function.c (thread_prologue_and_epilogue_insns): Always
2496 add crtl->drap_reg to set_up_by_prologue.set, even if
2497 stack_realign_drap is false.
2498
f78ac4f2
JBG
24992013-01-15 Jan-Benedict Glaw <jbglaw@lug-owl.de>
2500
2501 * config/vax/vax.md (add<mode>3, sub<mode>3, mul<mode>3, div<mode>3,
2502 and<mode>3, *and<mode>_const_int, ior<mode>3, xor<mode>3, ashrsi3,
2503 *call): Fix indention.
2504
a78a8cc4
TV
25052013-01-15 Tom de Vries <tom@codesourcery.com>
2506
2507 PR target/55876
2508 * optabs.c (widen_operand): Use gen_lowpart instead of gen_rtx_SUBREG.
2509 Update comment.
2510
0e80383f
VM
25112013-01-15 Vladimir Makarov <vmakarov@redhat.com>
2512
305e3ac1 2513 PR rtl-optimization/55153
0e80383f
VM
2514 * sched-deps.c (sched_analyze_2): Add pending reads for prefetch.
2515
207b5956
MJ
25162013-01-15 Martin Jambor <mjambor@suse.cz>
2517
2518 PR tree-optimization/55920
2519 * tree-sra.c (analyze_access_subtree): Do not mark non-removable
2520 accesses as grp_to_be_debug_replaced.
2521
a7818b54
JJ
25222013-01-15 Jakub Jelinek <jakub@redhat.com>
2523
2524 PR tree-optimization/55920
2525 * tree-sra.c (sra_modify_assign): If for lacc->grp_to_be_debug_replaced
2526 there is non-useless type conversion needed from debug rhs to lhs,
2527 use build_debug_ref_for_model and/or VIEW_CONVERT_EXPR.
2528
b0fe107e
JM
25292013-01-15 Joseph Myers <joseph@codesourcery.com>
2530 Mikael Pettersson <mikpe@it.uu.se>
2531
2532 PR target/43961
2533 * config/arm/arm.h (ADDR_VEC_ALIGN): Align SImode jump tables for
2534 Thumb.
2535 (ASM_OUTPUT_CASE_LABEL): Remove.
2536 (ASM_OUTPUT_BEFORE_CASE_LABEL): Define to empty.
2537 * final.c (shorten_branches): Update alignment of labels before
2538 jump tables if CASE_VECTOR_SHORTEN_MODE.
2539
34ab62ee
RB
25402013-01-15 Richard Biener <rguenther@suse.de>
2541
2542 PR bootstrap/55961
2543 * system.h: Do not include gmp.h for building host tools.
2544
783a3a05
RB
25452013-01-15 Richard Biener <rguenther@suse.de>
2546
2547 PR middle-end/55882
2548 * emit-rtl.c (set_mem_attributes_minus_bitpos): Correctly
2549 account for bitpos when computing alignment.
2550
3a579e09
VY
25512013-01-15 Vladimir Yakovlev <vladimir.b.yakovlev@intel.com>
2552
2553 * config/i386/i386-c.c (ix86_target_macros_internal): New case.
2554 (ix86_target_macros_internal): Likewise.
2555
2556 * config/i386/i386.c (m_CORE2I7): Removed.
2557 (m_CORE_HASWELL): New macro.
2558 (m_CORE_ALL): Likewise.
2559 (initial_ix86_tune_features): m_CORE2I7 is replaced by m_CORE_ALL.
2560 (initial_ix86_arch_features): Likewise.
2561 (processor_target_table): Initializations for Core avx2.
2562 (cpu_names): New names "core-avx2".
2563 (ix86_option_override_internal): Changed PROCESSOR_COREI7 by
2564 PROCESSOR_CORE_HASWELL.
2565 (ix86_issue_rate): New case.
2566 (ia32_multipass_dfa_lookahead): Likewise.
2567 (ix86_sched_init_global): Likewise.
2568
2569 * config/i386/i386.h (TARGET_HASWELL): New macro.
2570 (target_cpu_default): New TARGET_CPU_DEFAULT_haswell.
2571 (processor_type): New PROCESSOR_HASWELL.
2572
955f5a07
JJ
25732013-01-15 Jakub Jelinek <jakub@redhat.com>
2574
ff784829
JJ
2575 PR tree-optimization/55955
2576 * tree-vect-loop.c (vectorizable_reduction): Give up early on
2577 *SHIFT_EXPR and *ROTATE_EXPR codes.
2578
955f5a07
JJ
2579 PR tree-optimization/48766
2580 * opts.c (common_handle_option): For -fwrapv disable -ftrapv, for
2581 -ftrapv disable -fwrapv.
2582
aeb8b4e9
GJL
25832013-01-14 Georg-Johann Lay <avr@gjlay.de>
2584
2585 PR target/55974
2586 * config/avr/avr-c.c (avr_cpu_cpp_builtins): Define __FLASH
2587 etc. to 1 and not to __flash.
2588 Use LL suffix for __INT24_MAX__ with -mint8.
2589 Use ULL suffix for __UINT24_MAX__ with -mint8.
2590
1c494c6a
GJL
25912013-01-14 Georg-Johann Lay <avr@gjlay.de>
2592
2593 * config/avr/avr-arch.h
2594 (struct base_arch_s): Use typedef avr_arch_t instead.
2595 (struct arch_info_s): Use typedef avr_arch_info_t instead.
2596 (struct mcu_type_s): Use typedef avr_mcu_t instead.
2597 * config/avr/avr.c: Same.
2598 * config/avr/avr-devices.c: Same.
2599 * config/avr/driver-avr.c: Same.
2600 * config/avr/gen-avr-mmcu-texi.c: Same.
2601 * config/avr/avr-mcus.def: Adjust comment.
2602
a50344cb
TB
26032013-01-14 Tejas Belagod <tejas.belagod@arm.com>
2604
88e784e6
UB
2605 * config/aarch64/aarch64-simd.md (*aarch64_simd_ld1r<mode>): New.
2606 * config/aarch64/iterators.md (VALLDI): New.
a50344cb 2607
47876a2a 26082013-01-14 Uros Bizjak <ubizjak@gmail.com>
e6f0e052
UB
2609 Andi Kleen <ak@linux.intel.com>
2610
2611 PR target/55948
2612 * config/i386/sync.md (atomic_store<mode>_1): New pattern.
2613 (atomic_store<mode>): Call atomic_store<mode>_1 for IX86_HLE_RELEASE
2614 memmodel flag.
2615
00892272
GJL
26162013-01-14 Georg-Johann Lay <avr@gjlay.de>
2617
2618 * config/avr/avr-stdint.h: Remove trailing blanks.
2619 * config/avr/avr-log.h: Same.
2620 * config/avr/avr-arch.h: Same.
2621 * config/avr/avr-devices.c: Same.
2622 * config/avr/avr-dimode.md: Same.
2623 * config/avr/predicates.md: Same.
2624 * config/avr/avr-c.c: Same. And fix typo.
e6f0e052 2625
00892272
GJL
2626 * config/avr/avr-protos.h: Same. And:
2627 (function_arg_regno_p): Rename to avr_function_arg_regno_p.
2628 (init_cumulative_args): Rename to avr_init_cumulative_args.
2629 (expand_prologue): Rename to avr_expand_prologue.
2630 (expand_epilogue): Rename to avr_expand_epilogue.
2631 (adjust_insn_length): Rename to avr_adjust_insn_length.
2632 (notice_update_cc): Rename to avr_notice_update_cc.
2633 (final_prescan_insn): Rename to avr_final_prescan_insn.
2634 * config/avr/avr.c: Same.
2635 * config/avr/avr.h: Same.
2636 * config/avr/avr.md: Remove trailing blanks.
2637 (prologue): Use avr_expand_prologue.
2638 (epilogue, sibcall_epilogue): Use avr_expand_epilogue.
2639
7bb01996
RB
26402013-01-14 Richard Biener <rguenther@suse.de>
2641
2642 * tree-cfg.c (verify_expr_location, verify_expr_location_1,
2643 verify_location, collect_subblocks): New functions.
2644 (verify_gimple_in_cfg): Verify that locations only reference
2645 BLOCKs in the functions BLOCK tree.
2646
2724573f
RB
26472013-01-14 Richard Biener <rguenther@suse.de>
2648
2649 * tree-cfgcleanup.c (remove_forwarder_block): Unshare propagated
2650 PHI argument.
2651 * graphite-sese-to-poly.c (insert_out_of_ssa_copy): Properly
2652 unshare reference.
2653 (insert_out_of_ssa_copy_on_edge): Likewise.
2654 (rewrite_close_phi_out_of_ssa): Likewise.
2655 * tree-ssa.c (insert_debug_temp_for_var_def): Properly unshare
2656 debug expressions.
2657 * tree-ssa-pre.c (insert_into_preds_of_block): Properly unshare
2658 propagated constants.
2659 * tree-cfg.c (tree_node_can_be_shared): Handled component-refs
2660 can not be shared.
2661
9a0bbab6
GJL
26622013-01-14 Georg-Johann Lay <avr@gjlay.de>
2663
2664 * config/avr/avr-modes.def: Add GPL copyright notice.
2665
45805f17
UB
26662013-01-13 Uros Bizjak <ubizjak@gmail.com>
2667
2668 * config/i386/sync.md (mem_thread_fence): Mask operands[0] with
2669 MEMMODEL_MASK to determine memory model.
2670 (atomic_store<mode>): Ditto from operands[2].
2671 * config/i386/i386.c (ix86_memmodel_check): Declare "strong" as bool.
2672
9d60be38
JJ
26732013-01-13 Jakub Jelinek <jakub@redhat.com>
2674
2675 PR fortran/55935
45805f17 2676 * gimple-fold.c (get_symbol_constant_value): Call unshare_expr.
9d60be38
JJ
2677 (fold_gimple_assign): Don't call unshare_expr here.
2678 (fold_ctor_reference): Call unshare_expr.
2679
e7f49d92
TG
26802013-01-13 Terry Guo <terry.guo@arm.com>
2681
aaf1e810
EB
2682 * Makefile.in (s-mlib): New argument MULTILIB_REUSE.
2683 * doc/fragments.texi: Document MULTILIB_REUSE.
2684 * gcc.c (multilib_reuse): New internal spec.
e7f49d92 2685 (set_multilib_dir): Also search multilib from multilib_reuse.
aaf1e810 2686 * genmultilib (tmpmultilib3): Refactor code.
e7f49d92
TG
2687 (tmpmultilib4): Ditto.
2688 (multilib_reuse): New multilib argument.
2689
fbd03a27
RS
26902013-01-13 Richard Sandiford <rdsandiford@googlemail.com>
2691
2692 * Makefile.in: Update copyright.
2693
b3681f13
TV
26942013-01-12 Tom de Vries <tom@codesourcery.com>
2695
2696 PR middle-end/55890
2697 * calls.c (expand_call): Check if arg_nr is valid.
2698
3f287e4b
MM
26992013-01-11 Michael Meissner <meissner@linux.vnet.ibm.com>
2700
2701 * doc/extend.texi (X86 Built-in Functions): Add whitespace in
2702 __builtin_ia32_paddb256 and __builtin_ia32_pavgb256
5bc35113
MM
2703 documentation. Add missing '__' in front of
2704 __builtin_ia32_packssdw256.
3f287e4b 2705
1abcd5eb
AK
27062013-01-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2707
2708 PR target/55719
2709 * config/s390/s390.c (s390_preferred_reload_class): Do not return
2710 NO_REGS for larl operands.
2711 (s390_reload_larl_operand): Use s390_load_address instead of
2712 emit_move_insn.
2713
980d0812
RB
27142013-01-11 Richard Biener <rguenther@suse.de>
2715
2716 * tree-cfg.c (verify_node_sharing_1): Split out from ...
2717 (verify_node_sharing): ... here.
2718 (verify_gimple_in_cfg): Use verify_node_sharing_1 for walk_tree.
2719
7cb9fd07
EB
27202013-01-11 Eric Botcazou <ebotcazou@adacore.com>
2721
2722 * configure.ac (Tree checking): Set TREECHECKING to yes if enabled.
2723 Substitute TREECHECKING.
2724 * configure: Regenerate.
2725 * Makefile.in (TREECHECKING): New.
2726
47876a2a 27272013-01-11 Richard Guenther <rguenther@suse.de>
c7ab2530
RG
2728
2729 PR tree-optimization/44061
2730 * tree-vrp.c (extract_range_basic): Compute zero as
2731 value-range for __builtin_constant_p of function parameters.
2732
d1e082c2
RS
27332013-01-10 Richard Sandiford <rdsandiford@googlemail.com>
2734
45805f17 2735 Update copyright years.
d1e082c2 2736
f85021b0
VM
27372013-01-10 Vladimir Makarov <vmakarov@redhat.com>
2738
9d60be38 2739 PR rtl-optimization/55672
0160442c
VM
2740 * lra-eliminations.c (mark_not_eliminable): Permit addition with
2741 const to be eliminable.
f85021b0 2742
7a8b1ec4
DE
27432013-01-10 David Edelsohn <dje.gcc@gmail.com>
2744
2745 * configure.ac (HAVE_AS_TLS): Add check for powerpc-ibm-aix.
2746 * configure: Regenerate.
2747
ad2e5b71
RB
27482013-01-10 Richard Biener <rguenther@suse.de>
2749
ddf9322d 2750 * builtins.c (expand_builtin_init_trampoline): Use set_mem_attributes.
ad2e5b71 2751
ffc5b2bb
RB
27522013-01-10 Richard Biener <rguenther@suse.de>
2753
2754 PR bootstrap/55792
2755 * tree-into-ssa.c (rewrite_add_phi_arguments): Do not set
2756 locations for virtual PHI arguments.
2757 (rewrite_update_phi_arguments): Likewise.
2758
e1f674e4
JS
27592013-01-10 Joel Sherrill <joel.sherrill@OARcorp.com>
2760
2761 * config/v850/rtems.h (ASM_SPEC): Pass -m8byte-align and -mgcc-abi
2762 on to assembler.
2763
a57fc743
JJ
27642013-01-10 Jakub Jelinek <jakub@redhat.com>
2765
2766 PR tree-optimization/55921
2767 * tree-complex.c (expand_complex_asm): New function.
2768 (expand_complex_operations_1): Call it for GIMPLE_ASM.
2769
0ff4390d
AK
27702013-01-10 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2771
2772 PR target/55718
2773 * config/s390/s390.c (s390_symref_operand_p)
2774 (s390_loadrelative_operand_p): Merge the two functions.
2775 (s390_check_qrst_address, print_operand_address): Add parameters
2776 to s390_loadrelative_operand_p invokation.
2777 (s390_check_symref_alignment): Use s390_loadrelative_operand_p.
2778 (s390_reload_larl_operand, s390_secondary_reload): Use
2779 s390_loadrelative_operand_p instead of s390_symref_operand_p.
2780 (legitimize_pic_address): Handle @GOTENT and @PLT + addend.
2781
6f557e0e
MS
27822013-01-09 Mike Stump <mikestump@comcast.net>
2783
2784 * dse.c (record_store): Remove unnecessary assert.
2785
7770c9e9
JH
27862013-01-09 Jan Hubicka <jh@suse.cz>
2787
2788 PR tree-optimization/55569
2789 * cfgloopmanip.c (scale_loop_profile): Make ITERATION_BOUND gcov_type.
2790 * cfgloop.h (scale_loop_profile): Likewise.
2791
a19b1432
JH
27922013-01-09 Jan Hubicka <jh@suse.cz>
2793
2794 PR lto/45375
ddf9322d
UB
2795 * ipa-inline.c (ipa_inline): Remove extern inlines and virtual
2796 functions.
a19b1432
JH
2797 * cgraphclones.c (cgraph_clone_node): Cpoy also LTO file data.
2798
9a002da8
RS
27992013-01-09 Richard Sandiford <rdsandiford@googlemail.com>
2800
2801 PR middle-end/55114
2802 * expr.h (maybe_emit_group_store): Declare.
2803 * expr.c (maybe_emit_group_store): New function.
2804 * builtins.c (expand_builtin_int_roundingfn): Call it.
2805 (expand_builtin_int_roundingfn_2): Likewise.
2806
511dcace
VM
28072013-01-09 Vladimir Makarov <vmakarov@redhat.com>
2808
e1f2b729 2809 PR rtl-optimization/55829
511dcace
VM
2810 * lra-constraints.c (match_reload): Add code for absent output.
2811 (curr_insn_transform): Add code for reloads of matched inputs
2812 without output.
2813
7b0fe4f4
UB
28142013-01-09 Uros Bizjak <ubizjak@gmail.com>
2815
2816 * config/i386/sse.md (*vec_interleave_highv2df): Change mode
2817 attribute of movddup insn to DF.
2818 (*vec_interleave_lowv2df): Ditto.
2819 (vec_dupv2df): Ditto.
2820
870ca331
JH
28212013-01-09 Jan Hubicka <jh@suse.cz>
2822
2823 PR tree-optimiation/55875
2824 * tree-ssa-loop-niter.c (number_of_iterations_cond): Add
2825 EVERY_ITERATION parameter.
7b0fe4f4 2826 (number_of_iterations_exit): Check if exit is executed every iteration.
870ca331
JH
2827 (idx_infer_loop_bounds): Similarly here.
2828 (n_of_executions_at_most): Simplify
2829 to only test for cases where statement is dominated by the
7b0fe4f4 2830 particular bound; handle correctly the "postdominance" test.
870ca331
JH
2831 (scev_probably_wraps_p): Use max loop iterations info
2832 as a global bound first.
2833
6f575fe4 28342013-01-09 Nguyen Duy Dat <dat.nguyen.yn@rvc.renesas.com>
3cd232b5
NDD
2835 Nick Clifton <nickc@redhat.com>
2836
2837 * config/v850/v850.md (cbranchsf4): New pattern.
2838 (cstoresf4): New pattern.
2839 (cbranchdf4): New pattern.
2840 (cstoredf4): New pattern.
2841 (movsicc): Disallow floating point comparisons.
2842 (cmpsf_le_insn): Fix order of operators.
2843 (cmpsf_lt_insn): Likewise.
2844 (cmpsf_eq_insn): Likewise.
2845 (cmpdf_le_insn): Likewise.
2846 (cmpdf_lt_insn): Likewise.
2847 (cmpdf_eq_insn): Likewise.
2848 (cmpsf_ge_insn): Use LE comparison.
2849 (cmpdf_ge_insn): Likewise.
2850 (cmpsf_gt_insn): Use LT comparison.
2851 (cmpdf_gt_insn): Likewise.
2852 (cmpsf_ne_insn): Delete pattern.
2853 (cmpdf_ne_insn): Delete pattern.
2854 * config/v850/v850.c (v850_gen_float_compare): Use
2855 gen_cmpdf_eq_insn for NE comparison.
2856 (v850_float_z_comparison_operator)
2857 (v850_float_nz_comparison_operator): Move from here ...
2858 * config/v850/predicates.md: ... to here. Move GT and GE
2859 comparisons into v850_float_z_comparison_operator.
2860 * config/v850/v850-protos.h (v850_float_z_comparison_operator):
2861 Delete prototype.
2862 (v850_float_nz_comparison_operator): Likewise.
2863
f0d54148
JDA
28642013-01-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2865
2866 * config/pa/pa.c (pa_emit_move_sequence): Replace calls to gen_insv
2867 with calls to gen_insvsi/gen_insvdi.
2868
8f01beca
VK
28692013-01-09 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
2870
2871 * config/i386/i386.c (initial_ix86_tune_features): Set up
2872 X86_TUNE_AVX128_OPTIMAL for m_BTVER2.
2873
2aa579ad
JJ
28742013-01-09 Steven Bosscher <steven@gcc.gnu.org>
2875 Jakub Jelinek <jakub@redhat.com>
2876
2877 PR tree-optimization/48189
2878 * predict.c (predict_loops): If max is 0, don't call compare_tree_int.
2879 If nitercst is 0, don't predict the exit edge.
2880
6edc3e32 28812013-01-08 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
01a3a324
N
2882
2883 * config/aarch64/aarch64.c (aarch64_print_operand): Replace %r
2884 in asm_fprintf with reg_names.
2885 (aarch64_print_operand_address): Likewise.
2886 (aarch64_return_addr): Likewise.
2887 * config/aarch64/aarch64.h (ASM_FPRINTF_EXTENSIONS): Remove.
2888
f6f94d94
JDA
28892013-01-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2890
2891 * config/pa/pa.h (VAL_U6_BITS_P): Define.
2892 (INT_U6_BITS): Likewise.
2893 * config/pa/predicates.md (uint6_operand): New predicate.
2894 (shift5_operand, shift6_operand): Likewise.
2895 * config/pa/pa.md (lshrsi3, rotrsi3): Use shift5_operand instead of
2896 arith32_operand.
2897 (lshrdi3): Use shift6_operand.
2898 (shrpsi4, shrpdi4): New insn patterns.
2899 (extzv): Delete expander.
2900 (extzvsi, extzvdi): New expanders. Use uint5_operand and uint6_operand
2901 predicates in unamed zero extract patterns. Tighten common constraint.
2902 (extv): Delete expander.
2903 (extvsi, extvdi): New expanders. Use uint5_operand and uint6_operand
2904 predicates in unamed sign extract patterns. Tighten common constraint.
2905 (insv): Delete expander.
2906 (insvsi, insvdi): New expanders. Use uint5_operand and uint6_operand
2907 predicates in unamed insert patterns. Tighten common constraint.
2908 Change uint32_operand predicate to uint6_operand predicate in unamed
2909 DImode pattern to insert constant values of type 1...1xxxx.
2910
36b72910
JH
29112013-01-04 Jan Hubicka <jh@suse.cz>
2912
2913 PR tree-optimization/55823
7b0fe4f4
UB
2914 * ipa-prop.c (update_indirect_edges_after_inlining): Fix ordering
2915 issue.
36b72910 2916
47876a2a 29172013-01-08 Jakub Jelinek <jakub@redhat.com>
c6d851b9
JJ
2918 Uros Bizjak <ubizjak@gmail.com>
2919
2920 PR rtl-optimization/55845
2921 * df-problems.c (can_move_insns_across): Stop scanning at
2922 volatile_insn_p source instruction or give up if
2923 across_from .. across_to range contains any volatile_insn_p
2924 instructions.
2925
4369c11e
TB
29262013-01-08 Tejas Belagod <tejas.belagod@arm.com>
2927
7b0fe4f4
UB
2928 * config/aarch64/aarch64-simd.md (vec_init<mode>): New.
2929 * config/aarch64/aarch64-protos.h (aarch64_expand_vector_init):
2930 Declare.
4369c11e 2931 * config/aarch64/aarch64.c (aarch64_simd_dup_constant,
7b0fe4f4 2932 aarch64_simd_make_constant, aarch64_expand_vector_init): New.
4369c11e 2933
aeb7e7c1
JJ
29342013-01-08 Jakub Jelinek <jakub@redhat.com>
2935
2936 PR fortran/55341
2937 * asan.c (asan_clear_shadow): New function.
2938 (asan_emit_stack_protection): Use it.
2939
a02ad1aa
TB
29402013-01-08 Tejas Belagod <tejas.belagod@arm.com>
2941
2942 * config/aarch64/aarch64-simd.md (aarch64_simd_vec_<su>mult_lo_<mode>,
2943 aarch64_simd_vec_<su>mult_hi_<mode>): Separate instruction and operand
2944 with tab instead of space.
2945
f90d87f5
NC
29462013-01-08 Nick Clifton <nickc@redhat.com>
2947
2948 * config/rl78/rl78.c (rl78_expand_prologue): Always select
2949 register bank 0 at the start of an interrupt handler.
83ffd964
NC
2950 * config/rl78/rl78.md (mulsi3_g13): Correct values for MDBL and
2951 MDBH registers.
f90d87f5 2952
385eb93d
JG
29532013-01-08 James Greenhalgh <james.greenhalgh@arm.com>
2954
2955 * config/aarch64/aarch64-simd.md
2956 (aarch64_simd_bsl<mode>_internal): Add floating-point modes.
2957 (aarch64_simd_bsl): Likewise.
2958 (aarch64_vcond_internal<mode>): Likewise.
2959 (vcond<mode><mode>): Likewise.
2960 (aarch64_cm<cmp><mode>): Fix constraints, add new modes.
2961 * config/aarch64/iterators.md (V_cmp_result): Add V2DF.
2962
4dcd1054
JG
29632013-01-08 James Greenhalgh <james.greenhalgh@arm.com>
2964
2965 * config/aarch64/aarch64-builtins.c
2966 (aarch64_builtin_vectorized_function): Handle sqrt, sqrtf.
2967
4267a4a6
MJ
29682013-01-08 Martin Jambor <mjambor@suse.cz>
2969
2970 PR debug/55579
2971 * tree-sra.c (analyze_access_subtree): Return true also after
2972 potentially creating a debug-only replacement.
2973
5f4e6de3
JJ
29742013-01-08 Jakub Jelinek <jakub@redhat.com>
2975
3138f224
JJ
2976 PR middle-end/55890
2977 * tree-ssa-ccp.c (evaluate_stmt): Use gimple_call_builtin_p.
2978
5f4e6de3
JJ
2979 PR tree-optimization/54120
2980 * tree-vrp.c (range_fits_type_p): Don't allow
2981 src_precision < precision from signed vr to unsigned_p
2982 if vr->min or vr->max is negative.
2983 (simplify_float_conversion_using_ranges): Test can_float_p
2984 against CODE_FOR_nothing.
2985
f3ef18ff
JJ
29862013-01-08 Jakub Jelinek <jakub@redhat.com>
2987 Richard Biener <rguenther@suse.de>
2988
2989 PR middle-end/55851
2990 * fold-const.c (int_binop_types_match_p): Allow all INTEGRAL_TYPE_P
2991 types instead of just INTEGER_TYPE types.
2992
25c210f9
MK
29932013-01-07 Mark Kettenis <kettenis@openbsd.org>
2994
2995 * config/i386/openbsdelf.h (LIBGCC2_HAS_TF_MODE, LIBGCC2_TF_CEXT,
2996 TF_SIZE): Define.
f90d87f5 2997
81826a7b
SE
29982013-01-07 Steve Ellcey <sellcey@mips.com>
2999
3000 PR target/42661
3001 * config/mips/mips.opt: Change mad to mmad to match documentation.
3002
35678514
GJL
30032013-01-07 Georg-Johann Lay <avr@gjlay.de>
3004
3005 PR target/55897
3006 * doc/extend.texi (AVR Named Address Spaces): __memx goes into
3007 .progmemx.data now.
3008
e5669488
GJL
30092013-01-07 Georg-Johann Lay <avr@gjlay.de>
3010
3011 PR target/55897
3012 * config/avr/avr.h (ADDR_SPACE_COUNT): New enum.
3013 (avr_addrspace_t): Add .section_name field.
3014 * config/avr/avr.c (progmem_section): Use ADDR_SPACE_COUNT as
3015 array size.
3016 (avr_addrspace): Same. Initialize .section_name. Remove last
3017 NULL entry. Put __memx into .progmemx.data.
3018 (progmem_section_prefix): Remove.
3019 (avr_asm_init_sections): No need to initialize progmem_section.
3020 (avr_asm_named_section): Use avr_addrspace[].section_name to get
3021 section name prefix.
3022 (avr_asm_select_section): Ditto. And use get_unnamed_section to
3023 retrieve the progmem section.
3024 * avr-c.c (avr_cpu_cpp_builtins): Use ADDR_SPACE_COUNT as loop
3025 boundary to run over avr_addrspace[].
3026 (avr_register_target_pragmas): Ditto.
3027
656e6f37
JJ
30282013-01-06 Jakub Jelinek <jakub@redhat.com>
3029
3030 * varasm.c (output_constant_def_contents): For asan_protect_global
3031 protected strings, adjust DECL_ALIGN if needed, before testing for
3032 anchored symbols.
3033 (place_block_symbol): Adjust size for asan protected STRING_CSTs if
3034 TREE_CONSTANT_POOL_ADDRESS_P. Increase alignment for asan protected
3035 normal decls.
3036 (output_object_block): For asan protected decls, emit asan padding
3037 after their contents.
3038 * asan.c (asan_protect_global): Don't check TREE_ASM_WRITTEN here.
3039 (asan_finish_file): Test it here instead.
3040
6edc3e32
UB
30412013-01-07 Nick Clifton <nickc@redhat.com>
3042 Matthias Klose <doko@debian.org>
3043 Doug Kwan <dougkwan@google.com>
3044 H.J. Lu <hongjiu.lu@intel.com>
b352afba
NC
3045
3046 PR driver/55470
3047 * collect2.c (main): Support -fuse-ld=bfd and -fuse-ld=gold.
3048
3049 * common.opt: Add fuse-ld=bfd and fuse-ld=gold.
3050
3051 * gcc.c (LINK_COMMAND_SPEC): Pass -fuse-ld=* to collect2.
3052
7b0fe4f4 3053 * opts.c (comman_handle_option): Ignore -fuse-ld=bfd and -fuse-ld=gold.
b352afba
NC
3054
3055 * doc/invoke.texi: Document -fuse-ld=bfd and -fuse-ld=gold.
3056
2a095093
GJL
30572013-01-07 Georg-Johann Lay <avr@gjlay.de>
3058
f3b503f4 3059 PR target/54461
2a095093
GJL
3060 * doc/install.texi (Cross-Compiler-Specific Options): Document
3061 --with-avrlibc.
3062
383f9b34
TB
30632013-01-07 Tejas Belagod <tejas.belagod@arm.com>
3064
3065 * config/aarch64/arm_neon.h (vmovn_high_is16, vmovn_high_s32,
3066 vmovn_high_s64, vmovn_high_u16, vmovn_high_u32, vmovn_high_u64,
3067 vqmovn_high_s16, vqmovn_high_s32, vqmovn_high_s64, vqmovn_high_u16,
3068 vqmovn_high_u32, vqmovn_high_u64, vqmovun_high_s16, vqmovun_high_s32,
3069 vqmovun_high_s64): Fix source operand number and update copyright.
3070
3626621a
RB
30712013-01-07 Richard Biener <rguenther@suse.de>
3072
3073 PR middle-end/55890
3074 * gimple.h (gimple_call_builtin_p): New overload.
3075 * gimple.c (validate_call): New function.
3076 (gimple_call_builtin_p): Likewise.
3077 * tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
3078 Use gimple_call_builtin_p.
3079 (find_func_clobbers): Likewise.
3080 * tree-ssa-strlen.c (adjust_last_stmt): Likewise.
3081 (strlen_optimize_stmt): Likewise.
3082
8b2ea410
JG
30832013-01-07 James Greenhalgh <james.greenhalgh@arm.com>
3084
3085 * config/aarch64/arm_neon.h (vld1_dup_*): Make argument const.
3086 (vld1q_dup_*): Likewise.
3087 (vld1_*): Likewise.
3088 (vld1q_*): Likewise.
3089 (vld1_lane_*): Likewise.
3090 (vld1q_lane_*): Likewise.
3091
9713d329
RB
30922013-01-07 Richard Biener <rguenther@suse.de>
3093
3094 * lto-streamer.h (LTO_minor_version): Bump to 2.
3095
3520f7cc
JG
30962013-01-07 James Greenhalgh <james.greenhalgh@arm.com>
3097
3098 * config/aarch64/aarch64-protos.h
3099 (aarch64_const_double_zero_rtx_p): Rename to...
3100 (aarch64_float_const_zero_rtx_p): ...this.
3101 (aarch64_float_const_representable_p): New.
3102 (aarch64_output_simd_mov_immediate): Likewise.
3103 * config/aarch64/aarch64-simd.md (*aarch64_simd_mov<mode>): Refactor
3104 move immediate case.
3105 * config/aarch64/aarch64.c
3106 (aarch64_const_double_zero_rtx_p): Rename to...
3107 (aarch64_float_const_zero_rtx_p): ...this.
3108 (aarch64_print_operand): Allow printing of new constants.
3109 (aarch64_valid_floating_const): New.
3110 (aarch64_legitimate_constant_p): Check for valid floating-point
3111 constants.
3112 (aarch64_simd_valid_immediate): Likewise.
3113 (aarch64_vect_float_const_representable_p): New.
3114 (aarch64_float_const_representable_p): Likewise.
3115 (aarch64_simd_imm_zero_p): Also allow for floating-point 0.0.
3116 (aarch64_output_simd_mov_immediate): New.
3117 * config/aarch64/aarch64.md (*movsf_aarch64): Add new alternative.
3118 (*movdf_aarch64): Likewise.
3119 * config/aarch64/constraints.md (Ufc): New.
3120 (Y): call aarch64_float_const_zero_rtx.
3121 * config/aarch64/predicates.md (aarch64_fp_compare_operand): New.
3122
e167c04d
RB
31232013-01-07 Richard Biener <rguenther@suse.de>
3124
3125 PR tree-optimization/55888
3126 PR tree-optimization/55862
3127 * tree-ssa-pre.c (phi_translate_1): Revert previous change.
3128 (valid_in_sets): Check if a NAME has a leader in AVAIL_OUT,
3129 not if it is contained therein.
3130
0139aaab
GJL
31312013-01-07 Georg-Johann Lay <avr@gjlay.de>
3132
3133 * config/avr/t-avr: Typo.
3134
4a176b23
GJL
31352013-01-07 Georg-Johann Lay <avr@gjlay.de>
3136
3137 PR55243
3138 * config/avr/t-avr: Don't automatically rebuild
3139 $(srcdir)/config/avr/t-multilib
3140 $(srcdir)/config/avr/avr-tables.opt
3141 $(srcdir)/doc/avr-mmcu.texi
3142 (avr-mcus): New phony target to build them on request.
3143 (s-avr-mlib, s-avr-mmcu-texi): Remove.
3144 * avr/avr-mcus.def: Adjust comments.
3145
c7afdc98
UB
31462013-01-07 Uros Bizjak <ubizjak@gmail.com>
3147
3148 * config/i386/i386.c (DEFAULT_PCC_STRUCT_RETURN): Remove.
3149
1ab05c31
RS
31502013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
3151
3152 * file-find.c, file-find.h, realmpfr.c: Add FSF as copyright holder.
3153
488e3acc
RS
31542013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
3155
3156 * config/tilepro/gen-mul-tables.cc: Put copyright on one line.
3157
a89599d2
DE
31582013-01-05 David Edelsohn <dje.gcc@gmail.com>
3159
3160 * config/rs6000/aix53.h (LIB_SPEC): Add -lpthreads when compiling
3161 to generate profiling.
3162 * config/rs6000/aix64.h (LIB_SPEC): Same.
3163
70f09188
AP
31642013-01-04 Andrew Pinski <apinski@cavium.com>
3165
3166 * config/aarch64/aarch64.c (aarch64_fixed_condition_code_regs):
3167 New function.
3168 (TARGET_FIXED_CONDITION_CODE_REGS): Define.
3169
918d445f
UB
31702013-01-04 Uros Bizjak <ubizjak@gmail.com>
3171
3172 * config/i386/i386.c (ix86_legitimize_address): Call convert_to_mode
3173 unconditionally.
3174 (ix86_expand_move): Ditto.
3175 (ix86_zero_extend_to_Pmode): Ditto.
3176 (ix86_expand_call): Ditto.
3177 (ix86_expand_special_args_builtin): Ditto.
3178 (ix86_expand_builtin): Ditto.
3179
361618ec
RB
31802013-01-04 Richard Biener <rguenther@suse.de>
3181
3182 PR tree-optimization/55862
3183 * tree-ssa-pre.c (phi_translate_1): Valueize SSA names after
3184 translating them through PHI nodes.
3185
87eab554
MJ
31862013-01-04 Martin Jambor <mjambor@suse.cz>
3187
3188 PR tree-optimization/55755
3189 * tree-sra.c (sra_modify_assign): Do not check that an access has no
3190 children when trying to avoid producing a VIEW_CONVERT_EXPR.
3191
33879b9f
MP
31922013-01-04 Marek Polacek <polacek@redhat.com>
3193
3194 PR middle-end/55859
3195 * opts.c (default_options_optimization): Clarify error message.
3196
3068819a
RB
31972013-01-04 Richard Biener <rguenther@suse.de>
3198
3199 PR middle-end/55863
3200 * fold-const.c (split_tree): Undo -X - 1 to ~X folding for
3201 reassociation.
3202
0e4ae794
JDA
32032013-01-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3204
3205 PR target/53789
3206 * config/pa/pa.md (movsi): Revert previous change.
e58d2e48
JDA
3207 * config/pa/pa.c (pa_legitimate_constant_p): Reject all TLS symbol
3208 references.
0e4ae794 3209
65c88cef
RH
32102013-01-03 Richard Henderson <rth@redhat.com>
3211
3212 * config/i386/i386.c (ix86_expand_move): Always assign to op1
3213 after eliminating TLS symbols.
3214
8ac16127
MG
32152013-01-03 Marc Glisse <marc.glisse@inria.fr>
3216
3217 PR bootstrap/50167
3218 * graphite-interchange.c (pdr_stride_in_loop): Use gmp_fprintf.
3219 * graphite-poly.c (debug_gmp_value): Likewise.
3220
bb664f09
UB
32212013-01-03 Uros Bizjak <ubizjak@gmail.com>
3222
3223 PR target/55712
3224 * config/i386/i386-c.c (ix86_target_macros_internal): Depending on
3225 selected code model, define __code_mode_small__, __code_model_medium__,
3226 __code_model_large__, __code_model_32__ or __code_model_kernel__.
3227 * config/i386/cpuid.h (__cpuid, __cpuid_count) [__i386__]: Prefix
3228 xchg temporary register with %k. Declare temporary register as
3229 early clobbered.
3230 [__x86_64__]: For medium and large code models, preserve %rbx register.
3231
bcf1ef00
RB
32322013-01-03 Richard Biener <rguenther@suse.de>
3233
0506634a 3234 * tree-data-ref.c (dump_conflict_function): Use less vertical spacing.
bcf1ef00
RB
3235 (dump_subscript): Adjust.
3236 (finalize_ddr_dependent): Do not dump redundant info.
3237 (analyze_siv_subscript): Adjust.
3238 (subscript_dependence_tester): Likewise.
3239 (compute_affine_dependence): Likewise.
3240
59fd17e3
RB
32412013-01-03 Richard Biener <rguenther@suse.de>
3242
3243 Revert
3244 2013-01-03 Richard Biener <rguenther@suse.de>
3245
3246 PR tree-optimization/55857
3247 * tree-vect-stmts.c (vectorizable_load): Do not setup
3248 re-alignment for invariant loads.
3249
3250 2013-01-02 Richard Biener <rguenther@suse.de>
3251
3252 * tree-vect-stmts.c (vectorizable_load): When vectorizing an
0506634a 3253 invariant load do not generate a vector load from the scalar location.
59fd17e3 3254
595c2679
RB
32552013-01-03 Richard Biener <rguenther@suse.de>
3256
3257 * tree-vect-loop.c (vect_analyze_loop_form): Clarify reason
3258 for not vectorizing.
3259 * tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref): Do
3260 not build INDIRECT_REFs, call get_name once only.
3261 (vect_create_data_ref_ptr): Likewise. Dump base object kind
3262 based on DR_BASE_OBJECT, not DR_BASE_ADDRESS.
3263
90bb7d7a
RB
32642013-01-03 Richard Biener <rguenther@suse.de>
3265
3266 PR tree-optimization/55857
3267 * tree-vect-stmts.c (vectorizable_load): Do not setup
3268 re-alignment for invariant loads.
3269
f09b77ca
RB
32702013-01-03 Richard Biener <rguenther@suse.de>
3271
3272 PR lto/55848
3273 * lto-symtab.c (lto_symtab_merge_decls_1): As last resort, always
3274 prefer a built-in decl.
3275
3461a16e
JJ
32762013-01-03 Jakub Jelinek <jakub@redhat.com>
3277
df8e2b4f
JJ
3278 * gcc.c (process_command): Update copyright notice dates.
3279 * gcov.c (print_version): Likewise.
3280 * gcov-dump.c (print_version): Likewise.
3281
3461a16e
JJ
3282 PR rtl-optimization/55838
3283 * loop-iv.c (iv_number_of_iterations): Call lowpart_subreg on
3284 iv0.step, iv1.step and step.
3285
8b5546d6
JJ
32862013-01-03 Jakub Jelinek <jakub@redhat.com>
3287 Marc Glisse <marc.glisse@inria.fr>
3288
3289 PR tree-optimization/55832
3290 * fold-const.c (fold_binary_loc): For ABS_EXPR<x> >= 0 and
3291 ABS_EXPR<x> < 0 folding use constant_boolean_node instead of
3292 integer_{one,zero}_node.
3293
8ab1d2e9
JJ
32942013-01-03 Jakub Jelinek <jakub@redhat.com>
3295
3296 PR debug/54402
3297 * params.def (PARAM_MAX_VARTRACK_REVERSE_OP_SIZE): New param.
3298 * var-tracking.c (reverse_op): Don't add reverse ops to
3299 VALUEs that have already
0506634a 3300 PARAM_VALUE (PARAM_MAX_VARTRACK_REVERSE_OP_SIZE) or longer locs list.
8ab1d2e9 3301
5b9ad1d4
GP
33022013-01-02 Gerald Pfeifer <gerald@pfeifer.com>
3303
3304 * doc/contrib.texi: Note years as release manager for Mark Mitchell.
3305
e25a6711
TJ
33062013-01-02 Teresa Johnson <tejohnson@google.com>
3307
3308 * dumpfile.c (dump_loc): Print filename with location.
3309 * tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Use
3310 new location_t parameter to emit complete unroll message with
3311 new dump framework.
3312 (canonicalize_loop_induction_variables): Compute loops location
3313 and pass to try_unroll_loop_completely.
3314 * loop-unroll.c (report_unroll_peel): New function.
3315 (peel_loops_completely): Use new dump format with location
3316 for main dumpfile message, and invoke report_unroll_peel on success.
3317 (decide_unrolling_and_peeling): Ditto.
3318 (decide_peel_once_rolling): Remove old dumpfile message subsumed
3319 by report_unroll_peel.
3320 (decide_peel_completely): Ditto.
3321 (decide_unroll_constant_iterations): Ditto.
3322 (decide_unroll_runtime_iterations): Ditto.
3323 (decide_peel_simple): Ditto.
3324 (decide_unroll_stupid): Ditto.
3325 * cfgloop.c (get_loop_location): New function.
3326 * cfgloop.h (get_loop_location): Declare.
3327
77878621
ST
33282013-01-02 Sriraman Tallam <tmsriram@google.com>
3329
3330 * config/i386/i386.c (fold_builtin_cpu): Remove unnecessary checks for
3331 NULL.
3332
9e65d03e
JDA
33332013-01-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3334
3335 PR middle-end/55198
3336 * expr.c (expand_expr_real_1): Don't use bitfield extraction for non
3337 BLKmode objects when EXPAND_MEMORY is specified.
3338
6a7da30f
ST
33392013-01-02 Sriraman Tallam <tmsriram@google.com>
3340
3341 * config/i386/i386.c (ix86_get_function_versions_dispatcher): Fix bug
3342 in loop predicate.
3343 (fold_builtin_cpu): Do not share cpu model decls across statements.
3344
e78167f2
JM
33452013-01-02 Jason Merrill <jason@redhat.com>
3346
3347 PR c++/55804
3348 * tree.c (build_array_type_1): Revert earlier change.
3349
8c075fb4
YZ
33502013-01-02 Yufeng Zhang <yufeng.zhang@arm.com>
3351
3352 * config/aarch64/aarch64-cores.def: Add entries for "cortex-a53" and
3353 "cortex-a57".
3354 * config/aarch64/aarch64-tune.md: Re-generate.
3355
0682ed3e
RB
33562013-01-02 Richard Biener <rguenther@suse.de>
3357
3358 * tree-vect-stmts.c (vectorizable_load): When vectorizing an
0506634a 3359 invariant load do not generate a vector load from the scalar location.
0682ed3e 3360
b8f6a302
RB
33612013-01-02 Richard Biener <rguenther@suse.de>
3362
3363 PR bootstrap/55784
3364 * configure.ac: Add $GMPINC to CFLAGS/CXXFLAGS.
3365 * configure: Regenerate.
3366
04b80dbb
RS
33672013-01-02 Richard Sandiford <rdsandiford@googlemail.com>
3368
3369 * builtins.c (expand_builtin_mathfn, expand_builtin_mathfn_2)
3370 (expand_builtin_mathfn_ternary, expand_builtin_mathfn_3)
3371 (expand_builtin_int_roundingfn_2): Keep the original target around
3372 for the fallback case.
3373
635b0b0c
RS
33742013-01-02 Richard Sandiford <rdsandiford@googlemail.com>
3375
3376 * tree-vrp.c (range_fits_type_p): Require the MSB of the double_int
3377 to be clear for sign changes.
3378
42d57399
JH
33792013-01-01 Jan Hubicka <jh@suse.cz>
3380
3381 * ipa-inline-analysis.c: Fix formatting.
3382
5bb6669d
JJ
33832013-01-01 Jakub Jelinek <jakub@redhat.com>
3384
3385 PR tree-optimization/55831
3386 * tree-vect-loop.c (get_initial_def_for_induction): Use
3387 gsi_after_labels instead of gsi_start_bb.
ad41bd84 3388\f
86a2db33 3389Copyright (C) 2013 Free Software Foundation, Inc.
ad41bd84
JM
3390
3391Copying and distribution of this file, with or without modification,
3392are permitted in any medium without royalty provided the copyright
3393notice and this notice are preserved.