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