]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ChangeLog
re PR c++/55670 ([C++11] This isn't a pure virtual method.)
[thirdparty/gcc.git] / gcc / ChangeLog
CommitLineData
c4bfe8bf
JJ
12013-02-13 Jakub Jelinek <jakub@redhat.com>
2
3 * asan.c (create_cond_insert_point): Add create_then_fallthru_edge
4 argument. If it is false, don't create edge from then_bb to
5 fallthru_bb.
6 (insert_if_then_before_iter): Pass true to it.
7 (build_check_stmt): Pass false to it.
8 (transform_statements): Flush hash table only on extended basic
9 block boundaries, rather than at the beginning of every bb.
10 Don't flush hash table on nonfreeing_call_p calls.
11 * tree-flow.h (nonfreeing_call_p): New prototype.
12 * tree-ssa-phiopt.c (nonfreeing_call_p): No longer static.
13
7afe2801
DM
142013-02-13 David S. Miller <davem@davemloft.net>
15
16 * expmed.c (expand_shift_1): Only strip scalar integer subregs.
17
70cc3288
VM
182013-02-13 Vladimir Makarov <vmakarov@redhat.com>
19
20 PR target/56184
21 * ira.c (max_regno_before_ira): Move from ...
22 (ira): ... here.
23 (fix_reg_equiv_init): Use max_regno_before_ira instead of
24 vec_safe_length.
25
6422242b
JJ
262013-02-13 Jakub Jelinek <jakub@redhat.com>
27
28 * config/i386/i386.c (ix86_asan_shadow_offset): Revert last change.
29
976a81ee
RB
302013-02-13 Richard Biener <rguenther@suse.de>
31
32 PR lto/56295
33 * gimple-streamer-out.c (output_gimple_stmt): Undo wrapping
34 globals in MEM_REFs.
35
c1874a87
RB
362013-02-13 Richard Biener <rguenther@suse.de>
37
38 * loop-init.c (loop_optimizer_init): Clear loop state when
39 re-initializing preserved loops.
40 * loop-unswitch.c (unswitch_single_loop): Return whether
41 we unswitched the loop. Do not verify loop state here.
42 (unswitch_loops): When we unswitched a loop discover new
43 loops.
44
b4ab7d34
KS
452013-02-13 Kostya Serebryany <kcc@google.com>
46
47 * config/i386/i386.c: Use 0x7fff8000 as asan_shadow_offset on x86_64
48 linux.
49 * sanitizer.def: Rename __asan_init to __asan_init_v1.
50
bdcbe80c
DS
512013-02-12 Dodji Seketeli <dodji@redhat.com>
52
53 Avoid instrumenting duplicated memory access in the same basic block
54 * Makefile.in (asan.o): Add new dependency on hash-table.h
55 * asan.c (struct asan_mem_ref, struct mem_ref_hasher): New types.
56 (asan_mem_ref_init, asan_mem_ref_get_end, get_mem_ref_hash_table)
57 (has_stmt_been_instrumented_p, empty_mem_ref_hash_table)
58 (free_mem_ref_resources, has_mem_ref_been_instrumented)
59 (has_stmt_been_instrumented_p, update_mem_ref_hash_table)
60 (get_mem_ref_of_assignment): New functions.
61 (get_mem_refs_of_builtin_call): Extract from
62 instrument_builtin_call and tweak a little bit to make it fit with
63 the new signature.
64 (instrument_builtin_call): Use the new
65 get_mem_refs_of_builtin_call. Use gimple_call_builtin_p instead
66 of is_gimple_builtin_call.
67 (instrument_derefs, instrument_mem_region_access): Insert the
68 instrumented memory reference into the hash table.
69 (maybe_instrument_assignment): Renamed instrument_assignment into
70 this, and change it to advance the iterator when instrumentation
71 actually happened and return true in that case. This makes it
72 homogeneous with maybe_instrument_assignment, and thus give a
73 chance to callers to be more 'regular'.
74 (transform_statements): Clear the memory reference hash table
75 whenever we enter a new BB, when we cross a function call, or when
76 we are done transforming statements. Use
77 maybe_instrument_assignment instead of instrumentation. No more
78 need to special case maybe_instrument_assignment and advance the
79 iterator after calling it; it's now handled just like
80 maybe_instrument_call. Update comment.
81
4861a1f7
RB
822013-02-13 Richard Biener <rguenther@suse.de>
83
84 * config/mn10300/mn10300.c (mn10300_scan_for_setlb_lcc):
85 Fix loop discovery code.
86
1c86bd80
VM
872013-02-12 Vladimir Makarov <vmakarov@redhat.com>
88
89 PR inline-asm/56148
90 * lra-constraints.c (process_alt_operands): Match early clobber
70cc3288 91 operand with itself. Check conflicts with earlyclobber only if
1c86bd80
VM
92 the operand is not reloaded. Prefer to reload conflicting operand
93 if earlyclobber and matching operands are the same.
94
7cbda518
RB
952013-02-12 Richard Biener <rguenther@suse.de>
96
97 PR lto/56297
98 * lto-streamer-out.c (write_symbol): Do not output symbols
99 for hard register variables.
100
e68a4ef6
GJL
1012013-02-12 Georg-Johann Lay <avr@gjlay.de>
102
103 PR target/54222
104 * config/avr/avr-dimode.md (umulsidi3, mulsidi3): New expanders.
105 (umulsidi3_insn, mulsidi3_insn): New insns.
106
2597da22
CL
1072013-02-12 Christophe Lyon <christophe.lyon@linaro.org>
108
109 * config/arm/arm-protos.h (struct cpu_vec_costs): New struct type.
110 (struct tune_params): Add vec_costs field.
111 * config/arm/arm.c (arm_builtin_vectorization_cost)
112 (arm_add_stmt_cost): New functions.
113 (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST)
114 (TARGET_VECTORIZE_ADD_STMT_COST): Define.
115 (arm_default_vec_cost): New struct of type cpu_vec_costs.
116 (arm_slowmul_tune, arm_fastmul_tune, arm_strongarm_tune)
117 (arm_xscale_tune, arm_9e_tune, arm_v6t2_tune, arm_cortex_tune)
118 (arm_cortex_a15_tune, arm_cortex_a5_tune, arm_cortex_a9_tune)
119 (arm_v6m_tune, arm_fa726te_tune): Define new vec_costs field.
120
43320568
RB
1212013-02-12 Richard Biener <rguenther@suse.de>
122
123 PR lto/56295
124 * gimple-streamer-in.c (input_gimple_stmt): Strip MEM_REFs off
125 decls again if possible.
126
a011aa39
RB
1272013-02-12 Richard Biener <rguenther@suse.de>
128
129 PR middle-end/56288
130 * tree-ssa.c (verify_ssa_name): Fix check, move
131 SSA_NAME_IN_FREE_LIST check up.
132
6da26889
JJ
1332013-02-12 Jakub Jelinek <jakub@redhat.com>
134 Steven Bosscher <steven@gcc.gnu.org>
135
136 PR rtl-optimization/56151
137 * optabs.c (add_equal_note): Don't return 0 if target is a MEM,
138 equal to op0 or op1, and last_insn pattern is CODE operation
139 with MEM dest and one of the operands matches that MEM.
140
f80e0faf
ST
1412013-02-11 Sriraman Tallam <tmsriramgoogle.com>
142
143 * doc/extend.texi: Document Function Multiversioning and "default"
144 parameter string to target attribute.
145 * config/i386/i386.c (get_builtin_code_for_version): Return 0 if
146 target attribute parameter is "default".
147 (ix86_compare_version_priority): Remove checks for target attribute.
148 (ix86_mangle_function_version_assembler_name): Change error to sorry.
149 Remove check for target attribute equal to NULL. Add assert.
150 (ix86_generate_version_dispatcher_body): Change error to sorry.
151
6c59ffd1
IS
1522013-02-11 Iain Sandoe <iain@codesourcery.com>
153 Jack Howarth <howarth@bromo.med.uc.edu>
154 Patrick Marlier <patrick.marlier@gmail.com>
155
156 PR libitm/55693
157 * config/darwin.h: Replace ENDFILE_SPEC with TM_DESTRUCTOR and
158 define ENDFILE_SPEC as TM_DESTRUCTOR.
159 * config/i386/darwin.h (ENDFILE_SPEC): Use TM_DESTRUCTOR.
160
6a52ccb3
AP
1612013-02-11 Alexander Potapenko <glider@google.com>
162 Jack Howarth <howarth@bromo.med.uc.edu>
163 Jakub Jelinek <jakub@redhat.com>
164
165 PR sanitizer/55617
166 * config/darwin.c (cdtor_record): Rename ctor_record.
167 (sort_cdtor_records): Rename sort_ctor_records.
168 (finalize_dtors): New routine to sort destructors by
169 priority before use in assemble_integer.
170 (machopic_asm_out_destructor): Use finalize_dtors if needed.
171
b63fe007
UB
1722013-02-11 Uros Bizjak <ubizjak@gmail.com>
173
174 PR rtl-optimization/56275
175 * simplify-rtx.c (avoid_constant_pool_reference): Check that
176 offset is non-negative and less than cmode size before
177 calling simplify_subreg.
178
8e89b5b5
RB
1792013-02-11 Richard Biener <rguenther@suse.de>
180
181 PR tree-optimization/56264
182 * cfgloop.h (fix_loop_structure): Adjust prototype.
183 * loop-init.c (fix_loop_structure): Return the number of
184 newly discovered loops.
185 * tree-cfgcleanup.c (repair_loop_structures): When new loops
186 are discovered, do a full loop-closed SSA rewrite.
187
b4a4b56d
RB
1882013-02-11 Richard Biener <rguenther@suse.de>
189
190 PR tree-optimization/56273
191 * tree-vrp.c (simplify_cond_using_ranges): Disable for the
192 first VRP run.
193 (check_array_ref): Fix missing newline in dumps.
194 (search_for_addr_array): Likewise.
195
0c885229
DE
1962013-02-09 David Edelsohn <dje.gcc@gmail.com>
197
198 * config/rs6000/aix61.h (OS_MISSING_ALTIVEC): Undefine.
199
59ac9a55
JJ
2002013-02-09 Jakub Jelinek <jakub@redhat.com>
201
202 PR target/56256
203 * config/rs6000/rs6000.h (ASSEMBLER_DIALECT): Define.
204
25bb0bb5
VM
2052013-02-08 Vladimir Makarov <vmakarov@redhat.com>
206
207 PR rtl-optimization/56246
0c885229 208 * lra-constraints.c (simplify_operand_subreg): Try to reuse
25bb0bb5
VM
209 reload pseudo.
210 * lra.c (lra): Clear lra_optional_reload_pseudos only when all
211 constraints are satisfied.
212
a698cc03
JL
2132013-02-08 Jeff Law <law@redhat.com>
214
215 PR debug/53948
216 * emit-rtl.c (reg_is_parm_p): New function.
217 * regs.h (reg_is_parm_p): New prototype.
218 * ira-conflicts.c (ira_build_conflicts): Allow parameters in
219 callee-clobbered registers.
220
e1122ddd
MM
2212013-02-08 Michael Meissner <meissner@linux.vnet.ibm.com>
222
223 PR target/56043
224 * config/rs6000/rs6000.c (rs6000_builtin_vectorized_libmass):
225 If there is no implicit builtin declaration, just return NULL.
226
19c5f6e6
UB
2272013-02-08 Uros Bizjak <ubizjak@gmail.com>
228
229 * config/i386/sse.md (FMAMODEM): New mode iterator.
230 (fma<mode>4, fms<mode>4, fnma<mode>4, fnms<mode>4): Use FMAMODEM
231 mode iterator. Do not use TARGET_SSE_MATH in insn constraint.
232
2480f2ca 2332013-02-08 Uros Bizjak <ubizjak@gmail.com>
76ef61fb 234
2480f2ca
UB
235 * config/i386/gnu-user.h (TARGET_CAN_SPLIT_STACK): Define only
236 when HAVE_GAS_CFI_PERSONALITY_DIRECTIVE is set.
237 * config/i386/gnu-user64.h (TARGET_CAN_SPLIT_STACK): Ditto.
238
2392013-02-08 Edgar E. Iglesias <edgar.iglesias@gmail.com>
240
241 * config.gcc (microblaze*-linux*): Add TARGET_BIG_ENDIAN_DEFAULT.
242 (microblaze*-*-elf): Likewise.
243 * config/microblaze/linux.h: Add -mbig-endian / -mlittle-endian to
244 LINK_SPEC.
245 * config/microblaze/microblaze-c.c: Add builtin defines for
246 _LITTLE_ENDIAN and _BIG_ENDIAN.
247 * config/microblaze/microblaze.h: Add TARGET_ENDIAN_DEFAULT and
248 add to TARGET_DEFAULT flags.
76ef61fb 249 Expand ASM_SPEC and LINK_SPEC.
2480f2ca
UB
250 Update BYTES_BIG_ENDIAN and WORDS_BIG_ENDIAN.
251 * config/microblaze/microblaze.md: Update extendsidi2 and
252 movdi_internal instructions to use low-order / high-order reg
253 print_operands.
254 * config/microblaze/microblaze.opt: Add mbig-endian and mlittle-endian
255 options and inversemask / mask of LITTLE_ENDIAN.
256 * config/microblaze/t-microblaze: Expand multilib options to
257 include mlittle-endian (le) and update exceptions patterns.
258
600a5961
JJ
2592013-02-08 Jakub Jelinek <jakub@redhat.com>
260
5df81313
JJ
261 PR rtl-optimization/56195
262 * lra-constraints.c (get_reload_reg): Don't reuse regs
263 if they have smaller mode than requested, if they have
264 wider mode than requested, try to return a SUBREG.
265
600a5961
JJ
266 PR tree-optimization/56250
267 * fold-const.c (extract_muldiv_1) <case NEGATE_EXPR>: Don't optimize
268 if type is unsigned and code isn't MULT_EXPR.
269
ff544649
GJL
2702013-02-08 Georg-Johann Lay <avr@gjlay.de>
271
272 PR tree-optimization/56064
273 * fixed-value.c (fixed_from_double_int): Sign/zero extend payload
274 bits according to mode.
275 * fixed-value.h (fixed_from_double_int)
276 (const_fixed_from_double_int): Adjust comments.
277
e45cde98
RB
2782013-02-08 Richard Biener <rguenther@suse.de>
279
280 PR lto/56231
281 * lto-streamer.h (struct data_in): Remove current_file, current_line
282 and current_col members.
283 * lto-streamer-out.c (lto_output_location): Stream changed bits
284 en-block for efficiency.
285 * lto-streamer-in.c (clear_line_info): Remove.
286 (lto_input_location): Cache current file, line and column
287 globally via local statics. Read changed bits en-block.
288 (input_function): Do not call clear_line_info.
289 (lto_read_body): Likewise.
290 (lto_input_toplevel_asms): Likewise.
291
c1ca73d8
MM
2922013-02-08 Michael Matz <matz@suse.de>
293
294 PR tree-optimization/52448
295 * tree-ssa-phiopt.c (struct name_to_bb): Add phase member.
296 (nt_call_phase): New static.
297 (add_or_mark_expr): Only mark accesses with newer phase than any
298 call seen.
299 (nonfreeing_call_p): New.
300 (nt_init_block): Update nt_call_phase, mark blocks as visited.
301 (nt_fini_block): Keep blocks marked as visited.
302 (get_non_trapping): Initialize nt_call_phase, and reset aux pointer.
303
57548aa2
RB
3042013-02-08 Richard Biener <rguenther@suse.de>
305
306 * ira.c (ira): Free broken dominator information.
307
8e10366f
UB
3082013-02-08 Uros Bizjak <ubizjak@gmail.com>
309
310 * config/i386/i386.c (ix86_spill_class): Use INTEGER_CLASS_P macro.
311
f64fb0fa
MP
3122013-02-08 Marek Polacek <polacek@redhat.com>
313
8e10366f 314 * cfgloop.c (verify_loop_structure): Add more checking of headers.
f64fb0fa 315
0375167b
RB
3162013-02-08 Richard Biener <rguenther@suse.de>
317
318 PR middle-end/56181
319 * cfgloop.h (flow_loops_find): Adjust.
320 (bb_loop_header_p): Declare.
321 * cfgloop.c (bb_loop_header_p): New function split out from ...
322 (flow_loops_find): ... here. Adjust function signature,
323 support incremental loop structure update.
324 (verify_loop_structure): Cleanup. Verify a loop is a loop.
325 * cfgloopmanip.c (fix_loop_structure): Move ...
326 * loop-init.c (fix_loop_structure): ... here.
327 (apply_loop_flags): Split out from ...
328 (loop_optimizer_init): ... here.
329 (fix_loop_structure): Use apply_loop_flags. Use flow_loops_find
330 in incremental mode, only remove dead loops here.
331
85d768f3
GJL
3322013-02-08 Georg-Johann Lay <avr@gjlay.de>
333
334 PR target/54222
335 * config/avr/avr.md (unspec) <UNSPEC_ROUND>: Add.
336 * config/avr/avr-fixed.md (ALL4QA, ALL124QA): New mode iterators.
337 (round<mode>3, round<mode>3_const): New expanders for fixed-mode.
338 (*round<mode>3.libgcc): New insns for fixed-modes.
339 * config/avr/builtins.def (ABSxx): Use a non-NULL LIBNAME.
340 (ROUNDxx, COUNTLSxx, BITSxx, xxBITS): New DEF_BUILTINs.
341 (ROUNDFX, COUNTLSFX, ABSFX): New DEF_BUILTINs.
342 * config/avr/stdfix.h (absFX, bitsFX, FXbits): Remove inline
343 implementations. Define to __builtin_avr_absFX,
344 __builtin_avr_bitsFX, __builtin_avr_FXbits, respectively.
345 (roundFX, countlsFX): Define to __builtin_avr_roundFX,
346 __builtin_avr_countlsFX, respectively.
347 * config/avr/avr-c.c (target.h): Include it.
348 (enum avr_builtin_id): New enum.
349 (avr_resolve_overloaded_builtin): New static function.
350 (avr_register_target_pragmas): Use it to set
351 targetm.resolve_overloaded_builtin.
352 * config/avr/avr.c (avr_init_builtins): Supply myriads of local
353 tree nodes used by DEF_BUILTIN.
354 (avr_expand_builtin) <AVR_BUILTIN_ROUNDxx>: Sanity-check them.
355 (avr_fold_builtin) <AVR_BUILTIN_BITSxx>: Fold to VIEW_COVERT_EXPR.
356 <AVR_BUILTIN_xxBITS>: Same.
357
661bc682
RB
3582013-02-08 Richard Biener <rguenther@suse.de>
359
360 * cfgloop.c (verify_loop_structure): Properly handle
361 a loop exiting to another loop header.
362 * ira-int.h (ira_loops): Remove.
363 * ira.c (ira_loops): Remove.
364 (ira): Use loop_optimizer_init and loop_optimizer_finalize.
365 (do_reload): Use loop_optimizer_finalize.
366 * ira-build.c (create_loop_tree_nodes): Use get_loops and
367 number_of_loops to access the loop tree.
368 (more_one_region_p): Likewise.
369 (finish_loop_tree_nodes): Likewise.
370 (rebuild_regno_allocno_maps): Likewise.
371 (mark_loops_for_removal): Likewise.
372 (mark_all_loops_for_removal): Likewise.
373 (remove_unnecessary_regions): Likewise.
374 (ira_build): Likewise.
375 * ira-emit.c (setup_entered_from_non_parent_p): Likewise.
376
0d5049b2
RB
3772013-02-08 Richard Biener <rguenther@suse.de>
378
379 * Makefile.in (tree-tailcall.o): Add $(CFGLOOP_H) dependency.
380 * ipa-pure-const.c (analyze_function): Avoid calling
381 mark_irreducible_loops twice.
8e10366f 382 * tree-tailcall.c (tree_optimize_tail_calls_1): Mark loops for fixup.
0d5049b2 383
499f32e8
DM
3842013-02-07 David S. Miller <davem@davemloft.net>
385
386 * dwarf2out.c (based_loc_descr): Perform leaf register remapping
387 on 'reg'.
388 * var-tracking.c (vt_add_function_parameter): Test the presence of
389 HAVE_window_save properly and do not remap argument registers when
390 we have a leaf function.
391
6edc3e32
UB
3922013-02-07 Uros Bizjak <ubizjak@gmail.com>
393
394 PR bootstrap/56227
395 * ggc-page.c (ggc_print_statistics): Use HOST_LONG_LONG_FORMAT
396 instead of "ll".
397 * config/i386/i386.c (ix86_print_operand): Ditto.
398
5306401f
VM
3992013-02-07 Vladimir Makarov <vmakarov@redhat.com>
400
6edc3e32 401 * lra-constraints.c (process_alt_operands): Fix recently added comment.
5306401f 402
027ece11
VM
4032013-02-07 Vladimir Makarov <vmakarov@redhat.com>
404
405 PR rtl-optimization/56225
406 * lra-constraints.c (process_alt_operands): Check that reload hard
407 reg can hold value for strict_low_part.
408
f980dfdb
JJ
4092013-02-07 Jakub Jelinek <jakub@redhat.com>
410
411 PR debug/56154
412 * dwarf2out.c (dwarf2_debug_hooks): Set end_function hook to
413 dwarf2out_end_function.
414 (in_first_function_p, maybe_at_text_label_p,
415 first_loclabel_num_not_at_text_label): New variables.
416 (dwarf2out_var_location): In the first function find out
6edc3e32 417 lowest loclabel_num N where .LVLN is known not to be equal to .Ltext0.
f980dfdb
JJ
418 (find_empty_loc_ranges_at_text_label, dwarf2out_end_function): New
419 functions.
420
73dd3123
EB
4212013-02-07 Eric Botcazou <ebotcazou@adacore.com>
422
423 PR rtl-optimization/56178
424 * cse.c (cse_insn): Do not create a REG_EQUAL note if the source is a
425 SUBREG of a register. Tidy up related block of code.
426 * fwprop.c (forward_propagate_and_simplify): Do not create a REG_EQUAL
427 note if the source is a register or a SUBREG of a register.
428
e3936f47
JJ
4292013-02-07 Jakub Jelinek <jakub@redhat.com>
430
431 PR target/56228
432 * config/rs6000/rs6000.md (ptrm): New mode attr.
433 (call_indirect_aix<ptrsize>, call_indirect_aix<ptrsize>_nor11,
434 call_value_indirect_aix<pttrsize>,
435 call_value_indirect_aix<pttrsize>_nor11): Use <ptrm> instead of
436 m in constraints.
437
d96d674b
MH
4382013-02-07 Michael Haubenwallner <michael.haubenwallner@salomon.at>
439
440 * collect2.c (main): Set aix64_flag for -G and -bsvr4 too, disable
441 if -bnortl. Convert to strcmp and strncmp.
442
921f2dee
AM
4432013-02-07 Alan Modra <amodra@gmail.com>
444
445 PR target/54009
446 * config/rs6000/rs6000.c (mem_operand_gpr): Check that LO_SUM
447 addresses won't wrap when offsetting.
448 (rs6000_secondary_reload): Provide secondary reloads needed for
449 wrapping LO_SUM addresses.
450
d09c7dba
TS
4512013-02-06 Thomas Schwinge <thomas@codesourcery.com>
452
453 * config/gnu.h (GNU_USER_TARGET_OS_CPP_BUILTINS): Never define
454 MACH, just __MACH__.
455
a44bbd48
RB
4562013-02-06 Richard Biener <rguenther@suse.de>
457
458 * tracer.c (tracer): Mark loops with LOOPS_NEED_FIXUP
459 instead of calling fix_loop_structure.
460
6d840d99
JJ
4612013-02-06 Jakub Jelinek <jakub@redhat.com>
462
463 PR middle-end/56217
464 * omp-low.c (use_pointer_for_field): Return false if
465 lower_send_shared_vars doesn't generate any copy-out code.
466
0f33baa9
TV
4672013-02-06 Tom de Vries <tom@codesourcery.com>
468
469 PR rtl-optimization/56131
470 * cfgrtl.c (delete_insn): Use NOTE_BASIC_BLOCK instead of BLOCK_FOR_INSN
471 to get the bb of a NOTE_INSN_BASIC_BLOCK. Handle the case that the bb
472 of the label is NULL. Add comment.
473
11f1e3ab
JJ
4742013-02-05 Jakub Jelinek <jakub@redhat.com>
475
31502f9f
JJ
476 * tree.h (struct tree_decl_with_vis): Remove thread_local field.
477
a74db9bd
JJ
478 PR sanitizer/55374
479 * config/gnu-user.h (LIBTSAN_EARLY_SPEC): Define.
480 (STATIC_LIBTSAN_LIBS): Likewise.
481 * gcc.c (ADD_STATIC_LIBTSAN_LIBS, LIBTSAN_EARLY_SPEC): Define.
482 (LIBTSAN_SPEC): Add ADD_STATIC_LIBTSAN_LIBS, if LIBTSAN_EARLY_SPEC
483 is defined, don't add anything else beyond that.
484 (SANITIZER_EARLY_SPEC, SANITIZER_SPEC): Define.
485 (LINK_COMMAND_SPEC): Use them.
486
11f1e3ab
JJ
487 PR tree-optimization/56205
488 * tree-stdarg.c (check_all_va_list_escapes): Return true if
489 there are any PHI nodes that set non-va_list_escape_vars SSA_NAME
490 and some va_list_escape_vars SSA_NAME appears in some PHI argument.
491
14ac6aa2
RB
4922013-02-05 Richard Biener <rguenther@suse.de>
493
494 PR tree-optimization/53342
495 PR tree-optimization/53185
496 * tree-vectorizer.h (vect_check_strided_load): Remove.
497 * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Do
498 not disallow peeling for vectorized strided loads.
499 (vect_check_strided_load): Make static and simplify.
500 (vect_analyze_data_refs): Adjust.
501 * tree-vect-stmts.c (vectorizable_load): Handle peeled loops
502 correctly when vectorizing strided loads.
503
6f22445a
RB
5042013-02-05 Richard Biener <rguenther@suse.de>
505
506 * doc/install.texi: Refer to ISL, not PPL.
507
39f9719e
JH
5082013-02-05 Jan Hubicka <jh@suse.cz>
509
ec4224ac
JH
510 PR tree-optimization/55789
511 * params.def (PARAM_EARLY_INLINER_MAX_ITERATIONS): Drop to 1.
512
5132013-02-05 Jan Hubicka <jh@suse.cz>
514
515 PR tree-optimization/55789
39f9719e
JH
516 * cgraphclones.c (cgraph_remove_node_and_inline_clones): Remove
517 the dead call anyway.
518
956d3b33
EB
5192013-02-05 Eric Botcazou <ebotcazou@adacore.com>
520
521 PR sanitizer/55374
522 * config/gnu-user.h (LIBASAN_EARLY_SPEC): Add missing guard.
523
5242013-02-04 Alexander Potapenko <glider@google.com>
525 Jack Howarth <howarth@bromo.med.uc.edu>
ae526fe5
AP
526 Jakub Jelinek <jakub@redhat.com>
527
528 PR sanitizer/55617
529 * config/darwin.c (sort_ctor_records): Stabilized qsort
530 on constructor priority by using original position.
531 (finalize_ctors): New routine to sort constructors by
532 priority before use in assemble_integer.
533 (machopic_asm_out_constructor): Use finalize_ctors if needed.
534
7ac3af38
JJ
5352013-02-04 Jakub Jelinek <jakub@redhat.com>
536
537 PR libstdc++/54314
538 * config/i386/winnt.c (i386_pe_assemble_visibility): Don't warn
539 about visibility on artificial decls.
540 * config/sol2.c (solaris_assemble_visibility): Likewise.
541
152689dc
KT
5422013-02-04 Kai Tietz <ktietz@redhat.com>
543
544 PR target/56186
545 * config/i386/i386.c (function_value_ms_64): Add additional valtype
546 argument and improve checking of return-argument types for 16-byte
547 modes.
548 (ix86_function_value_1): Add additional valtype argument on call
549 of function_value_64.
550 (return_in_memory_ms_64): Sync 16-byte sized mode handling with
551 handling infunction_value_64 function.
552
2b5987b5
MGD
5532013-02-04 Matthew Gretton-Dann <matthew.gretton-dann@linaro.org>
554
7ac3af38 555 * reload.c (subst_reloads): Fix DEBUG_RELOAD build issue.
2b5987b5 556
14597080
RB
5572013-02-04 Richard Biener <rguenther@suse.de>
558
559 PR tree-optimization/56188
560 * tree-ssa-structalias.c (label_visit): Consider case with
561 initially non-empty points-to set.
562 (perform_var_substitution): Dump node mapping and clean up.
563
ed73881e
RG
5642013-02-04 Richard Guenther <rguenther@suse.de>
565
566 PR lto/56168
567 * lto-symtab.c (lto_symtab_merge_decls_1): Make non-builtin
568 node prevail as last resort.
569 (lto_symtab_merge_decls): Remove guard on LTRANS here.
6edc3e32 570 (lto_symtab_prevailing_decl): Builtins are their own prevailing decl.
ed73881e 571
139a0707
RB
5722013-02-04 Richard Biener <rguenther@suse.de>
573
574 PR tree-optimization/56113
575 * tree-ssa-structalias.c (equiv_class_lookup, equiv_class_add):
576 Merge into ...
577 (equiv_class_lookup_or_add): ... this.
578 (label_visit): Adjust and fix error in previous patch.
579 (perform_var_substitution): Adjust.
580
50fe8924
OE
5812013-02-03 Oleg Endo <olegendo@gcc.gnu.org>
582
583 * config/sh/divtab.c: Fix formatting and comments throughout the file.
584 * config/sh/sh4-300.md: Likewise.
585 * config/sh/sh4a.md: Likewise.
586 * config/sh/constraints.md: Likewise.
587 * config/sh/sh.md: Likewise.
588 * config/sh/netbsd-elf.h: Likewise.
589 * config/sh/predicates.md: Likewise.
590 * config/sh/sh-protos.h: Likewise.
591 * config/sh/ushmedia.h: Likewise.
592 * config/sh/linux.h: Likewise.
593 * config/sh/sh.c: Likewise.
594 * config/sh/superh.h: Likewise.
595 * config/sh/elf.h: Likewise.
596 * config/sh/sh4.md: Likewise.
597 * config/sh/sh.h: Likewise.
598
1a04ac2b
JDA
5992013-02-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
600
601 * config/pa/constraints.md: Adjust unused letters. Change "T"
602 constraint to match_test floating_point_store_memory_operand().
603 * config/pa/predicates.md (reg_plus_base_memory_operand): New.
604 (base14_operand): New.
605 (floating_point_store_memory_operand): New.
606 (integer_store_memory_operand): Revise to use base14_operand and
607 reg_plus_base_memory_operand.
608 (move_dest_operand): Allow symbolic_memory_operands.
609 (symbolic_memory_operand): Check for LO_SOM.
610 (symbolic_operand): Change default case to break.
611 * config/pa/pa.md: Remove unamed DFmode and SFmode patterns to force
612 CONST_DOUBLE values to be reloaded by putting them into memory when
613 the destination is a floating point register.
614 (movdf): Remove code to handle CONST_DOUBLE.
615 (movsf): Likewise.
616 (reload_indf_r1): New.
617 (reload_insf_r1): New.
618 Consistently use "Q" and "T" constraints with integer and floating
619 point move instructions, respectively.
620 (movdi): Remove FAIL.
621 Change predicate for source operand unamed DImode move from
622 general_operand to move_src_operand.
623 (umulsidi3): Change predicate for destination operand to
624 register_operand.
625 Likewise for similar unamed patterns.
626 * config/pa/pa-protos.h (pa_legitimize_reload_address): Declare.
627 * config/pa/pa.c (pa_symbolic_expression_p): Remove extra parenthesis.
628 (hppa_legitimize_address): Simplify mask calculation.
629 (pa_emit_move_sequence): Revised handling of secondary reloads from
630 REG+D addresses for floating point loads and stores. Directly handle
631 loading CONST0_RTX (mode) to a floating point register.
632 (pa_secondary_reload): Handle reloading DF and SFmode constant values
633 to floating point registers. Don't restrict secondary reloads to
634 floating point registers to integer modes. Revise some comments and
635 cleanup some code.
636 (TARGET_LEGITIMATE_ADDRESS_P): Define.
637 (pa_legitimate_address_p): New.
638 (pa_legitimize_reload_address): New.
639 * config/pa/pa.h (STRICT_REG_OK_FOR_INDEX_P): New.
640 (STRICT_REG_OK_FOR_BASE_P): New.
641 (GO_IF_LEGITIMATE_ADDRESS): Delete. Update some related comments.
642 (LEGITIMIZE_RELOAD_ADDRESS): Revise to use pa_legitimize_reload_address.
643
3bf65591
DE
6442013-02-03 David Edelsohn <dje.gcc@gmail.com>
645 Andrew Dixie <andrewd@gentrack.com>
646
647 * collect2.c (GCC_CHECK_HDR): Do not scan objects with F_LOADONLY
648 flag set.
649
c0a8a3e6
RS
6502013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
651
652 * expmed.c (extract_bit_field_1): Pass the full width of the
653 structure to get_best_reg_extraction_insn.
654
99113dff
DE
6552013-02-01 David Edelsohn <dje.gcc@gmail.com>
656
657 PR target/54601
658 * configure.ac (use_cxa_atexit): Add AIX.
659 * configure: Regenerate.
660
661 * config/rs6000/aix61.h (STARTFILE_SPEC): Add crtcxa.o.
662
ddd84654
JJ
6632013-02-01 Jakub Jelinek <jakub@redhat.com>
664
665 PR debug/54793
666 * final.c (need_profile_function): New variable.
667 (final_start_function): Drop ATTRIBUTE_UNUSED from first argument.
668 If first of NOTE_INSN_BASIC_BLOCK or NOTE_INSN_FUNCTION_BEG
669 is only preceeded by NOTE_INSN_VAR_LOCATION or NOTE_INSN_DELETED
670 notes, targetm.asm_out.function_prologue doesn't emit anything,
671 HAVE_prologue and profiler should be emitted before prologue,
672 set need_profile_function instead of emitting it.
673 (final_scan_insn): If need_profile_function, emit
674 profile_function on the first NOTE_INSN_BASIC_BLOCK or
675 NOTE_INSN_FUNCTION_BEG note.
676
6772013-02-01 Richard Henderson <rth@redhat.com>
749af8ee
RH
678
679 * config/rs6000/rs6000.md (smulditi3): New.
680 (umulditi3): New.
681
ff2a9d88
RH
682 * config/alpha/alpha.md (umulditi3): New.
683
14d52b90
DE
6842013-02-01 David Edelsohn <dje.gcc@gmail.com>
685
686 * config/rs6000/xcoff.h (ASM_OUTPUT_ALIGNED_COMMON): Use floor_log2.
687 (ASM_OUTPUT_ALIGNED_LOCAL): New.
688
8c7ca45c
RB
6892013-02-01 Richard Biener <rguenther@suse.de>
690
691 PR tree-optimization/56113
692 * tree-ssa-structalias.c (label_visit): Reduce work for
693 single-predecessor nodes.
694
9f419393
EB
6952013-02-01 Eric Botcazou <ebotcazou@adacore.com>
696
697 * fold-const.c (make_range_step) <TRUTH_NOT_EXPR>: Bail out if the
698 range isn't testing for zero.
699
c5f4be84
SB
7002013-01-31 Steven Bosscher <steven@gcc.gnu.org>
701
702 PR middle-end/56113
703 * fwprop.c (fwprop_init): Set up loops without CFG modifications.
704
dbdbd982
NC
7052013-01-31 Hiroyuki Ono <hiroyuki.ono.jc@renesas.com>
706 Nick Clifton <nickc@redhat.com>
707
708 * config/v850/constraints.md (Q): Define as a memory constraint.
709 * config/v850/predicates.md (label_ref_operand): New predicate.
710 (e3v5_shift_operand): New predicate.
711 (ior_operator): New predicate.
712 * config/v850/t-v850: Add e3v5 multilib.
713 * config/v850/v850-protos.h (v850_adjust_insn_length): Prototype.
714 (v850_gen_movdi): Prototype.
715 * config/v850/v850.c: Add support for e3v5 architecture.
716 Rename all uses of TARGET_V850E || TARGET_V850E2_ALL to
717 TARGET_V850E_UP.
718 (construct_save_jarl): Add e3v5 long JARL support.
719 (v850_adjust_insn_length): New function. Adjust length of call
720 insns when using e3v5 instructions.
721 (v850_gen_movdi): New function: Generate instructions to move a
722 DImode value.
723 * config/v850/v850.h (TARGET_CPU_v850e3v5): Define.
724 (CPP_SPEC): Define __v850e3v5__ as appropriate.
725 (TARGET_USE_FPU): Enable for e3v5.
726 (CONST_OK_FOR_W): New macro.
727 (ADJUST_INSN_LENGTH): Define.
728 * config/v850/v850.md (UNSPEC_LOOP): Define.
729 (attr cpu): Add v850e3v5.
730 Rename all uses of TARGET_V850E2 to TARGET_V850E2V3_UP.
731 (movdi): New pattern.
732 (movdi_internal): New pattern.
733 (cbranchsf4): Conditionalize on TARGET_USE_FPU.
734 (cbranchdf4): Conditionalize on TARGET_USE_FPU.
735 (cstoresf4): Likewise.
736 (cstoredf4): Likewise.
737 (insv): New pattern.
738 (rotlso3_a): New pattern.
739 (rotlsi3_b): New pattern
740 (rotlsi3_v850e3v5): New pattern.
741 (doloop_begin): New pattern.
742 (fix_loop_counter): New pattern.
743 (doloop_end): New pattern.
744 (branch_normal): Add e3v5 long branch support.
745 (branch_invert): Likewise.
746 (branch_z_normal): Likewise.
747 (branch_z_invert): Likewise.
748 (branch_nz_normal): Likewise.
749 (branch_nz_invert): Likewise.
750 (call_internal_short): Add e3v5 register-indirect JARL support.
751 (call_internal_long): Likewise.
752 (call_value_internal_short): Likewise.
753 (call_value_internal_long): Likewise.
754 * config/v850/v850.opt (mv850e3v5, mv850e2v4): New options.
755 (mloop): New option.
756 * config.gcc: Add support for configuring v840e3v5 target.
6edc3e32 757 * doc/invoke.texi: Document new v850 specific command line options.
dbdbd982 758
73861a41
PK
7592013-01-31 Paul Koning <ni1d@arrl.net>
760
761 PR debug/55059
762 PR debug/54508
763 * dwarf2out.c (prune_unused_types_mark): Mark all of parent's
764 children if parent is a class.
765 (prune_unused_types_prune): Don't add DW_AT_declaration.
766
e44978dc
RB
7672013-01-31 Richard Biener <rguenther@suse.de>
768
769 PR tree-optimization/56157
770 * tree-vect-slp.c (vect_get_slp_defs): More thoroughly try to
771 match up operand with SLP child.
772
90b10dec
JM
7732013-01-31 Jason Merrill <jason@redhat.com>
774
04d2dadd 775 PR debug/54410
90b10dec
JM
776 * dwarf2out.c (gen_struct_or_union_type_die): Always schedule template
777 parameters the first time.
778 (gen_scheduled_generic_parms_dies): Check completeness here.
779
6e616110
RB
7802013-01-31 Richard Biener <rguenther@suse.de>
781
782 PR middle-end/53073
783 * common.opt (faggressive-loop-optimizations): New flag,
784 enabled by default.
785 * doc/invoke.texi (faggressive-loop-optimizations): Document.
786 * tree-ssa-loop-niter.c (estimate_numbers_of_iterations_loop): Guard
787 infer_loop_bounds_from_undefined by it.
788
636f59cf
RB
7892013-01-31 Richard Biener <rguenther@suse.de>
790
791 PR tree-optimization/56150
792 * tree-ssa-loop-manip.c (find_uses_to_rename_stmt): Do not
793 visit virtual operands.
794 (find_uses_to_rename_bb): Likewise.
795
7962013-01-31 Richard Biener <rguenther@suse.de>
fcfa87ac
RB
797
798 PR tree-optimization/56150
799 * tree-ssa-tail-merge.c (gimple_equal_p): Properly handle
800 mixed store non-store stmts.
801
32887460
JJ
8022013-01-30 Jakub Jelinek <jakub@redhat.com>
803
e60e09a0
JJ
804 PR sanitizer/55374
805 * gcc.c (LIBASAN_SPEC): Define just to ADD_STATIC_LIBASAN_LIBS if
806 LIBASAN_EARLY_SPEC is defined.
807 (LIBASAN_EARLY_SPEC): Define to empty string if not already defined.
808 (LINK_COMMAND_SPEC): Add LIBASAN_EARLY_SPEC for -fsanitize=address,
809 before %o.
810 * config/gnu-user.h (LIBASAN_EARLY_SPEC): Define.
811
32887460
JJ
812 PR c++/55742
813 * config/i386/i386.c (ix86_valid_target_attribute_inner_p): Diagnose
814 invalid args instead of ICEing on it.
815 (ix86_valid_target_attribute_tree): Return error_mark_node if
816 ix86_valid_target_attribute_inner_p failed.
817 (ix86_valid_target_attribute_p): Return false only if
818 ix86_valid_target_attribute_tree returned error_mark_node. Allow
819 target("default") attribute.
820 (sorted_attr_string): Change argument from const char * to tree,
821 merge in all target attribute arguments rather than just one.
822 Formatting fix. Use XNEWVEC instead of xmalloc and XDELETEVEC
823 instead of free. Avoid using strcat.
824 (ix86_mangle_function_version_assembler_name): Mangle
825 target("default") as if no target attribute is present. Adjust
826 sorted_attr_string caller. Avoid leaking memory. Use XNEWVEC
827 instead of xmalloc and XDELETEVEC instead of free.
828 (ix86_function_versions): Don't return true if one of the decls
829 doesn't have target attribute. If they don't and one of the decls
830 is DECL_FUNCTION_VERSIONED, report an error. Adjust
831 sorted_attr_string caller. Use XDELETEVEC instead of free.
832 (ix86_supports_function_versions): Remove.
833 (make_name): Fix up formatting.
834 (make_dispatcher_decl): Remove resolver_name and its initialization.
835 Avoid leaking memory.
836 (is_function_default_version): Return true if there is
837 target("default") attribute rather than no target attribute at all.
838 (make_resolver_func): Avoid leaking memory.
839 (ix86_generate_version_dispatcher_body): Likewise.
840 (TARGET_OPTION_SUPPORTS_FUNCTION_VERSIONS): Remove.
841 * target.def (supports_function_versions): Remove.
842 * doc/tm.texi.in (SUPPORTS_FUNCTION_VERSIONS): Remove.
843 * doc/tm.texi: Regenerated.
844
73cca0cc
VM
8452013-01-30 Vladimir Makarov <vmakarov@redhat.com>
846
847 PR rtl-optimization/56144
848 * lra-constraints.c (get_reload_reg): Don't reuse reload pseudo
849 for values with side effects.
850
11452e7b
RB
8512013-01-30 Richard Biener <rguenther@suse.de>
852
853 * sparseset.h (sparseset_bit_p): Use gcc_checking_assert.
854 (sparseset_pop): Likewise.
855 * cfganal.c (compute_idf): Likewise. Increase work-stack size
856 to be able to use quick_push in the worker loop.
857
01cb1ef5
MP
8582013-01-30 Marek Polacek <polacek@redhat.com>
859
860 * cfgcleanup.c (cleanup_cfg): Don't mark affected BBs.
861
e892936e
RB
8622013-01-30 Richard Biener <rguenther@suse.de>
863
864 PR lto/56147
6edc3e32 865 * lto-symtab.c (lto_symtab_merge_decls_1): Guard DECL_BUILT_IN check.
e892936e 866
cc06c01d
GJL
8672013-01-30 Georg-Johann Lay <avr@gjlay.de>
868
869 PR tree-optimization/56064
870 * fixed-value.c (fixed_from_double_int): New function.
871 * fixed-value.h (fixed_from_double_int): New prototype.
872 (const_fixed_from_double_int): New static inline function.
873 * fold-const.c (native_interpret_fixed): New static function.
874 (native_interpret_expr) <FIXED_POINT_TYPE>: Use it.
875 (can_native_interpret_type_p) <FIXED_POINT_TYPE>: Return true.
876 (native_encode_fixed): New static function.
877 (native_encode_expr) <FIXED_CST>: Use it.
878 (native_interpret_int): Move double_int worker code to...
879 * double-int.c (double_int::from_buffer): ...this new static method.
880 * double-int.h (double_int::from_buffer): Prototype it.
881
d394a308
RB
8822013-01-30 Richard Biener <rguenther@suse.de>
883
884 * tree-ssa-structalias.c (final_solutions, final_solutions_obstack):
885 New pointer-map and obstack.
886 (init_alias_vars): Allocate pointer-map and obstack.
887 (delete_points_to_sets): Free them.
888 (find_what_var_points_to): Cache result.
889 (find_what_p_points_to): Adjust for changed interface of
890 find_what_var_points_to.
891 (compute_points_to_sets): Likewise.
892 (ipa_pta_execute): Likewise.
893
20804d96
RO
8942013-01-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
895
896 * configure.ac (HAVE_AS_SPARC_NOBITS): New test.
897 * configure: Regenerate.
898 * config.in: Regenerate.
899 * config/sparc/sparc.c (sparc_solaris_elf_asm_named_section): Emit
900 #nobits/#progbits if supported.
901
a7ad88a2
OE
9022013-01-29 Oleg Endo <olegendo@gcc.gnu.org>
903
904 PR target/56121
905 * config/sh/sh.md (bclr_m2a, bset_m2a, bst_m2a, bld_m2a, bldsign_m2a,
906 bld_reg, *bld_regqi, band_m2a, bandreg_m2a, bor_m2a, borreg_m2a,
907 bxor_m2a, bxorreg_m2a): Add satisfies_constraint_K03 condition.
908
7af79f92
GY
9092013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
910
91bfca59
OE
911 * config/arm/cortex-a7.md (cortex_a7_neon, cortex_a7_all): Remove.
912 (cortex_a7_idiv): Use cortex_a7_both instead of cortex_a7_all.
7af79f92 913
753bcf7b
GY
9142013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
915
91bfca59
OE
916 * config/arm/arm.c (cortexa7_younger): Return true for TYPE_CALL.
917 * config/arm/cortex-a7.md (cortex_a7_call): Update required units.
753bcf7b 918
8cbc2ea8
GY
9192013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
920
91bfca59
OE
921 * config/arm/arm-protos.h (arm_mac_accumulator_is_result): New
922 declaration.
923 * config/arm/arm.c (arm_mac_accumulator_is_result): New function.
924 * config/arm/cortex-a7.md: New bypasses using
925 arm_mac_accumulator_is_result.
8cbc2ea8 926
697a3325
GY
9272013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
928
91bfca59 929 * config/arm/cortex-a7.md (cortex_a7_neon_mul): New reservation.
697a3325 930 (cortex_a7_neon_mla): Likewise.
91bfca59
OE
931 (cortex_a7_fpfmad): New reservation.
932 (cortex_a7_fpmacs): Use ffmas and update required units.
933 (cortex_a7_fpmuld): Update required units and latency.
934 (cortex_a7_fpmacd): Likewise.
935 (cortex_a7_fdivs, cortex_a7_fdivd): Likewise.
936 (cortex_a7_neon). Likewise.
937 (bypass) Update participating units.
697a3325 938
29637783
GY
9392013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
940
91bfca59
OE
941 * config/arm/arm.md (type): Add ffmas and ffmad to "type" attribute.
942 * config/arm/vfp.md (fma,fmsub,fnmsub,fnmadd): Change type
943 from fmac to ffma.
944 * config/arm/vfp11.md (vfp_farith): Use ffmas.
945 (vfp_fmul): Use ffmad.
946 * config/arm/cortex-r4f.md (cortex_r4_fmacs): Use ffmas.
947 (cortex_r4_fmacd): Use ffmad.
948 * config/arm/cortex-m4-fpu.md (cortex_m4_fmacs): Use ffmas.
949 * config/arm/cortex-a9.md (cortex_a9_fmacs): Use ffmas.
950 (cortex_a9_fmacd): Use ffmad.
951 * config/arm/cortex-a8-neon.md (cortex_a8_vfp_macs): Use ffmas.
952 (cortex_a8_vfp_macd): Use ffmad.
953 * config/arm/cortex-a5.md (cortex_a5_fpmacs): Use ffmas.
954 (cortex_a5_fpmacd): Use ffmad.
955 * config/arm/cortex-a15-neon.md (cortex_a15_vfp_macs) Use ffmas.
956 (cortex_a15_vfp_macd): Use ffmad.
957 * config/arm/arm1020e.md (v10_fmul): Use ffmas and ffmad.
29637783 958
2ee8a2d5
JM
9592013-01-29 Jason Merrill <jason@redhat.com>
960
961 PR libstdc++/54314
962 * varasm.c (default_assemble_visibility): Don't warn about
963 visibility on artificial decls.
964
78d087bc
RB
9652013-01-29 Richard Biener <rguenther@suse.de>
966
967 PR tree-optimization/56113
968 * tree-ssa-structalias.c (equiv_class_lookup): Also return
969 the bitmap leader.
970 (label_visit): Free duplicate bitmaps and record the leader instead.
971 (perform_var_substitution): Adjust.
972
83ba4d6f
RB
9732013-01-29 Richard Biener <rguenther@suse.de>
974
975 PR tree-optimization/55270
976 * tree-ssa-dom.c (eliminate_degenerate_phis): If we changed
977 the CFG, schedule loops for fixup.
978
66dfe13f
NC
9792013-01-29 Nick Clifton <nickc@redhat.com>
980
981 * config/rl78/rl78.c (rl78_regno_mode_code_ok_for_base_p): Allow
982 SP_REG.
983
5a579c3b
LE
9842013-01-28 Leif Ekblad <leif@rdos.net>
985
986 * config.gcc (i[34567]86-*-rdos*, x86_64-*-rdos*): New targets.
987 * config/i386/i386.h (TARGET_RDOS): New macro.
988 (DEFAULT_LARGE_SECTION_THRESHOLD): New macro.
989 * config/i386/i386.c (ix86_option_override_internal): For 64bit
990 TARGET_RDOS, set ix86_cmodel to CM_MEDIUM_PIC and flag_pic to 1.
991 * config/i386/i386.opt (mlarge-data-threshold): Initialize to
992 DEFAULT_LARGE_SECTION_THRESHOLD.
993 * config/i386/i386.md (R14_REG, R15_REG): New constants.
994 * config/i386/rdos.h: New file.
995 * config/i386/rdos64.h: New file.
996
51e44392
BS
9972013-01-28 Bernd Schmidt <bernds@codesourcery.com>
998
999 PR other/54814
1000 * reload.c (find_valid_class_1): Use in_hard_reg_set_p instead of
1001 TEST_HARD_REG_BIT.
1002
db1fb332
JJ
10032013-01-28 Jakub Jelinek <jakub@redhat.com>
1004
1005 PR rtl-optimization/56117
1006 * sched-deps.c (sched_analyze_2) <case PREFETCH>: For use_cselib
1007 call cselib_lookup_from_insn on the MEM before calling
1008 add_insn_mem_dependence.
1009
16917761
RB
10102013-01-28 Richard Biener <rguenther@suse.de>
1011
1012 * tree-inline.c (remap_gimple_stmt): Do not assing a BLOCK
1013 to a stmt that didn't have one.
1014 (copy_phis_for_bb): Likewise for PHI arguments.
1015 (copy_debug_stmt): Likewise for debug stmts.
1016
b9fc0497
RB
10172013-01-28 Richard Biener <rguenther@suse.de>
1018
1019 PR tree-optimization/56034
6edc3e32 1020 * tree-loop-distribution.c (enum partition_kind): Add PKIND_REDUCTION.
b9fc0497
RB
1021 (partition_builtin_p): Adjust.
1022 (generate_code_for_partition): Handle PKIND_REDUCTION. Assert
1023 it is the last partition.
1024 (rdg_flag_uses): Check SSA_NAME_IS_DEFAULT_DEF before looking
1025 up the vertex for the definition.
1026 (classify_partition): Classify whether a partition is a
1027 PKIND_REDUCTION, thus has uses outside of the loop.
1028 (ldist_gen): Inherit PKIND_REDUCTION when merging partitions.
1029 Merge all PKIND_REDUCTION partitions into the last partition.
1030 (tree_loop_distribution): Seed partitions from reductions as well.
1031
aa710d25
JJ
10322013-01-28 Jakub Jelinek <jakub@redhat.com>
1033
0bfbca58
JJ
1034 PR tree-optimization/56125
1035 * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Don't optimize
1036 pow(x,c) into sqrt(x) * powi(x, n/2) or
1037 1.0 / (sqrt(x) * powi(x, abs(n/2))) if c is an integer or when
1038 optimizing for size.
1039 Don't optimize pow(x,c) into powi(x, n/3) * powi(cbrt(x), n%3) or
1040 1.0 / (powi(x, abs(n)/3) * powi(cbrt(x), abs(n)%3)) if 2c is an
1041 integer.
1042
aa710d25
JJ
1043 PR tree-optimization/56094
1044 * gimplify.c (force_gimple_operand_1): Temporarily set input_location
1045 to UNKNOWN_LOCATION while gimplifying expr.
1046
77dc5297
UB
10472013-01-27 Uros Bizjak <ubizjak@gmail.com>
1048
1049 PR target/56114
1050 * config/i386/i386.md (*movabs<mode>_1): Add square brackets around
1051 operand 0 in movabs insn template for -masm=intel asm alternative.
1052 (*movabs<mode>_2): Ditto for operand 1.
1053
0bfbca58 10542013-01-26 David Holsgrove <david.holsgrove@xilinx.com>
fbf0cf90
DH
1055
1056 PR target/54663
1057 * config.gcc (microblaze*-linux*): Add tmake_file to allow building
1058 of microblaze-c.o
1059
0bfbca58 10602013-01-26 Edgar E. Iglesias <edgar.iglesias@gmail.com>
6f14eef2
EI
1061
1062 * config.gcc (microblaze*-*-*): Rename microblaze*-*-elf, update
1063 tm_file.
1064
0bfbca58 10652013-01-25 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
706b2314
N
1066
1067 * config/aarch64/aarch64.c (TARGET_FIXED_CONDITION_CODE_REGS):
1068 Undef to avoid warning.
1069
478f60f9
MH
10702013-01-25 Michael Haubenwallner <michael.haubenwallner@salomon.at>
1071
1072 * configure.ac (gcc_cv_ld_static_dynamic): Define for AIX native ld.
1073 * configure: Regenerate.
1074
d7fa6ee2
JJ
10752013-01-25 Jakub Jelinek <jakub@redhat.com>
1076
1077 PR tree-optimization/56098
1078 * tree-ssa-phiopt.c (nt_init_block): Don't call add_or_mark_expr
1079 for stmts with volatile ops.
1080 (cond_store_replacement): Don't optimize if assign has volatile ops.
1081 (cond_if_else_store_replacement_1): Don't optimize if either
1082 then_assign or else_assign have volatile ops.
1083 (hoist_adjacent_loads): Don't optimize if either def1 or def2 have
1084 volatile ops.
1085
f8fe87bd
GJL
10862013-01-25 Georg-Johann Lay <avr@gjlay.de>
1087
1088 * doc/invoke.texi (AVR Built-in Macros): Document __XMEGA__.
1089
28398d0d
GJL
10902013-01-25 Georg-Johann Lay <avr@gjlay.de>
1091
1092 * doc/extend.texi (Example of asm with clobbered asm reg): Fix
1093 missing ':' in asm example.
1094
b7d7d917
TB
10952013-01-25 Tejas Belagod <tejas.belagod@arm.com>
1096
1097 * config/aarch64/aarch64-simd-builtins.def: Separate sq<r>dmulh_lane
1098 entries into lane and laneq entries.
77dc5297
UB
1099 * config/aarch64/aarch64-simd.md (aarch64_sq<r>dmulh_lane<mode>):
1100 Remove AdvSIMD scalar modes.
b7d7d917
TB
1101 (aarch64_sq<r>dmulh_laneq<mode>): New.
1102 (aarch64_sq<r>dmulh_lane<mode>): New RTL pattern for Scalar AdvSIMD
1103 modes.
1104 * config/aarch64/arm_neon.h: Fix all the vq<r>dmulh_lane* intrinsics'
1105 builtin implementations to relfect changes in RTL in aarch64-simd.md.
1106 * config/aarch64/iterators.md (VCOND): New.
1107 (VCONQ): New.
1108
556f9906
GJL
11092013-01-25 Georg-Johann Lay <avr@gjlay.de>
1110
1111 PR target/54222
1112 * config/avr/builtins.def (DEF_BUILTIN): Add LIBNAME argument.
1113 Add NULL LIBNAME argument to existing definitions.
1114 (ABSHR, ABSR, ABSLR, ABSLLR, ABSHK, ABSK, ABSLK, ABSLLK): New.
1115 * config/avr/avr-c.c (DEF_BUILTIN): Add LIBNAME argument.
1116 * config/avr/avr.c (DEF_BUILTIN): Same.
1117 (avr_init_builtins): Pass down LIBNAME to add_builtin_function.
1118 (avr_expand_builtin): Expand to a vanilla call if a libgcc
1119 implementation is available (DECL_ASSEMBLER_NAME is set).
1120 (avr_fold_absfx): New static function.
1121 (avr_fold_builtin): Use it to handle: AVR_BUILTIN_ABSHR,
1122 AVR_BUILTIN_ABSR, AVR_BUILTIN_ABSLR, AVR_BUILTIN_ABSLLR,
1123 AVR_BUILTIN_ABSHK, AVR_BUILTIN_ABSK, AVR_BUILTIN_ABSLK,
1124 AVR_BUILTIN_ABSLLK.
1125 * config/avr/stdfix.h (abshr, absr, abslr, absllr)
1126 (abshk, absk, abslk, absllk): Provide as static inline functions.
1127
1f546bbb
MP
11282013-01-25 Marek Polacek <polacek@redhat.com>
1129
1130 PR tree-optimization/56035
1131 * cfgloopmanip.c (fix_loop_structure): Remove redundant condition.
1132
7e184bd7
UB
11332012-01-24 Uros Bizjak <ubizjak@gmail.com>
1134
1135 * config/i386/i386.md (*movti_internal_rex64): Add (o,e) alternative.
1136 (*movtf_internal_rex64): Add (!o,C) alternative
1137 (*movxf_internal_rex64): Ditto.
1138 (*movdf_internal_rex64): Add (?r,C) and (?m,C) alternatives.
1139
f5ba49ac
SM
11402013-01-24 Shenghou Ma <minux.ma@gmail.com>
1141
1142 * doc/invoke.texi: fix typo.
1143 * doc/objc.texi: fix typo.
1144
a6343728
RS
11452013-01-24 Richard Sandiford <rdsandiford@googlemail.com>
1146
1147 * config/mips/mips.md (*and<mode>3_mips16): Use the "W" constraint
1148 for the first two alternatives.
1149
cd030c07
DN
11502013-01-24 Diego Novillo <dnovillo@google.com>
1151
77dc5297 1152 * Makefile.in (GGC): Remove. Replace all instances with ggc-page.o.
cd030c07
DN
1153 (ggc-zone.o): Remove.
1154 * configure.ac: Remove option --with-gc.
1155 * configure: Re-generate.
1156 * doc/install.texi: Remove documentation for --with-gc.
1157 * gengtype.c (write_enum_defn): Remove. Update all users.
1158 (write_Types_process_field): Remove generation of gt_e_* argument.
1159 (output_type_enum): Remove. Update all users.
1160 (write_enum_defn): Remove. Update all users.
1161 (enum alloc_zone): Remove. Update all users.
77dc5297 1162 (write_splay_tree_allocator_def): Remove generation of gt_e_* argument.
cd030c07
DN
1163 * ggc-common.c (ggc_splay_alloc): Remove first argument.
1164 Update all callers.
1165 (struct ptr_data): Remove field TYPE. Update all users.
77dc5297 1166 (gt_pch_note_object): Remove argument TYPE. Update all users.
cd030c07
DN
1167 * ggc-internal.h (ggc_pch_alloc_object): Remove last argument.
1168 Update all users.
aaf1e810 1169 * ggc-none.c (ggc_alloc_typed_stat): Remove.
cd030c07
DN
1170 (struct alloc_zone): Remove.
1171 (ggc_internal_alloc_zone_stat): Remove.
1172 (ggc_internal_cleared_alloc_zone_stat): Remove.
1173 * ggc-page.c (ggc_alloc_typed_stat): Remove.
77dc5297
UB
1174 (ggc_pch_count_object): Remove last argument. Update all users.
1175 (ggc_pch_alloc_object): Remove last argument. Update all users.
cd030c07
DN
1176 (struct alloc_zone): Remove.
1177 * ggc-zone.c: Remove.
77dc5297 1178 * ggc.h (gt_pch_note_object): Remove last argument. Update all users.
cd030c07
DN
1179 (struct alloc_zone): Remove.
1180 (ggc_alloc_typed_stat): Remove.
1181 (ggc_alloc_typed): Remove.
1182 (ggc_splay_alloc): Remove first argument.
1183 (rtl_zone): Remove. Update all users.
1184 (tree_zone): Remove. Update all users.
1185 (tree_id_zone): Remove. Update all users.
1186 (ggc_internal_zone_alloc_stat): Remove. Update all users.
77dc5297 1187 (ggc_internal_zone_cleared_alloc_stat): Remove. Update all users.
cd030c07 1188 (ggc_internal_zone_vec_alloc_stat): Remove. Update all users.
77dc5297 1189 * tree-ssanames.c: Remove references to zone allocator in comments.
cd030c07 1190
a861ffa4
GJL
11912013-01-24 Georg-Johann Lay <avr@gjlay.de>
1192
1193 * config/avr/avr.c (avr_out_fract): Make register numbers that
1194 might be outside of source operand signed.
1195
593c0ddd
UB
11962013-01-24 Uros Bizjak <ubizjak@gmail.com>
1197
1198 * config/i386/constraints.md (Yf): New constraint.
1199 * config/i386/i386.md (*movdf_internal_rex64): Use Yf*f instead
1200 of f constraint to conditionaly disable x87 register preferences.
1201 (*movdf_internal): Ditto.
1202 (*movsf_internal): Ditto.
1203
e86c0101
SB
12042013-01-24 Steven Bosscher <steven@gcc.gnu.org>
1205
1206 PR inline-asm/55934
1207 * lra-assigns.c (assign_by_spills): Throw away the pattern of asms
1208 that have operands with impossible constraints.
1209 Add a FIXME for a speed-up opportunity.
1210 * lra-constraints.c (process_alt_operands): Verify that a class
1211 selected from constraints on asms is valid for the operand mode.
1212 (curr_insn_transform): Remove incorrect comment.
1213
f6fee35f
DE
12142013-01-23 David Edelsohn <dje.gcc@gmail.com>
1215
1216 * config/rs6000/rs6000.c (rs6000_delegitimize_address): Check that
1217 TOC operand is a valid symbol ref in the constant pool.
1218
12192013-01-23 Edgar E. Iglesias <edgar.iglesias@gmail.com>
c7729184 1220
aaf1e810 1221 * config/microblaze/linux.h: Add TARGET_OS_CPP_BUILTINS
c7729184 1222
dc62d7d1
GJL
12232013-01-23 Georg-Johann Lay <avr@gjlay.de>
1224
1225 PR target/54222
1226 * config/avr/stdfix.h: New file.
1227 * t-avr (stdfix-gcc.h): New rule to build it.
1228 (EXTRA_HEADERS): Set it to install stdfix.h, stdfix-gcc.h.
1229
2660d12d
KS
12302013-01-23 Kostya Serebryany <kcc@google.com>
1231
77dc5297
UB
1232 * config/darwin.h: remove dependency on
1233 CoreFoundation (asan on Mac OS).
2660d12d 1234
a70418fc
JJ
12352013-01-23 Jakub Jelinek <jakub@redhat.com>
1236
1237 PR target/49069
1238 * config/arm/arm.md (cbranchdi4, cstoredi4): Use s_register_operand
1239 instead of cmpdi_operand for first comparison operand.
1240 Don't assert that comparison operands aren't both constants.
1241
47876a2a
JW
12422013-01-22 Jonathan Wakely <jwakely.gcc@gmail.com>
1243
1244 * doc/install.texi (Downloading the Source): Update references to
1245 downloading separate components.
1246
12472013-01-22 Jonathan Wakely <jwakely.gcc@gmail.com>
4ebd56a5
JW
1248
1249 * doc/extend.texi (__int128): Improve grammar.
1250
47876a2a 12512013-01-22 Uros Bizjak <ubizjak@gmail.com>
32fc5b8a
UB
1252
1253 PR target/56028
1254 * config/i386/i386.md (*movti_internal_rex64): Change (o,riF)
1255 alternative to (o,r).
1256 (*movdi_internal_rex64): Remove (!o,n) alternative.
1257 (DImode immediate->memory splitter): Remove.
1258 (DImode immediate->memory peephole2): Remove.
1259 (movtf): Enable for TARGET_64BIT || TARGET_SSE.
1260 (*movtf_internal_rex64): Rename from *movtf_internal. Change (!o,F*r)
1261 alternative to (!o,*r).
1262 (*movtf_internal_sse): New pattern.
1263 (*movxf_internal_rex64): New pattern.
1264 (*movxf_internal): Disable for TARGET_64BIT.
1265 (*movdf_internal_rex64): Remove (!o,F) alternative.
1266
3a984f10
JJ
12672013-01-22 Jakub Jelinek <jakub@redhat.com>
1268
502498d5
JJ
1269 PR middle-end/56074
1270 * dumpfile.c (dump_loc): Only print loc if LOCATION_LOCUS (loc)
1271 isn't UNKNOWN_LOCATION nor BUILTINS_LOCATION.
1272 * tree-vect-loop-manip.c (find_loop_location): Also ignore
1273 stmt locations where LOCATION_LOCUS of the stmt location is
1274 UNKNOWN_LOCATION or BUILTINS_LOCATION.
1275
3a984f10
JJ
1276 PR target/55686
1277 * config/i386/i386.md (UNSPEC_STOS): New.
1278 (strset_singleop, *strsetdi_rex_1, *strsetsi_1, *strsethi_1,
1279 *strsetqi_1): Add UNSPEC_STOS.
1280
fa817f7f
PC
12812013-01-22 Paolo Carlini <paolo.carlini@oracle.com>
1282
1283 PR c++/56067
1284 * doc/invoke.texi: Remove left over -Wsynth example.
1285
8f498c1b
JJ
12862013-01-21 Jakub Jelinek <jakub@redhat.com>
1287
1288 PR tree-optimization/56051
1289 * fold-const.c (fold_binary_loc): Don't fold
1290 X < (cast) (1 << Y) into (X >> Y) != 0 if cast is either
1291 a narrowing conversion, or widening conversion from signed
1292 to unsigned.
1293
47876a2a 12942013-01-21 Uros Bizjak <ubizjak@gmail.com>
35d59da7
UB
1295
1296 PR rtl-optimization/56023
1297 * haifa-sched.c (fix_inter_tick): Do not update ticks of instructions,
1298 dependent on debug instruction.
1299
5b9db1bc
MJ
13002013-01-21 Martin Jambor <mjambor@suse.cz>
1301
1302 PR middle-end/56022
1303 * function.c (allocate_struct_function): Call
1304 invoke_set_current_function_hook earlier.
1305
e8bb7d68
JJ
13062013-01-21 Jakub Jelinek <jakub@redhat.com>
1307
1308 * reload1.c (init_reload): Only initialize reload_obstack
1309 during the first call.
1310
616a4e32
MP
13112013-01-21 Marek Polacek <polacek@redhat.com>
1312
1313 * cfgloop.c (verify_loop_structure): Fix up grammar.
1314
4401981b
YHH
13152013-01-21 Yi-Hsiu Hsu <ahsu@marvell.com>
1316
1317 * config/arm/marvell-pj4.md (pj4_shift_conds, pj4_alu_shift,
1318 pj4_alu_shift_conds, pj4_shift): Handle simple_alu_shift.
1319
8e87740b
RR
13202013-01-21 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
1321
1322 PR target/56058
1323 * config/arm/marvell-pj4.md: Update copyright year.
1324 Fix up use of alu to alu_reg and simple_alu_imm.
1325
47876a2a 13262013-01-21 Uros Bizjak <ubizjak@gmail.com>
1f6bc337
UB
1327
1328 * config/i386/i386.md (enabled): Do not disable fma4 for TARGET_FMA.
1329
89d56d79
VM
13302013-01-20 Vladimir Makarov <vmakarov@redhat.com>
1331
1332 PR target/55433
1333 * lra-constraints.c (curr_insn_transform): Don't reuse original
1f6bc337 1334 insn for secondary memory move when memory mode should be different.
89d56d79 1335
fe603553
JDA
13362013-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1337
1338 * config/pa/pa.md (atomic_loaddi, atomic_loaddi_1, atomic_storedi,
1339 atomic_storedi_1): New patterns.
1340
01284895
VK
13412013-01-20 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
1342
1343 btver2 pipeline descriptions.
1344 * config/i386/i386.c: Enable CPU_BTVER2 to use btver2 pipeline
1345 descriptions.
1346 * config/i386/i386.md (btver2_decode): New type attributes.
1f6bc337 1347 * config/i386/sse.md (btver2_decode, btver2_sse_attr): New
01284895
VK
1348 type attributes.
1349 * config/i386/btver2.md: New file describing btver2 pipelines.
1350
5630e3e1
JL
13512013-01-19 Andrew Pinski <apinski@cavium.com>
1352
1353 PR tree-optimization/52631
1354 * tree-ssa-sccvn (visit_use): Before looking up the original
1355 statement, try looking up the simplified expression.
1356
650ae806
AG
13572013-01-19 Anthony Green <green@moxielogic.com>
1358
1359 * config/moxie/moxie.c (moxie_expand_prologue): Set
1360 current_function_static_stack_size.
1361
e300ec2d
JJ
13622013-01-18 Jakub Jelinek <jakub@redhat.com>
1363
1364 PR tree-optimization/56029
1365 * tree-phinodes.c (reserve_phi_args_for_new_edge): Set
1366 gimple_phi_arg_location for the new arg to UNKNOWN_LOCATION.
1367
a3d7af04
SS
13682013-01-18 Sharad Singhai <singhai@google.com>
1369
1370 PR tree-optimization/55995
1371 * dumpfile.c (dump_loc): Print location only if available.
1372 * tree-vectorizer.c (increase_alignment): Intialize vect_location.
1373
66aa7879
VM
13742013-01-18 Vladimir Makarov <vmakarov@redhat.com>
1375
1376 PR target/55433
1377 * lra-constraints.c (curr_insn_transform): Reuse original insn for
1378 secondary memory move.
1379 (inherit_reload_reg): Use rclass instead of cl for
1380 check_secondary_memory_needed_p.
1381
3f0fee7b
JJ
13822013-01-18 Jakub Jelinek <jakub@redhat.com>
1383
1384 PR middle-end/56015
1385 * expr.c (expand_expr_real_2) <case COMPLEX_EXPR>: Handle
1f6bc337 1386 the case where writing real complex part of target modifies op1.
3f0fee7b 1387
70c67693
JG
13882013-01-18 James Greenhalgh <james.greenhalgh@arm.com>
1389
1390 * config/aarch64/aarch64-simd.md
1391 (aarch64_vcond_internal<mode>): Handle unordered cases.
1392 * config/aarch64/iterators.md (v_cmp_result): New.
1393
df8de9b3
YHH
13942013-01-18 Yi-Hsiu Hsu <ahsu@marvell.com>
1395 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
1396
1397 * config/arm/marvell-pj4.md: New file.
1398 * config/arm/arm.c (arm_issue_rate): Add marvell_pj4.
1399 * config/arm/arm.md (generic_sched): Add marvell_pj4.
1400 (generic_vfp): Likewise.
1401 * config/arm/arm-cores.def: Add marvell-pj4.
1402 * config/arm/arm-tune.md: Regenerate.
1403 * config/arm/arm-tables.opt: Regenerate.
1404 * config/arm/bpabi.h (BE8_LINK_SPEC): Add marvell_pj4.
1405 * doc/invoke.texi: Document marvell-pj4.
1406
be30c356
TB
14072013-01-18 Tejas Belagod <tejas.belagod@arm.com>
1408
1409 * config/aarch64/arm_neon.h: Map scalar types to standard types.
1410
0bfbca58 14112013-01-18 Alexandre Oliva <aoliva@redhat.com>
af6236c1
AO
1412
1413 PR debug/54114
1414 PR debug/54402
1415 PR debug/49888
1416 * var-tracking.c (negative_power_of_two_p): New.
1417 (global_get_addr_cache, local_get_addr_cache): New.
1418 (get_addr_from_global_cache, get_addr_from_local_cache): New.
1419 (vt_canonicalize_addr): Rewrite using the above. Adjust the
1420 heading comment.
1421 (vt_stack_offset_p): Remove.
1422 (vt_canon_true_dep): Always canonicalize loc's address.
1423 (clobber_overlapping_mems): Make sure we have a MEM.
1424 (local_get_addr_clear_given_value): New.
1425 (val_reset): Clear local cached entries.
1426 (compute_bb_dataflow): Create and release the local cache.
1427 Disable duplicate MEMs clobbering.
1428 (emit_notes_in_bb): Clobber MEMs likewise.
1429 (vt_emit_notes): Create and release the local cache.
1430 (vt_initialize, vt_finalize): Create and release the global
1431 cache, respectively.
1f6bc337 1432 * alias.c (rtx_equal_for_memref_p): Compare operands of ENTRY_VALUEs.
af6236c1 1433
0bfbca58 14342013-01-18 Alexandre Oliva <aoliva@redhat.com>
7ff37ffa
AO
1435
1436 PR libmudflap/53359
1437 * tree-mudflap.c (mudflap_finish_file): Skip deferred decls
1438 not found in the symtab.
1439
0bfbca58 14402013-01-18 Alexandre Oliva <aoliva@redhat.com>
3aa03517 1441
c350ba53 1442 PR debug/56006
3aa03517
AO
1443 PR rtl-optimization/55547
1444 PR rtl-optimization/53827
1445 PR debug/53671
1446 PR debug/49888
1447 * alias.c (offset_overlap_p): New, factored out of...
1448 (memrefs_conflict_p): ... this. Use absolute sizes. Retain
1449 the conservative special case for symbolic constants. Don't
1450 adjust zero sizes on alignment.
1451
c664546f
JL
14522013-01-18 Bernd Schmidt <bernds@codesourcery.com>
1453
1454 PR rtl-optimization/52573
1455 * regrename.c (build_def_use): Ignore REG_DEAD notes if there is a
1456 REG_UNUSED for the same register.
1457
1bd3f750
MP
14582013-01-17 Richard Biener <rguenther@suse.de>
1459 Marek Polacek <polacek@redhat.com>
1460
1461 PR rtl-optimization/55833
1462 * loop-unswitch.c (unswitch_loops): Move loop verification...
1463 (unswitch_single_loop): ...here. Call mark_irreducible_loops.
1464 * cfgloopmanip.c (fix_loop_placement): Add IRRED_INVALIDATED parameter.
1465 Set it to true when we're removing a loop from hierarchy tree in
1466 an irreducible region.
1467 (fix_bb_placements): Adjust caller.
1468 (fix_loop_placements): Likewise.
1469
e52a8b71
GJL
14702013-01-17 Georg-Johann Lay <avr@gjlay.de>
1471
1472 * config/avr/builtins.def (DEF_BUILTIN): Factor out
1473 "__builtin_avr_" from NAME, turn NAME to an uppercase identifier.
1474 Factor out 'CODE_FOR_' from ICODE, use 'nothing' instead of '-1'.
1475 Remove ID. Adjust comments.
1476 * config/avr/avr-c.c (avr_builtin_name): Remove.
1477 (avr_cpu_cpp_builtins): Use DEF_BUILTIN instead of for-loop.
1478 * config/avr/avr.c (avr_tolower): New static function.
1479 (DEF_BUILTIN): Remove parameter ID. Prefix ICODE by 'CODE_FOR_'.
1480 Stringify NAME, prefix it with "__builtin_avr_" and lowercase it.
1481 (avr_expand_builtin): Assert insn_code != CODE_FOR_nothing for
1482 default expansion.
1483
8386a7ea
JH
14842013-01-17 Jan Hubicka <jh@suse.cz>
1485
610fb637 1486 PR tree-optimization/55273
8386a7ea
JH
1487 * loop-iv.c (iv_number_of_iterations): Consider zero iteration case.
1488
47876a2a 14892013-01-17 Uros Bizjak <ubizjak@gmail.com>
8abaebcd
UB
1490
1491 PR target/55981
1492 * config/i386/sync.md (atomic_store<mode>): Always generate SWImode
1493 store through atomic_store<mode>_1.
1494 (atomic_store<mode>_1): Macroize insn using SWI mode iterator.
1495
8222c37e
MJ
14962013-01-17 Martin Jambor <mjambor@suse.cz>
1497
1498 PR tree-optimizations/55264
1499 * ipa-inline-transform.c (can_remove_node_now_p_1): Never return true
1500 for virtual methods.
1501 * ipa.c (symtab_remove_unreachable_nodes): Never return true for
1502 virtual methods before inlining is over.
1503 * cgraph.h (cgraph_only_called_directly_or_aliased_p): Return false for
1504 virtual functions.
1505 * cgraphclones.c (cgraph_create_virtual_clone): Mark clones as
1506 non-virtual.
1507
79f01c76
VM
15082013-01-16 Vladimir Makarov <vmakarov@redhat.com>
1509
1510 PR rtl-optimization/56005
1511 * sched-deps.c (sched_analyze_2): Check deps->readonly for adding
1512 pending reads for prefetch.
1513
d0b6bb1b
IB
15142013-01-16 Ian Bolton <ian.bolton@arm.com>
1515
aaf1e810 1516 * config/aarch64/aarch64.md
d0b6bb1b
IB
1517 (*cstoresi_neg_uxtw): New pattern.
1518 (*cmovsi_insn_uxtw): New pattern.
1519 (*<optab>si3_uxtw): New pattern.
1520 (*<LOGICAL:optab>_<SHIFT:optab>si3_uxtw): New pattern.
1521 (*<optab>si3_insn_uxtw): New pattern.
1522 (*bswapsi2_uxtw): New pattern.
1523
cb9cf03b
RB
15242013-01-16 Richard Biener <rguenther@suse.de>
1525
1526 * tree-inline.c (tree_function_versioning): Remove set but
1527 never used variable.
1528
2cfc56b9
RB
15292013-01-16 Richard Biener <rguenther@suse.de>
1530
1531 PR tree-optimization/55964
1532 * tree-flow.h (rename_variables_in_loop): Remove.
1533 (rename_variables_in_bb): Likewise.
1534 * tree-loop-distribution.c (update_phis_for_loop_copy): Remove.
1535 (copy_loop_before): Adjust and delete update-ssa status.
1536 * tree-vect-loop-manip.c (rename_variables_in_bb): Make static.
8abaebcd 1537 (rename_variables_in_bb): Likewise. Properly walk over predecessors.
2cfc56b9
RB
1538 (rename_variables_in_loop): Remove.
1539 (slpeel_update_phis_for_duplicate_loop): Likewise.
1540 (slpeel_tree_duplicate_loop_to_edge_cfg): Handle nested loops,
1541 use available cfg machinery instead of duplicating it.
1542 Update PHI nodes and perform poor-mans SSA update here.
1543 (slpeel_tree_peel_loop_to_edge): Adjust.
1544
c25a0c60
RB
15452013-01-16 Richard Biener <rguenther@suse.de>
1546
1547 PR tree-optimization/54767
1548 PR tree-optimization/53465
1549 * tree-vrp.c (vrp_meet_1): Revert original fix for PR53465.
1550 (vrp_visit_phi_node): For PHI arguments coming via backedges
1551 drop all symbolical range information.
1552 (execute_vrp): Compute backedges.
1553
04b535af
RB
15542013-01-16 Richard Biener <rguenther@suse.de>
1555
1556 * doc/install.texi: Update CLooG and ISL requirements to
1557 0.18.0 and 0.11.1.
1558
8b0a1e0b
CB
15592013-01-16 Christian Bruel <christian.bruel@st.com>
1560
1561 PR target/55301
1562 * config/sh/sh.c (sh_expand_prologue): Postpone new_stack mem symbol.
1563 (broken_move): Handle UNSPECV_SP_SWITCH_B.
1564 * config/sh/sh.md (sp_switch_1): Use set (reg:SI SP_REG).
1565
15662013-01-16 DJ Delorie <dj@redhat.com>
1567
1568 * config/sh/sh.md (UNSPECV_SP_SWITCH_B): New.
1569 (UNSPECV_SP_SWITCH_E): New.
1570 (sp_switch_1): Change to an unspec.
1571 (sp_switch_2): Change to an unspec. Don't use post-inc when we
1572 replace $r15.
1573
15742013-01-16 Uros Bizjak <ubizjak@gmail.com>
88e784e6
UB
1575
1576 * emit-rtl.c (need_atomic_barrier_p): Mask memory model argument
1577 with MEMMODEL_MASK before comparing with MEMMODEL_* memory types.
1578 * optabs.c (maybe_emit_sync_lock_test_and_set): Ditto.
1579 (expand_mem_thread_fence): Ditto.
1580 (expand_mem_signal_fence): Ditto.
1581 (expand_atomic_load): Ditto.
1582 (expand_atomic_store): Ditto.
1583
0bfbca58 15842013-01-16 Alexandre Oliva <aoliva@redhat.com>
5147bf6a
AO
1585
1586 PR rtl-optimization/55547
1587 PR rtl-optimization/53827
1588 PR debug/53671
1589 PR debug/49888
1590 * alias.c (memrefs_conflict_p): Set sizes to negative after
1591 AND adjustments.
1592
305e3ac1
JJ
15932013-01-15 Jakub Jelinek <jakub@redhat.com>
1594
1595 PR target/55940
1596 * function.c (thread_prologue_and_epilogue_insns): Always
1597 add crtl->drap_reg to set_up_by_prologue.set, even if
1598 stack_realign_drap is false.
1599
f78ac4f2
JBG
16002013-01-15 Jan-Benedict Glaw <jbglaw@lug-owl.de>
1601
1602 * config/vax/vax.md (add<mode>3, sub<mode>3, mul<mode>3, div<mode>3,
1603 and<mode>3, *and<mode>_const_int, ior<mode>3, xor<mode>3, ashrsi3,
1604 *call): Fix indention.
1605
a78a8cc4
TV
16062013-01-15 Tom de Vries <tom@codesourcery.com>
1607
1608 PR target/55876
1609 * optabs.c (widen_operand): Use gen_lowpart instead of gen_rtx_SUBREG.
1610 Update comment.
1611
0e80383f
VM
16122013-01-15 Vladimir Makarov <vmakarov@redhat.com>
1613
305e3ac1 1614 PR rtl-optimization/55153
0e80383f
VM
1615 * sched-deps.c (sched_analyze_2): Add pending reads for prefetch.
1616
207b5956
MJ
16172013-01-15 Martin Jambor <mjambor@suse.cz>
1618
1619 PR tree-optimization/55920
1620 * tree-sra.c (analyze_access_subtree): Do not mark non-removable
1621 accesses as grp_to_be_debug_replaced.
1622
a7818b54
JJ
16232013-01-15 Jakub Jelinek <jakub@redhat.com>
1624
1625 PR tree-optimization/55920
1626 * tree-sra.c (sra_modify_assign): If for lacc->grp_to_be_debug_replaced
1627 there is non-useless type conversion needed from debug rhs to lhs,
1628 use build_debug_ref_for_model and/or VIEW_CONVERT_EXPR.
1629
b0fe107e
JM
16302013-01-15 Joseph Myers <joseph@codesourcery.com>
1631 Mikael Pettersson <mikpe@it.uu.se>
1632
1633 PR target/43961
1634 * config/arm/arm.h (ADDR_VEC_ALIGN): Align SImode jump tables for
1635 Thumb.
1636 (ASM_OUTPUT_CASE_LABEL): Remove.
1637 (ASM_OUTPUT_BEFORE_CASE_LABEL): Define to empty.
1638 * final.c (shorten_branches): Update alignment of labels before
1639 jump tables if CASE_VECTOR_SHORTEN_MODE.
1640
34ab62ee
RB
16412013-01-15 Richard Biener <rguenther@suse.de>
1642
1643 PR bootstrap/55961
1644 * system.h: Do not include gmp.h for building host tools.
1645
783a3a05
RB
16462013-01-15 Richard Biener <rguenther@suse.de>
1647
1648 PR middle-end/55882
1649 * emit-rtl.c (set_mem_attributes_minus_bitpos): Correctly
1650 account for bitpos when computing alignment.
1651
3a579e09
VY
16522013-01-15 Vladimir Yakovlev <vladimir.b.yakovlev@intel.com>
1653
1654 * config/i386/i386-c.c (ix86_target_macros_internal): New case.
1655 (ix86_target_macros_internal): Likewise.
1656
1657 * config/i386/i386.c (m_CORE2I7): Removed.
1658 (m_CORE_HASWELL): New macro.
1659 (m_CORE_ALL): Likewise.
1660 (initial_ix86_tune_features): m_CORE2I7 is replaced by m_CORE_ALL.
1661 (initial_ix86_arch_features): Likewise.
1662 (processor_target_table): Initializations for Core avx2.
1663 (cpu_names): New names "core-avx2".
1664 (ix86_option_override_internal): Changed PROCESSOR_COREI7 by
1665 PROCESSOR_CORE_HASWELL.
1666 (ix86_issue_rate): New case.
1667 (ia32_multipass_dfa_lookahead): Likewise.
1668 (ix86_sched_init_global): Likewise.
1669
1670 * config/i386/i386.h (TARGET_HASWELL): New macro.
1671 (target_cpu_default): New TARGET_CPU_DEFAULT_haswell.
1672 (processor_type): New PROCESSOR_HASWELL.
1673
955f5a07
JJ
16742013-01-15 Jakub Jelinek <jakub@redhat.com>
1675
ff784829
JJ
1676 PR tree-optimization/55955
1677 * tree-vect-loop.c (vectorizable_reduction): Give up early on
1678 *SHIFT_EXPR and *ROTATE_EXPR codes.
1679
955f5a07
JJ
1680 PR tree-optimization/48766
1681 * opts.c (common_handle_option): For -fwrapv disable -ftrapv, for
1682 -ftrapv disable -fwrapv.
1683
aeb8b4e9
GJL
16842013-01-14 Georg-Johann Lay <avr@gjlay.de>
1685
1686 PR target/55974
1687 * config/avr/avr-c.c (avr_cpu_cpp_builtins): Define __FLASH
1688 etc. to 1 and not to __flash.
1689 Use LL suffix for __INT24_MAX__ with -mint8.
1690 Use ULL suffix for __UINT24_MAX__ with -mint8.
1691
1c494c6a
GJL
16922013-01-14 Georg-Johann Lay <avr@gjlay.de>
1693
1694 * config/avr/avr-arch.h
1695 (struct base_arch_s): Use typedef avr_arch_t instead.
1696 (struct arch_info_s): Use typedef avr_arch_info_t instead.
1697 (struct mcu_type_s): Use typedef avr_mcu_t instead.
1698 * config/avr/avr.c: Same.
1699 * config/avr/avr-devices.c: Same.
1700 * config/avr/driver-avr.c: Same.
1701 * config/avr/gen-avr-mmcu-texi.c: Same.
1702 * config/avr/avr-mcus.def: Adjust comment.
1703
a50344cb
TB
17042013-01-14 Tejas Belagod <tejas.belagod@arm.com>
1705
88e784e6
UB
1706 * config/aarch64/aarch64-simd.md (*aarch64_simd_ld1r<mode>): New.
1707 * config/aarch64/iterators.md (VALLDI): New.
a50344cb 1708
47876a2a 17092013-01-14 Uros Bizjak <ubizjak@gmail.com>
e6f0e052
UB
1710 Andi Kleen <ak@linux.intel.com>
1711
1712 PR target/55948
1713 * config/i386/sync.md (atomic_store<mode>_1): New pattern.
1714 (atomic_store<mode>): Call atomic_store<mode>_1 for IX86_HLE_RELEASE
1715 memmodel flag.
1716
00892272
GJL
17172013-01-14 Georg-Johann Lay <avr@gjlay.de>
1718
1719 * config/avr/avr-stdint.h: Remove trailing blanks.
1720 * config/avr/avr-log.h: Same.
1721 * config/avr/avr-arch.h: Same.
1722 * config/avr/avr-devices.c: Same.
1723 * config/avr/avr-dimode.md: Same.
1724 * config/avr/predicates.md: Same.
1725 * config/avr/avr-c.c: Same. And fix typo.
e6f0e052 1726
00892272
GJL
1727 * config/avr/avr-protos.h: Same. And:
1728 (function_arg_regno_p): Rename to avr_function_arg_regno_p.
1729 (init_cumulative_args): Rename to avr_init_cumulative_args.
1730 (expand_prologue): Rename to avr_expand_prologue.
1731 (expand_epilogue): Rename to avr_expand_epilogue.
1732 (adjust_insn_length): Rename to avr_adjust_insn_length.
1733 (notice_update_cc): Rename to avr_notice_update_cc.
1734 (final_prescan_insn): Rename to avr_final_prescan_insn.
1735 * config/avr/avr.c: Same.
1736 * config/avr/avr.h: Same.
1737 * config/avr/avr.md: Remove trailing blanks.
1738 (prologue): Use avr_expand_prologue.
1739 (epilogue, sibcall_epilogue): Use avr_expand_epilogue.
1740
7bb01996
RB
17412013-01-14 Richard Biener <rguenther@suse.de>
1742
1743 * tree-cfg.c (verify_expr_location, verify_expr_location_1,
1744 verify_location, collect_subblocks): New functions.
1745 (verify_gimple_in_cfg): Verify that locations only reference
1746 BLOCKs in the functions BLOCK tree.
1747
2724573f
RB
17482013-01-14 Richard Biener <rguenther@suse.de>
1749
1750 * tree-cfgcleanup.c (remove_forwarder_block): Unshare propagated
1751 PHI argument.
1752 * graphite-sese-to-poly.c (insert_out_of_ssa_copy): Properly
1753 unshare reference.
1754 (insert_out_of_ssa_copy_on_edge): Likewise.
1755 (rewrite_close_phi_out_of_ssa): Likewise.
1756 * tree-ssa.c (insert_debug_temp_for_var_def): Properly unshare
1757 debug expressions.
1758 * tree-ssa-pre.c (insert_into_preds_of_block): Properly unshare
1759 propagated constants.
1760 * tree-cfg.c (tree_node_can_be_shared): Handled component-refs
1761 can not be shared.
1762
9a0bbab6
GJL
17632013-01-14 Georg-Johann Lay <avr@gjlay.de>
1764
1765 * config/avr/avr-modes.def: Add GPL copyright notice.
1766
45805f17
UB
17672013-01-13 Uros Bizjak <ubizjak@gmail.com>
1768
1769 * config/i386/sync.md (mem_thread_fence): Mask operands[0] with
1770 MEMMODEL_MASK to determine memory model.
1771 (atomic_store<mode>): Ditto from operands[2].
1772 * config/i386/i386.c (ix86_memmodel_check): Declare "strong" as bool.
1773
9d60be38
JJ
17742013-01-13 Jakub Jelinek <jakub@redhat.com>
1775
1776 PR fortran/55935
45805f17 1777 * gimple-fold.c (get_symbol_constant_value): Call unshare_expr.
9d60be38
JJ
1778 (fold_gimple_assign): Don't call unshare_expr here.
1779 (fold_ctor_reference): Call unshare_expr.
1780
e7f49d92
TG
17812013-01-13 Terry Guo <terry.guo@arm.com>
1782
aaf1e810
EB
1783 * Makefile.in (s-mlib): New argument MULTILIB_REUSE.
1784 * doc/fragments.texi: Document MULTILIB_REUSE.
1785 * gcc.c (multilib_reuse): New internal spec.
e7f49d92 1786 (set_multilib_dir): Also search multilib from multilib_reuse.
aaf1e810 1787 * genmultilib (tmpmultilib3): Refactor code.
e7f49d92
TG
1788 (tmpmultilib4): Ditto.
1789 (multilib_reuse): New multilib argument.
1790
fbd03a27
RS
17912013-01-13 Richard Sandiford <rdsandiford@googlemail.com>
1792
1793 * Makefile.in: Update copyright.
1794
b3681f13
TV
17952013-01-12 Tom de Vries <tom@codesourcery.com>
1796
1797 PR middle-end/55890
1798 * calls.c (expand_call): Check if arg_nr is valid.
1799
3f287e4b
MM
18002013-01-11 Michael Meissner <meissner@linux.vnet.ibm.com>
1801
1802 * doc/extend.texi (X86 Built-in Functions): Add whitespace in
1803 __builtin_ia32_paddb256 and __builtin_ia32_pavgb256
5bc35113
MM
1804 documentation. Add missing '__' in front of
1805 __builtin_ia32_packssdw256.
3f287e4b 1806
1abcd5eb
AK
18072013-01-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1808
1809 PR target/55719
1810 * config/s390/s390.c (s390_preferred_reload_class): Do not return
1811 NO_REGS for larl operands.
1812 (s390_reload_larl_operand): Use s390_load_address instead of
1813 emit_move_insn.
1814
980d0812
RB
18152013-01-11 Richard Biener <rguenther@suse.de>
1816
1817 * tree-cfg.c (verify_node_sharing_1): Split out from ...
1818 (verify_node_sharing): ... here.
1819 (verify_gimple_in_cfg): Use verify_node_sharing_1 for walk_tree.
1820
7cb9fd07
EB
18212013-01-11 Eric Botcazou <ebotcazou@adacore.com>
1822
1823 * configure.ac (Tree checking): Set TREECHECKING to yes if enabled.
1824 Substitute TREECHECKING.
1825 * configure: Regenerate.
1826 * Makefile.in (TREECHECKING): New.
1827
47876a2a 18282013-01-11 Richard Guenther <rguenther@suse.de>
c7ab2530
RG
1829
1830 PR tree-optimization/44061
1831 * tree-vrp.c (extract_range_basic): Compute zero as
1832 value-range for __builtin_constant_p of function parameters.
1833
d1e082c2
RS
18342013-01-10 Richard Sandiford <rdsandiford@googlemail.com>
1835
45805f17 1836 Update copyright years.
d1e082c2 1837
f85021b0
VM
18382013-01-10 Vladimir Makarov <vmakarov@redhat.com>
1839
9d60be38 1840 PR rtl-optimization/55672
0160442c
VM
1841 * lra-eliminations.c (mark_not_eliminable): Permit addition with
1842 const to be eliminable.
f85021b0 1843
7a8b1ec4
DE
18442013-01-10 David Edelsohn <dje.gcc@gmail.com>
1845
1846 * configure.ac (HAVE_AS_TLS): Add check for powerpc-ibm-aix.
1847 * configure: Regenerate.
1848
ad2e5b71
RB
18492013-01-10 Richard Biener <rguenther@suse.de>
1850
ddf9322d 1851 * builtins.c (expand_builtin_init_trampoline): Use set_mem_attributes.
ad2e5b71 1852
ffc5b2bb
RB
18532013-01-10 Richard Biener <rguenther@suse.de>
1854
1855 PR bootstrap/55792
1856 * tree-into-ssa.c (rewrite_add_phi_arguments): Do not set
1857 locations for virtual PHI arguments.
1858 (rewrite_update_phi_arguments): Likewise.
1859
e1f674e4
JS
18602013-01-10 Joel Sherrill <joel.sherrill@OARcorp.com>
1861
1862 * config/v850/rtems.h (ASM_SPEC): Pass -m8byte-align and -mgcc-abi
1863 on to assembler.
1864
a57fc743
JJ
18652013-01-10 Jakub Jelinek <jakub@redhat.com>
1866
1867 PR tree-optimization/55921
1868 * tree-complex.c (expand_complex_asm): New function.
1869 (expand_complex_operations_1): Call it for GIMPLE_ASM.
1870
0ff4390d
AK
18712013-01-10 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1872
1873 PR target/55718
1874 * config/s390/s390.c (s390_symref_operand_p)
1875 (s390_loadrelative_operand_p): Merge the two functions.
1876 (s390_check_qrst_address, print_operand_address): Add parameters
1877 to s390_loadrelative_operand_p invokation.
1878 (s390_check_symref_alignment): Use s390_loadrelative_operand_p.
1879 (s390_reload_larl_operand, s390_secondary_reload): Use
1880 s390_loadrelative_operand_p instead of s390_symref_operand_p.
1881 (legitimize_pic_address): Handle @GOTENT and @PLT + addend.
1882
6f557e0e
MS
18832013-01-09 Mike Stump <mikestump@comcast.net>
1884
1885 * dse.c (record_store): Remove unnecessary assert.
1886
7770c9e9
JH
18872013-01-09 Jan Hubicka <jh@suse.cz>
1888
1889 PR tree-optimization/55569
1890 * cfgloopmanip.c (scale_loop_profile): Make ITERATION_BOUND gcov_type.
1891 * cfgloop.h (scale_loop_profile): Likewise.
1892
a19b1432
JH
18932013-01-09 Jan Hubicka <jh@suse.cz>
1894
1895 PR lto/45375
ddf9322d
UB
1896 * ipa-inline.c (ipa_inline): Remove extern inlines and virtual
1897 functions.
a19b1432
JH
1898 * cgraphclones.c (cgraph_clone_node): Cpoy also LTO file data.
1899
9a002da8
RS
19002013-01-09 Richard Sandiford <rdsandiford@googlemail.com>
1901
1902 PR middle-end/55114
1903 * expr.h (maybe_emit_group_store): Declare.
1904 * expr.c (maybe_emit_group_store): New function.
1905 * builtins.c (expand_builtin_int_roundingfn): Call it.
1906 (expand_builtin_int_roundingfn_2): Likewise.
1907
511dcace
VM
19082013-01-09 Vladimir Makarov <vmakarov@redhat.com>
1909
e1f2b729 1910 PR rtl-optimization/55829
511dcace
VM
1911 * lra-constraints.c (match_reload): Add code for absent output.
1912 (curr_insn_transform): Add code for reloads of matched inputs
1913 without output.
1914
7b0fe4f4
UB
19152013-01-09 Uros Bizjak <ubizjak@gmail.com>
1916
1917 * config/i386/sse.md (*vec_interleave_highv2df): Change mode
1918 attribute of movddup insn to DF.
1919 (*vec_interleave_lowv2df): Ditto.
1920 (vec_dupv2df): Ditto.
1921
870ca331
JH
19222013-01-09 Jan Hubicka <jh@suse.cz>
1923
1924 PR tree-optimiation/55875
1925 * tree-ssa-loop-niter.c (number_of_iterations_cond): Add
1926 EVERY_ITERATION parameter.
7b0fe4f4 1927 (number_of_iterations_exit): Check if exit is executed every iteration.
870ca331
JH
1928 (idx_infer_loop_bounds): Similarly here.
1929 (n_of_executions_at_most): Simplify
1930 to only test for cases where statement is dominated by the
7b0fe4f4 1931 particular bound; handle correctly the "postdominance" test.
870ca331
JH
1932 (scev_probably_wraps_p): Use max loop iterations info
1933 as a global bound first.
1934
6f575fe4 19352013-01-09 Nguyen Duy Dat <dat.nguyen.yn@rvc.renesas.com>
3cd232b5
NDD
1936 Nick Clifton <nickc@redhat.com>
1937
1938 * config/v850/v850.md (cbranchsf4): New pattern.
1939 (cstoresf4): New pattern.
1940 (cbranchdf4): New pattern.
1941 (cstoredf4): New pattern.
1942 (movsicc): Disallow floating point comparisons.
1943 (cmpsf_le_insn): Fix order of operators.
1944 (cmpsf_lt_insn): Likewise.
1945 (cmpsf_eq_insn): Likewise.
1946 (cmpdf_le_insn): Likewise.
1947 (cmpdf_lt_insn): Likewise.
1948 (cmpdf_eq_insn): Likewise.
1949 (cmpsf_ge_insn): Use LE comparison.
1950 (cmpdf_ge_insn): Likewise.
1951 (cmpsf_gt_insn): Use LT comparison.
1952 (cmpdf_gt_insn): Likewise.
1953 (cmpsf_ne_insn): Delete pattern.
1954 (cmpdf_ne_insn): Delete pattern.
1955 * config/v850/v850.c (v850_gen_float_compare): Use
1956 gen_cmpdf_eq_insn for NE comparison.
1957 (v850_float_z_comparison_operator)
1958 (v850_float_nz_comparison_operator): Move from here ...
1959 * config/v850/predicates.md: ... to here. Move GT and GE
1960 comparisons into v850_float_z_comparison_operator.
1961 * config/v850/v850-protos.h (v850_float_z_comparison_operator):
1962 Delete prototype.
1963 (v850_float_nz_comparison_operator): Likewise.
1964
f0d54148
JDA
19652013-01-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1966
1967 * config/pa/pa.c (pa_emit_move_sequence): Replace calls to gen_insv
1968 with calls to gen_insvsi/gen_insvdi.
1969
8f01beca
VK
19702013-01-09 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
1971
1972 * config/i386/i386.c (initial_ix86_tune_features): Set up
1973 X86_TUNE_AVX128_OPTIMAL for m_BTVER2.
1974
2aa579ad
JJ
19752013-01-09 Steven Bosscher <steven@gcc.gnu.org>
1976 Jakub Jelinek <jakub@redhat.com>
1977
1978 PR tree-optimization/48189
1979 * predict.c (predict_loops): If max is 0, don't call compare_tree_int.
1980 If nitercst is 0, don't predict the exit edge.
1981
6edc3e32 19822013-01-08 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
01a3a324
N
1983
1984 * config/aarch64/aarch64.c (aarch64_print_operand): Replace %r
1985 in asm_fprintf with reg_names.
1986 (aarch64_print_operand_address): Likewise.
1987 (aarch64_return_addr): Likewise.
1988 * config/aarch64/aarch64.h (ASM_FPRINTF_EXTENSIONS): Remove.
1989
f6f94d94
JDA
19902013-01-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1991
1992 * config/pa/pa.h (VAL_U6_BITS_P): Define.
1993 (INT_U6_BITS): Likewise.
1994 * config/pa/predicates.md (uint6_operand): New predicate.
1995 (shift5_operand, shift6_operand): Likewise.
1996 * config/pa/pa.md (lshrsi3, rotrsi3): Use shift5_operand instead of
1997 arith32_operand.
1998 (lshrdi3): Use shift6_operand.
1999 (shrpsi4, shrpdi4): New insn patterns.
2000 (extzv): Delete expander.
2001 (extzvsi, extzvdi): New expanders. Use uint5_operand and uint6_operand
2002 predicates in unamed zero extract patterns. Tighten common constraint.
2003 (extv): Delete expander.
2004 (extvsi, extvdi): New expanders. Use uint5_operand and uint6_operand
2005 predicates in unamed sign extract patterns. Tighten common constraint.
2006 (insv): Delete expander.
2007 (insvsi, insvdi): New expanders. Use uint5_operand and uint6_operand
2008 predicates in unamed insert patterns. Tighten common constraint.
2009 Change uint32_operand predicate to uint6_operand predicate in unamed
2010 DImode pattern to insert constant values of type 1...1xxxx.
2011
36b72910
JH
20122013-01-04 Jan Hubicka <jh@suse.cz>
2013
2014 PR tree-optimization/55823
7b0fe4f4
UB
2015 * ipa-prop.c (update_indirect_edges_after_inlining): Fix ordering
2016 issue.
36b72910 2017
47876a2a 20182013-01-08 Jakub Jelinek <jakub@redhat.com>
c6d851b9
JJ
2019 Uros Bizjak <ubizjak@gmail.com>
2020
2021 PR rtl-optimization/55845
2022 * df-problems.c (can_move_insns_across): Stop scanning at
2023 volatile_insn_p source instruction or give up if
2024 across_from .. across_to range contains any volatile_insn_p
2025 instructions.
2026
4369c11e
TB
20272013-01-08 Tejas Belagod <tejas.belagod@arm.com>
2028
7b0fe4f4
UB
2029 * config/aarch64/aarch64-simd.md (vec_init<mode>): New.
2030 * config/aarch64/aarch64-protos.h (aarch64_expand_vector_init):
2031 Declare.
4369c11e 2032 * config/aarch64/aarch64.c (aarch64_simd_dup_constant,
7b0fe4f4 2033 aarch64_simd_make_constant, aarch64_expand_vector_init): New.
4369c11e 2034
aeb7e7c1
JJ
20352013-01-08 Jakub Jelinek <jakub@redhat.com>
2036
2037 PR fortran/55341
2038 * asan.c (asan_clear_shadow): New function.
2039 (asan_emit_stack_protection): Use it.
2040
a02ad1aa
TB
20412013-01-08 Tejas Belagod <tejas.belagod@arm.com>
2042
2043 * config/aarch64/aarch64-simd.md (aarch64_simd_vec_<su>mult_lo_<mode>,
2044 aarch64_simd_vec_<su>mult_hi_<mode>): Separate instruction and operand
2045 with tab instead of space.
2046
f90d87f5
NC
20472013-01-08 Nick Clifton <nickc@redhat.com>
2048
2049 * config/rl78/rl78.c (rl78_expand_prologue): Always select
2050 register bank 0 at the start of an interrupt handler.
83ffd964
NC
2051 * config/rl78/rl78.md (mulsi3_g13): Correct values for MDBL and
2052 MDBH registers.
f90d87f5 2053
385eb93d
JG
20542013-01-08 James Greenhalgh <james.greenhalgh@arm.com>
2055
2056 * config/aarch64/aarch64-simd.md
2057 (aarch64_simd_bsl<mode>_internal): Add floating-point modes.
2058 (aarch64_simd_bsl): Likewise.
2059 (aarch64_vcond_internal<mode>): Likewise.
2060 (vcond<mode><mode>): Likewise.
2061 (aarch64_cm<cmp><mode>): Fix constraints, add new modes.
2062 * config/aarch64/iterators.md (V_cmp_result): Add V2DF.
2063
4dcd1054
JG
20642013-01-08 James Greenhalgh <james.greenhalgh@arm.com>
2065
2066 * config/aarch64/aarch64-builtins.c
2067 (aarch64_builtin_vectorized_function): Handle sqrt, sqrtf.
2068
4267a4a6
MJ
20692013-01-08 Martin Jambor <mjambor@suse.cz>
2070
2071 PR debug/55579
2072 * tree-sra.c (analyze_access_subtree): Return true also after
2073 potentially creating a debug-only replacement.
2074
5f4e6de3
JJ
20752013-01-08 Jakub Jelinek <jakub@redhat.com>
2076
3138f224
JJ
2077 PR middle-end/55890
2078 * tree-ssa-ccp.c (evaluate_stmt): Use gimple_call_builtin_p.
2079
5f4e6de3
JJ
2080 PR tree-optimization/54120
2081 * tree-vrp.c (range_fits_type_p): Don't allow
2082 src_precision < precision from signed vr to unsigned_p
2083 if vr->min or vr->max is negative.
2084 (simplify_float_conversion_using_ranges): Test can_float_p
2085 against CODE_FOR_nothing.
2086
f3ef18ff
JJ
20872013-01-08 Jakub Jelinek <jakub@redhat.com>
2088 Richard Biener <rguenther@suse.de>
2089
2090 PR middle-end/55851
2091 * fold-const.c (int_binop_types_match_p): Allow all INTEGRAL_TYPE_P
2092 types instead of just INTEGER_TYPE types.
2093
25c210f9
MK
20942013-01-07 Mark Kettenis <kettenis@openbsd.org>
2095
2096 * config/i386/openbsdelf.h (LIBGCC2_HAS_TF_MODE, LIBGCC2_TF_CEXT,
2097 TF_SIZE): Define.
f90d87f5 2098
81826a7b
SE
20992013-01-07 Steve Ellcey <sellcey@mips.com>
2100
2101 PR target/42661
2102 * config/mips/mips.opt: Change mad to mmad to match documentation.
2103
35678514
GJL
21042013-01-07 Georg-Johann Lay <avr@gjlay.de>
2105
2106 PR target/55897
2107 * doc/extend.texi (AVR Named Address Spaces): __memx goes into
2108 .progmemx.data now.
2109
e5669488
GJL
21102013-01-07 Georg-Johann Lay <avr@gjlay.de>
2111
2112 PR target/55897
2113 * config/avr/avr.h (ADDR_SPACE_COUNT): New enum.
2114 (avr_addrspace_t): Add .section_name field.
2115 * config/avr/avr.c (progmem_section): Use ADDR_SPACE_COUNT as
2116 array size.
2117 (avr_addrspace): Same. Initialize .section_name. Remove last
2118 NULL entry. Put __memx into .progmemx.data.
2119 (progmem_section_prefix): Remove.
2120 (avr_asm_init_sections): No need to initialize progmem_section.
2121 (avr_asm_named_section): Use avr_addrspace[].section_name to get
2122 section name prefix.
2123 (avr_asm_select_section): Ditto. And use get_unnamed_section to
2124 retrieve the progmem section.
2125 * avr-c.c (avr_cpu_cpp_builtins): Use ADDR_SPACE_COUNT as loop
2126 boundary to run over avr_addrspace[].
2127 (avr_register_target_pragmas): Ditto.
2128
656e6f37
JJ
21292013-01-06 Jakub Jelinek <jakub@redhat.com>
2130
2131 * varasm.c (output_constant_def_contents): For asan_protect_global
2132 protected strings, adjust DECL_ALIGN if needed, before testing for
2133 anchored symbols.
2134 (place_block_symbol): Adjust size for asan protected STRING_CSTs if
2135 TREE_CONSTANT_POOL_ADDRESS_P. Increase alignment for asan protected
2136 normal decls.
2137 (output_object_block): For asan protected decls, emit asan padding
2138 after their contents.
2139 * asan.c (asan_protect_global): Don't check TREE_ASM_WRITTEN here.
2140 (asan_finish_file): Test it here instead.
2141
6edc3e32
UB
21422013-01-07 Nick Clifton <nickc@redhat.com>
2143 Matthias Klose <doko@debian.org>
2144 Doug Kwan <dougkwan@google.com>
2145 H.J. Lu <hongjiu.lu@intel.com>
b352afba
NC
2146
2147 PR driver/55470
2148 * collect2.c (main): Support -fuse-ld=bfd and -fuse-ld=gold.
2149
2150 * common.opt: Add fuse-ld=bfd and fuse-ld=gold.
2151
2152 * gcc.c (LINK_COMMAND_SPEC): Pass -fuse-ld=* to collect2.
2153
7b0fe4f4 2154 * opts.c (comman_handle_option): Ignore -fuse-ld=bfd and -fuse-ld=gold.
b352afba
NC
2155
2156 * doc/invoke.texi: Document -fuse-ld=bfd and -fuse-ld=gold.
2157
2a095093
GJL
21582013-01-07 Georg-Johann Lay <avr@gjlay.de>
2159
f3b503f4 2160 PR target/54461
2a095093
GJL
2161 * doc/install.texi (Cross-Compiler-Specific Options): Document
2162 --with-avrlibc.
2163
383f9b34
TB
21642013-01-07 Tejas Belagod <tejas.belagod@arm.com>
2165
2166 * config/aarch64/arm_neon.h (vmovn_high_is16, vmovn_high_s32,
2167 vmovn_high_s64, vmovn_high_u16, vmovn_high_u32, vmovn_high_u64,
2168 vqmovn_high_s16, vqmovn_high_s32, vqmovn_high_s64, vqmovn_high_u16,
2169 vqmovn_high_u32, vqmovn_high_u64, vqmovun_high_s16, vqmovun_high_s32,
2170 vqmovun_high_s64): Fix source operand number and update copyright.
2171
3626621a
RB
21722013-01-07 Richard Biener <rguenther@suse.de>
2173
2174 PR middle-end/55890
2175 * gimple.h (gimple_call_builtin_p): New overload.
2176 * gimple.c (validate_call): New function.
2177 (gimple_call_builtin_p): Likewise.
2178 * tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
2179 Use gimple_call_builtin_p.
2180 (find_func_clobbers): Likewise.
2181 * tree-ssa-strlen.c (adjust_last_stmt): Likewise.
2182 (strlen_optimize_stmt): Likewise.
2183
8b2ea410
JG
21842013-01-07 James Greenhalgh <james.greenhalgh@arm.com>
2185
2186 * config/aarch64/arm_neon.h (vld1_dup_*): Make argument const.
2187 (vld1q_dup_*): Likewise.
2188 (vld1_*): Likewise.
2189 (vld1q_*): Likewise.
2190 (vld1_lane_*): Likewise.
2191 (vld1q_lane_*): Likewise.
2192
9713d329
RB
21932013-01-07 Richard Biener <rguenther@suse.de>
2194
2195 * lto-streamer.h (LTO_minor_version): Bump to 2.
2196
3520f7cc
JG
21972013-01-07 James Greenhalgh <james.greenhalgh@arm.com>
2198
2199 * config/aarch64/aarch64-protos.h
2200 (aarch64_const_double_zero_rtx_p): Rename to...
2201 (aarch64_float_const_zero_rtx_p): ...this.
2202 (aarch64_float_const_representable_p): New.
2203 (aarch64_output_simd_mov_immediate): Likewise.
2204 * config/aarch64/aarch64-simd.md (*aarch64_simd_mov<mode>): Refactor
2205 move immediate case.
2206 * config/aarch64/aarch64.c
2207 (aarch64_const_double_zero_rtx_p): Rename to...
2208 (aarch64_float_const_zero_rtx_p): ...this.
2209 (aarch64_print_operand): Allow printing of new constants.
2210 (aarch64_valid_floating_const): New.
2211 (aarch64_legitimate_constant_p): Check for valid floating-point
2212 constants.
2213 (aarch64_simd_valid_immediate): Likewise.
2214 (aarch64_vect_float_const_representable_p): New.
2215 (aarch64_float_const_representable_p): Likewise.
2216 (aarch64_simd_imm_zero_p): Also allow for floating-point 0.0.
2217 (aarch64_output_simd_mov_immediate): New.
2218 * config/aarch64/aarch64.md (*movsf_aarch64): Add new alternative.
2219 (*movdf_aarch64): Likewise.
2220 * config/aarch64/constraints.md (Ufc): New.
2221 (Y): call aarch64_float_const_zero_rtx.
2222 * config/aarch64/predicates.md (aarch64_fp_compare_operand): New.
2223
e167c04d
RB
22242013-01-07 Richard Biener <rguenther@suse.de>
2225
2226 PR tree-optimization/55888
2227 PR tree-optimization/55862
2228 * tree-ssa-pre.c (phi_translate_1): Revert previous change.
2229 (valid_in_sets): Check if a NAME has a leader in AVAIL_OUT,
2230 not if it is contained therein.
2231
0139aaab
GJL
22322013-01-07 Georg-Johann Lay <avr@gjlay.de>
2233
2234 * config/avr/t-avr: Typo.
2235
4a176b23
GJL
22362013-01-07 Georg-Johann Lay <avr@gjlay.de>
2237
2238 PR55243
2239 * config/avr/t-avr: Don't automatically rebuild
2240 $(srcdir)/config/avr/t-multilib
2241 $(srcdir)/config/avr/avr-tables.opt
2242 $(srcdir)/doc/avr-mmcu.texi
2243 (avr-mcus): New phony target to build them on request.
2244 (s-avr-mlib, s-avr-mmcu-texi): Remove.
2245 * avr/avr-mcus.def: Adjust comments.
2246
c7afdc98
UB
22472013-01-07 Uros Bizjak <ubizjak@gmail.com>
2248
2249 * config/i386/i386.c (DEFAULT_PCC_STRUCT_RETURN): Remove.
2250
1ab05c31
RS
22512013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
2252
2253 * file-find.c, file-find.h, realmpfr.c: Add FSF as copyright holder.
2254
488e3acc
RS
22552013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
2256
2257 * config/tilepro/gen-mul-tables.cc: Put copyright on one line.
2258
a89599d2
DE
22592013-01-05 David Edelsohn <dje.gcc@gmail.com>
2260
2261 * config/rs6000/aix53.h (LIB_SPEC): Add -lpthreads when compiling
2262 to generate profiling.
2263 * config/rs6000/aix64.h (LIB_SPEC): Same.
2264
70f09188
AP
22652013-01-04 Andrew Pinski <apinski@cavium.com>
2266
2267 * config/aarch64/aarch64.c (aarch64_fixed_condition_code_regs):
2268 New function.
2269 (TARGET_FIXED_CONDITION_CODE_REGS): Define.
2270
918d445f
UB
22712013-01-04 Uros Bizjak <ubizjak@gmail.com>
2272
2273 * config/i386/i386.c (ix86_legitimize_address): Call convert_to_mode
2274 unconditionally.
2275 (ix86_expand_move): Ditto.
2276 (ix86_zero_extend_to_Pmode): Ditto.
2277 (ix86_expand_call): Ditto.
2278 (ix86_expand_special_args_builtin): Ditto.
2279 (ix86_expand_builtin): Ditto.
2280
361618ec
RB
22812013-01-04 Richard Biener <rguenther@suse.de>
2282
2283 PR tree-optimization/55862
2284 * tree-ssa-pre.c (phi_translate_1): Valueize SSA names after
2285 translating them through PHI nodes.
2286
87eab554
MJ
22872013-01-04 Martin Jambor <mjambor@suse.cz>
2288
2289 PR tree-optimization/55755
2290 * tree-sra.c (sra_modify_assign): Do not check that an access has no
2291 children when trying to avoid producing a VIEW_CONVERT_EXPR.
2292
33879b9f
MP
22932013-01-04 Marek Polacek <polacek@redhat.com>
2294
2295 PR middle-end/55859
2296 * opts.c (default_options_optimization): Clarify error message.
2297
3068819a
RB
22982013-01-04 Richard Biener <rguenther@suse.de>
2299
2300 PR middle-end/55863
2301 * fold-const.c (split_tree): Undo -X - 1 to ~X folding for
2302 reassociation.
2303
0e4ae794
JDA
23042013-01-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2305
2306 PR target/53789
2307 * config/pa/pa.md (movsi): Revert previous change.
e58d2e48
JDA
2308 * config/pa/pa.c (pa_legitimate_constant_p): Reject all TLS symbol
2309 references.
0e4ae794 2310
65c88cef
RH
23112013-01-03 Richard Henderson <rth@redhat.com>
2312
2313 * config/i386/i386.c (ix86_expand_move): Always assign to op1
2314 after eliminating TLS symbols.
2315
8ac16127
MG
23162013-01-03 Marc Glisse <marc.glisse@inria.fr>
2317
2318 PR bootstrap/50167
2319 * graphite-interchange.c (pdr_stride_in_loop): Use gmp_fprintf.
2320 * graphite-poly.c (debug_gmp_value): Likewise.
2321
bb664f09
UB
23222013-01-03 Uros Bizjak <ubizjak@gmail.com>
2323
2324 PR target/55712
2325 * config/i386/i386-c.c (ix86_target_macros_internal): Depending on
2326 selected code model, define __code_mode_small__, __code_model_medium__,
2327 __code_model_large__, __code_model_32__ or __code_model_kernel__.
2328 * config/i386/cpuid.h (__cpuid, __cpuid_count) [__i386__]: Prefix
2329 xchg temporary register with %k. Declare temporary register as
2330 early clobbered.
2331 [__x86_64__]: For medium and large code models, preserve %rbx register.
2332
bcf1ef00
RB
23332013-01-03 Richard Biener <rguenther@suse.de>
2334
0506634a 2335 * tree-data-ref.c (dump_conflict_function): Use less vertical spacing.
bcf1ef00
RB
2336 (dump_subscript): Adjust.
2337 (finalize_ddr_dependent): Do not dump redundant info.
2338 (analyze_siv_subscript): Adjust.
2339 (subscript_dependence_tester): Likewise.
2340 (compute_affine_dependence): Likewise.
2341
59fd17e3
RB
23422013-01-03 Richard Biener <rguenther@suse.de>
2343
2344 Revert
2345 2013-01-03 Richard Biener <rguenther@suse.de>
2346
2347 PR tree-optimization/55857
2348 * tree-vect-stmts.c (vectorizable_load): Do not setup
2349 re-alignment for invariant loads.
2350
2351 2013-01-02 Richard Biener <rguenther@suse.de>
2352
2353 * tree-vect-stmts.c (vectorizable_load): When vectorizing an
0506634a 2354 invariant load do not generate a vector load from the scalar location.
59fd17e3 2355
595c2679
RB
23562013-01-03 Richard Biener <rguenther@suse.de>
2357
2358 * tree-vect-loop.c (vect_analyze_loop_form): Clarify reason
2359 for not vectorizing.
2360 * tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref): Do
2361 not build INDIRECT_REFs, call get_name once only.
2362 (vect_create_data_ref_ptr): Likewise. Dump base object kind
2363 based on DR_BASE_OBJECT, not DR_BASE_ADDRESS.
2364
90bb7d7a
RB
23652013-01-03 Richard Biener <rguenther@suse.de>
2366
2367 PR tree-optimization/55857
2368 * tree-vect-stmts.c (vectorizable_load): Do not setup
2369 re-alignment for invariant loads.
2370
f09b77ca
RB
23712013-01-03 Richard Biener <rguenther@suse.de>
2372
2373 PR lto/55848
2374 * lto-symtab.c (lto_symtab_merge_decls_1): As last resort, always
2375 prefer a built-in decl.
2376
3461a16e
JJ
23772013-01-03 Jakub Jelinek <jakub@redhat.com>
2378
df8e2b4f
JJ
2379 * gcc.c (process_command): Update copyright notice dates.
2380 * gcov.c (print_version): Likewise.
2381 * gcov-dump.c (print_version): Likewise.
2382
3461a16e
JJ
2383 PR rtl-optimization/55838
2384 * loop-iv.c (iv_number_of_iterations): Call lowpart_subreg on
2385 iv0.step, iv1.step and step.
2386
8b5546d6
JJ
23872013-01-03 Jakub Jelinek <jakub@redhat.com>
2388 Marc Glisse <marc.glisse@inria.fr>
2389
2390 PR tree-optimization/55832
2391 * fold-const.c (fold_binary_loc): For ABS_EXPR<x> >= 0 and
2392 ABS_EXPR<x> < 0 folding use constant_boolean_node instead of
2393 integer_{one,zero}_node.
2394
8ab1d2e9
JJ
23952013-01-03 Jakub Jelinek <jakub@redhat.com>
2396
2397 PR debug/54402
2398 * params.def (PARAM_MAX_VARTRACK_REVERSE_OP_SIZE): New param.
2399 * var-tracking.c (reverse_op): Don't add reverse ops to
2400 VALUEs that have already
0506634a 2401 PARAM_VALUE (PARAM_MAX_VARTRACK_REVERSE_OP_SIZE) or longer locs list.
8ab1d2e9 2402
5b9ad1d4
GP
24032013-01-02 Gerald Pfeifer <gerald@pfeifer.com>
2404
2405 * doc/contrib.texi: Note years as release manager for Mark Mitchell.
2406
e25a6711
TJ
24072013-01-02 Teresa Johnson <tejohnson@google.com>
2408
2409 * dumpfile.c (dump_loc): Print filename with location.
2410 * tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Use
2411 new location_t parameter to emit complete unroll message with
2412 new dump framework.
2413 (canonicalize_loop_induction_variables): Compute loops location
2414 and pass to try_unroll_loop_completely.
2415 * loop-unroll.c (report_unroll_peel): New function.
2416 (peel_loops_completely): Use new dump format with location
2417 for main dumpfile message, and invoke report_unroll_peel on success.
2418 (decide_unrolling_and_peeling): Ditto.
2419 (decide_peel_once_rolling): Remove old dumpfile message subsumed
2420 by report_unroll_peel.
2421 (decide_peel_completely): Ditto.
2422 (decide_unroll_constant_iterations): Ditto.
2423 (decide_unroll_runtime_iterations): Ditto.
2424 (decide_peel_simple): Ditto.
2425 (decide_unroll_stupid): Ditto.
2426 * cfgloop.c (get_loop_location): New function.
2427 * cfgloop.h (get_loop_location): Declare.
2428
77878621
ST
24292013-01-02 Sriraman Tallam <tmsriram@google.com>
2430
2431 * config/i386/i386.c (fold_builtin_cpu): Remove unnecessary checks for
2432 NULL.
2433
9e65d03e
JDA
24342013-01-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2435
2436 PR middle-end/55198
2437 * expr.c (expand_expr_real_1): Don't use bitfield extraction for non
2438 BLKmode objects when EXPAND_MEMORY is specified.
2439
6a7da30f
ST
24402013-01-02 Sriraman Tallam <tmsriram@google.com>
2441
2442 * config/i386/i386.c (ix86_get_function_versions_dispatcher): Fix bug
2443 in loop predicate.
2444 (fold_builtin_cpu): Do not share cpu model decls across statements.
2445
e78167f2
JM
24462013-01-02 Jason Merrill <jason@redhat.com>
2447
2448 PR c++/55804
2449 * tree.c (build_array_type_1): Revert earlier change.
2450
8c075fb4
YZ
24512013-01-02 Yufeng Zhang <yufeng.zhang@arm.com>
2452
2453 * config/aarch64/aarch64-cores.def: Add entries for "cortex-a53" and
2454 "cortex-a57".
2455 * config/aarch64/aarch64-tune.md: Re-generate.
2456
0682ed3e
RB
24572013-01-02 Richard Biener <rguenther@suse.de>
2458
2459 * tree-vect-stmts.c (vectorizable_load): When vectorizing an
0506634a 2460 invariant load do not generate a vector load from the scalar location.
0682ed3e 2461
b8f6a302
RB
24622013-01-02 Richard Biener <rguenther@suse.de>
2463
2464 PR bootstrap/55784
2465 * configure.ac: Add $GMPINC to CFLAGS/CXXFLAGS.
2466 * configure: Regenerate.
2467
04b80dbb
RS
24682013-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2469
2470 * builtins.c (expand_builtin_mathfn, expand_builtin_mathfn_2)
2471 (expand_builtin_mathfn_ternary, expand_builtin_mathfn_3)
2472 (expand_builtin_int_roundingfn_2): Keep the original target around
2473 for the fallback case.
2474
635b0b0c
RS
24752013-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2476
2477 * tree-vrp.c (range_fits_type_p): Require the MSB of the double_int
2478 to be clear for sign changes.
2479
42d57399
JH
24802013-01-01 Jan Hubicka <jh@suse.cz>
2481
2482 * ipa-inline-analysis.c: Fix formatting.
2483
5bb6669d
JJ
24842013-01-01 Jakub Jelinek <jakub@redhat.com>
2485
2486 PR tree-optimization/55831
2487 * tree-vect-loop.c (get_initial_def_for_induction): Use
2488 gsi_after_labels instead of gsi_start_bb.
ad41bd84 2489\f
86a2db33 2490Copyright (C) 2013 Free Software Foundation, Inc.
ad41bd84
JM
2491
2492Copying and distribution of this file, with or without modification,
2493are permitted in any medium without royalty provided the copyright
2494notice and this notice are preserved.