gcc.git
13 years agore PR c++/46400 (g++ Segmentation Fault on heavily templated project.)
Jakub Jelinek [Fri, 24 Jun 2011 21:11:16 +0000 (23:11 +0200)]
re PR c++/46400 (g++ Segmentation Fault on heavily templated project.)

PR c++/46400
* cp-tree.h (union lang_tree_node): Use TYPE_NEXT_VARIANT
instead of TYPE_CHAIN for chain_next for types.

* c-decl.c (union lang_tree_node): Use TYPE_NEXT_VARIANT
instead of TYPE_CHAIN for chain_next for types.

From-SVN: r175389

13 years agosparc: Fix -mflat unwind info.
Richard Henderson [Fri, 24 Jun 2011 19:53:21 +0000 (12:53 -0700)]
sparc: Fix -mflat unwind info.

The old definition left a 2 instruction hole in which
unwind info was out-of-date.

From-SVN: r175388

13 years agore PR rtl-optimization/49429 (dse.c change (r175063) causes execution failures)
Easwaran Raman [Fri, 24 Jun 2011 17:10:18 +0000 (17:10 +0000)]
re PR rtl-optimization/49429 (dse.c change (r175063) causes execution failures)

2011-06-24  Easwaran Raman  <eraman@google.com>

      PR rtl-optimization/49429
      PR target/49454
      * expr.c (emit_block_move_hints):  Mark MEM_EXPR(x) and
      MEM_EXPR(y) addressable if emit_block_move_via_libcall is
      used to copy y into x.
      * calls.c (initialize_argument_information): Mark
      an argument addressable if it is passed by invisible reference.
      (emit_library_call_value_1): Mark  MEM_EXPR (val) addressable
      if it is passed by reference.

From-SVN: r175384

13 years agoProperly handle pointer addition/subtraction in num_sign_bit_copies1.
H.J. Lu [Fri, 24 Jun 2011 15:26:33 +0000 (15:26 +0000)]
Properly handle pointer addition/subtraction in num_sign_bit_copies1.

From-SVN: r175383

13 years ago* de.po: Update.
Joseph Myers [Fri, 24 Jun 2011 14:23:21 +0000 (15:23 +0100)]
* de.po: Update.

From-SVN: r175379

13 years agoRemove entry for gofrontend change which should not be here.
Ian Lance Taylor [Fri, 24 Jun 2011 14:09:18 +0000 (14:09 +0000)]
Remove entry for gofrontend change which should not be here.

From-SVN: r175378

13 years agoProperly handle pointer addition/subtraction.
H.J. Lu [Fri, 24 Jun 2011 13:41:40 +0000 (13:41 +0000)]
Properly handle pointer addition/subtraction.

2011-06-24  H.J. Lu  <hongjiu.lu@intel.com>

PR rtl-optimization/49504
* rtlanal.c (nonzero_bits1): Properly handle addition or
subtraction a pointer in Pmode if pointers extend unsigned.

From-SVN: r175377

13 years agore PR tree-optimization/49516 (SRA generates memory references into its replacements)
Martin Jambor [Fri, 24 Jun 2011 13:27:44 +0000 (15:27 +0200)]
re PR tree-optimization/49516 (SRA generates memory references into its replacements)

2011-06-24  Martin Jambor  <mjambor@suse.cz>

PR tree-optimizations/49516
* tree-sra.c (sra_modify_assign): Choose the safe path for
aggregate copies if we also did scalar replacements.

* testsuite/g++.dg/tree-ssa/pr49516.C: New test.

From-SVN: r175376

