OSDN Git Service
jvdelisle [Fri, 29 Apr 2011 14:56:02 +0000 (14:56 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173166
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 29 Apr 2011 14:20:41 +0000 (14:20 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173157
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 29 Apr 2011 13:11:18 +0000 (13:11 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173156
138bc75d-0d04-0410-961f-
82ee72b054a4
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_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).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173155
138bc75d-0d04-0410-961f-
82ee72b054a4
matz [Fri, 29 Apr 2011 12:23:46 +0000 (12:23 +0000)]
ada/
* gcc-interface/misc.c (gnat_handle_option): Set
warn_maybe_uninitialized.
fortran/
* options.c (options.c): Set warn_maybe_uninitialized.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173154
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 29 Apr 2011 12:00:55 +0000 (12:00 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173153
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 29 Apr 2011 10:59:33 +0000 (10:59 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173152
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Fri, 29 Apr 2011 08:49:08 +0000 (08:49 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173151
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Fri, 29 Apr 2011 05:22:08 +0000 (05:22 +0000)]
* haifa-sched.c (last_nondebug_scheduled_insn): New.
(rank_for_schedule): Use it.
(schedule_block): Set it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173150
138bc75d-0d04-0410-961f-
82ee72b054a4
davidxl [Fri, 29 Apr 2011 00:19:35 +0000 (00:19 +0000)]
split checksum into cfg checksum and line checksum
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173147
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 29 Apr 2011 00:18:36 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173146
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Thu, 28 Apr 2011 23:28:56 +0000 (23:28 +0000)]
* config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
unspec plus offset. Tidy macho code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173141
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Thu, 28 Apr 2011 22:49:46 +0000 (22:49 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173138
138bc75d-0d04-0410-961f-
82ee72b054a4
meissner [Thu, 28 Apr 2011 20:51:23 +0000 (20:51 +0000)]
update changelog #2
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173135
138bc75d-0d04-0410-961f-
82ee72b054a4
irar [Thu, 28 Apr 2011 19:50:28 +0000 (19:50 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173132
138bc75d-0d04-0410-961f-
82ee72b054a4
meissner [Thu, 28 Apr 2011 19:09:30 +0000 (19:09 +0000)]
update changelog
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173128
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Thu, 28 Apr 2011 18:31:52 +0000 (18:31 +0000)]
PR tree-optimization/48775
* gcc.dg/pr48616.c: Also add -fno-common on alpha*-dec-osf*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173125
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 28 Apr 2011 18:12:29 +0000 (18:12 +0000)]
/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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173124
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Thu, 28 Apr 2011 18:08:43 +0000 (18:08 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173123
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 28 Apr 2011 17:01:02 +0000 (17:01 +0000)]
PR middle-end/48597
* final.c (final_scan_insn): Call dwarf2out_frame_debug even for
inline asm.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173120
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Thu, 28 Apr 2011 16:49:49 +0000 (16:49 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173119
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Thu, 28 Apr 2011 16:45:19 +0000 (16:45 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173118
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Thu, 28 Apr 2011 13:29:54 +0000 (13:29 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173070
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Thu, 28 Apr 2011 13:28:28 +0000 (13:28 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173069
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Thu, 28 Apr 2011 13:23:08 +0000 (13:23 +0000)]
* configure.ac: Separate cases disabling Java and Java libraries
from general case over targets.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173068
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 28 Apr 2011 13:06:44 +0000 (13:06 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173067
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173066
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 28 Apr 2011 10:52:17 +0000 (10:52 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173065
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 28 Apr 2011 09:55:41 +0000 (09:55 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173064
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 28 Apr 2011 09:54:04 +0000 (09:54 +0000)]
/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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173063
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 28 Apr 2011 09:21:23 +0000 (09:21 +0000)]
/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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173062
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 28 Apr 2011 09:11:17 +0000 (09:11 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173061
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 28 Apr 2011 09:08:42 +0000 (09:08 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173060
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Thu, 28 Apr 2011 05:48:18 +0000 (05:48 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173059
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 28 Apr 2011 01:53:53 +0000 (01:53 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173058
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 28 Apr 2011 01:53:43 +0000 (01:53 +0000)]
* init.c (build_vec_delete_1): Look for sfk_deleting_destructor to
decide whether to delete.
(build_vec_init): Pass sfk_complete_destructor.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173057
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 28 Apr 2011 01:53:34 +0000 (01:53 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173056
138bc75d-0d04-0410-961f-
82ee72b054a4
gdr [Thu, 28 Apr 2011 01:25:01 +0000 (01:25 +0000)]
* internal-fn.h (internal_fn_name_array): Declare.
(internal_fn_flags_array): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173055
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 28 Apr 2011 00:18:34 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173054
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Wed, 27 Apr 2011 20:32:21 +0000 (20:32 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173048
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 27 Apr 2011 18:37:32 +0000 (18:37 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173044
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Wed, 27 Apr 2011 18:21:22 +0000 (18:21 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173043
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Wed, 27 Apr 2011 17:28:51 +0000 (17:28 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173042
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 27 Apr 2011 16:06:21 +0000 (16:06 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173040
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Wed, 27 Apr 2011 16:03:03 +0000 (16:03 +0000)]
* cgraphunit.c (cgraph_process_new_functions): Fix ordering issue.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173039
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 27 Apr 2011 15:56:56 +0000 (15:56 +0000)]
* class.c (resolve_address_of_overloaded_function): Don't
change OVERLOAD to TREE_LIST.
* pt.c (print_candidates_1): Remove nonsensical assert.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173037
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 27 Apr 2011 15:56:46 +0000 (15:56 +0000)]
PR c++/48046
* parser.c (cp_parser_diagnose_invalid_type_name): Commit
to tentative parse sooner.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173036
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Wed, 27 Apr 2011 14:58:21 +0000 (14:58 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173034
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Wed, 27 Apr 2011 14:18:25 +0000 (14:18 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173031
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 27 Apr 2011 14:16:49 +0000 (14:16 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173030
138bc75d-0d04-0410-961f-
82ee72b054a4
uweigand [Wed, 27 Apr 2011 13:10:17 +0000 (13:10 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173029
138bc75d-0d04-0410-961f-
82ee72b054a4
uweigand [Wed, 27 Apr 2011 13:09:24 +0000 (13:09 +0000)]
* config/spu/spu.c (spu_expand_epilogue): Do not emit barrier.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173028
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Wed, 27 Apr 2011 12:13:08 +0000 (12:13 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173026
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Wed, 27 Apr 2011 10:42:03 +0000 (10:42 +0000)]
* gcc.c-torture/compile/pr48767.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173020
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 27 Apr 2011 10:36:35 +0000 (10:36 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173019
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 27 Apr 2011 09:17:01 +0000 (09:17 +0000)]
2011-04-27 Richard Guenther <rguenther@suse.de>
* tree-ssa-alias.c (indirect_refs_may_alias_p): Fix
TARGET_MEM_REF handling.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173018
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Wed, 27 Apr 2011 09:15:24 +0000 (09:15 +0000)]
Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173017
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Wed, 27 Apr 2011 09:14:22 +0000 (09:14 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173016
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Wed, 27 Apr 2011 09:06:24 +0000 (09:06 +0000)]
* config/mcore/mcore.h (REGNO_REG_CLASS): Do not index beyond the
end of the regno_reg_class array.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173015
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 27 Apr 2011 07:04:25 +0000 (07:04 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173011
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 27 Apr 2011 05:17:20 +0000 (05:17 +0000)]
PR c++/42687
* parser.c (cp_parser_primary_expression): Set *idk to
CP_ID_KIND_NONE for a parenthesized identifier.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173007
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 27 Apr 2011 05:17:10 +0000 (05:17 +0000)]
* ptree.c (cxx_print_type) [TYPENAME_TYPE]: Dump fullname.
(cxx_print_identifier): Correct indentation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173006
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 27 Apr 2011 05:17:01 +0000 (05:17 +0000)]
* g++.dg/cpp0x/initlist48.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173005
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173004
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 27 Apr 2011 00:19:23 +0000 (00:19 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173002
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Tue, 26 Apr 2011 22:25:59 +0000 (22:25 +0000)]
* config/sh/sh.c (sh_gimplify_va_arg_expr): Don't call
targetm.calls.must_pass_in_stack for void type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172991
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Tue, 26 Apr 2011 22:07:11 +0000 (22:07 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172990
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Tue, 26 Apr 2011 22:05:50 +0000 (22:05 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172989
138bc75d-0d04-0410-961f-
82ee72b054a4
froydnj [Tue, 26 Apr 2011 21:22:55 +0000 (21:22 +0000)]
* tree-eh.c (lower_try_finally_switch): Create the label along with
the CASE_LABEL_EXPR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172988
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 26 Apr 2011 21:12:57 +0000 (21:12 +0000)]
* objc-act.c (objc_fold_objc_type_ref): Remove.
* objc-act.h: Remove prototype.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172986
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 26 Apr 2011 19:28:25 +0000 (19:28 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172985
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Tue, 26 Apr 2011 18:39:55 +0000 (18:39 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172983
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Tue, 26 Apr 2011 18:29:11 +0000 (18:29 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172982
138bc75d-0d04-0410-961f-
82ee72b054a4
meissner [Tue, 26 Apr 2011 17:48:29 +0000 (17:48 +0000)]
PR target/48258, improve vector reduction on power7
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172981
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Tue, 26 Apr 2011 16:35:51 +0000 (16:35 +0000)]
* 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 *.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172980
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Tue, 26 Apr 2011 16:18:04 +0000 (16:18 +0000)]
Fixed gcc.dg/binop-xor[1-5].c filenames.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172979
138bc75d-0d04-0410-961f-
82ee72b054a4
davidxl [Tue, 26 Apr 2011 16:06:09 +0000 (16:06 +0000)]
Implement -Wno-maybe-uninitialized
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172978
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Tue, 26 Apr 2011 15:49:22 +0000 (15:49 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172977
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Tue, 26 Apr 2011 15:42:17 +0000 (15:42 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172976
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Tue, 26 Apr 2011 15:33:10 +0000 (15:33 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172975
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Tue, 26 Apr 2011 14:56:51 +0000 (14:56 +0000)]
* de.po: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172973
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 26 Apr 2011 13:35:21 +0000 (13:35 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172968
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 26 Apr 2011 13:33:49 +0000 (13:33 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172967
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 26 Apr 2011 13:31:17 +0000 (13:31 +0000)]
PR testsuite/48753
* gcc.dg/tree-prof/val-prof-2.c: Adjust for 32-bit HWI.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172966
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 26 Apr 2011 13:02:55 +0000 (13:02 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172965
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 26 Apr 2011 13:00:53 +0000 (13:00 +0000)]
2011-04-26 Richard Guenther <rguenther@suse.de>
PR tree-optimization/48731
* gcc.dg/torture/pr48731.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172964
138bc75d-0d04-0410-961f-
82ee72b054a4
ams [Tue, 26 Apr 2011 10:51:04 +0000 (10:51 +0000)]
2011-04-26 Andrew Stubbs <ams@codesourcery.com>
gcc/
* config/arm/arm.c (arm_gen_constant): Remove can_negate_initial.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172962
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Tue, 26 Apr 2011 10:34:44 +0000 (10:34 +0000)]
2011-04-26 Paolo Carlini <paolo.carlini@oracle.com>
Tweak recent ChangeLog entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172960
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 26 Apr 2011 10:14:34 +0000 (10:14 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172959
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 26 Apr 2011 10:12:34 +0000 (10:12 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172958
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 26 Apr 2011 10:12:14 +0000 (10:12 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172957
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 26 Apr 2011 10:03:12 +0000 (10:03 +0000)]
2011-04-26 Richard Guenther <rguenther@suse.de>
PR testsuite/48753
* gcc.dg/tree-prof/val-prof-2.c: Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172955
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 26 Apr 2011 09:21:44 +0000 (09:21 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172954
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 26 Apr 2011 00:19:11 +0000 (00:19 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172950
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Mon, 25 Apr 2011 23:50:35 +0000 (23:50 +0000)]
/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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172945
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Mon, 25 Apr 2011 23:04:16 +0000 (23:04 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172944
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Mon, 25 Apr 2011 22:27:19 +0000 (22:27 +0000)]
/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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172943
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 25 Apr 2011 21:51:33 +0000 (21:51 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172941
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Mon, 25 Apr 2011 20:00:02 +0000 (20:00 +0000)]
2011-04-25 Segher Boessenkool <segher@kernel.crashing.org>
* config/rs6000/titan.md (automata_option "progress"): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172940
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 25 Apr 2011 19:59:46 +0000 (19:59 +0000)]
Typo in test
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172939
138bc75d-0d04-0410-961f-
82ee72b054a4