Jason Merrill [Wed, 25 May 2011 14:31:56 +0000 (10:31 -0400)]
cp-objcp-common.c (cp_common_init_ts): TYPE_ARGUMENT_PACK has TS_COMMON.
* cp-objcp-common.c (cp_common_init_ts): TYPE_ARGUMENT_PACK has
TS_COMMON.
From-SVN: r174200
William Schmidt [Wed, 25 May 2011 13:49:29 +0000 (13:49 +0000)]
Remove spurious ChangeLog entry
From-SVN: r174198
H.J. Lu [Wed, 25 May 2011 13:42:58 +0000 (13:42 +0000)]
Implement x86 pause intrinsic.
gcc/
2011-05-25 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_builtins): Add IX86_BUILTIN_PAUSE.
(bdesc_special_args): Add pause intrinsic.
* config/i386/i386.md (UNSPEC_PAUSE): New.
(pause): Likewise.
(*pause): Likewise.
* config/i386/ia32intrin.h (__pause): Likewise.
* doc/extend.texi (X86 Built-in Functions): Add documentation for
pause intrinsic.
gcc/testsuite/
2011-05-25 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/pause-1.c: New.
From-SVN: r174197
Bill Schmidt [Wed, 25 May 2011 13:35:53 +0000 (13:35 +0000)]
re PR tree-optimization/46728 (GCC does not generate fmadd for pow (x, 0.75)+y on powerpc)
2011-05-25 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/46728
* tree-ssa-math-opts.c (gimple_expand_builtin_pow): New.
(execute_cse_sincos): Add switch case for BUILT_IN_POW.
From-SVN: r174196
Nathan Froyd [Wed, 25 May 2011 12:52:10 +0000 (12:52 +0000)]
move TS_EXP to be a substructure of TS_TYPED
move TS_EXP to be a substructure of TS_TYPED
gcc/
* tree.h (struct tree_exp): Inherit from struct tree_typed.
* tree.c (initialize_tree_contains_struct): Mark TS_EXP as TS_TYPED
instead of TS_COMMON.
gcc/lto/
* lto.c (lto_ft_typed): New function.
(lto_ft_common): Call it.
(lto_ft_constructor): Likewise.
(lto_ft_expr): Likewise.
(lto_fixup_prevailing_decls): Check for TS_COMMON before accessing
TREE_CHAIN.
From-SVN: r174192
Bernd Schmidt [Wed, 25 May 2011 12:11:42 +0000 (12:11 +0000)]
libgcc2.h (__NW, __NDW): Define using a __gnu_ prefix if LIBGCC2_GNU_PREFIX is defined.
gcc/
* libgcc2.h (__NW, __NDW): Define using a __gnu_ prefix if
LIBGCC2_GNU_PREFIX is defined.
(__N): New macro.
(__powisf2, __powidf2, __powitf2, __powixf2, __bswapsi2, __bswapdi2,
__mulsc3, __muldc3, __mulxc3, __multc3, __divsc3, __divdc3, __divxc3,
__divtc3, __udiv_w_sdiv, __clear_cache, __enable_execute_stack,
__clz_tab): Define using __N.
(__absvsi2, __negvsi2, __addvsi3, __subvsi3, __mulvsi3): Likewise if
COMPAT_SIMODE_TRAPPING_ARITHMETIC.
* target.def (libfunc_gnu_prefix): New hook.
* doc/tm.texi.in (LIBGCC2_GNU_PREFIX): Document.
(TARGET_LIBFUNC_GNU_PREFIX): Add hook.
* doc/tm.texi: Regenerate.
* system.h (LIBGCC2_GNU_PREFIX): Poison.
* optabs.c (gen_libfunc): Take the libfunc_gnu_prefix hook into
account.
(gen_interclass_conv_libfunc, gen_intraclass_conv_libfunc): Likewise.
(init_optabs): Likewise for the bswap libfuncs.
* tree.c (build_common_builtin_nodes): Likewise for complex multiply
and divide.
* config/t-slibgcc-elf-ver (SHLIB_MAPFILES): Use $$(libgcc_objdir).
* config/t-slibgcc-sld (SHLIB_MAPFILES): Likewise.
* libgcc-std.ver: Remove.
* Makefile.in (srcdirify): Handle $$(libgcc_objdir).
* config/frv/t-linux (SHLIB_MAPFILES): Use $$(libgcc_objdir) for
libgcc-std.ver.
* config/i386/t-linux (SHLIB_MAPFILES): Likewise.
* config/mips/t-slibgcc-irix (SHLIB_MAPFILES): Likewise.
* config/rs6000/t-aix43 (SHLIB_MAPFILES): Likewise.
* config/rs6000/t-aix52 (SHLIB_MAPFILES): Likewise.
* config/sparc/t-linux (SHLIB_MAPFILES): Likewise.
* config/i386/t-linux (SHLIB_MAPFILES): Likewise.
* config/i386/t-linux (SHLIB_MAPFILES): Likewise.
* config/fixed-bit.h (FIXED_OP): Define differently depending on
LIBGCC2_GNU_PREFIX. All uses changed not to pass leading underscores.
(FIXED_CONVERT_OP, FIXED_CONVERT_OP2): Likewise.
libgcc/
* libgcc-std.ver.in: New file.
* Makefile.in (LIBGCC_VER_GNU_PREFIX, LIBGCC_VER_SYMBOLS_PREFIX): New
variables.
(libgcc-std.ver): New rule.
* config/t-gnu-prefix: New file.
From-SVN: r174187
Jan Hubicka [Wed, 25 May 2011 12:07:38 +0000 (14:07 +0200)]
lto-streamer-out.c (output_record_start): Use lto_output_enum
* lto-streamer-out.c (output_record_start): Use lto_output_enum
(lto_output_tree): Use output_record_start.
* lto-streamer-in.c (input_record_start): Use lto_input_enum
(lto_get_pickled_tree): Use input_record_start.
* lto-section-in.c (lto_section_overrun): Turn into fatal error.
(lto_value_range_error): New function.
* lto-streamer.h (lto_value_range_error): Declare.
(lto_output_int_in_range, lto_input_int_in_range): New functions.
(lto_output_enum, lto_input_enum): New macros.
From-SVN: r174186
Kai Tietz [Wed, 25 May 2011 11:59:49 +0000 (13:59 +0200)]
adaint.c (__gnat_to_canonical_file_list_next): Use array initialization instead of const/none-const pointer assignment.
2011-05-25 Kai Tietz <ktietz@redhat.com>
* adaint.c (__gnat_to_canonical_file_list_next): Use array
initialization instead of const/none-const pointer assignment.
From-SVN: r174185
Eric Botcazou [Wed, 25 May 2011 11:00:14 +0000 (11:00 +0000)]
common.opt (flag_stack_usage_info): New variable.
* common.opt (flag_stack_usage_info): New variable.
(-Wstack-usage): New option.
* doc/invoke.texi (Warning options): Document -Wstack-usage.
* opts.c (common_handle_option) <OPT_Wstack_usage_>: New case.
<OPT_fstack_usage>: Likewise.
* toplev.c (output_stack_usage): Handle -Wstack-usage.
* calls.c (expand_call): Test flag_stack_usage_info variable instead
of flag_stack_usage.
(emit_library_call_value_1): Likewise.
* explow.c (allocate_dynamic_stack_space): Likewise.
* function.c (instantiate_virtual_regs ): Likewise.
(prepare_function_start): Likewise.
(rest_of_handle_thread_prologue_and_epilogue): Likewise.
* config/alpha/alpha.c (alpha_expand_prologue): Likewise.
* config/arm/arm.c (arm_expand_prologue): Likewise.
(thumb1_expand_prologue): Likewise.
* config/avr/avr.c (expand_prologue): Likewise.
* config/i386/i386.c (ix86_expand_prologue): Likewise.
* config/ia64/ia64.c (ia64_expand_prologue): Likewise.
* config/m68k/m68k.c (m68k_expand_prologue): Likewise.
* config/mips/mips.c (mips_expand_prologue): Likewise.
* config/pa/pa.c (hppa_expand_prologue): Likewise.
* config/rs6000/rs6000.c (rs6000_emit_prologue): Likewise.
* config/s390/s390.c (s390_emit_prologue): Likewise.
* config/sh/sh.c (sh_expand_prologue): Likewise.
* config/sparc/sparc.c (sparc_expand_prologue): Likewise.
* config/spu/spu.c (spu_expand_prologue): Likewise.
From-SVN: r174182
Richard Guenther [Wed, 25 May 2011 10:32:29 +0000 (10:32 +0000)]
gimple.c (iterative_hash_canonical_type): Skip non-FIELD_DECLs.
2011-05-25 Richard Guenther <rguenther@suse.de>
* gimple.c (iterative_hash_canonical_type): Skip non-FIELD_DECLs.
(gimple_canonical_types_compatible_p): Likewise.
From-SVN: r174181
Jan Hubicka [Wed, 25 May 2011 10:20:12 +0000 (12:20 +0200)]
re PR middle-end/49062 (Many C++ tests ICE on Tru64 UNIX: non-DECL_ONE_ONLY node in a same_comdat_group list)
2011-05-25 Jan Hubicka <jh@suse.cz>
PR middle-end/49062
* ipa.c (function_and_variable_visibility): Only add to same
comdat group list if DECL_ONE_ONLY.
From-SVN: r174180
Andrey Belevantsev [Wed, 25 May 2011 07:59:06 +0000 (11:59 +0400)]
re PR rtl-optimization/49014 (ICE: in reset_sched_cycles_in_current_ebb, at sel-sched.c:7132 with even more insane set of flags)
PR rtl-optimization/49014
* config/i386/athlon.md (athlon_ssecomi): Change type to ssecomi.
From-SVN: r174172
Jakub Jelinek [Wed, 25 May 2011 07:12:17 +0000 (09:12 +0200)]
re PR c/49128 (-march=native generates unsupported instructions)
PR target/49128
* config/i386/driver-i386.c (host_detect_local_cpu): Fix a typo.
From-SVN: r174171
Jakub Jelinek [Wed, 25 May 2011 07:10:05 +0000 (09:10 +0200)]
cp-objcp-common.c (cp_common_init_ts): Mark CTOR_INITIALIZER as TS_TYPED.
* cp-objcp-common.c (cp_common_init_ts): Mark CTOR_INITIALIZER
as TS_TYPED.
From-SVN: r174170
Jakub Jelinek [Wed, 25 May 2011 07:00:01 +0000 (09:00 +0200)]
re PR c++/49136 ([C++0x][constexpr] Incorrect constexpr c'tor evaluation with bitfields)
PR c++/49136
* semantics.c (cxx_eval_bit_field_ref): Handle the
case when BIT_FIELD_REF doesn't cover only a single field.
* g++.dg/cpp0x/constexpr-bitfield2.C: New test.
* g++.dg/cpp0x/constexpr-bitfield3.C: New test.
From-SVN: r174168
Ian Lance Taylor [Wed, 25 May 2011 05:57:54 +0000 (05:57 +0000)]
re PR go/48502 (os_test.TestStartProcess FAILs on Solaris 2)
PR go/48502
libgo/os: Fix test to run on Solaris.
Patch brought over from upstream library.
From-SVN: r174167
Vladimir Makarov [Wed, 25 May 2011 02:15:58 +0000 (02:15 +0000)]
re PR rtl-optimization/48757 (internal compiler error: in compensate_edge, at reg-stack.c:2788)
2011-05-24 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/48757
* ira-build.c (loop_with_eh_edge_p): Rename to
loop_with_complex_edge_p, check edges on complexity, make function
conditional.
(mark_loops_for_removal): Make call of loop_with_complex_edge_p
conditional.
2011-05-24 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/48757
* gfortran.dg/pr48757.f: New test case.
From-SVN: r174165
GCC Administrator [Wed, 25 May 2011 00:18:51 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r174157
Paolo Carlini [Wed, 25 May 2011 00:13:18 +0000 (00:13 +0000)]
dr2020.cc: Fix typo.
2011-05-24 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/20_util/duration/arithmetic/dr2020.cc: Fix typo.
From-SVN: r174152
Jason Merrill [Tue, 24 May 2011 23:44:59 +0000 (19:44 -0400)]
re PR c++/49042 ([C++0x] wrong "protected" when using template and decltype)
PR c++/49042
* pt.c (get_mostly_instantiated_function_type): Use
push_deferring_access_checks rather than set flag_access_control.
From-SVN: r174151
Paolo Carlini [Tue, 24 May 2011 23:29:19 +0000 (23:29 +0000)]
re PR libstdc++/49151 ([C++0x][constexpr] chrono::duration has incorrect non-member operator semantics)
2011-05-24 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/49151
* include/std/chrono (operator+, operator-, operator*, operator/,
operator&): Implement LWG 2020 [WP]; specify constexpr.
* testsuite/20_util/duration/arithmetic/dr2020.cc: New.
From-SVN: r174150
Eric Botcazou [Tue, 24 May 2011 22:28:48 +0000 (22:28 +0000)]
sparc.c (sparc_option_override): If not set by the user, force flag_ira_share_save_slots to 0.
* config/sparc/sparc.c (sparc_option_override): If not set by the user,
force flag_ira_share_save_slots to 0.
From-SVN: r174148
Ian Lance Taylor [Tue, 24 May 2011 22:21:34 +0000 (22:21 +0000)]
libgo: Make os.setenv_c work on systems without setenv.
From-SVN: r174147
Eric Botcazou [Tue, 24 May 2011 21:52:12 +0000 (21:52 +0000)]
var-tracking.c (compute_cfa_pointer): Adjust head comment.
* var-tracking.c (compute_cfa_pointer): Adjust head comment.
(vt_initialize): Set PROLOGUE_BB unconditionally.
Add block comment about CFA_BASE_RTX machinery.
Reset FP_CFA_OFFSET to -1 on all invalid paths.
Call vt_init_cfa_base only if FP_CFA_OFFSET isn't equal to -1.
From-SVN: r174146
Ian Lance Taylor [Tue, 24 May 2011 21:45:17 +0000 (21:45 +0000)]
libgo: Irix portability fixes (no declaration for getaddrinfo).
From Rainer Orth.
From-SVN: r174145
Ian Lance Taylor [Tue, 24 May 2011 21:43:12 +0000 (21:43 +0000)]
libgo: Solaris/Irix portability fixes.
From Rainer Orth.
From-SVN: r174144
Nicola Pero [Tue, 24 May 2011 21:39:24 +0000 (21:39 +0000)]
In libobjc/: 2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
PR libobjc/48177
* selector.c (__sel_register_typed_name): Use sel_types_match()
instead of strcmp() to compare selector types (Suggestion by
Richard Frith-Macdonald <rfm@gnu.org>).
In gcc/testsuite/:
2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
PR libobjc/48177
* objc.dg/pr48177.m: New testcase.
From-SVN: r174143
Nicola Pero [Tue, 24 May 2011 21:29:35 +0000 (21:29 +0000)]
In gcc/: 2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/48187
* c-parser.c (c_parser_objc_class_instance_variables): More robust
parsing of syntax error in ObjC instance variable lists. In
particular, avoid an infinite loop if there is a stray ']'.
Updated error message.
In gcc/cp/:
2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>,
* parser.c (cp_parser_objc_class_ivars): Deal gracefully with a
syntax error in declaring an ObjC instance variable.
In gcc/testsuite/:
2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/48187
* objc.dg/pr48187.m: New testcase.
* obj-c++.dg/pr48187.mm: New testcase.
* objc.dg/ivar-extra-semicolon.m: New testcase.
From-SVN: r174142
Ian Lance Taylor [Tue, 24 May 2011 21:07:15 +0000 (21:07 +0000)]
godump.c (go_define): Don't accept a string immediately after another operand.
* godump.c (go_define): Don't accept a string immediately after
another operand.
From-SVN: r174141
Ian Lance Taylor [Tue, 24 May 2011 20:34:47 +0000 (20:34 +0000)]
godump.c (struct godump_container): Add invalid_hash field.
* godump.c (struct godump_container): Add invalid_hash field.
(go_format_type): Return false if type is found in invalid_hash.
(go_output_typedef): Add invalid type to invalid_hash.
(go_finish): Create and delete invalid_hash.
From-SVN: r174140
Jason Merrill [Tue, 24 May 2011 20:26:47 +0000 (16:26 -0400)]
re PR c++/48884 (decltype's operand doesn't consider friend declaration)
PR c++/48884
* class.c (pushclass): Accept NULL argument.
(popclass): Deal with popping null class.
* pt.c (push_access_scope, pop_access_scope): Use them rather than
push_to_top_level/pop_from_top_level.
(push_deduction_access_scope, pop_defarg_context): New.
(fn_type_unification): Use them.
* name-lookup.c (lookup_name_real_1): Check current_class_type.
From-SVN: r174139
Bill Schmidt [Tue, 24 May 2011 18:02:22 +0000 (18:02 +0000)]
re PR tree-optimization/46728 (GCC does not generate fmadd for pow (x, 0.75)+y on powerpc)
2011-05-24 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/46728
* tree-ssa-math-opts.c (powi_table): New.
(powi_lookup_cost): New.
(powi_cost): New.
(powi_as_mults_1): New.
(powi_as_mults): New.
(gimple_expand_builtin_powi): New.
(execute_cse_sincos): Add switch case for BUILT_IN_POWI.
(gate_cse_sincos): Remove sincos/cexp restriction.
From-SVN: r174129
Rainer Orth [Tue, 24 May 2011 17:51:51 +0000 (17:51 +0000)]
re PR target/3746 (compilation of mips-tfile missing mips/a.out.h)
PR target/3746
* config.gcc (alpha*-dec-osf5.1*): Only build mips-tfile,
mips-tdump native.
* mips-tfile.c: Remove CROSS_DIRECTORY_STRUCTURE handling.
* mips-tdump.c: Likewise.
From-SVN: r174128
H.J. Lu [Tue, 24 May 2011 17:38:34 +0000 (17:38 +0000)]
Always add -mno-XXX for -march=native.
2011-05-24 H.J. Lu <hongjiu.lu@intel.com>
PR target/49128
* config/i386/driver-i386.c (host_detect_local_cpu): Always
add -mno-XXX. Handle FMA.
From-SVN: r174126
Paolo Carlini [Tue, 24 May 2011 17:33:22 +0000 (17:33 +0000)]
decl.c (grokdeclarator): Use current_class_name.
2011-05-24 Paolo Carlini <paolo.carlini@oracle.com>
* decl.c (grokdeclarator): Use current_class_name.
From-SVN: r174125
Vladimir Makarov [Tue, 24 May 2011 16:28:38 +0000 (16:28 +0000)]
[multiple changes]
2011-05-24 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/48633
* ira-build.c (loop_with_eh_edge_p): New function.
(mark_loops_for_removal): Use it.
2011-05-24 Michael Matz <matz@gcc.gnu.org>
PR rtl-optimization/48633
* g++.dg/pr48633.C: New test.
From-SVN: r174124
Vladimir Makarov [Tue, 24 May 2011 16:14:51 +0000 (16:14 +0000)]
re PR rtl-optimization/48971 (ICE with -msoft-float -O2)
2011-05-13 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/48971
* ira.c (setup_pressure_classes): Don't check register move cost
for classes with one registers. Don't add pressure class if there
is a pressure class with the same available hard registers.
Check contains_reg_of_mode. Fix a typo in collecting
temp_hard_regset. Ignore hard registers not belonging to a class.
From-SVN: r174123
Uros Bizjak [Tue, 24 May 2011 15:31:12 +0000 (17:31 +0200)]
re PR target/49133 (modification of aliased __m128d miscompiles)
PR target/49133
* config/i386/sse.md (sse2_loadhpd): Remove shufpd alternative.
testsuite/ChangeLog:
PR target/49133
* g++.dg/other/pr49133.C: New test.
From-SVN: r174122
Paolo Carlini [Tue, 24 May 2011 14:59:13 +0000 (14:59 +0000)]
re PR libstdc++/49141 (26_numerics/complex/cons/48760.cc FAILs on Tru64 UNIX V5.1B, Solaris 8 and 9)
2011-05-24 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/49141
* testsuite/26_numerics/complex/cons/48760.cc: Use dg-require-c-std.
* testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
* testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
From-SVN: r174120
Eric Botcazou [Tue, 24 May 2011 14:53:39 +0000 (14:53 +0000)]
re PR gcov-profile/48845 (All g++.dg/tree-prof and gcc.dg/{matrix, tree-prof} executions tests fail on Solaris 8/9)
PR gcov-profile/48845
* config/sol2.h (LIB_SPEC): Link TLS support for tree profiling.
Co-Authored-By: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
From-SVN: r174119
Richard Guenther [Tue, 24 May 2011 14:33:48 +0000 (14:33 +0000)]
gimple.c (compare_type_names_p): Remove for_completion_p arg.
2011-05-24 Richard Guenther <rguenther@suse.de>
* gimple.c (compare_type_names_p): Remove for_completion_p arg.
(gimple_compatible_complete_and_incomplete_subtype_p): Remove.
(gimple_types_compatible_p_1): Adjust.
(iterative_hash_canonical_type): Do not bother about complete vs.
incomplete types.
(gimple_canonical_types_compatible_p): Likewise.
From-SVN: r174118
Uros Bizjak [Tue, 24 May 2011 14:32:47 +0000 (16:32 +0200)]
run-gd.c: New test.
2011-05-24 Uros Bizjak <ubizjak@gmail.com>
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* gcc.dg/torture/tls/run-gd.c: New test.
* gcc.dg/torture/tls/run-ie.c: New test.
* gcc.dg/torture/tls/run-ld.c: New test.
* gcc.dg/torture/tls/run-le.c: New test.
* lib/target-supports.exp (check_effective_target_tls_runtime):
Build testcase with TLS options.
Co-Authored-By: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
From-SVN: r174117
Rainer Orth [Tue, 24 May 2011 14:27:16 +0000 (14:27 +0000)]
* config/i386/sol2.h (FORCE_CODE_SECTION_ALIGN): Remove.
From-SVN: r174116
Rainer Orth [Tue, 24 May 2011 14:16:41 +0000 (14:16 +0000)]
* gcc.dg/vect/pr48172.c: Remove dg-do run.
From-SVN: r174115
Richard Guenther [Tue, 24 May 2011 12:40:28 +0000 (12:40 +0000)]
re PR bootstrap/49078 (LTO bootstrap failed with bootstrap-profiled)
2011-05-24 Richard Guenther <rguenther@suse.de>
PR bootstrap/49078
* gimple.c (gimple_register_canonical_type): Revert
previous change.
* alias.c (get_alias_set): Only assert that TYPE_CANONICAL
does not for a tree for the case where it matters. Cache
pointer-type alias-sets.
From-SVN: r174113
Joseph Myers [Tue, 24 May 2011 11:49:46 +0000 (12:49 +0100)]
Makefile.in (GCC_OBJS): Remove opts-common.o and options.o.
* Makefile.in (GCC_OBJS): Remove opts-common.o and options.o.
(OBJS): Remove options.o, opts-common.o and prefix.o.
(OBJS-libcommon-target): New.
(ALL_HOST_BACKEND_OBJS): Include $(OBJS-libcommon-target).
(BACKEND): Include libcommon-target.a.
(MOSTLYCLEANFILES): Include libcommon-target.a.
(libcommon-target.a): New.
(xgcc$(exeext), cpp$(exeext)): Use libcommon-target.a instead of
prefix.o.
ada:
* gcc-interface/Make-lang.in (GNAT1_OBJS): Don't include
$(EXTRA_GNAT1_OBJS).
(GNATBIND_OBJS): Don't include $(EXTRA_GNATBIND_OBJS).
(EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Remove.
(gnat1$(exeext), gnatbind$(exeext)): Use libcommon-target.a.
* gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Use
libcommon-target.a instead of prefix.o.
cp:
* Make-lang.in (GXX_OBJS): Remove prefix.o.
(g++$(exeext)): Use libcommon-target.a.
(CXX_C_OBJS): Remove prefix.o.
fortran:
* Make-lang.in (GFORTRAN_D_OBJS): Remove prefix.o.
(gfortran$(exeext)): Use libcommon-target.a.
go:
* Make-lang.in (GCCGO_OBJS): Remove prefix.o.
(gccgo$(exeext)): Use libcommon-target.a.
java:
* Make-lang.in ($(XGCJ)$(exeext)): Use libcommon-target.a instead
of prefix.o.
From-SVN: r174109
Paolo Carlini [Tue, 24 May 2011 10:28:13 +0000 (10:28 +0000)]
c++config (_GLIBCXX_NOTHROW): Update for noexcept.
2011-05-24 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/c++config (_GLIBCXX_NOTHROW): Update for noexcept.
* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
line number.
From-SVN: r174107
Tom de Vries [Tue, 24 May 2011 08:09:00 +0000 (08:09 +0000)]
re PR tree-optimization/49121 (FAIL: gcc.dg/tree-ssa/ivopt_infer_2.c scan-tree-dump-times ivopts "Replacing" 0)
2011-05-24 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/49121
* gcc.dg/tree-ssa/ivopt_infer_2.c: Adapt test.
From-SVN: r174103
Jason Merrill [Tue, 24 May 2011 03:49:12 +0000 (23:49 -0400)]
* pt.c (tsubst_copy_and_build): Use current_class_name.
From-SVN: r174102
Jason Merrill [Tue, 24 May 2011 03:49:03 +0000 (23:49 -0400)]
re PR c++/49102 ([C++0x] Use of deleted copy constructor not diagnosed)
PR c++/49102
* call.c (convert_arg_to_ellipsis): Call force_rvalue.
From-SVN: r174101
Benjamin Kosnik [Tue, 24 May 2011 02:38:19 +0000 (02:38 +0000)]
re PR libstdc++/37144 (A bug in include/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp)
2011-05-23 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/37144
PR libstdc++/28457
Interface changes for ext/pb_ds.
PB_DS_BASE_C_DEC to unique PB_DS_*_BASE macros.
* include/ext/pb_ds/assoc_container.hpp (container_base): Remove.
(basic_hash_table, basic_branch, list_update): Derive from
container_base_dispatch.
* include/ext/pb_ds/list_update_policy.hpp (null_lu_metadata): Remove.
(move_to_front_lu_policy): To lu_move_to_front_policy.
(counter_lu_policy): To lu_counter_policy.
* include/ext/pb_ds/tree_policy.hpp (null_tree_node_update): Remove.
* include/ext/pb_ds/tag_and_trait.hpp (container_base_dispatch): Adjust
template parameters, declare here.
(null_mapped_type) Remove.
(null_type): Just use this for template tricks everywhere.
* include/ext/pb_ds/hash_policy.hpp (null_hash_fn, null_probe_fn):
Remove.
* include/ext/pb_ds/trie_policy.hpp (null_trie_node_update): Remove.
(string_trie_e_access_traits): To trie_string_access_traits.
* include/ext/pb_ds/priority_queue.hpp: Use container_base_dispatch.
File changes.
* include/Makefile.am (pb_headers): Removed and changed file names.
* include/Makefile.in: Regenerated.
* include/ext/pb_ds/detail/basic_types.hpp: Remove.
* include/ext/pb_ds/detail/bin_search_tree_/
cond_dtor_entry_dealtor.hpp: Remove.
* include/ext/pb_ds/detail/bin_search_tree_/
cond_key_dtor_entry_dealtor.hpp: Remove.
* include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Move..
* include/ext/pb_ds/detail/binary_heap_/
point_const_iterator.hpp: ..here.
* include/ext/pb_ds/detail/basic_tree_policy: Move to...
* include/ext/pb_ds/detail/branch_policy: This.
* include/ext/pb_ds/detail/branch_policy/
basic_tree_policy_base.hpp: Move...
* include/ext/pb_ds/detail/branch_policy/branch_policy.hpp: ...here.
* include/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp: Add.
* include/ext/pb_ds/detail/branch_policy/traits.hpp: Add.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
null_metadata.hpp: Remove.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
const_point_iterator.hpp: Move...
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
point_const_iterator.hpp: ...here.
* include/ext/pb_ds/detail/list_update_policy/
counter_lu_metadata.hpp: Move..
* include/ext/pb_ds/detail/list_update_policy/
lu_counter_metadata.hpp: ...here.
* include/ext/pb_ds/detail/list_update_policy/
counter_lu_policy_imp.hpp: Remove.
* include/ext/pb_ds/detail/list_update_policy/
mtf_lu_policy_imp.hpp: Remove.
* include/ext/pb_ds/detail/trie_policy/
string_trie_e_access_traits_imp.hpp: Move...
* include/ext/pb_ds/detail/trie_policy/
sample_trie_access_traits.hpp: ...here.
* include/ext/pb_ds/detail/trie_policy/
sample_trie_e_access_traits.hpp: Move...
* include/ext/pb_ds/detail/trie_policy/
trie_string_access_traits_imp.hpp: ...here.
* include/ext/pb_ds/detail/trie_policy/null_node_update_imp.hpp: Remove.
* include/ext/pb_ds/detail/tree_policy/null_node_update_imp.hpp: Remove.
* include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Remove.
* include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: New, fold all
types found in the following files into pat_trie_base.
* include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Folded.
* include/ext/pb_ds/detail/pat_trie_/
cond_dtor_entry_dealtor.hpp: Folded.
* include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Folded.
* include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Folded.
* include/ext/pb_ds/detail/pat_trie_/head.hpp: Folded.
* include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Folded.
* include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Folded.
* include/ext/pb_ds/detail/pat_trie_/node_metadata_base.hpp: Folded.
* include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Folded.
* include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Folded.
* include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Folded.
* include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Move...
* include/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp: ...here.
* include/ext/pb_ds/detail/unordered_iterator/
const_point_iterator.hpp: Move...
* include/ext/pb_ds/detail/unordered_iterator/
point_const_iterator.hpp: ...here.
Adjust for above changes.
* include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
sample_resize_trigger.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/
binomial_heap_base_.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_base_/
split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/container_base_dispatch.hpp: Same. Adjust
for template parameter ordering change.
* include/ext/pb_ds/detail/cc_hash_table_map_/
erase_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
resize_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
entry_list_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
find_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
debug_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
cond_key_dtor_entry_dealtor.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
debug_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
erase_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
resize_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/
standard_policies.hpp: Same.
* include/ext/pb_ds/detail/tree_trace_base.hpp: Same.
* include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same.
* include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp: Same.
* include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/traits.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/
policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/traits.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/
split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_policy/
sample_update_policy.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
erase_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
iterator_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
find_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
find_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
debug_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
debug_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
erase_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
standard_policies.hpp: Same.
* include/ext/pb_ds/detail/standard_policies.hpp: Same.
* include/ext/pb_ds/detail/types_traits.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/entry_pred.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp: Same.
* include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Same.
* include/ext/pb_ds/detail/tree_policy/
sample_tree_node_update.hpp: Same.
* include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp: Same.
* include/ext/pb_ds/detail/trie_policy/
sample_trie_node_update.hpp: Same.
* include/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp: Same.
* include/ext/pb_ds/detail/trie_policy/
prefix_search_node_update_imp.hpp: Same.
* include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Same.
* include/ext/pb_ds/detail/cond_dealtor.hpp: Same.
* include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Same.
Adjust for template parameter change, fold into
container_base_dispatch.
* include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
* include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
* include/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/type_utils.hpp: Same.
* include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same.
* include/ext/pb_ds/detail/eq_fn/eq_by_less.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
left_child_next_sibling_heap_.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
const_iterator.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
node.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/traits.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/debug_map_base.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
* include/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/node.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/traits.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/
entry_metadata_base.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/
rc_binomial_heap_.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
* include/ext/pb_ds/detail/rc_binomial_heap_/
split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/node.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/rb_tree_map_/traits.hpp: Same.
Documentation changes.
* include/ext/pb_ds/*: Add doxygen markup.
* doc/doxygen/user.cfg.in: Add details for extracting comments
from pb_ds.
* scripts/run_doxygen: Fixup __gnu_pb_ds::detail.
* scripts/make_graph.py: Move to svg output. Re-format generated tables.
* doc/Makefile.am (stamp-html-copy): New rule.
(stamp-html): Use it to copy non-generated files into html docs.
* doc/Makefile.in: Regenerated.
* doc/html/ext/pb_ds/sample_trie_e_access_traits.html: Move...
* doc/html/ext/pb_ds/trie_string_access_traits.html: ...here.
* doc/html/ext/pb_ds/string_trie_e_access_traits.html: Move..
* doc/html/ext/pb_ds/sample_trie_access_traits.html: ...here.
* doc/html/ext/pb_ds/tree_text_lor_find_timing_test_local.png,
hash_random_int_erase_mem_usage_test_local.png,
multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
tree_text_insert_timing_test_pat_trie_local.png ,
multimap_text_insert_mem_usage_test_small_s2p_tree_local.png ,
priority_queue_text_modify_down_timing_test_local.png,
gp_hash_random_int_subscript_timing_test_find_local.png,
text_find_timing_test_hash_local.png,
multimap_text_insert_timing_test_small_s2p_hash_local.png,
multimap_text_insert_timing_test_small_s2p_tree_local.png,
multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
multimap_text_insert_timing_test_large_s2p_hash_local.png,
hash_zlob_random_int_find_timing_test_local.png,
multimap_text_insert_timing_test_large_s2p_tree_local.png,
binary_priority_queue_random_int_push_timing_test_local.png,
priority_queue_text_pop_mem_usage_test_local.png,
priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
tree_split_join_timing_test_local.png,
multimap_text_find_timing_test_small_s2p_hash_local.png,
ccgp_hash_random_int_subscript_timing_test_insert_local.png,
priority_queue_random_int_push_pop_timing_test_local.png,
multimap_text_find_timing_test_small_s2p_tree_local.png,
gp_hash_random_int_subscript_timing_test_insert_local.png,
priority_queue_text_push_timing_test_local.png,
cc_hash_random_int_subscript_timing_test_find_local.png,
tree_text_insert_timing_test_vector_tree_local.png,
multimap_text_find_timing_test_large_s2p_hash_local.png,
pairing_priority_queue_text_push_timing_test_local.png,
tree_order_statistics_timing_test_local.png,
priority_queue_text_push_pop_timing_test_local.png,
text_find_timing_test_tree_like_local.png,
multimap_text_find_timing_test_large_s2p_tree_local.png,
priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
cc_hash_random_int_subscript_timing_test_insert_local.png,
priority_queue_text_modify_up_timing_test_local.png,
random_int_find_find_timing_test_tree_local.png,
priority_queue_random_int_push_timing_test_local.png,
tree_text_insert_timing_test_node_tree_local.png,
pairing_priority_queue_text_push_pop_timing_test_local.png,
gp_hash_random_int_find_timing_test_local.png,
cc_hash_random_int_find_timing_test_local.png,
priority_queue_text_join_timing_test_local.png: Update local pngs.
Testsuite changes.
* testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: New.
* testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: New.
* testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc: New.
* testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: New.
* testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: New.
* testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
New.
* testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
New.
* testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: New.
* testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: New.
* testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Fix typo.
* testsuite/ext/pb_ds/example/basic_set.cc: Update.
* testsuite/ext/pb_ds/example/ranged_hash.cc: Same.
* testsuite/ext/pb_ds/example/tree_order_statistics.cc: Same.
* testsuite/ext/pb_ds/example/trie_prefix_search.cc: Same.
* testsuite/ext/pb_ds/example/trie_dna.cc: Same.
* testsuite/ext/pb_ds/example/tree_intervals.cc: Same.
* testsuite/ext/pb_ds/example/basic_multimap.cc: Same.
* testsuite/performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc:
Same.
* testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same.
* testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
* testsuite/data/make_graph_test_infos.xml: Same.
* testsuite/util/regression/common_type.hpp: Same.
* testsuite/util/regression/trait/assoc/native_type_trait.hpp: Same.
* testsuite/util/regression/trait/assoc/trait.hpp: Same.
* testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
* testsuite/util/regression/rand/priority_queue/
rand_regression_test.hpp: Same.
* testsuite/util/regression/rand/priority_queue/
container_rand_regression_test.tcc: Same.
* testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
* testsuite/util/regression/rand/assoc/container_rand_regression_test.h
* testsuite/util/regression/rand/assoc/
container_rand_regression_test.tcc: Same.
* testsuite/util/native_type/native_priority_queue.hpp: Same.
* testsuite/util/native_type/native_multimap.hpp: Same.
* testsuite/util/native_type/native_hash_multimap.hpp: Same.
* testsuite/util/native_type/native_set.hpp: Same.
* testsuite/util/native_type/native_map.hpp: Same.
* testsuite/util/native_type/native_hash_set.hpp: Same.
* testsuite/util/native_type/native_hash_map.hpp: Same.
* testsuite/util/testsuite_containers.h
* testsuite/util/common_type/priority_queue/common_type.hpp: Same.
* testsuite/util/common_type/assoc/common_type.hpp: Same.
* testsuite/util/common_type/assoc/string_form.hpp: Same.
* testsuite/util/common_type/assoc/template_policy.hpp: Same.
* testsuite/util/common_type/assoc/detail/
trigger_policy_string_form.hpp: Same.
* testsuite/util/common_type/assoc/detail/ds_string_form.hpp: Same.
* testsuite/util/common_type/assoc/detail/
size_policy_string_form.hpp: Same.
* testsuite/util/common_type/assoc/detail/
probe_fn_string_form.hpp: Same.
* testsuite/util/common_type/assoc/detail/
tree_supports_order_statistics.hpp: Same.
* testsuite/util/common_type/assoc/detail/
trie_supports_prefix_search.hpp: Same.
* testsuite/util/common_type/assoc/detail/
list_update_policy_string_form.hpp: Same.
* testsuite/util/common_type/assoc/detail/
trie_supports_order_statistics.hpp: Same.
* testsuite/util/common_type/assoc/native_set.hpp: Same.
* testsuite/util/performance/assoc/timing/common_type.hpp: Same.
* testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
* testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
From-SVN: r174100
GCC Administrator [Tue, 24 May 2011 00:18:25 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r174099
Paolo Carlini [Mon, 23 May 2011 23:03:42 +0000 (23:03 +0000)]
streambuf_iterator.h: Use noexcept per the FDIS.
2011-05-23 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/streambuf_iterator.h: Use noexcept per the FDIS.
(istreambuf_iterator<>::istreambuf_iterator(const
istreambuf_iterator&), ~istreambuf_iterator()): Add defaulted
in C++0x mode.
From-SVN: r174094
Jason Merrill [Mon, 23 May 2011 22:56:04 +0000 (18:56 -0400)]
re PR c++/49105 ([C++0x][SFINAE] ICE during list-initialization of rvalue-references to const)
PR c++/49105
* typeck.c (cp_build_c_cast): Don't strip cv-quals when
converting to reference.
(build_static_cast_1): Update for glvalues.
From-SVN: r174093
Jason Merrill [Mon, 23 May 2011 22:55:56 +0000 (18:55 -0400)]
re PR c++/49105 ([C++0x][SFINAE] ICE during list-initialization of rvalue-references to const)
PR c++/49105
* typeck.c (build_const_cast_1): Handle rvalue references.
From-SVN: r174092
Jason Merrill [Mon, 23 May 2011 22:55:46 +0000 (18:55 -0400)]
re PR c++/48106 ([C++0x] ICE with scoped enum with fixed underlying type)
PR c++/48106
* c-common.c (c_common_get_narrower): New.
(shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.
From-SVN: r174091
Jakub Jelinek [Mon, 23 May 2011 20:38:17 +0000 (22:38 +0200)]
re PR lto/49123 (FAIL: gcc.c-torture/execute/pr48973-[12].c)
PR lto/49123
* gcc.c-torture/execute/pr49123.c: New test.
From-SVN: r174088
Joseph Myers [Mon, 23 May 2011 19:06:48 +0000 (20:06 +0100)]
optc-save-gen.awk: New.
* optc-save-gen.awk: New. Based on optc-gen.awk. Don't generate
parts of output shared with the driver.
* optc-gen.awk: Don't generate parts of output not shared with the
driver.
* opth-gen.awk: Remove GCC_DRIVER conditionals.
* doc/options.texi (SourcerInclude): Mention options-save.c.
* Makefile.in (GCC_OBJS): Use options.o instead of gcc-options.o.
(OBJS): Add options-save.o.
(options-save.c, options-save.o): New.
(options.o): Update dependencies.
(gcc-options.o): Remove.
(mostlyclean): Remove options-save.c.
From-SVN: r174085
Jakub Jelinek [Mon, 23 May 2011 18:07:43 +0000 (20:07 +0200)]
re PR debug/49032 (-gstabs generates reference to deleted static variable)
PR debug/49032
* dbxout.c: Include cgraph.h.
(dbxout_expand_expr): If a VAR_DECL is TREE_STATIC, not written
and without value expr, return NULL if no varpool node exists for
it or if it is not needed.
* Makefile.in (dbxout.o): Depend on $(CGRAPH_H).
* gcc.dg/debug/pr49032.c: New test.
From-SVN: r174083
Jakub Jelinek [Mon, 23 May 2011 18:02:03 +0000 (20:02 +0200)]
re PR c/49120 (bogus "value computed is not used" warning (variable-length array in compound statement))
PR c/49120
* c-decl.c (start_decl): Convert expr to void_type_node.
* gcc.dg/pr49120.c: New test.
From-SVN: r174081
Richard Sandiford [Mon, 23 May 2011 17:57:35 +0000 (17:57 +0000)]
re PR rtl-optimization/48826 (ICE in dwarf2out_var_location, at dwarf2out.c:22013)
gcc/
PR rtl-optimization/48826
* emit-rtl.c (try_split): When splitting a call that is followed
by a NOTE_INSN_CALL_ARG_LOCATION, move the note after the new call.
From-SVN: r174080
Jakub Jelinek [Mon, 23 May 2011 17:02:07 +0000 (19:02 +0200)]
cfgexpand.c (expand_debug_expr): For unused non-addressable parameters passed in memory prefer using...
* cfgexpand.c (expand_debug_expr): For unused non-addressable
parameters passed in memory prefer using DECL_INCOMING_RTL over
the pseudos it will be copied into.
From-SVN: r174079
H.J. Lu [Mon, 23 May 2011 16:51:42 +0000 (16:51 +0000)]
Save the initial options after checking vzeroupper.
gcc/
2011-05-23 H.J. Lu <hongjiu.lu@intel.com>
PR target/47315
* config/i386/i386.c (ix86_option_override_internal): Save the
initial options after checking vzeroupper.
gcc/testsuite/
2011-05-23 H.J. Lu <hongjiu.lu@intel.com>
PR target/47315
* gcc.target/i386/pr47315.c: New test.
From-SVN: r174078
David Li [Mon, 23 May 2011 16:17:28 +0000 (16:17 +0000)]
fix pr48988
From-SVN: r174077
Jason Merrill [Mon, 23 May 2011 15:48:37 +0000 (11:48 -0400)]
re PR c++/47263 ([C++0x] lambda + dynamic-exception-specification std::unexpected() is not called.)
PR c++/47263
* decl.c (use_eh_spec_block): Do use an EH spec block for a
lambda op().
From-SVN: r174076
Jason Merrill [Mon, 23 May 2011 15:39:48 +0000 (11:39 -0400)]
* libsupc++/exception_ptr.h: Fix compilation in C++0x mode.
From-SVN: r174075
Richard Guenther [Mon, 23 May 2011 15:36:32 +0000 (15:36 +0000)]
gimple.c (gimple_types_compatible_p_1): Always compare type names.
2011-05-23 Richard Guenther <rguenther@suse.de>
* gimple.c (gimple_types_compatible_p_1): Always compare type names.
(iterative_hash_gimple_type): Always hash type names.
From-SVN: r174074
Jason Merrill [Mon, 23 May 2011 15:32:39 +0000 (11:32 -0400)]
re PR libstdc++/49058 ([C++0x] Bind no-arguments functor failed using std::bind with -pedantic option.)
PR c++/49058
* call.c (splice_viable): Be strict in templates.
From-SVN: r174073
Jason Merrill [Mon, 23 May 2011 15:32:29 +0000 (11:32 -0400)]
re PR c++/47336 ([C++0x] ICE: "Error reporting routines re-entered")
PR c++/47336
* error.c (dump_template_bindings): Suppress access control.
From-SVN: r174072
Jason Merrill [Mon, 23 May 2011 15:32:19 +0000 (11:32 -0400)]
re PR c++/47544 ([C++0x] linker does not find =default constructor for explicitly instantiated template)
PR c++/47544
* pt.c (instantiate_decl): Handle =default.
From-SVN: r174071
Jason Merrill [Mon, 23 May 2011 15:32:10 +0000 (11:32 -0400)]
re PR c++/48617 ([C++0x] Problem with non-type template parameters and decltype)
PR c++/48617
* pt.c (invalid_nontype_parm_type_p): Allow DECLTYPE_TYPE.
From-SVN: r174070
Richard Guenther [Mon, 23 May 2011 14:52:31 +0000 (14:52 +0000)]
forwprop-11.c: Adjust and un-XFAIL.
2011-05-23 Richard Guenther <rguenther@suse.de>
* gcc.dg/tree-ssa/forwprop-11.c: Adjust and un-XFAIL.
From-SVN: r174069
Richard Guenther [Mon, 23 May 2011 14:36:28 +0000 (14:36 +0000)]
re PR tree-optimization/40874 (Function object abstraction penalty with inline functions.)
2011-05-23 Richard Guenther <rguenther@suse.de>
PR tree-optimization/40874
* g++.dg/tree-ssa/pr40874.C: New testcase.
From-SVN: r174068
Nathan Froyd [Mon, 23 May 2011 14:20:49 +0000 (14:20 +0000)]
don't use TYPE_ARG_TYPES when calling c-family:check_function_arguments
don't use TYPE_ARG_TYPES when calling c-family:check_function_arguments
gcc/
* c-typeck.c (build_function_call_vec): Tweak call to
check_function_arguments.
gcc/c-family/
* c-common.h (check_function_arguments): Tweak prototype of
check_function_arguments.
* c-common.c (check_function_arguments): Likewise. Adjust
calls to check_function_nonnull, check_function_format, and
check_function_sentinel.
(check_function_sentinel): Take a FUNCTION_TYPE rather than
separate attributes and typelist arguments. Use
FOREACH_FUNCTION_ARGS to iterate over argument types.
gcc/cp/
* call.c (build_over_call): Tweak call to check_function_arguments.
* typeck.c (cp_build_function_call_vec): Likewise.
From-SVN: r174067
Richard Guenther [Mon, 23 May 2011 12:08:41 +0000 (12:08 +0000)]
re PR tree-optimization/49115 (invalid return value optimization (?) when exception is thrown and caught)
2011-05-23 Richard Guenther <rguenther@suse.de>
PR tree-optimization/49115
* tree-ssa-alias.c (stmt_kills_ref_p_1): If the assignment
is not necessarily carried out, do not claim it kills the ref.
* tree-ssa-dce.c (mark_aliased_reaching_defs_necessary_1): Likewise.
* g++.dg/torture/pr49115.C: New testcase.
From-SVN: r174066
Richard Guenther [Mon, 23 May 2011 12:03:19 +0000 (12:03 +0000)]
re PR tree-optimization/15419 (memcpy pessimization)
2011-05-23 Richard Guenther <rguenther@suse.de>
PR middle-end/15419
* builtins.c (fold_builtin_memory_op): Be less restrictive about
what pointer types we accept for folding.
* gcc.dg/memcpy-3.c: New testcase.
From-SVN: r174065
Rainer Orth [Mon, 23 May 2011 11:12:25 +0000 (11:12 +0000)]
gthr-gnat.c: Remove.
gcc:
* gthr-gnat.c: Remove.
* gthr-gnat.h: Remove.
* Makefile.in (LIB2ADDEH): Remove $(srcdir)/gthr-gnat.c.
* config/t-freebsd (LIB2ADDEH): Likewise.
* config/t-linux (LIB2ADDEH): Likewise.
* config/t-sol2 (LIB2ADDEH): Likewise.
* config/ia64/t-vms (LIB2ADDEH): Likewise.
* configure.ac (target_thread_file): Remove gnat handling.
* configure: Regenerate.
* doc/install.texi (Configuration, --enable-threads): Remove gnat.
gcc/po:
* EXCLUDES: Remove gthr-gnat.c, gthr-gnat.h.
libgcc:
* config/s390/t-tpf (LIB2ADDEH): Remove $(gcc_srcdir)/gthr-gnat.c.
From-SVN: r174064
Tristan Gingold [Mon, 23 May 2011 10:20:01 +0000 (10:20 +0000)]
gcov.c (create_file_names): If no object directory is specified, keep the directory of the file.
* gcov.c (create_file_names): If no object directory is specified,
keep the directory of the file.
Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r174062
Rainer Orth [Mon, 23 May 2011 10:00:39 +0000 (10:00 +0000)]
configure.ac (enable_threads): Remove irix; add lynx, tpf; sort list.
* configure.ac (enable_threads): Remove irix; add lynx, tpf; sort list.
* configure: Regenerate.
From-SVN: r174061
Jakub Jelinek [Mon, 23 May 2011 09:36:05 +0000 (11:36 +0200)]
re PR middle-end/48973 (Inliner bug with one-bit (1-bit) bitfield)
PR middle-end/48973
* expr.c (expand_expr_real_2) <case LT_EXPR>: If do_store_flag
failed and the comparison has a single bit signed type, use
constm1_rtx instead of const1_rtx for true value.
(do_store_flag): If ops->type is single bit signed type, disable
signel bit test optimization and pass -1 instead of 1 as last
parameter to emit_store_flag_force.
* gcc.c-torture/execute/pr48973-1.c: New test.
* gcc.c-torture/execute/pr48973-2.c: New test.
From-SVN: r174060
Jonathan Wakely [Mon, 23 May 2011 08:15:16 +0000 (08:15 +0000)]
re PR c++/18016 (Warn about member variables initialized with itself)
2011-05-23 Jonathan Wakely <jwakely.gcc@gmail.com>
PR c++/18016
* init.c (perform_member_init): Check for self-initialization.
From-SVN: r174058
Tom de Vries [Mon, 23 May 2011 07:27:59 +0000 (07:27 +0000)]
re PR middle-end/45098 (Missed induction variable optimization)
2011-05-23 Tom de Vries <tom@codesourcery.com>
PR target/45098
* tree-ssa-loop-niter.c (infer_loop_bounds_from_pointer_arith): New
function.
(infer_loop_bounds_from_undefined): Use new function.
From-SVN: r174056
Tom de Vries [Mon, 23 May 2011 07:00:02 +0000 (07:00 +0000)]
re PR middle-end/45098 (Missed induction variable optimization)
2011-05-23 Tom de Vries <tom@codesourcery.com>
PR target/45098
* gcc.target/arm/ivopts-6.c: New test.
From-SVN: r174055
GCC Administrator [Mon, 23 May 2011 00:19:31 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r174054
Paolo Carlini [Mon, 23 May 2011 00:05:24 +0000 (00:05 +0000)]
[multiple changes]
2011-05-22 Jonathan Wakely <jwakely.gcc@gmail.com>
* testsuite/20_util/bind/cv_quals_2.cc: New.
2011-05-22 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/49058
* include/std/functional (_Bind<_Functor(_Bound_args...)>::
operator()(_Args&&...)): Don't cv qualify _Functor directly
in the default template argument, SFINAE doesn't apply when
the functor has no arguments.
* testsuite/20_util/bind/49058_1.cc: New.
* testsuite/20_util/bind/49058_2.cc: Likewise.
From-SVN: r174048
Richard Sandiford [Sun, 22 May 2011 21:32:32 +0000 (21:32 +0000)]
mips.h (SUBTARGET_ASM_OPTIMIZING_SPEC): Delete.
gcc/
* config/mips/mips.h (SUBTARGET_ASM_OPTIMIZING_SPEC): Delete.
(ASM_SPEC): Add a -O* option here. Pass -O0 for -noasmopt,
-O1 for -fno-delayed-branch, -O2 if optimization is enabled,
and -O0 otherwise.
(EXTRA_SPECS): Remove subtarget_asm_optimizing_spec.
From-SVN: r174047
Eric Botcazou [Sun, 22 May 2011 21:29:20 +0000 (21:29 +0000)]
cfgcleanup.c (try_forward_edges): Do not update BB_FORWARDER_BLOCK.
* cfgcleanup.c (try_forward_edges): Do not update BB_FORWARDER_BLOCK.
(try_optimize_cfg): Update BB_FORWARDER_BLOCK if try_forward_edges
returns true.
From-SVN: r174046
Richard Sandiford [Sun, 22 May 2011 21:21:21 +0000 (21:21 +0000)]
mips.c (mips_default_arch): Honor MIPS_ISA_DEFAULT.
gcc/
* config/mips/mips.c (mips_default_arch): Honor MIPS_ISA_DEFAULT.
From-SVN: r174045
Eric Botcazou [Sun, 22 May 2011 20:10:54 +0000 (20:10 +0000)]
sparc.c (sparc_delegitimize_address): Handle UNSPEC_MOVE_PIC pattern.
* config/sparc/sparc.c (sparc_delegitimize_address): Handle
UNSPEC_MOVE_PIC pattern.
From-SVN: r174043
Eric Botcazou [Sun, 22 May 2011 20:01:01 +0000 (20:01 +0000)]
config.gcc (sparc-*-elf*): Add sparc/t-crtin.
* config.gcc (sparc-*-elf*): Add sparc/t-crtin.
(sparc-*-rtems*): Likewise.
(sparc64-*-elf*): Likewise.
(sparc64-*-rtems*): Likewise.
(sparc*-*-solaris2*): Likewise. Remove crti.o crtn.o extra parts.
* config/sparc/t-crtin: New file.
* config/sparc/t-sol2 (crti.o): Delete rule.
(crtn.o): Likewise.
* config/sparc/t-linux64 (EXTRA_MULTILIB_PARTS): Delete.
* config/sparc/t-sol2-64 (EXTRA_MULTILIB_PARTS): Likewise.
* config/sparc/sp64-elf.h (STARTFILE_SPEC): Tidy and add crti.o.
(ENDFILE_SPEC): Add crtn.o.
From-SVN: r174041
Tom de Vries [Sun, 22 May 2011 19:59:17 +0000 (19:59 +0000)]
Fix formulation
From-SVN: r174040
Tobias Burnus [Sun, 22 May 2011 19:34:16 +0000 (21:34 +0200)]
stop.c (stop_string,error_stop_string): Minor cleanup.
2011-05-22 Tobias Burnus <burnus@net-b.de>
* runtime/stop.c (stop_string,error_stop_string): Minor cleanup.
From-SVN: r174039
Uros Bizjak [Sun, 22 May 2011 19:04:54 +0000 (21:04 +0200)]
* lex.c (init_vectorized_lexer): Fix comparison of masked value.
From-SVN: r174037
Tom de Vries [Sun, 22 May 2011 19:00:33 +0000 (19:00 +0000)]
re PR middle-end/48689 (ICE in fold-const.c:13798 with fold checking)
2011-05-22 Tom de Vries <tom@codesourcery.com>
PR middle-end/48689
* fold-const.c (fold_checksum_tree): Guard TREE_CHAIN use with
CODE_CONTAINS_STRUCT (TS_COMMON).
From-SVN: r174035
Jakub Jelinek [Sun, 22 May 2011 19:00:00 +0000 (21:00 +0200)]
re PR middle-end/49029 (ICE in simplify_subreg, at simplify-rtx.c:5266)
PR middle-end/49029
* expmed.c (extract_fixed_bit_field): Test whether target can be used
only after deciding which mode to use.
* gcc.c-torture/compile/pr49029.c: New test.
From-SVN: r174034
Tom de Vries [Sun, 22 May 2011 18:57:19 +0000 (18:57 +0000)]
re PR middle-end/45098 (Missed induction variable optimization)
2011-05-22 Tom de Vries <tom@codesourcery.com>
PR target/45098
* tree-ssa-loop-ivopts.c (force_expr_to_var_cost): Fix const test
for call to get_shiftadd_cost.
From-SVN: r174033
Uros Bizjak [Sun, 22 May 2011 18:53:32 +0000 (20:53 +0200)]
re PR bootstrap/49104 (bootstrap failure on AMD K6-2 with illegal instruction (cmove) in stage2)
PR target/49104
* config/i386/cpuid.h (bit_MMXEXT): New define.
libcpp/ChangeLog:
2011-05-22 Uros Bizjak <ubizjak@gmail.com>
PR target/49104
* lex.c (init_vectorized_lexer): Do not set "minimum" when __3dNOW_A__
is defined. Check bit_MMXEXT and bit_CMOV to use search_line_mmx.
From-SVN: r174032
Jason Merrill [Sun, 22 May 2011 18:48:39 +0000 (14:48 -0400)]
re PR c++/48647 ([C++0x] SFINAE does not handle incompatible pointer types well in conditional operator)
PR c++/48647
* typeck.c (composite_pointer_type_r): Return error_mark_node
on error in SFINAE context.
From-SVN: r174031
Janne Blomqvist [Sun, 22 May 2011 16:38:05 +0000 (19:38 +0300)]
PR 48931 Make backtrace async-signal-safe, reformat output
From-SVN: r174030
Nick Clifton [Sun, 22 May 2011 14:51:34 +0000 (14:51 +0000)]
stormy16.c (xstormy16_init_builtins): prevent initialisation of non-existant args[2] element.
* config/stormy16/stormy16.c (xstormy16_init_builtins): prevent
initialisation of non-existant args[2] element. Use args[] array
not arg[] array to pass arguments to build_function_type_list.
From-SVN: r174029