]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ChangeLog
MAINTAINERS: Update my e-mail address.
[thirdparty/gcc.git] / gcc / ChangeLog
CommitLineData
93b826f0
MM
12011-03-08 Michael Meissner <meissner@linux.vnet.ibm.com>
2
3 PR target/47755
4 * config/rs6000/rs6000.c (easy_altivec_constant): Correctly handle
5 V2DI/V2DF constants. Only all 0's or all 1's are easy.
6 (output_vec_const_move): Ditto.
7
ef78aed6
AS
82011-03-08 Anatoly Sokolov <aesok@post.ru>
9
10 * config/mips/mips.h (PREFERRED_RELOAD_CLASS): Remove macro.
11 * config/mips/mips-protos.h (mips_preferred_reload_class): Remove.
12 * config/mips/mips.c (mips_preferred_reload_class): Make static.
13 Change 'rclass' argument and result type to reg_class_t.
14 (TARGET_PREFERRED_RELOAD_CLASS): Define.
15
5f892aa0
GJL
162011-03-08 Georg-Johann Lay <avr@gjlay.de>
17
18 * config/avr/avr.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
19 * config/avr/avr.c (TARGET_REGISTER_MOVE_COST,
20 TARGET_MEMORY_MOVE_COST): Define.
21 (avr_register_move_cost, avr_memory_move_cost): New Functions.
22
32bd2409
JJ
232011-03-08 Jakub Jelinek <jakub@redhat.com>
24
530a4800
JJ
25 PR debug/47881
26 * ira.c (ira): Call df_analyze again if delete_trivially_dead_insns
27 removed anything.
28
32bd2409
JJ
29 PR tree-optimization/48022
30 * fold-const.c (fold_comparison): Don't call fold_overflow_warning
31 for EQ/NE_EXPR.
32
c7148991
JJ
332011-03-07 Jakub Jelinek <jakub@redhat.com>
34
35 PR debug/47991
36 * var-tracking.c (find_use_val): Return NULL for
37 cui->sets && cui->store_p BLKmode MEMs.
38
43070a6e
AS
392011-03-07 Anatoly Sokolov <aesok@post.ru>
40
41 * config/stormy16/stormy16.h (PRINT_OPERAND, PRINT_OPERAND_ADDRESS):
42 Remove.
43 * config/stormy16/stormy16-protos.h (xstormy16_print_operand,
44 xstormy16_print_operand_address): Remove.
45 * config/stormy16/stormy16.c (xstormy16_print_operand,
46 xstormy16_print_operand_address): Make static.
47 (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS): Define.
48
79eefb0d
PH
492011-03-07 Pat Haugen <pthaugen@us.ibm.com>
50
51 PR target/47862
52 * config/rs6000/rs6000.h (HARD_REGNO_CALLER_SAVE_MODE): Define.
53 * config/rs6000/e500.h (HARD_REGNO_CALLER_SAVE_MODE): Undefine
54 before definition.
55
cec8ac0b
ZD
562011-03-07 Zdenek Dvorak <ook@ucw.cz>
57
58 PR bootstrap/48000
59 * cfgloopmanip.c (fix_bb_placements): Return immediately
60 if FROM is BASE_LOOP's header.
61
59527282
PW
622011-03-07 Paul Wögerer <paul_woegerer@mentor.com>
63
64 * gimplify.c (gimplify_function_tree): Fix building calls
65 to __builtin_return_address.
66
617718f7
AM
672011-03-07 Alan Modra <amodra@gmail.com>
68
69 * config/rs6000/linux.h (TARGET_ASM_FILE_END): Don't define.
70 * config/rs6000/linux64.h (TARGET_ASM_FILE_END): Don't define.
71 * config/rs6000/sysv4.h (TARGET_ASM_FILE_END): Define.
72 * config/rs6000/rs6000-protos.h (init_cumulative_args): Add fndecl and
73 return_mode args.
74 * config/rs6000/rs6000.h (CUMULATIVE_ARGS): Add "escapes".
75 (INIT_CUMULATIVE_ARGS): Pass FNDECL, VOIDmode.
76 (INIT_CUMULATIVE_INCOMING_ARGS): Pass current_function_decl, VOIDmode.
77 (INIT_CUMULATIVE_LIBCALL_ARGS): Pass NULL_TREE, MODE.
78 * config/rs6000/rs6000.c
79 (rs6000_elf_end_indicate_exec_stack): Rename to..
80 (rs6000_elf_file_end): ..this. Only call file_end_indicate_exec_stack
81 for POWERPC_LINUX. Move code emitting .gnu_attribute to here, from..
82 (rs6000_file_start): ..here.
83 (rs6000_passes_float, rs6000_passes_vector, rs6000_returns_struct): New
84 file scope variables.
85 (call_ABI_of_interest): New function.
86 (init_cumulative_args): Set above vars when function return value
87 is a float, vector, or small struct.
88 (rs6000_function_arg_advance_1): Likewise for function args.
89 (rs6000_va_start): Set rs6000_passes_float if variable arg function
90 references float args.
91
38528d50
MX
922011-03-07 Mingjie Xing <mingjie.xing@gmail.com>
93
94 * doc/cfg.texi: Remove "See" before @ref.
95 * doc/invoke.texi: Likewise.
96
f42cf4f4
JM
972011-03-05 Jason Merrill <jason@redhat.com>
98
99 * doc/invoke.texi (C++ Dialect Options): Document ABI v5.
100
804a304d
AG
1012011-03-05 Anthony Green <green@moxielogic.com>
102
103 * config.gcc (moxie-*-elf): Add newlib-stdint.h to tmfile.
104
634ee309
ZD
1052011-03-05 Zdenek Dvorak <ook@ucw.cz>
106
107 PR rtl-optimization/47899
108 * cfgloopmanip.c (fix_bb_placements): Fix first argument
109 to flow_loop_nested_p when moving the loop upward.
110
6fe471c8
RE
1112011-03-05 Richard Earnshaw <rearnsha@arm.com>
112
113 PR target/47719
114 * arm.md (movhi_insn_arch4): Accept any immediate constant.
115
cc58ceee
JJ
1162011-03-05 Jakub Jelinek <jakub@redhat.com>
117
118 PR tree-optimization/47967
119 * ipa-cp.c (build_const_val): Return NULL instead of creating
120 VIEW_CONVERT_EXPR for mismatching sizes.
121 (ipcp_create_replace_map): Return NULL if build_const_val failed.
122 (ipcp_insert_stage): If ipcp_create_replace_map returns NULL,
123 give up on versioning.
124
ea868305
AM
1252011-03-05 Alan Modra <amodra@gmail.com>
126
127 PR target/47986
128 * config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
129 full cmodel medium/large lo_sum + high addresses.
130
bc6ce334
AK
1312011-03-04 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
132
133 * config/s390/s390.c (s390_decompose_address): Reject non-literal
134 pool references in UNSPEC_LTREL_OFFSET.
135
87e7b310
JH
1362011-03-04 Jan Hubicka <jh@suse.cz>
137
138 PR lto/47497
139 * lto-symtab.c (lto_cgraph_replace_node): Do not set thunk.alias.
140 (lto_symtab_merge_cgraph_nodes_1): Update thunk.alias pointers here.
141 * cgraph.h (cgraph_same_body_alias, cgraph_add_thunk): Add node pointers.
142 * cgraph.c (cgraph_same_body_alias_1, cgraph_same_body_alias,
143 cgraph_add_thunk): Add node pointers.
144 * lto-cgraph.c (lto_output_node): Verify that thunks&aliases are
145 associated to right node.
146 (input_node): Update use of cgraph_same_body_alias
147 and cgraph_add_thunk.
148
d9c64246
CF
1492011-03-04 Changpeng Fang <changpeng.fang@amd.com>
150
151 * config/i386/i386.opt (mprefer-avx128): New flag.
152 * config/i386/i386.c (ix86_preferred_simd_mode): Prefer 128-bit mode
153 when the flag -mprefer-avx128 is on.
154
08707076
RS
1552011-03-04 Richard Sandiford <richard.sandiford@linaro.org>
156
157 * dwarf2out.c (compare_loc_operands): Fix address handling.
158
52517c81
AM
1592011-03-04 Alan Modra <amodra@gmail.com>
160
161 * tree.h (TREE_ADDRESSABLE): Update FUNCTION_DECL comment.
162
b147c5b9
RG
1632011-03-04 Richard Guenther <rguenther@suse.de>
164
165 PR middle-end/47968
166 * expmed.c (extract_bit_field_1): Prefer vector modes that
167 vec_extract patterns can handle.
168
8750672f
RG
1692011-03-04 Richard Guenther <rguenther@suse.de>
170
171 PR middle-end/47975
172 * optabs.c (optab_for_tree_code): Do not use VECTOR_MODE_P.
173
9eac0f2a
RH
1742011-03-04 Richard Henderson <rth@redhat.com>
175
176 * explow.c (emit_stack_save): Remove 'after' parameter.
177 (emit_stack_restore): Likewise.
178 * expr.h: Update to match.
179 * builtins.c, calls.c, stmt.c: Likewise.
180 * config/alpha/alpha.md, config/avr/avr.md: Likewise.
181 * config/mips/mips.md, config/pa/pa.md, config/vax/vax.md: Likewise.
182 * function.c (expand_function_end): Insert the emit_stack_save
183 sequence before parm_birth_insn instead of after.
184
dfee1406
UB
1852011-03-03 Uros Bizjak <ubizjak@gmail.com>
186
187 * config/i386/sse.md (*avx_pmaddubsw128): Fix mode of VEC_SELECT RTX.
188 (ssse3_pmaddubsw128): Ditto.
189 (ssse3_pmaddubsw): Ditto.
190
f1d4c3de
SE
1912011-03-03 Steve Ellcey <sje@cup.hp.com>
192
193 * config/ia64/t-hpux: Add $(srcdir)/unwind-c.c to LIB2ADDEH
194
71f3a3f5
JJ
1952011-03-03 Jakub Jelinek <jakub@redhat.com>
196
423ed416
JJ
197 PR c/47963
198 * gimplify.c (omp_add_variable): Only call omp_notice_variable
199 on TYPE_SIZE_UNIT if it is a DECL.
200
71f3a3f5
JJ
201 PR debug/47283
202 * cfgexpand.c (expand_debug_expr) <case MEM_REF>: If MEM_REF
203 first operand is not is_gimple_mem_ref_addr, try to fold it.
204 If the operand still isn't is_gimple_mem_ref_addr, clear
205 MEM_EXPR on op0.
206
4b1a5c0d
RG
2072011-03-03 Richard Guenther <rguenther@suse.de>
208
209 PR middle-end/47283
210 * tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Make code
211 match comment.
212 (refs_may_alias_p_1): For release branches return true if
213 we are confused by our input.
214
b46616fd
AK
2152011-03-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
216
217 * config/s390/s390.c (s390_function_value): Rename to ...
218 (s390_function_and_libcall_value): ... this.
219 (s390_function_value): New function.
220 (s390_libcall_value): New function.
dfee1406 221 (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE): Define target hooks.
b46616fd
AK
222 * config/s390/s390.h (FUNCTION_VALUE, LIBCALL_VALUE): Remove
223 target macro definitions.
224 * config/s390/s390-protos.h (s390_function_value): Remove prototype.
225
46d8fabb
JM
2262011-03-02 Joseph Myers <joseph@codesourcery.com>
227
228 * config/i386/freebsd64.h (CC1_SPEC): Define.
229 * config/i386/linux64.h (CC1_SPEC): Define.
230 * config/i386/x86-64.h (CC1_SPEC): Don't define.
231
6b1ce545
AS
2322011-03-02 Anatoly Sokolov <aesok@post.ru>
233
234 * config/stormy16/stormy16.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST):
235 Remove.
236 * config/stormy16/stormy16.c: Include reload.h.
237 (xstormy16_memory_move_cost): New function.
238 (TARGET_MEMORY_MOVE_COST): Define.
239
34161e98
RS
2402011-03-02 Richard Sandiford <richard.sandiford@linaro.org>
241
242 PR rtl-optimization/47925
243 * cse.c (count_reg_usage): Don't ignore the SET_DEST of instructions
244 with side effects. Remove the more-specific check for volatile asms.
245
f60a97cf
AM
2462011-03-02 Alan Modra <amodra@gmail.com>
247
248 PR target/47935
249 * config/rs6000/predicates.md (lwa_operand): Check cmodel medium
250 toc relative addresses for valid offsets.
251
f2ca11ca
RG
2522011-03-01 Richard Guenther <rguenther@suse.de>
253
254 PR tree-optimization/47890
255 * tree-vect-loop.c (get_initial_def_for_induction): Set
256 related stmt properly.
257
7a00d9ea
RG
2582011-03-01 Richard Guenther <rguenther@suse.de>
259
260 PR lto/47924
261 * lto-streamer.c (lto_record_common_node): Also register
262 the canonical type.
263
06c7edcc
RG
2642011-03-01 Richard Guenther <rguenther@suse.de>
265
266 PR lto/46911
267 * lto-streamer-in.c (lto_input_ts_decl_common_tree_pointers):
268 Do not stream DECL_ABSTRACT_ORIGIN.
269 (lto_input_ts_block_tree_pointers): Nor BLOCK_SOURCE_LOCATION,
270 BLOCK_NONLOCALIZED_VARS or BLOCK_ABSTRACT_ORIGIN.
271 * lto-streamer-out.c (lto_output_ts_decl_common_tree_pointers):
272 Do not stream DECL_ABSTRACT_ORIGIN.
273 (lto_output_ts_block_tree_pointers): Nor BLOCK_SOURCE_LOCATION,
274 BLOCK_NONLOCALIZED_VARS or BLOCK_ABSTRACT_ORIGIN.
275
998871e9
AS
2762011-02-28 Anatoly Sokolov <aesok@post.ru>
277
278 * config/stormy16/stormy16.h (FUNCTION_VALUE, LIBCALL_VALUE,
279 FUNCTION_VALUE_REGNO_P): Remove.
b2e2ea67 280 * config/stormy16/stormy16-protos.h (xstormy16_function_value): Remove.
998871e9
AS
281 * config/stormy16/stormy16.c (xstormy16_function_value): Make static.
282 Add 'outgoing' argument.
283 (xstormy16_libcall_value, xstormy16_function_value_regno_p): New
284 function.
285 (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
286 TARGET_FUNCTION_VALUE_REGNO_P): Define.
287
94369251
KT
2882011-02-28 Kai Tietz <kai.tietz@onevision.com>
289
290 PR debug/28047
291 * dwarf2out.c (file_table_eq): Use filename_cmp instead of strcmp.
292 (lookup_filename): Likewise.
b2e2ea67 293 * final.c (remap_debug_filename): Use filename_ncmp instead of strncmp.
94369251 294
80a832cd
JJ
2952011-02-28 Bernd Schmidt <bernds@codesourcery.com>
296 Jakub Jelinek <jakub@redhat.com>
297
298 PR middle-end/47893
299 * rtl.h (ASLK_REDUCE_ALIGN, ASLK_RECORD_PAD): Define.
300 (assign_stack_local_1): Change last argument type to int.
301 * function.c (assign_stack_local_1): Replace reduce_alignment_ok
302 argument with kind. If bit ASLK_RECORD_PAD is not set in it,
b2e2ea67 303 don't record padding space into frame_space_list nor use those areas.
80a832cd
JJ
304 (assign_stack_local): Adjust caller.
305 (assign_stack_temp_for_type): Call assign_stack_local_1 instead
306 of assign_stack_local, pass 0 as last argument.
307 * caller-save.c (setup_save_areas): Adjust assign_stack_local_1
308 callers.
309
1b500976
JJ
3102011-02-28 Jakub Jelinek <jakub@redhat.com>
311
f61c6f34
JJ
312 PR debug/47283
313 * cfgexpand.c (convert_debug_memory_address): Add AS parameter.
314 Use target address_mode and pointer_mode hooks instead of hardcoded
315 Pmode and ptr_mode. Handle some simple cases of extending if
316 POINTERS_EXTEND_UNSIGNED < 0.
317 (expand_debug_expr) <case MEM_REF, INDIRECT_REF, TARGET_MEM_REF>:
318 Call convert_debug_memory_address.
319 (expand_debug_expr) <case ADDR_EXPR>: Pass as to
320 convert_debug_memory_address.
321
1b500976
JJ
322 PR middle-end/46790
323 * configure.ac (HAVE_LD_EH_GC_SECTIONS_BUG): New test.
324 * configure: Regenerated.
325 * config.in: Regenerated.
326 * varasm.c (default_function_section): Return NULL
b2e2ea67 327 if HAVE_LD_EH_GC_SECTIONS_BUG and decl has implicit section name.
1b500976 328
2f2935b6
MJ
3292011-02-28 Martin Jambor <mjambor@suse.cz>
330
331 * ipa-inline.c (cgraph_decide_inlining_of_small_functions): Fix
332 the description to match the printed values.
333
474086eb
RG
3342011-02-28 Richard Guenther <rguenther@suse.de>
335
336 * tree-inline.c (tree_function_versioning): Set BLOCK_SUPERCONTEXT
337 of the copied scope tree.
338
15bf6f3a
RW
3392011-02-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
340
341 * doc/extend.texi (Function Attributes): Avoid deeply (and
342 wrongly) nested tables.
343
f6b439c9
JJ
3442011-02-27 Jakub Jelinek <jakub@redhat.com>
345
346 PR middle-end/47903
347 * real.c (real_arithmetic) <case PLUS_EXPR, MINUS_EXPR,
348 MULT_EXPR, RDIV_EXPR>: Clear padding bits in *r first if
349 r isn't op0 nor op1.
350
1d8ca2c7
GJL
3512011-02-23 Georg-Johann Lay <avr@gjlay.de>
352
353 * config/avr/avr.md: Remove magic comment for emacs.
354
593fca4b
GJL
3552011-02-23 Georg-Johann Lay <avr@gjlay.de>
356
357 PR target/45261
358 * config/avr/avr.c (avr_option_override): Use error on bad options.
359 (avr_help): New function.
360 (TARGET_HELP): Define.
361
6609216e
GJL
3622011-02-22 Georg-Johann Lay <avr@gjlay.de>
363
364 PR target/42240
365 * config/avr/avr.c (avr_cannot_modify_jumps_p): New function.
366 (TARGET_CANNOT_MODIFY_JUMPS_P): Define.
367
03d458af
GP
3682011-02-26 Gerald Pfeifer <gerald@pfeifer.com>
369
370 * doc/invoke.texi (ARC Options): Use CPU instead of cpu.
371 (ARM Options): Ditto.
372 (i386 and x86-64 Options): Ditto.
373 (RX Options): Ditto.
374 (SPARC Options): Ditto.
375
1c379b78
TC
3762011-02-26 Tijl Coosemans <tijl@coosemans.org>
377
378 * config.gcc (i386-*-freebsd*): Make i486 the default arch on
379 FreeBSD 6 and later. Generally use cpu generic.
380
d5ed058c 3812011-02-25 Gerald Pfeifer <gerald@pfeifer.com>
b2e2ea67 382
d5ed058c
GP
383 * doc/cpp.texi: Update copyright years.
384
509d65dd 3852011-02-25 Sebastien Bourdeauducq <sebastien@milkymist.org>
308d39cd 386
509d65dd 387 PR target/46898
308d39cd
SB
388 * config/lm32/lm32.md (ashrsi3): Added needed variable.
389
509d65dd 3902011-02-25 Jon Beniston <jon@beniston.com>
308d39cd 391
509d65dd 392 PR target/46898
308d39cd
SB
393 * config/lm32/lm32.h (INCOMING_RETURN_ADDR_RTX): New.
394 * config/lm32/lm32.md (ashlsi3): Remove unused variable.
395 * config/lm32/lm32.c (TARGET_EXCEPT_UNWIND_INFO): New.
396 (lm32_block_move_inline): Add type cast to remove warning.
b2e2ea67 397 (lm32_expand_prologue): Generate fp in a way compatible with dwarf2out.
308d39cd
SB
398 (gen_int_relational): Move declarations to start of function.
399
822ba6d7
EB
4002011-02-25 Eric Botcazou <ebotcazou@adacore.com>
401
402 PR tree-optimization/45470
403 * tree-vect-data-refs.c (vect_analyze_data_refs): Fail if a statement
404 can throw internally only.
405 * tree-vect-stmts.c (vectorizable_call): Likewise.
406
ef795fc2
AS
4072011-02-24 Anatoly Sokolov <aesok@post.ru>
408
409 * config/stormy16/stormy16.h (PREFERRED_RELOAD_CLASS,
410 PREFERRED_OUTPUT_RELOAD_CLASS): Remove.
411 * config/stormy16/stormy16-protos.h
412 (xstormy16_preferred_reload_class): Remove.
413 * config/stormy16/stormy16.c (xstormy16_preferred_reload_class): Make
414 static. Change 'rclass' argument and return type to reg_class_t.
415 (TARGET_PREFERRED_RELOAD_CLASS,
416 TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
417
1c3277ee
RG
4182011-02-24 Richard Guenther <rguenther@suse.de>
419
420 * lto-streamer-in.c (input_bb): Do not find referenced vars
421 in debug statements.
422
67e18edb
JM
4232011-02-23 Jason Merrill <jason@redhat.com>
424
425 * common.opt (fabi-version): Document v5 and v6.
426
b14fad9d
RG
4272011-02-23 Richard Guenther <rguenther@suse.de>
428
429 PR tree-optimization/47849
430 * tree-if-conv.c (main_tree_if_conversion): Free postdom info.
431
7fcf46f5
JZ
4322011-02-23 Jie Zhang <jie@codesourcery.com>
433
434 * opts-common.c (decode_cmdline_option): Print empty string
435 argument as "" in decoded->orig_option_with_args_text.
436 * gcc.c (execute): Print empty string argument as ""
437 in the verbose output.
438 (do_spec_1): Keep empty string argument.
439
f85b70fd
NF
4402011-02-23 Nathan Froyd <froydnj@codesourcery.com>
441
442 * config.gcc: Declare score-* and crx-* obsolete.
443
b152a615
JZ
4442011-02-23 Jie Zhang <jie@codesourcery.com>
445
446 PR rtl-optimization/47763
447 * web.c (web_main): Ignore naked clobber when replacing register.
448
bb6e77bc
AS
4492011-02-22 Anatoly Sokolov <aesok@post.ru>
450
451 * config/stormy16/stormy16.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P):
452 Remove.
453
68bf6491
SP
4542011-02-22 Sebastian Pop <sebastian.pop@amd.com>
455
456 PR doc/47848
457 * doc/invoke.texi: Do not mention -ftree-loop-if-convert-memory-writes.
458
88ee1fc7
MS
4592011-02-22 Mike Stump <mikestump@comcast.net>
460
461 * acinclude.m4 (gcc_cv_gas_vers): Add -arch ppc for probing darwin
462 assembler.
463 * configure: Regenerate.
464
6042d1dd
CLT
4652011-02-21 Chung-Lin Tang <cltang@codesourcery.com>
466
467 PR rtl-optimization/46002
468 * ira-color.c (update_copy_costs): Change class intersection
469 test to reg_class_contents[] test of 'hard_regno'.
470
7de97f9e
JM
4712011-02-21 Joseph Myers <joseph@codesourcery.com>
472
473 * config/alpha/osf5.opt (mno-mips-tfile): Mark as Target rather
474 than Driver option.
475 * config/hpux11.opt (mt): Likewise.
476 * config/microblaze/microblaze.opt (mxl-mode-xilkernel): Likewise.
477 * config/rs6000/xilinx.opt (mno-clearbss, mppcperflib): Likewise.
478 * config/vax/elf.opt (mno-asm-pic): Likewise.
479 * config/vms/vms.opt (map, mvms-return-codes): Likewise.
480
d1d46f9f
MS
4812011-02-21 Mike Stump <mikestump@comcast.net>
482
483 PR target/47822
484 * config/darwin-protos.h (darwin_init_cfstring_builtins): Return a
485 tree so we can get save the type.
486 * config/i386/darwin.h (SUBTARGET_INIT_BUILTINS): Reserve builtin slot
487 for CFString instead of trying to use past the end of the builtins.
488 * config/i386/i386.c (IX86_BUILTIN_CFSTRING): Likewise.
489 * config/rs6000/rs6000-builtin.def (RS6000_BUILTIN_CFSTRING): Likewise.
490 * config/rs6000/darwin.h (SUBTARGET_INIT_BUILTINS): Likewise.
491 * config/darwin.c (DARWIN_BUILTIN_CFSTRINGMAKECONSTANTSTRING):
492 Rename to darwin_builtin_cfstring.
493 (darwin_init_cfstring_builtins): Return the built type.
494
23e0d930
UB
4952011-02-21 Uros Bizjak <ubizjak@gmail.com>
496
497 PR target/47840
498 * config/i386/avxintrin.h (_mm256_insert_epi32): Use _mm_insert_epi32.
499 (_mm256_insert_epi64): Use _mm_insert_epi64.
500
192997cf
AS
5012011-02-21 Anatoly Sokolov <aesok@post.ru>
502
503 * config/stormy16/stormy16.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
504 * config/stormy16/stormy16-protos.h
505 (xstormy16_mode_dependent_address_p): Remove.
506 * config/stormy16/stormy16.c (xstormy16_mode_dependent_address_p):
507 Make static. Change return type to bool. Change argument type to
508 const_rtx. Remove dead code.
509 (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
510
e292d003
RG
5112011-02-21 Richard Guenther <rguenther@suse.de>
512
513 PR lto/47820
514 * lto-streamer-in.c (lto_input_ts_decl_common_tree_pointers):
515 Do not stream DECL_INITIAL for TRANSLATION_UNIT_DECLs.
516 (lto_input_ts_block_tree_pointers): Hook a BLOCK into the
517 TUs context.
23e0d930 518 * lto-streamer-out.c (lto_output_ts_decl_common_tree_pointers):
e292d003
RG
519 Do not stream DECL_INITIAL for TRANSLATION_UNIT_DECLs.
520
77f846e9
RG
5212011-02-20 Richard Guenther <rguenther@suse.de>
522
523 PR lto/47822
524 * tree.c (free_lang_data_in_decl): Clean builtins from
525 the TU decl BLOCK_VARS.
23e0d930 526
b2cddfc8
AO
5272011-02-19 Alexandre Oliva <aoliva@redhat.com>
528
529 PR debug/47620
530 PR debug/47630
531 * haifa-sched.c (fix_tick_ready): Skip tick computation
532 for debug insns.
533
becf4c11
RG
5342011-02-19 Richard Guenther <rguenther@suse.de>
535
536 PR lto/47647
537 * lto-streamer-in.c (lto_input_ts_decl_minimal_tree_pointers):
538 Remove lazy BLOCK_VARS streaming.
539 (lto_input_ts_block_tree_pointers): Likewise.
540 * lto-streamer-out.c (lto_output_ts_block_tree_pointers): Likewise.
541
27f98305
JM
5422011-02-19 Joseph Myers <joseph@codesourcery.com>
543
544 * config.gcc (i[34567]86-pc-msdosdjgpp*): Use i386/djgpp-stdint.h.
545
064bf3f4
JM
5462011-02-19 Joseph Myers <joseph@codesourcery.com>
547
548 * config/i386/biarch32.h, config/i386/mach.h,
549 config/rs6000/aix.opt, config/sh/superh64.h: Remove.
550
9215ddc3
JJ
5512011-02-19 Jakub Jelinek <jakub@redhat.com>
552
553 PR target/47800
554 * config/i386/i386.md (peephole2 for shift and plus): Use
555 operands[1] original mode in the first insn.
556
8b021004
MS
5572011-02-18 Mike Stump <mikestump@comcast.net>
558
65ded153 559 * config/t-darwin (TM_H): Add dependency on darwin-sections.def.
8b021004 560
f84ae14c
JH
5612011-02-18 Jan Hubicka <jh@suse.cz>
562
563 PR middle-end/47788
65ded153
EB
564 * ipa-inline.c (compute_inline_parameters): Set disregard_inline_limits
565 to zero when the function is not inlinable at all.
f84ae14c 566
eddabc80
JDA
5672011-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
568
569 * config.gcc (hppa[12]*-*-hpux11*): Set extra_parts.
570 * config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
571 pthread_mutex_unlock, pthread_once): Reinstate pthread stubs.
572 * config/pa/t-pa-hpux11: Add rules to build pthread stubs.
573 * config/pa/t-pa64: Likewise.
574 * config/pa/pa-hpux11.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
575
ca3da783
JJ
5762011-02-18 Jakub Jelinek <jakub@redhat.com>
577
578 PR driver/47787
579 * gcc.c (default_compilers): Clear combinable field for "@cpp-output".
580
430aa868
JDA
5812011-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
582
583 PR target/47792
584 * gthr-dce.h (__gthread_mutx_destroy): Fix typo in name.
585
4bf7ff7e
AS
5862011-02-18 Anatoly Sokolov <aesok@post.ru>
587
588 * config/m32r/m32r.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P,
589 RTX_OK_FOR_BASE_P, RTX_OK_FOR_OFFSET_P, LEGITIMATE_OFFSET_ADDRESS_P,
590 LEGITIMATE_LO_SUM_ADDRESS_P, LOAD_POSTINC_P, STORE_PREINC_PREDEC_P,
591 GO_IF_LEGITIMATE_ADDRESS): Remove macros.
592 * config/m32r/m32r.c (TARGET_LEGITIMATE_ADDRESS_P): Define.
593 (m32r_rtx_ok_for_base_p, m32r_rtx_ok_for_offset_p,
594 m32r_legitimate_offset_addres_p, m32r_legitimate_lo_sum_addres_p,
595 m32r_load_postinc_p, m32r_store_preinc_predec_p,
596 m32r_legitimate_address_p): New functions.
597 * config/m32r/constraints.md (constraint "S"): Don't use
598 STORE_PREINC_PREDEC_P.
599 (constraint "U"): Don't use LOAD_POSTINC_P.
600
7efcf910
CLT
6012011-02-18 Chung-Lin Tang <cltang@codesourcery.com>
602
603 PR rtl-optimization/46178
604 * ira.c (setup_hard_regno_class): Use ira_class_translate[] to
605 compute ira_hard_regno_cover_class[].
606
237d6259
RG
6072011-02-18 Richard Guenther <rguenther@suse.de>
608
609 PR lto/47798
610 * lto-streamer.h (lto_global_var_decls): Declare.
611 * lto-streamer-in.c (lto_register_var_decl_in_symtab): Register
612 statics for global var processing.
613
12d80acc
RG
6142011-02-18 Richard Guenther <rguenther@suse.de>
615
616 PR tree-optimization/47737
617 * tree-ssa-loop-im.c (extract_true_false_args_from_phi): Fix
618 edge dominance check.
619
abfea58d
JJ
6202011-02-18 Jakub Jelinek <jakub@redhat.com>
621
622 PR debug/47780
623 * cfgexpand.c (expand_debug_expr) <case SSA_NAME>: Call copy_rtx to
624 avoid invalid rtx sharing.
625
f73c8882
GP
6262011-02-18 Gerald Pfeifer <gerald@pfeifer.com>
627
628 * doc/cpp.texi (Obsolete Features): Add background on the
629 origin of assertions.
630
d764a8e6
IS
6312011-02-17 Iain Sandoe <iains@gcc.gnu.org>
632
633 * config/darwin-c.c (darwin_cpp_builtins): Define __OBJC2__ for
23e0d930 634 objc_abi == 2.
d764a8e6
IS
635 * config/darwin.c (output_objc_section_asm_op): Added support for
636 ABI v1 and v2.
637 (is_objc_metadata): New.
638 (darwin_objc2_section): New.
639 (darwin_objc1_section): New.
640 (machopic_select_section): Added support for ABI v1 and v2.
641 (darwin_emit_objc_zeroed): New.
642 (darwin_output_aligned_bss): Detect objc metadata and treat it
643 appropriately.
644 (darwin_asm_output_aligned_decl_common): Same.
645 (darwin_asm_output_aligned_decl_local): Same.
646 * config/darwin-sections.def: Updated for ABI v1 and v2.
647 * config/darwin.h (SUBTARGET_C_COMMON_OVERRIDE_OPTIONS): When
648 compiling Objective-C code for the NeXT runtime, default to using
649 ABI version 0 for 32-bit, and version 2 for 64-bit.
650
0a8134ca
JM
6512011-02-17 Joseph Myers <joseph@codesourcery.com>
652
653 * common.opt (optimize_fast): New Variable.
654 * opts.c (default_options_optimization): Use opts->x_optimize_fast
655 instead of local variable ofast.
656
0a256240
NP
6572011-02-17 Nicola Pero <nicola.pero@meta-innovation.com>
658
659 * doc/invoke.texi (fobjc-abi-version): Documented.
660 (fobjc-nilcheck): Documented.
661 (fno-nil-receiver): Updated documentation to refer to the NeXT ABI
662 version.
663
fa381cb2
JM
6642011-02-17 Joseph Myers <joseph@codesourcery.com>
665
666 PR driver/47390
667 * common.opt (export-dynamic): New Driver option.
668 * gcc.c (LINK_COMMAND_SPEC): Add comment about %{e*}.
669
5437eaa6
JM
6702011-02-17 Joseph Myers <joseph@codesourcery.com>
671
672 * config/rx/rx.h (LIB_SPEC): Match -msim not -msim*.
673
bb7e6d55
AO
6742011-02-17 Alexandre Oliva <aoliva@redhat.com>
675 Jan Hubicka <jh@suse.cz>
676
677 PR debug/47106
678 PR debug/47402
679 * cfgexpand.c (account_used_vars_for_block): Remove.
680 (estimated_stack_frame_size): Use referenced vars.
681 * tree-inline.c (remap_decl): Only mark VAR_DECLs as referenced
682 that were referenced in the original function. Test src_fn
683 rather than cfun. Drop redundant get_var_ann.
684 (setup_one_parameter): Drop redundant get_var_ann.
685 (declare_return_variable): Likewise.
686 (copy_decl_for_dup_finish): Mark VAR_DECLs referenced in src_fn.
687 (copy_arguments_for_versioning): Drop redundant get_var_ann.
688 * ipa-inline.c (compute_inline_parameters): Do not compute
689 disregard_inline_limits here.
bb7e6d55
AO
690 (compute_inlinable_for_current, pass_inlinable): New.
691 (pass_inline_parameters): Require PROP_referenced_vars.
692 * cgraphunit.c (cgraph_process_new_functions): Don't run
23e0d930 693 compute_inline_parameters explicitly unless function is in SSA form.
bb7e6d55
AO
694 (cgraph_analyze_function): Set .disregard_inline_limits.
695 * tree-sra.c (convert_callers): Compute inliner parameters
696 only for functions already in SSA form.
697
f181a8a7
JM
6982011-02-17 Joseph Myers <joseph@codesourcery.com>
699
700 * config/sparc/sparc.h (CPP_ENDIAN_SPEC): Don't handle
701 -mlittle-endian-data.
702
c6869789
JM
7032011-02-17 Joseph Myers <joseph@codesourcery.com>
704
705 * config/sparc/linux64.h (OPTION_DEFAULT_SPECS): Match -mfpu and
706 -mno-fpu, not -fpu and -no-fpu.
707 * config/sparc/sol2-bi.h (OPTION_DEFAULT_SPECS): Likewise.
708 * config/sparc/sparc.h (OPTION_DEFAULT_SPECS): Likewise.
709
fbf4bfd3
UB
7102011-02-17 Uros Bizjak <ubizjak@gmail.com>
711
712 PR target/43653
713 * config/i386/i386.c (ix86_secondary_reload): Handle SSE
714 input reload with PLUS RTX.
715
70be5dc7
JM
7162011-02-16 Joseph Myers <joseph@codesourcery.com>
717
718 * config/mips/mips.opt (mno-mdmx): Use Var(TARGET_MDMX, 0) instead
719 of InverseVar(MDMX).
720
30b1646e
JM
7212011-02-16 Joseph Myers <joseph@codesourcery.com>
722
723 * config/sh/embed-elf.h (LIBGCC_SPEC): Match -m4-340 instead of
724 --m4-340.
725
ab7b71e9
JM
7262011-02-16 Joseph Myers <joseph@codesourcery.com>
727
728 * config/mn10300/mn10300.opt (mno-crt0): New.
729
466f3f08
JM
7302011-02-16 Joseph Myers <joseph@codesourcery.com>
731
732 * config/m68k/uclinux.opt (static-libc): New Driver option.
733
8226cd7b
JM
7342011-02-16 Joseph Myers <joseph@codesourcery.com>
735
736 * config/m32c/m32c.h (LIB_SPEC): Match -msim not -msim*.
737
45cab1d7
JM
7382011-02-16 Joseph Myers <joseph@codesourcery.com>
739
740 * config/lm32/lm32.h (ASM_SPEC): Use %{muser-enabled} instead of
741 %{muser-extend-enabled}.
742
65aab64f
RG
7432011-02-16 Richard Guenther <rguenther@suse.de>
744
745 PR tree-optimization/47738
746 * tree-ssa-loop.c (run_tree_predictive_commoning): Return
747 the TODO from tree_predictive_commoning.
748
fc2fa4fb
JL
7492011-02-15 Jeff Law <law@redhat.com>
750
751 Revert
752 2011-01-25 Jeff Law <law@redhat.com>
753
754 PR rtl-optimization/37273
755 * ira-costs.c (scan_one_insn): Detect constants living in memory and
756 handle them like argument loads from stack slots. Do not double
757 count memory for memory constants and argument loads from stack slots.
758
4e380b8e
L
7592011-02-15 H.J. Lu <hongjiu.lu@intel.com>
760
761 PR middle-end/47725
762 * combine.c (cant_combine_insn_p): Revert the last change.
763
e3a69bb4
MM
7642011-02-15 Michael Meissner <meissner@linux.vnet.ibm.com>
765
766 PR target/47755
767 * config/rs6000/predicates.md (easy_vector_constant): Allow V2DI
768 mode for vector constants. Remove code that checks for TImode.
769
de650422
AO
7702011-02-15 Alexandre Oliva <aoliva@redhat.com>
771
772 PR debug/47106
773 PR debug/47402
774 * cgraph.h (compute_inline_parameters): Return void.
775 * ipa-inline.c (compute_inline_parameters): Adjust.
776
30925d94
AO
7772011-02-15 Alexandre Oliva <aoliva@redhat.com>
778
779 PR debug/47106
780 PR debug/47402
781 * tree-inline.h (estimated_stack_frame_size): Take cgraph node
782 rather than decl.
783 * cfgexpand.c (estimated_stack_frame_size): Likewise.
784 * ipa-inline.c (compute_inline_parameters): Adjust.
785
1b9a784a
AO
7862011-02-15 Alexandre Oliva <aoliva@redhat.com>
787
788 PR debug/47106
789 PR debug/47402
790 * tree-flow.h (FOR_EACH_REFERENCED_VAR): Add FN argument.
791 Adjust all users. Pass FN to...
792 * tree-flow-inline.h (first_referenced_var): ... this. Add
793 fn argument.
794 * ipa-struct-reorg.c: Adjust.
795 * tree-dfa.c: Adjust.
796 * tree-into-ssa.c: Adjust.
797 * tree-sra.c: Adjust.
798 * tree-ssa-alias.c: Adjust.
799 * tree-ssa-live.c: Adjust.
800 * tree-ssa.c: Adjust.
801 * tree-ssanames.c: Adjust.
802 * tree-tailcall.c: Adjust.
803
27c6b086
AO
8042011-02-15 Alexandre Oliva <aoliva@redhat.com>
805
806 PR debug/47106
807 PR debug/47402
808 * tree-flow.h (referenced_var_lookup): Add fn parameter.
809 Adjust all callers.
810 * tree-dfa.c (referenced_var_lookup): Use fn instead of cfun.
811 * tree-flow-inline.h: Adjust.
812 * gimple-pretty-print.c: Adjust.
813 * tree-into-ssa.c: Adjust.
814 * tree-ssa.c: Adjust.
815 * cfgexpand.c: Adjust.
816
679e8183
NF
8172011-02-15 Nathan Froyd <froydnj@codesourcery.com>
818
fbf4bfd3
UB
819 * config/iq2000/i2000.h (REG_CLASS_FROM_LETTER): Delete.
820 (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
821 (EXTRA_CONSTRAINT): Delete.
822 * config/iq2000/constraints.md: New file.
823 * config/iq2000/iq2000.md: Include it.
679e8183
NF
824 (define_insn ""): Delete.
825 (movsi_internal2, movhi_internal2, movqi_internal2): Delete
826 unsupported constraint letters from patterns.
827 (call_value, call_value_internal1): Likewise.
828 (call_value_multiple_internal1): Likewise.
829
a45d420a
NC
8302011-02-15 Nick Clifton <nickc@redhat.com>
831
832 * config/mn10300/mn10300.c: Include tm-constrs.h.
833 (struct liw_data): New data structure describing an LIW candidate
834 instruction.
835 (extract_bundle): Use struct liw_data. Allow small integer
836 operands for some instructions.
837 (check_liw_constraints): Use struct liw_data. Remove swapped
838 parameter. Add comments describing the checks. Fix bug when
839 assigning the source of liw1 to the source of liw2.
840 (liw_candidate): Delete. Code moved into extract_bundle.
841 (mn10300_bundle_liw): Use struct liw_data. Check constraints
842 before swapping.
843 * config/mn10300/predicates.md (liw_operand): New predicate.
844 Allows registers and small integer constants.
845 * config/mn10300/constraints.md (O): New constraint. Accetps
846 integers in the range -8 to +7 inclusive.
847 * config/mn10300/mn10300.md (movesi_internal): Add an alternative
848 for moving a small integer into a register. Give this alternative
849 LIW attributes.
850 (addsi3, subsi3, cmpsi, lshrsi3, ashrsi3): Likewise.
851 (ashlsi3): Likewise, plus give LIW attributes to the alternatives
852 using the J,K,L and M constraints,
853 (liw): Remove SI mode on second operands to allow for HI and QI
854 mode values.
855 (cmp_liw, liw_cmp): Likewise. Plus fix order of operands in the
856 instruction.
857
8a73faf1
L
8582011-02-15 H.J. Lu <hongjiu.lu@intel.com>
859
860 PR middle-end/47725
861 * combine.c (cant_combine_insn_p): Check zero/sign extended
862 hard registers.
863
48feba28
RG
8642011-02-15 Richard Guenther <rguenther@suse.de>
865
866 PR tree-optimization/47743
867 * tree-ssa-pre.c (phi_translate_1): If we didn't get a value-number
868 for a non-type-compatible VN lookup bail out.
869
ad1c1eeb
NF
8702011-02-15 Nathan Froyd <froydnj@codesourcery.com>
871
872 * config/fr30/constraints.md: New file.
873 * config/fr30/fr30.md: Include it.
874 * config/fr30/fr30.h (REG_CLASS_FROM_LETTER): Delete.
875 (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
876 (EXTRA_CONSTRAINT): Delete.
877
49ac143d
NF
8782011-02-15 Nathan Froyd <froydnj@codesourcery.com>
879
880 * config/frv/constraints.md: New file.
881 * config/frv/predicates.md: Include it.
882 * config/frv/frv.c (reg_class_from_letter): Delete.
883 (frv_option_override): Don't initialize it.
884 * config/frv/frv.h (REG_CLASS_FROM_LETTER): Delete.
885 (CONST_OK_FOR_I, CONST_OK_FOR_J, CONST_OK_FOR_K): Delete.
886 (CONST_OK_FOR_L, CONST_OK_FOR_M, CONST_OK_FOR_N): Delete.
887 (CONST_OK_FOR_O, CONST_OK_FOR_P, CONST_OK_FOR_LETTER_P): Delete.
888 (CONST_DOUBLE_OK_FOR_G, CONST_DOUBLE_OK_FOR_H): Delete.
889 (CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
890 (EXTRA_CONSTRAINT_FOR_Q, EXTRA_CONSTRAINT_FOR_R): Delete.
891 (EXTRA_CONSTRAINT_FOR_S, EXTRA_CONSTRAINT_FOR_T): Delete.
892 (EXTRA_CONSTRAINT_FOR_U, EXTRA_CONSTRAINT): Delete.
893 (EXTRA_MEMORY_CONSTRAINT, CONSTRAINT_LEN): Delete.
894 (REG_CLASS_FROM_CONSTRAINT): Delete.
895
c95f9494
JJ
8962011-02-15 Jakub Jelinek <jakub@redhat.com>
897
898 PR middle-end/47581
899 * config/i386/i386.c (ix86_compute_frame_size): Don't align offset
900 if frame size is 0 in a leaf function.
901
13aed611
RO
9022011-02-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
903
904 PR pch/14940
905 * config/alpha/host-osf.c: New file.
906 * config/alpha/x-osf: New file.
907 * config.host (alpha*-dec-osf*): Use it.
908
b09c3081
AS
9092011-02-14 Anatoly Sokolov <aesok@post.ru>
910
911 * config/rx/rx.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
912 * config/rx/rx-protos.h (rx_is_mode_dependent_addr): Remove.
913 * config/xtensa/xtensa.c (rx_is_mode_dependent_addr): Rename to...
914 (rx_mode_dependent_address_p): ...this. Make static. Change argument
915 type to const_rtx.
916 (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
917
d634083b
NF
9182011-02-14 Nathan Froyd <froydnj@codesourcery.com>
919
920 * config/stormy16/constraints.md: New file.
921 * config/stormy16/predicates.md (nonimmediate_nonstack_operand):
922 Use satisfies_constraint_Q and satisfies_constraint_R.
923 * config/stormy16/stomry16-protos.h (xstormy16_extra_constraint_p):
924 Delete.
925 (xstormy16_legitiamte_address_p): Declare.
926 * config/stormy16/stormy16.h (REG_CLASS_FROM_LETTER): Delete.
927 (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
928 (EXTRA_CONSTRAINT): Delete.
fbf4bfd3 929 * config/stormy16/stormy16.c (xstormy16_legitimate_address_p):
d634083b
NF
930 Un-staticize.
931 (xstormy16_extra_constraint_p): Delete.
932
c7dd803e
EB
9332011-02-14 Eric Botcazou <ebotcazou@adacore.com>
934
935 PR tree-optimization/46494
936 * loop-unroll.c (split_edge_and_insert): Adjust comment.
937 * loop-init.c (loop_optimizer_finalize): Do not call verify_flow_info.
938 (pass_rtl_loop_done): Add TODO_verify_flow.
939 * fwprop.c (pass_rtl_fwprop): Likewise.
940 * modulo-sched.c (pass_sms): Likewise.
941 * tree-ssa-dom.c (pass_dominator): Likewise.
942 * tree-ssa-loop-ch.c (pass_ch): Likewise.
943 * tree-ssa-loop.c (pass_complete_unrolli): Likewise.
944 (pass_tree_loop_done): Likewise.
945 * tree-ssa-pre.c (execute_pre): Likewise.
946 * tree-ssa-reassoc.c (pass_reassoc): Likewise.
947 * tree-ssa-sink.c (pass_sink_code): Likewise.
948 * tree-vrp.c (pass_vrp): Likewise.
949
c6150df6
NF
9502011-02-14 Nathan Froyd <froydnj@codesourcery.com>
951
c7dd803e
EB
952 * config/v850/constraints.md: New file.
953 * config/v850/v850.md: Include it.
954 * config/v850/predicates.md (reg_or_0_operand): Use
955 satisfies_constraint_G.
956 (special_symbolref_operand): Use satisfies_constraint_K.
957 * config/v850/v850.h (CONSTANT_ADDRESS_P): Use constraint_satisfied_p.
958 (GO_IF_LEGITIMATE_ADDRESS): Likewise.
959 (REG_CLASS_FROM_LETTER, INT_7_BITS, INT_8_BITS): Delete.
960 (CONST_OK_FOR_P, CONST_OK_FOR_LETTER_P): Delete.
961 (EXTRA_CONSTRAINT): Delete.
962 (CONST_OK_FOR_I, CONST_OK_FOR_J): Use insn_const_int_ok_for_constraint.
963 (CONST_OK_FOR_K, CONST_OK_FOR_L, CONST_OK_FOR_M): Likewise.
964 (CONST_OK_FOR_N, CONST_OK_FOR_O): Likewise.
c6150df6 965
30dd1ea3
AS
9662011-02-14 Anatoly Sokolov <aesok@post.ru>
967
968 PR target/47696
969 * config/avr/avr-devices.c (avr_mcu_types): Fix ATmega2560 device
970 description.
971
944f4bb3
NF
9722011-02-14 Nathan Froyd <froydnj@codesourcery.com>
973
974 * config/mcore/constraints.md: New file.
975 * config/mcore/mcore.md: Include it.
976 * config/mcore/mcore.c (reg_class_from_letter): Delete.
977 * config/mcore/mcore.h (reg_class_from_letter): Delete.
978 (REG_CLASS_FROM_LETTER): Delete.
979 (CONST_OK_FOR_I, CONST_OK_FOR_J, CONST_OK_FOR_L): Use
980 insn_const_int_ok_for_constraint.
981 (CONST_OK_FOR_K, CONST_OK_FOR_M, CONST_OK_FOR_N): Likewise.
982 (CONST_OK_FOR_O, CONST_OK_FOR_P): Likewise.
983 (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
984 (EXTRA_CONSTRAINT): Delete.
985
ad56a54c
RO
9862011-02-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
987
988 PR ada/41929
989 * config/sparc/sol2-unwind.h: Include <sys/frame.h>, <sys/stack.h>
990 (IS_SIGHANDLER): Define.
991 (sparc64_is_sighandler): New function, split off from
992 sparc64_fallback_frame_state.
993 (sparc_is_sighandler): New function, split off from
994 sparc_fallback_frame_state.
995 (sparc64_fallback_frame_state): Merge with ...
996 (sparc_fallback_frame_state): ... this into ...
997 (MD_FALLBACK_FRAME_STATE_FOR): ... this.
fbf4bfd3
UB
998 Change new_cfa to long. Remove regs_off, fpu_save_off, fpu_save.
999 Define nframes, mctx. Use IS_SIGHANDLER, handler_args, mctx, walk
1000 stack instead of hardcoded offsets.
ad56a54c 1001
fbf4bfd3 10022011-02-14 Andriy Gapon <avg@freebsd.org>
67932abf
AG
1003
1004 PR target/45808
1005 * config/freebsd-spec.h (FBSD_LIB_SPEC): Handle the shared case.
1006
029c8f3e
RW
10072011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1008
1009 * configure: Regenerate.
1010
a016dc83
JM
10112011-02-12 Joseph Myers <joseph@codesourcery.com>
1012
1013 PR driver/45731
1014 * gcc.c (asm_options): Correct spec matching --target-help.
1015
8957a0ec
MJ
10162011-02-12 Martin Jambor <mjambor@suse.cz>
1017
1018 * tree-cfg.c (verify_gimple_call): Return true upon invalid argument
1019 to gimple call error.
1020
6ef828bc
MS
10212011-02-12 Mike Stump <mikestump@comcast.net>
1022
1023 * config/frv/frv.h (TRANSFER_FROM_TRAMPOLINE): Canonicalize
1024 comments in backslash regions.
1025
a4015be5
MS
10262011-02-12 Mike Stump <mikestump@comcast.net>
1027 Jakub Jelinek <jakub@redhat.com>
1028 Iain Sandoe <iains@gcc.gnu.org>
1029
1030 PR target/47324
1031 * dwarf2out.c (output_cfa_loc): When required, apply the
1032 DWARF2_FRAME_REG_OUT macro to adjust register numbers.
1033 (output_loc_sequence): Likewise.
1034 (output_loc_operands_raw): Likewise.
1035 (output_loc_sequence_raw): Likewise.
1036 (output_cfa_loc): Likewise.
1037 (output_loc_list): Suppress register number adjustment when
1038 calling output_loc_sequence()
1039 (output_die): Likewise.
1040
5378dda2
AS
10412011-02-12 Anatoly Sokolov <aesok@post.ru>
1042
1043 * config/xtensa/xtensa.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST):
1044 Remove macros.
1045 * config/xtensa/xtensa.c (xtensa_register_move_cost,
1046 xtensa_memory_move_cost): New functions.
1047 (TARGET_REGISTER_MOVE_COST, TARGET_REGISTER_MOVE_COST): Define.
1048
f3d533d3
AO
10492011-02-12 Alexandre Oliva <aoliva@redhat.com>
1050
1051 PR lto/47225
1052 * configure.ac (gcc_cv_lto_plugin): Test for liblto_plugin.la
1053 in the current directory.
1054 * configure: Rebuilt.
1055
9d53403c
IS
10562011-02-12 Iain Sandoe <iains@gcc.gnu.org>
1057
1058 * config/darwin.c (darwin_override_options): Add a hunk missed
fbf4bfd3 1059 from the commit of r168571. Trim comment line lengths and
9d53403c
IS
1060 correct indents of the preceding block.
1061
a350a6c8
IS
10622011-02-12 Iain Sandoe <iains@gcc.gnu.org>
1063
1064 * gcc.c (driver_handle_option): Concatenate the argument to -F with
1065 the switch.
1066
bab79a40
JM
10672011-02-11 Joseph Myers <joseph@codesourcery.com>
1068
1069 * common.opt (nostartfiles): New Driver option.
1070
1bbc6693
XDL
10712011-02-11 Xinliang David Li <davidxl@google.com>
1072
1073 PR tree-optimization/47707
1074 * tree-chrec.c (convert_affine_scev): Keep type precision.
1075
1da7d8c0
EB
10762011-02-11 Eric Botcazou <ebotcazou@adacore.com>
1077
1078 PR tree-optimization/47420
1079 * ipa-split.c (visit_bb): Punt on any kind of GIMPLE_RESX.
1080
10812011-02-11 Pat Haugen <pthaugen@us.ibm.com>
3f82421f
PH
1082
1083 PR rtl-optimization/47614
1084 * rtl.h (check_for_inc_dec): Declare.
1085 * dse.c (check_for_inc_dec): Externalize...
1086 * postreload.c (reload_cse_simplify): ...use it before deleting stmt.
1087 (reload_cse_simplify_operands): Don't simplify opnds with side effects.
1088
4df47bca
JM
10892011-02-11 Joseph Myers <joseph@codesourcery.com>
1090
1091 PR driver/47678
1092 * gcc.c (main): Do not compile inputs if there were errors in
1093 option handling.
1094 * opts-common.c (read_cmdline_option): Check for wrong language
1095 after other error checks.
1096
61502ca8
NF
10972011-02-11 Nathan Froyd <froydnj@codesourcery.com>
1098
1099 * cgraph.c: Fix comment typos.
1100 * cgraph.h: Likewise.
1101 * cgraphunit.c: Likewise.
1102 * ipa-cp.c: Likewise.
1103 * ipa-inline.c: Likewise.
1104 * ipa-prop.c: Likewise.
1105 * ipa-pure-const.c: Likewise.
1106 * ipa-ref.c: Likewise.
1107 * ipa-reference.c: Likewise.
1108
b63f974e
JJ
11092011-02-11 Jakub Jelinek <jakub@redhat.com>
1110
d50c5e0c
JJ
1111 PR debug/47684
1112 * tree-predcom.c (single_nonlooparound_use): Ignore debug uses.
b63f974e 1113
6dd2a13c
RO
11142011-02-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1115
1116 PR testsuite/47400
1117 * doc/sourcebuild.texi (Require Support): Document
1118 dg-require-ascii-locale.
1119
4a087ccf
MX
11202011-02-11 Mingjie Xing <mingjie.xing@gmail.com>
1121
1122 * doc/lto.texi (Write summary): Fix missing parentheses.
1123
a4403164
DD
11242011-02-10 DJ Delorie <dj@redhat.com>
1125
1126 * config/m32c/m32c.c (m32c_option_override): Disable
1127 -fcombine-stack-adjustments until flag value tracking and compare
1128 optimization can be rewritten.
1129
4fac45bd
PB
11302011-02-10 Peter Bergner <bergner@vnet.ibm.com>
1131
1132 * config/rs6000/linux64.h (PROCESSOR_DEFAULT): Change to
1133 PROCESSOR_POWER7.
1134 (PROCESSOR_DEFAULT64): Likewise.
1135
72602cd1
RH
11362011-02-10 Richard Henderson <rth@redhat.com>
1137
1138 * config/rx/predicates.md (rx_zs_comparison_operator): Revert
1139 change from 2011-02-03.
1140 * config/rx/rx.c (flags_from_code): Likewise.
1141 (rx_print_operand) ['B']: For LT/GE, use lt/ge if overflow flag
1142 is valid, n/pz otherwise.
1143 (rx_select_cc_mode): Return CCmode if Y is not zero.
1144
ea57f573
RG
11452011-02-10 Richard Guenther <rguenther@suse.de>
1146
ea4c3e65 1147 * tree-ssa-structalias.c (bitpos_of_field): Use BITS_PER_UNIT, not 8.
ea57f573 1148
92b1d23b
RG
11492011-02-10 Richard Guenther <rguenther@suse.de>
1150
1151 PR tree-optimization/47677
1152 * tree-vrp.c (vrp_bitmap_equal_p): Fix comparison of empty bitmaps.
1153
525a2d06
JJ
11542011-02-10 Jakub Jelinek <jakub@redhat.com>
1155
1156 PR target/47665
1157 * combine.c (make_compound_operation): Only change shifts into
1158 multiplication for SCALAR_INT_MODE_P.
1159
06c969bd
JZ
11602011-02-10 Jie Zhang <jie@codesourcery.com>
1161
1162 PR testsuite/47622
1163 Revert
1164 2011-02-05 Jie Zhang <jie@codesourcery.com>
1165 PR debug/42631
1166 * web.c (entry_register): Don't clobber the number of the
1167 first uninitialized reference in used[].
1168
282ec48e
RG
11692011-02-09 Richard Guenther <rguenther@suse.de>
1170
1171 PR tree-optimization/47664
1172 * ipa-inline.c (cgraph_decide_inlining_incrementally): Visit
1173 all edges again.
1174
df98c3e8
DE
11752011-02-09 David Edelsohn <dje.gcc@gmail.com>
1176
d0f21cd6
DE
1177 PR target/46481
1178 PR target/47032
df98c3e8
DE
1179 * config/rs6000/aix61.h (PROCESSOR_DEFAULT): Change to
1180 PROCESSOR_POWER7.
1181 (PROCESSOR_DEFAULT64): Same.
1182 (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Delete.
1183
67b6839f
RO
11842011-02-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1185
1186 * config/mips/iris6.h (TARGET_C99_FUNCTIONS): Define.
1187
4fd73214
MJ
11882011-02-09 Martin Jambor <mjambor@suse.cz>
1189
1190 PR middle-end/45505
1191 * tree-sra.c (struct access): New flags grp_scalar_read and
1192 grp_scalar_write. Changed description of assignment read and write
1193 flags.
1194 (dump_access): Dump new flags, reorder all of them.
1195 (sort_and_splice_var_accesses): Set the new flag accordingly, use them
1196 to detect multiple scalar reads.
1197 (analyze_access_subtree): Use the new scalar read write flags instead
1198 of the old flags. Adjusted comments.
1199
91140cd3
DD
12002011-02-08 DJ Delorie <dj@redhat.com>
1201
1202 PR target/47548
1203 * config/m32c/m32c.c (m32c_subreg): Don't try to validate interim
1204 patterns.
1205
4254bbfe
JM
12062011-02-08 Joseph Myers <joseph@codesourcery.com>
1207
1208 * config/m68k/uclinux.opt: New.
1209 * config.gcc (m68k-*-uclinux*): Use m68k/uclinux.opt.
1210
f1fda84e
JM
12112011-02-08 Joseph Myers <joseph@codesourcery.com>
1212
1213 * config/cris/elf.opt (sim): New Driver option.
1214
4933ae74
JM
12152011-02-08 Joseph Myers <joseph@codesourcery.com>
1216
1217 * config/xtensa/elf.opt: New.
1218 * config.gcc (xtensa*-*-elf*): Use xtensa/elf.opt.
1219
4ad70280
JM
12202011-02-08 Joseph Myers <joseph@codesourcery.com>
1221
1222 * config/vax/elf.opt: New.
1223 * config.gcc (vax-*-linux*, vax-*-netbsdelf*): Use vax/elf.opt.
1224
20893707
JM
12252011-02-08 Joseph Myers <joseph@codesourcery.com>
1226
1227 * config/rs6000/aix64.opt (posix, pthread): New Driver options.
1228
b8e7038e
JM
12292011-02-08 Joseph Myers <joseph@codesourcery.com>
1230
1231 * config/gnu-user.opt: New.
1232 * config.gcc (*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu |
1233 *-*-knetbsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu,
1234 *-*-uclinux*): Use gnu-user.opt.
1235
e1c5225a
TS
12362011-02-08 Thomas Schwinge <thomas@schwinge.name>
1237
1238 * config/gnu.h (CPP_SPEC, LIB_SPEC): Remove handling of -bsd option.
1239 * config/i386/gnu.h (CPP_SPEC): Likewise.
1240
5e46b0c6
ILT
12412011-02-08 Ian Lance Taylor <iant@google.com>
1242
1243 * common.opt (fcx-limited-range): Add SetByCombined flag.
1244 (ffinite-math-only, fmath-errno, frounding-math): Likewise.
1245 (fsignaling-nans, fsigned-zeros, ftrapping-math): Likewise.
1246 (fassociative-math, freciprocal-math): Likewise.
1247 (funsafe-math-optimizations): Likewise.
1248 * opth-gen.awk: Handle SetByCombined.
1249 * optc-gen.awk: Likewise.
ea4c3e65 1250 * opts.c (set_fast_math_flags): Don't override flag if set by frontend.
5e46b0c6
ILT
1251 (set_unsafe_math_optimizations_flags): Likewise.
1252 * doc/options.texi (Option properties): Document SetByCombined.
1253
32243d46
JM
12542011-02-08 Joseph Myers <joseph@codesourcery.com>
1255
1256 * config.gcc (arc-*, alpha*-*-gnu*, arm*-*-netbsd*, arm-*-pe*,
1257 i[34567]86-*-interix3*, i[34567]86-*-netbsd*, i[34567]86-*-pe,
1258 m68hc11-*-*, m6811-*-*, m68hc12-*-*, m6812-*-*,
1259 m68k-*-uclinuxoldabi*, mcore-*-pe*, powerpc*-*-gnu*,
1260 sh*-*-symbianelf*, vax-*-netbsd*): Mark obsolete.
1261
479c1fb3
SP
12622011-02-08 Sebastian Pop <sebastian.pop@amd.com>
1263
1264 PR tree-optimization/46834
1265 PR tree-optimization/46994
1266 PR tree-optimization/46995
1267 * graphite-sese-to-poly.c (used_outside_reduction): New.
1268 (detect_commutative_reduction): Call used_outside_reduction.
1269 (rewrite_commutative_reductions_out_of_ssa_close_phi): Call
1270 translate_scalar_reduction_to_array only when at least one
1271 loop-phi/close-phi tuple has been detected.
1272
3865a06f
RG
12732011-02-08 Richard Guenther <rguenther@suse.de>
1274
1275 PR middle-end/47639
1276 * tree-vect-generic.c (expand_vector_operations_1): Update
1277 stmts here ...
1278 (expand_vector_operations): ... not here. Cleanup EH info
1279 and the CFG if required.
1280
62902f3f
RG
12812011-02-08 Richard Guenther <rguenther@suse.de>
1282
1283 PR tree-optimization/47641
1284 * tree-ssa.c (execute_update_addresses_taken): For asm outputs
1285 require type compatibility.
1286
0efb9d64
AK
12872011-02-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1288
1289 * gimple-low.c (lower_function_body): Don't remove the location of
1290 the return statement here.
1291 (lower_gimple_return): Do it here instead but only if the return
1292 statement is actually used twice.
1293
034b8ae4
RG
12942011-02-08 Richard Guenther <rguenther@suse.de>
1295
1296 PR tree-optimization/47632
1297 * tree-ssa-forwprop.c (remove_prop_source_from_use): Remove
1298 unused up_to_stmt parameter, return whether cfg-cleanup is
1299 necessary, remove EH info properly.
1300 (forward_propagate_into_gimple_cond): Adjust caller.
1301 (forward_propagate_into_cond): Likewise.
1302 (forward_propagate_comparison): Likewise.
1303 (tree_ssa_forward_propagate_single_use_vars): Make
1304 forward_propagate_comparison case similar to the two others.
1305
298362c8
NC
13062011-02-08 Nick Clifton <nickc@redhat.com>
1307
1308 * config/mn10300/mn10300.opt (mliw): New command line option.
1309 * config/mn10300/mn10300.md (UNSPEC_LIW): New unspec.
1310 (liw_bundling): New automaton.
1311 (liw): New attribute.
1312 (liw_op): New attribute.
1313 (liw_op1, liw_op2, liw_both, liw_either): New reservations.
1314 (movsi_internal): Add LIW attributes.
1315 (andsi3): Likewise.
1316 (iorsi3): Likewise.
1317 (xorsi3): Likewise.
1318 (addsi3): Separate register and immediate alternatives.
1319 Add LIW attributes.
1320 (subsi3): Likewise.
1321 (cmpsi): Likewise.
1322 (aslsi3): Likewise.
1323 (lshrsi3): Likewise.
1324 (ashrsi3): Likewise.
1325 (liw): New pattern.
1326 * config/mn10300/mn10300.c (liw_op_names): New
1327 (mn10300_print_operand): Handle 'W' operand descriptor.
1328 (extract_bundle): New function.
1329 (check_liw_constraints): New function.
1330 (liw_candidate): New function.
1331 (mn10300_bundle_liw): New function.
1332 (mn10300_reorg): New function.
1333 (TARGET_MACHINE_DEPENDENT_REORG): Define.
1334 (TARGET_DEFAULT_TARGET_FLAGS): Add MASK_ALLOW_LIW.
1335 * config/mn10300/mn10300.h (TARGET_CPU_CPP_BUILTINS): Define
1336 __LIW__ or __NO_LIW__.
1337 * doc/invoke.texi: Describe the -mliw command line option.
1338
90488014
JDA
13392011-02-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1340
1341 * config.gcc (hppa[12]*-*-hpux11*): Don't set extra_parts.
1342 * config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
1343 pthread_mutex_unlock): Remove.
1344 * config/pa/t-pa-hpux11: Remove rules to build pthread stubs.
1345 * config/pa/t-pa64: Likewise.
1346 * config/pa/pa64-hpux.h (LIB_SPEC): In static links, link against
1347 shared libc if not linking against libpthread.
1348 * config/pa/pa-hpux11.h (LIB_SPEC): Likewise.
1349
689ff841
IS
13502011-02-07 Iain Sandoe <iains@gcc.gnu.org>
1351
1352 PR target/47558
1353 * config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Put -lSystem first
1354 on 10.6 and later to ensure that we always use the unwinder from
1355 the system. Only add -no_compact_unwind when tarteting darwin
1356 10.6 or later.
1357
821014aa
SE
13582011-02-07 Steve Ellcey <sje@cup.hp.com>
1359
1360 PR target/46997
1361 * vect.md (vec_interleave_highv2sf): Change fmix for TARGET_BIG_ENDIAN.
1362 (vec_interleave_lowv2sf): Ditto.
1363 (vec_extract_evenv2sf): Add TARGET_BIG_ENDIAN check.
1364 (vec_extract_oddv2sf): Ditto.
1365
41cf94fb
MS
13662011-02-07 Mike Stump <mikestump@comcast.net>
1367
62dea57d 1368 PR target/42333
41cf94fb
MS
1369 Add __ieee_divdc3 entry point.
1370 * config/i386/darwin.h (DECLARE_LIBRARY_RENAMES): Retain ___divdc3
1371 entry point.
1372 (SUBTARGET_INIT_BUILTINS): Call darwin_rename_builtins.
1373 * config/i386/i386.c (TARGET_INIT_LIBFUNCS): Likewise.
1374 * config/darwin.c (darwin_rename_builtins): Add.
1375 * config/darwin-protos.h (darwin_rename_builtins): Add.
1376
ee09a3dd
MM
13772011-02-07 Michael Meissner <meissner@linux.vnet.ibm.com>
1378
1379 PR target/47636
1380 * config/rs6000/rs6000.md (rsqrt<mode>2): Use the correct macro
1381 for the condition.
1382
83296cd0
MS
13832011-02-07 Mike Stump <mikestump@comcast.net>
1384
ea4c3e65 1385 * config/darwin.opt (mmacosx-version-min): Update default OS version.
83296cd0 1386
0f4e946f
DC
13872011-02-07 Denis Chertykov <chertykov@gmail.com>
1388
1389 PR target/47534
1390 * config/avr/libgcc.S (exit): Move .endfunc
1391
1ec87690
RG
13922011-02-07 Richard Guenther <rguenther@suse.de>
1393
1394 PR tree-optimization/47615
1395 * tree-ssa-sccvn.h (run_scc_vn): Take a vn-walk mode argument.
1396 * tree-ssa-sccvn.c (default_vn_walk_kind): New global.
1397 (run_scc_vn): Initialize it.
1398 (visit_reference_op_load): Use it.
1399 * tree-ssa-pre.c (execute_pre): Use VN_WALK if in PRE.
1400
b46ae6da
UW
14012011-02-07 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1402
1403 * config/spu/spu.c (spu_init_libfuncs): Install SImode and
1404 DImode trapping arithmetic libfuncs.
1405
c0aae19c
RG
14062011-02-07 Richard Guenther <rguenther@suse.de>
1407
1408 PR tree-optimization/47621
1409 * tree-ssa.c (non_rewritable_lvalue_p): New function, split out from
1410 two duplicates ...
1411 (execute_update_addresses_taken): ... here. Make it more
1412 conservative in what we accept.
1413
295d926b
JM
14142011-02-06 Joseph Myers <joseph@codesourcery.com>
1415
1416 * config/sparc/freebsd.h (ASM_SPEC): Define.
1417 * config/sparc/vxworks.h (ASM_SPEC): Define.
1418
bdeb2471
JM
14192011-02-06 Joseph Myers <joseph@codesourcery.com>
1420
1421 * config/sparc/sol2-bi.h (CC1_SPEC): Remove %{sun4:} %{target:}.
1422
d5d3781a
SB
14232011-02-06 Steven Bosscher <steven@gcc.gnu.org>
1424
1425 * doc/invoke.texi: Remove reference to compiler internals from
1426 user documentation.
1427
1428 * reg-notes.def: Remove REG_VALUE_PROFILE.
1429 * combine.c (distribute_notes): Do not handle REG_VALUE_PROFILE.
1430
c42c09fc
JJ
14312011-02-05 Jakub Jelinek <jakub@redhat.com>
1432
1433 PR middle-end/47610
1434 * varasm.c (default_section_type_flags): If decl is NULL,
38be4072 1435 and name is .data.rel.ro or .data.rel.ro.local, set SECTION_RELRO bit.
c42c09fc 1436
beea2755
JZ
14372011-02-05 Jie Zhang <jie@codesourcery.com>
1438
1439 PR debug/42631
1440 * web.c (entry_register): Don't clobber the number of the
1441 first uninitialized reference in used[].
1442
a130584a
SP
14432011-02-04 Sebastian Pop <sebastian.pop@amd.com>
1444
1445 PR tree-optimization/46194
1446 * tree-data-ref.c (analyze_miv_subscript): Remove comment.
1447 (build_classic_dist_vector_1): Do not represent classic distance
1448 vectors when the access functions are variating in different loops.
1449
962101ac
JM
14502011-02-04 Joseph Myers <joseph@codesourcery.com>
1451
1452 * config/mips/iris6.opt: New.
1453 * config.gcc (mips-sgi-irix6.5*): Use mips/iris6.opt.
1454
55eaaa5b
RH
14552011-02-04 Richard Henderson <rth@redhat.com>
1456 Steve Ellcey <sje@cup.hp.com>
1457
1458 PR target/46997
1459 * config/ia64/predicates.md (mux1_brcst_element): New.
1460 * config/ia64/ia64-protos.h (ia64_unpack_assemble): New.
1461 * config/ia64/ia64.c (ia64_unpack_assemble): New.
1462 (ia64_unpack_sign): New.
1463 (ia64_expand_unpack): Rewrite using new routines.
1464 (ia64_expand_widen_sum): Ditto.
1465 (ia64_expand_dot_prod_v8qi): Ditto.
1466 * config/ia64/vect.md (mulv8qi3): Rewrite to use new
1467 routines, add endian check.
1468 (pmpy2_even): Rename from pmpy2_r, add endian check.
1469 (pmpy2_odd): Rename from pmpy2_l, add endian check.
1470 (vec_widen_smult_lo_v4hi): Rewrite using new routines.
1471 (vec_widen_smult_hi_v4hi): Ditto.
1472 (vec_widen_umult_lo_v4hi): Ditto.
1473 (vec_widen_umult_hi_v4hi): Ditto.
1474 (mulv2si3): Change endian checks.
1475 (sdot_prodv4hi): Rewrite with new calls.
1476 (udot_prodv4hi): New.
1477 (vec_pack_ssat_v4hi): Add endian check.
1478 (vec_pack_usat_v4hi): Ditto.
1479 (vec_pack_ssat_v2si): Ditto.
1480 (max1_even): Rename from max1_r, add endian check.
1481 (max1_odd): Rename from max1_l, add endian check.
1482 (*mux1_rev): Format change.
1483 (*mux1_mix): Ditto.
1484 (*mux1_shuf): Ditto.
1485 (*mux1_alt): Ditto.
1486 (*mux1_brcst_v8qi): Use new predicate.
1487 (vec_extract_evenv8qi): Remove endian check.
1488 (vec_extract_oddv8qi): Ditto.
1489 (vec_interleave_lowv4hi): Format change.
1490 (vec_interleave_highv4hi): Ditto.
1491 (mix2_even): Rename from mix2_r, add endian check.
1492 (mix2_odd): Rename from mux2_l, add endian check.
1493 (*mux2): Fix mask setting for TARGET_BIG_ENDIAN.
1494 (vec_extract_evenodd_helper): Format change.
1495 (vec_extract_evenv4hi): Remove endian check.
1496 (vec_extract_oddv4hi): Remove endian check.
1497 (vec_interleave_lowv2si): Format change.
1498 (vec_interleave_highv2si): Format change.
1499 (vec_initv2si): Remove endian check.
1500 (vecinit_v2si): Add endian check.
1501 (reduc_splus_v2sf): Add endian check.
1502 (reduc_smax_v2sf): Ditto.
1503 (reduc_smin_v2sf): Ditto.
1504 (vec_initv2sf): Remove endian check.
1505 (fpack): Add endian check.
1506 (fswap): Add endian check.
1507 (vec_interleave_highv2sf): Add endian check.
1508 (vec_interleave_lowv2sf): Add endian check.
1509 (fmix_lr): Add endian check.
1510 (vec_setv2sf): Format change.
1511 (*vec_extractv2sf_0_be): Use shift to extract operand.
1512 (*vec_extractv2sf_1_be): New.
1513 (vec_pack_trunc_v4hi): Add endian check.
1514 (vec_pack_trunc_v2si): Format change.
1515
dcde5957
JJ
15162011-02-04 Jakub Jelinek <jakub@redhat.com>
1517
1518 PR inline-asm/23200
1519 * tree-ssa-ter.c (is_replaceable_p): Add TER argument. Don't
38be4072 1520 do bb, locus and block comparison and disallow loads if it is not set.
dcde5957
JJ
1521 (stmt_is_replaceable_p): New function.
1522 (process_replaceable, find_replaceable_in_bb): Adjust is_replaceable_p
1523 callers.
1524 * expr.c (expand_expr_real_1) <case SSA_NAME>: If
1525 get_gimple_for_ssa_name try for EXPAND_INITIALIZER harder to use
1526 SSA_NAME_DEF_STMT.
1527 * tree-flow.h (stmt_is_replaceable_p): New prototype.
1528
a64a8e5a
JM
15292011-02-04 Joseph Myers <joseph@codesourcery.com>
1530
1531 * config/rs6000/xilinx.opt: New.
1532 * config.gcc (powerpc-xilinx-eabi*): Use rs6000/xilinx.opt.
1533
4da2ed2f
JM
15342011-02-04 Joseph Myers <joseph@codesourcery.com>
1535
1536 * config/mips/mips.opt (EB, EL, noasmopt): New Driver options.
1537
a6e508f9
AS
15382011-02-03 Anatoly Sokolov <aesok@post.ru>
1539
1540 * config/xtensa/xtensa.h (PREFERRED_RELOAD_CLASS,
1541 PREFERRED_OUTPUT_RELOAD_CLASS): Remove.
1542 * config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class,
1543 secondary_reload_info, xtensa_secondary_reload): Remove.
1544 * config/xtensa/xtensa.c (TARGET_PREFERRED_RELOAD_CLASS,
1545 TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
1546 (xtensa_preferred_reload_class): Make static. Change return and
1547 'rclass' argument type to reg_class_t. Remove 'isoutput' argument.
1548 Use CONST_DOUBLE_P predicate.
1549 (xtensa_preferred_output_reload_class): New function.
1550 (xtensa_secondary_reload): Make static.
1551
82dc0de3
JM
15522011-02-03 Joseph Myers <joseph@codesourcery.com>
1553
1554 * config/microblaze/microblaze.opt (Zxl-mode-bootstrap,
1555 Zxl-mode-executable, Zxl-mode-novectors, Zxl-mode-xilkernel,
1556 Zxl-mode-xmdstub, mxl-mode-xilkernel): New Driver options.
1557
7fece979
JJ
15582011-02-03 Jakub Jelinek <jakub@redhat.com>
1559
1560 PR middle-end/31490
1561 * output.h (SECTION_RELRO): Define.
1562 (SECTION_MACH_DEP): Adjust.
1563 (get_variable_section): New prototype.
1564 * varpool.c (varpool_finalize_named_section_flags): New function.
1565 (varpool_assemble_pending_decls): Call it.
1566 * cgraph.h (varpool_finalize_named_section_flags): New prototype.
1567 * cgraphunit.c (cgraph_output_in_order): Call
1568 varpool_finalize_named_section_flags.
1569 * varasm.c (get_section): Allow section flags conflicts between
1570 relro and read-only sections if the section hasn't been declared yet.
1571 Set SECTION_OVERRIDE after diagnosing section type conflict.
1572 (get_variable_section): No longer static.
1573 (default_section_type_flags): Use SECTION_WRITE | SECTION_RELRO for
1574 readonly sections that need relocations.
1575 (decl_readonly_section_1): New function.
1576 (decl_readonly_section): Use it.
1577
1578 Revert:
509d65dd 1579 2010-11-17 Dinar Temirbulatov <dtemirbulatov@gmail.com>
7fece979
JJ
1580 Steve Ellcey <sje@cup.hp.com>
1581
1582 PR middle-end/31490
1583 * varasm.c (categorize_decl_for_section): Ignore reloc_rw_mask
1584 if section attribute used.
1585
d18d5478
JJ
15862011-02-03 Jakub Jelinek <jakub@redhat.com>
1587
1588 * config/darwin.h (SECTION_NO_ANCHOR): Remove.
1589 * config/darwin.c (SECTION_NO_ANCHOR): Define.
1590 (darwin_init_sections): Remove assertion.
1591
6479ed4b
NC
15922011-02-03 Nick Clifton <nickc@redhat.com>
1593
1594 * config/rx/predicates.md (rx_zs_comparison_operator): Remove
1595 lt and ge.
38be4072 1596 * config/rx/rx.md (abssi2_flags): Use CC_ZSmode rather than CC_ZSOmode.
6479ed4b
NC
1597 * config/rx/rx.c (rx_print_operand): Use "lt" and "ge" suffixes
1598 instead of "n" and "pz".
1599 (flags_from_code): LT and GE tests need CC_FLAG_O as well as
1600 CC_FLAG_S.
1601
89843f5d
JJ
16022011-02-03 Jakub Jelinek <jakub@redhat.com>
1603
65450d64
JJ
1604 PR target/47312
1605 * expr.c (expand_expr_real_2) <case FMA_EXPR>: If target doesn't expand
1606 fma, expand FMA_EXPR as fma{,f,l} call.
1607
7d58701c
JJ
1608 PR lto/47274
1609 * lto-streamer-out.c (write_symbol): When writing kind and visibility,
1610 copy them into a unsigned char variable and pass address of it to
1611 lto_output_data_stream.
1612
89843f5d
JJ
1613 PR target/47564
1614 * toplev.c (target_reinit): Save and restore *crtl and regno_reg_rtx
1615 around backend_init_target and lang_dependent_init_target calls.
1616 * cgraphunit.c (cgraph_debug_gimple_stmt): New function.
1617 (verify_cgraph_node): Don't call set_cfun here. Use
1618 cgraph_debug_gimple_stmt instead of debug_gimple_stmt.
1619 Set error_found for incorrectly represented calls to thunks.
1620
4deef538
AO
16212011-02-03 Alexandre Oliva <aoliva@redhat.com>
1622
1623 PR debug/43092
1624 PR rtl-optimization/43494
1625 * rtl.h (for_each_inc_dec_fn): New type.
1626 (for_each_inc_dec): Declare.
1627 * rtlanal.c (struct for_each_inc_dec_ops): New type.
1628 (for_each_inc_dec_find_inc_dec): New fn.
1629 (for_each_inc_dec_find_mem): New fn.
1630 (for_each_inc_dec): New fn.
1631 * dse.c (struct insn_size): Remove.
1632 (replace_inc_dec, replace_inc_dec_mem): Remove.
1633 (emit_inc_dec_insn_before): New fn.
1634 (check_for_inc_dec): Use it, along with for_each_inc_dec.
1635 (canon_address): Pass mem modes to cselib_lookup.
1636 * cselib.h (cselib_lookup): Add memmode argument. Adjust callers.
1637 (cselib_lookup_from_insn): Likewise.
1638 (cselib_subst_to_values): Likewise.
1639 * cselib.c (find_slot_memmode): New var.
1640 (cselib_find_slot): New fn. Use it instead of
1641 htab_find_slot_with_hash everywhere.
1642 (entry_and_rtx_equal_p): Use find_slot_memmode.
1643 (autoinc_split): New fn.
1644 (rtx_equal_for_cselib_p): Rename and implement in terms of...
1645 (rtx_equal_for_cselib_1): ... this. Take memmode, pass it on.
1646 Deal with autoinc. Special-case recursion into MEMs.
1647 (cselib_hash_rtx): Likewise.
1648 (cselib_lookup_mem): Infer pmode from address mode. Distinguish
1649 address and MEM modes.
1650 (cselib_subst_to_values): Add memmode, pass it on.
1651 Deal with autoinc.
1652 (cselib_lookup): Add memmode argument, pass it on.
1653 (cselib_lookup_from_insn): Add memmode.
1654 (cselib_invalidate_rtx): Discard obsolete push_operand handling.
1655 (struct cselib_record_autoinc_data): New.
1656 (cselib_record_autoinc_cb): New fn.
1657 (cselib_record_sets): Use it, along with for_each_inc_dec. Pass MEM
1658 mode to cselib_lookup. Reset autoinced REGs here instead of...
1659 (cselib_process_insn): ... here.
1660 * var-tracking.c (replace_expr_with_values, use_type): Pass MEM mode
1661 to cselib_lookup.
1662 (add_uses): Likewise, also to cselib_subst_to_values.
1663 (add_stores): Likewise.
1664 * sched-deps.c (add_insn_mem_dependence): Pass mode to
1665 cselib_subst_to_values.
1666 (sched_analyze_1, sched_analyze_2): Likewise. Adjusted.
1667 * gcse.c (do_local_cprop): Adjusted.
1668 * postreload.c (reload_cse_simplify_set): Adjusted.
1669 (reload_cse_simplify_operands): Adjusted.
1670 * sel-sched-dump (debug_mem_addr_value): Pass mode.
1671
1551d44a
AO
16722011-02-03 Alexandre Oliva <aoliva@redhat.com>
1673
1674 PR tree-optimization/45122
1675 * tree-ssa-loop-niter.c (number_of_iterations_exit): Don't make
1676 unsafe assumptions when there's more than one loop exit.
1677
c9485473
MM
16782011-02-02 Michael Meissner <meissner@linux.vnet.ibm.com>
1679
1680 PR target/47272
1681 * doc/extend.texi (PowerPC AltiVec/VSX Built-in Functions):
1682 Document using vector double with the load/store builtins, and
1683 that the load/store builtins always use Altivec instructions.
1684
1685 * config/rs6000/vector.md (vector_altivec_load_<mode>): New insns
1686 to use altivec memory instructions, even on VSX.
1687 (vector_altivec_store_<mode>): Ditto.
1688
1689 * config/rs6000/rs6000-protos.h (rs6000_address_for_altivec): New
1690 function.
1691
1692 * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
1693 V2DF, V2DI support to load/store overloaded builtins.
1694
1695 * config/rs6000/rs6000-builtin.def (ALTIVEC_BUILTIN_*): Add
1696 altivec load/store builtins for V2DF/V2DI types.
1697
1698 * config/rs6000/rs6000.c (rs6000_option_override_internal): Don't
1699 set avoid indexed addresses on power6 if -maltivec.
1700 (altivec_expand_ld_builtin): Add V2DF, V2DI support, use
1701 vector_altivec_load/vector_altivec_store builtins.
1702 (altivec_expand_st_builtin): Ditto.
1703 (altivec_expand_builtin): Add VSX memory builtins.
1704 (rs6000_init_builtins): Add V2DI types to internal types.
1705 (altivec_init_builtins): Add support for V2DF/V2DI altivec
1706 load/store builtins.
1707 (rs6000_address_for_altivec): Insure memory address is appropriate
1708 for Altivec.
1709
1710 * config/rs6000/vsx.md (vsx_load_<mode>): New expanders for
1711 vec_vsx_ld and vec_vsx_st.
1712 (vsx_store_<mode>): Ditto.
1713
1714 * config/rs6000/rs6000.h (RS6000_BTI_long_long): New type
1715 variables to hold long long types for VSX vector memory builtins.
1716 (RS6000_BTI_unsigned_long_long): Ditto.
1717 (long_long_integer_type_internal_node): Ditti.
1718 (long_long_unsigned_type_internal_node): Ditti.
1719
1720 * config/rs6000/altivec.md (UNSPEC_LVX): New UNSPEC.
1721 (altivec_lvx_<mode>): Make altivec_lvx use a mode iterator.
1722 (altivec_stvx_<mode>): Make altivec_stvx use a mode iterator.
1723
1724 * config/rs6000/altivec.h (vec_vsx_ld): Define VSX memory builtin
1725 short cuts.
1726 (vec_vsx_st): Ditto.
1727
b24d1acf
JM
17282011-02-02 Joseph Myers <joseph@codesourcery.com>
1729
1730 * config/pa/pa-hpux10.opt: New.
1731 * config/hpux11.opt (pthread): New Driver option.
1732 * config/pa/pa-hpux.opt (nolibdld, rdynamic): New Driver options.
1733 * config.gcc (hppa[12]*-*-hpux10*): Use pa/pa-hpux10.opt.
1734
aa18dd0f
JM
17352011-02-02 Joseph Myers <joseph@codesourcery.com>
1736
1737 * config/ia64/vms.opt: New.
1738 * config.gcc (ia64-hp-*vms*): Use ia64/vms.opt.
1739
28fc3eee
MM
17402011-02-01 Michael Meissner <meissner@linux.vnet.ibm.com>
1741
1742 PR target/47580
1743 * config/rs6000/vsx.md (vsx_float<VSi><mode>2): Use
1744 gpc_reg_operand instead of vsx_register_operand to match rs6000.md
1745 generator functions.
1746 (vsx_floatuns<VSi><mode>2): Ditto.
1747 (vsx_fix_trunc<mode><VSi>2): Ditto.
1748 (vsx_fixuns_trunc<mode><VSi>2): Ditto.
1749
b5838b1f
JM
17502011-02-02 Joseph Myers <joseph@codesourcery.com>
1751
1752 * config/i386/djgpp.opt (posix): New Driver option.
1753
0db8fa89
GP
17542011-02-02 Gerald Pfeifer <gerald@pfeifer.com>
1755
1756 * config.gcc (*-*-freebsd[12], *-*-freebsd[12].*, *-*-freebsd*aout*):
1757 Move to the unsupported targets list.
1758
9cd4f22a
PB
17592011-02-02 Peter Bergner <bergner@vnet.ibm.com>
1760
1761 PR rtl-optimization/47525
1762 * df-scan.c: Update copyright years.
1763 (df_get_call_refs): Do not mark global registers as DF_REF_REG_USE
1764 and non-clobber DF_REF_REG_DEF for calls to const and pure functions.
1765
9ed8059c
RO
17662011-02-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1767
1768 * config/i386/sysv4.h (TARGET_VERSION): Remove.
1769 (SUBTARGET_RETURN_IN_MEMORY): Remove.
1770 (ASM_OUTPUT_ASCII): Remove.
1771 * config/i386/sol2.h (SUBTARGET_RETURN_IN_MEMORY): Remove #undef.
1772
2a737389
JL
17732011-02-02 Jeff Law <law@redhat.com>
1774
1775 PR middle-end/47543
1776 * reload.c (find_reloads_address): Handle reg+d address where both
1777 components are invalid by reloading the entire address.
1778
9dac82c4
SP
17792011-02-02 Sebastian Pop <sebastian.pop@amd.com>
1780 Richard Guenther <rguenther@suse.de>
1781
1782 PR tree-optimization/40979
1783 PR bootstrap/47044
1784 * passes.c (init_optimization_passes): After LIM call copy_prop
1785 and DCE to clean up.
1786 * tree-ssa-loop.c (pass_graphite_transforms): Add TODO_dump_func.
1787
14dd9aab
SP
17882011-02-02 Sebastian Pop <sebastian.pop@amd.com>
1789
1790 PR tree-optimization/47576
1791 PR tree-optimization/47555
1792 * doc/invoke.texi (scev-max-expr-complexity): Documented.
1793 * params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100.
1794 (PARAM_SCEV_MAX_EXPR_COMPLEXITY): Declared.
1795 * tree-scalar-evolution.c (follow_ssa_edge): Use
1796 PARAM_SCEV_MAX_EXPR_COMPLEXITY.
1797
5cbf5c20
RG
17982011-02-02 Richard Guenther <rguenther@suse.de>
1799
1800 PR tree-optimization/47566
1801 * builtins.c (builtin_save_expr): No SAVE_EXPR for SSA_NAMEs.
1802
83d70792
AO
18032011-02-02 Alexandre Oliva <aoliva@redhat.com>
1804
e829c321
AO
1805 PR debug/47106
1806 PR debug/47402
1807 * tree-inline.c (declare_return_variable): Remove unused caller
1808 variable.
1809
83d70792
AO
1810 PR debug/47106
1811 PR debug/47402
1812 * tree-flow-inline.h (clear_is_used, is_used_p): New.
1813 * cfgexpand.c (account_used_vars_for_block): Use them.
1814 * tree-nrv.c (tree_nrv): Likewise.
1815 * tree-ssa-live.c (remove_unused_scope_block_p): Likewise.
1816 (dump_scope_block): Likewise.
1817 (remove_unused_locals): Likewise.
1818
aaa2ac93
AO
1819 PR debug/47106
1820 PR debug/47402
1821 * tree-inline.c (declare_return_variable): Add result decl to
1822 local decls only once.
1823 * gimple-low.c (record_vars_into): Mark newly-created variables
1824 as referenced.
1825
a59d15cf
AO
18262011-02-02 Alexandre Oliva <aoliva@redhat.com>
1827
1828 PR debug/47498
1829 PR debug/47501
1830 PR debug/45136
1831 PR debug/45130
1832 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
1833 debug insns.
1834 (no_real_insns_p, schedule_block, set_priorities): Drop special
1835 treatment of boundary debug insns.
38be4072 1836 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
a59d15cf
AO
1837 * sched-ebb.c (schedule_ebbs): Adjust skipping of debug insns.
1838 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
1839 (BOUNDARY_DEBUG_INSN_P): Likewise.
1840 (SCHEDULE_DEBUG_INSN_P): Likewise.
1841 * sched-rgn.c (init_ready_list): Drop special treatment of
1842 boundary debug insns.
1843 * final.c (rest_of_clean_state): Clear notes' BB.
1844
6fc2f091
JM
18452011-02-01 Joseph Myers <joseph@codesourcery.com>
1846
1847 * config/openbsd.opt (assert=): New Driver option.
1848
fc523387
JM
18492011-02-01 Joseph Myers <joseph@codesourcery.com>
1850
1851 * config/i386/nto.opt: New.
1852 * config.gcc (i[34567]86-*-nto-qnx*): Use i386/nto.opt.
1853
6d9821e5
JM
18542011-02-01 Joseph Myers <joseph@codesourcery.com>
1855
1856 * config/i386/netware.opt: New.
1857 * config.gcc (i[3456x]86-*-netware*): Use i386/netware.opt.
1858
cef932d4
JM
18592011-02-01 Joseph Myers <joseph@codesourcery.com>
1860
1861 * config/interix.opt (posix): New Driver option.
1862
22843acd
DD
18632011-02-01 DJ Delorie <dj@redhat.com>
1864
56490b74
DD
1865 * config/m32c/m32c.h (PTRDIFF_TYPE): Remove extra definition.
1866
22843acd
DD
1867 * config/m32c/m32c.c (m32c_regno_reg_class): Return smallest reg
1868 class for A0/A1.
1869
199c8f2f
SP
18702011-02-01 Sebastian Pop <sebastian.pop@amd.com>
1871
1872 PR tree-optimization/47561
1873 * toplev.c (process_options): Print the Graphite flags. Add
1874 flag_loop_flatten to the list of options requiring Graphite.
1875
926bcf22
JM
18762011-02-01 Joseph Myers <joseph@codesourcery.com>
1877
1878 * config/i386/cygming.opt (posix): New Driver option.
1879
59793c51
JM
18802011-02-01 Joseph Myers <joseph@codesourcery.com>
1881
1882 * config/arm/vxworks.opt: New.
1883 * config.gcc (arm-wrs-vxworks): Use arm/vxworks.opt.
1884
183c38a4
JM
18852011-02-01 Joseph Myers <joseph@codesourcery.com>
1886
1887 * config/alpha/elf.opt: New.
1888 * config.gcc (alpha*-*-linux*, alpha*-*-gnu*, alpha*-*-freebsd*,
1889 alpha*-*-netbsd*, alpha*-*-openbsd*): Use alpha/elf.opt.
1890
9939e416
RG
18912011-02-01 Richard Guenther <rguenther@suse.de>
1892
1893 PR tree-optimization/47559
1894 * tree-ssa-loop-im.c (can_sm_ref_p): Do not perform
1895 store-motion on references that can throw.
1896
4a3c9687
BS
18972011-02-01 Bernd Schmidt <bernds@codesourcery.com>
1898
1899 * tree-dump.c (dump_option_value_info): Add entry for TDF_CSELIB.
1900 * tree-pass.h (TDF_CSELIB): New macro.
1901 * cselib.c (new_cselib_val, expand_loc, cselib_expand_value_rtx_1,
1902 cselib_lookup): Check for it rather than for TDF_DETAILS.
1903
dd3b31fb
L
19042011-02-01 H.J. Lu <hongjiu.lu@intel.com>
1905
1906 PR driver/47547
1907 * lto-wrapper.c (run_gcc): Don't add -dumpdir if linker_output
1908 is HOST_BIT_BUCKET.
1909
1910 * opts.c (finish_options): Don't add x_aux_base_name if it is
1911 HOST_BIT_BUCKET.
1912
34c1de79
RG
19132011-02-01 Richard Guenther <rguenther@suse.de>
1914
1915 PR tree-optimization/47555
1916 Revert
1917 2010-07-15 Sebastian Pop <sebastian.pop@amd.com>
1918
1919 * params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100.
1920
dd2804d2
SB
19212011-02-01 Sebastien Bourdeauducq <sebastien@milkymist.org>
1922
1923 PR gcc/46692
1924 * config/lm32/t-lm32: Add multilib for all CPU options.
1925
3fd3b156
RG
19262011-02-01 Richard Guenther <rguenther@suse.de>
1927
1928 PR tree-optimization/47541
1929 * tree-ssa-structalias.c (push_fields_onto_fieldstack): Make
1930 sure to have a field at offset zero.
1931
f16072b6
JM
19322011-01-31 Joseph Myers <joseph@codesourcery.com>
1933
1934 * config/arc/arc.opt (EB, EL): New Driver options.
1935
6456cf2e
JM
19362011-01-31 Joseph Myers <joseph@codesourcery.com>
1937
1938 * config/alpha/osf5.opt: New.
1939 * config.gcc (alpha*-dec-osf5.1*): Use alpha/osf5.opt.
1940
cdde6ab4
JM
19412011-01-31 Joseph Myers <joseph@codesourcery.com>
1942
1943 * config/vms/vms.opt (map, mvms-return-codes): New Driver options.
1944
7633415c
SP
19452011-01-31 Sebastian Pop <sebastian.pop@amd.com>
1946
1947 * common.opt (ftree-loop-linear): Use Alias to make it an alias of
1948 -floop-interchange.
1949 * invoke.texi (-ftree-loop-linear): Make it clear that this flag
1950 is an alias of -floop-interchange and that it requires the
1951 Graphite infrastructure.
1952 * tree-ssa-loop.c (gate_graphite_transforms): Do not set
1953 flag_loop_interchange based on the value of flag_tree_loop_linear.
1954
0425d6f5
JJ
19552011-01-31 Jakub Jelinek <jakub@redhat.com>
1956 Richard Guenther <rguenther@suse.de>
1957
1958 PR tree-optimization/47538
1959 * tree-ssa-ccp.c (bit_value_binop_1): For uns computation use
1960 type instead of r1type, except for comparisons. For right
1961 shifts and comparisons punt if there are mismatches in
1962 sizetype vs. non-sizetype types.
1963
500b16c3
RO
19642011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1965
1966 * doc/sourcebuild.texi (Effective-Target Keywords): Document
1967 avx_runtime.
1968
e279edb0
RO
19692011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1970
1971 * configure.ac (gcc_cv_ld_eh_frame_hdr): Update minimal Sun ld
1972 version number.
1973 * configure: Regenerate.
1974
c6092243
RO
19752011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1976
1977 * configure.ac (gcc_cv_ld_static_option): Define.
1978 (gcc_cv_ld_dynamic_option): Define.
1979 (gcc_cv_ld_static_dynamic): Tru64 UNIX support -noso/-so_archive
1980 instead.
1981 (HAVE_LD_STATIC_DYNAMIC): Update message.
1982 (LD_STATIC_OPTION): Define.
1983 (LD_DYNAMIC_OPTION): Define.
1984 * configure: Regenerate.
1985 * config.in: Regenerate.
1986 * gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS &&
1987 HAVE_LD_STATIC_DYNAMIC]: Use them.
1988
d7862be3
NC
19892011-01-31 Nick Clifton <nickc@redhat.com>
1990
1991 * config/rx/rx.c (rx_get_stack_layout): Only save call clobbered
1992 registers inside interrupt handlers if the handler is not a leaf
1993 function.
1994
ba4ec0e0
NC
19952011-01-31 Nick Clifton <nickc@redhat.com>
1996
1997 * config/mn10300/mn10300.c (mn10300_regno_in_class_p): Check for
1998 reg_renumber returning an INVALID_REGNUM.
1999
29a63921
AO
20002011-01-31 Alexandre Oliva <aoliva@redhat.com>
2001
2002 PR libgcj/44341
2003 * doc/install.texi: Document host options discarded when cross
2004 configuring target libraries.
2005
ef591d3f
AO
20062011-01-31 Alexandre Oliva <aoliva@redhat.com>
2007
2008 Reverted:
2009 2011-01-25 Alexandre Oliva <aoliva@redhat.com>
2010 PR debug/45136
2011 PR debug/45130
2012 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
2013 debug insns.
2014 (no_real_insns_p, schedule_block, set_priorities): Drop special
2015 treatment of boundary debug insns.
38be4072 2016 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
ef591d3f
AO
2017 * sched-ebb.c (schedule_ebbs): Don't skip debug insns.
2018 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
2019 (BOUNDARY_DEBUG_INSN_P): Likewise.
2020 (SCHEDULE_DEBUG_INSN_P): Likewise.
2021 * sched-rgn.c (init_ready_list): Drop special treatment of
2022 boundary debug insns.
2023 * final.c (rest_of_clean-state): Clear notes' BB.
2024
61052244
AM
20252011-01-31 Alan Modra <amodra@gmail.com>
2026
2027 * config/rs6000/rs6000.c (print_operand): Rearrange addends in
2028 toc relative expressions as we do in print_operand_address.
2029
c4c8962b
KH
20302011-01-30 Kazu Hirata <kazu@codesourcery.com>
2031
2032 * doc/extend.texi: Follow spelling conventions.
2033 * doc/invoke.texi: Fix a typo.
2034
e543b94c
JM
20352011-01-30 Joseph Myers <joseph@codesourcery.com>
2036
2037 * config/hpux11.opt: New.
2038 * config.gcc (hppa*64*-*-hpux11*, hppa[12]*-*-hpux11*,
2039 ia64*-*-hpux*): Use hpux11.opt.
2040
509d65dd 20412011-01-30 Jonathan Yong <jon_y@users.sourceforge.net>
a70e0551
JY
2042
2043 * config.gcc (i[34567]86-*-pe | i[34567]86-*-cygwin*): Add t-dfprules
2044 to tmake_file.
2045
7be03a0e
GP
20462011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
2047
2048 * doc/install.texi (hppa-hp-hpux10): Remove references to HP
2049 support sites.
2050
419d1d37
GP
20512011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
2052
b596ed64
GP
2053 * doc/install.texi (Binaries): Remove outdated reference for
2054 Motorola 68HC11/68HC12 downloads.
2055
20562011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
61052244 2057
419d1d37
GP
2058 * doc/extend.texi (Thread-Local): Adjust reference to Ulrich
2059 Drepper's paper.
2060
4406d0e9
JW
20612011-01-29 Jonathan Wakely <jwakely.gcc@gmail.com>
2062
2063 PR bootstrap/47147
2064 * ginclude/stddef.h: Check for _X86_64_ANSI_H_ and _I386_ANSI_H_ as
2065 used by NetBSD.
2066
38be4072 20672011-01-28 Ahmad Sharif <asharif@google.com>
e0b77418
AS
2068
2069 * value-prof.c (check_counter): Corrected error message.
2070
0cd98787
JZ
20712011-01-29 Jie Zhang <jie@codesourcery.com>
2072
2073 * config/arm/arm.c (arm_legitimize_reload_address): New.
2074 * config/arm/arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Use
2075 arm_legitimize_reload_address.
38be4072 2076 * config/arm/arm-protos.h (arm_legitimize_reload_address): Declare.
0cd98787 2077
9b798ac5
ILT
20782011-01-28 Ian Lance Taylor <iant@google.com>
2079
2080 * godump.c (go_define): Ignore macros whose definitions include
2081 two adjacent operands.
2082
591e29d9
JJ
20832011-01-28 Jakub Jelinek <jakub@redhat.com>
2084
2085 PR target/42894
2086 * varasm.c (force_const_mem): Store copy of x in desc->constant
2087 instead of x itself.
2088 * expr.c (emit_move_insn): Add a copy of y_cst instead of y_cst
2089 itself into REG_EQUAL note.
2090
62dcc44a
JM
20912011-01-28 Joseph Myers <joseph@codesourcery.com>
2092
2093 * config/freebsd.opt (posix, rdynamic): New Driver options.
2094
c9f58b9a
RO
20952011-01-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2096
2097 * configure.ac (gcc_cv_ld_static_dynamic): IRIX 6 ld supports
2098 -Bstatic/-Bdynamic.
2099 * configure: Regenerate.
2100
5f02b9db
JM
21012011-01-27 Joseph Myers <joseph@codesourcery.com>
2102
2103 * config/rs6000/sysv4.h (LIB_NETBSD_SPEC): Don't handle -profile.
2104 * config/rs6000/vxworks.h (CC1_SPEC): Don't handle -profile.
2105
5df97412
AS
21062011-01-27 Anatoly Sokolov <aesok@post.ru>
2107
2108 * config/s390/s390.h (PREFERRED_RELOAD_CLASS): Remove.
2109 * config/s390/s390-protos.h (s390_preferred_reload_class): Remove.
2110 * config/s390/s390.c (TARGET_PREFERRED_RELOAD_CLASS): Define.
2111 (s390_preferred_reload_class): Make static. Change return and
2112 'rclass' argument type to reg_class_t.
2113
779d4b91
JH
21142011-01-27 Jan Hubicka <jh@suse.cz>
2115
2116 PR middle-end/46949
2117 * cgraphunit.c (process_common_attributes): Fix use of remove_attribute.
2118 (process_function_and_variable_attributes): Check defined weakrefs.
2119
e80b21ed
MJ
21202011-01-27 Martin Jambor <mjambor@suse.cz>
2121
2122 PR tree-optimization/47228
2123 * tree-sra.c (sra_modify_assign): Use build_ref_for_model instead of
2124 build_ref_for_offset.
2125
6dcc4f31
UW
21262011-01-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2127
2128 * config/spu/spu-elf.h (ASM_SPEC): Remove.
2129
509d65dd 21302011-01-26 Mikael Pettersson <mikpe@it.uu.se>
3b8ff89f
MP
2131
2132 PR rtl-optimization/46856
2133 * postreload.c (reload_combine_recognize_const_pattern): Do not
2134 separate cc0 setter and user on cc0 targets.
2135
04af8788
NP
21362011-01-26 Nicola Pero <nicola.pero@meta-innovation.com>
2137
2138 PR c/43082
2139 * c-typeck.c (c_objc_common_truthvalue_conversion): If we are
2140 passed a VOID_TYPE expression, immediately emit an error and
2141 return error_mark_node.
2142
f7a60085
JL
21432011-01-26 Jeff Law <law@redhat.com>
2144
2145 PR rtl-optimization/47464
2146 * df-problems.c (can_move_insn_across): Use may_trap_or_fault_p
2147 rather than may_trap_p as needed.
2148
5c2917ec
DD
21492011-01-26 DJ Delorie <dj@redhat.com>
2150
2151 PR rtl-optimization/46878
2152 * combine.c (insn_a_feeds_b): Check for the implicit cc0
2153 setter/user dependency as well.
2154
bef16e87
EB
21552011-01-26 Eric Botcazou <ebotcazou@adacore.com>
2156
2157 PR rtl-optimization/44469
2158 * cfgcleanup.c (try_optimize_cfg): Iterate in CFG layout mode too
2159 after removing trivially dead basic blocks.
2160
c75d884b
JM
21612011-01-26 Joseph Myers <joseph@codesourcery.com>
2162
2163 * config/bfin/bfin.h (LINK_SPEC): Remove %{Qy:} %{!Qn:-Qy}.
2164 * config/frv/frv.h (LINK_SPEC): Likewise.
2165 * config/i386/netware.h (LINK_SPEC): Likewise.
2166 * config/m68k/linux.h (ASM_SPEC): Likewise.
2167 * config/rs6000/linux64.h (ASM_SPEC_COMMON): Likewise.
2168 * config/rs6000/sysv4.h (LINK_SPEC): Likewise.
2169 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
2170 * config/sparc/linux.h (ASM_SPEC): Likewise.
2171 * config/sparc/linux64.h (ASM_SPEC): Likewise.
2172 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
2173
d3153553
JM
21742011-01-26 Joseph Myers <joseph@codesourcery.com>
2175
2176 * config/bfin/bfin.h (ASM_SPEC): Remove %{Ym,*}.
2177 * config/frv/frv.h (ASM_SPEC): Likewise.
2178 * config/m68k/linux.h (ASM_SPEC): Likewise.
2179 * config/pa/pa-linux.h (ASM_SPEC): Likewise.
2180 * config/rs6000/linux64.h (ASM_SPEC): Likewise.
2181 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
2182 * config/sparc/linux.h (ASM_SPEC): Likewise.
2183 * config/sparc/linux64.h (ASM_SPEC): Likewise.
2184 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
2185
b89b1e9d
JM
21862011-01-26 Joseph Myers <joseph@codesourcery.com>
2187
2188 * config/bfin/bfin.h (LINK_SPEC): Remove %{YP,*}.
2189 * config/frv/frv.h (LINK_SPEC): Likewise.
2190 * config/rs6000/sysv4.h (LINK_SPEC): Likewise.
2191
12eb1a9c
JM
21922011-01-26 Joseph Myers <joseph@codesourcery.com>
2193
2194 * config/bfin/bfin.h (ASM_SPEC): Remove %{Yd,*}.
2195 * config/frv/frv.h (ASM_SPEC): Likewise.
2196 * config/i386/sol2-10.h (ASM_SPEC): Likewise.
2197 * config/m68k/linux.h (ASM_SPEC): Likewise.
2198 * config/pa/pa-linux.h (ASM_SPEC): Likewise.
2199 * config/rs6000/linux64.h (ASM_SPEC32): Likewise.
2200 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
2201 * config/sol2.h (ASM_SPEC): Remove comment about -Yd,.
2202 * config/sparc/linux.h (ASM_SPEC): Likewise.
2203 * config/sparc/linux64.h (ASM_SPEC): Likewise.
2204 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
2205 * config/sparc/sysv4.h (ASM_SPEC): Remove %{Yd,*}.
2206
e435f098
SE
22072011-01-26 Steve Ellcey <sje@cup.hp.com>
2208
2209 PR target/46997
2210 * config/ia64/vect.md (mulv2si3): Enable and fix for TARGET_BIG_ENDIAN.
2211 (*mux2): Ditto.
2212 (vec_extract_evenodd_help): Ditto.
2213 (vec_extract_evenv4hi): Ditto.
2214 (vec_extract_oddv4hi): Ditto.
2215 (vec_interleave_lowv2si): Ditto.
2216 (vec_interleave_highv2si): Ditto.
2217 (vec_extract_evenv2si): Ditto.
2218 (vec_extract_oddv2si: Ditto.
2219 (vec_pack_trunc_v2si): Ditto.
2220
34f0eee0
JH
22212011-01-22 Jan Hubicka <jh@suse.cz>
2222
2223 PR target/47237
2224 * cgraph.h (cgraph_local_info): New field can_change_signature.
2225 * ipa-cp.c (ipcp_update_callgraph): Only compute args_to_skip if callee
2226 signature can change.
2227 (ipcp_estimate_growth): Call sequence simplify only if calle signature
2228 can change.
2229 (ipcp_insert_stage): Only compute args_to_skip if signature can change.
2230 (cgraph_function_versioning): We can not change signature of functions
2231 that don't allow that.
2232 * lto-cgraph.c (lto_output_node): Stream local.can_change_signature.
2233 (lto_input_node): Likewise.
38be4072
UB
2234 * ipa-inline.c (compute_inline_parameters): Compute
2235 local.can_change_signature.
34f0eee0 2236 * ipa-split.c (visit_bb): Never split away APPLY_ARGS.
38be4072
UB
2237 * tree-sra.c (ipa_sra_preliminary_function_checks): Give up on
2238 functions that can not change signature.
34f0eee0 2239 * i386.c (ix86_function_regparm, ix86_function_sseregparm,
38be4072
UB
2240 init_cumulative_args): Do not use local calling conventions
2241 for functions that can not change signature.
34f0eee0 2242
980ca891
JH
22432011-01-22 Jan Hubicka <jh@suse.cz>
2244
2245 * doc/invoke.texi (hot-bb-frequency-fraction): Commit forgotten hunk.
2246
768e3c60
RG
22472011-01-26 Richard Guenther <rguenther@suse.de>
2248
2249 PR tree-optimization/47190
61052244
AM
2250 * cgraphunit.c (process_common_attributes): New function.
2251 (process_function_and_variable_attributes): Use it.
768e3c60 2252
21d6a1c7
RG
22532011-01-26 Richard Guenther <rguenther@suse.de>
2254
2255 PR lto/47423
2256 * cgraphbuild.c (record_eh_tables): Record reference to personality
2257 function.
2258
48bb58b1
AO
22592011-01-26 Alexandre Oliva <aoliva@redhat.com>
2260
2261 PR debug/45454
2262 * sel-sched.c (moveup_expr): Don't let debug insns prevent
2263 non-debug insns from moving up.
2264
58c741a6
DK
22652011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
2266
2267 PR target/40125
2268 * config.gcc (i[34567]86-*-pe | i[34567]86-*-cygwin*): Select suitable
2269 t-dlldir{,-x} fragment for build and add it to tmake_file.
2270 (i[34567]86-*-mingw* | x86_64-*-mingw*): Likewise.
2271 * Makefile.in (libgcc.mvars): Also export SHLIB_DLLDIR to libgcc.
2272 * config/i386/t-dlldir: New file.
2273 (SHLIB_DLLDIR): Define.
2274 * config/i386/t-dlldir-x: New file.
2275 (SHLIB_DLLDIR): Define.
2276 * config/i386/t-cygming: Error out if SHLIB_DLLDIR is not set.
2277 (SHLIB_INSTALL): Use it.
2278
bff99262
CLT
22792011-01-26 Chung-Lin Tang <cltang@codesourcery.com>
2280
2281 PR target/47246
2282 * config/arm/arm.c (thumb2_legitimate_index_p): Change the
2283 lower bound of the allowed Thumb-2 coprocessor load/store
2284 index range to -256. Add explaining comment.
2285
82c03907
ILT
22862011-01-25 Ian Lance Taylor <iant@google.com>
2287
2288 * godump.c (go_define): Improve lexing of macro expansion to only
2289 accept expressions which match Go spec.
2290
47ea1edf
DK
22912011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
2292
d4dba752 2293 PR c++/43601
47ea1edf
DK
2294 * tree.c (handle_dll_attribute): Handle it.
2295 * doc/extend.texi (@item dllexport): Mention it.
2296 * doc/invoke.texi (@item -fno-keep-inline-dllexport): Document it.
2297
744f0946
ILT
22982011-01-25 Ian Lance Taylor <iant@google.com>
2299
2300 PR tree-optimization/26854
2301 * c-decl.c (struct c_scope): Add field has_jump_unsafe_decl.
2302 (decl_jump_unsafe): Move higher in file, with no other change.
2303 (bind): Set has_jump_unsafe_decl if appropriate.
2304 (update_label_decls): Test has_jump_unsafe_decl to avoid loop.
2305 (check_earlier_gotos): Likewise.
2306 (c_check_switch_jump_warnings): Likewise.
2307
5734f2b3
JW
23082011-01-25 Jonathan Wakely <jwakely.gcc@gmail.com>
2309
2310 * doc/invoke.texi (Warning Options): Add missing hyphen.
2311 (-fprofile-dir): Minor grammatical fixes.
2312 (-fbranch-probabilities): Likewise.
2313
9bdbdcef
AO
23142011-01-25 Alexandre Oliva <aoliva@redhat.com>
2315
2316 PR debug/45136
2317 PR debug/45130
2318 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
2319 debug insns.
2320 (no_real_insns_p, schedule_block, set_priorities): Drop special
2321 treatment of boundary debug insns.
38be4072 2322 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
9bdbdcef
AO
2323 * sched-ebb.c (schedule_ebbs): Don't skip debug insns.
2324 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
2325 (BOUNDARY_DEBUG_INSN_P): Likewise.
2326 (SCHEDULE_DEBUG_INSN_P): Likewise.
2327 * sched-rgn.c (init_ready_list): Drop special treatment of
2328 boundary debug insns.
2329 * final.c (rest_of_clean-state): Clear notes' BB.
2330
b305e3da
SP
23312011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2332
2333 * Makefile.in (LAMBDA_H): Removed.
2334 (TREE_DATA_REF_H): Remove dependence on LAMBDA_H.
2335 (OBJS-common): Remove dependence on lambda-code.o, lambda-mat.o,
2336 lambda-trans.o, and tree-loop-linear.o.
2337 (lto-symtab.o): Remove dependence on LAMBDA_H.
2338 (tree-loop-linear.o): Remove rule.
2339 (lambda-mat.o): Same.
2340 (lambda-trans.o): Same.
2341 (lambda-code.o): Same.
2342 (tree-vect-loop.o): Add missing dependence on TREE_DATA_REF_H.
2343 (tree-vect-slp.o): Same.
2344 * hwint.h (gcd): Moved here.
2345 (least_common_multiple): Same.
2346 * lambda-code.c: Removed.
2347 * lambda-mat.c: Removed.
2348 * lambda-trans.c: Removed.
2349 * lambda.h: Removed.
2350 * tree-loop-linear.c: Removed.
2351 * lto-symtab.c: Do not include lambda.h.
2352 * omega.c (gcd): Removed.
2353 * passes.c (init_optimization_passes): Remove pass_linear_transform.
2354 * tree-data-ref.c (print_lambda_vector): Moved here.
2355 (lambda_vector_copy): Same.
2356 (lambda_matrix_copy): Same.
2357 (lambda_matrix_id): Same.
2358 (lambda_vector_first_nz): Same.
2359 (lambda_matrix_row_add): Same.
2360 (lambda_matrix_row_exchange): Same.
2361 (lambda_vector_mult_const): Same.
2362 (lambda_vector_negate): Same.
2363 (lambda_matrix_row_negate): Same.
2364 (lambda_vector_equal): Same.
2365 (lambda_matrix_right_hermite): Same.
2366 * tree-data-ref.h: Do not include lambda.h.
2367 (lambda_vector): Moved here.
2368 (lambda_matrix): Same.
2369 (dependence_level): Same.
2370 (lambda_transform_legal_p): Removed declaration.
2371 (lambda_collect_parameters): Same.
2372 (lambda_compute_access_matrices): Same.
2373 (lambda_vector_gcd): Same.
2374 (lambda_vector_new): Same.
2375 (lambda_vector_clear): Same.
2376 (lambda_vector_lexico_pos): Same.
2377 (lambda_vector_zerop): Same.
2378 (lambda_matrix_new): Same.
2379 * tree-flow.h (least_common_multiple): Removed declaration.
2380 * tree-parloops.c (lambda_trans_matrix): Moved here.
2381 (LTM_MATRIX): Same.
2382 (LTM_ROWSIZE): Same.
2383 (LTM_COLSIZE): Same.
2384 (LTM_DENOMINATOR): Same.
2385 (lambda_trans_matrix_new): Same.
2386 (lambda_matrix_vector_mult): Same.
2387 (lambda_transform_legal_p): Same.
2388 * tree-pass.h (pass_linear_transform): Removed declaration.
2389 * tree-ssa-loop.c (tree_linear_transform): Removed.
2390 (gate_tree_linear_transform): Removed.
2391 (pass_linear_transform): Removed.
2392 (gate_graphite_transforms): Make flag_tree_loop_linear an alias of
2393 flag_loop_interchange.
2394
6bdfdb96
JJ
23952011-01-25 Jakub Jelinek <jakub@redhat.com>
2396
2397 PR tree-optimization/47265
2398 PR tree-optimization/47443
2399 * tree-ssa-forwprop.c (forward_propagate_addr_expr): Return false
2400 if name still has some uses.
2401
e4cba915
MJ
24022011-01-25 Martin Jambor <mjambor@suse.cz>
2403
2404 PR tree-optimization/47382
2405 * gimple-fold.c (gimple_fold_obj_type_ref_call): Removed.
2406 (gimple_fold_call): Do not call gimple_fold_obj_type_ref_call.
2407
509d65dd 24082011-01-25 Joel Sherrill <joel.sherrill@oarcorp.com>
f822b8ea
JS
2409
2410 * config/m32r/m32r.c: Define TARGET_EXCEPT_UNWIND_INFO to
2411 sjlj_except_unwind_info.
2412
194313e2
RG
24132011-01-25 Richard Guenther <rguenther@suse.de>
2414
2415 PR tree-optimization/47426
2416 * tree-ssa-structalias.c (ipa_pta_execute): Make externally
2417 visible functions results escape.
2418
147a0bcf
JJ
24192011-01-25 Jakub Jelinek <jakub@redhat.com>
2420
2421 PR target/45701
2422 * config/arm/arm.c (any_sibcall_uses_r3): New function.
2423 (arm_get_frame_offsets): Use it.
2424
db963b52
SP
24252011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2426 Jakub Jelinek <jakub@redhat.com>
2427
2428 PR tree-optimization/47271
2429 * tree-if-conv.c (bb_postdominates_preds): New.
2430 (if_convertible_bb_p): Call bb_postdominates_preds.
2431 (if_convertible_loop_p_1): Compute CDI_POST_DOMINATORS.
2432 (predicate_scalar_phi): Call bb_postdominates_preds.
2433
bcddd3b9
NC
24342011-01-25 Nick Clifton <nickc@redhat.com>
2435
2436 * config/rx/rx.h (LIBCALL_VALUE): Do not promote complex types.
2437 * config/rx/rx.c (rx_function_value): Likewise.
2438 (rx_promote_function_mode): Likewise.
2439 (gen_safe_add): Place an outsized immediate value inside an UNSPEC
2440 in order to make it legitimate.
38be4072
UB
2441 * config/rx/rx.md (adddi3_internal): If the second operand is a MEM
2442 make sure that the first operand is the same as the result register.
bcddd3b9
NC
2443 (addsi3_unspec): Delete.
2444 (subdi3): Do not accept immediate operands.
2445 (subdi3_internal): Likewise.
2446
7e6cb022
JL
24472011-01-25 Jeff Law <law@redhat.com>
2448
2449 PR rtl-optimization/37273
2450 * ira-costs.c (scan_one_insn): Detect constants living in memory and
2451 handle them like argument loads from stack slots. Do not double
2452 count memory for memory constants and argument loads from stack slots.
2453
9ffa621e
JJ
24542011-01-25 Jakub Jelinek <jakub@redhat.com>
2455
2456 PR tree-optimization/47427
2457 PR tree-optimization/47428
2458 * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Don't
2459 coalesce if the new root var would be TREE_READONLY.
2460
5bd6e652
RG
24612011-01-25 Richard Guenther <rguenther@suse.de>
2462
2463 PR middle-end/47414
2464 * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Use the
2465 correct type for TBAA.
2466
7c48ea69
SP
24672011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2468
2469 * graphite-sese-to-poly.c (dr_indices_valid_in_loop): New.
2470 (close_phi_written_to_memory): Call for_each_index with
2471 dr_indices_valid_in_loop.
2472
38013f25
SP
24732011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2474
2475 * graphite-sese-to-poly.c (new_pbb_from_pbb): Only copy PBB_DOMAIN
2476 when it is initialized.
2477
5c640e29
SP
24782011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2479
2480 * graphite-scop-detection.c (stmt_has_simple_data_refs_p): Update
2481 call to graphite_find_data_references_in_stmt.
2482 * graphite-sese-to-poly.c (outermost_loop_in_sese_1): New.
2483 (try_generate_gimple_bb): Call outermost_loop_in_sese_1. Update
2484 call to graphite_find_data_references_in_stmt.
2485 (analyze_drs_in_stmts): Same.
2486 * tree-data-ref.c (dr_analyze_indices): Pass in parameter the loop
2487 in which the scalar analysis of indices is performed.
2488 (create_data_ref): Same. Update call to dr_analyze_indices.
2489 (find_data_references_in_stmt): Update call to create_data_ref.
2490 (graphite_find_data_references_in_stmt): Same.
2491 * tree-data-ref.h (graphite_find_data_references_in_stmt): Update
2492 declaration.
2493 (create_data_ref): Same.
2494 * tree-ssa-loop-prefetch.c (determine_loop_nest_reuse): Update
2495 call to create_data_ref.
2496
ac53c069
SP
24972011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2498
2499 * graphite-sese-to-poly.c (build_poly_scop): Move
38be4072 2500 rewrite_commutative_reductions_out_of_ssa before find_scop_parameters.
ac53c069 2501
3d17df15
SP
25022011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2503
2504 * graphite-sese-to-poly.c (close_phi_written_to_memory): Also allow
2505 VAR_DECL, PARM_DECL, and RESULT_DECL.
2506
c513da01
SP
25072011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2508
2509 * graphite-dependences.c (reduction_dr_1): Allow several reductions
2510 in a reduction PBB.
2511 * graphite-sese-to-poly.c (split_reduction_stmt): Do not split PBBs
2512 that have already been marked as PBB_IS_REDUCTION.
2513
3a292d59
SP
25142011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2515
2516 * graphite-scop-detection.c (same_close_phi_node): New.
2517 (remove_duplicate_close_phi): New.
2518 (make_close_phi_nodes_unique): New.
2519 (canonicalize_loop_closed_ssa): Call make_close_phi_nodes_unique.
2520
ba858447
SP
25212011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2522
2523 * graphite-dependences.c (new_poly_ddr): Call same_pdr_p.
2524 * graphite-poly.h (same_pdr_p): Do not expect that the PDR_TYPE
2525 of both data references to be the same.
2526
8d865c56
SP
25272011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2528
38be4072
UB
2529 * graphite-dependences.c (build_lexicographical_constraint): Remove
2530 the gdim parameter.
2531 (build_lexicographical_constraint): Adjust call to
2532 ppl_powerset_is_empty.
8d865c56
SP
2533 (dependence_polyhedron): Same.
2534 (graphite_legal_transform_dr): Same.
2535 (graphite_carried_dependence_level_k): Same.
38be4072
UB
2536 * graphite-ppl.c (ppl_powerset_is_empty): Remove the nb_params
2537 parameter.
8d865c56
SP
2538 * graphite-ppl.h (ppl_powerset_is_empty): Adjust declaration.
2539
50034a36
SP
25402011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2541
2542 * graphite-sese-to-poly.c
2543 (translate_scalar_reduction_to_array_for_stmt): Call unshare_expr.
2544 (close_phi_written_to_memory): New.
2545 (translate_scalar_reduction_to_array): Call close_phi_written_to_memory
2546 and unshare_expr.
2547
0deada9e
SP
25482011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2549
2550 * doc/install.texi: Update the expected version number of PPL to 0.11.
2551 * graphite-ppl.c (ppl_powerset_is_empty): Remove now dead code under
2552 #if PPL_VERSION_MINOR < 11.
2553
d7d3d6af
SP
25542011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2555
2556 * graphite-dependences.c: Include graphite-cloog-util.h.
2557 (new_poly_ddr): Inlined into dependence_polyhedron.
2558 (free_poly_ddr): Moved close by new_poly_ddr.
2559 (dependence_polyhedron_1): Renamed dependence_polyhedron.
2560 Early return NULL when ppl_powerset_is_empty returns true.
2561 (dependence_polyhedron): Renamed new_poly_ddr. Call only once
2562 poly_drs_may_alias_p. Avoid one call to ppl_powerset_is_empty.
2563 (graphite_legal_transform_dr): Call new_poly_ddr.
2564 (graphite_carried_dependence_level_k): Same.
2565 (dot_original_deps_stmt_1): Renamed dot_deps_stmt_2. Use new_poly_ddr.
2566 (dot_transformed_deps_stmt_1): Removed.
2567 (dot_deps_stmt_1): Call dot_deps_stmt_2.
2568 (dot_original_deps): Renamed dot_deps_2. Call new_poly_ddr.
2569 (dot_deps_1): Call dot_deps_2.
2570 * Makefile.in (graphite-dependences.o): Add missing dependence on
2571 graphite-cloog-util.h.
2572
28c5db57
SP
25732011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2574
2575 * graphite-dependences.c (new_poly_dr): Call ppl_powerset_is_empty.
2576 (build_lexicographical_constraint): Same.
2577 (dependence_polyhedron_1): Same.
2578 (graphite_legal_transform_dr): Same.
2579 (graphite_carried_dependence_level_k): Same.
2580 * graphite-ppl.c (ppl_powerset_is_empty): New.
2581 * graphite-ppl.h (ppl_powerset_is_empty): Declared.
2582 * tree-data-ref.c (dump_data_reference): Print the basic block index.
2583
5168d98f
SP
25842011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2585
2586 * graphite-dependences.c (build_pairwise_scheduling): Correctly compute
2587 the "a followed by b" relation and document it.
2588
4a40293a
SP
25892011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2590
2591 * graphite-dependences.c (build_lexicographical_constraint): Stop the
2592 iteration when the bag of constraints is empty.
2593
271fb6fa
SP
25942011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2595
2596 * graphite-poly.c (pbb_remove_duplicate_pdrs): Make it work.
2597
92d23680
SP
25982011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2599
2600 * graphite-interchange.c (lst_interchange_profitable_p): Takes a loop
2601 nest and two loop depths as parameters.
2602 (lst_try_interchange_loops): Call lst_interchange_profitable_p after
2603 lst_perfect_nestify.
2604
2f51deff
SP
26052011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2606
2607 * graphite-dependences.c (print_pddr): Call
2608 ppl_io_fprint_Pointset_Powerset_C_Polyhedron.
2609
07f3593c
SP
26102011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2611
2612 * graphite-ppl.c (debug_gmp_value): New.
2613 * graphite-ppl.h (debug_gmp_value): Declared.
2614
3fae6099
TG
26152011-01-25 Tobias Grosser <grosser@fim.uni-passau.de>
2616
2617 * doc/install.texi: Document availability of cloog-0.16.
2618
1c3ba85b
SP
26192011-01-25 Vladimir Kargov <kargov@gmail.com>
2620
2621 * graphite-scop-detection.c (canonicalize_loop_closed_ssa): Free
2622 invalid postdominance info.
2623
e8ba94fc
JH
26242011-01-24 Jan Hubicka <jh@suse.cz>
2625
2626 PR c/21659
2627 * doc/extend.texi (weak pragma): Drop claim that it must
2628 appear before definition.
2629 * varasm.c (merge_weak, declare_weak): Only sanity check
2630 that DECL is not output at a time it is declared weak.
2631
2b6e2d13
KZ
26322011-01-24 Kenneth Zadeck <zadeck@naturalbridge.com>
2633
2634 * machmode.def: Fixed comments.
1c3ba85b 2635
9841210f
KT
26362011-01-24 Kai Tietz <kai.tietz@onevision.com>
2637
2638 * emit-rtl.c (reg_attrs_htab_hash): Replace long by intptr_t.
2639
26402011-01-24 Paul Koning <ni1d@arrl.net>
e046112d
PK
2641
2642 * builtins.c (c_readstr): Fix byte order if BYTES_BIG_ENDIAN !=
1c3ba85b 2643 WORDS_BIG_ENDIAN.
e046112d 2644
a6c5070a
L
26452011-01-24 H.J. Lu <hongjiu.lu@intel.com>
2646
2647 PR target/46519
2648 * config/i386/i386.c: Include sbitmap.h and fibheap.h.
2649 (block_info): Add scanned and prev.
2650 (move_or_delete_vzeroupper_2): Return if the basic block
2651 has been scanned and the upper 128bit state is unchanged
2652 from the last scan.
2653 (move_or_delete_vzeroupper_1): Return true if the exit
2654 state is changed.
2655 (move_or_delete_vzeroupper): Visit basic blocks using the
2656 work-list based algorithm based on vt_find_locations in
2657 var-tracking.c.
2658
2659 * config/i386/t-i386: Also depend on sbitmap.h and $(FIBHEAP_H).
2660
a40d79d7
NC
26612011-01-24 Nick Clifton <nickc@redhat.com>
2662
2663 * config/v850/v850.opt (mv850es): New option - alias for -mv850e1.
2664 * config/v850/v850.h (ASM_SPEC): If -mv850es is specified pass
2665 -mv850e1 to the assembler. If -mv850e1 or -mv850es is specified
2666 then define __v850e1__.
2667 * doc/invoke.texi: Document -mv850es.
2668
440eb8de
RH
26692011-01-24 Richard Henderson <rth@redhat.com>
2670
2671 * config/rx/predicates.md (rx_fp_comparison_operator): Don't accept
2672 compound unordered comparisons.
2673 * config/rx/rx.c (rx_split_fp_compare): Remove.
2674 * config/rx/rx-protos.h: Update.
2675 * config/rx/rx.md (gcc_conds, rx_conds): Remove.
2676 (cbranchsf4): Don't call rx_split_fp_compare.
2677 (*cbranchsf4): Use rx_split_cbranch.
2678 (*cmpsf): Don't accept "i" constraint.
2679 (*conditional_branch): Only valid after reload.
2680 (cstoresf4): Merge expander with insn. Don't call rx_split_fp_compare.
2681
3ff79f99
MM
26822011-01-24 Michael Meissner <meissner@linux.vnet.ibm.com>
2683
2684 PR target/47385
2685 * config/rs6000/altivec.md (vector constant splitters): Add
2686 support for creating vector single precision constants if -mvsx is
2687 used and we would create the constant using Altivec primitives.
2688
ff3d9d08
BS
26892011-01-23 Bernd Schmidt <bernds@codesourcery.com>
2690 Richard Sandiford <rdsandiford@googlemail.com>
2691
2692 PR rtl-optimization/47166
2693 * reload1.c (emit_reload_insns): Disable the spill_reg_store
2694 mechanism for PRE_MODIFY and POST_MODIFY.
2695 (inc_for_reload): For PRE_MODIFY, return the insn that sets the
2696 reloadreg.
2697
7fcaf152
AS
26982011-01-23 Andreas Schwab <schwab@linux-m68k.org>
2699
8788adb6 2700 * compare-elim.c (maybe_select_cc_mode): Add ATTRIBUTE_UNUSED markers.
7fcaf152 2701
d09b58c4
JH
27022011-01-22 Jan Hubicka <jh@suse.cz>
2703
2704 PR lto/47333
2705 * lto-cgraph.c (reachable_from_this_partition_p): Fix pasto.
2706
e8ff8c5a
JH
27072011-01-22 Jan Hubicka <jh@suse.cz>
2708
2709 PR tree-optimization/43884
2710 PR lto/44334
8788adb6 2711 * predict.c (maybe_hot_frequency_p): Use entry block frequency as base.
e8ff8c5a
JH
2712 * doc/invoke.texi (hot-bb-frequency-fraction): Update docs.
2713
ccaed3ba
AS
27142011-01-22 Anatoly Sokolov <aesok@post.ru>
2715
2716 * config/s390/s390.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
2717 * config/s390/s390.c (s390_register_move_cost,
2718 s390_memory_move_cost): New.
2719 (TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.
2720
0cecee06
UW
27212011-01-22 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2722
2723 PR middle-end/47401
2724 * except.c (sjlj_assign_call_site_values): Move setting the
2725 crtl->uses_eh_lsda flag to ...
2726 (sjlj_mark_call_sites): ... here.
2727 (sjlj_emit_function_enter): Support NULL dispatch label.
2728 (sjlj_build_landing_pads): In a function with no landing pads
2729 that still has must-not-throw regions, generate code to register
2730 a personality function with empty LSDA.
2731
e692f276
RH
27322011-01-21 Richard Henderson <rth@redhat.com>
2733
1b7ae0b7
RH
2734 * config/rx/rx.c (TARGET_FLAGS_REGNUM): New.
2735
3843787f
RH
2736 * config/mn10300/mn10300.c (TARGET_FLAGS_REGNUM): New.
2737
e692f276
RH
2738 * compare-elim.c: New file.
2739 * Makefile.in (OBJS-common): Add it.
2740 (compare-elim.o): New.
2741 * common.opt (fcompare-elim): New.
2742 * opts.c (default_options_table): Add OPT_fcompare_elim.
2743 * tree-pass.h (pass_compare_elim_after_reload): New.
2744 * passes.c (init_optimization_passes): Add it.
2745 * recog.h: Protect against re-inclusion.
2746 * target.def (TARGET_FLAGS_REGNUM): New POD hook.
2747 * doc/invoke.texi (-fcompare-elim): Document it.
2748 * doc/tm.texi.in (TARGET_FLAGS_REGNUM): Document it.
2749 * doc/tm.texi: Rebuild.
2750
9a7c2050
NC
27512011-01-22 Nick Clifton <nickc@redhat.com>
2752
2753 * config/rx/rx.md (cstoresf4): Pass comparison operator to
2754 rx_split_fp_compare.
2755
15ba5696
NC
27562011-01-22 Nick Clifton <nickc@redhat.com>
2757
2758 * config/rx/rx.md (UNSPEC_CONST): New.
2759 (deallocate_and_return): Wrap the amount popped off the stack in
2760 an UNSPEC_CONST in order to stop it being rejected by
2761 -mmax-constant-size.
2762 (pop_and_return): Add a "(return)" rtx.
2763 (call): Drop the immediate operand.
2764 (call_internal): Likewise.
2765 (call_value): Likewise.
2766 (call_value_internal): Likewise.
2767 (sibcall_internal): Likewise.
2768 (sibcall_value_internal): Likewise.
2769 (sibcall): Likewise. Generate an explicit call using
2770 sibcall_internal.
2771 (sibcall_value): Likewise.
2772 (mov<>): FAIL if a constant operand is not legitimate.
2773 (addsi3_unpsec): New pattern.
9a7c2050 2774
38be4072 2775 * config/rx/rx.c (rx_print_operand_address): Handle UNSPEC CONSTs.
15ba5696
NC
2776 (ok_for_max_constant): New function.
2777 (gen_safe_add): New function.
2778 (rx_expand_prologue): Use gen_safe_add.
2779 (rx_expand_epilogue): Likewise.
2780 (rx_is_legitimate_constant): Use ok_for_max_constant. Handle
2781 UNSPEC CONSTs.
2782
caaf13d3
JL
27832011-01-21 Jeff Law <law@redhat.com>
2784
2785 PR tree-optimization/47053
2786 * tree-ssa-dse.c (need_eh_cleanup): New bitmap.
2787 (dse_optimize_stmt): Set the appropriate bit in NEED_EH_CLEANUP when
2788 statements are deleted.
2789 (tree_ssa_dse): Allocate & free NEED_EH_CLEANUP. If NEED_EH_CLEANUP
2790 is nonempty, then purge dead edges and cleanup the CFG.
2791
12c30f2f
AO
27922011-01-21 Alexandre Oliva <aoliva@redhat.com>
2793
2794 PR debug/47402
2795 Temporarily revert:
2796 2011-01-21 Alexandre Oliva <aoliva@redhat.com>
2797 PR debug/47106
2798 * tree-dfa.c (create_var_ann): Mark variable as used.
2799
7360d2ac
JJ
28002011-01-21 Jakub Jelinek <jakub@redhat.com>
2801
aaa52a96
JJ
2802 PR middle-end/45566
2803 * except.c (convert_to_eh_region_ranges): Emit queued no-region
2804 notes from other section in hot/cold partitioning even if
2805 last_action is -3. Increment call_site_base.
2806
7360d2ac
JJ
2807 PR rtl-optimization/47366
2808 * fwprop.c (forward_propagate_into): Return bool. If
2809 any changes are made, -fnon-call-exceptions is used and
2810 REG_EH_REGION note is present, call purge_dead_edges
2811 and return true if it purged anything.
2812 (fwprop_addr): Adjust callers, call cleanup_cfg (0) if
2813 any EH edges were purged.
2814
e90b336f
JL
28152011-01-21 Jeff Law <law@redhat.com>
2816
2817 PR rtl-optimization/41619
2818 * caller-save.c (setup_save_areas): Break out code to determine
2819 which hard regs are live across calls by examining the reload chains
2820 so that it is always used.
2821 Eliminate code which checked REG_N_CALLS_CROSSED.
2822
3ffe07e1
JJ
28232011-01-21 Jakub Jelinek <jakub@redhat.com>
2824
2825 PR tree-optimization/47355
2826 * tree-eh.c (cleanup_empty_eh_merge_phis): Give up if
2827 NOP has non-debug uses beyond PHIs in new_bb.
2828
1c7d0b34
AO
28292011-01-21 Alexandre Oliva <aoliva@redhat.com>
2830
2831 PR debug/47106
2832 * cfgexpand.c (account_used_vars_for_block): Only account vars
2833 that are annotated as used.
2834 (estimated_stack_frame_size): Don't set TREE_USED.
2835 * tree-dfa.c (create_var_ann): Mark variable as used.
2836
f99cc488
RG
28372011-01-21 Richard Guenther <rguenther@suse.de>
2838
2839 PR middle-end/47395
2840 * tree.def (WIDEN_MULT_MINUS_EXPR): Fix printed name.
2841
3bc27de7
RG
28422011-01-21 Richard Guenther <rguenther@suse.de>
2843
2844 PR tree-optimization/47365
2845 * tree-ssa-sccvn.h (vn_lookup_kind): Declare.
2846 (vn_reference_lookup_pieces): Adjust.
2847 (vn_reference_lookup): Likewise.
2848 * tree-ssa-sccvn.c (vn_walk_kind): New static global.
2849 (vn_reference_lookup_3): Only look through kills if in
2850 VN_WALKREWRITE mode.
2851 (vn_reference_lookup_pieces): Adjust.
2852 (vn_reference_lookup): Likewise.
2853 (visit_reference_op_load): Likewise.
2854 (visit_reference_op_store): Likewise.
2855 * tree-ssa-pre.c (phi_translate_1): Use VN_WALK mode.
2856 (compute_avail): Likewise.
2857 (eliminate): Likewise.
2858
d8debb1d
JJ
28592011-01-21 Jakub Jelinek <jakub@redhat.com>
2860
2861 * tree-ssa-live.c (remove_unused_scope_block_p): Don't remove
2862 DECL_IGNORED_P non-reg vars if they are used.
2863
3a2df831
JJ
2864 PR tree-optimization/47391
2865 * varpool.c (const_value_known_p): Return false if
2866 decl is volatile.
2867
1dd584a2
KT
28682011-01-21 Kai Tietz <kai.tietz@onevision.com>
2869
2870 PR bootstrap/47215
2871 * config/i386/i386.c (ix86_local_alignment): Handle
2872 case for va_list_type_node is nil.
2873 (ix86_canonical_va_list_type): Likewise.
2874
7f9f095e
AM
28752011-01-21 Alan Modra <amodra@gmail.com>
2876
2877 * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Add
2878 builtin_define __CMODEL_MEDIUM__ and __CMODEL_LARGE__.
2879
837b01f6
RR
28802011-01-20 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
2881
2882 * config/arm/arm.md (define_attr type): Rename f_load
2883 and f_store to f_fpa_load and f_fpa_store. Update.
2884 (write_conflict): Deal with rename fallout.
2885 (*push_fp_multi): Likewise.
2886 * config/arm/fpa.md (f_load): Use f_fpa_load.
2887 (f_store): Use f_fpa_store.
2888 (*movsf_fpa): Likewise.
2889 (*movdf_fpa): Likewise.
2890 (*movxf_fpa): Likewise.
2891 (*thumb2_movsf_fpa): Likewise.
2892 (*thumb2_movdf_fpa): Likewise.
2893 (*thumb2_movxf_fpa): Likewise.
2894 * config/arm/vfp.md (*thumb2_movdf_vfp): Fix attribute to
2895 f_loadd and f_stored.
2896 (*thumb2_movdi_vfp): Likewise.
2897 (*thumb2_movsf_vfp): Fix attribute to f_loads.
2898 (*thumb2_movsi_vfp): Likewise.
2899 * config/arm/cortex-m4-fpu.md (cortex_m4_f_load):
2900 Use f_loads instead of f_load.
2901 * config/arm/cortex-a5.md (cortex_a5_f_loads): Remove f_load.
2902
a1a79768
AS
29032011-01-20 Anatoly Sokolov <aesok@post.ru>
2904
2905 * config/xtensa/xtensa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
2906 * config/xtensa/xtensa-protos.h (constantpool_address_p): Remove.
2907 * config/xtensa/xtensa.c (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
2908 (xtensa_mode_dependent_address_p): New function.
2909 (constantpool_address_p): Make static. Change return type to bool.
2910 Change argument type to const_rtx. Use CONST_INT_P predicate.
2911
427f6cec
AO
29122011-01-20 Alexandre Oliva <aoliva@redhat.com>
2913
2914 PR debug/46583
2915 * tree-ssa-live.c (remove_unused_scope_block_p): Keep type decls.
2916
583ac69c
JJ
29172011-01-20 Jakub Jelinek <jakub@redhat.com>
2918
2919 PR debug/47283
2920 * cfgexpand.c (expand_debug_expr): Instead of generating
2921 (mem (debug_implicit_ptr)) for MEM_REFs use COMPONENT_REF
2922 etc. handling.
2923
93e452ed
RG
29242011-01-20 Richard Guenther <rguenther@suse.de>
2925
2926 PR middle-end/47370
2927 * tree-inline.c (remap_gimple_op_r): Recurse manually for
2928 the pointer operand of MEM_REFs.
2929
28fc44f3
JJ
29302011-01-20 Jakub Jelinek <jakub@redhat.com>
2931
2932 PR tree-optimization/46130
2933 * ipa-split.c (consider_split): If return_bb contains non-virtual
2934 PHIs other than for retval or if split_function would not adjust it,
2935 refuse to split.
2936
ddd268f2
RG
29372011-01-20 Richard Guenther <rguenther@suse.de>
2938
2939 PR tree-optimization/47167
2940 * tree-ssa-copyrename.c (copy_rename_partition_coalesce):
2941 Revert previous change, only avoid enumeral type changes.
2942
882020aa
MS
29432011-01-19 Mike Stump <mikestump@comcast.net>
2944
2945 * doc/tm.texi.in (BRANCH_COST): Englishify.
2946 * doc/tm.texi (BRANCH_COST): Likewise.
2947
7edb6247
DS
29482011-01-19 Dodji Seketeli <dodji@redhat.com>
2949
2950 PR c++/47291
2951 * dwarf2out.c (generic_type_p, schedule_generic_params_dies_gen)
61052244
AM
2952 (gen_scheduled_generic_parms_dies): New functions.
2953 (gen_struct_or_union_type_die): Schedule template parameters DIEs
2954 generation for the end of CU compilation.
2955 (dwarf2out_finish): Generate template parameters DIEs here.
7edb6247 2956
23d5ed5d
AO
29572011-01-19 Alexandre Oliva <aoliva@redhat.com>
2958
2959 PR debug/46240
2960 * tree-into-ssa.c (maybe_register_def): Do not attempt to add
2961 debug bind stmt on merge edges.
2962
37d6a488
AO
29632011-01-19 Alexandre Oliva <aoliva@redhat.com>
2964
2965 PR debug/47079
2966 PR debug/46724
2967 * function.c (instantiate_expr): Instantiate incoming rtl of
2968 implicit arguments, and recurse on VALUE_EXPRs.
2969 (instantiate_decls): Instantiate rtl and VALUE_EXPR of result.
2970 * var-tracking.c (adjust_mems): Reject virtual_incoming_args_rtx.
2971
689f2c82
AO
29722011-01-19 Alexandre Oliva <aoliva@redhat.com>
2973
2974 * c-parser.c (c_parser_for_statement): Initialize
2975 collection_expression.
2976
03029de4
JM
29772011-01-19 Joseph Myers <joseph@codesourcery.com>
2978
2979 * config/spu/spu-elf.h (ASM_SPEC): Remove %{w:-W}.
2980
3e03217e
JM
29812011-01-19 Joseph Myers <joseph@codesourcery.com>
2982
2983 * config/rs6000/sysv4.h (LINK_PATH_SPEC): Remove.
2984 (LINK_SHLIB_SPEC): Don't use %(link_path).
2985 (SUBTARGET_EXTRA_SPECS): Remove link_path.
2986
5bbe9b3f
JM
29872011-01-19 Joseph Myers <joseph@codesourcery.com>
2988
2989 * config/rs6000/sysv4.h (SHARED_LIB_SUPPORT): Remove conditional.
2990 (NO_SHARED_LIB_SUPPORT): Remove.
2991 (LINK_SHLIB_SPEC): Remove one conditional definition.
2992
368e0b39
JM
29932011-01-19 Joseph Myers <joseph@codesourcery.com>
2994
2995 * config/mips/linux64.h (LINK_SPEC): Remove %{non_shared}
2996 %{call_shared}.
2997 * config/mips/mips.h (LINK_SPEC): Remove %{non_shared}.
2998 * config/mips/netbsd.h (LINK_SPEC): Remove %{call_shared}.
2999 * config/mips/openbsd.h (LINK_SPEC): Remove %{non_shared}
3000 %{call_shared} and conditionals on these options not being passed.
3001 * config/mips/sde.h (LINK_SPEC): Remove %{non_shared}
3002 %{call_shared}.
3003
ed7656f6
JJ
30042011-01-19 Jakub Jelinek <jakub@redhat.com>
3005
68457901
JJ
3006 * ipa-split.c (find_return_bb): Use single_pred_p/single_pred_edge,
3007 simplify.
3008
ed7656f6
JJ
3009 * ipa-split.c: Spelling fixes.
3010
e0d1958f
RH
30112011-01-19 Richard Henderson <rth@redhat.com>
3012
3013 * config/mn10300/mn10300.md (mulsi3): Use reg_or_am33_const_operand.
3014 (*mulsi3): Likewise.
3015
27098b6b
RH
3016 * longlong.h [__mn10300__] (count_leading_zeros): New.
3017 [__mn10300__] (umul_ppmm, smul_ppmm): New.
3018 [__mn10300__] (add_ssaaaa, subddmmss): New.
3019 [__mn10300__] (udiv_qrnnd, sdiv_qrnnd): New.
3020 [__mn10300__] (UMUL_TIME, UDIV_TIME): New.
3021
d6be7c36
UW
30222011-01-19 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3023
3024 * config/spu/spu.h (MOVE_RATIO): Return 4 in the !speed case.
3025
b1efde2a
RH
30262011-01-19 Richard Henderson <rth@redhat.com>
3027
44217823
RH
3028 * config/mn10300/mn10300.md (addsi3_flags): New.
3029 (addc_internal, adddi3, adddi3_internal, *adddi3_degenerate): New.
3030 (subsi3_flags, subc_internal, subdi3): New.
3031 (subdi3_internal, *subdi3_degenerate): New.
3032 * config/mn10300/predicates.md (reg_or_am33_const_operand): New.
3033
37a185d7
RH
3034 * config/mn10300/mn10300.c (mn10300_can_use_retf_insn): New.
3035 (mn10300_can_use_rets_insn): Rename from mn10300_can_use_return_insn.
3036 (mn10300_expand_epilogue): Use it. Compute REG_SAVE_BYTES once.
3037 * config/mn10300/mn10300-protos.h: Update.
3038 * config/mn10300/mn10300.md (return): Use mn10300_can_use_retf_insn.
3039 (return_ret): Likewise. Rename from return_internal_regs.
3040 (return_internal): Remove.
3041
040c5757
RH
3042 * config/mn10300/mn10300.c (mn10300_unspec_int_label_counter): Remove.
3043 (mn10300_asm_output_addr_const_extra): Don't handle UNSPEC_INT_LABEL.
3044 (mn10300_legitimate_constant_p): Likewise.
3045 (mn10300_can_use_return_insn): Use mn10300_initial_offset.
3046 (mn10300_frame_size): New.
3047 (mn10300_expand_prologue): Use it.
3048 (mn10300_expand_epilogue): Likewise.
3049 (mn10300_initial_offset): Likewise.
3050 * config/mn10300/mn10300-protos.h: Update.
3051 * config/mn10300/mn10300.h (mn10300_unspec_int_label_counter): Remove.
3052 * config/mn10300/mn10300.md (UNSPEC_INT_LABEL): Remove.
3053 (prologue, epilogue, return_internal): Tidy output code.
3054 (mn10300_store_multiple_operation, return): Likewise.
3055 (int_label, pop_pic_reg, GOTaddr2picreg): Remove.
3056 (am33_loadPC, mn10300_loadPC, call_next_insn): Remove.
3057 (add_GOT_to_pic_reg, add_GOT_to_any_reg): Remove.
3058 (load_pic, am33_load_pic): New.
3059 (mn10300_load_pic0, mn10300_load_pic1): New.
3060
bad41521
RH
3061 * config/mn10300/mn10300-modes.def (CCZN, CCZNC): New modes.
3062 * config/mn10300/mn10300.c (CC_FLAG_Z): New.
3063 (CC_FLAG_N, CC_FLAG_C, CC_FLAG_V): New.
3064 (cc_flags_for_mode, cc_flags_for_code): New.
3065 (mn10300_print_operand) ['B']: Use nc/ns for GE/LT when the
3066 overflow flag is not valid. Validate that the flags we need
3067 for the comparison are valid.
3068 (mn10300_output_cmp): Remove.
3069 (mn10300_output_add): New.
3070 (mn10300_select_cc_mode): Use cc_flags_for_code.
3071 (mn10300_split_cbranch): New.
3072 (mn10300_match_ccmode): New.
3073 (mn10300_split_and_operand_count): New.
3074 * config/mn10300/mn10300.h (SELECT_CC_MODE): Pass all of the arguments
3075 to the function.
3076 * config/mn10300/mn10300.md (*am33_addsi3, *mn10300_addsi3): Merge...
3077 (addsi3): ... here. Use mn10300_output_add.
3078 (*addsi3_flags): New.
3079 (*am33_subsi3, *mn10300_subsi3): Merge...
3080 (subsi3): ... here. Use attribute isa.
3081 (*subsi3_flags): New.
3082 (negsi2): Rewrite from expander to insn_and_split. Use NOT+INC
3083 when possible.
3084 (*am33_andsi3, *mn10300_andsi3): Merge...
3085 (andsi3): ... here.
3086 (*andsi3_flags): New.
3087 (andsi3 splitters): New.
3088 (*am33_iorsi3, *mn10300_iorsi3): Merge...
3089 (iorsi3): ... here.
3090 (*iorsi3_flags): New.
3091 (*am33_xorsi3, *mn10300_xorsi3): Merge...
3092 (xorsi3): ... here.
3093 (*xorsi3_flags): New.
3094 (*am33_cmpsi2, *mn10300_cmplsi2): Merge...
3095 (one_cmplsi2): ... here.
3096 (*one_cmplsi2_flags): New.
3097 (*cbranchsi4_cmp): Rename from cbranchsi4_post_reload. Use "r"
3098 instead of "dax" in constraints. Use mn10300_split_cbranch.
3099 (*cmpsi): Rename from cmpsi. Do not use mn10300_output_cmp. Do not
3100 use matching constraints to eliminate a self-comparison.
3101 (*integer_conditional_branch): Rename from integer_conditional_branch.
3102 Use int_mode_flags to match CC_REG.
3103 (*cbranchsi4_btst, *btstsi): New.
3104 (*cbranchsf4_cmp): Rename from *cbranchsf4_post_reload. Use
3105 mn10300_split_cbranch.
3106 (*am33_cmpsf): Rename from am33_cmpsf.
3107 (*float_conditional_branch): Rename from float_conditional_branch.
3108 (*zero_extendqisi2_am33, *zero_extendqisi2_mn10300): Merge...
3109 (zero_extendqisi2): ... here.
3110 (*zero_extendhisi2_am33, *zero_extendhisi2_mn10300): Merge...
3111 (zero_extendhisi2): ... here.
3112 (*extendqisi2_am33, *extendqisi2_mn10300): Merge...
3113 (extendqisi2): ... here.
3114 (*extendhisi2_am33, *extendhisi2_mn10300): Merge...
3115 (extendhisi2): ... here.
3116 (*am33_ashlsi3, *mn10300_ashlsi3): Merge...
3117 (ashlsi3): ... here.
3118 (*am33_lshrsi3, *mn10300_lshrsi3): Merge...
3119 (lshrsi3): ... here.
3120 (*am33_ashrisi3, *mn10300_ashrsi3): Merge...
3121 (ashrsi3): ... here.
3122 (consecutive add peephole): Remove.
3123 * config/mn10300/predicates.md (label_ref_operand): New.
3124 (int_mode_flags): New.
3125 (CCZN_comparison_operator): New.
3126
9efb4993
RH
3127 * config/mn10300/mn10300.md (UNSPEC_EXT): New.
3128 (throughput_42_latency_43): New reservation.
3129 (mulsidi3, umulsidi3): New expanders.
3130 (mulsidi3_internal): Rewrite from old mulsidi3 pattern. Expose
3131 the MDR register to allocation; separately allocate the low and
3132 high parts of the DImode result.
3133 (umulsidi3_internal): Similarly.
3134 (*am33_mulsi3, *mn10300_mulsi3): Merge into ...
3135 (*mulsi3): ... here. Clobber MDR as a scratch as necessary.
3136 (udivsi3, umodsi3): Remove.
3137 (udivmodsi4, divmodsi4): New expanders.
3138 (*udivmodsi4): Rename from udivmodsi4. Expose MDR properly.
3139 (*divmodsi4): Simiarly.
3140 (ext_internal): New.
3141
c25a21f5
RH
3142 * config/mn10300/constraints.md ("z"): New constraint.
3143 * config/mn10300/mn10300.h (MDR_REGNUM): Remove.
3144 (FIXED_REGISTERS): Don't fix MDR.
3145 (CALL_USED_REGSITERS): Reformat nicely.
3146 (REG_ALLOC_ORDER): Add MDR.
3147 (enum regclass): Add MDR_REGS.
3148 (REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update to match.
3149 (IRA_COVER_CLASSES): Add MDR_REGS.
3150 (REGNO_REG_CLASS): Handle MDR_REG.
3151 * config/mn10300/mn10300.c (mn10300_secondary_reload): Handle MDR_REGS.
3152 (mn10300_register_move_cost): Likewise.
3153 * config/mn10300/mn10300.md (MDR_REG): New.
3154 (*movsi_internal): Handle moves to/from MDR_REGS.
3155
36846b26
RH
3156 * config/mn10300/mn10300.c (mn10300_print_operand_address): Handle
3157 POST_MODIFY.
3158 (mn10300_secondary_reload): Tidy combination reload classes.
3159 (mn10300_legitimate_address_p): Allow post-modify and reg+reg
3160 addresses for AM33. Allow symbolic offsets for reg+imm.
3161 (mn10300_regno_in_class_p): New.
3162 (mn10300_legitimize_reload_address): New.
3163 * config/mn10300/mn10300.h (enum reg_class): Remove
3164 DATA_OR_ADDRESS_REGS, DATA_OR_EXTENDED_REGS, ADDRESS_OR_EXTENDED_REGS,
3165 SP_OR_EXTENDED_REGS, SP_OR_ADDRESS_OR_EXTENDED_REGS. Add
3166 SP_OR_GENERAL_REGS.
3167 (REG_CLASS_NAMES): Update to match.
3168 (REG_CLASS_CONTENTS): Likewise.
3169 (INDEX_REG_CLASS): Use GENERAL_REGS for AM33.
3170 (BASE_REG_CLASS): Use SP_OR_GENERAL_REGS for AM33.
3171 (REGNO_IN_RANGE_P): Remove.
3172 (REGNO_DATA_P): Use mn10300_regno_in_class_p.
3173 (REGNO_ADDRESS_P, REGNO_EXTENDED_P): Likewise.
3174 (REGNO_STRICT_OK_FOR_BASE_P): Likewise.
3175 (REGNO_STRICT_OK_FOR_BIT_BASE_P): Likewise.
3176 (REGNO_STRICT_OK_FOR_INDEX_P): Likewise.
3177 (REGNO_SP_P, REGNO_AM33_P, REGNO_FP_P): Remove.
3178 (REGNO_GENERAL_P): New.
3179 (HAVE_POST_MODIFY_DISP): New.
3180 (USE_LOAD_POST_INCREMENT, USE_STORE_POST_INCREMENT): New.
3181 (LEGITIMIZE_RELOAD_ADDRESS): New.
3182 * config/mn10300/mn10300-protos.h: Update.
3183
8b119bb6
RH
3184 * config/mn10300/mn10300.c (mn10300_preferred_reload_class): Allow
3185 DATA_REGS for AM33 stack-pointer destination.
3186 (mn10300_preferred_output_reload_class): Likewise.
3187 (mn10300_secondary_reload): Rearrange mn10300_secondary_reload_class
3188 into a form appropriate for ...
3189 (TARGET_SECONDARY_RELOAD): New.
3190 * config/mn10300/mn10300.h (SECONDARY_RELOAD_CLASS): Remove.
3191 * config/mn10300/mn10300-protos.h: Update.
3192 * config/mn10300/mn10300.md (reload_plus_sp_const): Rename from
3193 reload_insi; use the "A" constraint for the scratch; handle AM33
3194 moves of sp to non-address registers.
3195
b1efde2a
RH
3196 * config/mn10300/mn10300.md (*am33_movqi, *mn10300_movqi): Merge into
3197 (*movqi_internal): ... here.
3198 (*am33_movhi, *mn10300_movhi): Merge into...
3199 (*movhi_internal): ... here.
3200 (*movsi_internal): Use "r" instead of "dax" in constraints. Use "A"
3201 as the source/destination of moves from/to SP.
3202 (movsf): Only allow for AM33-2.
1c3ba85b 3203 (*movsf_internal): Use "r" instead of "dax"; use "F" instead of
b1efde2a
RH
3204 any integer constant constraint. Only allow for AM33-2. Tidy
3205 all of the alternative outputs.
3206 (movdi, movdf, *am33_2_movdf, *mn10300_movdf): Remove.
3207 (udivmodsi4): Delete expander and promote *udivmodsi4. Disallow
3208 for MN103.
3209 (udivsi3, umodsi3): New patterns for MN103 only.
3210
b899fd78
JR
32112011-01-19 Joern Rennecke <amylaar@spamcop.net>
3212
3213 * doc/tm.texi.in: Spell out that a lack of register class unions
3214 can lead to ICEs.
3215 * doc/tm.texi: Regenerate.
3216
afaaa67d
JJ
32172011-01-19 Jakub Jelinek <jakub@redhat.com>
3218
2e0642cd
JJ
3219 PR rtl-optimization/47337
3220 * dce.c (check_argument_store): New function.
3221 (find_call_stack_args): Ignore debug insns. Use check_argument_store.
3222
afaaa67d
JJ
3223 PR tree-optimization/47290
3224 * tree-eh.c (infinite_empty_loop_p): New function.
3225 (cleanup_empty_eh): Use it.
3226
d2cd871f
SE
32272011-01-18 Steve Ellcey <sje@cup.hp.com>
3228
3229 PR target/46997
3230 * ia64.c (ia64_expand_unpack): Fix code for TARGET_BIG_ENDIAN.
3231 (a64_expand_widen_sum): Ditto.
3232 * vect.md (mulv2si3): Disable for TARGET_BIG_ENDIAN.
3233 (vec_extract_evenodd_help): Ditto.
3234 (vec_extract_evenv4hi): Ditto.
3235 (vec_extract_oddv4hi): Ditto.
3236 (vec_extract_evenv2si): Ditto.
3237 (vec_extract_oddv2si): Ditto.
3238 (vec_extract_evenv2sf): Ditto.
3239 (vec_extract_oddv2sf): Ditto.
3240 (vec_pack_trunc_v4hi: Ditto.
3241 (vec_pack_trunc_v2si): Ditto.
3242 (vec_interleave_lowv8qi): Fix for TARGET_BIG_ENDIAN.
3243 (vec_interleave_highv8qi): Ditto.
3244 (mix1_r): Ditto.
3245 (vec_extract_oddv8qi): Ditto.
3246 (vec_interleave_lowv4hi): Ditto.
3247 (vec_interleave_highv4hi): Ditto.
3248 (vec_interleave_lowv2si): Ditto.
3249 (vec_interleave_highv2si): Ditto.
3250
41a1208a
JDA
32512011-01-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3252
3253 * doc/extend.texi: Mention __float128 support on hppa HP-UX.
3254 * config/pa/pa-hpux.h (HPUX_LONG_DOUBLE_LIBRARY): Define to 1.
3255 * config/pa/pa.c (pa_expand_builtin): New. Include "langhooks.h".
3256 (pa_c_mode_for_suffix): New.
3257 (TARGET_EXPAND_BUILTIN): Define.
3258 (TARGET_C_MODE_FOR_SUFFIX): Define.
3259 (pa_builtins): Define.
3260 (pa_init_builtins): Register __float128 type and init new support
3261 builtins.
3262 * config/pa/pa.h (HPUX_LONG_DOUBLE_LIBRARY): Define if not defined.
3263 * config/pa/quadlib.c (_U_Qfcopysign): New.
3264
1ecad98e
EB
32652011-01-18 Eric Botcazou <ebotcazou@adacore.com>
3266
3267 PR middle-end/46894
3268 * explow.c (allocate_dynamic_stack_space): Do not assume more than
3269 BITS_PER_UNIT alignment if STACK_DYNAMIC_OFFSET or STACK_POINTER_OFFSET
3270 are defined.
3271
d4f2460a
UW
32722011-01-18 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3273
3274 PR tree-optimization/47179
3275 * config/spu/spu.c (spu_ref_may_alias_errno): New function.
3276 (TARGET_REF_MAY_ALIAS_ERRNO): Define.
3277
4994da65
RG
32782011-01-18 Richard Guenther <rguenther@suse.de>
3279
3280 PR rtl-optimization/47216
3281 * emit-rtl.c: Include tree-flow.h.
3282 (set_mem_attributes_minus_bitpos): Use tree_could_trap_p instead
3283 of replicating it with different semantics.
3284 * Makefile.in (emit-rtl.o): Adjust.
3285
1eb458d1
RR
32862011-01-18 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
3287
38be4072 3288 * config/arm/cortex-a9.md (cortex-a9-neon.md): Actually include.
61052244 3289 (cortex_a9_dp): Handle neon types correctly.
1eb458d1 3290
e7ef91dc
JJ
32912011-01-18 Jakub Jelinek <jakub@redhat.com>
3292
3293 PR rtl-optimization/47299
3294 * expr.c (expand_expr_real_2) <case WIDEN_MULT_EXPR>: Don't use
38be4072 3295 subtarget. Use normal multiplication if both operands are constants.
e7ef91dc
JJ
3296 * expmed.c (expand_widening_mult): Don't try to optimize constant
3297 multiplication if op0 has VOIDmode. Convert op1 constant to mode
3298 before using it.
3299
535b7874
RW
33002011-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3301
3302 * doc/lto.texi (LTO): Ensure two spaces after period. Fix
3303 spacing after 'e.g.', typos, comma, hyphenation.
3304
27bf36f3
RH
33052011-01-17 Richard Henderson <rth@redhat.com>
3306
8a5b5449
RH
3307 * config/rx/predicates.md (rx_constshift_operand): Use match_test.
3308 (rx_restricted_mem_operand): New.
3309 (rx_shift_operand): Use register_operand.
3310 (rx_source_operand, rx_compare_operand): Likewise.
3311 * config/rx/rx.md (addsi3_flags): New expander.
3312 (adddi3): Rewrite as expander.
3313 (adc_internal, *adc_flags, adddi3_internal): New patterns.
3314 (subsi3_flags): New expander.
3315 (subdi3): Rewrite as expander.
3316 (sbb_internal, *sbb_flags, subdi3_internal): New patterns.
3317
784f69be
RH
3318 * config/rx/rx.c (RX_BUILTIN_SAT): Remove.
3319 (rx_init_builtins): Remove sat builtin.
3320 (rx_expand_builtin): Likewise.
3321 * config/rx/rx.md (ssaddsi3): New.
3322 (*sat): Rename from sat. Represent the CC_REG input.
3323
f033541c
RH
3324 * config/rx/predicates.md (rshift_operator): New.
3325 * config/rx/rx.c (rx_expand_insv): Remove.
3326 * config/rx/rx-protos.h: Update.
3327 * config/rx/rx.md (*bitset): Rename from bitset. Swap the ashift
3328 operand to the canonical position.
3329 (*bitset_in_memory, *bitinvert, *bitinvert_in_memory): Similarly.
3330 (*bitclr, *bitclr_in_memory): Similarly.
3331 (*insv_imm, rx_insv_reg, *insv_cond, *bmcc, *insv_cond_lt): New.
3332 (insv): Retain the zero_extract in the expansion.
3333
34fee389
RH
3334 * config/rx/rx.md (bswapsi2): Use = not + for output reload.
3335 (bswaphi2, bitinvert, revw): Likewise.
3336
265c835f
RH
3337 * config/rx/rx.c (gen_rx_store_vector): Use VOIDmode for gen_rtx_SET.
3338 (gen_rx_rtsd_vector, gen_rx_popm_vector): Likewise.
3339 * config/rx/rx.md (pop_and_return): Use VOIDmode for SET.
3340 (stack_push, stack_pushm, stack_pop, stack_popm): Likewise.
3341 (bitset, bitset_in_memory): Likewise.
3342 (bitinvert, bitinvert_in_memory): Likewise.
3343 (bitclr, bitclr_in_memory): Likewise.
3344 (insv, sync_lock_test_and_setsi, movstr, rx_movstr): Likewise.
3345 (rx_strend, rx_cmpstrn): Likewise.
3346 (rx_setmem): Likewise. Make the source BLKmode to match the dest.
3347 (bitop peep2 patterns): Remove.
3348
b4d83be3
RH
3349 * config/rx/rx.c (rx_match_ccmode): New.
3350 * config/rx/rx-protos.h: Update.
3351 * config/rx/rx.md (abssi2): Clobber, don't set flags.
3352 (addsi3, adddi3, andsi3, negsi2, one_cmplsi2, iorsi3): Likewise.
3353 (rotlsi3, rotrsi3, ashrsi3, lshrsi3, ashlsi3): Likewise.
3354 (subsi3, subdi3, xorsi3, addsf3, divsf3, mulsf3, subsf3): Likewise.
3355 (fix_truncsfsi2, floatsisf2): Likewise.
3356 (*abssi2_flags, *addsi3_flags, *andsi3_flags, *negsi2_flags): New.
3357 (*one_cmplsi2_flags, *iorsi3_flags, *rotlsi3_flags): New.
3358 (*rotrsi3_flags, *ashrsi3_flags, *lshrsi3_flags, *ashlsi3_flags): New.
3359 (*subsi3_flags, *xorsi3_flags): New.
3360
d0acb939
RH
3361 * config/rx/rx.md (cstoresf4, *cstoresf4): New patterns.
3362
c06fc3d9
RH
3363 * config/rx/rx.c (rx_print_operand): Remove workaround for
3364 unsplit comparison operations.
3365
2882702b
RH
3366 * config/rx/rx.md (movsicc): Split after reload.
3367 (*movsicc): Merge *movsieq and *movsine via match_operator.
3368 (*stcc): New pattern.
3369
6f7310f2
RH
3370 * config/rx/rx.c (rx_float_compare_mode): Remove.
3371 * config/rx/rx.h (rx_float_compare_mode): Remove.
3372 * config/rx/rx.md (cstoresi4): Split after reload.
3373 (*sccc): New pattern.
3374
e963cb1a
RH
3375 * config/rx/predicates.md (label_ref_operand): New.
3376 (rx_z_comparison_operator): New.
3377 (rx_zs_comparison_operator): New.
3378 (rx_fp_comparison_operator): New.
3379 * config/rx/rx.c (rx_print_operand) [B]: Examine comparison modes.
3380 Validate that the flags are set properly for the comparison.
3381 (rx_gen_cond_branch_template): Remove.
3382 (rx_cc_modes_compatible): Remove.
3383 (mode_from_flags): New.
3384 (flags_from_code): Rename from flags_needed_for_conditional.
3385 (rx_cc_modes_compatible): Re-write in terms of flags_from_mode.
3386 (rx_select_cc_mode): Likewise.
3387 (rx_split_fp_compare): New.
3388 (rx_split_cbranch): New.
3389 * config/rx/rx.md (most_cond, zs_cond): Remove iterators.
3390 (*cbranchsi4): Use match_operator and rx_split_cbranch.
3391 (*cbranchsf4): Similarly.
3392 (*cbranchsi4_tst): Rename from *tstbranchsi4_<code>. Use
3393 match_operator and rx_split_cbranch.
3394 (*cbranchsi4_tst_ext): Combine *tstbranchsi4m_eq and
3395 tstbranchsi4m_ne. Use match_operator and rx_split_cbranch.
3396 (*cmpsi): Rename from cmpsi.
3397 (*tstsi): Rename from tstsi.
3398 (*cmpsf): Rename from cmpsf; use CC_Fmode.
3399 (*conditional_branch): Rename from conditional_branch.
3400 (*reveresed_conditional_branch): Remove.
3401 (b<code>): Remove expander.
3402 * config/rx/rx-protos.h: Update.
3403
af530bb4
RH
3404 * config/rx/rx.c (rx_compare_redundant): Remove.
3405 * config/rx/rx.md (cmpsi): Don't use it.
3406 * config/rx/rx-protos.h: Update.
3407
27bf36f3
RH
3408 * config/rx/rx-modes.def (CC_F): New mode.
3409 * config/rx/rx.c (rx_select_cc_mode): New.
3410 * config/rx/rx.h (SELECT_CC_MODE): Use it.
3411 * config/rx/rx-protos.h: Update.
3412
d7fde127
RH
34132011-01-17 Richard Henderson <rth@redhat.com>
3414
3415 * except.c (dump_eh_tree): Fix stray ; after for statement.
3416
6ff38230
RG
34172011-01-17 Richard Guenther <rguenther@suse.de>
3418
3419 PR tree-optimization/47313
3420 * tree-inline.c (tree_function_versioning): Move DECL_RESULT
3421 handling before copying the body. Properly deal with
3422 by-reference result in SSA form.
3423
114ce554
ILT
34242011-01-17 Ian Lance Taylor <iant@google.com>
3425
bf5cd92b 3426 PR target/47219
114ce554
ILT
3427 * config/sparc/sparc.c (sparc_sr_alias_set): Don't define.
3428 (struct_value_alias_set): Don't define.
3429 (sparc_option_override): Don't set sparc_sr_alias_set and
3430 struct_value_alias_set.
3431 (save_or_restore_regs): Use gen_frame_mem rather than calling
3432 set_mem_alias_set.
3433 (sparc_struct_value_rtx): Likewise.
3434
98c6d93c
L
34352011-01-17 H.J. Lu <hongjiu.lu@intel.com>
3436
3437 PR target/47318
3438 * config/i386/avxintrin.h (_mm_maskload_pd): Change mask to
3439 __m128i.
3440 (_mm_maskstore_pd): Likewise.
3441 (_mm_maskload_ps): Likewise.
3442 (_mm_maskstore_ps): Likewise.
3443 (_mm256_maskload_pd): Change mask to __m256i.
3444 (_mm256_maskstore_pd): Likewise.
3445 (_mm256_maskload_ps): Likewise.
3446 (_mm256_maskstore_ps): Likewise.
3447
3448 * config/i386/i386-builtin-types.def: Updated.
3449 (ix86_expand_special_args_builtin): Likewise.
3450
3451 * config/i386/i386.c (bdesc_special_args): Update
3452 __builtin_ia32_maskloadpd, __builtin_ia32_maskloadps,
3453 __builtin_ia32_maskloadpd256, __builtin_ia32_maskloadps256,
3454 __builtin_ia32_maskstorepd, __builtin_ia32_maskstoreps,
3455 __builtin_ia32_maskstorepd256 and __builtin_ia32_maskstoreps256.
3456
3457 * config/i386/sse.md (avx_maskload<ssemodesuffix><avxmodesuffix>):
3458 Use <avxpermvecmode> on mask register.
3459 (avx_maskstore<ssemodesuffix><avxmodesuffix>): Likewise.
3460
b9361af2 34612011-01-17 Olivier Hainque <hainque@adacore.com>
61052244
AM
3462 Michael Haubenwallner <michael.haubenwallner@salomon.at>
3463 Eric Botcazou <ebotcazou@adacore.com>
b9361af2
OH
3464
3465 PR target/46655
3466 * xcoffout.c (ASM_OUTPUT_LINE): Output line only if positive, and only
3467 if <= USHRT_MAX in 32-bit mode.
3468
b7ae9eb5
RW
34692011-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3470
3471 * doc/install.texi (Configuration, Specific): Wrap long
3472 lines in examples. Allow line wrapping in long options
3473 and URLs where beneficial for PDF output.
3474
4377fad9
RS
34752011-01-16 Richard Sandiford <rdsandiford@googlemail.com>
3476
3477 * config/mips/mips.c (mips_classify_symbol): Don't return
3478 SYMBOL_PC_RELATIVE for nonlocal labels.
3479
55959ffa 34802011-01-15 Eric Botcazou <ebotcazou@adacore.com>
be46831f 3481
55959ffa
EB
3482 * config/sparc/sol2-bi.h (CC1_SPEC): Fix typo.
3483
34842011-01-15 Jan Hubicka <jh@suse.cz>
3485
3486 PR tree-optimization/47276
be46831f
JH
3487 * ipa.c (function_and_variable_visibility): Do not try to mark alias
3488 declarations as needed.
3489
05842ff5
MJ
34902011-01-15 Martin Jambor <mjambor@suse.cz>
3491
3492 * common.opt (fdevirtualize): New flag.
3493 * doc/invoke.texi (Option Summary): Document it.
3494 * opts.c (default_options_table): Add devirtualize flag.
3495 * ipa-prop.c (detect_type_change): Return immediately if
3496 devirtualize flag is not set.
3497 (detect_type_change_ssa): Likewise.
3498 (compute_known_type_jump_func): Likewise.
3499 (ipa_analyze_virtual_call_uses): Likewise.
3500
f65cf2b7
MJ
35012011-01-14 Martin Jambor <mjambor@suse.cz>
3502
3503 PR tree-optimization/45934
3504 PR tree-optimization/46302
3505 * ipa-prop.c (type_change_info): New type.
3506 (stmt_may_be_vtbl_ptr_store): New function.
3507 (check_stmt_for_type_change): Likewise.
3508 (detect_type_change): Likewise.
3509 (detect_type_change_ssa): Likewise.
3510 (compute_complex_assign_jump_func): Check for dynamic type change.
3511 (compute_complex_ancestor_jump_func): Likewise.
3512 (compute_known_type_jump_func): Likewise.
3513 (compute_scalar_jump_functions): Likewise.
3514 (ipa_analyze_virtual_call_uses): Likewise.
3515 (ipa_analyze_node): Push and pop cfun, set current_function_decl.
3516
eb5bb0fd
JM
35172011-01-14 Joseph Myers <joseph@codesourcery.com>
3518
3519 * config/i386/i386.h (CC1_CPU_SPEC_1): Don't handle -msse5.
3520 * config/i386/i386.opt (msse5): New Alias.
3521
f2060fbe
JM
35222011-01-14 Joseph Myers <joseph@codesourcery.com>
3523
3524 * config/sparc/linux.h (CC1_SPEC): Remove %{sun4:} %{target:}.
3525 * config/sparc/linux64.h (CC1_SPEC): Likewise.
3526 * config/sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
3527 * config/sparc/sparc.h (CC1_SPEC): Likewise.
3528
3a7b4385
JM
35292011-01-14 Joseph Myers <joseph@codesourcery.com>
3530
3531 * config/sparc/linux.h (CC1_SPEC): Don't handle old equivalents of
3532 -mcpu options.
3533 * config/sparc/linux64.h (CC1_SPEC): Likewise.
3534 * config/sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
3535 * config/sparc/sol2-bi.h (CPP_CPU_SPEC, CC1_SPEC): Likewise.
3536 * config/sparc/sparc.h (CPP_CPU_SPEC, CC1_SPEC, ASM_CPU_SPEC):
3537 Likewise.
3538 * config/sparc/t-elf (MULTILIB_MATCHES): Don't handle -mv8.
3539
a7b778f8
JM
35402011-01-14 Joseph Myers <joseph@codesourcery.com>
3541
38be4072 3542 * config/rs6000/vxworks.h (CC1_SPEC): Don't handle -fvec or -fvec-eabi.
a7b778f8 3543
a7edae0a
MS
35442011-01-14 Mike Stump <mikestump@comcast.net>
3545
3546 * config/alpha/alpha.md (umk_mismatch_args): Don't put a mode on set.
3547 * config/fr30/fr30.md: Likweise
3548 (movsi_push): Likewise.
3549 (movsi_pop): Likewise.
3550 (enter_func): Likewise.
3551 * config/moxie/moxie.md (movsi_push): Likewise.
3552 (movsi_pop): Likewise.
3553
cbabf03f
JM
35542011-01-14 Joseph Myers <joseph@codesourcery.com>
3555
3556 * config/mips/linux64.h (LINK_SPEC): Remove %{bestGnum}
3557 %{no_archive} %{exact_version}.
3558 * config/mips/mips.h (LINK_SPEC): Remove %{bestGnum}.
3559 * config/mips/netbsd.h (LINK_SPEC): Remove %{bestGnum}
3560 %{no_archive} %{exact_version}.
3561 * config/mips/openbsd.h (LINK_SPEC): Likewise.
3562 * config/mips/sde.h (LINK_SPEC): Remove %{bestGnum}.
3563 * config/mips/vxworks.h: Likewise.
3564
438da41a
JM
35652011-01-14 Joseph Myers <joseph@codesourcery.com>
3566
38be4072 3567 * config/microblaze/microblaze.h (ASM_SPEC): Remove %{microblaze1}.
438da41a 3568
da290a42
JM
35692011-01-14 Joseph Myers <joseph@codesourcery.com>
3570
3571 * config/m32r/little.h (CPP_ENDIAN_SPEC, CC1_ENDIAN_SPEC,
3572 ASM_ENDIAN_SPEC, LINK_ENDIAN_SPEC): Remove.
3573
8989d00e
JM
35742011-01-14 Joseph Myers <joseph@codesourcery.com>
3575
3576 * config/i386/nwld.h (LINK_SPEC): Check -nodefaultlibs not
3577 -nodefaultlib.
3578
a3010a69
JM
35792011-01-14 Joseph Myers <joseph@codesourcery.com>
3580
3581 * config/cris/cris.h (ASM_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check
3582 for mcpu not cpu.
3583 * config/cris/linux.h (CRIS_CPP_SUBTARGET_SPEC,
3584 CRIS_CC1_SUBTARGET_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check for mcpu
3585 not cpu.
3586 (CRIS_LINK_SUBTARGET_SPEC): Don't generate -rpath-link options.
3587 Don't handle -shlib.
3588
e7f2f537
JM
35892011-01-14 Joseph Myers <joseph@codesourcery.com>
3590
3591 * config/avr/avr.h (CPP_SPEC): Don't handle -posix.
3592 (CC1_SPEC): Don't handle -profile.
3593
34830bfd
JM
35942011-01-14 Joseph Myers <joseph@codesourcery.com>
3595
3596 * config/microblaze/microblaze.h (CC1_SPEC): Remove -gline spec.
3597 * config/mips/mips.h (CC1_SPEC): Likewise.
3598
b2d36e74
JM
35992011-01-14 Joseph Myers <joseph@codesourcery.com>
3600
3601 * config/microblaze/microblaze.h (CC1_SPEC): Remove %{save-temps: }.
3602 * config/mips/mips.h (CC1_SPEC): Likewise.
3603
dabadc52
JM
36042011-01-14 Joseph Myers <joseph@codesourcery.com>
3605
3606 * config/i386/linux.h (LINK_SPEC): Don't use %{!ibcs:} conditional.
3607 * config/m32r/linux.h (LINK_SPEC): Likewise.
3608 * config/mips/linux.h (LINK_SPEC): Likewise.
3609 * config/mips/linux64.h (LINK_SPEC): Likewise.
3610 * config/sparc/linux.h (LINK_SPEC): Likewise.
3611 * config/sparc/linux64.h (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
3612 LINK_SPEC): Likewise.
3613 * config/xtensa/linux.h (LINK_SPEC): Likewise.
3614
43ee6785
JM
36152011-01-14 Joseph Myers <joseph@codesourcery.com>
3616
3617 * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove
3618 %{version:-v}.
3619 * config/lm32/uclinux-elf.h (LINK_SPEC): Likewise.
3620
45e79dfd
JM
36212011-01-14 Joseph Myers <joseph@codesourcery.com>
3622
3623 * config/sparc/sp-elf.h (ASM_SPEC): Remove %{v:-V}.
3624 * config/sparc/sp64-elf.h (ASM_SPEC): Likewise.
3625
37e9e71d
JM
36262011-01-14 Joseph Myers <joseph@codesourcery.com>
3627
3628 * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove %{b}.
3629
bb127cd8
RO
36302011-01-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3631
3632 * configure.ac (gcc_cv_ld_static_dynamic): Solaris 2 ld always
3633 supports -Bstatic/-Bdynamic.
3634 * configure: Regenerate.
3635
89a012ea 36362011-01-14 Jan Hubicka <jh@suse.cz>
509d65dd 3637 Jack Howarth <howarth@bromo.med.uc.edu>
89a012ea
JH
3638
3639 PR target/46037
3640 * config/darwin.c (darwin_override_options): Honor flag_gtoggle
3641 when checking debug_info_level. Test write_symbols instead of
3642 debug_hooks->var_location when setting flag_var_tracking_uninit.
3643
7352c013
RG
36442011-01-14 Richard Guenther <rguenther@suse.de>
3645
3646 PR tree-optimization/47179
3647 * target.def (ref_may_alias_errno): New target hook.
3648 * targhooks.h (default_ref_may_alias_errno): Declare.
3649 * targhooks.c: Include tree-ssa-alias.h and tree-flow.h.
3650 (default_ref_may_alias_errno): New function.
3651 * target.h (struct ao_ref_s): Declare.
3652 * tree-ssa-alias.c: Include target.h.
3653 (call_may_clobber_ref_p_1): Use the ref_may_alias_errno target hook.
3654 * Makefile.in (tree-ssa-alias.o): Adjust dependencies.
3655 (targhooks.o): Likewise.
3656 * doc/tm.texi.in (TARGET_REF_MAY_ALIAS_ERRNO): Document.
3657 * doc/tm.texi (TARGET_REF_MAY_ALIAS_ERRNO): Copy documentation.
3658
9a6c9288
RG
36592011-01-14 Richard Guenther <rguenther@suse.de>
3660
3661 * tree-ssa-structalias.c (new_var_info): Use DECL_HARD_REGISTER.
3662
0fdb0d27
RG
36632011-01-14 Richard Guenther <rguenther@suse.de>
3664
3665 PR tree-optimization/47280
3666 * tree-ssa-forwprop.c (associate_plusminus): Cleanup EH and
3667 return CFG changes.
3668 (tree_ssa_forward_propagate_single_use_vars): Deal with
3669 CFG changes from associate_plusminus.
3670
8f66db3b
RG
36712011-01-14 Richard Guenther <rguenther@suse.de>
3672
3673 PR middle-end/47281
3674 Revert
3675 2011-01-11 Richard Guenther <rguenther@suse.de>
3676
280d9630
EB
3677 PR tree-optimization/46076
3678 * tree-ssa.c (useless_type_conversion_p): Conversions from
3679 unprototyped to empty argument list function types are useless.
8f66db3b 3680
6c0c92e6
RG
36812011-01-14 Richard Guenther <rguenther@suse.de>
3682
3683 PR tree-optimization/47286
280d9630 3684 * tree-ssa-structalias.c (new_var_info): Register variables are global.
6c0c92e6 3685
db09f943
MJ
36862011-01-14 Martin Jambor <mjambor@suse.cz>
3687
3688 PR middle-end/46823
3689 * tree-inline.c (expand_call_inline): Get fndecl from call graph edge.
3690
dde8a3a4
AS
36912011-01-13 Anatoly Sokolov <aesok@post.ru>
3692
3693 * config/xtensa/xtensa.h (XTENSA_LIBCALL_VALUE, LIBCALL_VALUE,
3694 LIBCALL_OUTGOING_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
3695 * config/xtensa/xtensa.c (xtensa_libcall_value,
3696 xtensa_function_value_regno_p): New functions.
3697 (TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P): Define.
3698
a2b63a20
KT
36992011-01-13 Kai Tietz <kai.tietz@onevision.com>
3700
3701 PR c++/47213
3702 * config/i386/cygming.h (TARGET_ASM_ASSEMBLE_VISIBILITY):
3703 PE specific hook.
3704 * config/i386/i386-protos.h (i386_pe_assemble_visibility):
3705 New function prototype.
3706 * config/i386/winnt.c (i386_pe_assemble_visibility):
3707 Warn only if attribute was specified by user.
3708
b41f0b34
MM
37092011-01-13 Michael Meissner <meissner@linux.vnet.ibm.com>
3710
3711 PR target/47251
3712 * config/rs6000/rs6000.md (floatunsdidf2): Add check for hardware
3713 floating point.
3714 (floatunsdidf2_fcfidu): Ditto.
3715
3f3c098d
AK
37162011-01-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
3717
3718 * config/s390/s390.c (print_operand_address): Replace 'error' with
3719 'output_operand_lossage'.
3720 (print_operand): Likewise.
3721
29fa95ed
JL
37222011-01-13 Jeff Law <law@redhat.com>
3723
280d9630 3724 PR rtl-optimization/39077
29fa95ed
JL
3725 * doc/invoke.texi (max-gcse-insertion-ratio): Document.
3726 * params.h (MAX_GCSE_INSERTION_RATIO): Define.
3727 * params.def (PARAM_MAX_GCSE_INSERTION_RATIO): Define.
3728 * lcm.c (pre_edge_lcm): Properly initialize output sbitmaps.
3729 * gcse.c (prune_insertions_deletions): New function.
3730 (compute_pre_data): Use it.
3731
71d12276
DS
37322011-01-13 Dodji Seketeli <dodji@redhat.com>
3733
3734 PR debug/PR46973
3735 * dwarf2out.c (prune_unused_types_mark_generic_parms_dies): New
3736 static function.
61052244 3737 (prune_unused_types_mark): Use it.
71d12276 3738
9b0f04e7
AB
37392011-01-13 Andrey Belevantsev <abel@ispras.ru>
3740
3741 PR rtl-optimization/45352
1c3ba85b 3742 * sel-sched.c: Update copyright years.
9b0f04e7 3743 (reset_sched_cycles_in_current_ebb): Also recheck the DFA state
1c3ba85b 3744 in the advancing loop when we have issued issue_rate insns.
9b0f04e7 3745
d6a3e264
RH
37462011-01-12 Richard Henderson <rth@redhat.com>
3747
a49b692a
RH
3748 * config/mn10300/mn10300.c (mn10300_md_asm_clobbers): New.
3749 (TARGET_MD_ASM_CLOBBERS): New.
3750
126b1483
RH
3751 * config/mn10300/mn10300.c (mn10300_delegitimize_address): New.
3752 (TARGET_DELEGITIMIZE_ADDRESS): New.
3753
f3d9d2e0
RH
3754 * config/mn10300/mn10300.md (UNSPEC_BSCH): New.
3755 (clzsi2, *bsch): New patterns.
3756
d84760c9
RH
3757 * config/mn10300/mn10300.md (INT): New mode iterator.
3758 (*mov<INT>_clr): New pattern, and peep2 to generate it.
3759
ec815d65
RH
3760 * config/mn10300/mn10300.c (mn10300_option_override): Force enable
3761 flag_split_wide_types.
3762
d6a3e264
RH
3763 * config/mn10300/mn10300.c (mn10300_asm_trampoline_template): Remove.
3764 (mn10300_trampoline_init): Rewrite without a template, an immediate
3765 load and a direct branch.
3766 * config/mn10300/mn10300.h (TRAMPOLINE_SIZE): Reduce to 16.
3767
0f8ab434
AS
37682011-01-12 Anatoly Sokolov <aesok@post.ru>
3769
3770 * config/s390/s390.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
3771 * config/s390/s390-protos.h (s390_output_addr_const_extra): Remove.
3772 * config/s390/s390.c (s390_output_addr_const_extra): Make static.
3773 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
3774
d8a24b65
KT
37752011-01-12 Kai Tietz <kai.tietz@onevision.com>
3776
3777 PR debug/47209
3778 * dwarfout2.c (should_emit_struct_debug): Use TYPE_MAIN_VARIANT
3779 of type.
3780
56e22cab
JH
37812011-01-12 Jan Hubicka <jh@suse.cz>
3782
3783 PR driver/47244
3784 * gcc.c (PLUGIN_COND): Update to disable plugin unless -flto is used.
3785 (PLUGIN_COND_CLOSE): New macro.
3786 (LINK_COMMAND_SPEC): Update to use PLUGIN_COND_CLOSE.
3787
4b18b3c2
RG
37882011-01-12 Richard Guenther <rguenther@suse.de>
3789
3790 PR lto/47259
3791 * lto-streamer-out.c (output_gimple_stmt): Do not wrap
3792 register variables in a MEM_REF.
3793
8e38461c
JM
37942011-01-12 Joseph Myers <joseph@codesourcery.com>
3795
3796 * config.gcc (arm*-*-linux*, bfin*-uclinux*, bfin*-linux-uclibc*,
3797 crisv32-*-linux* | cris-*-linux*, frv-*-*linux*, moxie-*-uclinux*,
3798 hppa*64*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux* |
3799 i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu |
3800 i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu,
3801 x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu,
3802 ia64*-*-linux*, lm32-*-uclinux*, m32r-*-linux*, m32rle-*-linux*,
3803 m68k-*-uclinux*, m68k-*-linux*, microblaze*-linux*,
3804 mips64*-*-linux* | mipsisa64*-*-linux*, mips*-*-linux*,
3805 s390-*-linux*, s390x-*-linux*, sh*-*-linux*, sparc-*-linux*,
3806 sparc64-*-linux*, vax-*-linux*, xtensa*-*-linux*,
3807 am33_2.0-*-linux*): Use gnu-user.h before linux.h.
3808 * config/gnu-user.h: New. Copied from linux.h.
3809 (LINUX_TARGET_STARTFILE_SPEC): Rename to
3810 GNU_USER_TARGET_STARTFILE_SPEC.
3811 (LINUX_TARGET_ENDFILE_SPEC): Rename to
3812 GNU_USER_TARGET_ENDFILE_SPEC.
3813 (LINUX_TARGET_CC1_SPEC): Rename to GNU_USER_TARGET_CC1_SPEC.
3814 (LINUX_TARGET_LIB_SPEC): Rename to GNU_USER_TARGET_LIB_SPEC.
3815 (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC,
3816 LINUX_TARGET_OS_CPP_BUILTINS, CHOOSE_DYNAMIC_LINKER1,
3817 CHOOSE_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER,
3818 UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64,
3819 BIONIC_DYNAMIC_LINKER, BIONIC_DYNAMIC_LINKER32,
3820 BIONIC_DYNAMIC_LINKER64, LINUX_DYNAMIC_LINKER,
3821 LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64,
3822 TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS): Remove.
3823 * config/arm/linux-eabi.h (CC1_SPEC): Use
3824 GNU_USER_TARGET_CC1_SPEC.
3825 (LIB_SPEC): Use GNU_USER_TARGET_LIB_SPEC.
3826 (STARTFILE_SPEC): Use GNU_USER_TARGET_STARTFILE_SPEC.
3827 (ENDFILE_SPEC): Use GNU_USER_TARGET_ENDFILE_SPEC
3828 * config/linux.h (NO_IMPLICIT_EXTERN_C, ASM_APP_ON, ASM_APP_OFF,
3829 LINUX_TARGET_STARTFILE_SPEC, STARTFILE_SPEC,
3830 LINUX_TARGET_ENDFILE_SPEC, ENDFILE_SPEC, LINUX_TARGET_CC1_SPEC,
3831 CC1_SPEC, CPLUSPLUS_CPP_SPEC, LINUX_TARGET_LIB_SPEC, LIB_SPEC,
3832 LINK_EH_SPEC, LINK_GCC_C_SEQUENCE_SPEC, USE_LD_AS_NEEDED): Remove.
3833
a570fc16
RG
38342011-01-12 Richard Guenther <rguenther@suse.de>
3835
3836 PR other/46946
3837 * doc/invoke.texi (ffast-math): Document it is turned on
3838 with -Ofast.
3839
b0223c3e
JH
38402011-01-12 Jan Hubicka <jh@suse.cz>
3841
3842 PR tree-optimization/47233
ca1e00b3
EB
3843 * opts.c (common_handle_option): Disable ipa-reference with profile
3844 feedback.
b0223c3e 3845
1c3ba85b 38462011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
d853ee42
NP
3847
3848 * c-parser.c (c_parser_objc_at_property_declaration): Improved
ca1e00b3
EB
3849 error message.
3850
d853ee42
NP
38512011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
3852
3853 * c-parser.c (c_lex_one_token): Updated and reindented some
3854 comments. No changes in code.
3855
4053a5a0
ILT
38562011-01-11 Ian Lance Taylor <iant@google.com>
3857
3858 * godump.c (go_output_var): Don't output the variable if there is
3859 already a type with the same name.
3860
fa3e04d2
ILT
38612011-01-11 Ian Lance Taylor <iant@google.com>
3862
3863 * godump.c (go_format_type): Don't generate float80.
3864
885fe07c
RH
38652011-01-11 Richard Henderson <rth@redhat.com>
3866
72d6e3c5
RH
3867 * config/mn10300/mn10300.c (mn10300_address_cost): Remove forward
3868 declaration. Rewrite for both speed and size.
3869 (mn10300_address_cost_1): Remove.
3870 (mn10300_register_move_cost): New.
3871 (mn10300_memory_move_cost): New.
3872 (mn10300_rtx_costs): Rewrite for both speed and size. Don't handle
3873 ZERO_EXTRACT. Do handle UNSPEC, arithmetic, logicals, compare,
3874 extensions, shifts, BSWAP, CLZ.
3875 (mn10300_wide_const_load_uses_clr): Remove.
3876 (TARGET_REGISTER_MOVE_COST): New.
3877 (TARGET_MEMORY_MOVE_COST): New.
3878 * config/mn10300/mn10300-protos.h: Update.
3879 * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Remove.
3880
df37c023
RH
3881 * config/mn10300/constraints.md ("R", "T"): Remove constraints.
3882 * config/mn10300/mn10300.c (mn10300_mask_ok_for_mem_btst): Remove.
3883 * config/mn10300/mn10300-protos.h: Update.
3884 * config/mn10300/mn10300.md (movsi_internal): Don't use "R".
3885 (*byte_clear, *byte_set, *bit_clear1, *bit_clear2, *bit_set): Remove.
3886 (iorqi3, *am33_iorqi3, *mn10300_iorqi3): Remove.
3887 (*test_int_bitfield, *test_byte_bitfield): Remove.
3888 (*bit_test, *subreg_bit_test): Remove.
62d3f9b2 3889 * config/mn10300/predicates.md (const_8bit_operand): Remove.
df37c023 3890
85a337b5
RH
3891 * config/mn10300/constraints.md ("c"): Rename from "A".
3892 ("A", "D"): New constraint letters.
3893 * config/mn10300/mn10300.md (fmasf4): Use the "c" constraint.
3894 (fmssf4, fnmasf4, fnmssf4): Likewise.
3895
a5c727e3
RH
3896 * config/mn10300/mn10300.md (isa): New attribute.
3897 (enabled): New attribute.
3898
0d9e23f4
RH
3899 * config/mn10300/mn10300.md (absdf2, negdf2): Remove.
3900 (abssf2, negsf2): Define only for hardware fp.
3901 (sqrtsf2): Reformat.
3902 (addsf3, subsf3, mulsf3): Merge expander and insn.
3903
c157b3f0
RH
3904 * config/mn10300/mn10300.h (ARG_PIONTER_CFA_OFFSET): New.
3905 (DEBUGGER_AUTO_OFFSET): Remove.
3906 (DEBUGGER_ARG_OFFSET): Remove.
3907
cc909bba
RH
3908 * config/mn10300/mn10300.c (mn10300_gen_multiple_store): Make static.
3909 Emit register stores with the same offsets as the hardware.
3910 (mn10300_store_multiple_operation): Don't check that the register
3911 save offsets are monotonic.
3912 * config/mn10300/mn10300-protos.h: Update.
3913
e3b5c2f3
RH
3914 * config/mn10300/mn10300.h (ASM_PN_FORMAT): Delete.
3915
885fe07c
RH
3916 * config/mn10300/mn10300.h (INCOMING_RETURN_ADDR_RTX): Define
3917 in terms of the value on the stack, not the MDR register.
3918
6e701822
JH
39192011-01-11 Jan Hubicka <jh@suse.cz>
3920
3921 PR lto/45721
3922 PR lto/45375
3923 * tree.h (symbol_alias_set_t): Move typedef here from varasm.c
3924 (symbol_alias_set_destroy, symbol_alias_set_contains,
3925 propagate_aliases_backward): Declare.
3926 * lto-streamer-out.c (struct sets): New sturcture.
3927 (trivally_defined_alias): New function.
3928 (output_alias_pair_p): Rewrite.
3929 (output_unreferenced_globals): Fix output of alias pairs.
3930 (produce_symtab): Likewise.
3931 * ipa.c (function_and_variable_visibility): Set weak alias destination
3932 as needed in lto.
3933 * varasm.c (symbol_alias_set_t): Remove.
3934 (symbol_alias_set_destroy): Export.
3935 (propagate_aliases_forward, propagate_aliases_backward): New functions
3936 based on ...
3937 (compute_visible_aliases): ... this one; remove.
3938 (trivially_visible_alias): New
3939 (trivially_defined_alias): New.
3940 (remove_unreachable_alias_pairs): Rewrite.
3941 (finish_aliases_1): Reorganize code checking if alias is defined.
3942 * passes.c (rest_of_decl_compilation): Do not call assemble_alias when
3943 in LTO mode.
3944
1b248907
RG
39452011-01-11 Richard Guenther <rguenther@suse.de>
3946
3947 PR tree-optimization/46076
3948 * tree-ssa.c (useless_type_conversion_p): Conversions from
3949 unprototyped to empty argument list function types are useless.
3950
b1923f0a
RG
39512011-01-11 Richard Guenther <rguenther@suse.de>
3952
3953 PR middle-end/45235
3954 * emit-rtl.c (set_mem_attributes_minus_bitpos): Do not mark
3955 volatile MEMs as MEM_READONLY_P.
3956
e98965af
RG
39572011-01-11 Richard Guenther <rguenther@suse.de>
3958
3959 PR tree-optimization/47239
3960 * tree-ssa-ccp.c (get_value_from_alignment): Punt for FUNCTION_DECLs.
3961
9f9ca914
JL
39622011-01-11 Jeff Law <law@redhat.com>
3963
1ee3ea05 3964 PR tree-optimization/47086
9f9ca914
JL
3965 * tree-ssa-loop-ivopts.c (find_givs_in_stmt_scev): Do not record
3966 IVs from statements that might throw.
3967
345fdcb7
JH
39682011-01-10 Jan Hubicka <jh@suse.cz>
3969
3970 PR lto/45375
3971 * lto-cgraph.c (input_profile_summary): Remove overactive sanity check.
3972
c459c97b
JH
39732011-01-10 Jan Hubicka <jh@suse.cz>
3974
3975 PR lto/45375
3976 * profile.c (read_profile_edge_counts): Ignore profile inconistency
3977 when correcting profile.
3978
06c9eb51
JH
39792011-01-10 Jan Hubicka <jh@suse.cz>
3980
3981 PR lto/46083
3982 * lto-streamer-out.c (pack_ts_function_decl_value_fields): Store
3983 DECL_FINI_PRIORITY.
3984 * lto-streamer-in.c (unpack_ts_function_decl_value_fields):
3985 Restore DECL_FINI_PRIORITY.
3986
ae9fd815
RW
39872011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3988
3989 * doc/gimple.texi: Fix quoting of multi-word return values in
3990 @deftypefn statements. Ensure presence of return value. Wrap
3991 overlong @deftypefn lines.
3992 (is_gimple_operand, is_gimple_min_invariant_address): Remove
3993 descriptions of removed functions.
3994 * doc/hostconfig.texi (Host Common): Wrap long line, fix quoting
3995 of multi-word return value in @deftypefn statement.
3996
0ecb4a7c
RW
39972011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3998
3999 * doc/gimple.texi (Temporaries, Operands, Compound Lvalues)
4000 (Conditional Expressions, Logical Operators)
4001 (Statement and operand traversals): Do not indent smallexample
4002 code. Fix duplicate function argument in example.
4003
2e5e346d
JL
40042011-01-10 Jeff Law <law@redhat.com>
4005
1ee3ea05 4006 PR tree-optimization/47141
2e5e346d
JL
4007 * ipa-split.c (split_function): Handle case where we are
4008 returning a value and the return block has a virtual operand phi.
4009
cf9712cc
JH
40102011-01-10 Jan Hubicka <jh@suse.cz>
4011
1c3ba85b 4012 PR tree-optimization/47234
cf9712cc
JH
4013 * tree-pass.h (TODO_rebuild_cgraph_edges): New TODO.
4014 (pass_feedback_split_functions): Declare.
4015 * passes.c (init_optimization_passes): Add ipa-split as subpass of
4016 tree-profile.
4017 * ipa-split.c (gate_split_functions): Update comments; disable
4018 split-functions for profile_arc_flag and branch_probabilities.
4019 (gate_feedback_split_functions): New function.
4020 (execute_feedback_split_functions): New function.
4021 (pass_feedback_split_functions): New global var.
4022
94cd932c
L
40232011-01-10 H.J. Lu <hongjiu.lu@intel.com>
4024
4025 PR lto/46760
4026 * tree-inline.c (tree_can_inline_p): Check e->call_stmt before
4027 calling gimple_call_set_cannot_inline.
4028
fbbfcaf1
IS
40292011-01-10 Iain Sandoe <iains@gcc.gnu.org>
4030
4031 * config/darwin-sections.def: Remove unused section.
4032
d06865bf
DK
40332011-01-10 Dave Korn <dave.korn.cygwin@gmail.com>
4034
4035 PR c++/47218
4036 * cgraphunit.c (assemble_thunk): Call resolve_unique_section.
4037
96bbfbac
NP
40382011-01-09 Nicola Pero <nicola.pero@meta-innovation.com>
4039
4040 PR objc/47232
4041 * c-parser.c (c_parser_declaration_or_fndef): Improved
4042 error message.
4043
1ba6516f
KT
40442011-01-09 Kai Tietz <kai.tietz@onevision.com>
4045
4046 * config/i386/winnt.c (i386_pe_start_function): Make sure
4047 to switch back to function's section.
4048
0c5d770e
IS
40492011-01-09 Iain Sandoe <iains@gcc.gnu.org>
4050
4051 PR gcc/46902
4052 PR testsuite/46912
4053 * plugin.c: Move include of dlfcn.h from here...
4054 * system.h: ... to here.
4055
40562011-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4ee1aa2a
RW
4057
4058 * doc/cpp.texi (C++ Named Operators): Fix markup for header
4059 file name.
4060 * doc/cppinternals.texi (Top): Wrap node in @ifnottex to avoid
4061 two extra empty pages in PDF output.
4062
046608a3
NP
40632011-01-08 Nicola Pero <nicola.pero@meta-innovation.com>
4064
4065 PR objc/47078
4066 * c-parser.c (c_parser_objc_type_name): If the type is unknown,
4067 for error recovery purposes behave as if it was not specified so
4068 that the default type is usd.
4069
8cb114b9
JH
40702011-01-07 Jan Hubicka <jh@suse.cz>
4071
4072 PR tree-optmization/46469
4073 * ipa.c (function_and_variable_visibility): Clear needed flags on
4074 nodes with external decls; handle weakrefs merging correctly.
4075
b294a75e
JM
40762011-01-07 Joseph Myers <joseph@codesourcery.com>
4077
4078 * opts.c (finish_options): Set opts->x_flag_opts_finished to true,
4079 not false.
4080
96bdf9b4
JH
40812011-01-07 Jan Hubicka <jh@suse.cz>
4082
4083 * doc/invoke.texi: (-flto, -fuse-linker-plugin): Update defaults
4084 and no longer claim that gold is required for linker plugin.
4085 * configure: Regenerate.
4086 * gcc.c (PLUGIN_COND): New macro.
4087 (LINK_COMMAND_SPEC): Use it.
4088 (main): Default to plugin enabled with HAVE_LTO_PLUGIN is set.
4089 * config.in (HAVE_LTO_PLUGIN): New.
4090 * configure.ac (--with-lto-plugin): New parameter; autodetect
4091 HAVE_LTO_PLUGIN.
4092
17afc0fe
JH
40932011-01-07 Jan Hubicka <jh@suse.cz>
4094
4095 PR tree-optimization/46367
4096 * ipa-inline.c (cgraph_clone_inlined_nodes): Use original function only
4097 when we can update original.
4098 (cgraph_mark_inline_edge): Sanity check.
4099 * ipa-prop.c (ipa_make_edge_direct_to_target): Sanity check.
4100
d4c48c0f
UW
41012011-01-07 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4102
4103 * config/spu/spu.h (ASM_COMMENT_START): Define.
4104
96f5b137
L
41052011-01-07 H.J. Lu <hongjiu.lu@intel.com>
4106
4107 PR driver/42445
4108 * gcc.c (%>S): New.
4109 (SWITCH_KEEP_FOR_GCC): Likewise.
4110 (set_collect_gcc_options): Check SWITCH_KEEP_FOR_GCC.
4111 (do_spec_1): Handle "%>".
4112
4113 * config/i386/i386.h (CC1_CPU_SPEC): Replace "%<" with "%>".
4114
c6a8f6de
JJ
41152011-01-07 Jakub Jelinek <jakub@redhat.com>
4116
c21bbd7a
JJ
4117 PR target/47201
4118 * config/i386/i386.c (ix86_delegitimize_address): If
4119 simplify_gen_subreg fails, return orig_x.
4120
c6a8f6de
JJ
4121 PR bootstrap/47187
4122 * value-prof.c (gimple_stringop_fixed_value): Handle
4123 lhs of the call properly.
4124
fe95fbf9
JH
41252011-01-07 Jan Hubicka <jh@suse.cz>
4126
4127 PR lto/45375
4128 * lto-opt.c (lto_reissue_options): Set flag_shlib.
4129
14d11d40
IS
41302011-01-07 Iain Sandoe <iains@gcc.gnu.org>
4131
72e961c8
EB
4132 * target.def (function_switched_text_sections): New hook.
4133 * doc/tm.texi: Regenerated.
4134 * doc/tm.texi.in (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
14d11d40 4135 * final.c (default_function_switched_text_sections): New.
72e961c8
EB
4136 (final_scan_insn): Call function_switched_text_sections when a
4137 mid-function section change occurs.
14d11d40 4138 * output.h (default_function_switched_text_sections): Declare.
72e961c8
EB
4139 * config/darwin-protos.h (darwin_function_switched_text_sections):
4140 Likewise.
14d11d40 4141 * config/darwin.c (darwin_function_switched_text_sections): New.
72e961c8 4142 * config/darwin.h (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
14d11d40 4143
0b764288
IS
41442011-01-07 Iain Sandoe <iains@gcc.gnu.org>
4145
4146 * dwarf2out.c (gen_subprogram_die): Add pubnames with code ranges for
4147 DWARF >= 3. Add pubnames for the primary section and a reduced DIE for
4148 the secondary code fragment when outputting for DWARF == 2.
4149
2ac6bb04
AS
41502011-01-07 Anatoly Sokolov <aesok@post.ru>
4151
4152 * config/xtensa/xtensa.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
4153 * config/xtensa/xtensa-protos.h (xtensa_output_addr_const_extra):
4154 Remove.
4155 * config/xtensa/xtensa.c (xtensa_output_addr_const_extra): Make static.
4156 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
4157
9f82de11
EB
41582011-01-06 Eric Botcazou <ebotcazou@adacore.com>
4159
4160 PR debug/46704
280d9630
EB
4161 * dwarf2out.c (dwarf2out_finish): Output the debug_aranges section only
4162 when it is not empty.
9f82de11
EB
4163
41642011-01-06 Changpeng Fang <changpeng.fang@amd.com>
14b52538 4165
1ed72abf 4166 Bobcat Enablement
14b52538 4167 * config.gcc (i[34567]86-*-linux* | ...): Add btver1.
1ed72abf 4168 (case ${target}): Add btver1.
14b52538 4169 * config/i386/driver-i386.c (host_detect_local_cpu): Let
1ed72abf 4170 -march=native recognize btver1 processors.
14b52538 4171 * config/i386/i386-c.c (ix86_target_macros_internal): Add
1ed72abf 4172 btver1 def_and_undef
14b52538 4173 * config/i386/i386.c (struct processor_costs btver1_cost): New
1ed72abf
CF
4174 btver1 cost table.
4175 (m_BTVER1): New definition.
4176 (m_AMD_MULTIPLE): Includes m_BTVER1.
4177 (initial_ix86_tune_features): Add btver1 tune.
4178 (processor_target_table): Add btver1 entry.
4179 (static const char *const cpu_names): Add btver1 entry.
4180 (software_prefetching_beneficial_p): Add btver1.
4181 (ix86_option_override_internal): Add btver1 instruction sets.
4182 (ix86_issue_rate): Add btver1.
4183 (ix86_adjust_cost): Add btver1.
14b52538 4184 * config/i386/i386.h (TARGET_BTVER1): New definition.
1ed72abf
CF
4185 (enum target_cpu_default): Add TARGET_CPU_DEFAULT_btver1.
4186 (enum processor_type): Add PROCESSOR_BTVER1.
14b52538
CF
4187 * config/i386/i386.md (define_attr "cpu"): Add btver1.
4188
e1a973d8
RO
41892011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4190
4191 PR target/43309
4192 * config/i386/i386.c (legitimize_tls_address)
4193 <TLS_MODEL_INITIAL_EXEC>: Handle TARGET_64BIT && TARGET_SUN_TLS.
4194 * config/i386/i386.md (UNSPEC_TLS_IE_SUN): Declare.
4195 (tls_initial_exec_64_sun): New pattern.
4196
c73f67c5
GP
41972011-01-06 Gerald Pfeifer <gerald@pfeifer.com>
4198
4199 * doc/invoke.texi (Overall Options): Improve wording and markup
4200 of the description of -wrapper.
4201
bc4c6f9c
JM
42022011-01-06 Joseph Myers <joseph@codesourcery.com>
4203
4204 * config/sol2.opt (G, YP,, Ym,, compat-bsd, pthread, pthreads,
4205 rdynamic, threads): New Driver options.
4206
adb75db0
RO
42072011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4208
4209 PR target/38118
4210 * config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Also switch to .bss
4211 if coming from .tdata.
4212 * config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
4213
402c1cb4
JH
42142011-01-06 Jan Hubicka <jh@suse.cz>
4215
4216 PR lto/47188
4217 * collect2.c (main): Do not enable LTOmode when plugin is active.
4218
a4da6485
RO
42192011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4220
4221 PR other/45915
4222 * configure.ac (gcc_cv_as_gnu_unique_object): Only use ldd
4223 --version output if supported.
4224 * configure: Regenerate.
4225
028dbdf4
JM
42262011-01-06 Joseph Myers <joseph@codesourcery.com>
4227
4228 * config/linux-android.opt (tno-android-cc, tno-android-ld): New
4229 Driver options.
4230
dfe776dd
JJ
42312011-01-06 Jakub Jelinek <jakub@redhat.com>
4232
4233 PR c/47150
4234 * c-convert.c (convert): When converting a complex expression
4235 other than COMPLEX_EXPR to a different complex type, ensure
4236 c_save_expr is called instead of save_expr, unless in_late_binary_op.
4237 * c-typeck.c (convert_for_assignment): Set in_late_binary_op also
4238 when converting COMPLEX_TYPE.
4239
210dedfe
IR
42402011-01-06 Ira Rosen <irar@il.ibm.com>
4241
4242 PR tree-optimization/47139
4243 * tree-vect-loop.c (vect_is_simple_reduction_1): Check that
4244 only the last reduction value is used outside the loop. Update
4245 documentation.
4246
cd33a412
JM
42472011-01-05 Joseph Myers <joseph@codesourcery.com>
4248
4249 * config/rtems.opt: New.
4250 * config.gcc (*-*-rtems*): Use rtems.opt.
4251
819edd94
CF
42522011-01-05 Changpeng Fang <changpeng.fang@amd.com>
4253
4254 * config/i386/i386.c (ix86_option_override_internal): Bulldozer
4255 processors do not support 3DNow instructions.
4256
dc242c4a
UW
42572011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4258
4259 * config/spu/spu.c (spu_option_override): Set parameter
4260 PARAM_MAX_COMPLETELY_PEEL_TIMES to 4 instead of 1.
4261
be286227
JH
42622011-01-05 Jan Hubicka <jh@suse.cz>
4263
4264 * lto-wrapper.c (run_gcc): Default to WHOPR mode when none is specified
4265 at the command line.
4266
644e637f
MJ
42672011-01-05 Martin Jambor <mjambor@suse.cz>
4268
4269 PR lto/47162
4270 * lto-cgraph.c (output_cgraph_opt_summary_p): Also check for thunk
4271 deltas on streamed outgoing edges.
4272 (output_node_opt_summary): Output info for outgoing edges only when
4273 the node is in new parameter set.
4274 (output_cgraph_opt_summary): New parameter set, passed to the two
4275 aforementioned functions. Update its forward declaration and its
4276 callee too.
4277
7bd11157
TT
42782011-01-05 Tom Tromey <tromey@redhat.com>
4279
4280 * c-parser.c (c_parser_omp_atomic): Pass location of assignment
4281 operator to c_finish_omp_atomic.
4282 * c-typeck.c (lvalue_or_else): Add 'loc' argument.
4283 (build_unary_op): Update.
4284 (build_modify_expr): Update.
4285 (build_asm_expr): Update.
4286
f626b979
UW
42872011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4288
4289 * config/spu/spu.c (emit_nop_for_insn): Set INSN_LOCATOR for
4290 newly inserted insns.
4291 (pad_bb): Likewise.
4292 (spu_emit_branch_hint): Likewise.
4293 (insert_hbrp_for_ilb_runout): Likewise.
4294 (spu_machine_dependent_reorg): Call df_finish_pass after
4295 schedule_insns returns.
4296
4c825c02
UW
42972011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4298
4299 * config/spu/spu.c (spu_expand_prologue): Support -fstack-usage.
4300
5e9fba51
EB
43012011-01-05 Eric Botcazou <ebotcazou@adacore.com>
4302
4303 PR tree-optimization/47005
4304 * tree-sra.c (struct access): Add 'non_addressable' bit.
4305 (create_access): Set it for a DECL_NONADDRESSABLE_P field.
4306 (decide_one_param_reduction): Return 0 if the parameter is passed by
4307 reference and one of the accesses in the group is non_addressable.
4308
3ebb5ca6
EB
43092011-01-04 Eric Botcazou <ebotcazou@adacore.com>
4310
4311 PR tree-optimization/47056
4312 * cgraphbuild.c (mark_address): Remove ATTRIBUTE_UNUSED markers.
4313 (mark_load): Likewise. Handle FUNCTION_DECL specially.
4314 (mark_store): Likewise. Pass STMT to ipa_record_reference.
4315
d5d4d14e
EB
43162011-01-04 Eric Botcazou <ebotcazou@adacore.com>
4317
4318 * dwarf2out.c (rtl_for_decl_init): Strip no-op conversions off the
4319 initializer. Skip view conversions from aggregate types.
4320
d996ef70
KT
43212011-01-04 Kai Tietz <kai.tietz@onevision.com>
4322
4323 PR bootstrap/47055
4324 * libgcov.c (gcov_exit): Check for HAS_DRIVE_SPEC.
4325
509d65dd 43262011-01-04 Philipp Thomas <pth@suse.de>
017096ca
PT
4327
4328 * config/microblaze/microbalse.opt (mxl-float-convert): Fix
4329 obvious typo.
4330
55c623b5
UW
43312011-01-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4332
4333 * function.c (thread_prologue_and_epilogue_insns): Do not crash
4334 on empty epilogue sequences.
4335
b98d6b35
JM
43362011-01-04 Joseph Myers <joseph@codesourcery.com>
4337
4338 * config/vxworks.opt (Bdynamic, Bstatic, Xbind-lazy, Xbind-now,
4339 non-static): New Driver options.
4340
a0d43bac
JZ
43412011-01-04 Jie Zhang <jie@codesourcery.com>
4342
4343 PR driver/47137
4344 * gcc.c (default_compilers[]): Set combinable field to 0
4345 for all assembly languages.
4346
2b18eb32
MX
43472011-01-04 Mingjie Xing <mingjie.xing@gmail.com>
4348
4349 * config/mips/loongson3a.md: New file.
4350 * config/mips/mips.md: Include loongson3a.md.
4351 * config/mips/mips.c (mips_multipass_dfa_lookahead): Return 4 when
4352 TUNE_LOONGSON_3A.
4353
42a48c4f
EB
43542011-01-03 Eric Botcazou <ebotcazou@adacore.com>
4355
4356 PR middle-end/47017
4357 * expr.c (expand_expr_real_1) <MEM_REF>: Call memory_address_addr_space
4358 instead of convert_memory_address_addr_space on the base expression.
4359
9c1732c4
UW
43602011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4361
4362 * config/spu/spu.c (spu_option_override): Update error text
4363 for bad -march= / -mtune= values.
4364
aa474365
UW
43652011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4366
4367 * config/spu/spu.c (asm_file_start): Only reset flag_var_tracking
4368 if branch-hint optimization will be performed.
4369
9766135b
JJ
43702011-01-03 Jakub Jelinek <jakub@redhat.com>
4371
371556ee
JJ
4372 PR tree-optimization/47148
4373 * ipa-split.c (split_function): Convert arguments to
4374 DECL_ARG_TYPE if possible.
4375
1ac12fa2
JJ
4376 PR tree-optimization/47155
4377 * tree-ssa-ccp.c (bit_value_binop_1): Use r1type instead of type
4378 when computing uns.
4379
9766135b
JJ
4380 PR rtl-optimization/47157
4381 * combine.c (try_combine): If undobuf.other_insn becomes
4382 (set (pc) (pc)) jump, call update_cfg_for_uncondjump on it
4383 and set *new_direct_jump_p too.
4384
f4a2e571
SP
43852011-01-03 Sebastian Pop <sebastian.pop@amd.com>
4386
4387 PR tree-optimization/47021
4388 * graphite-sese-to-poly.c (scan_tree_for_params): Handle ADDR_EXPR.
4389
9f8e43c0
JJ
43902011-01-03 Jakub Jelinek <jakub@redhat.com>
4391
4392 * gcc.c (process_command): Update copyright notice dates.
4393 * gcov.c (print_version): Likewise.
4394 * gcov-dump.c (print_version): Likewise.
4395 * mips-tfile.c (main): Likewise.
4396 * mips-tdump.c (main): Likewise.
4397
1a2e38f3
MJ
43982011-01-03 Martin Jambor <mjambor@suse.cz>
4399
4400 PR tree-optimization/46801
4401 * tree-sra.c (type_internals_preclude_sra_p): Check whether
4402 aggregate fields start at byte boundary instead of the bit-field flag.
4403
56b721c5
L
44042011-01-03 H.J. Lu <hongjiu.lu@intel.com>
4405
4406 PR driver/47137
4407 * gcc.c (main): Revert revision 168407.
4408
839d549b
MJ
44092011-01-03 Martin Jambor <mjambor@suse.cz>
4410
4411 * lto-cgraph.c (input_cgraph_opt_section): Use the correct section type.
4412
4ce99a20 44132011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2fa6eeff
UW
4414
4415 * tree-vect-generic.c (expand_vector_operations_1): When using vector/
4416 vector optab to expand vector/scalar shift, update gimple to vector.
4417
76df0ae6
MJ
44182011-01-03 Martin Jambor <mjambor@suse.cz>
4419
4420 * cgraphunit.c (verify_cgraph_node): Verify there is no direct call to
4421 a thunk.
4422
ce47fda3
MJ
44232011-01-03 Martin Jambor <mjambor@suse.cz>
4424
4425 PR tree-optimization/46984
4426 * cgraph.h (cgraph_indirect_call_info): make field thunk_delta
4427 HOST_WIDE_INT.
4428 (cgraph_create_indirect_edge): Fixed line length.
4429 (cgraph_indirect_call_info): Declare.
4430 (cgraph_make_edge_direct) Update declaration.
4431 * cgraph.c (cgraph_allocate_init_indirect_info): New function.
4432 (cgraph_create_indirect_edge): Use it.
4433 (cgraph_make_edge_direct): Made delta HOST_WIDE_INT. Updated all
4434 callees.
4435 * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Update for
4436 the new thunk_delta representation.
4437 * ipa-prop.c (ipa_make_edge_direct_to_target): Convert delta to
4438 HOST_WIDE_INT.
4439 (ipa_write_indirect_edge_info): Remove streaming of thunk_delta.
4440 (ipa_read_indirect_edge_info): Likewise.
4441 * lto-cgraph.c (output_edge_opt_summary): New function.
4442 (output_node_opt_summary): Call it on all outgoing edges.
4443 (input_edge_opt_summary): New function.
4444 (input_node_opt_summary): Call it on all outgoing edges.
4445
1e67fa1f
L
44462011-01-02 H.J. Lu <hongjiu.lu@intel.com>
4447
4448 PR driver/47137
4449 * gcc.c (main): Don't check have_o when settting combine_inputs.
4450
6656b2ac
EB
44512011-01-02 Eric Botcazou <ebotcazou@adacore.com>
4452
4453 * regrename.c: Add general comment describing the pass.
4454 (struct du_head): Remove 'length' field.
4455 (get_element, merge_sort_comparison, merge, sort_du_head): Remove.
4456 (regrename_optimize): Do not sort chains. Rework comments, add others.
4457 Force renaming to the preferred class (if any) in the first pass and do
4458 not consider registers that belong to it in the second pass.
4459 (create_new_chain): Do not set 'length' field.
4460 (scan_rtx_reg): Likewise.
4461
bc470c24
JJ
44622011-01-02 Jakub Jelinek <jakub@redhat.com>
4463
4e996296
JJ
4464 PR tree-optimization/47140
4465 * tree-ssa-ccp.c (evaluate_stmt): For binary assignments, use
4466 TREE_TYPE (lhs) instead of TREE_TYPE (rhs1) as second argument
4467 to bit_value_binop.
4468
bc470c24 4469 PR rtl-optimization/47028
6656b2ac
EB
4470 * cfgexpand.c (gimple_expand_cfg): Insert entry edge insertions after
4471 parm_birth_insn instead of at the beginning of first bb.
bc470c24 4472
5af62fcd 44732011-01-02 Mingjie Xing <mingjie.xing@gmail.com>
0d52f2a8
MX
4474
4475 * doc/generic.texi: Remove duplicated "@subsubsection Statements".
4476 Remove the word "see" before "@pxref".
4477 * doc/rtl.texi: Remove the word "see" before "@pxref".
4478
0e20c89f
JH
44792011-01-01 Jan Hubicka <jh@suse.cz>
4480
6656b2ac
EB
4481 * tree-loop-distribution.c (tree_loop_distribution): Do not use freed
4482 memory.
0e20c89f 4483
220e83ca
KT
44842011-01-01 Kai Tietz <kai.tietz@onevision.com>
4485
4486 PR target/38662
6656b2ac 4487 * tree.c (type_hash_eq): Call language hook for METHOD_TYPEs, too.
220e83ca 4488
ad41bd84 4489\f
797103eb 4490Copyright (C) 2011 Free Software Foundation, Inc.
ad41bd84
JM
4491
4492Copying and distribution of this file, with or without modification,
4493are permitted in any medium without royalty provided the copyright
4494notice and this notice are preserved.