]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ChangeLog
* common.opt (nostartfiles): New Driver option.
[thirdparty/gcc.git] / gcc / ChangeLog
CommitLineData
bab79a40
JM
12011-02-11 Joseph Myers <joseph@codesourcery.com>
2
3 * common.opt (nostartfiles): New Driver option.
4
1bbc6693
XDL
52011-02-11 Xinliang David Li <davidxl@google.com>
6
7 PR tree-optimization/47707
8 * tree-chrec.c (convert_affine_scev): Keep type precision.
9
1da7d8c0
EB
102011-02-11 Eric Botcazou <ebotcazou@adacore.com>
11
12 PR tree-optimization/47420
13 * ipa-split.c (visit_bb): Punt on any kind of GIMPLE_RESX.
14
152011-02-11 Pat Haugen <pthaugen@us.ibm.com>
3f82421f
PH
16
17 PR rtl-optimization/47614
18 * rtl.h (check_for_inc_dec): Declare.
19 * dse.c (check_for_inc_dec): Externalize...
20 * postreload.c (reload_cse_simplify): ...use it before deleting stmt.
21 (reload_cse_simplify_operands): Don't simplify opnds with side effects.
22
4df47bca
JM
232011-02-11 Joseph Myers <joseph@codesourcery.com>
24
25 PR driver/47678
26 * gcc.c (main): Do not compile inputs if there were errors in
27 option handling.
28 * opts-common.c (read_cmdline_option): Check for wrong language
29 after other error checks.
30
61502ca8
NF
312011-02-11 Nathan Froyd <froydnj@codesourcery.com>
32
33 * cgraph.c: Fix comment typos.
34 * cgraph.h: Likewise.
35 * cgraphunit.c: Likewise.
36 * ipa-cp.c: Likewise.
37 * ipa-inline.c: Likewise.
38 * ipa-prop.c: Likewise.
39 * ipa-pure-const.c: Likewise.
40 * ipa-ref.c: Likewise.
41 * ipa-reference.c: Likewise.
42
b63f974e
JJ
432011-02-11 Jakub Jelinek <jakub@redhat.com>
44
d50c5e0c
JJ
45 PR debug/47684
46 * tree-predcom.c (single_nonlooparound_use): Ignore debug uses.
b63f974e 47
6dd2a13c
RO
482011-02-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
49
50 PR testsuite/47400
51 * doc/sourcebuild.texi (Require Support): Document
52 dg-require-ascii-locale.
53
4a087ccf
MX
542011-02-11 Mingjie Xing <mingjie.xing@gmail.com>
55
56 * doc/lto.texi (Write summary): Fix missing parentheses.
57
a4403164
DD
582011-02-10 DJ Delorie <dj@redhat.com>
59
60 * config/m32c/m32c.c (m32c_option_override): Disable
61 -fcombine-stack-adjustments until flag value tracking and compare
62 optimization can be rewritten.
63
4fac45bd
PB
642011-02-10 Peter Bergner <bergner@vnet.ibm.com>
65
66 * config/rs6000/linux64.h (PROCESSOR_DEFAULT): Change to
67 PROCESSOR_POWER7.
68 (PROCESSOR_DEFAULT64): Likewise.
69
72602cd1
RH
702011-02-10 Richard Henderson <rth@redhat.com>
71
72 * config/rx/predicates.md (rx_zs_comparison_operator): Revert
73 change from 2011-02-03.
74 * config/rx/rx.c (flags_from_code): Likewise.
75 (rx_print_operand) ['B']: For LT/GE, use lt/ge if overflow flag
76 is valid, n/pz otherwise.
77 (rx_select_cc_mode): Return CCmode if Y is not zero.
78
ea57f573
RG
792011-02-10 Richard Guenther <rguenther@suse.de>
80
ea4c3e65 81 * tree-ssa-structalias.c (bitpos_of_field): Use BITS_PER_UNIT, not 8.
ea57f573 82
92b1d23b
RG
832011-02-10 Richard Guenther <rguenther@suse.de>
84
85 PR tree-optimization/47677
86 * tree-vrp.c (vrp_bitmap_equal_p): Fix comparison of empty bitmaps.
87
525a2d06
JJ
882011-02-10 Jakub Jelinek <jakub@redhat.com>
89
90 PR target/47665
91 * combine.c (make_compound_operation): Only change shifts into
92 multiplication for SCALAR_INT_MODE_P.
93
06c969bd
JZ
942011-02-10 Jie Zhang <jie@codesourcery.com>
95
96 PR testsuite/47622
97 Revert
98 2011-02-05 Jie Zhang <jie@codesourcery.com>
99 PR debug/42631
100 * web.c (entry_register): Don't clobber the number of the
101 first uninitialized reference in used[].
102
282ec48e
RG
1032011-02-09 Richard Guenther <rguenther@suse.de>
104
105 PR tree-optimization/47664
106 * ipa-inline.c (cgraph_decide_inlining_incrementally): Visit
107 all edges again.
108
df98c3e8
DE
1092011-02-09 David Edelsohn <dje.gcc@gmail.com>
110
d0f21cd6
DE
111 PR target/46481
112 PR target/47032
df98c3e8
DE
113 * config/rs6000/aix61.h (PROCESSOR_DEFAULT): Change to
114 PROCESSOR_POWER7.
115 (PROCESSOR_DEFAULT64): Same.
116 (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Delete.
117
67b6839f
RO
1182011-02-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
119
120 * config/mips/iris6.h (TARGET_C99_FUNCTIONS): Define.
121
4fd73214
MJ
1222011-02-09 Martin Jambor <mjambor@suse.cz>
123
124 PR middle-end/45505
125 * tree-sra.c (struct access): New flags grp_scalar_read and
126 grp_scalar_write. Changed description of assignment read and write
127 flags.
128 (dump_access): Dump new flags, reorder all of them.
129 (sort_and_splice_var_accesses): Set the new flag accordingly, use them
130 to detect multiple scalar reads.
131 (analyze_access_subtree): Use the new scalar read write flags instead
132 of the old flags. Adjusted comments.
133
91140cd3
DD
1342011-02-08 DJ Delorie <dj@redhat.com>
135
136 PR target/47548
137 * config/m32c/m32c.c (m32c_subreg): Don't try to validate interim
138 patterns.
139
4254bbfe
JM
1402011-02-08 Joseph Myers <joseph@codesourcery.com>
141
142 * config/m68k/uclinux.opt: New.
143 * config.gcc (m68k-*-uclinux*): Use m68k/uclinux.opt.
144
f1fda84e
JM
1452011-02-08 Joseph Myers <joseph@codesourcery.com>
146
147 * config/cris/elf.opt (sim): New Driver option.
148
4933ae74
JM
1492011-02-08 Joseph Myers <joseph@codesourcery.com>
150
151 * config/xtensa/elf.opt: New.
152 * config.gcc (xtensa*-*-elf*): Use xtensa/elf.opt.
153
4ad70280
JM
1542011-02-08 Joseph Myers <joseph@codesourcery.com>
155
156 * config/vax/elf.opt: New.
157 * config.gcc (vax-*-linux*, vax-*-netbsdelf*): Use vax/elf.opt.
158
20893707
JM
1592011-02-08 Joseph Myers <joseph@codesourcery.com>
160
161 * config/rs6000/aix64.opt (posix, pthread): New Driver options.
162
b8e7038e
JM
1632011-02-08 Joseph Myers <joseph@codesourcery.com>
164
165 * config/gnu-user.opt: New.
166 * config.gcc (*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu |
167 *-*-knetbsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu,
168 *-*-uclinux*): Use gnu-user.opt.
169
e1c5225a
TS
1702011-02-08 Thomas Schwinge <thomas@schwinge.name>
171
172 * config/gnu.h (CPP_SPEC, LIB_SPEC): Remove handling of -bsd option.
173 * config/i386/gnu.h (CPP_SPEC): Likewise.
174
5e46b0c6
ILT
1752011-02-08 Ian Lance Taylor <iant@google.com>
176
177 * common.opt (fcx-limited-range): Add SetByCombined flag.
178 (ffinite-math-only, fmath-errno, frounding-math): Likewise.
179 (fsignaling-nans, fsigned-zeros, ftrapping-math): Likewise.
180 (fassociative-math, freciprocal-math): Likewise.
181 (funsafe-math-optimizations): Likewise.
182 * opth-gen.awk: Handle SetByCombined.
183 * optc-gen.awk: Likewise.
ea4c3e65 184 * opts.c (set_fast_math_flags): Don't override flag if set by frontend.
5e46b0c6
ILT
185 (set_unsafe_math_optimizations_flags): Likewise.
186 * doc/options.texi (Option properties): Document SetByCombined.
187
32243d46
JM
1882011-02-08 Joseph Myers <joseph@codesourcery.com>
189
190 * config.gcc (arc-*, alpha*-*-gnu*, arm*-*-netbsd*, arm-*-pe*,
191 i[34567]86-*-interix3*, i[34567]86-*-netbsd*, i[34567]86-*-pe,
192 m68hc11-*-*, m6811-*-*, m68hc12-*-*, m6812-*-*,
193 m68k-*-uclinuxoldabi*, mcore-*-pe*, powerpc*-*-gnu*,
194 sh*-*-symbianelf*, vax-*-netbsd*): Mark obsolete.
195
479c1fb3
SP
1962011-02-08 Sebastian Pop <sebastian.pop@amd.com>
197
198 PR tree-optimization/46834
199 PR tree-optimization/46994
200 PR tree-optimization/46995
201 * graphite-sese-to-poly.c (used_outside_reduction): New.
202 (detect_commutative_reduction): Call used_outside_reduction.
203 (rewrite_commutative_reductions_out_of_ssa_close_phi): Call
204 translate_scalar_reduction_to_array only when at least one
205 loop-phi/close-phi tuple has been detected.
206
3865a06f
RG
2072011-02-08 Richard Guenther <rguenther@suse.de>
208
209 PR middle-end/47639
210 * tree-vect-generic.c (expand_vector_operations_1): Update
211 stmts here ...
212 (expand_vector_operations): ... not here. Cleanup EH info
213 and the CFG if required.
214
62902f3f
RG
2152011-02-08 Richard Guenther <rguenther@suse.de>
216
217 PR tree-optimization/47641
218 * tree-ssa.c (execute_update_addresses_taken): For asm outputs
219 require type compatibility.
220
0efb9d64
AK
2212011-02-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
222
223 * gimple-low.c (lower_function_body): Don't remove the location of
224 the return statement here.
225 (lower_gimple_return): Do it here instead but only if the return
226 statement is actually used twice.
227
034b8ae4
RG
2282011-02-08 Richard Guenther <rguenther@suse.de>
229
230 PR tree-optimization/47632
231 * tree-ssa-forwprop.c (remove_prop_source_from_use): Remove
232 unused up_to_stmt parameter, return whether cfg-cleanup is
233 necessary, remove EH info properly.
234 (forward_propagate_into_gimple_cond): Adjust caller.
235 (forward_propagate_into_cond): Likewise.
236 (forward_propagate_comparison): Likewise.
237 (tree_ssa_forward_propagate_single_use_vars): Make
238 forward_propagate_comparison case similar to the two others.
239
298362c8
NC
2402011-02-08 Nick Clifton <nickc@redhat.com>
241
242 * config/mn10300/mn10300.opt (mliw): New command line option.
243 * config/mn10300/mn10300.md (UNSPEC_LIW): New unspec.
244 (liw_bundling): New automaton.
245 (liw): New attribute.
246 (liw_op): New attribute.
247 (liw_op1, liw_op2, liw_both, liw_either): New reservations.
248 (movsi_internal): Add LIW attributes.
249 (andsi3): Likewise.
250 (iorsi3): Likewise.
251 (xorsi3): Likewise.
252 (addsi3): Separate register and immediate alternatives.
253 Add LIW attributes.
254 (subsi3): Likewise.
255 (cmpsi): Likewise.
256 (aslsi3): Likewise.
257 (lshrsi3): Likewise.
258 (ashrsi3): Likewise.
259 (liw): New pattern.
260 * config/mn10300/mn10300.c (liw_op_names): New
261 (mn10300_print_operand): Handle 'W' operand descriptor.
262 (extract_bundle): New function.
263 (check_liw_constraints): New function.
264 (liw_candidate): New function.
265 (mn10300_bundle_liw): New function.
266 (mn10300_reorg): New function.
267 (TARGET_MACHINE_DEPENDENT_REORG): Define.
268 (TARGET_DEFAULT_TARGET_FLAGS): Add MASK_ALLOW_LIW.
269 * config/mn10300/mn10300.h (TARGET_CPU_CPP_BUILTINS): Define
270 __LIW__ or __NO_LIW__.
271 * doc/invoke.texi: Describe the -mliw command line option.
272
90488014
JDA
2732011-02-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
274
275 * config.gcc (hppa[12]*-*-hpux11*): Don't set extra_parts.
276 * config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
277 pthread_mutex_unlock): Remove.
278 * config/pa/t-pa-hpux11: Remove rules to build pthread stubs.
279 * config/pa/t-pa64: Likewise.
280 * config/pa/pa64-hpux.h (LIB_SPEC): In static links, link against
281 shared libc if not linking against libpthread.
282 * config/pa/pa-hpux11.h (LIB_SPEC): Likewise.
283
689ff841
IS
2842011-02-07 Iain Sandoe <iains@gcc.gnu.org>
285
286 PR target/47558
287 * config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Put -lSystem first
288 on 10.6 and later to ensure that we always use the unwinder from
289 the system. Only add -no_compact_unwind when tarteting darwin
290 10.6 or later.
291
821014aa
SE
2922011-02-07 Steve Ellcey <sje@cup.hp.com>
293
294 PR target/46997
295 * vect.md (vec_interleave_highv2sf): Change fmix for TARGET_BIG_ENDIAN.
296 (vec_interleave_lowv2sf): Ditto.
297 (vec_extract_evenv2sf): Add TARGET_BIG_ENDIAN check.
298 (vec_extract_oddv2sf): Ditto.
299
41cf94fb
MS
3002011-02-07 Mike Stump <mikestump@comcast.net>
301
62dea57d 302 PR target/42333
41cf94fb
MS
303 Add __ieee_divdc3 entry point.
304 * config/i386/darwin.h (DECLARE_LIBRARY_RENAMES): Retain ___divdc3
305 entry point.
306 (SUBTARGET_INIT_BUILTINS): Call darwin_rename_builtins.
307 * config/i386/i386.c (TARGET_INIT_LIBFUNCS): Likewise.
308 * config/darwin.c (darwin_rename_builtins): Add.
309 * config/darwin-protos.h (darwin_rename_builtins): Add.
310
ee09a3dd
MM
3112011-02-07 Michael Meissner <meissner@linux.vnet.ibm.com>
312
313 PR target/47636
314 * config/rs6000/rs6000.md (rsqrt<mode>2): Use the correct macro
315 for the condition.
316
83296cd0
MS
3172011-02-07 Mike Stump <mikestump@comcast.net>
318
ea4c3e65 319 * config/darwin.opt (mmacosx-version-min): Update default OS version.
83296cd0 320
0f4e946f
DC
3212011-02-07 Denis Chertykov <chertykov@gmail.com>
322
323 PR target/47534
324 * config/avr/libgcc.S (exit): Move .endfunc
325
1ec87690
RG
3262011-02-07 Richard Guenther <rguenther@suse.de>
327
328 PR tree-optimization/47615
329 * tree-ssa-sccvn.h (run_scc_vn): Take a vn-walk mode argument.
330 * tree-ssa-sccvn.c (default_vn_walk_kind): New global.
331 (run_scc_vn): Initialize it.
332 (visit_reference_op_load): Use it.
333 * tree-ssa-pre.c (execute_pre): Use VN_WALK if in PRE.
334
b46ae6da
UW
3352011-02-07 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
336
337 * config/spu/spu.c (spu_init_libfuncs): Install SImode and
338 DImode trapping arithmetic libfuncs.
339
c0aae19c
RG
3402011-02-07 Richard Guenther <rguenther@suse.de>
341
342 PR tree-optimization/47621
343 * tree-ssa.c (non_rewritable_lvalue_p): New function, split out from
344 two duplicates ...
345 (execute_update_addresses_taken): ... here. Make it more
346 conservative in what we accept.
347
295d926b
JM
3482011-02-06 Joseph Myers <joseph@codesourcery.com>
349
350 * config/sparc/freebsd.h (ASM_SPEC): Define.
351 * config/sparc/vxworks.h (ASM_SPEC): Define.
352
bdeb2471
JM
3532011-02-06 Joseph Myers <joseph@codesourcery.com>
354
355 * config/sparc/sol2-bi.h (CC1_SPEC): Remove %{sun4:} %{target:}.
356
d5d3781a
SB
3572011-02-06 Steven Bosscher <steven@gcc.gnu.org>
358
359 * doc/invoke.texi: Remove reference to compiler internals from
360 user documentation.
361
362 * reg-notes.def: Remove REG_VALUE_PROFILE.
363 * combine.c (distribute_notes): Do not handle REG_VALUE_PROFILE.
364
c42c09fc
JJ
3652011-02-05 Jakub Jelinek <jakub@redhat.com>
366
367 PR middle-end/47610
368 * varasm.c (default_section_type_flags): If decl is NULL,
38be4072 369 and name is .data.rel.ro or .data.rel.ro.local, set SECTION_RELRO bit.
c42c09fc 370
beea2755
JZ
3712011-02-05 Jie Zhang <jie@codesourcery.com>
372
373 PR debug/42631
374 * web.c (entry_register): Don't clobber the number of the
375 first uninitialized reference in used[].
376
a130584a
SP
3772011-02-04 Sebastian Pop <sebastian.pop@amd.com>
378
379 PR tree-optimization/46194
380 * tree-data-ref.c (analyze_miv_subscript): Remove comment.
381 (build_classic_dist_vector_1): Do not represent classic distance
382 vectors when the access functions are variating in different loops.
383
962101ac
JM
3842011-02-04 Joseph Myers <joseph@codesourcery.com>
385
386 * config/mips/iris6.opt: New.
387 * config.gcc (mips-sgi-irix6.5*): Use mips/iris6.opt.
388
55eaaa5b
RH
3892011-02-04 Richard Henderson <rth@redhat.com>
390 Steve Ellcey <sje@cup.hp.com>
391
392 PR target/46997
393 * config/ia64/predicates.md (mux1_brcst_element): New.
394 * config/ia64/ia64-protos.h (ia64_unpack_assemble): New.
395 * config/ia64/ia64.c (ia64_unpack_assemble): New.
396 (ia64_unpack_sign): New.
397 (ia64_expand_unpack): Rewrite using new routines.
398 (ia64_expand_widen_sum): Ditto.
399 (ia64_expand_dot_prod_v8qi): Ditto.
400 * config/ia64/vect.md (mulv8qi3): Rewrite to use new
401 routines, add endian check.
402 (pmpy2_even): Rename from pmpy2_r, add endian check.
403 (pmpy2_odd): Rename from pmpy2_l, add endian check.
404 (vec_widen_smult_lo_v4hi): Rewrite using new routines.
405 (vec_widen_smult_hi_v4hi): Ditto.
406 (vec_widen_umult_lo_v4hi): Ditto.
407 (vec_widen_umult_hi_v4hi): Ditto.
408 (mulv2si3): Change endian checks.
409 (sdot_prodv4hi): Rewrite with new calls.
410 (udot_prodv4hi): New.
411 (vec_pack_ssat_v4hi): Add endian check.
412 (vec_pack_usat_v4hi): Ditto.
413 (vec_pack_ssat_v2si): Ditto.
414 (max1_even): Rename from max1_r, add endian check.
415 (max1_odd): Rename from max1_l, add endian check.
416 (*mux1_rev): Format change.
417 (*mux1_mix): Ditto.
418 (*mux1_shuf): Ditto.
419 (*mux1_alt): Ditto.
420 (*mux1_brcst_v8qi): Use new predicate.
421 (vec_extract_evenv8qi): Remove endian check.
422 (vec_extract_oddv8qi): Ditto.
423 (vec_interleave_lowv4hi): Format change.
424 (vec_interleave_highv4hi): Ditto.
425 (mix2_even): Rename from mix2_r, add endian check.
426 (mix2_odd): Rename from mux2_l, add endian check.
427 (*mux2): Fix mask setting for TARGET_BIG_ENDIAN.
428 (vec_extract_evenodd_helper): Format change.
429 (vec_extract_evenv4hi): Remove endian check.
430 (vec_extract_oddv4hi): Remove endian check.
431 (vec_interleave_lowv2si): Format change.
432 (vec_interleave_highv2si): Format change.
433 (vec_initv2si): Remove endian check.
434 (vecinit_v2si): Add endian check.
435 (reduc_splus_v2sf): Add endian check.
436 (reduc_smax_v2sf): Ditto.
437 (reduc_smin_v2sf): Ditto.
438 (vec_initv2sf): Remove endian check.
439 (fpack): Add endian check.
440 (fswap): Add endian check.
441 (vec_interleave_highv2sf): Add endian check.
442 (vec_interleave_lowv2sf): Add endian check.
443 (fmix_lr): Add endian check.
444 (vec_setv2sf): Format change.
445 (*vec_extractv2sf_0_be): Use shift to extract operand.
446 (*vec_extractv2sf_1_be): New.
447 (vec_pack_trunc_v4hi): Add endian check.
448 (vec_pack_trunc_v2si): Format change.
449
dcde5957
JJ
4502011-02-04 Jakub Jelinek <jakub@redhat.com>
451
452 PR inline-asm/23200
453 * tree-ssa-ter.c (is_replaceable_p): Add TER argument. Don't
38be4072 454 do bb, locus and block comparison and disallow loads if it is not set.
dcde5957
JJ
455 (stmt_is_replaceable_p): New function.
456 (process_replaceable, find_replaceable_in_bb): Adjust is_replaceable_p
457 callers.
458 * expr.c (expand_expr_real_1) <case SSA_NAME>: If
459 get_gimple_for_ssa_name try for EXPAND_INITIALIZER harder to use
460 SSA_NAME_DEF_STMT.
461 * tree-flow.h (stmt_is_replaceable_p): New prototype.
462
a64a8e5a
JM
4632011-02-04 Joseph Myers <joseph@codesourcery.com>
464
465 * config/rs6000/xilinx.opt: New.
466 * config.gcc (powerpc-xilinx-eabi*): Use rs6000/xilinx.opt.
467
4da2ed2f
JM
4682011-02-04 Joseph Myers <joseph@codesourcery.com>
469
470 * config/mips/mips.opt (EB, EL, noasmopt): New Driver options.
471
a6e508f9
AS
4722011-02-03 Anatoly Sokolov <aesok@post.ru>
473
474 * config/xtensa/xtensa.h (PREFERRED_RELOAD_CLASS,
475 PREFERRED_OUTPUT_RELOAD_CLASS): Remove.
476 * config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class,
477 secondary_reload_info, xtensa_secondary_reload): Remove.
478 * config/xtensa/xtensa.c (TARGET_PREFERRED_RELOAD_CLASS,
479 TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
480 (xtensa_preferred_reload_class): Make static. Change return and
481 'rclass' argument type to reg_class_t. Remove 'isoutput' argument.
482 Use CONST_DOUBLE_P predicate.
483 (xtensa_preferred_output_reload_class): New function.
484 (xtensa_secondary_reload): Make static.
485
82dc0de3
JM
4862011-02-03 Joseph Myers <joseph@codesourcery.com>
487
488 * config/microblaze/microblaze.opt (Zxl-mode-bootstrap,
489 Zxl-mode-executable, Zxl-mode-novectors, Zxl-mode-xilkernel,
490 Zxl-mode-xmdstub, mxl-mode-xilkernel): New Driver options.
491
7fece979
JJ
4922011-02-03 Jakub Jelinek <jakub@redhat.com>
493
494 PR middle-end/31490
495 * output.h (SECTION_RELRO): Define.
496 (SECTION_MACH_DEP): Adjust.
497 (get_variable_section): New prototype.
498 * varpool.c (varpool_finalize_named_section_flags): New function.
499 (varpool_assemble_pending_decls): Call it.
500 * cgraph.h (varpool_finalize_named_section_flags): New prototype.
501 * cgraphunit.c (cgraph_output_in_order): Call
502 varpool_finalize_named_section_flags.
503 * varasm.c (get_section): Allow section flags conflicts between
504 relro and read-only sections if the section hasn't been declared yet.
505 Set SECTION_OVERRIDE after diagnosing section type conflict.
506 (get_variable_section): No longer static.
507 (default_section_type_flags): Use SECTION_WRITE | SECTION_RELRO for
508 readonly sections that need relocations.
509 (decl_readonly_section_1): New function.
510 (decl_readonly_section): Use it.
511
512 Revert:
513 2010-11-17 Dinar Temirbulatov <dtemirbulatov@gmail.com>
514 Steve Ellcey <sje@cup.hp.com>
515
516 PR middle-end/31490
517 * varasm.c (categorize_decl_for_section): Ignore reloc_rw_mask
518 if section attribute used.
519
d18d5478
JJ
5202011-02-03 Jakub Jelinek <jakub@redhat.com>
521
522 * config/darwin.h (SECTION_NO_ANCHOR): Remove.
523 * config/darwin.c (SECTION_NO_ANCHOR): Define.
524 (darwin_init_sections): Remove assertion.
525
6479ed4b
NC
5262011-02-03 Nick Clifton <nickc@redhat.com>
527
528 * config/rx/predicates.md (rx_zs_comparison_operator): Remove
529 lt and ge.
38be4072 530 * config/rx/rx.md (abssi2_flags): Use CC_ZSmode rather than CC_ZSOmode.
6479ed4b
NC
531 * config/rx/rx.c (rx_print_operand): Use "lt" and "ge" suffixes
532 instead of "n" and "pz".
533 (flags_from_code): LT and GE tests need CC_FLAG_O as well as
534 CC_FLAG_S.
535
89843f5d
JJ
5362011-02-03 Jakub Jelinek <jakub@redhat.com>
537
65450d64
JJ
538 PR target/47312
539 * expr.c (expand_expr_real_2) <case FMA_EXPR>: If target doesn't expand
540 fma, expand FMA_EXPR as fma{,f,l} call.
541
7d58701c
JJ
542 PR lto/47274
543 * lto-streamer-out.c (write_symbol): When writing kind and visibility,
544 copy them into a unsigned char variable and pass address of it to
545 lto_output_data_stream.
546
89843f5d
JJ
547 PR target/47564
548 * toplev.c (target_reinit): Save and restore *crtl and regno_reg_rtx
549 around backend_init_target and lang_dependent_init_target calls.
550 * cgraphunit.c (cgraph_debug_gimple_stmt): New function.
551 (verify_cgraph_node): Don't call set_cfun here. Use
552 cgraph_debug_gimple_stmt instead of debug_gimple_stmt.
553 Set error_found for incorrectly represented calls to thunks.
554
4deef538
AO
5552011-02-03 Alexandre Oliva <aoliva@redhat.com>
556
557 PR debug/43092
558 PR rtl-optimization/43494
559 * rtl.h (for_each_inc_dec_fn): New type.
560 (for_each_inc_dec): Declare.
561 * rtlanal.c (struct for_each_inc_dec_ops): New type.
562 (for_each_inc_dec_find_inc_dec): New fn.
563 (for_each_inc_dec_find_mem): New fn.
564 (for_each_inc_dec): New fn.
565 * dse.c (struct insn_size): Remove.
566 (replace_inc_dec, replace_inc_dec_mem): Remove.
567 (emit_inc_dec_insn_before): New fn.
568 (check_for_inc_dec): Use it, along with for_each_inc_dec.
569 (canon_address): Pass mem modes to cselib_lookup.
570 * cselib.h (cselib_lookup): Add memmode argument. Adjust callers.
571 (cselib_lookup_from_insn): Likewise.
572 (cselib_subst_to_values): Likewise.
573 * cselib.c (find_slot_memmode): New var.
574 (cselib_find_slot): New fn. Use it instead of
575 htab_find_slot_with_hash everywhere.
576 (entry_and_rtx_equal_p): Use find_slot_memmode.
577 (autoinc_split): New fn.
578 (rtx_equal_for_cselib_p): Rename and implement in terms of...
579 (rtx_equal_for_cselib_1): ... this. Take memmode, pass it on.
580 Deal with autoinc. Special-case recursion into MEMs.
581 (cselib_hash_rtx): Likewise.
582 (cselib_lookup_mem): Infer pmode from address mode. Distinguish
583 address and MEM modes.
584 (cselib_subst_to_values): Add memmode, pass it on.
585 Deal with autoinc.
586 (cselib_lookup): Add memmode argument, pass it on.
587 (cselib_lookup_from_insn): Add memmode.
588 (cselib_invalidate_rtx): Discard obsolete push_operand handling.
589 (struct cselib_record_autoinc_data): New.
590 (cselib_record_autoinc_cb): New fn.
591 (cselib_record_sets): Use it, along with for_each_inc_dec. Pass MEM
592 mode to cselib_lookup. Reset autoinced REGs here instead of...
593 (cselib_process_insn): ... here.
594 * var-tracking.c (replace_expr_with_values, use_type): Pass MEM mode
595 to cselib_lookup.
596 (add_uses): Likewise, also to cselib_subst_to_values.
597 (add_stores): Likewise.
598 * sched-deps.c (add_insn_mem_dependence): Pass mode to
599 cselib_subst_to_values.
600 (sched_analyze_1, sched_analyze_2): Likewise. Adjusted.
601 * gcse.c (do_local_cprop): Adjusted.
602 * postreload.c (reload_cse_simplify_set): Adjusted.
603 (reload_cse_simplify_operands): Adjusted.
604 * sel-sched-dump (debug_mem_addr_value): Pass mode.
605
1551d44a
AO
6062011-02-03 Alexandre Oliva <aoliva@redhat.com>
607
608 PR tree-optimization/45122
609 * tree-ssa-loop-niter.c (number_of_iterations_exit): Don't make
610 unsafe assumptions when there's more than one loop exit.
611
c9485473
MM
6122011-02-02 Michael Meissner <meissner@linux.vnet.ibm.com>
613
614 PR target/47272
615 * doc/extend.texi (PowerPC AltiVec/VSX Built-in Functions):
616 Document using vector double with the load/store builtins, and
617 that the load/store builtins always use Altivec instructions.
618
619 * config/rs6000/vector.md (vector_altivec_load_<mode>): New insns
620 to use altivec memory instructions, even on VSX.
621 (vector_altivec_store_<mode>): Ditto.
622
623 * config/rs6000/rs6000-protos.h (rs6000_address_for_altivec): New
624 function.
625
626 * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
627 V2DF, V2DI support to load/store overloaded builtins.
628
629 * config/rs6000/rs6000-builtin.def (ALTIVEC_BUILTIN_*): Add
630 altivec load/store builtins for V2DF/V2DI types.
631
632 * config/rs6000/rs6000.c (rs6000_option_override_internal): Don't
633 set avoid indexed addresses on power6 if -maltivec.
634 (altivec_expand_ld_builtin): Add V2DF, V2DI support, use
635 vector_altivec_load/vector_altivec_store builtins.
636 (altivec_expand_st_builtin): Ditto.
637 (altivec_expand_builtin): Add VSX memory builtins.
638 (rs6000_init_builtins): Add V2DI types to internal types.
639 (altivec_init_builtins): Add support for V2DF/V2DI altivec
640 load/store builtins.
641 (rs6000_address_for_altivec): Insure memory address is appropriate
642 for Altivec.
643
644 * config/rs6000/vsx.md (vsx_load_<mode>): New expanders for
645 vec_vsx_ld and vec_vsx_st.
646 (vsx_store_<mode>): Ditto.
647
648 * config/rs6000/rs6000.h (RS6000_BTI_long_long): New type
649 variables to hold long long types for VSX vector memory builtins.
650 (RS6000_BTI_unsigned_long_long): Ditto.
651 (long_long_integer_type_internal_node): Ditti.
652 (long_long_unsigned_type_internal_node): Ditti.
653
654 * config/rs6000/altivec.md (UNSPEC_LVX): New UNSPEC.
655 (altivec_lvx_<mode>): Make altivec_lvx use a mode iterator.
656 (altivec_stvx_<mode>): Make altivec_stvx use a mode iterator.
657
658 * config/rs6000/altivec.h (vec_vsx_ld): Define VSX memory builtin
659 short cuts.
660 (vec_vsx_st): Ditto.
661
b24d1acf
JM
6622011-02-02 Joseph Myers <joseph@codesourcery.com>
663
664 * config/pa/pa-hpux10.opt: New.
665 * config/hpux11.opt (pthread): New Driver option.
666 * config/pa/pa-hpux.opt (nolibdld, rdynamic): New Driver options.
667 * config.gcc (hppa[12]*-*-hpux10*): Use pa/pa-hpux10.opt.
668
aa18dd0f
JM
6692011-02-02 Joseph Myers <joseph@codesourcery.com>
670
671 * config/ia64/vms.opt: New.
672 * config.gcc (ia64-hp-*vms*): Use ia64/vms.opt.
673
28fc3eee
MM
6742011-02-01 Michael Meissner <meissner@linux.vnet.ibm.com>
675
676 PR target/47580
677 * config/rs6000/vsx.md (vsx_float<VSi><mode>2): Use
678 gpc_reg_operand instead of vsx_register_operand to match rs6000.md
679 generator functions.
680 (vsx_floatuns<VSi><mode>2): Ditto.
681 (vsx_fix_trunc<mode><VSi>2): Ditto.
682 (vsx_fixuns_trunc<mode><VSi>2): Ditto.
683
b5838b1f
JM
6842011-02-02 Joseph Myers <joseph@codesourcery.com>
685
686 * config/i386/djgpp.opt (posix): New Driver option.
687
0db8fa89
GP
6882011-02-02 Gerald Pfeifer <gerald@pfeifer.com>
689
690 * config.gcc (*-*-freebsd[12], *-*-freebsd[12].*, *-*-freebsd*aout*):
691 Move to the unsupported targets list.
692
9cd4f22a
PB
6932011-02-02 Peter Bergner <bergner@vnet.ibm.com>
694
695 PR rtl-optimization/47525
696 * df-scan.c: Update copyright years.
697 (df_get_call_refs): Do not mark global registers as DF_REF_REG_USE
698 and non-clobber DF_REF_REG_DEF for calls to const and pure functions.
699
9ed8059c
RO
7002011-02-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
701
702 * config/i386/sysv4.h (TARGET_VERSION): Remove.
703 (SUBTARGET_RETURN_IN_MEMORY): Remove.
704 (ASM_OUTPUT_ASCII): Remove.
705 * config/i386/sol2.h (SUBTARGET_RETURN_IN_MEMORY): Remove #undef.
706
2a737389
JL
7072011-02-02 Jeff Law <law@redhat.com>
708
709 PR middle-end/47543
710 * reload.c (find_reloads_address): Handle reg+d address where both
711 components are invalid by reloading the entire address.
712
9dac82c4
SP
7132011-02-02 Sebastian Pop <sebastian.pop@amd.com>
714 Richard Guenther <rguenther@suse.de>
715
716 PR tree-optimization/40979
717 PR bootstrap/47044
718 * passes.c (init_optimization_passes): After LIM call copy_prop
719 and DCE to clean up.
720 * tree-ssa-loop.c (pass_graphite_transforms): Add TODO_dump_func.
721
14dd9aab
SP
7222011-02-02 Sebastian Pop <sebastian.pop@amd.com>
723
724 PR tree-optimization/47576
725 PR tree-optimization/47555
726 * doc/invoke.texi (scev-max-expr-complexity): Documented.
727 * params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100.
728 (PARAM_SCEV_MAX_EXPR_COMPLEXITY): Declared.
729 * tree-scalar-evolution.c (follow_ssa_edge): Use
730 PARAM_SCEV_MAX_EXPR_COMPLEXITY.
731
5cbf5c20
RG
7322011-02-02 Richard Guenther <rguenther@suse.de>
733
734 PR tree-optimization/47566
735 * builtins.c (builtin_save_expr): No SAVE_EXPR for SSA_NAMEs.
736
83d70792
AO
7372011-02-02 Alexandre Oliva <aoliva@redhat.com>
738
e829c321
AO
739 PR debug/47106
740 PR debug/47402
741 * tree-inline.c (declare_return_variable): Remove unused caller
742 variable.
743
83d70792
AO
744 PR debug/47106
745 PR debug/47402
746 * tree-flow-inline.h (clear_is_used, is_used_p): New.
747 * cfgexpand.c (account_used_vars_for_block): Use them.
748 * tree-nrv.c (tree_nrv): Likewise.
749 * tree-ssa-live.c (remove_unused_scope_block_p): Likewise.
750 (dump_scope_block): Likewise.
751 (remove_unused_locals): Likewise.
752
aaa2ac93
AO
753 PR debug/47106
754 PR debug/47402
755 * tree-inline.c (declare_return_variable): Add result decl to
756 local decls only once.
757 * gimple-low.c (record_vars_into): Mark newly-created variables
758 as referenced.
759
a59d15cf
AO
7602011-02-02 Alexandre Oliva <aoliva@redhat.com>
761
762 PR debug/47498
763 PR debug/47501
764 PR debug/45136
765 PR debug/45130
766 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
767 debug insns.
768 (no_real_insns_p, schedule_block, set_priorities): Drop special
769 treatment of boundary debug insns.
38be4072 770 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
a59d15cf
AO
771 * sched-ebb.c (schedule_ebbs): Adjust skipping of debug insns.
772 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
773 (BOUNDARY_DEBUG_INSN_P): Likewise.
774 (SCHEDULE_DEBUG_INSN_P): Likewise.
775 * sched-rgn.c (init_ready_list): Drop special treatment of
776 boundary debug insns.
777 * final.c (rest_of_clean_state): Clear notes' BB.
778
6fc2f091
JM
7792011-02-01 Joseph Myers <joseph@codesourcery.com>
780
781 * config/openbsd.opt (assert=): New Driver option.
782
fc523387
JM
7832011-02-01 Joseph Myers <joseph@codesourcery.com>
784
785 * config/i386/nto.opt: New.
786 * config.gcc (i[34567]86-*-nto-qnx*): Use i386/nto.opt.
787
6d9821e5
JM
7882011-02-01 Joseph Myers <joseph@codesourcery.com>
789
790 * config/i386/netware.opt: New.
791 * config.gcc (i[3456x]86-*-netware*): Use i386/netware.opt.
792
cef932d4
JM
7932011-02-01 Joseph Myers <joseph@codesourcery.com>
794
795 * config/interix.opt (posix): New Driver option.
796
22843acd
DD
7972011-02-01 DJ Delorie <dj@redhat.com>
798
56490b74
DD
799 * config/m32c/m32c.h (PTRDIFF_TYPE): Remove extra definition.
800
22843acd
DD
801 * config/m32c/m32c.c (m32c_regno_reg_class): Return smallest reg
802 class for A0/A1.
803
199c8f2f
SP
8042011-02-01 Sebastian Pop <sebastian.pop@amd.com>
805
806 PR tree-optimization/47561
807 * toplev.c (process_options): Print the Graphite flags. Add
808 flag_loop_flatten to the list of options requiring Graphite.
809
926bcf22
JM
8102011-02-01 Joseph Myers <joseph@codesourcery.com>
811
812 * config/i386/cygming.opt (posix): New Driver option.
813
59793c51
JM
8142011-02-01 Joseph Myers <joseph@codesourcery.com>
815
816 * config/arm/vxworks.opt: New.
817 * config.gcc (arm-wrs-vxworks): Use arm/vxworks.opt.
818
183c38a4
JM
8192011-02-01 Joseph Myers <joseph@codesourcery.com>
820
821 * config/alpha/elf.opt: New.
822 * config.gcc (alpha*-*-linux*, alpha*-*-gnu*, alpha*-*-freebsd*,
823 alpha*-*-netbsd*, alpha*-*-openbsd*): Use alpha/elf.opt.
824
9939e416
RG
8252011-02-01 Richard Guenther <rguenther@suse.de>
826
827 PR tree-optimization/47559
828 * tree-ssa-loop-im.c (can_sm_ref_p): Do not perform
829 store-motion on references that can throw.
830
4a3c9687
BS
8312011-02-01 Bernd Schmidt <bernds@codesourcery.com>
832
833 * tree-dump.c (dump_option_value_info): Add entry for TDF_CSELIB.
834 * tree-pass.h (TDF_CSELIB): New macro.
835 * cselib.c (new_cselib_val, expand_loc, cselib_expand_value_rtx_1,
836 cselib_lookup): Check for it rather than for TDF_DETAILS.
837
dd3b31fb
L
8382011-02-01 H.J. Lu <hongjiu.lu@intel.com>
839
840 PR driver/47547
841 * lto-wrapper.c (run_gcc): Don't add -dumpdir if linker_output
842 is HOST_BIT_BUCKET.
843
844 * opts.c (finish_options): Don't add x_aux_base_name if it is
845 HOST_BIT_BUCKET.
846
34c1de79
RG
8472011-02-01 Richard Guenther <rguenther@suse.de>
848
849 PR tree-optimization/47555
850 Revert
851 2010-07-15 Sebastian Pop <sebastian.pop@amd.com>
852
853 * params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100.
854
dd2804d2
SB
8552011-02-01 Sebastien Bourdeauducq <sebastien@milkymist.org>
856
857 PR gcc/46692
858 * config/lm32/t-lm32: Add multilib for all CPU options.
859
3fd3b156
RG
8602011-02-01 Richard Guenther <rguenther@suse.de>
861
862 PR tree-optimization/47541
863 * tree-ssa-structalias.c (push_fields_onto_fieldstack): Make
864 sure to have a field at offset zero.
865
f16072b6
JM
8662011-01-31 Joseph Myers <joseph@codesourcery.com>
867
868 * config/arc/arc.opt (EB, EL): New Driver options.
869
6456cf2e
JM
8702011-01-31 Joseph Myers <joseph@codesourcery.com>
871
872 * config/alpha/osf5.opt: New.
873 * config.gcc (alpha*-dec-osf5.1*): Use alpha/osf5.opt.
874
cdde6ab4
JM
8752011-01-31 Joseph Myers <joseph@codesourcery.com>
876
877 * config/vms/vms.opt (map, mvms-return-codes): New Driver options.
878
7633415c
SP
8792011-01-31 Sebastian Pop <sebastian.pop@amd.com>
880
881 * common.opt (ftree-loop-linear): Use Alias to make it an alias of
882 -floop-interchange.
883 * invoke.texi (-ftree-loop-linear): Make it clear that this flag
884 is an alias of -floop-interchange and that it requires the
885 Graphite infrastructure.
886 * tree-ssa-loop.c (gate_graphite_transforms): Do not set
887 flag_loop_interchange based on the value of flag_tree_loop_linear.
888
0425d6f5
JJ
8892011-01-31 Jakub Jelinek <jakub@redhat.com>
890 Richard Guenther <rguenther@suse.de>
891
892 PR tree-optimization/47538
893 * tree-ssa-ccp.c (bit_value_binop_1): For uns computation use
894 type instead of r1type, except for comparisons. For right
895 shifts and comparisons punt if there are mismatches in
896 sizetype vs. non-sizetype types.
897
500b16c3
RO
8982011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
899
900 * doc/sourcebuild.texi (Effective-Target Keywords): Document
901 avx_runtime.
902
e279edb0
RO
9032011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
904
905 * configure.ac (gcc_cv_ld_eh_frame_hdr): Update minimal Sun ld
906 version number.
907 * configure: Regenerate.
908
c6092243
RO
9092011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
910
911 * configure.ac (gcc_cv_ld_static_option): Define.
912 (gcc_cv_ld_dynamic_option): Define.
913 (gcc_cv_ld_static_dynamic): Tru64 UNIX support -noso/-so_archive
914 instead.
915 (HAVE_LD_STATIC_DYNAMIC): Update message.
916 (LD_STATIC_OPTION): Define.
917 (LD_DYNAMIC_OPTION): Define.
918 * configure: Regenerate.
919 * config.in: Regenerate.
920 * gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS &&
921 HAVE_LD_STATIC_DYNAMIC]: Use them.
922
d7862be3
NC
9232011-01-31 Nick Clifton <nickc@redhat.com>
924
925 * config/rx/rx.c (rx_get_stack_layout): Only save call clobbered
926 registers inside interrupt handlers if the handler is not a leaf
927 function.
928
ba4ec0e0
NC
9292011-01-31 Nick Clifton <nickc@redhat.com>
930
931 * config/mn10300/mn10300.c (mn10300_regno_in_class_p): Check for
932 reg_renumber returning an INVALID_REGNUM.
933
29a63921
AO
9342011-01-31 Alexandre Oliva <aoliva@redhat.com>
935
936 PR libgcj/44341
937 * doc/install.texi: Document host options discarded when cross
938 configuring target libraries.
939
ef591d3f
AO
9402011-01-31 Alexandre Oliva <aoliva@redhat.com>
941
942 Reverted:
943 2011-01-25 Alexandre Oliva <aoliva@redhat.com>
944 PR debug/45136
945 PR debug/45130
946 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
947 debug insns.
948 (no_real_insns_p, schedule_block, set_priorities): Drop special
949 treatment of boundary debug insns.
38be4072 950 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
ef591d3f
AO
951 * sched-ebb.c (schedule_ebbs): Don't skip debug insns.
952 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
953 (BOUNDARY_DEBUG_INSN_P): Likewise.
954 (SCHEDULE_DEBUG_INSN_P): Likewise.
955 * sched-rgn.c (init_ready_list): Drop special treatment of
956 boundary debug insns.
957 * final.c (rest_of_clean-state): Clear notes' BB.
958
61052244
AM
9592011-01-31 Alan Modra <amodra@gmail.com>
960
961 * config/rs6000/rs6000.c (print_operand): Rearrange addends in
962 toc relative expressions as we do in print_operand_address.
963
c4c8962b
KH
9642011-01-30 Kazu Hirata <kazu@codesourcery.com>
965
966 * doc/extend.texi: Follow spelling conventions.
967 * doc/invoke.texi: Fix a typo.
968
e543b94c
JM
9692011-01-30 Joseph Myers <joseph@codesourcery.com>
970
971 * config/hpux11.opt: New.
972 * config.gcc (hppa*64*-*-hpux11*, hppa[12]*-*-hpux11*,
973 ia64*-*-hpux*): Use hpux11.opt.
974
61052244 9752011-01-30 Jonathan Yong <jon_y@users.sourceforge.net>
a70e0551
JY
976
977 * config.gcc (i[34567]86-*-pe | i[34567]86-*-cygwin*): Add t-dfprules
978 to tmake_file.
979
7be03a0e
GP
9802011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
981
982 * doc/install.texi (hppa-hp-hpux10): Remove references to HP
983 support sites.
984
419d1d37
GP
9852011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
986
b596ed64
GP
987 * doc/install.texi (Binaries): Remove outdated reference for
988 Motorola 68HC11/68HC12 downloads.
989
9902011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
61052244 991
419d1d37
GP
992 * doc/extend.texi (Thread-Local): Adjust reference to Ulrich
993 Drepper's paper.
994
4406d0e9
JW
9952011-01-29 Jonathan Wakely <jwakely.gcc@gmail.com>
996
997 PR bootstrap/47147
998 * ginclude/stddef.h: Check for _X86_64_ANSI_H_ and _I386_ANSI_H_ as
999 used by NetBSD.
1000
38be4072 10012011-01-28 Ahmad Sharif <asharif@google.com>
e0b77418
AS
1002
1003 * value-prof.c (check_counter): Corrected error message.
1004
0cd98787
JZ
10052011-01-29 Jie Zhang <jie@codesourcery.com>
1006
1007 * config/arm/arm.c (arm_legitimize_reload_address): New.
1008 * config/arm/arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Use
1009 arm_legitimize_reload_address.
38be4072 1010 * config/arm/arm-protos.h (arm_legitimize_reload_address): Declare.
0cd98787 1011
9b798ac5
ILT
10122011-01-28 Ian Lance Taylor <iant@google.com>
1013
1014 * godump.c (go_define): Ignore macros whose definitions include
1015 two adjacent operands.
1016
591e29d9
JJ
10172011-01-28 Jakub Jelinek <jakub@redhat.com>
1018
1019 PR target/42894
1020 * varasm.c (force_const_mem): Store copy of x in desc->constant
1021 instead of x itself.
1022 * expr.c (emit_move_insn): Add a copy of y_cst instead of y_cst
1023 itself into REG_EQUAL note.
1024
62dcc44a
JM
10252011-01-28 Joseph Myers <joseph@codesourcery.com>
1026
1027 * config/freebsd.opt (posix, rdynamic): New Driver options.
1028
c9f58b9a
RO
10292011-01-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1030
1031 * configure.ac (gcc_cv_ld_static_dynamic): IRIX 6 ld supports
1032 -Bstatic/-Bdynamic.
1033 * configure: Regenerate.
1034
5f02b9db
JM
10352011-01-27 Joseph Myers <joseph@codesourcery.com>
1036
1037 * config/rs6000/sysv4.h (LIB_NETBSD_SPEC): Don't handle -profile.
1038 * config/rs6000/vxworks.h (CC1_SPEC): Don't handle -profile.
1039
5df97412
AS
10402011-01-27 Anatoly Sokolov <aesok@post.ru>
1041
1042 * config/s390/s390.h (PREFERRED_RELOAD_CLASS): Remove.
1043 * config/s390/s390-protos.h (s390_preferred_reload_class): Remove.
1044 * config/s390/s390.c (TARGET_PREFERRED_RELOAD_CLASS): Define.
1045 (s390_preferred_reload_class): Make static. Change return and
1046 'rclass' argument type to reg_class_t.
1047
779d4b91
JH
10482011-01-27 Jan Hubicka <jh@suse.cz>
1049
1050 PR middle-end/46949
1051 * cgraphunit.c (process_common_attributes): Fix use of remove_attribute.
1052 (process_function_and_variable_attributes): Check defined weakrefs.
1053
e80b21ed
MJ
10542011-01-27 Martin Jambor <mjambor@suse.cz>
1055
1056 PR tree-optimization/47228
1057 * tree-sra.c (sra_modify_assign): Use build_ref_for_model instead of
1058 build_ref_for_offset.
1059
6dcc4f31
UW
10602011-01-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1061
1062 * config/spu/spu-elf.h (ASM_SPEC): Remove.
1063
3b8ff89f
MP
10642011-01-26 Mikael Pettersson <mikpe@it.uu.se>
1065
1066 PR rtl-optimization/46856
1067 * postreload.c (reload_combine_recognize_const_pattern): Do not
1068 separate cc0 setter and user on cc0 targets.
1069
04af8788
NP
10702011-01-26 Nicola Pero <nicola.pero@meta-innovation.com>
1071
1072 PR c/43082
1073 * c-typeck.c (c_objc_common_truthvalue_conversion): If we are
1074 passed a VOID_TYPE expression, immediately emit an error and
1075 return error_mark_node.
1076
f7a60085
JL
10772011-01-26 Jeff Law <law@redhat.com>
1078
1079 PR rtl-optimization/47464
1080 * df-problems.c (can_move_insn_across): Use may_trap_or_fault_p
1081 rather than may_trap_p as needed.
1082
5c2917ec
DD
10832011-01-26 DJ Delorie <dj@redhat.com>
1084
1085 PR rtl-optimization/46878
1086 * combine.c (insn_a_feeds_b): Check for the implicit cc0
1087 setter/user dependency as well.
1088
bef16e87
EB
10892011-01-26 Eric Botcazou <ebotcazou@adacore.com>
1090
1091 PR rtl-optimization/44469
1092 * cfgcleanup.c (try_optimize_cfg): Iterate in CFG layout mode too
1093 after removing trivially dead basic blocks.
1094
c75d884b
JM
10952011-01-26 Joseph Myers <joseph@codesourcery.com>
1096
1097 * config/bfin/bfin.h (LINK_SPEC): Remove %{Qy:} %{!Qn:-Qy}.
1098 * config/frv/frv.h (LINK_SPEC): Likewise.
1099 * config/i386/netware.h (LINK_SPEC): Likewise.
1100 * config/m68k/linux.h (ASM_SPEC): Likewise.
1101 * config/rs6000/linux64.h (ASM_SPEC_COMMON): Likewise.
1102 * config/rs6000/sysv4.h (LINK_SPEC): Likewise.
1103 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
1104 * config/sparc/linux.h (ASM_SPEC): Likewise.
1105 * config/sparc/linux64.h (ASM_SPEC): Likewise.
1106 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
1107
d3153553
JM
11082011-01-26 Joseph Myers <joseph@codesourcery.com>
1109
1110 * config/bfin/bfin.h (ASM_SPEC): Remove %{Ym,*}.
1111 * config/frv/frv.h (ASM_SPEC): Likewise.
1112 * config/m68k/linux.h (ASM_SPEC): Likewise.
1113 * config/pa/pa-linux.h (ASM_SPEC): Likewise.
1114 * config/rs6000/linux64.h (ASM_SPEC): Likewise.
1115 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
1116 * config/sparc/linux.h (ASM_SPEC): Likewise.
1117 * config/sparc/linux64.h (ASM_SPEC): Likewise.
1118 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
1119
b89b1e9d
JM
11202011-01-26 Joseph Myers <joseph@codesourcery.com>
1121
1122 * config/bfin/bfin.h (LINK_SPEC): Remove %{YP,*}.
1123 * config/frv/frv.h (LINK_SPEC): Likewise.
1124 * config/rs6000/sysv4.h (LINK_SPEC): Likewise.
1125
12eb1a9c
JM
11262011-01-26 Joseph Myers <joseph@codesourcery.com>
1127
1128 * config/bfin/bfin.h (ASM_SPEC): Remove %{Yd,*}.
1129 * config/frv/frv.h (ASM_SPEC): Likewise.
1130 * config/i386/sol2-10.h (ASM_SPEC): Likewise.
1131 * config/m68k/linux.h (ASM_SPEC): Likewise.
1132 * config/pa/pa-linux.h (ASM_SPEC): Likewise.
1133 * config/rs6000/linux64.h (ASM_SPEC32): Likewise.
1134 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
1135 * config/sol2.h (ASM_SPEC): Remove comment about -Yd,.
1136 * config/sparc/linux.h (ASM_SPEC): Likewise.
1137 * config/sparc/linux64.h (ASM_SPEC): Likewise.
1138 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
1139 * config/sparc/sysv4.h (ASM_SPEC): Remove %{Yd,*}.
1140
e435f098
SE
11412011-01-26 Steve Ellcey <sje@cup.hp.com>
1142
1143 PR target/46997
1144 * config/ia64/vect.md (mulv2si3): Enable and fix for TARGET_BIG_ENDIAN.
1145 (*mux2): Ditto.
1146 (vec_extract_evenodd_help): Ditto.
1147 (vec_extract_evenv4hi): Ditto.
1148 (vec_extract_oddv4hi): Ditto.
1149 (vec_interleave_lowv2si): Ditto.
1150 (vec_interleave_highv2si): Ditto.
1151 (vec_extract_evenv2si): Ditto.
1152 (vec_extract_oddv2si: Ditto.
1153 (vec_pack_trunc_v2si): Ditto.
1154
34f0eee0
JH
11552011-01-22 Jan Hubicka <jh@suse.cz>
1156
1157 PR target/47237
1158 * cgraph.h (cgraph_local_info): New field can_change_signature.
1159 * ipa-cp.c (ipcp_update_callgraph): Only compute args_to_skip if callee
1160 signature can change.
1161 (ipcp_estimate_growth): Call sequence simplify only if calle signature
1162 can change.
1163 (ipcp_insert_stage): Only compute args_to_skip if signature can change.
1164 (cgraph_function_versioning): We can not change signature of functions
1165 that don't allow that.
1166 * lto-cgraph.c (lto_output_node): Stream local.can_change_signature.
1167 (lto_input_node): Likewise.
38be4072
UB
1168 * ipa-inline.c (compute_inline_parameters): Compute
1169 local.can_change_signature.
34f0eee0 1170 * ipa-split.c (visit_bb): Never split away APPLY_ARGS.
38be4072
UB
1171 * tree-sra.c (ipa_sra_preliminary_function_checks): Give up on
1172 functions that can not change signature.
34f0eee0 1173 * i386.c (ix86_function_regparm, ix86_function_sseregparm,
38be4072
UB
1174 init_cumulative_args): Do not use local calling conventions
1175 for functions that can not change signature.
34f0eee0 1176
980ca891
JH
11772011-01-22 Jan Hubicka <jh@suse.cz>
1178
1179 * doc/invoke.texi (hot-bb-frequency-fraction): Commit forgotten hunk.
1180
768e3c60
RG
11812011-01-26 Richard Guenther <rguenther@suse.de>
1182
1183 PR tree-optimization/47190
61052244
AM
1184 * cgraphunit.c (process_common_attributes): New function.
1185 (process_function_and_variable_attributes): Use it.
768e3c60 1186
21d6a1c7
RG
11872011-01-26 Richard Guenther <rguenther@suse.de>
1188
1189 PR lto/47423
1190 * cgraphbuild.c (record_eh_tables): Record reference to personality
1191 function.
1192
48bb58b1
AO
11932011-01-26 Alexandre Oliva <aoliva@redhat.com>
1194
1195 PR debug/45454
1196 * sel-sched.c (moveup_expr): Don't let debug insns prevent
1197 non-debug insns from moving up.
1198
58c741a6
DK
11992011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
1200
1201 PR target/40125
1202 * config.gcc (i[34567]86-*-pe | i[34567]86-*-cygwin*): Select suitable
1203 t-dlldir{,-x} fragment for build and add it to tmake_file.
1204 (i[34567]86-*-mingw* | x86_64-*-mingw*): Likewise.
1205 * Makefile.in (libgcc.mvars): Also export SHLIB_DLLDIR to libgcc.
1206 * config/i386/t-dlldir: New file.
1207 (SHLIB_DLLDIR): Define.
1208 * config/i386/t-dlldir-x: New file.
1209 (SHLIB_DLLDIR): Define.
1210 * config/i386/t-cygming: Error out if SHLIB_DLLDIR is not set.
1211 (SHLIB_INSTALL): Use it.
1212
bff99262
CLT
12132011-01-26 Chung-Lin Tang <cltang@codesourcery.com>
1214
1215 PR target/47246
1216 * config/arm/arm.c (thumb2_legitimate_index_p): Change the
1217 lower bound of the allowed Thumb-2 coprocessor load/store
1218 index range to -256. Add explaining comment.
1219
82c03907
ILT
12202011-01-25 Ian Lance Taylor <iant@google.com>
1221
1222 * godump.c (go_define): Improve lexing of macro expansion to only
1223 accept expressions which match Go spec.
1224
47ea1edf
DK
12252011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
1226
d4dba752 1227 PR c++/43601
47ea1edf
DK
1228 * tree.c (handle_dll_attribute): Handle it.
1229 * doc/extend.texi (@item dllexport): Mention it.
1230 * doc/invoke.texi (@item -fno-keep-inline-dllexport): Document it.
1231
744f0946
ILT
12322011-01-25 Ian Lance Taylor <iant@google.com>
1233
1234 PR tree-optimization/26854
1235 * c-decl.c (struct c_scope): Add field has_jump_unsafe_decl.
1236 (decl_jump_unsafe): Move higher in file, with no other change.
1237 (bind): Set has_jump_unsafe_decl if appropriate.
1238 (update_label_decls): Test has_jump_unsafe_decl to avoid loop.
1239 (check_earlier_gotos): Likewise.
1240 (c_check_switch_jump_warnings): Likewise.
1241
5734f2b3
JW
12422011-01-25 Jonathan Wakely <jwakely.gcc@gmail.com>
1243
1244 * doc/invoke.texi (Warning Options): Add missing hyphen.
1245 (-fprofile-dir): Minor grammatical fixes.
1246 (-fbranch-probabilities): Likewise.
1247
9bdbdcef
AO
12482011-01-25 Alexandre Oliva <aoliva@redhat.com>
1249
1250 PR debug/45136
1251 PR debug/45130
1252 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
1253 debug insns.
1254 (no_real_insns_p, schedule_block, set_priorities): Drop special
1255 treatment of boundary debug insns.
38be4072 1256 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
9bdbdcef
AO
1257 * sched-ebb.c (schedule_ebbs): Don't skip debug insns.
1258 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
1259 (BOUNDARY_DEBUG_INSN_P): Likewise.
1260 (SCHEDULE_DEBUG_INSN_P): Likewise.
1261 * sched-rgn.c (init_ready_list): Drop special treatment of
1262 boundary debug insns.
1263 * final.c (rest_of_clean-state): Clear notes' BB.
1264
b305e3da
SP
12652011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1266
1267 * Makefile.in (LAMBDA_H): Removed.
1268 (TREE_DATA_REF_H): Remove dependence on LAMBDA_H.
1269 (OBJS-common): Remove dependence on lambda-code.o, lambda-mat.o,
1270 lambda-trans.o, and tree-loop-linear.o.
1271 (lto-symtab.o): Remove dependence on LAMBDA_H.
1272 (tree-loop-linear.o): Remove rule.
1273 (lambda-mat.o): Same.
1274 (lambda-trans.o): Same.
1275 (lambda-code.o): Same.
1276 (tree-vect-loop.o): Add missing dependence on TREE_DATA_REF_H.
1277 (tree-vect-slp.o): Same.
1278 * hwint.h (gcd): Moved here.
1279 (least_common_multiple): Same.
1280 * lambda-code.c: Removed.
1281 * lambda-mat.c: Removed.
1282 * lambda-trans.c: Removed.
1283 * lambda.h: Removed.
1284 * tree-loop-linear.c: Removed.
1285 * lto-symtab.c: Do not include lambda.h.
1286 * omega.c (gcd): Removed.
1287 * passes.c (init_optimization_passes): Remove pass_linear_transform.
1288 * tree-data-ref.c (print_lambda_vector): Moved here.
1289 (lambda_vector_copy): Same.
1290 (lambda_matrix_copy): Same.
1291 (lambda_matrix_id): Same.
1292 (lambda_vector_first_nz): Same.
1293 (lambda_matrix_row_add): Same.
1294 (lambda_matrix_row_exchange): Same.
1295 (lambda_vector_mult_const): Same.
1296 (lambda_vector_negate): Same.
1297 (lambda_matrix_row_negate): Same.
1298 (lambda_vector_equal): Same.
1299 (lambda_matrix_right_hermite): Same.
1300 * tree-data-ref.h: Do not include lambda.h.
1301 (lambda_vector): Moved here.
1302 (lambda_matrix): Same.
1303 (dependence_level): Same.
1304 (lambda_transform_legal_p): Removed declaration.
1305 (lambda_collect_parameters): Same.
1306 (lambda_compute_access_matrices): Same.
1307 (lambda_vector_gcd): Same.
1308 (lambda_vector_new): Same.
1309 (lambda_vector_clear): Same.
1310 (lambda_vector_lexico_pos): Same.
1311 (lambda_vector_zerop): Same.
1312 (lambda_matrix_new): Same.
1313 * tree-flow.h (least_common_multiple): Removed declaration.
1314 * tree-parloops.c (lambda_trans_matrix): Moved here.
1315 (LTM_MATRIX): Same.
1316 (LTM_ROWSIZE): Same.
1317 (LTM_COLSIZE): Same.
1318 (LTM_DENOMINATOR): Same.
1319 (lambda_trans_matrix_new): Same.
1320 (lambda_matrix_vector_mult): Same.
1321 (lambda_transform_legal_p): Same.
1322 * tree-pass.h (pass_linear_transform): Removed declaration.
1323 * tree-ssa-loop.c (tree_linear_transform): Removed.
1324 (gate_tree_linear_transform): Removed.
1325 (pass_linear_transform): Removed.
1326 (gate_graphite_transforms): Make flag_tree_loop_linear an alias of
1327 flag_loop_interchange.
1328
6bdfdb96
JJ
13292011-01-25 Jakub Jelinek <jakub@redhat.com>
1330
1331 PR tree-optimization/47265
1332 PR tree-optimization/47443
1333 * tree-ssa-forwprop.c (forward_propagate_addr_expr): Return false
1334 if name still has some uses.
1335
e4cba915
MJ
13362011-01-25 Martin Jambor <mjambor@suse.cz>
1337
1338 PR tree-optimization/47382
1339 * gimple-fold.c (gimple_fold_obj_type_ref_call): Removed.
1340 (gimple_fold_call): Do not call gimple_fold_obj_type_ref_call.
1341
f822b8ea
JS
13422011-01-25 Joel Sherrill <joel.sherrill@oarcorp.com>
1343
1344 * config/m32r/m32r.c: Define TARGET_EXCEPT_UNWIND_INFO to
1345 sjlj_except_unwind_info.
1346
194313e2
RG
13472011-01-25 Richard Guenther <rguenther@suse.de>
1348
1349 PR tree-optimization/47426
1350 * tree-ssa-structalias.c (ipa_pta_execute): Make externally
1351 visible functions results escape.
1352
147a0bcf
JJ
13532011-01-25 Jakub Jelinek <jakub@redhat.com>
1354
1355 PR target/45701
1356 * config/arm/arm.c (any_sibcall_uses_r3): New function.
1357 (arm_get_frame_offsets): Use it.
1358
db963b52
SP
13592011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1360 Jakub Jelinek <jakub@redhat.com>
1361
1362 PR tree-optimization/47271
1363 * tree-if-conv.c (bb_postdominates_preds): New.
1364 (if_convertible_bb_p): Call bb_postdominates_preds.
1365 (if_convertible_loop_p_1): Compute CDI_POST_DOMINATORS.
1366 (predicate_scalar_phi): Call bb_postdominates_preds.
1367
bcddd3b9
NC
13682011-01-25 Nick Clifton <nickc@redhat.com>
1369
1370 * config/rx/rx.h (LIBCALL_VALUE): Do not promote complex types.
1371 * config/rx/rx.c (rx_function_value): Likewise.
1372 (rx_promote_function_mode): Likewise.
1373 (gen_safe_add): Place an outsized immediate value inside an UNSPEC
1374 in order to make it legitimate.
38be4072
UB
1375 * config/rx/rx.md (adddi3_internal): If the second operand is a MEM
1376 make sure that the first operand is the same as the result register.
bcddd3b9
NC
1377 (addsi3_unspec): Delete.
1378 (subdi3): Do not accept immediate operands.
1379 (subdi3_internal): Likewise.
1380
7e6cb022
JL
13812011-01-25 Jeff Law <law@redhat.com>
1382
1383 PR rtl-optimization/37273
1384 * ira-costs.c (scan_one_insn): Detect constants living in memory and
1385 handle them like argument loads from stack slots. Do not double
1386 count memory for memory constants and argument loads from stack slots.
1387
9ffa621e
JJ
13882011-01-25 Jakub Jelinek <jakub@redhat.com>
1389
1390 PR tree-optimization/47427
1391 PR tree-optimization/47428
1392 * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Don't
1393 coalesce if the new root var would be TREE_READONLY.
1394
5bd6e652
RG
13952011-01-25 Richard Guenther <rguenther@suse.de>
1396
1397 PR middle-end/47414
1398 * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Use the
1399 correct type for TBAA.
1400
7c48ea69
SP
14012011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1402
1403 * graphite-sese-to-poly.c (dr_indices_valid_in_loop): New.
1404 (close_phi_written_to_memory): Call for_each_index with
1405 dr_indices_valid_in_loop.
1406
38013f25
SP
14072011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1408
1409 * graphite-sese-to-poly.c (new_pbb_from_pbb): Only copy PBB_DOMAIN
1410 when it is initialized.
1411
5c640e29
SP
14122011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1413
1414 * graphite-scop-detection.c (stmt_has_simple_data_refs_p): Update
1415 call to graphite_find_data_references_in_stmt.
1416 * graphite-sese-to-poly.c (outermost_loop_in_sese_1): New.
1417 (try_generate_gimple_bb): Call outermost_loop_in_sese_1. Update
1418 call to graphite_find_data_references_in_stmt.
1419 (analyze_drs_in_stmts): Same.
1420 * tree-data-ref.c (dr_analyze_indices): Pass in parameter the loop
1421 in which the scalar analysis of indices is performed.
1422 (create_data_ref): Same. Update call to dr_analyze_indices.
1423 (find_data_references_in_stmt): Update call to create_data_ref.
1424 (graphite_find_data_references_in_stmt): Same.
1425 * tree-data-ref.h (graphite_find_data_references_in_stmt): Update
1426 declaration.
1427 (create_data_ref): Same.
1428 * tree-ssa-loop-prefetch.c (determine_loop_nest_reuse): Update
1429 call to create_data_ref.
1430
ac53c069
SP
14312011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1432
1433 * graphite-sese-to-poly.c (build_poly_scop): Move
38be4072 1434 rewrite_commutative_reductions_out_of_ssa before find_scop_parameters.
ac53c069 1435
3d17df15
SP
14362011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1437
1438 * graphite-sese-to-poly.c (close_phi_written_to_memory): Also allow
1439 VAR_DECL, PARM_DECL, and RESULT_DECL.
1440
c513da01
SP
14412011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1442
1443 * graphite-dependences.c (reduction_dr_1): Allow several reductions
1444 in a reduction PBB.
1445 * graphite-sese-to-poly.c (split_reduction_stmt): Do not split PBBs
1446 that have already been marked as PBB_IS_REDUCTION.
1447
3a292d59
SP
14482011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1449
1450 * graphite-scop-detection.c (same_close_phi_node): New.
1451 (remove_duplicate_close_phi): New.
1452 (make_close_phi_nodes_unique): New.
1453 (canonicalize_loop_closed_ssa): Call make_close_phi_nodes_unique.
1454
ba858447
SP
14552011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1456
1457 * graphite-dependences.c (new_poly_ddr): Call same_pdr_p.
1458 * graphite-poly.h (same_pdr_p): Do not expect that the PDR_TYPE
1459 of both data references to be the same.
1460
8d865c56
SP
14612011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1462
38be4072
UB
1463 * graphite-dependences.c (build_lexicographical_constraint): Remove
1464 the gdim parameter.
1465 (build_lexicographical_constraint): Adjust call to
1466 ppl_powerset_is_empty.
8d865c56
SP
1467 (dependence_polyhedron): Same.
1468 (graphite_legal_transform_dr): Same.
1469 (graphite_carried_dependence_level_k): Same.
38be4072
UB
1470 * graphite-ppl.c (ppl_powerset_is_empty): Remove the nb_params
1471 parameter.
8d865c56
SP
1472 * graphite-ppl.h (ppl_powerset_is_empty): Adjust declaration.
1473
50034a36
SP
14742011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1475
1476 * graphite-sese-to-poly.c
1477 (translate_scalar_reduction_to_array_for_stmt): Call unshare_expr.
1478 (close_phi_written_to_memory): New.
1479 (translate_scalar_reduction_to_array): Call close_phi_written_to_memory
1480 and unshare_expr.
1481
0deada9e
SP
14822011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1483
1484 * doc/install.texi: Update the expected version number of PPL to 0.11.
1485 * graphite-ppl.c (ppl_powerset_is_empty): Remove now dead code under
1486 #if PPL_VERSION_MINOR < 11.
1487
d7d3d6af
SP
14882011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1489
1490 * graphite-dependences.c: Include graphite-cloog-util.h.
1491 (new_poly_ddr): Inlined into dependence_polyhedron.
1492 (free_poly_ddr): Moved close by new_poly_ddr.
1493 (dependence_polyhedron_1): Renamed dependence_polyhedron.
1494 Early return NULL when ppl_powerset_is_empty returns true.
1495 (dependence_polyhedron): Renamed new_poly_ddr. Call only once
1496 poly_drs_may_alias_p. Avoid one call to ppl_powerset_is_empty.
1497 (graphite_legal_transform_dr): Call new_poly_ddr.
1498 (graphite_carried_dependence_level_k): Same.
1499 (dot_original_deps_stmt_1): Renamed dot_deps_stmt_2. Use new_poly_ddr.
1500 (dot_transformed_deps_stmt_1): Removed.
1501 (dot_deps_stmt_1): Call dot_deps_stmt_2.
1502 (dot_original_deps): Renamed dot_deps_2. Call new_poly_ddr.
1503 (dot_deps_1): Call dot_deps_2.
1504 * Makefile.in (graphite-dependences.o): Add missing dependence on
1505 graphite-cloog-util.h.
1506
28c5db57
SP
15072011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1508
1509 * graphite-dependences.c (new_poly_dr): Call ppl_powerset_is_empty.
1510 (build_lexicographical_constraint): Same.
1511 (dependence_polyhedron_1): Same.
1512 (graphite_legal_transform_dr): Same.
1513 (graphite_carried_dependence_level_k): Same.
1514 * graphite-ppl.c (ppl_powerset_is_empty): New.
1515 * graphite-ppl.h (ppl_powerset_is_empty): Declared.
1516 * tree-data-ref.c (dump_data_reference): Print the basic block index.
1517
5168d98f
SP
15182011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1519
1520 * graphite-dependences.c (build_pairwise_scheduling): Correctly compute
1521 the "a followed by b" relation and document it.
1522
4a40293a
SP
15232011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1524
1525 * graphite-dependences.c (build_lexicographical_constraint): Stop the
1526 iteration when the bag of constraints is empty.
1527
271fb6fa
SP
15282011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1529
1530 * graphite-poly.c (pbb_remove_duplicate_pdrs): Make it work.
1531
92d23680
SP
15322011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1533
1534 * graphite-interchange.c (lst_interchange_profitable_p): Takes a loop
1535 nest and two loop depths as parameters.
1536 (lst_try_interchange_loops): Call lst_interchange_profitable_p after
1537 lst_perfect_nestify.
1538
2f51deff
SP
15392011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1540
1541 * graphite-dependences.c (print_pddr): Call
1542 ppl_io_fprint_Pointset_Powerset_C_Polyhedron.
1543
07f3593c
SP
15442011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1545
1546 * graphite-ppl.c (debug_gmp_value): New.
1547 * graphite-ppl.h (debug_gmp_value): Declared.
1548
3fae6099
TG
15492011-01-25 Tobias Grosser <grosser@fim.uni-passau.de>
1550
1551 * doc/install.texi: Document availability of cloog-0.16.
1552
1c3ba85b
SP
15532011-01-25 Vladimir Kargov <kargov@gmail.com>
1554
1555 * graphite-scop-detection.c (canonicalize_loop_closed_ssa): Free
1556 invalid postdominance info.
1557
e8ba94fc
JH
15582011-01-24 Jan Hubicka <jh@suse.cz>
1559
1560 PR c/21659
1561 * doc/extend.texi (weak pragma): Drop claim that it must
1562 appear before definition.
1563 * varasm.c (merge_weak, declare_weak): Only sanity check
1564 that DECL is not output at a time it is declared weak.
1565
2b6e2d13
KZ
15662011-01-24 Kenneth Zadeck <zadeck@naturalbridge.com>
1567
1568 * machmode.def: Fixed comments.
1c3ba85b 1569
9841210f
KT
15702011-01-24 Kai Tietz <kai.tietz@onevision.com>
1571
1572 * emit-rtl.c (reg_attrs_htab_hash): Replace long by intptr_t.
1573
15742011-01-24 Paul Koning <ni1d@arrl.net>
e046112d
PK
1575
1576 * builtins.c (c_readstr): Fix byte order if BYTES_BIG_ENDIAN !=
1c3ba85b 1577 WORDS_BIG_ENDIAN.
e046112d 1578
a6c5070a
L
15792011-01-24 H.J. Lu <hongjiu.lu@intel.com>
1580
1581 PR target/46519
1582 * config/i386/i386.c: Include sbitmap.h and fibheap.h.
1583 (block_info): Add scanned and prev.
1584 (move_or_delete_vzeroupper_2): Return if the basic block
1585 has been scanned and the upper 128bit state is unchanged
1586 from the last scan.
1587 (move_or_delete_vzeroupper_1): Return true if the exit
1588 state is changed.
1589 (move_or_delete_vzeroupper): Visit basic blocks using the
1590 work-list based algorithm based on vt_find_locations in
1591 var-tracking.c.
1592
1593 * config/i386/t-i386: Also depend on sbitmap.h and $(FIBHEAP_H).
1594
a40d79d7
NC
15952011-01-24 Nick Clifton <nickc@redhat.com>
1596
1597 * config/v850/v850.opt (mv850es): New option - alias for -mv850e1.
1598 * config/v850/v850.h (ASM_SPEC): If -mv850es is specified pass
1599 -mv850e1 to the assembler. If -mv850e1 or -mv850es is specified
1600 then define __v850e1__.
1601 * doc/invoke.texi: Document -mv850es.
1602
440eb8de
RH
16032011-01-24 Richard Henderson <rth@redhat.com>
1604
1605 * config/rx/predicates.md (rx_fp_comparison_operator): Don't accept
1606 compound unordered comparisons.
1607 * config/rx/rx.c (rx_split_fp_compare): Remove.
1608 * config/rx/rx-protos.h: Update.
1609 * config/rx/rx.md (gcc_conds, rx_conds): Remove.
1610 (cbranchsf4): Don't call rx_split_fp_compare.
1611 (*cbranchsf4): Use rx_split_cbranch.
1612 (*cmpsf): Don't accept "i" constraint.
1613 (*conditional_branch): Only valid after reload.
1614 (cstoresf4): Merge expander with insn. Don't call rx_split_fp_compare.
1615
3ff79f99
MM
16162011-01-24 Michael Meissner <meissner@linux.vnet.ibm.com>
1617
1618 PR target/47385
1619 * config/rs6000/altivec.md (vector constant splitters): Add
1620 support for creating vector single precision constants if -mvsx is
1621 used and we would create the constant using Altivec primitives.
1622
ff3d9d08
BS
16232011-01-23 Bernd Schmidt <bernds@codesourcery.com>
1624 Richard Sandiford <rdsandiford@googlemail.com>
1625
1626 PR rtl-optimization/47166
1627 * reload1.c (emit_reload_insns): Disable the spill_reg_store
1628 mechanism for PRE_MODIFY and POST_MODIFY.
1629 (inc_for_reload): For PRE_MODIFY, return the insn that sets the
1630 reloadreg.
1631
7fcaf152
AS
16322011-01-23 Andreas Schwab <schwab@linux-m68k.org>
1633
8788adb6 1634 * compare-elim.c (maybe_select_cc_mode): Add ATTRIBUTE_UNUSED markers.
7fcaf152 1635
d09b58c4
JH
16362011-01-22 Jan Hubicka <jh@suse.cz>
1637
1638 PR lto/47333
1639 * lto-cgraph.c (reachable_from_this_partition_p): Fix pasto.
1640
e8ff8c5a
JH
16412011-01-22 Jan Hubicka <jh@suse.cz>
1642
1643 PR tree-optimization/43884
1644 PR lto/44334
8788adb6 1645 * predict.c (maybe_hot_frequency_p): Use entry block frequency as base.
e8ff8c5a
JH
1646 * doc/invoke.texi (hot-bb-frequency-fraction): Update docs.
1647
ccaed3ba
AS
16482011-01-22 Anatoly Sokolov <aesok@post.ru>
1649
1650 * config/s390/s390.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
1651 * config/s390/s390.c (s390_register_move_cost,
1652 s390_memory_move_cost): New.
1653 (TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.
1654
0cecee06
UW
16552011-01-22 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1656
1657 PR middle-end/47401
1658 * except.c (sjlj_assign_call_site_values): Move setting the
1659 crtl->uses_eh_lsda flag to ...
1660 (sjlj_mark_call_sites): ... here.
1661 (sjlj_emit_function_enter): Support NULL dispatch label.
1662 (sjlj_build_landing_pads): In a function with no landing pads
1663 that still has must-not-throw regions, generate code to register
1664 a personality function with empty LSDA.
1665
e692f276
RH
16662011-01-21 Richard Henderson <rth@redhat.com>
1667
1b7ae0b7
RH
1668 * config/rx/rx.c (TARGET_FLAGS_REGNUM): New.
1669
3843787f
RH
1670 * config/mn10300/mn10300.c (TARGET_FLAGS_REGNUM): New.
1671
e692f276
RH
1672 * compare-elim.c: New file.
1673 * Makefile.in (OBJS-common): Add it.
1674 (compare-elim.o): New.
1675 * common.opt (fcompare-elim): New.
1676 * opts.c (default_options_table): Add OPT_fcompare_elim.
1677 * tree-pass.h (pass_compare_elim_after_reload): New.
1678 * passes.c (init_optimization_passes): Add it.
1679 * recog.h: Protect against re-inclusion.
1680 * target.def (TARGET_FLAGS_REGNUM): New POD hook.
1681 * doc/invoke.texi (-fcompare-elim): Document it.
1682 * doc/tm.texi.in (TARGET_FLAGS_REGNUM): Document it.
1683 * doc/tm.texi: Rebuild.
1684
9a7c2050
NC
16852011-01-22 Nick Clifton <nickc@redhat.com>
1686
1687 * config/rx/rx.md (cstoresf4): Pass comparison operator to
1688 rx_split_fp_compare.
1689
15ba5696
NC
16902011-01-22 Nick Clifton <nickc@redhat.com>
1691
1692 * config/rx/rx.md (UNSPEC_CONST): New.
1693 (deallocate_and_return): Wrap the amount popped off the stack in
1694 an UNSPEC_CONST in order to stop it being rejected by
1695 -mmax-constant-size.
1696 (pop_and_return): Add a "(return)" rtx.
1697 (call): Drop the immediate operand.
1698 (call_internal): Likewise.
1699 (call_value): Likewise.
1700 (call_value_internal): Likewise.
1701 (sibcall_internal): Likewise.
1702 (sibcall_value_internal): Likewise.
1703 (sibcall): Likewise. Generate an explicit call using
1704 sibcall_internal.
1705 (sibcall_value): Likewise.
1706 (mov<>): FAIL if a constant operand is not legitimate.
1707 (addsi3_unpsec): New pattern.
9a7c2050 1708
38be4072 1709 * config/rx/rx.c (rx_print_operand_address): Handle UNSPEC CONSTs.
15ba5696
NC
1710 (ok_for_max_constant): New function.
1711 (gen_safe_add): New function.
1712 (rx_expand_prologue): Use gen_safe_add.
1713 (rx_expand_epilogue): Likewise.
1714 (rx_is_legitimate_constant): Use ok_for_max_constant. Handle
1715 UNSPEC CONSTs.
1716
caaf13d3
JL
17172011-01-21 Jeff Law <law@redhat.com>
1718
1719 PR tree-optimization/47053
1720 * tree-ssa-dse.c (need_eh_cleanup): New bitmap.
1721 (dse_optimize_stmt): Set the appropriate bit in NEED_EH_CLEANUP when
1722 statements are deleted.
1723 (tree_ssa_dse): Allocate & free NEED_EH_CLEANUP. If NEED_EH_CLEANUP
1724 is nonempty, then purge dead edges and cleanup the CFG.
1725
12c30f2f
AO
17262011-01-21 Alexandre Oliva <aoliva@redhat.com>
1727
1728 PR debug/47402
1729 Temporarily revert:
1730 2011-01-21 Alexandre Oliva <aoliva@redhat.com>
1731 PR debug/47106
1732 * tree-dfa.c (create_var_ann): Mark variable as used.
1733
7360d2ac
JJ
17342011-01-21 Jakub Jelinek <jakub@redhat.com>
1735
aaa52a96
JJ
1736 PR middle-end/45566
1737 * except.c (convert_to_eh_region_ranges): Emit queued no-region
1738 notes from other section in hot/cold partitioning even if
1739 last_action is -3. Increment call_site_base.
1740
7360d2ac
JJ
1741 PR rtl-optimization/47366
1742 * fwprop.c (forward_propagate_into): Return bool. If
1743 any changes are made, -fnon-call-exceptions is used and
1744 REG_EH_REGION note is present, call purge_dead_edges
1745 and return true if it purged anything.
1746 (fwprop_addr): Adjust callers, call cleanup_cfg (0) if
1747 any EH edges were purged.
1748
e90b336f
JL
17492011-01-21 Jeff Law <law@redhat.com>
1750
1751 PR rtl-optimization/41619
1752 * caller-save.c (setup_save_areas): Break out code to determine
1753 which hard regs are live across calls by examining the reload chains
1754 so that it is always used.
1755 Eliminate code which checked REG_N_CALLS_CROSSED.
1756
3ffe07e1
JJ
17572011-01-21 Jakub Jelinek <jakub@redhat.com>
1758
1759 PR tree-optimization/47355
1760 * tree-eh.c (cleanup_empty_eh_merge_phis): Give up if
1761 NOP has non-debug uses beyond PHIs in new_bb.
1762
1c7d0b34
AO
17632011-01-21 Alexandre Oliva <aoliva@redhat.com>
1764
1765 PR debug/47106
1766 * cfgexpand.c (account_used_vars_for_block): Only account vars
1767 that are annotated as used.
1768 (estimated_stack_frame_size): Don't set TREE_USED.
1769 * tree-dfa.c (create_var_ann): Mark variable as used.
1770
f99cc488
RG
17712011-01-21 Richard Guenther <rguenther@suse.de>
1772
1773 PR middle-end/47395
1774 * tree.def (WIDEN_MULT_MINUS_EXPR): Fix printed name.
1775
3bc27de7
RG
17762011-01-21 Richard Guenther <rguenther@suse.de>
1777
1778 PR tree-optimization/47365
1779 * tree-ssa-sccvn.h (vn_lookup_kind): Declare.
1780 (vn_reference_lookup_pieces): Adjust.
1781 (vn_reference_lookup): Likewise.
1782 * tree-ssa-sccvn.c (vn_walk_kind): New static global.
1783 (vn_reference_lookup_3): Only look through kills if in
1784 VN_WALKREWRITE mode.
1785 (vn_reference_lookup_pieces): Adjust.
1786 (vn_reference_lookup): Likewise.
1787 (visit_reference_op_load): Likewise.
1788 (visit_reference_op_store): Likewise.
1789 * tree-ssa-pre.c (phi_translate_1): Use VN_WALK mode.
1790 (compute_avail): Likewise.
1791 (eliminate): Likewise.
1792
d8debb1d
JJ
17932011-01-21 Jakub Jelinek <jakub@redhat.com>
1794
1795 * tree-ssa-live.c (remove_unused_scope_block_p): Don't remove
1796 DECL_IGNORED_P non-reg vars if they are used.
1797
3a2df831
JJ
1798 PR tree-optimization/47391
1799 * varpool.c (const_value_known_p): Return false if
1800 decl is volatile.
1801
1dd584a2
KT
18022011-01-21 Kai Tietz <kai.tietz@onevision.com>
1803
1804 PR bootstrap/47215
1805 * config/i386/i386.c (ix86_local_alignment): Handle
1806 case for va_list_type_node is nil.
1807 (ix86_canonical_va_list_type): Likewise.
1808
7f9f095e
AM
18092011-01-21 Alan Modra <amodra@gmail.com>
1810
1811 * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Add
1812 builtin_define __CMODEL_MEDIUM__ and __CMODEL_LARGE__.
1813
837b01f6
RR
18142011-01-20 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
1815
1816 * config/arm/arm.md (define_attr type): Rename f_load
1817 and f_store to f_fpa_load and f_fpa_store. Update.
1818 (write_conflict): Deal with rename fallout.
1819 (*push_fp_multi): Likewise.
1820 * config/arm/fpa.md (f_load): Use f_fpa_load.
1821 (f_store): Use f_fpa_store.
1822 (*movsf_fpa): Likewise.
1823 (*movdf_fpa): Likewise.
1824 (*movxf_fpa): Likewise.
1825 (*thumb2_movsf_fpa): Likewise.
1826 (*thumb2_movdf_fpa): Likewise.
1827 (*thumb2_movxf_fpa): Likewise.
1828 * config/arm/vfp.md (*thumb2_movdf_vfp): Fix attribute to
1829 f_loadd and f_stored.
1830 (*thumb2_movdi_vfp): Likewise.
1831 (*thumb2_movsf_vfp): Fix attribute to f_loads.
1832 (*thumb2_movsi_vfp): Likewise.
1833 * config/arm/cortex-m4-fpu.md (cortex_m4_f_load):
1834 Use f_loads instead of f_load.
1835 * config/arm/cortex-a5.md (cortex_a5_f_loads): Remove f_load.
1836
a1a79768
AS
18372011-01-20 Anatoly Sokolov <aesok@post.ru>
1838
1839 * config/xtensa/xtensa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
1840 * config/xtensa/xtensa-protos.h (constantpool_address_p): Remove.
1841 * config/xtensa/xtensa.c (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
1842 (xtensa_mode_dependent_address_p): New function.
1843 (constantpool_address_p): Make static. Change return type to bool.
1844 Change argument type to const_rtx. Use CONST_INT_P predicate.
1845
427f6cec
AO
18462011-01-20 Alexandre Oliva <aoliva@redhat.com>
1847
1848 PR debug/46583
1849 * tree-ssa-live.c (remove_unused_scope_block_p): Keep type decls.
1850
583ac69c
JJ
18512011-01-20 Jakub Jelinek <jakub@redhat.com>
1852
1853 PR debug/47283
1854 * cfgexpand.c (expand_debug_expr): Instead of generating
1855 (mem (debug_implicit_ptr)) for MEM_REFs use COMPONENT_REF
1856 etc. handling.
1857
93e452ed
RG
18582011-01-20 Richard Guenther <rguenther@suse.de>
1859
1860 PR middle-end/47370
1861 * tree-inline.c (remap_gimple_op_r): Recurse manually for
1862 the pointer operand of MEM_REFs.
1863
28fc44f3
JJ
18642011-01-20 Jakub Jelinek <jakub@redhat.com>
1865
1866 PR tree-optimization/46130
1867 * ipa-split.c (consider_split): If return_bb contains non-virtual
1868 PHIs other than for retval or if split_function would not adjust it,
1869 refuse to split.
1870
ddd268f2
RG
18712011-01-20 Richard Guenther <rguenther@suse.de>
1872
1873 PR tree-optimization/47167
1874 * tree-ssa-copyrename.c (copy_rename_partition_coalesce):
1875 Revert previous change, only avoid enumeral type changes.
1876
882020aa
MS
18772011-01-19 Mike Stump <mikestump@comcast.net>
1878
1879 * doc/tm.texi.in (BRANCH_COST): Englishify.
1880 * doc/tm.texi (BRANCH_COST): Likewise.
1881
7edb6247
DS
18822011-01-19 Dodji Seketeli <dodji@redhat.com>
1883
1884 PR c++/47291
1885 * dwarf2out.c (generic_type_p, schedule_generic_params_dies_gen)
61052244
AM
1886 (gen_scheduled_generic_parms_dies): New functions.
1887 (gen_struct_or_union_type_die): Schedule template parameters DIEs
1888 generation for the end of CU compilation.
1889 (dwarf2out_finish): Generate template parameters DIEs here.
7edb6247 1890
23d5ed5d
AO
18912011-01-19 Alexandre Oliva <aoliva@redhat.com>
1892
1893 PR debug/46240
1894 * tree-into-ssa.c (maybe_register_def): Do not attempt to add
1895 debug bind stmt on merge edges.
1896
37d6a488
AO
18972011-01-19 Alexandre Oliva <aoliva@redhat.com>
1898
1899 PR debug/47079
1900 PR debug/46724
1901 * function.c (instantiate_expr): Instantiate incoming rtl of
1902 implicit arguments, and recurse on VALUE_EXPRs.
1903 (instantiate_decls): Instantiate rtl and VALUE_EXPR of result.
1904 * var-tracking.c (adjust_mems): Reject virtual_incoming_args_rtx.
1905
689f2c82
AO
19062011-01-19 Alexandre Oliva <aoliva@redhat.com>
1907
1908 * c-parser.c (c_parser_for_statement): Initialize
1909 collection_expression.
1910
03029de4
JM
19112011-01-19 Joseph Myers <joseph@codesourcery.com>
1912
1913 * config/spu/spu-elf.h (ASM_SPEC): Remove %{w:-W}.
1914
3e03217e
JM
19152011-01-19 Joseph Myers <joseph@codesourcery.com>
1916
1917 * config/rs6000/sysv4.h (LINK_PATH_SPEC): Remove.
1918 (LINK_SHLIB_SPEC): Don't use %(link_path).
1919 (SUBTARGET_EXTRA_SPECS): Remove link_path.
1920
5bbe9b3f
JM
19212011-01-19 Joseph Myers <joseph@codesourcery.com>
1922
1923 * config/rs6000/sysv4.h (SHARED_LIB_SUPPORT): Remove conditional.
1924 (NO_SHARED_LIB_SUPPORT): Remove.
1925 (LINK_SHLIB_SPEC): Remove one conditional definition.
1926
368e0b39
JM
19272011-01-19 Joseph Myers <joseph@codesourcery.com>
1928
1929 * config/mips/linux64.h (LINK_SPEC): Remove %{non_shared}
1930 %{call_shared}.
1931 * config/mips/mips.h (LINK_SPEC): Remove %{non_shared}.
1932 * config/mips/netbsd.h (LINK_SPEC): Remove %{call_shared}.
1933 * config/mips/openbsd.h (LINK_SPEC): Remove %{non_shared}
1934 %{call_shared} and conditionals on these options not being passed.
1935 * config/mips/sde.h (LINK_SPEC): Remove %{non_shared}
1936 %{call_shared}.
1937
ed7656f6
JJ
19382011-01-19 Jakub Jelinek <jakub@redhat.com>
1939
68457901
JJ
1940 * ipa-split.c (find_return_bb): Use single_pred_p/single_pred_edge,
1941 simplify.
1942
ed7656f6
JJ
1943 * ipa-split.c: Spelling fixes.
1944
e0d1958f
RH
19452011-01-19 Richard Henderson <rth@redhat.com>
1946
1947 * config/mn10300/mn10300.md (mulsi3): Use reg_or_am33_const_operand.
1948 (*mulsi3): Likewise.
1949
27098b6b
RH
1950 * longlong.h [__mn10300__] (count_leading_zeros): New.
1951 [__mn10300__] (umul_ppmm, smul_ppmm): New.
1952 [__mn10300__] (add_ssaaaa, subddmmss): New.
1953 [__mn10300__] (udiv_qrnnd, sdiv_qrnnd): New.
1954 [__mn10300__] (UMUL_TIME, UDIV_TIME): New.
1955
d6be7c36
UW
19562011-01-19 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1957
1958 * config/spu/spu.h (MOVE_RATIO): Return 4 in the !speed case.
1959
b1efde2a
RH
19602011-01-19 Richard Henderson <rth@redhat.com>
1961
44217823
RH
1962 * config/mn10300/mn10300.md (addsi3_flags): New.
1963 (addc_internal, adddi3, adddi3_internal, *adddi3_degenerate): New.
1964 (subsi3_flags, subc_internal, subdi3): New.
1965 (subdi3_internal, *subdi3_degenerate): New.
1966 * config/mn10300/predicates.md (reg_or_am33_const_operand): New.
1967
37a185d7
RH
1968 * config/mn10300/mn10300.c (mn10300_can_use_retf_insn): New.
1969 (mn10300_can_use_rets_insn): Rename from mn10300_can_use_return_insn.
1970 (mn10300_expand_epilogue): Use it. Compute REG_SAVE_BYTES once.
1971 * config/mn10300/mn10300-protos.h: Update.
1972 * config/mn10300/mn10300.md (return): Use mn10300_can_use_retf_insn.
1973 (return_ret): Likewise. Rename from return_internal_regs.
1974 (return_internal): Remove.
1975
040c5757
RH
1976 * config/mn10300/mn10300.c (mn10300_unspec_int_label_counter): Remove.
1977 (mn10300_asm_output_addr_const_extra): Don't handle UNSPEC_INT_LABEL.
1978 (mn10300_legitimate_constant_p): Likewise.
1979 (mn10300_can_use_return_insn): Use mn10300_initial_offset.
1980 (mn10300_frame_size): New.
1981 (mn10300_expand_prologue): Use it.
1982 (mn10300_expand_epilogue): Likewise.
1983 (mn10300_initial_offset): Likewise.
1984 * config/mn10300/mn10300-protos.h: Update.
1985 * config/mn10300/mn10300.h (mn10300_unspec_int_label_counter): Remove.
1986 * config/mn10300/mn10300.md (UNSPEC_INT_LABEL): Remove.
1987 (prologue, epilogue, return_internal): Tidy output code.
1988 (mn10300_store_multiple_operation, return): Likewise.
1989 (int_label, pop_pic_reg, GOTaddr2picreg): Remove.
1990 (am33_loadPC, mn10300_loadPC, call_next_insn): Remove.
1991 (add_GOT_to_pic_reg, add_GOT_to_any_reg): Remove.
1992 (load_pic, am33_load_pic): New.
1993 (mn10300_load_pic0, mn10300_load_pic1): New.
1994
bad41521
RH
1995 * config/mn10300/mn10300-modes.def (CCZN, CCZNC): New modes.
1996 * config/mn10300/mn10300.c (CC_FLAG_Z): New.
1997 (CC_FLAG_N, CC_FLAG_C, CC_FLAG_V): New.
1998 (cc_flags_for_mode, cc_flags_for_code): New.
1999 (mn10300_print_operand) ['B']: Use nc/ns for GE/LT when the
2000 overflow flag is not valid. Validate that the flags we need
2001 for the comparison are valid.
2002 (mn10300_output_cmp): Remove.
2003 (mn10300_output_add): New.
2004 (mn10300_select_cc_mode): Use cc_flags_for_code.
2005 (mn10300_split_cbranch): New.
2006 (mn10300_match_ccmode): New.
2007 (mn10300_split_and_operand_count): New.
2008 * config/mn10300/mn10300.h (SELECT_CC_MODE): Pass all of the arguments
2009 to the function.
2010 * config/mn10300/mn10300.md (*am33_addsi3, *mn10300_addsi3): Merge...
2011 (addsi3): ... here. Use mn10300_output_add.
2012 (*addsi3_flags): New.
2013 (*am33_subsi3, *mn10300_subsi3): Merge...
2014 (subsi3): ... here. Use attribute isa.
2015 (*subsi3_flags): New.
2016 (negsi2): Rewrite from expander to insn_and_split. Use NOT+INC
2017 when possible.
2018 (*am33_andsi3, *mn10300_andsi3): Merge...
2019 (andsi3): ... here.
2020 (*andsi3_flags): New.
2021 (andsi3 splitters): New.
2022 (*am33_iorsi3, *mn10300_iorsi3): Merge...
2023 (iorsi3): ... here.
2024 (*iorsi3_flags): New.
2025 (*am33_xorsi3, *mn10300_xorsi3): Merge...
2026 (xorsi3): ... here.
2027 (*xorsi3_flags): New.
2028 (*am33_cmpsi2, *mn10300_cmplsi2): Merge...
2029 (one_cmplsi2): ... here.
2030 (*one_cmplsi2_flags): New.
2031 (*cbranchsi4_cmp): Rename from cbranchsi4_post_reload. Use "r"
2032 instead of "dax" in constraints. Use mn10300_split_cbranch.
2033 (*cmpsi): Rename from cmpsi. Do not use mn10300_output_cmp. Do not
2034 use matching constraints to eliminate a self-comparison.
2035 (*integer_conditional_branch): Rename from integer_conditional_branch.
2036 Use int_mode_flags to match CC_REG.
2037 (*cbranchsi4_btst, *btstsi): New.
2038 (*cbranchsf4_cmp): Rename from *cbranchsf4_post_reload. Use
2039 mn10300_split_cbranch.
2040 (*am33_cmpsf): Rename from am33_cmpsf.
2041 (*float_conditional_branch): Rename from float_conditional_branch.
2042 (*zero_extendqisi2_am33, *zero_extendqisi2_mn10300): Merge...
2043 (zero_extendqisi2): ... here.
2044 (*zero_extendhisi2_am33, *zero_extendhisi2_mn10300): Merge...
2045 (zero_extendhisi2): ... here.
2046 (*extendqisi2_am33, *extendqisi2_mn10300): Merge...
2047 (extendqisi2): ... here.
2048 (*extendhisi2_am33, *extendhisi2_mn10300): Merge...
2049 (extendhisi2): ... here.
2050 (*am33_ashlsi3, *mn10300_ashlsi3): Merge...
2051 (ashlsi3): ... here.
2052 (*am33_lshrsi3, *mn10300_lshrsi3): Merge...
2053 (lshrsi3): ... here.
2054 (*am33_ashrisi3, *mn10300_ashrsi3): Merge...
2055 (ashrsi3): ... here.
2056 (consecutive add peephole): Remove.
2057 * config/mn10300/predicates.md (label_ref_operand): New.
2058 (int_mode_flags): New.
2059 (CCZN_comparison_operator): New.
2060
9efb4993
RH
2061 * config/mn10300/mn10300.md (UNSPEC_EXT): New.
2062 (throughput_42_latency_43): New reservation.
2063 (mulsidi3, umulsidi3): New expanders.
2064 (mulsidi3_internal): Rewrite from old mulsidi3 pattern. Expose
2065 the MDR register to allocation; separately allocate the low and
2066 high parts of the DImode result.
2067 (umulsidi3_internal): Similarly.
2068 (*am33_mulsi3, *mn10300_mulsi3): Merge into ...
2069 (*mulsi3): ... here. Clobber MDR as a scratch as necessary.
2070 (udivsi3, umodsi3): Remove.
2071 (udivmodsi4, divmodsi4): New expanders.
2072 (*udivmodsi4): Rename from udivmodsi4. Expose MDR properly.
2073 (*divmodsi4): Simiarly.
2074 (ext_internal): New.
2075
c25a21f5
RH
2076 * config/mn10300/constraints.md ("z"): New constraint.
2077 * config/mn10300/mn10300.h (MDR_REGNUM): Remove.
2078 (FIXED_REGISTERS): Don't fix MDR.
2079 (CALL_USED_REGSITERS): Reformat nicely.
2080 (REG_ALLOC_ORDER): Add MDR.
2081 (enum regclass): Add MDR_REGS.
2082 (REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update to match.
2083 (IRA_COVER_CLASSES): Add MDR_REGS.
2084 (REGNO_REG_CLASS): Handle MDR_REG.
2085 * config/mn10300/mn10300.c (mn10300_secondary_reload): Handle MDR_REGS.
2086 (mn10300_register_move_cost): Likewise.
2087 * config/mn10300/mn10300.md (MDR_REG): New.
2088 (*movsi_internal): Handle moves to/from MDR_REGS.
2089
36846b26
RH
2090 * config/mn10300/mn10300.c (mn10300_print_operand_address): Handle
2091 POST_MODIFY.
2092 (mn10300_secondary_reload): Tidy combination reload classes.
2093 (mn10300_legitimate_address_p): Allow post-modify and reg+reg
2094 addresses for AM33. Allow symbolic offsets for reg+imm.
2095 (mn10300_regno_in_class_p): New.
2096 (mn10300_legitimize_reload_address): New.
2097 * config/mn10300/mn10300.h (enum reg_class): Remove
2098 DATA_OR_ADDRESS_REGS, DATA_OR_EXTENDED_REGS, ADDRESS_OR_EXTENDED_REGS,
2099 SP_OR_EXTENDED_REGS, SP_OR_ADDRESS_OR_EXTENDED_REGS. Add
2100 SP_OR_GENERAL_REGS.
2101 (REG_CLASS_NAMES): Update to match.
2102 (REG_CLASS_CONTENTS): Likewise.
2103 (INDEX_REG_CLASS): Use GENERAL_REGS for AM33.
2104 (BASE_REG_CLASS): Use SP_OR_GENERAL_REGS for AM33.
2105 (REGNO_IN_RANGE_P): Remove.
2106 (REGNO_DATA_P): Use mn10300_regno_in_class_p.
2107 (REGNO_ADDRESS_P, REGNO_EXTENDED_P): Likewise.
2108 (REGNO_STRICT_OK_FOR_BASE_P): Likewise.
2109 (REGNO_STRICT_OK_FOR_BIT_BASE_P): Likewise.
2110 (REGNO_STRICT_OK_FOR_INDEX_P): Likewise.
2111 (REGNO_SP_P, REGNO_AM33_P, REGNO_FP_P): Remove.
2112 (REGNO_GENERAL_P): New.
2113 (HAVE_POST_MODIFY_DISP): New.
2114 (USE_LOAD_POST_INCREMENT, USE_STORE_POST_INCREMENT): New.
2115 (LEGITIMIZE_RELOAD_ADDRESS): New.
2116 * config/mn10300/mn10300-protos.h: Update.
2117
8b119bb6
RH
2118 * config/mn10300/mn10300.c (mn10300_preferred_reload_class): Allow
2119 DATA_REGS for AM33 stack-pointer destination.
2120 (mn10300_preferred_output_reload_class): Likewise.
2121 (mn10300_secondary_reload): Rearrange mn10300_secondary_reload_class
2122 into a form appropriate for ...
2123 (TARGET_SECONDARY_RELOAD): New.
2124 * config/mn10300/mn10300.h (SECONDARY_RELOAD_CLASS): Remove.
2125 * config/mn10300/mn10300-protos.h: Update.
2126 * config/mn10300/mn10300.md (reload_plus_sp_const): Rename from
2127 reload_insi; use the "A" constraint for the scratch; handle AM33
2128 moves of sp to non-address registers.
2129
b1efde2a
RH
2130 * config/mn10300/mn10300.md (*am33_movqi, *mn10300_movqi): Merge into
2131 (*movqi_internal): ... here.
2132 (*am33_movhi, *mn10300_movhi): Merge into...
2133 (*movhi_internal): ... here.
2134 (*movsi_internal): Use "r" instead of "dax" in constraints. Use "A"
2135 as the source/destination of moves from/to SP.
2136 (movsf): Only allow for AM33-2.
1c3ba85b 2137 (*movsf_internal): Use "r" instead of "dax"; use "F" instead of
b1efde2a
RH
2138 any integer constant constraint. Only allow for AM33-2. Tidy
2139 all of the alternative outputs.
2140 (movdi, movdf, *am33_2_movdf, *mn10300_movdf): Remove.
2141 (udivmodsi4): Delete expander and promote *udivmodsi4. Disallow
2142 for MN103.
2143 (udivsi3, umodsi3): New patterns for MN103 only.
2144
b899fd78
JR
21452011-01-19 Joern Rennecke <amylaar@spamcop.net>
2146
2147 * doc/tm.texi.in: Spell out that a lack of register class unions
2148 can lead to ICEs.
2149 * doc/tm.texi: Regenerate.
2150
afaaa67d
JJ
21512011-01-19 Jakub Jelinek <jakub@redhat.com>
2152
2e0642cd
JJ
2153 PR rtl-optimization/47337
2154 * dce.c (check_argument_store): New function.
2155 (find_call_stack_args): Ignore debug insns. Use check_argument_store.
2156
afaaa67d
JJ
2157 PR tree-optimization/47290
2158 * tree-eh.c (infinite_empty_loop_p): New function.
2159 (cleanup_empty_eh): Use it.
2160
d2cd871f
SE
21612011-01-18 Steve Ellcey <sje@cup.hp.com>
2162
2163 PR target/46997
2164 * ia64.c (ia64_expand_unpack): Fix code for TARGET_BIG_ENDIAN.
2165 (a64_expand_widen_sum): Ditto.
2166 * vect.md (mulv2si3): Disable for TARGET_BIG_ENDIAN.
2167 (vec_extract_evenodd_help): Ditto.
2168 (vec_extract_evenv4hi): Ditto.
2169 (vec_extract_oddv4hi): Ditto.
2170 (vec_extract_evenv2si): Ditto.
2171 (vec_extract_oddv2si): Ditto.
2172 (vec_extract_evenv2sf): Ditto.
2173 (vec_extract_oddv2sf): Ditto.
2174 (vec_pack_trunc_v4hi: Ditto.
2175 (vec_pack_trunc_v2si): Ditto.
2176 (vec_interleave_lowv8qi): Fix for TARGET_BIG_ENDIAN.
2177 (vec_interleave_highv8qi): Ditto.
2178 (mix1_r): Ditto.
2179 (vec_extract_oddv8qi): Ditto.
2180 (vec_interleave_lowv4hi): Ditto.
2181 (vec_interleave_highv4hi): Ditto.
2182 (vec_interleave_lowv2si): Ditto.
2183 (vec_interleave_highv2si): Ditto.
2184
41a1208a
JDA
21852011-01-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2186
2187 * doc/extend.texi: Mention __float128 support on hppa HP-UX.
2188 * config/pa/pa-hpux.h (HPUX_LONG_DOUBLE_LIBRARY): Define to 1.
2189 * config/pa/pa.c (pa_expand_builtin): New. Include "langhooks.h".
2190 (pa_c_mode_for_suffix): New.
2191 (TARGET_EXPAND_BUILTIN): Define.
2192 (TARGET_C_MODE_FOR_SUFFIX): Define.
2193 (pa_builtins): Define.
2194 (pa_init_builtins): Register __float128 type and init new support
2195 builtins.
2196 * config/pa/pa.h (HPUX_LONG_DOUBLE_LIBRARY): Define if not defined.
2197 * config/pa/quadlib.c (_U_Qfcopysign): New.
2198
1ecad98e
EB
21992011-01-18 Eric Botcazou <ebotcazou@adacore.com>
2200
2201 PR middle-end/46894
2202 * explow.c (allocate_dynamic_stack_space): Do not assume more than
2203 BITS_PER_UNIT alignment if STACK_DYNAMIC_OFFSET or STACK_POINTER_OFFSET
2204 are defined.
2205
d4f2460a
UW
22062011-01-18 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2207
2208 PR tree-optimization/47179
2209 * config/spu/spu.c (spu_ref_may_alias_errno): New function.
2210 (TARGET_REF_MAY_ALIAS_ERRNO): Define.
2211
4994da65
RG
22122011-01-18 Richard Guenther <rguenther@suse.de>
2213
2214 PR rtl-optimization/47216
2215 * emit-rtl.c: Include tree-flow.h.
2216 (set_mem_attributes_minus_bitpos): Use tree_could_trap_p instead
2217 of replicating it with different semantics.
2218 * Makefile.in (emit-rtl.o): Adjust.
2219
1eb458d1
RR
22202011-01-18 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
2221
38be4072 2222 * config/arm/cortex-a9.md (cortex-a9-neon.md): Actually include.
61052244 2223 (cortex_a9_dp): Handle neon types correctly.
1eb458d1 2224
e7ef91dc
JJ
22252011-01-18 Jakub Jelinek <jakub@redhat.com>
2226
2227 PR rtl-optimization/47299
2228 * expr.c (expand_expr_real_2) <case WIDEN_MULT_EXPR>: Don't use
38be4072 2229 subtarget. Use normal multiplication if both operands are constants.
e7ef91dc
JJ
2230 * expmed.c (expand_widening_mult): Don't try to optimize constant
2231 multiplication if op0 has VOIDmode. Convert op1 constant to mode
2232 before using it.
2233
535b7874
RW
22342011-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2235
2236 * doc/lto.texi (LTO): Ensure two spaces after period. Fix
2237 spacing after 'e.g.', typos, comma, hyphenation.
2238
27bf36f3
RH
22392011-01-17 Richard Henderson <rth@redhat.com>
2240
8a5b5449
RH
2241 * config/rx/predicates.md (rx_constshift_operand): Use match_test.
2242 (rx_restricted_mem_operand): New.
2243 (rx_shift_operand): Use register_operand.
2244 (rx_source_operand, rx_compare_operand): Likewise.
2245 * config/rx/rx.md (addsi3_flags): New expander.
2246 (adddi3): Rewrite as expander.
2247 (adc_internal, *adc_flags, adddi3_internal): New patterns.
2248 (subsi3_flags): New expander.
2249 (subdi3): Rewrite as expander.
2250 (sbb_internal, *sbb_flags, subdi3_internal): New patterns.
2251
784f69be
RH
2252 * config/rx/rx.c (RX_BUILTIN_SAT): Remove.
2253 (rx_init_builtins): Remove sat builtin.
2254 (rx_expand_builtin): Likewise.
2255 * config/rx/rx.md (ssaddsi3): New.
2256 (*sat): Rename from sat. Represent the CC_REG input.
2257
f033541c
RH
2258 * config/rx/predicates.md (rshift_operator): New.
2259 * config/rx/rx.c (rx_expand_insv): Remove.
2260 * config/rx/rx-protos.h: Update.
2261 * config/rx/rx.md (*bitset): Rename from bitset. Swap the ashift
2262 operand to the canonical position.
2263 (*bitset_in_memory, *bitinvert, *bitinvert_in_memory): Similarly.
2264 (*bitclr, *bitclr_in_memory): Similarly.
2265 (*insv_imm, rx_insv_reg, *insv_cond, *bmcc, *insv_cond_lt): New.
2266 (insv): Retain the zero_extract in the expansion.
2267
34fee389
RH
2268 * config/rx/rx.md (bswapsi2): Use = not + for output reload.
2269 (bswaphi2, bitinvert, revw): Likewise.
2270
265c835f
RH
2271 * config/rx/rx.c (gen_rx_store_vector): Use VOIDmode for gen_rtx_SET.
2272 (gen_rx_rtsd_vector, gen_rx_popm_vector): Likewise.
2273 * config/rx/rx.md (pop_and_return): Use VOIDmode for SET.
2274 (stack_push, stack_pushm, stack_pop, stack_popm): Likewise.
2275 (bitset, bitset_in_memory): Likewise.
2276 (bitinvert, bitinvert_in_memory): Likewise.
2277 (bitclr, bitclr_in_memory): Likewise.
2278 (insv, sync_lock_test_and_setsi, movstr, rx_movstr): Likewise.
2279 (rx_strend, rx_cmpstrn): Likewise.
2280 (rx_setmem): Likewise. Make the source BLKmode to match the dest.
2281 (bitop peep2 patterns): Remove.
2282
b4d83be3
RH
2283 * config/rx/rx.c (rx_match_ccmode): New.
2284 * config/rx/rx-protos.h: Update.
2285 * config/rx/rx.md (abssi2): Clobber, don't set flags.
2286 (addsi3, adddi3, andsi3, negsi2, one_cmplsi2, iorsi3): Likewise.
2287 (rotlsi3, rotrsi3, ashrsi3, lshrsi3, ashlsi3): Likewise.
2288 (subsi3, subdi3, xorsi3, addsf3, divsf3, mulsf3, subsf3): Likewise.
2289 (fix_truncsfsi2, floatsisf2): Likewise.
2290 (*abssi2_flags, *addsi3_flags, *andsi3_flags, *negsi2_flags): New.
2291 (*one_cmplsi2_flags, *iorsi3_flags, *rotlsi3_flags): New.
2292 (*rotrsi3_flags, *ashrsi3_flags, *lshrsi3_flags, *ashlsi3_flags): New.
2293 (*subsi3_flags, *xorsi3_flags): New.
2294
d0acb939
RH
2295 * config/rx/rx.md (cstoresf4, *cstoresf4): New patterns.
2296
c06fc3d9
RH
2297 * config/rx/rx.c (rx_print_operand): Remove workaround for
2298 unsplit comparison operations.
2299
2882702b
RH
2300 * config/rx/rx.md (movsicc): Split after reload.
2301 (*movsicc): Merge *movsieq and *movsine via match_operator.
2302 (*stcc): New pattern.
2303
6f7310f2
RH
2304 * config/rx/rx.c (rx_float_compare_mode): Remove.
2305 * config/rx/rx.h (rx_float_compare_mode): Remove.
2306 * config/rx/rx.md (cstoresi4): Split after reload.
2307 (*sccc): New pattern.
2308
e963cb1a
RH
2309 * config/rx/predicates.md (label_ref_operand): New.
2310 (rx_z_comparison_operator): New.
2311 (rx_zs_comparison_operator): New.
2312 (rx_fp_comparison_operator): New.
2313 * config/rx/rx.c (rx_print_operand) [B]: Examine comparison modes.
2314 Validate that the flags are set properly for the comparison.
2315 (rx_gen_cond_branch_template): Remove.
2316 (rx_cc_modes_compatible): Remove.
2317 (mode_from_flags): New.
2318 (flags_from_code): Rename from flags_needed_for_conditional.
2319 (rx_cc_modes_compatible): Re-write in terms of flags_from_mode.
2320 (rx_select_cc_mode): Likewise.
2321 (rx_split_fp_compare): New.
2322 (rx_split_cbranch): New.
2323 * config/rx/rx.md (most_cond, zs_cond): Remove iterators.
2324 (*cbranchsi4): Use match_operator and rx_split_cbranch.
2325 (*cbranchsf4): Similarly.
2326 (*cbranchsi4_tst): Rename from *tstbranchsi4_<code>. Use
2327 match_operator and rx_split_cbranch.
2328 (*cbranchsi4_tst_ext): Combine *tstbranchsi4m_eq and
2329 tstbranchsi4m_ne. Use match_operator and rx_split_cbranch.
2330 (*cmpsi): Rename from cmpsi.
2331 (*tstsi): Rename from tstsi.
2332 (*cmpsf): Rename from cmpsf; use CC_Fmode.
2333 (*conditional_branch): Rename from conditional_branch.
2334 (*reveresed_conditional_branch): Remove.
2335 (b<code>): Remove expander.
2336 * config/rx/rx-protos.h: Update.
2337
af530bb4
RH
2338 * config/rx/rx.c (rx_compare_redundant): Remove.
2339 * config/rx/rx.md (cmpsi): Don't use it.
2340 * config/rx/rx-protos.h: Update.
2341
27bf36f3
RH
2342 * config/rx/rx-modes.def (CC_F): New mode.
2343 * config/rx/rx.c (rx_select_cc_mode): New.
2344 * config/rx/rx.h (SELECT_CC_MODE): Use it.
2345 * config/rx/rx-protos.h: Update.
2346
d7fde127
RH
23472011-01-17 Richard Henderson <rth@redhat.com>
2348
2349 * except.c (dump_eh_tree): Fix stray ; after for statement.
2350
6ff38230
RG
23512011-01-17 Richard Guenther <rguenther@suse.de>
2352
2353 PR tree-optimization/47313
2354 * tree-inline.c (tree_function_versioning): Move DECL_RESULT
2355 handling before copying the body. Properly deal with
2356 by-reference result in SSA form.
2357
114ce554
ILT
23582011-01-17 Ian Lance Taylor <iant@google.com>
2359
bf5cd92b 2360 PR target/47219
114ce554
ILT
2361 * config/sparc/sparc.c (sparc_sr_alias_set): Don't define.
2362 (struct_value_alias_set): Don't define.
2363 (sparc_option_override): Don't set sparc_sr_alias_set and
2364 struct_value_alias_set.
2365 (save_or_restore_regs): Use gen_frame_mem rather than calling
2366 set_mem_alias_set.
2367 (sparc_struct_value_rtx): Likewise.
2368
98c6d93c
L
23692011-01-17 H.J. Lu <hongjiu.lu@intel.com>
2370
2371 PR target/47318
2372 * config/i386/avxintrin.h (_mm_maskload_pd): Change mask to
2373 __m128i.
2374 (_mm_maskstore_pd): Likewise.
2375 (_mm_maskload_ps): Likewise.
2376 (_mm_maskstore_ps): Likewise.
2377 (_mm256_maskload_pd): Change mask to __m256i.
2378 (_mm256_maskstore_pd): Likewise.
2379 (_mm256_maskload_ps): Likewise.
2380 (_mm256_maskstore_ps): Likewise.
2381
2382 * config/i386/i386-builtin-types.def: Updated.
2383 (ix86_expand_special_args_builtin): Likewise.
2384
2385 * config/i386/i386.c (bdesc_special_args): Update
2386 __builtin_ia32_maskloadpd, __builtin_ia32_maskloadps,
2387 __builtin_ia32_maskloadpd256, __builtin_ia32_maskloadps256,
2388 __builtin_ia32_maskstorepd, __builtin_ia32_maskstoreps,
2389 __builtin_ia32_maskstorepd256 and __builtin_ia32_maskstoreps256.
2390
2391 * config/i386/sse.md (avx_maskload<ssemodesuffix><avxmodesuffix>):
2392 Use <avxpermvecmode> on mask register.
2393 (avx_maskstore<ssemodesuffix><avxmodesuffix>): Likewise.
2394
b9361af2 23952011-01-17 Olivier Hainque <hainque@adacore.com>
61052244
AM
2396 Michael Haubenwallner <michael.haubenwallner@salomon.at>
2397 Eric Botcazou <ebotcazou@adacore.com>
b9361af2
OH
2398
2399 PR target/46655
2400 * xcoffout.c (ASM_OUTPUT_LINE): Output line only if positive, and only
2401 if <= USHRT_MAX in 32-bit mode.
2402
b7ae9eb5
RW
24032011-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2404
2405 * doc/install.texi (Configuration, Specific): Wrap long
2406 lines in examples. Allow line wrapping in long options
2407 and URLs where beneficial for PDF output.
2408
4377fad9
RS
24092011-01-16 Richard Sandiford <rdsandiford@googlemail.com>
2410
2411 * config/mips/mips.c (mips_classify_symbol): Don't return
2412 SYMBOL_PC_RELATIVE for nonlocal labels.
2413
55959ffa 24142011-01-15 Eric Botcazou <ebotcazou@adacore.com>
be46831f 2415
55959ffa
EB
2416 * config/sparc/sol2-bi.h (CC1_SPEC): Fix typo.
2417
24182011-01-15 Jan Hubicka <jh@suse.cz>
2419
2420 PR tree-optimization/47276
be46831f
JH
2421 * ipa.c (function_and_variable_visibility): Do not try to mark alias
2422 declarations as needed.
2423
05842ff5
MJ
24242011-01-15 Martin Jambor <mjambor@suse.cz>
2425
2426 * common.opt (fdevirtualize): New flag.
2427 * doc/invoke.texi (Option Summary): Document it.
2428 * opts.c (default_options_table): Add devirtualize flag.
2429 * ipa-prop.c (detect_type_change): Return immediately if
2430 devirtualize flag is not set.
2431 (detect_type_change_ssa): Likewise.
2432 (compute_known_type_jump_func): Likewise.
2433 (ipa_analyze_virtual_call_uses): Likewise.
2434
f65cf2b7
MJ
24352011-01-14 Martin Jambor <mjambor@suse.cz>
2436
2437 PR tree-optimization/45934
2438 PR tree-optimization/46302
2439 * ipa-prop.c (type_change_info): New type.
2440 (stmt_may_be_vtbl_ptr_store): New function.
2441 (check_stmt_for_type_change): Likewise.
2442 (detect_type_change): Likewise.
2443 (detect_type_change_ssa): Likewise.
2444 (compute_complex_assign_jump_func): Check for dynamic type change.
2445 (compute_complex_ancestor_jump_func): Likewise.
2446 (compute_known_type_jump_func): Likewise.
2447 (compute_scalar_jump_functions): Likewise.
2448 (ipa_analyze_virtual_call_uses): Likewise.
2449 (ipa_analyze_node): Push and pop cfun, set current_function_decl.
2450
eb5bb0fd
JM
24512011-01-14 Joseph Myers <joseph@codesourcery.com>
2452
2453 * config/i386/i386.h (CC1_CPU_SPEC_1): Don't handle -msse5.
2454 * config/i386/i386.opt (msse5): New Alias.
2455
f2060fbe
JM
24562011-01-14 Joseph Myers <joseph@codesourcery.com>
2457
2458 * config/sparc/linux.h (CC1_SPEC): Remove %{sun4:} %{target:}.
2459 * config/sparc/linux64.h (CC1_SPEC): Likewise.
2460 * config/sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
2461 * config/sparc/sparc.h (CC1_SPEC): Likewise.
2462
3a7b4385
JM
24632011-01-14 Joseph Myers <joseph@codesourcery.com>
2464
2465 * config/sparc/linux.h (CC1_SPEC): Don't handle old equivalents of
2466 -mcpu options.
2467 * config/sparc/linux64.h (CC1_SPEC): Likewise.
2468 * config/sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
2469 * config/sparc/sol2-bi.h (CPP_CPU_SPEC, CC1_SPEC): Likewise.
2470 * config/sparc/sparc.h (CPP_CPU_SPEC, CC1_SPEC, ASM_CPU_SPEC):
2471 Likewise.
2472 * config/sparc/t-elf (MULTILIB_MATCHES): Don't handle -mv8.
2473
a7b778f8
JM
24742011-01-14 Joseph Myers <joseph@codesourcery.com>
2475
38be4072 2476 * config/rs6000/vxworks.h (CC1_SPEC): Don't handle -fvec or -fvec-eabi.
a7b778f8 2477
a7edae0a
MS
24782011-01-14 Mike Stump <mikestump@comcast.net>
2479
2480 * config/alpha/alpha.md (umk_mismatch_args): Don't put a mode on set.
2481 * config/fr30/fr30.md: Likweise
2482 (movsi_push): Likewise.
2483 (movsi_pop): Likewise.
2484 (enter_func): Likewise.
2485 * config/moxie/moxie.md (movsi_push): Likewise.
2486 (movsi_pop): Likewise.
2487
cbabf03f
JM
24882011-01-14 Joseph Myers <joseph@codesourcery.com>
2489
2490 * config/mips/linux64.h (LINK_SPEC): Remove %{bestGnum}
2491 %{no_archive} %{exact_version}.
2492 * config/mips/mips.h (LINK_SPEC): Remove %{bestGnum}.
2493 * config/mips/netbsd.h (LINK_SPEC): Remove %{bestGnum}
2494 %{no_archive} %{exact_version}.
2495 * config/mips/openbsd.h (LINK_SPEC): Likewise.
2496 * config/mips/sde.h (LINK_SPEC): Remove %{bestGnum}.
2497 * config/mips/vxworks.h: Likewise.
2498
438da41a
JM
24992011-01-14 Joseph Myers <joseph@codesourcery.com>
2500
38be4072 2501 * config/microblaze/microblaze.h (ASM_SPEC): Remove %{microblaze1}.
438da41a 2502
da290a42
JM
25032011-01-14 Joseph Myers <joseph@codesourcery.com>
2504
2505 * config/m32r/little.h (CPP_ENDIAN_SPEC, CC1_ENDIAN_SPEC,
2506 ASM_ENDIAN_SPEC, LINK_ENDIAN_SPEC): Remove.
2507
8989d00e
JM
25082011-01-14 Joseph Myers <joseph@codesourcery.com>
2509
2510 * config/i386/nwld.h (LINK_SPEC): Check -nodefaultlibs not
2511 -nodefaultlib.
2512
a3010a69
JM
25132011-01-14 Joseph Myers <joseph@codesourcery.com>
2514
2515 * config/cris/cris.h (ASM_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check
2516 for mcpu not cpu.
2517 * config/cris/linux.h (CRIS_CPP_SUBTARGET_SPEC,
2518 CRIS_CC1_SUBTARGET_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check for mcpu
2519 not cpu.
2520 (CRIS_LINK_SUBTARGET_SPEC): Don't generate -rpath-link options.
2521 Don't handle -shlib.
2522
e7f2f537
JM
25232011-01-14 Joseph Myers <joseph@codesourcery.com>
2524
2525 * config/avr/avr.h (CPP_SPEC): Don't handle -posix.
2526 (CC1_SPEC): Don't handle -profile.
2527
34830bfd
JM
25282011-01-14 Joseph Myers <joseph@codesourcery.com>
2529
2530 * config/microblaze/microblaze.h (CC1_SPEC): Remove -gline spec.
2531 * config/mips/mips.h (CC1_SPEC): Likewise.
2532
b2d36e74
JM
25332011-01-14 Joseph Myers <joseph@codesourcery.com>
2534
2535 * config/microblaze/microblaze.h (CC1_SPEC): Remove %{save-temps: }.
2536 * config/mips/mips.h (CC1_SPEC): Likewise.
2537
dabadc52
JM
25382011-01-14 Joseph Myers <joseph@codesourcery.com>
2539
2540 * config/i386/linux.h (LINK_SPEC): Don't use %{!ibcs:} conditional.
2541 * config/m32r/linux.h (LINK_SPEC): Likewise.
2542 * config/mips/linux.h (LINK_SPEC): Likewise.
2543 * config/mips/linux64.h (LINK_SPEC): Likewise.
2544 * config/sparc/linux.h (LINK_SPEC): Likewise.
2545 * config/sparc/linux64.h (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
2546 LINK_SPEC): Likewise.
2547 * config/xtensa/linux.h (LINK_SPEC): Likewise.
2548
43ee6785
JM
25492011-01-14 Joseph Myers <joseph@codesourcery.com>
2550
2551 * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove
2552 %{version:-v}.
2553 * config/lm32/uclinux-elf.h (LINK_SPEC): Likewise.
2554
45e79dfd
JM
25552011-01-14 Joseph Myers <joseph@codesourcery.com>
2556
2557 * config/sparc/sp-elf.h (ASM_SPEC): Remove %{v:-V}.
2558 * config/sparc/sp64-elf.h (ASM_SPEC): Likewise.
2559
37e9e71d
JM
25602011-01-14 Joseph Myers <joseph@codesourcery.com>
2561
2562 * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove %{b}.
2563
bb127cd8
RO
25642011-01-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2565
2566 * configure.ac (gcc_cv_ld_static_dynamic): Solaris 2 ld always
2567 supports -Bstatic/-Bdynamic.
2568 * configure: Regenerate.
2569
89a012ea
JH
25702011-01-14 Jan Hubicka <jh@suse.cz>
2571 Jack Howarth <howarth@bromo.med.uc.edu>
2572
2573 PR target/46037
2574 * config/darwin.c (darwin_override_options): Honor flag_gtoggle
2575 when checking debug_info_level. Test write_symbols instead of
2576 debug_hooks->var_location when setting flag_var_tracking_uninit.
2577
7352c013
RG
25782011-01-14 Richard Guenther <rguenther@suse.de>
2579
2580 PR tree-optimization/47179
2581 * target.def (ref_may_alias_errno): New target hook.
2582 * targhooks.h (default_ref_may_alias_errno): Declare.
2583 * targhooks.c: Include tree-ssa-alias.h and tree-flow.h.
2584 (default_ref_may_alias_errno): New function.
2585 * target.h (struct ao_ref_s): Declare.
2586 * tree-ssa-alias.c: Include target.h.
2587 (call_may_clobber_ref_p_1): Use the ref_may_alias_errno target hook.
2588 * Makefile.in (tree-ssa-alias.o): Adjust dependencies.
2589 (targhooks.o): Likewise.
2590 * doc/tm.texi.in (TARGET_REF_MAY_ALIAS_ERRNO): Document.
2591 * doc/tm.texi (TARGET_REF_MAY_ALIAS_ERRNO): Copy documentation.
2592
9a6c9288
RG
25932011-01-14 Richard Guenther <rguenther@suse.de>
2594
2595 * tree-ssa-structalias.c (new_var_info): Use DECL_HARD_REGISTER.
2596
0fdb0d27
RG
25972011-01-14 Richard Guenther <rguenther@suse.de>
2598
2599 PR tree-optimization/47280
2600 * tree-ssa-forwprop.c (associate_plusminus): Cleanup EH and
2601 return CFG changes.
2602 (tree_ssa_forward_propagate_single_use_vars): Deal with
2603 CFG changes from associate_plusminus.
2604
8f66db3b
RG
26052011-01-14 Richard Guenther <rguenther@suse.de>
2606
2607 PR middle-end/47281
2608 Revert
2609 2011-01-11 Richard Guenther <rguenther@suse.de>
2610
280d9630
EB
2611 PR tree-optimization/46076
2612 * tree-ssa.c (useless_type_conversion_p): Conversions from
2613 unprototyped to empty argument list function types are useless.
8f66db3b 2614
6c0c92e6
RG
26152011-01-14 Richard Guenther <rguenther@suse.de>
2616
2617 PR tree-optimization/47286
280d9630 2618 * tree-ssa-structalias.c (new_var_info): Register variables are global.
6c0c92e6 2619
db09f943
MJ
26202011-01-14 Martin Jambor <mjambor@suse.cz>
2621
2622 PR middle-end/46823
2623 * tree-inline.c (expand_call_inline): Get fndecl from call graph edge.
2624
dde8a3a4
AS
26252011-01-13 Anatoly Sokolov <aesok@post.ru>
2626
2627 * config/xtensa/xtensa.h (XTENSA_LIBCALL_VALUE, LIBCALL_VALUE,
2628 LIBCALL_OUTGOING_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
2629 * config/xtensa/xtensa.c (xtensa_libcall_value,
2630 xtensa_function_value_regno_p): New functions.
2631 (TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P): Define.
2632
a2b63a20
KT
26332011-01-13 Kai Tietz <kai.tietz@onevision.com>
2634
2635 PR c++/47213
2636 * config/i386/cygming.h (TARGET_ASM_ASSEMBLE_VISIBILITY):
2637 PE specific hook.
2638 * config/i386/i386-protos.h (i386_pe_assemble_visibility):
2639 New function prototype.
2640 * config/i386/winnt.c (i386_pe_assemble_visibility):
2641 Warn only if attribute was specified by user.
2642
b41f0b34
MM
26432011-01-13 Michael Meissner <meissner@linux.vnet.ibm.com>
2644
2645 PR target/47251
2646 * config/rs6000/rs6000.md (floatunsdidf2): Add check for hardware
2647 floating point.
2648 (floatunsdidf2_fcfidu): Ditto.
2649
3f3c098d
AK
26502011-01-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2651
2652 * config/s390/s390.c (print_operand_address): Replace 'error' with
2653 'output_operand_lossage'.
2654 (print_operand): Likewise.
2655
29fa95ed
JL
26562011-01-13 Jeff Law <law@redhat.com>
2657
280d9630 2658 PR rtl-optimization/39077
29fa95ed
JL
2659 * doc/invoke.texi (max-gcse-insertion-ratio): Document.
2660 * params.h (MAX_GCSE_INSERTION_RATIO): Define.
2661 * params.def (PARAM_MAX_GCSE_INSERTION_RATIO): Define.
2662 * lcm.c (pre_edge_lcm): Properly initialize output sbitmaps.
2663 * gcse.c (prune_insertions_deletions): New function.
2664 (compute_pre_data): Use it.
2665
71d12276
DS
26662011-01-13 Dodji Seketeli <dodji@redhat.com>
2667
2668 PR debug/PR46973
2669 * dwarf2out.c (prune_unused_types_mark_generic_parms_dies): New
2670 static function.
61052244 2671 (prune_unused_types_mark): Use it.
71d12276 2672
9b0f04e7
AB
26732011-01-13 Andrey Belevantsev <abel@ispras.ru>
2674
2675 PR rtl-optimization/45352
1c3ba85b 2676 * sel-sched.c: Update copyright years.
9b0f04e7 2677 (reset_sched_cycles_in_current_ebb): Also recheck the DFA state
1c3ba85b 2678 in the advancing loop when we have issued issue_rate insns.
9b0f04e7 2679
d6a3e264
RH
26802011-01-12 Richard Henderson <rth@redhat.com>
2681
a49b692a
RH
2682 * config/mn10300/mn10300.c (mn10300_md_asm_clobbers): New.
2683 (TARGET_MD_ASM_CLOBBERS): New.
2684
126b1483
RH
2685 * config/mn10300/mn10300.c (mn10300_delegitimize_address): New.
2686 (TARGET_DELEGITIMIZE_ADDRESS): New.
2687
f3d9d2e0
RH
2688 * config/mn10300/mn10300.md (UNSPEC_BSCH): New.
2689 (clzsi2, *bsch): New patterns.
2690
d84760c9
RH
2691 * config/mn10300/mn10300.md (INT): New mode iterator.
2692 (*mov<INT>_clr): New pattern, and peep2 to generate it.
2693
ec815d65
RH
2694 * config/mn10300/mn10300.c (mn10300_option_override): Force enable
2695 flag_split_wide_types.
2696
d6a3e264
RH
2697 * config/mn10300/mn10300.c (mn10300_asm_trampoline_template): Remove.
2698 (mn10300_trampoline_init): Rewrite without a template, an immediate
2699 load and a direct branch.
2700 * config/mn10300/mn10300.h (TRAMPOLINE_SIZE): Reduce to 16.
2701
0f8ab434
AS
27022011-01-12 Anatoly Sokolov <aesok@post.ru>
2703
2704 * config/s390/s390.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
2705 * config/s390/s390-protos.h (s390_output_addr_const_extra): Remove.
2706 * config/s390/s390.c (s390_output_addr_const_extra): Make static.
2707 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
2708
d8a24b65
KT
27092011-01-12 Kai Tietz <kai.tietz@onevision.com>
2710
2711 PR debug/47209
2712 * dwarfout2.c (should_emit_struct_debug): Use TYPE_MAIN_VARIANT
2713 of type.
2714
56e22cab
JH
27152011-01-12 Jan Hubicka <jh@suse.cz>
2716
2717 PR driver/47244
2718 * gcc.c (PLUGIN_COND): Update to disable plugin unless -flto is used.
2719 (PLUGIN_COND_CLOSE): New macro.
2720 (LINK_COMMAND_SPEC): Update to use PLUGIN_COND_CLOSE.
2721
4b18b3c2
RG
27222011-01-12 Richard Guenther <rguenther@suse.de>
2723
2724 PR lto/47259
2725 * lto-streamer-out.c (output_gimple_stmt): Do not wrap
2726 register variables in a MEM_REF.
2727
8e38461c
JM
27282011-01-12 Joseph Myers <joseph@codesourcery.com>
2729
2730 * config.gcc (arm*-*-linux*, bfin*-uclinux*, bfin*-linux-uclibc*,
2731 crisv32-*-linux* | cris-*-linux*, frv-*-*linux*, moxie-*-uclinux*,
2732 hppa*64*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux* |
2733 i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu |
2734 i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu,
2735 x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu,
2736 ia64*-*-linux*, lm32-*-uclinux*, m32r-*-linux*, m32rle-*-linux*,
2737 m68k-*-uclinux*, m68k-*-linux*, microblaze*-linux*,
2738 mips64*-*-linux* | mipsisa64*-*-linux*, mips*-*-linux*,
2739 s390-*-linux*, s390x-*-linux*, sh*-*-linux*, sparc-*-linux*,
2740 sparc64-*-linux*, vax-*-linux*, xtensa*-*-linux*,
2741 am33_2.0-*-linux*): Use gnu-user.h before linux.h.
2742 * config/gnu-user.h: New. Copied from linux.h.
2743 (LINUX_TARGET_STARTFILE_SPEC): Rename to
2744 GNU_USER_TARGET_STARTFILE_SPEC.
2745 (LINUX_TARGET_ENDFILE_SPEC): Rename to
2746 GNU_USER_TARGET_ENDFILE_SPEC.
2747 (LINUX_TARGET_CC1_SPEC): Rename to GNU_USER_TARGET_CC1_SPEC.
2748 (LINUX_TARGET_LIB_SPEC): Rename to GNU_USER_TARGET_LIB_SPEC.
2749 (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC,
2750 LINUX_TARGET_OS_CPP_BUILTINS, CHOOSE_DYNAMIC_LINKER1,
2751 CHOOSE_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER,
2752 UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64,
2753 BIONIC_DYNAMIC_LINKER, BIONIC_DYNAMIC_LINKER32,
2754 BIONIC_DYNAMIC_LINKER64, LINUX_DYNAMIC_LINKER,
2755 LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64,
2756 TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS): Remove.
2757 * config/arm/linux-eabi.h (CC1_SPEC): Use
2758 GNU_USER_TARGET_CC1_SPEC.
2759 (LIB_SPEC): Use GNU_USER_TARGET_LIB_SPEC.
2760 (STARTFILE_SPEC): Use GNU_USER_TARGET_STARTFILE_SPEC.
2761 (ENDFILE_SPEC): Use GNU_USER_TARGET_ENDFILE_SPEC
2762 * config/linux.h (NO_IMPLICIT_EXTERN_C, ASM_APP_ON, ASM_APP_OFF,
2763 LINUX_TARGET_STARTFILE_SPEC, STARTFILE_SPEC,
2764 LINUX_TARGET_ENDFILE_SPEC, ENDFILE_SPEC, LINUX_TARGET_CC1_SPEC,
2765 CC1_SPEC, CPLUSPLUS_CPP_SPEC, LINUX_TARGET_LIB_SPEC, LIB_SPEC,
2766 LINK_EH_SPEC, LINK_GCC_C_SEQUENCE_SPEC, USE_LD_AS_NEEDED): Remove.
2767
a570fc16
RG
27682011-01-12 Richard Guenther <rguenther@suse.de>
2769
2770 PR other/46946
2771 * doc/invoke.texi (ffast-math): Document it is turned on
2772 with -Ofast.
2773
b0223c3e
JH
27742011-01-12 Jan Hubicka <jh@suse.cz>
2775
2776 PR tree-optimization/47233
ca1e00b3
EB
2777 * opts.c (common_handle_option): Disable ipa-reference with profile
2778 feedback.
b0223c3e 2779
1c3ba85b 27802011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
d853ee42
NP
2781
2782 * c-parser.c (c_parser_objc_at_property_declaration): Improved
ca1e00b3
EB
2783 error message.
2784
d853ee42
NP
27852011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
2786
2787 * c-parser.c (c_lex_one_token): Updated and reindented some
2788 comments. No changes in code.
2789
4053a5a0
ILT
27902011-01-11 Ian Lance Taylor <iant@google.com>
2791
2792 * godump.c (go_output_var): Don't output the variable if there is
2793 already a type with the same name.
2794
fa3e04d2
ILT
27952011-01-11 Ian Lance Taylor <iant@google.com>
2796
2797 * godump.c (go_format_type): Don't generate float80.
2798
885fe07c
RH
27992011-01-11 Richard Henderson <rth@redhat.com>
2800
72d6e3c5
RH
2801 * config/mn10300/mn10300.c (mn10300_address_cost): Remove forward
2802 declaration. Rewrite for both speed and size.
2803 (mn10300_address_cost_1): Remove.
2804 (mn10300_register_move_cost): New.
2805 (mn10300_memory_move_cost): New.
2806 (mn10300_rtx_costs): Rewrite for both speed and size. Don't handle
2807 ZERO_EXTRACT. Do handle UNSPEC, arithmetic, logicals, compare,
2808 extensions, shifts, BSWAP, CLZ.
2809 (mn10300_wide_const_load_uses_clr): Remove.
2810 (TARGET_REGISTER_MOVE_COST): New.
2811 (TARGET_MEMORY_MOVE_COST): New.
2812 * config/mn10300/mn10300-protos.h: Update.
2813 * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Remove.
2814
df37c023
RH
2815 * config/mn10300/constraints.md ("R", "T"): Remove constraints.
2816 * config/mn10300/mn10300.c (mn10300_mask_ok_for_mem_btst): Remove.
2817 * config/mn10300/mn10300-protos.h: Update.
2818 * config/mn10300/mn10300.md (movsi_internal): Don't use "R".
2819 (*byte_clear, *byte_set, *bit_clear1, *bit_clear2, *bit_set): Remove.
2820 (iorqi3, *am33_iorqi3, *mn10300_iorqi3): Remove.
2821 (*test_int_bitfield, *test_byte_bitfield): Remove.
2822 (*bit_test, *subreg_bit_test): Remove.
62d3f9b2 2823 * config/mn10300/predicates.md (const_8bit_operand): Remove.
df37c023 2824
85a337b5
RH
2825 * config/mn10300/constraints.md ("c"): Rename from "A".
2826 ("A", "D"): New constraint letters.
2827 * config/mn10300/mn10300.md (fmasf4): Use the "c" constraint.
2828 (fmssf4, fnmasf4, fnmssf4): Likewise.
2829
a5c727e3
RH
2830 * config/mn10300/mn10300.md (isa): New attribute.
2831 (enabled): New attribute.
2832
0d9e23f4
RH
2833 * config/mn10300/mn10300.md (absdf2, negdf2): Remove.
2834 (abssf2, negsf2): Define only for hardware fp.
2835 (sqrtsf2): Reformat.
2836 (addsf3, subsf3, mulsf3): Merge expander and insn.
2837
c157b3f0
RH
2838 * config/mn10300/mn10300.h (ARG_PIONTER_CFA_OFFSET): New.
2839 (DEBUGGER_AUTO_OFFSET): Remove.
2840 (DEBUGGER_ARG_OFFSET): Remove.
2841
cc909bba
RH
2842 * config/mn10300/mn10300.c (mn10300_gen_multiple_store): Make static.
2843 Emit register stores with the same offsets as the hardware.
2844 (mn10300_store_multiple_operation): Don't check that the register
2845 save offsets are monotonic.
2846 * config/mn10300/mn10300-protos.h: Update.
2847
e3b5c2f3
RH
2848 * config/mn10300/mn10300.h (ASM_PN_FORMAT): Delete.
2849
885fe07c
RH
2850 * config/mn10300/mn10300.h (INCOMING_RETURN_ADDR_RTX): Define
2851 in terms of the value on the stack, not the MDR register.
2852
6e701822
JH
28532011-01-11 Jan Hubicka <jh@suse.cz>
2854
2855 PR lto/45721
2856 PR lto/45375
2857 * tree.h (symbol_alias_set_t): Move typedef here from varasm.c
2858 (symbol_alias_set_destroy, symbol_alias_set_contains,
2859 propagate_aliases_backward): Declare.
2860 * lto-streamer-out.c (struct sets): New sturcture.
2861 (trivally_defined_alias): New function.
2862 (output_alias_pair_p): Rewrite.
2863 (output_unreferenced_globals): Fix output of alias pairs.
2864 (produce_symtab): Likewise.
2865 * ipa.c (function_and_variable_visibility): Set weak alias destination
2866 as needed in lto.
2867 * varasm.c (symbol_alias_set_t): Remove.
2868 (symbol_alias_set_destroy): Export.
2869 (propagate_aliases_forward, propagate_aliases_backward): New functions
2870 based on ...
2871 (compute_visible_aliases): ... this one; remove.
2872 (trivially_visible_alias): New
2873 (trivially_defined_alias): New.
2874 (remove_unreachable_alias_pairs): Rewrite.
2875 (finish_aliases_1): Reorganize code checking if alias is defined.
2876 * passes.c (rest_of_decl_compilation): Do not call assemble_alias when
2877 in LTO mode.
2878
1b248907
RG
28792011-01-11 Richard Guenther <rguenther@suse.de>
2880
2881 PR tree-optimization/46076
2882 * tree-ssa.c (useless_type_conversion_p): Conversions from
2883 unprototyped to empty argument list function types are useless.
2884
b1923f0a
RG
28852011-01-11 Richard Guenther <rguenther@suse.de>
2886
2887 PR middle-end/45235
2888 * emit-rtl.c (set_mem_attributes_minus_bitpos): Do not mark
2889 volatile MEMs as MEM_READONLY_P.
2890
e98965af
RG
28912011-01-11 Richard Guenther <rguenther@suse.de>
2892
2893 PR tree-optimization/47239
2894 * tree-ssa-ccp.c (get_value_from_alignment): Punt for FUNCTION_DECLs.
2895
9f9ca914
JL
28962011-01-11 Jeff Law <law@redhat.com>
2897
1ee3ea05 2898 PR tree-optimization/47086
9f9ca914
JL
2899 * tree-ssa-loop-ivopts.c (find_givs_in_stmt_scev): Do not record
2900 IVs from statements that might throw.
2901
345fdcb7
JH
29022011-01-10 Jan Hubicka <jh@suse.cz>
2903
2904 PR lto/45375
2905 * lto-cgraph.c (input_profile_summary): Remove overactive sanity check.
2906
c459c97b
JH
29072011-01-10 Jan Hubicka <jh@suse.cz>
2908
2909 PR lto/45375
2910 * profile.c (read_profile_edge_counts): Ignore profile inconistency
2911 when correcting profile.
2912
06c9eb51
JH
29132011-01-10 Jan Hubicka <jh@suse.cz>
2914
2915 PR lto/46083
2916 * lto-streamer-out.c (pack_ts_function_decl_value_fields): Store
2917 DECL_FINI_PRIORITY.
2918 * lto-streamer-in.c (unpack_ts_function_decl_value_fields):
2919 Restore DECL_FINI_PRIORITY.
2920
ae9fd815
RW
29212011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2922
2923 * doc/gimple.texi: Fix quoting of multi-word return values in
2924 @deftypefn statements. Ensure presence of return value. Wrap
2925 overlong @deftypefn lines.
2926 (is_gimple_operand, is_gimple_min_invariant_address): Remove
2927 descriptions of removed functions.
2928 * doc/hostconfig.texi (Host Common): Wrap long line, fix quoting
2929 of multi-word return value in @deftypefn statement.
2930
0ecb4a7c
RW
29312011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2932
2933 * doc/gimple.texi (Temporaries, Operands, Compound Lvalues)
2934 (Conditional Expressions, Logical Operators)
2935 (Statement and operand traversals): Do not indent smallexample
2936 code. Fix duplicate function argument in example.
2937
2e5e346d
JL
29382011-01-10 Jeff Law <law@redhat.com>
2939
1ee3ea05 2940 PR tree-optimization/47141
2e5e346d
JL
2941 * ipa-split.c (split_function): Handle case where we are
2942 returning a value and the return block has a virtual operand phi.
2943
cf9712cc
JH
29442011-01-10 Jan Hubicka <jh@suse.cz>
2945
1c3ba85b 2946 PR tree-optimization/47234
cf9712cc
JH
2947 * tree-pass.h (TODO_rebuild_cgraph_edges): New TODO.
2948 (pass_feedback_split_functions): Declare.
2949 * passes.c (init_optimization_passes): Add ipa-split as subpass of
2950 tree-profile.
2951 * ipa-split.c (gate_split_functions): Update comments; disable
2952 split-functions for profile_arc_flag and branch_probabilities.
2953 (gate_feedback_split_functions): New function.
2954 (execute_feedback_split_functions): New function.
2955 (pass_feedback_split_functions): New global var.
2956
94cd932c
L
29572011-01-10 H.J. Lu <hongjiu.lu@intel.com>
2958
2959 PR lto/46760
2960 * tree-inline.c (tree_can_inline_p): Check e->call_stmt before
2961 calling gimple_call_set_cannot_inline.
2962
fbbfcaf1
IS
29632011-01-10 Iain Sandoe <iains@gcc.gnu.org>
2964
2965 * config/darwin-sections.def: Remove unused section.
2966
d06865bf
DK
29672011-01-10 Dave Korn <dave.korn.cygwin@gmail.com>
2968
2969 PR c++/47218
2970 * cgraphunit.c (assemble_thunk): Call resolve_unique_section.
2971
96bbfbac
NP
29722011-01-09 Nicola Pero <nicola.pero@meta-innovation.com>
2973
2974 PR objc/47232
2975 * c-parser.c (c_parser_declaration_or_fndef): Improved
2976 error message.
2977
1ba6516f
KT
29782011-01-09 Kai Tietz <kai.tietz@onevision.com>
2979
2980 * config/i386/winnt.c (i386_pe_start_function): Make sure
2981 to switch back to function's section.
2982
0c5d770e
IS
29832011-01-09 Iain Sandoe <iains@gcc.gnu.org>
2984
2985 PR gcc/46902
2986 PR testsuite/46912
2987 * plugin.c: Move include of dlfcn.h from here...
2988 * system.h: ... to here.
2989
29902011-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4ee1aa2a
RW
2991
2992 * doc/cpp.texi (C++ Named Operators): Fix markup for header
2993 file name.
2994 * doc/cppinternals.texi (Top): Wrap node in @ifnottex to avoid
2995 two extra empty pages in PDF output.
2996
046608a3
NP
29972011-01-08 Nicola Pero <nicola.pero@meta-innovation.com>
2998
2999 PR objc/47078
3000 * c-parser.c (c_parser_objc_type_name): If the type is unknown,
3001 for error recovery purposes behave as if it was not specified so
3002 that the default type is usd.
3003
8cb114b9
JH
30042011-01-07 Jan Hubicka <jh@suse.cz>
3005
3006 PR tree-optmization/46469
3007 * ipa.c (function_and_variable_visibility): Clear needed flags on
3008 nodes with external decls; handle weakrefs merging correctly.
3009
b294a75e
JM
30102011-01-07 Joseph Myers <joseph@codesourcery.com>
3011
3012 * opts.c (finish_options): Set opts->x_flag_opts_finished to true,
3013 not false.
3014
96bdf9b4
JH
30152011-01-07 Jan Hubicka <jh@suse.cz>
3016
3017 * doc/invoke.texi: (-flto, -fuse-linker-plugin): Update defaults
3018 and no longer claim that gold is required for linker plugin.
3019 * configure: Regenerate.
3020 * gcc.c (PLUGIN_COND): New macro.
3021 (LINK_COMMAND_SPEC): Use it.
3022 (main): Default to plugin enabled with HAVE_LTO_PLUGIN is set.
3023 * config.in (HAVE_LTO_PLUGIN): New.
3024 * configure.ac (--with-lto-plugin): New parameter; autodetect
3025 HAVE_LTO_PLUGIN.
3026
17afc0fe
JH
30272011-01-07 Jan Hubicka <jh@suse.cz>
3028
3029 PR tree-optimization/46367
3030 * ipa-inline.c (cgraph_clone_inlined_nodes): Use original function only
3031 when we can update original.
3032 (cgraph_mark_inline_edge): Sanity check.
3033 * ipa-prop.c (ipa_make_edge_direct_to_target): Sanity check.
3034
d4c48c0f
UW
30352011-01-07 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3036
3037 * config/spu/spu.h (ASM_COMMENT_START): Define.
3038
96f5b137
L
30392011-01-07 H.J. Lu <hongjiu.lu@intel.com>
3040
3041 PR driver/42445
3042 * gcc.c (%>S): New.
3043 (SWITCH_KEEP_FOR_GCC): Likewise.
3044 (set_collect_gcc_options): Check SWITCH_KEEP_FOR_GCC.
3045 (do_spec_1): Handle "%>".
3046
3047 * config/i386/i386.h (CC1_CPU_SPEC): Replace "%<" with "%>".
3048
c6a8f6de
JJ
30492011-01-07 Jakub Jelinek <jakub@redhat.com>
3050
c21bbd7a
JJ
3051 PR target/47201
3052 * config/i386/i386.c (ix86_delegitimize_address): If
3053 simplify_gen_subreg fails, return orig_x.
3054
c6a8f6de
JJ
3055 PR bootstrap/47187
3056 * value-prof.c (gimple_stringop_fixed_value): Handle
3057 lhs of the call properly.
3058
fe95fbf9
JH
30592011-01-07 Jan Hubicka <jh@suse.cz>
3060
3061 PR lto/45375
3062 * lto-opt.c (lto_reissue_options): Set flag_shlib.
3063
14d11d40
IS
30642011-01-07 Iain Sandoe <iains@gcc.gnu.org>
3065
72e961c8
EB
3066 * target.def (function_switched_text_sections): New hook.
3067 * doc/tm.texi: Regenerated.
3068 * doc/tm.texi.in (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
14d11d40 3069 * final.c (default_function_switched_text_sections): New.
72e961c8
EB
3070 (final_scan_insn): Call function_switched_text_sections when a
3071 mid-function section change occurs.
14d11d40 3072 * output.h (default_function_switched_text_sections): Declare.
72e961c8
EB
3073 * config/darwin-protos.h (darwin_function_switched_text_sections):
3074 Likewise.
14d11d40 3075 * config/darwin.c (darwin_function_switched_text_sections): New.
72e961c8 3076 * config/darwin.h (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
14d11d40 3077
0b764288
IS
30782011-01-07 Iain Sandoe <iains@gcc.gnu.org>
3079
3080 * dwarf2out.c (gen_subprogram_die): Add pubnames with code ranges for
3081 DWARF >= 3. Add pubnames for the primary section and a reduced DIE for
3082 the secondary code fragment when outputting for DWARF == 2.
3083
2ac6bb04
AS
30842011-01-07 Anatoly Sokolov <aesok@post.ru>
3085
3086 * config/xtensa/xtensa.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
3087 * config/xtensa/xtensa-protos.h (xtensa_output_addr_const_extra):
3088 Remove.
3089 * config/xtensa/xtensa.c (xtensa_output_addr_const_extra): Make static.
3090 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
3091
9f82de11
EB
30922011-01-06 Eric Botcazou <ebotcazou@adacore.com>
3093
3094 PR debug/46704
280d9630
EB
3095 * dwarf2out.c (dwarf2out_finish): Output the debug_aranges section only
3096 when it is not empty.
9f82de11
EB
3097
30982011-01-06 Changpeng Fang <changpeng.fang@amd.com>
14b52538 3099
1ed72abf 3100 Bobcat Enablement
14b52538 3101 * config.gcc (i[34567]86-*-linux* | ...): Add btver1.
1ed72abf 3102 (case ${target}): Add btver1.
14b52538 3103 * config/i386/driver-i386.c (host_detect_local_cpu): Let
1ed72abf 3104 -march=native recognize btver1 processors.
14b52538 3105 * config/i386/i386-c.c (ix86_target_macros_internal): Add
1ed72abf 3106 btver1 def_and_undef
14b52538 3107 * config/i386/i386.c (struct processor_costs btver1_cost): New
1ed72abf
CF
3108 btver1 cost table.
3109 (m_BTVER1): New definition.
3110 (m_AMD_MULTIPLE): Includes m_BTVER1.
3111 (initial_ix86_tune_features): Add btver1 tune.
3112 (processor_target_table): Add btver1 entry.
3113 (static const char *const cpu_names): Add btver1 entry.
3114 (software_prefetching_beneficial_p): Add btver1.
3115 (ix86_option_override_internal): Add btver1 instruction sets.
3116 (ix86_issue_rate): Add btver1.
3117 (ix86_adjust_cost): Add btver1.
14b52538 3118 * config/i386/i386.h (TARGET_BTVER1): New definition.
1ed72abf
CF
3119 (enum target_cpu_default): Add TARGET_CPU_DEFAULT_btver1.
3120 (enum processor_type): Add PROCESSOR_BTVER1.
14b52538
CF
3121 * config/i386/i386.md (define_attr "cpu"): Add btver1.
3122
e1a973d8
RO
31232011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3124
3125 PR target/43309
3126 * config/i386/i386.c (legitimize_tls_address)
3127 <TLS_MODEL_INITIAL_EXEC>: Handle TARGET_64BIT && TARGET_SUN_TLS.
3128 * config/i386/i386.md (UNSPEC_TLS_IE_SUN): Declare.
3129 (tls_initial_exec_64_sun): New pattern.
3130
c73f67c5
GP
31312011-01-06 Gerald Pfeifer <gerald@pfeifer.com>
3132
3133 * doc/invoke.texi (Overall Options): Improve wording and markup
3134 of the description of -wrapper.
3135
bc4c6f9c
JM
31362011-01-06 Joseph Myers <joseph@codesourcery.com>
3137
3138 * config/sol2.opt (G, YP,, Ym,, compat-bsd, pthread, pthreads,
3139 rdynamic, threads): New Driver options.
3140
adb75db0
RO
31412011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3142
3143 PR target/38118
3144 * config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Also switch to .bss
3145 if coming from .tdata.
3146 * config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
3147
402c1cb4
JH
31482011-01-06 Jan Hubicka <jh@suse.cz>
3149
3150 PR lto/47188
3151 * collect2.c (main): Do not enable LTOmode when plugin is active.
3152
a4da6485
RO
31532011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3154
3155 PR other/45915
3156 * configure.ac (gcc_cv_as_gnu_unique_object): Only use ldd
3157 --version output if supported.
3158 * configure: Regenerate.
3159
028dbdf4
JM
31602011-01-06 Joseph Myers <joseph@codesourcery.com>
3161
3162 * config/linux-android.opt (tno-android-cc, tno-android-ld): New
3163 Driver options.
3164
dfe776dd
JJ
31652011-01-06 Jakub Jelinek <jakub@redhat.com>
3166
3167 PR c/47150
3168 * c-convert.c (convert): When converting a complex expression
3169 other than COMPLEX_EXPR to a different complex type, ensure
3170 c_save_expr is called instead of save_expr, unless in_late_binary_op.
3171 * c-typeck.c (convert_for_assignment): Set in_late_binary_op also
3172 when converting COMPLEX_TYPE.
3173
210dedfe
IR
31742011-01-06 Ira Rosen <irar@il.ibm.com>
3175
3176 PR tree-optimization/47139
3177 * tree-vect-loop.c (vect_is_simple_reduction_1): Check that
3178 only the last reduction value is used outside the loop. Update
3179 documentation.
3180
cd33a412
JM
31812011-01-05 Joseph Myers <joseph@codesourcery.com>
3182
3183 * config/rtems.opt: New.
3184 * config.gcc (*-*-rtems*): Use rtems.opt.
3185
819edd94
CF
31862011-01-05 Changpeng Fang <changpeng.fang@amd.com>
3187
3188 * config/i386/i386.c (ix86_option_override_internal): Bulldozer
3189 processors do not support 3DNow instructions.
3190
dc242c4a
UW
31912011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3192
3193 * config/spu/spu.c (spu_option_override): Set parameter
3194 PARAM_MAX_COMPLETELY_PEEL_TIMES to 4 instead of 1.
3195
be286227
JH
31962011-01-05 Jan Hubicka <jh@suse.cz>
3197
3198 * lto-wrapper.c (run_gcc): Default to WHOPR mode when none is specified
3199 at the command line.
3200
644e637f
MJ
32012011-01-05 Martin Jambor <mjambor@suse.cz>
3202
3203 PR lto/47162
3204 * lto-cgraph.c (output_cgraph_opt_summary_p): Also check for thunk
3205 deltas on streamed outgoing edges.
3206 (output_node_opt_summary): Output info for outgoing edges only when
3207 the node is in new parameter set.
3208 (output_cgraph_opt_summary): New parameter set, passed to the two
3209 aforementioned functions. Update its forward declaration and its
3210 callee too.
3211
7bd11157
TT
32122011-01-05 Tom Tromey <tromey@redhat.com>
3213
3214 * c-parser.c (c_parser_omp_atomic): Pass location of assignment
3215 operator to c_finish_omp_atomic.
3216 * c-typeck.c (lvalue_or_else): Add 'loc' argument.
3217 (build_unary_op): Update.
3218 (build_modify_expr): Update.
3219 (build_asm_expr): Update.
3220
f626b979
UW
32212011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3222
3223 * config/spu/spu.c (emit_nop_for_insn): Set INSN_LOCATOR for
3224 newly inserted insns.
3225 (pad_bb): Likewise.
3226 (spu_emit_branch_hint): Likewise.
3227 (insert_hbrp_for_ilb_runout): Likewise.
3228 (spu_machine_dependent_reorg): Call df_finish_pass after
3229 schedule_insns returns.
3230
4c825c02
UW
32312011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3232
3233 * config/spu/spu.c (spu_expand_prologue): Support -fstack-usage.
3234
5e9fba51
EB
32352011-01-05 Eric Botcazou <ebotcazou@adacore.com>
3236
3237 PR tree-optimization/47005
3238 * tree-sra.c (struct access): Add 'non_addressable' bit.
3239 (create_access): Set it for a DECL_NONADDRESSABLE_P field.
3240 (decide_one_param_reduction): Return 0 if the parameter is passed by
3241 reference and one of the accesses in the group is non_addressable.
3242
3ebb5ca6
EB
32432011-01-04 Eric Botcazou <ebotcazou@adacore.com>
3244
3245 PR tree-optimization/47056
3246 * cgraphbuild.c (mark_address): Remove ATTRIBUTE_UNUSED markers.
3247 (mark_load): Likewise. Handle FUNCTION_DECL specially.
3248 (mark_store): Likewise. Pass STMT to ipa_record_reference.
3249
d5d4d14e
EB
32502011-01-04 Eric Botcazou <ebotcazou@adacore.com>
3251
3252 * dwarf2out.c (rtl_for_decl_init): Strip no-op conversions off the
3253 initializer. Skip view conversions from aggregate types.
3254
d996ef70
KT
32552011-01-04 Kai Tietz <kai.tietz@onevision.com>
3256
3257 PR bootstrap/47055
3258 * libgcov.c (gcov_exit): Check for HAS_DRIVE_SPEC.
3259
017096ca
PT
32602011-01-04 Philipp Thomas <pth@suse.de>
3261
3262 * config/microblaze/microbalse.opt (mxl-float-convert): Fix
3263 obvious typo.
3264
55c623b5
UW
32652011-01-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3266
3267 * function.c (thread_prologue_and_epilogue_insns): Do not crash
3268 on empty epilogue sequences.
3269
b98d6b35
JM
32702011-01-04 Joseph Myers <joseph@codesourcery.com>
3271
3272 * config/vxworks.opt (Bdynamic, Bstatic, Xbind-lazy, Xbind-now,
3273 non-static): New Driver options.
3274
a0d43bac
JZ
32752011-01-04 Jie Zhang <jie@codesourcery.com>
3276
3277 PR driver/47137
3278 * gcc.c (default_compilers[]): Set combinable field to 0
3279 for all assembly languages.
3280
2b18eb32
MX
32812011-01-04 Mingjie Xing <mingjie.xing@gmail.com>
3282
3283 * config/mips/loongson3a.md: New file.
3284 * config/mips/mips.md: Include loongson3a.md.
3285 * config/mips/mips.c (mips_multipass_dfa_lookahead): Return 4 when
3286 TUNE_LOONGSON_3A.
3287
42a48c4f
EB
32882011-01-03 Eric Botcazou <ebotcazou@adacore.com>
3289
3290 PR middle-end/47017
3291 * expr.c (expand_expr_real_1) <MEM_REF>: Call memory_address_addr_space
3292 instead of convert_memory_address_addr_space on the base expression.
3293
9c1732c4
UW
32942011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3295
3296 * config/spu/spu.c (spu_option_override): Update error text
3297 for bad -march= / -mtune= values.
3298
aa474365
UW
32992011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3300
3301 * config/spu/spu.c (asm_file_start): Only reset flag_var_tracking
3302 if branch-hint optimization will be performed.
3303
9766135b
JJ
33042011-01-03 Jakub Jelinek <jakub@redhat.com>
3305
371556ee
JJ
3306 PR tree-optimization/47148
3307 * ipa-split.c (split_function): Convert arguments to
3308 DECL_ARG_TYPE if possible.
3309
1ac12fa2
JJ
3310 PR tree-optimization/47155
3311 * tree-ssa-ccp.c (bit_value_binop_1): Use r1type instead of type
3312 when computing uns.
3313
9766135b
JJ
3314 PR rtl-optimization/47157
3315 * combine.c (try_combine): If undobuf.other_insn becomes
3316 (set (pc) (pc)) jump, call update_cfg_for_uncondjump on it
3317 and set *new_direct_jump_p too.
3318
f4a2e571
SP
33192011-01-03 Sebastian Pop <sebastian.pop@amd.com>
3320
3321 PR tree-optimization/47021
3322 * graphite-sese-to-poly.c (scan_tree_for_params): Handle ADDR_EXPR.
3323
9f8e43c0
JJ
33242011-01-03 Jakub Jelinek <jakub@redhat.com>
3325
3326 * gcc.c (process_command): Update copyright notice dates.
3327 * gcov.c (print_version): Likewise.
3328 * gcov-dump.c (print_version): Likewise.
3329 * mips-tfile.c (main): Likewise.
3330 * mips-tdump.c (main): Likewise.
3331
1a2e38f3
MJ
33322011-01-03 Martin Jambor <mjambor@suse.cz>
3333
3334 PR tree-optimization/46801
3335 * tree-sra.c (type_internals_preclude_sra_p): Check whether
3336 aggregate fields start at byte boundary instead of the bit-field flag.
3337
56b721c5
L
33382011-01-03 H.J. Lu <hongjiu.lu@intel.com>
3339
3340 PR driver/47137
3341 * gcc.c (main): Revert revision 168407.
3342
839d549b
MJ
33432011-01-03 Martin Jambor <mjambor@suse.cz>
3344
3345 * lto-cgraph.c (input_cgraph_opt_section): Use the correct section type.
3346
4ce99a20 33472011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2fa6eeff
UW
3348
3349 * tree-vect-generic.c (expand_vector_operations_1): When using vector/
3350 vector optab to expand vector/scalar shift, update gimple to vector.
3351
76df0ae6
MJ
33522011-01-03 Martin Jambor <mjambor@suse.cz>
3353
3354 * cgraphunit.c (verify_cgraph_node): Verify there is no direct call to
3355 a thunk.
3356
ce47fda3
MJ
33572011-01-03 Martin Jambor <mjambor@suse.cz>
3358
3359 PR tree-optimization/46984
3360 * cgraph.h (cgraph_indirect_call_info): make field thunk_delta
3361 HOST_WIDE_INT.
3362 (cgraph_create_indirect_edge): Fixed line length.
3363 (cgraph_indirect_call_info): Declare.
3364 (cgraph_make_edge_direct) Update declaration.
3365 * cgraph.c (cgraph_allocate_init_indirect_info): New function.
3366 (cgraph_create_indirect_edge): Use it.
3367 (cgraph_make_edge_direct): Made delta HOST_WIDE_INT. Updated all
3368 callees.
3369 * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Update for
3370 the new thunk_delta representation.
3371 * ipa-prop.c (ipa_make_edge_direct_to_target): Convert delta to
3372 HOST_WIDE_INT.
3373 (ipa_write_indirect_edge_info): Remove streaming of thunk_delta.
3374 (ipa_read_indirect_edge_info): Likewise.
3375 * lto-cgraph.c (output_edge_opt_summary): New function.
3376 (output_node_opt_summary): Call it on all outgoing edges.
3377 (input_edge_opt_summary): New function.
3378 (input_node_opt_summary): Call it on all outgoing edges.
3379
1e67fa1f
L
33802011-01-02 H.J. Lu <hongjiu.lu@intel.com>
3381
3382 PR driver/47137
3383 * gcc.c (main): Don't check have_o when settting combine_inputs.
3384
6656b2ac
EB
33852011-01-02 Eric Botcazou <ebotcazou@adacore.com>
3386
3387 * regrename.c: Add general comment describing the pass.
3388 (struct du_head): Remove 'length' field.
3389 (get_element, merge_sort_comparison, merge, sort_du_head): Remove.
3390 (regrename_optimize): Do not sort chains. Rework comments, add others.
3391 Force renaming to the preferred class (if any) in the first pass and do
3392 not consider registers that belong to it in the second pass.
3393 (create_new_chain): Do not set 'length' field.
3394 (scan_rtx_reg): Likewise.
3395
bc470c24
JJ
33962011-01-02 Jakub Jelinek <jakub@redhat.com>
3397
4e996296
JJ
3398 PR tree-optimization/47140
3399 * tree-ssa-ccp.c (evaluate_stmt): For binary assignments, use
3400 TREE_TYPE (lhs) instead of TREE_TYPE (rhs1) as second argument
3401 to bit_value_binop.
3402
bc470c24 3403 PR rtl-optimization/47028
6656b2ac
EB
3404 * cfgexpand.c (gimple_expand_cfg): Insert entry edge insertions after
3405 parm_birth_insn instead of at the beginning of first bb.
bc470c24 3406
5af62fcd 34072011-01-02 Mingjie Xing <mingjie.xing@gmail.com>
0d52f2a8
MX
3408
3409 * doc/generic.texi: Remove duplicated "@subsubsection Statements".
3410 Remove the word "see" before "@pxref".
3411 * doc/rtl.texi: Remove the word "see" before "@pxref".
3412
0e20c89f
JH
34132011-01-01 Jan Hubicka <jh@suse.cz>
3414
6656b2ac
EB
3415 * tree-loop-distribution.c (tree_loop_distribution): Do not use freed
3416 memory.
0e20c89f 3417
220e83ca
KT
34182011-01-01 Kai Tietz <kai.tietz@onevision.com>
3419
3420 PR target/38662
6656b2ac 3421 * tree.c (type_hash_eq): Call language hook for METHOD_TYPEs, too.
220e83ca 3422
ad41bd84 3423\f
797103eb 3424Copyright (C) 2011 Free Software Foundation, Inc.
ad41bd84
JM
3425
3426Copying and distribution of this file, with or without modification,
3427are permitted in any medium without royalty provided the copyright
3428notice and this notice are preserved.