Jerry DeLisle [Fri, 29 Apr 2011 15:08:57 +0000 (15:08 +0000)]
re PR libfortran/48488 (Wrong default format for real numbers)
2011-04-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/48488
PR libgfortran/48602
PR libgfortran/48615
PR libgfortran/48684
PR libgfortran/48787
* gfortran.dg/fmt_g.f: Adjust test.
* gfortran.dg/fmt_g0_1.f08: Adjust test.
* gfortran.dg/round_3.f08: New test.
* gfortran.dg/namelist_print_1.f: Adjust test.
* gfortran.dg/char4_iunit_1.f03: Adjust test.
* gfortran.dg/f2003_io_5.f03: Adjust test.
* gfortran.dg/coarray_15.f90: Adjust test.
* gfortran.dg/namelist_65.f90: Adjust test.
* gfortran.dg/fmt_cache_1.f: Adjust test.
* gfortran.dg/char4_iunit_2.f03: Adjust test.
* gfortran.dg/real_const_3.f90: Adjust test.
From-SVN: r173168
Richard Guenther [Fri, 29 Apr 2011 15:00:04 +0000 (15:00 +0000)]
builtins.c (fold_builtin_classify_type): Use integer_type_node for the type of the result.
2011-04-29 Richard Guenther <rguenther@suse.de>
* builtins.c (fold_builtin_classify_type): Use integer_type_node
for the type of the result.
(fold_builtin_isascii): Likewise.
(fold_builtin_toascii): Use integer_type_node where appropriate.
(fold_builtin_logb): Likewise.
(fold_builtin_frexp): Likewise.
(fold_builtin_strstr): Likewise.
(fold_builtin_strpbrk): Likewise.
(fold_builtin_fputs): Likewise.
(fold_builtin_sprintf): Likewise.
(fold_builtin_snprintf): Likewise.
(fold_builtin_printf): Likewise.
(do_mpfr_remquo): Use a proper type for the assigned constant.
(do_mpfr_lgamma_r): Likewise.
* dwarf2out.c (resolve_one_addr): Use size_int.
* except.c (init_eh): Likewise.
(assign_filter_values): Use integer_type_node for filter values.
(sjlj_emit_dispatch_table): Use integer_type_node for dispatch
indices.
* tree-cfg.c (move_stmt_eh_region_tree_nr): Use integer_type_node
for EH region numbers.
* tree-vrp.c (simplify_div_or_mod_using_ranges): Use integer_type_node
for the shift amount.
From-SVN: r173167
Jerry DeLisle [Fri, 29 Apr 2011 14:56:02 +0000 (14:56 +0000)]
re PR libfortran/48488 (Wrong default format for real numbers)
2011-04-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
Janne Blomqvist <jb@gcc.gnu.org>
PR libgfortran/48488
PR libgfortran/48602
PR libgfortran/48615
PR libgfortran/48684
PR libgfortran/48787
* io/write.c (write_d, write_e, write_f, write_en,
write_es): Add precision compemsation parameter to call.
(set_fnode_default): Adjust default widths to assure
round trip on write and read. (write_real): Adjust call to write_float.
(write_real_g0): Calculate compensation for extra precision and adjust
call to write_float.
* io/write_float.def (output_float_FMT_G_): Use volatile rather than
asm volatile to avoid optimization issue. Correctly calculate the
number of blanks (nb) to be appended and simplify calculation logic.
(write_float): Increase MIN_FIELD_WIDTH by one to accomodate the new
default widths. Eliminate the code that attempted to reduce the
the precision used in later sprintf functions. Add call parameter to
compensate for extra precision.
Co-Authored-By: Janne Blomqvist <jb@gcc.gnu.org>
From-SVN: r173166
Richard Guenther [Fri, 29 Apr 2011 14:20:41 +0000 (14:20 +0000)]
expr.h (expand_shift): Rename to ...
2011-04-29 Richard Guenther <rguenther@suse.de>
* expr.h (expand_shift): Rename to ...
(expand_variable_shift): ... this.
(expand_shift): Take a constant shift amount.
* expmed.c (expand_shift): Rename to ...
(expand_variable_shift): ... this.
(expand_shift): New wrapper around expand_variable_shift.
* expr.c (convert_move, emit_group_load_1, emit_group_store,
optimize_bitfield_assignment_op, store_field, expand_expr_real_2,
expand_expr_real_1, reduce_to_bit_field_precision): Adjust.
* expmed.c (store_fixed_bit_field, extract_bit_field_1,
extract_fixed_bit_field, extract_split_bit_field, expand_mult_const,
expand_mult, expand_widening_mult, expand_mult_highpart_adjust,
extract_high_half, expand_sdiv_pow2, expand_divmod, emit_cstore,
emit_store_flag_1, emit_store_flag): Likewise.
* builtins.c (expand_builtin_signbit): Likewise.
* calls.c (load_register_parameters): Likewise.
* function.c (assign_parm_setup_block): Likewise.
* lower-subreg.c (resolve_shift_zext): Likewise.
* optabs.c (widen_bswap, expand_abs_nojump,
expand_one_cmpl_abs_nojump, expand_float): Likewise.
* spu/spu.c (spu_expand_extv): Likewise.
* sparc/sparc.c (sparc32_initialize_trampoline): Likewise.
From-SVN: r173157
Richard Guenther [Fri, 29 Apr 2011 13:11:18 +0000 (13:11 +0000)]
tree-inline.c (remap_eh_region_tree_nr): Use integer_type_node for the remapped region number.
2011-04-29 Richard Guenther <rguenther@suse.de>
* tree-inline.c (remap_eh_region_tree_nr): Use integer_type_node
for the remapped region number.
* predict.c (build_predict_expr): Use integer_type_node for the
predict kind.
* fold-const.c (fold_binary_loc): Use integer_type_node for
the shift amount. Use a proper type for the PLUS_EXPR operand.
From-SVN: r173156
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