]>
Commit | Line | Data |
---|---|---|
493dd43c RO |
1 | 2012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
2 | ||
3 | * doc/install.texi (Specific, i?86-*-solaris2.[89]): Update | |
4 | binutils reference. | |
5 | (Specific, i?86-*-solaris2.10): Remove GCC 4.0 reference. | |
6 | Update binutils references. | |
7 | (Specific, *-*-solaris2*): Mention bundled GCC in Solaris 10 and 11. | |
8 | Update binutils reference. | |
9 | Update Sun as/GNU ld caveat. | |
10 | Document binutils largefile requirement for LTO plugin. | |
11 | Remove referent to alternate libpthread. | |
12 | ||
5c30094f RO |
13 | 2012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
14 | ||
15 | * config.gcc (alpha*-dec-osf5.1*): Remove. | |
16 | * config.host (alpha*-dec-osf*): Remove. | |
17 | * configure.ac (*-*-osf*): Remove. | |
18 | (alpha*-dec-osf*): Remove. | |
19 | * configure: Regenerate. | |
20 | ||
21 | * config/alpha/host-osf.c, config/alpha/osf5.h, | |
22 | config/alpha/osf5.opt, config/alpha/va_list.h, config/alpha/x-osf: | |
23 | Remove. | |
24 | ||
25 | * config/alpha/alpha.h (TARGET_LD_BUGGY_LDGP): Remove. | |
26 | * config/alpha/alpha.c (struct machine_function): Update comment. | |
27 | (alpha_start_function): Remove Tru64 UNIX as handling for | |
28 | max_frame_size. | |
29 | * config/alpha/alpha.md ("exception_receiver"): Remove | |
30 | TARGET_LD_BUGGY_LDGP. | |
31 | ("*exception_receiver_2"): Likewise. | |
32 | * except.c (finish_eh_generation): Remove Tru64 reference. | |
33 | * ginclude/stdarg.h [_HIDDEN_VA_LIST]: Don't undef _VA_LIST. | |
34 | * system.h (TARGET_HANDLE_PRAGMA_EXTERN_PREFIX): Poison. | |
35 | * target.def (handle_pragma_extern_prefix): Remove. | |
36 | ||
37 | * Makefile.in (mips-tfile.o-warn): Remove. | |
38 | (ALL_HOST_BACKEND_OBJS): Remove mips-tfile.o, mips-tdump.o. | |
39 | (mips-tfile, mips-tfile.o, mips-tdump, mips-tdump.o): Remove. | |
40 | * mips-tdump.c, mips-tfile.c: Remove. | |
41 | ||
42 | * doc/extend.texi (Symbol-Renaming Pragmas): Remove #pragma | |
43 | extern_prefix. | |
44 | * doc/install.texi (Binaries): Remove Tru64 UNIX reference. | |
45 | (Specific, alpha*-dec-osf5.1): Note removal. | |
46 | * doc/tm.texi.in (Misc, TARGET_HANDLE_PRAGMA_EXTERN_PREFIX): | |
47 | Remove. | |
48 | * doc/tm.texi: Regenerate. | |
49 | * doc/trouble.texi (Cross-Compiler Problems): Remove. | |
50 | ||
bb008427 RG |
51 | 2012-03-12 Richard Guenther <rguenther@suse.de> |
52 | ||
53 | * config/arm/arm.c (neon_dereference_pointer): Do not call | |
54 | covert during RTL expansion. | |
55 | ||
281740d1 TG |
56 | 2012-03-12 Tristan Gingold <gingold@adacore.com> |
57 | ||
58 | * doc/invoke.texi (VMS Options): Merge Alpha/VMS and IA-64/VMS | |
59 | Options. Mention -mpointer-size. | |
60 | ||
21fa2faf RG |
61 | 2012-03-12 Richard Guenther <rguenther@suse.de> |
62 | ||
63 | * config/alpha/alpha.c (alpha_gimplify_va_arg): Use | |
64 | build_nonstandard_integer_type. | |
65 | ||
7ee6fd68 RG |
66 | 2012-03-12 Richard Guenther <rguenther@suse.de> |
67 | ||
68 | * tree.c (signed_or_unsigned_type_for): Use | |
69 | build_nonstandard_integer_type. | |
70 | (signed_type_for): Adjust documentation. | |
71 | (unsigned_type_for): Likewise. | |
72 | * tree-pretty-print.c (dump_generic_node): Use standard names | |
73 | for non-standard integer types if available. | |
74 | ||
d8aba32a TG |
75 | 2012-03-12 Tristan Gingold <gingold@adacore.com> |
76 | ||
77 | * config/vms/vms.opt: Add vms-opts.h header. | |
78 | (mmalloc64): Use flag_vms_malloc64 flag instead of MALLOC64 | |
79 | target mask. | |
80 | (-mvms-return-codes): Document. | |
81 | (-mpointer-size): New option. | |
82 | (vms_pointer_size): Add enumeration. | |
83 | * config/vms/vms-opts.h: New file. | |
84 | * config/vms/vms.h (TARGET_OS_CPP_BUILTINS): Define | |
85 | __INITIAL_POINTER_SIZE. | |
86 | (POINTER_SIZE, SIZE_TYPE, PTRDIFF_TYPE): Adjust definition. | |
87 | (C_COMMON_OVERRIDE_OPTIONS): Define. | |
88 | (DWARF2_ADDR_SIZE): Define. | |
89 | * config/vms/vms.c (vms_patch_builtins): Adjust condition. | |
90 | * config/vms/vms-protos.h (vms_c_common_override_options): | |
91 | New prototype. | |
92 | * config/vms/vms-c.c (vms_pragma_pointer_size): Ignore pragma | |
93 | if -mno-pointer-size. | |
94 | (vms_c_common_override_options): New function. | |
95 | * config/ia64/vms.h (TARGET_DEFAULT): Remove MASK_MALLOC64. | |
96 | * config/alpha/vms.h (TARGET_DEFAULT): Remove MASK_MALLOC64. | |
97 | (MALLOC_ABI_ALIGNMENT): Use flag_vms_malloc64 | |
98 | and flag_vms_pointer_size. | |
99 | (MASK_RETURN_ADDR): Set according to flag_vms_pointer_size. | |
100 | * config.gcc (*-*-*vms*): Define xm_file. | |
101 | (alpha*-dec-*vms*): Do not define xm_file. | |
102 | (alpha64-dec-*vms*): Remove. | |
103 | (ia64-hp-*vms*): Do not define xm_file. Simplify tm_file | |
104 | and tmake_file. | |
105 | ||
7b5c5139 JJ |
106 | 2012-03-12 Jakub Jelinek <jakub@redhat.com> |
107 | ||
108 | PR tree-optimization/51721 | |
109 | * tree-vrp.c (register_edge_assert_for_2): Add asserts for unsvar | |
110 | if (int) unsvar cmp CST. | |
111 | ||
3f5f6592 RG |
112 | 2012-03-12 Richard Guenther <rguenther@suse.de> |
113 | ||
114 | * tree-sra.c (create_access_replacement): Only rename the | |
115 | replacement if we can rewrite it into SSA form. Properly | |
116 | mark register typed replacements that we cannot rewrite | |
117 | with TREE_ADDRESSABLE. | |
118 | * tree-cfg.c (verify_expr): Fix BIT_FIELD_REF verification | |
119 | for aggregate or BLKmode results. | |
120 | ||
01c1f20d JJ |
121 | 2012-03-12 Jakub Jelinek <jakub@redhat.com> |
122 | ||
123 | PR tree-optimization/52533 | |
124 | * tree-vrp.c (register_edge_assert_for_2): Use double_int | |
125 | type for mask, only handle shifts by non-zero in-range | |
126 | shift count, for LE_EXPR and GT_EXPR if new_val is | |
127 | maximum, don't add the assertion. | |
128 | ||
bf2eaa3f KY |
129 | 2012-02-12 Kirill Yukhin <kirill.yukhin@intel.com> |
130 | ||
131 | * doc/invoke.texi: Document -mrtm option. | |
132 | * common/config/i386/i386-common.c (OPTION_MASK_ISA_RTM_SET): | |
133 | New. | |
134 | (OPTION_MASK_ISA_RTM_UNSET): Ditto. | |
135 | (ix86_handle_option): Handle OPT_mrtm. | |
136 | * config.gcc (i[34567]86-*-*): Add rtmintrin.h and | |
137 | xtestintrin.h. | |
138 | (x86_64-*-*): Ditto. | |
139 | * i386-builtin-types.def (INT_FTYPE_VOID): New. | |
140 | * config/i386/i386-c.c (ix86_target_macros_internal): Define | |
141 | __RTM__ if needed. | |
142 | (ix86_target_string): Define -mrtm option. | |
143 | (PTA_RTM): New. | |
144 | (ix86_option_override_internal): Extend "corei7-avx" with | |
145 | RTM option. Handle new option. | |
146 | (ix86_valid_target_attribute_inner_p): Add OPT_mrtm. | |
147 | (ix86_builtins): Add IX86_BUILTIN_XBEGIN, IX86_BUILTIN_XEND, | |
148 | IX86_BUILTIN_XTEST. | |
149 | (bdesc_special_args): Ditto. | |
150 | (ix86_init_mmx_sse_builtins): Add IX86_BUILTIN_XABORT. | |
151 | (ix86_expand_special_args_builtin): Handle new built-in type. | |
152 | (ix86_expand_builtin): Handle XABORT instruction. | |
153 | * config/i386/i386.h (TARGET_RTM): New. | |
154 | * config/i386/i386.md (UNSPECV_XBEGIN): New. | |
155 | (UNSPECV_XEND): Ditto. | |
156 | (UNSPECV_XABORT): Ditto. | |
157 | (UNSPECV_XTEST): Ditto. | |
158 | (xbegin): Ditto. | |
159 | (xbegin_1): Ditto. | |
160 | (xend): Ditto. | |
161 | (xabort): Ditto | |
162 | (xtest): Ditto. | |
163 | (xtest_1): Ditto. | |
164 | * config/i386/i386.opt (mrtm): New. | |
165 | * config/i386/immintrin.h: Include rtmintrin.h and | |
166 | xtestintrin.h. | |
167 | * config/i386/rtmintrin.h: New header. | |
168 | * config/i386/xtestintrin.h: Ditto. | |
169 | ||
914e2f45 TG |
170 | 2012-03-12 Tristan Gingold <gingold@adacore.com> |
171 | ||
172 | * ginclude/stddef.h: Adjust previous patch. Use __VMS__ instead | |
173 | of VMS. | |
174 | ||
f70c41dd UB |
175 | 2012-03-12 Uros Bizjak <ubizjak@gmail.com> |
176 | ||
177 | * config/i386/i386.md (setcc + movzbl to xor + setcc peephole2): | |
178 | Also convert sequences with CC setting arithmetic instruction. | |
179 | ||
25d28bd3 SL |
180 | 2012-03-11 Sandra Loosemore <sandra@codesourcery.com> |
181 | ||
182 | * doc/invoke.texi (Option Summary): Move -no-integrated-cpp | |
183 | from C Language Options to Preprocessor Options. | |
184 | (C Dialect Options): Move -no-integrated-cpp documentation | |
185 | from here... | |
186 | (Preprocessor Options): ...to here. Rewrite the description | |
187 | so it makes more sense, and remove discussion of merging | |
188 | front ends. | |
189 | ||
8100d8c1 L |
190 | 2012-03-11 H.J. Lu <hongjiu.lu@intel.com> |
191 | ||
192 | * config/i386/i386.c (ix86_expand_movmem): Use word_mode for size | |
193 | needed for loop. | |
194 | (ix86_expand_setmem): Likewise. | |
195 | ||
670bb1a1 UB |
196 | 2012-03-11 Uros Bizjak <ubizjak@gmail.com> |
197 | ||
198 | * config/i386/i386.c (ix86_zero_extend_to_Pmode): Rewrite using | |
199 | convert_to_mode. | |
200 | ||
ba61421d L |
201 | 2012-03-11 H.J. Lu <hongjiu.lu@intel.com> |
202 | ||
203 | * config/i386/i386.c (ix86_trampoline_init): Use movl for 64bit if | |
204 | ptr_mode == SImode. Replace DImode with Pmode or ptr_mode. | |
205 | ||
649507af L |
206 | 2012-03-11 H.J. Lu <hongjiu.lu@intel.com> |
207 | ||
670bb1a1 | 208 | * config/i386/i386.c (x86_this_parameter): Replace DImode with Pmode. |
649507af | 209 | |
1991321c L |
210 | 2012-03-11 H.J. Lu <hongjiu.lu@intel.com> |
211 | ||
212 | * config/i386/i386.md (lwp_slwpcb): Check Pmode instead of | |
213 | TARGET_64BIT. | |
214 | ||
9ec90caa UB |
215 | 2012-03-11 H.J. Lu <hongjiu.lu@intel.com> |
216 | Uros Bizjak <ubizjak@gmail.com> | |
1ce8d925 | 217 | |
9ec90caa | 218 | * config/i386/predicates.md (call_insn_operand): Allow |
1ce8d925 UB |
219 | constant_call_address_operand in Pmode only. |
220 | (sibcall_insn_operand): Ditto. | |
221 | * config/i386/i386.md (*call): Use W mode iterator instead of P mode. | |
222 | (*call_vzeroupper): Ditto. | |
223 | (*sibcall): Ditto. | |
224 | (*sibcall_vzeroupper): Ditto. | |
225 | (*call_value): Ditto. | |
226 | (*call_value_vzeroupper): Ditto. | |
227 | (*sibcall_value): Ditto. | |
228 | (*sibcall_value_vzeroupper): Ditto. | |
229 | (*indirect_jump): Ditto. | |
230 | (*tablejump_1): Ditto. | |
231 | (indirect_jump): Convert memory address to word mode for TARGET_X32. | |
232 | (tablejump): Ditto. | |
233 | * config/i386/i386.c (ix86_expand_call): Convert indirect operands | |
234 | to word mode. | |
235 | ||
07c0b560 OE |
236 | 2012-03-11 Oleg Endo <olegendo@gcc.gnu.org> |
237 | ||
238 | PR target/51244 | |
239 | * config/sh/sh.md (movnegt): Expand into respective insns immediately. | |
240 | Use movrt_negc instead of negc pattern for non-SH2A. | |
241 | (*movnegt): Remove. | |
242 | (*movrt_negc, *negnegt, *movtt, *movt_qi): New insns and splits. | |
243 | ||
09255652 L |
244 | 2012-03-10 H.J. Lu <hongjiu.lu@intel.com> |
245 | ||
246 | * config/i386/i386.c (ix86_decompose_address): Disallow fs:(reg) | |
247 | if Pmode != word_mode. | |
248 | (legitimize_tls_address): Call gen_tls_initial_exec_x32 if | |
1ce8d925 | 249 | Pmode == SImode for TARGET_X32. |
09255652 L |
250 | |
251 | * config/i386/i386.md (UNSPEC_TLS_IE_X32): New. | |
252 | (tls_initial_exec_x32): Likewise. | |
253 | ||
30823ba6 CLT |
254 | 2012-03-10 Chung-Lin Tang <cltang@codesourcery.com> |
255 | ||
256 | PR rtl-optimization/52528 | |
257 | * combine.c (can_combine_p): Add setting of subst_low_luid | |
258 | before call to expand_field_assignment(). | |
259 | ||
b364b425 SL |
260 | 2012-03-09 Sandra Loosemore <sandra@codesourcery.com> |
261 | ||
262 | * doc/invoke.texi: Use correct names/markup for "GCC", "GDB", "ld", | |
263 | and related program names. | |
264 | ||
7bd11aba SL |
265 | 2012-03-09 Sandra Loosemore <sandra@codesourcery.com> |
266 | ||
267 | * doc/invoke.texi: Use correct names for "DWARF", "stabs", and "ELF". | |
268 | ||
080324ac UB |
269 | 2012-03-09 Uros Bizjak <ubizjak@gmail.com> |
270 | ||
271 | PR target/52530 | |
272 | * config/i386/i386.c (ix86_print_operand): Handle 'E' operand modifier. | |
273 | (ix86_print_operand_address): Handle UNSPEC_LEA_ADDR. Do not fallback | |
274 | to set code to 'q'. | |
275 | * config/i386/i386.md (UNSPEC_LEA_ADDR): New unspec. | |
276 | (*movdi_internal_rex64): Use %E operand modifier for lea. | |
277 | (*movsi_internal): Ditto. | |
278 | (*lea_1): Ditto. | |
279 | (*lea<mode>_2): Ditto. | |
280 | (*lea_{3,4,5,6}_zext): Ditto. | |
281 | (*tls_global_dynamic_32_gnu): Ditto. | |
282 | (*tls_global_dynamic_64): Ditto. | |
283 | (*tls_dynamic_gnu2_lea_32): Ditto. | |
284 | (*tls_dynamic_gnu2_lea_64): Ditto. | |
285 | (pro_epilogue_adjust_stack_<mode>_add): Ditto. | |
286 | ||
45cfa18d MM |
287 | 2012-03-09 Michael Meissner <meissner@linux.vnet.ibm.com> |
288 | ||
289 | * config/rs6000/linux64.h (OPTION_TARGET_CPU_DEFAULT): Do not | |
290 | redefine to be NULL if the current bit-size is different from the | |
291 | configured bit-size. | |
292 | ||
293 | * config/rs6000/rs6000.c (rs6000_option_override_internal): If the | |
294 | cpu is defaulted, use PROCESSOR_DEFAULT and PROCESSOR_DEFAULT64 to | |
295 | set the default tuning. Add asserts to make sure the cpu and tune | |
296 | indexes are defined. Fix tests for cpu/tune index to use >= 0 to | |
297 | test whether the index is set, instead of > 0. | |
298 | (rs6000_file_start): Do not reset the default cpu if the current | |
299 | bit-size is different from the configured bit-size. | |
300 | ||
30da483d TG |
301 | 2012-03-09 Tristan Gingold <gingold@adacore.com> |
302 | ||
303 | * config/vms/vms-crtlmap.map: Add comments. | |
304 | Add entries needed to build Ada RTS. | |
305 | ||
c8be95e6 TG |
306 | 2012-03-09 Tristan Gingold <gingold@adacore.com> |
307 | ||
308 | * ginclude/stddef.h: Do not define __size_t on VMS. | |
309 | ||
412cd719 TG |
310 | 2012-03-09 Tristan Gingold <gingold@adacore.com> |
311 | ||
312 | * c-tree.h (c_default_pointer_mode): New variable. | |
313 | * c-decl.c (c_default_pointer_mode): New variable. | |
314 | (c_build_pointer_type): New function. | |
315 | (grokdeclarator): Call c_build_pointer_type instead | |
316 | of build_pointer_type. | |
317 | ||
318 | * config/vms/vms-c.c: Include c-tree.h | |
319 | (saved_pointer_mode): New variable. | |
320 | (handle_pragma_pointer_size): New function. | |
321 | (vms_pragma_pointer_size, vms_pragma_required_pointer_size): Likewise. | |
322 | (vms_c_register_pragma): Register __pointer_size and | |
323 | __required_pointer_size pragmas. | |
324 | ||
575a6235 TG |
325 | 2012-03-09 Tristan Gingold <gingold@adacore.com> |
326 | ||
327 | * config/vms/vms-c.c (vms_construct_include_filename): New function. | |
328 | (vms_c_register_includes): Reference it. | |
329 | ||
210ac0b7 AP |
330 | 2012-03-09 Andrew Pinski <apinski@cavium.com> |
331 | ||
332 | PR middle-end/51988 | |
333 | * tree-ssa-phiopt.c: Include tree-pretty-print.h for | |
334 | print_generic_expr. | |
335 | (tree_ssa_phiopt_worker): Go through all the PHIs for | |
336 | value_replacement instead of just the singleton one. | |
337 | (value_replacement): Change return type to int. Return 0 instead of | |
338 | false. | |
575a6235 TG |
339 | Allow the middle basic block to contain more than just the defining |
340 | statement. | |
210ac0b7 AP |
341 | Handle non empty middle basic blocks. |
342 | * Makefile.in (tree-ssa-phiopt.o): Add tree-pretty-print.h. | |
343 | ||
bef28ced JL |
344 | 2012-03-09 Jiangning Liu <jiangning.liu@arm.com> |
345 | ||
346 | * tree-scalar-evolution (interpret_rhs_expr): generate chrec for | |
347 | array reference and component reference. | |
348 | (analyze_scalar_evolution_for_address_of): New. | |
349 | ||
9916d7ea JZ |
350 | 2012-03-08 Jie Zhang <jzhang918@gmail.com> |
351 | ||
352 | PR target/49862 | |
080324ac | 353 | * config/bfin/bfin.c (hwloop_optimize): Fix unused variable warnings. |
9916d7ea JZ |
354 | (hwloop_pattern_reg): Fix set but not used warning. |
355 | (bfin_reorg_loops): Remove unused parameter. | |
356 | (bfin_reorg): Update use of bfin_reorg_loops. | |
357 | ||
cc845923 L |
358 | 2012-03-08 H.J. Lu <hongjiu.lu@intel.com> |
359 | ||
360 | * config/i386/i386.c (setup_incoming_varargs_64): Use word_mode | |
361 | with integer parameters in registers. | |
362 | (gen_push): Push register in word_mode instead of Pmode. | |
363 | (ix86_emit_save_regs): Likewise. | |
080324ac | 364 | (ix86_emit_save_regs_using_mov): Save integer registers in word_mode. |
cc845923 L |
365 | (gen_pop): Pop register in word_mode instead of Pmode. |
366 | (ix86_emit_restore_regs_using_pop): Likewise. | |
367 | (ix86_expand_prologue): Replace Pmode with word_mode for push | |
368 | immediate. Use ix86_gen_pro_epilogue_adjust_stack. Save and | |
369 | restore RAX and R10 in word_mode. | |
370 | (ix86_emit_restore_regs_using_mov): Restore integer registers | |
371 | in word_mode. | |
372 | (ix86_expand_split_stack_prologue): Save R10_REG and restore in | |
373 | word_mode. | |
374 | (ix86_split_to_parts): Use word_mode with PUT_MODE for push. | |
375 | (ix86_split_long_move): Likewise. | |
376 | ||
377 | * config/i386/i386.md (W): New. | |
378 | (*push<mode>2_prologue): Replace :P with :W. | |
379 | (*pop<mode>1): Likewise. | |
380 | (*pop<mode>1_epilogue): Likewise. | |
381 | (push/pop peephole2): Use word_mode scratch registers. | |
382 | ||
b9719055 UB |
383 | 2012-03-08 Uros Bizjak <ubizjak@gmail.com> |
384 | ||
385 | * config/i386/predicates.md (indirect_branch_operand): Simplify. | |
386 | ||
e04d063b GJL |
387 | 2012-03-08 Georg-Johann Lay <avr@gjlay.de> |
388 | ||
389 | * config/avr/avr.md (*addhi3, addhi3_clobber): Add "w" alternative | |
390 | for constants in [-63,63]. | |
391 | ||
ce19a3f8 UB |
392 | 2012-03-08 Uros Bizjak <ubizjak@gmail.com> |
393 | ||
394 | PR target/52530 | |
395 | Revert: | |
396 | 2012-03-04 H.J. Lu <hongjiu.lu@intel.com> | |
397 | ||
398 | * config/i386/i386.c (ix86_print_operand_address): Only handle | |
399 | zero-extended DImode addresses. | |
400 | ||
2527ff87 RO |
401 | 2012-03-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
402 | ||
403 | * configure.ac (gcc_cv_as_ix86_tlsldmplt): Add label. | |
404 | * configure: Regenerate. | |
405 | ||
d93417c8 GJL |
406 | 2012-03-08 Georg-Johann Lay <avr@gjlay.de> |
407 | ||
408 | PR target/52496 | |
409 | * config/avr/avr.c (avr_mem_clobber): New static function. | |
410 | (avr_expand_delay_cycles): Add memory clobber operand to | |
411 | delay_cycles_1, delay_cycles_2, delay_cycles_3, delay_cycles_4. | |
412 | * config/avr/avr.md (unspec): Add UNSPEC_MEMORY_BARRIER. | |
413 | (enable_interrupt, disable_interrupt): New expander. | |
414 | (nopv, sleep, wdr): New expanders. | |
415 | (delay_cycles_1): Add memory clobber. | |
416 | (delay_cycles_2): Add memory clobber. | |
417 | (delay_cycles_3): Add memory clobber. | |
418 | (delay_cycles_4): Add memory clobber. | |
419 | (cli_sei): New insn from former "enable_interrupt", | |
420 | "disable_interrupt" with memory clobber. | |
421 | (*wdt): New insn from former "wdt" with memory clobber. | |
422 | (*nopv): Similar, but for "nopv". | |
423 | (*sleep): Similar, but for "sleep". | |
424 | ||
bed9e870 OE |
425 | 2012-03-07 Oleg Endo <olegendo@gcc.gnu.org> |
426 | Kaz Kojima <kkojima@gcc.gnu.org> | |
427 | ||
428 | PR target/52503 | |
429 | * config/sh/sh.opt (msoft-atomic): Use Var instead of Mask. | |
430 | * config/sh/linux.h (TARGET_DEFAULT): Remove MASK_SOFT_ATOMIC. | |
431 | (SUBTARGET_OVERRIDE_OPTIONS): Define. | |
432 | ||
ca538e97 UB |
433 | 2012-03-07 Uros Bizjak <ubizjak@gmail.com> |
434 | ||
435 | * config/i386/predicates.md (x86_64_zext_general_operand): New. | |
436 | * config/i386/i386.md (*zero_extendsidi2_rex64): Change operand 1 | |
437 | predicate to x86_64_zext_general_operand. Accept "Z" constraint. | |
438 | ||
95f2389a WL |
439 | 2012-03-07 Walter Lee <walt@tilera.com> |
440 | ||
441 | * config/tilegx/tilegx.c (tilegx_expand_prologue): Don't generate | |
442 | REG_CFA_* notes for the stack pointer. | |
443 | (tilegx_expand_epilogue): Restore stack pointer by adjusting it by | |
444 | EH_RETURN_STACKADJ_RTX. | |
445 | * config/tilepro/tilepro.c (tilepro_expand_prologue): Don't | |
446 | generate REG_CFA_* notes for the stack pointer. | |
447 | (tilepro_expand_epilogue): Restore stack pointer by adjusting it | |
448 | by EH_RETURN_STACKADJ_RTX. | |
449 | ||
0bd5f4dd GJL |
450 | 2012-03-07 Georg-Johann Lay <avr@gjlay.de> |
451 | ||
452 | * doc/invoke.texi (AVR Built-in Macros): Correct condition for | |
453 | when __AVR_3_BYTE_PC__ is defined. | |
454 | ||
397c0dc8 UB |
455 | 2012-03-07 Uros Bizjak <ubizjak@gmail.com> |
456 | ||
457 | * config/i386/i386.c (ix86_print_operand_punct_valid_p): Add '^'. | |
458 | (ix86_print_operand): Handle '^'. | |
459 | * config/i386/i386.md (*strmovdi_rex_1): Macroize memory operands | |
460 | using P mode iterator. Add %^ to asm template to conditionally emit | |
461 | addr32 prefix. | |
462 | (*rep_movdi_rex64): Ditto. | |
463 | (*strsetdi_rex_1): Ditto. | |
464 | (*rep_stosdi_rex64): Ditto. | |
465 | (*strmov{si,hi,qi}_1): Add %^ to asm template to | |
466 | conditionally emit addr32 prefix. | |
467 | (*rep_mov{si,qi}): Ditto. | |
468 | (*strset{si,hi,qi}): Ditto. | |
469 | (*rep_stos{si,qi}): Ditto. | |
470 | (*cmpstrnqi_nz_1): Ditto. | |
471 | (*cmpstrnqi_1): Ditto. | |
472 | (*strlenqi_1): Ditto. | |
473 | ||
cccff71a L |
474 | 2012-03-07 H.J. Lu <hongjiu.lu@intel.com> |
475 | ||
476 | * config/i386/i386.c (function_value_64): Return pointers in | |
477 | word_mode instead of Pmode. | |
478 | (ix86_promote_function_mode): Likewise. | |
479 | ||
0f250839 RG |
480 | 2012-03-07 Richard Guenther <rguenther@suse.de> |
481 | ||
482 | * coverage.c (get_gcov_type): Use type_for_mode. | |
483 | (get_gcov_unsigned_t): Likewise. | |
484 | * expr.c (store_constructor): Use type_for_mode. | |
485 | (try_casesi): Likewise. | |
397c0dc8 | 486 | * tree-ssa-loop-ivopts.c (add_standard_iv_candidates_for_size): Remove. |
0f250839 RG |
487 | (add_standard_iv_candidates): Use standard type trees. |
488 | * dojump.c (do_jump): Remove dead code. | |
489 | ||
647d4b75 RG |
490 | 2012-03-07 Richard Guenther <rguenther@suse.de> |
491 | ||
492 | * c-typeck.c (pointer_diff): Use c_common_type_for_size. | |
493 | ||
73ddd02d RG |
494 | 2012-03-07 Richard Guenther <rguenther@suse.de> |
495 | ||
496 | * convert.c (strip_float_extensions): Move ... | |
497 | * tree.c (strip_float_extensions): ... here. | |
498 | ||
1274e3a4 GJL |
499 | 2012-03-07 Georg-Johann Lay <avr@gjlay.de> |
500 | ||
501 | PR target/52484 | |
502 | * config/avr/avr.md (xload<mode>_A): Add R22... to register footprint. | |
503 | ||
96f9265a RG |
504 | 2012-03-07 Richard Guenther <rguenther@suse.de> |
505 | ||
506 | * omp-low.c (extract_omp_for_data): Use signed_type_for. | |
507 | (expand_omp_for_generic): Likewise. | |
508 | (expand_omp_for_static_nochunk): Likewise. | |
509 | (expand_omp_for_static_chunk): Likewise. | |
510 | * tree-vect-stmts.c (vect_gen_perm_mask): Use type_for_mode. | |
511 | * tree-vect-slp.c (vect_transform_slp_perm_load): Likewise. | |
512 | * tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop): | |
513 | Use unsigned_type_for. | |
514 | (vect_create_cond_for_align_checks): Use signed_type_for. | |
515 | ||
3f1960ac AB |
516 | 2012-03-07 Andrey Belevantsev <abel@ispras.ru> |
517 | ||
518 | PR rtl-optimization/52203 | |
519 | * sel-sched.c (estimate_insn_cost): New parameter pempty. Adjust | |
520 | all callers to pass NULL except ... | |
521 | (reset_sched_cycles_in_current_ebb): ... here, save the value | |
522 | in new variable 'empty'. Increase issue_rate only for | |
397c0dc8 | 523 | non-empty insns. |
3f1960ac | 524 | |
d6baa446 RC |
525 | 2012-03-07 Ralf Corsépius <ralf.corsepius@rtems.org> |
526 | ||
527 | PR target/51417 | |
397c0dc8 UB |
528 | * Makefile.in: Let install-gcc-ar depend on installdirs, |
529 | gcc-ar$(exeext), gcc-nm$(exeext), gcc-ranlib$(exeext). | |
d6baa446 RC |
530 | Don't double canonicalize if cross-compiling. |
531 | ||
42601c63 GJL |
532 | 2012-03-07 Georg-Johann Lay <avr@gjlay.de> |
533 | ||
534 | PR target/52506 | |
535 | * gcc/config/avr/avr.c (expand_epilogue): Fix order of restoration | |
536 | to: RAMPZ, RAMPY, RAMPX, RAMPD. | |
537 | (expand_prologue): Only clear RAMPZ if it has effect on RAM-read. | |
538 | ||
61108225 GJL |
539 | 2012-03-07 Georg-Johann Lay <avr@gjlay.de> |
540 | ||
541 | PR target/52505 | |
542 | * config/avr/avr.c (avr_out_xload): Don't read unintentionally | |
543 | from RAM. | |
544 | * config/avr/avr.md (xload_8): Adjust insn length. | |
545 | ||
b30e10ab GJL |
546 | 2012-03-07 Georg-Johann Lay <avr@gjlay.de> |
547 | ||
548 | PR target/52461 | |
549 | * gcc/config/avr/avr.c (avr_out_lpm): Clear RAMPZ after usage | |
550 | if RAMPZ affects reading from RAM. | |
551 | ||
eb3e63cc RG |
552 | 2012-03-07 Richard Guenther <rguenther@suse.de> |
553 | ||
554 | PR pch/52518 | |
555 | PR pch/38987 | |
556 | * doc/invoke.texi (Precompiled Headers): Remove sentence that | |
557 | suggests you can include PCHs from inside another header. | |
558 | ||
788284ef RS |
559 | 2012-03-07 Richard Sandiford <rdsandiford@googlemail.com> |
560 | ||
561 | PR middle-end/52515 | |
562 | * rtl.h (pc_rtx, cc0_rtx, ret_rtx, simple_return_rtx): Add GTY markers. | |
563 | ||
98b1d9b2 KT |
564 | 2012-03-07 Kai Tietz <ktietz@redhat.com> |
565 | ||
566 | * doc/invoke.texi (fwritable-relocated-rdata): Document | |
567 | new Cygwin/MinGW target option. | |
568 | * config/i386/winnt.c (i386_pe_unique_section): Ignore | |
569 | reloc if flag -fwritable-relocated-rdata is not set. | |
570 | (i386_pe_section_type_flags): Likewise. | |
571 | * config/i386/cygming.opt (fwritable-relocated-rdata): | |
572 | Add new flag variable flag_writable_rel_rdata. | |
573 | ||
f409d239 RG |
574 | 2012-03-07 Richard Guenther <rguenther@suse.de> |
575 | ||
576 | * tree-ssa-math-opts.c (convert_mult_to_widen): Check actual | |
577 | precision against gimple constraints. | |
578 | ||
ca4adc91 RS |
579 | 2012-03-06 Richard Sandiford <rdsandiford@googlemail.com> |
580 | ||
581 | PR middle-end/52372 | |
582 | * rtl.h (pc_rtx, ret_rtx, simple_return_rtx, cc0_rtx): Redefine as | |
583 | variables. | |
584 | (GR_PC, GR_CC0, GR_RETURN, GR_SIMPLE_RETURN): Delete. | |
585 | * emit-rtl.c (pc_rtx, ret_rtx, simple_return_rtx, cc0_rtx): New | |
586 | variables. | |
587 | (init_emit_regs): Move associated initialization to... | |
588 | (init_emit_once): ...here. | |
589 | ||
22a89c86 RH |
590 | 2012-03-06 Richard Henderson <rth@redhat.com> |
591 | ||
592 | * config/m68k/m68k.h (ISA_HAS_TAS): New. | |
593 | * config/m68k/sync.md (atomic_test_and_set): Use it. | |
594 | (atomic_test_and_set_1): Likewise. | |
595 | ||
46402cbe MM |
596 | 2012-03-06 Michael Meissner <meissner@linux.vnet.ibm.com> |
597 | ||
598 | PR target/50310 | |
599 | * config/rs6000/vector.md (vector_uneq<mode>): Add support for | |
600 | UNEQ, LTGT, ORDERED, and UNORDERED IEEE vector comparisons. | |
601 | (vector_ltgt<mode>): Likewise. | |
602 | (vector_ordered<mode>): Likewise. | |
603 | (vector_unordered<mode>): Likewise. | |
397c0dc8 | 604 | * config/rs6000/rs6000.c (rs6000_emit_vector_compare_inner): Likewise. |
46402cbe | 605 | |
6342e53f AH |
606 | 2012-03-06 Aldy Hernandez <aldyh@redhat.com> |
607 | ||
608 | * trans-mem.c: New typedef for tm_region_p. | |
609 | Define vector types for tm_region_p. | |
610 | (tm_region_init): Replace region_worklist to a vector called | |
611 | bb_regions. | |
612 | ||
d8f56643 RG |
613 | 2012-03-06 Richard Guenther <rguenther@suse.de> |
614 | ||
615 | * fold-const.c (build_fold_addr_expr_with_type_loc): Fold | |
616 | MEM_REF with constant pointer operand. | |
617 | ||
9da5500b RG |
618 | 2012-03-06 Richard Guenther <rguenther@suse.de> |
619 | ||
620 | PR middle-end/52493 | |
621 | * tree-ssa-alias.c (ptr_derefs_may_alias_p): Robustify. | |
622 | ||
66df6e9e TG |
623 | 2012-03-06 Tristan Gingold <gingold@adacore.com> |
624 | ||
397c0dc8 | 625 | * config/vms/vms-c.c (vms_pragma_nomember_alignment): Handle octaword. |
66df6e9e TG |
626 | (external_model_kind): Improve documentation. |
627 | (vms_pragma_extern_model): Handle relaxed_redef. | |
628 | (vms_c_register_pragma): Allow expansion for nomember_alignment. | |
629 | ||
837fd3b0 GJL |
630 | 2012-03-06 Georg-Johann Lay <avr@gjlay.de> |
631 | ||
632 | * doc/invoke.texi (AVR Options): -mmcu=: Document the XMEGA cores. | |
633 | Explain RAMPD, RAMPX, RAMPDY, RAMPZ usage by avr-gcc. | |
634 | Some more notes on EIND usage and reorder EIND subsection. | |
635 | ||
17a27c59 TG |
636 | 2012-03-06 Tristan Gingold <gingold@adacore.com> |
637 | ||
638 | * config/vms/vms.c (VMS_CRTL_LDBL): Rename from VMS_CRTL_PRNTF. | |
639 | * config/vms/vms-crtlmap.map: Rename PRNTF to LDBL. | |
640 | ||
a2ddaaf5 TG |
641 | 2012-03-06 Tristan Gingold <gingold@adacore.com> |
642 | ||
643 | * config/vms/t-vmsnative (version): Define. | |
644 | * config/vms/t-vms (STMP_FIXPROTO, STMP_FIXINC, version): Remove. | |
645 | ||
b7b5540a AB |
646 | 2012-03-06 Andrey Belevantsev <abel@ispras.ru> |
647 | ||
648 | PR rtl-optimization/52250 | |
649 | * sel-sched-ir.c (maybe_tidy_empty_bb): Try harder to find a bb | |
650 | to put note list into. Unconditionally call move_bb_info. | |
651 | (move_bb_info): Do not assert the blocks being in the same region, | |
a2ddaaf5 | 652 | just drop the note list if they are not. |
b7b5540a | 653 | |
9747719a OE |
654 | 2012-03-06 Oleg Endo <olegendo@gcc.gnu.org> |
655 | ||
656 | PR target/51244 | |
657 | * config/sh/sh.c (sh_expand_t_scc): Remove SH2A special case | |
658 | and use unified expansion logic. | |
659 | * config/sh/sh.md (xorsi3_movrt): Rename to movrt. Move | |
660 | closer to the existing movt insn. | |
661 | (negc): Rename insn to *negc. Add new expander. | |
662 | (movnegt): Use xor pattern for T bit negation. Reserve helper | |
663 | constant for negc pattern. | |
664 | (*movnegt): New insn and splitter. | |
665 | ||
5de72424 BS |
666 | 2012-03-05 Bernd Schmidt <bernds@codesourcery.com> |
667 | ||
668 | * c-typeck.c (pointer_diff): Check for POINTER_PLUS_EXPR, not | |
669 | PLUS_EXPR. | |
670 | ||
3b1552c1 RH |
671 | 2012-03-05 Richard Henderson <rth@redhat.com> |
672 | ||
673 | * genemit.c (main): Include "target.h" in insn-emit.c. | |
674 | * Makefile.in (insn-emit.o): Depend on TARGET_H. | |
675 | * config/sh/sync.md (atomic_test_and_set): Reference | |
676 | targetm.atomic_test_and_set_trueval instead of | |
677 | TARGET_ATOMIC_TEST_AND_SET_TRUEVAL. | |
678 | ||
1565f169 JR |
679 | 2012-03-05 Joern Rennecke <joern.rennecke@embecosm.com> |
680 | ||
681 | * config/epiphany/epiphany.c (epiphany_function_value_regno_p): | |
682 | Make static. | |
683 | ||
c0814136 SB |
684 | 2012-03-05 Steven Bosscher <steven@gcc.gnu.org> |
685 | ||
686 | * langhooks.c (add_builtin_type): New function. | |
687 | * langhooks.h (add_builtin_type): Export it. | |
688 | * config/mep/mep.c (mep_init_builtins): Use it. | |
689 | * config/rs6000/rs6000.c (rs6000_init_builtins): Use it. | |
690 | ||
1e3c1d95 JJ |
691 | 2012-03-05 Jakub Jelinek <jakub@redhat.com> |
692 | ||
693 | PR debug/51902 | |
694 | * tree.h (BLOCK_SAME_RANGE): Define. | |
695 | * function.c (block_fragments_nreverse): Clear BLOCK_SAME_RANGE | |
696 | if BLOCK_FRAGMENT_CHAIN is non-NULL, but has it cleared. | |
697 | Also clear BLOCK_SAME_RANGE if fragment chain's supercontext fragment | |
698 | isn't equal to supercontext fragment's fragment chain. | |
699 | Adjust BLOCK_SUPERCONTEXT to point to supercontext fragment's | |
700 | fragment origin. | |
701 | (blocks_nreverse_all): Likewise. | |
702 | (reorder_blocks_1): Compute BLOCK_SAME_RANGE bits. Set | |
703 | BLOCK_SUPERCONTEXT to supercontext fragment instead of | |
704 | supercontext fragment's fragment origin. | |
705 | * dwarf2out.c (add_high_low_attributes): If stmt has the same | |
706 | range as its parent (or parents thereof etc.), use the parent's | |
707 | DW_AT_ranges value instead of creating a new .debug_ranges range. | |
708 | ||
4999c62c RH |
709 | 2012-03-05 Richard Henderson <rth@redhat.com> |
710 | ||
711 | PR tree-opt/52242 | |
712 | Revert: 2011-11-26 Richard Henderson <rth@redhat.com> | |
713 | * omp-low.c (expand_omp_atomic): Assume anything aligned to | |
714 | BIGGEST_ALIGNMENT is aligned. | |
715 | ||
95a6dda5 RH |
716 | 2012-03-05 Richard Henderson <rth@redhat.com> |
717 | ||
718 | * config/sh/sh.h (TARGET_ATOMIC_TEST_AND_SET_TRUEVAL): Move... | |
719 | * config/sh/sh.c: ... here. | |
720 | ||
b7313c30 RH |
721 | 2012-03-05 Richard Henderson <rth@redhat.com> |
722 | ||
723 | PR target/52481 | |
724 | * config/m68k/sync.md (atomic_test_and_set): Use expand_simple_unop | |
725 | instead of calling negqi2 directly. | |
726 | ||
f49b12f4 RH |
727 | 2012-03-05 Aldy Hernandez <aldyh@redhat.com> |
728 | ||
729 | PR middle-end/52463 | |
730 | * trans-mem.c (tm_region_init): Use last_basic_block. | |
731 | ||
ab649754 OE |
732 | 2012-03-05 Oleg Endo <olegendo@gcc.gnu.org> |
733 | ||
734 | * config/sh/sh.h (TARGET_ATOMIC_TEST_AND_SET_TRUEVAL): New hook. | |
735 | * config/sh/sync.md (atomic_test_and_set): New expander. | |
736 | (tasb, atomic_test_and_set_soft): New insns. | |
737 | * config/sh/sh.opt (menable-tas): New option. | |
738 | * doc/invoke.texi (SH Options): Document it. | |
739 | ||
510dbcce RG |
740 | 2012-03-05 Richard Guenther <rguenther@suse.de> |
741 | ||
742 | * cfgloop.c (verify_loop_structure): Verify dominators before | |
743 | using them. | |
744 | * graphite-clast-to-gimple.c (graphite_verify): Do not verify | |
745 | dominators from here. | |
746 | * graphite-scop-detection.c (create_sese_edges): Likewise. | |
747 | * loop-doloop.c (doloop_optimize_loops): Likewise. | |
748 | * loop-init.c (loop_optimizer_init): Likewise. | |
749 | * loop-unroll.c (unroll_and_peel_loops): Likewise. | |
750 | * loop-unswitch.c (unswitch_loops): Likewise. | |
751 | * tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): Likewise. | |
752 | * tree-parloops.c (parallelize_loops): Likewise. Verify | |
753 | only when checking is enabled. | |
754 | * tree-loop-distribution.c (tree_loop_distribution): Likewise. | |
755 | ||
50bcfce0 BS |
756 | 2012-03-05 Bernd Schmidt <bernds@codesourcery.com> |
757 | ||
758 | * genautomata.c (parse_automata_opt): New static function. | |
759 | (initiate_automaton_gen): Remove all option handling code. Remove | |
760 | argc argument. All callers changed. | |
397c0dc8 | 761 | (main): Call init_rtx_reader_args_cb with the new function as argument. |
50bcfce0 | 762 | |
cd7d9fd7 RG |
763 | 2012-03-05 Richard Guenther <rguenther@suse.de> |
764 | ||
765 | * cfgexpand.c (gimple_expand_cfg): Free dominator info. | |
766 | * tree-if-conv.c (combine_blocks): Free post-dominator info | |
767 | after breaking it. | |
768 | * tree-parloops.c (create_parallel_loop): Free and re-compute | |
769 | dominator info after breaking it. | |
770 | ||
b55f62cc RG |
771 | 2012-03-05 Richard Guenther <rguenther@suse.de> |
772 | ||
773 | PR middle-end/52353 | |
774 | * optabs.h (trapv_unoptab_p): New function. | |
775 | (trapv_binoptab_p): Likewise. | |
776 | * optabs.c (expand_binop): Use emit_libcall_block_1 with | |
777 | a proper equiv_may_trap argument. | |
778 | (expand_unop): Likewise. | |
779 | (emit_libcall_block_1): Take extra argument whether the | |
780 | instruction may trap. Renamed from ... | |
781 | (emit_libcall_block): ... this. New wrapper. | |
782 | ||
f9df6f16 JJ |
783 | 2012-03-05 Jakub Jelinek <jakub@redhat.com> |
784 | ||
3877a6a6 JJ |
785 | PR tree-optimization/51721 |
786 | * tree-vrp.c (register_edge_assert_for_2): If comparing | |
787 | lhs of right shift by constant with an integer constant, | |
788 | add ASSERT_EXPRs for the rhs1 of the right shift. | |
789 | ||
f9df6f16 JJ |
790 | * cfgrtl.c (cfg_layout_merge_blocks): Cleanup. |
791 | ||
45c0175b RG |
792 | 2012-03-05 Richard Guenther <rguenther@suse.de> |
793 | ||
794 | * tree.c (integer_zerop): Handle VECTOR_CSTs. | |
795 | (integer_onep): Likewise. | |
796 | (integer_all_onesp): Likewise. | |
797 | ||
d84f3a05 GJL |
798 | 2012-03-05 Georg-Johann Lay <avr@gjlay.de> |
799 | ||
800 | * config/avr/avr.md (*umaddqihi4.2): New insn-and-split. | |
801 | ||
55b86fb0 L |
802 | 2012-03-04 H.J. Lu <hongjiu.lu@intel.com> |
803 | ||
804 | * config/i386/i386.c (pro_epilogue_adjust_stack): Check Pmode | |
805 | instead of TARGET_64BIT. | |
806 | ||
4732e8de L |
807 | 2012-03-04 H.J. Lu <hongjiu.lu@intel.com> |
808 | ||
809 | * config/i386/i386.c (ix86_expand_prologue): Check Pmode to set | |
810 | adjust_stack_insn. | |
811 | ||
5ca9708b L |
812 | 2012-03-04 H.J. Lu <hongjiu.lu@intel.com> |
813 | ||
814 | * config/i386/i386.c (ix86_print_operand_address): Only handle | |
815 | zero-extended DImode addresses. | |
816 | ||
f0050a4b UB |
817 | 2012-03-04 Uros Bizjak <ubizjak@gmail.com> |
818 | ||
819 | * config/i386/i386.c (ix86_print_operand) <case '+'>: Declare | |
820 | taken and cputaken as bool. | |
821 | ||
904eea2c UB |
822 | 2012-03-04 Uros Bizjak <ubizjak@gmail.com> |
823 | ||
824 | * config/i386/constraints.md (Ya): New internal constraint. | |
825 | * config/i386/i386.md (zero_extendsidi2): Remove expansion. | |
826 | (*zero_extendsidi2_rex64): Add x,x alternative. | |
827 | (*zero_extendsidi2): Ditto. Add o,0 alternative. | |
828 | Remove flags reg clobber. Adjust corresponding splits. | |
829 | (zero_extend<mode>si2): Macroize expander from zero_extendhisi2 and | |
830 | zero_extendqisi2 expanders using SWI12 mode iterator. | |
831 | (zero_extend<mode>si2_and): Macroize insn from | |
832 | zero_extendhisi2_and and zero_extendqisi2_and. Merge corresponding | |
833 | splitters. | |
834 | (*zero_extend<mode>si2): Macroize insn from | |
835 | *zero_extendhisi2_movzbl and *zero_extendqisi2_movzbl. | |
836 | (*zero_extend*2_movzbl_and): Remove insn patterns. | |
837 | (zero_extendqihi2_and): Merge corresponding splitter. | |
838 | (*zero_extendqihi2): Rename from *zero_extendqihi2_movzbl. | |
839 | (*zero_extend*2_movzbl_and): Remove insn patterns. | |
840 | (*anddi_1): Split TYPE_IMOVX instructions. | |
841 | (*andsi_1): Use Ya for alternative 2. Split TYPE_IMOVX instructions. | |
842 | (*andhi_1): Ditto. | |
843 | (and->zext splitter): Add splitter pattern. | |
844 | (zero extend with andsi3 splitter): Adjust zero_extend pattern. | |
845 | ||
b12866c7 SL |
846 | 2012-03-04 Sandra Loosemore <sandra@codesourcery.com> |
847 | ||
848 | * doc/invoke.texi (C++ Dialect Options): Minor copy-edits to | |
849 | x86-specific text. | |
850 | (Debugging Options): Likewise. | |
851 | (Optimize Options): Likewise. | |
852 | (i386 and x86-64 Options): Discuss -march before -mtune, consistently | |
853 | with other architectures. Use official processor names with correct | |
854 | spelling/capitalization. Fix formatting and grammar issues. | |
855 | (i386 and x86-64 Windows Options): Similar cleanup here. | |
856 | ||
4feaca8b KK |
857 | 2012-03-03 Kaz Kojima <kkojima@gcc.gnu.org> |
858 | ||
859 | * config/sh/sh.md (abssi2): Add TARGET_SH1 condition. | |
860 | ||
59248459 KK |
861 | 2012-03-03 Kaz Kojima <kkojima@gcc.gnu.org> |
862 | ||
863 | * config/sh/sh.c (sh_dwarf_register_span): Don't apply | |
864 | DBX_REGISTER_NUMBER. | |
865 | ||
dea148c4 KK |
866 | 2012-03-03 Kaz Kojima <kkojima@gcc.gnu.org> |
867 | ||
868 | * config/sh/sh.c (shiftcosts): Return MAX_COST when the first | |
869 | operand is CONST_INT. Take COSTS_N_INSNS into account. | |
870 | (sh_rtx_costs): Don't apply COSTS_N_INSNS to the return value | |
871 | of shiftcosts. | |
872 | ||
a6de595f RH |
873 | 2012-03-02 Richard Henderson <rth@redhat.com> |
874 | ||
875 | * optabs.c (expand_atomic_test_and_set): Honor | |
876 | atomic_test_and_set_trueval even when atomic_test_and_set | |
877 | optab is not in use. | |
878 | ||
4978c736 KK |
879 | 2012-03-02 Kaz Kojima <kkojima@gcc.gnu.org> |
880 | ||
881 | PR target/48596 | |
882 | PR target/48806 | |
883 | * config/sh/sh.c (sh_register_move_cost): Increase cost between | |
884 | GENERAL_REGS and FP_REGS for SImode. | |
885 | ||
5e44ea89 OE |
886 | 2012-03-02 Oleg Endo <olegendo@gcc.gnu.org> |
887 | ||
888 | PR target/49486 | |
889 | * config/sh/sh.md (negdi2): Add TARGET_SH1 condition. | |
890 | (absdi2): New expander. | |
891 | (*absdi2, *negabsdi2, negdi_cond): New insns and splits. | |
892 | ||
349e6f05 OE |
893 | 2012-03-02 Oleg Endo <olegendo@gcc.gnu.org> |
894 | ||
b5ea8036 OE |
895 | * config/sh/sync.md (atomic_exchange<mode>): New expander. |
896 | (atomic_exchange<mode>_soft): New insn. | |
897 | ||
898 | 2012-03-02 Oleg Endo <olegendo@gcc.gnu.org> | |
899 | ||
900 | * config/sh/sync.md: Update copyright notice dates. | |
349e6f05 OE |
901 | (atomic_compare_and_swap<mode>): Use SImode for return value instead |
902 | of QImode. | |
b5ea8036 | 903 | (atomic_compare_and_swap<mode>_soft): Likewise. |
349e6f05 OE |
904 | |
905 | 2012-03-02 Oleg Endo <olegendo@gcc.gnu.org> | |
904eea2c | 906 | |
b6a0df6c OE |
907 | PR target/31640 |
908 | * config/sh/sh.h (LOOP_ALIGN): Move logic to sh_loop_align. | |
909 | * config/sh/sh.c: Update copyright notice dates. | |
910 | (sh_loop_align): Add logic from LOOP_ALIGN. Don't disable loop | |
911 | alignment for TARGET_HARD_SH4. | |
904eea2c | 912 | (sh_option_override): Reduce default function alignment. Set |
b6a0df6c OE |
913 | loop alignment to 4 bytes when not optimizing for size. |
914 | ||
093193be MK |
915 | 2012-03-02 Maxim Kuvyrkov <maxim@codesourcery.com> |
916 | ||
290d87eb | 917 | PR middle-end/50335 |
093193be MK |
918 | * doc/invoke.texi (floop-flatten): Remove. |
919 | * toplev.c (process_options): Remove references to flag_loop_flatten. | |
920 | * tree-ssa-loop.c (gate_graphite_transform): Same. | |
921 | * common.opt (floop-flatten): Obsolete. | |
922 | * graphite-poly.c (apply_poly_transforms): Remove reference to | |
923 | flag_loop_flatten. | |
924 | * Makefile.in (graphite-flattening.o): Remove. | |
925 | * graphite-flattening.c: Remove. | |
926 | ||
34c5f21a UB |
927 | 2012-03-02 Uros Bizjak <ubizjak@gmail.com> |
928 | ||
929 | * compare-elim.c (find_comparisons_in_bb): Eliminate only compares | |
930 | having mode compatible with the mode of previous compare. Substitute | |
931 | compare mode of previous compare with the mode, compatible | |
932 | with eliminated and previous compare. | |
933 | ||
6f975f93 PB |
934 | 2012-03-02 Peter Bergner <bergner@vnet.ibm.com> |
935 | ||
936 | * config/rs6000/dfp.md (floatdidd2): New define_insn. | |
937 | ||
76945a7c UB |
938 | 2012-03-02 Uros Bizjak <ubizjak@gmail.com> |
939 | ||
940 | * config/i386/i386.c (ix86_cc_modes_compatible): Declare CCZmode | |
941 | compatible with CCGOCmode and CCGCmode. | |
942 | ||
2ff16893 PB |
943 | 2012-03-02 Peter Bergner <bergner@vnet.ibm.com> |
944 | ||
945 | * config/rs6000/vsx.md (vsx_set_<mode>): Reorder operands. | |
946 | ||
5d216c70 UW |
947 | 2012-03-02 Ulrich Weigand <ulrich.weigand@linaro.org> |
948 | ||
949 | * config/arm/arm.c (arm_sat_operator_match): New function. | |
950 | * config/arm/arm-protos.h (arm_sat_operator_match): Add prototype. | |
951 | * config/arm/arm.md ("insn" attribute): Add "sat" value. | |
952 | ("SAT", "SATrev"): New code iterators. | |
953 | ("SATlo", "SAThi"): New code iterator attributes. | |
954 | ("*satsi_<SAT:code>"): New pattern. | |
955 | ("*satsi_<SAT:code>_shift"): Likewise. | |
956 | * config/arm/arm-fixed.md ("arm_ssatsihi_shift"): Add "insn" | |
957 | and "shift" attributes. | |
958 | ("arm_usatsihi"): Add "insn" attribute. | |
959 | * config/arm/predicates.md (sat_shift_operator): Allow multiplication | |
960 | by powers of two. Do not allow shift by 32. | |
961 | ||
2b57045b UB |
962 | 2012-03-02 Uros Bizjak <ubizjak@gmail.com> |
963 | ||
964 | PR target/46716 | |
965 | * config/i386/i386.c (construct_container): Use gen_reg_or_parallel | |
966 | to pass the argument in the register of "natural" mode. | |
967 | ||
c4ddde1b RG |
968 | 2012-03-02 Richard Guenther <rguenther@suse.de> |
969 | ||
970 | PR tree-optimization/52406 | |
971 | * tree-data-ref.h: Update documentation about DR_BASE_OBJECT. | |
972 | (struct indices): Add unconstrained_base member. | |
973 | (struct dr_alias): Remove unused vops member. | |
974 | (DR_UNCONSTRAINED_BASE): New define. | |
975 | * tree-data-ref.c (dr_analyze_indices): For COMPONENT_REFs | |
976 | add indices to allow their disambiguation. Make DR_BASE_OBJECT | |
977 | be an artificial access that covers the whole indexed object, | |
978 | or mark it with DR_UNCONSTRAINED_BASE if we cannot do so. Canonicalize | |
979 | plain decl base-objects to their MEM_REF variant. | |
980 | (dr_may_alias_p): When the base-object of either data reference | |
981 | has unknown size use only points-to information. | |
982 | (compute_affine_dependence): Make dumps easier to read and | |
983 | more verbose. | |
984 | * tree-vect-data-ref.c (vector_alignment_reachable_p): Use | |
985 | DR_REF when looking for packed references. | |
986 | (vect_supportable_dr_alignment): Likewise. | |
987 | ||
2d68f67f GY |
988 | 2012-03-02 Greta Yorsh <Greta.Yorsh@arm.com> |
989 | ||
2b57045b | 990 | * config/arm/arm-ldmstm.ml (write_ldm_commutative_peephole): |
2d68f67f GY |
991 | Improve conditions for peepholes of loads followed by commutative |
992 | operators. | |
2b57045b | 993 | * config/arm/ldmstm.md: Regenerated. |
2d68f67f | 994 | |
45c29d4d RG |
995 | 2012-03-02 Richard Guenther <rguenther@suse.de> |
996 | ||
997 | * BASE-VER: Set to 4.8.0. | |
998 | ||
9094e001 RE |
999 | 2012-03-01 Richard Earnshaw <rearnsha@arm.com> |
1000 | ||
1001 | * config.gcc (obsolete): Add all ARM targets using the FPA. | |
1002 | (with_fpu): Obsolete selection of the FPA or Maverick on ARM. | |
1003 | * doc/install.texi: Avoid references to obsolete ARM ports. | |
1004 | ||
82b06589 JR |
1005 | 2012-03-01 Joern Rennecke <joern.rennecke@embecosm.com> |
1006 | ||
1007 | * config/epiphany/epiphany.md (movmisalign<mode>): New patterns. | |
1008 | ||
08b03910 JB |
1009 | 2012-03-01 Jeremy Bennett <jeremy.bennett@embecosm.com> |
1010 | Joern Rennecke <joern.rennecke@embecosm.com> | |
1011 | ||
1012 | * doc/extend.texi: Expand and update information on interrupt | |
1013 | attribute for Epiphany. | |
1014 | ||
1ce35c11 OE |
1015 | 2012-03-01 Oleg Endo <olegendo@gcc.gnu.org> |
1016 | ||
1017 | * config/sh/sh-protos.h: Update copyright notice dates. | |
1018 | * config/sh/sh.h: Likewise. | |
1019 | * config/sh/sh.md: Likewise. | |
1020 | * config/sh/constraints.md: Likewise. | |
1021 | * config/sh/predicates.md: Likewise. | |
1022 | ||
f51a9d10 OE |
1023 | 2012-03-01 Oleg Endo <olegendo@gcc.gnu.org> |
1024 | ||
1025 | * config/sh/sh-protos.h (tertiary_reload_operand): Remove dead function. | |
1026 | * config/sh/sh.c (tertiary_reload_operand): Likewise. | |
1027 | ||
d4217ae1 OE |
1028 | 2012-03-01 Oleg Endo <olegendo@gcc.gnu.org> |
1029 | ||
1030 | * config/sh/constraints.md: Fix comment typo. | |
1031 | ||
5d9dc69a JDA |
1032 | 2012-03-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
1033 | ||
1034 | PR target/52408 | |
1035 | * config/pa/pa.md (zvdep_imm32): Change type of variable x from int to | |
1036 | unsigned HOST_WIDE_INT. | |
1037 | (zvdep_imm64): Likewise. | |
1038 | (vdepi_ior): Change type of variable x from int to HOST_WIDE_INT. | |
1039 | (vdepi_and): Likewise. | |
1040 | Likewise for unamed 64-bit patterns. | |
1041 | * config/pa/predicates.md (lhs_lshift_cint_operand): Update comment. | |
1042 | ||
0f68ba3e AO |
1043 | 2012-03-01 Alexandre Oliva <aoliva@redhat.com> |
1044 | ||
1045 | PR debug/52001 | |
1046 | PR rtl-optimization/52417 | |
1047 | * cselib.c (cselib_any_perm_equivs): New variable. | |
1048 | (cselib_reset_table): Check that it's not set when not | |
1049 | preserving constants. | |
1050 | (cselib_add_permanent_equiv): Set it. | |
1051 | (cselib_have_permanent_equivalences): New. | |
1052 | (cselib_init, cselib_finish): Reset it. | |
1053 | * cselib.h (cselib_have_permanent_equivalences): Declare. | |
1054 | * alias.c (get_addr): Restore earlier behavior when there | |
1055 | aren't permanent equivalences. | |
1056 | ||
2aceddd8 SB |
1057 | 2012-03-01 Steven Bosscher <steven@gcc.gnu.org> |
1058 | ||
1059 | * config/mn10300/mn10300-modes.def: Fix copyright notice. | |
1060 | * config/v850/v850-modes.def: Fix copyright notice. | |
1061 | ||
1619fcfc GJL |
1062 | 2012-03-01 Georg-Johann Lay <avr@gjlay.de> |
1063 | ||
1064 | * doc/extend.texi (AVR Built-in Functions): Document | |
1065 | __builtin_avr_flash_segment. | |
1066 | ||
1067 | * config/avr/builtins.def (__builtin_avr_flash_segment): New entry. | |
1068 | * config/avr/avr.md (flash_segment, flash_segment1): New expanders. | |
1069 | (*split.flash_segment): New insn-and-split. | |
1070 | * config/avr/avr.c (avr_init_builtins): Add local variables: | |
1071 | const_memx_void_node, const_memx_ptr_type_node, | |
1072 | char_ftype_const_memx_ptr. | |
1073 | ||
69ef9a79 JJ |
1074 | 2012-03-01 Jakub Jelinek <jakub@redhat.com> |
1075 | ||
1076 | PR tree-optimization/52445 | |
1077 | * tree-ssa-phiopt.c (struct name_to_bb): Remove ssa_name field, | |
1078 | add ssa_name_ver, offset and size fields and change store field | |
1079 | to bool. | |
1080 | (name_to_bb_hash, name_to_bb_eq): Adjust for the above changes. | |
1081 | (add_or_mark_expr): Likewise. Only consider previous stores | |
1082 | with the same size and offset. | |
1083 | (nt_init_block): Only look at gimple_assign_single_p stmts, | |
1084 | doesn't look at rhs2. | |
1085 | ||
c1d9cb02 RG |
1086 | 2012-03-01 Richard Guenther <rguenther@suse.de> |
1087 | ||
1088 | PR middle-end/52443 | |
1089 | * tree-cfg.c (verify_gimple_assign_unary): Allow any | |
1090 | conversions from integral types to pointer types. | |
1091 | ||
b2ef48ef GJL |
1092 | 2012-03-01 Georg-Johann Lay <avr@gjlay.de> |
1093 | ||
1094 | * config/avr/avr-c.c (avr_cpu_cpp_builtins): Restore built-in | |
2b57045b | 1095 | defines for __UINT24_MAX__, __INT24_MAX__, __INT24_MIN__ |
b2ef48ef GJL |
1096 | unintentionally removed in r184616. |
1097 | ||
283b5296 VK |
1098 | 2012-03-01 Venkataramanan Kumar <venkataramanan.kumar@amd.com> |
1099 | ||
1100 | * doc/invoke.texi: Document AMD bdver2 and remove mentioning | |
1101 | 3DNow from bdver1. | |
1102 | ||
29ebe616 JJ |
1103 | 2012-02-29 Jakub Jelinek <jakub@redhat.com> |
1104 | Uros Bizjak <ubizjak@gmail.com> | |
1105 | ||
1106 | PR target/52437 | |
1107 | * config/i386/sse.md (vec_set<mode>_0): Swap "*r" and "fF" | |
1108 | alternatives, add "e" constraint to the new last alternative | |
1109 | and ! to last 3 alternatives. | |
1110 | ||
fd787640 EB |
1111 | 2012-02-29 Eric Botcazou <ebotcazou@adacore.com> |
1112 | ||
1113 | * dwarf2out.c (modified_type_die): Set DW_AT_GNAT_descriptive_type and | |
1114 | DW_AT_artificial attributes at the end of the processing. | |
1115 | (gen_array_type_die): Likewise. | |
1116 | (gen_enumeration_type_die): Likewise. | |
1117 | (gen_struct_or_union_type_die): Likewise. | |
1118 | (add_gnat_descriptive_type_attribute): Do not suppress debug info for | |
1119 | the parent type. | |
1120 | ||
598e67d7 JJ |
1121 | 2012-02-29 Jakub Jelinek <jakub@redhat.com> |
1122 | ||
a3017cf1 JJ |
1123 | PR middle-end/52419 |
1124 | * expr.c (expand_assignment): If doing misaligned store that doesn't | |
1125 | cover all mode bits, perform a RMW cycle. | |
1126 | ||
598e67d7 JJ |
1127 | PR tree-optimization/52429 |
1128 | * tree-parloops.c (separate_decls_in_region_debug): Return early | |
1129 | if var is LABEL_DECL. | |
1130 | ||
529b39d8 BS |
1131 | 2012-02-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
1132 | ||
1133 | PR tree-optimization/52424 | |
1134 | * tree-ssa-dom.c (dom_opt_leave_block): Push a marker before | |
1135 | calling dom_thread_across_edge. | |
1136 | ||
43c626f0 GJL |
1137 | 2012-02-29 Georg-Johann Lay <avr@gjlay.de> |
1138 | ||
1139 | * config/avr/avr.c: Move definition of TARGET macros to end of file. | |
1140 | ||
20848609 GJL |
1141 | 2012-02-29 Georg-Johann Lay <avr@gjlay.de> |
1142 | ||
1143 | * config/avr/avr-protos.h (avr_output_bld): Remove unused prototype. | |
1144 | * config/avr/avr.c (avr_output_bld): Remove unused function. | |
1145 | (avr_out_sbxx_branch): Use "%T" to print bit position. | |
1146 | ||
1edaa8b7 GJL |
1147 | 2012-02-29 Georg-Johann Lay <avr@gjlay.de> |
1148 | ||
1149 | * config/avr/avr.md: Untabify. | |
1150 | ||
1151 | 2012-02-29 Georg-Johann Lay <avr@gjlay.de> | |
1152 | ||
1153 | * config/avr/avr.md (eqne): New code iterator. | |
1154 | (*dec-and-branchsi): Use it in text peephole's condition. | |
1155 | (*dec-and-branchhi): Ditto. | |
1156 | (*dec-and-branchqi): Ditto. | |
1157 | ||
df51e502 GJL |
1158 | 2012-02-29 Georg-Johann Lay <avr@gjlay.de> |
1159 | ||
1160 | PR target/49939 | |
1161 | * config/avr/avr.h (ASM_SPEC): Add -mno-skip-bug if we know that | |
1162 | the device does not have the skip-bug. | |
1163 | ||
bf997c7d OE |
1164 | 2012-02-29 Oleg Endo <olegendo@gcc.gnu.org> |
1165 | ||
1166 | * doc/invoke.texi (-msoft-atomic): Add more detailed description. | |
1167 | (-mbranch-cost, -mcbranchdi -mcmpeqdi -mfused-madd | |
1168 | -mpretend-cmove): New. | |
1169 | ||
bf743fc4 JJ |
1170 | 2012-02-29 Jakub Jelinek <jakub@redhat.com> |
1171 | ||
1172 | PR bootstrap/52397 | |
1173 | * df.h (struct df_d): Adjust comment that hard_regs_live_count | |
1174 | doesn't count DEBUG_INSN refs. | |
1175 | * df-scan.c (df_ref_create_structure): Don't set DF_HARD_REG_LIVE | |
1176 | for DEBUG_INSN refs. | |
1177 | ||
211bea38 UW |
1178 | 2012-02-28 Ulrich Weigand <Ulrich.Weigand@de.ibm.com> |
1179 | ||
1180 | Partially revert: | |
1181 | ||
1182 | 2012-02-20 Richard Guenther <rguenther@suse.de> | |
1183 | PR tree-optimization/52298 | |
1184 | * tree-vect-stmts.c (vectorizable_load): Properly use | |
1185 | STMT_VINFO_DR_STEP instead of DR_STEP when vectorizing | |
1186 | outer loops. | |
1187 | ||
19c0d7df AH |
1188 | 2012-02-28 Aldy Hernandez <aldyh@redhat.com> |
1189 | ||
1190 | PR middle-end/51752 | |
1191 | * gimple.h (gimple_in_transaction): New. | |
1192 | (gimple_set_in_transaction): New. | |
1193 | (struct gimple_statement_base): Add in_transaction field. | |
1194 | * tree-ssa-loop-im.c: (movement_possibility): Restrict movement of | |
1195 | transaction loads. | |
1196 | (tree_ssa_lim_initialize): Compute transaction bits. | |
1197 | * tree.h (compute_transaction_bits): Protoize. | |
1198 | * trans-mem.c (tm_region_init): Use the heap to store BB | |
1199 | auxilliary data. | |
1200 | (compute_transaction_bits): New. | |
1201 | ||
cdbfc61d BRF |
1202 | 2012-02-28 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
1203 | ||
1204 | * gcc.c (display_help): Document --help=common and sort entries | |
1205 | alphabetically. | |
1206 | ||
6c6b6634 BRF |
1207 | 2012-02-28 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
1208 | ||
1209 | * doc/install.texi: Document check-$LANG specific shortcuts | |
1210 | ||
fd92bb80 MGD |
1211 | 2012-02-28 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> |
1212 | ||
1213 | PR target/51534 | |
1214 | * config/arm/arm.c (neon_builtin_data): Add entries for vcgeu | |
1215 | and vcgtu. | |
1216 | * config/arm/arm_neon.h: Regenerate. | |
1217 | * config/arm/neon.md (unspec): Add UNSPEC_VCGEU, and UNSPEC_VCGTU. | |
1218 | (neon_vcgeu): New insn. | |
1219 | (neon_vcgtu): Likewise. | |
1220 | * config/arm/neon.ml (s_8_32, u_8_32): New lists. | |
2b57045b | 1221 | (ops): Unsigned comparison intrinsics call a different builtin. |
fd92bb80 | 1222 | |
8eef33ca RG |
1223 | 2012-02-28 Richard Guenther <rguenther@suse.de> |
1224 | ||
1225 | PR target/52407 | |
1226 | * config/i386/i386.c (ix86_expand_vector_set): Fix element | |
1227 | ordering for the VEC_CONCAT for two element vectors for | |
1228 | V2SFmode, V2SImode and V2DImode. | |
1229 | ||
e3ed9d60 RE |
1230 | 2012-02-28 Richard Earnshaw <rearnsha@arm.com> |
1231 | ||
1232 | PR target/49448 | |
1233 | * config.gcc (arm*-*-linux*): Use an unambiguous pattern for | |
1234 | detecting big-endian triplets. | |
1235 | ||
192af6e8 RE |
1236 | 2012-02-28 Richard Earnshaw <rearnsha@arm.com> |
1237 | ||
1238 | * arm.c (aapcs_vfp_is_call_or_return_candidate): Only use the machine | |
1239 | mode if there is no type information available. | |
1240 | ||
b0eaa5b4 TK |
1241 | 2012-02-28 Thomas Koenig <tkoenig@gcc.gnu.org> |
1242 | ||
1243 | PR tree-optimization/53207 | |
1244 | * doc/invoke.texi: Document as experimental and relying on graphite. | |
1245 | ||
f37cf6a9 GJL |
1246 | 2012-02-28 Georg-Johann Lay <avr@gjlay.de> |
1247 | ||
1248 | * config/avr/avr-devices.c (avr_mcu_type): Adjust NULL part | |
1249 | of initializer to changes from r184614. | |
2b57045b | 1250 | |
85998a93 RG |
1251 | 2012-02-28 Richard Guenther <rguenther@suse.de> |
1252 | ||
1253 | PR tree-optimization/52395 | |
1254 | * tree-sra.c (build_ref_for_offset): Also look at the base | |
1255 | TYPE_ALIGN when figuring out the alignment of the replacement. | |
1256 | ||
3a5a825a RG |
1257 | 2012-02-28 Richard Guenther <rguenther@suse.de> |
1258 | ||
1259 | PR tree-optimization/52402 | |
1260 | * ipa-prop.c (ipa_modify_call_arguments): Properly use | |
1261 | mis-aligned types when creating the accesses at the call site. | |
1262 | ||
639d0302 GJL |
1263 | 2012-02-28 Georg-Johann Lay <avr@gjlay.de> |
1264 | ||
1265 | * config/avr/builtins.def: New file. | |
1266 | * config/avr/t-avr (avr.o, avr-c.o): Depend on it. | |
1267 | * config/avr/avr.c (enum avr_builtin_id): Use it. | |
1268 | (avr_init_builtins): Use it. And use avr_bdesc. | |
1269 | (bdesc_1arg): Remove. | |
1270 | (bdesc_2arg): Remove. | |
1271 | (bdesc_3arg): Remove. | |
1272 | (struct avr_builtin_description): Add field n_args. | |
1273 | (avr_bdesc): New static variable using builtins.def. | |
1274 | (avr_expand_builtin): Use it. | |
1275 | Don't call avr_expand_delay_cycles if op0 is not CONST_INT. | |
1276 | (avr_fold_builtin): Fold AVR_BUILTIN_SWAP. | |
1277 | Don't fold AVR_BUILTIN_INSERT_BITS if arg0 is not INTEGER_CST. | |
1278 | ||
8310dca7 GJL |
1279 | 2012-02-28 Georg-Johann Lay <avr@gjlay.de> |
1280 | ||
1281 | PR target/52148 | |
1282 | * config/avr/avr.md (movmem_<mode>): Replace match_operand that | |
1283 | match only one single hard register with respective hard reg rtx. | |
1284 | (movmemx_<mode>): Ditto. | |
1285 | * config/avr/avr.c (avr_emit_movmemhi): Adapt expanding to new | |
1286 | insn anatomy of movmem[x]_<mode>. | |
1287 | (avr_out_movmem): Same for printing assembler and operand usage. | |
1288 | ||
bae3b1bf GJL |
1289 | 2012-02-28 Georg-Johann Lay <avr@gjlay.de> |
1290 | ||
1291 | PR target/49868 | |
1292 | PR target/52261 | |
1293 | * doc/extend.texi (AVR Named Address Spaces): No more try to fix | |
1294 | address spaces located outside of device flash. | |
1295 | ||
1296 | * config/avr/avr.h (base_arch_s): Remove field n_segments. | |
1297 | (mcu_type_s): Add field n_flash. | |
1298 | * config/avr/avr-devices.c (avr_arch_types): Remove .n_segments. | |
1299 | Set .have_elpm and .have_elpmx to 1 for avrxmega4 and avrxmega5. | |
1300 | (AVR_MCU): Add N_FLASH argument. | |
1301 | * config/avr/avr-mcus.def (AVR_MCU): Add initializer for .n_flash. | |
1302 | * config/avr/avr-c.c (avr_cpu_cpp_builtins): Only define built-in | |
1303 | macro __FLASH<n> if that address space makes sense for the device. | |
1304 | * config/avr/avr.c (avr_out_lpm): Don't try to fix address spaces | |
1305 | outside of target flash. | |
1306 | (avr_asm_named_section): Ditto. | |
1307 | (avr_asm_select_section): Ditto. | |
1308 | (avr_addr_space_convert): Ditto. | |
1309 | (avr_emit_movmemhi): Ditto. | |
1310 | (avr_nonconst_pointer_addrspace, avr_pgm_check_var_decl): Error if | |
1311 | address space is outside of device flash. | |
1312 | (avr_insert_attributes): Ditto. | |
1313 | (avr_xload_libgcc_p): Use avr_current_device->n_flash instead of | |
1314 | avr_current_arch->n_segments. | |
1315 | ||
afbf6e97 L |
1316 | 2012-02-27 H.J. Lu <hongjiu.lu@intel.com> |
1317 | ||
1318 | PR target/52352 | |
2b57045b | 1319 | * config/i386/i386.md (*movabs<mode>_1): Enable only for TARGET_LP64. |
afbf6e97 L |
1320 | (*movabs<mode>_2): Likewise. |
1321 | ||
2e216592 JJ |
1322 | 2012-02-27 Jakub Jelinek <jakub@redhat.com> |
1323 | ||
56b15099 JJ |
1324 | PR target/52375 |
1325 | * config/arm/neon.md (vashr<mode>3, vlshr<mode>3): Use | |
1326 | s_register_operand in the test instead of REG_P. Don't call | |
1327 | gen_reg_rtx if it won't be used. | |
1328 | ||
2e216592 JJ |
1329 | PR tree-optimization/52376 |
1330 | * ipa-split.c (split_function): Ignore CLOBBER stmts. | |
1331 | ||
2662a821 SH |
1332 | 2012-02-27 Stuart Henderson <shenders@gcc.gnu.org> |
1333 | ||
1334 | * ifcvt.c (noce_get_condition): Check condition variable is not | |
1335 | small_register_classes_for_mode_p before accepting. | |
1336 | ||
f59280cf UB |
1337 | 2012-02-27 Uros Bizjak <ubizjak@gmail.com> |
1338 | ||
1339 | * config/i386/i386.md (*movabs<mode>_1): Fix operand 1 constraints. | |
1340 | ||
d2d6bcce MGD |
1341 | 2012-02-27 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> |
1342 | ||
1343 | Revert: | |
1344 | 2012-01-09 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> | |
1345 | * config/arm/arm-cores.def (cortex-a15): Use cortex_a15_tune for | |
1346 | tuning parameters. | |
1347 | * config/arm/arm.c (arm_cortex_a15_tune): New static variable. | |
1348 | ||
dac73555 OE |
1349 | 2012-02-27 Oleg Endo <olegendo@gcc.gnu.org> |
1350 | ||
1351 | * config/sh/sh.h: Delete dead GO_IF_LEGITIMATE_INDEX macro. | |
1352 | ||
2eff0b9d OE |
1353 | 2012-02-26 Oleg Endo <olegendo@gcc.gnu.org> |
1354 | ||
1355 | * config/sh/predicates.md: Remove blank lines. | |
1356 | * config/sh/sh.c: Fix typos in comments. | |
1357 | * config/sh/constraints.md: Likewise. | |
1358 | * config/sh/sh.md: Remove blank lines. | |
1359 | Fix typos in comments. Use ;; as comment characters. | |
1360 | ||
7afd1a8e WL |
1361 | 2012-02-26 Walter Lee <walt@tilera.com> |
1362 | ||
f59280cf | 1363 | * config/tilegx/tilegx.c (match_pcrel_step2): Fix instruction pattern. |
7afd1a8e WL |
1364 | (replace_mov_pcrel_step2): Ditto. |
1365 | ||
0e224656 AO |
1366 | 2012-02-25 Alexandre Oliva <aoliva@redhat.com> |
1367 | ||
a5628378 AO |
1368 | PR debug/52001 |
1369 | * alias.c (refs_newer_value_cb, refs_newer_value_p): New. | |
1370 | (get_addr): Walk canonical value's locs. Avoid returning VALUEs | |
1371 | and locs that reference values newer than the non-canonical value | |
1372 | at hand. Return the canonical value as a worst case. | |
1373 | (memrefs_conflict_p): Walk canonical value's locs. | |
1374 | ||
0e224656 AO |
1375 | PR debug/52001 |
1376 | * cselib.c (preserve_only_constants): Rename to... | |
1377 | (preserve_constants_and_equivs): ... this. Split out... | |
1378 | (invariant_or_equiv_p): ... this. Preserve plus expressions | |
1379 | of other preserved expressions too. | |
1380 | (cselib_reset_table): Adjust. | |
1381 | * var-tracking.c (reverse_op): Use canonical value to build | |
1382 | reverse operation. | |
1383 | ||
15498cfa KT |
1384 | 2012-02-23 Kai Tietz <ktietz@redhat.com> |
1385 | ||
1386 | * config/i386/i386.c (ix86_delegitimize_address): Handle | |
1387 | UNSPEC_PCREL plus displacement. | |
1388 | ||
39e73abc GJL |
1389 | 2012-02-24 Georg-Johann Lay <avr@gjlay.de> |
1390 | ||
1391 | PR target/52261 | |
1392 | * config/avr/avr.c (avr_out_movhi_mr_r_xmega): Use base | |
1393 | to test for unusedness in st X addressing. | |
1394 | ||
b9af73fc RG |
1395 | 2012-02-24 Richard Guenther <rguenther@suse.de> |
1396 | ||
1397 | PR middle-end/52361 | |
f59280cf | 1398 | * gimple.c (walk_gimple_op): Use predicates with less redundant tests. |
b9af73fc RG |
1399 | (is_gimple_reg_type): Move inline ... |
1400 | * gimple.h (is_gimple_reg_type): ... here. | |
1401 | ||
6ae4eccd RG |
1402 | 2012-02-24 Richard Guenther <rguenther@suse.de> |
1403 | ||
1404 | PR middle-end/52361 | |
1405 | * passes.c (execute_function_todo): When verifying SSA form | |
1406 | verify gimple form first. | |
1407 | * tree-ssa.c (verify_ssa): Do not verify gimple form here. | |
1408 | ||
bf948210 RG |
1409 | 2012-02-24 Richard Guenther <rguenther@suse.de> |
1410 | ||
1411 | PR middle-end/52355 | |
1412 | * fold-const.c (fold_addr_of_array_ref_difference): New function. | |
f59280cf | 1413 | (fold_binary_loc): Use it to extend the existing &a[i] - &a[j] folding. |
bf948210 | 1414 | |
b8f4632c BRF |
1415 | 2012-02-13 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
1416 | ||
1417 | * tree-if-conv (predicate_scalar_phi): Commentary typo fix. | |
1418 | ||
4021ad55 BRF |
1419 | 2012-02-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
1420 | ||
1421 | * tree-phinodes.c (make_phi_node): Mark static. | |
1422 | * tree-flow.h (make_phi_node): Remove extern decl. | |
1423 | * doc/gimple.texi (make_phi_node): Remove documentation. | |
1424 | ||
0eb09f31 BRF |
1425 | 2012-02-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
1426 | ||
f59280cf | 1427 | * tree-into-ssa (update_ssa): Avoid trailing whitespace in dump_file. |
0eb09f31 BRF |
1428 | * tree-ssa-sccvn.c (print_scc): Ditto. |
1429 | ||
6a953a91 BRF |
1430 | 2012-02-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
1431 | ||
1432 | * doc/passes.texi (Full redundancy elimination): Fix typo. | |
1433 | ||
55532e32 BRF |
1434 | 2012-02-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
1435 | ||
1436 | * doc/invoke.texi (-fdse, -fdce): Remove duplicate entries. | |
1437 | ||
6cbb4c32 EB |
1438 | 2012-02-23 Eric Botcazou <ebotcazou@adacore.com> |
1439 | ||
1440 | PR bootstrap/52287 | |
1441 | * haifa-sched.c (rank_for_schedule): Stabilize sort for debug insns. | |
1442 | ||
560ad308 UB |
1443 | 2012-02-23 Uros Bizjak <ubizjak@gmail.com> |
1444 | ||
1445 | PR c/52290 | |
1446 | * c-decl.c (start_function): Exit early if decl1 is not FUNTION_DECL. | |
1447 | ||
f71f1418 GJL |
1448 | 2012-02-23 Georg-Johann Lay <avr@gjlay.de> |
1449 | ||
1450 | * config/avr/avr.md (code_stdname): Add ior, xor. | |
1451 | (xior): New code iterator. | |
1452 | (*<code_stdname><mode>qi.byte0): Use xior instead of ior. | |
1453 | (*<code_stdname><mode>qi.byte1-3): Ditto. | |
1454 | ||
a348dc7f JJ |
1455 | 2012-02-23 Jakub Jelinek <jakub@redhat.com> |
1456 | ||
1457 | PR tree-optimization/52019 | |
1458 | * ipa-split.c (find_return_bb, find_retval, visit_bb): Ignore | |
1459 | CLOBBER stmts. | |
1460 | ||
e10e461e UW |
1461 | 2012-02-23 Ulrich Weigand <Ulrich.Weigand@de.ibm.com> |
1462 | ||
1463 | * acinclude.m4: Use HAVE_INITFINI_ARRAY_SUPPORT instead of | |
1464 | HAVE_INITFINI_ARRAY to work around namespace pollution in | |
1465 | certain versions of newlib system headers. | |
1466 | * config.in: Regenerate. | |
1467 | * configure: Regenerate. | |
1468 | * config/initfini-array.h: Use HAVE_INITFINI_ARRAY_SUPPORT | |
1469 | instead of HAVE_INITFINI_ARRAY. | |
1470 | ||
9517e333 UB |
1471 | 2012-02-22 Uros Bizjak <ubizjak@gmail.com> |
1472 | ||
1473 | PR target/52330 | |
1474 | * config/i386/i386.c (ix86_print_operand) <case 'H'>: Error out if x | |
1475 | is not offsettable memory reference. | |
1476 | ||
219db888 GJL |
1477 | 2012-02-22 Georg-Johann Lay <avr@gjlay.de> |
1478 | ||
1479 | PR target/18145 | |
1480 | * config/avr/avr.c (avr_asm_output_aligned_decl_common): Skip | |
1481 | setting avr_need_clear_bss_p for __gnu_lto* symbols. | |
1482 | ||
45958634 GJL |
1483 | 2012-02-22 Georg-Johann Lay <avr@gjlay.de> |
1484 | ||
1485 | * config/avr/avr.h (avr_accumulate_outgoing_args): Return int. | |
9517e333 | 1486 | * config/avr/avr.c (avr_accumulate_outgoing_args): Return int. |
45958634 | 1487 | |
bbd6a014 RO |
1488 | 2012-02-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
1489 | ||
1490 | * configure.ac (LIB_TLS_SPEC): Enforce use of alternate thread | |
1491 | library on Solaris 8 even without TLS support. | |
1492 | * configure: Regenerate. | |
1493 | ||
3e888a5e RG |
1494 | 2012-02-22 Richard Guenther <rguenther@suse.de> |
1495 | ||
1496 | PR middle-end/52329 | |
1497 | * gimple-fold.c (fold_stmt_1): Also canonicalize ADDR_EXPRs | |
1498 | for GIMPLE_DEBUG stmts. | |
bbd6a014 | 1499 | |
f18a7b25 MJ |
1500 | 2012-02-22 Martin Jambor <mjambor@suse.cz> |
1501 | ||
1502 | PR middle-end/51782 | |
1503 | * emit-rtl.c (set_mem_attributes_minus_bitpos): Set address space | |
1504 | according to the base object. | |
1505 | ||
0b262c28 GJL |
1506 | 2012-02-22 Georg-Johann Lay <avr@gjlay.de> |
1507 | ||
1508 | PR rtl-optimization/50063 | |
1509 | * config/avr/avr.md (movhi_sp_r): Handle -1 (unknown IRQ state) | |
1510 | and 2 (8-bit SP) in operand 2. | |
1511 | * config/avr/avr.c (avr_prologue_setup_frame): Adjust prologue | |
1512 | setup to use movhi_sp_r instead of vanilla move to write SP. | |
1513 | Adjust REG_CFA notes to superseed unspec. | |
1514 | (expand_epilogue): Adjust epilogue setup to use movhi_sp_r instead | |
1515 | of vanilla move. | |
1516 | As function body might contain CLI or SEI: Use irq_state 0 (IRQ | |
1517 | known to be off) only with TARGET_NO_INTERRUPTS. Never use | |
1518 | irq_state 1 (IRQ known to be on) here. | |
1519 | ||
2805e6c0 BS |
1520 | 2012-02-21 Bernd Schmidt <bernds@codesourcery.com> |
1521 | ||
1522 | * ira.c (check_allocation): Use REG_WORDS_BIG_ENDIAN, not | |
1523 | WORDS_BIG_ENDIAN. | |
1524 | * ira-color.c (setup_profitable_hard_regs, check_hard_reg_p, | |
1525 | assign_hard_reg): Likewise. | |
1526 | ||
1527 | 2012-02-21 Georg-Johann Lay <avr@gjlay.de> | |
1890e136 GJL |
1528 | |
1529 | * config/avr/avr.md (neghi2): Remove "!d,0" alternative. Tweak "r,0". | |
1530 | ||
2805e6c0 | 1531 | 2012-02-21 Georg-Johann Lay <avr@gjlay.de> |
4998825d GJL |
1532 | |
1533 | * config/avr/avr.md | |
1534 | (*dec-and-branchhi!=-1.d.clobber): New text peephole. | |
1535 | (*dec-and-branchhi!=-1.l.clobber): New text peephole. | |
1536 | ||
2805e6c0 | 1537 | 2012-02-21 Georg-Johann Lay <avr@gjlay.de> |
0545950b GJL |
1538 | |
1539 | * config/avr/avr-protos.h (avr_accumulate_outgoing_args): Move | |
1540 | prototype from here to... | |
1541 | * config/avr/avr.h: ...here. | |
1542 | ||
23d2a817 RE |
1543 | 2012-02-21 Richard Earnshaw <rearnsha@arm.com> |
1544 | ||
1545 | PR target/52294 | |
2805e6c0 | 1546 | * thumb2.md (thumb2_shiftsi3_short): Split register and |
23d2a817 RE |
1547 | immediate shifts. For register shifts tie operands 0 and 1. |
1548 | (peephole2 for above): Check that register-controlled shifts | |
1549 | have suitably tied operands. | |
1550 | ||
602c3369 QN |
1551 | 2012-02-21 Quentin Neill <quentin.neill@amd.com> |
1552 | ||
1553 | PR target/52137 | |
1554 | * config/i386/bdver1.md (bdver1_call, bdver1_push, | |
1555 | bdver1_pop, bdver1_leave, bdver1_lea, bdver1_imul_DI, bdver1_imul, | |
1556 | bdver1_imul_mem_DI, bdver1_imul_mem, bdver1_idiv, bdver1_idiv_mem, | |
1557 | bdver1_str, bdver1_idirect, bdver1_ivector, bdver1_idirect_loadmov, | |
1558 | bdver1_idirect_load, bdver1_ivector_load, bdver1_idirect_movstore, | |
1559 | bdver1_idirect_both, bdver1_ivector_both, bdver1_idirect_store, | |
1560 | bdver1_ivector_store, bdver1_fldxf, bdver1_fld, bdver1_fstxf, | |
1561 | bdver1_fst, bdver1_fist, bdver1_fmov_bdver1, bdver1_fadd_load, | |
1562 | bdver1_fadd, bdver1_fmul_load, bdver1_fmul, bdver1_fsgn, | |
1563 | bdver1_fdiv_load, bdver1_fdiv, bdver1_fpspc_load, bdver1_fpspc, | |
1564 | bdver1_fcmov_load, bdver1_fcmov, bdver1_fcomi_load, | |
1565 | bdver1_fcomi, bdver1_fcom_load, bdver1_fcom, | |
1566 | bdver1_fxch, bdver1_ssevector_avx128_unaligned_load, | |
1567 | bdver1_ssevector_avx256_unaligned_load, | |
1568 | bdver1_ssevector_sse128_unaligned_load, | |
1569 | bdver1_ssevector_avx128_load, bdver1_ssevector_avx256_load, | |
1570 | bdver1_ssevector_sse128_load, bdver1_ssescalar_movq_load, | |
1571 | bdver1_ssescalar_vmovss_load, bdver1_ssescalar_sse128_load, | |
1572 | bdver1_mmxsse_load, bdver1_sse_store_avx256, bdver1_sse_store, | |
1573 | bdver1_mmxsse_store_short, bdver1_ssevector_avx256, | |
1574 | bdver1_movss_movsd, bdver1_mmxssemov, bdver1_sselog_load_256, | |
1575 | bdver1_sselog_256, bdver1_sselog_load, bdver1_sselog, | |
1576 | bdver1_ssecmp_load, bdver1_ssecmp, bdver1_ssecomi_load, | |
1577 | bdver1_ssecomi, bdver1_vcvtX2Y_avx256_load, bdver1_vcvtX2Y_avx256, | |
1578 | bdver1_ssecvt_cvtss2sd_load, bdver1_ssecvt_cvtss2sd, | |
1579 | bdver1_sseicvt_cvtsi2sd_load, bdver1_sseicvt_cvtsi2sd, | |
1580 | bdver1_ssecvt_cvtpd2ps_load, bdver1_ssecvt_cvtpd2ps, | |
1581 | bdver1_ssecvt_cvtdq2ps_load, bdver1_ssecvt_cvtdq2ps, | |
1582 | bdver1_ssecvt_cvtdq2pd_load, bdver1_ssecvt_cvtdq2pd, | |
1583 | bdver1_ssecvt_cvtps2pd_load, bdver1_ssecvt_cvtps2pd, | |
1584 | bdver1_ssecvt_cvtsX2si_load, bdver1_ssecvt_cvtsX2si, | |
1585 | bdver1_ssecvt_cvtpd2pi_load, bdver1_ssecvt_cvtpd2pi, | |
1586 | bdver1_ssecvt_cvtpd2dq_load, bdver1_ssecvt_cvtpd2dq, | |
1587 | bdver1_ssecvt_cvtps2pi_load, bdver1_ssecvt_cvtps2pi, | |
1588 | bdver1_ssemuladd_load_256, bdver1_ssemuladd_256, | |
1589 | bdver1_ssemuladd_load, bdver1_ssemuladd, bdver1_sseimul_load, | |
1590 | bdver1_sseimul, bdver1_sseiadd_load, bdver1_sseiadd, | |
1591 | bdver1_ssediv_double_load_256, bdver1_ssediv_double_256, | |
1592 | bdver1_ssediv_single_load_256, bdver1_ssediv_single_256, | |
1593 | bdver1_ssediv_double_load, bdver1_ssediv_double, | |
1594 | bdver1_ssediv_single_load, bdver1_ssediv_single, bdver1_sseins): | |
1595 | Add "bdver2" attribute. | |
1596 | ||
61369bb8 AK |
1597 | 2012-02-21 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
1598 | ||
1599 | * config/s390/s390.c (s390_option_override): Make -mhard-dfp the | |
1600 | default if possible and not specified otherwise. | |
1601 | ||
0c2ad203 RG |
1602 | 2012-02-21 Richard Guenther <rguenther@suse.de> |
1603 | ||
1604 | PR middle-end/52314 | |
1605 | * gimplify.c (create_tmp_from_val): Use the main variant type | |
1606 | for the type of the temporary we create. | |
1607 | ||
01718e96 RG |
1608 | 2012-02-21 Richard Guenther <rguenther@suse.de> |
1609 | ||
1610 | PR tree-optimization/52324 | |
1611 | * gimplify.c (gimplify_expr): When re-gimplifying expressions | |
1612 | do not gimplify a MEM_REF address operand if it is already | |
1613 | in suitable form. | |
1614 | ||
8540e6e8 AK |
1615 | 2012-02-21 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
1616 | ||
1617 | * config/s390/s390.md ("fixuns_trunc<mode>si2"): Replace | |
1618 | TARGET_HARD_FLOAT with TARGET_HARD_DFP. | |
1619 | ||
d1e4b493 RG |
1620 | 2012-02-21 Richard Guenther <rguenther@suse.de> |
1621 | ||
1622 | * tree-vect-stmts.c (vectorizable_load): Use pre-computed | |
1623 | nested_in_vect_loop. | |
1624 | ||
949e47e5 JJ |
1625 | 2012-02-21 Jakub Jelinek <jakub@redhat.com> |
1626 | ||
1627 | PR tree-optimization/52318 | |
1628 | * gimple-fold.c (gimplify_and_update_call_from_tree): Add | |
1629 | vdef also to non-pure/const call stmts in the sequence. | |
1630 | ||
a2ddaaf5 TG |
1631 | 2012-02-21 Tristan Gingold <gingold@adacore.com> |
1632 | ||
1633 | * config/vms/vms-ld.c (main): Fix IDENTIFICATION padding. | |
1634 | ||
3ed27cf5 DM |
1635 | 2012-02-20 David S. Miller <davem@davemloft.net> |
1636 | ||
1637 | * config/sparc/sparc.md (load_pcrel_sym<P:mode>): Explain why we | |
1638 | don't use the "rd %pc" instruction on v9 for PIC register loads. | |
1639 | ||
a4d031c7 AH |
1640 | 2012-02-20 Aldy Hernandez <aldyh@redhat.com> |
1641 | ||
1642 | PR middle-end/52141 | |
1643 | * trans-mem.c (ipa_tm_scan_irr_block): Error out on GIMPLE_ASM's | |
1644 | in a transaction safe function. | |
1645 | ||
9954e17f KT |
1646 | 2012-02-20 Kai Tietz <ktietz@redhat.com> |
1647 | ||
1648 | PR target/52238 | |
1649 | * stor-layout.c (place_field): Handle desired_align for | |
1650 | ms-bitfields, too. | |
1651 | ||
a7ce6ec3 RG |
1652 | 2012-02-20 Richard Guenther <rguenther@suse.de> |
1653 | ||
1654 | PR tree-optimization/52298 | |
1655 | * tree-vect-stmts.c (vectorizable_store): Properly use | |
1656 | STMT_VINFO_DR_STEP instead of DR_STEP when vectorizing | |
1657 | outer loops. | |
1658 | (vectorizable_load): Likewise. | |
1659 | * tree-vect-data-refs.c (vect_analyze_data_ref_access): | |
1660 | Access DR_STEP after ensuring it is not NULL. | |
1661 | ||
5a226e0a JJ |
1662 | 2012-02-20 Jakub Jelinek <jakub@redhat.com> |
1663 | ||
1664 | PR tree-optimization/52286 | |
1665 | * fold-const.c (fold_binary_loc): For (X & C1) | C2 | |
1666 | optimization use double_int_to_tree instead of build_int_cst_wide, | |
1667 | rewrite to use double_int vars. | |
1668 | ||
e992fc2e RO |
1669 | 2012-02-20 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
1670 | ||
1671 | PR target/50166 | |
1672 | * acinclude.m4 (gcc_AC_INITFINI_ARRAY): Require gcc_SUN_LD_VERSION. | |
1673 | Define _start. | |
1674 | Remove -e 0 from $gcc_cv_ld invocation. | |
1675 | Only use __GLIBC_PREREQ if defined. | |
1676 | Enable on Solaris since Solaris 8 patch. | |
1677 | (gcc_SUN_LD_VERSION): New macro. | |
1678 | * configure.ac (ld_ver) <*-*-solaris2*>: Refer to | |
1679 | gcc_SUN_LD_VERSION for version number format. | |
1680 | * configure: Regenerate. | |
1681 | * varasm.c (get_elf_initfini_array_priority_section): Set | |
1682 | SECTION_NOTYPE for non-default priority. | |
1683 | Use get_section instead of get_unnamed_section to emit | |
1684 | .init_array/.fini_array with default priority. | |
1685 | ||
78c27266 RS |
1686 | 2012-02-19 Richard Sandiford <rdsandiford@googlemail.com> |
1687 | ||
1688 | * config/mips/mips.c (mips_need_mips16_rdhwr_p): New variable. | |
1689 | (mips_get_tp): Set it. Record that __mips16_rdhwr binds locally. | |
1690 | (mips_start_unique_function, mips_output_mips16_rdhwr) | |
1691 | (mips_code_end): New functions. | |
1692 | (TARGET_ASM_CODE_END): Define. | |
1693 | ||
5adeb246 RS |
1694 | 2012-02-19 Richard Sandiford <rdsandiford@googlemail.com> |
1695 | ||
1696 | * config/mips/mips.c (mips16_build_call_stub): Add CFI information | |
1697 | to stubs with non-sibling calls. | |
1698 | ||
e1813255 SL |
1699 | 2012-02-18 Sandra Loosemore <sandra@codesourcery.com> |
1700 | ||
1701 | * doc/invoke.texi (-fira-* options): Copy-edit. | |
1702 | (ira-* parameters): Copy-edit. | |
1703 | ||
141a25c2 SL |
1704 | 2012-02-17 Sandra Loosemore <sandra@codesourcery.com> |
1705 | ||
1706 | * doc/invoke.texi: Minor copy-edits to bring into conformance with | |
1707 | GCC coding conventions. | |
1708 | ||
195a2e9d SL |
1709 | 2012-02-17 Sandra Loosemore <sandra@codesourcery.com> |
1710 | ||
1711 | * doc/invoke.texi: Consistently hyphenate "big-endian"/"little-endian" | |
1712 | when used as adjectives. | |
1713 | ||
1b015db7 SL |
1714 | 2012-02-16 Sandra Loosemore <sandra@codesourcery.com> |
1715 | ||
1716 | * doc/invoke.texi: Clean up "that"/"which" confusion. | |
1717 | ||
7feed462 SB |
1718 | 2012-02-17 Steven Bosscher <steven@gcc.gnu.org> |
1719 | ||
1720 | * system.h: Poison SMALL_REGISTER_CLASSES | |
1721 | * config/rl78/rl78.h: Replace SMALL_REGISTER_CLASSES with hook. | |
1722 | * config/rx/rx.h: Remove SMALL_REGISTER_CLASSES. | |
1723 | ||
ca786352 JJ |
1724 | 2012-02-16 Jakub Jelinek <jakub@redhat.com> |
1725 | ||
1726 | PR tree-optimization/52285 | |
1727 | * tree-tailcall.c (find_tail_calls): Ignore gimple_clobber_p stmts | |
1728 | when deciding if a call is a tail call or tail recursion. | |
1729 | ||
525b3f60 KT |
1730 | 2012-02-16 Kai Tietz <ktietz@redhat.com> |
1731 | ||
1732 | * config/i386/i386.c (legitimate_pic_address_disp_p): Allow | |
1733 | interger-constant displacement for UNSPEC_PCREL. | |
1734 | ||
04c937f5 JJ |
1735 | 2012-02-16 Jakub Jelinek <jakub@redhat.com> |
1736 | ||
3db93c89 JJ |
1737 | PR rtl-optimization/52208 |
1738 | * ira-costs.c (scan_one_insn): Don't decrease mem_cost | |
1739 | for MEMs with REG_EQUIV, if the MEM isn't general_operand. | |
1740 | ||
e20f6b4b JJ |
1741 | PR tree-optimization/52255 |
1742 | * tree-vect-loop-manip.c (slpeel_tree_peel_loop_to_edge): If | |
1743 | loop->header has virtual PHI, but exit_e->dest doesn't, add | |
1744 | virtual PHI to exit_e->dest and adjust all uses after the loop. | |
1745 | ||
04c937f5 JJ |
1746 | PR debug/52260 |
1747 | * dwarf2out.c (copy_decls_walk): Fill in *slot before traversing | |
1748 | children with clone_tree_hash, not after it. | |
1749 | ||
cebb4698 IS |
1750 | 2012-02-16 Iain Sandoe <iains@gcc.gnu.org> |
1751 | ||
1752 | * config/darwin.h (ASM_OUTPUT_LABELREF): Add user label prefix for | |
1753 | extended identifiers. | |
1754 | ||
cc8b9c31 JJ |
1755 | 2012-02-16 Jakub Jelinek <jakub@redhat.com> |
1756 | ||
183d6db2 JJ |
1757 | PR middle-end/51929 |
1758 | * cgraphunit.c (verify_edge_corresponds_to_fndecl): If node is | |
1759 | a same_body_alias, also test whether e->callee isn't a former | |
1760 | or current clone of the decl this is a same body alias of. | |
1761 | ||
cc8b9c31 JJ |
1762 | PR translation/52264 |
1763 | * cgraphunit.c (verify_cgraph_node): Fix a typo. | |
1764 | ||
e3a66c38 SL |
1765 | 2012-02-15 Sandra Loosemore <sandra@codesourcery.com> |
1766 | ||
1767 | * doc/invoke.texi: Clean up "n-bit/byte/word" modifiers. | |
1768 | ||
a0367cc1 MM |
1769 | 2012-02-15 Michael Meissner <meissner@linux.vnet.ibm.com> |
1770 | ||
1771 | PR target/52199 | |
1772 | * config/rs6000/rs6000.c (rs6000_expand_vector_init): Use | |
1773 | force_reg instead of copy_to_reg for better optimization. Force | |
1774 | non-register or memory operands into a register. | |
1775 | ||
b1cef2a5 AM |
1776 | 2012-02-15 Andrew MacLeod <amacleod@redhat.com> |
1777 | ||
1778 | * extend.texi: Reserve upper bits of memory model for future use. | |
1779 | ||
2da8c1ad GJL |
1780 | 2012-01-15 Georg-Johann Lay <avr@gjlay.de> |
1781 | Anatoly Sokolov <aesok@post.ru> | |
1782 | Eric Weddington <eric.weddington@atmel.com> | |
1783 | ||
1784 | PR target/52261 | |
1785 | * config/avr/avr-devices.c (avr_arch_types): Add avrxmega2, | |
1786 | avrxmega4, avrxmega5, avrxmega6, avrxmega7. | |
1787 | Rewrite initializers for .macro. | |
1788 | * config/avr/avr-mcus.def (AVR_MCU): Add known MCUs: | |
1789 | avrxmega2: atxmega16a4, atxmega16d4, atxmega16x1, atxmega32a4 | |
1790 | atxmega32d4, atxmega32x1. | |
1791 | avrxmega4: atxmega64a3, atxmega64d3. | |
1792 | avrxmega5: atxmega64a1, atxmega64a1u. | |
1793 | avrxmega6: atxmega128a3, atxmega128d3, atxmega192a3, atxmega192d3, | |
1794 | atxmega256a3, atxmega256a3b, atxmega256a3bu, atxmega256d3. | |
1795 | avrxmega7: atxmega128a1, atxmega128a1u. | |
1796 | * config/avr/avr.h (enum avr_arch): Add: ARCH_AVRXMEGA2, | |
1797 | ARCH_AVRXMEGA4, ARCH_AVRXMEGA5, ARCH_AVRXMEGA6, ARCH_AVRXMEGA7. | |
1798 | (struct base_arch_s): Rename reserved to xmega_p. | |
1799 | Rename reserved2 to have_rampd. | |
1800 | (AVR_XMEGA): New define. | |
1801 | (AVR_HAVE_RAMPD, AVR_HAVE_RAMPX, AVR_HAVE_RAMPY): New defines. | |
1802 | (AVR_HAVE_RAMPZ): Change definition to fit xmega. | |
1803 | * config/avr/predicates.md (io_address_operand): Take into | |
1804 | account SFR offset. | |
1805 | (low_io_address_operand): Ditto. | |
1806 | (high_io_address_operand): Ditto. | |
1807 | * config/avr/avr.md (isa): Add alternatives no_xmega, xmega. | |
1808 | (enabled, movhi_sp_r): Use them. | |
1809 | * config/avr/avr-c.c (avr_cpu_cpp_builtins): Use | |
1810 | cpp_define_formatted to built-in define __AVR_ARCH__. | |
1811 | (__AVR_XMEGA__): New built-in define. | |
1812 | (__AVR_HAVE_RAMPD__): New built-in define. | |
1813 | (__AVR_HAVE_RAMPX__): New built-in define. | |
1814 | (__AVR_HAVE_RAMPY__): New built-in define. | |
1815 | (__AVR_HAVE_RAMPZ__): Change condition when to built-in define it. | |
1816 | ||
1817 | * config/avr/avr.c (avr_addr_t): Add ccp, rampd, rampx, rampy. | |
1818 | (avr_option_override): Initialize them. | |
1819 | (sreg_rtx, rampd_rtx, rampx_rtx, rampy_rtx): New GTY rtx. | |
1820 | (avr_init_expanders): Initialize them. No more block several calls. | |
1821 | (emit_push_sfr): New static function. | |
1822 | (avr_prologue_setup_frame): Use it to push SREG, RAMPD/X/Y/Z as needed. | |
1823 | Handle AVR_XMEGA. | |
1824 | (expand_epilogue): Handle AVR_XMEGA. Pop RAMPD/X/Y/Z as needed. | |
1825 | (avr_print_operand): Print addreeses as symbols for | |
1826 | RAMPX, RAMPY, RAMPD, CCP. | |
1827 | (output_movhi): Handle AVR_XMEGA when writing to SP. | |
1828 | (avr_out_movhi_mr_r_xmega): New static function. | |
1829 | (out_movhi_mr_r): Forward to avr_out_movhi_mr_r_xmega for AVR_XMEGA. | |
1830 | (avr_file_start): Print symbol defines for __RAMPX__, __RAMPY__, | |
1831 | __RAMPD__, __CCP__ as needed. | |
1832 | ||
1833 | * config/avr/multilib.h: Regenerate. | |
1834 | * config/avr/t-multilib: Regenerate. | |
1835 | * config/avr/avr-tables.opt: Regenerate. | |
1836 | ||
28db21ee TG |
1837 | 2012-02-15 Tobias Grosser <grosser@fim.uni-passau.de> |
1838 | ||
1839 | PR tree-optimization/50561 | |
1840 | * graphite-flattening.c (lst_project_loop): Do not | |
1841 | remove old scattering dimensions after flattening. | |
1842 | (lst_do_flatten): Likewise. | |
1843 | ||
0c578db6 GJL |
1844 | 2012-02-15 Georg-Johann Lay <avr@gjlay.de> |
1845 | ||
1846 | * doc/extend.texi (AVR Built-in Functions): Remove doc for | |
1847 | __builtin_avr_map8, __builtin_avr_map16. | |
1848 | Document __builtin_avr_insert_bits. | |
1849 | ||
1850 | * config/avr/avr.md (map_bitsqi, map_bitshi): Remove. | |
1851 | (insert_bits): New insn. | |
1852 | (adjust_len.map_bits): Rename to insert_bits. | |
1853 | (UNSPEC_MAP_BITS): Rename to UNSPEC_INSERT_BITS. | |
1854 | * avr-protos.h (avr_out_map_bits): Remove. | |
1855 | (avr_out_insert_bits, avr_has_nibble_0xf): New. | |
1856 | * config/avr/constraints.md (Cxf,C0f): New. | |
1857 | * config/avr/avr.c (avr_cpu_cpp_builtins): Remove built-in | |
1858 | defines __BUILTIN_AVR_MAP8, __BUILTIN_AVR_MAP16. | |
1859 | New built-in define __BUILTIN_AVR_INSERT_BITS. | |
1860 | * config/avr/avr.c (TARGET_FOLD_BUILTIN): New define. | |
1861 | (enum avr_builtin_id): Add AVR_BUILTIN_INSERT_BITS. | |
1862 | (avr_move_bits): Rewrite. | |
1863 | (avr_fold_builtin, avr_map_metric, avr_map_decompose): New static | |
1864 | functions. | |
1865 | (avr_map_op_t): New typedef. | |
1866 | (avr_map_op): New static variable. | |
1867 | (avr_out_insert_bits, avr_has_nibble_0xf): New functions. | |
1868 | (adjust_insn_length): Handle ADJUST_LEN_INSERT_BITS. | |
1869 | (avr_init_builtins): Add definition for __builtin_avr_insert_bits. | |
1870 | (bdesc_3arg, avr_expand_triop_builtin): New. | |
1871 | (avr_expand_builtin): Use them. And handle AVR_BUILTIN_INSERT_BITS. | |
1872 | (avr_revert_map, avr_swap_map, avr_id_map, avr_sig_map): Remove. | |
1873 | (avr_map_hamming_byte, avr_map_hamming_nonstrict): Remove. | |
1874 | (avr_map_equal_p, avr_map_sig_p): Remove. | |
1875 | (avr_out_swap_bits, avr_out_revert_bits, avr_out_map_bits): Remove. | |
1876 | (bdesc_2arg): Remove AVR_BUILTIN_MAP8, AVR_BUILTIN_MAP16. | |
1877 | (adjust_insn_length): Remove handling for ADJUST_LEN_MAP_BITS. | |
1878 | (enum avr_builtin_id): Remove AVR_BUILTIN_MAP8, AVR_BUILTIN_MAP16. | |
1879 | (avr_init_builtins): Remove __builtin_avr_map8, __builtin_avr_map16. | |
1880 | (avr_expand_builtin): Remove AVR_BUILTIN_MAP8, AVR_BUILTIN_MAP16. | |
1881 | ||
9e7fe10e BS |
1882 | 2012-02-14 Bernd Schmidt <bernds@codesourcery.com> |
1883 | ||
1884 | * config/c6x/c6x.md (reserve_cycles): New attribute. | |
1885 | * config/c6x/c6x.c (c6x_sched_reorder_1): Ensure insns we predicate | |
1886 | don't reserve functional units after the branch occurs. | |
1887 | ||
a7ff6e27 AH |
1888 | 2012-02-14 Aldy Hernandez <aldyh@redhat.com> |
1889 | ||
1890 | PR middle-end/52142 | |
1891 | * ipa-inline.c (can_inline_edge_p): Do not inline tm_pure | |
1892 | functions into non-tm_pure functions. | |
1893 | ||
aa47290b EB |
1894 | 2012-02-14 Eric Botcazou <ebotcazou@adacore.com> |
1895 | ||
1896 | PR lto/52178 | |
1897 | * gimple.c (iterative_hash_gimple_type): Use RECORD_OR_UNION_TYPE_P. | |
1898 | (iterative_hash_canonical_type): Likewise. | |
1899 | * tree-ssa-pre.c (fini_pre): Clean up the CFG only after purging all | |
1900 | the dead edges. | |
1901 | ||
1902 | 2012-02-14 Bernd Schmidt <bernds@codesourcery.com> | |
b75f962c BS |
1903 | |
1904 | * haifa-sched.c (prune_ready_list): Ensure that if there is a | |
9517e333 | 1905 | sched-group insn, it either remains alone or the entire list is pruned. |
b75f962c | 1906 | |
169264b3 JW |
1907 | 2012-02-14 Jonathan Wakely <jwakely.gcc@gmail.com> |
1908 | ||
1909 | * doc/install.texi (Prerequisites): Fix grammar. | |
1910 | (Configuration): Likewise. | |
1911 | ||
7a07ae52 JW |
1912 | 2012-02-14 Jonathan Wakely <jwakely.gcc@gmail.com> |
1913 | ||
1914 | * doc/install.texi (Prerequisites): Suggest building GMP, MPFR and | |
1915 | MPC as part of GCC before describing configuring with --with-gmp etc. | |
1916 | (Installing GCC: Configuration): --with-gmp etc. aren't needed if | |
1917 | sources are present. | |
1918 | ||
a85ce59d JJ |
1919 | 2012-02-14 Jakub Jelinek <jakub@redhat.com> |
1920 | ||
1921 | PR debug/51950 | |
1922 | * dwarf2out.c (clone_tree_hash): New function. | |
1923 | (copy_decls_walk): Use it instead of clone_tree. | |
1924 | ||
8085c586 RG |
1925 | 2012-02-14 Richard Guenther <rguenther@suse.de> |
1926 | ||
1927 | PR tree-optimization/52244 | |
1928 | PR tree-optimization/51528 | |
1929 | * tree-sra.c (analyze_access_subtree): Only create INTEGER_TYPE | |
1930 | replacements for integral types. | |
1931 | ||
dd552284 WL |
1932 | 2012-02-14 Walter Lee <walt@tilera.com> |
1933 | ||
1934 | * config.gcc: Handle tilegx and tilepro. | |
1935 | * configure.ac (gcc_cv_as_dwarf2_debug_line): Enable test for | |
1936 | tilegx and tilepro. | |
1937 | Add HAVE_AS_TLS check for tilegx and tilepro. | |
1938 | * configure: Regenerate. | |
1939 | * doc/contrib.texi: Add Mat Hostetter and self. | |
1940 | * doc/extend.texi (TILE-Gx Built-in Functions): New node. | |
1941 | Document instruction intrinsics and network accessing intrinsics. | |
1942 | (TILEPro Built-in Functions): New node. Document instruction | |
1943 | intrinsics and network accessing intrinsics. | |
1944 | * doc/install.texi (Specific, tilegx-*-linux*): Document it. | |
1945 | (Specific, tilepro-*-linux*): Likewise. | |
1946 | * doc/invoke.texi (TILE-Gx Options): New section. | |
1947 | (TILEPro Options): New section. | |
1948 | * doc/md.texi (TILE-Gx): New section. | |
1949 | (TILEPro): New section. | |
1950 | * common/config/tilegx/tilegx-common.c: New file. | |
1951 | * common/config/tilepro/tilepro-common.c: New file. | |
1952 | * config/tilegx/constraints.md: New file. | |
1953 | * config/tilegx/linux.h: New file. | |
1954 | * config/tilegx/mul-tables.c: New file. | |
1955 | * config/tilegx/predicates.md: New file. | |
1956 | * config/tilegx/sync.md: New file. | |
1957 | * config/tilegx/t-tilegx: New file. | |
1958 | * config/tilegx/tilegx-builtins.h: New file. | |
1959 | * config/tilegx/tilegx-c.c: New file. | |
1960 | * config/tilegx/tilegx-generic.md: New file. | |
1961 | * config/tilegx/tilegx-modes.def: New file. | |
1962 | * config/tilegx/tilegx-multiply.h: New file. | |
1963 | * config/tilegx/tilegx-protos.h: New file. | |
1964 | * config/tilegx/tilegx.c: New file. | |
1965 | * config/tilegx/tilegx.h: New file. | |
1966 | * config/tilegx/tilegx.md: New file. | |
1967 | * config/tilegx/tilegx.opt: New file. | |
1968 | * config/tilepro/constraints.md: New file. | |
1969 | * config/tilepro/gen-mul-tables.cc: New file. | |
1970 | * config/tilepro/linux.h: New file. | |
1971 | * config/tilepro/mul-tables.c: New file. | |
1972 | * config/tilepro/predicates.md: New file. | |
1973 | * config/tilepro/t-tilepro: New file. | |
1974 | * config/tilepro/tilepro-builtins.h: New file. | |
1975 | * config/tilepro/tilepro-c.c: New file. | |
1976 | * config/tilepro/tilepro-generic.md: New file. | |
1977 | * config/tilepro/tilepro-modes.def: New file. | |
1978 | * config/tilepro/tilepro-multiply.h: New file. | |
1979 | * config/tilepro/tilepro-protos.h: New file. | |
1980 | * config/tilepro/tilepro.c: New file. | |
1981 | * config/tilepro/tilepro.h: New file. | |
1982 | * config/tilepro/tilepro.md: New file. | |
1983 | * config/tilepro/tilepro.opt: New file. | |
1984 | ||
7daac345 JJ |
1985 | 2012-02-14 Jakub Jelinek <jakub@redhat.com> |
1986 | ||
1987 | PR tree-optimization/52210 | |
1988 | * tree-vect-slp.c (vect_get_and_check_slp_defs): Call | |
1989 | vect_model_simple_cost with two entry vect_def_type array instead | |
1990 | of an address of dt. | |
1991 | ||
837487be RG |
1992 | 2012-02-14 Richard Guenther <rguenther@suse.de> |
1993 | ||
1994 | PR lto/52178 | |
1995 | * tree-streamer-in.c (lto_input_ts_field_decl_tree_pointers): | |
1996 | Do not stream DECL_QUALIFIER. | |
1997 | * tree-streamer-out.c (write_ts_field_decl_tree_pointers): Likewise. | |
1998 | * tree.c (free_lang_data_in_decl): Free DECL_QUALIFIER. | |
1999 | (find_decls_types_r): Do not walk DECL_QUALIFIER. | |
2000 | ||
45f41865 JJ |
2001 | 2012-02-14 Jakub Jelinek <jakub@redhat.com> |
2002 | ||
2003 | PR c/52181 | |
2004 | * c-decl.c (merge_decls): Copy DECL_USER_ALIGN bit from olddecl to | |
2005 | newdecl. | |
2006 | ||
9a76e83d JJ |
2007 | 2012-02-13 Jakub Jelinek <jakub@redhat.com> |
2008 | ||
2009 | PR bootstrap/52172 | |
2010 | * cselib.h (cselib_subst_to_values_from_insn): New prototype. | |
2011 | * cselib.c (cselib_subst_to_values_from_insn): New function. | |
2012 | * sched-deps.c (add_insn_mem_dependence, | |
2013 | sched_analyze_1, sched_analyze_2): Use it. | |
2014 | ||
993716bd JH |
2015 | 2012-02-13 Jan Hubicka <jh@suse.cz> |
2016 | ||
2017 | PR middle-end/52214 | |
2018 | * predict.c (predict_paths_for_bb): Fix thinko in prevoius patch. | |
2019 | ||
255a9a1b EB |
2020 | 2012-02-13 Eric Botcazou <ebotcazou@adacore.com> |
2021 | ||
2022 | * gcc.c (LINK_COMMAND_SPEC): Deal with -fgnu-tm. | |
2023 | (GTM_SELF_SPECS): Define if not already defined. | |
2024 | (driver_self_specs): Add GTM_SELF_SPECS. | |
9517e333 UB |
2025 | * config/darwin.h (LINK_COMMAND_SPEC_A): Deal with -fgnu-tm. |
2026 | (GTM_SELF_SPECS): Define. | |
255a9a1b EB |
2027 | * config/i386/cygwin.h (GTM_SELF_SPECS): Likewise. |
2028 | * config/i386/mingw32.h (GTM_SELF_SPECS): Likewise. | |
2029 | ||
9abd5ed9 JJ |
2030 | 2012-02-13 Jakub Jelinek <jakub@redhat.com> |
2031 | ||
67b977ad JJ |
2032 | * cselib.c (expand_loc): Return sp, fp, hfp or cfa base reg right |
2033 | away if seen. | |
2034 | ||
9517e333 | 2035 | * cselib.c (dump_cselib_val): Don't assume l->setting_insn is non-NULL. |
42286976 | 2036 | |
9abd5ed9 | 2037 | PR middle-end/52230 |
9517e333 UB |
2038 | * omp-low.c (expand_omp_for): If a static schedule without chunk size |
2039 | has NULL region->cont, force fd.chunk_size to be integer_zero_node. | |
9abd5ed9 | 2040 | |
8ca1b342 AM |
2041 | 2012-02-13 Andrew MacLeod <amacleod@redhat.com> |
2042 | ||
2043 | PR c/52190 | |
2044 | * doc/extend.texi : Fix another __atomic_compare_exchange typo. | |
2045 | ||
1eb3478f RG |
2046 | 2012-02-13 Richard Guenther <rguenther@suse.de> |
2047 | ||
2048 | PR translation/52211 | |
2049 | * passes.c (enable_disable_pass): Fix typo. | |
2050 | ||
205ec405 JJ |
2051 | 2012-02-13 Jakub Jelinek <jakub@redhat.com> |
2052 | ||
2053 | PR middle-end/52209 | |
2054 | * expr.c (expand_expr_real_2) <case BIT_NOT_EXPR>: Only expand using | |
2055 | XOR for reduce_bit_field if type is unsigned. | |
2056 | ||
31d7b439 EB |
2057 | 2012-02-12 Eric Botcazou <ebotcazou@adacore.com> |
2058 | ||
2059 | * config/sparc/sparc.h (CANNOT_CHANGE_MODE_CLASS): In 64-bit mode, | |
2060 | disallow changes from SFmode to mode with different size in FP regs. | |
2061 | ||
2062 | 2012-02-12 Robert Millan <rmh@gnu.org> | |
9517e333 | 2063 | Gerald Pfeifer <gerald@pfeifer.com> |
56c534c5 RM |
2064 | |
2065 | * ginclude/stddef.h [__FreeBSD_kernel__] (__size_t): Do not define. | |
2066 | Tweak comment. | |
2067 | ||
4cb0fdbc RS |
2068 | 2012-02-11 Richard Sandiford <rdsandiford@googlemail.com> |
2069 | ||
2070 | PR rtl-optimization/52175 | |
2071 | * reorg.c (fill_slots_from_thread): Don't apply add/sub optimization | |
2072 | to frame-related instructions. | |
2073 | ||
4e92c31f JM |
2074 | 2012-02-10 Jason Merrill <jason@redhat.com> |
2075 | ||
2076 | PR c++/51910 | |
2077 | * tlink.c (demangled_hash_entry): Change mangled to a VEC. | |
2078 | (demangle_new_symbols): Fill it. | |
2079 | (scan_linker_output): Walk it. | |
2080 | (start_tweaking): Split out from scan_linker_output. | |
2081 | (maybe_tweak): Update sym->chosen. | |
2082 | * Makefile.in (COLLECT2_OBJS): Add vec.o and gcc-none.o | |
2083 | ||
bd0ba05d JJ |
2084 | 2012-02-11 Jakub Jelinek <jakub@redhat.com> |
2085 | ||
2086 | PR debug/52132 | |
9517e333 | 2087 | * reg-stack.c (subst_stack_regs_in_debug_insn): Don't use get_true_reg. |
bd0ba05d | 2088 | |
28f7ff45 UB |
2089 | 2012-02-11 Uros Bizjak <ubizjak@gmail.com> |
2090 | ||
2091 | * compare-elim.c (find_comparisons_in_bb): Eliminate only compares | |
2092 | having the same mode as previous compare. | |
2093 | ||
8c92f3e8 EB |
2094 | 2012-02-10 Eric Botcazou <ebotcazou@adacore.com> |
2095 | ||
2096 | * config/sparc/sparc.c (sparc_flat_expand_prologue): Use emit_use. | |
2097 | * config/sparc/sparc.md (UNSPECV_GOTO): Delete. | |
2098 | (nonlocal_goto_internal): Likewise. | |
2099 | (nonlocal_goto): Emit a use and an indirect jump directly. | |
2100 | ||
9ac1504b AM |
2101 | 2012-02-10 Andrew MacLeod <amacleod@redhat.com> |
2102 | ||
2103 | PR c/52190 | |
2104 | * doc/extend.texi : Update comments for __atomic_compare_exchange and | |
2105 | __atomic_{is,always}_lock_free. | |
2106 | ||
877fb450 L |
2107 | 2012-02-10 Uros Bizjak <ubizjak@gmail.com> |
2108 | ||
2109 | PR target/52146 | |
2110 | * config/i386/i386.c (ix86_legitimate_address_p): Disallow | |
1ce8d925 | 2111 | negative constant address for TARGET_X32. |
877fb450 | 2112 | |
1d4fb493 RH |
2113 | 2012-02-10 Richard Henderson <rth@redhat.com> |
2114 | ||
28f7ff45 UB |
2115 | * tree-ssa-dce.c (propagate_necessity): Handle GIMPLE_TRANSACTION. |
2116 | * tree-ssa-operands.c (parse_ssa_operands): Add virtual operands | |
2117 | for GIMPLE_TRANSACTION. Tidy if's into a switch. | |
1d4fb493 | 2118 | |
8bd37302 BS |
2119 | 2012-02-10 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
2120 | Ira Rosen <irar@il.ibm.com> | |
2121 | ||
2122 | PR tree-optimization/50031 | |
2123 | * targhooks.c (default_builtin_vectorization_cost): Handle | |
2124 | vec_promote_demote. | |
2125 | * target.h (enum vect_cost_for_stmt): Add vec_promote_demote. | |
2126 | * tree-vect-loop.c (vect_get_single_scalar_iteraion_cost): Handle | |
2127 | all types of reduction and pattern statements. | |
2128 | (vect_estimate_min_profitable_iters): Likewise. | |
2129 | * tree-vect-stmts.c (vect_model_promotion_demotion_cost): New function. | |
2130 | (vect_get_load_cost): Use vec_perm for permutations; add dump logic | |
2131 | for explicit realigns. | |
2132 | (vectorizable_conversion): Call vect_model_promotion_demotion_cost. | |
2133 | * config/spu/spu.c (spu_builtin_vectorization_cost): Handle | |
2134 | vec_promote_demote. | |
2135 | * config/i386/i386.c (ix86_builtin_vectorization_cost): Likewise. | |
2136 | * config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost): Update | |
2137 | vec_perm for VSX and handle vec_promote_demote. | |
2138 | ||
58d38fd2 JJ |
2139 | 2012-02-10 Jakub Jelinek <jakub@redhat.com> |
2140 | ||
2141 | PR middle-end/52177 | |
2142 | * builtins.c (fold_builtin_atomic_always_lock_free, | |
2143 | expand_builtin_atomic_always_lock_free, | |
28f7ff45 UB |
2144 | fold_builtin_atomic_is_lock_free, expand_builtin_atomic_is_lock_free): |
2145 | Return and/or test boolean_true_node/boolean_false_node instead of | |
58d38fd2 JJ |
2146 | integer_one_node/integer_zero_node. |
2147 | ||
0f3b7e9a JH |
2148 | 2012-02-10 Jan Hubicka <jh@suse.cz> |
2149 | ||
2150 | PR middle-end/48600 | |
2151 | * predict.c (predict_paths_for_bb): Prevent looping. | |
2152 | (predict_paths_leading_to_edge, predict_paths_leading_to): Update. | |
2153 | ||
76c9058b RZ |
2154 | 2012-02-10 Roman Zhuykov <zhroma@ispras.ru> |
2155 | ||
2156 | * config/arm/arm.c (output_move_double): In one case properly | |
2157 | count number of instructions that will be emitted. | |
2158 | ||
7cbf224d RG |
2159 | 2012-02-10 Richard Guenther <rguenther@suse.de> |
2160 | ||
2161 | PR translation/52193 | |
2162 | * cgraphunit.c (cgraph_mark_functions_to_output): Fix typo. | |
2163 | ||
16e0be9b PB |
2164 | 2012-02-09 Peter Bergner <bergner@vnet.ibm.com> |
2165 | ||
2166 | PR middle-end/52140 | |
2167 | * dojump.c (do_compare_rtx_and_jump): Use SCALAR_FLOAT_MODE_P. | |
2168 | ||
65cca5de JJ |
2169 | 2012-02-09 Jakub Jelinek <jakub@redhat.com> |
2170 | ||
2171 | PR debug/52165 | |
2172 | * var-tracking.c (emit_note_insn_var_location): If | |
2173 | EMIT_NOTE_BEFORE_INSN and insn is NOTE_INSN_CALL_ARG_LOCATION, | |
2174 | emit it before next non-NOTE_INSN_CALL_ARG_LOCATION | |
2175 | non-NOTE_DURING_CALL_P insn. | |
2176 | ||
15ed19ff BC |
2177 | 2012-02-09 Bin Cheng <bin.cheng@arm.com> |
2178 | ||
2179 | PR middle-end/51867 | |
2180 | * builtins.c (expand_builtin): Don't check DECL_ASSEMBLER_NAME_SET_P. | |
2181 | ||
5371f719 MG |
2182 | 2012-02-08 Magnus Granberg <zorry@gentoo.org> |
2183 | ||
2184 | PR driver/48524 | |
28f7ff45 UB |
2185 | * gcc.c (switch_matches) Support switches with separated form, |
2186 | -D and -U. | |
5371f719 | 2187 | |
82b37806 GJL |
2188 | 2012-02-08 Georg-Johann Lay <avr@gjlay.de> |
2189 | ||
2190 | * config/avr/avr.md (SREG_ADDR): Remove constant definition. | |
2191 | (SP_ADDR): Ditto. | |
2192 | (RAMPZ_ADDR): Ditto. | |
2193 | * config/avr/avr.c (avr_addr_t): New typedef. | |
2194 | (avr_addr): New struct to hold RAM address of SPL, SPH, RAMPZ, SREG. | |
2195 | (avr_init_expanders): Initialize it. | |
2196 | (expand_prologue): Use avr_addr instead of RAMPZ_ADDR, SP_ADDR, | |
2197 | SREG_ADDR. | |
2198 | (expand_epilogue): Ditto. | |
2199 | (avr_print_operand): Ditto. | |
2200 | (avr_file_start): Ditto. | |
2201 | (avr_emit_movmemhi): Ditto. | |
2202 | ||
31432e21 RG |
2203 | 2012-02-08 Richard Guenther <rguenther@suse.de> |
2204 | ||
2205 | PR tree-optimization/46886 | |
2206 | * tree-flow.h (do_while_loop_p): Declare. | |
2207 | * tree-ssa-loop-ch.c (do_while_loop_p): Export. | |
28f7ff45 | 2208 | * tree-parloops.c (parallelize_loops): Only parallelize do-while loops. |
31432e21 | 2209 | |
c51ec0a3 AM |
2210 | 2012-02-08 Andrew MacLeod <amacleod@redhat.com> |
2211 | ||
2212 | * optabs.c (expand_atomic_load): Do not assume compare_and_swap will | |
2213 | always succeed for integers larger than a native word. | |
2214 | ||
ea72cc1d RG |
2215 | 2012-02-08 Richard Guenther <rguenther@suse.de> |
2216 | ||
2217 | PR rtl-optimization/52170 | |
2218 | * simplify-rtx.c (simplify_plus_minus): Use CONSTM1_RTX to | |
2219 | properly handle integer vector modes. | |
2220 | ||
bd73623c JJ |
2221 | 2012-02-08 Jakub Jelinek <jakub@redhat.com> |
2222 | ||
9e66e106 JJ |
2223 | PR gcov-profile/52150 |
2224 | * coverage.c: Include target.h. | |
2225 | (build_var): Call targetm.strip_name_encoding on the assembler name. | |
2226 | Change one _ into . or $ if the target allows it. | |
2227 | * Makefile.in (coverage.o): Depend on $(TARGET_H). | |
2228 | ||
bd73623c JJ |
2229 | PR rtl-optimization/52139 |
2230 | * cfgrtl.c (cfg_layout_merge_blocks): If BB_END | |
2231 | is a BARRIER after emit_insn_after_noloc, move BB_END | |
2232 | to the last non-BARRIER insn before it. | |
2233 | ||
4566de10 RS |
2234 | 2012-02-07 Richard Sandiford <rdsandiford@googlemail.com> |
2235 | ||
2236 | PR middle-end/24306 | |
2237 | * config/mips/mips.c (mips_std_gimplify_va_arg_expr): New function. | |
2238 | (mips_gimplify_va_arg_expr): Call it instead of | |
2239 | std_gimplify_va_arg_expr. | |
2240 | ||
7cb5ce1a MM |
2241 | 2012-02-07 Michael Meissner <meissner@linux.vnet.ibm.com> |
2242 | ||
2243 | * config/rs6000/rs6000.c (rs6000_trampoline_init): Fix error | |
2244 | message for -mno-pointers-to-nested-function. | |
2245 | ||
f22cfd73 EB |
2246 | 2012-02-07 Eric Botcazou <ebotcazou@adacore.com> |
2247 | ||
2248 | PR middle-end/51994 | |
2249 | * expr.c (get_inner_reference): If there is an offset, add a negative | |
2250 | bit position to it (if any). | |
2251 | ||
13a72c0b JJ |
2252 | 2012-02-07 Jakub Jelinek <jakub@redhat.com> |
2253 | ||
2254 | PR rtl-optimization/52060 | |
2255 | * combine.c (try_combine): Add i0src_copy and i0src_copy2 variables, | |
2256 | copy i1src to i1src_copy whenever added_sets_2 && i1_feeds_i2_n already | |
2257 | before i1dest -> i1src substitution in newpat, copy i0src to i0src_copy | |
2258 | and/or i0src_copy2 when needed. | |
2259 | ||
deb3f362 JJ |
2260 | 2012-02-07 Jakub Jelinek <jakub@redhat.com> |
2261 | ||
117cb2bc JJ |
2262 | * gcc.c (main): Don't look for lto-wrapper or lto-wrapper |
2263 | or LTOPLUGINSONAME if have_c. | |
2264 | ||
deb3f362 JJ |
2265 | * config/freebsd-spec.h: Add comment about what macros can be defined |
2266 | in this header. | |
2267 | (LINK_EH_SPEC, LINK_SSP_SPEC, USE_LD_AS_NEEDED): Don't define here. | |
2268 | * config/freebsd.h (LINK_EH_SPEC, LINK_SSP_SPEC, USE_LD_AS_NEEDED): But | |
2269 | here instead. | |
2270 | ||
b1edf2bc RG |
2271 | 2012-02-07 Richard Guenther <rguenther@suse.de> |
2272 | ||
2273 | * gimple-pretty-print.c (dump_gimple_phi): Avoid excessive | |
2274 | newline in -alias dumps. | |
2275 | ||
26cfb9ab | 2276 | 2012-02-07 Kai Tietz <ktietz@redhat.com> |
28f7ff45 | 2277 | Dave Korn <dave.korn.cygwin@gmail.com> |
26cfb9ab KT |
2278 | |
2279 | PR target/40068 | |
2280 | * config/i386/winnt-cxx.c (i386_pe_adjust_class_at_definition): | |
2281 | Take care that typinfo gets dllexport-attribute. | |
2282 | ||
b1b95093 JJ |
2283 | 2012-02-07 Jakub Jelinek <jakub@redhat.com> |
2284 | ||
2285 | PR middle-end/52074 | |
2286 | * expr.c (expand_expr_addr_expr_1): For CONSTANT_CLASS_P or CONST_DECL | |
2287 | if modifier < EXPAND_SUM call force_operand on the result. | |
2288 | ||
60098013 JR |
2289 | 2012-02-07 Joern Rennecke <joern.rennecke@embecosm.com> |
2290 | ||
2291 | * config/epiphany/epiphany.h (ASM_DECLARE_FUNCTION_SIZE): Redefine, | |
2292 | adding __forwarder_dst__ prefix if a forwarder_section attribute is | |
2293 | present. | |
2294 | (epiphany_function_type): Replace types for specific interrupts with | |
2295 | EPIPHANY_FUNCTION_INTERRUPT. | |
2296 | (EPIPHANY_INTERRUPT_P): Update. | |
2297 | * config/epiphany/epiphany.c (epiphany_handle_forwarder_attribute): | |
2298 | New static function. | |
2299 | (epiphany_attribute_table) <interrupt>: min_len is 0, max_len is 9. | |
2300 | <disinterrupt>: Affects type identity. | |
2301 | (epiphany_handle_interrupt_attribute): Handle variable number of | |
2302 | arguments. | |
2303 | (epiphany_compute_function_type): Update for new | |
2304 | epiphany_function_type definition. | |
2305 | (epiphany_expand_prologue): Don't save (reg:DI GPR_0) for interrupt | |
2306 | handlers with a longcall forwarder. | |
2307 | (epiphany_start_function): Handle multiple interrupt arguments and/or | |
2308 | forwarder_section attribute. | |
2309 | ||
28f7ff45 UB |
2310 | * config/epiphany/epiphany.h (LIB_SPEC): Link libc again after |
2311 | libgloss. | |
be648db7 | 2312 | |
30f0eb2d AM |
2313 | 2012-02-07 Alan Modra <amodra@gmail.com> |
2314 | ||
2315 | PR target/52107 | |
2316 | * config/rs6000/rs6000.c (rs6000_emit_move): Don't create DImode | |
2317 | subregs of TFmode. | |
2318 | ||
c5f14d62 BS |
2319 | 2012-02-06 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
2320 | ||
2321 | PR tree-optimization/50969 | |
2322 | * tree-vect-stmts.c (vect_model_store_cost): Correct statement cost to | |
2323 | use vec_perm rather than vector_stmt. | |
2324 | (vect_model_load_cost): Likewise. | |
2325 | * config/i386/i386.c (ix86_builtin_vectorization_cost): Change cost of | |
2326 | vec_perm to be the same as other vector statements. | |
2327 | * config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost): Revise | |
2328 | cost of vec_perm for TARGET_VSX. | |
2329 | ||
973a39ae RG |
2330 | 2012-02-06 Richard Guenther <rguenther@suse.de> |
2331 | ||
2332 | PR tree-optimization/52115 | |
2333 | * tree-sra.c (access_has_replacements_p): New function. | |
2334 | (sra_modify_assign): Use it to decide whether a use is uninitialized. | |
2335 | ||
fe924d9f PM |
2336 | 2012-02-06 Patrick Marlier <patrick.marlier@gmail.com> |
2337 | ||
2338 | PR middle-end/52047 | |
2339 | * trans-mem.c (expand_call_tm): Add an assertion. | |
2340 | * calls.c (flags_from_decl_or_type): Add ECF_TM_PURE to 'no vops' | |
2341 | functions. | |
2342 | ||
1d30a09a RG |
2343 | 2012-02-06 Richard Guenther <rguenther@suse.de> |
2344 | ||
2345 | PR tree-optimization/50955 | |
2346 | * tree-ssa-loop-ivopts.c (get_computation_cost_at): Artificially | |
2347 | raise cost of expressions that replace an address with an | |
2348 | expression based on a different pointer. | |
2349 | ||
2c8b5d61 JJ |
2350 | 2012-02-06 Jakub Jelinek <jakub@redhat.com> |
2351 | ||
2352 | PR target/52129 | |
2353 | * calls.c (mem_overlaps_already_clobbered_arg_p): If val is | |
2354 | CONST_INT_P, subtract resp. add crtl->args.pretend_args_size to it. | |
2355 | ||
9039ea91 JW |
2356 | 2012-02-06 Jonathan Wakely <jwakely.gcc@gmail.com> |
2357 | ||
2358 | PR c++/48680 | |
2359 | * doc/invoke.texi (C++ Dialect Options): Use @option markup for | |
2360 | -Weffc++ and specify guidelines come from second edition. | |
2361 | ||
7ca9ea76 RS |
2362 | 2012-02-05 Richard Sandiford <rdsandiford@googlemail.com> |
2363 | ||
2364 | * config/mips/mips.md (sibcall_internal, sibcall_value_internal) | |
2365 | (sibcall_value_multiple_internal, call_split, call_internal_direct) | |
2366 | (call_direct_split, call_value_split, call_value_internal_direct) | |
2367 | (call_value_direct_split, call_value_multiple_split): Use jal and | |
2368 | jal_macro attributes. | |
2369 | ||
7bd8c53f RS |
2370 | 2012-02-05 Richard Sandiford <rdsandiford@googlemail.com> |
2371 | ||
2372 | * reload1.c (reload_regs_reach_end_p): Replace with... | |
2373 | (reload_reg_rtx_reaches_end_p): ...this function. | |
2374 | (new_spill_reg_store): Update commentary. | |
2375 | (emit_input_reload_insns): Don't clear new_spill_reg_store here. | |
2376 | (emit_output_reload_insns): Check reload_reg_rtx_reaches_end_p | |
2377 | before setting new_spill_reg_store. | |
2378 | (emit_reload_insns): Use a separate loop to clear new_spill_reg_store. | |
2379 | Use reload_reg_rtx_reaches_end_p instead of reload_regs_reach_end_p. | |
2380 | Also use reload_reg_rtx_reaches_end_p when reading new_spill_reg_store | |
2381 | for non-spill reload registers. | |
2382 | ||
24ee1384 IR |
2383 | 2012-02-05 Ira Rosen <irar@il.ibm.com> |
2384 | ||
2385 | PR tree-optimization/52091 | |
2386 | * tree-vectorizer.h (vect_is_simple_use): Add an argument. | |
2387 | (vect_is_simple_use_1): Likewise. | |
2388 | * tree-vect-loop.c (vectorizable_reduction): Update calls | |
2389 | to vect_is_simple_use_1 and vect_is_simple_use. | |
2390 | (vectorizable_live_operation): Likewise. | |
2391 | * tree-vect-patterns.c (widened_name_p, | |
28f7ff45 | 2392 | vect_recog_vector_vector_shift_pattern, check_bool_pattern): Likewise. |
24ee1384 | 2393 | * tree-vect-stmts.c (process_use, vect_get_vec_def_for_operand, |
28f7ff45 UB |
2394 | vectorizable_call, vectorizable_conversion, vectorizable_assignment, |
2395 | vectorizable_shift,vectorizable_operation, vectorizable_store, | |
2396 | vectorizable_load): Likewise. | |
24ee1384 IR |
2397 | (vect_is_simple_cond): Add an argument, pass it to |
2398 | vect_is_simple_use_1. | |
2399 | (vectorizable_condition): Update calls to vect_is_simple_cond, | |
2400 | vect_is_simple_use. | |
2401 | (vect_is_simple_use): Add an argument, the statement in which | |
2402 | OPERAND is used. Check that if OPERAND's def stmt is a double | |
2403 | reduction phi node, the use is a phi node too. | |
2404 | (vect_is_simple_use_1): Add an argument, pass it to | |
2405 | vect_is_simple_use. | |
2406 | * tree-vect-slp.c (vect_get_and_check_slp_defs): Update a call | |
2407 | to vect_is_simple_use. | |
2408 | ||
d5785e76 JJ |
2409 | 2012-02-04 Jakub Jelinek <jakub@redhat.com> |
2410 | ||
22439481 JJ |
2411 | PR rtl-optimization/52095 |
2412 | * modulo-sched.c (dump_insn_locator): New function. | |
2413 | (loop_canon_p, sms_schedule): Use it. | |
2414 | ||
d5785e76 JJ |
2415 | PR rtl-optimization/52113 |
2416 | * lower-subreg.c (decompose_multiword_subregs): Call recog_memoized | |
2417 | even for decomposable shift/zext insns. | |
2418 | ||
32410d02 JJ |
2419 | 2012-02-03 Jakub Jelinek <jakub@redhat.com> |
2420 | Zdenek Dvorak <ook@ucw.cz> | |
2421 | ||
2422 | PR rtl-optimization/52092 | |
2423 | * loop-unswitch.c (unswitch_single_loop): Call copy_rtx_if_shared | |
2424 | on get_iv_value result. | |
2425 | ||
75471253 AP |
2426 | 2012-02-02 Andrew Pinski <apinski@cavium.com> |
2427 | ||
2428 | PR middle-end/47982 | |
2429 | PR middle-end/43967 | |
2430 | * doc/libgcc.texi (__udivmoddi4/__udivmodti4): Fix documentation typo. | |
2431 | ||
1f01c3ec JJ |
2432 | 2012-02-02 Jakub Jelinek <jakub@redhat.com> |
2433 | ||
2434 | PR middle-end/48071 | |
2435 | * diagnostic.c (diagnostic_finish): Remove trailing newlines. | |
2436 | ||
662f8070 VM |
2437 | 2012-02-02 Vladimir Makarov <vmakarov@redhat.com> |
2438 | ||
2439 | PR rtl-optimization/49800 | |
2440 | * haifa-sched.c (sched_init): Call regstat_init_n_sets_and_refs. | |
2441 | (sched_finish): Call regstat_free_n_sets_and_refs. | |
2442 | ||
14bc59cb RS |
2443 | 2012-02-02 Jia Liu <proljc@gmail.com> |
2444 | ||
2445 | * config/mips/mips-dspr2.md (mips_prepend): Mask operand 3 rather | |
2446 | than operand 2. | |
2447 | ||
9517e333 UB |
2448 | 2012-02-02 Jan Hubicka <jh@suse.cz> |
2449 | Tom de Vries <tom@codesourcery.com> | |
5ee770bf JH |
2450 | |
2451 | PR middle-end/51998 | |
2452 | * cgraphunit.c (cgraph_analyze_function): Break cyclic aliases. | |
2453 | * varpool.c (varpool_analyze_pending_decls): Likewise. | |
2454 | ||
b25364a0 S |
2455 | 2012-02-02 Sumanth G <sumanth.gundapaneni@kpitcummins.com> |
2456 | Jayant R Sonar <jayant.sonar@kpitcummins.com> | |
2457 | ||
2458 | * config.gcc: Add cr16-* support. | |
2459 | ||
2460 | * doc/extend.texi: Document cr16 extensions. | |
2461 | * doc/install.texi: Document cr16 install. | |
2462 | * doc/invoke.texi: Document cr16 options. | |
2463 | * doc/md.texi: Document cr16 constraints. | |
2464 | ||
2465 | * common/config/cr16/cr16-common.c: New file. | |
2466 | * config/cr16/cr16.c: New file. | |
2467 | * config/cr16/cr16.h: New file. | |
2468 | * config/cr16/cr16.md: New file. | |
2469 | * config/cr16/cr16.opt: New file. | |
2470 | * config/cr16/cr16-protos.h: New file. | |
2471 | * config/cr16/predicates.md: New file. | |
2472 | * config/cr16/constraints.md: New file. | |
2473 | * config/cr16/t-cr16: New file. | |
2474 | ||
13c931c9 JJ |
2475 | 2012-02-02 Jakub Jelinek <jakub@redhat.com> |
2476 | ||
903e49f5 JJ |
2477 | PR target/52086 |
2478 | * config/i386/i386.md (*addqi_2 peephole with SImode addition): Check | |
2479 | that operands[2] is either immediate, or q_regs_operand. | |
2480 | ||
13c931c9 JJ |
2481 | PR tree-optimization/52073 |
2482 | * tree-vect-stmts.c (vect_mark_relevant): When checking uses of | |
2483 | a pattern stmt for pattern uses, ignore uses outside of the loop. | |
2484 | ||
c2453253 GJL |
2485 | 2012-02-01 Georg-Johann Lay <avr@gjlay.de> |
2486 | ||
2487 | * config/avr/avr.c: Resolve all AS1 and AS2 macros. | |
2488 | * config/avr/avr.h (AS1, AS2, AS2C, AS3): Remove. | |
2489 | (OUT_AS1, OUT_AS2): Remove. | |
2490 | ||
07ad5438 GJL |
2491 | 2012-02-01 Georg-Johann Lay <avr@gjlay.de> |
2492 | ||
2493 | PR rtl-optimization/51374 | |
2494 | * combine.c (can_combine_p): Don't allow volatile_refs_p insns | |
2495 | to cross other volatile_refs_p insns. | |
2496 | ||
99ea07f8 RG |
2497 | 2012-02-01 Richard Guenther <rguenther@suse.de> |
2498 | ||
2499 | * doc/invoke.texi (fno-inline): Clarify documentation. | |
2500 | (finline-small-functions): Likewise. | |
2501 | (finline-functions): Likewise. | |
2502 | * common.opt (finline): Adjust comment and documentation. | |
2503 | (finline-small-functions): Clarify documentation. | |
2504 | (finline-functions): Likewise. | |
2505 | (finline-functions-called-once): Likewise. | |
2506 | ||
3db684fb TG |
2507 | 2012-02-01 Tristan Gingold <gingold@adacore.com> |
2508 | ||
2509 | * c-typeck.c (composite_type): Keep mode for pointers. | |
2510 | ||
35aebd56 RS |
2511 | 2012-01-31 Richard Sandiford <rdsandiford@googlemail.com> |
2512 | ||
2513 | * function.h (regno_reg_rtx): Adjust comment. | |
2514 | * reginfo.c (init_reg_modes_target): Only use the previous mode | |
2515 | if it fits within one register. Remove MIPS comment. | |
2516 | ||
8bb1a172 JJ |
2517 | 2012-01-31 Jakub Jelinek <jakub@redhat.com> |
2518 | ||
2519 | PR bootstrap/52058 | |
2520 | * combine.c (do_SUBST_LINK, SUBST_LINK): Guard with #ifndef HAVE_cc0. | |
2521 | ||
01496eca AK |
2522 | 2012-01-31 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
2523 | ||
2524 | * config/s390/s390.md ("*ashr<mode>3_and"): Add missing z196 flag | |
2525 | to srak instruction. | |
2526 | ||
a2be33be MGD |
2527 | 2012-01-31 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> |
2528 | ||
28f7ff45 | 2529 | * config/arm/thumb2.md (thumb2_mov_notscc): Use MVN for true condition. |
a2be33be | 2530 | |
dd887943 JJ |
2531 | 2012-01-31 Jakub Jelinek <jakub@redhat.com> |
2532 | ||
2533 | PR bootstrap/52041 | |
2534 | PR bootstrap/52039 | |
2535 | PR target/51974 | |
2536 | * ipa-prop.c (detect_type_change_1): Call ao_ref_init. | |
2537 | ||
63d7ceaa RG |
2538 | 2012-01-31 Richard Guenther <rguenther@suse.de> |
2539 | ||
2540 | PR tree-optimization/51528 | |
2541 | * tree-sra.c (sra_modify_assign): Avoid copy-in/out for aggregate | |
2542 | assigns. | |
2543 | ||
68c8a824 JJ |
2544 | 2012-01-31 Jakub Jelinek <jakub@redhat.com> |
2545 | ||
2546 | PR bootstrap/52041 | |
2547 | PR bootstrap/52039 | |
2548 | PR target/51974 | |
2549 | * ree.c (add_removable_extension): Change def_map argument | |
2550 | to unsigned *, store in def_map 1 + offset into *insn_list vector | |
2551 | instead of pointers into the vector. | |
2552 | (find_removable_extensions): Adjust caller. | |
2553 | ||
a7fd5c6b GJL |
2554 | 2012-01-30 Georg-Johann Lay <avr@gjlay.de> |
2555 | ||
2556 | * config/avr/avr.md: Resolve all AS1 and AS2 macros. | |
2557 | Transform all "* quoted-c-code" to { c-code }. | |
2558 | Remove redundant test for "optimize" in combine patterns. | |
2559 | Move (include "avr-dimode.md") to end of file. | |
2560 | ||
ab07692c BC |
2561 | 2012-01-30 Bin Cheng <bin.cheng@arm.com> |
2562 | ||
2563 | PR target/51835 | |
2564 | * config/arm/arm.c (arm_libcall_uses_aapcs_base): Use correct ABI | |
2565 | for __aeabi_d2iz/__aeabi_d2uiz with hard-float. | |
2566 | ||
e799d447 RG |
2567 | 2012-01-30 Richard Guenther <rguenther@suse.de> |
2568 | ||
2569 | PR tree-optimization/52028 | |
2570 | * tree-loop-distribution.c (ldist_gen): Properly update | |
2571 | virtual SSA form. | |
2572 | ||
dd44dcb0 JJ |
2573 | 2012-01-30 Jakub Jelinek <jakub@redhat.com> |
2574 | ||
2026d51a JJ |
2575 | PR debug/52027 |
2576 | * dwarf2out.c (dwarf2out_switch_text_section): Don't call | |
2577 | set_cur_line_info_table if not emitting debug info. | |
2578 | ||
2f326699 JJ |
2579 | PR tree-optimization/52046 |
2580 | * tree-vect-patterns.c (check_bool_pattern): Give up if | |
2581 | a comparison could throw. | |
2582 | ||
dd44dcb0 JJ |
2583 | PR debug/52048 |
2584 | * tree-ssa-tail-merge.c (local_def): Ignore debug uses. | |
2585 | ||
ab448cfa RG |
2586 | 2012-01-30 Richard Guenther <rguenther@suse.de> |
2587 | ||
2588 | PR tree-optimization/52045 | |
2589 | * tree-optimize.c (execute_cleanup_cfg_post_optimizing): Update | |
2590 | SSA form if cfgcleanup did anything. | |
2591 | ||
f8698b37 RG |
2592 | 2012-01-30 Richard Guenther <rguenther@suse.de> |
2593 | ||
2594 | PR tree-optimization/52045 | |
2595 | * ipa-inline-transform.c (inline_transform): Call execute_fixup_cfg | |
2596 | before computing final todo. | |
2597 | ||
fdad69c1 RG |
2598 | 2012-01-30 Richard Guenther <rguenther@suse.de> |
2599 | ||
2600 | PR tree-optimization/51528 | |
2601 | * tree-sra.c (sra_modify_assign): Re-factor in preparation | |
2602 | for PR51528 fix. | |
2603 | ||
8203ac49 PB |
2604 | 2012-01-30 Paolo Bonzini <bonzini@gnu.org> |
2605 | ||
2606 | * df-problems.c (df_kill_notes): Check that the use refers | |
2607 | to the note under examination. | |
2608 | ||
98e4350f EB |
2609 | 2012-01-30 Eric Botcazou <ebotcazou@adacore.com> |
2610 | ||
2611 | PR target/51920 | |
2612 | * config/sparc/sparc.c (vector_init_fpmerge): Remove INNER_MODE | |
2613 | parameter and use short-lived pseudos. | |
2614 | (vector_init_faligndata): Remove INNER_MODE parameter and use loop. | |
2615 | (sparc_expand_vector_init): Const-ify local variables and adjust | |
2616 | calls to above functions. | |
2617 | ||
733ccf09 GJL |
2618 | 2012-01-30 Georg-Johann Lay <avr@gjlay.de> |
2619 | ||
2620 | * config/avr/avr.c (out_movqi_mr_r): Fix length computation. | |
2621 | ||
1d7b264e SL |
2622 | 2012-01-29 Sandra Loosemore <sandra@codesourcery.com> |
2623 | ||
2624 | * doc/invoke.texi: Make usage of "compile time" and | |
2625 | "run time"/"runtime" consistent throughout the file. | |
2626 | ||
1e86df8d UB |
2627 | 2012-01-29 Uros Bizjak <ubizjak@gmail.com> |
2628 | ||
28f7ff45 | 2629 | * config/alpha/alpha.c (alpha_option_override): Default to |
1e86df8d UB |
2630 | full IEEE compliance mode for Go language. |
2631 | ||
fc4c0b43 TC |
2632 | 2011-01-29 Tijl Coosemans <tijl@coosemans.org> |
2633 | ||
2634 | * config/freebsd-spec.h [TARGET_LIBC_PROVIDES_SSP] | |
2635 | (LINK_SSP_SPEC): Define. | |
2636 | ||
df8b5535 JDA |
2637 | 2012-01-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
2638 | ||
2639 | PR target/51871 | |
2640 | * config/pa/pa.c (pa_return_addr_rtx): Add support for PA2.0 export | |
2641 | stubs. | |
2642 | ||
6b6985ba SL |
2643 | 2012-01-28 Sandra Loosemore <sandra@codesourcery.com> |
2644 | ||
2645 | * doc/invoke.texi: Correct hyphenation of "floating point", | |
2646 | "double precision", and related terminology throughout the file. | |
2647 | ||
8ea2d689 JJ |
2648 | 2012-01-28 Jakub Jelinek <jakub@redhat.com> |
2649 | ||
2650 | PR target/52006 | |
2651 | * config/arm/arm.md (pic_add_dot_plus_eight peephole2): Use | |
2652 | arm_general_register_operand predicate for operand 2 instead of | |
2653 | register_operand. | |
2654 | ||
183dd130 ILT |
2655 | 2012-01-27 Ian Lance Taylor <iant@google.com> |
2656 | ||
2657 | PR go/47656 | |
2658 | * builtins.def (BUILT_IN_INIT_HEAP_TRAMPOLINE): Define. | |
2659 | * builtins.c (expand_builtin_init_trampoline): Add onstack | |
2660 | parameter. Change caller. | |
2661 | (expand_builtin): Handle BUILT_IN_INIT_HEAP_TRAMPOLINE. | |
2662 | * tree.c (build_common_builtin_nodes): Declare | |
2663 | __builtin_init_heap_trampoline. | |
2664 | ||
38ee0815 GJL |
2665 | 2012-01-27 Georg-Johann Lay <avr@gjlay.de> |
2666 | ||
2667 | * config/avr/avr-protos.h (lpm_reg_rtx, lpm_addr_reg_rtx, | |
2668 | tmp_reg_rtx, zero_reg_rtx, all_regs_rtx, rampz_rtx): Make global. | |
2669 | * config/avr/avr.c: Ditto. | |
2670 | (avr_regnames): Remove because unused. | |
2671 | * config/avr/avr.md (*cpse.ne): New peephole. | |
2672 | (*cpse.eq): New peephole from former cpse peepholes. | |
2673 | ||
b6c71f77 ME |
2674 | 2012-01-27 Michael Eager <eager@eagercon.com> |
2675 | ||
2676 | * config/microblaze.c (microblaze_emit_compare): Correct | |
2677 | test after pcmp instruction. | |
2678 | ||
13604927 RG |
2679 | 2012-01-27 Richard Guenther <rguenther@suse.de> |
2680 | ||
2681 | PR tree-optimization/52020 | |
2682 | * tree-sra.c (sra_modify_assign): Do not transform clobbers. | |
2683 | ||
ace018f9 RG |
2684 | 2012-01-27 Richard Guenther <rguenther@suse.de> |
2685 | ||
2686 | * ipa-pure-const.c (check_stmt): Clobbers do not make a | |
2687 | function non-const/pure. | |
2688 | ||
aff86594 RG |
2689 | 2012-01-27 Richard Guenther <rguenther@suse.de> |
2690 | ||
2691 | PR tree-optimization/50444 | |
2692 | * tree-sra.c (build_ref_for_offset): Properly adjust the | |
2693 | MEM_REF type for unaligned accesses. | |
2694 | ||
22345357 RG |
2695 | 2012-01-27 Richard Guenther <rguenther@suse.de> |
2696 | ||
2697 | PR tree-optimization/50444 | |
2698 | * expr.c (mem_ref_refers_to_non_mem_p): New function. | |
2699 | (expand_assignment): Use it. Properly handle misaligned | |
2700 | bases when expanding stores to component references. | |
2701 | (expand_expr_real_1): Use mem_ref_refers_to_non_mem_p and | |
2702 | refactor that case. | |
2703 | ||
3881dee9 AB |
2704 | 2012-01-27 Andrey Belevantsev <abel@ispras.ru> |
2705 | ||
2706 | PR middle-end/51389 | |
2707 | * Makefile.in (tree-data-ref.o): Depend on $(PARAMS_H). | |
2708 | * tree-data-ref.h (find_data_references_in_loop): Remove declaration. | |
2709 | * tree-data-ref.c (find_data_references_in_loop): Make static. | |
2710 | (compute_all_dependences): Change return type to bool. Bail out | |
2711 | for too many datarefs in a loop. Move the hunk resetting the data | |
2712 | dependences vector from ... | |
2713 | (compute_data_dependences_for_loop): ... here. Account for | |
2714 | compute_all_dependences returning false. | |
2715 | (compute_data_dependences_for_bb): Likewise. | |
2716 | * params.def (PARAM_LOOP_MAX_DATAREFS_FOR_DATADEPS): New param. | |
2717 | * doc/invoke.texi (loop-max-datarefs-for-datadeps): Document it. | |
2718 | ||
45c83429 RG |
2719 | 2012-01-27 Richard Guenther <rguenther@suse.de> |
2720 | ||
2721 | PR middle-end/51959 | |
2722 | * expr.c (store_field): Use the alias-set of the scratch memory | |
2723 | for storing to it. | |
2724 | ||
842679dc TV |
2725 | 2012-01-27 Tom de Vries <tom@codesourcery.com> |
2726 | ||
2727 | PR tree-optimization/51990 | |
1e86df8d UB |
2728 | * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Handle |
2729 | WITH_SIZE_EXPR. | |
842679dc TV |
2730 | * tree-ssa-pre.c (create_component_ref_by_pieces_1): Same. |
2731 | ||
ae25db45 JJ |
2732 | 2012-01-27 Jakub Jelinek <jakub@redhat.com> |
2733 | ||
2734 | PR debug/52001 | |
2735 | * var-tracking.c (reverse_op): Don't add any reverse operation | |
2736 | if V already has any constant locations. | |
2737 | ||
cb485fff SL |
2738 | 2012-01-27 Sandra Loosemore <sandra@codesourcery.com> |
2739 | ||
2740 | * doc/invoke.texi: Correct usage of "command line" (noun) | |
2741 | vs "command-line" (adjective) throughout. | |
2742 | ||
e3bd34b8 SL |
2743 | 2012-01-27 Sandra Loosemore <sandra@codesourcery.com> |
2744 | ||
2745 | * doc/invoke.texi (Language Independent Options): Move | |
2746 | -Wcoverage-mismatch blurb from here.... | |
2747 | (Warning Options): ...to here. | |
2748 | ||
b7c0a0d4 PB |
2749 | 2012-01-27 Peter Bergner <bergner@vnet.ibm.com> |
2750 | ||
2751 | * config/rs6000/rs6000.c (rs6000_option_override_internal): | |
2752 | Set rs6000_always_hint to false for 476. | |
2753 | ||
2fda54bd MK |
2754 | 2012-01-27 Matthias Klose <doko@ubuntu.com> |
2755 | ||
2756 | * gcc.c (add_sysrooted_prefix): Remove trailing dir separator from | |
2757 | system root. | |
2758 | * incpath.c (add_standard_paths): Likewise. | |
2759 | ||
4c1fd084 RH |
2760 | 2012-01-27 Richard Henderson <rth@redhat.com> |
2761 | ||
2762 | * config/m68k/m68k.c (TARGET_ATOMIC_TEST_AND_SET_TRUEVAL): New. | |
2763 | * config/m68k/sync.md (atomic_test_and_set): Rename from | |
2764 | sync_test_and_setqi and adjust the operands. | |
2765 | (atomic_test_and_set_1): Rename from sync_test_and_setqi_1 | |
2766 | and unconditionally enable. | |
2767 | ||
5a843a13 RH |
2768 | 2012-01-27 Richard Henderson <rth@redhat.com> |
2769 | ||
2770 | * config/sparc/sparc.c (TARGET_ATOMIC_TEST_AND_SET_TRUEVAL): New. | |
2771 | * config/sparc/sync.md (atomic_test_and_set): Only handle QImode. | |
2772 | (ldstub): Rename from ldstubqi. | |
2773 | (ldstub<I24MODE>): Remove. | |
2774 | ||
57c5ab1b RH |
2775 | 2012-01-27 Richard Henderson <rth@redhat.com> |
2776 | ||
2777 | * target.def (TARGET_ATOMIC_TEST_AND_SET_TRUEVAL): New. | |
2778 | * c-cppbuiltin.c (cpp_atomic_builtins): Define | |
2779 | __GCC_ATOMIC_TEST_AND_SET_TRUEVAL. | |
2780 | * doc/tm.texi.in (TARGET_ATOMIC_TEST_AND_SET_TRUEVAL): Add doc hook. | |
2781 | * doc/tm.texi: Rebuild. | |
2782 | ||
15e73e06 RH |
2783 | 2012-01-27 Richard Henderson <rth@redhat.com> |
2784 | ||
2785 | * optabs.c (gen_atomic_test_and_set): Remove default. | |
2786 | (maybe_emit_atomic_test_and_set): Use maybe_expand_insn. | |
2787 | ||
089dacc5 JJ |
2788 | 2012-01-26 Jakub Jelinek <jakub@redhat.com> |
2789 | ||
2790 | PR rtl-optimization/51978 | |
1e86df8d | 2791 | * ree.c (make_defs_and_copies_lists): Change set_pat type to const_rtx. |
089dacc5 JJ |
2792 | (combine_reaching_defs): Likewise. |
2793 | (struct re_info): Remove. | |
2794 | (add_removable_extension): Remove x and data arguments, | |
2795 | add insn, insn_list and def_map. Use the arguments directly | |
2796 | instead of using struct re_info. | |
2797 | (find_removable_extensions): Don't call add_removable_extension | |
2798 | through note_stores, instead just call it with single_set | |
2799 | result if non-NULL. | |
2800 | (find_and_remove_re): Pass curr_cand->expr instead of | |
1e86df8d | 2801 | PATTERN (curr_cand->insn) as set_pat argument to combine_reaching_defs. |
089dacc5 | 2802 | |
81bfd197 MM |
2803 | 2012-01-26 Michael Matz <matz@suse.de> |
2804 | ||
2805 | PR tree-optimization/46590 | |
2806 | * cfgexpand.c: Revert last change (r183305). | |
2807 | * gimplify.c (gimplify_bind_expr): Add clobbers for all non-gimple | |
2808 | regs. | |
2809 | * tree-eh.c (cleanup_empty_eh): Try to optimize clobbers before | |
2810 | checking for emptiness. | |
2811 | ||
892123df JJ |
2812 | 2012-01-26 Jakub Jelinek <jakub@redhat.com> |
2813 | ||
2814 | PR middle-end/51895 | |
2815 | * expr.c (expand_expr_real_1): Handle BLKmode MEM_REF of | |
2816 | non-addressable non-BLKmode base correctly. | |
2817 | ||
1a47f99c MM |
2818 | 2012-01-26 Michael Matz <matz@suse.de> |
2819 | ||
2820 | PR tree-optimization/48794 | |
2821 | * tree-eh.c (remove_unreachable_handlers_no_lp): Don't remove | |
2822 | regions referenced from RESX/EH_DISPATCH. | |
2823 | ||
3d427cc1 AK |
2824 | 2012-01-26 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
2825 | ||
2826 | * config/s390/s390.h: Make BRANCH_COST an option. | |
2827 | * config/s390/s390.opt: New option -mbranch-cost. | |
2828 | ||
3be18e47 RH |
2829 | 2012-01-26 Richard Henderson <rth@redhat.com> |
2830 | ||
2831 | Revert 2012-01-24 change: | |
2832 | * trans-mem.c (requires_barrier): Do not instrument thread local | |
2833 | variables and emit save/restore for them. | |
2834 | ||
21ae439c JJ |
2835 | 2012-01-25 Jakub Jelinek <jakub@redhat.com> |
2836 | ||
2837 | PR middle-end/51986 | |
2838 | * sched-deps.c (sched_get_condition_with_rev_uncached): Don't test | |
2839 | for pat == 0. | |
2840 | ||
e906c889 RS |
2841 | 2012-01-25 Richard Sandiford <rdsandiford@googlemail.com> |
2842 | ||
55d4e75e RS |
2843 | * config/mips/mips.c (mips_small_data_pattern_1): Don't process |
2844 | ASM_OPERANDS. | |
e906c889 | 2845 | |
3a840863 GJL |
2846 | 2012-01-25 Georg-Johann Lay <avr@gjlay.de> |
2847 | ||
2848 | PR target/49868 | |
2849 | Rename __pgm to __flash. | |
2850 | Rename __pgm1 to __flash1. | |
2851 | Rename __pgm2 to __flash2. | |
2852 | Rename __pgm3 to __flash3. | |
2853 | Rename __pgm4 to __flash4. | |
2854 | Rename __pgm5 to __flash5. | |
2855 | Rename __pgmx to __memx. | |
2856 | * doc/extend.texi (AVR Named Address Spaces) | |
2857 | Rename address space names as indicated above. | |
2858 | * config/avr/avr.c (avr_addrspace): Ditto. | |
2859 | ||
2860 | * config/avr/avr-protos.h | |
2861 | (avr_mem_pgmx_p): Rename to avr_mem_memx_p. | |
2862 | (avr_mem_pgm_p): Rename to avr_mem_flash_p. | |
2863 | * config/avr/predicates.md: Ditto. | |
2864 | * config/avr/avr.c Ditto, and | |
2865 | (avr_decl_pgmx_p): Rename to avr_decl_memx_p. | |
2866 | (avr_decl_pgm_p): Rename to avr_decl_flash_p. | |
2867 | ||
2868 | * config/avr/avr.h (ADDR_SPACE_PGM): Rename to ADDR_SPACE_FLASH. | |
2869 | (ADDR_SPACE_PGM1): Rename to ADDR_SPACE_FLASH1. | |
2870 | (ADDR_SPACE_PGM2): Rename to ADDR_SPACE_FLASH2. | |
2871 | (ADDR_SPACE_PGM3): Rename to ADDR_SPACE_FLASH3. | |
2872 | (ADDR_SPACE_PGM4): Rename to ADDR_SPACE_FLASH4. | |
2873 | (ADDR_SPACE_PGM5): Rename to ADDR_SPACE_FLASH5. | |
2874 | (ADDR_SPACE_PGMX): Rename to ADDR_SPACE_MEMX. | |
2875 | * config/avr/avr.c: Ditto. | |
2876 | * config/avr/avr.md: Ditto. | |
2877 | ||
b3310d49 JM |
2878 | 2012-01-25 Jason Merrill <jason@redhat.com> |
2879 | ||
2880 | PR c++/51992 | |
2881 | * tree.c (find_decls_types_in_node): Walk gimple_call_fntype. | |
2882 | ||
06e1d03d JJ |
2883 | 2012-01-25 Jakub Jelinek <jakub@redhat.com> |
2884 | ||
2885 | PR tree-optimization/51987 | |
2886 | * tree-data-ref.c (get_references_in_stmt): Handle references in | |
2887 | non-volatile GIMPLE_ASM. | |
2888 | ||
8bf43909 RG |
2889 | 2012-01-25 Richard Guenther <rguenther@suse.de> |
2890 | ||
2891 | * tree-ssa-sccvn.c (vn_reference_eq): Also compare if both | |
2892 | bases are dereferenced. | |
2893 | ||
3dbdd1b9 AB |
2894 | 2012-01-25 Andrey Belevantsev <abel@ispras.ru> |
2895 | ||
2896 | PR rtl-optimization/48374 | |
1e86df8d | 2897 | * sel-sched-ir.h (get_all_loop_exits): Check for zero successors. |
3dbdd1b9 | 2898 | |
9ca3d00e AB |
2899 | 2012-01-25 Andrey Belevantsev <abel@ispras.ru> |
2900 | ||
2901 | * tree-predcom.c (tree_predictive_commoning_loop): Bail out when | |
2902 | compute_data_dependences_for_loop returns false. | |
2903 | * tree-parloops.c (loop_parallel_p): Likewise. | |
2904 | ||
87c0fb4b RG |
2905 | 2012-01-25 Richard Guenther <rguenther@suse.de> |
2906 | ||
2907 | * tree.h (get_pointer_alignment_1): Declare. | |
2908 | * builtins.c (get_pointer_alignment_1): New function. | |
2909 | (get_pointer_alignment): Use it. | |
2910 | ||
2630025d RR |
2911 | 2012-01-25 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> |
2912 | ||
2913 | PR rtl-optimization/48308 | |
2914 | * combine.c (enum undo_kind): Add UNDO_LINKS. | |
2915 | (struct undo): Add member l to other_contents and where. | |
2916 | (do_SUBST_LINK): New. | |
2917 | (SUBST_LINK): New. | |
2918 | (try_combine): Handle LOG_LINKS for the dummy i1 case. | |
2919 | (undo_all): Handle UNDO_LINKS. | |
2920 | ||
42cf0609 RH |
2921 | 2012-01-25 Richard Henderson <rth@redhat.com> |
2922 | ||
2923 | * optabs.c (maybe_emit_atomic_test_and_set): Allow non-QImode | |
2924 | mem inputs. | |
2925 | ||
1efaf134 RS |
2926 | 2012-01-24 Richard Sandiford <rdsandiford@googlemail.com> |
2927 | ||
2928 | * optabs.c (gen_atomic_test_and_set): Use each argument. | |
2929 | ||
63b9d91a RS |
2930 | 2012-01-24 Richard Sandiford <rdsandiford@googlemail.com> |
2931 | ||
2932 | * config/mips/mips-ps-3d.md (mips_addr_ps, reduc_splus_v2sf) | |
2933 | (mips_cvt_pw_ps, mips_cvt_ps_pw, mips_mulr_ps, mips_cabs_cond_<fmt>) | |
2934 | (mips_cabs_cond_4s, mips_cabs_cond_ps, bc1any4t, bc1any4f, bc1any2t) | |
2935 | (bc1any2f, mips_rsqrt1_<fmt>, mips_rsqrt2_<fmt>, mips_recip1_<fmt>) | |
2936 | (mips_recip2_<fmt>): Require TARGET_MIPS3D rather than | |
2937 | TARGET_PAIRED_SINGLE_FLOAT. | |
2938 | ||
55356334 RS |
2939 | 2012-01-24 Richard Sandiford <rdsandiford@googlemail.com> |
2940 | ||
2941 | * doc/rtl.texi (MEM_IN_STRUCT_P, MEM_SCALAR_P): Delete. | |
2942 | (in_struct, return_val): Remove MEM documentation. | |
2943 | * rtl.h (rtx_def): Remove MEM meanings from in_struct and return_val. | |
2944 | (MEM_IN_STRUCT_P, MEM_SCALAR_P): Delete. | |
2945 | (MEM_COPY_ATTRIBUTES): Remove references to MEM_IN_STRUCT_P | |
2946 | and MEM_SCALAR. | |
2947 | * emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise. | |
2948 | * cfgexpand.c (add_alias_set_conflicts): Likewise. | |
2949 | * expr.c (store_field): Likewise. | |
2950 | * function.c (assign_stack_temp_for_type): Likewise. | |
2951 | * ifcvt.c (noce_try_cmove_arith): Likewise. | |
2952 | * reload1.c (reload): Likewise. | |
2953 | * config/alpha/alpha.c (alpha_set_memflags_1): Likewise. | |
2954 | (alpha_set_memflags): Likewise. | |
2955 | * config/m32c/m32c.c (m32c_immd_dbl_mov): Nullify. | |
2956 | ||
53d9622b RS |
2957 | 2012-01-24 Richard Sandiford <rdsandiford@googlemail.com> |
2958 | ||
2959 | * rtl.h (true_dependence, canon_true_dependence): Remove varies | |
2960 | parameter. | |
2961 | * alias.c (fixed_scalar_and_varying_struct_p): Delete. | |
2962 | (true_dependence_1, write_dependence_p, may_alias_p): Don't call it. | |
2963 | (true_dependence_1, true_dependence, canon_true_dependence): Remove | |
2964 | varies parameter. | |
2965 | * cselib.c (cselib_rtx_varies_p): Delete. | |
2966 | (cselib_invalidate_mem): Update call to canon_true_dependence. | |
2967 | * dse.c (record_store, check_mem_read_rtx): Likewise. | |
2968 | (scan_reads_nospill): Likewise. | |
2969 | * cse.c (check_dependence): Likewise. | |
2970 | (cse_rtx_varies_p): Delete. | |
2971 | * expr.c (safe_from_p): Update call to true_dependence. | |
2972 | * ira.c (validate_equiv_mem_from_store): Likewise. | |
2973 | (memref_referenced_p): Likewise. | |
2974 | * postreload-gcse.c (find_mem_conflicts): Likewise. | |
2975 | * sched-deps.c (sched_analyze_2): Likewise. | |
2976 | * store-motion.c (load_kills_store): Likewise. | |
2977 | * config/frv/frv.c (frv_registers_conflict_p_1): Likewise. | |
2978 | * gcse.c (mems_conflict_for_gcse_p): Likewise. | |
2979 | (compute_transp): Update call to canon_true_dependence. | |
2980 | ||
f8a27aa6 RH |
2981 | 2012-01-25 Richard Henderson <rth@redhat.com> |
2982 | ||
2983 | * optabs.c (CODE_FOR_atomic_test_and_set): Provide default. | |
2984 | (maybe_emit_atomic_test_and_set): New. | |
2985 | (expand_sync_lock_test_and_set): Use it. | |
2986 | (expand_atomic_test_and_set): Likewise. | |
2987 | * doc/extend.texi (__atomic_test_and_set): Adjust the docs to match | |
2988 | the implementation; clarify implementation defined details. | |
2989 | * doc/md.texi (atomic_test_and_set): Document. | |
2990 | ||
f1d4a790 RH |
2991 | 2012-01-25 Richard Henderson <rth@redhat.com> |
2992 | ||
2993 | * config/sparc/predicates.md (zero_or_v7_operand): Use match_code. | |
2994 | ||
ed6cf318 RH |
2995 | 2012-01-25 Richard Henderson <rth@redhat.com> |
2996 | ||
2997 | PR target/51968 | |
2998 | * config/arm/arm.c (neon_split_vcombine): Emit deleted note | |
2999 | to effect no-op split. | |
3000 | ||
dda6ecae AH |
3001 | 2012-01-24 Aldy Hernandez <aldyh@redhat.com> |
3002 | ||
3003 | PR lto/51698 | |
3004 | * builtin-types.def: (BT_CONST_DOUBLE_PTR): New. | |
3005 | (BT_FN_VOID_PTR_CONST_PTR_SIZE): New. | |
3006 | (BT_FN_VOID_PTR_INT_SIZE): New. | |
3007 | (BT_FN_UINT_UINT_VAR): Remove. | |
3008 | (BT_FN_UINT32_UINT32_VAR): New. | |
3009 | (BT_FN_DOUBLE_VPTR): Remove. | |
3010 | (BT_FN_DOUBLE_CONST_DOUBLE_PTR): New. | |
3011 | ||
1e86df8d | 3012 | * gtm-builtins.def (_ITM_abortTransaction): Set return type to void. |
dda6ecae AH |
3013 | (_ITM_changeTransactionMode): Same. |
3014 | (_ITM_memmoveRtWt): Change return type to void. | |
3015 | (_ITM_memcpyRtWt): Same. | |
3016 | (_ITM_memsetW): Same. | |
3017 | (_ITM_RaRD): Change types to double. | |
3018 | (_ITM_RD): Same. | |
3019 | (_ITM_RaWD): Same. | |
3020 | (_ITM_RfWD): Same. | |
3021 | ||
3022 | * builtins.def (DEF_TM_BUILTIN): Set BOTH_P to true. | |
3023 | ||
1aa5d1c7 AH |
3024 | 2012-01-24 Aldy Hernandez <aldyh@redhat.com> |
3025 | Patrick Marlier <patrick.marlier@gmail.com> | |
3026 | ||
3027 | * trans-mem.c (requires_barrier): Do not instrument thread local | |
3028 | variables and emit save/restore for them. | |
3029 | ||
c5c90089 JM |
3030 | 2012-01-24 Jason Merrill <jason@redhat.com> |
3031 | ||
3032 | PR c++/51812 | |
3033 | * cgraphunit.c (cgraph_decide_is_function_needed): Don't always | |
3034 | output static aliases. | |
3035 | ||
5460e1fc JJ |
3036 | 2012-01-24 Jakub Jelinek <jakub@redhat.com> |
3037 | ||
3038 | PR driver/47249 | |
3039 | * common.opt (-pie, -shared, pie, shared): Change from Common to | |
3040 | Driver. | |
3041 | * gcc.c (display_help): Display help for -pie and -shared. | |
3042 | ||
aa9ec4db GJL |
3043 | 2012-01-24 Georg-Johann Lay <avr@gjlay.de> |
3044 | ||
3045 | PR target/49868 | |
3046 | * doc/extend.texi (AVR Named Address Spaces): Move sample code up. | |
3047 | Remove note on size/offset limitation. | |
3048 | (AVR Variable Attributes): Add example how to read data located | |
3049 | with progmem. Refer to named address spaces. | |
3050 | * doc/invoke.texi (AVR Options): Fix typo. | |
3051 | ||
a9d3ac1e RG |
3052 | 2012-01-24 Richard Guenther <rguenther@suse.de> |
3053 | ||
3054 | Forward-port to trunk | |
3055 | 2010-09-21 Jakub Jelinek <jakub@redhat.com> | |
3056 | ||
3057 | PR middle-end/45678 | |
3058 | * expr.c (expand_expr_real_1) <case VIEW_CONVERT_EXPR>: If | |
3059 | op0 isn't sufficiently aligned and there is movmisalignM | |
3060 | insn for mode, use it to load op0 into a temporary register. | |
3061 | ||
93bcc8c9 JJ |
3062 | 2012-01-24 Jakub Jelinek <jakub@redhat.com> |
3063 | ||
3064 | PR target/51957 | |
3065 | * target.def (const_not_ok_for_debug_p): New hook. | |
3066 | * doc/tm.texi.in (TARGET_CONST_NOT_OK_FOR_DEBUG_P): New hook | |
3067 | documentation. | |
3068 | * doc/tm.texi: Regenerated. | |
3069 | * dwarf2out.c (const_ok_for_output_1): If | |
3070 | targetm.const_not_ok_for_debug_p returns true, fail. | |
3071 | * config/rs6000/rs6000.c (rs6000_const_not_ok_for_debug_p): New | |
3072 | function. | |
3073 | (TARGET_CONST_NOT_OK_FOR_DEBUG_P): Redefine. | |
3074 | ||
986ce92f KT |
3075 | 2012-01-23 Kai Tietz <ktietz@redhat.com> |
3076 | ||
3077 | PR target/51900 | |
3078 | * config/i386/predicates.md (symbolic_operand): Allow | |
3079 | UNSPEC_PCREL as PIC expression for lea. | |
3080 | * config/i386/winnt.c (i386_pe_binds_local_p): Reworked. | |
3081 | * config/i386/i386.c (ix86_delegitimize_address): Handle | |
3082 | UNSPEC_PCREL for none-MEM, too. | |
3083 | ||
e617b554 AH |
3084 | 2012-01-23 Aldy Hernandez <aldyh@redhat.com> |
3085 | ||
3086 | * trans-mem.c (ipa_tm_create_version): Set externally_visible. | |
3087 | (ipa_tm_create_version_alias): Same. | |
3088 | ||
1e86df8d | 3089 | 2012-01-23 Uros Bizjak <ubizjak@gmail.com> |
5752c591 UB |
3090 | |
3091 | PR libitm/51830 | |
3092 | * builtin-types.def (BT_FN_UINT_UINT_VAR): New. | |
3093 | * gtm-builtins.def (BUILT_IN_TM_START): Declare as BT_FN_UINT_UINT_VAR. | |
3094 | ||
f2ede0ee AH |
3095 | 2012-01-23 Aldy Hernandez <aldyh@redhat.com> |
3096 | Patrick Marlier <patrick.marlier@gmail.com> | |
3097 | Iain Sandoe <developer@sandoe-acoustics.co.uk> | |
3098 | ||
3099 | PR lto/51916 | |
3100 | * lto-wrapper.c (run_gcc): Pass the LTO section name to | |
3101 | simple_object_start_read. | |
3102 | ||
191879f9 RG |
3103 | 2012-01-23 Richard Guenther <rguenther@suse.de> |
3104 | ||
f2ede0ee | 3105 | |
191879f9 RG |
3106 | PR tree-optimization/51895 |
3107 | * tree-sra.c (decide_one_param_reduction): Avoid sub-optimal | |
3108 | parameter decomposition into BLKmode components. | |
3109 | ||
b31799f4 EB |
3110 | 2012-01-23 Eric Botcazou <ebotcazou@adacore.com> |
3111 | ||
3112 | * tree-ssa-structalias.c (intra_create_variable_infos): Do not create | |
3113 | fake variables for restrict-qualified pointers whose pointed-to type | |
3114 | contains a placeholder. | |
3115 | ||
b2d2adc6 RG |
3116 | 2012-01-23 Richard Guenther <rguenther@suse.de> |
3117 | ||
3118 | PR tree-optimization/51949 | |
5752c591 | 3119 | * ipa-split.c (execute_split_functions): Do not split malloc functions. |
b2d2adc6 | 3120 | |
b57cca0b JJ |
3121 | 2012-01-23 Jakub Jelinek <jakub@redhat.com> |
3122 | ||
3123 | PR rtl-optimization/51933 | |
3124 | * ree.c (transform_ifelse): Return true right away if dstreg is | |
3125 | already wider or equal to cand->mode. | |
3126 | (enum ext_modified_kind, struct ext_modified, ext_state): New types. | |
3127 | (make_defs_and_copies_lists): Remove defs_list and copies_list | |
3128 | arguments, add state argument, just truncate state->work_list | |
3129 | instead of always allocating and freeing the vector. Assert that | |
5752c591 | 3130 | get_defs succeeds instead of returning 2. Changed return type to bool. |
b57cca0b JJ |
3131 | (merge_def_and_ext): Add state argument. If SET_DEST doesn't |
3132 | have ext_src_mode, see if it has been modified already with the | |
3133 | right kind of extension and has been extended before from the | |
3134 | ext_src_mode. If SET_DEST is already wider or equal to cand->mode, | |
5752c591 | 3135 | just return true. Remember the original mode in state->modified array. |
b57cca0b JJ |
3136 | (combine_reaching_defs): Add state argument. Don't allocate and |
3137 | free here def_list, copied_list and vec vectors, instead just | |
5752c591 | 3138 | VEC_truncate the vectors in *state. Don't handle outcome == 2 here. |
b57cca0b JJ |
3139 | (find_and_remove_re): Set DF_DEFER_INSN_RESCAN df flag. |
3140 | Add state variable, clear vectors in it, initialize state.modified | |
3141 | if needed. Free all the vectors at the end and state.modified too. | |
3142 | Don't skip a candidate if the extension expression has been modified. | |
3143 | ||
daecebc8 DR |
3144 | 2012-01-22 Douglas B Rupp <rupp@gnat.com> |
3145 | ||
3146 | PR target/47096 | |
3147 | * config.gcc: (i[34567]86-*-interix3*): Remove from obsolete | |
3148 | configurations. Change triplet to i[34567]86-*-interix[3-9]*. | |
3149 | (extra_options) interix.opt -> i386/interix.opt" | |
3150 | (extra_objs):Add winnt-stubs.o | |
3151 | * configure.ac: Add interix to target_os .comm on PE check. | |
3152 | * configure: Regenerate. | |
3153 | * config/interix3.h: Delete and move bits to.. | |
3154 | * config/interix.h: Delete and move bits to.. | |
3155 | * config/i386/i386-interix3.h: Delete and move bits to.. | |
3156 | * config/i386/i386-interix.h: ..here. | |
3157 | (TARGET_CPU_DEFAULT): Remove redefinition. | |
3158 | (TARGET_ASM_CONSTRUCTOR): Undefine. | |
3159 | (SUBTARGET_SWITCHES): Define for ms-bitfields. | |
3160 | (TARGET_OS_CPP_BUILTINS): Remove __OPENNT. Add __declspec. | |
3161 | (PTRDIFF_TYPE): Define. | |
3162 | (LONG_DOUBLE_TYPE_SIZE): Define. | |
3163 | (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define. | |
3164 | (SUBTARGET_OVERRIDE_OPTIONS): Remove. | |
3165 | (TARGET_SECTION_TYPE_FLAGS): Define. | |
3166 | (ASM_DECLARE_FUNCTION_NAME): Define. | |
3167 | (ASM_OUTPUT_EXTERNAL): Define. | |
3168 | (ASM_OUTPUT_EXTERNAL_LIBCALL): Define. | |
3169 | (ASM_OUTPUT_ALIGNED_BSS): Define. | |
3170 | (PCC_BITFIELD_TYPE_MATTERS): Define. | |
3171 | (USE_CONST_SECTION): Define. | |
3172 | (SUBTARGET_ENCODE_SECTION_INFO): Remove. | |
3173 | (TARGET_ASM_FUNCTION_RODATA_SECTION): Remove. | |
3174 | (SUPPORTS_ONE_ONLY): Remove. | |
3175 | (I386_PE_STRIP_ENCODING): Define. | |
3176 | * config/interix.opt: Delete and move bits to.. | |
3177 | * config/i386/interix.opt: ..here. New. | |
3178 | (mpe-aligned-commons): Add. | |
3179 | * config/i386/t-interix: Add copyright header. | |
3180 | (winnt-stubs.o): Add rule. | |
3181 | ||
bbe04f21 JM |
3182 | 2012-01-22 Jason Merrill <jason@redhat.com> |
3183 | ||
3184 | PR c++/51832 | |
3185 | * varpool.c (varpool_analyze_pending_decls): Copy DECL_EXTERNAL | |
3186 | for extra name aliases. | |
3187 | ||
ca10595c EB |
3188 | 2012-01-22 Eric Botcazou <ebotcazou@adacore.com> |
3189 | ||
3190 | PR rtl-optimization/51924 | |
3191 | * ree.c (combine_set_extension): Improve debugging message. | |
3192 | (combine_reaching_defs): Likewise. | |
3193 | (get_defs): Rename confusingly named variable. | |
3194 | (find_and_remove_re): Skip a candidate if the extension expression has | |
3195 | been modified. | |
3196 | ||
4787ac51 RM |
3197 | 2012-01-21 Robert Millan <rmh@gnu.org> |
3198 | Gerald Pfeifer <gerald@pfeifer.com> | |
3199 | ||
3200 | * config/kfreebsd-gnu.h (GNU_USER_DYNAMIC_LINKERX32): New macro. | |
3201 | (GNU_USER_DYNAMIC_LINKER): Adjust indentation. | |
3202 | ||
82294ec1 JJ |
3203 | 2012-01-20 Jakub Jelinek <jakub@redhat.com> |
3204 | ||
3205 | PR tree-optimization/51914 | |
3206 | * tree-vect-stmts.c (vectorizable_conversion): For | |
3207 | cvt_type && modifier == WIDEN, put temporary with cvt_type | |
3208 | at the beginning of vec_dsts and set vec_dest to temporary | |
3209 | with vectype_out. | |
3210 | ||
68cc3174 EB |
3211 | 2012-01-20 Eric Botcazou <ebotcazou@adacore.com> |
3212 | ||
3213 | * cfgrtl.c (rtl_dump_bb): Do not dump insns for {ENTRY|EXIT}_BLOCK. | |
3214 | ||
cdee0298 TC |
3215 | 2011-01-20 Tijl Coosemans <tijl@coosemans.org> |
3216 | ||
3217 | * config/i386/i386.c: Fix checks for !TARGET_MACHO. | |
3218 | * config/rs6000/rs6000.c: Likewise. | |
3219 | ||
4c2708c5 JJ |
3220 | 2012-01-20 Jakub Jelinek <jakub@redhat.com> |
3221 | ||
3222 | PR target/51915 | |
3223 | * config/arm/arm.c (arm_count_output_move_double_insns): Call | |
3224 | output_move_double on a copy of operands array. | |
3225 | ||
5752c591 UB |
3226 | 2012-01-20 Cary Coutant <ccoutant@google.com> |
3227 | Dodji Seketeli <dodji@redhat.com> | |
2d663cb9 CC |
3228 | |
3229 | PR debug/45682 | |
3230 | * dwarf2out.c (copy_declaration_context): Return ref to parent | |
3231 | of declaration DIE, if necessary. | |
3232 | (remove_child_or_replace_with_skeleton): Add new parameter; update | |
3233 | caller. Place skeleton DIE under parent DIE of original declaration. | |
3234 | Move call to copy_declaration_context to here ... | |
3235 | (break_out_comdat_types): ... from here. | |
3236 | ||
afa73d3a AK |
3237 | 2012-01-20 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
3238 | ||
3239 | PR rtl-optimization/51856 | |
3240 | * reload.c (find_reloads_subreg_address): Set the address_reloaded | |
3241 | flag to reloaded. | |
3242 | ||
3675f54b RR |
3243 | 2012-01-20 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> |
3244 | ||
3245 | PR target/51819 | |
3246 | * config/arm/arm.c (arm_print_operand): Correct output of alignment | |
3247 | hints for neon loads and stores. | |
3248 | ||
542bf446 GJL |
3249 | 2012-01-20 Georg-Johann Lay <avr@gjlay.de> |
3250 | ||
3251 | PR target/49868 | |
3252 | PR target/50887 | |
3253 | * doc/extend.texi (Named Address Spaces): Split into subsections. | |
3254 | (AVR Named Address Spaces): New subsection. | |
3255 | (M32C Named Address Spaces): New subsection. | |
3256 | (RL78 Named Address Spaces): New subsection. | |
3257 | (SPU Named Address Spaces): New subsection. | |
3258 | (Variable Attributes): New anchor "AVR Variable Attributes". | |
3259 | (AVR Variable Attributes): Rewrite and avoid wording | |
3260 | "address space" in this context. | |
3261 | * doc/invoke.texi (AVR Options): Rewrite and add documentation | |
3262 | for -maccumulate-args, -mbranch-cost=, -mrelax, -mshort-calls. | |
3263 | (AVR Built-in Macros): New subsubsection therein. | |
3264 | * doc/md.texi (AVR constraints): Remove "C04", "R". | |
3265 | ||
a88b3135 RG |
3266 | 2012-01-20 Richard Guenther <rguenther@suse.de> |
3267 | ||
3268 | PR tree-optimization/51903 | |
3269 | * tree-ssa-pre.c (eliminate): Properly purging of EH edges | |
3270 | when removing stmts. | |
3271 | ||
f06129ea RR |
3272 | 2012-01-20 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> |
3273 | ||
3274 | PR target/50313 | |
3275 | * config/arm/arm.c (arm_load_pic_register): Use | |
3276 | gen_pic_load_addr_unified. Delete calls to gen_pic_load_addr_32bit | |
3277 | , gen_pic_add_dot_plus_eight and gen_pic_add_dot_plus_four. | |
3278 | (arm_pic_static_addr): Likewise. | |
3279 | (arm_rtx_costs_1): Adjust cost for UNSPEC_PIC_UNIFIED. | |
3280 | (arm_note_pic_base): Handle UNSPEC_PIC_UNIFIED. | |
3281 | * config/arm/arm.md (UNSPEC_PIC_UNIFIED): Define. | |
3282 | (pic_load_addr_unified): New. | |
3283 | ||
229bfbcf AB |
3284 | 2012-01-20 Andrey Belevantsev <abel@ispras.ru> |
3285 | ||
3286 | PR target/51106 | |
3287 | * function.c (instantiate_virtual_regs_in_insn): Use | |
3288 | delete_insn_and_edges when removing a wrong asm insn. | |
3289 | ||
2608d841 VM |
3290 | 2012-01-19 Vladimir Makarov <vmakarov@redhat.com> |
3291 | ||
3292 | PR rtl-optimization/40761 | |
5752c591 UB |
3293 | * ira-int.h (struct ira_loop_tree_node): Add comment for member loop. |
3294 | Add new member loop_num. | |
2608d841 VM |
3295 | (IRA_LOOP_NODE_BY_INDEX): Modify the check. |
3296 | (ira_build): Remove the parameter. | |
3297 | ||
5752c591 | 3298 | * ira.c (ira_print_disposition): Use loop_num instead of loop->num. |
2608d841 VM |
3299 | (ira.c): Do not build CFG loops for one region allocation. Remove |
3300 | argument from ira_build call. | |
3301 | ||
3302 | * ira-build.c (init_loop_tree_node): New function. | |
3303 | (create_loop_tree_nodes): Use it. Separate the case when CFG | |
3304 | loops are not built. | |
3305 | (more_one_region_p): Check current_loops. | |
3306 | (finish_loop_tree_nodes): Separate the case when CFG loops are not | |
3307 | built. | |
3308 | (add_loop_to_tree): Process loop equal to NULL too. | |
3309 | (form_loop_tree): Separate the case when CFG loops are not built. | |
3310 | Use explicitly number for the root. | |
3311 | (rebuild_regno_allocno_maps, create_loop_tree_node_allocnos): Add | |
3312 | an assertion. | |
3313 | (ira_print_expanded_allocno, loop_compare_func): Use loop_num | |
3314 | instead of loop->num. | |
5752c591 | 3315 | (mark_loops_for_removal): Ditto. Use loop_num instead of loop->num. |
2608d841 VM |
3316 | (mark_all_loops_for_removal): Ditto. |
3317 | (remove_unnecessary_regions): Separate the case when CFG loops | |
3318 | are not built. | |
3319 | (ira_build): Remove the parameter. Use explicit number of regions | |
3320 | when CFG loops are not built. | |
3321 | ||
5752c591 UB |
3322 | * ira-color.c (print_loop_title): Separate the case for the root node. |
3323 | Use loop_num instead of loop->num. | |
2608d841 VM |
3324 | (move_spill_restore): Use loop_num instead of loop->num. |
3325 | ||
3326 | * ira-emit.c (setup_entered_from_non_parent_p): Add an assertion. | |
3327 | (change_loop): Ditto. | |
3328 | (change_loop): Use loop_num instead of loop->num. | |
3329 | ||
3330 | * ira-lives.c (process_bb_node_lives): Ditto. | |
3331 | ||
5752c591 | 3332 | * ira-costs.c (print_allocno_costs, find_costs_and_classes): Ditto. |
2608d841 VM |
3333 | |
3334 | * ira-conflicts.c (print_allocno_conflicts): Ditto. | |
3335 | ||
dc2c7a52 JJ |
3336 | 2012-01-19 Jakub Jelinek <jakub@redhat.com> |
3337 | ||
58b3ebf2 JJ |
3338 | PR libmudflap/40778 |
3339 | * tree-mudflap.c (mf_artificial): New function. | |
3340 | (execute_mudflap_function_ops, execute_mudflap_function_decls, | |
3341 | mx_register_decls, mudflap_enqueue_decl): Use it. | |
3342 | ||
dc2c7a52 JJ |
3343 | PR target/51876 |
3344 | * config/arm/neon.md (*neon_vswp<mode>): Fix up operand | |
3345 | numbers in the insn pattern. | |
3346 | ||
d5038d06 MM |
3347 | 2012-01-19 Michael Matz <matz@suse.de> |
3348 | ||
3349 | PR tree-optimization/46590 | |
3350 | * cfgexpand.c (add_scope_conflicts_1): New old_conflicts argument, | |
3351 | use it in remembering which conflicts we already created. | |
3352 | (add_scope_conflicts): Adjust call to above, (de)allocate helper | |
3353 | bitmap. | |
3354 | ||
aad038ca AH |
3355 | 2012-01-19 Aldy Hernandez <aldyh@redhat.com> |
3356 | ||
3357 | PR lto/51280 | |
3358 | * lto-wrapper.c (run_gcc): Pass -fgnu_tm on. | |
3359 | (merge_and_complain): Same. | |
3360 | ||
e9c9f128 JJ |
3361 | 2012-01-19 Jakub Jelinek <jakub@redhat.com> |
3362 | ||
3363 | PR bootstrap/50237 | |
3364 | * config/initfini-array.h: Guard content of the header | |
3365 | with #ifdef HAVE_INITFINI_ARRAY. | |
3366 | * configure.ac: Move gcc_AC_INITFINI_ARRAY much later into the file. | |
3367 | Add initfini-array.h to tm_file here. | |
5752c591 | 3368 | * acinclude.m4 (gcc_AC_INITFINI_ARRAY): For non-ia64 do a linker test. |
e9c9f128 JJ |
3369 | * config.gcc: Don't add initfini-array.h to tm_file here. |
3370 | * configure: Regenerated. | |
3371 | ||
3372 | 2012-01-19 Andrey Belevantsev <abel@ispras.ru> | |
f90aa714 AB |
3373 | |
3374 | PR rtl-optimization/51505 | |
3375 | * df-problems.c (df_kill_notes): New parameter live. Update comment. | |
3376 | Remove REG_EQUAL/REG_EQUIV notes referring to dead registers. | |
5752c591 | 3377 | (df_note_bb_compute): Update the call to df_kill_notes. |
f90aa714 | 3378 | |
63c0efdb AH |
3379 | 2012-01-18 Aldy Hernandez <aldyh@redhat.com> |
3380 | ||
3381 | * trans-mem.c (requires_barrier): Remove call to is_global_var. | |
3382 | ||
b8cf611d RG |
3383 | 2012-01-18 Richard Guenther <rguenther@suse.de> |
3384 | ||
3385 | * tree-ssa.c (useless_type_conversion_p): Remove special-casing | |
3386 | of conversions to void *. | |
3387 | ||
3bdb97b8 AK |
3388 | 2012-01-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
3389 | Richard Sandiford <rdsandiford@googlemail.com> | |
3390 | ||
3391 | PR middle-end/50325 | |
3392 | PR middle-end/51192 | |
3393 | * optabs.h (simplify_expand_binop): Declare. | |
3394 | * optabs.c (simplify_expand_binop): Make global. | |
3395 | * expmed.c (store_bit_field_1): Use simplify_expand_binop on big | |
3396 | endian targets if the source cannot be exactly covered by word | |
3397 | mode chunks. | |
3398 | ||
ee3d2ecd JJ |
3399 | 2012-01-17 Jakub Jelinek <jakub@redhat.com> |
3400 | ||
3401 | PR bootstrap/51872 | |
3402 | * hard-reg-set.h (struct hard_reg_set_container): New type. | |
3403 | * target.h (struct hard_reg_set_container): Forward declare. | |
3404 | * target.def (set_up_by_prologue): New target hook. | |
3405 | * doc/tm.texi.in (TARGET_SET_UP_BY_PROLOGUE): Document it. | |
3406 | * doc/tm.texi: Regenerated. | |
3407 | * function.c (thread_prologue_and_epilogue_insns): Change | |
3408 | set_up_by_prologue HARD_REG_SET into struct hard_reg_set_container. | |
3409 | Call targetm.set_up_by_prologue on it. | |
3410 | * config/rs6000/rs6000.c (rs6000_set_up_by_prologue): New function. | |
3411 | (TARGET_SET_UP_BY_PROLOGUE): Redefine to it. | |
3412 | ||
be61ce52 NC |
3413 | 2012-01-17 Nick Clifton <nickc@redhat.com> |
3414 | ||
3415 | * config/rx/rx.c (rx_can_use_simple_return): New function. | |
3416 | * config/rx/rx-protos.h (rx_can_use_simple_return): Prototype. | |
3417 | * config/rx/rx.md (return): Predicate on rx_can_use_simple_return. | |
3418 | ||
e831c1e8 RG |
3419 | 2012-01-17 Richard Guenther <rguenther@suse.de> |
3420 | ||
3421 | PR middle-end/51782 | |
3422 | * expr.c (expand_assignment): Take address-space information | |
3423 | from the address operand of MEM_REF and TARGET_MEM_REF. | |
3424 | (expand_expr_real_1): Likewise. | |
3425 | ||
67463efb AK |
3426 | 2012-01-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
3427 | ||
3428 | * ira.c (do_reload): Make sure ira_dump_file is re-set if no | |
3429 | reload dump is requested. | |
3430 | ||
59cbe98e AH |
3431 | 2012-01-17 Aldy Hernandez <aldyh@redhat.com> |
3432 | ||
3433 | PR other/51165 | |
3434 | * trans-mem.c (requires_barrier): Call may_be_aliased. | |
3435 | ||
e6fa9204 JJ |
3436 | 2012-01-17 Jakub Jelinek <jakub@redhat.com> |
3437 | ||
3438 | PR tree-optimization/51877 | |
3439 | * tree-ssa-tail-merge.c (gimple_equal_p): Don't return true whenever | |
3440 | call arguments and fndecls compare equal, instead return false if they | |
3441 | don't. Return true only if lhs1 and lhs2 are either both NULL, or | |
3442 | both SSA_NAMEs that are valueized the same, or they satisfy | |
3443 | operand_equal_p. | |
3444 | ||
26923657 RO |
3445 | 2012-01-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
3446 | ||
3447 | * configure.ac (gcc_cv_target_dl_iterate_phdr): Only check on | |
3448 | Solaris 11+. | |
3449 | * configure: Regenerate. | |
3450 | ||
c53153e7 JH |
3451 | 2012-01-16 Jan Hubicka <jh@suse.cz> |
3452 | ||
3453 | PR c/12245 | |
3454 | PR c++/14179 | |
3455 | * convert.c (convert_to_integer): Use fold_convert for | |
3456 | converting an INTEGER_CST to integer type. | |
3457 | ||
7aeb037b JM |
3458 | 2012-01-16 Jason Merrill <jason@redhat.com> |
3459 | ||
3460 | PR c++/14179 | |
3461 | * vec.c (vec_gc_o_reserve_1): Use ggc_round_alloc_size. | |
3462 | ||
90dda0e9 JJ |
3463 | 2012-01-16 Jakub Jelinek <jakub@redhat.com> |
3464 | ||
00fbd5c8 JJ |
3465 | PR bootstrap/51860 |
3466 | * config/s390/s390.c (s390_chunkify_start): Don't skip | |
3467 | call insns followed by NOTE_INSN_CALL_ARG_LOCATION note. Skip | |
3468 | NOTE_INSN_VAR_LOCATION and NOTE_INSN_CALL_ARG_LOCATION notes. | |
3469 | If insn is followed by NOTE_INSN_VAR_LOCATION or | |
3470 | NOTE_INSN_CALL_ARG_LOCATION notes, insert jump after all those notes. | |
3471 | Don't use location of note insns. | |
3472 | ||
90dda0e9 JJ |
3473 | PR tree-optimization/51865 |
3474 | * tree-inline.c (tree_function_versioning): Call remap_decl | |
3475 | on DECL_RESULT whenever it has VOID_TYPE_P type. | |
3476 | ||
62835cee RS |
3477 | 2012-01-15 Richard Sandiford <rdsandiford@googlemail.com> |
3478 | ||
3479 | * config/mips/mips.c (mips16_build_call_stub): Don't use a stub | |
3480 | for calls to locally-binding MIPS16 functions if only the return | |
3481 | type uses float regs. | |
3482 | ||
ddaf8125 RS |
3483 | 2012-01-15 Chung-Lin Tang <cltang@codesourcery.com> |
3484 | Richard Sandiford <rdsandiford@googlemail.com> | |
3485 | ||
3486 | * config/mips/mips-protos.h (SYMBOL_FORCE_TO_MEM): Delete. | |
3487 | (SYMBOL_32_HIGH): Likewise. | |
3488 | (mips_output_tls_reloc_directive): Declare. | |
3489 | * config/mips/mips.h (PIC_FUNCTION_ADDR_REGNUM): Move to mips.md. | |
3490 | (mips_use_pcrel_pool_p, mips_lo_relocs, mips_hi_relocs): Declare. | |
3491 | * config/mips/mips.c (mips_use_pcrel_pool_p): New variable. | |
3492 | (mips_lo_relocs, mips_hi_relocs): Make extern. | |
3493 | (mips16_stub_function): Move up file. | |
3494 | (mips_classify_symbol): Remove SYMBOL_FORCE_TO_MEM handling. | |
3495 | (mips_symbolic_constant_p): Likewise. Remove SYMBOL_32_HIGH too. | |
3496 | (mips_symbol_insns_1): Likewise. Check mips_use_pcrel_pool_p. | |
5752c591 UB |
3497 | (mips_cannot_force_const_mem): Use mips_use_pcrel_pool_p instead of |
3498 | SYMBOL_FORCE_TO_MEM. Only check mips_tls_symbol_ref_1 if it's false. | |
ddaf8125 RS |
3499 | (mips_get_tp): Add MIPS16 support. |
3500 | (mips_legitimize_tls_address): Remove MIPS16 sorry(). | |
3501 | Generalize DTPREL and TPREL handling. | |
3502 | (mips_init_relocs): Initialize mips_use_pcrel_pool_p. | |
3503 | Add MIPS16 TLS support. | |
3504 | (mips_output_tls_reloc_directive): New function. | |
3505 | (mips16_rewrite_pool_refs): Ignore UNSPEC_TLS_GET_TPs. | |
3506 | * config/mips/predicates.md (symbolic_operand_with_high) | |
3507 | (tls_reloc_operand): New predicates. | |
3508 | (force_to_mem_operand): Use mips_use_pcrel_pool_p. | |
3509 | * config/mips/mips.md (UNSPEC_UNSHIFTED_HIGH): New unspec. | |
3510 | (PIC_FUNCTION_ADDR_REGNUM): Moved from mips.h. | |
5752c591 | 3511 | (*unshifted_high): New instruction. Use it for MIPS16 high splitter. |
ddaf8125 RS |
3512 | (consttable_tls_reloc, tls_get_tp_mips16_<mode>): New patterns. |
3513 | (*tls_get_tp_mips16_call_<mode>): Likewise. | |
3514 | ||
bf63ef6c UB |
3515 | 2012-01-15 Uros Bizjak <ubizjak@gmail.com> |
3516 | ||
3517 | PR rtl-optimization/51821 | |
3518 | * recog.c (peep2_find_free_register): Determine clobbered registers | |
3519 | from insn pattern. | |
3520 | ||
cfbaed3b DC |
3521 | 2012-01-14 Denis Chertykov <chertykov@gmail.com> |
3522 | ||
3523 | PR target/50925 | |
3524 | * config/avr/avr-protos.h: Revert change of 2012-01-09. | |
3525 | * config/avr/avr.c: Likewise. | |
3526 | * config/avr/avr.h: Likewise. | |
3527 | ||
12448f77 ILT |
3528 | 2012-01-13 Ian Lance Taylor <iant@google.com> |
3529 | ||
3530 | PR c++/50012 | |
3531 | * tree.h (TYPE_QUALS): Add cast to int. | |
3532 | (TYPE_QUALS_NO_ADDR_SPACE): Likewise. | |
3533 | ||
9ab6f957 ILT |
3534 | 2012-01-13 Ian Lance Taylor <iant@google.com> |
3535 | ||
3536 | * ipa-cp.c (ipa_get_indirect_edge_target): Add typecasts when | |
3537 | comparing param_index to VEC_length result. | |
3538 | ||
8554df86 SB |
3539 | 2012-01-13 Steven Bosscher <steven@gcc.gnu.org> |
3540 | ||
3541 | * c-decl.c: Do not include tree-mudflap.h | |
3542 | * tree-optimize.c: Likewise. | |
3543 | * Makefile.in: Update dependencies. | |
3544 | ||
aabb90e5 RG |
3545 | 2012-01-13 Richard Guenther <rguenther@suse.de> |
3546 | ||
3547 | PR middle-end/8081 | |
3548 | * gimplify.c (gimplify_modify_expr_rhs): For calls with a | |
3549 | variable-sized result always use RSO. | |
3550 | ||
639d4bb8 DD |
3551 | 2012-01-12 DJ Delorie <dj@redhat.com> |
3552 | ||
3553 | * cfgexpand.c (convert_debug_memory_address): Allow any valid | |
3554 | pointer type, not just the default pointer type. | |
3555 | ||
105b876e RH |
3556 | 2012-01-09 Richard Henderson <rth@redhat.com> |
3557 | Denis Chertykov <chertykov@gmail.com> | |
3558 | ||
3559 | PR target/50925 | |
3560 | * config/avr/avr-protos.h (avr_hard_regno_nregs): Declare. | |
3561 | * config/avr/avr.c (avr_can_eliminate): Simplify. | |
3562 | (avr_initial_elimination_offset): Likewise. | |
3563 | (avr_prologue_setup_frame): Use hard_frame_pointer_rtx. | |
3564 | (expand_epilogue): Likewise. | |
3565 | (avr_legitimize_address): Gut. | |
3566 | (avr_legitimize_reload_address): Use hard_frame_pointer_rtx. | |
3567 | (avr_hard_regno_nregs): New. | |
3568 | (avr_hard_regno_ok): Allow only Pmode for arg and frame_pointers. | |
3569 | (avr_regno_mode_code_ok_for_base_b): Handle arg and frame pointers. | |
3570 | * config/avr/avr.h (FIXED_REGISTERS): Adjust arg pointer, | |
3571 | add soft frame pointer. | |
3572 | (CALL_USED_REGISTERS): Likewise. | |
3573 | (REG_CLASS_CONTENTS): Likewise. | |
3574 | (REGISTER_NAMES): Likewise. | |
3575 | (HARD_REGNO_NREGS): Use avr_hard_regno_nregs. | |
3576 | (HARD_FRAME_POINTER_REGNUM): New. | |
3577 | (FRAME_POINTER_REGNUM): Use soft frame pointer. | |
3578 | (ELIMINABLE_REGS): Eliminate from the soft frame pointer, | |
3579 | remove the HARD_FRAME_POINTER self-elimination. | |
3580 | ||
458652d1 | 3581 | 2012-01-12 Georg-Johann Lay <avr@gjlay.de> |
ab8c5093 GJL |
3582 | |
3583 | PR target/51756 | |
3584 | * config/avr/avr.c (avr_encode_section_info): Test for absence of | |
3585 | DECL_EXTERNAL when checking for initializers of progmem variables. | |
3586 | ||
82db3d43 IR |
3587 | 2012-01-12 Ira Rosen <irar@il.ibm.com> |
3588 | ||
3589 | PR tree-optimization/51799 | |
3590 | * tree-vect-patterns.c (vect_recog_over_widening_pattern): Check | |
3591 | that the last operation is a type demotion. | |
3592 | ||
64668e68 UB |
3593 | 2012-01-12 Uros Bizjak <ubizjak@gmail.com> |
3594 | ||
3595 | * config/i386/i386.md (*zero_extendsidi2_rex64): Correct movl template. | |
3596 | (x86_shift<mode>_adj_1): Remove operand constraint from operand 3. | |
3597 | ||
319638ed JJ |
3598 | 2012-01-11 Jakub Jelinek <jakub@redhat.com> |
3599 | ||
3600 | PR bootstrap/51796 | |
3601 | * combine.c (distribute_notes): If i3 is a noreturn call, | |
3602 | allow old_size to be equal to args_size and make sure the | |
3603 | noreturn call gets REG_ARGS_SIZE note. | |
3604 | * expr.c (fixup_args_size_notes): Put REG_ARGS_SIZE notes | |
3605 | on noreturn calls even when the delta is 0. | |
3606 | ||
8f961b22 NS |
3607 | 2012-01-11 Nathan Sidwell <nathan@acm.org> |
3608 | ||
3609 | * gcov.c (STRING_SIZE): Remove. | |
3610 | (generate_results): Erase annotations for source files with no | |
3611 | coverage information. | |
3612 | (read_line): New. | |
3613 | (output_lines): Use it. | |
3614 | ||
3ad065ef EB |
3615 | 2012-01-11 Eric Botcazou <ebotcazou@adacore.com> |
3616 | ||
3617 | * gimple.h (gimplify_body): Remove first argument. | |
3618 | * gimplify.c (copy_if_shared): Add DATA argument. Do not create the | |
3619 | pointer set here, instead just pass DATA to walk_tree. | |
3620 | (unshare_body): Remove BODY_P argument and adjust. Create the pointer | |
3621 | set here and invoke copy_if_shared on the size trees of DECL_RESULT. | |
3622 | (unvisit_body): Likewise, but with unmark_visited. | |
3623 | (gimplify_body): Remove BODY_P argument and adjust. | |
3624 | (gimplify_function_tree): Adjust call to gimplify_body. | |
3625 | * omp-low.c (finalize_task_copyfn): Likewise. | |
3626 | ||
1a2c27e9 EB |
3627 | 2012-01-11 Eric Botcazou <ebotcazou@adacore.com> |
3628 | ||
3629 | * tree.h (build_function_decl_skip_args): Add boolean parameter. | |
3630 | (build_function_type_skip_args): Delete. | |
3631 | * tree.c (build_function_type_skip_args): Make static and add | |
3632 | SKIP_RETURN parameter. Fix thinko in the handling of variants. | |
3633 | (build_function_decl_skip_args): Add SKIP_RETURN parameter and | |
3634 | pass it to build_function_type_skip_args. | |
3635 | * cgraph.h (cgraph_function_versioning): Add boolean parameter. | |
3636 | (tree_function_versioning): Likewise. | |
3637 | * cgraph.c (cgraph_create_virtual_clone): Adjust call to | |
3638 | build_function_decl_skip_args. | |
3639 | * cgraphunit.c (cgraph_function_versioning): Add SKIP_RETURN parameter | |
3640 | and pass it to build_function_decl_skip_args/tree_function_versioning. | |
3641 | (cgraph_materialize_clone): Adjust call to tree_function_versioning. | |
3642 | * ipa-inline-transform.c (save_inline_function_body): Likewise. | |
3643 | * trans-mem.c (ipa_tm_create_version): Likewise. | |
3644 | * tree-sra.c (modify_function): Ditto for cgraph_function_versioning. | |
3645 | * tree-inline.c (declare_return_variable): Remove always-true test. | |
3646 | (tree_function_versioning): Add SKIP_RETURN parameter. If the function | |
3647 | returns non-void and SKIP_RETURN, create a void-typed RESULT_DECL. | |
3648 | * ipa-split.c (split_function): Skip the return value for the split | |
3649 | part if it doesn't return. | |
3650 | ||
b2e25729 BS |
3651 | 2012-01-11 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
3652 | ||
3653 | PR tree-optimization/49642 | |
3654 | * ipa-split.c (forbidden_dominators): New variable. | |
3655 | (check_forbidden_calls): New function. | |
3656 | (dominated_by_forbidden): Likewise. | |
3657 | (consider_split): Check for forbidden dominators. | |
3658 | (execute_split_functions): Initialize and free forbidden | |
3659 | dominators info; call check_forbidden_calls. | |
3660 | ||
9150e331 MGD |
3661 | 2012-01-11 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> |
3662 | ||
3663 | * config/arm/arm.md (mov_notscc): Use MVN for false condition. | |
3664 | ||
1c97289f NC |
3665 | 2012-01-11 Nick Clifton <nickc@redhat.com> |
3666 | ||
3667 | * config/rx/rx.md (return): Define pattern. | |
3668 | ||
65d5c485 RG |
3669 | 2012-01-11 Richard Guenther <rguenther@suse.de> |
3670 | ||
3671 | * doc/extend.texi (malloc attribute): Adjust according to | |
3672 | implementation. | |
3673 | ||
594ec92f AH |
3674 | 2012-01-10 Aldy Hernandez <aldyh@redhat.com> |
3675 | Patrick Marlier <patrick.marlier@gmail.com> | |
3676 | ||
3677 | PR middle-end/51516 | |
3678 | * trans-mem.c (get_cg_data): Traverse aliases if requested. | |
3679 | (ipa_tm_scan_calls_block): Update parameters to get_cg_data. | |
3680 | (ipa_tm_note_irrevocable): Same. | |
3681 | (ipa_tm_scan_irr_block): Same. | |
3682 | (ipa_tm_decrement_clone_counts): Same. | |
3683 | (ipa_tm_scan_irr_function): Same. | |
3684 | (ipa_tm_create_version_alias): Same. | |
3685 | (ipa_tm_create_version): Same. | |
3686 | (ipa_tm_transform_calls_redirect): Same. | |
3687 | (ipa_tm_transform_calls): Same. | |
3688 | (ipa_tm_transform_transaction): Same. | |
3689 | (ipa_tm_execute): Same. | |
3690 | ||
aee15221 RG |
3691 | 2012-01-10 Richard Guenther <rguenther@suse.de> |
3692 | ||
3693 | PR middle-end/51806 | |
3694 | * opts.c (common_handle_option): Handle -Werror. | |
3695 | ||
b339cf22 AS |
3696 | 2012-01-10 Andreas Schwab <schwab@linux-m68k.org> |
3697 | ||
3698 | * config/m68k/sync.md ("atomic_compare_and_swap<mode>_1"): Fix | |
3699 | operand number. | |
3700 | ||
90aa444c JM |
3701 | 2012-01-10 Jason Merrill <jason@redhat.com> |
3702 | ||
3703 | * doc/invoke.texi (C++ Dialect Options): Update -fabi-version=6 | |
3704 | information. | |
3705 | ||
0f24748c RO |
3706 | 2012-01-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
3707 | ||
3708 | * configure.ac (gcc_cv_as_ix86_tlsgdplt): Check if linker | |
3709 | supports R_386_TLS_GD_PLT reloc. | |
3710 | (gcc_cv_as_ix86_tlsldmplt): Check if linker | |
3711 | supports R_386_TLS_LDM_PLT reloc. | |
3712 | * configure: Regenerate. | |
3713 | * config.in: Regenerate. | |
3714 | ||
cba300dd GJL |
3715 | 2012-01-10 Georg-Johann Lay <avr@gjlay.de> |
3716 | ||
3717 | PR target/49868 | |
3718 | Extend __pgmx semantics to linearize memory. | |
3719 | * config/avr/avr.md (mov<mode>): Use avr_xload_libgcc_p to | |
3720 | determine if code comes inline or from libgcc. | |
3721 | (MOVMEM_r_d:HI): Add "w" to constraint for better preference. | |
3722 | (movmem_qi, movmem_qi): Set constraint #2 to "n". | |
3723 | (movmem_qi_elpm, movmem_hi_elpm): Remove insns. | |
3724 | (movmemx_qi, movmemx_hi): New insns. | |
3725 | (xload_<mode>_libgcc): Rewrite to new insn condition. | |
3726 | (xload_<mode>): Remove insns. | |
3727 | * config/avr/avr.c (avr_out_xload): Rewrite: Only need to handle | |
3728 | cases that don't satisfy avr_xload_libgcc_p(). | |
3729 | (avr_addr_space_convert): Allow converting in any direction. | |
3730 | (avr_addr_space_subset_p): Return always true. | |
3731 | (avr_xload_libgcc_p): Rewrite to fit new __pgmx semantics. | |
3732 | (avr_emit_movmemhi): Ditto. | |
3733 | (avr_out_lpm): No need to handle ADDR_SPACE_PGMX any more. | |
3734 | (avr_out_movmem): Ditto. | |
3735 | (AVR_SYMBOL_FLAG_PROGMEM): New macro. | |
3736 | (AVR_SYMBOL_SET_ADDR_SPACE): New macro. | |
3737 | (AVR_SYMBOL_GET_ADDR_SPACE): New macro. | |
3738 | (avr_encode_section_info): Encode 'progmem' in symbol flags. | |
3739 | (output_reload_in_const): Don't zero-extend any 24-bit symbols. | |
3740 | ||
390b24dc RG |
3741 | 2012-01-10 Richard Guenther <rguenther@suse.de> |
3742 | ||
3743 | PR tree-optimization/50913 | |
3744 | * graphite-scop-detection.c (stmt_has_simple_data_refs_p): | |
3745 | Require data-refs to be representable by Graphite with respect | |
3746 | to any loop nest. | |
3747 | ||
f148a434 UB |
3748 | 2012-01-10 Uros Bizjak <ubizjak@gmail.com> |
3749 | ||
3750 | * config/i386/constraints.md ("L"): Return true for 0xffffffff. | |
3751 | * config/i386/i386.c (*anddi_1): Emit AND with 0xffffffff as MOV. | |
3752 | ||
5d1f1cd5 TV |
3753 | 2012-01-10 Tom de Vries <tom@codesourcery.com> |
3754 | ||
6fcebe79 | 3755 | PR rtl-optimization/51271 |
5d1f1cd5 TV |
3756 | * dwarf2cfi.c (scan_trace): Save and restore cur_row->reg_save when |
3757 | handling annulled branch. | |
3758 | ||
b440f324 RH |
3759 | 2012-01-10 Richard Henderson <rth@redhat.com> |
3760 | ||
f148a434 | 3761 | * config/arm/arm.c (arm_vectorize_vec_perm_const_ok, |
b440f324 RH |
3762 | TARGET_VECTORIZE_VEC_PERM_CONST_OK, neon_split_vcombine, MAX_VECT_LEN, |
3763 | struct expand_vec_perm_d, arm_expand_vec_perm_1, arm_expand_vec_perm, | |
3764 | arm_evpc_neon_vuzp, arm_evpc_neon_vzip, arm_evpc_neon_vrev, | |
3765 | arm_evpc_neon_vtrn, arm_evpc_neon_vtbl, arm_expand_vec_perm_const_1, | |
3766 | arm_expand_vec_perm_const): New. | |
3767 | * config/arm/arm-protos.h: Update. | |
3768 | * config/arm/neon.md (UNSPEC_VCONCAT): New. | |
3769 | (*neon_vswp<VDQX>): New. | |
3770 | (neon_vcombine<VDX>): Use neon_split_vcombine. | |
3771 | (neon_vtbl1v16qi, neon_vtbl2v16qi, neon_vcombinev16qi): New. | |
3772 | * config/arm/vec-common.md (vec_perm_const<VALL>): New. | |
3773 | (vec_perm<VE>): New. | |
3774 | ||
18f0fe6b RH |
3775 | 2012-01-10 Richard Henderson <rth@redhat.com> |
3776 | ||
3777 | * config/arm/arm.c (arm_gen_compare_reg): Add scratch argument; | |
3778 | use it if reload_completed. | |
3779 | (arm_legitimize_sync_memory, arm_emit, arm_insn_count, arm_count, | |
3780 | arm_output_asm_insn, arm_process_output_memory_barrier, | |
3781 | arm_output_memory_barrier, arm_ldrex_suffix, arm_output_ldrex, | |
3782 | arm_output_strex, arm_output_it, arm_output_op2, arm_output_op3, | |
3783 | arm_output_sync_loop, arm_get_sync_operand, FETCH_SYNC_OPERAND, | |
3784 | arm_process_output_sync_insn, arm_output_sync_insn, | |
3785 | arm_sync_loop_insns, arm_call_generator, arm_expand_sync): Remove. | |
3786 | (arm_pre_atomic_barrier, arm_post_atomic_barrier): New. | |
3787 | (arm_emit_load_exclusive, arm_emit_store_exclusive): New. | |
3788 | (emit_unlikely_jump): New. | |
3789 | (arm_expand_compare_and_swap, arm_split_compare_and_swap): New. | |
3790 | (arm_split_atomic_op): New. | |
3791 | * config/arm/arm-protos.h: Update. | |
3792 | * config/arm/arm.h (enum arm_sync_generator_tag): Remove. | |
3793 | (struct arm_sync_generator): Remove. | |
3794 | * config/arm/arm.md (VUNSPEC_SYNC_COMPARE_AND_SWAP, VUNSPEC_SYNC_LOCK, | |
3795 | VUNSPEC_SYNC_OP, VUNSPEC_SYNC_NEW_OP, VUNSPEC_SYNC_OLD_OP): Remove. | |
3796 | (VUNSPEC_ATOMIC_CAS, VUNSPEC_ATOMIC_XCHG, VUNSPEC_ATOMIC_OP): New. | |
3797 | (VUNSPEC_LL, VUNSPEC_SC): New. | |
3798 | (sync_result, sync_memory, sync_required_value, sync_new_value, | |
3799 | sync_t1, sync_t2, sync_release_barrier, sync_op): Remove. | |
3800 | (attr length): Don't use arm_sync_loop_insns. | |
3801 | (cbranch_cc, cstore_cc): Update call to arm_gen_compare_reg. | |
3802 | (movsfcc, movdfcc): Likewise. | |
3803 | * config/arm/constraints.md (Ua): New. | |
3804 | * config/arm/prediates.md (mem_noofs_operand): New. | |
3805 | (sync_compare_and_swap<QHSD>, sync_lock_test_and_set<QHSD>): Remove. | |
3806 | (sync_clobber, sync_t2_reqd): Remove. | |
3807 | (sync_<syncop><QHSD>, sync_nand<QHSD>): Remove. | |
3808 | (sync_new_<syncop><QHSD>, sync_new_nand<QHSD>): Remove. | |
3809 | (sync_old_<syncop><QHSD>, sync_old_nand<QHSD>): Remove. | |
3810 | (arm_sync_compare_and_swap<SIDI>): Remove. | |
3811 | (arm_sync_compare_and_swap<NARROW>): Remove. | |
3812 | (arm_sync_lock_test_and_set<SIDI>): Remove. | |
3813 | (arm_sync_lock_test_and_set<NARROW>): Remove. | |
3814 | (arm_sync_new_<syncop><SIDI>): Remove. | |
3815 | (arm_sync_new_<syncop><NARROW>): Remove. | |
3816 | (arm_sync_new_nand<SIDI>): Remove. | |
3817 | (arm_sync_new_nand<NARROW>): Remove. | |
3818 | (arm_sync_old_<syncop><SIDI>): Remove. | |
3819 | (arm_sync_old_<syncop><NARROW>): Remove. | |
3820 | (arm_sync_old_nand<SIDI>): Remove. | |
3821 | (arm_sync_old_nand<NARROW>): Remove. | |
3822 | (*memory_barrier): Merge arm_output_memory_barrier. | |
3823 | (atomic_compare_and_swap<QHSD>): New. | |
3824 | (atomic_compare_and_swap<NARROW>_1): New. | |
3825 | (atomic_compare_and_swap<SIDI>_1): New. | |
3826 | (atomic_exchange<QHSD>): New. | |
3827 | (cas_cmp_operand, cas_cmp_str): New. | |
3828 | (atomic_op_operand, atomic_op_str): New. | |
3829 | (atomic_<syncop><QHSD>, atomic_nand<QHSD>): New. | |
3830 | (atomic_fetch_<syncop><QHSD>, atomic_fetch_nand<QHSD>): New. | |
3831 | (atomic_<syncop>_fetch<QHSD>, atomic_nand_fetch<QHSD>): New. | |
3832 | (arm_load_exclusive<NARROW>): New. | |
3833 | (arm_load_exclusivesi, arm_load_exclusivedi): New. | |
3834 | (arm_store_exclusive<QHSD>): New. | |
3835 | ||
3836 | 2012-01-09 Michael Meissner <meissner@linux.vnet.ibm.com> | |
df5a9a7c MM |
3837 | |
3838 | * config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Add DF | |
3839 | reload patterns if -mvsx-scalar-memory. | |
3840 | ||
3841 | * config/rs6000/vsx.md (vsx_xscvspdp): Allow xscvspdp to be | |
3842 | generated, even -mno-vsx-scalar-double was used. | |
3843 | (vsx_xscvdpsp_scalar): Likewise. | |
3844 | (vsx_xscvspdp_scalar2): Likewise. | |
3845 | ||
243b92d1 TV |
3846 | 2012-01-09 Tom de Vries <tom@codesourcery.com> |
3847 | Andrew Pinski <apinski@cavium.com> | |
3848 | ||
6fcebe79 | 3849 | PR debug/51471 |
f148a434 UB |
3850 | * reorg.c (fill_slots_from_thread): Don't speculate |
3851 | frame-related insns. | |
243b92d1 | 3852 | |
ef2be249 RS |
3853 | 2012-01-09 Richard Sandiford <rdsandiford@googlemail.com> |
3854 | ||
3855 | * sched-int.h (bb_note): Move to... | |
3856 | * basic-block.h: ...here. | |
3857 | * haifa-sched.c (bb_note): Move to... | |
3858 | * cfgrtl.c: ...here. | |
3859 | * function.c (next_block_for_reg): New function. | |
3860 | (move_insn_for_shrink_wrap): Likewise. | |
3861 | (prepare_shrink_wrap): Rewrite to use the above. | |
3862 | ||
345ae177 AH |
3863 | 2012-01-09 Aldy Hernandez <aldyh@redhat.com> |
3864 | ||
3865 | * gimple.c (is_gimple_non_addressable): Remove. | |
3866 | * gimple.h: Remove is_gimple_non_addressable. | |
3867 | * gimplify.c (gimplify_modify_expr_rhs): Use is_gimple_reg instead of | |
3868 | is_gimple_non_addressable. | |
3869 | * trans-mem.c (expand_assign_tm): Same. | |
3870 | ||
06468229 RG |
3871 | 2012-01-09 Richard Guenther <rguenther@suse.de> |
3872 | ||
3873 | PR tree-optimization/51775 | |
3874 | * tree-ssa-sccvn.c (visit_use): Value-number throwing stmts. | |
3875 | * tree-ssa-pre.c (eliminate): Properly fixup EH info. | |
3876 | ||
12aa62e9 MGD |
3877 | 2012-01-09 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> |
3878 | ||
3879 | * config/arm/arm-cores.def (cortex-a15): Use cortex_a15_tune for | |
3880 | tuning parameters. | |
3881 | * config/arm/arm.c (arm_cortex_a15_tune): New static variable. | |
3882 | ||
fdff9f3d RB |
3883 | 2012-01-09 Richard Guenther <rguenther@suse.de> |
3884 | ||
3885 | * tree-streamer-out.c (write_ts_optimization): Fix spelling. | |
3886 | ||
d028561e JH |
3887 | 2012-01-08 Jan Hubicka <jh@suse.cz> |
3888 | ||
3889 | PR tree-optimize/51680 | |
fdff9f3d RB |
3890 | * ipa-inline-analyss.c (evaluate_properties_for_edge): Fix condition |
3891 | on when known_vals needs to be computed; cleanup. | |
d028561e | 3892 | |
4c8836c6 JH |
3893 | 2012-01-08 Jan Hubicka <jh@suse.cz> |
3894 | ||
3895 | PR tree-optimize/51694 | |
3896 | * ipa-cp.c (ipa_get_indirect_edge_target): Add bounds checks. | |
3897 | ||
e478624f JW |
3898 | 2012-01-08 Jonathan Wakely <jwakely.gcc@gmail.com> |
3899 | ||
3900 | * doc/cpp.texi (Predefined Macros): __STRICT_ANSI__ is defined | |
3901 | for -std=c++98 and -std=c++11 too. | |
3902 | ||
b78384e0 CLT |
3903 | 2012-01-08 Chung-Lin Tang <cltang@codesourcery.com> |
3904 | ||
3905 | * cfgloop.c (cancel_loop): Add free() of bbs array. | |
3906 | ||
f45b2a8a JH |
3907 | 2012-01-07 Jan Hubicka <jh@suse.cz> |
3908 | ||
3909 | PR tree-optimization/51600 | |
3910 | * ipa-inline-analysis.c (estimate_edge_devirt_benefit): Disable code | |
3911 | that benefits small functions. | |
3912 | ||
3913 | 2012-01-07 Jan Hubicka <jh@suse.cz> | |
3914 | ||
3915 | * ipa-inline.c (want_inline_small_function_p): Fix formating. | |
3916 | ||
db22a743 JH |
3917 | 2012-01-07 Jan Hubicka <jh@suse.cz> |
3918 | ||
3919 | PR tree-optimization/51680 | |
3920 | * ipa-inline.c (want_inline_small_function_p): Be more lax on functions | |
3921 | whose inlining reduce unit size. | |
3922 | ||
faead9f7 AO |
3923 | 2012-01-07 Alexandre Oliva <aoliva@redhat.com> |
3924 | ||
3925 | PR bootstrap/51725 | |
3926 | * cselib.c (new_elt_loc_list): Promote addr_list to canonical node. | |
3927 | Add canonical node to containing_mem chain after the non-canonical | |
3928 | one, even if there weren't any locs to propagate. | |
3929 | (remove_useless_values): Keep only canonical values. | |
3930 | (add_mem_for_addr, cselib_lookup_mem): Canonicalize addr. | |
3931 | (cselib_invalidate_mem): Likewise. Ensure v is canonical, and | |
3932 | canonicalize mem_chain elements that are not discarded. | |
3933 | ||
b71d7f85 JJ |
3934 | 2012-01-06 Jakub Jelinek <jakub@redhat.com> |
3935 | ||
0850f694 JJ |
3936 | PR target/47333 |
3937 | * cgraphunit.c (cgraph_optimize): Call output_weakrefs | |
3938 | before emitting functions. | |
3939 | ||
b71d7f85 JJ |
3940 | PR gcov-profile/50127 |
3941 | * bb-reorder.c (partition_hot_cold_basic_blocks): Call | |
3942 | clear_aux_for_blocks. | |
3943 | ||
7483eef8 AO |
3944 | 2012-01-06 Alexandre Oliva <aoliva@redhat.com> |
3945 | ||
3946 | PR debug/51746 | |
3947 | * cselib.c (cselib_hash_rtx): Hash incoming VALUEs too. | |
3948 | ||
86d71fca AC |
3949 | 2012-01-06 Arnaud Charlet <charlet@adacore.com> |
3950 | ||
3951 | * c-decl.c (ext_block): Moved up. | |
3952 | (collect_all_refs, for_each_global_decl): Take ext_block into account. | |
3953 | ||
17719d09 HS |
3954 | 2012-01-06 Han Shen <shenhan@google.com> |
3955 | ||
3956 | Translate built-in include paths for sysroot. | |
3957 | * Makefile.in (gcc_gxx_include_dir_add_sysroot): New. | |
3958 | (PREPROCESSOR_DEFINES): Define GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT. | |
3959 | ||
3960 | * cppdefault.c (cpp_include_defaults): Replace hard coded "0" with | |
3961 | GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT for "add_sysroot" field. | |
3962 | ||
3963 | * configure.ac (AC_SUBST): Add gcc_gxx_include_dir_add_sysroot to | |
3964 | control whether sysroot should be prepended to gxx include dir. | |
3965 | ||
3966 | * configure: Regenerate. | |
3967 | ||
b0c99997 TR |
3968 | 2012-01-06 Torvald Riegel <triegel@redhat.com> |
3969 | ||
3970 | PR rtl-optimization/51771 | |
f148a434 | 3971 | * builtin-attrs.def (ATTR_RETURNS_TWICE, ATTR_TM_NOTHROW_RT_LIST): New. |
b0c99997 TR |
3972 | * gtm-builtins.def (BUILT_IN_TM_START): Add returns-twice attrib. |
3973 | ||
c3e686a3 EB |
3974 | 2012-01-05 Eric Botcazou <ebotcazou@adacore.com> |
3975 | ||
3976 | PR tree-optimization/51315 | |
3977 | * tree-sra.c (tree_non_aligned_mem_for_access_p): New predicate. | |
3978 | (build_accesses_from_assign): Use it instead of tree_non_aligned_mem_p. | |
3979 | ||
2d130b31 UB |
3980 | 2012-01-05 Uros Bizjak <ubizjak@gmail.com> |
3981 | ||
3982 | PR target/51681 | |
3983 | * config/ia64/ia64.c (expand_vec_perm_shrp): Use correct operands | |
3984 | for shrp pattern. Correctly handle and fixup shift variable. | |
3985 | Return false when shift > nelt for BYTES_BIG_ENDIAN target. | |
3986 | ||
f8f75b16 JJ |
3987 | 2012-01-05 Jakub Jelinek <jakub@redhat.com> |
3988 | ||
3989 | PR debug/51762 | |
3990 | * calls.c (emit_call_1): For noreturn calls force a REG_ARGS_SIZE | |
3991 | note when !ACCUMULATE_OUTGOING_ARGS. | |
3992 | ||
629c2cca EB |
3993 | 2012-01-05 Eric Botcazou <ebotcazou@adacore.com> |
3994 | ||
3995 | * tree-vrp.c (extract_range_from_binary_expr_1): Remove duplicated | |
3996 | condition. | |
3997 | (extract_range_from_unary_expr_1): Avoid useless computations. | |
3998 | ||
1e69d24e JJ |
3999 | 2012-01-05 Jakub Jelinek <jakub@redhat.com> |
4000 | ||
a3e6a37b JJ |
4001 | PR rtl-optimization/51767 |
4002 | * cfgrtl.c (force_nonfallthru_and_redirect): Force addition | |
4003 | of jump_block and add an extra edge for degenerated asm gotos. | |
4004 | ||
36363ebb JJ |
4005 | PR middle-end/51768 |
4006 | * stmt.c (check_unique_operand_names): Don't ICE during error | |
4007 | reporting if i is from labels chain. | |
4008 | ||
1e69d24e JJ |
4009 | PR middle-end/44777 |
4010 | * profile.c (branch_prob): Split bbs that have exit edge | |
4011 | and need a fake entry edge too. | |
4012 | ||
56494762 JH |
4013 | 2012-01-05 Jan Hubicka <jh@suse.cz> |
4014 | ||
4015 | PR middle-end/49710 | |
4016 | * cfgloopmanip.c (remove_path): Walk loop hiearchy upwards when | |
4017 | unlooping loops. | |
4018 | ||
10d12a3e RG |
4019 | 2012-01-05 Richard Guenther <rguenther@suse.de> |
4020 | ||
4021 | PR lto/50490 | |
4022 | * tree-streamer-out.c (write_ts_optimization): New function. | |
4023 | (streamer_write_tree_body): Call it. | |
4024 | * tree-streamer-in.c (lto_input_ts_optimization): New function. | |
4025 | (streamer_read_tree_body): Call it. | |
4026 | * lto-streamer-out.c (lto_is_streamable): Handle OPTIMIZATION_NODE. | |
4027 | ||
32be32af JJ |
4028 | 2012-01-05 Jakub Jelinek <jakub@redhat.com> |
4029 | ||
4030 | PR middle-end/51761 | |
2d130b31 | 4031 | * gimple.h (struct gimplify_ctx): Add in_cleanup_point_expr field. |
32be32af JJ |
4032 | * gimplify.c (gimplify_cleanup_point_expr): Save and set |
4033 | in_cleanup_point_expr before gimplify_stmt call and restore it | |
4034 | afterwards. | |
4035 | (gimplify_target_expr): Don't add {CLOBBER} cleanup if | |
4036 | in_cleanup_point_expr is false. | |
4037 | ||
5720c0dc RG |
4038 | 2012-01-05 Richard Guenther <rguenther@suse.de> |
4039 | ||
4040 | PR middle-end/51764 | |
4041 | * common.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move | |
4042 | to c.opt. | |
4043 | * toplev.c (process_options): Reject combining mudflap and LTO. | |
4044 | * tree-nomudflap.c (nogo): Use sorry instead of internal_error. | |
4045 | ||
6ad024b4 RG |
4046 | 2012-01-05 Richard Guenther <rguenther@suse.de> |
4047 | ||
4048 | PR tree-optimization/51760 | |
4049 | * tree-ssa-ccp.c (likely_value): Drop UNDEFINED to CONSTANT, | |
4050 | not VARYING. | |
4051 | (bit_value_unop): Handle UNDEFINED operands. | |
4052 | (bit_value_binop): Likewise. | |
4053 | ||
543a341c GJL |
4054 | 2012-01-05 Georg-Johann Lay <avr@gjlay.de> |
4055 | ||
4056 | * config/avr/avr.c (avr_replace_prefix): Remove. | |
4057 | (avr_asm_named_section): Use ACONCAT instead of avr_replace_prefix. | |
4058 | (avr_asm_function_rodata_section): Ditto. | |
4059 | (avr_asm_select_section): Ditto. | |
4060 | ||
6bfd2688 MS |
4061 | 2012-01-05 Marcus Shawcroft <marcus.shawcroft@arm.com> |
4062 | ||
4063 | * reload.c (find_reloads): Adjust LABEL_NUSES on REG_LABEL_OPERAND | |
4064 | insertion. | |
4065 | ||
cbd65133 JJ |
4066 | 2012-01-05 Jakub Jelinek <jakub@redhat.com> |
4067 | ||
bfeb0869 JJ |
4068 | PR bootstrap/51648 |
4069 | * tree-cfg.c (need_fake_edge_p): Return true also for noreturn | |
4070 | calls that have any non-fake successor edges. | |
4071 | ||
cbd65133 JJ |
4072 | PR debug/51746 |
4073 | * var-tracking.c (add_stores): For COND_EXEC allow oval to be NULL. | |
4074 | ||
8594273a EB |
4075 | 2012-01-04 Eric Botcazou <ebotcazou@adacore.com> |
4076 | ||
4077 | PR tree-optimization/51624 | |
4078 | * tree-sra.c (build_ref_for_model): When replicating a chain of | |
4079 | COMPONENT_REFs, stop as soon as the offset would become negative. | |
4080 | ||
5dc28f42 JJ |
4081 | 2012-01-04 Jakub Jelinek <jakub@redhat.com> |
4082 | ||
4083 | PR debug/51695 | |
4084 | * dwarf2out.c (output_loc_list): For now drop >= 64KB expressions | |
4085 | in .debug_loc on the floor. | |
4086 | ||
03a9ba1e AP |
4087 | 2012-01-04 Andrew Pinski <apinski@cavium.com> |
4088 | ||
4089 | * doc/invoke.texi (-march=@var{arch}): Add octeon+ and octeon2. | |
4090 | ||
770da00a AP |
4091 | 2012-01-04 Andrew Pinski <apinski@cavium.com> |
4092 | Adam Nemet <anemet@caviumnetworks.com> | |
4093 | ||
4094 | * config/mips/mips.md (size): Add SI and DI. | |
4095 | (SIZE): New mode attribute. | |
4096 | (U): New code attribute. | |
4097 | * config/mips/mips-dsp.md (mips_lbux): Use gen_mips_lbux_extsi. | |
4098 | (mips_lbux_<mode>): Delete. | |
4099 | (mips_l<SHORT:size><u>x_ext<GPR:mode>_<P:mode>): New pattern. | |
4100 | (mips_lhx): Use gen_mips_lhx_extsi. | |
4101 | (mips_lhx_<mode>): Delete. | |
4102 | (mips_lwx): Delete. | |
4103 | (mips_l<size>x): New expand. | |
4104 | (mips_lwx_<mode>): Delete. | |
4105 | (mips_l<GPR:size>x_<P:mode>): New pattern. | |
4106 | (*mips_lw<u>x_<P:mode>_ext): Likewise. | |
4107 | * config/mips/mips-ftypes.def: Add DI f(POINTER, SI) function type. | |
4108 | * config/mips/mips.c (mips_lx_address_p): New function. | |
4109 | (mips_rtx_costs <case MEM>): Call mips_lx_address_p. | |
4110 | (dsp64): New availability predicate. | |
4111 | (mips_builtins): Add an entry for __builtin_mips_ldx. | |
4112 | * config/mips/mips.h (ISA_HAS_LBX): New define. | |
4113 | (ISA_HAS_LBUX): Likewise. | |
4114 | (ISA_HAS_LHX): Likewise. | |
4115 | (ISA_HAS_LHUX): Likewise. | |
4116 | (ISA_HAS_LWX): Likewise. | |
4117 | (ISA_HAS_LWUX): Likewise. | |
4118 | (ISA_HAS_LDX): Likewise. | |
4119 | * doc/extend.texi (__builtin_mips_ldx): Document. | |
4120 | ||
e2b30a44 TG |
4121 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
4122 | ||
4123 | * config/vms/xm-vms.h (HOST_LONG_FORMAT, HOST_PTR_PRINTF): Define | |
4124 | when long pointers are used. | |
4125 | * config.build (*-*-*vms*): Handle all OpenVMS targets. | |
4126 | (alpha64-dec-*vms*, alpha*-dec-*vms*) | |
4127 | (ia64-hp-*vms*): Remove. | |
4128 | * config/vms/xm-vms64.h: Delete. | |
4129 | ||
713b8dfb AH |
4130 | 2012-01-04 Aldy Hernandez <aldyh@redhat.com> |
4131 | ||
4132 | PR middle-end/51472 | |
4133 | * trans-mem.c (expand_assign_tm): Handle TM_MEMMOVE loads correctly. | |
4134 | ||
7ba65723 AH |
4135 | 2012-01-04 Aldy Hernandez <aldyh@redhat.com> |
4136 | ||
b6aa8c33 | 4137 | * opts.c (finish_options): Remove duplicate sorry. |
7ba65723 | 4138 | |
3a54c456 AH |
4139 | 2012-01-04 Aldy Hernandez <aldyh@redhat.com> |
4140 | ||
4141 | PR middle-end/51696 | |
4142 | * trans-mem.c (diagnose_tm_1): Display indirect calls with no name | |
4143 | correctly. | |
4144 | ||
f5a3d840 RG |
4145 | 2012-01-04 Richard Guenther <rguenther@suse.de> |
4146 | ||
4147 | PR middle-end/51750 | |
4148 | * tree.c (size_low_cst): New function. | |
4149 | * tree.h (size_low_cst): Declare. | |
4150 | * fold-const.c (fold_comparison): Use it to extract the low | |
4151 | part of the POINTER_PLUS_EXPR offset. | |
4152 | ||
299c4b5f GJL |
4153 | 2012-01-04 Georg-Johann Lay <avr@gjlay.de> |
4154 | ||
4155 | Fix clearing ZERO_REG | |
4156 | * config/avr/avr.md (cc): Add alternative "ldi". | |
4157 | (movqi_insn): Use it in cc attribute. | |
4158 | * config/avr/avr.c (notice_update_cc): Handle CC_LDI. | |
4159 | (output_reload_in_const): Use CLR to move 0 to ZERO_REG. | |
4160 | (output_reload_insisf): Use ZERO_REG to pre-clear register. | |
4161 | ||
925b0ed8 AK |
4162 | 2012-01-04 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
4163 | ||
4164 | * configure: Regenerate. | |
4165 | ||
b4cf8c9d RG |
4166 | 2012-01-04 Richard Guenther <rguenther@suse.de> |
4167 | ||
4168 | PR tree-optimization/49651 | |
4169 | * tree-ssa-structalias.c (type_can_have_subvars): New function. | |
4170 | (var_can_have_subvars): Use it. | |
2d130b31 | 4171 | (get_constraint_for_1): Only consider subfields if there can be any. |
b4cf8c9d | 4172 | |
c067f6cf JJ |
4173 | 2012-01-03 Jakub Jelinek <jakub@redhat.com> |
4174 | ||
e30afafb | 4175 | PR bootstrap/51725 |
2d130b31 UB |
4176 | * cselib.c (new_elt_loc_list): When moving locs from one cselib_val |
4177 | to its new canonical_cselib_val and the cselib_val was in | |
4178 | first_containing_mem chain, but the canonical_cselib_val was not, | |
4179 | add the latter into the chain. | |
e30afafb JJ |
4180 | (cselib_invalidate_mem): Compare canonical_cselib_val of |
4181 | addr_list chain elt with v. | |
4182 | ||
c067f6cf JJ |
4183 | PR pch/51722 |
4184 | * dwarf2out.c (dwarf2out_start_source_file, dwarf2out_define, | |
4185 | dwarf2out_undef): Allocate e.info using ggc_strdup instead | |
4186 | of xstrdup. | |
4187 | (output_macinfo_op): Don't ggc_strdup fd->filename. | |
4188 | (optimize_macinfo_range): Allocate grp_name using XALLOCAVEC, | |
4189 | then ggc_strdup it. Don't free inc->info or cur->info. | |
4190 | (output_macinfo): Don't free ref->info or file->info. | |
4191 | ||
5d2eb24b IR |
4192 | 2012-01-03 Ira Rosen <irar@il.ibm.com> |
4193 | ||
4194 | PR tree-optimization/51269 | |
4195 | * tree-vect-loop-manip.c (set_prologue_iterations): Make | |
4196 | first_niters a pointer. | |
4197 | (slpeel_tree_peel_loop_to_edge): Likewise. | |
4198 | (vect_do_peeling_for_loop_bound): Update call to | |
4199 | slpeel_tree_peel_loop_to_edge. | |
4200 | (vect_gen_niters_for_prolog_loop): Don't compute wide_prolog_niters | |
4201 | here. Remove it from the parameters list. | |
4202 | (vect_do_peeling_for_alignment): Update calls and compute | |
4203 | wide_prolog_niters. | |
4204 | ||
c3e85659 RG |
4205 | 2012-01-03 Richard Guenther <rguenther@suse.de> |
4206 | ||
4207 | PR tree-optimization/51070 | |
4208 | * tree-loop-distribution.c (stmt_has_scalar_dependences_outside_loop): | |
4209 | Properly handle calls. | |
4210 | ||
f1749ec1 RG |
4211 | 2012-01-03 Richard Guenther <rguenther@suse.de> |
4212 | ||
4213 | PR tree-optimization/51692 | |
4214 | * tree-ssa-dce.c (eliminate_unnecessary_stmts): Do not remove | |
4215 | the LHS of allocation stmts. | |
4216 | ||
75291c57 OH |
4217 | 2012-01-03 Olivier Hainque <hainque@adacore.com> |
4218 | ||
4219 | * system.h: Prior to #define, #undef fopen and freopen unconditionally. | |
4220 | ||
6588d711 OH |
4221 | 2012-01-03 Olivier Hainque <hainque@adacore.com> |
4222 | ||
4223 | * collect2.c (main): In AIX specific computations for vector | |
4224 | insertions, use CONST_CAST2 to cast from char ** to const char **. | |
4225 | ||
f3321fd7 RG |
4226 | 2012-01-03 Richard Guenther <rguenther@suse.de> |
4227 | ||
4228 | PR debug/51650 | |
4229 | * dwarf2out.c (dwarf2out_finish): Always create a DIE for | |
4230 | the context of a limbo DIE when it does not already exist. | |
4231 | ||
a9730200 JJ |
4232 | 2012-01-03 Jakub Jelinek <jakub@redhat.com> |
4233 | ||
4234 | PR tree-optimization/51719 | |
4235 | * value-prof.c (gimple_ic): When indirect call isn't noreturn, | |
4236 | but direct call is, clear direct call's lhs and don't add fallthrough | |
4237 | edge from dcall_bb to join_bb and PHIs. | |
4238 | ||
be5de7a1 AK |
4239 | 2012-01-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
4240 | ||
4241 | * config/s390/s390.md ("*cmp<mode>_ccs"): Fix comment mentioning | |
4242 | the instructions emitted by the pattern. | |
4243 | ("*TDC_insn_<mode>"): Add comment. | |
4244 | ||
8b3c2951 RG |
4245 | 2012-01-03 Richard Guenther <rguenther@suse.de> |
4246 | ||
4247 | PR middle-end/51730 | |
4248 | * fold-const.c (fold_comparison): Properly canonicalize | |
4249 | tree offset and HOST_WIDE_INT bit position. | |
4250 | ||
96fda42c UB |
4251 | 2012-01-02 Uros Bizjak <ubizjak@gmail.com> |
4252 | ||
4253 | * config/ia64/ia64.c (expand_vec_perm_broadcast): Use correct | |
4254 | operands for extzv pattern. | |
4255 | ||
a4f436ff JJ |
4256 | 2012-01-02 Jakub Jelinek <jakub@redhat.com> |
4257 | ||
4258 | PR bootstrap/51725 | |
4259 | * cselib.c (add_mem_for_addr): Call canonical_cselib_val | |
4260 | on mem_elt first. | |
4261 | ||
842322d3 SL |
4262 | 2012-01-02 Sandra Loosemore <sandra@codesourcery.com> |
4263 | ||
4264 | * doc/invoke.texi (-flto and related options): Copy-edit. | |
4265 | ||
21e8e84d RS |
4266 | 2012-01-02 Richard Sandiford <rdsandiford@googlemail.com> |
4267 | ||
96fda42c | 4268 | * config/mips/mips.md (loadgp_newabi_<mode>): Add missing earlyclobber. |
21e8e84d | 4269 | |
06046046 JJ |
4270 | 2012-01-02 Jakub Jelinek <jakub@redhat.com> |
4271 | ||
4272 | * config/i386/sse.md (*avx2_gatherdi<mode>_3, *avx2_gatherdi<mode>_4): | |
4273 | New patterns. | |
4274 | ||
0d8f5d62 RS |
4275 | 2012-01-02 Richard Sandiford <rdsandiford@googlemail.com> |
4276 | ||
4277 | * expr.h (move_by_pieces_ninsns): Declare. | |
4278 | * expr.c (move_by_pieces_ninsns): Make external. | |
4279 | * config/mips/mips-protos.h (mips_move_by_pieces_p): Declare. | |
4280 | (mips_store_by_pieces_p): Likewise. | |
4281 | * config/mips/mips.h (MOVE_BY_PIECES_P): Call mips_move_by_pieces_p. | |
4282 | (STORE_BY_PIECES_P): Likewise mips_store_by_pieces_p. | |
4283 | * config/mips/mips.c (mips_move_by_pieces_p): New function. | |
4284 | (mips_store_by_pieces_p): Likewise. | |
4285 | ||
9f929ce6 JJ |
4286 | 2012-01-02 Jakub Jelinek <jakub@redhat.com> |
4287 | ||
4288 | * passes.c (register_one_dump_file): Free full_name. | |
4289 | ||
96fda42c | 4290 | * reload1.c (reload): Don't allocate reg_max_ref_width here. |
9f929ce6 JJ |
4291 | (calculate_elim_costs_all_insns): Free offsets_at and |
4292 | offsets_known_at at the end and clear the pointers. | |
4293 | ||
ce23293b GJL |
4294 | 2012-01-02 Georg-Johann Lay <avr@gjlay.de> |
4295 | ||
4296 | * config/avr/avr.opt (-mbranch-cost): Fix double definition of | |
4297 | this option introduced in r180739. | |
4298 | ||
884f56d1 GJL |
4299 | 2012-01-02 Georg-Johann Lay <avr@gjlay.de> |
4300 | ||
4301 | PR target/51345 | |
4302 | * config.gcc (tm_file target=avr]): Add avr/avr-multilib.h | |
4303 | (tmake_file target=avr): Add avr/t-multilib. | |
4304 | ||
4305 | * config/avr/avr-c.c (avr_cpu_cpp_builtins): Use AVR_HAVE_8BIT_SP | |
4306 | to built-in define __AVR_HAVE_8BIT_SP__, __AVR_HAVE_16BIT_SP__. | |
4307 | * config/avr/genmultilib.awk: New file. | |
4308 | * config/avr/t-multilib: New auto-generated file. | |
4309 | * config/avr/multilib.h: New auto-generated file. | |
4310 | * config/avr/t-avr (AVR_MCUS): New variable. | |
4311 | (genopt.sh): Use it. | |
4312 | (s-mlib): Depend on t-multilib. | |
4313 | (t-multilib, multilib.h): New dependencies. | |
4314 | (s-avr-mlib): New rule to build t-multilib, multilib.h from AVR_MCUS. | |
4315 | (MULTILIB_OPTIONS): Remove. | |
4316 | (MULTILIB_MATCHES): Remove. | |
4317 | (MULTILIB_DIRNAMES): Remove. | |
4318 | (MULTILIB_EXCEPTIONS): Remove: | |
4319 | * config/avr/genopt.sh: Don't use hard coded file name; | |
4320 | pass AVR_MCUS from t-avr instead. | |
4321 | ||
9ecd3a64 GJL |
4322 | 2012-01-02 Georg-Johann Lay <avr@gjlay.de> |
4323 | ||
4324 | * config/avr/avr.c (avr_out_ashrpsi3): Fix "case 31" to "case 23". | |
4325 | ||
8c57e547 GJL |
4326 | 2012-01-02 Georg-Johann Lay <avr@gjlay.de> |
4327 | ||
4328 | Implement light-weight DImode support. | |
4329 | * config/avr/avr-dimode.md: New file. | |
4330 | * config/avr/avr.md: Include it. | |
4331 | (adjust_len): Add plus64, compare64. | |
4332 | (HIDI): Remove code iterator. | |
4333 | (code_stdname): New code attribute. | |
4334 | (rotx, rotsmode): Remove DI. | |
4335 | (rotl<mode>3, *rotw<mode>, *rotb<mode>): Use HISI instead of HIDI | |
4336 | as code iterator. | |
4337 | * config/avr/avr-protos.h (avr_have_dimode): New. | |
4338 | (avr_out_plus64, avr_out_compare64): New. | |
4339 | * config/avr/avr.c (avr_out_compare): Handle DImode. | |
4340 | (avr_have_dimode): New variable definition and initialization. | |
4341 | (avr_out_compare64, avr_out_plus64): New functions. | |
4342 | (avr_out_plus_1): Use simplify_unary_operation to negate xval. | |
4343 | (adjust_insn_length): Handle ADJUST_LEN_COMPARE64, ADJUST_LEN_PLUS64. | |
4344 | (avr_compare_pattern): Skip DImode comparisons. | |
4345 | ||
8b61e863 RE |
4346 | 2012-01-02 Revital Eres <revital.eres@linaro.org> |
4347 | ||
4348 | * ddg.c (def_has_ccmode_p): New function. | |
4349 | (add_cross_iteration_register_deps, | |
4350 | create_ddg_dep_from_intra_loop_link): Call it. | |
4351 | ||
ba768e18 RG |
4352 | 2012-01-02 Richard Guenther <rguenther@suse.de> |
4353 | ||
4354 | PR other/51679 | |
4355 | * invoke.texi (fassociative-math): Remove spurious paranthesis. | |
4356 | ||
66f1b195 JJ |
4357 | 2012-01-01 Jakub Jelinek <jakub@redhat.com> |
4358 | ||
4359 | * gcc.c (process_command): Update copyright notice dates. | |
4360 | * gcov.c (print_version): Likewise. | |
4361 | * gcov-dump.c (print_version): Likewise. | |
4362 | * mips-tfile.c (main): Likewise. | |
4363 | * mips-tdump.c (main): Likewise. | |
4364 | ||
f2c74cc4 IR |
4365 | 2012-01-01 Ira Rosen <irar@il.ibm.com> |
4366 | ||
4367 | PR tree-optimization/51704 | |
4368 | * tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Check that | |
96fda42c | 4369 | a use is inside the basic block or loop before accessing its vect info. |
f2c74cc4 | 4370 | |
06f1716b JH |
4371 | 2012-01-01 Jan Hubicka <jhjh@suse.cz> |
4372 | ||
4373 | PR rtl-optimization/51069 | |
4374 | * cfgloopmanip.c (remove_path): Removing path making irreducible | |
4375 | region unconditional makes BB part of the region. | |
4376 | ||
45a5b21a JJ |
4377 | 2012-01-01 Jakub Jelinek <jakub@redhat.com> |
4378 | ||
4379 | PR tree-optimization/51683 | |
4380 | * tree-ssa-propagate.c (substitute_and_fold): Don't optimize away | |
4381 | calls with side-effects. | |
4382 | * tree-ssa-ccp.c (ccp_fold_stmt): Likewise. | |
ad41bd84 | 4383 | \f |
a7f45047 | 4384 | Copyright (C) 2012 Free Software Foundation, Inc. |
ad41bd84 JM |
4385 | |
4386 | Copying and distribution of this file, with or without modification, | |
4387 | are permitted in any medium without royalty provided the copyright | |
4388 | notice and this notice are preserved. |