13 years agore PR target/49335 (ARM: Invalid assembler generated while compiling C++ code from...
Ramana Radhakrishnan [Fri, 24 Jun 2011 13:15:08 +0000 (13:15 +0000)]
re PR target/49335 (ARM: Invalid assembler generated while compiling C++ code from 'codeblocks')

Fix PR target/49335

2011-06-24  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

PR target/49335
* config/arm/predicates.md (add_operator): New.
* config/arm/arm.md ("*arith_shiftsi"): Fix for SP reg usage
in Thumb2.

From-SVN: r175375

13 years ago* repro_fail: New.
Diego Novillo [Fri, 24 Jun 2011 13:11:31 +0000 (09:11 -0400)]
* repro_fail: New.

From-SVN: r175374

13 years agoname-lookup.h (cp_binding_level): Removed unused member names_size.
Gabriel Charette [Fri, 24 Jun 2011 13:06:10 +0000 (13:06 +0000)]
name-lookup.h (cp_binding_level): Removed unused member names_size.

2011-06-23  Gabriel Charette  <gchare@google.com>

* name-lookup.h (cp_binding_level): Removed unused
member names_size. Update all users.

From-SVN: r175373

13 years ago* config/avr/avr.md (*extzv): Fix leading white space.
Georg-Johann Lay [Fri, 24 Jun 2011 12:48:39 +0000 (12:48 +0000)]
* config/avr/avr.md (*extzv): Fix leading white space.

From-SVN: r175372

13 years agoImprove dump files for SRA early candidate check v2
Andi Kleen [Fri, 24 Jun 2011 07:45:37 +0000 (07:45 +0000)]
Improve dump files for SRA early candidate check v2

v2: Include message improvements from Eric Botcazou

gcc/:
2011-06-24  Andi Kleen  <ak@linux.intel.com>

* tree-sra.c (type_internals_preclude_sra_p): Add msg
parameter. Split up ifs and report reason in *msg.
(reject): Add.
(find_var_candiate): Add msg variable.
Split up ifs and report reason to reject.
(find_param_candidates): Add msg variable.
Pass msg to type_internals_preclude_sra_p.

From-SVN: r175370

13 years agore PR c++/49418 (G++ discards cv-quals from template parameter types)
Jason Merrill [Fri, 24 Jun 2011 02:18:42 +0000 (22:18 -0400)]
re PR c++/49418 (G++ discards cv-quals from template parameter types)

PR c++/49418
* typeck2.c (build_functional_cast): Strip cv-quals for value init.
* init.c (build_zero_init_1): Not here.

From-SVN: r175368

13 years agore PR c++/35255 ([DR 115] gcc does not do partial ordering on overloaded address...
Jason Merrill [Fri, 24 Jun 2011 02:13:41 +0000 (22:13 -0400)]
re PR c++/35255 ([DR 115] gcc does not do partial ordering on overloaded address resolution)

PR c++/35255
* pt.c (resolve_overloaded_unification): Fix DR 115 handling.

From-SVN: r175367

13 years agoDaily bump.
GCC Administrator [Fri, 24 Jun 2011 00:18:59 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r175362

13 years ago* de.po: Update.
Joseph Myers [Thu, 23 Jun 2011 22:30:21 +0000 (23:30 +0100)]
* de.po: Update.

From-SVN: r175355

13 years agore PR middle-end/48770 (wrong code with -O -fprofile-arcs -fPIC -fno-dce -fno-forward...
Jeff Law [Thu, 23 Jun 2011 21:30:20 +0000 (15:30 -0600)]
re PR middle-end/48770 (wrong code with -O -fprofile-arcs -fPIC -fno-dce -fno-forward-propagate -fno-tree-forwprop)

PR middle-end/48770
* reload.h (reload): Change to return a bool.
* ira.c (ira): If requested by reload, run a fast DCE pass after
reload has completed.  Fix comment typo.
* reload1.c (need_dce): New file scoped static.
(reload): Set reload_completed here.  Return whether or not a DCE
pass after reload is needed.
(delete_dead_insn): Set need_dce as needed.

PR middle-end/48770
* gcc.dg/pr48770.c: New test.

From-SVN: r175353

13 years agore PR middle-end/49465 (Revision 175114 miscompiled 403.gcc in SPEC CPU 2006)
Jeff Law [Thu, 23 Jun 2011 21:26:04 +0000 (15:26 -0600)]
re PR middle-end/49465 (Revision 175114 miscompiled 403.gcc in SPEC CPU 2006)

PR middle-end/49465
* tree-ssa-threadupate.c (fix_duplicate_block_edges): Fix condition
to detect threading through joiner block.  If there was already
an edge to the new target, then do not change the PHI nodes.

From-SVN: r175352

13 years agore PR middle-end/49465 (Revision 175114 miscompiled 403.gcc in SPEC CPU 2006)
Jeff Law [Thu, 23 Jun 2011 20:26:07 +0000 (14:26 -0600)]
re PR middle-end/49465 (Revision 175114 miscompiled 403.gcc in SPEC CPU 2006)

PR middle-end/49465
* tree-ssa-threadupate.c (fix_duplicate_block_edges): Fix condition
to detect threading through joiner block.  If there was already
an edge to the new target, then do not change the PHI nodes.

*************** fix_duplicate_block_edges (struct redire

From-SVN: r175351

13 years agore PR middle-end/49373 (Many testcase failures)
Jan Hubicka [Thu, 23 Jun 2011 19:41:26 +0000 (21:41 +0200)]
re PR middle-end/49373 (Many testcase failures)

PR middle-end/49373
* g++.dg/torture/pr43879-1_1.C: Revert the xfail introduced yesterday.

From-SVN: r175350

13 years agotree-vect-data-refs.c (vect_compute_data_ref_alignment): Use get_pointer_alignment...
Jakub Jelinek [Thu, 23 Jun 2011 18:52:58 +0000 (20:52 +0200)]
tree-vect-data-refs.c (vect_compute_data_ref_alignment): Use get_pointer_alignment to see if base isn't sufficiently aligned.

* tree-vect-data-refs.c (vect_compute_data_ref_alignment): Use
get_pointer_alignment to see if base isn't sufficiently aligned.

From-SVN: r175348

13 years agore PR testsuite/49512 (FAIL: gcc.dg/tree-ssa/asm-1.c)
Jakub Jelinek [Thu, 23 Jun 2011 18:51:49 +0000 (20:51 +0200)]
re PR testsuite/49512 (FAIL: gcc.dg/tree-ssa/asm-1.c)

PR testsuite/49512
* gcc.dg/tree-ssa/asm-1.c: Use -fdump-tree-optimized-nouid
instead of -fdump-tree-optimized.

From-SVN: r175347

13 years agore PR c++/44625 (ICE after error: anonymous struct not inside named type)
Paolo Carlini [Thu, 23 Jun 2011 16:58:28 +0000 (16:58 +0000)]
re PR c++/44625 (ICE after error: anonymous struct not inside named type)

/cp
2011-06-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/44625
* decl2.c (build_anon_union_vars): Early return error_mark_node
for a nested anonymous struct.

/testsuite
2011-06-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/44625
* g++.dg/template/crash107.C: New.
* g++.dg/template/error17.C: Adjust.

From-SVN: r175344

13 years agore PR c++/49507 (ICE because of defaulted template destructor)
Jason Merrill [Thu, 23 Jun 2011 16:53:03 +0000 (12:53 -0400)]
re PR c++/49507 (ICE because of defaulted template destructor)

PR c++/49507
* decl2.c (mark_used): Don't call synthesize_method for
functions defaulted outside the class.

From-SVN: r175342

13 years agooptimize.c (maybe_clone_body): Set linkage flags before cgraph_same_body_alias.
Jason Merrill [Thu, 23 Jun 2011 16:52:56 +0000 (12:52 -0400)]
optimize.c (maybe_clone_body): Set linkage flags before cgraph_same_body_alias.

* optimize.c (maybe_clone_body): Set linkage flags before
cgraph_same_body_alias.

From-SVN: r175341

13 years agore PR c++/49440 (Invalid dynamic_cast for unnamed namespace)
Jason Merrill [Thu, 23 Jun 2011 16:52:48 +0000 (12:52 -0400)]
re PR c++/49440 (Invalid dynamic_cast for unnamed namespace)

PR c++/49440
* class.c (set_linkage_according_to_type): Just check TREE_PUBLIC
on the type's name.

From-SVN: r175340

13 years agore PR c++/49395 (Non-class prvalues seem to have cv-qualification with GCC)
Jason Merrill [Thu, 23 Jun 2011 16:52:41 +0000 (12:52 -0400)]
re PR c++/49395 (Non-class prvalues seem to have cv-qualification with GCC)

PR c++/49395
* init.c (build_zero_init_1): Strip cv-quals from scalar types.

From-SVN: r175339

13 years agore PR c++/36435 (Partial ordering of explicit specialization should include return...
Jason Merrill [Thu, 23 Jun 2011 16:52:32 +0000 (12:52 -0400)]
re PR c++/36435 (Partial ordering of explicit specialization should include return type)

PR c++/36435
* pt.c (most_specialized_instantiation): Do check return types.

From-SVN: r175338

13 years agore PR middle-end/49373 (Many testcase failures)
Jan Hubicka [Thu, 23 Jun 2011 16:45:08 +0000 (18:45 +0200)]
re PR middle-end/49373 (Many testcase failures)

PR tree-optimize/49373
* tree-pass.h (all_late_ipa_passes): Declare.
* cgraphunit.c (init_lowered_empty_function): Fix properties.
(cgraph_optimize): Execute late passes; remove unreachable funcions after
materialization.
* ipa-inline.c (gate_ipa_inline): Enable only when optimizing or LTOing.
* passes.c (all_late_ipa_passes): Declare.
(dump_passes, register_pass): Handle late ipa passes.
(init_optimization_passes): Move ipa_pta to late passes; schedule fixup_cfg
at beggining of all_passes.
(apply_ipa_transforms): New function.
(execute_one_pass): When doing simple ipa pass, apply all transforms.

From-SVN: r175336

13 years agoparams.c: Include common/common-target.h.
Joseph Myers [Thu, 23 Jun 2011 10:41:42 +0000 (11:41 +0100)]
params.c: Include common/common-target.h.

* params.c: Include common/common-target.h.  Don't include tm.h.
(lang_independent_params): Move from toplev.c.
(global_init_params): New.
* params.h (global_init_params): Declare.
* target.def (default_params): Move to common-target.def.
* toplev.c (lang_independent_options): Remove.
(lang_independent_params): Move to params.c.
(general_init): Use global_init_params.
* common/common-target.def (option_default_params): Move from
target.def.
* common/config/ia64/ia64-common.c: Include params.h.
(ia64_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): Move
from ia64.c.
* common/config/rs6000/rs6000-common.c: Include params.h.
(rs6000_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): Move
from rs6000.c.
* common/config/sh/sh-common.c: Include params.h.
(sh_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): Move
from sh.c.
* common/config/spu/spu-common.c: Include params.h.
(spu_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): Move
from spu.c.
* config/ia64/ia64.c (ia64_option_default_params,
TARGET_OPTION_DEFAULT_PARAMS): Move to ia64-common.c.
* config/rs6000/rs6000.c (rs6000_option_default_params,
TARGET_OPTION_DEFAULT_PARAMS): Move to rs6000-common.c.
* config/sh/sh.c (sh_option_default_params,
TARGET_OPTION_DEFAULT_PARAMS): Move to sh-common.c.
* config/spu/spu.c (spu_option_default_params,
TARGET_OPTION_DEFAULT_PARAMS): Move to spu-common.c.
* Makefile.in (OBJS): Remove params.o.
(OBJS-libcommon-target): Add params.o.
(params.o, $(common_out_object_file)): Update dependencies.
* doc/tm.texi: Regenerate.

From-SVN: r175330

13 years agotie2.cc: Fix for C++0x mode.
Jonathan Wakely [Thu, 23 Jun 2011 10:32:23 +0000 (10:32 +0000)]
tie2.cc: Fix for C++0x mode.

2011-06-23  Jonathan Wakely  <jwakely.gcc@gmail.com>

* testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for
C++0x mode.
* testsuite/25_algorithms/sort/35588.cc: Likewise.
* testsuite/26_numerics/headers/complex/synopsis.cc: Likewise.

From-SVN: r175329

13 years agore PR bootstrap/49383 (powerpc64-linux bootstrap failure due to ice in cgraph_only_ca...
Alan Modra [Thu, 23 Jun 2011 02:21:01 +0000 (11:51 +0930)]
re PR bootstrap/49383 (powerpc64-linux bootstrap failure due to ice in cgraph_only_called_directly_p)

PR bootstrap/49383
* config/rs6000/rs6000.c (call_ABI_of_interest): Adjust cgraph
invocation for 2011-06-09 changes.

From-SVN: r175328

13 years agoDaily bump.
GCC Administrator [Thu, 23 Jun 2011 00:18:34 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r175327

13 years agosocket.cc: Use variable and remove attribute.
Jonathan Wakely [Wed, 22 Jun 2011 22:46:14 +0000 (22:46 +0000)]
socket.cc: Use variable and remove attribute.

2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>

* testsuite/20_util/bind/socket.cc: Use variable and remove attribute.

From-SVN: r175322

13 years agopat_trie_base.hpp: Avoid -Wall warning.
Paolo Carlini [Wed, 22 Jun 2011 22:28:56 +0000 (22:28 +0000)]
pat_trie_base.hpp: Avoid -Wall warning.

2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>

* include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall
warning.

From-SVN: r175321

13 years agoinvoke.cc: Avoid -Wall warnings.
Paolo Carlini [Wed, 22 Jun 2011 21:46:17 +0000 (21:46 +0000)]
invoke.cc: Avoid -Wall warnings.

2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings.
* testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
* testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
* testsuite/20_util/allocator_traits/members/allocate_hint.cc:
Likewise.
* testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
* testsuite/20_util/bind/socket.cc: Likewise.
* testsuite/20_util/pointer_traits/pointer_to.cc: Likewise.
* testsuite/util/testsuite_random.h: Likewise.

From-SVN: r175318

13 years agore PR middle-end/49373 (Many testcase failures)
Hans-Peter Nilsson [Wed, 22 Jun 2011 21:38:20 +0000 (21:38 +0000)]
re PR middle-end/49373 (Many testcase failures)

PR middle-end/49373
* g++.dg/torture/pr43879-1_1.C: Xfail for -O1 and above, except -flto.

From-SVN: r175317

13 years agore PR regression/47836 (Some Cross Compiler can't build target-libiberty or target...
Hans-Peter Nilsson [Wed, 22 Jun 2011 21:30:19 +0000 (21:30 +0000)]
re PR regression/47836 (Some Cross Compiler can't build target-libiberty or target-zlib)

PR regression/47836
PR bootstrap/23656
PR other/47733
PR bootstrap/49247
PR c/48825
* configure.ac (target_libraries): Remove target-libiberty.
Remove case-statement setting skipdirs=target-libiberty for
multiple targets.  Remove checking target_configdirs and
removing target-libiberty but keeping target-libgcc if
otherwise empty.
* Makefile.def (target_modules): Don't add libiberty.
(dependencies): Remove all traces of target-libiberty.
* configure, Makefile.in: Regenerate.
(add missing PR annotation in the ChangeLog entry)

From-SVN: r175316

13 years agore PR libgomp/49490 (suboptimal load balancing in loops)
Jakub Jelinek [Wed, 22 Jun 2011 20:39:25 +0000 (22:39 +0200)]
re PR libgomp/49490 (suboptimal load balancing in loops)

PR libgomp/49490
* omp-low.c (expand_omp_for_static_nochunk): Only
use n ceil/ nthreads size for the first
n % nthreads threads in the team instead of
all threads except for the last few ones which
get less work or none at all.

* iter.c (gomp_iter_static_next): For chunk size 0
only use n ceil/ nthreads size for the first
n % nthreads threads in the team instead of
all threads except for the last few ones which
get less work or none at all.
* iter_ull.c (gomp_iter_ull_static_next): Likewise.
* env.c (parse_schedule): If OMP_SCHEDULE doesn't have
chunk argument, set run_sched_modifier to 0 for static
resp. 1 for other kinds.  If chunk argument is 0
and not static, set value to 1.

From-SVN: r175315

13 years agore PR debug/49496 (-fcompare-debug failure (length) with -O -ftree-vectorize)
Jakub Jelinek [Wed, 22 Jun 2011 20:37:54 +0000 (22:37 +0200)]
re PR debug/49496 (-fcompare-debug failure (length) with -O -ftree-vectorize)

PR debug/49496
* tree-vect-patterns.c (vect_recog_widen_mult_pattern): Ignore debug
uses.

* gcc.dg/pr49496.c: New test.

From-SVN: r175314

13 years agoscd42-3.c: Allow -march-xscale; skip if -mcpu is not xscale.
Janis Johnson [Wed, 22 Jun 2011 20:29:53 +0000 (20:29 +0000)]
scd42-3.c: Allow -march-xscale; skip if -mcpu is not xscale.

* gcc.target/arm/scd42-3.c: Allow -march-xscale; skip if -mcpu
is not xscale.

From-SVN: r175312

13 years ago* gcc.target/arm/thumb-bitfld1.c: Don't specify -march, require thumb1.
Janis Johnson [Wed, 22 Jun 2011 20:28:29 +0000 (20:28 +0000)]
* gcc.target/arm/thumb-bitfld1.c: Don't specify -march, require thumb1.

From-SVN: r175311

13 years agoctz.c: Don't specify -march, require thumb2.
Janis Johnson [Wed, 22 Jun 2011 20:27:40 +0000 (20:27 +0000)]
ctz.c: Don't specify -march, require thumb2.

* gcc.target/arm/ctz.c: Don't specify -march, require thumb2.
* gcc.target/arm/pr42879.c: Likewise.
* gcc.target/arm/pr45701-3.c: Likewise.

From-SVN: r175310

13 years agostl_construct.h: Update Copyright years.
Paolo Carlini [Wed, 22 Jun 2011 20:27:21 +0000 (20:27 +0000)]
stl_construct.h: Update Copyright years.

2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/stl_construct.h: Update Copyright years.
* include/bits/stl_uninitialized.h: Likewise.

From-SVN: r175309

13 years ago20031108-1.c: Require thumb1 or thumb2.
Janis Johnson [Wed, 22 Jun 2011 20:26:35 +0000 (20:26 +0000)]
20031108-1.c: Require thumb1 or thumb2.

* gcc.target/arm/20031108-1.c: Require thumb1 or thumb2.
* gcc.target/arm/pr40482.c: Likewise.
* gcc.target/arm/stack-corruption.c: Likewise.

From-SVN: r175308

13 years agore PR regression/47836 (Some Cross Compiler can't build target-libiberty or target...
Hans-Peter Nilsson [Wed, 22 Jun 2011 20:17:47 +0000 (20:17 +0000)]
re PR regression/47836 (Some Cross Compiler can't build target-libiberty or target-zlib)

PR regression/47836
PR bootstrap/23656
PR other/47733
PR bootstrap/49247
* configure.ac (target_libraries): Remove target-libiberty.
Remove case-statement setting skipdirs=target-libiberty for
multiple targets.  Remove checking target_configdirs and
removing target-libiberty but keeping target-libgcc if
otherwise empty.
* Makefile.def (target_modules): Don't add libiberty.
(dependencies): Remove all traces of target-libiberty.
* configure, Makefile.in: Regenerate.
(fixing PR annotations in the ChangeLog entry)

From-SVN: r175307

13 years agoMakefile.am: Add alloc_traits.h headers.
Jonathan Wakely [Wed, 22 Jun 2011 19:57:12 +0000 (19:57 +0000)]
Makefile.am: Add alloc_traits.h headers.

2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>

* include/Makefile.am: Add alloc_traits.h headers.
* include/Makefile.in: Regenerate.
* include/std/memory: Include uses_allocator.h explicitly.
* include/bits/allocator.h (allocator_traits): Move to ...
* include/bits/alloc_traits.h: New header.
* include/ext/alloc_traits.h (__alloc_traits): Extension to provide
a common allocator interface for C++98 and C++0x.
* include/bits/stl_construct.h: Use __alloc_traits.
* include/bits/stl_uninitialized.h: Likewise.

From-SVN: r175305

13 years agore PR regression/47836 (Some Cross Compiler can't build target-libiberty or target...
Hans-Peter Nilsson [Wed, 22 Jun 2011 19:40:45 +0000 (19:40 +0000)]
re PR regression/47836 (Some Cross Compiler can't build target-libiberty or target-zlib)

PR47836
PR23656
PR47733
PR49247
* configure.ac (target_libraries): Remove target-libiberty.
Remove case-statement setting skipdirs=target-libiberty for
multiple targets.  Remove checking target_configdirs and
removing target-libiberty but keeping target-libgcc if
otherwise empty.
* Makefile.def (target_modules): Don't add libiberty.
(dependencies): Remove all traces of target-libiberty.
* configure, Makefile.in: Regenerate.

From-SVN: r175304

13 years agore PR tree-optimization/49493 (ICE: in insert_vi_for_tree, at tree-ssa-structalias...
Richard Guenther [Wed, 22 Jun 2011 18:02:06 +0000 (18:02 +0000)]
re PR tree-optimization/49493 (ICE: in insert_vi_for_tree, at tree-ssa-structalias.c:2637 with -O -fipa-pta)

2011-06-22  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/49493
* tree-ssa-structalias.c (get_constraint_for_ssa_var):
Refer to the alias target of variables.
(associate_varinfo_to_alias_1): Remove.
(ipa_pta_execute): Do not associate aliases with anything.
* cgraph.h (varpool_alias_aliased_node): Fix cut&paste errors.
(cgraph_function_node): Likewise.
(cgraph_function_or_thunk_node): Likewise.
(varpool_variable_node): Likewise.

* gcc.dg/ipa/ipa-pta-17.c: New testcase.

From-SVN: r175300

13 years agoRevert:
Uros Bizjak [Wed, 22 Jun 2011 17:27:07 +0000 (19:27 +0200)]
Revert:

2011-06-22  Uros Bizjak  <ubizjak@gmail.com>

* gcc.dg/torture/tls/run-le.c: Skip for -pie on alpha*-*-linux*.
* gcc.dg/torture/tls/tls-test.c: Ditto.
* gcc.dg/torture/tls/thr-init-1.c: Ditto.
* gcc.dg/torture/tls/thr-init-2.c: Ditto.

Co-Authored-By: Dmitry Melnik <dm@ispras.ru>
From-SVN: r175299

13 years agoarm.h (OPTION_DEFAULT_SPECS): Fix -mtls-dialect typo.
Nathan Sidwell [Wed, 22 Jun 2011 17:01:17 +0000 (17:01 +0000)]
arm.h (OPTION_DEFAULT_SPECS): Fix -mtls-dialect typo.

* config/arm/arm.h (OPTION_DEFAULT_SPECS): Fix -mtls-dialect
typo.
* config.gcc (arm*-*-linux*): Default to gnu tls.
(arm*-*-*): Add --with-tls option.
(all_defaults): Add 'tls'.

From-SVN: r175298

13 years agoreg-notes.def (REG_CFA_WINDOW_SAVE): New.
Richard Henderson [Wed, 22 Jun 2011 16:26:52 +0000 (09:26 -0700)]
reg-notes.def (REG_CFA_WINDOW_SAVE): New.

* reg-notes.def (REG_CFA_WINDOW_SAVE): New.
* dwarf2out.c (dwarf2out_frame_debug): Handle it.
(dwarf2out_frame_debug_cfa_window_save): Rename from
dwarf2out_window_save; make static.
* tree.h (dwarf2out_window_save): Don't declare.

* config/sparc/sparc.c (sparc_dwarf_handle_frame_unspec): Remove.
(TARGET_DWARF_HANDLE_FRAME_UNSPEC): Remove.
(emit_save_register_window): Rename from gen_save_register_window;
emit the insn and add REG_CFA_* notes.
(sparc_expand_prologue): Update to match.
* config/sparc/sparc.md (save_register_window_1): Simplify from
save_register_window<P:mode>.

From-SVN: r175297

13 years agore PR c++/49260 ([C++0x] lambda-eh2.C fails execution)
Jason Merrill [Wed, 22 Jun 2011 15:55:22 +0000 (11:55 -0400)]
re PR c++/49260 ([C++0x] lambda-eh2.C fails execution)

PR c++/49260
* call.c (build_call_a): Set cp_function_chain->can_throw here.
(build_cxx_call): Not here.

From-SVN: r175296

13 years agoCheck TARGET_PARTIAL_REG_STALL in imul to lea peepholes.
H.J. Lu [Wed, 22 Jun 2011 15:29:43 +0000 (15:29 +0000)]
Check TARGET_PARTIAL_REG_STALL in imul to lea peepholes.

2011-06-22  H.J. Lu  <hongjiu.lu@intel.com>

PR target/49497
* config/i386/i386.md (*lea_general_2): Always allow SImode.
(*lea_general_2_zext): Likewise.
(imul to lea peepholes): Use const359_operand and check
TARGET_PARTIAL_REG_STALL.

* config/i386/predicates.md (const359_operand): New.

From-SVN: r175295

13 years ago* cgraphunit.c (assemble_thunk): Use correct return type.
Michael Matz [Wed, 22 Jun 2011 13:59:03 +0000 (13:59 +0000)]
* cgraphunit.c (assemble_thunk): Use correct return type.

From-SVN: r175294

13 years agoarm.c (neon_immediate_valid_for_shift): New function.
Dmitry Plotnikov [Wed, 22 Jun 2011 11:57:52 +0000 (11:57 +0000)]
arm.c (neon_immediate_valid_for_shift): New function.

2011-06-22  Dmitry Plotnikov  <dplotnikov@ispras.ru>
Dmitry Melnik  <dm@ispras.ru>

* config/arm/arm.c (neon_immediate_valid_for_shift): New function.
(neon_output_shift_immediate): Ditto.
* config/arm/arm-protos.h (neon_immediate_valid_for_shift): New
prototype.
(neon_output_shift_immediate): Ditto.
* config/arm/neon.md (vashl<mode>3): Modified constraint.
(vashr<mode>3_imm): New insn pattern.
(vlshr<mode>3_imm): Ditto.
(vashr<mode>3): Modified constraint.
(vlshr<mode>3): Ditto.
* config/arm/predicates.md (imm_for_neon_lshift_operand): New
predicate.
(imm_for_neon_rshift_operand): Ditto.
(imm_lshift_or_reg_neon): Ditto.
(imm_rshift_or_reg_neon): Ditto.

* optabs.c (init_optabs): Init optab codes for vashl, vashr, vlshr.

testsuite:

* gcc.target/arm/neon-vshr-imm-1.c: New testcase.
* gcc.target/arm/neon-vshl-imm-1.c: New testcase.
* gcc.target/arm/neon-vlshr-imm-1.c: New testcase.

Co-Authored-By: Dmitry Melnik <dm@ispras.ru>
From-SVN: r175293

13 years agoenable-execute-stack-empty.c (__enable_execute_stack): Add prototype.
Uros Bizjak [Wed, 22 Jun 2011 11:20:07 +0000 (13:20 +0200)]
enable-execute-stack-empty.c (__enable_execute_stack): Add prototype.

* enable-execute-stack-empty.c (__enable_execute_stack): Add prototype.

From-SVN: r175292

13 years agorun-le.c: Skip for -pie on alpha*-*-linux*.
Uros Bizjak [Wed, 22 Jun 2011 11:16:16 +0000 (13:16 +0200)]
run-le.c: Skip for -pie on alpha*-*-linux*.

* gcc.dg/torture/tls/run-le.c: Skip for -pie on alpha*-*-linux*.
* gcc.dg/torture/tls/tls-test.c: Ditto.
* gcc.dg/torture/tls/thr-init-1.c: Ditto.
* gcc.dg/torture/tls/thr-init-1.c: Ditto.

From-SVN: r175291

13 years agotree-ssa-ccp.c (evaluate_stmt): Try bitwise tracking for builtin calls even if likely...
Jakub Jelinek [Wed, 22 Jun 2011 10:46:36 +0000 (12:46 +0200)]
tree-ssa-ccp.c (evaluate_stmt): Try bitwise tracking for builtin calls even if likelyvalue is not CONSTANT.

* tree-ssa-ccp.c (evaluate_stmt): Try bitwise tracking for
builtin calls even if likelyvalue is not CONSTANT.
Handle BUILT_IN_STRDUP and BUILT_IN_STRNDUP like BUILT_IN_MALLOC.
Return get_value_for_expr of first operand
for BUILT_IN_{MEM{CPY,MOVE,SET},STR{,N}CPY}{,_CHK}.
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle
BUILT_IN_{MEM{{,P}CPY,MOVE,SET},STR{,N}C{PY,AT},STPCPY}_CHK like
their non-checking counterparts.
(call_may_clobber_ref_p_1): Likewise.
(stmt_kills_ref_p_1): Handle BUILT_IN_MEM{{,P}CPY,MOVE,SET}_CHK
like their non-checking counterparts.
* tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
Handle BUILT_IN_{MEM{{,P}CPY,MOVE,SET},STR{,N}C{PY,AT},STPCPY}_CHK
like their non-checking counterparts.
(find_func_clobbers): Likewise.
* tree-ssa-dce.c (propagate_necessity): Handle BUILT_IN_MEMSET_CHK
like BUILT_IN_MEMSET and BUILT_IN_CALLOC like BUILT_IN_MALLOC.

From-SVN: r175290

13 years agodwarf2out.c (size_of_loc_descr, [...]): Allow DW_OP_GNU_convert and DW_OP_GNU_reinter...
Jakub Jelinek [Wed, 22 Jun 2011 10:44:56 +0000 (12:44 +0200)]
dwarf2out.c (size_of_loc_descr, [...]): Allow DW_OP_GNU_convert and DW_OP_GNU_reinterpret to use constant instead of...

* dwarf2out.c (size_of_loc_descr, output_loc_operands,
mark_base_types, hash_loc_operands, compare_loc_operands): Allow
DW_OP_GNU_convert and DW_OP_GNU_reinterpret to use constant instead
of base type reference as argument.
(resolve_addr_in_expr): Likewise.  Fix keep computation.
(convert_descriptor_to_signed): Renamed to...
(convert_descriptor_to_mode): ... this.  For wider types convert
to unsigned instead of signed, for <= DWARF2_ADDR_SIZE convert to
untyped.
(typed_binop): New function.
(scompare_loc_descriptor, ucompare_loc_descriptor,
minmax_loc_descriptor, mem_loc_descriptor): For wider integer modes
default to unsigned type instead of signed.

From-SVN: r175289

13 years agore PR debug/47858 (IPA-SRA decreases quality of debug info)
Jakub Jelinek [Wed, 22 Jun 2011 10:41:58 +0000 (12:41 +0200)]
re PR debug/47858 (IPA-SRA decreases quality of debug info)

PR debug/47858
* gimple.h (enum gimple_debug_subcode): Add GIMPLE_DEBUG_SOURCE_BIND.
(gimple_build_debug_source_bind_stat): New prototype.
(gimple_build_debug_source_bind): Define.
(gimple_debug_source_bind_p, gimple_debug_source_bind_get_var,
gimple_debug_source_bind_get_value,
gimple_debug_source_bind_get_value_ptr,
gimple_debug_source_bind_set_var,
gimple_debug_source_bind_set_value): New inlines.
* gimple.c (gimple_build_debug_source_bind_stat): New function.
* gimple-pretty-print.c (dump_gimple_debug): Handle
GIMPLE_DEBUG_SOURCE_BIND.
* sese.c (rename_uses): Handle gimple_debug_source_bind_p.
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Likewise.
* tree-parloops.c (eliminate_local_variables,
separate_decls_in_region): Likewise.
(separate_decls_in_region_debug): Renamed from
separate_decls_in_region_debug_bind.  Handle
gimple_debug_source_bind_p.
* tree.h (decl_debug_args_lookup, decl_debug_args_insert): New
prototypes.
(DECL_HAS_DEBUG_ARGS_P): Define.
(struct tree_function_decl): Add has_debug_args_flag field.
* tree.c (debug_args_for_decl): New variable.
(decl_debug_args_lookup, decl_debug_args_insert): New functions.
* tree-into-ssa.c (mark_def_sites): Handle uses in debug stmts.
(rewrite_debug_stmt_uses): New function.
(rewrite_stmt): Use it to rewrite debug stmt uses.
* rtl.def (DEBUG_PARAMETER_REF): New.
* rtl.h (DEBUG_PARAMETER_REF_DECL): Define.
* cselib.c (rtx_equal_for_cselib_1, cselib_hash_rtx): Handle
DEBUG_PARAMETER_REF.
* rtl.c (rtx_equal_p_cb, rtx_equal_p, iterative_hash_rtx): Likewise.
* print-rtl.c (print_rtx): Likewise.
* tree-sra.c (sra_ipa_reset_debug_stmts): Prefer replacing of
SSA_NAMEs with DEBUG_EXPR_DECLs initialized in source bind
debug stmts in the first bb.
* tree-inline.c (remap_ssa_name): If remapping default def
of a PARM_DECL fails, map to a DEBUG_EXPR_DECL set in
a source bind debug stmt.
(remap_gimple_stmt): Handle gimple_debug_source_bind_p.
(maybe_move_debug_stmts_to_successors): Likewise.
(copy_debug_stmt): Likewise.  Avoid shadowing a variable.
(tree_function_versioning): If DECL_HAS_DEBUG_ARGS_P, copy
debug args vector from old_decl to new_decl.
* ipa-prop.c (ipa_modify_call_arguments): For optimized away
or modified parameters, add debug bind stmts before call
setting DEBUG_EXPR_DECL which is remembered in debug args
vector.
* cfgexpand.c (expand_call_stmt): Call expand_debug_expr
on DECL_DEBUG_EXPRs from debug args vector.
(expand_debug_source_expr): New function.
(expand_debug_locations): Use it for source bind insns.
(expand_gimple_basic_block): Handle gimple_debug_source_bind_p.
* var-tracking.c (prepare_call_arguments): Add debug args
to call_arguments if any.
* dwarf2out.c (dwarf_stack_op_name, size_of_loc_descr,
output_loc_operands, output_loc_operands_raw,
resolve_addr_in_expr, compare_loc_operands): Handle
DW_OP_GNU_parameter_ref.
(get_ref_die_offset, parameter_ref_descriptor): New functions.
(mem_loc_descriptor): Handle DEBUG_PARAMETER_REF.
(gen_subprogram_die): Handle parameters identified by
DEBUG_PARAMETER_REF.

* dwarf2.h (enum dwarf_location_atom): Add DW_OP_GNU_parameter_ref.

From-SVN: r175288

13 years agoinvoke.texi (ARM Options): Document -mtls-dialect option.
Nathan Sidwell [Wed, 22 Jun 2011 09:57:02 +0000 (09:57 +0000)]
invoke.texi (ARM Options): Document -mtls-dialect option.

* doc/invoke.texi (ARM Options): Document -mtls-dialect option.
* doc/install.texi (Configuration): Document --with-tls.
* config.gcc (arm*-*-linux*): Default to gnu tls.
(arm*-*-*): Add --with-tls option.
(all_defaults): Add 'tls'.
* config/arm/arm.c (enum tls_reloc): Add TLS_DESCSEQ.
(arm_call_tls_get_addr): Clean up. Assert not tls descriptor.
(arm_tls_descseq_addr): New.
(legitimize_tls_address): Add tlsdesc support.
(arm_cannot_copy_insn_p): Check for tlscall.
(arm_emit_tls_decoration): Likewise.
* config/arm/arm.h (TARGET_GNU2_TLS): New.
(OPTION_DEFAULT_SPECS): Add with-tls support.
* config/arm/arm.md (R1_REGNUM): Define.
(tlscall): New.
* config/arm/arm.opt (tls_type): New enumeration type and values.
(mtls-dialect): New switch.
* config/arm/arm-opts.h (enum tls_type): New.

testsuite/
* gcc.target/arm/tlscall.c: New.

From-SVN: r175287

13 years agoIn gcc/: 2011-06-21 Nicola Pero <nicola.pero@meta-innovation.com>
Nicola Pero [Wed, 22 Jun 2011 09:52:55 +0000 (09:52 +0000)]
In gcc/: 2011-06-21 Nicola Pero <nicola.pero@meta-innovation.com>

In gcc/:
2011-06-21  Nicola Pero  <nicola.pero@meta-innovation.com>

* attribs.c (register_attribute): Added assert to check that all
attribute specs are registered with a name that is not empty and
does not start with '_'.
(decl_attributes): Avoid the lookup of the "naked" attribute spec
if the function has no attributes.
* tree.c (is_attribute_with_length_p): Removed.
(is_attribute_p): Removed.
(private_is_attribute_p): New.
(private_lookup_attribute): New.
(lookup_attribute): Removed.
(lookup_ident_attribute): New.
(remove_attribute): Require the first argument to be in the form
'text', not '__text__'.  Updated asserts.
(merge_attributes): Use lookup_ident_attributes instead of
lookup_attribute.
(merge_dllimport_decl_attributes): Use remove_attribute.
(attribute_list_contained): Likewise.
(attribute_list_equal): Immediately return 1 if the arguments are
identical pointers.
* tree.h (is_attribute_p): Made inline.  Return a 'bool', not an
'int'.  Require the first argument to be in the form 'text', not
'__text__'.  Require the second argument to be an identifier.
(lookup_attribute): Made inline.  Require the first argument to be
in the form 'text', not '__text__'.
(private_is_attribute_p, private_lookup_attribute): New.
Updated comments.

From-SVN: r175286

13 years agoChangeLog: Fix formatting.
Uros Bizjak [Wed, 22 Jun 2011 06:22:40 +0000 (08:22 +0200)]
ChangeLog: Fix formatting.

* ChangeLog: Fix formatting.
* testsuite/ChangeLog: Ditto.

From-SVN: r175285

13 years agore PR c++/49172 ([C++0x][constexpr] References should be declarable with constexpr)
Jason Merrill [Wed, 22 Jun 2011 04:18:02 +0000 (00:18 -0400)]
re PR c++/49172 ([C++0x][constexpr] References should be declarable with constexpr)

PR c++/49172
* decl.c (cp_finish_decl): Adjust init_const_expr_p for refs.
(grokdeclarator): constexpr doesn't apply const for refs.
* parser.c (cp_parser_initializer_clause): Don't call
maybe_constant_value here.
* call.c (initialize_reference): Handle constexpr.

From-SVN: r175284

13 years agoDaily bump.
GCC Administrator [Wed, 22 Jun 2011 00:18:06 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r175283

13 years agogogo-tree.cc (Gogo::define_builtin_function_trees): Change BUILT_IN_ADD_AND_FETCH...
Andrew MacLeod [Tue, 21 Jun 2011 23:03:09 +0000 (23:03 +0000)]
gogo-tree.cc (Gogo::define_builtin_function_trees): Change BUILT_IN_ADD_AND_FETCH to BUILT_IN_SYNC_ADD_AND_FETCH.

* gogo-tree.cc (Gogo::define_builtin_function_trees): Change
BUILT_IN_ADD_AND_FETCH to BUILT_IN_SYNC_ADD_AND_FETCH.

From-SVN: r175278

13 years agomove.h (__is_nothrow_swappable): Add.
Daniel Krugler [Tue, 21 Jun 2011 23:01:03 +0000 (23:01 +0000)]
move.h (__is_nothrow_swappable): Add.

2011-06-22  Daniel Krugler  <daniel.kruegler@googlemail.com>
    Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/move.h (__is_nothrow_swappable): Add.
(swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept.
* include/bits/algorithmfwd.h: Adjust.
* testsuite/25_algorithms/swap/noexcept.cc: New.

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r175277

13 years agore PR c++/49482 ([C++0x] unused parameter warning on lambda in function template)
Jason Merrill [Tue, 21 Jun 2011 20:07:45 +0000 (16:07 -0400)]
re PR c++/49482 ([C++0x] unused parameter warning on lambda in function template)

PR c++/49482
* semantics.c (maybe_add_lambda_conv_op): Call mark_exp_read for
static fn parameters.

From-SVN: r175273

13 years agocall.c (add_builtin_candidates): Use cv_unqualified rather than TYPE_MAIN_VARIANT.
Jason Merrill [Tue, 21 Jun 2011 19:05:33 +0000 (15:05 -0400)]
call.c (add_builtin_candidates): Use cv_unqualified rather than TYPE_MAIN_VARIANT.

* call.c (add_builtin_candidates): Use cv_unqualified rather than
TYPE_MAIN_VARIANT.
* pt.c (tsubst_arg_types): Likewise.
* except.c (build_throw): Use cv_unqualified.

From-SVN: r175272

13 years agore PR c++/49418 (G++ discards cv-quals from template parameter types)
Jason Merrill [Tue, 21 Jun 2011 19:05:25 +0000 (15:05 -0400)]
re PR c++/49418 (G++ discards cv-quals from template parameter types)

PR c++/49418
* call.c (cxx_type_promotes_to): Don't strip cv-quals.
* semantics.c (lambda_return_type): Strip them here.

From-SVN: r175271

13 years agocosmetic. Add sync_ to all the expand_builtin defines which do not match the actual...
Andrew MacLeod [Tue, 21 Jun 2011 19:04:33 +0000 (19:04 +0000)]
cosmetic. Add sync_ to all the expand_builtin defines which do not match the actual builtin_sync_ names.

2011-06-21  Andrew MacLeod  <amacleod@redhat.com>

* builtins.c: Add sync_ or SYNC__ to builtin names.
* sync-builtins.def: Add sync_ or SYNC__ to builtin names.
* omp-low.c: Add sync_ or SYNC__ to builtin names.
* c-family/c-common.c: Add sync_ or SYNC__ to builtin names.
* c-family/c-omp.c: Add sync_ or SYNC__ to builtin names.
* java/builtins.c: Add sync_ or SYNC__ to builtin names.
* java/expr.c: Add sync_ or SYNC__ to builtin names.
* cp/semantics.c: Add sync_ or SYNC__ to builtin names.
* fortran/trans-openmp.c: Add sync_ or SYNC__ to builtin names.
* fortran/trans-stmt.c: Add sync_ or SYNC__ to builtin names.
* fortran/trans-decl.c: Add sync_ or SYNC__ to builtin names.

From-SVN: r175270

13 years agore PR target/33049 ([avr] bit extraction non optimal, inversing logic solves problem)
Georg-Johann Lay [Tue, 21 Jun 2011 17:30:54 +0000 (17:30 +0000)]
re PR target/33049 ([avr] bit extraction non optimal, inversing logic solves problem)

PR target/33049
* config/avr/avr.md (extzv): New expander.
(*extzv): New insn.
(*extzv.qihi1, *extzv.qihi2): New insn-and-split.
* config/avr/constraints.md (C04): New constraint.
* doc/md.texi (Machine Constraints): Document it.

From-SVN: r175269

13 years agore PR libgcj/49314 (md5test, shatest output FAILs on Tru64 UNIX)
Rainer Orth [Tue, 21 Jun 2011 17:09:57 +0000 (17:09 +0000)]
re PR libgcj/49314 (md5test, shatest output FAILs on Tru64 UNIX)

PR libgcj/49314
* gnu/gcj/convert/natIconv.cc (iconv_init): Pad in[] with NUL byte.

From-SVN: r175266

13 years agore PR middle-end/49489 (gcc.c-torture/execute/builtin-bitops-1.c fails on x86_64...
Jakub Jelinek [Tue, 21 Jun 2011 16:25:57 +0000 (18:25 +0200)]
re PR middle-end/49489 (gcc.c-torture/execute/builtin-bitops-1.c fails on x86_64-linux)

PR middle-end/49489
* builtins.c (expand_builtin_unop): Call expand_unop with 0 as
unsignedp argument instead of 1 for clrsb_optab.
(fold_builtin_bitop): Fix masking for width > HOST_BITS_PER_WIDE_INT
and < 2 * HOST_BITS_PER_WIDE_INT.  Optimize BUILT_IN_CLRSB*.
(fold_builtin_1): Call fold_builtin_binop for BUILT_IN_CLRSB*.
* optabs.c (widen_leading): Call widen_operand and expand_unop
with 0 as unsignedp argument instead of 1 for clrsb_optab.
(expand_unop): Subtract difference of mode sizes also for
clrsb_optab.

From-SVN: r175265

13 years ago* config/avr/avr.md (*jcindirect_jump): Fix build warning.
Georg-Johann Lay [Tue, 21 Jun 2011 16:16:11 +0000 (16:16 +0000)]
* config/avr/avr.md (*jcindirect_jump): Fix build warning.

From-SVN: r175264

13 years agogensupport.c (add_define_attr): New static function.
Bernd Schmidt [Tue, 21 Jun 2011 14:38:38 +0000 (14:38 +0000)]
gensupport.c (add_define_attr): New static function.

* gensupport.c (add_define_attr): New static function.
(is_predicable): Allow multi-alternative lists for the "predicable"
attribute.
(modify_attr_enabled_ce, alter_attrs_for_insn): New static functions.
(process_one_cond_exec): Call alter_attrs_for_insn.
* doc/md.texi (Defining Attributes): Mention some standard names.
(Conditional Execution): Update documentation for "predicable".

From-SVN: r175263

13 years agoshared-object.mk (c_flags-$o): Save c_flags.
Rainer Orth [Tue, 21 Jun 2011 14:26:13 +0000 (14:26 +0000)]
shared-object.mk (c_flags-$o): Save c_flags.

* shared-object.mk (c_flags-$o): Save c_flags.
($(base)$(objext)): Use it.
($(base)_s$(objext)): Likewise.

From-SVN: r175262

13 years agoMakefile.in (lib2funcs): Add _clrsbsi2 and _clrsbdi2.
Bernd Schmidt [Tue, 21 Jun 2011 14:16:39 +0000 (14:16 +0000)]
Makefile.in (lib2funcs): Add _clrsbsi2 and _clrsbdi2.

libgcc/
* Makefile.in (lib2funcs): Add _clrsbsi2 and _clrsbdi2.
* libgcc-std.ver.in (GCC_4.7.0): New section.

gcc/
* doc/extend.texi (__builtin_clrsb, __builtin_clrsbl,
__builtin_clrsbll): Document.
* doc/rtl.texi (clrsb): New entry.
* optabs.c (widen_leading): Renamed from widen_clz.  New argument
UNOPTAB.  All callers changed.  Use UNOPTAB instead of clz_optab.
(expand_unop): Handle clrsb_optab.
(init_optabs): Initialize it.
* optabs.h (enum optab_index): New entry OTI_clrsb.
(clrsb_optab): Define.
* genopinit.c (optabs): Add an entry for it.
* builtins.c (expand_builtin): Handle clrsb builtin functions.
* builtins.def (BUILT_IN_CLRSB, BUILT_IN_CLRSBIMAX, BUILT_IN_CLRSBL,
BUILT_IN_CLRSBLL): New.
* rtl.def (CLRSB): New code.
* dwarf2out.c (mem_loc_descriptor): Handle it.
* simplify-rtx.c (simplify_const_unary_operation): Likewise.
Use op_mode rather than mode when optimizing ffs, clz, ctz, parity
and popcount.
* libgcc2.c (__clrsbSI2, __clrsbDI2): New functions.
* libgcc2.h (__clrsbSI2, __clrsbDI2): Define and declare.
(__ctzDI2): Move declaration.
* config/bfin/bfin.md (clrsbsi2): New expander.
(signbitssi2): Use the CLRSB rtx.
(clrsbhi2): Renamed from signbitshi2.  Use the CLRSB rtx.
* config/bfin/bfin.c (bdesc_1arg): Changed accordingly.

gcc/testsuite/
* gcc.c-torture/excute/builtin-bitops-1.c (MAKE_FUNS): Make
my_clrsb test functions.
(main): Test clrsb.
* gcc.dg/builtin-protos-1.c (test_s, test_u, test_sl, test_ul,
test_sll, test_ull): Add clrsb tests.
* gcc.dg/torture/builtin-attr-1.c: Add tests for clrsb, clrsbl,
clrsbll.

From-SVN: r175261

13 years agore PR fortran/49112 ([OOP] Missing type-bound procedure, "duplicate save" warnings...
Janus Weil [Tue, 21 Jun 2011 12:12:51 +0000 (14:12 +0200)]
re PR fortran/49112 ([OOP] Missing type-bound procedure, "duplicate save" warnings and internal compiler error)

2011-06-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/49112
* class.c (gfc_find_derived_vtab): Make vtab and default initialization
symbols SAVE_IMPLICIT.

2011-06-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/49112
* gfortran.dg/class_44.f03: New.

From-SVN: r175257

13 years agoipa-inline-transform.c (inline_transform): Fix previous change.
Richard Guenther [Tue, 21 Jun 2011 12:07:19 +0000 (12:07 +0000)]
ipa-inline-transform.c (inline_transform): Fix previous change.

2011-06-21  Richard Guenther  <rguenther@suse.de>

* ipa-inline-transform.c (inline_transform): Fix previous
change.

From-SVN: r175256

13 years agore PR tree-optimization/49478 (ice in expand_widen_pattern_expr with -O3)
Ira Rosen [Tue, 21 Jun 2011 11:58:33 +0000 (11:58 +0000)]
re PR tree-optimization/49478 (ice in expand_widen_pattern_expr with -O3)

        PR tree-optimization/49478
        * tree-vect-loop.c (vectorizable_reduction): Handle DOT_PROD_EXPR
        with constant operand.

From-SVN: r175255

13 years agoipa-inline-transform.c (inline_transform): Fix typo.
Richard Guenther [Tue, 21 Jun 2011 11:13:08 +0000 (11:13 +0000)]
ipa-inline-transform.c (inline_transform): Fix typo.

2011-06-21  Richard Guenther  <rguenther@suse.de>

* ipa-inline-transform.c (inline_transform): Fix typo.

From-SVN: r175253

13 years agore PR tree-optimization/49483 (unable to vectorize code equivalent to "scalbnf")
Richard Guenther [Tue, 21 Jun 2011 11:02:38 +0000 (11:02 +0000)]
re PR tree-optimization/49483 (unable to vectorize code equivalent to "scalbnf")

2011-06-21  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/49483
* tree-vect-stmts.c (vectorizable_assignment): Also handle
VIEW_CONVERT_EXPR conversions.

* gcc.dg/vect/vect-120.c: New testcase.

From-SVN: r175252

13 years agogcc.pot: Regenerate.
Joseph Myers [Tue, 21 Jun 2011 10:33:57 +0000 (11:33 +0100)]
gcc.pot: Regenerate.

gcc/po:
* gcc.pot: Regenerate.

libcpp/po:
* cpplib.pot: Regenerate.

From-SVN: r175251

13 years agoFixed several pathnames to be relative to gcc/testsuite.
Rainer Orth [Tue, 21 Jun 2011 10:32:38 +0000 (10:32 +0000)]
Fixed several pathnames to be relative to gcc/testsuite.

From-SVN: r175250

13 years agogcc_update (gcc/config/avr/avr-tables.opt): New dependencies.
Joseph Myers [Tue, 21 Jun 2011 10:22:19 +0000 (11:22 +0100)]
gcc_update (gcc/config/avr/avr-tables.opt): New dependencies.

contrib:
* gcc_update (gcc/config/avr/avr-tables.opt): New dependencies.

gcc:
* config/avr/avr-mcus.def, config/avr/genopt.sh: New files.
* config/avr/avr-tables.opt: New file (generated).
* config.gcc (avr-*-*): Use avr/avr-tables.opt.
* config/avr/avr-devices.c (avr_mcu_types): Move contents to
avr-mcus.def.
* config/avr/avr.c (avr_help, TARGET_HELP): Remove.
(avr_option_override): Don't process -mmcu= argument here.  Set
avr_current_device using avr_mcu_index.
(avr_file_start): Use avr_current_device->name instead of
avr_mcu_name.
* config/avr/avr.opt (mmcu=): Use Enum.
* config/avr/t-avr (avr-devices.o): Update dependencies.
($(srcdir)/config/avr/avr-tables.opt): New.
* target.def (help): Remove.
* doc/tm.texi.in (TARGET_HELP): Remove.
* doc/tm.texi: Regenerate.
* opts.c: Don't include target.h.
(common_handle_option): Don't call targetm.help.
* system.h (TARGET_HELP): Poison.
* Makefile.in (opts.o): Update dependencies.

From-SVN: r175248

13 years agore PR testsuite/49443 (gcc.dg/vect/vect-peel-3.c and vect-peel-4.c fail on IA64 after...
Ira Rosen [Tue, 21 Jun 2011 09:01:23 +0000 (09:01 +0000)]
re PR testsuite/49443 (gcc.dg/vect/vect-peel-3.c and vect-peel-4.c fail on IA64 after testsuite change)

        PR testsuite/49443
        * gcc.dg/vect/vect-peel-3.c: Expect to fail on vect_no_align
        targets.
        * gcc.dg/vect/vect-peel-4.c: Likewise.

From-SVN: r175246

13 years agousegld.h: New file.
Rainer Orth [Tue, 21 Jun 2011 08:53:06 +0000 (08:53 +0000)]
usegld.h: New file.

* config/usegld.h: New file.
* config/sol2.h (PREFERRED_DEBUGGING_TYPE): Remove.
(CPP_SUBTARGET_SPEC): Remove -compat-bsd support.
(LIB_SPEC): Likewise.
Search /lib.
(LINK_ARCH32_SPEC_BASE): Remove -compat-bsd support.
(RDYNAMIC_SPEC): Handle GNU ld.
[HAVE_LD_EH_FRAME_HDR && TARGET_DL_ITERATE_PHDR] (LINK_EH_SPEC): Define.
(SUPPORTS_INIT_PRIORITY): Only disable for Sun ld.
(SUBTARGET_INSERT_ATTRIBUTES, SUBTARGET_ATTRIBUTE_TABLE): Define.
[!USE_GAS] (NO_DBX_BNSYM_ENSYM): Redefine.
(STACK_CHECK_STATIC_BUILTIN): Define.
* config/sol2.opt (compat-bsd): Remove.
* config/sol2-10.h (TARGET_C99_FUNCTIONS): Remove undef.
* config/sol2-bi.h: New file.
* config/sol2-gld.h: Remove.
* config/i386/sol2.h (TLS_COMMON_ASM_OP): Only define if !USE_GAS.
(NO_DBX_BNSYM_ENSYM): Remove.
(SUBTARGET_INSERT_ATTRIBUTES, SUBTARGET_ATTRIBUTE_TABLE): Remove.
(STACK_CHECK_STATIC_BUILTIN): Remove.
Test USE_GLD instead of TARGET_GNU_LD.
* config/i386/sol2-10.h: Rename to ...
* config/i386/sol2-bi.h .. this.
(SUBTARGET_EXTRA_SPECS): Redefine.
(WCHAR_TYPE, WCHAR_TYPE_SIZE, WINT_TYPE, WINT_TYPE_SIZE): Remove.
(MULTILIB_DEFAULTS): Remove.
(DEFAULT_ARCH32_P): Define.
(LINK_ARCH64_SPEC_BASE, LINK_ARCH64_SPEC): Remove.
(ARCH64_SUBDIR): Define.
Test USE_GLD instead of TARGET_GNU_LD.
(I386_EMULATION): Rename to ...
(ARCH32_EMULATION): ... this.
(X86_64_EMULATION): Rename to ...
(ARCH64_EMULATION): ... this.
(TARGET_LD_EMULATION): Remove.
(LINK_ARCH_SPEC): Remove.
* config/i386/sol2-gas.h: Remove.
* config/i386/t-sol2-10: Rename to ...
* config/i386/t-sol2-64: ... this.
* config/sparc/sol2.h (SPARC_DEFAULT_CMODEL): Redefine.
(AS_SPARC64_FLAG): Define.
(ASM_CPU32_DEFAULT_SPEC, ASM_CPU64_DEFAULT_SPEC): Redefine.
(CPP_CPU64_DEFAULT_SPEC, ASM_CPU32_DEFAULT_SPEC): Redefine
depending on TARGET_CPU_DEFAULT.
(CPP_CPU_SPEC): Redefine.
(ASM_CPU_SPEC): Handle DEFAULT_ARCH32_P.
(CPP_CPU_DEFAULT_SPEC, ASM_CPU_DEFAULT_SPEC): Redefine.
(CPP_ARCH32_SPEC, CPP_ARCH64_SPEC, CPP_ARCH_SPEC): Redefine.
(ASM_ARCH_SPEC, ASM_ARCH32_SPEC, ASM_ARCH64_SPEC,
ASM_ARCH_DEFAULT_SPEC): Redefine.
(SUBTARGET_EXTRA_SPECS): Add LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
LINK_ARCH_DEFAULT_SPEC.
[USE_GLD] (ARCH32_EMULATION, ARCH64_EMULATION): Define.
[USE_GLD] (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC): Redefine.
(ARCH64_SUBDIR): Define.
(LINK_ARCH64_SPEC): Redefine.
(CC1_SPEC): Redefine.
(OPTION_DEFAULT_SPECS): Redefine.
(MULTILIB_DEFAULTS): Define.
(WCHAR_TYPE, WCHAR_TYPE_SIZE, WINT_TYPE, WINT_TYPE_SIZE): Redefine.
[USE_GAS && HAVE_AS_TLS] (TARGET_SUN_TLS, TARGET_GNU_TLS): Redefine.
[USE_GLD] (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Undef.
(NO_DBX_BNSYM_ENSYM): Remove.
(SUBTARGET_INSERT_ATTRIBUTES, SUBTARGET_ATTRIBUTE_TABLE): Remove.
(ASM_OUTPUT_ALIGN_WITH_NOP): Only define if !USE_GAS.
(TARGET_ASM_NAMED_SECTION): Likewise.
(STACK_CHECK_STATIC_BUILTIN): Remove.
* config/sparc/sol2-bi.h: Remove.
* config/sparc/sol2-gas-bi.h: Remove.
* config/sparc/sol2-gas.h: Remove.
* config/sparc/sol2-gld-bi.h: Remove.
* config.gcc (i[34567]86-*-solaris2*, sparc*-*-solaris2*): Move
common parts ...
(*-*-solaris2*): ... here.

From-SVN: r175245

13 years agoRemove >>>> marker.
Jakub Jelinek [Tue, 21 Jun 2011 08:15:36 +0000 (10:15 +0200)]
Remove >>>> marker.

From-SVN: r175243

13 years agoPR middle-end/49139 fix always_inline diagnostics
Christian Bruel [Tue, 21 Jun 2011 06:48:45 +0000 (08:48 +0200)]
PR middle-end/49139 fix always_inline diagnostics

From-SVN: r175242

13 years agoPR middle-end/49139 PR other/43564 make sure the inline function is inlined
Christian Bruel [Tue, 21 Jun 2011 06:45:05 +0000 (08:45 +0200)]
PR middle-end/49139 PR other/43564 make sure the inline function is inlined

From-SVN: r175241

13 years agoPR middle-end/49139 fix always_inline diagnostics
Christian Bruel [Tue, 21 Jun 2011 06:43:26 +0000 (08:43 +0200)]
PR middle-end/49139 fix always_inline diagnostics

From-SVN: r175240

13 years agoPR middle-end/49139 fix always_inline diagnostics
Christian Bruel [Tue, 21 Jun 2011 06:42:05 +0000 (08:42 +0200)]
PR middle-end/49139 fix always_inline diagnostics

From-SVN: r175239

13 years agoMakefile.in (dg_target_exps): Set.
Jakub Jelinek [Tue, 21 Jun 2011 06:27:35 +0000 (08:27 +0200)]
Makefile.in (dg_target_exps): Set.

* Makefile.in (dg_target_exps): Set.
(check_gcc_parallelize): Parallelize gcc testing into 10 jobs
instead of 7, try to divide it more evenly.

* Make-lang.in (check_gfortran_parallelize): Parallelize dg.exp
into 6 jobs instead of 3.

* testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add
check-DEJAGNUnormal[4-9].
(check-DEJAGNU): Split into 10 jobs for parallel testing instead of 4.
* testsuite/Makefile.in: Regenerated.

From-SVN: r175238

13 years agore PR c++/49216 ([C++0x] ICE on compiling new-expression with braced-init-list for...
Jason Merrill [Tue, 21 Jun 2011 02:24:17 +0000 (22:24 -0400)]
re PR c++/49216 ([C++0x] ICE on compiling new-expression with braced-init-list for arrays)

PR c++/49216
* init.c (build_vec_init): Don't try to use a CONSTRUCTOR when
base is a pointer.
* typeck2.c (process_init_constructor_array): Use {} for classes,
too.
* call.c (convert_like_real): Handle substitution failure.

From-SVN: r175237

13 years agore PR c++/48138 (__attribute__((aligned)) should give an error when applied to a...
Jason Merrill [Tue, 21 Jun 2011 02:24:09 +0000 (22:24 -0400)]
re PR c++/48138 (__attribute__((aligned)) should give an error when applied to a typedef or template parameter, at least in C++0x mode.)

PR c++/48138
* pt.c (canonicalize_type_argument): New.
(convert_template_argument, unify): Use it.

From-SVN: r175236

13 years agoDaily bump.
GCC Administrator [Tue, 21 Jun 2011 00:18:46 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r175235

13 years agopr49089: enable avx256 splitting unaligned load/store only when beneficial
Changpeng Fang [Mon, 20 Jun 2011 21:52:32 +0000 (21:52 +0000)]
pr49089: enable avx256 splitting unaligned load/store only when beneficial

* config/i386/i386.c (avx256_split_unaligned_load): New definition.
(avx256_split_unaligned_store): New definition.
(ix86_option_override_internal): Enable avx256 unaligned load/store
splitting only when avx256_split_unaligned_load/store is set.

From-SVN: r175230