Jakub Jelinek [Tue, 5 Feb 2013 15:55:31 +0000 (16:55 +0100)]
re PR sanitizer/55374 ([asan] -static-libasan -static-libstdc++ doesn't work)
PR sanitizer/55374
* config/gnu-user.h (LIBTSAN_EARLY_SPEC): Define.
(STATIC_LIBTSAN_LIBS): Likewise.
* gcc.c (ADD_STATIC_LIBTSAN_LIBS, LIBTSAN_EARLY_SPEC): Define.
(LIBTSAN_SPEC): Add ADD_STATIC_LIBTSAN_LIBS, if LIBTSAN_EARLY_SPEC
is defined, don't add anything else beyond that.
(SANITIZER_EARLY_SPEC, SANITIZER_SPEC): Define.
(LINK_COMMAND_SPEC): Use them.
From-SVN: r195761
Jakub Jelinek [Tue, 5 Feb 2013 15:54:39 +0000 (16:54 +0100)]
re PR tree-optimization/56205 (stdarg pass confused by jump threading)
PR tree-optimization/56205
* tree-stdarg.c (check_all_va_list_escapes): Return true if
there are any PHI nodes that set non-va_list_escape_vars SSA_NAME
and some va_list_escape_vars SSA_NAME appears in some PHI argument.
* gcc.dg/tree-ssa/stdarg-6.c: New test.
* gcc.c-torture/execute/pr56205.c: New test.
From-SVN: r195760
Richard Biener [Tue, 5 Feb 2013 15:33:35 +0000 (15:33 +0000)]
re PR tree-optimization/53342 (rnflow.f90 is ~5% slower after revision 187340)
2013-02-05 Richard Biener <rguenther@suse.de>
PR tree-optimization/53342
PR tree-optimization/53185
* tree-vectorizer.h (vect_check_strided_load): Remove.
* tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Do
not disallow peeling for vectorized strided loads.
(vect_check_strided_load): Make static and simplify.
(vect_analyze_data_refs): Adjust.
* tree-vect-stmts.c (vectorizable_load): Handle peeled loops
correctly when vectorizing strided loads.
* gcc.dg/vect/pr53185-2.c: New testcase.
From-SVN: r195759
Jan Hubicka [Tue, 5 Feb 2013 15:23:56 +0000 (16:23 +0100)]
re PR middle-end/55797 (ICE: verify_cgraph_node failed: edge has no corresponding call_stmt)
PR tree-optimization/55789
* g++.dg/tree-ssa/inline-1.C: Update max-inliner-iterations.
* g++.dg/tree-ssa/inline-2.C: Update max-inliner-iterations.
* g++.dg/tree-ssa/inline-3.C: Update max-inliner-iterations.
* g++.dg/ipa/inline-1.C: New testcase.
* g++.dg/ipa/inline-2.C: New testcase.
* g++.dg/ipa/inline-3.C: New testcase.
From-SVN: r195758
Richard Biener [Tue, 5 Feb 2013 09:26:06 +0000 (09:26 +0000)]
install.texi: Refer to ISL, not PPL.
2013-02-05 Richard Biener <rguenther@suse.de>
* doc/install.texi: Refer to ISL, not PPL.
From-SVN: r195752
Jan Hubicka [Tue, 5 Feb 2013 09:13:48 +0000 (10:13 +0100)]
re PR middle-end/55797 (ICE: verify_cgraph_node failed: edge has no corresponding call_stmt)
PR tree-optimization/55789
* g++.dg/tree-ssa/inline-1.C: Update max-inliner-iterations.
* g++.dg/tree-ssa/inline-2.C: Update max-inliner-iterations.
* g++.dg/tree-ssa/inline-3.C: Update max-inliner-iterations.
* g++.dg/ipa/inline-1.C: New testcase.
* g++.dg/ipa/inline-2.C: New testcase.
* g++.dg/ipa/inline-3.C: New testcase.
* params.def (PARAM_EARLY_INLINER_MAX_ITERATIONS): Drop to 1.
From-SVN: r195751
Jan Hubicka [Tue, 5 Feb 2013 09:11:53 +0000 (10:11 +0100)]
PR tree-optimization/r55789
* cgraphclones.c (cgraph_remove_node_and_inline_clones): Remove
the dead call anyway.
* g++.dg/torture/pr55789.C: New testcase.
From-SVN: r195750
Eric Botcazou [Tue, 5 Feb 2013 09:08:09 +0000 (09:08 +0000)]
re PR sanitizer/55374 ([asan] -static-libasan -static-libstdc++ doesn't work)
PR sanitizer/55374
* config/gnu-user.h (LIBASAN_EARLY_SPEC): Add missing guard.
From-SVN: r195749
Jakub Jelinek [Tue, 5 Feb 2013 08:08:27 +0000 (09:08 +0100)]
re PR middle-end/56167 (ICE with invalid __attribute__ arguments)
PR middle-end/56167
* c-common.c (handle_error_attribute): Fix condition.
* gcc.dg/pr56167.c: New test.
From-SVN: r195748
Ian Lance Taylor [Tue, 5 Feb 2013 01:11:01 +0000 (01:11 +0000)]
re PR bootstrap/56198 (Go profiledbootstrap error)
PR bootstrap/56198
compiler: Always initialize *nested_off in interpret_header.
From-SVN: r195747
GCC Administrator [Tue, 5 Feb 2013 00:18:51 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r195746
Oleg Endo [Mon, 4 Feb 2013 22:43:47 +0000 (22:43 +0000)]
re PR target/55146 (jumptables with byte entries produce wrong code with -Os/-O2 for SH-1)
PR target/55146
* gcc.target/sh/pr55146.c: New.
From-SVN: r195743
Oleg Endo [Mon, 4 Feb 2013 22:41:44 +0000 (22:41 +0000)]
re PR tree-optimization/54386 (Unaligned mem load wrongly generated for inlined inline/static function)
PR tree-optimization/54386
* gcc.target/sh/pr54386.c: New.
From-SVN: r195742
Paul Thomas [Mon, 4 Feb 2013 22:33:15 +0000 (22:33 +0000)]
re PR fortran/56008 ([F03] wrong code with lhs-realloc on assignment with derived types having allocatable components)
2013-02-04 Paul Thomas <pault@gcc.gnu.org>
PR fortran/56008
PR fortran/47517
* trans-array.c (gfc_alloc_allocatable_for_assignment): Save
the lhs descriptor before it is modified for reallocation. Use
it to deallocate allocatable components in the reallocation
block. Nullify allocatable components for newly (re)allocated
arrays.
2013-02-04 Paul Thomas <pault@gcc.gnu.org>
PR fortran/56008
* gfortran.dg/realloc_on _assign_16.f90 : New test.
PR fortran/47517
* gfortran.dg/realloc_on _assign_17.f90 : New test.
From-SVN: r195741
David Edelsohn [Mon, 4 Feb 2013 21:26:17 +0000 (21:26 +0000)]
MAINTAINERS: Explicitly add myself as AIX maintainer.
* MAINTAINERS: Explicitly add myself as AIX maintainer.
Remove Geoff Keating as rs6000 port maintainer, at his request.
From-SVN: r195739
François Dumont [Mon, 4 Feb 2013 21:14:07 +0000 (21:14 +0000)]
functional_hash.h (std::__is_fast_hash<>): New.
2013-02-04 François Dumont <fdumont@gcc.gnu.org>
* include/bits/functional_hash.h (std::__is_fast_hash<>): New.
* include/bits/basic_string.h: Specialize previous to mark
std::hash for string types as slow.
* include/bits/hashtable.h (__cache_default): Replace is_integral
with __is_fast_hash.
* src/c++11/hash_c++0x.cc: Add type_traits include.
* testsuite/23_containers/unordered_set/instantiation_neg.cc:
Adapt dg-error line number.
* testsuite/23_containers/unordered_set/
not_default_constructible_hash_neg.cc: Likewise.
From-SVN: r195738
Alexander Potapenko [Mon, 4 Feb 2013 21:07:35 +0000 (21:07 +0000)]
re PR sanitizer/55617 (static constructors are not being instrumented correctly on darwin)
2013-02-04 Alexander Potapenko <glider@google.com>
Jack Howarth <howarth@bromo.med.uc.edu>
Jakub Jelinek <jakub@redhat.com>
PR sanitizer/55617
* g++.dg/asan/pr55617.C: New test.
Co-Authored-By: Jack Howarth <howarth@bromo.med.uc.edu>
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r195737
Richard Sandiford [Mon, 4 Feb 2013 20:47:33 +0000 (20:47 +0000)]
Rename update-copyright.pl to update-copyright.py.
From-SVN: r195736
Alexander Potapenko [Mon, 4 Feb 2013 20:08:29 +0000 (20:08 +0000)]
re PR sanitizer/55617 (static constructors are not being instrumented correctly on darwin)
2013-02-04 Alexander Potapenko <glider@google.com>
Jack Howarth <howarth@bromo.med.uc.edu>
Jakub Jelinek <jakub@redhat.com>
PR sanitizer/55617
* config/darwin.c (sort_ctor_records): Stabilized qsort
on constructor priority by using original position.
(finalize_ctors): New routine to sort constructors by
priority before use in assemble_integer.
(machopic_asm_out_constructor): Use finalize_ctors if needed.
Co-Authored-By: Jack Howarth <howarth@bromo.med.uc.edu>
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r195735
Richard Sandiford [Mon, 4 Feb 2013 19:42:46 +0000 (19:42 +0000)]
Add contrib/update-copyright.pl.
From-SVN: r195734
Manuel López-Ibáñez [Mon, 4 Feb 2013 19:28:40 +0000 (19:28 +0000)]
PR libstdc++/56202 (again)
2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/56202 (again)
* include/bits/random.tcc (binomial_distribution<>::
_M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
in previous commit.
* include/bits/random.h: Fix comment typo.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r195732
Richard Sandiford [Mon, 4 Feb 2013 19:06:20 +0000 (19:06 +0000)]
Update copyright in libgcc.
From-SVN: r195731
Mikael Morin [Mon, 4 Feb 2013 19:06:06 +0000 (19:06 +0000)]
re PR fortran/54195 ([OOP] IMPORT fails with GENERIC TBP: "is already present in the interface")
fortran/
PR fortran/54195
* resolve.c (resolve_typebound_procedures): Recurse through
resolve_symbol.
testsuite/
PR fortran/54195
* gfortran.dg/typebound_operator_19.f90: New test.
* gfortran.dg/typebound_assignment_4.f90: New test.
From-SVN: r195730
Mikael Morin [Mon, 4 Feb 2013 18:34:30 +0000 (18:34 +0000)]
re PR fortran/54107 ([F03] Memory hog with abstract interface)
fortran/
PR fortran/54107
PR fortran/54195
* gfortran.h (struct gfc_symbol): New field 'resolved'.
* resolve.c (resolve_fl_var_and_proc): Don't skip result symbols.
(resolve_symbol): Skip duplicate calls. Don't check the current
namespace.
testsuite/
PR fortran/54107
* gfortran.dg/recursive_interface_1.f90: New test.
From-SVN: r195729
Jakub Jelinek [Mon, 4 Feb 2013 17:19:56 +0000 (18:19 +0100)]
re PR libstdc++/54314 (undefined references to 'construction vtable for std::ostream-in-std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >')
PR libstdc++/54314
* config/i386/winnt.c (i386_pe_assemble_visibility): Don't warn
about visibility on artificial decls.
* config/sol2.c (solaris_assemble_visibility): Likewise.
From-SVN: r195723
Manuel López-Ibáñez [Mon, 4 Feb 2013 17:10:59 +0000 (17:10 +0000)]
re PR libstdc++/56202 (SIGFPE (division by zero) in std::binomial_distribution)
2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/56202
* include/bits/random.tcc (binomial_distribution<>::
_M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
division by zero.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r195722
Kai Tietz [Mon, 4 Feb 2013 16:37:44 +0000 (17:37 +0100)]
re PR target/56186 (function return ABI change for 128-bit types on Win64)
PR target/56186
* config/i386/i386.c (function_value_ms_64): Add additional valtype
argument and improve checking of return-argument types for 16-byte
modes.
(ix86_function_value_1): Add additional valtype argument on call
of function_value_64.
(return_in_memory_ms_64): Sync 16-byte sized mode handling with
handling infunction_value_64 function.
From-SVN: r195721
Matthew Gretton-Dann [Mon, 4 Feb 2013 16:23:38 +0000 (16:23 +0000)]
* gcc/reload.c (subst_reloads): Fix DEBUG_RELOAD build issue.
From-SVN: r195719
Jason Merrill [Mon, 4 Feb 2013 14:09:39 +0000 (09:09 -0500)]
typo
From-SVN: r195717
Richard Biener [Mon, 4 Feb 2013 13:31:28 +0000 (13:31 +0000)]
re PR middle-end/56188 (FAIL: gcc.dg/ipa/ipa-pta-10.c scan-ipa-dump pta "ESCAPED = { (ESCAPED )?(NONLOCAL )?}")
2013-02-04 Richard Biener <rguenther@suse.de>
PR tree-optimization/56188
* tree-ssa-structalias.c (label_visit): Consider case with
initially non-empty points-to set.
(perform_var_substitution): Dump node mapping and clean up.
From-SVN: r195713
Richard Guenther [Mon, 4 Feb 2013 12:19:25 +0000 (12:19 +0000)]
re PR lto/56168 (GCC seems to disregard -fno-builtin when compiling with LTO)
2013-02-04 Richard Guenther <rguenther@suse.de>
PR lto/56168
* lto-symtab.c (lto_symtab_merge_decls_1): Make non-builtin
node prevail as last resort.
(lto_symtab_merge_decls): Remove guard on LTRANS here.
(lto_symtab_prevailing_decl): Builtins are their own prevailing
decl.
lto/
* lto.c (read_cgraph_and_symbols): Do not call lto_symtab_merge_decls
or lto_fixup_decls at LTRANS time.
* gcc.dg/lto/pr56168_0.c: New testcase.
* gcc.dg/lto/pr56168_1.c: Likewise.
From-SVN: r195709
Richard Biener [Mon, 4 Feb 2013 09:30:12 +0000 (09:30 +0000)]
re PR c/56113 (out of memory when compiling a function with many goto labels (50k > ))
2013-02-04 Richard Biener <rguenther@suse.de>
PR tree-optimization/56113
* tree-ssa-structalias.c (equiv_class_lookup, equiv_class_add):
Merge into ...
(equiv_class_lookup_or_add): ... this.
(label_visit): Adjust and fix error in previous patch.
(perform_var_substitution): Adjust.
From-SVN: r195707
GCC Administrator [Mon, 4 Feb 2013 00:19:37 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r195706
Oleg Endo [Sun, 3 Feb 2013 20:06:01 +0000 (20:06 +0000)]
divtab.c: Fix formatting and comments throughout the file.
* config/sh/divtab.c: Fix formatting and comments throughout the file.
* config/sh/sh4-300.md: Likewise.
* config/sh/sh4a.md: Likewise.
* config/sh/constraints.md: Likewise.
* config/sh/sh.md: Likewise.
* config/sh/netbsd-elf.h: Likewise.
* config/sh/predicates.md: Likewise.
* config/sh/sh-protos.h: Likewise.
* config/sh/ushmedia.h: Likewise.
* config/sh/linux.h: Likewise.
* config/sh/sh.c: Likewise.
* config/sh/superh.h: Likewise.
* config/sh/elf.h: Likewise.
* config/sh/sh4.md: Likewise.
* config/sh/sh.h: Likewise.
From-SVN: r195703
John David Anglin [Sun, 3 Feb 2013 19:52:37 +0000 (19:52 +0000)]
constraints.md: Adjust unused letters.
* config/pa/constraints.md: Adjust unused letters. Change "T"
constraint to match_test floating_point_store_memory_operand().
* config/pa/predicates.md (reg_plus_base_memory_operand): New.
(base14_operand): New.
(floating_point_store_memory_operand): New.
(integer_store_memory_operand): Revise to use base14_operand and
reg_plus_base_memory_operand.
(move_dest_operand): Allow symbolic_memory_operands.
(symbolic_memory_operand): Check for LO_SOM.
(symbolic_operand): Change default case to break.
* config/pa/pa.md: Remove unamed DFmode and SFmode patterns to force
CONST_DOUBLE values to be reloaded by putting them into memory when
the destination is a floating point register.
(movdf): Remove code to handle CONST_DOUBLE.
(movsf): Likewise.
(reload_indf_r1): New.
(reload_insf_r1): New.
Consistently use "Q" and "T" constraints with integer and floating
point move instructions, respectively.
(movdi): Remove FAIL.
Change predicate for source operand unamed DImode move from
general_operand to move_src_operand.
(umulsidi3): Change predicate for destination operand to
register_operand.
Likewise for similar unamed patterns.
* config/pa/pa-protos.h (pa_legitimize_reload_address): Declare.
* config/pa/pa.c (pa_symbolic_expression_p): Remove extra parenthesis.
(hppa_legitimize_address): Simplify mask calculation.
(pa_emit_move_sequence): Revised handling of secondary reloads from
REG+D addresses for floating point loads and stores. Directly handle
loading CONST0_RTX (mode) to a floating point register.
(pa_secondary_reload): Handle reloading DF and SFmode constant values
to floating point registers. Don't restrict secondary reloads to
floating point registers to integer modes. Revise some comments and
cleanup some code.
(TARGET_LEGITIMATE_ADDRESS_P): Define.
(pa_legitimate_address_p): New.
(pa_legitimize_reload_address): New.
* config/pa/pa.h (STRICT_REG_OK_FOR_INDEX_P): New.
(STRICT_REG_OK_FOR_BASE_P): New.
(GO_IF_LEGITIMATE_ADDRESS): Delete. Update some related comments.
(LEGITIMIZE_RELOAD_ADDRESS): Revise to use pa_legitimize_reload_address.
From-SVN: r195702
Richard Sandiford [Sun, 3 Feb 2013 17:54:05 +0000 (17:54 +0000)]
Update copyright in libstdc++-v3.
From-SVN: r195701
Richard Sandiford [Sun, 3 Feb 2013 17:50:44 +0000 (17:50 +0000)]
Update copyright in libssp.
From-SVN: r195700
Richard Sandiford [Sun, 3 Feb 2013 17:49:30 +0000 (17:49 +0000)]
Update copyright in libquadmath.
From-SVN: r195699
Richard Sandiford [Sun, 3 Feb 2013 17:48:05 +0000 (17:48 +0000)]
Update copyright in libmudflap.
From-SVN: r195698
Richard Sandiford [Sun, 3 Feb 2013 17:46:11 +0000 (17:46 +0000)]
Update copyright in libitm.
From-SVN: r195697
David Edelsohn [Sun, 3 Feb 2013 14:36:25 +0000 (14:36 +0000)]
collect2.c (GCC_CHECK_HDR): Do not scan objects with F_LOADONLY flag set.
2013-02-03 David Edelsohn <dje.gcc@gmail.com>
Andrew Dixie <andrewd@gentrack.com>
* collect2.c (GCC_CHECK_HDR): Do not scan objects with F_LOADONLY
flag set.
Co-Authored-By: Andrew Dixie <andrewd@gentrack.com>
From-SVN: r195696
Eric Botcazou [Sun, 3 Feb 2013 11:53:02 +0000 (11:53 +0000)]
decl.c: Include diagnostic-core.h.
* gcc-interface/decl.c: Include diagnostic-core.h.
(gnat_to_gnu_entity) <E_Array_Type>: Sorry if Reverse_Storage_Order
is set on the entity.
<E_Record_Type>: Likewise.
* gcc-interface/Make-lang.in (ada/decl.o): Add $(DIAGNOSTIC_CORE_H).
From-SVN: r195694
Richard Sandiford [Sun, 3 Feb 2013 11:16:21 +0000 (11:16 +0000)]
Update copyright years in libobjc.
From-SVN: r195693
Richard Sandiford [Sun, 3 Feb 2013 11:13:51 +0000 (11:13 +0000)]
expmed.c (extract_bit_field_1): Pass the full width of the structure to get_best_reg_extraction_insn.
gcc/
* expmed.c (extract_bit_field_1): Pass the full width of the
structure to get_best_reg_extraction_insn.
From-SVN: r195692
Richard Sandiford [Sun, 3 Feb 2013 10:42:29 +0000 (10:42 +0000)]
ctype_inline.h: Fix copyright typo.
libstdc++-v3/
* config/os/mingw32/ctype_inline.h: Fix copyright typo.
From-SVN: r195691
GCC Administrator [Sun, 3 Feb 2013 00:20:06 +0000 (00:20 +0000)]
Daily bump.
From-SVN: r195690
Ian Lance Taylor [Sat, 2 Feb 2013 15:40:14 +0000 (15:40 +0000)]
re PR go/56171 (syscall FAILs on Solaris)
PR go/56171
syscall: Only run creds_test on GNU/Linux.
From-SVN: r195686
Ian Lance Taylor [Sat, 2 Feb 2013 15:11:48 +0000 (15:11 +0000)]
runtime: Correct handling of runtime.Callers skip parameter.
From-SVN: r195685
Thomas Koenig [Sat, 2 Feb 2013 09:50:58 +0000 (09:50 +0000)]
re PR fortran/50627 (Error recovery: ICE in gfc_free_namespace after diagnosing missing end of construct)
2013-02-02 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/50627
PR fortran/56054
* decl.c (gfc_match_end): Remove half-ready namespace
from parent if the end of a block is missing.
* parse.c (parse_module): Do not put namespace into
gsymbol on error.
2013-02-02 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/50627
PR fortran/56054
* gfortran.dg/block_12.f90: New test.
* gfortran.dg/module_error_1.f90: New test.
From-SVN: r195684
Richard Sandiford [Sat, 2 Feb 2013 09:33:20 +0000 (09:33 +0000)]
gcc/testsuite/
* lib/target-supports.exp (check_effective_target_vect_float)
(check_effective_target_vect_no_align): Add mips-sde-elf.
From-SVN: r195683
GCC Administrator [Sat, 2 Feb 2013 00:18:57 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r195682
François Dumont [Fri, 1 Feb 2013 20:44:41 +0000 (20:44 +0000)]
2013-02-01 François Dumont <fdumont@gcc.gnu.org>
* include/bits/hashtable_policy.h
(_Prime_rehash_policy::_M_next_bkt)
(_Prime_rehash_policy::_M_need_rehash): Move definition...
* src/c++11/hashtable_c++0x.cc: ... here.
* src/shared/hashtable-aux.cc: Remove c++config.h include.
* config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
symbols.
From-SVN: r195676
David Edelsohn [Fri, 1 Feb 2013 20:26:24 +0000 (20:26 +0000)]
re PR c++/54601 (AIX uses atexit which causes unloading of shared modules to break)
PR target/54601
libgcc/
* config.host (powerpc-ibm-aix[56789]): Add t-aix-cxa to tmake_file.
Add crtcxa to extra_parts.
* config/rs6000/exit.h: New file.
* config/rs6000/cxa_atexit.c: New file.
* config/rs6000/cxa_finalize.c: New file.
* config/rs6000/crtcxa.c: New file.
* config/rs6000/t-aix-cxa: New file.
* config/rs6000/libgcc-aix-cxa.ver: New file.
gcc/
* configure.ac (cxa_atexit): Add AIX.
* configure: Regenerate.
* config/rs6000/aix61.h (STARTFILE_SPEC): Add crtcxa.o.
From-SVN: r195675
Jakub Jelinek [Fri, 1 Feb 2013 16:54:14 +0000 (17:54 +0100)]
re PR debug/54793 (the location of a formal_parameter is not started from a function entry with -mfentry)
PR debug/54793
* final.c (need_profile_function): New variable.
(final_start_function): Drop ATTRIBUTE_UNUSED from first argument.
If first of NOTE_INSN_BASIC_BLOCK or NOTE_INSN_FUNCTION_BEG
is only preceeded by NOTE_INSN_VAR_LOCATION or NOTE_INSN_DELETED
notes, targetm.asm_out.function_prologue doesn't emit anything,
HAVE_prologue and profiler should be emitted before prologue,
set need_profile_function instead of emitting it.
(final_scan_insn): If need_profile_function, emit
profile_function on the first NOTE_INSN_BASIC_BLOCK or
NOTE_INSN_FUNCTION_BEG note.
From-SVN: r195669
Richard Henderson [Fri, 1 Feb 2013 16:34:28 +0000 (08:34 -0800)]
alpha: widening multiply pattern
* config/alpha/alpha.md (umulditi3): New.
From-SVN: r195668
Richard Henderson [Fri, 1 Feb 2013 16:34:15 +0000 (08:34 -0800)]
ppc64: widening multiply patterns
* config/rs6000/rs6000.md (smulditi3): New.
(umulditi3): New.
From-SVN: r195667
Jakub Jelinek [Fri, 1 Feb 2013 15:01:02 +0000 (16:01 +0100)]
* lib/gcc-dg.exp (restore-target-env-var): Avoid using lreverse.
From-SVN: r195666
David Edelsohn [Fri, 1 Feb 2013 14:26:54 +0000 (14:26 +0000)]
pr56023.c: XFAIL on AIX.
* gcc.dg/pr56023.c: XFAIL on AIX.
* gcc.dg/vect/pr49352.c: Same.
From-SVN: r195665
David Edelsohn [Fri, 1 Feb 2013 14:14:05 +0000 (14:14 +0000)]
xcoff.h (ASM_OUTPUT_ALIGNED_COMMON): Use floor_log2.
* config/rs6000/xcoff.h (ASM_OUTPUT_ALIGNED_COMMON): Use floor_log2.
(ASM_OUTPUT_ALIGNED_LOCAL): New.
From-SVN: r195660
Alan Modra [Fri, 1 Feb 2013 12:52:41 +0000 (23:22 +1030)]
task.c (GOMP_task, [...]): Comment.
* task.c (GOMP_task, GOMP_taskwait): Comment.
From-SVN: r195647
Richard Biener [Fri, 1 Feb 2013 12:38:45 +0000 (12:38 +0000)]
re PR c/56113 (out of memory when compiling a function with many goto labels (50k > ))
2013-02-01 Richard Biener <rguenther@suse.de>
PR tree-optimization/56113
* tree-ssa-structalias.c (label_visit): Reduce work for
single-predecessor nodes.
From-SVN: r195646
Eric Botcazou [Fri, 1 Feb 2013 10:19:57 +0000 (10:19 +0000)]
fold-const.c (make_range_step): Bail out if the range isn't testing for zero.
* fold-const.c (make_range_step) <TRUTH_NOT_EXPR>: Bail out if the
range isn't testing for zero.
From-SVN: r195642
Ian Lance Taylor [Fri, 1 Feb 2013 05:49:14 +0000 (05:49 +0000)]
runtime: Correct test for morestack.S.
From-SVN: r195640
Ian Lance Taylor [Fri, 1 Feb 2013 00:23:22 +0000 (00:23 +0000)]
compiler: Don't emit multiple methods for identical unnamed structs.
From-SVN: r195638
GCC Administrator [Fri, 1 Feb 2013 00:19:16 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r195637
Ian Lance Taylor [Thu, 31 Jan 2013 23:12:42 +0000 (23:12 +0000)]
runtime: Recognize morestack.S if there is no function name.
From-SVN: r195634
Steven Bosscher [Thu, 31 Jan 2013 20:16:07 +0000 (20:16 +0000)]
re PR c/56113 (out of memory when compiling a function with many goto labels (50k > ))
PR middle-end/56113
* fwprop.c (fwprop_init): Set up loops without CFG modifications.
From-SVN: r195632
Ian Lance Taylor [Thu, 31 Jan 2013 19:44:24 +0000 (19:44 +0000)]
runtime: Remove confusion about split stack functions in backtrace.
From-SVN: r195627
Nick Clifton [Thu, 31 Jan 2013 18:36:02 +0000 (18:36 +0000)]
lib1funcs.S: Add support for e3v5 architecture variant.
* config/v850/lib1funcs.S: Add support for e3v5 architecture
variant.
* config/v850/constraints.md (Q): Define as a memory constraint.
* config/v850/predicates.md (label_ref_operand): New predicate.
(e3v5_shift_operand): New predicate.
(ior_operator): New predicate.
* config/v850/t-v850: Add e3v5 multilib.
* config/v850/v850-protos.h (v850_adjust_insn_length): Prototype.
(v850_gen_movdi): Prototype.
* config/v850/v850.c: Add support for e3v5 architecture.
Rename all uses of TARGET_V850E || TARGET_V850E2_ALL to
TARGET_V850E_UP.
(construct_save_jarl): Add e3v5 long JARL support.
(v850_adjust_insn_length): New function. Adjust length of call
insns when using e3v5 instructions.
(v850_gen_movdi): New function: Generate instructions to move a
DImode value.
* config/v850/v850.h (TARGET_CPU_v850e3v5): Define.
(CPP_SPEC): Define __v850e3v5__ as appropriate.
(TARGET_USE_FPU): Enable for e3v5.
(CONST_OK_FOR_W): New macro.
(ADJUST_INSN_LENGTH): Define.
* config/v850/v850.md (UNSPEC_LOOP): Define.
(attr cpu): Add v850e3v5.
Rename all uses of TARGET_V850E2 to TARGET_V850E2V3_UP.
(movdi): New pattern.
(movdi_internal): New pattern.
(cbranchsf4): Conditionalize on TARGET_USE_FPU.
(cbranchdf4): Conditionalize on TARGET_USE_FPU.
(cstoresf4): Likewise.
(cstoredf4): Likewise.
(insv): New pattern.
(rotlso3_a): New pattern.
(rotlsi3_b): New pattern
(rotlsi3_v850e3v5): New pattern.
(doloop_begin): New pattern.
(fix_loop_counter): New pattern.
(doloop_end): New pattern.
(branch_normal): Add e3v5 long branch support.
(branch_invert): Likewise.
(branch_z_normal): Likewise.
(branch_z_invert): Likewise.
(branch_nz_normal): Likewise.
(branch_nz_invert): Likewise.
(call_internal_short): Add e3v5 register-indirect JARL support.
(call_internal_long): Likewise.
(call_value_internal_short): Likewise.
(call_value_internal_long): Likewise.
* config/v850/v850.opt (mv850e3v5, mv850e2v4): New options.
(mloop): New option.
* config.gcc: Add support for configuring v840e3v5 target.
* doc/invoke.texi: Document new v850 specific command line
options.
From-SVN: r195623
Paul Koning [Thu, 31 Jan 2013 18:29:15 +0000 (13:29 -0500)]
re PR debug/55059 (DWARF missing concrete class definition)
PR debug/55059
PR debug/54508
* dwarf2out.c (prune_unused_types_mark): Mark all of parent's
children if parent is a class.
(prune_unused_types_prune): Don't add DW_AT_declaration.
From-SVN: r195622
Jason Merrill [Thu, 31 Jan 2013 18:29:05 +0000 (13:29 -0500)]
fix pr tag
From-SVN: r195621
Ian Lance Taylor [Thu, 31 Jan 2013 17:50:47 +0000 (17:50 +0000)]
dwarf.c (read_function_info): Permit fvec parameter to be NULL.
* dwarf.c (read_function_info): Permit fvec parameter to be NULL.
(dwarf_lookup_pc): Don't use ddata->fvec if threaded.
From-SVN: r195620
Ian Lance Taylor [Thu, 31 Jan 2013 17:30:28 +0000 (17:30 +0000)]
runtime: Block signals when creating a new thread.
From-SVN: r195619
Dmitry Vyukov [Thu, 31 Jan 2013 16:57:09 +0000 (08:57 -0800)]
re PR sanitizer/55561 (TSAN: provide a TSAN instrumented libgomp)
PR libgomp/55561
* config/linux/wait.h (do_spin): Use atomic load for addr.
* config/linux/ptrlock.c (gomp_ptrlock_get_slow): Use atomic
for intptr and ptrlock.
* config/linux/ptrlock.h (gomp_ptrlock_get): Use atomic load
for ptrlock.
Co-Authored-By: Joost VandeVondele <Joost.VandeVondele@mat.ethz.ch>
From-SVN: r195618
Ramana Radhakrishnan [Thu, 31 Jan 2013 16:56:01 +0000 (16:56 +0000)]
revert: neon-vfnms-1.c: New test.
2013-01-31 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Revert.
2013-01-27 Amol Pise <amolpise15@gmail.com>
* gcc.target/arm/neon-vfnms-1.c: New test.
* gcc.target/arm/neon-vfnma-1.c: New test.
From-SVN: r195617
Richard Biener [Thu, 31 Jan 2013 16:52:28 +0000 (16:52 +0000)]
re PR tree-optimization/56157 (ICE with -ftree-vectorize in in compute_live_loop_exits)
2013-01-31 Richard Biener <rguenther@suse.de>
PR tree-optimization/56157
* tree-vect-slp.c (vect_get_slp_defs): More thoroughly try to
match up operand with SLP child.
* gcc.dg/torture/pr56157.c: New testcase.
From-SVN: r195616
Ian Lance Taylor [Thu, 31 Jan 2013 16:41:15 +0000 (16:41 +0000)]
runtime: Don't allocate when doing a backtrace.
From-SVN: r195615
Jason Merrill [Thu, 31 Jan 2013 16:34:14 +0000 (11:34 -0500)]
re PR regression/56162 (PASS->FAIL: g++.old-deja/g++.mike/pmf1.C -std=c++11 execution test (occurs 2 times))
PR c++/56162
PR c++/56104
* typeck.c (get_member_function_from_ptrfunc): Fix
ptrmemfunc_vbit_in_delta case.
From-SVN: r195614
Jason Merrill [Thu, 31 Jan 2013 16:33:57 +0000 (11:33 -0500)]
re PR debug/54410 (doubled DW_TAG_template_type_param)
PR c++/54410
* dwarf2out.c (gen_struct_or_union_type_die): Always schedule template
parameters the first time.
(gen_scheduled_generic_parms_dies): Check completeness here.
From-SVN: r195613
Richard Biener [Thu, 31 Jan 2013 09:00:54 +0000 (09:00 +0000)]
re PR middle-end/53073 (464.h264ref in SPEC CPU 2006 miscompiled)
2013-01-31 Richard Biener <rguenther@suse.de>
PR middle-end/53073
* common.opt (faggressive-loop-optimizations): New flag,
enabled by default.
* doc/invoke.texi (faggressive-loop-optimizations): Document.
* tree-ssa-loop-niter.c (estimate_numbers_of_iterations_loop): Guard
infer_loop_bounds_from_undefined by it.
From-SVN: r195610
Richard Biener [Thu, 31 Jan 2013 08:53:43 +0000 (08:53 +0000)]
re PR tree-optimization/56150 (ICE segfault in do_pre / tail_merge_optimize)
2013-01-31 Richard Biener <rguenther@suse.de>
PR tree-optimization/56150
* tree-ssa-loop-manip.c (find_uses_to_rename_stmt): Do not
visit virtual operands.
(find_uses_to_rename_bb): Likewise.
From-SVN: r195609
Richard Biener [Thu, 31 Jan 2013 08:52:56 +0000 (08:52 +0000)]
re PR tree-optimization/56150 (ICE segfault in do_pre / tail_merge_optimize)
2013-01-31 Richard Biener <rguenther@suse.de>
PR tree-optimization/56150
* tree-ssa-tail-merge.c (gimple_equal_p): Properly handle
mixed store non-store stmts.
* gcc.dg/torture/pr56150.c: New testcase.
From-SVN: r195608
Kai Tietz [Thu, 31 Jan 2013 08:31:16 +0000 (09:31 +0100)]
Correct ChangeLog's mentioned PR-number.
From-SVN: r195607
Kai Tietz [Thu, 31 Jan 2013 08:17:58 +0000 (09:17 +0100)]
re PR other/54620 (sha1.c has incorrect math if sizeof(size_t) is 8)
PR other/54620
* sha1.c (sha1_process_block): Handle case that size_t is
a wider-integer-scalar as a 32-bit unsigned integer.
From-SVN: r195604
Kai Tietz [Thu, 31 Jan 2013 08:17:37 +0000 (09:17 +0100)]
re PR other/54620 (sha1.c has incorrect math if sizeof(size_t) is 8)
PR other/54620
* sha1.c (sha1_process_block): Handle case that size_t is
a wider-integer-scalar as a 32-bit unsigned integer.
From-SVN: r195603
Kai Tietz [Thu, 31 Jan 2013 08:11:43 +0000 (09:11 +0100)]
2013-01-31 Kai Tietz <ktietz@redhat.com>
PR other/543413
* md5.c (md5_process_block): Handle case that size_t is
a wider-integer-scalar a 32-bit unsigned integer.
From-SVN: r195600
GCC Administrator [Thu, 31 Jan 2013 00:19:22 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r195598
Ian Lance Taylor [Wed, 30 Jan 2013 22:24:40 +0000 (22:24 +0000)]
runtime: In backtraces, get inline functions, skip split-stack fns.
From-SVN: r195591
Jakub Jelinek [Wed, 30 Jan 2013 18:05:53 +0000 (19:05 +0100)]
re PR sanitizer/55374 ([asan] -static-libasan -static-libstdc++ doesn't work)
PR sanitizer/55374
* gcc.c (LIBASAN_SPEC): Define just to ADD_STATIC_LIBASAN_LIBS if
LIBASAN_EARLY_SPEC is defined.
(LIBASAN_EARLY_SPEC): Define to empty string if not already defined.
(LINK_COMMAND_SPEC): Add LIBASAN_EARLY_SPEC for -fsanitize=address,
before %o.
* config/gnu-user.h (LIBASAN_EARLY_SPEC): Define.
* g++.dg/asan/large-func-test-1.C: Allow both _Zna[jm] in addition
to _Znw[jm] in the backtrace. Allow _Zna[jm] to be the first frame
printed in backtrace.
* g++.dg/asan/deep-stack-uaf-1.C: Use malloc instead of operator new
to avoid errors about mismatched allocation vs. deallocation.
From-SVN: r195585
Jakub Jelinek [Wed, 30 Jan 2013 18:04:34 +0000 (19:04 +0100)]
re PR c++/55742 (__attribute__ in class function declaration cause "prototype does not match" errors.)
PR c++/55742
* config/i386/i386.c (ix86_valid_target_attribute_inner_p): Diagnose
invalid args instead of ICEing on it.
(ix86_valid_target_attribute_tree): Return error_mark_node if
ix86_valid_target_attribute_inner_p failed.
(ix86_valid_target_attribute_p): Return false only if
ix86_valid_target_attribute_tree returned error_mark_node. Allow
target("default") attribute.
(sorted_attr_string): Change argument from const char * to tree,
merge in all target attribute arguments rather than just one.
Formatting fix. Use XNEWVEC instead of xmalloc and XDELETEVEC
instead of free. Avoid using strcat.
(ix86_mangle_function_version_assembler_name): Mangle
target("default") as if no target attribute is present. Adjust
sorted_attr_string caller. Avoid leaking memory. Use XNEWVEC
instead of xmalloc and XDELETEVEC instead of free.
(ix86_function_versions): Don't return true if one of the decls
doesn't have target attribute. If they don't and one of the decls
is DECL_FUNCTION_VERSIONED, report an error. Adjust
sorted_attr_string caller. Use XDELETEVEC instead of free.
(ix86_supports_function_versions): Remove.
(make_name): Fix up formatting.
(make_dispatcher_decl): Remove resolver_name and its initialization.
Avoid leaking memory.
(is_function_default_version): Return true if there is
target("default") attribute rather than no target attribute at all.
(make_resolver_func): Avoid leaking memory.
(ix86_generate_version_dispatcher_body): Likewise.
(TARGET_OPTION_SUPPORTS_FUNCTION_VERSIONS): Remove.
* target.def (supports_function_versions): Remove.
* doc/tm.texi.in (SUPPORTS_FUNCTION_VERSIONS): Remove.
* doc/tm.texi: Regenerated.
* c-common.c (handle_target_attribute): Revert 2012-12-26 change.
* g++.dg/mv1.C: Moved to...
* g++.dg/ext/mv1.C: ... here. Adjust test.
* g++.dg/mv2.C: Moved to...
* g++.dg/ext/mv2.C: ... here. Adjust test.
* g++.dg/mv3.C: Moved to...
* g++.dg/ext/mv3.C: ... here.
* g++.dg/mv4.C: Moved to...
* g++.dg/ext/mv4.C: ... here.
* g++.dg/mv5.C: Moved to...
* g++.dg/ext/mv5.C: ... here. Adjust test.
* g++.dg/mv6.C: Moved to...
* g++.dg/ext/mv6.C: ... here. Adjust test.
* g++.dg/ext/mv7.C: New test.
* g++.dg/ext/mv8.C: New test.
* g++.dg/ext/mv9.C: New test.
* g++.dg/ext/mv10.C: New test.
* g++.dg/ext/mv11.C: New test.
From-SVN: r195584
Vladimir Makarov [Wed, 30 Jan 2013 17:20:39 +0000 (17:20 +0000)]
re PR rtl-optimization/56144 (ICE in get_reload_reg, at lra-constraints.c:421)
2013-01-30 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/56144
* lra-constraints.c (get_reload_reg): Don't reuse reload pseudo
for values with side effects.
2013-01-30 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/56144
* gcc.dg/pr56144.c: New.
From-SVN: r195582
Kai Tietz [Wed, 30 Jan 2013 16:50:49 +0000 (17:50 +0100)]
re PR other/54620 (sha1.c has incorrect math if sizeof(size_t) is 8)
PR other/54620
PR target/39064
* md5.h (md5_uintptr, md5_uint32): Define as uintptr_t/uint32_t if
stdint.h and sys/types.h headers are present.
* sha1.h (sha1_uintptr, sha1_uint32): Likewise.
From-SVN: r195579
David Edelsohn [Wed, 30 Jan 2013 16:33:14 +0000 (16:33 +0000)]
constexpr-53094-2.C: Ignore non-standard ABI message.
* g++.dg/cpp0x/constexpr-53094-2.C: Ignore non-standard ABI
message.
* g++.dg/cpp0x/constexpr-53094-3.C: Same.
* g++.dg/cpp0x/constexpr-55573.C: Same
From-SVN: r195578
Richard Biener [Wed, 30 Jan 2013 15:42:49 +0000 (15:42 +0000)]
sparseset.h (sparseset_bit_p): Use gcc_checking_assert.
2013-01-30 Richard Biener <rguenther@suse.de>
* sparseset.h (sparseset_bit_p): Use gcc_checking_assert.
(sparseset_pop): Likewise.
* cfganal.c (compute_idf): Likewise. Increase work-stack size
to be able to use quick_push in the worker loop.
From-SVN: r195577
Marek Polacek [Wed, 30 Jan 2013 11:53:28 +0000 (11:53 +0000)]
Small cleanup in cleanup_cfg.
From-SVN: r195576
Richard Biener [Wed, 30 Jan 2013 11:39:19 +0000 (11:39 +0000)]
re PR lto/56147 (ICE on invalid code in lto_symtab_merge_decls_1)
2013-01-30 Richard Biener <rguenther@suse.de>
PR lto/56147
* lto-symtab.c (lto_symtab_merge_decls_1): Guard DECL_BUILT_IN
check.
From-SVN: r195575
Georg-Johann Lay [Wed, 30 Jan 2013 11:04:30 +0000 (11:04 +0000)]
re PR tree-optimization/56064 (Optimize VIEW_CONVERT_EXPR with FIXED_CST)
gcc/
PR tree-optimization/56064
* fixed-value.c (fixed_from_double_int): New function.
* fixed-value.h (fixed_from_double_int): New prototype.
(const_fixed_from_double_int): New static inline function.
* fold-const.c (native_interpret_fixed): New static function.
(native_interpret_expr) <FIXED_POINT_TYPE>: Use it.
(can_native_interpret_type_p) <FIXED_POINT_TYPE>: Return true.
(native_encode_fixed): New static function.
(native_encode_expr) <FIXED_CST>: Use it.
(native_interpret_int): Move double_int worker code to...
* double-int.c (double_int::from_buffer): ...this new static method.
* double-int.h (double_int::from_buffer): Prototype it.
gcc/testsuite/
PR tree-optimization/56064
* gcc.dg/fixed-point/view-convert.c: New test.
From-SVN: r195574
Richard Biener [Wed, 30 Jan 2013 10:46:00 +0000 (10:46 +0000)]
tree-ssa-structalias.c (final_solutions, [...]): New pointer-map and obstack.
2013-01-30 Richard Biener <rguenther@suse.de>
* tree-ssa-structalias.c (final_solutions, final_solutions_obstack):
New pointer-map and obstack.
(init_alias_vars): Allocate pointer-map and obstack.
(delete_points_to_sets): Free them.
(find_what_var_points_to): Cache result.
(find_what_p_points_to): Adjust for changed interface of
find_what_var_points_to.
(compute_points_to_sets): Likewise.
(ipa_pta_execute): Likewise.
From-SVN: r195573
Rainer Orth [Wed, 30 Jan 2013 09:26:21 +0000 (09:26 +0000)]
Properly set progbits/nobits for Solaris/SPARC as
* configure.ac (HAVE_AS_SPARC_NOBITS): New test.
* configure: Regenerate.
* config.in: Regenerate.
* config/sparc/sparc.c (sparc_solaris_elf_asm_named_section): Emit
#nobits/#progbits if supported.
From-SVN: r195572
Andreas Schwab [Wed, 30 Jan 2013 08:49:35 +0000 (08:49 +0000)]
target-supports-dg.exp (dg-process-target): Use expr to evaluate the end index in string range.
* lib/target-supports-dg.exp (dg-process-target): Use expr to
evaluate the end index in string range.
From-SVN: r195571