platform/upstream/gcc.git
12 years agosh.h (RETURN_ADDR_RTX): Use NULL_RTX instead of 0.
Oleg Endo [Wed, 11 Apr 2012 23:03:20 +0000 (23:03 +0000)]
sh.h (RETURN_ADDR_RTX): Use NULL_RTX instead of 0.

* config/sh/sh.h (RETURN_ADDR_RTX): Use NULL_RTX instead of 0.
* config/sh/sh.c (INSN_REGMODE_WEIGHT, CURR_REGMODE_PRESSURE):
Fix line width.
(dump_table): Use bool type for need_align and have_df variables.
(find_barrier, sfunc_uses_reg): Use NULL_RTX instead of 0.
(regs_used): Remove register modifier.
(barrier_align): Move variables slot, credit, jump_to_next
into if block above for loop.  Use bool type for jump_to_next.
(sh_function_arg): Use NULL_RTX instead of 0.

From-SVN: r186366

12 years agore PR target/50751 (SH Target: Displacement addressing does not work for QImode and...
Oleg Endo [Wed, 11 Apr 2012 23:01:12 +0000 (23:01 +0000)]
re PR target/50751 (SH Target: Displacement addressing does not work for QImode and HImode)

PR target/50751
* gcc/target/sh/pr50751-4.c: New.
* gcc/target/sh/pr50751-5.c: New.
* gcc/target/sh/pr50751-6.c: New.
* gcc/target/sh/pr50751-7.c: New.

From-SVN: r186365

12 years agoFix date of previous ChangeLog entry.
Jonathan Wakely [Wed, 11 Apr 2012 22:59:25 +0000 (23:59 +0100)]
Fix date of previous ChangeLog entry.

From-SVN: r186364

12 years agore PR c++/52924 (Using an std::function object as deleter of shared_ptr in C++0x...
Jonathan Wakely [Wed, 11 Apr 2012 22:54:53 +0000 (22:54 +0000)]
re PR c++/52924 (Using an std::function object as deleter of shared_ptr in C++0x mode does not compile)

PR libstdc++/52924
* include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add
user-defined destructor.
(_Sp_counted_inplace): Likewise.
* testsuite/20_util/shared_ptr/cons/52924.cc: New.
* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
line numbers.

From-SVN: r186363

12 years agodebug.xml (Debug Versions of Library Binary Files): Re-arrange text slightly.
Jonathan Wakely [Wed, 11 Apr 2012 22:20:59 +0000 (22:20 +0000)]
debug.xml (Debug Versions of Library Binary Files): Re-arrange text slightly.

* doc/xml/manual/debug.xml (Debug Versions of Library Binary Files):
Re-arrange text slightly.

From-SVN: r186362

12 years agom68k.md (rotrhi3+1): Name it rotrhi_lowpart.
Andreas Schwab [Wed, 11 Apr 2012 22:01:42 +0000 (22:01 +0000)]
m68k.md (rotrhi3+1): Name it rotrhi_lowpart.

* gcc/config/m68k/m68k.md (rotrhi3+1): Name it rotrhi_lowpart.
(bswapsi2): New expander.

From-SVN: r186361

12 years agoi2012-04-10 Steve Ellcey <sellcey@mips.com>
Steve Ellcey [Wed, 11 Apr 2012 21:02:57 +0000 (21:02 +0000)]
i2012-04-10  Steve Ellcey  <sellcey@mips.com>

        * MAINTAINERS: Changed email address.

From-SVN: r186358

12 years agore PR c++/52465 (g++ rejects valid code with in-class using declaration)
Fabien Chêne [Wed, 11 Apr 2012 20:40:51 +0000 (22:40 +0200)]
re PR c++/52465 (g++ rejects valid code with in-class using declaration)

gcc/testsuite/ChangeLog

2012-04-09  Fabien Chêne  <fabien@gcc.gnu.org>

PR c++/52465
* g++.dg/lookup/using52.C: New.

gcc/cp/ChangeLog

2012-04-09  Fabien Chêne  <fabien@gcc.gnu.org>

PR c++/52465
* parser.c (cp_parser_class_name): Call strip_using_decl and
return the target decl.
* name-lookup.c (strip_using_decl): Returns NULL_TREE if the decl
to be stripped is NULL_TREE.
(qualify_lookup): Call strip_using_decl and perform some checks on
the target decl.

From-SVN: r186355

12 years ago* testsuite/performance/30_threads/future/polling.cc: Adjust.
Jonathan Wakely [Wed, 11 Apr 2012 20:31:06 +0000 (21:31 +0100)]
* testsuite/performance/30_threads/future/polling.cc: Adjust.

From-SVN: r186354

12 years agoprune.exp (TEST_ALWAYS_FLAGS): If undefined, set to empty.
Manuel López-Ibáñez [Wed, 11 Apr 2012 20:15:35 +0000 (20:15 +0000)]
prune.exp (TEST_ALWAYS_FLAGS): If undefined, set to empty.

2012-04-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>

testsuite/
* lib/prune.exp (TEST_ALWAYS_FLAGS): If undefined, set to empty.
libgomp/
* testsuite/lib/libgomp.exp: Add -fno-diagnostics-show-caret.

From-SVN: r186353

12 years agoDefine TRY_EMPTY_VM_SPACE to 0x60000000 for x32
H.J. Lu [Wed, 11 Apr 2012 19:37:57 +0000 (19:37 +0000)]
Define TRY_EMPTY_VM_SPACE to 0x60000000 for x32

2012-04-11  H.J. Lu  <hongjiu.lu@intel.com>

* config/host-linux.c (TRY_EMPTY_VM_SPACE): Defined to
0x60000000 if __x86_64 is defined and __LP64__ isn't defined.

From-SVN: r186352

12 years agoCheck for incompatible pointer sign extension
H.J. Lu [Wed, 11 Apr 2012 19:31:45 +0000 (19:31 +0000)]
Check for incompatible pointer sign extension

gcc/

PR rtl-optimization/52876
* emit-rtl.c (set_reg_attrs_from_value): Handle arbitrary value.
Don't call mark_reg_pointer for incompatible pointer sign
extension.

* reginfo.c (reg_scan_mark_refs): Call set_reg_attrs_from_value
directly.

gcc/testsuite

PR rtl-optimization/52876
* gcc.target/i386/pr52876.c: New.

From-SVN: r186351

12 years agofold-const.c (fold_unary_loc): Use GET_MODE_PRECISION for comparisons against TYPE_PR...
Bernd Schmidt [Wed, 11 Apr 2012 18:07:39 +0000 (18:07 +0000)]
fold-const.c (fold_unary_loc): Use GET_MODE_PRECISION for comparisons against TYPE_PRECISION.

* fold-const.c (fold_unary_loc): Use GET_MODE_PRECISION for
comparisons against TYPE_PRECISION.
* tree-ssa-forwprop.c (combine_conversions): Likewise.

From-SVN: r186350

12 years agoc99-const-expr-9.c (old_offsetof): Insert a cast to __UINTPTR_TYPE__.
Bernd Schmidt [Wed, 11 Apr 2012 17:58:01 +0000 (17:58 +0000)]
c99-const-expr-9.c (old_offsetof): Insert a cast to __UINTPTR_TYPE__.

* gcc.dg/c99-const-expr-9.c (old_offsetof): Insert a cast to
__UINTPTR_TYPE__.
* gcc.c-torture/execute/pr15296.c (intptr_t): Likewise, with
__INTPTR_TYPE__.
* gcc.dg/pr14092-1.c (intptr_t): Likewise.
* gcc.dg/tree-ssa/foldcast-1.c (ssize_t): Likewise.
* gcc.dg/c90-const-expr-6.c (intptr_t): New typedef to replace ...
(ptrdiff_t): ... this.  All uses changed.
* gcc.dg/c99-const-expr-6.c (intptr_t, ptrdiff_t): Likewise.
* gcc.dg/torture/pta-escape-1.c (foo): Change arg type to
__INTPTR_TYPE__.
(main): Cast argument to __INTPTR_TYPE__.
* gcc.dg/20041106-1.c (main): Cast to __UINTPTR_TYPE__ rather than
size_t.
* gcc.dg/mallign.c (main): Likewise.
* gcc.dg/pr38700.c (foo): Likewise.
* gcc.dg/long-long-cst1.c (t): Likewise.
* gcc.dg/c99-const-expr-10.c (p, q, f, h, h2): Likewise.
* gcc.dg/array-10.c (c0, c1, c2, c3, c4, c5): Likewise.
* gcc.dg/pointer-arith-10.c (foo): Likewise.
* gcc.dg/pr25682.c (d, foo): Likewise.
* gcc.dg/format/cast-1.c (f): Likewise.
* gcc.dg/c90-const-expr-10.c
* gcc.dg/pr41551.c (uintptr_t): New typedef, replacing...
(size_t): ...this.  All uses changed.
* gcc.c-torture/execute/pr22098-1.c (uintptr_t): Likewise.
* gcc.c-torture/execute/pr22098-2.c (uintptr_t): Likewise.
* gcc.c-torture/execute/pr22098-3.c (uintptr_t): Likewise.
* gcc.dg/pr34856.c (uintptr_t): Likewise.
* gcc.dg/sequence-pt-1.c: Likewise.
* gcc.dg/c90-const-expr-9.c (uintptr_t): Likewise.
* gcc.dg/max-1.c (intptr_t): Likewise, replacing ssize_t.
* gcc.dg/pr39074.c (intptr_t): Define using __INTPTR_TYPE__.
* gcc.dg/pr30744-1.c (my_intptr_t): New typedef.  Replace all uses
of ptrdiff_t with it.
* gcc.dg/inline-23.c (my_intptr_t): Likewise.
* gcc.dg/pr37561.c (p): Use __INTPTR_TYPE__.
* gcc.dg/vla-11.c (foo11b): Use __UINTPTR_TYPE__.

From-SVN: r186347

12 years agodecl.c (grokdeclarator): Strip the injected-class-name typedef if we are building...
Jason Merrill [Wed, 11 Apr 2012 17:55:25 +0000 (13:55 -0400)]
decl.c (grokdeclarator): Strip the injected-class-name typedef if we are building a declaration or...

* decl.c (grokdeclarator): Strip the injected-class-name typedef
if we are building a declaration or compound type.

From-SVN: r186346

12 years agore PR c++/52906 (ICE: SIGSEGV in check_tag_decl (decl.c:4230) with "__attribute__...
Jason Merrill [Wed, 11 Apr 2012 17:55:12 +0000 (13:55 -0400)]
re PR c++/52906 (ICE: SIGSEGV in check_tag_decl (decl.c:4230) with "__attribute__ ((__deprecated__));" alone)

PR c++/52906
* decl.c (check_tag_decl): Don't complain about attributes if we
don't even have a type.

From-SVN: r186345

12 years ago* g++.dg/eh/dtor3.C: New.
Jason Merrill [Wed, 11 Apr 2012 17:55:00 +0000 (13:55 -0400)]
* g++.dg/eh/dtor3.C: New.

From-SVN: r186344

12 years agolto.c: Update copyright...
Jan Hubicka [Wed, 11 Apr 2012 17:47:01 +0000 (19:47 +0200)]
lto.c: Update copyright...

* lto.c: Update copyright; remove params.h, ipa-inline.h
and ipa-utils.h inlines; inline lto-partition.h
(ltrans_partition_def, ltrans_partition, add_cgraph_node_to_partition,
add_varpool_node_to_partition, new_partition, free_ltrans_partitions,
add_references_to_partition, add_cgraph_node_to_partition_1,
add_cgraph_node_to_partition, add_varpool_node_to_partition,
undo_partition, partition_cgraph_node_p, partition_varpool_node_p,
lto_1_to_1_map, node_cmp, varpool_node_cmp, lto_balanced_map,
promote_var, promote_fn, lto_promote_cross_file_statics): move to...
* lto-partition.c: ... here; new file.
* lto-partition.h: New file.
* Make-lang.in (lto.o): Update dependencies.
(lto-partition.o): New.

From-SVN: r186343

12 years agoRemove TODO_dump_func completely
Xinliang David Li [Wed, 11 Apr 2012 17:46:52 +0000 (17:46 +0000)]
Remove TODO_dump_func completely

From-SVN: r186342

12 years agoCheck [SUB]SUBTARGET_OVERRIDE_OPTIONS after TARGET_64BIT
H.J. Lu [Wed, 11 Apr 2012 17:34:08 +0000 (17:34 +0000)]
Check [SUB]SUBTARGET_OVERRIDE_OPTIONS after TARGET_64BIT

* config/i386/i386.c (ix86_option_override_internal): Check
SUBTARGET_OVERRIDE_OPTIONS and SUBSUBTARGET_OVERRIDE_OPTIONS
after TARGET_64BIT is updated.

From-SVN: r186339

12 years agoforward_list.h (splice_after(const_iterator, forward_list&), [...]): Add per C++11...
Paolo Carlini [Wed, 11 Apr 2012 17:31:57 +0000 (17:31 +0000)]
forward_list.h (splice_after(const_iterator, forward_list&), [...]): Add per C++11 as published (and LWG 1310).

2012-04-11  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/forward_list.h (splice_after(const_iterator,
forward_list&), splice_after(const_iterator, forward_list&,
consst_iterator), splice_after(const_iterator, forward_list&,
const_iterator, const_iterator), merge(forward_list&),
merge(forward_list&, _Comp)): Add per C++11 as published (and
LWG 1310).
* include/debug/forward_list: Adjust.

* include/bits/forward_list.h (splice_after(const_iterator,
forward_list&&, const_iterator)): Only declare.
(_M_transfer_after): Remove.
(_M_splice_after(const_iterator, forward_list&&)): Change signature.
(splice_after(const_iterator, forward_list&&, const_iterator,
const_iterator)): Use the latter.
* include/bits/forward_list.tcc (splice_after(const_iterator,
forward_list&&, const_iterator)): Define here.
(_M_splice_after): Define, use throughout.

* include/bits/forward_list.h (insert_after(const_iterator,
std::initializer_list<_Tp>)): Forward to insert_after(const_iterator,
_InputIterator, _InputIterator).
* include/bits/forward_list.tcc: Remove definition.

* testsuite/23_containers/forward_list/modifiers/6.cc: New.
* testsuite/23_containers/forward_list/operations/1.cc: Adjust.

From-SVN: r186338

12 years agoFix java bootstrap on 32-bit targets
Rainer Orth [Wed, 11 Apr 2012 16:58:53 +0000 (16:58 +0000)]
Fix java bootstrap on 32-bit targets

* jcf-dump.c (print_constant): Cast JPOOL_USHORT2, JPOOL_USHORT1
results to long to match formats.

From-SVN: r186330

12 years agosh.h: Remove old secondary reload code.
Oleg Endo [Wed, 11 Apr 2012 16:27:50 +0000 (16:27 +0000)]
sh.h: Remove old secondary reload code.

* config/sh/sh.h: Remove old secondary reload code.

From-SVN: r186328

12 years agosh.c (SCHED_REORDER): Merge macro into ...
Oleg Endo [Wed, 11 Apr 2012 16:26:41 +0000 (16:26 +0000)]
sh.c (SCHED_REORDER): Merge macro into ...

* config/sh/sh.c (SCHED_REORDER): Merge macro into ...
(ready_reorder): ... this function.

From-SVN: r186327

12 years agoc6x.md (load_got_gotoff): Set op_pattern attribute to unknown.
Bernd Schmidt [Wed, 11 Apr 2012 14:45:49 +0000 (14:45 +0000)]
c6x.md (load_got_gotoff): Set op_pattern attribute to unknown.

* config/c6x/c6x.md (load_got_gotoff): Set op_pattern attribute to
unknown.

From-SVN: r186326

12 years agohaifa-sched.c (prune_ready_list): Rework handling of SCHED_GROUP_P insns so that...
Bernd Schmidt [Wed, 11 Apr 2012 14:40:48 +0000 (14:40 +0000)]
haifa-sched.c (prune_ready_list): Rework handling of SCHED_GROUP_P insns so that no other insn is queued for a...

* haifa-sched.c (prune_ready_list): Rework handling of SCHED_GROUP_P
insns so that no other insn is queued for a time before them.

From-SVN: r186325

12 years agosel-sched.c (sel_global_init): Swap order of sched_rgn_init and sched_init calls.
Bernd Schmidt [Wed, 11 Apr 2012 14:39:21 +0000 (14:39 +0000)]
sel-sched.c (sel_global_init): Swap order of sched_rgn_init and sched_init calls.

* sel-sched.c (sel_global_init): Swap order of sched_rgn_init and
sched_init calls.

From-SVN: r186324

12 years agore PR middle-end/52621 (ICE with -O3 -march=opteron in initialize_matrix_A, at tree...
Richard Guenther [Wed, 11 Apr 2012 14:04:00 +0000 (14:04 +0000)]
re PR middle-end/52621 (ICE with -O3 -march=opteron in initialize_matrix_A, at tree-data-ref.c:1964)

2012-04-11  Richard Guenther  <rguenther@suse.de>

PR middle-end/52621
* tree-chrec.c (evolution_function_is_invariant_rec_p): Properly
consider loop nesting.
(evolution_function_is_univariate_p): Properly check the remainder
for chrecs.

* gfortran.dg/pr52621.f90: New testcase.

From-SVN: r186321

12 years agore PR target/52918 (ICE: Invalid bb->loop_father (NULL) in add_bb_to_loop)
Richard Guenther [Wed, 11 Apr 2012 14:02:26 +0000 (14:02 +0000)]
re PR target/52918 (ICE: Invalid bb->loop_father (NULL) in add_bb_to_loop)

2012-04-11  Richard Guenther  <rguenther@suse.de>

PR middle-end/52918
* except.c (sjlj_emit_dispatch_table): Properly update loop
structure.

* g++.dg/torture/pr52918-1.C: New testcase.
* g++.dg/torture/pr52918-2.C: Likewise.

From-SVN: r186320

12 years agojcf-reader.c (jcf_parse_bootstrap_methods): Add ATTRIBUTE_UNUSED.
Andrew Haley [Wed, 11 Apr 2012 13:21:18 +0000 (13:21 +0000)]
jcf-reader.c (jcf_parse_bootstrap_methods): Add ATTRIBUTE_UNUSED.

2012-04-11  Andrew Haley  <aph@redhat.com>

* jcf-reader.c (jcf_parse_bootstrap_methods): Add
ATTRIBUTE_UNUSED.

From-SVN: r186319

12 years agore PR fortran/52729 (Symbol has no implicit type in SELECT TYPE block)
Tobias Burnus [Wed, 11 Apr 2012 13:08:32 +0000 (15:08 +0200)]
re PR fortran/52729 (Symbol has no implicit type in SELECT TYPE block)

2012-04-11  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52729
        * resolve.c (resolve_symbol): Fix searching for parent NS decl.

2012-04-11  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52729
        * gfortran.dg/block_11.f90: New.

From-SVN: r186318

12 years agorx.c (rx_expand_prologue): Set stack use information, if requested.
Nick Clifton [Wed, 11 Apr 2012 12:49:22 +0000 (12:49 +0000)]
rx.c (rx_expand_prologue): Set stack use information, if requested.

* config/rx/rx.c (rx_expand_prologue): Set stack use
information, if requested.

From-SVN: r186314

12 years agostack-usage-1.c (SIZE): Define for the RL78.
Nick Clifton [Wed, 11 Apr 2012 12:48:01 +0000 (12:48 +0000)]
stack-usage-1.c (SIZE): Define for the RL78.

* gcc.dg/stack-usage-1.c (SIZE): Define for the RL78.
* config/rl78/rl78.c (rl78_expand_prologue): Set stack use
information, if requested.

From-SVN: r186313

12 years agore PR target/16458 (PowerPC - redundant compare)
Peter Bergner [Wed, 11 Apr 2012 11:51:50 +0000 (06:51 -0500)]
re PR target/16458 (PowerPC - redundant compare)

gcc/
PR target/16458
* rtlanal.c (unsigned_reg_p): New function.
Update copyright notice dates.
* rtl.h (unsigned_reg_p): Prototype it.
Update copyright notice dates.
* config/rs6000/rs6000.c (rs6000_generate_compare): Use it.
Update comment.
* expr.c (expand_expr_real_1): Set register attributes.
* stmt.c (expand_case): Likewise.

gcc/testsuite/
PR target/16458
* gcc.target/powerpc/pr16458-1.c: New test.
* gcc.target/powerpc/pr16458-2.c: Likewise.
* gcc.target/powerpc/pr16458-3.c: Likewise.
* gcc.target/powerpc/pr16458-4.c: Likewise.

Co-Authored-By: Michael Matz <matz@suse.de>
From-SVN: r186312

12 years agore PR target/50751 (SH Target: Displacement addressing does not work for QImode and...
Oleg Endo [Wed, 11 Apr 2012 11:35:32 +0000 (11:35 +0000)]
re PR target/50751 (SH Target: Displacement addressing does not work for QImode and HImode)

PR target/50751
* config/sh/sh-protos.h (sh_legitimate_index_p): Add new arguments
consider_sh2a and allow_zero.
* config/sh/sh.c (sh_legitimate_index_p): Likewise.
(disp_addr_displacement): New function.
(sh_address_cost): Use disp_addr_displacement function instead
of DISP_ADDR_OFFSET.
(sh_legitimate_address_p): Adapt to changed
sh_legitimate_index_p declaration.
(sh_find_mov_disp_adjust): Remove HImode check.
(sh_secondary_reload): Add HImode case.  Use satisfies_constraint_Sdd,
disp_addr_displacement and max_mov_insn_displacement.
(max_mov_insn_displacement): Remove HImode check.
* config/sh/sh.h (CONST_OK_FOR_K04, CONST_OK_FOR_K12,
DISP_ADDR_P, DISP_ADDR_OFFSET): Remove.
* config/sh/constraints.md (K05, K13): New constraints.
(K12): Correct comment.
(Sdd): Do not use DISP_ADDR_P macro.
(Snd, Sbw): Use satisfies_constraint_Sdd.
* config/sh/sh.md (extendhisi2): Remove constraints from expander.
(*extendhisi2_compact, movhi_i): Remove.
(*extendhisi2_compact_reg, *extendhisi2_compact_mem_disp,
*extendhisi2_compact_mem_disp, *extendhisi2_compact_snd,
*movhi_reg_reg, *movhi_store_mem_disp05, *movhi_store_mem_disp13,
*movhi_load_mem_disp, *movhi_load_mem_disp, *movhi): New insns.
(*extendqisi2_compact_mem_disp, *extendqisi2_compact_mem_disp,
*movqi_store_mem_disp04, *movqi_store_mem_disp12, *movqi_load_mem_disp,
*movqi_load_mem_disp): Use sh_legitimate_index_p instead of
CONST_OK_FOR_Kxx.
Add new peepholes for HImode displacement addressing.

From-SVN: r186311

12 years agore PR libstdc++/52931 (std::hash shouldn't be defined for unknown types)
Paolo Carlini [Wed, 11 Apr 2012 11:27:50 +0000 (11:27 +0000)]
re PR libstdc++/52931 (std::hash shouldn't be defined for unknown types)

2012-04-11  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/52931
* include/bits/functional_hash.h (struct hash): Remove definition.
* testsuite/20_util/hash/52931.cc: New.

From-SVN: r186310

12 years agosh.h (SIDI_OFF): Remove.
Oleg Endo [Wed, 11 Apr 2012 11:24:40 +0000 (11:24 +0000)]
sh.h (SIDI_OFF): Remove.

* config/sh/sh.h (SIDI_OFF): Remove.
* config/sh/sh.md: Use gen_highpart and gen_lowpart to access
DImode subregs instead of gen_rtx_REG or simplifly_gen_subreg
or operand_subword.

From-SVN: r186309

12 years agore PR target/52624 (missing __builtin_bswap16)
Eric Botcazou [Wed, 11 Apr 2012 11:13:39 +0000 (11:13 +0000)]
re PR target/52624 (missing __builtin_bswap16)

PR target/52624
* doc/extend.texi (Other Builtins): Document __builtin_bswap16.
(PowerPC AltiVec/VSX Built-in Functions): Remove it.
* doc/md.texi (Standard Names): Add bswap.
* builtin-types.def (BT_UINT16): New primitive type.
(BT_FN_UINT16_UINT16): New function type.
* builtins.def (BUILT_IN_BSWAP16): New.
* builtins.c (expand_builtin_bswap): Add TARGET_MODE argument.
(expand_builtin) <BUILT_IN_BSWAP16>: New case.  Pass TARGET_MODE to
expand_builtin_bswap.
(fold_builtin_bswap): Add BUILT_IN_BSWAP16 case.
(fold_builtin_1): Likewise.
(is_inexpensive_builtin): Likewise.
* optabs.c (expand_unop): Deal with bswap in HImode specially.  Add
missing bits for bswap to libcall code.
* tree.c (build_common_tree_nodes): Build uint16_type_node.
* tree.h (enum tree_index): Add TI_UINT16_TYPE.
(uint16_type_node): New define.
* config/rs6000/rs6000-builtin.def (RS6000_BUILTIN_BSWAP_HI): Delete.
* config/rs6000/rs6000.c (rs6000_expand_builtin): Remove handling of
above builtin.
(rs6000_init_builtins): Likewise.
* config/rs6000/rs6000.md (bswaphi2): Add TARGET_POWERPC predicate.
c-family/
* c-common.h (uint16_type_node): Rename into...
(c_uint16_type_node): ...this.
* c-common.c (c_common_nodes_and_builtins): Adjust for above renaming.
* c-cppbuiltin.c (builtin_define_stdint_macros): Likewise.

From-SVN: r186308

12 years agojcf.h (bootstrap_method): New.
Andrew Haley [Wed, 11 Apr 2012 10:47:43 +0000 (10:47 +0000)]
jcf.h (bootstrap_method): New.

2012-04-11  Andrew Haley  <aph@redhat.com>

* jcf.h (bootstrap_method): New.
(BootstrapMethods): New.
(JCF): Add BootstrapMethods.
(enum cpool_tag): Add MethodHandle, MethodType, and InvokeDynamic.
* jcf-reader.c (jcf_parse_bootstrap_methods): New.
(jcf_parse_constant_pool): Handlers for MethodHandle, MethodType,
and InvokeDynamic.
(jcf_parse_bootstrap_methods): New.
* javaop.def (invokedynamic): New opcode.
* jcf-parse.c (get_constant): An unknown constant type should not
be an internal error, but a fatal one.  Make it so.
* jcf-dump.c (HANDLE_BOOTSTRAP_METHODS_ATTRIBUTE): New.
(HANDLE_END_BOOTSTRAP_METHODS): New.
(print_constant): Handlers for MethodHandle, MethodType, and
InvokeDynamic.

From-SVN: r186307

12 years agoextend.texi (Type Attributes): Move paragraph.
Tristan Gingold [Wed, 11 Apr 2012 10:32:48 +0000 (10:32 +0000)]
extend.texi (Type Attributes): Move paragraph.

2012-04-11  Tristan Gingold  <gingold@adacore.com>

* doc/extend.texi (Type Attributes): Move paragraph.

From-SVN: r186306

12 years agore PR c++/24985 (caret diagnostics)
Manuel López-Ibáñez [Wed, 11 Apr 2012 09:26:48 +0000 (09:26 +0000)]
re PR c++/24985 (caret diagnostics)

2012-04-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR 24985
gcc/
        * diagnostic.h (show_caret): Declare.
(caret_max_width): Declare.
(diagnostic_show_locus): Declare.
        * diagnostic.c (diagnostic_initialize): Initialize to false.
        (diagnostic_show_locus): New.
        (diagnostic_report_diagnostic): Call it.
(getenv_columns): New.
(adjust_line): New.
(diagnostic_set_caret_max_width): New.
        * input.c (read_line): New.
(location_get_source_line): New.
        * input.h (location_get_source_line): Declare.
        * toplev.c (general_init): Initialize show_caret from options.
        * dwarf2out.c (gen_producer_string): Handle fdiagnostics-show-caret.
        * opts.c (common_handle_option): Likewise.
* pretty-print.h (pp_get_prefix): New.
(pp_base_get_prefix): New.
        * common.opt (fdiagnostics-show-caret): New option.
* doc/invoke.texi (fdiagnostics-show-caret): Document it.
testsuite/
        * lib/prune.exp: Add -fno-diagnostics-show-caret.
libstdc++-v3/
* testsuite/lib/prune.exp: Handle caret.
libmudflap/
* testsuite/lib/libmudflap.exp: Handle caret.

From-SVN: r186305

12 years agore PR middle-end/52881 (ICE due to null pointer deref in cfgloop.c)
Richard Guenther [Wed, 11 Apr 2012 08:13:37 +0000 (08:13 +0000)]
re PR middle-end/52881 (ICE due to null pointer deref in cfgloop.c)

2012-04-11  Richard Guenther  <rguenther@suse.de>

PR rtl-optimization/52881
* ifcvt.c (find_if_case_2): Avoid speculating loop latches.

* gcc.dg/torture/pr52881.c: New testcase.
* gcc.dg/torture/pr52913.c: Likewise.

From-SVN: r186304

12 years agore PR tree-optimization/52912 (ICE: verify_ssa failed)
Richard Guenther [Wed, 11 Apr 2012 08:12:33 +0000 (08:12 +0000)]
re PR tree-optimization/52912 (ICE: verify_ssa failed)

2012-04-11  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/52912
* tree-ssa-threadupdate.c (thread_block): Tell the cfg
manipulation code we are threading through a loop header
to an exit destination.

* gcc.dg/torture/pr52912.c: New testcase.

From-SVN: r186303

12 years agoDaily bump.
GCC Administrator [Wed, 11 Apr 2012 00:18:47 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r186301

12 years agoc-common.c (warn_if_unused_value): Move definition to here.
Manuel López-Ibáñez [Tue, 10 Apr 2012 16:33:47 +0000 (16:33 +0000)]
c-common.c (warn_if_unused_value): Move definition to here.

2012-04-10  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* c-family/c-common.c (warn_if_unused_value): Move definition to here.
* tree.h (warn_if_unused_value): Move declaration from here.
* c-family/c-common.h (warn_if_unused_value): Move declaration to here.
* cp/cvt.c (convert_to_void): Update comment.
* stmt.c (warn_if_unused_value): Move definition from here.

From-SVN: r186287

12 years agoForgot to commit in r186285.
Michael Matz [Tue, 10 Apr 2012 16:09:51 +0000 (16:09 +0000)]
Forgot to commit in r186285.

From-SVN: r186286

12 years agotree-vectorizer.h (_loop_vec_info.strided_stores): Rename to grouped_stores.
Michael Matz [Tue, 10 Apr 2012 16:09:03 +0000 (16:09 +0000)]
tree-vectorizer.h (_loop_vec_info.strided_stores): Rename to grouped_stores.

* tree-vectorizer.h (_loop_vec_info.strided_stores): Rename to
grouped_stores.
(LOOP_VINFO_STRIDED_STORES): Rename to LOOP_VINFO_GROUPED_STORES.
(struce _bb_vec_info.strided_stores): Rename to grouped_stores.
(BB_VINFO_STRIDED_STORES): Rename to BB_VINFO_GROUPED_STORES.
(STMT_VINFO_STRIDED_ACCESS): Rename to STMT_VINFO_GROUPED_ACCESS.
(vect_strided_store_supported): Rename to vect_grouped_store_supported.
(vect_strided_load_supported): Rename to vect_grouped_load_supported.
(vect_transform_strided_load): Rename to vect_transform_grouped_load.
(vect_record_strided_load_vectors): Rename to
vect_record_grouped_load_vectors.
* tree-vect-data-refs.c (vect_update_misalignment_for_peel):
Rename use of above macros.
(vect_verify_datarefs_alignment): Ditto.
(vector_alignment_reachable_p): Ditto.
(vect_peeling_hash_get_lowest_cost): Ditto.
(vect_enhance_data_refs_alignment): Ditto.
(vect_analyze_group_access): Ditto and rename stride to groupsize.
(vect_analyze_data_ref_access): Rename "strided" to "grouped".
(vect_strided_store_supported): Rename to vect_grouped_store_supported.
(vect_strided_load_supported): Rename to vect_grouped_load_supported.
(vect_transform_strided_load): Rename to vect_transform_grouped_load.
(vect_record_strided_load_vectors): Rename to
vect_record_grouped_load_vectors.
* tree-vect-loop.c (new_loop_vec_info): Rename use of above macros.
(destroy_loop_vec_info): Ditto.
(vect_transform_loop): Ditto and rename strided_store to grouped_store.
* tree-vect-slp.c (vect_build_slp_tree): Rename use of above macros.
(vect_analyze_slp): Ditto.
(new_bb_vec_info): Ditto.
(destroy_bb_vec_info): Ditto.
(vect_schedule_slp_instance): Ditto and rename strided_store to
grouped_store.
* tree-vect-stmts.c (vect_cost_strided_group_size): Rename to
vect_cost_group_size.
(vect_model_store_cost): Rename use of above macros and call
to vect_cost_strided_group_size.
(vect_model_load_cost): Ditto.
(vectorizable_store): Ditto, rename strided_store to grouped_store
and calls to renamed tree-vectorizer.h functions.
(vectorizable_load): Ditto.
(vect_transform_stmt): Rename use of above macros and strided_store
to grouped_store.

testsuite/
* gcc.dg/vect/vect-outer-1-big-array.c: Adjust.
* gcc.dg/vect/vect-outer-1.c: Adjust.
* gcc.dg/vect/vect-outer-1a-big-array.c: Adjust.
* gcc.dg/vect/vect-outer-1a.c: Adjust.
* gcc.dg/vect/vect-outer-1b-big-array.c: Adjust.
* gcc.dg/vect/vect-outer-1b.c: Adjust.
* gcc.dg/vect/vect-outer-2b.c: Adjust.
* gcc.dg/vect/vect-outer-3b.c: Adjust.

From-SVN: r186285

12 years agocgraph.h: Remove misledaing comment on ipa-ref.h.
Jan Hubicka [Tue, 10 Apr 2012 16:03:36 +0000 (18:03 +0200)]
cgraph.h: Remove misledaing comment on ipa-ref.h.

* cgraph.h: Remove misledaing comment on ipa-ref.h.
(symtab_type): New enum.
(symtab_node): New structure.
(cgraph_node, varpool_node): Add symbol base type.
(cgraph, varpool): New accestor functions.
* cgraph.c (cgraph_create_node_1): Set symbol type.
* varpool.c (varpool_node): Set symbol type.

From-SVN: r186284

12 years agocshift0.m4 (cshift0_'rtype_code`): Guard use of modulo.
Michael Matz [Tue, 10 Apr 2012 15:39:22 +0000 (15:39 +0000)]
cshift0.m4 (cshift0_'rtype_code`): Guard use of modulo.

* m4/cshift0.m4 (cshift0_'rtype_code`): Guard use of modulo.

* generated/cshift0_c10.c: Regenerated.
* generated/cshift0_c16.c: Regenerated.
* generated/cshift0_c4.c: Regenerated.
* generated/cshift0_c8.c: Regenerated.
* generated/cshift0_i16.c: Regenerated.
* generated/cshift0_i1.c: Regenerated.
* generated/cshift0_i2.c: Regenerated.
* generated/cshift0_i4.c: Regenerated.
* generated/cshift0_i8.c: Regenerated.
* generated/cshift0_r10.c: Regenerated.
* generated/cshift0_r16.c: Regenerated.
* generated/cshift0_r4.c: Regenerated.
* generated/cshift0_r8.c: Regenerated.

From-SVN: r186283

12 years agofwprop.c (propagate_rtx): Also set PR_CAN_APPEAR for subregs.
Ulrich Weigand [Tue, 10 Apr 2012 13:50:43 +0000 (13:50 +0000)]
fwprop.c (propagate_rtx): Also set PR_CAN_APPEAR for subregs.

* fwprop.c (propagate_rtx): Also set PR_CAN_APPEAR for subregs.

Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com>
From-SVN: r186278

12 years agore PR middle-end/52888 (Unable to inline function pointer call with inexact signature...
Richard Guenther [Tue, 10 Apr 2012 13:20:50 +0000 (13:20 +0000)]
re PR middle-end/52888 (Unable to inline function pointer call with inexact signature match)

2012-04-10  Richard Guenther  <rguenther@suse.de>

PR middle-end/52888
* gimple-low.c (gimple_check_call_args): Properly account for
compatible aggregate types.

From-SVN: r186276

12 years agotoplev.h (tree_rest_of_compilation): Remove.
Richard Guenther [Tue, 10 Apr 2012 11:56:05 +0000 (11:56 +0000)]
toplev.h (tree_rest_of_compilation): Remove.

2012-04-10  Richard Guenther  <rguenther@suse.de>

* toplev.h (tree_rest_of_compilation): Remove.
* tree-optimize.c (tree_rest_of_compilation): Likewise.
* cgraph.h (tree_rest_of_compilation): Declare.
* tree-optimize.c (tree_rest_of_compilation): Move ...
* cgraphunit.c (tree_rest_of_compilation): ... here.
* cgraph.c (cgraph_add_new_function): Adjust.
* Makefile.in (tree-optimize.o): Adjust.
(cgraphunit.o): Likewise.

From-SVN: r186274

12 years agore PR tree-optimization/52870 (ICE during SLP pattern matching)
Ulrich Weigand [Tue, 10 Apr 2012 10:56:11 +0000 (10:56 +0000)]
re PR tree-optimization/52870 (ICE during SLP pattern matching)

gcc/
PR tree-optimization/52870
* tree-vect-patterns.c (vect_recog_widen_mult_pattern): Verify that
presumed pattern statement is within the same loop or basic block.

gcc/testsuite/
PR tree-optimization/52870
* gcc.dg/vect/pr52870.c: New test.

From-SVN: r186272

12 years agogengtype.c (main): Make uintptr_t a known type.
Tristan Gingold [Tue, 10 Apr 2012 08:32:23 +0000 (08:32 +0000)]
gengtype.c (main): Make uintptr_t a known type.

gcc/
2012-04-10  Tristan Gingold  <gingold@adacore.com>

* gengtype.c (main): Make uintptr_t a known type.

include/
2012-04-10  Tristan Gingold  <gingold@adacore.com>

* splay-tree.h: Conditionnaly includes stdint.h and inttypes.h
(libi_uhostptr_t, libi_shostptr_t): Remove, replaced by uintptr_t.

From-SVN: r186269

12 years agotree-pass.h (tree_lowering_passes): Remove.
Richard Guenther [Tue, 10 Apr 2012 08:19:21 +0000 (08:19 +0000)]
tree-pass.h (tree_lowering_passes): Remove.

2012-04-10  Richard Guenther  <rguenther@suse.de>

* tree-pass.h (tree_lowering_passes): Remove.
* tree-optimize.c (tree_lowering_passes): Remove.
* cgraph.c (cgraph_add_new_function): Inline relevant parts
of tree_lowering_passes, avoid redundant call of early local
passes.
* cgraphunit.c (cgraph_lower_function): Fold into ...
(cgraph_analyze_function): ... its single caller.  Inline
relevant parts of tree_lowering_passes.

From-SVN: r186268

12 years agoDon't use CRLF endings.
Mike Stump [Tue, 10 Apr 2012 08:01:19 +0000 (08:01 +0000)]
Don't use CRLF endings.

* gcc.dg/tree-ssa/vrp59.c: Likewise.
* gcc.dg/tree-ssa/vrp60.c: Likewise.
* gnat.dg/aggr11.adb: Likewise.
* gnat.dg/aggr11_pkg.ads: Likewise.
* gnat.dg/aggr15.adb: Likewise.
* gnat.dg/aggr15.ads: Likewise.
* gnat.dg/aggr17.adb: Likewise.
* gnat.dg/aggr18.adb: Likewise.
* gnat.dg/array14.adb: Likewise.
* gnat.dg/array14.ads: Likewise.
* gnat.dg/array14_pkg.ads: Likewise.
* gnat.dg/array19.adb: Likewise.
* gnat.dg/array19.ads: Likewise.
* gnat.dg/discr27.adb: Likewise.
* gnat.dg/discr27.ads: Likewise.
* gnat.dg/discr35.adb: Likewise.
* gnat.dg/discr35.ads: Likewise.
* gnat.dg/discr6.adb: Likewise.
* gnat.dg/discr6_pkg.ads: Likewise.
* gnat.dg/import1.adb: Likewise.
* gnat.dg/import1.ads: Likewise.
* gnat.dg/loop_address2.adb: Likewise.
* gnat.dg/opt7.adb: Likewise.
* gnat.dg/opt7.ads: Likewise.
* gnat.dg/pointer_variable_bounds.adb: Likewise.
* gnat.dg/pointer_variable_bounds.ads: Likewise.
* gnat.dg/rep_clause2.adb: Likewise.
* gnat.dg/rep_clause2.ads: Likewise.
* gnat.dg/slice2.adb: Likewise.
* gnat.dg/slice2.ads: Likewise.
* gnat.dg/slice6.adb: Likewise.
* gnat.dg/slice6_pkg.ads: Likewise.
* gnat.dg/specs/unchecked_union2.ads: Likewise.
* gnat.dg/taft_type2.adb: Likewise.
* gnat.dg/taft_type2.ads: Likewise.
* gnat.dg/taft_type2_pkg.ads: Likewise.
* gnat.dg/volatile10.adb: Likewise.
* gnat.dg/volatile10_pkg.ads: Likewise.

From-SVN: r186265

12 years agoa-assert.ads: Remove execute permission.
Mike Stump [Tue, 10 Apr 2012 05:44:30 +0000 (05:44 +0000)]
a-assert.ads: Remove execute permission.

* a-assert.ads: Remove execute permission.
* a-chacon.ads: Likewise.
* a-coteio.ads: Likewise.
* a-envvar.ads: Likewise.
* a-exetim-mingw.ads: Likewise.
* a-fzteio.ads: Likewise.
* a-izteio.ads: Likewise.
* a-lcteio.ads: Likewise.
* a-llctio.ads: Likewise.
* a-scteio.ads: Likewise.
* a-suenco.ads: Likewise.
* a-suenst.ads: Likewise.
* a-suewst.ads: Likewise.
* a-suezst.ads: Likewise.
* a-tirsfi.ads: Likewise.
* a-wichha.ads: Likewise.
* a-zchara.ads: Likewise.
* a-zchhan.ads: Likewise.
* a-zchuni.ads: Likewise.
* a-zrstfi.ads: Likewise.
* aspects.ads: Likewise.
* g-byorma.ads: Likewise.
* g-decstr.ads: Likewise.
* g-encstr.ads: Likewise.
* g-spchge.ads: Likewise.
* g-u3spch.ads: Likewise.
* g-wispch.ads: Likewise.
* g-zspche.ads: Likewise.
* namet-sp.ads: Likewise.
* s-os_lib.ads: Likewise.
* s-regexp.ads: Likewise.
* s-regpat.ads: Likewise.
* s-string.ads: Likewise.
* s-tasloc.ads: Likewise.
* s-utf_32.ads: Likewise.
* sem_aux.ads: Likewise.
* a-assert.adb: Likewise.
* a-chacon.adb: Likewise.
* a-envvar.adb: Likewise.
* a-exetim-mingw.adb: Likewise.
* a-suenco.adb: Likewise.
* a-suenst.adb: Likewise.
* a-suewst.adb: Likewise.
* a-suezst.adb: Likewise.
* a-tirsfi.adb: Likewise.
* a-wichha.adb: Likewise.
* a-zchhan.adb: Likewise.
* a-zchuni.adb: Likewise.
* a-zrstfi.adb: Likewise.
* aspects.adb: Likewise.
* g-byorma.adb: Likewise.
* g-decstr.adb: Likewise.
* g-encstr.adb: Likewise.
* g-spchge.adb: Likewise.
* g-u3spch.adb: Likewise.
* g-wispch.adb: Likewise.
* g-zspche.adb: Likewise.
* namet-sp.adb: Likewise.
* s-except.adb: Likewise.
* s-inmaop-vxworks.adb: Likewise.
* s-os_lib.adb: Likewise.
* s-regexp.adb: Likewise.
* s-regpat.adb: Likewise.
* s-string.adb: Likewise.
* s-tasloc.adb: Likewise.
* s-utf_32.adb: Likewise.
* s-wchcon.adb: Likewise.
* sem_aux.adb: Likewise.

From-SVN: r186261

12 years ago* gcc.dg/tree-ssa/vrp60.c: Likewise.
Mike Stump [Tue, 10 Apr 2012 05:21:44 +0000 (05:21 +0000)]
* gcc.dg/tree-ssa/vrp60.c: Likewise.

From-SVN: r186260

12 years agoudlit-raw-op.C: Don't use CRLF endings.
Mike Stump [Tue, 10 Apr 2012 05:20:15 +0000 (05:20 +0000)]
udlit-raw-op.C: Don't use CRLF endings.

* g++.dg/cpp0x/udlit-raw-op.C: Don't use CRLF endings.
* gcc.dg/tree-ssa/vrp59.c: Likewise.

From-SVN: r186259

12 years agodll-8.c: Remove execute permissions.
Mike Stump [Tue, 10 Apr 2012 03:15:22 +0000 (03:15 +0000)]
dll-8.c: Remove execute permissions.

* gcc.dg/dll-8.c: Remove execute permissions.
* g++.dg/ext/dllexport5.C: Likewise.

From-SVN: r186258

12 years agoRemove SIO and GNU_LD from config/pa/pa.opt
H.J. Lu [Tue, 10 Apr 2012 00:56:27 +0000 (00:56 +0000)]
Remove SIO and GNU_LD from config/pa/pa.opt

2012-04-09  H.J. Lu  <hongjiu.lu@intel.com>

PR other/52777
* config/pa/pa.opt: Remove SIO and GNU_LD.

From-SVN: r186257

12 years agoDaily bump.
GCC Administrator [Tue, 10 Apr 2012 00:18:29 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r186256

12 years agore PR lto/52722 (ICE in lto_output_varpool_node)
Jan Hubicka [Mon, 9 Apr 2012 23:39:11 +0000 (01:39 +0200)]
re PR lto/52722 (ICE in lto_output_varpool_node)

PR lto/52722
PR lto/51765
PR lto/52634
* lto-cgraph.c (compute_ltrans_boundary): When alias is in the boundary,
add its target too.
* lto.c (add_references_to_partition): Add also aliased nodes.
(add_cgraph_node_to_partition,
add_varpool_node_to_partition): Work on nodes, not functions/variables;
when adding alias, add also the aliased object.

* gcc.dg/lto/pr52634_1.c: New testcase.
* gcc.dg/lto/pr52634_0.c: New testcase.

From-SVN: r186252

12 years agore PR target/52883 (ICE in simplify_const_unary_operation, at simplify-rtx.c:1464)
Uros Bizjak [Mon, 9 Apr 2012 09:57:13 +0000 (11:57 +0200)]
re PR target/52883 (ICE in simplify_const_unary_operation, at simplify-rtx.c:1464)

PR target/52883
* config/i386/predicates.md (x86_64_zext_general_operand): Prevent
VOIDmode immediate operands.
* config/i386/constraints.md (Wz): New constraint.
* config/i386/i386.md (*zero_extendsidi2_rex64): Use Wz instead of Z.

testsuite/ChangeLog:

PR target/52883
* gcc.target/i386/pr52883.c: New testcase.

From-SVN: r186243

12 years agotarget-supports.exp (check_effective_target_sparc_v9): New.
Eric Botcazou [Mon, 9 Apr 2012 09:24:06 +0000 (09:24 +0000)]
target-supports.exp (check_effective_target_sparc_v9): New.

* lib/target-supports.exp (check_effective_target_sparc_v9): New.
(check_effective_target_sync_long_long): Add SPARC case.
(check_effective_target_sync_long_long_runtime): Likewise.
(check_effective_target_sync_int_long): Adjust SPARC case.
(check_effective_target_sync_char_short): Likewise.

From-SVN: r186241

12 years agore PR target/52717 (thunk referenced in discarded section when building samba with...
Eric Botcazou [Mon, 9 Apr 2012 08:53:27 +0000 (08:53 +0000)]
re PR target/52717 (thunk referenced in discarded section when building samba with -flto)

PR target/52717
* config/sparc/sparc.c (sparc_file_end): Set TREE_PUBLIC explicitly on
the DECL generated for the special GOT helper.

From-SVN: r186237

12 years agoconstraints.md: Update list of constraints in comment block.
Oleg Endo [Mon, 9 Apr 2012 00:50:33 +0000 (00:50 +0000)]
constraints.md: Update list of constraints in comment block.

* config/sh/constraints.md: Update list of constraints in
comment block.
(Sr0): Remove unused memory constraint.

From-SVN: r186234

12 years agoDaily bump.
GCC Administrator [Mon, 9 Apr 2012 00:18:34 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r186233

12 years agotree-pretty-print.h: Update comment.
Manuel López-Ibáñez [Sun, 8 Apr 2012 23:38:05 +0000 (23:38 +0000)]
tree-pretty-print.h: Update comment.

2012-04-08  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* tree-pretty-print.h: Update comment.

From-SVN: r186229

12 years agoAdapt ChangeLog for previous commit of two patches at once.
Oleg Endo [Sun, 8 Apr 2012 09:46:09 +0000 (09:46 +0000)]
Adapt ChangeLog for previous commit of two patches at once.

From-SVN: r186226

12 years agosh.md (*prefetch_i4, [...]): Merge into ...
Oleg Endo [Sun, 8 Apr 2012 09:35:13 +0000 (09:35 +0000)]
sh.md (*prefetch_i4, [...]): Merge into ...

* config/sh/sh.md (*prefetch_i4, prefetch_m2a): Merge into ...
(*prefetch): ... this new insn.

* gcc.target/sh/sh2a-prefetch.c: Rename to ...
* gcc.target/sh/prefetch.c: ... this.  Enable test case for m4*.

From-SVN: r186225

12 years agore PR fortran/52751 (private module variable are not exported as local)
Tobias Burnus [Sun, 8 Apr 2012 07:15:01 +0000 (09:15 +0200)]
re PR fortran/52751 (private module variable are not exported as local)

2012-04-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52751
        * trans-decl.c (gfc_finish_var_decl): Don't set TREE_PUBLIC
        for PRIVATE module variables without C-binding label.

        PR fortran/40973
        * trans-decl.c (build_function_decl): Ditto for procedures.

2012-04-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/40973
        PR fortran/52751
        * gfortran.dg/public_private_module_2.f90: New.

From-SVN: r186223

12 years agoDaily bump.
GCC Administrator [Sun, 8 Apr 2012 00:18:15 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r186222

12 years ago* es.po: Update.
Joseph Myers [Sat, 7 Apr 2012 23:02:40 +0000 (00:02 +0100)]
* es.po: Update.

From-SVN: r186217

12 years agoWstrict-aliasing-float-ref-int-obj.C: Add labels to directives.
Manuel López-Ibáñez [Sat, 7 Apr 2012 22:09:42 +0000 (22:09 +0000)]
Wstrict-aliasing-float-ref-int-obj.C: Add labels to directives.

2012-04-08  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* g++.dg/warn/Wstrict-aliasing-float-ref-int-obj.C: Add labels to
directives.

From-SVN: r186216

12 years agore PR fortran/52893 (Moving functions out of implied DO loops)
Thomas Koenig [Sat, 7 Apr 2012 16:38:11 +0000 (16:38 +0000)]
re PR fortran/52893 (Moving functions out of implied DO loops)

2012-04-07  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/52893
* frontend-passes.c:  Keep track of wether we are in an implicit
DO loop; do not do function elimination if we are.

2012-04-07  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/52893
* gfortran.dg/function_optimize_11.f90:  New test.

From-SVN: r186213

12 years agosh.h (high_life_started): Remove
Oleg Endo [Sat, 7 Apr 2012 12:03:13 +0000 (12:03 +0000)]
sh.h (high_life_started): Remove

* config/sh/sh.h (high_life_started): Remove
* config/sh/predicates.md (general_movdst_operand): Use
'reload_in_progress' instead of 'high_life_started'.
* config/sh/sh.md (divsi_inv_call, *divsi_inv_call_combine,
divsi_inv_fp): Likewise.

From-SVN: r186212

12 years agosh-protos.h (prepare_move_operands): Return void instead of int.
Oleg Endo [Sat, 7 Apr 2012 12:01:01 +0000 (12:01 +0000)]
sh-protos.h (prepare_move_operands): Return void instead of int.

* config/sh/sh-protos.h (prepare_move_operands): Return void
instead of int.
* config/sh/sh.c (prepare_move_operands): Likewise.
* config/sh/sh.md: Remove return value checks of prepare_move_operands.

From-SVN: r186211

12 years agosh-protos.h (fp_int_operand, [...]): Remove.
Oleg Endo [Sat, 7 Apr 2012 11:58:42 +0000 (11:58 +0000)]
sh-protos.h (fp_int_operand, [...]): Remove.

* config/sh/sh-protos.h (fp_int_operand, symbol_ref_operand,
general_movsrc_operand, general_movdst_operand, arith_reg_operand,
fp_arith_reg_operand, arith_operand, arith_reg_or_0_operand,
logical_operand, fpscr_operand, fpul_operand, expand_fp_branch,
commutative_float_operator, noncommutative_float_operator,
sh_handle_pragma): Remove.

From-SVN: r186210

12 years agoinvoke.texi: Clean up Texinfo markup throughout the file.
Sandra Loosemore [Sat, 7 Apr 2012 03:47:05 +0000 (23:47 -0400)]
invoke.texi: Clean up Texinfo markup throughout the file.

2012-04-06  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/invoke.texi:  Clean up Texinfo markup throughout the file.
Use @option markup on command-line options.  Use @samp markup on
literal keywords to options.  Use @code markup on code fragments.
Use other markup in preference to quotation marks in the text.
Add markup to some passages without any.

From-SVN: r186209

12 years agoDaily bump.
GCC Administrator [Sat, 7 Apr 2012 00:18:42 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r186208

12 years ago* gimple-fold.c (gimple_fold_stmt_to_constant_1): Avoid warning.
Mike Stump [Fri, 6 Apr 2012 23:00:11 +0000 (23:00 +0000)]
* gimple-fold.c (gimple_fold_stmt_to_constant_1): Avoid warning.

From-SVN: r186202

12 years ago* dg-extract-results.sh: Handle KFAILs.
Doug Evans [Fri, 6 Apr 2012 19:39:52 +0000 (19:39 +0000)]
* dg-extract-results.sh: Handle KFAILs.

From-SVN: r186200

12 years agore PR fortran/52668 (Incorrect unused warning for USE associating variable in common...
Thomas Koenig [Fri, 6 Apr 2012 18:31:11 +0000 (18:31 +0000)]
re PR fortran/52668 (Incorrect unused warning for USE associating variable in common block)

2012-04-06  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/52668
* module.c:  Only mark symbols as use_only if they have been
imported via an only list.

2012-04-06  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/52668
* gfortran.dg/use_only_6.f90: New test.

From-SVN: r186199

12 years agore PR testsuite/50722 (FAIL: gcc.dg/pr49994-3.c (test for excess errors))
Mike Stump [Fri, 6 Apr 2012 15:02:21 +0000 (15:02 +0000)]
re PR testsuite/50722 (FAIL: gcc.dg/pr49994-3.c (test for excess errors))

PR testsuite/50722
* gcc.dg/pr49994-3.c: Use -w to squelch non-portable warnings.

From-SVN: r186194

12 years agore PR c++/52596 ([C++11] internal compiler error: in lvalue_kind, at cp/tree.c:153)
Jason Merrill [Fri, 6 Apr 2012 13:25:45 +0000 (09:25 -0400)]
re PR c++/52596 ([C++11] internal compiler error: in lvalue_kind, at cp/tree.c:153)

PR c++/52596
* semantics.c (finish_non_static_data_member): In templates, pass
the decl to build_qualified_name.
* tree.c (lvalue_kind) [SCOPE_REF]: Handle FIELD_DECL.

From-SVN: r186187

12 years agoxvalue comment
Jason Merrill [Fri, 6 Apr 2012 13:25:37 +0000 (09:25 -0400)]
xvalue comment

From-SVN: r186186

12 years agosh.c (hi_const): Remove.
Oleg Endo [Fri, 6 Apr 2012 12:33:24 +0000 (12:33 +0000)]
sh.c (hi_const): Remove.

* config/sh/sh.c (hi_const): Remove.
(find_barrier, sh_reorg): Use satisfies_constraint_I16 instead
of hi_const.

From-SVN: r186185

12 years agosh-protos.h (sh_expand_t_scc): Change return type from int to bool.
Oleg Endo [Fri, 6 Apr 2012 12:29:30 +0000 (12:29 +0000)]
sh-protos.h (sh_expand_t_scc): Change return type from int to bool.

* config/sh/sh-protos.h (sh_expand_t_scc): Change return type from int
to bool.
* config/sh/sh.c (sh_expand_t_scc): Likewise.
* config/sh/sh.md (cstoresi4, cstoredi4): Remove GET_CODE checks before
calling sh_expand_t_scc.

From-SVN: r186184

12 years agosh-protos.h (fp_zero_operand, [...]): Use bool as return type.
Oleg Endo [Fri, 6 Apr 2012 12:25:03 +0000 (12:25 +0000)]
sh-protos.h (fp_zero_operand, [...]): Use bool as return type.

* config/sh/sh-protos.h (fp_zero_operand, fp_one_operand,
nonpic_symbol_mentioned_p, expand_block_move, expand_ashiftrt,
sh_dynamicalize_shift_p, gen_shl_and, gen_shl_sext, system_reg_operand,
reg_unused_after, sh_can_redirect_branch, sh_need_epilogue, fldi_ok,
sh_hard_regno_rename_ok, sh_cfun_interrupt_handler_p,
sh_cfun_resbank_handler_p, sh_attr_renesas_p, sh_cfun_attr_renesas_p,
check_use_sfunc_addr, sh_contains_memref_p, sh_loads_bankedreg_p,
sh2a_is_function_vector_call): Use bool as return type.
(sh_pass_in_reg_p): Remove.
* config/sh/sh.c (broken_move, mova_p, noncall_uses_reg, high_pressure,
flow_dependent_p, sh2a_function_vector_p, expand_block_move,
expand_ashiftrt, sh_dynamicalize_shift_p, gen_shl_and, gen_shl_sext,
sh_need_epilogue, sh2a_is_function_vector_call, sh_attr_renesas_p,
sh_cfun_attr_renesas_p, sh_cfun_interrupt_handler_p,
sh_cfun_resbank_handler_p, system_reg_operand, fp_zero_operand,
fp_one_operand, fldi_ok, reg_unused_after, sh_can_redirect_branch,
sh_hard_regno_rename_ok, check_use_sfunc_addr, sh_contains_memref_p,
sh_loads_bankedreg_p): Use bool as return type.
(nonpic_symbol_mentioned_p): Use bool as return type.  Remove
'register' modifier.

From-SVN: r186183

12 years agoinstall.texi: Correct typo "-mno-lsc" -> "-mno-llsc".
Matt Turner [Fri, 6 Apr 2012 08:22:54 +0000 (08:22 +0000)]
install.texi: Correct typo "-mno-lsc" -> "-mno-llsc".

gcc/
2012-04-04  Matt Turner  <mattst88@gmail.com>

* doc/install.texi: Correct typo "-mno-lsc" -> "-mno-llsc".

From-SVN: r186179

12 years agoia64.c (ia64_load_pair_ok): Return 0 if the second member of the destination isn...
Eric Botcazou [Fri, 6 Apr 2012 06:44:18 +0000 (06:44 +0000)]
ia64.c (ia64_load_pair_ok): Return 0 if the second member of the destination isn't also a FP_REGS register.

* config/ia64/ia64.c (ia64_load_pair_ok): Return 0 if the second member
of the destination isn't also a FP_REGS register.

From-SVN: r186177

12 years agoAvoid instructions that incur expensive length-changing prefix (LCP) stalls on some...
Teresa Johnson [Fri, 6 Apr 2012 05:03:49 +0000 (05:03 +0000)]
Avoid instructions that incur expensive length-changing prefix (LCP) stalls on some x86-64 implementations...

Avoid instructions that incur expensive length-changing prefix (LCP) stalls
on some x86-64 implementations, notably Core2 and Corei7. Specifically, a move of
a 16-bit constant into memory requires a length-changing prefix and can incur significant
penalties. Modified an old patch written by H.J to split such instructions
during peephole2.

2012-04-05  Teresa Johnson  <tejohnson@google.com>
    H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.h (ix86_tune_indices): Add
X86_TUNE_LCP_STALL.
* config/i386/i386.md (move immediate to memory peephole2):
Add cases for HImode move when LCP stall avoidance is needed.
* config/i386/i386.c (initial_ix86_tune_features): Initialize
X86_TUNE_LCP_STALL entry.

Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com>
From-SVN: r186176

12 years agoDaily bump.
GCC Administrator [Fri, 6 Apr 2012 00:17:42 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r186174

12 years agore PR target/52882 (ICE in memory_address_length, at config/i386/i386.c:23373)
Uros Bizjak [Thu, 5 Apr 2012 21:47:16 +0000 (23:47 +0200)]
re PR target/52882 (ICE in memory_address_length, at config/i386/i386.c:23373)

PR target/52882
* config/i386/i386.c (ix86_decompose_address): Allow VOIDmode
CONST_INT operands, zero-extended with AND.

testsuite/ChangeLog:

PR target/52882
* gcc.target/i386/pr52882.c: New test.

From-SVN: r186170

12 years agore PR target/50751 (SH Target: Displacement addressing does not work for QImode and...
Oleg Endo [Thu, 5 Apr 2012 18:43:45 +0000 (18:43 +0000)]
re PR target/50751 (SH Target: Displacement addressing does not work for QImode and HImode)

PR target/50751
* config/sh/sh.c (sh_find_mov_disp_adjust): Take machine_mode as the
first argument instead of mode size.  Move displacement calculations
to ...
(mov_insn_size, max_mov_insn_displacement, mov_insn_alignment_mask):
... these new functions.
(disp_adjust): Remove max_mov_disp field.
(sh_legitimate_index_p): Use max_mov_insn_displacement and
mov_insn_alignment_mask.
(sh_address_cost): Use max_mov_insn_displacement.

From-SVN: r186169

12 years agoarm.md (arch): Add neon_onlya8 and neon_nota8.
Andrew Stubbs [Thu, 5 Apr 2012 14:37:45 +0000 (14:37 +0000)]
arm.md (arch): Add neon_onlya8 and neon_nota8.

2012-04-05  Andrew Stubbs  <ams@codesourcery.com>

gcc/
* config/arm/arm.md (arch): Add neon_onlya8 and neon_nota8.
(arch_enabled): Handle new arch types.
(one_cmpldi2): Add NEON support.

From-SVN: r186167

12 years agolto-lang.c (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Remove definition.
Richard Guenther [Thu, 5 Apr 2012 14:22:26 +0000 (14:22 +0000)]
lto-lang.c (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Remove definition.

2012-04-05  Richard Guenther  <rguenther@suse.de>

* lto-lang.c (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Remove
definition.

From-SVN: r186166

12 years agogimple.c (walk_gimple_op): Compute val_only for the LHS of an assigment in the canoni...
Richard Guenther [Thu, 5 Apr 2012 13:38:47 +0000 (13:38 +0000)]
gimple.c (walk_gimple_op): Compute val_only for the LHS of an assigment in the canonical way...

2012-04-05  Richard Guenther  <rguenther@suse.de>

* gimple.c (walk_gimple_op): Compute val_only for the LHS
of an assigment in the canonical way, avoiding is_gimple_mem_rhs.
(is_gimple_mem_rhs, is_gimple_reg_rhs, is_gimple_stmt): Move ...
* gimplify.c (is_gimple_mem_rhs, is_gimple_reg_rhs, is_gimple_stmt):
... here and make static.
* gimple.h (is_gimple_mem_rhs, is_gimple_reg_rhs, is_gimple_stmt):
Remove.

From-SVN: r186165

12 years agotree-ssa-dse.c (dse_optimize_stmt): Remember the stmt basic-block before removing it.
Richard Guenther [Thu, 5 Apr 2012 12:43:25 +0000 (12:43 +0000)]
tree-ssa-dse.c (dse_optimize_stmt): Remember the stmt basic-block before removing it.

2012-04-05  Richard Guenther  <rguenther@suse.de>

* tree-ssa-dse.c (dse_optimize_stmt): Remember the stmt
basic-block before removing it.

From-SVN: r186164