Tobias Burnus [Tue, 17 Jan 2012 14:34:37 +0000 (15:34 +0100)]
re PR fortran/51869 (Realloc on assignment wrongly assumes that MALLOC returnes '\0'-set memory)
2012-01-17 Tobias Burnus <burnus@net-b.de>
Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/51869
* trans-expr.c (alloc_scalar_allocatable_for_assignment): Nullify
LHS after allocation, if it has allocatable components.
* f95-lang.c (gfc_init_builtin_functions): Add BUILT_IN_CALLOC.
2012-01-17 Tobias Burnus <burnus@net-b.de>
PR fortran/51869
* gfortran.dg/realloc_on_assign_9.f90: New.
Co-Authored-By: Janne Blomqvist <jb@gcc.gnu.org>
From-SVN: r183247
Ian Lance Taylor [Tue, 17 Jan 2012 14:18:39 +0000 (14:18 +0000)]
libgo: Solaris and Irix compatibility patches.
From Rainer Orth.
From-SVN: r183246
Ian Lance Taylor [Tue, 17 Jan 2012 14:13:33 +0000 (14:13 +0000)]
mksysinfo: Fix Alpha GNU/Linux compatibility patch.
From Uros Bizjak.
From-SVN: r183245
Andreas Krebbel [Tue, 17 Jan 2012 13:26:41 +0000 (13:26 +0000)]
ira.c (do_reload): Make sure ira_dump_file is re-set if no reload dump is requested.
2012-01-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* ira.c (do_reload): Make sure ira_dump_file is re-set if no
reload dump is requested.
From-SVN: r183243
Aldy Hernandez [Tue, 17 Jan 2012 13:20:28 +0000 (13:20 +0000)]
re PR other/51165 (gcc.dg/tm/memopt-3.c failure)
PR other/51165
* trans-mem.c (requires_barrier): Call may_be_aliased.
testsuite/
PR other/51165
* gcc.dg/tm/memopt-3.c: Remove xfail.
* gcc.dg/tm/memopt-4.c: Remove xfail.
* gcc.dg/tm/memopt-5.c: Remove xfail.
* gcc.dg/tm/memopt-7.c: Remove xfail.
From-SVN: r183242
Paolo Carlini [Tue, 17 Jan 2012 11:05:20 +0000 (11:05 +0000)]
re PR c++/51777 (Errors message show unsigned long template parameters as signed)
2012-01-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51777
* c-pretty-print.c (pp_c_integer_constant): For unsigned constants
use pp_unsigned_wide_integer.
From-SVN: r183238
Jakub Jelinek [Tue, 17 Jan 2012 10:38:38 +0000 (11:38 +0100)]
re PR tree-optimization/51877 (XEmacs miscompilation due to tail merging)
PR tree-optimization/51877
* tree-ssa-tail-merge.c (gimple_equal_p): Don't return true whenever
call arguments and fndecls compare equal, instead return false if they
don't. Return true only if lhs1 and lhs2 are either both NULL, or
both SSA_NAMEs that are valueized the same, or they satisfy
operand_equal_p.
* gcc.c-torture/execute/pr51877.c: New test.
From-SVN: r183237
Michael Zolotukhin [Tue, 17 Jan 2012 09:51:40 +0000 (09:51 +0000)]
no-section-anchors-vect-69.c: Change {!vect_align_arrays} to vect_sizes_32B_16B.
gcc/testsuite:
* gcc.dg/vect/no-section-anchors-vect-69.c: Change
{!vect_align_arrays} to vect_sizes_32B_16B.
* gcc.dg/vect/vect-multitypes-1.c: Ditto.
* gcc.dg/vect/vect-peel-3.c: Ditto.
From-SVN: r183236
Rainer Orth [Tue, 17 Jan 2012 09:50:37 +0000 (09:50 +0000)]
Disable dl_iterate_phdr on Solaris 10
* configure.ac (gcc_cv_target_dl_iterate_phdr): Only check on
Solaris 11+.
* configure: Regenerate.
From-SVN: r183235
Uros Bizjak [Tue, 17 Jan 2012 07:26:45 +0000 (08:26 +0100)]
* gcc.dg/pr51821.c (dg-options): Add -std=c99.
From-SVN: r183233
GCC Administrator [Tue, 17 Jan 2012 00:18:58 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r183228
Jakub Jelinek [Mon, 16 Jan 2012 21:32:14 +0000 (16:32 -0500)]
re PR c++/51854 (ICE in mangle.c with literal of complex floating type)
PR c++/51854
* mangle.c (write_template_arg_literal): Handle complex.
From-SVN: r183222
Jason Merrill [Mon, 16 Jan 2012 21:32:05 +0000 (16:32 -0500)]
re PR c++/51827 (Error: 'FOO' conflicts with a previous declaration, with PCH/LTO/C++11)
PR c++/51827
* mangle.c (mangle_decl): Don't mangle uninstantiated templates.
From-SVN: r183221
Mikael Morin [Mon, 16 Jan 2012 19:51:44 +0000 (19:51 +0000)]
re PR fortran/50981 ([OOP] Wrong-code for scalarizing ELEMENTAL call with absent OPTIONAL argument)
2012-01-16 Mikael Morin <mikael@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/50981
* trans-array.c (gfc_walk_elemental_function_args): Fix
passing of deallocated allocatables/pointers as absent argument.
2012-01-16 Mikael Morin <mikael@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/50981
* gfortran.dg/elemental_optional_args_3.f90: New
* gfortran.dg/elemental_optional_args_4.f90: New
Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r183220
Tobias Burnus [Mon, 16 Jan 2012 19:50:11 +0000 (20:50 +0100)]
re PR fortran/51809 ([OOP] ICE (segfault) depending on USE statements order)
2012-01-16 Tobias Burnus <burnus@net-b.de>
PR fortran/51809
* class.c (gfc_find_derived_vtab): Mark __vtab and
__def_init as FL_VARIABLE not as FL_PARAMETER.
* expr.c (gfc_simplify_expr): Remove special
handling of __vtab.
* resolve.c (resolve_values): Ditto.
* trans-decl.c (gfc_get_symbol_decl): Mark __vtab
and __def_init as TREE_READONLY.
2012-01-16 Tobias Burnus <burnus@net-b.de>
PR fortran/51809
* gfortran.dg/use_20.f90: New
From-SVN: r183219
Jason Merrill [Mon, 16 Jan 2012 18:40:26 +0000 (13:40 -0500)]
re PR c++/51868 (Crash when generating the move constructor for a class with a bit field)
PR c++/51868
* typeck.c (build_static_cast_1): Handle bit-fields properly.
From-SVN: r183218
Zydrunas Gimbutas [Mon, 16 Jan 2012 18:22:16 +0000 (18:22 +0000)]
re PR fortran/48426 ([patch] Quad precision promotion)
2012-01-16 Zydrunas Gimbutas <gimbutas@cims.nyu.edu>
Andreas Kloeckner <kloeckner@cims.nyu.edu>
Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/48426
* gfortran.h (gfc_option_t): Add members flag_*_kind to store kind.
* lang.opt: Add options -freal-4-real-8, -freal-4-real-10,
-freal-4-real-16, -freal-8-real-4, -freal-8-real-10, -freal-8-real-16
and -finteger-4-integer-8. User-desired type conversion information.
* decl.c (gfc_match_old_kind_spec,kind_expr): Type conversions
in declaration parsing.
* trans-types.c (gfc_init_kinds): User-specified type conversion
checked for current backend.
* primary.c (match_integer_constant,match_real_constant): Implement
type conversion in constant parsing.
* options.c (gfc_init_options,gfc_handle_option): Translate input
options to flags in internal options data structure.
* invoke.texi: Document new options. Re-order options in Options
summary section.
From-SVN: r183217
Paul Thomas [Mon, 16 Jan 2012 17:48:26 +0000 (17:48 +0000)]
trans-array.c (gfc_trans_create_temp_array): In the case of a class array temporary...
2012-01-16 Paul Thomas <pault@gcc.gnu.org>
* trans-array.c (gfc_trans_create_temp_array): In the case of a
class array temporary, detect a null 'eltype' on entry and use
'initial' to provde the class reference and so, through the
vtable, the element size for the dynamic type.
* trans-stmt.c (gfc_conv_elemental_dependencies): For class
expressions, set 'eltype' to null and pass the values via the
'initial' expression.
2012-01-16 Paul Thomas <pault@gcc.gnu.org>
* gfortran.dg/class_array_3.f03: Remove the explicit loop in
subroutine 'qsort' and use index array to assign the result.
From-SVN: r183216
Jan Hubicka [Mon, 16 Jan 2012 16:40:38 +0000 (17:40 +0100)]
re PR c/12245 (Uses lots of memory when compiling large initialized arrays)
PR c/12245
PR c++/14179
* convert.c (convert_to_integer): Use fold_convert for
converting an INTEGER_CST to integer type.
From-SVN: r183214
Jason Merrill [Mon, 16 Jan 2012 16:40:26 +0000 (11:40 -0500)]
re PR c++/14179 (out of memory while parsing array with many initializers)
PR c++/14179
* vec.c (vec_gc_o_reserve_1): Use ggc_round_alloc_size.
From-SVN: r183213
Jakub Jelinek [Mon, 16 Jan 2012 14:05:54 +0000 (15:05 +0100)]
re PR bootstrap/51860 (s390 esa mode bootstrap comparison failure since transactional memory branch merge)
PR bootstrap/51860
* config/s390/s390.c (s390_chunkify_start): Don't skip
call insns followed by NOTE_INSN_CALL_ARG_LOCATION note. Skip
NOTE_INSN_VAR_LOCATION and NOTE_INSN_CALL_ARG_LOCATION notes.
If insn is followed by NOTE_INSN_VAR_LOCATION or
NOTE_INSN_CALL_ARG_LOCATION notes, insert jump after all those notes.
Don't use location of note insns.
From-SVN: r183210
Jakub Jelinek [Mon, 16 Jan 2012 11:12:53 +0000 (12:12 +0100)]
re PR tree-optimization/51865 (ICE in insert_vi_for_tree, at tree-ssa-structalias.c:2642)
PR tree-optimization/51865
* tree-inline.c (tree_function_versioning): Call remap_decl
on DECL_RESULT whenever it has VOID_TYPE_P type.
* gcc.dg/pr51865.c: New test.
From-SVN: r183207
GCC Administrator [Mon, 16 Jan 2012 00:19:36 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r183204
Richard Sandiford [Sun, 15 Jan 2012 18:47:20 +0000 (18:47 +0000)]
mips.c (mips16_build_call_stub): Don't use a stub for calls to locally-binding MIPS16 functions if...
gcc/
* config/mips/mips.c (mips16_build_call_stub): Don't use a stub
for calls to locally-binding MIPS16 functions if only the return
type uses float regs.
From-SVN: r183197
Richard Sandiford [Sun, 15 Jan 2012 18:31:33 +0000 (18:31 +0000)]
ssa-dom-thread-4.c: Expect 4 threaded edges for MIPS.
gcc/testsuite/
* gcc.dg/tree-ssa/ssa-dom-thread-4.c: Expect 4 threaded edges for MIPS.
From-SVN: r183196
Richard Sandiford [Sun, 15 Jan 2012 18:22:55 +0000 (18:22 +0000)]
mips-protos.h (SYMBOL_FORCE_TO_MEM): Delete.
gcc/
2012-01-08 Chung-Lin Tang <cltang@codesourcery.com>
Richard Sandiford <rdsandiford@googlemail.com>
* config/mips/mips-protos.h (SYMBOL_FORCE_TO_MEM): Delete.
(SYMBOL_32_HIGH): Likewise.
(mips_output_tls_reloc_directive): Declare.
* config/mips/mips.h (PIC_FUNCTION_ADDR_REGNUM): Move to mips.md.
(mips_use_pcrel_pool_p, mips_lo_relocs, mips_hi_relocs): Declare.
* config/mips/mips.c (mips_use_pcrel_pool_p): New variable.
(mips_lo_relocs, mips_hi_relocs): Make extern.
(mips16_stub_function): Move up file.
(mips_classify_symbol): Remove SYMBOL_FORCE_TO_MEM handling.
(mips_symbolic_constant_p): Likewise. Remove SYMBOL_32_HIGH too.
(mips_symbol_insns_1): Likewise. Check mips_use_pcrel_pool_p.
(mips_cannot_force_const_mem): Use mips_use_pcrel_pool_p instead
of SYMBOL_FORCE_TO_MEM. Only check mips_tls_symbol_ref_1
if it's false.
(mips_get_tp): Add MIPS16 support.
(mips_legitimize_tls_address): Remove MIPS16 sorry().
Generalize DTPREL and TPREL handling.
(mips_init_relocs): Initialize mips_use_pcrel_pool_p.
Add MIPS16 TLS support.
(mips_output_tls_reloc_directive): New function.
(mips16_rewrite_pool_refs): Ignore UNSPEC_TLS_GET_TPs.
* config/mips/predicates.md (symbolic_operand_with_high)
(tls_reloc_operand): New predicates.
(force_to_mem_operand): Use mips_use_pcrel_pool_p.
* config/mips/mips.md (UNSPEC_UNSHIFTED_HIGH): New unspec.
(PIC_FUNCTION_ADDR_REGNUM): Moved from mips.h.
(*unshifted_high): New instruction. Use it for MIPS16
high splitter.
(consttable_tls_reloc, tls_get_tp_mips16_<mode>): New patterns.
(*tls_get_tp_mips16_call_<mode>): Likewise.
gcc/testsuite/
* gcc.target/mips/code-readable-2.c: Allow the jump table address
to be loaded from the constant pool, rather than via %hi and %lo.
libgcc/
2012-01-08 Chung-Lin Tang <cltang@codesourcery.com>
Richard Sandiford <rdsandiford@googlemail.com>
* config/mips/libgcc-mips16.ver (__mips16_rdhwr): Add.
* config/mips/mips16.S (__mips16_rdhwr): New function.
* config/mips/t-mips16 (LIB1ASMFUNCS): Add _m16rdhwr.
From-SVN: r183195
Uros Bizjak [Sun, 15 Jan 2012 18:03:46 +0000 (19:03 +0100)]
re PR rtl-optimization/51821 (64bit > 32bit conversion produces incorrect results with optimizations)
PR rtl-optimization/51821
* recog.c (peep2_find_free_register): Determine clobbered registers
from insn pattern.
testsuite/ChangeLog:
PR rtl-optimization/51821
* gcc.dg/pr51821.c: New test.
From-SVN: r183194
Andreas Schwab [Sun, 15 Jan 2012 14:50:41 +0000 (14:50 +0000)]
* gcc.dg/torture/pr8081.c: Fix char signedness assumption.
From-SVN: r183192
GCC Administrator [Sun, 15 Jan 2012 00:19:12 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r183190
Andreas Schwab [Sat, 14 Jan 2012 20:59:32 +0000 (20:59 +0000)]
* g++.dg/cpp0x/constexpr-rom.C: Add -G0 where applicable.
From-SVN: r183186
Andreas Schwab [Sat, 14 Jan 2012 20:53:01 +0000 (20:53 +0000)]
Makefile.in (OSCONS_EXTRACT): Add $(GNATLIBCFLAGS).
* gcc-interface/Makefile.in (OSCONS_EXTRACT): Add
$(GNATLIBCFLAGS).
From-SVN: r183185
Denis Chertykov [Sat, 14 Jan 2012 18:11:29 +0000 (22:11 +0400)]
re PR other/50925 ([avr] ICE at spill_failure, at reload1.c:2118)
PR target/50925
* config/avr/avr-protos.h: Revert change of 2012-01-09.
* config/avr/avr.c: Likewise.
* config/avr/avr.h: Likewise.
From-SVN: r183183
Jonathan Wakely [Sat, 14 Jan 2012 17:47:18 +0000 (17:47 +0000)]
* include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
From-SVN: r183182
Tobias Burnus [Sat, 14 Jan 2012 12:05:59 +0000 (13:05 +0100)]
re PR fortran/51800 (Error: Automatic array 'dummy' at (1) cannot have an initializer)
2012-01-14 Tobias Burnus <burnus@net-b.de>
PR fortran/51800
* resolve.c (build_default_init_expr): Also initialize
nonconstant-length strings with -finit-character=<n>.
2012-01-14 Tobias Burnus <burnus@net-b.de>
PR fortran/51800
* gfortran.dg/init_flag_8.f90: New.
* gfortran.dg/init_flag_9.f90: New.
From-SVN: r183180
Tobias Burnus [Sat, 14 Jan 2012 12:04:20 +0000 (13:04 +0100)]
re PR fortran/51816 (Wrong error when use..., only : operator() twice)
2011-01-14 Tobias Burnus <burnus@net-b.de>
PR fortran/51816
* module.c (read_module): Don't make nonexisting
intrinsic operators as found.
(rename_list_remove_duplicate): New function.
(gfc_use_modules): Use it.
2011-01-14 Tobias Burnus <burnus@net-b.de>
PR fortran/51816
* gfortran.dg/use_18.f90: New.
* gfortran.dg/use_19.f90: New.
From-SVN: r183179
Ian Lance Taylor [Sat, 14 Jan 2012 00:22:14 +0000 (00:22 +0000)]
re PR c++/50012 (C++ front end misses -Wsign-compare warnings when extraneous parentheses are present)
gcc/:
PR c++/50012
* tree.h (TYPE_QUALS): Add cast to int.
(TYPE_QUALS_NO_ADDR_SPACE): Likewise.
gcc/cp:
PR c++/50012
* typeck.c (enum_cast_to_int): New static function.
(cp_build_binary_op): When handling warn_sign_compare, don't test
for TREE_NO_WARNING. Do call enum_cast_to_int.
* call.c (avoid_sign_compare_warnings): Remove static function.
(build_new_op_1): Don't call avoid_sign_compare_warnings.
gcc/testsuite/:
PR c++/50012
* g++.dg/warn/Wsign-compare-4.C: New.
From-SVN: r183178
GCC Administrator [Sat, 14 Jan 2012 00:19:10 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r183177
Torvald Riegel [Fri, 13 Jan 2012 23:45:42 +0000 (23:45 +0000)]
libitm: Truncate undo log after rolling back.
libitm/
* local.cc (GTM::gtm_undolog::rollback): Truncate undo log after
rolling back.
* containers.h (GTM::vector::set_size): New.
From-SVN: r183173
Torvald Riegel [Fri, 13 Jan 2012 23:45:06 +0000 (23:45 +0000)]
libitm: Filter out undo writes that overlap with the libitm stack.
PR libitm/51855
* config/generic/tls.h (GTM::mask_stack_top): New.
(GTM::mask_stack_bottom): Declare.
* config/generic/tls.c (GTM::mask_stack_bottom): New.
* local.cc (gtm_undolog::rollback): Filter out any updates that
overlap the libitm stack. Add current transaction as parameter.
* libitm_i.h (GTM::gtm_undolog::rollback): Adapt.
* beginend.cc (GTM::gtm_thread::rollback): Adapt.
* testsuite/libitm.c/stackundo.c: New test.
From-SVN: r183172
Ian Lance Taylor [Fri, 13 Jan 2012 23:35:44 +0000 (23:35 +0000)]
libgo: Only build iopl and ioperm on 386, amd64, alpha GNU/Linux.
From-SVN: r183171
Ian Lance Taylor [Fri, 13 Jan 2012 23:17:20 +0000 (23:17 +0000)]
mksysinfo: Pick up TIOCGWINSZ even if expression is too complex.
From-SVN: r183169
Ian Lance Taylor [Fri, 13 Jan 2012 23:03:02 +0000 (23:03 +0000)]
mksysinfo: Make sure EPOLL_CLOEXEC is defined.
From-SVN: r183168
Ian Lance Taylor [Fri, 13 Jan 2012 22:29:05 +0000 (22:29 +0000)]
Update copyright year.
From-SVN: r183167
Ian Lance Taylor [Fri, 13 Jan 2012 22:25:44 +0000 (22:25 +0000)]
ipa-cp.c (ipa_get_indirect_edge_target): Add typecasts when comparing param_index to VEC_length result.
* ipa-cp.c (ipa_get_indirect_edge_target): Add typecasts when
comparing param_index to VEC_length result.
From-SVN: r183166
Steven Bosscher [Fri, 13 Jan 2012 22:14:21 +0000 (22:14 +0000)]
c-decl.c: Do not include tree-mudflap.h
gcc/
* c-decl.c: Do not include tree-mudflap.h
* tree-optimize.c: Likewise.
* Makefile.in: Update dependencies.
cp/
* decl2.c: Do not include tree-mudflap.h
* semantics.c: Likewise.
From-SVN: r183165
François Dumont [Fri, 13 Jan 2012 21:49:14 +0000 (21:49 +0000)]
hashtable_policy.h (_Hash_node_base): New, use it as base class of ...
2012-01-13 François Dumont <fdumont@gcc.gnu.org>
* include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
base class of ...
(_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
* include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
by _M_before_begin. Review implementation so that we do not need to
look for previous non-empty bucket when inserting nodes.
From-SVN: r183164
Paul Thomas [Fri, 13 Jan 2012 20:42:01 +0000 (20:42 +0000)]
re PR fortran/48351 ([OOP] Realloc on assignment fails if parent component is CLASS)
2012-01-13 Paul Thomas <pault@gcc.gnu.org>
PR fortran/48351
* trans-array.c (structure_alloc_comps): Suppress interative
call to self, when current component is deallocated using
gfc_trans_dealloc_allocated.
* class.c (gfc_build_class_symbol): Copy the 'alloc_comp'
attribute from the declared type to the class structure.
2012-01-13 Paul Thomas <pault@gcc.gnu.org>
PR fortran/48351
* gfortran.dg/alloc_comp_assign.f03: New.
* gfortran.dg/allocatable_scalar_9.f90: Reduce count of
__BUILTIN_FREE from 38 to 32.
From-SVN: r183162
Jason Merrill [Fri, 13 Jan 2012 20:06:16 +0000 (15:06 -0500)]
re PR c++/20681 (wrong "control reaches" warning with switches)
PR c++/20681
* semantics.c (finish_break_stmt): Avoid adding an unreachable
BREAK_STMT.
From-SVN: r183161
Georg-Johann Lay [Fri, 13 Jan 2012 19:05:24 +0000 (19:05 +0000)]
pr49871.c: Add dg-require-effective-target int32plus because of big array needed.
* gcc.dg/debug/dwarf2/pr49871.c: Add dg-require-effective-target
int32plus because of big array needed.
From-SVN: r183159
Georg-Johann Lay [Fri, 13 Jan 2012 19:03:20 +0000 (19:03 +0000)]
20120111-1.c: Fix wrong int = int32_t assumption.
* gcc.c-torture/execute/
20120111-1.c: Fix wrong int = int32_t
assumption.
* g++.dg/ipa/pr51759.C: Fix assumption sizeof(int) > 2.
* gcc.dg/cpp/warn-multichar.c: Fix to work on int=16 platforms.
* gcc.dg/cpp/warn-multichar-2.c: Ditto.
* gcc.dg/debug/dwarf2/pr49871.c: Add dg-require-effective-target
int32plus because of big array needed.
* gcc.dg/pr50527.c: Don't FAIL if sizeof(void*) = 2
* gcc.dg/lto/
20090218-2_1.c: Fix prototype of malloc, memcpy.
From-SVN: r183158
Jason Merrill [Fri, 13 Jan 2012 17:50:58 +0000 (12:50 -0500)]
re PR c++/51813 (-fvisibility=hidden causes std::codecvt members to be undefined)
PR c++/51813
* decl2.c (constrain_visibility): Clear DECL_VISIBILITY_SPECIFIED
when reducing the visibility.
From-SVN: r183156
Jason Merrill [Fri, 13 Jan 2012 15:49:29 +0000 (10:49 -0500)]
re PR c++/51620 ([c++0x] [4.6/4.7 Regression] ICE with private destructor)
PR c++/51620
* class.c (build_vtbl_initializer): Use __cxa_deleted_virtual.
From-SVN: r183155
Tobias Burnus [Fri, 13 Jan 2012 15:41:13 +0000 (16:41 +0100)]
re PR fortran/51842 (fortran fails if ssize_t is 32-bit on 64-bit host)
2012-01-13 Tobias Burnus <burnus@net-b.de>
PR fortran/51842
* fortran/trans-types.c (gfc_init_kinds): Use PTRDIFF_TYPE
instead of a signed int of size POINTER_SIZE for
gfc_index_integer_kind.
From-SVN: r183154
Richard Guenther [Fri, 13 Jan 2012 12:05:27 +0000 (12:05 +0000)]
re PR c/8081 (ICE with variably sized types returned from nested functions)
2012-01-13 Richard Guenther <rguenther@suse.de>
PR middle-end/8081
* gimplify.c (gimplify_modify_expr_rhs): For calls with a
variable-sized result always use RSO.
* gcc.dg/torture/pr8081.c: New testcase.
From-SVN: r183153
Georg-Johann Lay [Fri, 13 Jan 2012 10:32:16 +0000 (10:32 +0000)]
pr46309.c: Set branch cost to greater 1 for avr.
* gcc.dg/pr46309.c: Set branch cost to greater 1 for avr.
From-SVN: r183151
Ian Lance Taylor [Fri, 13 Jan 2012 05:11:45 +0000 (05:11 +0000)]
libgo: Update to weekly.2011-12-22.
From-SVN: r183150
Jason Merrill [Fri, 13 Jan 2012 05:05:46 +0000 (00:05 -0500)]
re PR c++/51714 (internal compiler error: Segmentation fault with -std=c++11)
PR c++/51714
* pt.c (value_dependent_expression_p): Treat STMT_EXPR as
value-dependent.
From-SVN: r183149
GCC Administrator [Fri, 13 Jan 2012 00:19:18 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r183148
Dodji Seketeli [Thu, 12 Jan 2012 23:28:46 +0000 (23:28 +0000)]
PR c++/51633 - ICEs with constexpr constructor
gcc/cp/
PR c++/51633
* semantics.c (cp_parser_ctor_initializer_opt_and_function_body):
Set the pointer to the last block of the constructor to the
current statement.
(build_constexpr_constructor_member_initializers): Get
build_data_member_initialization a chance to deal with more
statements before we choke.
gcc/testsuite/
PR c++/51633
* g++.dg/cpp0x/constexpr-diag4.C: New test.
From-SVN: r183144
DJ Delorie [Thu, 12 Jan 2012 21:37:03 +0000 (16:37 -0500)]
cfgexpand.c (convert_debug_memory_address): Allow any valid pointer type, not just the default pointer type.
* cfgexpand.c (convert_debug_memory_address): Allow any valid
pointer type, not just the default pointer type.
From-SVN: r183141
Tobias Burnus [Thu, 12 Jan 2012 20:26:10 +0000 (21:26 +0100)]
re PR libfortran/36755 (Avoid fork/exec in chmod intrinsic)
2012-01-12 Tobias Burnus <burnus@net-b.de>
PR fortran/36755
* intrinsic.texi (CHMOD): Extend a bit and remove statement
that /bin/chmod is called.
2012-01-12 Tobias Burnus <burnus@net-b.de>
PR fortran/36755
* intrinsics/chmod.c (chmod_func): Replace call to /bin/chmod
From-SVN: r183137
Richard Henderson [Thu, 12 Jan 2012 18:29:54 +0000 (10:29 -0800)]
re PR other/50925 ([avr] ICE at spill_failure, at reload1.c:2118)
PR target/50925
* config/avr/avr-protos.h (avr_hard_regno_nregs): Declare.
* config/avr/avr.c (avr_can_eliminate): Simplify.
(avr_initial_elimination_offset): Likewise.
(avr_prologue_setup_frame): Use hard_frame_pointer_rtx.
(expand_epilogue): Likewise.
(avr_legitimize_address): Gut.
(avr_legitimize_reload_address): Use hard_frame_pointer_rtx.
(avr_hard_regno_nregs): New.
(avr_hard_regno_ok): Allow only Pmode for arg and frame_pointers.
(avr_regno_mode_code_ok_for_base_b): Handle arg and frame pointers.
* config/avr/avr.h (FIXED_REGISTERS): Adjust arg pointer,
add soft frame pointer.
(CALL_USED_REGISTERS): Likewise.
(REG_CLASS_CONTENTS): Likewise.
(REGISTER_NAMES): Likewise.
(HARD_REGNO_NREGS): Use avr_hard_regno_nregs.
(HARD_FRAME_POINTER_REGNUM): New.
(FRAME_POINTER_REGNUM): Use soft frame pointer.
(ELIMINABLE_REGS): Eliminate from the soft frame pointer,
remove the HARD_FRAME_POINTER self-elimination.
Co-Authored-By: Denis Chertykov <chertykov@gmail.com>
From-SVN: r183136
Jason Merrill [Thu, 12 Jan 2012 17:27:07 +0000 (12:27 -0500)]
re PR c++/48051 (sorry, unimplemented: mangling overload)
PR c++/48051
* mangle.c (write_expression): Mangle BASELINK scope if
BASELINK_QUALIFIED_P.
* search.c (adjust_result_of_qualified_name_lookup): Set
BASELINK_QUALIFIED_P.
* tree.c (cp_tree_equal) [BASELINK]: Compare BASELINK_QUALIFIED_P.
* parser.c (cp_parser_postfix_dot_deref_expression): Don't call
adjust_result_of_qualified_name_lookup for non-qualified names.
From-SVN: r183133
Jason Merrill [Thu, 12 Jan 2012 17:26:57 +0000 (12:26 -0500)]
re PR c++/51403 (ICE with invalid template parameter)
PR c++/51403
* pt.c (unify): Handle error_mark_node.
From-SVN: r183132
Georg-Johann Lay [Thu, 12 Jan 2012 16:52:29 +0000 (16:52 +0000)]
fix date
From-SVN: r183130
Georg-Johann Lay [Thu, 12 Jan 2012 16:51:28 +0000 (16:51 +0000)]
re PR target/51756 (wrong warning: uninitialized variable put into program memory area)
PR target/51756
* config/avr/avr.c (avr_encode_section_info): Test for absence of
DECL_EXTERNAL when checking for initializers of progmem variables.
From-SVN: r183129
Ira Rosen [Thu, 12 Jan 2012 14:41:44 +0000 (14:41 +0000)]
re PR tree-optimization/51799 (Compiler ICE in vect_is_simple_use_1)
PR tree-optimization/51799
* tree-vect-patterns.c (vect_recog_over_widening_pattern): Check
that the last operation is a type demotion.
From-SVN: r183126
Janne Blomqvist [Thu, 12 Jan 2012 10:30:45 +0000 (12:30 +0200)]
Remove configure check for unused fdopen.
2012-01-12 Janne Blomqvist <jb@gcc.gnu.org>
* configure.ac: Remove check for fdopen.
* runtime/backtrace.c (CAN_PIPE): Fix comment, remove check for
fdopen.
* configure: Regenerated.
* config.h.in: Regenerated.
From-SVN: r183124
Uros Bizjak [Thu, 12 Jan 2012 10:24:27 +0000 (11:24 +0100)]
i386.md (*zero_extendsidi2_rex64): Correct movl template.
* config/i386/i386.md (*zero_extendsidi2_rex64): Correct movl template.
(x86_shift<mode>_adj_1): Remove operand constraint from operand 3.
From-SVN: r183123
Janne Blomqvist [Thu, 12 Jan 2012 09:58:34 +0000 (11:58 +0200)]
PR 51803 Avoid malloc if getcwd fails or is not available.
2012-01-12 Janne Blomqvist <jb@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR libfortran/51803
* runtime/main.c (store_exe_path): Avoid malloc if getcwd fails or
is not available.
Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r183122
Dominique d'Humieres [Thu, 12 Jan 2012 06:53:59 +0000 (07:53 +0100)]
re PR testsuite/51057 (FAIL: gfortran.dg/quad_2.f90 -O0 execution test on powerpc*-*-*)
2012-01-12 Dominique d'Humieres <dominiq@lps.ens.fr>
Tobias Burnus <burnus@net-b.de>
PR fortran/51057
PR fortran/51616
* lib/target-supports.exp
(check_effective_target_fortran_largest_fp_has_sqrt): New.
* gfortran.dg/quad_2.f90: Use it, add pattern for IBM's
real(16).
Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r183121
Jason Merrill [Thu, 12 Jan 2012 02:30:47 +0000 (21:30 -0500)]
re PR c++/51565 (fastcall in array of method pointers: internal compiler error)
PR c++/51565
* call.c (standard_conversion): For ptrmemfuncs, compare the
static_fn_types.
From-SVN: r183120
Ian Lance Taylor [Thu, 12 Jan 2012 01:33:44 +0000 (01:33 +0000)]
go-lang.c (go_langhook_init): Initialize void_list_node before calling go_create_gogo.
* go-lang.c (go_langhook_init): Initialize void_list_node before
calling go_create_gogo.
From-SVN: r183119
Ian Lance Taylor [Thu, 12 Jan 2012 01:31:45 +0000 (01:31 +0000)]
libgo: Update to weekly.2011-12-14.
From-SVN: r183118
GCC Administrator [Thu, 12 Jan 2012 00:18:17 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r183117
Ian Lance Taylor [Wed, 11 Jan 2012 23:43:46 +0000 (23:43 +0000)]
compiler: Permit type B byte; type S []B; var v = S("x").
From-SVN: r183112
Jakub Jelinek [Wed, 11 Jan 2012 22:59:12 +0000 (23:59 +0100)]
re PR bootstrap/51796 (internal compiler error: in distribute_notes, at combine.c:13285 for libgomp/alloc.c on m68k-linux)
PR bootstrap/51796
* combine.c (distribute_notes): If i3 is a noreturn call,
allow old_size to be equal to args_size and make sure the
noreturn call gets REG_ARGS_SIZE note.
* expr.c (fixup_args_size_notes): Put REG_ARGS_SIZE notes
on noreturn calls even when the delta is 0.
* gcc.dg/pr51796.c: New test.
From-SVN: r183111
Ian Lance Taylor [Wed, 11 Jan 2012 21:20:41 +0000 (21:20 +0000)]
compiler: Don't use memcmp for structs/arrays with padding.
From-SVN: r183109
Jason Merrill [Wed, 11 Jan 2012 20:26:53 +0000 (15:26 -0500)]
comment
From-SVN: r183108
Jason Merrill [Wed, 11 Jan 2012 20:26:44 +0000 (15:26 -0500)]
re PR c++/51818 ([C++0x] Name mangling error using lambda expressions in GCC47)
PR c++/51818
* mangle.c (find_substitution): A type is only a substitution
match if we're looking for a type.
(write_nested_name): Use decl_mangling_context.
From-SVN: r183107
Jason Merrill [Wed, 11 Jan 2012 19:31:40 +0000 (14:31 -0500)]
adjust comment
From-SVN: r183106
Nathan Sidwell [Wed, 11 Jan 2012 18:58:30 +0000 (18:58 +0000)]
gcov.c (STRING_SIZE): Remove.
* gcov.c (STRING_SIZE): Remove.
(generate_results): Erase annotations for source files with no
coverage information.
(read_line): New.
(output_lines): Use it.
From-SVN: r183105
Eric Botcazou [Wed, 11 Jan 2012 18:50:54 +0000 (18:50 +0000)]
gimple.h (gimplify_body): Remove first argument.
* gimple.h (gimplify_body): Remove first argument.
* gimplify.c (copy_if_shared): Add DATA argument. Do not create the
pointer set here, instead just pass DATA to walk_tree.
(unshare_body): Remove BODY_P argument and adjust. Create the pointer
set here and invoke copy_if_shared on the size trees of DECL_RESULT.
(unvisit_body): Likewise, but with unmark_visited.
(gimplify_body): Remove BODY_P argument and adjust.
(gimplify_function_tree): Adjust call to gimplify_body.
* omp-low.c (finalize_task_copyfn): Likewise.
From-SVN: r183104
Nathan Sidwell [Wed, 11 Jan 2012 18:50:21 +0000 (18:50 +0000)]
* libgcov.c (__gcov_init): Ignore objects with no functions.
From-SVN: r183103
Eric Botcazou [Wed, 11 Jan 2012 18:47:28 +0000 (18:47 +0000)]
tree.h (build_function_decl_skip_args): Add boolean parameter.
* tree.h (build_function_decl_skip_args): Add boolean parameter.
(build_function_type_skip_args): Delete.
* tree.c (build_function_type_skip_args): Make static and add
SKIP_RETURN parameter. Fix thinko in the handling of variants.
(build_function_decl_skip_args): Add SKIP_RETURN parameter and
pass it to build_function_type_skip_args.
* cgraph.h (cgraph_function_versioning): Add boolean parameter.
(tree_function_versioning): Likewise.
* cgraph.c (cgraph_create_virtual_clone): Adjust call to
build_function_decl_skip_args.
* cgraphunit.c (cgraph_function_versioning): Add SKIP_RETURN parameter
and pass it to build_function_decl_skip_args/tree_function_versioning.
(cgraph_materialize_clone): Adjust call to tree_function_versioning.
* ipa-inline-transform.c (save_inline_function_body): Likewise.
* trans-mem.c (ipa_tm_create_version): Likewise.
* tree-sra.c (modify_function): Ditto for cgraph_function_versioning.
* tree-inline.c (declare_return_variable): Remove always-true test.
(tree_function_versioning): Add SKIP_RETURN parameter. If the function
returns non-void and SKIP_RETURN, create a void-typed RESULT_DECL.
* ipa-split.c (split_function): Skip the return value for the split
part if it doesn't return.
From-SVN: r183102
Bill Schmidt [Wed, 11 Jan 2012 16:52:03 +0000 (16:52 +0000)]
re PR tree-optimization/49642 (constant part of a macro not optimized away as expected due to splitter)
gcc:
2012-01-11 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/49642
* ipa-split.c (forbidden_dominators): New variable.
(check_forbidden_calls): New function.
(dominated_by_forbidden): Likewise.
(consider_split): Check for forbidden dominators.
(execute_split_functions): Initialize and free forbidden
dominators info; call check_forbidden_calls.
gcc/testsuite:
2012-01-11 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/49642
* gcc.dg/tree-ssa/pr49642-1.c: New test.
* gcc.dg/tree-ssa/pr49642-2.c: New test.
From-SVN: r183101
Jason Merrill [Wed, 11 Jan 2012 16:47:12 +0000 (11:47 -0500)]
* decl.c (decls_match): Assert that the arguments are decls.
From-SVN: r183100
Jason Merrill [Wed, 11 Jan 2012 16:46:57 +0000 (11:46 -0500)]
re PR c++/51613 (Ambiguous function template instantiations as template argument are not rejected)
PR c++/51613
* pt.c (resolve_overloaded_unification): Compare types with
same_type_p, not decls_match.
From-SVN: r183099
Ian Lance Taylor [Wed, 11 Jan 2012 16:28:08 +0000 (16:28 +0000)]
compiler: Fix names for hash/equality functions for unnamed types.
From-SVN: r183098
Andreas Tobler [Wed, 11 Jan 2012 16:27:21 +0000 (17:27 +0100)]
Fix PR number in ChangeLog.
From-SVN: r183097
Bruce Korb [Wed, 11 Jan 2012 16:23:48 +0000 (16:23 +0000)]
re PR rtl-optimization/57105 (ICE: in add_insn_before_nobb, at emit-rtl.c:3883 with -Os -fselective-scheduling2 -g)
2012-01-11 Bruce Korb <bkorb@gnu.org>
Steven G. Kargl <kargl@gcc.gnu.org>
Andreas Tobler <andreast@fgznet.ch>
PR bootstrap/57105
PR preprocessor/51776
* inclhack.def (cdef_cplusplus): Add a replacement for [[noreturn]].
* fixincl.x: Regenerate.
* tests/base/sys/cdefs.h: Update.
* genfixes: Remove the 'Ver.' from the version check.
Co-Authored-By: Andreas Tobler <andreast@fgznet.ch>
Co-Authored-By: Steven G. Kargl <kargl@gcc.gnu.org>
From-SVN: r183096
Matthew Gretton-Dann [Wed, 11 Jan 2012 16:14:14 +0000 (16:14 +0000)]
arm.md (mov_notscc): Use MVN for false condition.
* gcc/config/arm/arm.md (mov_notscc): Use MVN for false condition.
* gcc/testsuite/gcc.c-torture/execute/
20120110-1.c: New testcase.
From-SVN: r183095
Tobias Burnus [Wed, 11 Jan 2012 14:39:28 +0000 (15:39 +0100)]
main.c (store_exe_path): Fix absolute path detection for Windows.
2012-01-11 Tobias Burnus <burnus@net-b.de>
* runtime/main.c (store_exe_path): Fix absolute path
detection for Windows.
From-SVN: r183094
Nick Clifton [Wed, 11 Jan 2012 11:42:05 +0000 (11:42 +0000)]
* config/rx/rx.md (return): Define pattern.
From-SVN: r183093
Richard Guenther [Wed, 11 Jan 2012 09:01:36 +0000 (09:01 +0000)]
extend.texi (malloc attribute): Adjust according to implementation.
2012-01-11 Richard Guenther <rguenther@suse.de>
* doc/extend.texi (malloc attribute): Adjust according to
implementation.
From-SVN: r183092
Janne Blomqvist [Wed, 11 Jan 2012 07:34:16 +0000 (09:34 +0200)]
PR 51803 Handle getcwd failure and lack of the function better.
2012-01-11 Janne Blomqvist <jb@gcc.gnu.org>
Mike Stump <mikestump@comcast.net>
PR libfortran/51803
* runtime/main.c (store_exe_path): Handle getcwd failure and lack
of the function better.
Co-Authored-By: Mike Stump <mikestump@comcast.net>
From-SVN: r183090
Ian Lance Taylor [Wed, 11 Jan 2012 04:48:22 +0000 (04:48 +0000)]
compiler: Use backend interface for type sizes and alignments.
* go-gcc.cc (Gcc_backend::type_size): New function.
(Gcc_backend::type_alignment): New function.
(Gcc_backend::type_field_alignment): New function.
(Gcc_backend::type_field_offset): New function.
* go-backend.c (go_type_alignment): Remove.
* go-c.h (go_type_alignment): Don't declare.
From-SVN: r183089
Jason Merrill [Wed, 11 Jan 2012 03:04:49 +0000 (22:04 -0500)]
re PR c++/51614 (ICE with ambiguous base class)
PR c++/51614
* class.c (build_base_path): Diagnose ambiguous base.
From-SVN: r183088
Jason Merrill [Wed, 11 Jan 2012 03:04:38 +0000 (22:04 -0500)]
tweak comment
From-SVN: r183087
GCC Administrator [Wed, 11 Jan 2012 00:19:01 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r183085