]>
Commit | Line | Data |
---|---|---|
2d663cb9 CC |
1 | 2012-01-20 Cary Coutant <ccoutant@google.com> |
2 | Dodji Seketeli <dodji@redhat.com> | |
3 | ||
4 | PR debug/45682 | |
5 | * dwarf2out.c (copy_declaration_context): Return ref to parent | |
6 | of declaration DIE, if necessary. | |
7 | (remove_child_or_replace_with_skeleton): Add new parameter; update | |
8 | caller. Place skeleton DIE under parent DIE of original declaration. | |
9 | Move call to copy_declaration_context to here ... | |
10 | (break_out_comdat_types): ... from here. | |
11 | ||
afa73d3a AK |
12 | 2012-01-20 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
13 | ||
14 | PR rtl-optimization/51856 | |
15 | * reload.c (find_reloads_subreg_address): Set the address_reloaded | |
16 | flag to reloaded. | |
17 | ||
3675f54b RR |
18 | 2012-01-20 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> |
19 | ||
20 | PR target/51819 | |
21 | * config/arm/arm.c (arm_print_operand): Correct output of alignment | |
22 | hints for neon loads and stores. | |
23 | ||
542bf446 GJL |
24 | 2012-01-20 Georg-Johann Lay <avr@gjlay.de> |
25 | ||
26 | PR target/49868 | |
27 | PR target/50887 | |
28 | * doc/extend.texi (Named Address Spaces): Split into subsections. | |
29 | (AVR Named Address Spaces): New subsection. | |
30 | (M32C Named Address Spaces): New subsection. | |
31 | (RL78 Named Address Spaces): New subsection. | |
32 | (SPU Named Address Spaces): New subsection. | |
33 | (Variable Attributes): New anchor "AVR Variable Attributes". | |
34 | (AVR Variable Attributes): Rewrite and avoid wording | |
35 | "address space" in this context. | |
36 | * doc/invoke.texi (AVR Options): Rewrite and add documentation | |
37 | for -maccumulate-args, -mbranch-cost=, -mrelax, -mshort-calls. | |
38 | (AVR Built-in Macros): New subsubsection therein. | |
39 | * doc/md.texi (AVR constraints): Remove "C04", "R". | |
40 | ||
a88b3135 RG |
41 | 2012-01-20 Richard Guenther <rguenther@suse.de> |
42 | ||
43 | PR tree-optimization/51903 | |
44 | * tree-ssa-pre.c (eliminate): Properly purging of EH edges | |
45 | when removing stmts. | |
46 | ||
f06129ea RR |
47 | 2012-01-20 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> |
48 | ||
49 | PR target/50313 | |
50 | * config/arm/arm.c (arm_load_pic_register): Use | |
51 | gen_pic_load_addr_unified. Delete calls to gen_pic_load_addr_32bit | |
52 | , gen_pic_add_dot_plus_eight and gen_pic_add_dot_plus_four. | |
53 | (arm_pic_static_addr): Likewise. | |
54 | (arm_rtx_costs_1): Adjust cost for UNSPEC_PIC_UNIFIED. | |
55 | (arm_note_pic_base): Handle UNSPEC_PIC_UNIFIED. | |
56 | * config/arm/arm.md (UNSPEC_PIC_UNIFIED): Define. | |
57 | (pic_load_addr_unified): New. | |
58 | ||
229bfbcf AB |
59 | 2012-01-20 Andrey Belevantsev <abel@ispras.ru> |
60 | ||
61 | PR target/51106 | |
62 | * function.c (instantiate_virtual_regs_in_insn): Use | |
63 | delete_insn_and_edges when removing a wrong asm insn. | |
64 | ||
2608d841 VM |
65 | 2012-01-19 Vladimir Makarov <vmakarov@redhat.com> |
66 | ||
67 | PR rtl-optimization/40761 | |
68 | * ira-int.h (struct ira_loop_tree_node): Add comment for member | |
69 | loop. Add new member loop_num. | |
70 | (IRA_LOOP_NODE_BY_INDEX): Modify the check. | |
71 | (ira_build): Remove the parameter. | |
72 | ||
73 | * ira.c (ira_print_disposition): Use loop_num instead of | |
74 | loop->num. | |
75 | (ira.c): Do not build CFG loops for one region allocation. Remove | |
76 | argument from ira_build call. | |
77 | ||
78 | * ira-build.c (init_loop_tree_node): New function. | |
79 | (create_loop_tree_nodes): Use it. Separate the case when CFG | |
80 | loops are not built. | |
81 | (more_one_region_p): Check current_loops. | |
82 | (finish_loop_tree_nodes): Separate the case when CFG loops are not | |
83 | built. | |
84 | (add_loop_to_tree): Process loop equal to NULL too. | |
85 | (form_loop_tree): Separate the case when CFG loops are not built. | |
86 | Use explicitly number for the root. | |
87 | (rebuild_regno_allocno_maps, create_loop_tree_node_allocnos): Add | |
88 | an assertion. | |
89 | (ira_print_expanded_allocno, loop_compare_func): Use loop_num | |
90 | instead of loop->num. | |
91 | (mark_loops_for_removal): Ditto. Use loop_num instead of | |
92 | loop->num. | |
93 | (mark_all_loops_for_removal): Ditto. | |
94 | (remove_unnecessary_regions): Separate the case when CFG loops | |
95 | are not built. | |
96 | (ira_build): Remove the parameter. Use explicit number of regions | |
97 | when CFG loops are not built. | |
98 | ||
99 | * ira-color.c (print_loop_title): Separate the case for the root | |
100 | node. Use loop_num instead of loop->num. | |
101 | (move_spill_restore): Use loop_num instead of loop->num. | |
102 | ||
103 | * ira-emit.c (setup_entered_from_non_parent_p): Add an assertion. | |
104 | (change_loop): Ditto. | |
105 | (change_loop): Use loop_num instead of loop->num. | |
106 | ||
107 | * ira-lives.c (process_bb_node_lives): Ditto. | |
108 | ||
109 | * ira-costs.c (print_allocno_costs, find_costs_and_classes): | |
110 | Ditto. | |
111 | ||
112 | * ira-conflicts.c (print_allocno_conflicts): Ditto. | |
113 | ||
dc2c7a52 JJ |
114 | 2012-01-19 Jakub Jelinek <jakub@redhat.com> |
115 | ||
58b3ebf2 JJ |
116 | PR libmudflap/40778 |
117 | * tree-mudflap.c (mf_artificial): New function. | |
118 | (execute_mudflap_function_ops, execute_mudflap_function_decls, | |
119 | mx_register_decls, mudflap_enqueue_decl): Use it. | |
120 | ||
dc2c7a52 JJ |
121 | PR target/51876 |
122 | * config/arm/neon.md (*neon_vswp<mode>): Fix up operand | |
123 | numbers in the insn pattern. | |
124 | ||
d5038d06 MM |
125 | 2012-01-19 Michael Matz <matz@suse.de> |
126 | ||
127 | PR tree-optimization/46590 | |
128 | * cfgexpand.c (add_scope_conflicts_1): New old_conflicts argument, | |
129 | use it in remembering which conflicts we already created. | |
130 | (add_scope_conflicts): Adjust call to above, (de)allocate helper | |
131 | bitmap. | |
132 | ||
aad038ca AH |
133 | 2012-01-19 Aldy Hernandez <aldyh@redhat.com> |
134 | ||
135 | PR lto/51280 | |
136 | * lto-wrapper.c (run_gcc): Pass -fgnu_tm on. | |
137 | (merge_and_complain): Same. | |
138 | ||
e9c9f128 JJ |
139 | 2012-01-19 Jakub Jelinek <jakub@redhat.com> |
140 | ||
141 | PR bootstrap/50237 | |
142 | * config/initfini-array.h: Guard content of the header | |
143 | with #ifdef HAVE_INITFINI_ARRAY. | |
144 | * configure.ac: Move gcc_AC_INITFINI_ARRAY much later into the file. | |
145 | Add initfini-array.h to tm_file here. | |
146 | * acinclude.m4 (gcc_AC_INITFINI_ARRAY): For non-ia64 do a linker | |
147 | test. | |
148 | * config.gcc: Don't add initfini-array.h to tm_file here. | |
149 | * configure: Regenerated. | |
150 | ||
151 | 2012-01-19 Andrey Belevantsev <abel@ispras.ru> | |
f90aa714 AB |
152 | |
153 | PR rtl-optimization/51505 | |
154 | * df-problems.c (df_kill_notes): New parameter live. Update comment. | |
155 | Remove REG_EQUAL/REG_EQUIV notes referring to dead registers. | |
156 | (df_note_bb_compute): Update the call to df_kill_notes. | |
157 | ||
63c0efdb AH |
158 | 2012-01-18 Aldy Hernandez <aldyh@redhat.com> |
159 | ||
160 | * trans-mem.c (requires_barrier): Remove call to is_global_var. | |
161 | ||
b8cf611d RG |
162 | 2012-01-18 Richard Guenther <rguenther@suse.de> |
163 | ||
164 | * tree-ssa.c (useless_type_conversion_p): Remove special-casing | |
165 | of conversions to void *. | |
166 | ||
3bdb97b8 AK |
167 | 2012-01-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
168 | Richard Sandiford <rdsandiford@googlemail.com> | |
169 | ||
170 | PR middle-end/50325 | |
171 | PR middle-end/51192 | |
172 | * optabs.h (simplify_expand_binop): Declare. | |
173 | * optabs.c (simplify_expand_binop): Make global. | |
174 | * expmed.c (store_bit_field_1): Use simplify_expand_binop on big | |
175 | endian targets if the source cannot be exactly covered by word | |
176 | mode chunks. | |
177 | ||
ee3d2ecd JJ |
178 | 2012-01-17 Jakub Jelinek <jakub@redhat.com> |
179 | ||
180 | PR bootstrap/51872 | |
181 | * hard-reg-set.h (struct hard_reg_set_container): New type. | |
182 | * target.h (struct hard_reg_set_container): Forward declare. | |
183 | * target.def (set_up_by_prologue): New target hook. | |
184 | * doc/tm.texi.in (TARGET_SET_UP_BY_PROLOGUE): Document it. | |
185 | * doc/tm.texi: Regenerated. | |
186 | * function.c (thread_prologue_and_epilogue_insns): Change | |
187 | set_up_by_prologue HARD_REG_SET into struct hard_reg_set_container. | |
188 | Call targetm.set_up_by_prologue on it. | |
189 | * config/rs6000/rs6000.c (rs6000_set_up_by_prologue): New function. | |
190 | (TARGET_SET_UP_BY_PROLOGUE): Redefine to it. | |
191 | ||
be61ce52 NC |
192 | 2012-01-17 Nick Clifton <nickc@redhat.com> |
193 | ||
194 | * config/rx/rx.c (rx_can_use_simple_return): New function. | |
195 | * config/rx/rx-protos.h (rx_can_use_simple_return): Prototype. | |
196 | * config/rx/rx.md (return): Predicate on rx_can_use_simple_return. | |
197 | ||
e831c1e8 RG |
198 | 2012-01-17 Richard Guenther <rguenther@suse.de> |
199 | ||
200 | PR middle-end/51782 | |
201 | * expr.c (expand_assignment): Take address-space information | |
202 | from the address operand of MEM_REF and TARGET_MEM_REF. | |
203 | (expand_expr_real_1): Likewise. | |
204 | ||
67463efb AK |
205 | 2012-01-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
206 | ||
207 | * ira.c (do_reload): Make sure ira_dump_file is re-set if no | |
208 | reload dump is requested. | |
209 | ||
59cbe98e AH |
210 | 2012-01-17 Aldy Hernandez <aldyh@redhat.com> |
211 | ||
212 | PR other/51165 | |
213 | * trans-mem.c (requires_barrier): Call may_be_aliased. | |
214 | ||
e6fa9204 JJ |
215 | 2012-01-17 Jakub Jelinek <jakub@redhat.com> |
216 | ||
217 | PR tree-optimization/51877 | |
218 | * tree-ssa-tail-merge.c (gimple_equal_p): Don't return true whenever | |
219 | call arguments and fndecls compare equal, instead return false if they | |
220 | don't. Return true only if lhs1 and lhs2 are either both NULL, or | |
221 | both SSA_NAMEs that are valueized the same, or they satisfy | |
222 | operand_equal_p. | |
223 | ||
26923657 RO |
224 | 2012-01-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
225 | ||
226 | * configure.ac (gcc_cv_target_dl_iterate_phdr): Only check on | |
227 | Solaris 11+. | |
228 | * configure: Regenerate. | |
229 | ||
c53153e7 JH |
230 | 2012-01-16 Jan Hubicka <jh@suse.cz> |
231 | ||
232 | PR c/12245 | |
233 | PR c++/14179 | |
234 | * convert.c (convert_to_integer): Use fold_convert for | |
235 | converting an INTEGER_CST to integer type. | |
236 | ||
7aeb037b JM |
237 | 2012-01-16 Jason Merrill <jason@redhat.com> |
238 | ||
239 | PR c++/14179 | |
240 | * vec.c (vec_gc_o_reserve_1): Use ggc_round_alloc_size. | |
241 | ||
90dda0e9 JJ |
242 | 2012-01-16 Jakub Jelinek <jakub@redhat.com> |
243 | ||
00fbd5c8 JJ |
244 | PR bootstrap/51860 |
245 | * config/s390/s390.c (s390_chunkify_start): Don't skip | |
246 | call insns followed by NOTE_INSN_CALL_ARG_LOCATION note. Skip | |
247 | NOTE_INSN_VAR_LOCATION and NOTE_INSN_CALL_ARG_LOCATION notes. | |
248 | If insn is followed by NOTE_INSN_VAR_LOCATION or | |
249 | NOTE_INSN_CALL_ARG_LOCATION notes, insert jump after all those notes. | |
250 | Don't use location of note insns. | |
251 | ||
90dda0e9 JJ |
252 | PR tree-optimization/51865 |
253 | * tree-inline.c (tree_function_versioning): Call remap_decl | |
254 | on DECL_RESULT whenever it has VOID_TYPE_P type. | |
255 | ||
62835cee RS |
256 | 2012-01-15 Richard Sandiford <rdsandiford@googlemail.com> |
257 | ||
258 | * config/mips/mips.c (mips16_build_call_stub): Don't use a stub | |
259 | for calls to locally-binding MIPS16 functions if only the return | |
260 | type uses float regs. | |
261 | ||
ddaf8125 RS |
262 | 2012-01-15 Chung-Lin Tang <cltang@codesourcery.com> |
263 | Richard Sandiford <rdsandiford@googlemail.com> | |
264 | ||
265 | * config/mips/mips-protos.h (SYMBOL_FORCE_TO_MEM): Delete. | |
266 | (SYMBOL_32_HIGH): Likewise. | |
267 | (mips_output_tls_reloc_directive): Declare. | |
268 | * config/mips/mips.h (PIC_FUNCTION_ADDR_REGNUM): Move to mips.md. | |
269 | (mips_use_pcrel_pool_p, mips_lo_relocs, mips_hi_relocs): Declare. | |
270 | * config/mips/mips.c (mips_use_pcrel_pool_p): New variable. | |
271 | (mips_lo_relocs, mips_hi_relocs): Make extern. | |
272 | (mips16_stub_function): Move up file. | |
273 | (mips_classify_symbol): Remove SYMBOL_FORCE_TO_MEM handling. | |
274 | (mips_symbolic_constant_p): Likewise. Remove SYMBOL_32_HIGH too. | |
275 | (mips_symbol_insns_1): Likewise. Check mips_use_pcrel_pool_p. | |
276 | (mips_cannot_force_const_mem): Use mips_use_pcrel_pool_p instead | |
277 | of SYMBOL_FORCE_TO_MEM. Only check mips_tls_symbol_ref_1 | |
278 | if it's false. | |
279 | (mips_get_tp): Add MIPS16 support. | |
280 | (mips_legitimize_tls_address): Remove MIPS16 sorry(). | |
281 | Generalize DTPREL and TPREL handling. | |
282 | (mips_init_relocs): Initialize mips_use_pcrel_pool_p. | |
283 | Add MIPS16 TLS support. | |
284 | (mips_output_tls_reloc_directive): New function. | |
285 | (mips16_rewrite_pool_refs): Ignore UNSPEC_TLS_GET_TPs. | |
286 | * config/mips/predicates.md (symbolic_operand_with_high) | |
287 | (tls_reloc_operand): New predicates. | |
288 | (force_to_mem_operand): Use mips_use_pcrel_pool_p. | |
289 | * config/mips/mips.md (UNSPEC_UNSHIFTED_HIGH): New unspec. | |
290 | (PIC_FUNCTION_ADDR_REGNUM): Moved from mips.h. | |
291 | (*unshifted_high): New instruction. Use it for MIPS16 | |
292 | high splitter. | |
293 | (consttable_tls_reloc, tls_get_tp_mips16_<mode>): New patterns. | |
294 | (*tls_get_tp_mips16_call_<mode>): Likewise. | |
295 | ||
bf63ef6c UB |
296 | 2012-01-15 Uros Bizjak <ubizjak@gmail.com> |
297 | ||
298 | PR rtl-optimization/51821 | |
299 | * recog.c (peep2_find_free_register): Determine clobbered registers | |
300 | from insn pattern. | |
301 | ||
cfbaed3b DC |
302 | 2012-01-14 Denis Chertykov <chertykov@gmail.com> |
303 | ||
304 | PR target/50925 | |
305 | * config/avr/avr-protos.h: Revert change of 2012-01-09. | |
306 | * config/avr/avr.c: Likewise. | |
307 | * config/avr/avr.h: Likewise. | |
308 | ||
12448f77 ILT |
309 | 2012-01-13 Ian Lance Taylor <iant@google.com> |
310 | ||
311 | PR c++/50012 | |
312 | * tree.h (TYPE_QUALS): Add cast to int. | |
313 | (TYPE_QUALS_NO_ADDR_SPACE): Likewise. | |
314 | ||
9ab6f957 ILT |
315 | 2012-01-13 Ian Lance Taylor <iant@google.com> |
316 | ||
317 | * ipa-cp.c (ipa_get_indirect_edge_target): Add typecasts when | |
318 | comparing param_index to VEC_length result. | |
319 | ||
8554df86 SB |
320 | 2012-01-13 Steven Bosscher <steven@gcc.gnu.org> |
321 | ||
322 | * c-decl.c: Do not include tree-mudflap.h | |
323 | * tree-optimize.c: Likewise. | |
324 | * Makefile.in: Update dependencies. | |
325 | ||
aabb90e5 RG |
326 | 2012-01-13 Richard Guenther <rguenther@suse.de> |
327 | ||
328 | PR middle-end/8081 | |
329 | * gimplify.c (gimplify_modify_expr_rhs): For calls with a | |
330 | variable-sized result always use RSO. | |
331 | ||
639d4bb8 DD |
332 | 2012-01-12 DJ Delorie <dj@redhat.com> |
333 | ||
334 | * cfgexpand.c (convert_debug_memory_address): Allow any valid | |
335 | pointer type, not just the default pointer type. | |
336 | ||
105b876e RH |
337 | 2012-01-09 Richard Henderson <rth@redhat.com> |
338 | Denis Chertykov <chertykov@gmail.com> | |
339 | ||
340 | PR target/50925 | |
341 | * config/avr/avr-protos.h (avr_hard_regno_nregs): Declare. | |
342 | * config/avr/avr.c (avr_can_eliminate): Simplify. | |
343 | (avr_initial_elimination_offset): Likewise. | |
344 | (avr_prologue_setup_frame): Use hard_frame_pointer_rtx. | |
345 | (expand_epilogue): Likewise. | |
346 | (avr_legitimize_address): Gut. | |
347 | (avr_legitimize_reload_address): Use hard_frame_pointer_rtx. | |
348 | (avr_hard_regno_nregs): New. | |
349 | (avr_hard_regno_ok): Allow only Pmode for arg and frame_pointers. | |
350 | (avr_regno_mode_code_ok_for_base_b): Handle arg and frame pointers. | |
351 | * config/avr/avr.h (FIXED_REGISTERS): Adjust arg pointer, | |
352 | add soft frame pointer. | |
353 | (CALL_USED_REGISTERS): Likewise. | |
354 | (REG_CLASS_CONTENTS): Likewise. | |
355 | (REGISTER_NAMES): Likewise. | |
356 | (HARD_REGNO_NREGS): Use avr_hard_regno_nregs. | |
357 | (HARD_FRAME_POINTER_REGNUM): New. | |
358 | (FRAME_POINTER_REGNUM): Use soft frame pointer. | |
359 | (ELIMINABLE_REGS): Eliminate from the soft frame pointer, | |
360 | remove the HARD_FRAME_POINTER self-elimination. | |
361 | ||
458652d1 | 362 | 2012-01-12 Georg-Johann Lay <avr@gjlay.de> |
ab8c5093 GJL |
363 | |
364 | PR target/51756 | |
365 | * config/avr/avr.c (avr_encode_section_info): Test for absence of | |
366 | DECL_EXTERNAL when checking for initializers of progmem variables. | |
367 | ||
82db3d43 IR |
368 | 2012-01-12 Ira Rosen <irar@il.ibm.com> |
369 | ||
370 | PR tree-optimization/51799 | |
371 | * tree-vect-patterns.c (vect_recog_over_widening_pattern): Check | |
372 | that the last operation is a type demotion. | |
373 | ||
64668e68 UB |
374 | 2012-01-12 Uros Bizjak <ubizjak@gmail.com> |
375 | ||
376 | * config/i386/i386.md (*zero_extendsidi2_rex64): Correct movl template. | |
377 | (x86_shift<mode>_adj_1): Remove operand constraint from operand 3. | |
378 | ||
319638ed JJ |
379 | 2012-01-11 Jakub Jelinek <jakub@redhat.com> |
380 | ||
381 | PR bootstrap/51796 | |
382 | * combine.c (distribute_notes): If i3 is a noreturn call, | |
383 | allow old_size to be equal to args_size and make sure the | |
384 | noreturn call gets REG_ARGS_SIZE note. | |
385 | * expr.c (fixup_args_size_notes): Put REG_ARGS_SIZE notes | |
386 | on noreturn calls even when the delta is 0. | |
387 | ||
8f961b22 NS |
388 | 2012-01-11 Nathan Sidwell <nathan@acm.org> |
389 | ||
390 | * gcov.c (STRING_SIZE): Remove. | |
391 | (generate_results): Erase annotations for source files with no | |
392 | coverage information. | |
393 | (read_line): New. | |
394 | (output_lines): Use it. | |
395 | ||
3ad065ef EB |
396 | 2012-01-11 Eric Botcazou <ebotcazou@adacore.com> |
397 | ||
398 | * gimple.h (gimplify_body): Remove first argument. | |
399 | * gimplify.c (copy_if_shared): Add DATA argument. Do not create the | |
400 | pointer set here, instead just pass DATA to walk_tree. | |
401 | (unshare_body): Remove BODY_P argument and adjust. Create the pointer | |
402 | set here and invoke copy_if_shared on the size trees of DECL_RESULT. | |
403 | (unvisit_body): Likewise, but with unmark_visited. | |
404 | (gimplify_body): Remove BODY_P argument and adjust. | |
405 | (gimplify_function_tree): Adjust call to gimplify_body. | |
406 | * omp-low.c (finalize_task_copyfn): Likewise. | |
407 | ||
1a2c27e9 EB |
408 | 2012-01-11 Eric Botcazou <ebotcazou@adacore.com> |
409 | ||
410 | * tree.h (build_function_decl_skip_args): Add boolean parameter. | |
411 | (build_function_type_skip_args): Delete. | |
412 | * tree.c (build_function_type_skip_args): Make static and add | |
413 | SKIP_RETURN parameter. Fix thinko in the handling of variants. | |
414 | (build_function_decl_skip_args): Add SKIP_RETURN parameter and | |
415 | pass it to build_function_type_skip_args. | |
416 | * cgraph.h (cgraph_function_versioning): Add boolean parameter. | |
417 | (tree_function_versioning): Likewise. | |
418 | * cgraph.c (cgraph_create_virtual_clone): Adjust call to | |
419 | build_function_decl_skip_args. | |
420 | * cgraphunit.c (cgraph_function_versioning): Add SKIP_RETURN parameter | |
421 | and pass it to build_function_decl_skip_args/tree_function_versioning. | |
422 | (cgraph_materialize_clone): Adjust call to tree_function_versioning. | |
423 | * ipa-inline-transform.c (save_inline_function_body): Likewise. | |
424 | * trans-mem.c (ipa_tm_create_version): Likewise. | |
425 | * tree-sra.c (modify_function): Ditto for cgraph_function_versioning. | |
426 | * tree-inline.c (declare_return_variable): Remove always-true test. | |
427 | (tree_function_versioning): Add SKIP_RETURN parameter. If the function | |
428 | returns non-void and SKIP_RETURN, create a void-typed RESULT_DECL. | |
429 | * ipa-split.c (split_function): Skip the return value for the split | |
430 | part if it doesn't return. | |
431 | ||
b2e25729 BS |
432 | 2012-01-11 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
433 | ||
434 | PR tree-optimization/49642 | |
435 | * ipa-split.c (forbidden_dominators): New variable. | |
436 | (check_forbidden_calls): New function. | |
437 | (dominated_by_forbidden): Likewise. | |
438 | (consider_split): Check for forbidden dominators. | |
439 | (execute_split_functions): Initialize and free forbidden | |
440 | dominators info; call check_forbidden_calls. | |
441 | ||
9150e331 MGD |
442 | 2012-01-11 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> |
443 | ||
444 | * config/arm/arm.md (mov_notscc): Use MVN for false condition. | |
445 | ||
1c97289f NC |
446 | 2012-01-11 Nick Clifton <nickc@redhat.com> |
447 | ||
448 | * config/rx/rx.md (return): Define pattern. | |
449 | ||
65d5c485 RG |
450 | 2012-01-11 Richard Guenther <rguenther@suse.de> |
451 | ||
452 | * doc/extend.texi (malloc attribute): Adjust according to | |
453 | implementation. | |
454 | ||
594ec92f AH |
455 | 2012-01-10 Aldy Hernandez <aldyh@redhat.com> |
456 | Patrick Marlier <patrick.marlier@gmail.com> | |
457 | ||
458 | PR middle-end/51516 | |
459 | * trans-mem.c (get_cg_data): Traverse aliases if requested. | |
460 | (ipa_tm_scan_calls_block): Update parameters to get_cg_data. | |
461 | (ipa_tm_note_irrevocable): Same. | |
462 | (ipa_tm_scan_irr_block): Same. | |
463 | (ipa_tm_decrement_clone_counts): Same. | |
464 | (ipa_tm_scan_irr_function): Same. | |
465 | (ipa_tm_create_version_alias): Same. | |
466 | (ipa_tm_create_version): Same. | |
467 | (ipa_tm_transform_calls_redirect): Same. | |
468 | (ipa_tm_transform_calls): Same. | |
469 | (ipa_tm_transform_transaction): Same. | |
470 | (ipa_tm_execute): Same. | |
471 | ||
aee15221 RG |
472 | 2012-01-10 Richard Guenther <rguenther@suse.de> |
473 | ||
474 | PR middle-end/51806 | |
475 | * opts.c (common_handle_option): Handle -Werror. | |
476 | ||
b339cf22 AS |
477 | 2012-01-10 Andreas Schwab <schwab@linux-m68k.org> |
478 | ||
479 | * config/m68k/sync.md ("atomic_compare_and_swap<mode>_1"): Fix | |
480 | operand number. | |
481 | ||
90aa444c JM |
482 | 2012-01-10 Jason Merrill <jason@redhat.com> |
483 | ||
484 | * doc/invoke.texi (C++ Dialect Options): Update -fabi-version=6 | |
485 | information. | |
486 | ||
0f24748c RO |
487 | 2012-01-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
488 | ||
489 | * configure.ac (gcc_cv_as_ix86_tlsgdplt): Check if linker | |
490 | supports R_386_TLS_GD_PLT reloc. | |
491 | (gcc_cv_as_ix86_tlsldmplt): Check if linker | |
492 | supports R_386_TLS_LDM_PLT reloc. | |
493 | * configure: Regenerate. | |
494 | * config.in: Regenerate. | |
495 | ||
cba300dd GJL |
496 | 2012-01-10 Georg-Johann Lay <avr@gjlay.de> |
497 | ||
498 | PR target/49868 | |
499 | Extend __pgmx semantics to linearize memory. | |
500 | * config/avr/avr.md (mov<mode>): Use avr_xload_libgcc_p to | |
501 | determine if code comes inline or from libgcc. | |
502 | (MOVMEM_r_d:HI): Add "w" to constraint for better preference. | |
503 | (movmem_qi, movmem_qi): Set constraint #2 to "n". | |
504 | (movmem_qi_elpm, movmem_hi_elpm): Remove insns. | |
505 | (movmemx_qi, movmemx_hi): New insns. | |
506 | (xload_<mode>_libgcc): Rewrite to new insn condition. | |
507 | (xload_<mode>): Remove insns. | |
508 | * config/avr/avr.c (avr_out_xload): Rewrite: Only need to handle | |
509 | cases that don't satisfy avr_xload_libgcc_p(). | |
510 | (avr_addr_space_convert): Allow converting in any direction. | |
511 | (avr_addr_space_subset_p): Return always true. | |
512 | (avr_xload_libgcc_p): Rewrite to fit new __pgmx semantics. | |
513 | (avr_emit_movmemhi): Ditto. | |
514 | (avr_out_lpm): No need to handle ADDR_SPACE_PGMX any more. | |
515 | (avr_out_movmem): Ditto. | |
516 | (AVR_SYMBOL_FLAG_PROGMEM): New macro. | |
517 | (AVR_SYMBOL_SET_ADDR_SPACE): New macro. | |
518 | (AVR_SYMBOL_GET_ADDR_SPACE): New macro. | |
519 | (avr_encode_section_info): Encode 'progmem' in symbol flags. | |
520 | (output_reload_in_const): Don't zero-extend any 24-bit symbols. | |
521 | ||
390b24dc RG |
522 | 2012-01-10 Richard Guenther <rguenther@suse.de> |
523 | ||
524 | PR tree-optimization/50913 | |
525 | * graphite-scop-detection.c (stmt_has_simple_data_refs_p): | |
526 | Require data-refs to be representable by Graphite with respect | |
527 | to any loop nest. | |
528 | ||
f148a434 UB |
529 | 2012-01-10 Uros Bizjak <ubizjak@gmail.com> |
530 | ||
531 | * config/i386/constraints.md ("L"): Return true for 0xffffffff. | |
532 | * config/i386/i386.c (*anddi_1): Emit AND with 0xffffffff as MOV. | |
533 | ||
5d1f1cd5 TV |
534 | 2012-01-10 Tom de Vries <tom@codesourcery.com> |
535 | ||
6fcebe79 | 536 | PR rtl-optimization/51271 |
5d1f1cd5 TV |
537 | * dwarf2cfi.c (scan_trace): Save and restore cur_row->reg_save when |
538 | handling annulled branch. | |
539 | ||
b440f324 RH |
540 | 2012-01-10 Richard Henderson <rth@redhat.com> |
541 | ||
f148a434 | 542 | * config/arm/arm.c (arm_vectorize_vec_perm_const_ok, |
b440f324 RH |
543 | TARGET_VECTORIZE_VEC_PERM_CONST_OK, neon_split_vcombine, MAX_VECT_LEN, |
544 | struct expand_vec_perm_d, arm_expand_vec_perm_1, arm_expand_vec_perm, | |
545 | arm_evpc_neon_vuzp, arm_evpc_neon_vzip, arm_evpc_neon_vrev, | |
546 | arm_evpc_neon_vtrn, arm_evpc_neon_vtbl, arm_expand_vec_perm_const_1, | |
547 | arm_expand_vec_perm_const): New. | |
548 | * config/arm/arm-protos.h: Update. | |
549 | * config/arm/neon.md (UNSPEC_VCONCAT): New. | |
550 | (*neon_vswp<VDQX>): New. | |
551 | (neon_vcombine<VDX>): Use neon_split_vcombine. | |
552 | (neon_vtbl1v16qi, neon_vtbl2v16qi, neon_vcombinev16qi): New. | |
553 | * config/arm/vec-common.md (vec_perm_const<VALL>): New. | |
554 | (vec_perm<VE>): New. | |
555 | ||
18f0fe6b RH |
556 | 2012-01-10 Richard Henderson <rth@redhat.com> |
557 | ||
558 | * config/arm/arm.c (arm_gen_compare_reg): Add scratch argument; | |
559 | use it if reload_completed. | |
560 | (arm_legitimize_sync_memory, arm_emit, arm_insn_count, arm_count, | |
561 | arm_output_asm_insn, arm_process_output_memory_barrier, | |
562 | arm_output_memory_barrier, arm_ldrex_suffix, arm_output_ldrex, | |
563 | arm_output_strex, arm_output_it, arm_output_op2, arm_output_op3, | |
564 | arm_output_sync_loop, arm_get_sync_operand, FETCH_SYNC_OPERAND, | |
565 | arm_process_output_sync_insn, arm_output_sync_insn, | |
566 | arm_sync_loop_insns, arm_call_generator, arm_expand_sync): Remove. | |
567 | (arm_pre_atomic_barrier, arm_post_atomic_barrier): New. | |
568 | (arm_emit_load_exclusive, arm_emit_store_exclusive): New. | |
569 | (emit_unlikely_jump): New. | |
570 | (arm_expand_compare_and_swap, arm_split_compare_and_swap): New. | |
571 | (arm_split_atomic_op): New. | |
572 | * config/arm/arm-protos.h: Update. | |
573 | * config/arm/arm.h (enum arm_sync_generator_tag): Remove. | |
574 | (struct arm_sync_generator): Remove. | |
575 | * config/arm/arm.md (VUNSPEC_SYNC_COMPARE_AND_SWAP, VUNSPEC_SYNC_LOCK, | |
576 | VUNSPEC_SYNC_OP, VUNSPEC_SYNC_NEW_OP, VUNSPEC_SYNC_OLD_OP): Remove. | |
577 | (VUNSPEC_ATOMIC_CAS, VUNSPEC_ATOMIC_XCHG, VUNSPEC_ATOMIC_OP): New. | |
578 | (VUNSPEC_LL, VUNSPEC_SC): New. | |
579 | (sync_result, sync_memory, sync_required_value, sync_new_value, | |
580 | sync_t1, sync_t2, sync_release_barrier, sync_op): Remove. | |
581 | (attr length): Don't use arm_sync_loop_insns. | |
582 | (cbranch_cc, cstore_cc): Update call to arm_gen_compare_reg. | |
583 | (movsfcc, movdfcc): Likewise. | |
584 | * config/arm/constraints.md (Ua): New. | |
585 | * config/arm/prediates.md (mem_noofs_operand): New. | |
586 | (sync_compare_and_swap<QHSD>, sync_lock_test_and_set<QHSD>): Remove. | |
587 | (sync_clobber, sync_t2_reqd): Remove. | |
588 | (sync_<syncop><QHSD>, sync_nand<QHSD>): Remove. | |
589 | (sync_new_<syncop><QHSD>, sync_new_nand<QHSD>): Remove. | |
590 | (sync_old_<syncop><QHSD>, sync_old_nand<QHSD>): Remove. | |
591 | (arm_sync_compare_and_swap<SIDI>): Remove. | |
592 | (arm_sync_compare_and_swap<NARROW>): Remove. | |
593 | (arm_sync_lock_test_and_set<SIDI>): Remove. | |
594 | (arm_sync_lock_test_and_set<NARROW>): Remove. | |
595 | (arm_sync_new_<syncop><SIDI>): Remove. | |
596 | (arm_sync_new_<syncop><NARROW>): Remove. | |
597 | (arm_sync_new_nand<SIDI>): Remove. | |
598 | (arm_sync_new_nand<NARROW>): Remove. | |
599 | (arm_sync_old_<syncop><SIDI>): Remove. | |
600 | (arm_sync_old_<syncop><NARROW>): Remove. | |
601 | (arm_sync_old_nand<SIDI>): Remove. | |
602 | (arm_sync_old_nand<NARROW>): Remove. | |
603 | (*memory_barrier): Merge arm_output_memory_barrier. | |
604 | (atomic_compare_and_swap<QHSD>): New. | |
605 | (atomic_compare_and_swap<NARROW>_1): New. | |
606 | (atomic_compare_and_swap<SIDI>_1): New. | |
607 | (atomic_exchange<QHSD>): New. | |
608 | (cas_cmp_operand, cas_cmp_str): New. | |
609 | (atomic_op_operand, atomic_op_str): New. | |
610 | (atomic_<syncop><QHSD>, atomic_nand<QHSD>): New. | |
611 | (atomic_fetch_<syncop><QHSD>, atomic_fetch_nand<QHSD>): New. | |
612 | (atomic_<syncop>_fetch<QHSD>, atomic_nand_fetch<QHSD>): New. | |
613 | (arm_load_exclusive<NARROW>): New. | |
614 | (arm_load_exclusivesi, arm_load_exclusivedi): New. | |
615 | (arm_store_exclusive<QHSD>): New. | |
616 | ||
617 | 2012-01-09 Michael Meissner <meissner@linux.vnet.ibm.com> | |
df5a9a7c MM |
618 | |
619 | * config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Add DF | |
620 | reload patterns if -mvsx-scalar-memory. | |
621 | ||
622 | * config/rs6000/vsx.md (vsx_xscvspdp): Allow xscvspdp to be | |
623 | generated, even -mno-vsx-scalar-double was used. | |
624 | (vsx_xscvdpsp_scalar): Likewise. | |
625 | (vsx_xscvspdp_scalar2): Likewise. | |
626 | ||
243b92d1 TV |
627 | 2012-01-09 Tom de Vries <tom@codesourcery.com> |
628 | Andrew Pinski <apinski@cavium.com> | |
629 | ||
6fcebe79 | 630 | PR debug/51471 |
f148a434 UB |
631 | * reorg.c (fill_slots_from_thread): Don't speculate |
632 | frame-related insns. | |
243b92d1 | 633 | |
ef2be249 RS |
634 | 2012-01-09 Richard Sandiford <rdsandiford@googlemail.com> |
635 | ||
636 | * sched-int.h (bb_note): Move to... | |
637 | * basic-block.h: ...here. | |
638 | * haifa-sched.c (bb_note): Move to... | |
639 | * cfgrtl.c: ...here. | |
640 | * function.c (next_block_for_reg): New function. | |
641 | (move_insn_for_shrink_wrap): Likewise. | |
642 | (prepare_shrink_wrap): Rewrite to use the above. | |
643 | ||
345ae177 AH |
644 | 2012-01-09 Aldy Hernandez <aldyh@redhat.com> |
645 | ||
646 | * gimple.c (is_gimple_non_addressable): Remove. | |
647 | * gimple.h: Remove is_gimple_non_addressable. | |
648 | * gimplify.c (gimplify_modify_expr_rhs): Use is_gimple_reg instead of | |
649 | is_gimple_non_addressable. | |
650 | * trans-mem.c (expand_assign_tm): Same. | |
651 | ||
06468229 RG |
652 | 2012-01-09 Richard Guenther <rguenther@suse.de> |
653 | ||
654 | PR tree-optimization/51775 | |
655 | * tree-ssa-sccvn.c (visit_use): Value-number throwing stmts. | |
656 | * tree-ssa-pre.c (eliminate): Properly fixup EH info. | |
657 | ||
12aa62e9 MGD |
658 | 2012-01-09 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> |
659 | ||
660 | * config/arm/arm-cores.def (cortex-a15): Use cortex_a15_tune for | |
661 | tuning parameters. | |
662 | * config/arm/arm.c (arm_cortex_a15_tune): New static variable. | |
663 | ||
fdff9f3d RB |
664 | 2012-01-09 Richard Guenther <rguenther@suse.de> |
665 | ||
666 | * tree-streamer-out.c (write_ts_optimization): Fix spelling. | |
667 | ||
d028561e JH |
668 | 2012-01-08 Jan Hubicka <jh@suse.cz> |
669 | ||
670 | PR tree-optimize/51680 | |
fdff9f3d RB |
671 | * ipa-inline-analyss.c (evaluate_properties_for_edge): Fix condition |
672 | on when known_vals needs to be computed; cleanup. | |
d028561e | 673 | |
4c8836c6 JH |
674 | 2012-01-08 Jan Hubicka <jh@suse.cz> |
675 | ||
676 | PR tree-optimize/51694 | |
677 | * ipa-cp.c (ipa_get_indirect_edge_target): Add bounds checks. | |
678 | ||
e478624f JW |
679 | 2012-01-08 Jonathan Wakely <jwakely.gcc@gmail.com> |
680 | ||
681 | * doc/cpp.texi (Predefined Macros): __STRICT_ANSI__ is defined | |
682 | for -std=c++98 and -std=c++11 too. | |
683 | ||
b78384e0 CLT |
684 | 2012-01-08 Chung-Lin Tang <cltang@codesourcery.com> |
685 | ||
686 | * cfgloop.c (cancel_loop): Add free() of bbs array. | |
687 | ||
f45b2a8a JH |
688 | 2012-01-07 Jan Hubicka <jh@suse.cz> |
689 | ||
690 | PR tree-optimization/51600 | |
691 | * ipa-inline-analysis.c (estimate_edge_devirt_benefit): Disable code | |
692 | that benefits small functions. | |
693 | ||
694 | 2012-01-07 Jan Hubicka <jh@suse.cz> | |
695 | ||
696 | * ipa-inline.c (want_inline_small_function_p): Fix formating. | |
697 | ||
db22a743 JH |
698 | 2012-01-07 Jan Hubicka <jh@suse.cz> |
699 | ||
700 | PR tree-optimization/51680 | |
701 | * ipa-inline.c (want_inline_small_function_p): Be more lax on functions | |
702 | whose inlining reduce unit size. | |
703 | ||
faead9f7 AO |
704 | 2012-01-07 Alexandre Oliva <aoliva@redhat.com> |
705 | ||
706 | PR bootstrap/51725 | |
707 | * cselib.c (new_elt_loc_list): Promote addr_list to canonical node. | |
708 | Add canonical node to containing_mem chain after the non-canonical | |
709 | one, even if there weren't any locs to propagate. | |
710 | (remove_useless_values): Keep only canonical values. | |
711 | (add_mem_for_addr, cselib_lookup_mem): Canonicalize addr. | |
712 | (cselib_invalidate_mem): Likewise. Ensure v is canonical, and | |
713 | canonicalize mem_chain elements that are not discarded. | |
714 | ||
b71d7f85 JJ |
715 | 2012-01-06 Jakub Jelinek <jakub@redhat.com> |
716 | ||
0850f694 JJ |
717 | PR target/47333 |
718 | * cgraphunit.c (cgraph_optimize): Call output_weakrefs | |
719 | before emitting functions. | |
720 | ||
b71d7f85 JJ |
721 | PR gcov-profile/50127 |
722 | * bb-reorder.c (partition_hot_cold_basic_blocks): Call | |
723 | clear_aux_for_blocks. | |
724 | ||
7483eef8 AO |
725 | 2012-01-06 Alexandre Oliva <aoliva@redhat.com> |
726 | ||
727 | PR debug/51746 | |
728 | * cselib.c (cselib_hash_rtx): Hash incoming VALUEs too. | |
729 | ||
86d71fca AC |
730 | 2012-01-06 Arnaud Charlet <charlet@adacore.com> |
731 | ||
732 | * c-decl.c (ext_block): Moved up. | |
733 | (collect_all_refs, for_each_global_decl): Take ext_block into account. | |
734 | ||
17719d09 HS |
735 | 2012-01-06 Han Shen <shenhan@google.com> |
736 | ||
737 | Translate built-in include paths for sysroot. | |
738 | * Makefile.in (gcc_gxx_include_dir_add_sysroot): New. | |
739 | (PREPROCESSOR_DEFINES): Define GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT. | |
740 | ||
741 | * cppdefault.c (cpp_include_defaults): Replace hard coded "0" with | |
742 | GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT for "add_sysroot" field. | |
743 | ||
744 | * configure.ac (AC_SUBST): Add gcc_gxx_include_dir_add_sysroot to | |
745 | control whether sysroot should be prepended to gxx include dir. | |
746 | ||
747 | * configure: Regenerate. | |
748 | ||
b0c99997 TR |
749 | 2012-01-06 Torvald Riegel <triegel@redhat.com> |
750 | ||
751 | PR rtl-optimization/51771 | |
f148a434 | 752 | * builtin-attrs.def (ATTR_RETURNS_TWICE, ATTR_TM_NOTHROW_RT_LIST): New. |
b0c99997 TR |
753 | * gtm-builtins.def (BUILT_IN_TM_START): Add returns-twice attrib. |
754 | ||
c3e686a3 EB |
755 | 2012-01-05 Eric Botcazou <ebotcazou@adacore.com> |
756 | ||
757 | PR tree-optimization/51315 | |
758 | * tree-sra.c (tree_non_aligned_mem_for_access_p): New predicate. | |
759 | (build_accesses_from_assign): Use it instead of tree_non_aligned_mem_p. | |
760 | ||
2d130b31 UB |
761 | 2012-01-05 Uros Bizjak <ubizjak@gmail.com> |
762 | ||
763 | PR target/51681 | |
764 | * config/ia64/ia64.c (expand_vec_perm_shrp): Use correct operands | |
765 | for shrp pattern. Correctly handle and fixup shift variable. | |
766 | Return false when shift > nelt for BYTES_BIG_ENDIAN target. | |
767 | ||
f8f75b16 JJ |
768 | 2012-01-05 Jakub Jelinek <jakub@redhat.com> |
769 | ||
770 | PR debug/51762 | |
771 | * calls.c (emit_call_1): For noreturn calls force a REG_ARGS_SIZE | |
772 | note when !ACCUMULATE_OUTGOING_ARGS. | |
773 | ||
629c2cca EB |
774 | 2012-01-05 Eric Botcazou <ebotcazou@adacore.com> |
775 | ||
776 | * tree-vrp.c (extract_range_from_binary_expr_1): Remove duplicated | |
777 | condition. | |
778 | (extract_range_from_unary_expr_1): Avoid useless computations. | |
779 | ||
1e69d24e JJ |
780 | 2012-01-05 Jakub Jelinek <jakub@redhat.com> |
781 | ||
a3e6a37b JJ |
782 | PR rtl-optimization/51767 |
783 | * cfgrtl.c (force_nonfallthru_and_redirect): Force addition | |
784 | of jump_block and add an extra edge for degenerated asm gotos. | |
785 | ||
36363ebb JJ |
786 | PR middle-end/51768 |
787 | * stmt.c (check_unique_operand_names): Don't ICE during error | |
788 | reporting if i is from labels chain. | |
789 | ||
1e69d24e JJ |
790 | PR middle-end/44777 |
791 | * profile.c (branch_prob): Split bbs that have exit edge | |
792 | and need a fake entry edge too. | |
793 | ||
56494762 JH |
794 | 2012-01-05 Jan Hubicka <jh@suse.cz> |
795 | ||
796 | PR middle-end/49710 | |
797 | * cfgloopmanip.c (remove_path): Walk loop hiearchy upwards when | |
798 | unlooping loops. | |
799 | ||
10d12a3e RG |
800 | 2012-01-05 Richard Guenther <rguenther@suse.de> |
801 | ||
802 | PR lto/50490 | |
803 | * tree-streamer-out.c (write_ts_optimization): New function. | |
804 | (streamer_write_tree_body): Call it. | |
805 | * tree-streamer-in.c (lto_input_ts_optimization): New function. | |
806 | (streamer_read_tree_body): Call it. | |
807 | * lto-streamer-out.c (lto_is_streamable): Handle OPTIMIZATION_NODE. | |
808 | ||
32be32af JJ |
809 | 2012-01-05 Jakub Jelinek <jakub@redhat.com> |
810 | ||
811 | PR middle-end/51761 | |
2d130b31 | 812 | * gimple.h (struct gimplify_ctx): Add in_cleanup_point_expr field. |
32be32af JJ |
813 | * gimplify.c (gimplify_cleanup_point_expr): Save and set |
814 | in_cleanup_point_expr before gimplify_stmt call and restore it | |
815 | afterwards. | |
816 | (gimplify_target_expr): Don't add {CLOBBER} cleanup if | |
817 | in_cleanup_point_expr is false. | |
818 | ||
5720c0dc RG |
819 | 2012-01-05 Richard Guenther <rguenther@suse.de> |
820 | ||
821 | PR middle-end/51764 | |
822 | * common.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move | |
823 | to c.opt. | |
824 | * toplev.c (process_options): Reject combining mudflap and LTO. | |
825 | * tree-nomudflap.c (nogo): Use sorry instead of internal_error. | |
826 | ||
6ad024b4 RG |
827 | 2012-01-05 Richard Guenther <rguenther@suse.de> |
828 | ||
829 | PR tree-optimization/51760 | |
830 | * tree-ssa-ccp.c (likely_value): Drop UNDEFINED to CONSTANT, | |
831 | not VARYING. | |
832 | (bit_value_unop): Handle UNDEFINED operands. | |
833 | (bit_value_binop): Likewise. | |
834 | ||
543a341c GJL |
835 | 2012-01-05 Georg-Johann Lay <avr@gjlay.de> |
836 | ||
837 | * config/avr/avr.c (avr_replace_prefix): Remove. | |
838 | (avr_asm_named_section): Use ACONCAT instead of avr_replace_prefix. | |
839 | (avr_asm_function_rodata_section): Ditto. | |
840 | (avr_asm_select_section): Ditto. | |
841 | ||
6bfd2688 MS |
842 | 2012-01-05 Marcus Shawcroft <marcus.shawcroft@arm.com> |
843 | ||
844 | * reload.c (find_reloads): Adjust LABEL_NUSES on REG_LABEL_OPERAND | |
845 | insertion. | |
846 | ||
cbd65133 JJ |
847 | 2012-01-05 Jakub Jelinek <jakub@redhat.com> |
848 | ||
bfeb0869 JJ |
849 | PR bootstrap/51648 |
850 | * tree-cfg.c (need_fake_edge_p): Return true also for noreturn | |
851 | calls that have any non-fake successor edges. | |
852 | ||
cbd65133 JJ |
853 | PR debug/51746 |
854 | * var-tracking.c (add_stores): For COND_EXEC allow oval to be NULL. | |
855 | ||
8594273a EB |
856 | 2012-01-04 Eric Botcazou <ebotcazou@adacore.com> |
857 | ||
858 | PR tree-optimization/51624 | |
859 | * tree-sra.c (build_ref_for_model): When replicating a chain of | |
860 | COMPONENT_REFs, stop as soon as the offset would become negative. | |
861 | ||
5dc28f42 JJ |
862 | 2012-01-04 Jakub Jelinek <jakub@redhat.com> |
863 | ||
864 | PR debug/51695 | |
865 | * dwarf2out.c (output_loc_list): For now drop >= 64KB expressions | |
866 | in .debug_loc on the floor. | |
867 | ||
03a9ba1e AP |
868 | 2012-01-04 Andrew Pinski <apinski@cavium.com> |
869 | ||
870 | * doc/invoke.texi (-march=@var{arch}): Add octeon+ and octeon2. | |
871 | ||
770da00a AP |
872 | 2012-01-04 Andrew Pinski <apinski@cavium.com> |
873 | Adam Nemet <anemet@caviumnetworks.com> | |
874 | ||
875 | * config/mips/mips.md (size): Add SI and DI. | |
876 | (SIZE): New mode attribute. | |
877 | (U): New code attribute. | |
878 | * config/mips/mips-dsp.md (mips_lbux): Use gen_mips_lbux_extsi. | |
879 | (mips_lbux_<mode>): Delete. | |
880 | (mips_l<SHORT:size><u>x_ext<GPR:mode>_<P:mode>): New pattern. | |
881 | (mips_lhx): Use gen_mips_lhx_extsi. | |
882 | (mips_lhx_<mode>): Delete. | |
883 | (mips_lwx): Delete. | |
884 | (mips_l<size>x): New expand. | |
885 | (mips_lwx_<mode>): Delete. | |
886 | (mips_l<GPR:size>x_<P:mode>): New pattern. | |
887 | (*mips_lw<u>x_<P:mode>_ext): Likewise. | |
888 | * config/mips/mips-ftypes.def: Add DI f(POINTER, SI) function type. | |
889 | * config/mips/mips.c (mips_lx_address_p): New function. | |
890 | (mips_rtx_costs <case MEM>): Call mips_lx_address_p. | |
891 | (dsp64): New availability predicate. | |
892 | (mips_builtins): Add an entry for __builtin_mips_ldx. | |
893 | * config/mips/mips.h (ISA_HAS_LBX): New define. | |
894 | (ISA_HAS_LBUX): Likewise. | |
895 | (ISA_HAS_LHX): Likewise. | |
896 | (ISA_HAS_LHUX): Likewise. | |
897 | (ISA_HAS_LWX): Likewise. | |
898 | (ISA_HAS_LWUX): Likewise. | |
899 | (ISA_HAS_LDX): Likewise. | |
900 | * doc/extend.texi (__builtin_mips_ldx): Document. | |
901 | ||
e2b30a44 TG |
902 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
903 | ||
904 | * config/vms/xm-vms.h (HOST_LONG_FORMAT, HOST_PTR_PRINTF): Define | |
905 | when long pointers are used. | |
906 | * config.build (*-*-*vms*): Handle all OpenVMS targets. | |
907 | (alpha64-dec-*vms*, alpha*-dec-*vms*) | |
908 | (ia64-hp-*vms*): Remove. | |
909 | * config/vms/xm-vms64.h: Delete. | |
910 | ||
713b8dfb AH |
911 | 2012-01-04 Aldy Hernandez <aldyh@redhat.com> |
912 | ||
913 | PR middle-end/51472 | |
914 | * trans-mem.c (expand_assign_tm): Handle TM_MEMMOVE loads correctly. | |
915 | ||
7ba65723 AH |
916 | 2012-01-04 Aldy Hernandez <aldyh@redhat.com> |
917 | ||
b6aa8c33 | 918 | * opts.c (finish_options): Remove duplicate sorry. |
7ba65723 | 919 | |
3a54c456 AH |
920 | 2012-01-04 Aldy Hernandez <aldyh@redhat.com> |
921 | ||
922 | PR middle-end/51696 | |
923 | * trans-mem.c (diagnose_tm_1): Display indirect calls with no name | |
924 | correctly. | |
925 | ||
f5a3d840 RG |
926 | 2012-01-04 Richard Guenther <rguenther@suse.de> |
927 | ||
928 | PR middle-end/51750 | |
929 | * tree.c (size_low_cst): New function. | |
930 | * tree.h (size_low_cst): Declare. | |
931 | * fold-const.c (fold_comparison): Use it to extract the low | |
932 | part of the POINTER_PLUS_EXPR offset. | |
933 | ||
299c4b5f GJL |
934 | 2012-01-04 Georg-Johann Lay <avr@gjlay.de> |
935 | ||
936 | Fix clearing ZERO_REG | |
937 | * config/avr/avr.md (cc): Add alternative "ldi". | |
938 | (movqi_insn): Use it in cc attribute. | |
939 | * config/avr/avr.c (notice_update_cc): Handle CC_LDI. | |
940 | (output_reload_in_const): Use CLR to move 0 to ZERO_REG. | |
941 | (output_reload_insisf): Use ZERO_REG to pre-clear register. | |
942 | ||
925b0ed8 AK |
943 | 2012-01-04 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
944 | ||
945 | * configure: Regenerate. | |
946 | ||
b4cf8c9d RG |
947 | 2012-01-04 Richard Guenther <rguenther@suse.de> |
948 | ||
949 | PR tree-optimization/49651 | |
950 | * tree-ssa-structalias.c (type_can_have_subvars): New function. | |
951 | (var_can_have_subvars): Use it. | |
2d130b31 | 952 | (get_constraint_for_1): Only consider subfields if there can be any. |
b4cf8c9d | 953 | |
c067f6cf JJ |
954 | 2012-01-03 Jakub Jelinek <jakub@redhat.com> |
955 | ||
e30afafb | 956 | PR bootstrap/51725 |
2d130b31 UB |
957 | * cselib.c (new_elt_loc_list): When moving locs from one cselib_val |
958 | to its new canonical_cselib_val and the cselib_val was in | |
959 | first_containing_mem chain, but the canonical_cselib_val was not, | |
960 | add the latter into the chain. | |
e30afafb JJ |
961 | (cselib_invalidate_mem): Compare canonical_cselib_val of |
962 | addr_list chain elt with v. | |
963 | ||
c067f6cf JJ |
964 | PR pch/51722 |
965 | * dwarf2out.c (dwarf2out_start_source_file, dwarf2out_define, | |
966 | dwarf2out_undef): Allocate e.info using ggc_strdup instead | |
967 | of xstrdup. | |
968 | (output_macinfo_op): Don't ggc_strdup fd->filename. | |
969 | (optimize_macinfo_range): Allocate grp_name using XALLOCAVEC, | |
970 | then ggc_strdup it. Don't free inc->info or cur->info. | |
971 | (output_macinfo): Don't free ref->info or file->info. | |
972 | ||
5d2eb24b IR |
973 | 2012-01-03 Ira Rosen <irar@il.ibm.com> |
974 | ||
975 | PR tree-optimization/51269 | |
976 | * tree-vect-loop-manip.c (set_prologue_iterations): Make | |
977 | first_niters a pointer. | |
978 | (slpeel_tree_peel_loop_to_edge): Likewise. | |
979 | (vect_do_peeling_for_loop_bound): Update call to | |
980 | slpeel_tree_peel_loop_to_edge. | |
981 | (vect_gen_niters_for_prolog_loop): Don't compute wide_prolog_niters | |
982 | here. Remove it from the parameters list. | |
983 | (vect_do_peeling_for_alignment): Update calls and compute | |
984 | wide_prolog_niters. | |
985 | ||
c3e85659 RG |
986 | 2012-01-03 Richard Guenther <rguenther@suse.de> |
987 | ||
988 | PR tree-optimization/51070 | |
989 | * tree-loop-distribution.c (stmt_has_scalar_dependences_outside_loop): | |
990 | Properly handle calls. | |
991 | ||
f1749ec1 RG |
992 | 2012-01-03 Richard Guenther <rguenther@suse.de> |
993 | ||
994 | PR tree-optimization/51692 | |
995 | * tree-ssa-dce.c (eliminate_unnecessary_stmts): Do not remove | |
996 | the LHS of allocation stmts. | |
997 | ||
75291c57 OH |
998 | 2012-01-03 Olivier Hainque <hainque@adacore.com> |
999 | ||
1000 | * system.h: Prior to #define, #undef fopen and freopen unconditionally. | |
1001 | ||
6588d711 OH |
1002 | 2012-01-03 Olivier Hainque <hainque@adacore.com> |
1003 | ||
1004 | * collect2.c (main): In AIX specific computations for vector | |
1005 | insertions, use CONST_CAST2 to cast from char ** to const char **. | |
1006 | ||
f3321fd7 RG |
1007 | 2012-01-03 Richard Guenther <rguenther@suse.de> |
1008 | ||
1009 | PR debug/51650 | |
1010 | * dwarf2out.c (dwarf2out_finish): Always create a DIE for | |
1011 | the context of a limbo DIE when it does not already exist. | |
1012 | ||
a9730200 JJ |
1013 | 2012-01-03 Jakub Jelinek <jakub@redhat.com> |
1014 | ||
1015 | PR tree-optimization/51719 | |
1016 | * value-prof.c (gimple_ic): When indirect call isn't noreturn, | |
1017 | but direct call is, clear direct call's lhs and don't add fallthrough | |
1018 | edge from dcall_bb to join_bb and PHIs. | |
1019 | ||
be5de7a1 AK |
1020 | 2012-01-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
1021 | ||
1022 | * config/s390/s390.md ("*cmp<mode>_ccs"): Fix comment mentioning | |
1023 | the instructions emitted by the pattern. | |
1024 | ("*TDC_insn_<mode>"): Add comment. | |
1025 | ||
8b3c2951 RG |
1026 | 2012-01-03 Richard Guenther <rguenther@suse.de> |
1027 | ||
1028 | PR middle-end/51730 | |
1029 | * fold-const.c (fold_comparison): Properly canonicalize | |
1030 | tree offset and HOST_WIDE_INT bit position. | |
1031 | ||
96fda42c UB |
1032 | 2012-01-02 Uros Bizjak <ubizjak@gmail.com> |
1033 | ||
1034 | * config/ia64/ia64.c (expand_vec_perm_broadcast): Use correct | |
1035 | operands for extzv pattern. | |
1036 | ||
a4f436ff JJ |
1037 | 2012-01-02 Jakub Jelinek <jakub@redhat.com> |
1038 | ||
1039 | PR bootstrap/51725 | |
1040 | * cselib.c (add_mem_for_addr): Call canonical_cselib_val | |
1041 | on mem_elt first. | |
1042 | ||
842322d3 SL |
1043 | 2012-01-02 Sandra Loosemore <sandra@codesourcery.com> |
1044 | ||
1045 | * doc/invoke.texi (-flto and related options): Copy-edit. | |
1046 | ||
21e8e84d RS |
1047 | 2012-01-02 Richard Sandiford <rdsandiford@googlemail.com> |
1048 | ||
96fda42c | 1049 | * config/mips/mips.md (loadgp_newabi_<mode>): Add missing earlyclobber. |
21e8e84d | 1050 | |
06046046 JJ |
1051 | 2012-01-02 Jakub Jelinek <jakub@redhat.com> |
1052 | ||
1053 | * config/i386/sse.md (*avx2_gatherdi<mode>_3, *avx2_gatherdi<mode>_4): | |
1054 | New patterns. | |
1055 | ||
0d8f5d62 RS |
1056 | 2012-01-02 Richard Sandiford <rdsandiford@googlemail.com> |
1057 | ||
1058 | * expr.h (move_by_pieces_ninsns): Declare. | |
1059 | * expr.c (move_by_pieces_ninsns): Make external. | |
1060 | * config/mips/mips-protos.h (mips_move_by_pieces_p): Declare. | |
1061 | (mips_store_by_pieces_p): Likewise. | |
1062 | * config/mips/mips.h (MOVE_BY_PIECES_P): Call mips_move_by_pieces_p. | |
1063 | (STORE_BY_PIECES_P): Likewise mips_store_by_pieces_p. | |
1064 | * config/mips/mips.c (mips_move_by_pieces_p): New function. | |
1065 | (mips_store_by_pieces_p): Likewise. | |
1066 | ||
9f929ce6 JJ |
1067 | 2012-01-02 Jakub Jelinek <jakub@redhat.com> |
1068 | ||
1069 | * passes.c (register_one_dump_file): Free full_name. | |
1070 | ||
96fda42c | 1071 | * reload1.c (reload): Don't allocate reg_max_ref_width here. |
9f929ce6 JJ |
1072 | (calculate_elim_costs_all_insns): Free offsets_at and |
1073 | offsets_known_at at the end and clear the pointers. | |
1074 | ||
ce23293b GJL |
1075 | 2012-01-02 Georg-Johann Lay <avr@gjlay.de> |
1076 | ||
1077 | * config/avr/avr.opt (-mbranch-cost): Fix double definition of | |
1078 | this option introduced in r180739. | |
1079 | ||
884f56d1 GJL |
1080 | 2012-01-02 Georg-Johann Lay <avr@gjlay.de> |
1081 | ||
1082 | PR target/51345 | |
1083 | * config.gcc (tm_file target=avr]): Add avr/avr-multilib.h | |
1084 | (tmake_file target=avr): Add avr/t-multilib. | |
1085 | ||
1086 | * config/avr/avr-c.c (avr_cpu_cpp_builtins): Use AVR_HAVE_8BIT_SP | |
1087 | to built-in define __AVR_HAVE_8BIT_SP__, __AVR_HAVE_16BIT_SP__. | |
1088 | * config/avr/genmultilib.awk: New file. | |
1089 | * config/avr/t-multilib: New auto-generated file. | |
1090 | * config/avr/multilib.h: New auto-generated file. | |
1091 | * config/avr/t-avr (AVR_MCUS): New variable. | |
1092 | (genopt.sh): Use it. | |
1093 | (s-mlib): Depend on t-multilib. | |
1094 | (t-multilib, multilib.h): New dependencies. | |
1095 | (s-avr-mlib): New rule to build t-multilib, multilib.h from AVR_MCUS. | |
1096 | (MULTILIB_OPTIONS): Remove. | |
1097 | (MULTILIB_MATCHES): Remove. | |
1098 | (MULTILIB_DIRNAMES): Remove. | |
1099 | (MULTILIB_EXCEPTIONS): Remove: | |
1100 | * config/avr/genopt.sh: Don't use hard coded file name; | |
1101 | pass AVR_MCUS from t-avr instead. | |
1102 | ||
9ecd3a64 GJL |
1103 | 2012-01-02 Georg-Johann Lay <avr@gjlay.de> |
1104 | ||
1105 | * config/avr/avr.c (avr_out_ashrpsi3): Fix "case 31" to "case 23". | |
1106 | ||
8c57e547 GJL |
1107 | 2012-01-02 Georg-Johann Lay <avr@gjlay.de> |
1108 | ||
1109 | Implement light-weight DImode support. | |
1110 | * config/avr/avr-dimode.md: New file. | |
1111 | * config/avr/avr.md: Include it. | |
1112 | (adjust_len): Add plus64, compare64. | |
1113 | (HIDI): Remove code iterator. | |
1114 | (code_stdname): New code attribute. | |
1115 | (rotx, rotsmode): Remove DI. | |
1116 | (rotl<mode>3, *rotw<mode>, *rotb<mode>): Use HISI instead of HIDI | |
1117 | as code iterator. | |
1118 | * config/avr/avr-protos.h (avr_have_dimode): New. | |
1119 | (avr_out_plus64, avr_out_compare64): New. | |
1120 | * config/avr/avr.c (avr_out_compare): Handle DImode. | |
1121 | (avr_have_dimode): New variable definition and initialization. | |
1122 | (avr_out_compare64, avr_out_plus64): New functions. | |
1123 | (avr_out_plus_1): Use simplify_unary_operation to negate xval. | |
1124 | (adjust_insn_length): Handle ADJUST_LEN_COMPARE64, ADJUST_LEN_PLUS64. | |
1125 | (avr_compare_pattern): Skip DImode comparisons. | |
1126 | ||
8b61e863 RE |
1127 | 2012-01-02 Revital Eres <revital.eres@linaro.org> |
1128 | ||
1129 | * ddg.c (def_has_ccmode_p): New function. | |
1130 | (add_cross_iteration_register_deps, | |
1131 | create_ddg_dep_from_intra_loop_link): Call it. | |
1132 | ||
ba768e18 RG |
1133 | 2012-01-02 Richard Guenther <rguenther@suse.de> |
1134 | ||
1135 | PR other/51679 | |
1136 | * invoke.texi (fassociative-math): Remove spurious paranthesis. | |
1137 | ||
66f1b195 JJ |
1138 | 2012-01-01 Jakub Jelinek <jakub@redhat.com> |
1139 | ||
1140 | * gcc.c (process_command): Update copyright notice dates. | |
1141 | * gcov.c (print_version): Likewise. | |
1142 | * gcov-dump.c (print_version): Likewise. | |
1143 | * mips-tfile.c (main): Likewise. | |
1144 | * mips-tdump.c (main): Likewise. | |
1145 | ||
f2c74cc4 IR |
1146 | 2012-01-01 Ira Rosen <irar@il.ibm.com> |
1147 | ||
1148 | PR tree-optimization/51704 | |
1149 | * tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Check that | |
96fda42c | 1150 | a use is inside the basic block or loop before accessing its vect info. |
f2c74cc4 | 1151 | |
06f1716b JH |
1152 | 2012-01-01 Jan Hubicka <jhjh@suse.cz> |
1153 | ||
1154 | PR rtl-optimization/51069 | |
1155 | * cfgloopmanip.c (remove_path): Removing path making irreducible | |
1156 | region unconditional makes BB part of the region. | |
1157 | ||
45a5b21a JJ |
1158 | 2012-01-01 Jakub Jelinek <jakub@redhat.com> |
1159 | ||
1160 | PR tree-optimization/51683 | |
1161 | * tree-ssa-propagate.c (substitute_and_fold): Don't optimize away | |
1162 | calls with side-effects. | |
1163 | * tree-ssa-ccp.c (ccp_fold_stmt): Likewise. | |
ad41bd84 | 1164 | \f |
a7f45047 | 1165 | Copyright (C) 2012 Free Software Foundation, Inc. |
ad41bd84 JM |
1166 | |
1167 | Copying and distribution of this file, with or without modification, | |
1168 | are permitted in any medium without royalty provided the copyright | |
1169 | notice and this notice are preserved. |