Michael Matz [Fri, 29 Apr 2011 12:27:26 +0000 (12:27 +0000)]
lto-streamer.c (lto_streamer_cache_insert_1): Accept to override other trees that just builtins.
* lto-streamer.c (lto_streamer_cache_insert_1): Accept to override
other trees that just builtins.
(lto_record_common_node): Don't leave NULL TYPE_CANONICAL.
lto/
* lto.c (toplevel): Include tree-flow.h.
(lto_read_in_decl_state): Don't merge types here.
(tree_with_vars): New static hash table.
(remember_with_vars): New static functions.
(LTO_FIXUP_TYPE): New macro.
(lto_ft_common, lto_ft_decl_minimal, lto_ft_decl_common,
lto_ft_decl_with_vis, lto_ft_decl_non_common, lto_ft_function,
lto_ft_field_decl, lto_ft_type, lto_ft_binfo, lto_ft_constructor,
lto_ft_expr, lto_fixup_types, uniquify_nodes): New static functions.
(lto_read_decls): Uniquify while reading in trees.
(lto_fixup_data_t, LTO_FIXUP_SUBTREE,
LTO_REGISTER_TYPE_AND_FIXUP_SUBTREE, no_fixup_p, lto_fixup_common,
lto_fixup_decl_minimal, lto_fixup_decl_common, lto_fixup_decl_with_vis,
lto_fixup_decl_non_common, lto_fixup_function, lto_fixup_field_decl,
lto_fixup_type, lto_fixup_binfo, lto_fixup_constructor,
lto_fixup_tree): Remove.
(lto_fixup_state): Remove data argument. Use
lto_symtab_prevailing_decl.
(LTO_SET_PREVAIL, LTO_NO_PREVAIL): New macros.
(lto_fixup_prevailing_decls): New function.
(lto_fixup_state_aux): Argument aux is unused.
(lto_fixup_decls): Don't allocate pointer sets, don't use
lto_fixup_tree, use lto_fixup_prevailing_decls.
(read_cgraph_and_symbols): Allocate and remove tree_with_vars.
* Make-lang.in (lto/lto.o): Depend on $(TREE_FLOW_H).
From-SVN: r173155
Michael Matz [Fri, 29 Apr 2011 12:23:46 +0000 (12:23 +0000)]
misc.c (gnat_handle_option): Set warn_maybe_uninitialized.
ada/
* gcc-interface/misc.c (gnat_handle_option): Set
warn_maybe_uninitialized.
fortran/
* options.c (options.c): Set warn_maybe_uninitialized.
From-SVN: r173154
Richard Guenther [Fri, 29 Apr 2011 12:00:55 +0000 (12:00 +0000)]
tree-nested.c (get_trampoline_type): Use size_int.
2011-04-29 Richard Guenther <rguenther@suse.de>
* tree-nested.c (get_trampoline_type): Use size_int.
(get_nl_goto_field): Likewise.
* tree-eh.c (lower_try_finally_switch): Use integer_type_node
for all indexes.
(lower_eh_constructs_2): Likewise.
(lower_resx): Likewise.
(lower_eh_dispatch): Likewise.
* tree-mudflap.c (mf_build_string): Use size_int.
(mudflap_register_call): Use integer_type_node for the flag.
(mudflap_enqueue_constant): Use size_int.
* tree-chrec.c (reset_evolution_in_loop): Copy CHREC_VAR
instead of rebuilding it.
From-SVN: r173153
Richard Guenther [Fri, 29 Apr 2011 10:59:33 +0000 (10:59 +0000)]
tree-ssa-structalias.c (get_fi_for_callee): Restructure.
2011-04-29 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (get_fi_for_callee): Restructure.
Handle OBJ_TYPE_REF.
(find_func_aliases_for_call): Use it more consistently.
From-SVN: r173152
Rainer Orth [Fri, 29 Apr 2011 08:49:08 +0000 (08:49 +0000)]
osf.S (UA_SI, [...]): Define.
* src/alpha/osf.S (UA_SI, FDE_ENCODING, FDE_ENCODE, FDE_ARANGE):
Define.
Use them to handle ELF vs. ECOFF differences.
[__osf__] (_GLOBAL__F_ffi_call_osf): Define.
From-SVN: r173151
Alexandre Oliva [Fri, 29 Apr 2011 05:22:08 +0000 (05:22 +0000)]
haifa-sched.c (last_nondebug_scheduled_insn): New.
* haifa-sched.c (last_nondebug_scheduled_insn): New.
(rank_for_schedule): Use it.
(schedule_block): Set it.
From-SVN: r173150
Xinliang David Li [Fri, 29 Apr 2011 00:19:35 +0000 (00:19 +0000)]
split checksum into cfg checksum and line checksum
From-SVN: r173147
GCC Administrator [Fri, 29 Apr 2011 00:18:36 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r173146
Alan Modra [Thu, 28 Apr 2011 23:28:56 +0000 (08:58 +0930)]
rs6000.c (rs6000_delegitimize_address): Handle unspec plus offset.
* config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
unspec plus offset. Tidy macho code.
From-SVN: r173141
Martin Jambor [Thu, 28 Apr 2011 22:49:46 +0000 (00:49 +0200)]
cgraphunit.c (cgraph_preserve_function_body_p): Accept a cgraph node instead of a decl.
2011-04-29 Martin Jambor <mjambor@suse.cz>
* cgraphunit.c (cgraph_preserve_function_body_p): Accept a cgraph
node instead of a decl. Update all callers.
* cgraph.h: Update declaration.
From-SVN: r173138
Michael Meissner [Thu, 28 Apr 2011 20:51:23 +0000 (20:51 +0000)]
update changelog #2
From-SVN: r173135
Ira Rosen [Thu, 28 Apr 2011 19:50:28 +0000 (19:50 +0000)]
re PR tree-optimization/48765 (ICE in vect_transform_stmt)
PR tree-optimization/48765
* tree-vectorizer.h (vect_make_slp_decision): Return bool.
* tree-vect-loop.c (vect_analyze_loop_operations): Add new
argument to indicate if loop aware SLP is being used. Scan
the statements and update the vectorization factor
according to the type of
vectorization before statement analysis.
(vect_analyze_loop_2): Get a return value from
vect_make_slp_decision, pass it to
vect_analyze_loop_operations.
(vectorizable_reduction): Set number of copies to 1 in case of
pure SLP statement.
* tree-vect-stmts.c (vectorizable_conversion,
vectorizable_assignment, vectorizable_shift,
vectorizable_operation, vectorizable_type_demotion,
vectorizable_type_promotion, vectorizable_store,
vectorizable_load): Likewise.
(vectorizable_condition): Move the check that it is not SLP
vectorization before the number of copies check.
* tree-vect-slp.c (vect_make_slp_decision): Return TRUE if
decided to vectorize the loop using SLP.
From-SVN: r173132
Michael Meissner [Thu, 28 Apr 2011 19:09:30 +0000 (19:09 +0000)]
update changelog
From-SVN: r173128
Rainer Orth [Thu, 28 Apr 2011 18:31:52 +0000 (18:31 +0000)]
re PR tree-optimization/48775 (gcc.dg/pr48616.c FAILs on Tru64 UNIX)
PR tree-optimization/48775
* gcc.dg/pr48616.c: Also add -fno-common on alpha*-dec-osf*.
From-SVN: r173125
Paolo Carlini [Thu, 28 Apr 2011 18:12:29 +0000 (18:12 +0000)]
re PR c++/48798 (CV-qualified base class erroneously forbidden)
/cp
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/48798
* semantics.c (finish_base_specifier): cv-qualified base class
is fine, per DR 484.
/testsuite
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/48798
* g++.dg/inherit/pr48798.C: New.
* g++.old-deja/g++.other/base1.C: Adjust.
From-SVN: r173124
Dodji Seketeli [Thu, 28 Apr 2011 18:08:43 +0000 (18:08 +0000)]
re PR c++/48656 ([C++0x] cannot call member function without object)
Fix PR c++/48656
gcc/cp/
* semantics.c (finish_call_expr): Don't forget BASELINK nodes when
considering call expressions involving a member function.
gcc/testsuite/
* gcc/testsuite/g++.dg/template/inherit7.C: New test case.
From-SVN: r173123
Jakub Jelinek [Thu, 28 Apr 2011 17:01:02 +0000 (19:01 +0200)]
re PR middle-end/48597 (x86-64 unwind register save location misses half-register write?)
PR middle-end/48597
* final.c (final_scan_insn): Call dwarf2out_frame_debug even for
inline asm.
From-SVN: r173120
Joseph Myers [Thu, 28 Apr 2011 16:49:49 +0000 (17:49 +0100)]
* config.gcc (*-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-gnu* |
*-*-kopensolaris*-gnu): Don't define SINGLE_LIBC.
(i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu |
i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu,
x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu): Don't use
linux*.h headers.
* config/gnu-user.h (TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS):
Define.
* config/i386/gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
* config/i386/kfreebsd-gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
* config/i386/knetbsd-gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
* config/i386/kopensolaris-gnu.h (MD_UNWIND_SUPPORT): Don't
undefine.
* config/i386/linux-unwind.h (x86_fallback_frame_state): Don't use
REG_NAME.
* config/i386/linux.h (REG_NAME): Don't define.
* config/i386/linux64.h (REG_NAME): Don't define.
* config/linux.h (TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS):
Undefine before defining.
From-SVN: r173119
Joseph Myers [Thu, 28 Apr 2011 16:45:19 +0000 (17:45 +0100)]
configure.ac (*-*-dragonfly*, [...]): Remove cases in libgcj-disabling case statement.
* configure.ac (*-*-dragonfly*, *-*-freebsd*, *-*-netbsd*,
alpha*-dec-osf*, alpha*-*-linux*, alpha*-*-*, sh-*-linux*,
arm-*-elf* | arm*-*-eabi*, arm*-*-linux-gnueabi, frv-*-*): Remove
cases in libgcj-disabling case statement.
(hppa*64*-*-linux*): Set unsupported_languages instead of
disabling target-zlib.
(hppa*64*-*-*): Restrict case in libgcj-disabling case statement
to hppa*64*-*-hpux*.
(hppa*-*-*): Restrict case in libgcj-disabling case statement to
hppa*-*-hpux*.
(ia64*-*-elf*, ia64*-**-hpux*, i[[
3456789]]86-*-elf,
i[[
3456789]]86-*-linux*, *-*-cygwin*, i[[
3456789]]86-*-interix*,
i[[
3456789]]86-*-solaris2*, m32r-*-*, m68k-*-elf*, m68*-*-* |
fido-*-*, powerpc-*-eabi, powerpc-*-eabi* | powerpcle-*-eabi* |
powerpc-*-rtems*, mips*-*-linux*, mips*-*-*, sh-*-* | sh64-*-*,
sparc-*-elf*, sparc64-*-elf*, sparc-*-solaris* |
sparc64-*-solaris* | sparcv9-*-solaris*, *-*-linux* | *-*-gnu* |
*-*-k*bsd*-gnu | *-*-kopensolaris*-gnu, *-*-*): Remove cases in
libgcj-disabling case statement.
* configure: Regenerate.
From-SVN: r173118
Jan Hubicka [Thu, 28 Apr 2011 13:29:54 +0000 (15:29 +0200)]
ipa-inline-analysis.c (will_be_nonconstant_predicate): Take nonconstant_names array.
* ipa-inline-analysis.c (will_be_nonconstant_predicate): Take nonconstant_names
array.
(estimate_function_body_sizes): Build nonconstant_names array; handle
BUILT_IN_CONSTANT_P.
From-SVN: r173070
Joseph Myers [Thu, 28 Apr 2011 13:28:28 +0000 (14:28 +0100)]
configure.ac: Disable Java for targets not supporting libffi.
* configure.ac: Disable Java for targets not supporting libffi.
(*-*-chorusos, *-*-kaos*, am33_2.0-*-linux*, sh*-*-pe|mips*-*-pe):
Remove cases in Java-disabling statement.
(*arm-wince-pe): Change to arm-wince-pe.
(arc-*-*, arm-*-coff, arm-*-pe*, arm-*-riscix*, avr-*-*): Remove
cases in Java-disabling statement.
(bfin-*-*): Don't disable Java again.
(c4x-*-* | tic4x-*-*, tic54x-*-*, cr16-*-*, d10v-*-*, d30v-*-*,
fr30-*-elf*, moxie-*-*, h8300*-*-*, h8500-*-*, hppa1.1-*-osf* |
hppa1.1-*-bsd*, hppa*-*-*elf* | hppa*-*-lites* | hppa*-*-openbsd*,
hppa*-*-pro*, i960-*-*, i[[
3456789]]86-*-coff,
i[[
3456789]]86-*-pe, i[[
3456789]]86-*-sco3.2v5*,
i[[
3456789]]86-*-sco*, i[[
3456789]]86-*-sysv4*,
i[[
3456789]]86-*-beos*, i[[
3456789]]86-*-rdos*,
m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*): Remove cases in
Java-disabling statement.
(mmix-*-*): Don't disable Java again.
(mt-*-*, powerpc*-*-winnt* | powerpc*-*-pe*, powerpcle-*-solaris*,
powerpc-*-beos*, rs6000-*-lynxos*, rs6000-*-*, m68k-apollo-*,
microblaze*, mips*-sde-elf*, mips*-*-irix5*, mips*-*-bsd*,
sparclet-*-aout* | sparc86x-*-*, sparclite-*-*, sparc-*-sunos4*,
tic6x-*-*, v810-*-*, vax-*-*): Remove cases in Java-disabling
statement.
* configure: Regenerate.
From-SVN: r173069
Joseph Myers [Thu, 28 Apr 2011 13:23:08 +0000 (14:23 +0100)]
configure.ac: Separate cases disabling Java and Java libraries from general case over targets.
* configure.ac: Separate cases disabling Java and Java libraries
from general case over targets.
* configure: Regenerate.
From-SVN: r173068
Richard Guenther [Thu, 28 Apr 2011 13:06:44 +0000 (13:06 +0000)]
re PR bootstrap/48804 (Bootstrap compare failure)
2011-04-28 Richard Guenther <rguenther@suse.de>
PR bootstrap/48804
Revert
2011-04-28 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (solve_constraints): Build succ graph
as late as possible.
From-SVN: r173067
Paolo Carlini [Thu, 28 Apr 2011 10:55:56 +0000 (10:55 +0000)]
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
Revert unintended changes to include/parallel files.
From-SVN: r173066
Paolo Carlini [Thu, 28 Apr 2011 10:52:17 +0000 (10:52 +0000)]
re PR libstdc++/48760 (std::complex constructor buggy in the face of NaN's)
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/48760
* include/std/complex (complex<float>::complex(float, float),
complex<double>::complex(double, double),
complex<long double>::complex(long double, long double)): Use
list-initialization in C++0x mode, initialize in the body in
C++03 mode.
* testsuite/26_numerics/complex/cons/48760.cc: New.
* testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/bitset (_Base_bitset(unsigned long long)): Minor
tweak, remove redundant round braces.
From-SVN: r173065
Richard Guenther [Thu, 28 Apr 2011 09:55:41 +0000 (09:55 +0000)]
re PR tree-optimization/40052 (missed optimizations on (extended) logical types: (x | 1) --> 1)
2011-04-28 Richard Guenther <rguenther@suse.de>
PR tree-optimization/40052
PR tree-optimization/15347
* gcc.dg/tree-ssa/vrp57.c: New testcase.
* gcc.dg/pr15347.c: Likewise.
From-SVN: r173064
Paolo Carlini [Thu, 28 Apr 2011 09:54:04 +0000 (09:54 +0000)]
re PR c++/48530 ([C++0x][SFINAE] Hard errors with deleted d'tors)
/cp
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/48530
* tree.c (build_cplus_new): Check build_target_expr return
value for error_mark_node.
/testsuite
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/48530
* g++.dg/cpp0x/sfinae18.C: New.
From-SVN: r173063
Paolo Carlini [Thu, 28 Apr 2011 09:21:23 +0000 (09:21 +0000)]
re PR c++/48771 ([C++0x] is_literal_type incorrect for references to non-literal types)
/cp
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/48771
* semantics.c (literal_type_p): Reference types are literal types,
per the FDIS.
(valid_type_in_constexpr_fundecl_p): Remove.
(is_valid_constexpr_fn): Adjust.
/testsuite
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/48771
* g++.dg/ext/is_literal_type1.C: New.
From-SVN: r173062
Richard Guenther [Thu, 28 Apr 2011 09:11:17 +0000 (09:11 +0000)]
tree-ssa-structalias.c (dump_constraint): Don't end the line.
2011-04-28 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (dump_constraint): Don't end the line.
(debug_constraint): Do it here.
(dump_constraints): And here.
(rewrite_constraints): And here.
(dump_constraint_edge): Remove.
(dump_constraint_graph): Rewrite to produce DOT output.
(solve_constraints): Build succ graph as late as possible.
Dump constraint graphs before and after solving.
From-SVN: r173061
Richard Guenther [Thu, 28 Apr 2011 09:08:42 +0000 (09:08 +0000)]
tree-ssa-structalias.c (find_func_aliases_for_builtin_call): New function split out from ...
2011-04-28 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
New function split out from ...
(find_func_aliases): ... here. Call it.
(find_func_aliases_for_call): Likewise.
From-SVN: r173060
Tobias Burnus [Thu, 28 Apr 2011 05:48:18 +0000 (07:48 +0200)]
re PR fortran/48112 (generic interface to external function in module)
2011-04-28 Tobias Burnus <burnus@net-b.de>
PR fortran/48112
* resolve.c (resolve_fl_var_and_proc): Print diagnostic of
function results only once.
(resolve_symbol): Always resolve function results.
PR fortran/48279
* expr.c (gfc_check_vardef_context): Fix handling of generic
EXPR_FUNCTION.
* interface.c (check_interface0): Reject internal functions
in generic interfaces, unless -std=gnu.
2011-04-28 Tobias Burnus <burnus@net-b.de>
PR fortran/48112
PR fortran/48279
* gfortran.dg/interface_35.f90: New.
* gfortran.dg/erfc_scaled_1.f90: Don't compile with -pedantic.
* gfortran.dg/func_result_6.f90: Add dg-warning.
* gfortran.dg/bessel_1.f90: Ditto.
* gfortran.dg/hypot_1.f90: Ditto.
* gfortran.dg/proc_ptr_comp_20.f90: Ditto.
* gfortran.dg/proc_ptr_comp_21.f90: Ditto.
* gfortran.dg/interface_assignment_4.f90: Ditto.
From-SVN: r173059
Jason Merrill [Thu, 28 Apr 2011 01:53:53 +0000 (21:53 -0400)]
re PR libstdc++/48760 (std::complex constructor buggy in the face of NaN's)
PR libstdc++/48760
Implement list-initialization of _Complex.
* decl.c (reshape_init_r): Allow {real,imag} for _Complex.
(check_initializer): Likewise.
* call.c (build_complex_conv): New.
(implicit_conversion): Call it.
(convert_like_real): Handle it.
* typeck2.c (check_narrowing): Handle it.
From-SVN: r173058
Jason Merrill [Thu, 28 Apr 2011 01:53:43 +0000 (21:53 -0400)]
init.c (build_vec_delete_1): Look for sfk_deleting_destructor to decide whether to delete.
* init.c (build_vec_delete_1): Look for sfk_deleting_destructor to
decide whether to delete.
(build_vec_init): Pass sfk_complete_destructor.
From-SVN: r173057
Jason Merrill [Thu, 28 Apr 2011 01:53:34 +0000 (21:53 -0400)]
re PR c++/40975 (ICE in copy_tree_r on array new)
PR c++/40975
* cp-tree.def (VEC_INIT_EXPR): Add third operand.
* cp-tree.h (VEC_INIT_EXPR_NELTS): New.
* cp-gimplify.c (cp_gimplify_expr) [VEC_INIT_EXPR]: Handle it.
* tree.c (build_vec_init_expr): Handle getting pointer/nelts.
(build_vec_init_elt): Don't expect an array type.
(build_array_copy): Adjust.
* init.c (perform_member_init): Adjust.
(build_new_1): Use build_vec_init_expr.
From-SVN: r173056
Gabriel Dos Reis [Thu, 28 Apr 2011 01:25:01 +0000 (01:25 +0000)]
internal-fn.h (internal_fn_name_array): Declare.
* internal-fn.h (internal_fn_name_array): Declare.
(internal_fn_flags_array): Likewise.
From-SVN: r173055
GCC Administrator [Thu, 28 Apr 2011 00:18:34 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r173054
Tobias Burnus [Wed, 27 Apr 2011 20:32:21 +0000 (22:32 +0200)]
re PR fortran/48788 (ICE: SIGSEGV in resolve_global_procedure (resolve.c:2190) on invalid (?) fortran code)
2011-04-27 Tobias Burnus <burnus@net-b.de>
PR fortran/48788
* resolve.c (resolve_global_procedure): Error recovery -
avoid segfault for (non)character-returning functions.
2011-04-27 Tobias Burnus <burnus@net-b.de>
PR fortran/48788
* gfortran.dg/whole_file_34.f90: New.
From-SVN: r173048
Paolo Carlini [Wed, 27 Apr 2011 18:37:32 +0000 (18:37 +0000)]
move.h (move_if_noexcept): Add.
2011-04-27 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/move.h (move_if_noexcept): Add.
* testsuite/20_util/move_if_noexcept/requirements/
explicit_instantiation.cc: New.
* testsuite/20_util/move_if_noexcept/1.cc: Likewise.
From-SVN: r173044
Uros Bizjak [Wed, 27 Apr 2011 18:21:22 +0000 (20:21 +0200)]
i386.md (ssemodesuffix): Merge with ssevecsize, ssemodefsuffix, ssescalarmodesuffix and avxmodesuffixp.
* config/i386/i386.md (ssemodesuffix): Merge with ssevecsize,
ssemodefsuffix, ssescalarmodesuffix and avxmodesuffixp.
Move from sse.md.
(ssemodefsuffix): Remove.
(ssevecmodesuffix): New mode attribute.
(fix_trunc<mode>di_sse, fix_trunc<mode>si_sse,
*float<SSEMODEI24:mode><MODEF:mode>2_mixed_interunit,
*float<SSEMODEI24:mode><MODEF:mode>2_mixed_nointerunit,
*float<SSEMODEI24:mode><MODEF:mode>2_sse_interunit,
*float<SSEMODEI24:mode><MODEF:mode>2_sse_nointerunit, setcc_<mode>_sse,
*sqrt<mode>2_sse, sse4_1_round<mode>2, <smaxmin:code><mode>3,
*ieee_smin<mode>3, *ieee_smax<mode>3): Adjust assembler templates for
ssemodesuffix mode attribute.
(float splitters): Use ssevecmodesuffix mode attribute.
* config/i386/sse.md (ssescalarmode): Merge with avxscalarmode.
(sseinsmode): Rename from avxvecmode.
(avxsizesuffix): Rename from avxmodesuffix.
(sseintvecmode): Rename from avxpermvecmode.
(ssedoublevecmode): Rename from ssedoublesizemode.
(ssehalfvecmode): Rename from avxhalfvecmode.
(ssescalarmode): Rename from avxscalarmode.
(<sse>_comi, <sse>_ucomi, sse4a_movnt<mode>): Adjust assembler
templates for ssemodesuffix mode attribute.
(*andnot<mode>3, *<any_logic:code><mode>3): Use ssevecmodesuffix
mode attribute.
Adjust RTX patterns globally for renamed mode attributes.
From-SVN: r173043
Jan Hubicka [Wed, 27 Apr 2011 17:28:51 +0000 (17:28 +0000)]
inline-9.c: New testcase.
* testsuite/gcc.dg/tree-ssa/inline-9.c: New testcase.
* ipa-inline.h (struct inline_edge_summary): Add predicate pointer.
* ipa-inline-analysis.c: Include alloc-pool.h.
(edge_predicate_pool): New.
(trye_predicate_p): New function
(false_predicate_p): New function.
(add_clause): Sanity check that false clauses are "optimized";
never add clauses to predicate that is already known to be false.
(and_predicate): Use flase_predicate_p.
(evaulate_predicate): Rename to ...
(evaluate_predicate): ... this one; update all callers; assert
that false is not listed among possible truths.
(dump_predicate): Use true_predicate_p.
(account_size_time): Use false_predicate_p.
(evaulate_conditions_for_edge): Rename to ...
(evaluate_conditions_for_edge) ... this one.
(edge_set_predicate): New function.
(inline_edge_duplication_hook): Duplicate edge predicates.
(inline_edge_removal_hook): Free edge predicates.
(dump_inline_edge_summary): Add INFO parameter; dump
edge predicates.
(dump_inline_summary): Update.
(estimate_function_body_sizes): Set edge predicates.
(estimate_calls_size_and_time): Handle predicates.
(estimate_callee_size_and_time): Update.
(remap_predicate): Add toplev_predicate; update comment.
(remap_edge_predicates): New function.
(inline_merge_summary): Compute toplev predicate; update.
(read_predicate): New function.
(read_inline_edge_summary): Use it.
(inline_read_section): Likewise.
(write_predicate): New function.
(write_inline_edge_summary): Use it.
(inline_write_summary): Likewise.
(inline_free_summary): Free alloc pool and edge summary vec.
From-SVN: r173042
Richard Guenther [Wed, 27 Apr 2011 16:06:21 +0000 (16:06 +0000)]
tree-ssa-structalias.c (changed_count): Remove.
2011-04-27 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (changed_count): Remove.
(changed): Use a bitmap.
(unify_nodes): Adjust.
(do_sd_constraint): Likewise.
(do_ds_constraint): Likewise.
(do_complex_constraint): Likewise.
(solve_graph): Likewise.
From-SVN: r173040
Jan Hubicka [Wed, 27 Apr 2011 16:03:03 +0000 (18:03 +0200)]
* cgraphunit.c (cgraph_process_new_functions): Fix ordering issue.
From-SVN: r173039
Jason Merrill [Wed, 27 Apr 2011 15:56:56 +0000 (11:56 -0400)]
class.c (resolve_address_of_overloaded_function): Don't change OVERLOAD to TREE_LIST.
* class.c (resolve_address_of_overloaded_function): Don't
change OVERLOAD to TREE_LIST.
* pt.c (print_candidates_1): Remove nonsensical assert.
From-SVN: r173037
Jason Merrill [Wed, 27 Apr 2011 15:56:46 +0000 (11:56 -0400)]
re PR c++/48046 (Expected diagnostic "reference to 'type' is ambiguous" not given for function-local static declaration)
PR c++/48046
* parser.c (cp_parser_diagnose_invalid_type_name): Commit
to tentative parse sooner.
From-SVN: r173036
Nick Clifton [Wed, 27 Apr 2011 14:58:21 +0000 (14:58 +0000)]
20020312-2.c: Add definition for RX.
* gcc.dg/
20020312-2.c: Add definition for RX.
* lib/target-supports.exp (add_options_for_ieee): Use -mnofpu
option with RX targets.
* gcc.target/rx/pack.c: Replace C++ style // comments with C style
/* */ comments.
From-SVN: r173034
Uros Bizjak [Wed, 27 Apr 2011 14:18:25 +0000 (16:18 +0200)]
predicates.md (avx_vpermilp_*_operand): Remove.
* config/i386/predicates.md (avx_vpermilp_*_operand): Remove.
(avx_vperm2f128_*_operand): Ditto.
* config/i386/sse.md (*avx_vpermilp<mode>): Remove operand2 predicate.
Use avx_vpermilp_parallel in insn condition.
(*avx_vperm2f128<mode>_nozero): Remove operand3 predicate.
Use avx_vperm2f128_parallel in insn condition.
From-SVN: r173031
Richard Guenther [Wed, 27 Apr 2011 14:16:49 +0000 (14:16 +0000)]
Makefile.in (tree-ssa-structalias.o): Remove gt-tree-ssa-structalias.h dependency.
2011-04-27 Richard Guenther <rguenther@suse.de>
* Makefile.in (tree-ssa-structalias.o): Remove
gt-tree-ssa-structalias.h dependency.
(GTFILES): Remove tree-ssa-structalias.c.
* tree.c (allocate_decl_uid): New function.
(make_node_stat): Use it.
(copy_node_stat): Likewise.
* tree.h (allocate_decl_uid): Declare.
* tree-ssa-alias.h (delete_alias_heapvars): Remove.
* tree-ssa.c (delete_tree_ssa): Do not call delete_alias_heapvars.
* tree-flow.h (struct var_ann_d): Remove is_heapvar flag.
* tree-ssa-live.c (remove_unused_locals): Do not check is_heapvar
flag.
* tree-ssa-structalias.c (heapvar_for_stmt): Remove.
(struct heapvar_map): Likewise.
(heapvar_map_eq, heapvar_map_hash, heapvar_lookup,
heapvar_insert): Likewise.
(make_heapvar_for): Rename to ...
(make_heapvar): ... this. Simplify.
(fake_var_decl_obstack): New global var.
(build_fake_var_decl): New function.
(make_constraint_from_heapvar): Adjust.
(handle_lhs_call): Likewise.
(create_function_info_for): Likewise.
(intra_create_variable_infos): Likewise.
(init_alias_vars): Allocate fake_var_decl_obstack.
(init_alias_heapvars, delete_alias_heapvars): Remove.
(compute_points_to_sets): Do not call init_alias_heapvars.
(ipa_pta_execute): Likewise.
(delete_points_to_sets): Free fake_var_decl_obstack.
* gcc.dg/tree-ssa/pr23382.c: Remove.
From-SVN: r173030
Ulrich Weigand [Wed, 27 Apr 2011 13:10:17 +0000 (13:10 +0000)]
divmovti4.c (union qword_UTItype): New data type.
* config/spu/divmovti4.c (union qword_UTItype): New data type.
(si_from_UTItype, si_to_UTItype): New functions.
(__udivmodti4): Use them to implement type-punning.
* config/spu/multi3.c (union qword_TItype): New data type.
(si_from_TItype, si_to_TItype): New functions.
(__multi3): Use them to implement type-punning.
From-SVN: r173029
Ulrich Weigand [Wed, 27 Apr 2011 13:09:24 +0000 (13:09 +0000)]
* config/spu/spu.c (spu_expand_epilogue): Do not emit barrier.
From-SVN: r173028
Jan Hubicka [Wed, 27 Apr 2011 12:13:08 +0000 (14:13 +0200)]
ipa-prop.c (function_insertion_hook_holder): New holder.
* ipa-prop.c (function_insertion_hook_holder): New holder.
(ipa_add_new_function): New function.
(ipa_register_cgraph_hooks, ipa_unregister_cgraph_hooks): Register/deregister
holder.
From-SVN: r173026
Kaz Kojima [Wed, 27 Apr 2011 10:42:03 +0000 (10:42 +0000)]
pr48767.c: New test.
* gcc.c-torture/compile/pr48767.c: New test.
From-SVN: r173020
Richard Guenther [Wed, 27 Apr 2011 10:36:35 +0000 (10:36 +0000)]
re PR tree-optimization/48772 (ICE: SIGSEGV in walk_non_aliased_vuses (gimple.h:1100) with -O -fnon-call-exceptions -fno-tree-ccp -fno-tree-dce)
2011-04-27 Richard Guenther <rguenther@suse.de>
PR tree-optimization/48772
* tree-ssa-pre.c (eliminate): Update call stmts after elimination
only.
* g++.dg/pr48772.C: New testcase.
From-SVN: r173019
Richard Guenther [Wed, 27 Apr 2011 09:17:01 +0000 (09:17 +0000)]
tree-ssa-alias.c (indirect_refs_may_alias_p): Fix TARGET_MEM_REF handling.
2011-04-27 Richard Guenther <rguenther@suse.de>
* tree-ssa-alias.c (indirect_refs_may_alias_p): Fix
TARGET_MEM_REF handling.
From-SVN: r173018
Nick Clifton [Wed, 27 Apr 2011 09:15:24 +0000 (09:15 +0000)]
Fix typo.
From-SVN: r173017
Nick Clifton [Wed, 27 Apr 2011 09:14:22 +0000 (09:14 +0000)]
frv.h (enum reg_class): Delete EVEN_ACC_REGS, ACC_REGS, FEVEN_REGS, FPR_REGS, EVEN_REGS.
* config/frv/frv.h (enum reg_class): Delete EVEN_ACC_REGS,
ACC_REGS, FEVEN_REGS, FPR_REGS, EVEN_REGS.
(REG_CLASS_NAMES): Likewise.
(REG_CLASS_CONTENTS): Likewise.
(EVEN_ACC_REGS): New macro. Alias for QUAD_ACC_REGS.
(ACC_REGS): New macro. Alias for QUAD_ACC_REGS.
(FEVEN_REGS): New macro. Alias for QUAD_ACC_REGS.
(FPR_REGS): New macro. Alias for QUAD_ACC_REGS.
(EVEN_REGS): New macro. Alias for QUAD_REGS.
* config/frv/frv.c (frv_secondary_reload_class): Remove use of
duplicate register classes.
(frv_class_likely_spileld_p): Likewise.
(frv_register_move_cost): Likewise.
From-SVN: r173016
Nick Clifton [Wed, 27 Apr 2011 09:06:24 +0000 (09:06 +0000)]
mcore.h (REGNO_REG_CLASS): Do not index beyond the end of the regno_reg_class array.
* config/mcore/mcore.h (REGNO_REG_CLASS): Do not index beyond the
end of the regno_reg_class array.
From-SVN: r173015
Jakub Jelinek [Wed, 27 Apr 2011 07:04:25 +0000 (09:04 +0200)]
re PR c/48742 (Internal error in gimplify_expr)
PR c/48742
* c-typeck.c (build_binary_op): Don't wrap arguments if
int_operands is true.
* gcc.c-torture/compile/pr48742.c: New test.
From-SVN: r173011
Jason Merrill [Wed, 27 Apr 2011 05:17:20 +0000 (01:17 -0400)]
re PR c++/42687 (The prevention of ADL with the help of parentheses doesn't work)
PR c++/42687
* parser.c (cp_parser_primary_expression): Set *idk to
CP_ID_KIND_NONE for a parenthesized identifier.
From-SVN: r173007
Jason Merrill [Wed, 27 Apr 2011 05:17:10 +0000 (01:17 -0400)]
ptree.c (cxx_print_type): Dump fullname.
* ptree.c (cxx_print_type) [TYPENAME_TYPE]: Dump fullname.
(cxx_print_identifier): Correct indentation.
From-SVN: r173006
Jason Merrill [Wed, 27 Apr 2011 05:17:01 +0000 (01:17 -0400)]
* g++.dg/cpp0x/initlist48.C: New.
From-SVN: r173005
Ian Lance Taylor [Wed, 27 Apr 2011 00:49:54 +0000 (00:49 +0000)]
Use backend interface for struct types.
* go-gcc.cc (Gcc_backend::struct_type): Implement.
From-SVN: r173004
GCC Administrator [Wed, 27 Apr 2011 00:19:23 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r173002
Kaz Kojima [Tue, 26 Apr 2011 22:25:59 +0000 (22:25 +0000)]
sh.c (sh_gimplify_va_arg_expr): Don't call targetm.calls.must_pass_in_stack for void type.
* config/sh/sh.c (sh_gimplify_va_arg_expr): Don't call
targetm.calls.must_pass_in_stack for void type.
From-SVN: r172991
Thomas Koenig [Tue, 26 Apr 2011 22:07:11 +0000 (22:07 +0000)]
decl.c (gfc_match_end): Check that the block name starts with "block@".
2011-04-26 Thomas Koenig <tkoenig@gcc.gnu.org>
* decl.c (gfc_match_end): Check that the block name starts
with "block@".
* parse.c (gfc_build_block_ns): Make block names unique by
numbering them.
From-SVN: r172990
Jan Hubicka [Tue, 26 Apr 2011 22:05:50 +0000 (00:05 +0200)]
cgraphbuild.c (build_cgraph_edges): Update call of cgraph_create_edge and cgraph_create_indirect_edge.
* cgraphbuild.c (build_cgraph_edges): Update call
of cgraph_create_edge and cgraph_create_indirect_edge.
* cgraph.c (cgraph_create_edge_including_clones,
cgraph_create_edge_1, cgraph_allocate_init_indirect_info,
cgraph_update_edges_for_call_stmt_node): Do not take nest
argument; do not initialize call_stmt_size/time.
(dump_cgraph_node): Do not dump nest.
(cgraph_clone_edge): Do not take loop_nest argument;
do not propagate it; do not clone call_stmt_size/time.
(cgraph_clone_node): Likewise.
(cgraph_create_virtual_clone): Update.
* cgraph.h (struct cgraph_edge): Remove
call_stmt_size/call_stmt_time/loop_nest.
(cgraph_create_edge, cgraph_create_indirect_edge,
cgraph_create_edge_including_clones, cgraph_clone_node): Update
prototype.
* tree-emutls.c (gen_emutls_addr): Update.
* ipa-inline-transform.c (update_noncloned_frequencies): Do not handle
loop_nest; handle indirect calls, too.
(clone_inlined_nodes): Do not care about updating inline summaries.
* cgraphunit.c (cgraph_copy_node_for_versioning): Update.
* lto-cgraph.c (lto_output_edge, input_node, input_edge): Do not
stream call_stmt_size/call_stmt_time/loop_nest.
* ipa-inline.c (edge_badness): Update.
(ipa_inline): dump summaries after inlining.
* ipa-inline.h (struct inline_edge_summary, inline_edge_summary_t):
new.
(inline_edge_summary): New function.
* ipa-inline-analysis.c (edge_duplication_hook_holder): New holder.
(inline_edge_removal_hook): Handle edge summaries.
(inline_edge_duplication_hook): New hook.
(inline_summary_alloc): Alloc hooks.
(initialize_growth_caches): Do not register removal hooks.
(free_growth_caches); Do not free removal hook.
(dump_inline_edge_summary): New function.
(dump_inline_summary): Use it.
(estimate_function_body_sizes, estimate_edge_size_and_time): Update.
(inline_update_callee_summaries): New function.
(inline_merge_summary): Use it.
(do_estimate_edge_time, do_estimate_edge_growth): Update.
(read_inline_edge_summary): New function.
(inline_read_section): Use it.
(write_inline_edge_summary): New function.
(inline_write_summary): Use it.
(inline_free_summary): Free edge new holders.
* tree-inline.c (copy_bb): Update.
From-SVN: r172989
Jason Merrill [Tue, 26 Apr 2011 21:22:55 +0000 (17:22 -0400)]
tree-eh.c (lower_try_finally_switch): Create the label along with the CASE_LABEL_EXPR.
* tree-eh.c (lower_try_finally_switch): Create the label along with
the CASE_LABEL_EXPR.
From-SVN: r172988
Jason Merrill [Tue, 26 Apr 2011 21:12:57 +0000 (17:12 -0400)]
objc-act.c (objc_fold_objc_type_ref): Remove.
* objc-act.c (objc_fold_objc_type_ref): Remove.
* objc-act.h: Remove prototype.
From-SVN: r172986
Jason Merrill [Tue, 26 Apr 2011 19:28:25 +0000 (15:28 -0400)]
re PR c++/48530 ([C++0x][SFINAE] Hard errors with deleted d'tors)
PR c++/48530
* decl.c (cxx_maybe_build_cleanup): Add complain parm.
* tree.c (force_target_expr): Add complain parm.
(build_target_expr_with_type): Likewise.
(get_target_expr_sfinae): Split out.
(build_vec_init_expr, bot_manip): Adjust.
* init.c (build_vec_delete, build_vec_delete_1): Add complain parm.
(build_delete, build_dtor_call): Likewise.
(perform_direct_initialization_if_possible): Adjust.
(build_vec_init): Handle error return.
* cvt.c (force_rvalue): Add complain parm.
Call build_special_member_call directly.
* decl2.c (delete_sanity): Add complain parm.
(build_cleanup): Adjust.
* pt.c (tsubst_copy_and_build, tsubst_expr): Adjust.
* semantics.c (finish_stmt_expr_expr): Adjust.
(finish_compound_literal): Adjust.
* parser.c (cp_parser_delete_expression): Adjust.
* typeck2.c (build_functional_cast): Adjust.
* cp-tree.h: Adjust.
From-SVN: r172985
Thomas Koenig [Tue, 26 Apr 2011 18:39:55 +0000 (18:39 +0000)]
frontend-passes.c (inserted_block): New variable.
2011-04-26 Thomas Koenig <tkoenig@gcc.gnu.org>
* frontend-passes.c (inserted_block): New variable.
(changed_statement): Likewise.
(create_var): Encase statement to be operated on in a BLOCK.
Adjust code insertion for BLOCK.
(cfe_code): Set inserted_block and changed_statement to NULL.
From-SVN: r172983
David S. Miller [Tue, 26 Apr 2011 18:29:11 +0000 (18:29 +0000)]
configure.ac (gcc_cv_as_sparc_gotdata_op): Specify alignment.
2011-04-26 David S. Miller <davem@davemloft.net>
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.ac (gcc_cv_as_sparc_gotdata_op): Specify alignment.
* configure: Regenerate.
Co-Authored-By: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
From-SVN: r172982
Michael Meissner [Tue, 26 Apr 2011 17:48:29 +0000 (17:48 +0000)]
PR target/48258, improve vector reduction on power7
From-SVN: r172981
Joseph Myers [Tue, 26 Apr 2011 16:35:51 +0000 (17:35 +0100)]
fr30.h (inhibit_libc): Don't define.
* config/fr30/fr30.h (inhibit_libc): Don't define.
* config/m32r/m32r-protos.h: Correct comment.
* config/v850/v850.h (GHS_default_section_names,
GHS_current_section_names): Use tree, not union tree_node *.
From-SVN: r172980
Rainer Orth [Tue, 26 Apr 2011 16:18:04 +0000 (16:18 +0000)]
Fixed gcc.dg/binop-xor[1-5].c filenames.
From-SVN: r172979
Xinliang David Li [Tue, 26 Apr 2011 16:06:09 +0000 (16:06 +0000)]
Implement -Wno-maybe-uninitialized
From-SVN: r172978
Martin Jambor [Tue, 26 Apr 2011 15:49:22 +0000 (17:49 +0200)]
class.c (cp_fold_obj_type_ref): Remove.
2011-04-26 Martin Jambor <mjambor@suse.cz>
* class.c (cp_fold_obj_type_ref): Remove.
* cp-tree.h (cp_fold_obj_type_ref): Remove declaration.
From-SVN: r172977
Rainer Orth [Tue, 26 Apr 2011 15:42:17 +0000 (15:42 +0000)]
iris6.h (LOCAL_LABEL_PREFIX): Don't test TARGET_NEWABI.
* config/mips/iris6.h (LOCAL_LABEL_PREFIX): Don't test
TARGET_NEWABI.
(WINT_TYPE_SIZE): Use INT_TYPE_SIZE.
(TARGET_OS_CPP_BUILTINS): Remove TARGET_IRIX6 guards.
From-SVN: r172976
Rainer Orth [Tue, 26 Apr 2011 15:33:10 +0000 (15:33 +0000)]
mips.h (DBX_OUTPUT_SOURCE_LINE): Remove.
* config/mips/mips.h (DBX_OUTPUT_SOURCE_LINE): Remove.
* config/mips/mips.opt (mmips-tfile): Remove.
* doc/install.texi (Specific, mips-*-*): Move mips-tfile,
mips-tdump reference to ...
(Specific, alpha*-dec-osf5.1): ... here.
Adapt for Tru64 UNIX.
* doc/trouble.texi (Cross-Compiler Problems): Replace MIPS
reference by Tru64 UNIX.
From-SVN: r172975
Joseph Myers [Tue, 26 Apr 2011 14:56:51 +0000 (15:56 +0100)]
* de.po: Update.
From-SVN: r172973
Jakub Jelinek [Tue, 26 Apr 2011 13:35:21 +0000 (15:35 +0200)]
re PR debug/48768 (ICE in get_expr_operands())
PR debug/48768
* tree-ssa.c (insert_debug_temp_for_var_def): If degenerate_phi_result
is error_mark_node, set value to NULL.
* gcc.dg/pr48768.c: New test.
From-SVN: r172968
Jakub Jelinek [Tue, 26 Apr 2011 13:33:49 +0000 (15:33 +0200)]
re PR tree-optimization/48734 (ICE in eliminate_redundant_comparison, at tree-ssa-reassoc.c:1321)
PR tree-optimization/48734
* tree-ssa-reassoc.c (eliminate_redundant_comparison): Give up
if return value from maybe_fold_*_comparsions isn't something
the code is prepared to handle.
* gcc.c-torture/compile/pr48734.c: New test.
From-SVN: r172967
Jakub Jelinek [Tue, 26 Apr 2011 13:31:17 +0000 (15:31 +0200)]
re PR testsuite/48753 (FAIL: gcc.dg/tree-prof/val-prof-2.c)
PR testsuite/48753
* gcc.dg/tree-prof/val-prof-2.c: Adjust for 32-bit HWI.
From-SVN: r172966
Uros Bizjak [Tue, 26 Apr 2011 13:02:55 +0000 (15:02 +0200)]
predicates.md (ext_QIreg_operand): Remove extra mode check.
* config/i386/predicates.md (ext_QIreg_operand): Remove extra
mode check.
(ext_QIreg_nomode_operands): Remove.
* config/i386/i386.md (*anddi_1): Use ext_QIreg_operand.
(*andsi_1): Ditto.
(*andhi_1): Ditto.
From-SVN: r172965
Richard Guenther [Tue, 26 Apr 2011 13:00:53 +0000 (13:00 +0000)]
re PR c/48731 (regression: __attribute__((flatten)) produces error with function calling variadic functions)
2011-04-26 Richard Guenther <rguenther@suse.de>
PR tree-optimization/48731
* gcc.dg/torture/pr48731.c: New testcase.
From-SVN: r172964
Andrew Stubbs [Tue, 26 Apr 2011 10:51:04 +0000 (10:51 +0000)]
arm.c (arm_gen_constant): Remove can_negate_initial.
2011-04-26 Andrew Stubbs <ams@codesourcery.com>
gcc/
* config/arm/arm.c (arm_gen_constant): Remove can_negate_initial.
From-SVN: r172962
Paolo Carlini [Tue, 26 Apr 2011 10:34:44 +0000 (10:34 +0000)]
2011-04-26 Paolo Carlini <paolo.carlini@oracle.com>
Tweak recent ChangeLog entry.
From-SVN: r172960
Richard Guenther [Tue, 26 Apr 2011 10:14:34 +0000 (10:14 +0000)]
re PR preprocessor/48248 (Wrong error message location when compiling preprocessed code)
2011-04-26 Richard Guenther <rguenther@suse.de>
PR preprocessor/48248
* c-ppoutput.c (maybe_print_line): Always optimize newlines
for output size with -P.
From-SVN: r172959
Richard Biener [Tue, 26 Apr 2011 10:12:34 +0000 (10:12 +0000)]
c-typeck.c (build_unary_op): Do not expand array-refs via pointer arithmetic.
2011-04-26 Richard Guenther <rguenther@suse.de>
* c-typeck.c (build_unary_op): Do not expand array-refs via
pointer arithmetic. Only adjust qualifiers for function types.
From-SVN: r172958
Richard Biener [Tue, 26 Apr 2011 10:12:14 +0000 (10:12 +0000)]
re PR tree-optimization/48694 (possible memory hog bug)
2011-04-26 Richard Guenther <rguenther@suse.de>
PR middle-end/48694
* tree.h (OEP_CONSTANT_ADDRESS_OF): New operand_equal_flag.
* fold-const.c (operand_equal_p): For TREE_CONSTANT ADDR_EXPRs
compare the operands with OEP_CONSTANT_ADDRESS_OF. Treat
trees with TREE_SIDE_EFFECTS equal when OEP_CONSTANT_ADDRESS_OF
is set.
* gcc.dg/torture/pr48694-1.c: New testcase.
* gcc.dg/torture/pr48694-2.c: Likewise.
From-SVN: r172957
Richard Guenther [Tue, 26 Apr 2011 10:03:12 +0000 (10:03 +0000)]
re PR testsuite/48753 (FAIL: gcc.dg/tree-prof/val-prof-2.c)
2011-04-26 Richard Guenther <rguenther@suse.de>
PR testsuite/48753
* gcc.dg/tree-prof/val-prof-2.c: Adjust.
From-SVN: r172955
Richard Guenther [Tue, 26 Apr 2011 09:21:44 +0000 (09:21 +0000)]
re PR tree-optimization/48694 (possible memory hog bug)
2011-04-26 Richard Guenther <rguenther@suse.de>
PR middle-end/48694
* tree.h (OEP_CONSTANT_ADDRESS_OF): New operand_equal_flag.
* fold-const.c (operand_equal_p): For TREE_CONSTANT ADDR_EXPRs
compare the operands with OEP_CONSTANT_ADDRESS_OF. Treat
trees with TREE_SIDE_EFFECTS equal when OEP_CONSTANT_ADDRESS_OF
is set.
* gcc.dg/torture/pr48694-1.c: New testcase.
* gcc.dg/torture/pr48694-2.c: Likewise.
From-SVN: r172954
GCC Administrator [Tue, 26 Apr 2011 00:19:11 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r172950
Paolo Carlini [Mon, 25 Apr 2011 23:50:35 +0000 (23:50 +0000)]
c-common.c (struct c_common_resword): Add __underlying_type.
/gcc
2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
* c-family/c-common.c (struct c_common_resword): Add
__underlying_type.
* c-family/c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
* doc/extend.texi: Document __underlying_type.
/cp
2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
* cp-tree.def: Add a new UNDERLYING_TYPE tree code.
* cp-tree.h (enum cp_trait_kind): Add CPTK_UNDERLYING_TYPE, tidy.
(UNDERLYING_TYPE_TYPE): Add.
* cp-objcp-common.c (cp_common_init_ts): Mark UNDERLYING_TYPE
as TS_COMMON.
* parser.c (cp_lexer_next_token_is_decl_specifier_keyword,
cp_parser_simple_type_specifier): Handle UNDERLYING_TYPE.
(cp_parser_trait_expr): Deal with RID_UNDERLYING_TYPE; tidy.
* semantics.c (finish_underlying_type): New.
* typeck.c (structural_comptypes): Handle UNDERLYING_TYPE.
* error.c (dump_type, dump_type_prefix, dump_type_suffix): Likewise.
* cxx-pretty-print.c (p_cxx_type_id): Likewise.
* tree.c (cp_walk_subtrees): Likewise.
* pt.c (for_each_template_parm_r, tsubst, unify,
dependent_type_p_r): Likewise.
* mangle.c (write_type): Sorry for __underlying_type.
/testsuite
2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/ext/underlying_type1.C: New.
* g++.dg/ext/underlying_type2.C: Likewise.
* g++.dg/ext/underlying_type3.C: Likewise.
* g++.dg/ext/underlying_type4.C: Likewise.
* g++.dg/ext/underlying_type5.C: Likewise.
* g++.dg/ext/underlying_type6.C: Likewise.
* g++.dg/ext/underlying_type7.C: Likewise.
* g++.dg/ext/underlying_type8.C: Likewise.
* g++.dg/ext/underlying_type9.C: Likewise.
* g++.dg/ext/underlying_type10.C: Likewise.
From-SVN: r172945
Paolo Carlini [Mon, 25 Apr 2011 23:04:16 +0000 (23:04 +0000)]
type_traits (struct underlying_type): Add.
2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (struct underlying_type): Add.
* testsuite/20_util/underlying_type/requirements/typedefs-1.cc: New.
* testsuite/20_util/underlying_type/requirements/typedefs-2.cc:
Likewise.
* testsuite/20_util/underlying_type/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
line number.
From-SVN: r172944
Paolo Carlini [Mon, 25 Apr 2011 22:27:19 +0000 (22:27 +0000)]
c-common.c (struct c_common_resword): Add __underlying_type.
/gcc
2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
* c-family/c-common.c (struct c_common_resword): Add
__underlying_type.
* c-family/c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
/cp
2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
* cp-tree.def: Add a new UNDERLYING_TYPE tree code.
* cp-tree.h (enum cp_trait_kind): Add CPTK_UNDERLYING_TYPE, tidy.
(UNDERLYING_TYPE_TYPE): Add.
* cp-objcp-common.c (cp_common_init_ts): Mark UNDERLYING_TYPE
as TS_COMMON.
* parser.c (cp_lexer_next_token_is_decl_specifier_keyword,
cp_parser_simple_type_specifier): Handle UNDERLYING_TYPE.
(cp_parser_trait_expr): Deal with RID_UNDERLYING_TYPE; tidy.
* semantics.c (finish_underlying_type): New.
* typeck.c (structural_comptypes): Handle UNDERLYING_TYPE.
* error.c (dump_type, dump_type_prefix, dump_type_suffix): Likewise.
* cxx-pretty-print.c (p_cxx_type_id): Likewise.
* tree.c (cp_walk_subtrees): Likewise.
* pt.c (for_each_template_parm_r, tsubst, unify,
dependent_type_p_r): Likewise.
* mangle.c (write_type): Sorry for __underlying_type.
* doc/extend.texi: Document __underlying_type.
/testsuite
2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/ext/underlying_type1.C: New.
* g++.dg/ext/underlying_type2.C: Likewise.
* g++.dg/ext/underlying_type3.C: Likewise.
* g++.dg/ext/underlying_type4.C: Likewise.
* g++.dg/ext/underlying_type5.C: Likewise.
* g++.dg/ext/underlying_type6.C: Likewise.
* g++.dg/ext/underlying_type7.C: Likewise.
* g++.dg/ext/underlying_type8.C: Likewise.
* g++.dg/ext/underlying_type9.C: Likewise.
* g++.dg/ext/underlying_type10.C: Likewise.
From-SVN: r172943
Jason Merrill [Mon, 25 Apr 2011 21:51:33 +0000 (17:51 -0400)]
re PR c++/48707 ([c++0x] ICE initializing static const int)
PR c++/48707
* decl.c (type_dependent_init_p): New.
(cp_finish_decl): Check it.
* pt.c (any_type_dependent_elements_p): New.
* cp-tree.h: Declare it.
From-SVN: r172941
Segher Boessenkool [Mon, 25 Apr 2011 20:00:02 +0000 (22:00 +0200)]
titan.md (automata_option "progress"): Remove.
2011-04-25 Segher Boessenkool <segher@kernel.crashing.org>
* config/rs6000/titan.md (automata_option "progress"): Remove.
From-SVN: r172940
Jeff Law [Mon, 25 Apr 2011 19:59:46 +0000 (13:59 -0600)]
Typo in test
From-SVN: r172939
Jeff Law [Mon, 25 Apr 2011 19:55:13 +0000 (13:55 -0600)]
tree-vrp.c (identify_jump_threads): Handle GIMPLE_SWITCH too.
* tree-vrp.c (identify_jump_threads): Handle GIMPLE_SWITCH too.
* gcc.dg/tree-ssa/vrp56.c: new test.
From-SVN: r172938
Rainer Orth [Mon, 25 Apr 2011 19:44:48 +0000 (19:44 +0000)]
* go.test/go-test.exp (go-set-goarch): Accept mips*-*-*.
From-SVN: r172937
Ian Lance Taylor [Mon, 25 Apr 2011 19:42:33 +0000 (19:42 +0000)]
libgo/time: Support Irix 6 location of zoneinfo files.
From-SVN: r172936