]> gcc.gnu.org Git - gcc.git/blob - gcc/ChangeLog
nds32.c (nds32_naked_function_p): Follow the GNU coding standards.
[gcc.git] / gcc / ChangeLog
1 2014-02-14 Chung-Ju Wu <jasonwucj@gmail.com>
2
3 * config/nds32/nds32.c (nds32_naked_function_p): Follow the
4 GNU coding standards.
5
6 2014-02-13 Jakub Jelinek <jakub@redhat.com>
7
8 PR debug/60152
9 * dwarf2out.c (gen_subprogram_die): Don't call
10 add_calling_convention_attribute if subr_die is old_die.
11
12 2014-02-13 Sharad Singhai <singhai@google.com>
13
14 * doc/optinfo.texi: Fix order of nodes.
15
16 2014-02-13 Uros Bizjak <ubizjak@gmail.com>
17
18 * config/i386/sse.md (xop_vmfrcz<mode>2): Generate const0 in
19 operands[2], not operands[3].
20
21 2014-02-13 Richard Biener <rguenther@suse.de>
22
23 PR bootstrap/59878
24 * doc/install.texi (ISL): Update recommended version to 0.12.2,
25 mention the possibility of an in-tree build.
26 (CLooG): Update recommended version to 0.18.1, mention the
27 possibility of an in-tree build and clarify that the ISL
28 bundled with CLooG does not work.
29
30 2014-02-13 Jakub Jelinek <jakub@redhat.com>
31
32 PR target/43546
33 * expr.c (compress_float_constant): If x is a hard register,
34 extend into a pseudo and then move to x.
35
36 2014-02-13 Dominik Vogt <vogt@linux.vnet.ibm.com>
37
38 * config/s390/s390.c (s390_asm_output_function_label): Fix crash
39 caused by bad second argument to warning_at() with -mhotpatch and
40 nested functions (e.g. with gfortran).
41
42 2014-02-13 Richard Sandiford <rdsandiford@googlemail.com>
43
44 * opts.c (option_name): Remove "enabled by default" rider.
45
46 2014-02-12 John David Anglin <danglin@gcc.gnu.org>
47
48 * config/pa/pa.c (pa_option_override): Remove auto increment FIXME.
49
50 2014-02-12 H.J. Lu <hongjiu.lu@intel.com>
51 Uros Bizjak <ubizjak@gmail.com>
52
53 PR target/60151
54 * configure.ac (HAVE_AS_GOTOFF_IN_DATA): Pass --32 to GNU assembler.
55 * configure: Regenerated.
56
57 2014-02-12 Richard Biener <rguenther@suse.de>
58
59 * vec.c (vec_prefix::calculate_allocation): Move as
60 inline variant to vec.h.
61 (vec_prefix::calculate_allocation_1): New out-of-line version.
62 * vec.h (vec_prefix::calculate_allocation_1): Declare.
63 (vec_prefix::m_has_auto_buf): Rename to ...
64 (vec_prefix::m_using_auto_storage): ... this.
65 (vec_prefix::calculate_allocation): Inline the easy cases
66 and dispatch to calculate_allocation_1 which doesn't need the
67 prefix address.
68 (va_heap::reserve): Use gcc_checking_assert.
69 (vec<T, A, vl_embed>::embedded_init): Add argument to initialize
70 m_using_auto_storage.
71 (auto_vec): Change m_vecpfx member to a vec<T, va_heap, vl_embed>
72 member and adjust.
73 (vec<T, va_heap, vl_ptr>::reserve): Remove redundant check.
74 (vec<T, va_heap, vl_ptr>::release): Avoid casting.
75 (vec<T, va_heap, vl_ptr>::using_auto_storage): Simplify.
76
77 2014-02-12 Richard Biener <rguenther@suse.de>
78
79 * gcse.c (compute_transp): break from loop over canon_modify_mem_list
80 when we found a dependence.
81
82 2014-02-12 Thomas Schwinge <thomas@codesourcery.com>
83
84 * gimplify.c (gimplify_call_expr, gimplify_modify_expr): Move
85 common code...
86 (maybe_fold_stmt): ... into this new function.
87 * omp-low.c (lower_omp): Update comment.
88
89 * omp-low.c (lower_omp_target): Add clobber for sizes array, after
90 last use.
91
92 * omp-low.c (diagnose_sb_0): Make sure label_ctx is valid to
93 dereference.
94
95 2014-02-12 James Greenhalgh <james.greenhalgh@arm.com>
96
97 * config/arm/aarch-cost-tables.h (generic_extra_costs): Fix
98 identifiers in comments.
99 (cortexa53_extra_costs): Likewise.
100 * config/arm/arm.c (cortexa9_extra_costs): Fix identifiers in comments.
101 (cortexa7_extra_costs): Likewise.
102 (cortexa12_extra_costs): Likewise.
103 (cortexa15_extra_costs): Likewise.
104 (v7m_extra_costs): Likewise.
105
106 2014-02-12 Richard Biener <rguenther@suse.de>
107
108 PR middle-end/60092
109 * gimple-low.c (lower_builtin_posix_memalign): Lower conditional
110 of posix_memalign being successful.
111 (lower_stmt): Restrict lowering of posix_memalign to when
112 -ftree-bit-ccp is enabled.
113
114 2014-02-12 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
115
116 * config/avr/avr-c.c (avr_resolve_overloaded_builtin): Pass vNULL for
117 arg_loc.
118 * config/spu/spu-c.c (spu_resolve_overloaded_builtin): Likewise.
119
120 2014-02-12 Eric Botcazou <ebotcazou@adacore.com>
121
122 PR rtl-optimization/60116
123 * combine.c (try_combine): Also remove dangling REG_DEAD notes on the
124 other_insn once the combination has been validated.
125
126 2014-02-11 Jan Hubicka <hubicka@ucw.cz>
127
128 PR lto/59468
129 * ipa-utils.h (possible_polymorphic_call_targets): Update prototype
130 and wrapper.
131 * ipa-devirt.c: Include demangle.h
132 (odr_violation_reported): New static variable.
133 (add_type_duplicate): Update odr_violations.
134 (maybe_record_node): Add completep parameter; update it.
135 (record_target_from_binfo): Add COMPLETEP parameter;
136 update it as needed.
137 (possible_polymorphic_call_targets_1): Likewise.
138 (struct polymorphic_call_target_d): Add nonconstruction_targets;
139 rename FINAL to COMPLETE.
140 (record_targets_from_bases): Sanity check we found the binfo;
141 fix COMPLETEP updating.
142 (possible_polymorphic_call_targets): Add NONCONSTRUTION_TARGETSP
143 parameter, fix computing of COMPLETEP.
144 (dump_possible_polymorphic_call_targets): Imrove readability of dump;
145 at LTO time do demangling.
146 (ipa_devirt): Use nonconstruction_targets; Improve dumps.
147 * gimple-fold.c (gimple_get_virt_method_for_vtable): Add can_refer
148 parameter.
149 (gimple_get_virt_method_for_binfo): Likewise.
150 * gimple-fold.h (gimple_get_virt_method_for_binfo,
151 gimple_get_virt_method_for_vtable): Update prototypes.
152
153 2014-02-11 Vladimir Makarov <vmakarov@redhat.com>
154
155 PR target/49008
156 * genautomata.c (add_presence_absence): Fix typo with
157 {final_}presence_list.
158
159 2014-02-11 Michael Meissner <meissner@linux.vnet.ibm.com>
160
161 PR target/60137
162 * config/rs6000/rs6000.md (128-bit GPR splitter): Add a splitter
163 for VSX/Altivec vectors that land in GPR registers.
164
165 2014-02-11 Richard Henderson <rth@redhat.com>
166 Jakub Jelinek <jakub@redhat.com>
167
168 PR debug/59776
169 * tree-sra.c (load_assign_lhs_subreplacements): Add VIEW_CONVERT_EXPR
170 around drhs if type conversion to lacc->type is not useless.
171
172 2014-02-11 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
173
174 * config/aarch64/aarch64-cores.def (cortex-a57): Use cortexa57
175 tuning struct.
176 (cortex-a57.cortex-a53): Likewise.
177 * config/aarch64/aarch64.c (cortexa57_tunings): New tuning struct.
178
179 2014-02-11 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
180
181 * config/arm/thumb2.md (*thumb2_movhi_insn): Add alternatives for
182 arm_restrict_it.
183
184 2014-02-11 Renlin Li <Renlin.Li@arm.com>
185
186 * doc/sourcebuild.texi: Document check_effective_target_arm_vfp3_ok and
187 add_options_for_arm_vfp3.
188
189 2014-02-11 Jeff Law <law@redhat.com>
190
191 PR middle-end/54041
192 * expr.c (expand_expr_addr_expr_1): Handle expand_expr returning an
193 object with an undesirable mode.
194
195 2014-02-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
196
197 PR libgomp/60107
198 * config/i386/sol2-9.h: New file.
199 * config.gcc (i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*,
200 *-*-solaris2.9*): Use it.
201
202 2014-02-10 Nagaraju Mekala <nagaraju.mekala@xilinx.com>
203
204 * config/microblaze/microblaze.md: Add movsi4_rev insn pattern.
205 * config/microblaze/predicates.md: Add reg_or_mem_operand predicate.
206
207 2014-02-10 Nagaraju Mekala <nagaraju.mekala@xilinx.com>
208
209 * config/microblaze/microblaze.c: Extend mcpu version format
210
211 2014-02-10 David Holsgrove <david.holsgrove@xilinx.com>
212
213 * config/microblaze/microblaze.h: Define SIZE_TYPE and PTRDIFF_TYPE.
214
215 2014-02-10 Richard Henderson <rth@redhat.com>
216
217 PR target/59927
218 * calls.c (expand_call): Don't double-push for reg_parm_stack_space.
219 * config/i386/i386.c (init_cumulative_args): Remove sorry for 64-bit
220 ms-abi vs -mno-accumulate-outgoing-args.
221 (ix86_expand_prologue): Unconditionally call ix86_eax_live_at_start_p.
222 * config/i386/i386.h (ACCUMULATE_OUTGOING_ARGS): Fix comment with
223 respect to ms-abi.
224
225 2014-02-10 Bernd Edlinger <bernd.edlinger@hotmail.de>
226
227 PR middle-end/60080
228 * cfgexpand.c (expand_asm_operands): Attach source location to
229 ASM_INPUT rtx objects.
230 * print-rtl.c (print_rtx): Check for UNKNOWN_LOCATION.
231
232 2014-02-10 Nick Clifton <nickc@redhat.com>
233
234 * config/mn10300/mn10300.c (popcount): New function.
235 (mn10300_expand_prologue): Include saved registers in stack usage
236 count.
237
238 2014-02-10 Jeff Law <law@redhat.com>
239
240 PR middle-end/52306
241 * reload1.c (emit_input_reload_insns): Do not create invalid RTL
242 when changing the SET_DEST of a prior insn to avoid an input reload.
243
244 2014-02-10 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
245
246 * config/rs6000/sysv4.h (ENDIAN_SELECT): Do not attempt to enforce
247 big-endian mode for -mcall-aixdesc, -mcall-freebsd, -mcall-netbsd,
248 -mcall-openbsd, or -mcall-linux.
249 (CC1_ENDIAN_BIG_SPEC): Remove.
250 (CC1_ENDIAN_LITTLE_SPEC): Remove.
251 (CC1_ENDIAN_DEFAULT_SPEC): Remove.
252 (CC1_SPEC): Remove (always empty) %cc1_endian_... spec.
253 (SUBTARGET_EXTRA_SPECS): Remove %cc1_endian_big, %cc1_endian_little,
254 and %cc1_endian_default.
255 * config/rs6000/sysv4le.h (CC1_ENDIAN_DEFAULT_SPEC): Remove.
256
257 2014-02-10 Richard Biener <rguenther@suse.de>
258
259 PR tree-optimization/60115
260 * tree-eh.c (tree_could_trap_p): Unify TARGET_MEM_REF and
261 MEM_REF handling. Properly verify that the accesses are not
262 out of the objects bound.
263
264 2014-02-10 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
265
266 * config/aarch64/aarch64.c (aarch64_override_options): Fix typo from
267 coretex to cortex.
268
269 2014-02-10 Eric Botcazou <ebotcazou@adacore.com>
270
271 * ipa-devirt.c (get_polymorphic_call_info_from_invariant): Return
272 proper constants and fix formatting.
273 (possible_polymorphic_call_targets): Fix formatting.
274
275 2014-02-10 Kirill Yukhin <kirill.yukhin@intel.com>
276 Ilya Tocar <ilya.tocar@intel.com>
277
278 * config/i386/avx512fintrin.h (_mm512_storeu_epi64): Removed.
279 (_mm512_loadu_epi32): Renamed into...
280 (_mm512_loadu_si512): This.
281 (_mm512_storeu_epi32): Renamed into...
282 (_mm512_storeu_si512): This.
283 (_mm512_maskz_ceil_ps): Removed.
284 (_mm512_maskz_ceil_pd): Ditto.
285 (_mm512_maskz_floor_ps): Ditto.
286 (_mm512_maskz_floor_pd): Ditto.
287 (_mm512_floor_round_ps): Ditto.
288 (_mm512_floor_round_pd): Ditto.
289 (_mm512_ceil_round_ps): Ditto.
290 (_mm512_ceil_round_pd): Ditto.
291 (_mm512_mask_floor_round_ps): Ditto.
292 (_mm512_mask_floor_round_pd): Ditto.
293 (_mm512_mask_ceil_round_ps): Ditto.
294 (_mm512_mask_ceil_round_pd): Ditto.
295 (_mm512_maskz_floor_round_ps): Ditto.
296 (_mm512_maskz_floor_round_pd): Ditto.
297 (_mm512_maskz_ceil_round_ps): Ditto.
298 (_mm512_maskz_ceil_round_pd): Ditto.
299 (_mm512_expand_pd): Ditto.
300 (_mm512_expand_ps): Ditto.
301 * config/i386/i386.c (ix86_builtins): Remove
302 IX86_BUILTIN_EXPANDPD512_NOMASK, IX86_BUILTIN_EXPANDPS512_NOMASK.
303 (bdesc_args): Ditto.
304 * config/i386/predicates.md (const1256_operand): New.
305 (const_1_to_2_operand): Ditto.
306 * config/i386/sse.md (avx512pf_gatherpf<mode>sf): Change hint value.
307 (*avx512pf_gatherpf<mode>sf_mask): Ditto.
308 (*avx512pf_gatherpf<mode>sf): Ditto.
309 (avx512pf_gatherpf<mode>df): Ditto.
310 (*avx512pf_gatherpf<mode>df_mask): Ditto.
311 (*avx512pf_gatherpf<mode>df): Ditto.
312 (avx512pf_scatterpf<mode>sf): Ditto.
313 (*avx512pf_scatterpf<mode>sf_mask): Ditto.
314 (*avx512pf_scatterpf<mode>sf): Ditto.
315 (avx512pf_scatterpf<mode>df): Ditto.
316 (*avx512pf_scatterpf<mode>df_mask): Ditto.
317 (*avx512pf_scatterpf<mode>df): Ditto.
318 (avx512f_expand<mode>): Removed.
319 (<shift_insn><mode>3<mask_name>): Change predicate type.
320
321 2014-02-08 Jakub Jelinek <jakub@redhat.com>
322
323 * tree-vect-data-refs.c (vect_analyze_data_refs): For clobbers
324 not at the end of datarefs vector use ordered_remove to avoid
325 reordering datarefs vector.
326
327 PR c/59984
328 * gimplify.c (gimplify_bind_expr): In ORT_SIMD region
329 mark local addressable non-static vars as GOVD_PRIVATE
330 instead of GOVD_LOCAL.
331 * omp-low.c (lower_omp_for): Move gimple_bind_vars
332 and BLOCK_VARS of gimple_bind_block to new_stmt rather
333 than copying them.
334
335 PR middle-end/60092
336 * tree-ssa-ccp.c (surely_varying_stmt_p): Don't return true
337 if TYPE_ATTRIBUTES (gimple_call_fntype ()) contain
338 assume_aligned or alloc_align attributes.
339 (bit_value_assume_aligned): Add ATTR, PTRVAL and ALLOC_ALIGN
340 arguments. Handle also assume_aligned and alloc_align attributes.
341 (evaluate_stmt): Adjust bit_value_assume_aligned caller. Handle
342 calls to functions with assume_aligned or alloc_align attributes.
343 * doc/extend.texi: Document assume_aligned and alloc_align attributes.
344
345 2014-02-08 Terry Guo <terry.guo@arm.com>
346
347 * doc/invoke.texi: Document ARM -march=armv7e-m.
348
349 2014-02-08 Jakub Jelinek <jakub@redhat.com>
350
351 * cilk-common.c (cilk_init_builtins): Clear TREE_NOTHROW
352 flag on __cilkrts_rethrow builtin.
353
354 PR ipa/60026
355 * ipa-cp.c (determine_versionability): Fail at -O0
356 or __attribute__((optimize (0))) or -fno-ipa-cp functions.
357 * tree-sra.c (ipa_sra_preliminary_function_checks): Similarly.
358
359 Revert:
360 2014-02-04 Jakub Jelinek <jakub@redhat.com>
361
362 PR ipa/60026
363 * tree-inline.c (copy_forbidden): Fail for
364 __attribute__((optimize (0))) functions.
365
366 2014-02-07 Jan Hubicka <hubicka@ucw.cz>
367
368 * varpool.c: Include pointer-set.h.
369 (varpool_remove_unreferenced_decls): Variables in other partitions
370 will not be output; be however careful to not lose information
371 about partitioning.
372
373 2014-02-07 Jan Hubicka <hubicka@ucw.cz>
374
375 * gimple-fold.c (gimple_get_virt_method_for_vtable): Do O(1)
376 lookup in the vtable constructor.
377
378 2014-02-07 Jeff Law <law@redhat.com>
379
380 PR target/40977
381 * config/m68k/m68k.md (ashldi_extsi): Turn into a
382 define_insn_and_split.
383
384 * ipa-inline.c (inline_small_functions): Fix typos.
385
386 2014-02-07 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
387
388 * config/s390/s390-protos.h (s390_can_use_simple_return_insn)
389 (s390_can_use_return_insn): Declare.
390 * config/s390/s390.h (EPILOGUE_USES): Define.
391 * config/s390/s390.c (s390_mainpool_start): Allow two main_pool
392 instructions.
393 (s390_chunkify_start): Handle return JUMP_LABELs.
394 (s390_early_mach): Emit a main_pool instruction on the entry edge.
395 (s300_set_up_by_prologue, s390_can_use_simple_return_insn)
396 (s390_can_use_return_insn): New functions.
397 (s390_fix_long_loop_prediction): Handle conditional returns.
398 (TARGET_SET_UP_BY_PROLOGUE): Define.
399 * config/s390/s390.md (ANY_RETURN): New code iterator.
400 (*creturn, *csimple_return, return, simple_return): New patterns.
401
402 2014-02-07 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
403
404 * config/s390/s390.c (s390_restore_gprs_from_fprs): Add REG_CFA_RESTORE
405 notes to each restore. Also add REG_CFA_DEF_CFA when restoring %r15.
406 (s390_optimize_prologue): Don't clear RTX_FRAME_RELATED_P. Update the
407 REG_CFA_RESTORE list when deciding not to restore a register.
408
409 2014-02-07 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
410
411 * config/s390/s390.c: Include tree-pass.h and context.h.
412 (s390_early_mach): New function, split out from...
413 (s390_emit_prologue): ...here.
414 (pass_data_s390_early_mach): New pass structure.
415 (pass_s390_early_mach): New class.
416 (s390_option_override): Create and register early_mach pass.
417 Move to end of file.
418
419 2014-02-07 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
420
421 * var-tracking.c (vt_stack_adjustments): Don't require stack_adjusts
422 to match for the exit block.
423
424 2014-02-07 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
425
426 * config/s390/s390.md ("atomic_load<mode>", "atomic_store<mode>")
427 ("atomic_compare_and_swap<mode>", "atomic_fetch_<atomic><mode>"):
428 Reject misaligned operands.
429
430 2014-02-07 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
431
432 * optabs.c (expand_atomic_compare_and_swap): Allow expander to fail.
433
434 2014-02-07 Richard Biener <rguenther@suse.de>
435
436 PR middle-end/60092
437 * gimple-low.c (lower_builtin_posix_memalign): New function.
438 (lower_stmt): Call it to lower posix_memalign in a way
439 to make alignment info accessible.
440
441 2014-02-07 Jakub Jelinek <jakub@redhat.com>
442
443 PR c++/60082
444 * tree.c (build_common_builtin_nodes): Set ECF_LEAF for
445 __builtin_setjmp_receiver.
446
447 2014-02-07 Richard Biener <rguenther@suse.de>
448
449 PR middle-end/60092
450 * builtin-types.def (BT_FN_INT_PTRPTR_SIZE_SIZE): Add.
451 * builtins.def (BUILT_IN_POSIX_MEMALIGN): Likewise.
452 * tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
453 Handle BUILT_IN_POSIX_MEMALIGN.
454 (find_func_clobbers): Likewise.
455 * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Likewise.
456 (call_may_clobber_ref_p_1): Likewise.
457
458 2014-02-06 Jan Hubicka <hubicka@ucw.cz>
459
460 PR ipa/59918
461 * ipa-devirt.c (record_target_from_binfo): Remove overactive
462 sanity check.
463
464 2014-02-06 Jan Hubicka <hubicka@ucw.cz>
465
466 PR ipa/59469
467 * lto-cgraph.c (lto_output_node): Use
468 symtab_get_symbol_partitioning_class.
469 (lto_output_varpool_node): likewise.
470 (symtab_get_symbol_partitioning_class): Move here from
471 lto/lto-partition.c
472 * cgraph.h (symbol_partitioning_class): Likewise.
473 (symtab_get_symbol_partitioning_class): Declare.
474
475 2014-02-06 Jan Hubicka <hubicka@ucw.cz>
476
477 * ggc.h (ggc_internal_cleared_alloc): New macro.
478 * vec.h (vec_safe_copy): Handle memory stats.
479 * omp-low.c (simd_clone_struct_alloc): Use ggc_internal_cleared_alloc.
480 * target-globals.c (save_target_globals): Likewise.
481
482 2014-02-06 Jan Hubicka <hubicka@ucw.cz>
483
484 PR target/60077
485 * expr.c (emit_move_resolve_push): Export; be bit more selective
486 on when to clear alias set.
487 * expr.h (emit_move_resolve_push): Declare.
488 * function.h (struct function): Add tail_call_marked.
489 * tree-tailcall.c (optimize_tail_call): Set tail_call_marked.
490 * config/i386/i386-protos.h (ix86_expand_push): Remove.
491 * config/i386/i386.md (TImode move expander): De not call
492 ix86_expand_push.
493 (FP push expanders): Preserve memory attributes.
494 * config/i386/sse.md (push<mode>1): Remove.
495 * config/i386/i386.c (ix86_expand_vector_move): Handle push operation.
496 (ix86_expand_push): Remove.
497 * config/i386/mmx.md (push<mode>1): Remove.
498
499 2014-02-06 Jakub Jelinek <jakub@redhat.com>
500
501 PR rtl-optimization/60030
502 * internal-fn.c (ubsan_expand_si_overflow_mul_check): Surround
503 lopart with paradoxical subreg before shifting it up by hprec.
504
505 2014-02-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
506
507 * config/arm/aarch-cost-tables.h (cortexa57_extra_costs): New table.
508 Remove extra newline at end of file.
509 * config/arm/arm.c (arm_cortex_a57_tune): New tuning struct.
510 (arm_issue_rate): Handle cortexa57.
511 * config/arm/arm-cores.def (cortex-a57): Use cortex_a57 tuning.
512 (cortex-a57.cortex-a53): Likewise.
513
514 2014-02-06 Jakub Jelinek <jakub@redhat.com>
515
516 PR target/59575
517 * config/arm/arm.c (emit_multi_reg_push): Add dwarf_regs_mask argument,
518 don't record in REG_FRAME_RELATED_EXPR registers not set in that
519 bitmask.
520 (arm_expand_prologue): Adjust all callers.
521 (arm_unwind_emit_sequence): Allow saved, but not important for unwind
522 info, registers also at the lowest numbered registers side. Use
523 gcc_assert instead of abort, and SET_SRC/SET_DEST macros instead of
524 XEXP.
525
526 PR debug/59992
527 * var-tracking.c (adjust_mems): Before adding a SET to
528 amd->side_effects, adjust it's SET_SRC using simplify_replace_fn_rtx.
529
530 2014-02-06 Alan Modra <amodra@gmail.com>
531
532 PR target/60032
533 * config/rs6000/rs6000.c (rs6000_secondary_memory_needed_mode): Only
534 change SDmode to DDmode when lra_in_progress.
535
536 2014-02-06 Jakub Jelinek <jakub@redhat.com>
537
538 PR middle-end/59150
539 * tree-vect-data-refs.c (vect_analyze_data_refs): For clobbers, call
540 free_data_ref on the dr first, and before goto again also set dr
541 to the next dr. For simd_lane_access, free old datarefs[i] before
542 overwriting it. For get_vectype_for_scalar_type failure, don't
543 free_data_ref if simd_lane_access.
544
545 * Makefile.in (prefix.o, cppbuiltin.o): Depend on $(BASEVER).
546
547 PR target/60062
548 * tree.h (opts_for_fn): New inline function.
549 (opt_for_fn): Define.
550 * config/i386/i386.c (ix86_function_regparm): Use
551 opt_for_fn (decl, optimize) instead of optimize.
552
553 2014-02-06 Marcus Shawcroft <marcus.shawcroft@arm.com>
554
555 * config/aarch64/aarch64.c (aarch64_classify_symbol): Fix logic
556 for SYMBOL_REF in large memory model.
557
558 2014-02-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
559
560 * config/aarch64/aarch64-cores.def (cortex-a53): Specify CRC32
561 and crypto support.
562 (cortex-a57): Likewise.
563 (cortex-a57.cortex-a53): Likewise.
564
565 2014-02-06 Yury Gribov <y.gribov@samsung.com>
566 Kugan Vivekanandarajah <kuganv@linaro.org>
567
568 * config/arm/arm.c (arm_vector_alignment_reachable): Check
569 unaligned_access.
570 * config/arm/arm.c (arm_builtin_support_vector_misalignment): Likewise.
571
572 2014-02-06 Richard Biener <rguenther@suse.de>
573
574 * tree-cfg.c (gimple_duplicate_sese_region): Fix ordering of
575 set_loop_copy and initialize_original_copy_tables.
576
577 2014-02-06 Alex Velenko <Alex.Velenko@arm.com>
578
579 * config/aarch64/aarch64-simd.md
580 (aarch64_ashr_simddi): Change QI to SI.
581
582 2014-02-05 Jan Hubicka <hubicka@ucw.cz>
583 Jakub Jelinek <jakub@redhat.com>
584
585 PR middle-end/60013
586 * ipa-inline-analysis.c (compute_bb_predicates): Ensure monotonicity
587 of the dataflow.
588
589 2014-02-05 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
590
591 * config/rs6000/rs6000.c (altivec_expand_vec_perm_const): Change
592 CODE_FOR_altivec_vpku[hw]um to
593 CODE_FOR_altivec_vpku[hw]um_direct.
594 * config/rs6000/altivec.md (vec_unpacks_hi_<VP_small_lc>): Change
595 UNSPEC_VUNPACK_HI_SIGN to UNSPEC_VUNPACK_HI_SIGN_DIRECT.
596 (vec_unpacks_lo_<VP_small_lc>): Change UNSPEC_VUNPACK_LO_SIGN to
597 UNSPEC_VUNPACK_LO_SIGN_DIRECT.
598
599 2014-02-05 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
600
601 * config/rs6000/altivec.md (altivec_vsum2sws): Adjust code
602 generation for -maltivec=be.
603 (altivec_vsumsws): Simplify redundant test.
604
605 2014-02-05 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
606
607 * altivec.md (UNSPEC_VPACK_UNS_UNS_MOD_DIRECT): New unspec.
608 (UNSPEC_VUNPACK_HI_SIGN_DIRECT): Likewise.
609 (UNSPEC_VUNPACK_LO_SIGN_DIRECT): Likewise.
610 (mulv8hi3): Use gen_altivec_vpkuwum_direct instead of
611 gen_altivec_vpkuwum.
612 (altivec_vpkpx): Test for VECTOR_ELT_ORDER_BIG instead of for
613 BYTES_BIG_ENDIAN.
614 (altivec_vpks<VI_char>ss): Likewise.
615 (altivec_vpks<VI_char>us): Likewise.
616 (altivec_vpku<VI_char>us): Likewise.
617 (altivec_vpku<VI_char>um): Likewise.
618 (altivec_vpku<VI_char>um_direct): New (copy of
619 altivec_vpku<VI_char>um that still relies on BYTES_BIG_ENDIAN, for
620 internal use).
621 (altivec_vupkhs<VU_char>): Emit vupkls* instead of vupkhs* when
622 target is little endian and -maltivec=be is not specified.
623 (*altivec_vupkhs<VU_char>_direct): New (copy of
624 altivec_vupkhs<VU_char> that always emits vupkhs*, for internal use).
625 (altivec_vupkls<VU_char>): Emit vupkhs* instead of vupkls* when
626 target is little endian and -maltivec=be is not specified.
627 (*altivec_vupkls<VU_char>_direct): New (copy of
628 altivec_vupkls<VU_char> that always emits vupkls*, for internal use).
629 (altivec_vupkhpx): Emit vupklpx instead of vupkhpx when target is
630 little endian and -maltivec=be is not specified.
631 (altivec_vupklpx): Emit vupkhpx instead of vupklpx when target is
632 little endian and -maltivec=be is not specified.
633
634 2014-02-05 Richard Henderson <rth@redhat.com>
635
636 PR debug/52727
637 * combine-stack-adj.c: Revert r206943.
638 * sched-int.h (struct deps_desc): Add last_args_size.
639 * sched-deps.c (init_deps): Initialize it.
640 (sched_analyze_insn): Add OUTPUT dependencies between insns that
641 contain REG_ARGS_SIZE notes.
642
643 2014-02-05 Jan Hubicka <hubicka@ucw.cz>
644
645 * lto-cgraph.c (asm_nodes_output): Make global.
646 * lto-wrapper.c (run_gcc): Pass down paralelizm to WPA.
647 * gcc.c (AS_NEEDS_DASH_FOR_PIPED_INPUT): Allow WPA parameter
648 (driver_handle_option): Handle OPT_fwpa.
649
650 2014-02-05 Jakub Jelinek <jakub@redhat.com>
651
652 PR ipa/59947
653 * ipa-devirt.c (possible_polymorphic_call_targets): Fix
654 a comment typo and formatting issue. If odr_hash hasn't been
655 created, return vNULL and set *completep to false.
656
657 PR middle-end/57499
658 * tree-eh.c (cleanup_empty_eh): Bail out on totally empty
659 bb with no successors.
660
661 2014-02-05 James Greenhalgh <james.greenhalgh@arm.com>
662
663 PR target/59718
664 * doc/invoke.texi (-march): Clarify documentation for ARM.
665 (-mtune): Likewise.
666 (-mcpu): Likewise.
667
668 2014-02-05 Richard Biener <rguenther@suse.de>
669
670 * tree-vect-loop.c (vect_analyze_loop_2): Be more informative
671 when not vectorizing because of too many alias checks.
672 * tree-vect-data-refs.c (vect_prune_runtime_alias_test_list):
673 Add more verboseness, avoid duplicate MSG_MISSED_OPTIMIZATION.
674
675 2014-02-05 Nick Clifton <nickc@redhat.com>
676
677 * config/mn10300/mn10300.c (mn10300_hard_regno_mode_ok): Do not
678 accept extended registers in any mode when compiling for the MN10300.
679
680 2014-02-05 Yury Gribov <y.gribov@samsung.com>
681
682 * cif-code.def (ATTRIBUTE_MISMATCH): New CIF code.
683 * ipa-inline.c (report_inline_failed_reason): Handle mismatched
684 sanitization attributes.
685 (can_inline_edge_p): Likewise.
686 (sanitize_attrs_match_for_inline_p): New function.
687
688 2014-02-04 Jan Hubicka <hubicka@ucw.cz>
689
690 * ipa-prop.c (detect_type_change): Shor circuit testing of
691 type changes on THIS pointer.
692
693 2014-02-04 John David Anglin <danglin@gcc.gnu.org>
694
695 PR target/59777
696 * config/pa/pa.c (legitimize_tls_address): Return original address
697 if not passed a SYMBOL_REF rtx.
698 (hppa_legitimize_address): Call legitimize_tls_address for all TLS
699 addresses.
700 (pa_emit_move_sequence): Simplify TLS source operands.
701 (pa_legitimate_constant_p): Reject all TLS constants.
702 * config/pa/pa.h (PA_SYMBOL_REF_TLS_P): Correct comment.
703 (CONSTANT_ADDRESS_P): Reject TLS CONST addresses.
704
705 2014-02-04 Jan Hubicka <hubicka@ucw.cz>
706
707 * ipa.c (function_and_variable_visibility): Decompose DECL_ONE_ONLY
708 groups when we know they are controlled by LTO.
709 * varasm.c (default_binds_local_p_1): If object is in other partition,
710 it will be resolved locally.
711
712 2014-02-04 Bernd Edlinger <bernd.edlinger@hotmail.de>
713
714 * config/host-linux.c (linux_gt_pch_use_address): Don't
715 use SSIZE_MAX because it is not always defined.
716
717 2014-02-04 Vladimir Makarov <vmakarov@redhat.com>
718
719 PR bootstrap/59913
720 * lra-constraints.c (need_for_split_p): Use more 3 reloads as
721 threshold for pseudo splitting.
722 (update_ebb_live_info): Process call argument hard registers and
723 hard registers from insn definition too.
724 (max_small_class_regs_num): New constant.
725 (inherit_in_ebb): Update live hard regs through EBBs. Update
726 reloads_num only for small register classes. Don't split for
727 outputs of jumps.
728
729 2014-02-04 Markus Trippelsdorf <markus@trippelsdorf.de>
730
731 PR ipa/60058
732 * ipa-cp.c (ipa_get_indirect_edge_target_1): Check that target
733 is non-null.
734
735 2014-02-04 Jan Hubicka <hubicka@ucw.cz>
736
737 * gimple-fold.c (can_refer_decl_in_current_unit_p): Default
738 visibility is safe.
739
740 2014-02-04 Marek Polacek <polacek@redhat.com>
741
742 * gdbinit.in (pel): Define.
743
744 2014-02-04 Bernd Edlinger <bernd.edlinger@hotmail.de>
745
746 * doc/invoke.texi (fstrict-volatile-bitfields): Clarify current
747 behavior.
748
749 2014-02-04 Richard Biener <rguenther@suse.de>
750
751 PR lto/59723
752 * lto-streamer-out.c (tree_is_indexable): Force NAMELIST_DECLs
753 in function context local.
754 (lto_output_tree_ref): Do not write trees from lto_output_tree_ref.
755 * lto-streamer-in.c (lto_input_tree_ref): Handle LTO_namelist_decl_ref
756 similar to LTO_imported_decl_ref.
757
758 2014-02-04 Jakub Jelinek <jakub@redhat.com>
759
760 PR tree-optimization/60002
761 * cgraphclones.c (build_function_decl_skip_args): Clear
762 DECL_LANG_SPECIFIC.
763
764 PR tree-optimization/60023
765 * tree-if-conv.c (predicate_mem_writes): Pass true instead of
766 false to gsi_replace.
767 * tree-vect-stmts.c (vect_finish_stmt_generation): If stmt
768 has been in some EH region and vec_stmt could throw, add
769 vec_stmt into the same EH region.
770 * tree-data-ref.c (get_references_in_stmt): If IFN_MASK_LOAD
771 has no lhs, ignore it.
772 * internal-fn.c (expand_MASK_LOAD): Likewise.
773
774 PR ipa/60026
775 * tree-inline.c (copy_forbidden): Fail for
776 __attribute__((optimize (0))) functions.
777
778 PR other/58712
779 * omp-low.c (simd_clone_struct_copy): If from->inbranch
780 is set, copy one less argument.
781 (expand_simd_clones): Don't subtract clone_info->inbranch
782 from simd_clone_struct_alloc argument.
783
784 PR rtl-optimization/57915
785 * recog.c (simplify_while_replacing): If all unary/binary/relational
786 operation arguments are constant, attempt to simplify those.
787
788 PR middle-end/59261
789 * expmed.c (expand_mult): For MODE_VECTOR_INT multiplication
790 if there is no vashl<mode>3 or ashl<mode>3 insn, skip_synth.
791
792 2014-02-04 Richard Biener <rguenther@suse.de>
793
794 PR tree-optimization/60012
795 * tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Apply
796 TBAA disambiguation to all DDRs.
797
798 2014-02-04 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
799
800 PR target/59788
801 * config/sol2.h (LINK_LIBGCC_MAPFILE_SPEC): Define.
802 (LINK_SPEC): Use it for -shared, -shared-libgcc.
803
804 2014-02-03 Jan Hubicka <hubicka@ucw.cz>
805
806 PR ipa/59882
807 * tree.c (get_binfo_at_offset): Do not get confused by empty classes;
808
809 2014-02-03 Jan Hubicka <hubicka@ucw.cz>
810
811 * gimple-fold.c (gimple_extract_devirt_binfo_from_cst): Remove.
812 * gimple-fold.h (gimple_extract_devirt_binfo_from_cst): Remove.
813
814 2014-02-03 Jan Hubicka <hubicka@ucw.cz>
815
816 PR ipa/59831
817 * ipa-cp.c (ipa_get_indirect_edge_target_1): Use ipa-devirt
818 to figure out targets of polymorphic calls with known decl.
819 * ipa-prop.c (try_make_edge_direct_virtual_call): Likewise.
820 * ipa-utils.h (get_polymorphic_call_info_from_invariant): Declare.
821 * ipa-devirt.c (get_polymorphic_call_info_for_decl): Break out from ...
822 (get_polymorphic_call_info): ... here.
823 (get_polymorphic_call_info_from_invariant): New function.
824
825 2014-02-03 Jan Hubicka <hubicka@ucw.cz>
826
827 * ipa-cp.c (ipa_get_indirect_edge_target_1): Do direct
828 lookup via vtable pointer; check for type consistency
829 and turn inconsitent facts into UNREACHABLE.
830 * ipa-prop.c (try_make_edge_direct_virtual_call): Likewise.
831 * gimple-fold.c (gimple_get_virt_method_for_vtable): Do not ICE on
832 type inconsistent querries; return UNREACHABLE instead.
833
834 2014-02-03 Richard Henderson <rth@twiddle.net>
835
836 PR tree-opt/59924
837 * tree-ssa-uninit.c (push_to_worklist): Don't re-push if we've
838 already processed this node.
839 (normalize_one_pred_1): Pass along mark_set.
840 (normalize_one_pred): Create and destroy a pointer_set_t.
841 (normalize_one_pred_chain): Likewise.
842
843 2014-02-03 Laurent Aflonsi <laurent.alfonsi@st.com>
844
845 PR gcov-profile/58602
846 * gcc/gcov-io.c (gcov_open): Open with truncation when mode < 0.
847
848 2014-02-03 Jan Hubicka <hubicka@ucw.cz>
849
850 PR ipa/59831
851 * ipa-cp.c (ipa_get_indirect_edge_target_1): Give up on
852 -fno-devirtualize; try to devirtualize by the knowledge of
853 virtual table pointer given by aggregate propagation.
854 * ipa-prop.c (try_make_edge_direct_virtual_call): Likewise.
855 (ipa_print_node_jump_functions): Dump also offset that
856 is relevant for polymorphic calls.
857 (determine_known_aggregate_parts): Add arg_type parameter; use it
858 instead of determining the type from pointer type.
859 (ipa_compute_jump_functions_for_edge): Update call of
860 determine_known_aggregate_parts.
861 * gimple-fold.c (gimple_get_virt_method_for_vtable): Break out from ...
862 (gimple_get_virt_method_for_binfo): ... here; simplify using
863 vtable_pointer_value_to_vtable.
864 * gimple-fold.h (gimple_get_virt_method_for_vtable): Declare.
865 * ipa-devirt.c (subbinfo_with_vtable_at_offset): Turn OFFSET parameter
866 to unsigned HOST_WIDE_INT; use vtable_pointer_value_to_vtable.
867 (vtable_pointer_value_to_vtable): Break out from ...; handle also
868 POINTER_PLUS_EXPR.
869 (vtable_pointer_value_to_binfo): ... here.
870 * ipa-utils.h (vtable_pointer_value_to_vtable): Declare.
871
872 2014-02-03 Teresa Johnson <tejohnson@google.com>
873
874 * tree-vect-slp.c (vect_supported_load_permutation_p): Avoid
875 redef of outer loop index variable.
876
877 2014-02-03 Marc Glisse <marc.glisse@inria.fr>
878
879 PR c++/53017
880 PR c++/59211
881 * doc/extend.texi (Function Attributes): Typo.
882
883 2014-02-03 Cong Hou <congh@google.com>
884
885 PR tree-optimization/60000
886 * tree-vect-loop.c (vect_transform_loop): Set pattern_def_seq to NULL
887 if the vectorized statement is a store. A store statement can only
888 appear at the end of pattern statements.
889
890 2014-02-03 H.J. Lu <hongjiu.lu@intel.com>
891
892 * config/i386/i386.c (flag_opts): Add -mlong-double-128.
893 (ix86_option_override_internal): Default long double to 64-bit for
894 32-bit Bionic and to 128-bit for 64-bit Bionic.
895
896 * config/i386/i386.h (LONG_DOUBLE_TYPE_SIZE): Use 128 if
897 TARGET_LONG_DOUBLE_128 is true.
898 (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Likewise.
899
900 * config/i386/i386.opt (mlong-double-80): Negate -mlong-double-64.
901 (mlong-double-64): Negate -mlong-double-128.
902 (mlong-double-128): New option.
903
904 * config/i386/i386-c.c (ix86_target_macros): Define
905 __LONG_DOUBLE_128__ for TARGET_LONG_DOUBLE_128.
906
907 * doc/invoke.texi: Document -mlong-double-128.
908
909 2014-02-03 H.J. Lu <hongjiu.lu@intel.com>
910
911 PR rtl-optimization/60024
912 * sel-sched.c (init_regs_for_mode): Check if mode is OK first.
913
914 2014-02-03 Markus Trippelsdorf <markus@trippelsdorf.de>
915
916 * doc/invoke.texi (fprofile-reorder-functions): Fix typo.
917
918 2014-02-03 Andrey Belevantsev <abel@ispras.ru>
919
920 PR rtl-optimization/57662
921 * sel-sched.c (code_motion_path_driver): Do not mark already not
922 existing blocks in the visiting bitmap.
923
924 2014-02-03 Andrey Belevantsev <abel@ispras.ru>
925
926 * sel-sched-ir.c (sel_gen_insn_from_expr_after): Reset INSN_DELETED_P
927 on the insn being emitted.
928
929 2014-02-03 James Greenhalgh <james.greenhalgh@arm.com>
930 Will Deacon <will.deacon@arm.com>
931
932 * doc/gimple.texi (gimple_asm_clear_volatile): Remove.
933
934 2014-02-03 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
935
936 * config/arm/arm-tables.opt: Regenerate.
937
938 2014-02-02 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
939
940 * config/rs6000/rs6000.c (altivec_expand_vec_perm_le): Generalize
941 for vector types other than V16QImode.
942 * config/rs6000/altivec.md (altivec_vperm_<mode>): Change to a
943 define_expand, and call altivec_expand_vec_perm_le when producing
944 code with little endian element order.
945 (*altivec_vperm_<mode>_internal): New insn having previous
946 behavior of altivec_vperm_<mode>.
947 (altivec_vperm_<mode>_uns): Change to a define_expand, and call
948 altivec_expand_vec_perm_le when producing code with little endian
949 element order.
950 (*altivec_vperm_<mode>_uns_internal): New insn having previous
951 behavior of altivec_vperm_<mode>_uns.
952
953 2014-02-02 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
954
955 * config/rs6000/altivec.md (UNSPEC_VSUMSWS_DIRECT): New unspec.
956 (altivec_vsumsws): Add handling for -maltivec=be with a little
957 endian target.
958 (altivec_vsumsws_direct): New.
959 (reduc_splus_<mode>): Call gen_altivec_vsumsws_direct instead of
960 gen_altivec_vsumsws.
961
962 2014-02-02 Jan Hubicka <hubicka@ucw.cz>
963
964 * ipa-devirt.c (subbinfo_with_vtable_at_offset,
965 vtable_pointer_value_to_binfo): New functions.
966 * ipa-utils.h (vtable_pointer_value_to_binfo): Declare.
967 * ipa-prop.c (extr_type_from_vtbl_ptr_store): Use it.
968
969 2014-02-02 Sandra Loosemore <sandra@codesourcery.com>
970
971 * config/nios2/nios2.md (load_got_register): Initialize GOT
972 pointer from _gp_got instead of _GLOBAL_OFFSET_TABLE_.
973 * config/nios2/nios2.c (nios2_function_profiler): Likewise.
974
975 2014-02-02 Jan Hubicka <hubicka@ucw.cz>
976
977 * ipa-prop.c (update_jump_functions_after_inlining): When type is not
978 preserverd by passthrough, do not propagate the type.
979
980 2014-02-02 Richard Sandiford <rdsandiford@googlemail.com>
981
982 * config/mips/mips.c (MIPS_GET_FCSR, MIPS_SET_FCSR): New macros.
983 (mips_atomic_assign_expand_fenv): New function.
984 (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): Define.
985
986 2014-02-02 Richard Sandiford <rdsandiford@googlemail.com>
987
988 * doc/extend.texi (__builtin_mips_get_fcsr): Document.
989 (__builtin_mips_set_fcsr): Likewise.
990 * config/mips/mips-ftypes.def: Add MIPS_VOID_FTYPE_USI and
991 MIPS_USI_FTYPE_VOID.
992 * config/mips/mips-protos.h (mips16_expand_get_fcsr): Declare
993 (mips16_expand_set_fcsr): Likewise.
994 * config/mips/mips.c (mips16_get_fcsr_stub): New variable.
995 (mips16_set_fcsr_stub): Likewise.
996 (mips16_get_fcsr_one_only_stub): New class.
997 (mips16_set_fcsr_one_only_stub): Likewise.
998 (mips16_expand_get_fcsr, mips16_expand_set_fcsr): New functions.
999 (mips_code_end): Output the get_fcsr and set_fcsr stubs, if needed.
1000 (BUILTIN_AVAIL_MIPS16, AVAIL_ALL): New macros.
1001 (hard_float): New availability predicate.
1002 (mips_builtins): Add get_fcsr and set_fcsr.
1003 (mips_expand_builtin): Check BUILTIN_AVAIL_MIPS16.
1004 * config/mips/mips.md (UNSPEC_GET_FCSR, UNSPEC_SET_FCSR): New unspecs.
1005 (GET_FCSR_REGNUM, SET_FCSR_REGNUM): New constants.
1006 (mips_get_fcsr, *mips_get_fcsr, mips_get_fcsr_mips16_<mode>)
1007 (mips_set_fcsr, *mips_set_fcsr, mips_set_fcsr_mips16_<mode>): New
1008 patterns.
1009
1010 2014-02-02 Richard Sandiford <rdsandiford@googlemail.com>
1011
1012 * config/mips/mips.c (mips_one_only_stub): New class.
1013 (mips_need_mips16_rdhwr_p): Replace with...
1014 (mips16_rdhwr_stub): ...this new variable.
1015 (mips16_stub_call_address): New function.
1016 (mips16_rdhwr_one_only_stub): New class.
1017 (mips_expand_thread_pointer): Use mips16_stub_call_address.
1018 (mips_output_mips16_rdhwr): Delete.
1019 (mips_finish_stub): New function.
1020 (mips_code_end): Use it to handle rdhwr stubs.
1021
1022 2014-02-02 Uros Bizjak <ubizjak@gmail.com>
1023
1024 PR target/60017
1025 * config/i386/i386.c (classify_argument): Fix handling of bit_offset
1026 when calculating size of integer atomic types.
1027
1028 2014-02-02 H.J. Lu <hongjiu.lu@intel.com>
1029
1030 * ipa-inline-analysis.c (true_predicate_p): Fix a typo in comments.
1031
1032 2014-02-01 Jakub Jelinek <jakub@redhat.com>
1033
1034 PR tree-optimization/60003
1035 * gimple-low.c (lower_builtin_setjmp): Set cfun->has_nonlocal_label.
1036 * profile.c (branch_prob): Use gimple_call_builtin_p
1037 to check for BUILT_IN_SETJMP_RECEIVER.
1038 * tree-inline.c (copy_bb): Call notice_special_calls.
1039
1040 2014-01-31 Vladimir Makarov <vmakarov@redhat.com>
1041
1042 PR bootstrap/59985
1043 * lra-constraints.c (process_alt_operands): Update reload_sum only
1044 on the first pass.
1045
1046 2014-01-31 Richard Henderson <rth@redhat.com>
1047
1048 PR middle-end/60004
1049 * tree-eh.c (lower_try_finally_switch): Delay lowering finally block
1050 until after else_eh is processed.
1051
1052 2014-01-31 Ilya Tocar <ilya.tocar@intel.com>
1053
1054 * config/i386/avx512fintrin.h (_MM_FROUND_TO_NEAREST_INT),
1055 (_MM_FROUND_TO_NEG_INF), (_MM_FROUND_TO_POS_INF),
1056 (_MM_FROUND_TO_ZERO), (_MM_FROUND_CUR_DIRECTION): Are already defined
1057 in smmintrin.h, remove them.
1058 (_MM_FROUND_NO_EXC): Same as above, bit also wrong value.
1059 * config/i386/i386.c (ix86_print_operand): Split sae and rounding.
1060 * config/i386/i386.md (ROUND_SAE): Fix value.
1061 * config/i386/predicates.md (const_4_or_8_to_11_operand): New.
1062 (const48_operand): New.
1063 * config/i386/subst.md (round), (round_expand): Use
1064 const_4_or_8_to_11_operand.
1065 (round_saeonly), (round_saeonly_expand): Use const48_operand.
1066
1067 2014-01-31 Ilya Tocar <ilya.tocar@intel.com>
1068
1069 * config/i386/constraints.md (Yk): Swap meaning with k.
1070 * config/i386/i386.md (movhi_internal): Change Yk to k.
1071 (movqi_internal): Ditto.
1072 (*k<logic><mode>): Ditto.
1073 (*andhi_1): Ditto.
1074 (*andqi_1): Ditto.
1075 (kandn<mode>): Ditto.
1076 (*<code>hi_1): Ditto.
1077 (*<code>qi_1): Ditto.
1078 (kxnor<mode>): Ditto.
1079 (kortestzhi): Ditto.
1080 (kortestchi): Ditto.
1081 (kunpckhi): Ditto.
1082 (*one_cmplhi2_1): Ditto.
1083 (*one_cmplqi2_1): Ditto.
1084 * config/i386/sse.md (): Change k to Yk.
1085 (avx512f_load<mode>_mask): Ditto.
1086 (avx512f_blendm<mode>): Ditto.
1087 (avx512f_store<mode>_mask): Ditto.
1088 (avx512f_storeu<ssemodesuffix>512_mask): Ditto.
1089 (avx512f_storedqu<mode>_mask): Ditto.
1090 (avx512f_cmp<mode>3<mask_scalar_merge_name><round_saeonly_name>):
1091 Ditto.
1092 (avx512f_ucmp<mode>3<mask_scalar_merge_name>): Ditto.
1093 (avx512f_vmcmp<mode>3<round_saeonly_name>): Ditto.
1094 (avx512f_vmcmp<mode>3_mask<round_saeonly_name>): Ditto.
1095 (avx512f_maskcmp<mode>3): Ditto.
1096 (avx512f_fmadd_<mode>_mask<round_name>): Ditto.
1097 (avx512f_fmadd_<mode>_mask3<round_name>): Ditto.
1098 (avx512f_fmsub_<mode>_mask<round_name>): Ditto.
1099 (avx512f_fmsub_<mode>_mask3<round_name>): Ditto.
1100 (avx512f_fnmadd_<mode>_mask<round_name>): Ditto.
1101 (avx512f_fnmadd_<mode>_mask3<round_name>): Ditto.
1102 (avx512f_fnmsub_<mode>_mask<round_name>): Ditto.
1103 (avx512f_fnmsub_<mode>_mask3<round_name>): Ditto.
1104 (avx512f_fmaddsub_<mode>_mask<round_name>): Ditto.
1105 (avx512f_fmaddsub_<mode>_mask3<round_name>): Ditto.
1106 (avx512f_fmsubadd_<mode>_mask<round_name>): Ditto.
1107 (avx512f_fmsubadd_<mode>_mask3<round_name>): Ditto.
1108 (avx512f_vextract<shuffletype>32x4_1_maskm): Ditto.
1109 (vec_extract_lo_<mode>_maskm): Ditto.
1110 (vec_extract_hi_<mode>_maskm): Ditto.
1111 (avx512f_vternlog<mode>_mask): Ditto.
1112 (avx512f_fixupimm<mode>_mask<round_saeonly_name>): Ditto.
1113 (avx512f_sfixupimm<mode>_mask<round_saeonly_name>): Ditto.
1114 (avx512f_<code><pmov_src_lower><mode>2_mask): Ditto.
1115 (avx512f_<code>v8div16qi2_mask): Ditto.
1116 (avx512f_<code>v8div16qi2_mask_store): Ditto.
1117 (avx512f_eq<mode>3<mask_scalar_merge_name>_1): Ditto.
1118 (avx512f_gt<mode>3<mask_scalar_merge_name>): Ditto.
1119 (avx512f_testm<mode>3<mask_scalar_merge_name>): Ditto.
1120 (avx512f_testnm<mode>3<mask_scalar_merge_name>): Ditto.
1121 (*avx512pf_gatherpf<mode>sf_mask): Ditto.
1122 (*avx512pf_gatherpf<mode>df_mask): Ditto.
1123 (*avx512pf_scatterpf<mode>sf_mask): Ditto.
1124 (*avx512pf_scatterpf<mode>df_mask): Ditto.
1125 (avx512cd_maskb_vec_dupv8di): Ditto.
1126 (avx512cd_maskw_vec_dupv16si): Ditto.
1127 (avx512f_vpermi2var<mode>3_maskz): Ditto.
1128 (avx512f_vpermi2var<mode>3_mask): Ditto.
1129 (avx512f_vpermi2var<mode>3_mask): Ditto.
1130 (avx512f_vpermt2var<mode>3_maskz): Ditto.
1131 (*avx512f_gathersi<mode>): Ditto.
1132 (*avx512f_gathersi<mode>_2): Ditto.
1133 (*avx512f_gatherdi<mode>): Ditto.
1134 (*avx512f_gatherdi<mode>_2): Ditto.
1135 (*avx512f_scattersi<mode>): Ditto.
1136 (*avx512f_scatterdi<mode>): Ditto.
1137 (avx512f_compress<mode>_mask): Ditto.
1138 (avx512f_compressstore<mode>_mask): Ditto.
1139 (avx512f_expand<mode>_mask): Ditto.
1140 * config/i386/subst.md (mask): Change k to Yk.
1141 (mask_scalar_merge): Ditto.
1142 (sd): Ditto.
1143
1144 2014-01-31 Marc Glisse <marc.glisse@inria.fr>
1145
1146 * doc/extend.texi (Vector Extensions): Document ?: in C++.
1147
1148 2014-01-31 Richard Biener <rguenther@suse.de>
1149
1150 PR middle-end/59990
1151 * builtins.c (fold_builtin_memory_op): Make sure to not
1152 use a floating-point mode or a boolean or enumeral type for
1153 the copy operation.
1154
1155 2014-01-30 DJ Delorie <dj@redhat.com>
1156
1157 * config/msp430/msp430.h (LIB_SPEC): Add -lcrt
1158 * config/msp430/msp430.md (msp430_refsym_need_exit): New.
1159 * config/msp430/msp430.c (msp430_expand_epilogue): Call it
1160 whenever main() has an epilogue.
1161
1162 2014-01-30 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
1163
1164 * config/rs6000/rs6000.c (rs6000_expand_vector_init): Remove
1165 unused variable "field".
1166 * config/rs6000/vsx.md (vsx_mergel_<mode>): Add missing DONE.
1167 (vsx_mergeh_<mode>): Likewise.
1168 * config/rs6000/altivec.md (altivec_vmrghb): Likewise.
1169 (altivec_vmrghh): Likewise.
1170 (altivec_vmrghw): Likewise.
1171 (altivec_vmrglb): Likewise.
1172 (altivec_vmrglh): Likewise.
1173 (altivec_vmrglw): Likewise.
1174 (altivec_vspltb): Add missing uses.
1175 (altivec_vsplth): Likewise.
1176 (altivec_vspltw): Likewise.
1177 (altivec_vspltsf): Likewise.
1178
1179 2014-01-30 Jakub Jelinek <jakub@redhat.com>
1180
1181 PR target/59923
1182 * ifcvt.c (cond_exec_process_insns): Don't conditionalize
1183 frame related instructions.
1184
1185 2014-01-30 Vladimir Makarov <vmakarov@redhat.com>
1186
1187 PR rtl-optimization/59959
1188 * lra-constrains.c (simplify_operand_subreg): Assign NO_REGS to
1189 any reload of register whose subreg is invalid.
1190
1191 2014-01-30 Jakub Jelinek <jakub@redhat.com>
1192
1193 * config/i386/f16cintrin.h (_cvtsh_ss): Avoid -Wnarrowing warning.
1194 * config/i386/avx512fintrin.h (_mm512_mask_cvtusepi64_storeu_epi32):
1195 Add missing return type - void.
1196
1197 2014-01-30 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
1198
1199 * gcc/config/rs6000/rs6000.c (rs6000_expand_vector_init): Use
1200 gen_vsx_xxspltw_v4sf_direct instead of gen_vsx_xxspltw_v4sf;
1201 remove element index adjustment for endian (now handled in vsx.md
1202 and altivec.md).
1203 (altivec_expand_vec_perm_const): Use
1204 gen_altivec_vsplt[bhw]_direct instead of gen_altivec_vsplt[bhw].
1205 * gcc/config/rs6000/vsx.md (UNSPEC_VSX_XXSPLTW): New unspec.
1206 (vsx_xxspltw_<mode>): Adjust element index for little endian.
1207 * gcc/config/rs6000/altivec.md (altivec_vspltb): Divide into a
1208 define_expand and a new define_insn *altivec_vspltb_internal;
1209 adjust for -maltivec=be on a little endian target.
1210 (altivec_vspltb_direct): New.
1211 (altivec_vsplth): Divide into a define_expand and a new
1212 define_insn *altivec_vsplth_internal; adjust for -maltivec=be on a
1213 little endian target.
1214 (altivec_vsplth_direct): New.
1215 (altivec_vspltw): Divide into a define_expand and a new
1216 define_insn *altivec_vspltw_internal; adjust for -maltivec=be on a
1217 little endian target.
1218 (altivec_vspltw_direct): New.
1219 (altivec_vspltsf): Divide into a define_expand and a new
1220 define_insn *altivec_vspltsf_internal; adjust for -maltivec=be on
1221 a little endian target.
1222
1223 2014-01-30 Richard Biener <rguenther@suse.de>
1224
1225 PR tree-optimization/59993
1226 * tree-ssa-forwprop.c (associate_pointerplus): Check we
1227 can propagate form the earlier stmt and avoid the transform
1228 when the intermediate result is needed.
1229
1230 2014-01-30 Alangi Derick <alangiderick@gmail.com>
1231
1232 * README.Portability: Fix typo.
1233
1234 2014-01-30 David Holsgrove <david.holsgrove@xilinx.com>
1235
1236 * config/microblaze/microblaze.md(cstoresf4, cbranchsf4): Replace
1237 comparison_operator with ordered_comparison_operator.
1238
1239 2014-01-30 Nick Clifton <nickc@redhat.com>
1240
1241 * config/mn10300/mn10300-protos.h (mn10300_store_multiple_operation_p):
1242 Rename to mn10300_store_multiple_regs.
1243 * config/mn10300/mn10300.c: Likewise.
1244 * config/mn10300/mn10300.md (store_movm): Fix typo: call
1245 store_multiple_regs.
1246 * config/mn10300/predicates.md (mn10300_store_multiple_operation):
1247 Call mn10300_store_multiple_regs.
1248
1249 2014-01-30 Nick Clifton <nickc@redhat.com>
1250 DJ Delorie <dj@redhat.com>
1251
1252 * config/rl78/rl78.c (register_sizes): Make the "upper half" of
1253 %fp 2 to keep registers after it properly word-aligned.
1254 (rl78_alloc_physical_registers_umul): Handle the case where both
1255 input operands are the same.
1256
1257 2014-01-30 Richard Biener <rguenther@suse.de>
1258
1259 PR tree-optimization/59903
1260 * tree-vect-loop.c (vect_transform_loop): Guard multiple-types
1261 check properly.
1262
1263 2014-01-30 Jason Merrill <jason@redhat.com>
1264
1265 PR c++/59633
1266 * tree.c (walk_type_fields): Handle VECTOR_TYPE.
1267
1268 PR c++/59645
1269 * cgraphunit.c (expand_thunk): Copy volatile arg to a temporary.
1270
1271 2014-01-30 Richard Biener <rguenther@suse.de>
1272
1273 PR tree-optimization/59951
1274 * tree-vect-slp.c (vect_bb_slp_scalar_cost): Skip uses in debug insns.
1275
1276 2014-01-30 Savin Zlobec <savin.zlobec@gmail.com>
1277
1278 PR target/59784
1279 * config/nios2/nios2.c (nios2_fpu_insn_asm): Fix asm output of
1280 SFmode to DFmode case.
1281
1282 2014-01-29 DJ Delorie <dj@redhat.com>
1283
1284 * config/msp430/msp430.opt (-minrt): New.
1285 * config/msp430/msp430.h (STARTFILE_SPEC): Link alternate runtime
1286 if -minrt given.
1287 (ENDFILE_SPEC): Likewise.
1288
1289 2014-01-29 Jan Hubicka <hubicka@ucw.cz>
1290
1291 * ipa-inline-analysis.c (clobber_only_eh_bb_p): New function.
1292 (estimate_function_body_sizes): Use it.
1293
1294 2014-01-29 Paolo Carlini <paolo.carlini@oracle.com>
1295
1296 PR c++/58561
1297 * dwarf2out.c (is_cxx_auto): New.
1298 (is_base_type): Use it.
1299 (gen_type_die_with_usage): Likewise.
1300
1301 2014-01-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
1302
1303 * config/rs6000/rs6000.c (altivec_expand_vec_perm_const): Use
1304 CODE_FOR_altivec_vmrg*_direct rather than CODE_FOR_altivec_vmrg*.
1305 * config/rs6000/vsx.md (vsx_mergel_<mode>): Adjust for
1306 -maltivec=be with LE targets.
1307 (vsx_mergeh_<mode>): Likewise.
1308 * config/rs6000/altivec.md (UNSPEC_VMRG[HL]_DIRECT): New unspecs.
1309 (mulv8hi3): Use gen_altivec_vmrg[hl]w_direct.
1310 (altivec_vmrghb): Replace with define_expand and new
1311 *altivec_vmrghb_internal insn; adjust for -maltivec=be with LE targets.
1312 (altivec_vmrghb_direct): New define_insn.
1313 (altivec_vmrghh): Replace with define_expand and new
1314 *altivec_vmrghh_internal insn; adjust for -maltivec=be with LE targets.
1315 (altivec_vmrghh_direct): New define_insn.
1316 (altivec_vmrghw): Replace with define_expand and new
1317 *altivec_vmrghw_internal insn; adjust for -maltivec=be with LE targets.
1318 (altivec_vmrghw_direct): New define_insn.
1319 (*altivec_vmrghsf): Adjust for endianness.
1320 (altivec_vmrglb): Replace with define_expand and new
1321 *altivec_vmrglb_internal insn; adjust for -maltivec=be with LE targets.
1322 (altivec_vmrglb_direct): New define_insn.
1323 (altivec_vmrglh): Replace with define_expand and new
1324 *altivec_vmrglh_internal insn; adjust for -maltivec=be with LE targets.
1325 (altivec_vmrglh_direct): New define_insn.
1326 (altivec_vmrglw): Replace with define_expand and new
1327 *altivec_vmrglw_internal insn; adjust for -maltivec=be with LE targets.
1328 (altivec_vmrglw_direct): New define_insn.
1329 (*altivec_vmrglsf): Adjust for endianness.
1330 (vec_widen_umult_hi_v16qi): Use gen_altivec_vmrghh_direct.
1331 (vec_widen_umult_lo_v16qi): Use gen_altivec_vmrglh_direct.
1332 (vec_widen_smult_hi_v16qi): Use gen_altivec_vmrghh_direct.
1333 (vec_widen_smult_lo_v16qi): Use gen_altivec_vmrglh_direct.
1334 (vec_widen_umult_hi_v8hi): Use gen_altivec_vmrghw_direct.
1335 (vec_widen_umult_lo_v8hi): Use gen_altivec_vmrglw_direct.
1336 (vec_widen_smult_hi_v8hi): Use gen_altivec_vmrghw_direct.
1337 (vec_widen_smult_lo_v8hi): Use gen_altivec_vmrglw_direct.
1338
1339 2014-01-29 Marcus Shawcroft <marcus.shawcroft@arm.com>
1340
1341 * config/aarch64/aarch64.c (aarch64_expand_mov_immediate)
1342 (aarch64_legitimate_address_p, aarch64_class_max_nregs): Adjust
1343 whitespace.
1344
1345 2014-01-29 Richard Biener <rguenther@suse.de>
1346
1347 PR tree-optimization/58742
1348 * tree-ssa-forwprop.c (associate_pointerplus): Rename to
1349 associate_pointerplus_align.
1350 (associate_pointerplus_diff): New function.
1351 (associate_pointerplus): Likewise. Call associate_pointerplus_align
1352 and associate_pointerplus_diff.
1353
1354 2014-01-29 Richard Biener <rguenther@suse.de>
1355
1356 * lto-streamer.h (LTO_major_version): Bump to 3.
1357 (LTO_minor_version): Reset to 0.
1358
1359 2014-01-29 Renlin Li <Renlin.Li@arm.com>
1360
1361 * config/arm/arm-arches.def (ARM_ARCH): Add armv7ve arch.
1362 * config/arm/arm.c (FL_FOR_ARCH7VE): New.
1363 (arm_file_start): Generate correct asm header for armv7ve.
1364 * config/arm/bpabi.h: Add multilib support for armv7ve.
1365 * config/arm/driver-arm.c: Change the architectures of cortex-a7
1366 and cortex-a15 to armv7ve.
1367 * config/arm/t-aprofile: Add multilib support for armv7ve.
1368 * doc/invoke.texi: Document -march=armv7ve.
1369
1370 2014-01-29 Richard Biener <rguenther@suse.de>
1371
1372 PR tree-optimization/58742
1373 * tree-ssa-forwprop.c (associate_plusminus): Return true
1374 if we changed sth, defer EH cleanup to ...
1375 (ssa_forward_propagate_and_combine): ... here. Call simplify_mult.
1376 (simplify_mult): New function.
1377
1378 2014-01-29 Jakub Jelinek <jakub@redhat.com>
1379
1380 PR middle-end/59917
1381 PR tree-optimization/59920
1382 * tree.c (build_common_builtin_nodes): Remove
1383 __builtin_setjmp_dispatcher initialization.
1384 * omp-low.h (make_gimple_omp_edges): Add a new int * argument.
1385 * profile.c (branch_prob): Use gsi_start_nondebug_after_labels_bb
1386 instead of gsi_after_labels + manually skipping debug stmts.
1387 Don't ignore bbs with BUILT_IN_SETJMP_DISPATCHER, instead
1388 ignore bbs with IFN_ABNORMAL_DISPATCHER.
1389 * tree-inline.c (copy_edges_for_bb): Remove
1390 can_make_abnormal_goto argument, instead add abnormal_goto_dest
1391 argument. Ignore computed_goto_p stmts. Don't call
1392 make_abnormal_goto_edges. If a call might need abnormal edges
1393 for non-local gotos, see if it already has an edge to
1394 IFN_ABNORMAL_DISPATCHER or if it is IFN_ABNORMAL_DISPATCHER
1395 with true argument, don't do anything then, otherwise add
1396 EDGE_ABNORMAL from the call's bb to abnormal_goto_dest.
1397 (copy_cfg_body): Compute abnormal_goto_dest, adjust copy_edges_for_bb
1398 caller.
1399 * gimple-low.c (struct lower_data): Remove calls_builtin_setjmp.
1400 (lower_function_body): Don't emit __builtin_setjmp_dispatcher.
1401 (lower_stmt): Don't set data->calls_builtin_setjmp.
1402 (lower_builtin_setjmp): Adjust comment.
1403 * builtins.def (BUILT_IN_SETJMP_DISPATCHER): Remove.
1404 * tree-cfg.c (found_computed_goto): Remove.
1405 (factor_computed_gotos): Remove.
1406 (make_goto_expr_edges): Return bool, true for computed gotos.
1407 Don't call make_abnormal_goto_edges.
1408 (build_gimple_cfg): Don't set found_computed_goto, don't call
1409 factor_computed_gotos.
1410 (computed_goto_p): No longer static.
1411 (make_blocks): Don't set found_computed_goto.
1412 (get_abnormal_succ_dispatcher, handle_abnormal_edges): New functions.
1413 (make_edges): If make_goto_expr_edges returns true, push bb
1414 into ab_edge_goto vector, for stmt_can_make_abnormal_goto calls
1415 instead of calling make_abnormal_goto_edges push bb into ab_edge_call
1416 vector. Record mapping between bbs and OpenMP regions if there
1417 are any, adjust make_gimple_omp_edges caller. Call
1418 handle_abnormal_edges.
1419 (make_abnormal_goto_edges): Remove.
1420 * tree-cfg.h (make_abnormal_goto_edges): Remove.
1421 (computed_goto_p, get_abnormal_succ_dispatcher): New prototypes.
1422 * internal-fn.c (expand_ABNORMAL_DISPATCHER): New function.
1423 * builtins.c (expand_builtin): Don't handle BUILT_IN_SETJMP_DISPATCHER.
1424 * internal-fn.def (ABNORMAL_DISPATCHER): New.
1425 * omp-low.c (make_gimple_omp_edges): Add region_idx argument, when
1426 filling *region also set *region_idx to (*region)->entry->index.
1427
1428 PR other/58712
1429 * read-rtl.c (read_rtx_code): Clear all of RTX_CODE_SIZE (code).
1430 For REGs set ORIGINAL_REGNO.
1431
1432 2014-01-29 Bingfeng Mei <bmei@broadcom.com>
1433
1434 * doc/md.texi: Mention that a target shouldn't implement
1435 vec_widen_(s|u)mul_even/odd pair if it is less efficient
1436 than hi/lo pair.
1437
1438 2014-01-29 Jakub Jelinek <jakub@redhat.com>
1439
1440 PR tree-optimization/59594
1441 * tree-vect-data-refs.c (vect_analyze_data_ref_accesses): Sort
1442 a copy of the datarefs vector rather than the vector itself.
1443
1444 2014-01-28 Jason Merrill <jason@redhat.com>
1445
1446 PR c++/53756
1447 * dwarf2out.c (auto_die): New static.
1448 (gen_type_die_with_usage): Handle C++1y 'auto'.
1449 (gen_subprogram_die): If in-class DIE had 'auto', emit type again
1450 on definition.
1451
1452 2014-01-28 H.J. Lu <hongjiu.lu@intel.com>
1453
1454 PR target/59672
1455 * config/i386/gnu-user64.h (SPEC_32): Add "m16|" to "m32".
1456 (SPEC_X32): Likewise.
1457 (SPEC_64): Likewise.
1458 * config/i386/i386.c (ix86_option_override_internal): Turn off
1459 OPTION_MASK_ISA_64BIT, OPTION_MASK_ABI_X32 and OPTION_MASK_ABI_64
1460 for TARGET_16BIT.
1461 (x86_file_start): Output .code16gcc for TARGET_16BIT.
1462 * config/i386/i386.h (TARGET_16BIT): New macro.
1463 (TARGET_16BIT_P): Likewise.
1464 * config/i386/i386.opt: Add m16.
1465 * doc/invoke.texi: Document -m16.
1466
1467 2014-01-28 Jakub Jelinek <jakub@redhat.com>
1468
1469 PR preprocessor/59935
1470 * input.c (location_get_source_line): Bail out on when line number
1471 is zero, and test the return value of lookup_or_add_file_to_cache_tab.
1472
1473 2014-01-28 Richard Biener <rguenther@suse.de>
1474
1475 PR tree-optimization/58742
1476 * tree-ssa-forwprop.c (associate_plusminus): Handle
1477 pointer subtraction of the form (T)(P + A) - (T)P.
1478
1479 2014-01-28 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
1480
1481 * config/arm/arm.c (arm_new_rtx_costs): Remove useless statement
1482 at const_int_cost.
1483
1484 2014-01-28 Richard Biener <rguenther@suse.de>
1485
1486 Revert
1487 2014-01-28 Richard Biener <rguenther@suse.de>
1488
1489 PR rtl-optimization/45364
1490 PR rtl-optimization/59890
1491 * var-tracking.c (local_get_addr_clear_given_value): Handle
1492 already cleared slot.
1493 (val_reset): Handle not allocated local_get_addr_cache.
1494 (vt_find_locations): Use post-order on the inverted CFG.
1495
1496 2014-01-28 Richard Biener <rguenther@suse.de>
1497
1498 * tree-data-ref.h (ddr_is_anti_dependent, ddrs_have_anti_deps): Remove.
1499
1500 2014-01-28 Richard Biener <rguenther@suse.de>
1501
1502 PR rtl-optimization/45364
1503 PR rtl-optimization/59890
1504 * var-tracking.c (local_get_addr_clear_given_value): Handle
1505 already cleared slot.
1506 (val_reset): Handle not allocated local_get_addr_cache.
1507 (vt_find_locations): Use post-order on the inverted CFG.
1508
1509 2014-01-28 Alan Modra <amodra@gmail.com>
1510
1511 * Makefile.in (BUILD_CPPFLAGS): Do not use ALL_CPPFLAGS.
1512 * configure.ac <recursive call for build != host>: Define
1513 GENERATOR_FILE. Comment. Use CXX_FOR_BUILD, CXXFLAGS_FOR_BUILD
1514 and LD_FOR_BUILD too.
1515 * configure: Regenerate.
1516
1517 2014-01-27 Allan Sandfeld Jensen <sandfeld@kde.org>
1518
1519 * config/i386/i386.c (get_builtin_code_for_version): Separate
1520 Westmere from Nehalem, Ivy Bridge from Sandy Bridge and
1521 Broadwell from Haswell.
1522
1523 2014-01-27 Steve Ellcey <sellcey@mips.com>
1524
1525 * common/config/mips/mips-common.c (TARGET_DEFAULT_TARGET_FLAGS):
1526 Remove TARGET_FP_EXCEPTIONS_DEFAULT and MASK_FUSED_MADD.
1527 * config/mips/mips.c (mips_option_override): Change setting
1528 of TARGET_DSP.
1529 * config/mips/mips.h (TARGET_FP_EXCEPTIONS_DEFAULT): Remove.
1530 * config/mips/mips.opt (DSP, DSPR2, FP_EXCEPTIONS, FUSED_MADD, MIPS3D):
1531 Change from Mask to Var.
1532
1533 2014-01-27 Jeff Law <law@redhat.com>
1534
1535 * ipa-inline.c (inline_small_functions): Fix typo.
1536
1537 2014-01-27 Ilya Tocar <ilya.tocar@intel.com>
1538
1539 * config/i386/avx512fintrin.h (_mm512_mask_cvtepi32_storeu_epi8): New.
1540 (_mm512_mask_cvtsepi32_storeu_epi8): Ditto.
1541 (_mm512_mask_cvtusepi32_storeu_epi8): Ditto.
1542 (_mm512_mask_cvtepi32_storeu_epi16): Ditto.
1543 (_mm512_mask_cvtsepi32_storeu_epi16): Ditto.
1544 (_mm512_mask_cvtusepi32_storeu_epi16): Ditto.
1545 (_mm512_mask_cvtepi64_storeu_epi32): Ditto.
1546 (_mm512_mask_cvtsepi64_storeu_epi32): Ditto.
1547 (_mm512_mask_cvtusepi64_storeu_epi32): Ditto.
1548 (_mm512_mask_cvtepi64_storeu_epi16): Ditto.
1549 (_mm512_mask_cvtsepi64_storeu_epi16): Ditto.
1550 (_mm512_mask_cvtusepi64_storeu_epi16): Ditto.
1551 (_mm512_mask_cvtepi64_storeu_epi8): Ditto.
1552 (_mm512_mask_cvtsepi64_storeu_epi8): Ditto.
1553 (_mm512_mask_cvtusepi64_storeu_epi8): Ditto.
1554 (_mm512_storeu_epi64): Ditto.
1555 (_mm512_cmpge_epi32_mask): Ditto.
1556 (_mm512_cmpge_epu32_mask): Ditto.
1557 (_mm512_cmpge_epi64_mask): Ditto.
1558 (_mm512_cmpge_epu64_mask): Ditto.
1559 (_mm512_cmple_epi32_mask): Ditto.
1560 (_mm512_cmple_epu32_mask): Ditto.
1561 (_mm512_cmple_epi64_mask): Ditto.
1562 (_mm512_cmple_epu64_mask): Ditto.
1563 (_mm512_cmplt_epi32_mask): Ditto.
1564 (_mm512_cmplt_epu32_mask): Ditto.
1565 (_mm512_cmplt_epi64_mask): Ditto.
1566 (_mm512_cmplt_epu64_mask): Ditto.
1567 (_mm512_cmpneq_epi32_mask): Ditto.
1568 (_mm512_cmpneq_epu32_mask): Ditto.
1569 (_mm512_cmpneq_epi64_mask): Ditto.
1570 (_mm512_cmpneq_epu64_mask): Ditto.
1571 (_mm512_expand_pd): Ditto.
1572 (_mm512_expand_ps): Ditto.
1573 * config/i386/i386-builtin-types.def: Add PV16QI, PV16QI, PV16HI,
1574 VOID_PV8SI_V8DI_QI, VOID_PV8HI_V8DI_QI, VOID_PV16QI_V8DI_QI,
1575 VOID_PV16QI_V16SI_HI, VOID_PV16HI_V16SI_HI.
1576 * config/i386/i386.c (ix86_builtins): Add
1577 IX86_BUILTIN_EXPANDPD512_NOMASK, IX86_BUILTIN_EXPANDPS512_NOMASK,
1578 IX86_BUILTIN_PMOVDB512_MEM, IX86_BUILTIN_PMOVDW512_MEM,
1579 IX86_BUILTIN_PMOVQB512_MEM, IX86_BUILTIN_PMOVQD512_MEM,
1580 IX86_BUILTIN_PMOVQW512_MEM, IX86_BUILTIN_PMOVSDB512_MEM,
1581 IX86_BUILTIN_PMOVSDW512_MEM, IX86_BUILTIN_PMOVSQB512_MEM,
1582 IX86_BUILTIN_PMOVSQD512_MEM, IX86_BUILTIN_PMOVSQW512_MEM,
1583 IX86_BUILTIN_PMOVUSDB512_MEM, IX86_BUILTIN_PMOVUSDW512_MEM,
1584 IX86_BUILTIN_PMOVUSQB512_MEM, IX86_BUILTIN_PMOVUSQD512_MEM,
1585 IX86_BUILTIN_PMOVUSQW512_MEM.
1586 (bdesc_special_args): Add __builtin_ia32_pmovusqd512mem_mask,
1587 __builtin_ia32_pmovsqd512mem_mask,
1588 __builtin_ia32_pmovqd512mem_mask,
1589 __builtin_ia32_pmovusqw512mem_mask,
1590 __builtin_ia32_pmovsqw512mem_mask,
1591 __builtin_ia32_pmovqw512mem_mask,
1592 __builtin_ia32_pmovusdw512mem_mask,
1593 __builtin_ia32_pmovsdw512mem_mask,
1594 __builtin_ia32_pmovdw512mem_mask,
1595 __builtin_ia32_pmovqb512mem_mask,
1596 __builtin_ia32_pmovusqb512mem_mask,
1597 __builtin_ia32_pmovsqb512mem_mask,
1598 __builtin_ia32_pmovusdb512mem_mask,
1599 __builtin_ia32_pmovsdb512mem_mask,
1600 __builtin_ia32_pmovdb512mem_mask.
1601 (bdesc_args): Add __builtin_ia32_expanddf512,
1602 __builtin_ia32_expandsf512.
1603 (ix86_expand_special_args_builtin): Handle VOID_FTYPE_PV8SI_V8DI_QI,
1604 VOID_FTYPE_PV8HI_V8DI_QI, VOID_FTYPE_PV16HI_V16SI_HI,
1605 VOID_FTYPE_PV16QI_V8DI_QI, VOID_FTYPE_PV16QI_V16SI_HI.
1606 * config/i386/sse.md (unspec): Add UNSPEC_EXPAND_NOMASK.
1607 (avx512f_<code><pmov_src_lower><mode>2_mask_store): New.
1608 (*avx512f_<code>v8div16qi2_store_mask): Renamed to ...
1609 (avx512f_<code>v8div16qi2_mask_store): This.
1610 (avx512f_expand<mode>): New.
1611
1612 2014-01-27 Kirill Yukhin <kirill.yukhin@intel.com>
1613
1614 * config/i386/avx512pfintrin.h (_mm512_mask_prefetch_i32gather_pd):
1615 New.
1616 (_mm512_mask_prefetch_i64gather_pd): Ditto.
1617 (_mm512_prefetch_i32scatter_pd): Ditto.
1618 (_mm512_mask_prefetch_i32scatter_pd): Ditto.
1619 (_mm512_prefetch_i64scatter_pd): Ditto.
1620 (_mm512_mask_prefetch_i64scatter_pd): Ditto.
1621 (_mm512_mask_prefetch_i32gather_ps): Fix operand type.
1622 (_mm512_mask_prefetch_i64gather_ps): Ditto.
1623 (_mm512_prefetch_i32scatter_ps): Ditto.
1624 (_mm512_mask_prefetch_i32scatter_ps): Ditto.
1625 (_mm512_prefetch_i64scatter_ps): Ditto.
1626 (_mm512_mask_prefetch_i64scatter_ps): Ditto.
1627 * config/i386/i386-builtin-types.def: Define
1628 VOID_FTYPE_QI_V8SI_PCINT64_INT_INT
1629 and VOID_FTYPE_QI_V8DI_PCINT64_INT_INT.
1630 * config/i386/i386.c (ix86_builtins): Define IX86_BUILTIN_GATHERPFQPD,
1631 IX86_BUILTIN_GATHERPFDPD, IX86_BUILTIN_SCATTERPFDPD,
1632 IX86_BUILTIN_SCATTERPFQPD.
1633 (ix86_init_mmx_sse_builtins): Define __builtin_ia32_gatherpfdpd,
1634 __builtin_ia32_gatherpfdps, __builtin_ia32_gatherpfqpd,
1635 __builtin_ia32_gatherpfqps, __builtin_ia32_scatterpfdpd,
1636 __builtin_ia32_scatterpfdps, __builtin_ia32_scatterpfqpd,
1637 __builtin_ia32_scatterpfqps.
1638 (ix86_expand_builtin): Expand new built-ins.
1639 * config/i386/sse.md (avx512pf_gatherpf<mode>): Add SF suffix,
1640 fix memory access data type.
1641 (*avx512pf_gatherpf<mode>_mask): Ditto.
1642 (*avx512pf_gatherpf<mode>): Ditto.
1643 (avx512pf_scatterpf<mode>): Ditto.
1644 (*avx512pf_scatterpf<mode>_mask): Ditto.
1645 (*avx512pf_scatterpf<mode>): Ditto.
1646 (GATHER_SCATTER_SF_MEM_MODE): New.
1647 (avx512pf_gatherpf<mode>df): Ditto.
1648 (*avx512pf_gatherpf<mode>df_mask): Ditto.
1649 (*avx512pf_scatterpf<mode>df): Ditto.
1650
1651 2014-01-27 Jakub Jelinek <jakub@redhat.com>
1652
1653 PR bootstrap/59934
1654 * expmed.h (expmed_mode_index): Rework so that analysis and optimziers
1655 know when the MODE_PARTIAL_INT and MODE_VECTOR_INT cases can never be
1656 reached.
1657
1658 2014-01-27 James Greenhalgh <james.greenhalgh@arm.com>
1659
1660 * common/config/arm/arm-common.c
1661 (arm_rewrite_mcpu): Handle multiple names.
1662 * config/arm/arm.h
1663 (BIG_LITTLE_SPEC): Do not discard mcpu switches.
1664
1665 2014-01-27 James Greenhalgh <james.greenhalgh@arm.com>
1666
1667 * gimple-builder.h (create_gimple_tmp): Delete.
1668
1669 2014-01-27 Christian Bruel <christian.bruel@st.com>
1670
1671 * config/sh/sh-mem.cc (sh_expand_cmpnstr): Fix remaining bytes after
1672 words comparisons.
1673
1674 2014-01-26 John David Anglin <danglin@gcc.gnu.org>
1675
1676 * config/pa/pa.md (call): Generate indirect long calls to non-local
1677 functions when outputing 32-bit code.
1678 (call_value): Likewise except for special call to buggy powf function.
1679
1680 * config/pa/pa.c (pa_attr_length_indirect_call): Adjust length of
1681 portable runtime and PIC indirect calls.
1682 (pa_output_indirect_call): Remove unnecessary nop from portable runtime
1683 and PIC call sequences. Use ldo instead of blr to set return register
1684 in PIC call sequence.
1685
1686 2014-01-25 Walter Lee <walt@tilera.com>
1687
1688 * config/tilegx/sync.md (atomic_fetch_sub): Fix negation and
1689 avoid clobbering a live register.
1690
1691 2014-01-25 Walter Lee <walt@tilera.com>
1692
1693 * config/tilegx/tilegx-c.c (tilegx_cpu_cpp_builtins):
1694 Define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_{1,2}.
1695 * config/tilegx/tilepro-c.c (tilepro_cpu_cpp_builtins):
1696 Define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_{1,2,4,8}.
1697
1698 2014-01-25 Walter Lee <walt@tilera.com>
1699
1700 * config/tilegx/tilegx.c (tilegx_function_arg): Start 16-byte
1701 arguments on even registers.
1702 (tilegx_gimplify_va_arg_expr): Align 16-byte var args to
1703 STACK_BOUNDARY.
1704 * config/tilegx/tilegx.h (STACK_BOUNDARY): Change to 16 bytes.
1705 (BIGGEST_ALIGNMENT): Ditto.
1706 (BIGGEST_FIELD_ALIGNMENT): Ditto.
1707
1708 2014-01-25 Walter Lee <walt@tilera.com>
1709
1710 * config/tilegx/tilegx.c (tilegx_gen_bundles): Delete barrier
1711 insns before bundling.
1712 * config/tilegx/tilegx.md (tile_network_barrier): Update comment.
1713
1714 2014-01-25 Walter Lee <walt@tilera.com>
1715
1716 * config/tilegx/tilegx.c (tilegx_expand_builtin): Set
1717 PREFETCH_SCHEDULE_BARRIER_P to true for prefetches.
1718 * config/tilepro/tilepro.c (tilepro_expand_builtin): Ditto.
1719
1720 2014-01-25 Richard Sandiford <rdsandiford@googlemail.com>
1721
1722 * config/mips/constraints.md (kl): Delete.
1723 * config/mips/mips.md (divmod<mode>4, udivmod<mode>4): Turn into
1724 define expands, using...
1725 (divmod<mode>4_mips16, udivmod<mode>4_mips16): ...these new
1726 instructions for MIPS16.
1727 (*divmod<mode>4, *udivmod<mode>4): New patterns, taken from the
1728 non-MIPS16 version of the old divmod<mode>4 and udivmod<mode>4.
1729
1730 2014-01-25 Walter Lee <walt@tilera.com>
1731
1732 * config/tilepro/tilepro.md (ctzdi2): Use register_operand predicate.
1733 (clzdi2): Ditto.
1734 (ffsdi2): Ditto.
1735
1736 2014-01-25 Walter Lee <walt@tilera.com>
1737
1738 * config/tilegx/tilegx.c (tilegx_expand_to_rtl_hook): New.
1739 (TARGET_EXPAND_TO_RTL_HOOK): Define.
1740
1741 2014-01-25 Richard Sandiford <rdsandiford@googlemail.com>
1742
1743 * rtlanal.c (canonicalize_condition): Split out duplicated mode check.
1744 Handle XOR.
1745
1746 2014-01-25 Jakub Jelinek <jakub@redhat.com>
1747
1748 * print-rtl.c (in_call_function_usage): New var.
1749 (print_rtx): When in CALL_INSN_FUNCTION_USAGE, always print
1750 EXPR_LIST mode as mode and not as reg note name.
1751
1752 PR middle-end/59561
1753 * cfgloopmanip.c (copy_loop_info): If
1754 loop->warned_aggressive_loop_optimizations, make sure
1755 the flag is set in target loop too.
1756
1757 2014-01-24 Balaji V. Iyer <balaji.v.iyer@intel.com>
1758
1759 * builtins.c (is_builtin_name): Renamed flag_enable_cilkplus to
1760 flag_cilkplus.
1761 * builtins.def: Likewise.
1762 * cilk.h (fn_contains_cilk_spawn_p): Likewise.
1763 * cppbuiltin.c (define_builtin_macros_for_compilation_flags): Likewise.
1764 * ira.c (ira_setup_eliminable_regset): Likewise.
1765 * omp-low.c (gate_expand_omp): Likewise.
1766 (execute_lower_omp): Likewise.
1767 (diagnose_sb_0): Likewise.
1768 (gate_diagnose_omp_blocks): Likewise.
1769 (simd_clone_clauses_extract): Likewise.
1770 (gate): Likewise.
1771
1772 2014-01-24 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
1773
1774 * config/rs6000/rs6000.c (rs6000_expand_vec_perm_const_1): Remove
1775 correction for little endian...
1776 * config/rs6000/vsx.md (vsx_xxpermdi2_<mode>_1): ...and move it to
1777 here.
1778
1779 2014-01-24 Jeff Law <law@redhat.com>
1780
1781 PR tree-optimization/59919
1782 * tree-vrp.c (find_assert_locations_1): Do not register asserts
1783 for non-returning calls.
1784
1785 2014-01-24 James Greenhalgh <james.greenhalgh@arm.com>
1786
1787 * common/config/aarch64/aarch64-common.c
1788 (aarch64_rewrite_mcpu): Handle multiple names.
1789 * config/aarch64/aarch64.h
1790 (BIG_LITTLE_SPEC): Do not discard mcpu switches.
1791
1792 2014-01-24 Dodji Seketeli <dodji@redhat.com>
1793
1794 * input.c (add_file_to_cache_tab): Handle the case where fopen
1795 returns NULL.
1796
1797 2014-01-23 H.J. Lu <hongjiu.lu@intel.com>
1798
1799 PR target/59929
1800 * config/i386/i386.md (pushsf splitter): Get stack adjustment
1801 from push operand if code of push isn't PRE_DEC.
1802
1803 2014-01-23 Michael Meissner <meissner@linux.vnet.ibm.com>
1804
1805 PR target/59909
1806 * doc/invoke.texi (RS/6000 and PowerPC Options): Document
1807 -mquad-memory-atomic. Update -mquad-memory documentation to say
1808 it is only used for non-atomic loads/stores.
1809
1810 * config/rs6000/predicates.md (quad_int_reg_operand): Allow either
1811 -mquad-memory or -mquad-memory-atomic switches.
1812
1813 * config/rs6000/rs6000-cpus.def (ISA_2_7_MASKS_SERVER): Add
1814 -mquad-memory-atomic to ISA 2.07 support.
1815
1816 * config/rs6000/rs6000.opt (-mquad-memory-atomic): Add new switch
1817 to separate support of normal quad word memory operations (ldq, stq)
1818 from the atomic quad word memory operations.
1819
1820 * config/rs6000/rs6000.c (rs6000_option_override_internal): Add
1821 support to separate non-atomic quad word operations from atomic
1822 quad word operations. Disable non-atomic quad word operations in
1823 little endian mode so that we don't have to swap words after the
1824 load and before the store.
1825 (quad_load_store_p): Add comment about atomic quad word support.
1826 (rs6000_opt_masks): Add -mquad-memory-atomic to the list of
1827 options printed with -mdebug=reg.
1828
1829 * config/rs6000/rs6000.h (TARGET_SYNC_TI): Use
1830 -mquad-memory-atomic as the test for whether we have quad word
1831 atomic instructions.
1832 (TARGET_SYNC_HI_QI): If either -mquad-memory-atomic, -mquad-memory,
1833 or -mp8-vector are used, allow byte/half-word atomic operations.
1834
1835 * config/rs6000/sync.md (load_lockedti): Insure that the address
1836 is a proper indexed or indirect address for the lqarx instruction.
1837 On little endian systems, swap the hi/lo registers after the lqarx
1838 instruction.
1839 (load_lockedpti): Use indexed_or_indirect_operand predicate to
1840 insure the address is valid for the lqarx instruction.
1841 (store_conditionalti): Insure that the address is a proper indexed
1842 or indirect address for the stqcrx. instruction. On little endian
1843 systems, swap the hi/lo registers before doing the stqcrx.
1844 instruction.
1845 (store_conditionalpti): Use indexed_or_indirect_operand predicate to
1846 insure the address is valid for the stqcrx. instruction.
1847
1848 * gcc/config/rs6000/rs6000-c.c (rs6000_target_modify_macros):
1849 Define __QUAD_MEMORY__ and __QUAD_MEMORY_ATOMIC__ based on what
1850 type of quad memory support is available.
1851
1852 2014-01-23 Vladimir Makarov <vmakarov@redhat.com>
1853
1854 PR regression/59915
1855 * lra-constraints.c (simplify_operand_subreg): Spill pseudo if
1856 there is a danger of looping.
1857
1858 2014-01-23 Pat Haugen <pthaugen@us.ibm.com>
1859
1860 * config/rs6000/rs6000.c (rs6000_option_override_internal): Don't
1861 force flag_ira_loop_pressure if set via command line.
1862
1863 2014-01-23 Alex Velenko <Alex.Velenko@arm.com>
1864
1865 * config/aarch64/aarch64-simd-builtins.def (ashr): DI mode removed.
1866 (ashr_simd): New builtin handling DI mode.
1867 * config/aarch64/aarch64-simd.md (aarch64_ashr_simddi): New pattern.
1868 (aarch64_sshr_simddi): New match pattern.
1869 * config/aarch64/arm_neon.h (vshr_n_s32): Builtin call modified.
1870 (vshrd_n_s64): Likewise.
1871 * config/aarch64/predicates.md (aarch64_shift_imm64_di): New predicate.
1872
1873 2014-01-23 Nick Clifton <nickc@redhat.com>
1874
1875 * config/msp430/msp430.h (ASM_SPEC): Pass the -mcpu as -mcpu.
1876 (LIB_SPEC): Drop use of memory.ld and peripherals.ld scripts in
1877 favour of mcu specific scripts.
1878 * config/msp430/t-msp430 (MULTILIB_MATCHES): Add more matches for
1879 430x multilibs.
1880
1881 2014-01-23 James Greenhalgh <james.greenhalgh@arm.com>
1882 Alex Velenko <Alex.Velenko@arm.com>
1883
1884 * config/aarch64/arm_neon.h (vaddv_s8): __LANE0 cleanup.
1885 (vaddv_s16): Likewise.
1886 (vaddv_s32): Likewise.
1887 (vaddv_u8): Likewise.
1888 (vaddv_u16): Likewise.
1889 (vaddv_u32): Likewise.
1890 (vaddvq_s8): Likewise.
1891 (vaddvq_s16): Likewise.
1892 (vaddvq_s32): Likewise.
1893 (vaddvq_s64): Likewise.
1894 (vaddvq_u8): Likewise.
1895 (vaddvq_u16): Likewise.
1896 (vaddvq_u32): Likewise.
1897 (vaddvq_u64): Likewise.
1898 (vaddv_f32): Likewise.
1899 (vaddvq_f32): Likewise.
1900 (vaddvq_f64): Likewise.
1901 (vmaxv_f32): Likewise.
1902 (vmaxv_s8): Likewise.
1903 (vmaxv_s16): Likewise.
1904 (vmaxv_s32): Likewise.
1905 (vmaxv_u8): Likewise.
1906 (vmaxv_u16): Likewise.
1907 (vmaxv_u32): Likewise.
1908 (vmaxvq_f32): Likewise.
1909 (vmaxvq_f64): Likewise.
1910 (vmaxvq_s8): Likewise.
1911 (vmaxvq_s16): Likewise.
1912 (vmaxvq_s32): Likewise.
1913 (vmaxvq_u8): Likewise.
1914 (vmaxvq_u16): Likewise.
1915 (vmaxvq_u32): Likewise.
1916 (vmaxnmv_f32): Likewise.
1917 (vmaxnmvq_f32): Likewise.
1918 (vmaxnmvq_f64): Likewise.
1919 (vminv_f32): Likewise.
1920 (vminv_s8): Likewise.
1921 (vminv_s16): Likewise.
1922 (vminv_s32): Likewise.
1923 (vminv_u8): Likewise.
1924 (vminv_u16): Likewise.
1925 (vminv_u32): Likewise.
1926 (vminvq_f32): Likewise.
1927 (vminvq_f64): Likewise.
1928 (vminvq_s8): Likewise.
1929 (vminvq_s16): Likewise.
1930 (vminvq_s32): Likewise.
1931 (vminvq_u8): Likewise.
1932 (vminvq_u16): Likewise.
1933 (vminvq_u32): Likewise.
1934 (vminnmv_f32): Likewise.
1935 (vminnmvq_f32): Likewise.
1936 (vminnmvq_f64): Likewise.
1937
1938 2014-01-23 James Greenhalgh <james.greenhalgh@arm.com>
1939
1940 * config/aarch64/aarch64-simd.md
1941 (aarch64_dup_lane<mode>): Correct lane number on big-endian.
1942 (aarch64_dup_lane_<vswap_widthi_name><mode>): Likewise.
1943 (*aarch64_mul3_elt<mode>): Likewise.
1944 (*aarch64_mul3_elt<vswap_width_name><mode>): Likewise.
1945 (*aarch64_mul3_elt_to_64v2df): Likewise.
1946 (*aarch64_mla_elt<mode>): Likewise.
1947 (*aarch64_mla_elt_<vswap_width_name><mode>): Likewise.
1948 (*aarch64_mls_elt<mode>): Likewise.
1949 (*aarch64_mls_elt_<vswap_width_name><mode>): Likewise.
1950 (*aarch64_fma4_elt<mode>): Likewise.
1951 (*aarch64_fma4_elt_<vswap_width_name><mode>): Likewise.
1952 (*aarch64_fma4_elt_to_64v2df): Likewise.
1953 (*aarch64_fnma4_elt<mode>): Likewise.
1954 (*aarch64_fnma4_elt_<vswap_width_name><mode>): Likewise.
1955 (*aarch64_fnma4_elt_to_64v2df): Likewise.
1956 (aarch64_sq<r>dmulh_lane<mode>): Likewise.
1957 (aarch64_sq<r>dmulh_laneq<mode>): Likewise.
1958 (aarch64_sqdml<SBINQOPS:as>l_lane<mode>_internal): Likewise.
1959 (aarch64_sqdml<SBINQOPS:as>l_lane<mode>_internal): Likewise.
1960 (aarch64_sqdml<SBINQOPS:as>l2_lane<mode>_internal): Likewise.
1961 (aarch64_sqdmull_lane<mode>_internal): Likewise.
1962 (aarch64_sqdmull2_lane<mode>_internal): Likewise.
1963
1964 2013-01-23 Alex Velenko <Alex.Velenko@arm.com>
1965
1966 * config/aarch64/aarch64-simd.md
1967 (aarch64_be_checked_get_lane<mode>): New define_expand.
1968 * config/aarch64/aarch64-simd-builtins.def
1969 (BUILTIN_VALL (GETLANE, be_checked_get_lane, 0)):
1970 New builtin definition.
1971 * config/aarch64/arm_neon.h: (__aarch64_vget_lane_any):
1972 Use new safe be builtin.
1973
1974 2014-01-23 Alex Velenko <Alex.Velenko@arm.com>
1975
1976 * config/aarch64/aarch64-simd.md (aarch64_be_ld1<mode>):
1977 New define_insn.
1978 (aarch64_be_st1<mode>): Likewise.
1979 (aarch_ld1<VALL:mode>): Define_expand modified.
1980 (aarch_st1<VALL:mode>): Likewise.
1981 * config/aarch64/aarch64.md (UNSPEC_LD1): New unspec definition.
1982 (UNSPEC_ST1): Likewise.
1983
1984 2014-01-23 David Holsgrove <david.holsgrove@xilinx.com>
1985
1986 * config/microblaze/microblaze.md: Add trap insn and attribute
1987
1988 2014-01-23 Dodji Seketeli <dodji@redhat.com>
1989
1990 PR preprocessor/58580
1991 * input.h (location_get_source_line): Take an additional line_size
1992 parameter.
1993 (void diagnostics_file_cache_fini): Declare new function.
1994 * input.c (struct fcache): New type.
1995 (fcache_tab_size, fcache_buffer_size, fcache_line_record_size):
1996 New static constants.
1997 (diagnostic_file_cache_init, total_lines_num)
1998 (lookup_file_in_cache_tab, evicted_cache_tab_entry)
1999 (add_file_to_cache_tab, lookup_or_add_file_to_cache_tab)
2000 (needs_read, needs_grow, maybe_grow, read_data, maybe_read_data)
2001 (get_next_line, read_next_line, goto_next_line, read_line_num):
2002 New static function definitions.
2003 (diagnostic_file_cache_fini): New function.
2004 (location_get_source_line): Take an additional output line_len
2005 parameter. Re-write using lookup_or_add_file_to_cache_tab and
2006 read_line_num.
2007 * diagnostic.c (diagnostic_finish): Call
2008 diagnostic_file_cache_fini.
2009 (adjust_line): Take an additional input parameter for the length
2010 of the line, rather than calculating it with strlen.
2011 (diagnostic_show_locus): Adjust the use of
2012 location_get_source_line and adjust_line with respect to their new
2013 signature. While displaying a line now, do not stop at the first
2014 null byte. Rather, display the zero byte as a space and keep
2015 going until we reach the size of the line.
2016 * Makefile.in: Add vec.o to OBJS-libcommon
2017
2018 2014-01-23 Kirill Yukhin <kirill.yukhin@intel.com>
2019 Ilya Tocar <ilya.tocar@intel.com>
2020
2021 * config/i386/avx512fintrin.h (_mm512_kmov): New.
2022 * config/i386/i386.c (IX86_BUILTIN_KMOV16): Ditto.
2023 (__builtin_ia32_kmov16): Ditto.
2024 * config/i386/i386.md (UNSPEC_KMOV): New.
2025 (kmovw): Ditto.
2026
2027 2014-01-23 Kirill Yukhin <kirill.yukhin@intel.com>
2028
2029 * config/i386/avx512fintrin.h (_mm512_loadu_si512): Rename.
2030 (_mm512_storeu_si512): Ditto.
2031
2032 2014-01-23 Richard Sandiford <rdsandiford@googlemail.com>
2033
2034 PR target/52125
2035 * rtl.h (get_referenced_operands): Declare.
2036 * recog.c (get_referenced_operands): New function.
2037 * config/mips/mips.c (mips_reorg_process_insns): Check which asm
2038 operands have been referenced when recording LO_SUM references.
2039
2040 2014-01-22 David Holsgrove <david.holsgrove@xilinx.com>
2041
2042 * config/microblaze/microblaze.md: Correct bswaphi2 insn.
2043
2044 2014-01-22 Jan Hubicka <hubicka@ucw.cz>
2045
2046 * config/i386/x86-tune.def (X86_TUNE_ACCUMULATE_OUTGOING_ARGS):
2047 Enable for generic and recent AMD targets.
2048
2049 2014-01-22 Jan Hubicka <hubicka@ucw.cz>
2050
2051 * combine-stack-adj.c (combine_stack_adjustments_for_block): Remove
2052 ARG_SIZE note when adjustment was eliminated.
2053
2054 2014-01-22 Jeff Law <law@redhat.com>
2055
2056 PR tree-optimization/59597
2057 * tree-ssa-threadupdate.c (dump_jump_thread_path): Move to earlier
2058 in file. Accept new argument REGISTERING and use it to modify
2059 dump output appropriately.
2060 (register_jump_thread): Corresponding changes.
2061 (mark_threaded_blocks): Reinstate code to cancel unprofitable
2062 thread paths involving joiner blocks. Add code to dump cancelled
2063 jump threading paths.
2064
2065 2014-01-22 Vladimir Makarov <vmakarov@redhat.com>
2066
2067 PR rtl-optimization/59477
2068 * lra-constraints.c (inherit_in_ebb): Process call for living hard
2069 regs. Update reloads_num and potential_reload_hard_regs for all insns.
2070
2071 2014-01-22 Tom Tromey <tromey@redhat.com>
2072
2073 * config/i386/i386-interix.h (i386_pe_unique_section): Don't use
2074 PARAMS.
2075 * config/cr16/cr16-protos.h (notice_update_cc): Don't use PARAMS.
2076
2077 2014-01-21 Vladimir Makarov <vmakarov@redhat.com>
2078
2079 PR rtl-optimization/59896
2080 * lra-constraints.c (process_alt_operands): Check unused note for
2081 matched operands of insn with no output reloads.
2082
2083 2014-01-21 Richard Sandiford <rdsandiford@googlemail.com>
2084
2085 * config/mips/mips.c (mips_move_to_gpr_cost): Add M16_REGS case.
2086 (mips_move_from_gpr_cost): Likewise.
2087
2088 2014-01-21 Vladimir Makarov <vmakarov@redhat.com>
2089
2090 PR rtl-optimization/59858
2091 * lra-constraints.c (SMALL_REGISTER_CLASS_P): Use
2092 ira_class_hard_regs_num.
2093 (process_alt_operands): Increase reject for dying matched operand.
2094
2095 2014-01-21 Jakub Jelinek <jakub@redhat.com>
2096
2097 PR target/59003
2098 * config/i386/i386.c (expand_small_movmem_or_setmem): If mode is
2099 smaller than size, perform several stores or loads and stores
2100 at dst + count - size to store or copy all of size bytes, rather
2101 than just last modesize bytes.
2102
2103 2014-01-20 DJ Delorie <dj@redhat.com>
2104
2105 * config/rl78/rl78.c (rl78_propogate_register_origins): Verify
2106 that CLOBBERs are REGs before propogating their values.
2107
2108 2014-01-20 H.J. Lu <hongjiu.lu@intel.com>
2109
2110 PR middle-end/59789
2111 * cgraph.c (cgraph_inline_failed_string): Add type to DEFCIFCODE.
2112 (cgraph_inline_failed_type): New function.
2113 * cgraph.h (DEFCIFCODE): Add type.
2114 (cgraph_inline_failed_type_t): New enum.
2115 (cgraph_inline_failed_type): New prototype.
2116 * cif-code.def: Add CIF_FINAL_NORMAL to OK, FUNCTION_NOT_CONSIDERED,
2117 FUNCTION_NOT_OPTIMIZED, REDEFINED_EXTERN_INLINE,
2118 FUNCTION_NOT_INLINE_CANDIDATE, LARGE_FUNCTION_GROWTH_LIMIT,
2119 LARGE_STACK_FRAME_GROWTH_LIMIT, MAX_INLINE_INSNS_SINGLE_LIMIT,
2120 MAX_INLINE_INSNS_AUTO_LIMIT, INLINE_UNIT_GROWTH_LIMIT,
2121 RECURSIVE_INLINING, UNLIKELY_CALL, NOT_DECLARED_INLINED,
2122 OPTIMIZING_FOR_SIZE, ORIGINALLY_INDIRECT_CALL,
2123 INDIRECT_UNKNOWN_CALL, USES_COMDAT_LOCAL.
2124 Add CIF_FINAL_ERROR to UNSPECIFIED, BODY_NOT_AVAILABLE,
2125 FUNCTION_NOT_INLINABLE, OVERWRITABLE, MISMATCHED_ARGUMENTS,
2126 EH_PERSONALITY, NON_CALL_EXCEPTIONS, TARGET_OPTION_MISMATCH,
2127 OPTIMIZATION_MISMATCH.
2128 * tree-inline.c (expand_call_inline): Emit errors during
2129 early_inlining if cgraph_inline_failed_type returns CIF_FINAL_ERROR.
2130
2131 2014-01-20 Uros Bizjak <ubizjak@gmail.com>
2132
2133 PR target/59685
2134 * config/i386/sse.md (*andnot<mode>3<mask_name>): Handle MODE_V16SF
2135 mode attribute in insn output.
2136
2137 2014-01-20 Eric Botcazou <ebotcazou@adacore.com>
2138
2139 * output.h (output_constant): Delete.
2140 * varasm.c (output_constant): Make private.
2141
2142 2014-01-20 Alex Velenko <Alex.Velenko@arm.com>
2143
2144 * config/aarch64/aarch64-simd.md (vec_perm<mode>): Add BE check.
2145
2146 2014-01-20 Jakub Jelinek <jakub@redhat.com>
2147
2148 PR middle-end/59860
2149 * tree.h (fold_builtin_strcat): New prototype.
2150 * builtins.c (fold_builtin_strcat): No longer static. Add len
2151 argument, if non-NULL, don't call c_strlen. Optimize
2152 directly into __builtin_memcpy instead of __builtin_strcpy.
2153 (fold_builtin_2): Adjust fold_builtin_strcat caller.
2154 * gimple-fold.c (gimple_fold_builtin): Handle BUILT_IN_STRCAT.
2155
2156 2014-01-20 Uros Bizjak <ubizjak@gmail.com>
2157
2158 * config/i386/i386.c (ix86_avoid_lea_for_addr): Return false
2159 for SImode_address_operand operands, having only a REG argument.
2160
2161 2014-01-20 Marcus Shawcroft <marcus.shawcroft@arm.com>
2162
2163 * config/aarch64/aarch64-linux.h (GLIBC_DYNAMIC_LINKER): Expand
2164 loader name using mbig-endian.
2165 (LINUX_TARGET_LINK_SPEC): Pass linker -m flag.
2166
2167 2014-01-20 James Greenhalgh <james.greenhalgh@arm.com>
2168
2169 * doc/invoke.texi (-march): Clarify documentation for AArch64.
2170 (-mtune): Likewise.
2171 (-mcpu): Likewise.
2172
2173 2014-01-20 Tejas Belagod <tejas.belagod@arm.com>
2174
2175 * config/aarch64/aarch64-protos.h
2176 (aarch64_cannot_change_mode_class_ptr): Declare.
2177 * config/aarch64/aarch64.c (aarch64_cannot_change_mode_class,
2178 aarch64_cannot_change_mode_class_ptr): New.
2179 * config/aarch64/aarch64.h (CANNOT_CHANGE_MODE_CLASS): Change to call
2180 backend hook aarch64_cannot_change_mode_class.
2181
2182 2014-01-20 James Greenhalgh <james.greenhalgh@arm.com>
2183
2184 * common/config/aarch64/aarch64-common.c
2185 (aarch64_handle_option): Don't handle any option order logic here.
2186 * config/aarch64/aarch64.c (aarch64_parse_arch): Do not override
2187 selected_cpu, warn on architecture version mismatch.
2188 (aarch64_override_options): Fix parsing order for option strings.
2189
2190 2014-01-20 Jan-Benedict Glaw <jbglaw@lug-owl.de>
2191 Iain Sandoe <iain@codesourcery.com>
2192
2193 PR bootstrap/59496
2194 * config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Fix unused variable
2195 warning. Amend comment to reflect current functionality.
2196
2197 2014-01-20 Richard Biener <rguenther@suse.de>
2198
2199 PR middle-end/59860
2200 * builtins.c (fold_builtin_strcat): Remove case better handled
2201 by tree-ssa-strlen.c.
2202
2203 2014-01-20 Alan Lawrence <alan.lawrence@arm.com>
2204
2205 * config/aarch64/aarch64.opt
2206 (mcpu, march, mtune): Make case-insensitive.
2207
2208 2014-01-20 Jakub Jelinek <jakub@redhat.com>
2209
2210 PR target/59880
2211 * config/i386/i386.c (ix86_avoid_lea_for_addr): Return false
2212 if operands[1] is a REG or ZERO_EXTEND of a REG.
2213
2214 2014-01-19 Jan Hubicka <hubicka@ucw.cz>
2215
2216 * varasm.c (compute_reloc_for_constant): Use targetm.binds_local_p.
2217
2218 2014-01-19 John David Anglin <danglin@gcc.gnu.org>
2219
2220 * config/pa/pa.c (pa_attr_length_millicode_call): Correct length of
2221 long non-pic millicode calls.
2222
2223 2014-01-19 Jan-Benedict Glaw <jbglaw@lug-owl.de>
2224
2225 * config/vax/vax.h (FUNCTION_ARG_REGNO_P): Fix unused variable warning.
2226
2227 2014-01-19 Kito Cheng <kito@0xlab.org>
2228
2229 * builtins.c (expand_movstr): Check movstr expand done or fail.
2230
2231 2014-01-18 Uros Bizjak <ubizjak@gmail.com>
2232 H.J. Lu <hongjiu.lu@intel.com>
2233
2234 PR target/59379
2235 * config/i386/i386.md (*lea<mode>): Zero-extend return register
2236 to DImode for zero-extended addresses.
2237
2238 2014-01-19 Jakub Jelinek <jakub@redhat.com>
2239
2240 PR rtl-optimization/57763
2241 * bb-reorder.c (fix_crossing_unconditional_branches): Set JUMP_LABEL
2242 on the new indirect jump_insn and increment LABEL_NUSES (label).
2243
2244 2014-01-18 H.J. Lu <hongjiu.lu@intel.com>
2245
2246 PR bootstrap/59580
2247 PR bootstrap/59583
2248 * config.gcc (x86_archs): New variable.
2249 (x86_64_archs): Likewise.
2250 (x86_cpus): Likewise.
2251 Use $x86_archs, $x86_64_archs and $x86_cpus to check valid
2252 --with-arch/--with-cpu= options.
2253 Support --with-arch=/--with-cpu={nehalem,westmere,
2254 sandybridge,ivybridge,haswell,broadwell,bonnell,silvermont}.
2255
2256 2014-01-18 Uros Bizjak <ubizjak@gmail.com>
2257
2258 * config/i386/i386.c (ix86_adjust_cost): Reorder PROCESSOR_K8
2259 and PROCESSOR_ATHLON to simplify code. Move "memory" calculation.
2260
2261 2014-01-18 Uros Bizjak <ubizjak@gmail.com>
2262
2263 * config/i386/i386.md (*swap<mode>): Rename from swap<mode>.
2264
2265 2014-01-18 Jakub Jelinek <jakub@redhat.com>
2266
2267 PR target/58944
2268 * config/i386/i386-c.c (ix86_pragma_target_parse): Temporarily
2269 clear cpp_get_options (parse_in)->warn_unused_macros for
2270 ix86_target_macros_internal with cpp_define.
2271
2272 2014-01-18 Richard Sandiford <rdsandiford@googlemail.com>
2273
2274 * jump.c (delete_related_insns): Keep (use (insn))s.
2275 * reorg.c (redundant_insn): Check for barriers too.
2276
2277 2014-01-17 H.J. Lu <hongjiu.lu@intel.com>
2278
2279 * config/i386/i386.c (ix86_split_lea_for_addr): Fix a comment typo.
2280
2281 2014-01-17 John David Anglin <danglin@gcc.gnu.org>
2282
2283 * config/pa/pa.c (pa_attr_length_indirect_call): Don't output a short
2284 call to $$dyncall when TARGET_LONG_CALLS is true.
2285
2286 2014-01-17 Jeff Law <law@redhat.com>
2287
2288 * ree.c (combine_set_extension): Temporarily disable test for
2289 changing number of hard registers.
2290
2291 2014-01-17 Jan Hubicka <hubicka@ucw.cz>
2292
2293 PR middle-end/58125
2294 * ipa-inline-analysis.c (inline_free_summary):
2295 Do not free summary of aliases.
2296
2297 2014-01-17 Jakub Jelinek <jakub@redhat.com>
2298
2299 PR middle-end/59706
2300 * gimplify.c (gimplify_expr): Use create_tmp_var
2301 instead of create_tmp_var_raw. If cond doesn't have
2302 integral type, don't add the IFN_ANNOTATE builtin at all.
2303
2304 2014-01-17 Martin Jambor <mjambor@suse.cz>
2305
2306 PR ipa/59736
2307 * ipa-cp.c (prev_edge_clone): New variable.
2308 (grow_next_edge_clone_vector): Renamed to grow_edge_clone_vectors.
2309 Also resize prev_edge_clone vector.
2310 (ipcp_edge_duplication_hook): Also update prev_edge_clone.
2311 (ipcp_edge_removal_hook): New function.
2312 (ipcp_driver): Register ipcp_edge_removal_hook.
2313
2314 2014-01-17 Andrew Pinski <apinski@cavium.com>
2315 Steve Ellcey <sellcey@mips.com>
2316
2317 PR target/59462
2318 * config/mips/mips.c (mips_print_operand): Check operand mode instead
2319 of operator mode.
2320
2321 2014-01-17 Jeff Law <law@redhat.com>
2322
2323 PR middle-end/57904
2324 * passes.def: Reorder pass_copy_prop, pass_unrolli, pass_ccp sequence
2325 so that pass_ccp runs first.
2326
2327 2014-01-17 H.J. Lu <hongjiu.lu@intel.com>
2328
2329 * config/i386/i386.c (ix86_lea_outperforms): Use TARGET_XXX.
2330 (ix86_adjust_cost): Use !TARGET_XXX.
2331 (do_reorder_for_imul): Likewise.
2332 (swap_top_of_ready_list): Likewise.
2333 (ix86_sched_reorder): Likewise.
2334
2335 2014-01-17 H.J. Lu <hongjiu.lu@intel.com>
2336
2337 * config/i386/i386-c.c (ix86_target_macros_internal): Handle
2338 PROCESSOR_INTEL. Treat like PROCESSOR_GENERIC.
2339 * config/i386/i386.c (intel_memcpy): New. Duplicate slm_memcpy.
2340 (intel_memset): New. Duplicate slm_memset.
2341 (intel_cost): New. Duplicate slm_cost.
2342 (m_INTEL): New macro.
2343 (processor_target_table): Add "intel".
2344 (ix86_option_override_internal): Replace PROCESSOR_SILVERMONT
2345 with PROCESSOR_INTEL for "intel".
2346 (ix86_lea_outperforms): Support PROCESSOR_INTEL. Duplicate
2347 PROCESSOR_SILVERMONT.
2348 (ix86_issue_rate): Likewise.
2349 (ix86_adjust_cost): Likewise.
2350 (ia32_multipass_dfa_lookahead): Likewise.
2351 (swap_top_of_ready_list): Likewise.
2352 (ix86_sched_reorder): Likewise.
2353 (ix86_avoid_lea_for_addr): Check TARGET_AVOID_LEA_FOR_ADDR
2354 instead of TARGET_OPT_AGU.
2355 * config/i386/i386.h (TARGET_INTEL): New.
2356 (TARGET_AVOID_LEA_FOR_ADDR): Likewise.
2357 (processor_type): Add PROCESSOR_INTEL.
2358 * config/i386/x86-tune.def: Support m_INTEL. Duplicate m_SILVERMONT.
2359 Add X86_TUNE_AVOID_LEA_FOR_ADDR.
2360
2361 2014-01-17 Marek Polacek <polacek@redhat.com>
2362
2363 PR c/58346
2364 * gimple-fold.c (fold_array_ctor_reference): Don't fold if element
2365 size is zero.
2366
2367 2014-01-17 Richard Biener <rguenther@suse.de>
2368
2369 PR tree-optimization/46590
2370 * opts.c (default_options_table): Add entries for
2371 OPT_fbranch_count_reg, OPT_fmove_loop_invariants and OPT_ftree_pta,
2372 all enabled at -O1 but not for -Og.
2373 * common.opt (fbranch-count-reg): Remove Init(1).
2374 (fmove-loop-invariants): Likewise.
2375 (ftree-pta): Likewise.
2376
2377 2014-01-17 Jakub Jelinek <jakub@redhat.com>
2378
2379 * config/i386/i386.c (ix86_data_alignment): For compatibility with
2380 (incorrect) GCC 4.8 and earlier alignment assumptions ensure we align
2381 decls to at least the GCC 4.8 used alignments.
2382
2383 PR fortran/59440
2384 * tree-nested.c (convert_nonlocal_reference_stmt,
2385 convert_local_reference_stmt): For NAMELIST_DECLs in gimple_bind_vars
2386 of GIMPLE_BIND stmts, adjust associated decls.
2387
2388 2014-01-17 Richard Biener <rguenther@suse.de>
2389
2390 PR tree-optimization/46590
2391 * vec.h (vec<>::bseach): New member function implementing
2392 binary search according to C89 bsearch.
2393 (vec<>::qsort): Avoid calling ::qsort for vectors with sizes 0 or 1.
2394 * tree-ssa-loop-im.c (struct mem_ref): Make stored member a
2395 bitmap pointer again. Make accesses_in_loop a flat array.
2396 (mem_ref_obstack): New global.
2397 (outermost_indep_loop): Adjust for mem_ref->stored changes.
2398 (mark_ref_stored): Likewise.
2399 (ref_indep_loop_p_2): Likewise.
2400 (set_ref_stored_in_loop): New helper function.
2401 (mem_ref_alloc): Allocate mem_refs on the mem_ref_obstack obstack.
2402 (memref_free): Adjust.
2403 (record_mem_ref_loc): Simplify.
2404 (gather_mem_refs_stmt): Adjust.
2405 (sort_locs_in_loop_postorder_cmp): New function.
2406 (analyze_memory_references): Sort accesses_in_loop after
2407 loop postorder number.
2408 (find_ref_loc_in_loop_cmp): New function.
2409 (for_all_locs_in_loop): Find relevant cluster of locs in
2410 accesses_in_loop and iterate without recursion.
2411 (execute_sm): Avoid uninit warning.
2412 (struct ref_always_accessed): Simplify.
2413 (ref_always_accessed::operator ()): Likewise.
2414 (ref_always_accessed_p): Likewise.
2415 (tree_ssa_lim_initialize): Initialize mem_ref_obstack, compute
2416 loop postorder numbers here.
2417 (tree_ssa_lim_finalize): Free mem_ref_obstack and loop postorder
2418 numbers.
2419
2420 2014-01-17 Jan Hubicka <hubicka@ucw.cz>
2421
2422 PR c++/57945
2423 * passes.c (rest_of_decl_compilation): Don't call varpool_finalize_decl
2424 on decls for which assemble_alias has been called.
2425
2426 2014-01-17 Nick Clifton <nickc@redhat.com>
2427
2428 * config/msp430/msp430.opt: (mcpu): New option.
2429 * config/msp430/msp430.c (msp430_mcu_name): Use target_mcu.
2430 (msp430_option_override): Parse target_cpu. If the MCU name
2431 matches a generic string, clear target_mcu.
2432 (msp430_attr): Allow numeric interrupt values up to 63.
2433 (msp430_expand_epilogue): No longer invert operand 1 of gen_popm.
2434 * config/msp430/msp430.h (ASM_SPEC): Convert -mcpu into a -mmcu
2435 option.
2436 * config/msp430/t-msp430: (MULTILIB_MATCHES): Remove mcu matches.
2437 Add mcpu matches.
2438 * config/msp430/msp430.md (popm): Use %J rather than %I.
2439 (addsi3): Use msp430_nonimmediate_operand for operand 2.
2440 (addhi_cy_i): Use immediate_operand for operand 2.
2441 * doc/invoke.texi: Document -mcpu option.
2442
2443 2014-01-17 Richard Biener <rguenther@suse.de>
2444
2445 PR rtl-optimization/38518
2446 * df.h (df_analyze_loop): Declare.
2447 * df-core.c: Include cfgloop.h.
2448 (df_analyze_1): Split out main part of df_analyze.
2449 (df_analyze): Adjust.
2450 (loop_inverted_post_order_compute): New function.
2451 (loop_post_order_compute): Likewise.
2452 (df_analyze_loop): New function avoiding whole-function
2453 postorder computes.
2454 * loop-invariant.c (find_defs): Use df_analyze_loop.
2455 (find_invariants): Adjust.
2456 * loop-iv.c (iv_analysis_loop_init): Use df_analyze_loop.
2457
2458 2014-01-17 Zhenqiang Chen <zhenqiang.chen@arm.com>
2459
2460 * config/arm/arm.c (arm_v7m_tune): Set max_insns_skipped to 2.
2461 (thumb2_final_prescan_insn): Set max to MAX_INSN_PER_IT_BLOCK.
2462
2463 2014-01-16 Ilya Enkovich <ilya.enkovich@intel.com>
2464
2465 * ipa-ref.c (ipa_remove_stmt_references): Fix references
2466 traversal when removing references.
2467
2468 2014-01-16 Jan Hubicka <hubicka@ucw.cz>
2469
2470 PR ipa/59775
2471 * tree.c (get_binfo_at_offset): Look harder for virtual bases.
2472
2473 2014-01-16 Bernd Schmidt <bernds@codesourcery.com>
2474
2475 PR middle-end/56791
2476 * reload.c (find_reloads_address_1): Do not use RELOAD_OTHER when
2477 pushing a reload for an autoinc when we had previously reloaded an
2478 inner part of the address.
2479
2480 2014-01-16 Jakub Jelinek <jakub@redhat.com>
2481
2482 * tree-vectorizer.h (struct _loop_vec_info): Add no_data_dependencies
2483 field.
2484 (LOOP_VINFO_NO_DATA_DEPENDENCIES): Define.
2485 * tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Clear it
2486 when not giving up or versioning for alias only because of
2487 loop->safelen.
2488 (vect_analyze_data_ref_dependences): Set to true.
2489 * tree-vect-stmts.c (hoist_defs_of_uses): Return false if def_stmt
2490 is a GIMPLE_PHI.
2491 (vectorizable_load): Use LOOP_VINFO_NO_DATA_DEPENDENCIES instead of
2492 LOOP_REQUIRES_VERSIONING_FOR_ALIAS, add && !nested_in_vect_loop
2493 to the condition.
2494
2495 PR middle-end/58344
2496 * expr.c (expand_expr_real_1): Handle init == NULL_TREE.
2497
2498 PR target/59839
2499 * config/i386/i386.c (ix86_expand_builtin): If target doesn't satisfy
2500 operand 0 predicate for gathers, use a new pseudo as subtarget.
2501
2502 2014-01-16 Vladimir Makarov <vmakarov@redhat.com>
2503
2504 PR middle-end/59609
2505 * lra-constraints.c (process_alt_operands): Add printing debug info.
2506 Check absence of input/output reloads for matched operands too.
2507
2508 2014-01-16 Vladimir Makarov <vmakarov@redhat.com>
2509
2510 PR rtl-optimization/59835
2511 * ira.c (ira_init_register_move_cost): Increase cost for
2512 impossible modes.
2513
2514 2014-01-16 Alan Lawrence <alan.lawrence@arm.com>
2515
2516 * config/arm/arm.opt (mcpu, march, mtune): Make case-insensitive.
2517
2518 2014-01-16 Richard Earnshaw <rearnsha@arm.com>
2519
2520 PR target/59780
2521 * aarch64.c (aarch64_split_128bit_move): Don't lookup REGNO on
2522 non-register objects. Use gen_(high/low)part more consistently.
2523 Fix assertions.
2524
2525 2014-01-16 Michael Meissner <meissner@linux.vnet.ibm.com>
2526
2527 PR target/59844
2528 * config/rs6000/rs6000.md (reload_vsx_from_gprsf): Add little
2529 endian support, remove tests for WORDS_BIG_ENDIAN.
2530 (p8_mfvsrd_3_<mode>): Likewise.
2531 (reload_gpr_from_vsx<mode>): Likewise.
2532 (reload_gpr_from_vsxsf): Likewise.
2533 (p8_mfvsrd_4_disf): Likewise.
2534
2535 2014-01-16 Richard Biener <rguenther@suse.de>
2536
2537 PR rtl-optimization/46590
2538 * lcm.c (compute_antinout_edge): Use postorder iteration.
2539 (compute_laterin): Use inverted postorder iteration.
2540
2541 2014-01-16 Nick Clifton <nickc@redhat.com>
2542
2543 PR middle-end/28865
2544 * varasm.c (output_constant): Return the number of bytes actually
2545 emitted.
2546 (output_constructor_array_range): Update the field size with the
2547 number of bytes emitted by output_constant.
2548 (output_constructor_regular_field): Likewise. Also do not
2549 complain if the total number of bytes emitted is now greater
2550 than the expected fieldpos.
2551 * output.h (output_constant): Update prototype and descriptive comment.
2552
2553 2014-01-16 Marek Polacek <polacek@redhat.com>
2554
2555 PR middle-end/59827
2556 * cgraph.c (gimple_check_call_args): Don't use DECL_ARG_TYPE if
2557 it is error_mark_node.
2558
2559 2014-01-15 Uros Bizjak <ubizjak@gmail.com>
2560
2561 * config/i386/i386.c (ix86_hard_regno_mode_ok): Use
2562 VALID_AVX256_REG_OR_OI_MODE.
2563
2564 2014-01-15 Pat Haugen <pthaugen@us.ibm.com>
2565
2566 * config/rs6000/rs6000.c (rs6000_output_function_prologue): Check if
2567 current procedure should be profiled.
2568
2569 2014-01-15 Andrew Pinski <apinski@cavium.com>
2570
2571 * config/aarch64/aarch64.c (aarch64_register_move_cost): Correct cost
2572 of moving from/to the STACK_REG register class.
2573
2574 2014-01-15 Richard Henderson <rth@redhat.com>
2575
2576 PR debug/54694
2577 * reginfo.c (global_regs_decl): Globalize.
2578 * rtl.h (global_regs_decl): Declare.
2579 * ira.c (do_reload): Diagnose frame_pointer_needed and it
2580 reserved via global_regs.
2581
2582 2014-01-15 Teresa Johnson <tejohnson@google.com>
2583
2584 * tree-ssa-sccvn.c (visit_reference_op_call): Handle NULL vdef.
2585
2586 2014-01-15 Bill Schmidt <wschmidt@vnet.linux.ibm.com>
2587
2588 * config/rs6000/altivec.md (mulv8hi3): Explicitly generate vmulesh
2589 and vmulosh rather than call gen_vec_widen_smult_*.
2590 (vec_widen_umult_even_v16qi): Test VECTOR_ELT_ORDER_BIG rather
2591 than BYTES_BIG_ENDIAN to determine use of even or odd instruction.
2592 (vec_widen_smult_even_v16qi): Likewise.
2593 (vec_widen_umult_even_v8hi): Likewise.
2594 (vec_widen_smult_even_v8hi): Likewise.
2595 (vec_widen_umult_odd_v16qi): Likewise.
2596 (vec_widen_smult_odd_v16qi): Likewise.
2597 (vec_widen_umult_odd_v8hi): Likewise.
2598 (vec_widen_smult_odd_v8hi): Likewise.
2599 (vec_widen_umult_hi_v16qi): Explicitly generate vmuleub and
2600 vmuloub rather than call gen_vec_widen_umult_*.
2601 (vec_widen_umult_lo_v16qi): Likewise.
2602 (vec_widen_smult_hi_v16qi): Explicitly generate vmulesb and
2603 vmulosb rather than call gen_vec_widen_smult_*.
2604 (vec_widen_smult_lo_v16qi): Likewise.
2605 (vec_widen_umult_hi_v8hi): Explicitly generate vmuleuh and vmulouh
2606 rather than call gen_vec_widen_umult_*.
2607 (vec_widen_umult_lo_v8hi): Likewise.
2608 (vec_widen_smult_hi_v8hi): Explicitly gnerate vmulesh and vmulosh
2609 rather than call gen_vec_widen_smult_*.
2610 (vec_widen_smult_lo_v8hi): Likewise.
2611
2612 2014-01-15 Jeff Law <law@redhat.com>
2613
2614 PR tree-optimization/59747
2615 * ree.c (find_and_remove_re): Properly handle case where a second
2616 eliminated extension requires widening a copy created for elimination
2617 of a prior extension.
2618 (combine_set_extension): Ensure that the number of hard regs needed
2619 for a destination register does not change when we widen it.
2620
2621 2014-01-15 Sebastian Huber <sebastian.huber@embedded-brains.de>
2622
2623 * config.gcc (*-*-rtems*): Add t-rtems to tmake_file.
2624 (arm*-*-uclinux*eabi*): Do not override an existing tmake_file.
2625 (arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtems*): Likwise.
2626 (arm*-*-rtems*): Use t-rtems from existing tmake_file.
2627 (avr-*-rtems*): Likewise.
2628 (bfin*-rtems*): Likewise.
2629 (moxie-*-rtems*): Likewise.
2630 (h8300-*-rtems*): Likewise.
2631 (i[34567]86-*-rtems*): Likewise.
2632 (lm32-*-rtems*): Likewise.
2633 (m32r-*-rtems*): Likewise.
2634 (m68k-*-rtems*): Likewise.
2635 (microblaze*-*-rtems*): Likewise.
2636 (mips*-*-rtems*): Likewise.
2637 (powerpc-*-rtems*): Likewise.
2638 (sh-*-rtems*): Likewise.
2639 (sparc-*-rtems*): Likewise.
2640 (sparc64-*-rtems*): Likewise.
2641 (v850-*-rtems*): Likewise.
2642 (m32c-*-rtems*): Likewise.
2643
2644 2014-01-15 Vladimir Makarov <vmakarov@redhat.com>
2645
2646 PR rtl-optimization/59511
2647 * ira.c (ira_init_register_move_cost): Use memory costs for some
2648 cases of register move cost calculations.
2649 * lra-constraints.c (lra_constraints): Use REG_FREQ_FROM_BB
2650 instead of BB frequency.
2651 * lra-coalesce.c (move_freq_compare_func, lra_coalesce): Ditto.
2652 * lra-assigns.c (find_hard_regno_for): Ditto.
2653
2654 2014-01-15 Richard Biener <rguenther@suse.de>
2655
2656 PR tree-optimization/59822
2657 * tree-vect-stmts.c (hoist_defs_of_uses): New function.
2658 (vectorizable_load): Use it to hoist defs of uses of invariant
2659 loads out of the loop.
2660
2661 2014-01-15 Matthew Gretton-Dann <matthew.gretton-dann@linaro.org>
2662 Kugan Vivekanandarajah <kuganv@linaro.org>
2663
2664 PR target/59695
2665 * config/aarch64/aarch64.c (aarch64_build_constant): Fix incorrect
2666 truncation.
2667
2668 2014-01-15 Richard Biener <rguenther@suse.de>
2669
2670 PR rtl-optimization/59802
2671 * lcm.c (compute_available): Use inverted postorder to seed
2672 the initial worklist.
2673
2674 2014-01-15 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2675
2676 PR target/59803
2677 * config/s390/s390.c (s390_preferred_reload_class): Don't return
2678 ADDR_REGS for invalid symrefs in non-PIC code.
2679
2680 2014-01-15 Jakub Jelinek <jakub@redhat.com>
2681
2682 PR other/58712
2683 * builtins.c (determine_block_size): Initialize *probable_max_size
2684 even if len_rtx is CONST_INT.
2685
2686 2014-01-14 Andrew Pinski <apinski@cavium.com>
2687
2688 * config/aarch64/aarch64-protos.h (tune_params): Add issue_rate.
2689 * config/aarch64/aarch64.c (generic_tunings): Add issue rate of 2.
2690 (cortexa53_tunings): Likewise.
2691 (aarch64_sched_issue_rate): New function.
2692 (TARGET_SCHED_ISSUE_RATE): Define.
2693
2694 2014-01-14 Vladimir Makarov <vmakarov@redhat.com>
2695
2696 * ira-costs.c (find_costs_and_classes): Add missed
2697 ira_init_register_move_cost_if_necessary.
2698
2699 2014-01-14 Vladimir Makarov <vmakarov@redhat.com>
2700
2701 PR target/59787
2702 * config/arm/arm.c (arm_coproc_mem_operand): Add lra_in_progress.
2703
2704 2014-01-14 H.J. Lu <hongjiu.lu@intel.com>
2705
2706 PR target/59794
2707 * config/i386/i386.c (type_natural_mode): Add a bool parameter
2708 to indicate if type is used for function return value. Warn ABI
2709 change if the vector mode isn't available for function return value.
2710 (ix86_function_arg_advance): Pass false to type_natural_mode.
2711 (ix86_function_arg): Likewise.
2712 (ix86_gimplify_va_arg): Likewise.
2713 (function_arg_32): Don't warn ABI change.
2714 (ix86_function_value): Pass true to type_natural_mode.
2715 (ix86_return_in_memory): Likewise.
2716 (ix86_struct_value_rtx): Removed.
2717 (TARGET_STRUCT_VALUE_RTX): Likewise.
2718
2719 2014-01-14 Richard Sandiford <rsandifo@linux.vnet.ibm.com>
2720
2721 * jump.c (redirect_jump_2): Remove REG_CROSSING_JUMP notes when
2722 converting a conditional jump into a conditional return.
2723
2724 2014-01-14 Richard Biener <rguenther@suse.de>
2725
2726 PR tree-optimization/58921
2727 PR tree-optimization/59006
2728 * tree-vect-loop-manip.c (vect_loop_versioning): Remove code
2729 hoisting invariant stmts.
2730 * tree-vect-stmts.c (vectorizable_load): Insert the splat of
2731 invariant loads on the preheader edge if possible.
2732
2733 2014-01-14 Joey Ye <joey.ye@arm.com>
2734
2735 * doc/plugin.texi (Building GCC plugins): Update to C++.
2736
2737 2014-01-14 Kirill Yukhin <kirill.yukhin@intel.com>
2738
2739 * config/i386/avx512erintrin.h (_mm_rcp28_round_sd): New.
2740 (_mm_rcp28_round_ss): Ditto.
2741 (_mm_rsqrt28_round_sd): Ditto.
2742 (_mm_rsqrt28_round_ss): Ditto.
2743 (_mm_rcp28_sd): Ditto.
2744 (_mm_rcp28_ss): Ditto.
2745 (_mm_rsqrt28_sd): Ditto.
2746 (_mm_rsqrt28_ss): Ditto.
2747 * config/i386/avx512fintrin.h (_mm512_stream_load_si512): Ditto.
2748 * config/i386/i386-builtin-types.def (V8DI_FTYPE_PV8DI): Ditto.
2749 * config/i386/i386.c (IX86_BUILTIN_MOVNTDQA512): Ditto.
2750 (IX86_BUILTIN_RCP28SD): Ditto.
2751 (IX86_BUILTIN_RCP28SS): Ditto.
2752 (IX86_BUILTIN_RSQRT28SD): Ditto.
2753 (IX86_BUILTIN_RSQRT28SS): Ditto.
2754 (bdesc_special_args): Define __builtin_ia32_movntdqa512,
2755 __builtin_ia32_rcp28sd_round, __builtin_ia32_rcp28ss_round,
2756 __builtin_ia32_rsqrt28sd_round, __builtin_ia32_rsqrt28ss_round.
2757 (ix86_expand_special_args_builtin): Expand new FTYPE.
2758 * config/i386/sse.md (define_mode_attr "sse4_1_avx2"): Expand to V8DI.
2759 (srcp14<mode>): Make insn unary.
2760 (avx512f_vmscalef<mode><round_name>): Use substed predicate.
2761 (avx512f_sgetexp<mode><round_saeonly_name>): Ditto.
2762 (avx512f_rndscale<mode><round_saeonly_name>): Ditto.
2763 (<sse4_1_avx2>_movntdqa): Extend to 512 bits.
2764 (avx512er_exp2<mode><mask_name><round_saeonly_name>):
2765 Fix rounding: make it SAE only.
2766 (<mask_codefor>avx512er_rcp28<mode><mask_name><round_saeonly_name>):
2767 Ditto.
2768 (<mask_codefor>avx512er_rsqrt28<mode><mask_name><round_saeonly_name>):
2769 Ditto.
2770 (avx512er_vmrcp28<mode><round_saeonly_name>): Ditto.
2771 (avx512er_vmrsqrt28<mode><round_saeonly_name>): Ditto.
2772 (avx512f_getmant<mode><mask_name><round_saeonly_name>): Ditto.
2773 * config/i386/subst.md (round_saeonly_mask_scalar_operand3): Remove.
2774 (round_saeonly_mask_scalar_operand4): Ditto.
2775 (round_saeonly_mask_scalar_op3): Ditto.
2776 (round_saeonly_mask_scalar_op4): Ditto.
2777
2778 2014-01-13 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
2779
2780 * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
2781 Implement -maltivec=be for vec_insert and vec_extract.
2782
2783 2014-01-10 DJ Delorie <dj@redhat.com>
2784
2785 * config/msp430/msp430.md (call_internal): Don't allow memory
2786 references with SP as the base register.
2787 (call_value_internal): Likewise.
2788 * config/msp430/constraints.md (Yc): New. For memory references
2789 that don't use SP as a base register.
2790
2791 * config/msp430/msp430.c (msp430_print_operand): Add 'J' to mean
2792 "an integer without a # prefix"
2793 * config/msp430/msp430.md (epilogue_helper): Use it.
2794
2795 2014-01-13 Jakub Jelinek <jakub@redhat.com>
2796
2797 PR target/59617
2798 * config/i386/i386.c (ix86_vectorize_builtin_gather): Uncomment
2799 AVX512F gather builtins.
2800 * tree-vect-stmts.c (vectorizable_mask_load_store): For now punt
2801 on gather decls with INTEGER_TYPE masktype.
2802 (vectorizable_load): For INTEGER_TYPE masktype, put the INTEGER_CST
2803 directly into the builtin rather than hoisting it before loop.
2804
2805 PR tree-optimization/59387
2806 * tree-scalar-evolution.c: Include gimple-fold.h and gimplify-me.h.
2807 (scev_const_prop): If folded_casts and type has undefined overflow,
2808 use force_gimple_operand instead of force_gimple_operand_gsi and
2809 for each added stmt if it is assign with
2810 arith_code_with_undefined_signed_overflow, call
2811 rewrite_to_defined_overflow.
2812 * tree-ssa-loop-im.c: Don't include gimplify-me.h, include
2813 gimple-fold.h instead.
2814 (arith_code_with_undefined_signed_overflow,
2815 rewrite_to_defined_overflow): Moved to ...
2816 * gimple-fold.c (arith_code_with_undefined_signed_overflow,
2817 rewrite_to_defined_overflow): ... here. No longer static.
2818 Include gimplify-me.h.
2819 * gimple-fold.h (arith_code_with_undefined_signed_overflow,
2820 rewrite_to_defined_overflow): New prototypes.
2821
2822 2014-01-13 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
2823
2824 * config/arm/arm.h (MAX_CONDITIONAL_EXECUTE): Fix typo in description.
2825
2826 2014-01-13 Eric Botcazou <ebotcazou@adacore.com>
2827
2828 * builtins.c (get_object_alignment_2): Minor tweak.
2829 * tree-ssa-loop-ivopts.c (may_be_unaligned_p): Rewrite.
2830
2831 2014-01-13 Christian Bruel <christian.bruel@st.com>
2832
2833 * config/sh/sh-mem.cc (sh_expand_cmpnstr): Unroll small sizes and
2834 optimized non constant lengths.
2835
2836 2014-01-13 Jakub Jelinek <jakub@redhat.com>
2837
2838 PR libgomp/59194
2839 * omp-low.c (expand_omp_atomic_pipeline): Expand the initial
2840 load as __atomic_load_N if possible.
2841
2842 2014-01-11 David Edelsohn <dje.gcc@gmail.com>
2843
2844 * config/rs6000/rs6000.c (rs6000_expand_mtfsf_builtin): Remove
2845 target parameter.
2846 (rs6000_expand_builtin): Adjust call.
2847
2848 2014-01-11 David Edelsohn <dje.gcc@gmail.com>
2849
2850 PR target/58115
2851 * config/rs6000/rs6000.h (SWITCHABLE_TARGET): Define.
2852 * config/rs6000/rs6000.c: Include target-globals.h.
2853 (rs6000_set_current_function): Instead of doing target_reinit
2854 unconditionally, use save_target_globals_default_opts and
2855 restore_target_globals.
2856
2857 * config/rs6000/rs6000-builtin.def (mffs, mtfsf): Add builtins for
2858 FPSCR.
2859 * config/rs6000/rs6000.c (rs6000_expand_mtfsf_builtin): New.
2860 (rs6000_expand_builtin): Handle mffs and mtfsf.
2861 (rs6000_init_builtins): Define mffs and mtfsf.
2862 * config/rs6000/rs6000.md (UNSPECV_MFFS, UNSPECV_MTFSF): New constants.
2863 (rs6000_mffs): New pattern.
2864 (rs6000_mtfsf): New pattern.
2865
2866 2014-01-11 Bin Cheng <bin.cheng@arm.com>
2867
2868 * tree-ssa-loop-ivopts.c (iv_ca_narrow): New parameter.
2869 Start narrowing with START. Apply candidate-use pair
2870 and check overall cost in narrowing.
2871 (iv_ca_prune): Pass new argument.
2872
2873 2014-01-10 Jeff Law <law@redhat.com>
2874
2875 PR middle-end/59743
2876 * ree.c (combine_reaching_defs): Ensure the defining statement
2877 occurs before the extension when optimizing extensions with
2878 different source and destination hard registers.
2879
2880 2014-01-10 Jan Hubicka <hubicka@ucw.cz>
2881
2882 PR ipa/58585
2883 * ipa-devirt.c (build_type_inheritance_graph): Also add types of
2884 vtables into the type inheritance graph.
2885
2886 2014-01-10 Jakub Jelinek <jakub@redhat.com>
2887
2888 PR rtl-optimization/59754
2889 * ree.c (combine_reaching_defs): Disallow !SCALAR_INT_MODE_P
2890 modes in the REGNO != REGNO case.
2891
2892 2014-01-10 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
2893
2894 * config/rs6000/rs6000-builtin.def: Fix pasto for VPKSDUS.
2895
2896 2014-01-10 Jakub Jelinek <jakub@redhat.com>
2897
2898 PR tree-optimization/59745
2899 * tree-predcom.c (tree_predictive_commoning_loop): Call
2900 free_affine_expand_cache if giving up because components is NULL.
2901
2902 * target-globals.c (save_target_globals): Allocate < 4KB structs using
2903 GC in payload of target_globals struct instead of allocating them on
2904 the heap and the larger structs separately using GC.
2905 * target-globals.h (struct target_globals): Make regs, hard_regs,
2906 reload, expmed, ira, ira_int and lra_fields GTY((atomic)) instead
2907 of GTY((skip)) and change type to void *.
2908 (reset_target_globals): Cast loads from those fields to corresponding
2909 types.
2910
2911 2014-01-10 Steve Ellcey <sellcey@mips.com>
2912
2913 PR plugins/59335
2914 * Makefile.in (PLUGIN_HEADERS): Add gimplify.h, gimple-iterator.h,
2915 gimple-ssa.h, fold-const.h, tree-cfg.h, tree-into-ssa.h,
2916 tree-ssanames.h, print-tree.h, varasm.h, and context.h.
2917
2918 2014-01-10 Richard Earnshaw <rearnsha@arm.com>
2919
2920 PR target/59744
2921 * aarch64-modes.def (CC_Zmode): New flags mode.
2922 * aarch64.c (aarch64_select_cc_mode): Only allow NEG when the condition
2923 represents an equality.
2924 (aarch64_get_condition_code): Handle CC_Zmode.
2925 * aarch64.md (compare_neg<mode>): Restrict to equality operations.
2926
2927 2014-01-10 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2928
2929 * config/s390/s390.c (s390_expand_tbegin): Remove jump over CC
2930 extraction in good case.
2931
2932 2014-01-10 Richard Biener <rguenther@suse.de>
2933
2934 PR tree-optimization/59374
2935 * tree-vect-slp.c (vect_slp_analyze_bb_1): Move dependence
2936 checking after SLP discovery. Mark stmts not participating
2937 in any SLP instance properly.
2938
2939 2014-01-10 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
2940
2941 * config/arm/arm.c (arm_new_rtx_costs): Use destination mode
2942 when handling a SET rtx.
2943
2944 2014-01-10 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
2945
2946 * config/arm/arm-cores.def (cortex-a53): Specify FL_CRC32.
2947 (cortex-a57): Likewise.
2948 (cortex-a57.cortex-a53): Likewise. Remove redundant flags.
2949
2950 2014-01-10 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
2951
2952 * config/arm/arm.c (arm_init_iwmmxt_builtins): Skip
2953 non-iwmmxt builtins.
2954
2955 2014-01-10 Jan Hubicka <hubicka@ucw.cz>
2956
2957 PR ipa/58252
2958 PR ipa/59226
2959 * ipa-devirt.c record_target_from_binfo): Take as argument
2960 stack of binfos and lookup matching one for virtual inheritance.
2961 (possible_polymorphic_call_targets_1): Update.
2962
2963 2014-01-10 Huacai Chen <chenhc@lemote.com>
2964
2965 * config/mips/driver-native.c (host_detect_local_cpu): Handle new
2966 kernel strings for Loongson-2E/2F/3A.
2967
2968 2014-01-10 Jakub Jelinek <jakub@redhat.com>
2969
2970 PR middle-end/59670
2971 * tree-vect-data-refs.c (vect_analyze_data_refs): Check
2972 is_gimple_call before calling gimple_call_internal_p.
2973
2974 2014-01-09 Steve Ellcey <sellcey@mips.com>
2975
2976 * Makefile.in (TREE_FLOW_H): Remove.
2977 (TREE_SSA_H): Add file names from tree-flow.h.
2978 * doc/tree-ssa.texi (Annotations): Remove reference to tree-flow.h
2979 * tree.h: Remove tree-flow.h reference.
2980 * hash-table.h: Remove tree-flow.h reference.
2981 * tree-ssa-loop-niter.c (dump_affine_iv): Replace tree-flow.h
2982 reference with tree-ssa-loop.h.
2983
2984 2014-01-09 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
2985
2986 * doc/invoke.texi: Add -maltivec={be,le} options, and document
2987 default element-order behavior for -maltivec.
2988 * config/rs6000/rs6000.opt: Add -maltivec={be,le} options.
2989 * config/rs6000/rs6000.c (rs6000_option_override_internal): Ensure
2990 that -maltivec={le,be} implies -maltivec; disallow -maltivec=le
2991 when targeting big endian, at least for now.
2992 * config/rs6000/rs6000.h: Add #define of VECTOR_ELT_ORDER_BIG.
2993
2994 2014-01-09 Jakub Jelinek <jakub@redhat.com>
2995
2996 PR middle-end/47735
2997 * cfgexpand.c (expand_one_var): For SSA_NAMEs, if the underlying
2998 var satisfies use_register_for_decl, just take into account type
2999 alignment, rather than decl alignment.
3000
3001 PR tree-optimization/59622
3002 * gimple-fold.c (gimple_fold_call): Fix a typo in message. For
3003 __builtin_unreachable replace the OBJ_TYPE_REF call with a call to
3004 __builtin_unreachable and add if needed a setter of the lhs SSA_NAME.
3005 Don't devirtualize for inplace at all. For targets.length () == 1,
3006 if the call is noreturn and cfun isn't in SSA form yet, clear lhs.
3007
3008 2014-01-09 H.J. Lu <hongjiu.lu@intel.com>
3009
3010 * config/i386/i386.md (cpu): Remove the unused btver1.
3011
3012 2014-01-09 H.J. Lu <hongjiu.lu@intel.com>
3013
3014 * gdbasan.in: Put a breakpoint on __sanitizer::Report.
3015
3016 2014-01-09 Jakub Jelinek <jakub@redhat.com>
3017
3018 PR target/58115
3019 * tree-core.h (struct target_globals): New forward declaration.
3020 (struct tree_target_option): Add globals field.
3021 * tree.h (TREE_TARGET_GLOBALS): Define.
3022 (prepare_target_option_nodes_for_pch): New prototype.
3023 * target-globals.h (struct target_globals): Define even if
3024 !SWITCHABLE_TARGET.
3025 * tree.c (prepare_target_option_node_for_pch,
3026 prepare_target_option_nodes_for_pch): New functions.
3027 * config/i386/i386.h (SWITCHABLE_TARGET): Define.
3028 * config/i386/i386.c: Include target-globals.h.
3029 (ix86_set_current_function): Instead of doing target_reinit
3030 unconditionally, use save_target_globals_default_opts and
3031 restore_target_globals.
3032
3033 2014-01-09 Richard Biener <rguenther@suse.de>
3034
3035 PR tree-optimization/59715
3036 * tree-cfg.h (split_critical_edges): Declare.
3037 * tree-cfg.c (split_critical_edges): Export.
3038 * tree-ssa-sink.c (execute_sink_code): Split critical edges.
3039
3040 2014-01-09 Max Ostapenko <m.ostapenko@partner.samsung.com>
3041
3042 * cfgexpand.c (expand_stack_vars): Optionally disable
3043 asan stack protection.
3044 (expand_used_vars): Likewise.
3045 (partition_stack_vars): Likewise.
3046 * asan.c (asan_emit_stack_protection): Optionally disable
3047 after return stack usage.
3048 (instrument_derefs): Optionally disable memory access instrumentation.
3049 (instrument_builtin_call): Likewise.
3050 (instrument_strlen_call): Likewise.
3051 (asan_protect_global): Optionally disable global variables protection.
3052 * doc/invoke.texi: Added doc for new options.
3053 * params.def: Added new options.
3054 * params.h: Likewise.
3055
3056 2014-01-09 Jakub Jelinek <jakub@redhat.com>
3057
3058 PR rtl-optimization/59724
3059 * ifcvt.c (cond_exec_process_if_block): Don't call
3060 flow_find_head_matching_sequence with 0 longest_match.
3061 * cfgcleanup.c (flow_find_head_matching_sequence): Count even
3062 non-active insns if !stop_after.
3063 (try_head_merge_bb): Revert 2014-01-07 changes.
3064
3065 2014-01-08 Jeff Law <law@redhat.com>
3066
3067 * ree.c (get_sub_rtx): New function, extracted from...
3068 (merge_def_and_ext): Here.
3069 (combine_reaching_defs): Use get_sub_rtx.
3070
3071 2014-01-08 Eric Botcazou <ebotcazou@adacore.com>
3072
3073 * cgraph.h (varpool_variable_node): Do not choke on null node.
3074
3075 2014-01-08 Catherine Moore <clm@codesourcery.com>
3076
3077 * config/mips/mips.md (simple_return): Attempt to use JRC
3078 for microMIPS.
3079 * config/mips/mips.h (MIPS_CALL): Attempt to use JALS for microMIPS.
3080
3081 2014-01-08 Richard Sandiford <rdsandiford@googlemail.com>
3082
3083 PR rtl-optimization/59137
3084 * reorg.c (steal_delay_list_from_target): Call update_block for
3085 elided insns.
3086 (steal_delay_list_from_fallthrough, relax_delay_slots): Likewise.
3087
3088 2014-01-08 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
3089
3090 * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Remove
3091 two duplicate entries.
3092
3093 2014-01-08 Richard Sandiford <rdsandiford@googlemail.com>
3094
3095 Revert:
3096 2012-10-07 Richard Sandiford <rdsandiford@googlemail.com>
3097
3098 * config/mips/mips.c (mips_truncated_op_cost): New function.
3099 (mips_rtx_costs): Adjust test for BADDU.
3100 * config/mips/mips.md (*baddu_di<mode>): Push truncates to operands.
3101
3102 2012-10-02 Richard Sandiford <rdsandiford@googlemail.com>
3103
3104 * config/mips/mips.md (*baddu_si_eb, *baddu_si_el): Merge into...
3105 (*baddu_si): ...this new pattern.
3106
3107 2014-01-08 Jakub Jelinek <jakub@redhat.com>
3108
3109 PR ipa/59722
3110 * ipa-prop.c (ipa_analyze_params_uses): Ignore uses in debug stmts.
3111
3112 2014-01-08 Bernd Edlinger <bernd.edlinger@hotmail.de>
3113
3114 PR middle-end/57748
3115 * expr.h (expand_expr_real, expand_expr_real_1): Add new parameter
3116 inner_reference_p.
3117 (expand_expr, expand_normal): Adjust.
3118 * expr.c (expand_expr_real, expand_expr_real_1): Add new parameter
3119 inner_reference_p. Use inner_reference_p to expand inner references.
3120 (store_expr): Adjust.
3121 * cfgexpand.c (expand_call_stmt): Adjust.
3122
3123 2014-01-08 Rong Xu <xur@google.com>
3124
3125 * gcov-io.c (gcov_var): Move from gcov-io.h.
3126 (gcov_position): Ditto.
3127 (gcov_is_error): Ditto.
3128 (gcov_rewrite): Ditto.
3129 * gcov-io.h: Refactor. Move gcov_var to gcov-io.h, and libgcov
3130 only part to libgcc/libgcov.h.
3131
3132 2014-01-08 Marek Polacek <polacek@redhat.com>
3133
3134 PR middle-end/59669
3135 * omp-low.c (simd_clone_adjust): Don't crash if def is NULL.
3136
3137 2014-01-08 Marek Polacek <polacek@redhat.com>
3138
3139 PR sanitizer/59667
3140 * ubsan.c (ubsan_type_descriptor): Call strip_array_types on type2.
3141
3142 2014-01-08 Jakub Jelinek <jakub@redhat.com>
3143
3144 PR rtl-optimization/59649
3145 * stor-layout.c (get_mode_bounds): For BImode return
3146 0 and STORE_FLAG_VALUE.
3147
3148 2014-01-08 Richard Biener <rguenther@suse.de>
3149
3150 PR middle-end/59630
3151 * gimple.h (is_gimple_builtin_call): Remove.
3152 (gimple_builtin_call_types_compatible_p): New.
3153 (gimple_call_builtin_p): New overload.
3154 * gimple.c (is_gimple_builtin_call): Remove.
3155 (validate_call): Rename to ...
3156 (gimple_builtin_call_types_compatible_p): ... this and export. Also
3157 check return types.
3158 (validate_type): New static function.
3159 (gimple_call_builtin_p): New overload and adjust.
3160 * gimple-fold.c (gimple_fold_builtin): Fold the return value.
3161 (gimple_fold_call): Likewise. Use gimple_call_builtin_p.
3162 (gimple_fold_stmt_to_constant_1): Likewise.
3163 * tsan.c (instrument_gimple): Use gimple_call_builtin_p.
3164
3165 2014-01-08 Richard Biener <rguenther@suse.de>
3166
3167 PR middle-end/59471
3168 * gimplify.c (gimplify_expr): Gimplify register-register type
3169 VIEW_CONVERT_EXPRs to separate stmts.
3170
3171 2014-01-07 Jeff Law <law@redhat.com>
3172
3173 PR middle-end/53623
3174 * ree.c (combine_set_extension): Handle case where source
3175 and destination registers in an extension insn are different.
3176 (combine_reaching_defs): Allow source and destination registers
3177 in extension to be different under limited circumstances.
3178 (add_removable_extension): Remove restriction that the
3179 source and destination registers in the extension are the same.
3180 (find_and_remove_re): Emit a copy from the extension's
3181 destination to its source after the defining insn if
3182 the source and destination registers are different.
3183
3184 PR middle-end/59285
3185 * ifcvt.c (merge_if_block): If we are merging a block with more than
3186 one successor with a block with no successors, remove any BARRIER
3187 after the second block.
3188
3189 2014-01-07 Dan Xio Qiang <ziyan01@163.com>
3190
3191 * hw-doloop.c (reorg_loops): Release the bitmap obstack.
3192
3193 2014-01-07 John David Anglin <danglin@gcc.gnu.org>
3194
3195 PR target/59652
3196 * config/pa/pa.c (pa_legitimate_address_p): Return false before reload
3197 for 14-bit register offsets when INT14_OK_STRICT is false.
3198
3199 2014-01-07 Roland Stigge <stigge@antcom.de>
3200 Michael Meissner <meissner@linux.vnet.ibm.com>
3201
3202 PR 57386/target
3203 * config/rs6000/rs6000.c (rs6000_legitimate_offset_address_p):
3204 Only check TFmode for SPE constants. Don't check TImode or TDmode.
3205
3206 2014-01-07 James Greenhalgh <james.greenhalgh@arm.com>
3207
3208 * config/aarch64/aarch64-elf.h (ASM_SPEC): Remove identity spec for
3209 -mcpu.
3210
3211 2014-01-07 Yufeng Zhang <yufeng.zhang@arm.com>
3212
3213 * config/arm/arm.c (arm_expand_neon_args): Call expand_expr
3214 with EXPAND_MEMORY for NEON_ARG_MEMORY; check if the returned
3215 rtx is const0_rtx or not.
3216
3217 2014-01-07 Richard Sandiford <rdsandiford@googlemail.com>
3218
3219 PR target/58115
3220 * target-globals.c (save_target_globals): Remove this_fn_optab
3221 handling.
3222 * toplev.c: Include optabs.h.
3223 (target_reinit): Temporarily restore the global options if another
3224 set of options are in force.
3225
3226 2014-01-07 Jakub Jelinek <jakub@redhat.com>
3227
3228 PR rtl-optimization/58668
3229 * cfgcleanup.c (flow_find_cross_jump): Don't count
3230 any jumps if dir_p is NULL. Remove p1 variable, use active_insn_p
3231 to determine what is counted.
3232 (flow_find_head_matching_sequence): Use active_insn_p to determine
3233 what is counted.
3234 (try_head_merge_bb): Adjust for the flow_find_head_matching_sequence
3235 counting change.
3236 * ifcvt.c (count_bb_insns): Use active_insn_p && !JUMP_P to
3237 determine what is counted.
3238
3239 PR tree-optimization/59643
3240 * tree-predcom.c (split_data_refs_to_components): If one dr is
3241 read and one write, determine_offset fails and the write isn't
3242 in the bad component, just put the read into the bad component.
3243
3244 2014-01-07 Mike Stump <mikestump@comcast.net>
3245 Jakub Jelinek <jakub@redhat.com>
3246
3247 PR pch/59436
3248 * tree-core.h (struct tree_optimization_option): Change optabs
3249 type from unsigned char * to void *.
3250 * optabs.c (init_tree_optimization_optabs): Adjust
3251 TREE_OPTIMIZATION_OPTABS initialization.
3252
3253 2014-01-06 Jakub Jelinek <jakub@redhat.com>
3254
3255 PR target/59644
3256 * config/i386/i386.h (struct machine_function): Add
3257 no_drap_save_restore field.
3258 * config/i386/i386.c (ix86_save_reg): Use
3259 !cfun->machine->no_drap_save_restore instead of
3260 crtl->stack_realign_needed.
3261 (ix86_finalize_stack_realign_flags): Don't clear drap_reg unless
3262 this function clears frame_pointer_needed. Set
3263 cfun->machine->no_drap_save_restore if clearing frame_pointer_needed
3264 and DRAP reg is needed.
3265
3266 2014-01-06 Marek Polacek <polacek@redhat.com>
3267
3268 PR c/57773
3269 * doc/implement-c.texi: Mention that other integer types are
3270 permitted as bit-field types in strictly conforming mode.
3271
3272 2014-01-06 Felix Yang <fei.yang0953@gmail.com>
3273
3274 * modulo-sched.c (schedule_reg_moves): Clear distance1_uses if it
3275 is newly allocated.
3276
3277 2014-01-06 Richard Earnshaw <rearnsha@arm.com>
3278
3279 * aarch64.c (aarch64_rtx_costs): Fix cost calculation for MADD.
3280
3281 2014-01-06 Martin Jambor <mjambor@suse.cz>
3282
3283 PR ipa/59008
3284 * ipa-cp.c (ipcp_discover_new_direct_edges): Changed param_index type
3285 to int.
3286 * ipa-prop.c (ipa_print_node_params): Fix indentation.
3287
3288 2014-01-06 Eric Botcazou <ebotcazou@adacore.com>
3289
3290 PR debug/59350
3291 PR debug/59510
3292 * var-tracking.c (add_stores): Preserve the value of the source even if
3293 we don't record the store.
3294
3295 2014-01-06 Terry Guo <terry.guo@arm.com>
3296
3297 * config.gcc (arm*-*-*): Check --with-arch against arm-arches.def.
3298
3299 2014-01-05 Iain Sandoe <iain@codesourcery.com>
3300
3301 PR bootstrap/59541
3302 * config/darwin.c (darwin_function_section): Adjust return values to
3303 correspond to optimisation changes made in r206070.
3304
3305 2014-01-05 Uros Bizjak <ubizjak@gmail.com>
3306
3307 * config/i386/i386.c (ix86_data_alignment): Calculate max_align
3308 from prefetch_block tune setting.
3309 (nocona_cost): Correct size of prefetch block to 64.
3310
3311 2014-01-04 Eric Botcazou <ebotcazou@adacore.com>
3312
3313 * config/arm/arm.c (arm_get_frame_offsets): Revamp long lines.
3314 (arm_expand_epilogue_apcs_frame): Take into account the number of bytes
3315 used to save the static chain register in the computation of the offset
3316 from which the FP registers need to be restored.
3317
3318 2014-01-04 Jakub Jelinek <jakub@redhat.com>
3319
3320 PR tree-optimization/59519
3321 * tree-vect-loop-manip.c (slpeel_update_phi_nodes_for_guard1): Don't
3322 ICE if get_current_def (current_new_name) is already non-NULL, as long
3323 as it is a phi result of some other phi in *new_exit_bb that has
3324 the same argument.
3325
3326 * config/i386/sse.md (avx512f_load<mode>_mask): Emit vmovup{s,d}
3327 or vmovdqu* for misaligned_operand.
3328 (<sse>_loadu<ssemodesuffix><avxsizesuffix><mask_name>,
3329 <sse2_avx_avx512f>_loaddqu<mode><mask_name>): Handle <mask_applied>.
3330 * config/i386/i386.c (ix86_expand_special_args_builtin): Set
3331 aligned_mem for AVX512F masked aligned load and store builtins and for
3332 non-temporal moves.
3333
3334 2014-01-03 Bingfeng Mei <bmei@broadcom.com>
3335
3336 PR tree-optimization/59651
3337 * tree-vect-loop-manip.c (vect_create_cond_for_alias_checks):
3338 Address range for negative step should be added by TYPE_SIZE_UNIT.
3339
3340 2014-01-03 Andreas Schwab <schwab@linux-m68k.org>
3341
3342 * config/m68k/m68k.c (handle_move_double): Handle pushes with
3343 overlapping registers also for registers other than the stack pointer.
3344
3345 2014-01-03 Marek Polacek <polacek@redhat.com>
3346
3347 PR other/59661
3348 * doc/extend.texi: Fix the return value of __builtin_FUNCTION and
3349 __builtin_FILE.
3350
3351 2014-01-03 Jakub Jelinek <jakub@redhat.com>
3352
3353 PR target/59625
3354 * config/i386/i386.c (ix86_avoid_jump_mispredicts): Don't consider
3355 asm goto as jump.
3356
3357 * config/i386/i386.md (MODE_SIZE): New mode attribute.
3358 (push splitter): Use <P:MODE_SIZE> instead of
3359 GET_MODE_SIZE (<P:MODE>mode).
3360 (lea splitter): Use <MODE_SIZE> instead of GET_MODE_SIZE (<MODE>mode).
3361 (mov -1, reg peephole2): Likewise.
3362 * config/i386/sse.md (*mov<mode>_internal,
3363 <sse>_storeu<ssemodesuffix><avxsizesuffix>,
3364 <sse2_avx_avx512f>_storedqu<mode>, <sse>_andnot<mode>3,
3365 *<code><mode>3, *andnot<mode>3<mask_name>,
3366 <mask_codefor><code><mode>3<mask_name>): Likewise.
3367 * config/i386/subst.md (mask_mode512bit_condition,
3368 sd_mask_mode512bit_condition): Likewise.
3369
3370 2014-01-02 Xinliang David Li <davidxl@google.com>
3371
3372 PR tree-optimization/59303
3373 * tree-ssa-uninit.c (is_use_properly_guarded): Main cleanup.
3374 (dump_predicates): Better output format.
3375 (pred_equal_p): New function.
3376 (is_neq_relop_p): Ditto.
3377 (is_neq_zero_form_p): Ditto.
3378 (pred_expr_equal_p): Ditto.
3379 (pred_neg_p): Ditto.
3380 (simplify_pred): Ditto.
3381 (simplify_preds_2): Ditto.
3382 (simplify_preds_3): Ditto.
3383 (simplify_preds_4): Ditto.
3384 (simplify_preds): Ditto.
3385 (push_pred): Ditto.
3386 (push_to_worklist): Ditto.
3387 (get_pred_info_from_cmp): Ditto.
3388 (is_degenerated_phi): Ditto.
3389 (normalize_one_pred_1): Ditto.
3390 (normalize_one_pred): Ditto.
3391 (normalize_one_pred_chain): Ditto.
3392 (normalize_preds): Ditto.
3393 (normalize_cond_1): Remove function.
3394 (normalize_cond): Ditto.
3395 (is_gcond_subset_of): Ditto.
3396 (is_subset_of_any): Ditto.
3397 (is_or_set_subset_of): Ditto.
3398 (is_and_set_subset_of): Ditto.
3399 (is_norm_cond_subset_of): Ditto.
3400 (pred_chain_length_cmp): Ditto.
3401 (convert_control_dep_chain_into_preds): Type change.
3402 (find_predicates): Ditto.
3403 (find_def_preds): Ditto.
3404 (destroy_predicates_vecs): Ditto.
3405 (find_matching_predicates_in_rest_chains): Ditto.
3406 (use_pred_not_overlap_with_undef_path_pred): Ditto.
3407 (is_pred_expr_subset): Ditto.
3408 (is_pred_chain_subset_of): Ditto.
3409 (is_included_in): Ditto.
3410 (is_superset_of): Ditto.
3411
3412 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
3413
3414 Update copyright years.
3415
3416 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
3417
3418 * common/config/arc/arc-common.c, config/arc/arc-modes.def,
3419 config/arc/arc-protos.h, config/arc/arc.c, config/arc/arc.h,
3420 config/arc/arc.md, config/arc/arc.opt,
3421 config/arm/arm_neon_builtins.def, config/arm/crypto.def,
3422 config/i386/avx512cdintrin.h, config/i386/avx512erintrin.h,
3423 config/i386/avx512fintrin.h, config/i386/avx512pfintrin.h,
3424 config/i386/btver2.md, config/i386/shaintrin.h, config/i386/slm.md,
3425 config/linux-protos.h, config/linux.c, config/winnt-c.c,
3426 diagnostic-color.c, diagnostic-color.h, gimple-ssa-isolate-paths.c,
3427 vtable-verify.c, vtable-verify.h: Use the standard form for the
3428 copyright notice.
3429
3430 2014-01-02 Tobias Burnus <burnus@net-b.de>
3431
3432 * gcc.c (process_command): Update copyright notice dates.
3433 * gcov-dump.c: Ditto.
3434 * gcov.c: Ditto.
3435 * doc/cpp.texi: Bump @copying's copyright year.
3436 * doc/cppinternals.texi: Ditto.
3437 * doc/gcc.texi: Ditto.
3438 * doc/gccint.texi: Ditto.
3439 * doc/gcov.texi: Ditto.
3440 * doc/install.texi: Ditto.
3441 * doc/invoke.texi: Ditto.
3442
3443 2014-01-01 Jan-Benedict Glaw <jbglaw@lug-owl.de>
3444
3445 * config/nios2/nios2.h (BITS_PER_UNIT): Don't define it.
3446
3447 2014-01-01 Jakub Jelinek <jakub@redhat.com>
3448
3449 * config/i386/sse.md (*mov<mode>_internal): Guard
3450 EXT_REX_SSE_REGNO_P (REGNO ()) uses with REG_P.
3451
3452 PR rtl-optimization/59647
3453 * cse.c (cse_process_notes_1): Don't substitute negative VOIDmode
3454 new_rtx into UNSIGNED_FLOAT rtxes.
3455 \f
3456 Copyright (C) 2014 Free Software Foundation, Inc.
3457
3458 Copying and distribution of this file, with or without modification,
3459 are permitted in any medium without royalty provided the copyright
3460 notice and this notice are preserved.
This page took 0.184555 seconds and 6 git commands to generate.