re PR tree-optimization/56094 (Invalid line number info generated with tree-level...
[gcc.git] / gcc / ChangeLog
1 2013-01-28 Jakub Jelinek <jakub@redhat.com>
2
3 PR tree-optimization/56094
4 * gimplify.c (force_gimple_operand_1): Temporarily set input_location
5 to UNKNOWN_LOCATION while gimplifying expr.
6
7 2013-01-27 Uros Bizjak <ubizjak@gmail.com>
8
9 PR target/56114
10 * config/i386/i386.md (*movabs<mode>_1): Add square brackets around
11 operand 0 in movabs insn template for -masm=intel asm alternative.
12 (*movabs<mode>_2): Ditto for operand 1.
13
14 2013-01-26 David Holsgrove <david.holsgrove@xilinx.com>
15
16 PR target/54663
17 * config.gcc (microblaze*-linux*): Add tmake_file to allow building
18 of microblaze-c.o
19
20 2013-01-26 Edgar E. Iglesias <edgar.iglesias@gmail.com>
21
22 * config.gcc (microblaze*-*-*): Rename microblaze*-*-elf, update
23 tm_file.
24
25
26 2013-01-25 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
27
28 * config/aarch64/aarch64.c (TARGET_FIXED_CONDITION_CODE_REGS):
29 Undef to avoid warning.
30
31 2013-01-25 Michael Haubenwallner <michael.haubenwallner@salomon.at>
32
33 * configure.ac (gcc_cv_ld_static_dynamic): Define for AIX native ld.
34 * configure: Regenerate.
35
36 2013-01-25 Jakub Jelinek <jakub@redhat.com>
37
38 PR tree-optimization/56098
39 * tree-ssa-phiopt.c (nt_init_block): Don't call add_or_mark_expr
40 for stmts with volatile ops.
41 (cond_store_replacement): Don't optimize if assign has volatile ops.
42 (cond_if_else_store_replacement_1): Don't optimize if either
43 then_assign or else_assign have volatile ops.
44 (hoist_adjacent_loads): Don't optimize if either def1 or def2 have
45 volatile ops.
46
47 2013-01-25 Georg-Johann Lay <avr@gjlay.de>
48
49 * doc/invoke.texi (AVR Built-in Macros): Document __XMEGA__.
50
51 2013-01-25 Georg-Johann Lay <avr@gjlay.de>
52
53 * doc/extend.texi (Example of asm with clobbered asm reg): Fix
54 missing ':' in asm example.
55
56 2013-01-25 Tejas Belagod <tejas.belagod@arm.com>
57
58 * config/aarch64/aarch64-simd-builtins.def: Separate sq<r>dmulh_lane
59 entries into lane and laneq entries.
60 * config/aarch64/aarch64-simd.md (aarch64_sq<r>dmulh_lane<mode>):
61 Remove AdvSIMD scalar modes.
62 (aarch64_sq<r>dmulh_laneq<mode>): New.
63 (aarch64_sq<r>dmulh_lane<mode>): New RTL pattern for Scalar AdvSIMD
64 modes.
65 * config/aarch64/arm_neon.h: Fix all the vq<r>dmulh_lane* intrinsics'
66 builtin implementations to relfect changes in RTL in aarch64-simd.md.
67 * config/aarch64/iterators.md (VCOND): New.
68 (VCONQ): New.
69
70 2013-01-25 Georg-Johann Lay <avr@gjlay.de>
71
72 PR target/54222
73 * config/avr/builtins.def (DEF_BUILTIN): Add LIBNAME argument.
74 Add NULL LIBNAME argument to existing definitions.
75 (ABSHR, ABSR, ABSLR, ABSLLR, ABSHK, ABSK, ABSLK, ABSLLK): New.
76 * config/avr/avr-c.c (DEF_BUILTIN): Add LIBNAME argument.
77 * config/avr/avr.c (DEF_BUILTIN): Same.
78 (avr_init_builtins): Pass down LIBNAME to add_builtin_function.
79 (avr_expand_builtin): Expand to a vanilla call if a libgcc
80 implementation is available (DECL_ASSEMBLER_NAME is set).
81 (avr_fold_absfx): New static function.
82 (avr_fold_builtin): Use it to handle: AVR_BUILTIN_ABSHR,
83 AVR_BUILTIN_ABSR, AVR_BUILTIN_ABSLR, AVR_BUILTIN_ABSLLR,
84 AVR_BUILTIN_ABSHK, AVR_BUILTIN_ABSK, AVR_BUILTIN_ABSLK,
85 AVR_BUILTIN_ABSLLK.
86 * config/avr/stdfix.h (abshr, absr, abslr, absllr)
87 (abshk, absk, abslk, absllk): Provide as static inline functions.
88
89 2013-01-25 Marek Polacek <polacek@redhat.com>
90
91 PR tree-optimization/56035
92 * cfgloopmanip.c (fix_loop_structure): Remove redundant condition.
93
94 2012-01-24 Uros Bizjak <ubizjak@gmail.com>
95
96 * config/i386/i386.md (*movti_internal_rex64): Add (o,e) alternative.
97 (*movtf_internal_rex64): Add (!o,C) alternative
98 (*movxf_internal_rex64): Ditto.
99 (*movdf_internal_rex64): Add (?r,C) and (?m,C) alternatives.
100
101 2013-01-24 Shenghou Ma <minux.ma@gmail.com>
102
103 * doc/invoke.texi: fix typo.
104 * doc/objc.texi: fix typo.
105
106 2013-01-24 Richard Sandiford <rdsandiford@googlemail.com>
107
108 * config/mips/mips.md (*and<mode>3_mips16): Use the "W" constraint
109 for the first two alternatives.
110
111 2013-01-24 Diego Novillo <dnovillo@google.com>
112
113 * Makefile.in (GGC): Remove. Replace all instances with ggc-page.o.
114 (ggc-zone.o): Remove.
115 * configure.ac: Remove option --with-gc.
116 * configure: Re-generate.
117 * doc/install.texi: Remove documentation for --with-gc.
118 * gengtype.c (write_enum_defn): Remove. Update all users.
119 (write_Types_process_field): Remove generation of gt_e_* argument.
120 (output_type_enum): Remove. Update all users.
121 (write_enum_defn): Remove. Update all users.
122 (enum alloc_zone): Remove. Update all users.
123 (write_splay_tree_allocator_def): Remove generation of gt_e_* argument.
124 * ggc-common.c (ggc_splay_alloc): Remove first argument.
125 Update all callers.
126 (struct ptr_data): Remove field TYPE. Update all users.
127 (gt_pch_note_object): Remove argument TYPE. Update all users.
128 * ggc-internal.h (ggc_pch_alloc_object): Remove last argument.
129 Update all users.
130 * ggc-none.c (ggc_alloc_typed_stat): Remove.
131 (struct alloc_zone): Remove.
132 (ggc_internal_alloc_zone_stat): Remove.
133 (ggc_internal_cleared_alloc_zone_stat): Remove.
134 * ggc-page.c (ggc_alloc_typed_stat): Remove.
135 (ggc_pch_count_object): Remove last argument. Update all users.
136 (ggc_pch_alloc_object): Remove last argument. Update all users.
137 (struct alloc_zone): Remove.
138 * ggc-zone.c: Remove.
139 * ggc.h (gt_pch_note_object): Remove last argument. Update all users.
140 (struct alloc_zone): Remove.
141 (ggc_alloc_typed_stat): Remove.
142 (ggc_alloc_typed): Remove.
143 (ggc_splay_alloc): Remove first argument.
144 (rtl_zone): Remove. Update all users.
145 (tree_zone): Remove. Update all users.
146 (tree_id_zone): Remove. Update all users.
147 (ggc_internal_zone_alloc_stat): Remove. Update all users.
148 (ggc_internal_zone_cleared_alloc_stat): Remove. Update all users.
149 (ggc_internal_zone_vec_alloc_stat): Remove. Update all users.
150 * tree-ssanames.c: Remove references to zone allocator in comments.
151
152 2013-01-24 Georg-Johann Lay <avr@gjlay.de>
153
154 * config/avr/avr.c (avr_out_fract): Make register numbers that
155 might be outside of source operand signed.
156
157 2013-01-24 Uros Bizjak <ubizjak@gmail.com>
158
159 * config/i386/constraints.md (Yf): New constraint.
160 * config/i386/i386.md (*movdf_internal_rex64): Use Yf*f instead
161 of f constraint to conditionaly disable x87 register preferences.
162 (*movdf_internal): Ditto.
163 (*movsf_internal): Ditto.
164
165 2013-01-24 Steven Bosscher <steven@gcc.gnu.org>
166
167 PR inline-asm/55934
168 * lra-assigns.c (assign_by_spills): Throw away the pattern of asms
169 that have operands with impossible constraints.
170 Add a FIXME for a speed-up opportunity.
171 * lra-constraints.c (process_alt_operands): Verify that a class
172 selected from constraints on asms is valid for the operand mode.
173 (curr_insn_transform): Remove incorrect comment.
174
175 2013-01-23 David Edelsohn <dje.gcc@gmail.com>
176
177 * config/rs6000/rs6000.c (rs6000_delegitimize_address): Check that
178 TOC operand is a valid symbol ref in the constant pool.
179
180 2013-01-23 Edgar E. Iglesias <edgar.iglesias@gmail.com>
181
182 * config/microblaze/linux.h: Add TARGET_OS_CPP_BUILTINS
183
184 2013-01-23 Georg-Johann Lay <avr@gjlay.de>
185
186 PR target/54222
187 * config/avr/stdfix.h: New file.
188 * t-avr (stdfix-gcc.h): New rule to build it.
189 (EXTRA_HEADERS): Set it to install stdfix.h, stdfix-gcc.h.
190
191 2013-01-23 Kostya Serebryany <kcc@google.com>
192
193 * config/darwin.h: remove dependency on
194 CoreFoundation (asan on Mac OS).
195
196 2013-01-23 Jakub Jelinek <jakub@redhat.com>
197
198 PR target/49069
199 * config/arm/arm.md (cbranchdi4, cstoredi4): Use s_register_operand
200 instead of cmpdi_operand for first comparison operand.
201 Don't assert that comparison operands aren't both constants.
202
203 2013-01-22 Jonathan Wakely <jwakely.gcc@gmail.com>
204
205 * doc/install.texi (Downloading the Source): Update references to
206 downloading separate components.
207
208 2013-01-22 Jonathan Wakely <jwakely.gcc@gmail.com>
209
210 * doc/extend.texi (__int128): Improve grammar.
211
212 2013-01-22 Uros Bizjak <ubizjak@gmail.com>
213
214 PR target/56028
215 * config/i386/i386.md (*movti_internal_rex64): Change (o,riF)
216 alternative to (o,r).
217 (*movdi_internal_rex64): Remove (!o,n) alternative.
218 (DImode immediate->memory splitter): Remove.
219 (DImode immediate->memory peephole2): Remove.
220 (movtf): Enable for TARGET_64BIT || TARGET_SSE.
221 (*movtf_internal_rex64): Rename from *movtf_internal. Change (!o,F*r)
222 alternative to (!o,*r).
223 (*movtf_internal_sse): New pattern.
224 (*movxf_internal_rex64): New pattern.
225 (*movxf_internal): Disable for TARGET_64BIT.
226 (*movdf_internal_rex64): Remove (!o,F) alternative.
227
228 2013-01-22 Jakub Jelinek <jakub@redhat.com>
229
230 PR middle-end/56074
231 * dumpfile.c (dump_loc): Only print loc if LOCATION_LOCUS (loc)
232 isn't UNKNOWN_LOCATION nor BUILTINS_LOCATION.
233 * tree-vect-loop-manip.c (find_loop_location): Also ignore
234 stmt locations where LOCATION_LOCUS of the stmt location is
235 UNKNOWN_LOCATION or BUILTINS_LOCATION.
236
237 PR target/55686
238 * config/i386/i386.md (UNSPEC_STOS): New.
239 (strset_singleop, *strsetdi_rex_1, *strsetsi_1, *strsethi_1,
240 *strsetqi_1): Add UNSPEC_STOS.
241
242 2013-01-22 Paolo Carlini <paolo.carlini@oracle.com>
243
244 PR c++/56067
245 * doc/invoke.texi: Remove left over -Wsynth example.
246
247 2013-01-21 Jakub Jelinek <jakub@redhat.com>
248
249 PR tree-optimization/56051
250 * fold-const.c (fold_binary_loc): Don't fold
251 X < (cast) (1 << Y) into (X >> Y) != 0 if cast is either
252 a narrowing conversion, or widening conversion from signed
253 to unsigned.
254
255 2013-01-21 Uros Bizjak <ubizjak@gmail.com>
256
257 PR rtl-optimization/56023
258 * haifa-sched.c (fix_inter_tick): Do not update ticks of instructions,
259 dependent on debug instruction.
260
261 2013-01-21 Martin Jambor <mjambor@suse.cz>
262
263 PR middle-end/56022
264 * function.c (allocate_struct_function): Call
265 invoke_set_current_function_hook earlier.
266
267 2013-01-21 Jakub Jelinek <jakub@redhat.com>
268
269 * reload1.c (init_reload): Only initialize reload_obstack
270 during the first call.
271
272 2013-01-21 Marek Polacek <polacek@redhat.com>
273
274 * cfgloop.c (verify_loop_structure): Fix up grammar.
275
276 2013-01-21 Yi-Hsiu Hsu <ahsu@marvell.com>
277
278 * config/arm/marvell-pj4.md (pj4_shift_conds, pj4_alu_shift,
279 pj4_alu_shift_conds, pj4_shift): Handle simple_alu_shift.
280
281 2013-01-21 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
282
283 PR target/56058
284 * config/arm/marvell-pj4.md: Update copyright year.
285 Fix up use of alu to alu_reg and simple_alu_imm.
286
287 2013-01-21 Uros Bizjak <ubizjak@gmail.com>
288
289 * config/i386/i386.md (enabled): Do not disable fma4 for TARGET_FMA.
290
291 2013-01-20 Vladimir Makarov <vmakarov@redhat.com>
292
293 PR target/55433
294 * lra-constraints.c (curr_insn_transform): Don't reuse original
295 insn for secondary memory move when memory mode should be different.
296
297 2013-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
298
299 * config/pa/pa.md (atomic_loaddi, atomic_loaddi_1, atomic_storedi,
300 atomic_storedi_1): New patterns.
301
302 2013-01-20 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
303
304 btver2 pipeline descriptions.
305 * config/i386/i386.c: Enable CPU_BTVER2 to use btver2 pipeline
306 descriptions.
307 * config/i386/i386.md (btver2_decode): New type attributes.
308 * config/i386/sse.md (btver2_decode, btver2_sse_attr): New
309 type attributes.
310 * config/i386/btver2.md: New file describing btver2 pipelines.
311
312 2013-01-19 Andrew Pinski <apinski@cavium.com>
313
314 PR tree-optimization/52631
315 * tree-ssa-sccvn (visit_use): Before looking up the original
316 statement, try looking up the simplified expression.
317
318 2013-01-19 Anthony Green <green@moxielogic.com>
319
320 * config/moxie/moxie.c (moxie_expand_prologue): Set
321 current_function_static_stack_size.
322
323 2013-01-18 Jakub Jelinek <jakub@redhat.com>
324
325 PR tree-optimization/56029
326 * tree-phinodes.c (reserve_phi_args_for_new_edge): Set
327 gimple_phi_arg_location for the new arg to UNKNOWN_LOCATION.
328
329 2013-01-18 Sharad Singhai <singhai@google.com>
330
331 PR tree-optimization/55995
332 * dumpfile.c (dump_loc): Print location only if available.
333 * tree-vectorizer.c (increase_alignment): Intialize vect_location.
334
335 2013-01-18 Vladimir Makarov <vmakarov@redhat.com>
336
337 PR target/55433
338 * lra-constraints.c (curr_insn_transform): Reuse original insn for
339 secondary memory move.
340 (inherit_reload_reg): Use rclass instead of cl for
341 check_secondary_memory_needed_p.
342
343 2013-01-18 Jakub Jelinek <jakub@redhat.com>
344
345 PR middle-end/56015
346 * expr.c (expand_expr_real_2) <case COMPLEX_EXPR>: Handle
347 the case where writing real complex part of target modifies op1.
348
349 2013-01-18 James Greenhalgh <james.greenhalgh@arm.com>
350
351 * config/aarch64/aarch64-simd.md
352 (aarch64_vcond_internal<mode>): Handle unordered cases.
353 * config/aarch64/iterators.md (v_cmp_result): New.
354
355 2013-01-18 Yi-Hsiu Hsu <ahsu@marvell.com>
356 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
357
358 * config/arm/marvell-pj4.md: New file.
359 * config/arm/arm.c (arm_issue_rate): Add marvell_pj4.
360 * config/arm/arm.md (generic_sched): Add marvell_pj4.
361 (generic_vfp): Likewise.
362 * config/arm/arm-cores.def: Add marvell-pj4.
363 * config/arm/arm-tune.md: Regenerate.
364 * config/arm/arm-tables.opt: Regenerate.
365 * config/arm/bpabi.h (BE8_LINK_SPEC): Add marvell_pj4.
366 * doc/invoke.texi: Document marvell-pj4.
367
368 2013-01-18 Tejas Belagod <tejas.belagod@arm.com>
369
370 * config/aarch64/arm_neon.h: Map scalar types to standard types.
371
372 2013-01-18 Alexandre Oliva <aoliva@redhat.com>
373
374 PR debug/54114
375 PR debug/54402
376 PR debug/49888
377 * var-tracking.c (negative_power_of_two_p): New.
378 (global_get_addr_cache, local_get_addr_cache): New.
379 (get_addr_from_global_cache, get_addr_from_local_cache): New.
380 (vt_canonicalize_addr): Rewrite using the above. Adjust the
381 heading comment.
382 (vt_stack_offset_p): Remove.
383 (vt_canon_true_dep): Always canonicalize loc's address.
384 (clobber_overlapping_mems): Make sure we have a MEM.
385 (local_get_addr_clear_given_value): New.
386 (val_reset): Clear local cached entries.
387 (compute_bb_dataflow): Create and release the local cache.
388 Disable duplicate MEMs clobbering.
389 (emit_notes_in_bb): Clobber MEMs likewise.
390 (vt_emit_notes): Create and release the local cache.
391 (vt_initialize, vt_finalize): Create and release the global
392 cache, respectively.
393 * alias.c (rtx_equal_for_memref_p): Compare operands of ENTRY_VALUEs.
394
395 2013-01-18 Alexandre Oliva <aoliva@redhat.com>
396
397 PR libmudflap/53359
398 * tree-mudflap.c (mudflap_finish_file): Skip deferred decls
399 not found in the symtab.
400
401 2013-01-18 Alexandre Oliva <aoliva@redhat.com>
402
403 PR debug/56006
404 PR rtl-optimization/55547
405 PR rtl-optimization/53827
406 PR debug/53671
407 PR debug/49888
408 * alias.c (offset_overlap_p): New, factored out of...
409 (memrefs_conflict_p): ... this. Use absolute sizes. Retain
410 the conservative special case for symbolic constants. Don't
411 adjust zero sizes on alignment.
412
413 2013-01-18 Bernd Schmidt <bernds@codesourcery.com>
414
415 PR rtl-optimization/52573
416 * regrename.c (build_def_use): Ignore REG_DEAD notes if there is a
417 REG_UNUSED for the same register.
418
419 2013-01-17 Richard Biener <rguenther@suse.de>
420 Marek Polacek <polacek@redhat.com>
421
422 PR rtl-optimization/55833
423 * loop-unswitch.c (unswitch_loops): Move loop verification...
424 (unswitch_single_loop): ...here. Call mark_irreducible_loops.
425 * cfgloopmanip.c (fix_loop_placement): Add IRRED_INVALIDATED parameter.
426 Set it to true when we're removing a loop from hierarchy tree in
427 an irreducible region.
428 (fix_bb_placements): Adjust caller.
429 (fix_loop_placements): Likewise.
430
431 2013-01-17 Georg-Johann Lay <avr@gjlay.de>
432
433 * config/avr/builtins.def (DEF_BUILTIN): Factor out
434 "__builtin_avr_" from NAME, turn NAME to an uppercase identifier.
435 Factor out 'CODE_FOR_' from ICODE, use 'nothing' instead of '-1'.
436 Remove ID. Adjust comments.
437 * config/avr/avr-c.c (avr_builtin_name): Remove.
438 (avr_cpu_cpp_builtins): Use DEF_BUILTIN instead of for-loop.
439 * config/avr/avr.c (avr_tolower): New static function.
440 (DEF_BUILTIN): Remove parameter ID. Prefix ICODE by 'CODE_FOR_'.
441 Stringify NAME, prefix it with "__builtin_avr_" and lowercase it.
442 (avr_expand_builtin): Assert insn_code != CODE_FOR_nothing for
443 default expansion.
444
445 2013-01-17 Jan Hubicka <jh@suse.cz>
446
447 PR tree-optimization/55273
448 * loop-iv.c (iv_number_of_iterations): Consider zero iteration case.
449
450 2013-01-17 Uros Bizjak <ubizjak@gmail.com>
451
452 PR target/55981
453 * config/i386/sync.md (atomic_store<mode>): Always generate SWImode
454 store through atomic_store<mode>_1.
455 (atomic_store<mode>_1): Macroize insn using SWI mode iterator.
456
457 2013-01-17 Martin Jambor <mjambor@suse.cz>
458
459 PR tree-optimizations/55264
460 * ipa-inline-transform.c (can_remove_node_now_p_1): Never return true
461 for virtual methods.
462 * ipa.c (symtab_remove_unreachable_nodes): Never return true for
463 virtual methods before inlining is over.
464 * cgraph.h (cgraph_only_called_directly_or_aliased_p): Return false for
465 virtual functions.
466 * cgraphclones.c (cgraph_create_virtual_clone): Mark clones as
467 non-virtual.
468
469 2013-01-16 Vladimir Makarov <vmakarov@redhat.com>
470
471 PR rtl-optimization/56005
472 * sched-deps.c (sched_analyze_2): Check deps->readonly for adding
473 pending reads for prefetch.
474
475 2013-01-16 Ian Bolton <ian.bolton@arm.com>
476
477 * config/aarch64/aarch64.md
478 (*cstoresi_neg_uxtw): New pattern.
479 (*cmovsi_insn_uxtw): New pattern.
480 (*<optab>si3_uxtw): New pattern.
481 (*<LOGICAL:optab>_<SHIFT:optab>si3_uxtw): New pattern.
482 (*<optab>si3_insn_uxtw): New pattern.
483 (*bswapsi2_uxtw): New pattern.
484
485 2013-01-16 Richard Biener <rguenther@suse.de>
486
487 * tree-inline.c (tree_function_versioning): Remove set but
488 never used variable.
489
490 2013-01-16 Richard Biener <rguenther@suse.de>
491
492 PR tree-optimization/55964
493 * tree-flow.h (rename_variables_in_loop): Remove.
494 (rename_variables_in_bb): Likewise.
495 * tree-loop-distribution.c (update_phis_for_loop_copy): Remove.
496 (copy_loop_before): Adjust and delete update-ssa status.
497 * tree-vect-loop-manip.c (rename_variables_in_bb): Make static.
498 (rename_variables_in_bb): Likewise. Properly walk over predecessors.
499 (rename_variables_in_loop): Remove.
500 (slpeel_update_phis_for_duplicate_loop): Likewise.
501 (slpeel_tree_duplicate_loop_to_edge_cfg): Handle nested loops,
502 use available cfg machinery instead of duplicating it.
503 Update PHI nodes and perform poor-mans SSA update here.
504 (slpeel_tree_peel_loop_to_edge): Adjust.
505
506 2013-01-16 Richard Biener <rguenther@suse.de>
507
508 PR tree-optimization/54767
509 PR tree-optimization/53465
510 * tree-vrp.c (vrp_meet_1): Revert original fix for PR53465.
511 (vrp_visit_phi_node): For PHI arguments coming via backedges
512 drop all symbolical range information.
513 (execute_vrp): Compute backedges.
514
515 2013-01-16 Richard Biener <rguenther@suse.de>
516
517 * doc/install.texi: Update CLooG and ISL requirements to
518 0.18.0 and 0.11.1.
519
520 2013-01-16 Christian Bruel <christian.bruel@st.com>
521
522 PR target/55301
523 * config/sh/sh.c (sh_expand_prologue): Postpone new_stack mem symbol.
524 (broken_move): Handle UNSPECV_SP_SWITCH_B.
525 * config/sh/sh.md (sp_switch_1): Use set (reg:SI SP_REG).
526
527 2013-01-16 DJ Delorie <dj@redhat.com>
528
529 * config/sh/sh.md (UNSPECV_SP_SWITCH_B): New.
530 (UNSPECV_SP_SWITCH_E): New.
531 (sp_switch_1): Change to an unspec.
532 (sp_switch_2): Change to an unspec. Don't use post-inc when we
533 replace $r15.
534
535 2013-01-16 Uros Bizjak <ubizjak@gmail.com>
536
537 * emit-rtl.c (need_atomic_barrier_p): Mask memory model argument
538 with MEMMODEL_MASK before comparing with MEMMODEL_* memory types.
539 * optabs.c (maybe_emit_sync_lock_test_and_set): Ditto.
540 (expand_mem_thread_fence): Ditto.
541 (expand_mem_signal_fence): Ditto.
542 (expand_atomic_load): Ditto.
543 (expand_atomic_store): Ditto.
544
545 2013-01-16 Alexandre Oliva <aoliva@redhat.com>
546
547 PR rtl-optimization/55547
548 PR rtl-optimization/53827
549 PR debug/53671
550 PR debug/49888
551 * alias.c (memrefs_conflict_p): Set sizes to negative after
552 AND adjustments.
553
554 2013-01-15 Jakub Jelinek <jakub@redhat.com>
555
556 PR target/55940
557 * function.c (thread_prologue_and_epilogue_insns): Always
558 add crtl->drap_reg to set_up_by_prologue.set, even if
559 stack_realign_drap is false.
560
561 2013-01-15 Jan-Benedict Glaw <jbglaw@lug-owl.de>
562
563 * config/vax/vax.md (add<mode>3, sub<mode>3, mul<mode>3, div<mode>3,
564 and<mode>3, *and<mode>_const_int, ior<mode>3, xor<mode>3, ashrsi3,
565 *call): Fix indention.
566
567 2013-01-15 Tom de Vries <tom@codesourcery.com>
568
569 PR target/55876
570 * optabs.c (widen_operand): Use gen_lowpart instead of gen_rtx_SUBREG.
571 Update comment.
572
573 2013-01-15 Vladimir Makarov <vmakarov@redhat.com>
574
575 PR rtl-optimization/55153
576 * sched-deps.c (sched_analyze_2): Add pending reads for prefetch.
577
578 2013-01-15 Martin Jambor <mjambor@suse.cz>
579
580 PR tree-optimization/55920
581 * tree-sra.c (analyze_access_subtree): Do not mark non-removable
582 accesses as grp_to_be_debug_replaced.
583
584 2013-01-15 Jakub Jelinek <jakub@redhat.com>
585
586 PR tree-optimization/55920
587 * tree-sra.c (sra_modify_assign): If for lacc->grp_to_be_debug_replaced
588 there is non-useless type conversion needed from debug rhs to lhs,
589 use build_debug_ref_for_model and/or VIEW_CONVERT_EXPR.
590
591 2013-01-15 Joseph Myers <joseph@codesourcery.com>
592 Mikael Pettersson <mikpe@it.uu.se>
593
594 PR target/43961
595 * config/arm/arm.h (ADDR_VEC_ALIGN): Align SImode jump tables for
596 Thumb.
597 (ASM_OUTPUT_CASE_LABEL): Remove.
598 (ASM_OUTPUT_BEFORE_CASE_LABEL): Define to empty.
599 * final.c (shorten_branches): Update alignment of labels before
600 jump tables if CASE_VECTOR_SHORTEN_MODE.
601
602 2013-01-15 Richard Biener <rguenther@suse.de>
603
604 PR bootstrap/55961
605 * system.h: Do not include gmp.h for building host tools.
606
607 2013-01-15 Richard Biener <rguenther@suse.de>
608
609 PR middle-end/55882
610 * emit-rtl.c (set_mem_attributes_minus_bitpos): Correctly
611 account for bitpos when computing alignment.
612
613 2013-01-15 Vladimir Yakovlev <vladimir.b.yakovlev@intel.com>
614
615 * config/i386/i386-c.c (ix86_target_macros_internal): New case.
616 (ix86_target_macros_internal): Likewise.
617
618 * config/i386/i386.c (m_CORE2I7): Removed.
619 (m_CORE_HASWELL): New macro.
620 (m_CORE_ALL): Likewise.
621 (initial_ix86_tune_features): m_CORE2I7 is replaced by m_CORE_ALL.
622 (initial_ix86_arch_features): Likewise.
623 (processor_target_table): Initializations for Core avx2.
624 (cpu_names): New names "core-avx2".
625 (ix86_option_override_internal): Changed PROCESSOR_COREI7 by
626 PROCESSOR_CORE_HASWELL.
627 (ix86_issue_rate): New case.
628 (ia32_multipass_dfa_lookahead): Likewise.
629 (ix86_sched_init_global): Likewise.
630
631 * config/i386/i386.h (TARGET_HASWELL): New macro.
632 (target_cpu_default): New TARGET_CPU_DEFAULT_haswell.
633 (processor_type): New PROCESSOR_HASWELL.
634
635 2013-01-15 Jakub Jelinek <jakub@redhat.com>
636
637 PR tree-optimization/55955
638 * tree-vect-loop.c (vectorizable_reduction): Give up early on
639 *SHIFT_EXPR and *ROTATE_EXPR codes.
640
641 PR tree-optimization/48766
642 * opts.c (common_handle_option): For -fwrapv disable -ftrapv, for
643 -ftrapv disable -fwrapv.
644
645 2013-01-14 Georg-Johann Lay <avr@gjlay.de>
646
647 PR target/55974
648 * config/avr/avr-c.c (avr_cpu_cpp_builtins): Define __FLASH
649 etc. to 1 and not to __flash.
650 Use LL suffix for __INT24_MAX__ with -mint8.
651 Use ULL suffix for __UINT24_MAX__ with -mint8.
652
653 2013-01-14 Georg-Johann Lay <avr@gjlay.de>
654
655 * config/avr/avr-arch.h
656 (struct base_arch_s): Use typedef avr_arch_t instead.
657 (struct arch_info_s): Use typedef avr_arch_info_t instead.
658 (struct mcu_type_s): Use typedef avr_mcu_t instead.
659 * config/avr/avr.c: Same.
660 * config/avr/avr-devices.c: Same.
661 * config/avr/driver-avr.c: Same.
662 * config/avr/gen-avr-mmcu-texi.c: Same.
663 * config/avr/avr-mcus.def: Adjust comment.
664
665 2013-01-14 Tejas Belagod <tejas.belagod@arm.com>
666
667 * config/aarch64/aarch64-simd.md (*aarch64_simd_ld1r<mode>): New.
668 * config/aarch64/iterators.md (VALLDI): New.
669
670 2013-01-14 Uros Bizjak <ubizjak@gmail.com>
671 Andi Kleen <ak@linux.intel.com>
672
673 PR target/55948
674 * config/i386/sync.md (atomic_store<mode>_1): New pattern.
675 (atomic_store<mode>): Call atomic_store<mode>_1 for IX86_HLE_RELEASE
676 memmodel flag.
677
678 2013-01-14 Georg-Johann Lay <avr@gjlay.de>
679
680 * config/avr/avr-stdint.h: Remove trailing blanks.
681 * config/avr/avr-log.h: Same.
682 * config/avr/avr-arch.h: Same.
683 * config/avr/avr-devices.c: Same.
684 * config/avr/avr-dimode.md: Same.
685 * config/avr/predicates.md: Same.
686 * config/avr/avr-c.c: Same. And fix typo.
687
688 * config/avr/avr-protos.h: Same. And:
689 (function_arg_regno_p): Rename to avr_function_arg_regno_p.
690 (init_cumulative_args): Rename to avr_init_cumulative_args.
691 (expand_prologue): Rename to avr_expand_prologue.
692 (expand_epilogue): Rename to avr_expand_epilogue.
693 (adjust_insn_length): Rename to avr_adjust_insn_length.
694 (notice_update_cc): Rename to avr_notice_update_cc.
695 (final_prescan_insn): Rename to avr_final_prescan_insn.
696 * config/avr/avr.c: Same.
697 * config/avr/avr.h: Same.
698 * config/avr/avr.md: Remove trailing blanks.
699 (prologue): Use avr_expand_prologue.
700 (epilogue, sibcall_epilogue): Use avr_expand_epilogue.
701
702 2013-01-14 Richard Biener <rguenther@suse.de>
703
704 * tree-cfg.c (verify_expr_location, verify_expr_location_1,
705 verify_location, collect_subblocks): New functions.
706 (verify_gimple_in_cfg): Verify that locations only reference
707 BLOCKs in the functions BLOCK tree.
708
709 2013-01-14 Richard Biener <rguenther@suse.de>
710
711 * tree-cfgcleanup.c (remove_forwarder_block): Unshare propagated
712 PHI argument.
713 * graphite-sese-to-poly.c (insert_out_of_ssa_copy): Properly
714 unshare reference.
715 (insert_out_of_ssa_copy_on_edge): Likewise.
716 (rewrite_close_phi_out_of_ssa): Likewise.
717 * tree-ssa.c (insert_debug_temp_for_var_def): Properly unshare
718 debug expressions.
719 * tree-ssa-pre.c (insert_into_preds_of_block): Properly unshare
720 propagated constants.
721 * tree-cfg.c (tree_node_can_be_shared): Handled component-refs
722 can not be shared.
723
724 2013-01-14 Georg-Johann Lay <avr@gjlay.de>
725
726 * config/avr/avr-modes.def: Add GPL copyright notice.
727
728 2013-01-13 Uros Bizjak <ubizjak@gmail.com>
729
730 * config/i386/sync.md (mem_thread_fence): Mask operands[0] with
731 MEMMODEL_MASK to determine memory model.
732 (atomic_store<mode>): Ditto from operands[2].
733 * config/i386/i386.c (ix86_memmodel_check): Declare "strong" as bool.
734
735 2013-01-13 Jakub Jelinek <jakub@redhat.com>
736
737 PR fortran/55935
738 * gimple-fold.c (get_symbol_constant_value): Call unshare_expr.
739 (fold_gimple_assign): Don't call unshare_expr here.
740 (fold_ctor_reference): Call unshare_expr.
741
742 2013-01-13 Terry Guo <terry.guo@arm.com>
743
744 * Makefile.in (s-mlib): New argument MULTILIB_REUSE.
745 * doc/fragments.texi: Document MULTILIB_REUSE.
746 * gcc.c (multilib_reuse): New internal spec.
747 (set_multilib_dir): Also search multilib from multilib_reuse.
748 * genmultilib (tmpmultilib3): Refactor code.
749 (tmpmultilib4): Ditto.
750 (multilib_reuse): New multilib argument.
751
752 2013-01-13 Richard Sandiford <rdsandiford@googlemail.com>
753
754 * Makefile.in: Update copyright.
755
756 2013-01-12 Tom de Vries <tom@codesourcery.com>
757
758 PR middle-end/55890
759 * calls.c (expand_call): Check if arg_nr is valid.
760
761 2013-01-11 Michael Meissner <meissner@linux.vnet.ibm.com>
762
763 * doc/extend.texi (X86 Built-in Functions): Add whitespace in
764 __builtin_ia32_paddb256 and __builtin_ia32_pavgb256
765 documentation. Add missing '__' in front of
766 __builtin_ia32_packssdw256.
767
768 2013-01-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
769
770 PR target/55719
771 * config/s390/s390.c (s390_preferred_reload_class): Do not return
772 NO_REGS for larl operands.
773 (s390_reload_larl_operand): Use s390_load_address instead of
774 emit_move_insn.
775
776 2013-01-11 Richard Biener <rguenther@suse.de>
777
778 * tree-cfg.c (verify_node_sharing_1): Split out from ...
779 (verify_node_sharing): ... here.
780 (verify_gimple_in_cfg): Use verify_node_sharing_1 for walk_tree.
781
782 2013-01-11 Eric Botcazou <ebotcazou@adacore.com>
783
784 * configure.ac (Tree checking): Set TREECHECKING to yes if enabled.
785 Substitute TREECHECKING.
786 * configure: Regenerate.
787 * Makefile.in (TREECHECKING): New.
788
789 2013-01-11 Richard Guenther <rguenther@suse.de>
790
791 PR tree-optimization/44061
792 * tree-vrp.c (extract_range_basic): Compute zero as
793 value-range for __builtin_constant_p of function parameters.
794
795 2013-01-10 Richard Sandiford <rdsandiford@googlemail.com>
796
797 Update copyright years.
798
799 2013-01-10 Vladimir Makarov <vmakarov@redhat.com>
800
801 PR rtl-optimization/55672
802 * lra-eliminations.c (mark_not_eliminable): Permit addition with
803 const to be eliminable.
804
805 2013-01-10 David Edelsohn <dje.gcc@gmail.com>
806
807 * configure.ac (HAVE_AS_TLS): Add check for powerpc-ibm-aix.
808 * configure: Regenerate.
809
810 2013-01-10 Richard Biener <rguenther@suse.de>
811
812 * builtins.c (expand_builtin_init_trampoline): Use set_mem_attributes.
813
814 2013-01-10 Richard Biener <rguenther@suse.de>
815
816 PR bootstrap/55792
817 * tree-into-ssa.c (rewrite_add_phi_arguments): Do not set
818 locations for virtual PHI arguments.
819 (rewrite_update_phi_arguments): Likewise.
820
821 2013-01-10 Joel Sherrill <joel.sherrill@OARcorp.com>
822
823 * config/v850/rtems.h (ASM_SPEC): Pass -m8byte-align and -mgcc-abi
824 on to assembler.
825
826 2013-01-10 Jakub Jelinek <jakub@redhat.com>
827
828 PR tree-optimization/55921
829 * tree-complex.c (expand_complex_asm): New function.
830 (expand_complex_operations_1): Call it for GIMPLE_ASM.
831
832 2013-01-10 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
833
834 PR target/55718
835 * config/s390/s390.c (s390_symref_operand_p)
836 (s390_loadrelative_operand_p): Merge the two functions.
837 (s390_check_qrst_address, print_operand_address): Add parameters
838 to s390_loadrelative_operand_p invokation.
839 (s390_check_symref_alignment): Use s390_loadrelative_operand_p.
840 (s390_reload_larl_operand, s390_secondary_reload): Use
841 s390_loadrelative_operand_p instead of s390_symref_operand_p.
842 (legitimize_pic_address): Handle @GOTENT and @PLT + addend.
843
844 2013-01-09 Mike Stump <mikestump@comcast.net>
845
846 * dse.c (record_store): Remove unnecessary assert.
847
848 2013-01-09 Jan Hubicka <jh@suse.cz>
849
850 PR tree-optimization/55569
851 * cfgloopmanip.c (scale_loop_profile): Make ITERATION_BOUND gcov_type.
852 * cfgloop.h (scale_loop_profile): Likewise.
853
854 2013-01-09 Jan Hubicka <jh@suse.cz>
855
856 PR lto/45375
857 * ipa-inline.c (ipa_inline): Remove extern inlines and virtual
858 functions.
859 * cgraphclones.c (cgraph_clone_node): Cpoy also LTO file data.
860
861 2013-01-09 Richard Sandiford <rdsandiford@googlemail.com>
862
863 PR middle-end/55114
864 * expr.h (maybe_emit_group_store): Declare.
865 * expr.c (maybe_emit_group_store): New function.
866 * builtins.c (expand_builtin_int_roundingfn): Call it.
867 (expand_builtin_int_roundingfn_2): Likewise.
868
869 2013-01-09 Vladimir Makarov <vmakarov@redhat.com>
870
871 PR rtl-optimization/55829
872 * lra-constraints.c (match_reload): Add code for absent output.
873 (curr_insn_transform): Add code for reloads of matched inputs
874 without output.
875
876 2013-01-09 Uros Bizjak <ubizjak@gmail.com>
877
878 * config/i386/sse.md (*vec_interleave_highv2df): Change mode
879 attribute of movddup insn to DF.
880 (*vec_interleave_lowv2df): Ditto.
881 (vec_dupv2df): Ditto.
882
883 2013-01-09 Jan Hubicka <jh@suse.cz>
884
885 PR tree-optimiation/55875
886 * tree-ssa-loop-niter.c (number_of_iterations_cond): Add
887 EVERY_ITERATION parameter.
888 (number_of_iterations_exit): Check if exit is executed every iteration.
889 (idx_infer_loop_bounds): Similarly here.
890 (n_of_executions_at_most): Simplify
891 to only test for cases where statement is dominated by the
892 particular bound; handle correctly the "postdominance" test.
893 (scev_probably_wraps_p): Use max loop iterations info
894 as a global bound first.
895
896 2013-01-09 Nguyen Duy Dat <dat.nguyen.yn@rvc.renesas.com>
897 Nick Clifton <nickc@redhat.com>
898
899 * config/v850/v850.md (cbranchsf4): New pattern.
900 (cstoresf4): New pattern.
901 (cbranchdf4): New pattern.
902 (cstoredf4): New pattern.
903 (movsicc): Disallow floating point comparisons.
904 (cmpsf_le_insn): Fix order of operators.
905 (cmpsf_lt_insn): Likewise.
906 (cmpsf_eq_insn): Likewise.
907 (cmpdf_le_insn): Likewise.
908 (cmpdf_lt_insn): Likewise.
909 (cmpdf_eq_insn): Likewise.
910 (cmpsf_ge_insn): Use LE comparison.
911 (cmpdf_ge_insn): Likewise.
912 (cmpsf_gt_insn): Use LT comparison.
913 (cmpdf_gt_insn): Likewise.
914 (cmpsf_ne_insn): Delete pattern.
915 (cmpdf_ne_insn): Delete pattern.
916 * config/v850/v850.c (v850_gen_float_compare): Use
917 gen_cmpdf_eq_insn for NE comparison.
918 (v850_float_z_comparison_operator)
919 (v850_float_nz_comparison_operator): Move from here ...
920 * config/v850/predicates.md: ... to here. Move GT and GE
921 comparisons into v850_float_z_comparison_operator.
922 * config/v850/v850-protos.h (v850_float_z_comparison_operator):
923 Delete prototype.
924 (v850_float_nz_comparison_operator): Likewise.
925
926 2013-01-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
927
928 * config/pa/pa.c (pa_emit_move_sequence): Replace calls to gen_insv
929 with calls to gen_insvsi/gen_insvdi.
930
931 2013-01-09 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
932
933 * config/i386/i386.c (initial_ix86_tune_features): Set up
934 X86_TUNE_AVX128_OPTIMAL for m_BTVER2.
935
936 2013-01-09 Steven Bosscher <steven@gcc.gnu.org>
937 Jakub Jelinek <jakub@redhat.com>
938
939 PR tree-optimization/48189
940 * predict.c (predict_loops): If max is 0, don't call compare_tree_int.
941 If nitercst is 0, don't predict the exit edge.
942
943 2013-01-08 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
944
945 * config/aarch64/aarch64.c (aarch64_print_operand): Replace %r
946 in asm_fprintf with reg_names.
947 (aarch64_print_operand_address): Likewise.
948 (aarch64_return_addr): Likewise.
949 * config/aarch64/aarch64.h (ASM_FPRINTF_EXTENSIONS): Remove.
950
951 2013-01-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
952
953 * config/pa/pa.h (VAL_U6_BITS_P): Define.
954 (INT_U6_BITS): Likewise.
955 * config/pa/predicates.md (uint6_operand): New predicate.
956 (shift5_operand, shift6_operand): Likewise.
957 * config/pa/pa.md (lshrsi3, rotrsi3): Use shift5_operand instead of
958 arith32_operand.
959 (lshrdi3): Use shift6_operand.
960 (shrpsi4, shrpdi4): New insn patterns.
961 (extzv): Delete expander.
962 (extzvsi, extzvdi): New expanders. Use uint5_operand and uint6_operand
963 predicates in unamed zero extract patterns. Tighten common constraint.
964 (extv): Delete expander.
965 (extvsi, extvdi): New expanders. Use uint5_operand and uint6_operand
966 predicates in unamed sign extract patterns. Tighten common constraint.
967 (insv): Delete expander.
968 (insvsi, insvdi): New expanders. Use uint5_operand and uint6_operand
969 predicates in unamed insert patterns. Tighten common constraint.
970 Change uint32_operand predicate to uint6_operand predicate in unamed
971 DImode pattern to insert constant values of type 1...1xxxx.
972
973 2013-01-04 Jan Hubicka <jh@suse.cz>
974
975 PR tree-optimization/55823
976 * ipa-prop.c (update_indirect_edges_after_inlining): Fix ordering
977 issue.
978
979 2013-01-08 Jakub Jelinek <jakub@redhat.com>
980 Uros Bizjak <ubizjak@gmail.com>
981
982 PR rtl-optimization/55845
983 * df-problems.c (can_move_insns_across): Stop scanning at
984 volatile_insn_p source instruction or give up if
985 across_from .. across_to range contains any volatile_insn_p
986 instructions.
987
988 2013-01-08 Tejas Belagod <tejas.belagod@arm.com>
989
990 * config/aarch64/aarch64-simd.md (vec_init<mode>): New.
991 * config/aarch64/aarch64-protos.h (aarch64_expand_vector_init):
992 Declare.
993 * config/aarch64/aarch64.c (aarch64_simd_dup_constant,
994 aarch64_simd_make_constant, aarch64_expand_vector_init): New.
995
996 2013-01-08 Jakub Jelinek <jakub@redhat.com>
997
998 PR fortran/55341
999 * asan.c (asan_clear_shadow): New function.
1000 (asan_emit_stack_protection): Use it.
1001
1002 2013-01-08 Tejas Belagod <tejas.belagod@arm.com>
1003
1004 * config/aarch64/aarch64-simd.md (aarch64_simd_vec_<su>mult_lo_<mode>,
1005 aarch64_simd_vec_<su>mult_hi_<mode>): Separate instruction and operand
1006 with tab instead of space.
1007
1008 2013-01-08 Nick Clifton <nickc@redhat.com>
1009
1010 * config/rl78/rl78.c (rl78_expand_prologue): Always select
1011 register bank 0 at the start of an interrupt handler.
1012 * config/rl78/rl78.md (mulsi3_g13): Correct values for MDBL and
1013 MDBH registers.
1014
1015 2013-01-08 James Greenhalgh <james.greenhalgh@arm.com>
1016
1017 * config/aarch64/aarch64-simd.md
1018 (aarch64_simd_bsl<mode>_internal): Add floating-point modes.
1019 (aarch64_simd_bsl): Likewise.
1020 (aarch64_vcond_internal<mode>): Likewise.
1021 (vcond<mode><mode>): Likewise.
1022 (aarch64_cm<cmp><mode>): Fix constraints, add new modes.
1023 * config/aarch64/iterators.md (V_cmp_result): Add V2DF.
1024
1025 2013-01-08 James Greenhalgh <james.greenhalgh@arm.com>
1026
1027 * config/aarch64/aarch64-builtins.c
1028 (aarch64_builtin_vectorized_function): Handle sqrt, sqrtf.
1029
1030 2013-01-08 Martin Jambor <mjambor@suse.cz>
1031
1032 PR debug/55579
1033 * tree-sra.c (analyze_access_subtree): Return true also after
1034 potentially creating a debug-only replacement.
1035
1036 2013-01-08 Jakub Jelinek <jakub@redhat.com>
1037
1038 PR middle-end/55890
1039 * tree-ssa-ccp.c (evaluate_stmt): Use gimple_call_builtin_p.
1040
1041 PR tree-optimization/54120
1042 * tree-vrp.c (range_fits_type_p): Don't allow
1043 src_precision < precision from signed vr to unsigned_p
1044 if vr->min or vr->max is negative.
1045 (simplify_float_conversion_using_ranges): Test can_float_p
1046 against CODE_FOR_nothing.
1047
1048 2013-01-08 Jakub Jelinek <jakub@redhat.com>
1049 Richard Biener <rguenther@suse.de>
1050
1051 PR middle-end/55851
1052 * fold-const.c (int_binop_types_match_p): Allow all INTEGRAL_TYPE_P
1053 types instead of just INTEGER_TYPE types.
1054
1055 2013-01-07 Mark Kettenis <kettenis@openbsd.org>
1056
1057 * config/i386/openbsdelf.h (LIBGCC2_HAS_TF_MODE, LIBGCC2_TF_CEXT,
1058 TF_SIZE): Define.
1059
1060 2013-01-07 Steve Ellcey <sellcey@mips.com>
1061
1062 PR target/42661
1063 * config/mips/mips.opt: Change mad to mmad to match documentation.
1064
1065 2013-01-07 Georg-Johann Lay <avr@gjlay.de>
1066
1067 PR target/55897
1068 * doc/extend.texi (AVR Named Address Spaces): __memx goes into
1069 .progmemx.data now.
1070
1071 2013-01-07 Georg-Johann Lay <avr@gjlay.de>
1072
1073 PR target/55897
1074 * config/avr/avr.h (ADDR_SPACE_COUNT): New enum.
1075 (avr_addrspace_t): Add .section_name field.
1076 * config/avr/avr.c (progmem_section): Use ADDR_SPACE_COUNT as
1077 array size.
1078 (avr_addrspace): Same. Initialize .section_name. Remove last
1079 NULL entry. Put __memx into .progmemx.data.
1080 (progmem_section_prefix): Remove.
1081 (avr_asm_init_sections): No need to initialize progmem_section.
1082 (avr_asm_named_section): Use avr_addrspace[].section_name to get
1083 section name prefix.
1084 (avr_asm_select_section): Ditto. And use get_unnamed_section to
1085 retrieve the progmem section.
1086 * avr-c.c (avr_cpu_cpp_builtins): Use ADDR_SPACE_COUNT as loop
1087 boundary to run over avr_addrspace[].
1088 (avr_register_target_pragmas): Ditto.
1089
1090 2013-01-06 Jakub Jelinek <jakub@redhat.com>
1091
1092 * varasm.c (output_constant_def_contents): For asan_protect_global
1093 protected strings, adjust DECL_ALIGN if needed, before testing for
1094 anchored symbols.
1095 (place_block_symbol): Adjust size for asan protected STRING_CSTs if
1096 TREE_CONSTANT_POOL_ADDRESS_P. Increase alignment for asan protected
1097 normal decls.
1098 (output_object_block): For asan protected decls, emit asan padding
1099 after their contents.
1100 * asan.c (asan_protect_global): Don't check TREE_ASM_WRITTEN here.
1101 (asan_finish_file): Test it here instead.
1102
1103 2013-01-07 Nick Clifton <nickc@redhat.com>
1104 Matthias Klose <doko@debian.org>
1105 Doug Kwan <dougkwan@google.com>
1106 H.J. Lu <hongjiu.lu@intel.com>
1107
1108 PR driver/55470
1109 * collect2.c (main): Support -fuse-ld=bfd and -fuse-ld=gold.
1110
1111 * common.opt: Add fuse-ld=bfd and fuse-ld=gold.
1112
1113 * gcc.c (LINK_COMMAND_SPEC): Pass -fuse-ld=* to collect2.
1114
1115 * opts.c (comman_handle_option): Ignore -fuse-ld=bfd and -fuse-ld=gold.
1116
1117 * doc/invoke.texi: Document -fuse-ld=bfd and -fuse-ld=gold.
1118
1119 2013-01-07 Georg-Johann Lay <avr@gjlay.de>
1120
1121 PR target/54461
1122 * doc/install.texi (Cross-Compiler-Specific Options): Document
1123 --with-avrlibc.
1124
1125 2013-01-07 Tejas Belagod <tejas.belagod@arm.com>
1126
1127 * config/aarch64/arm_neon.h (vmovn_high_is16, vmovn_high_s32,
1128 vmovn_high_s64, vmovn_high_u16, vmovn_high_u32, vmovn_high_u64,
1129 vqmovn_high_s16, vqmovn_high_s32, vqmovn_high_s64, vqmovn_high_u16,
1130 vqmovn_high_u32, vqmovn_high_u64, vqmovun_high_s16, vqmovun_high_s32,
1131 vqmovun_high_s64): Fix source operand number and update copyright.
1132
1133 2013-01-07 Richard Biener <rguenther@suse.de>
1134
1135 PR middle-end/55890
1136 * gimple.h (gimple_call_builtin_p): New overload.
1137 * gimple.c (validate_call): New function.
1138 (gimple_call_builtin_p): Likewise.
1139 * tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
1140 Use gimple_call_builtin_p.
1141 (find_func_clobbers): Likewise.
1142 * tree-ssa-strlen.c (adjust_last_stmt): Likewise.
1143 (strlen_optimize_stmt): Likewise.
1144
1145 2013-01-07 James Greenhalgh <james.greenhalgh@arm.com>
1146
1147 * config/aarch64/arm_neon.h (vld1_dup_*): Make argument const.
1148 (vld1q_dup_*): Likewise.
1149 (vld1_*): Likewise.
1150 (vld1q_*): Likewise.
1151 (vld1_lane_*): Likewise.
1152 (vld1q_lane_*): Likewise.
1153
1154 2013-01-07 Richard Biener <rguenther@suse.de>
1155
1156 * lto-streamer.h (LTO_minor_version): Bump to 2.
1157
1158 2013-01-07 James Greenhalgh <james.greenhalgh@arm.com>
1159
1160 * config/aarch64/aarch64-protos.h
1161 (aarch64_const_double_zero_rtx_p): Rename to...
1162 (aarch64_float_const_zero_rtx_p): ...this.
1163 (aarch64_float_const_representable_p): New.
1164 (aarch64_output_simd_mov_immediate): Likewise.
1165 * config/aarch64/aarch64-simd.md (*aarch64_simd_mov<mode>): Refactor
1166 move immediate case.
1167 * config/aarch64/aarch64.c
1168 (aarch64_const_double_zero_rtx_p): Rename to...
1169 (aarch64_float_const_zero_rtx_p): ...this.
1170 (aarch64_print_operand): Allow printing of new constants.
1171 (aarch64_valid_floating_const): New.
1172 (aarch64_legitimate_constant_p): Check for valid floating-point
1173 constants.
1174 (aarch64_simd_valid_immediate): Likewise.
1175 (aarch64_vect_float_const_representable_p): New.
1176 (aarch64_float_const_representable_p): Likewise.
1177 (aarch64_simd_imm_zero_p): Also allow for floating-point 0.0.
1178 (aarch64_output_simd_mov_immediate): New.
1179 * config/aarch64/aarch64.md (*movsf_aarch64): Add new alternative.
1180 (*movdf_aarch64): Likewise.
1181 * config/aarch64/constraints.md (Ufc): New.
1182 (Y): call aarch64_float_const_zero_rtx.
1183 * config/aarch64/predicates.md (aarch64_fp_compare_operand): New.
1184
1185 2013-01-07 Richard Biener <rguenther@suse.de>
1186
1187 PR tree-optimization/55888
1188 PR tree-optimization/55862
1189 * tree-ssa-pre.c (phi_translate_1): Revert previous change.
1190 (valid_in_sets): Check if a NAME has a leader in AVAIL_OUT,
1191 not if it is contained therein.
1192
1193 2013-01-07 Georg-Johann Lay <avr@gjlay.de>
1194
1195 * config/avr/t-avr: Typo.
1196
1197 2013-01-07 Georg-Johann Lay <avr@gjlay.de>
1198
1199 PR55243
1200 * config/avr/t-avr: Don't automatically rebuild
1201 $(srcdir)/config/avr/t-multilib
1202 $(srcdir)/config/avr/avr-tables.opt
1203 $(srcdir)/doc/avr-mmcu.texi
1204 (avr-mcus): New phony target to build them on request.
1205 (s-avr-mlib, s-avr-mmcu-texi): Remove.
1206 * avr/avr-mcus.def: Adjust comments.
1207
1208 2013-01-07 Uros Bizjak <ubizjak@gmail.com>
1209
1210 * config/i386/i386.c (DEFAULT_PCC_STRUCT_RETURN): Remove.
1211
1212 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
1213
1214 * file-find.c, file-find.h, realmpfr.c: Add FSF as copyright holder.
1215
1216 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
1217
1218 * config/tilepro/gen-mul-tables.cc: Put copyright on one line.
1219
1220 2013-01-05 David Edelsohn <dje.gcc@gmail.com>
1221
1222 * config/rs6000/aix53.h (LIB_SPEC): Add -lpthreads when compiling
1223 to generate profiling.
1224 * config/rs6000/aix64.h (LIB_SPEC): Same.
1225
1226 2013-01-04 Andrew Pinski <apinski@cavium.com>
1227
1228 * config/aarch64/aarch64.c (aarch64_fixed_condition_code_regs):
1229 New function.
1230 (TARGET_FIXED_CONDITION_CODE_REGS): Define.
1231
1232 2013-01-04 Uros Bizjak <ubizjak@gmail.com>
1233
1234 * config/i386/i386.c (ix86_legitimize_address): Call convert_to_mode
1235 unconditionally.
1236 (ix86_expand_move): Ditto.
1237 (ix86_zero_extend_to_Pmode): Ditto.
1238 (ix86_expand_call): Ditto.
1239 (ix86_expand_special_args_builtin): Ditto.
1240 (ix86_expand_builtin): Ditto.
1241
1242 2013-01-04 Richard Biener <rguenther@suse.de>
1243
1244 PR tree-optimization/55862
1245 * tree-ssa-pre.c (phi_translate_1): Valueize SSA names after
1246 translating them through PHI nodes.
1247
1248 2013-01-04 Martin Jambor <mjambor@suse.cz>
1249
1250 PR tree-optimization/55755
1251 * tree-sra.c (sra_modify_assign): Do not check that an access has no
1252 children when trying to avoid producing a VIEW_CONVERT_EXPR.
1253
1254 2013-01-04 Marek Polacek <polacek@redhat.com>
1255
1256 PR middle-end/55859
1257 * opts.c (default_options_optimization): Clarify error message.
1258
1259 2013-01-04 Richard Biener <rguenther@suse.de>
1260
1261 PR middle-end/55863
1262 * fold-const.c (split_tree): Undo -X - 1 to ~X folding for
1263 reassociation.
1264
1265 2013-01-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1266
1267 PR target/53789
1268 * config/pa/pa.md (movsi): Revert previous change.
1269 * config/pa/pa.c (pa_legitimate_constant_p): Reject all TLS symbol
1270 references.
1271
1272 2013-01-03 Richard Henderson <rth@redhat.com>
1273
1274 * config/i386/i386.c (ix86_expand_move): Always assign to op1
1275 after eliminating TLS symbols.
1276
1277 2013-01-03 Marc Glisse <marc.glisse@inria.fr>
1278
1279 PR bootstrap/50167
1280 * graphite-interchange.c (pdr_stride_in_loop): Use gmp_fprintf.
1281 * graphite-poly.c (debug_gmp_value): Likewise.
1282
1283 2013-01-03 Uros Bizjak <ubizjak@gmail.com>
1284
1285 PR target/55712
1286 * config/i386/i386-c.c (ix86_target_macros_internal): Depending on
1287 selected code model, define __code_mode_small__, __code_model_medium__,
1288 __code_model_large__, __code_model_32__ or __code_model_kernel__.
1289 * config/i386/cpuid.h (__cpuid, __cpuid_count) [__i386__]: Prefix
1290 xchg temporary register with %k. Declare temporary register as
1291 early clobbered.
1292 [__x86_64__]: For medium and large code models, preserve %rbx register.
1293
1294 2013-01-03 Richard Biener <rguenther@suse.de>
1295
1296 * tree-data-ref.c (dump_conflict_function): Use less vertical spacing.
1297 (dump_subscript): Adjust.
1298 (finalize_ddr_dependent): Do not dump redundant info.
1299 (analyze_siv_subscript): Adjust.
1300 (subscript_dependence_tester): Likewise.
1301 (compute_affine_dependence): Likewise.
1302
1303 2013-01-03 Richard Biener <rguenther@suse.de>
1304
1305 Revert
1306 2013-01-03 Richard Biener <rguenther@suse.de>
1307
1308 PR tree-optimization/55857
1309 * tree-vect-stmts.c (vectorizable_load): Do not setup
1310 re-alignment for invariant loads.
1311
1312 2013-01-02 Richard Biener <rguenther@suse.de>
1313
1314 * tree-vect-stmts.c (vectorizable_load): When vectorizing an
1315 invariant load do not generate a vector load from the scalar location.
1316
1317 2013-01-03 Richard Biener <rguenther@suse.de>
1318
1319 * tree-vect-loop.c (vect_analyze_loop_form): Clarify reason
1320 for not vectorizing.
1321 * tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref): Do
1322 not build INDIRECT_REFs, call get_name once only.
1323 (vect_create_data_ref_ptr): Likewise. Dump base object kind
1324 based on DR_BASE_OBJECT, not DR_BASE_ADDRESS.
1325
1326 2013-01-03 Richard Biener <rguenther@suse.de>
1327
1328 PR tree-optimization/55857
1329 * tree-vect-stmts.c (vectorizable_load): Do not setup
1330 re-alignment for invariant loads.
1331
1332 2013-01-03 Richard Biener <rguenther@suse.de>
1333
1334 PR lto/55848
1335 * lto-symtab.c (lto_symtab_merge_decls_1): As last resort, always
1336 prefer a built-in decl.
1337
1338 2013-01-03 Jakub Jelinek <jakub@redhat.com>
1339
1340 * gcc.c (process_command): Update copyright notice dates.
1341 * gcov.c (print_version): Likewise.
1342 * gcov-dump.c (print_version): Likewise.
1343
1344 PR rtl-optimization/55838
1345 * loop-iv.c (iv_number_of_iterations): Call lowpart_subreg on
1346 iv0.step, iv1.step and step.
1347
1348 2013-01-03 Jakub Jelinek <jakub@redhat.com>
1349 Marc Glisse <marc.glisse@inria.fr>
1350
1351 PR tree-optimization/55832
1352 * fold-const.c (fold_binary_loc): For ABS_EXPR<x> >= 0 and
1353 ABS_EXPR<x> < 0 folding use constant_boolean_node instead of
1354 integer_{one,zero}_node.
1355
1356 2013-01-03 Jakub Jelinek <jakub@redhat.com>
1357
1358 PR debug/54402
1359 * params.def (PARAM_MAX_VARTRACK_REVERSE_OP_SIZE): New param.
1360 * var-tracking.c (reverse_op): Don't add reverse ops to
1361 VALUEs that have already
1362 PARAM_VALUE (PARAM_MAX_VARTRACK_REVERSE_OP_SIZE) or longer locs list.
1363
1364 2013-01-02 Gerald Pfeifer <gerald@pfeifer.com>
1365
1366 * doc/contrib.texi: Note years as release manager for Mark Mitchell.
1367
1368 2013-01-02 Teresa Johnson <tejohnson@google.com>
1369
1370 * dumpfile.c (dump_loc): Print filename with location.
1371 * tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Use
1372 new location_t parameter to emit complete unroll message with
1373 new dump framework.
1374 (canonicalize_loop_induction_variables): Compute loops location
1375 and pass to try_unroll_loop_completely.
1376 * loop-unroll.c (report_unroll_peel): New function.
1377 (peel_loops_completely): Use new dump format with location
1378 for main dumpfile message, and invoke report_unroll_peel on success.
1379 (decide_unrolling_and_peeling): Ditto.
1380 (decide_peel_once_rolling): Remove old dumpfile message subsumed
1381 by report_unroll_peel.
1382 (decide_peel_completely): Ditto.
1383 (decide_unroll_constant_iterations): Ditto.
1384 (decide_unroll_runtime_iterations): Ditto.
1385 (decide_peel_simple): Ditto.
1386 (decide_unroll_stupid): Ditto.
1387 * cfgloop.c (get_loop_location): New function.
1388 * cfgloop.h (get_loop_location): Declare.
1389
1390 2013-01-02 Sriraman Tallam <tmsriram@google.com>
1391
1392 * config/i386/i386.c (fold_builtin_cpu): Remove unnecessary checks for
1393 NULL.
1394
1395 2013-01-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1396
1397 PR middle-end/55198
1398 * expr.c (expand_expr_real_1): Don't use bitfield extraction for non
1399 BLKmode objects when EXPAND_MEMORY is specified.
1400
1401 2013-01-02 Sriraman Tallam <tmsriram@google.com>
1402
1403 * config/i386/i386.c (ix86_get_function_versions_dispatcher): Fix bug
1404 in loop predicate.
1405 (fold_builtin_cpu): Do not share cpu model decls across statements.
1406
1407 2013-01-02 Jason Merrill <jason@redhat.com>
1408
1409 PR c++/55804
1410 * tree.c (build_array_type_1): Revert earlier change.
1411
1412 2013-01-02 Yufeng Zhang <yufeng.zhang@arm.com>
1413
1414 * config/aarch64/aarch64-cores.def: Add entries for "cortex-a53" and
1415 "cortex-a57".
1416 * config/aarch64/aarch64-tune.md: Re-generate.
1417
1418 2013-01-02 Richard Biener <rguenther@suse.de>
1419
1420 * tree-vect-stmts.c (vectorizable_load): When vectorizing an
1421 invariant load do not generate a vector load from the scalar location.
1422
1423 2013-01-02 Richard Biener <rguenther@suse.de>
1424
1425 PR bootstrap/55784
1426 * configure.ac: Add $GMPINC to CFLAGS/CXXFLAGS.
1427 * configure: Regenerate.
1428
1429 2013-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1430
1431 * builtins.c (expand_builtin_mathfn, expand_builtin_mathfn_2)
1432 (expand_builtin_mathfn_ternary, expand_builtin_mathfn_3)
1433 (expand_builtin_int_roundingfn_2): Keep the original target around
1434 for the fallback case.
1435
1436 2013-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1437
1438 * tree-vrp.c (range_fits_type_p): Require the MSB of the double_int
1439 to be clear for sign changes.
1440
1441 2013-01-01 Jan Hubicka <jh@suse.cz>
1442
1443 * ipa-inline-analysis.c: Fix formatting.
1444
1445 2013-01-01 Jakub Jelinek <jakub@redhat.com>
1446
1447 PR tree-optimization/55831
1448 * tree-vect-loop.c (get_initial_def_for_induction): Use
1449 gsi_after_labels instead of gsi_start_bb.
1450 \f
1451 Copyright (C) 2013 Free Software Foundation, Inc.
1452
1453 Copying and distribution of this file, with or without modification,
1454 are permitted in any medium without royalty provided the copyright
1455 notice and this notice are preserved.