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
Tobias Burnus [Wed, 30 Jan 2013 07:47:14 +0000 (08:47 +0100)]
re PR fortran/56138 (Deferred-length character RESULT: ICE in gfc_add_modify_loc)
2012-01-30 Tobias Burnus <burnus@net-b.de>
PR fortran/56138
* trans-decl.c (gfc_trans_deferred_vars): Fix deferred-length
results for functions without extra result variable.
2012-01-30 Tobias Burnus <burnus@net-b.de>
PR fortran/56138
* gfortran.dg/allocatable_function_6.f90: New.
From-SVN: r195570
Ian Lance Taylor [Wed, 30 Jan 2013 01:37:13 +0000 (01:37 +0000)]
libgo: Update Go library to master revision 15502/
229081515358.
From-SVN: r195569
GCC Administrator [Wed, 30 Jan 2013 00:19:05 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r195568
Janus Weil [Tue, 29 Jan 2013 21:40:51 +0000 (22:40 +0100)]
re PR fortran/54107 ([F03] Memory hog with abstract interface)
2013-01-29 Janus Weil <janus@gcc.gnu.org>
Mikael Morin <mikael@gcc.gnu.org>
PR fortran/54107
* gfortran.h (gfc_component): Delete members 'formal' and 'formal_ns'.
(gfc_copy_formal_args,gfc_copy_formal_args_ppc,gfc_expr_replace_symbols,
gfc_expr_replace_comp): Delete.
(gfc_sym_get_dummy_args): New prototype.
* dependency.c (gfc_check_fncall_dependency): Use
'gfc_sym_get_dummy_args'.
* expr.c (gfc_is_constant_expr): Ditto.
(replace_symbol,gfc_expr_replace_symbols,replace_comp,
gfc_expr_replace_comp): Deleted.
* frontend-passes.c (doloop_code,do_function): Use
'gfc_sym_get_dummy_args'.
* interface.c (gfc_check_operator_interface,gfc_compare_interfaces,
gfc_procedure_use,gfc_ppc_use,gfc_arglist_matches_symbol,
gfc_check_typebound_override): Ditto.
* module.c (MOD_VERSION): Bump module version.
(mio_component): Do not read/write 'formal' and 'formal_ns'.
* resolve.c (resolve_procedure_interface,resolve_fl_derived0): Do not
copy formal args, but just keep a pointer to the interface.
(resolve_function,resolve_call,resolve_typebound_generic_call,
resolve_ppc_call,resolve_expr_ppc,generate_component_assignments,
resolve_fl_procedure,gfc_resolve_finalizers,check_generic_tbp_ambiguity,
resolve_typebound_procedure,check_uop_procedure): Use
'gfc_sym_get_dummy_args'.
* symbol.c (free_components): Do not free 'formal' and 'formal_ns'.
(gfc_copy_formal_args,gfc_copy_formal_args_ppc): Deleted.
(gfc_sym_get_dummy_args): New function.
* trans-array.c (get_array_charlen,gfc_walk_elemental_function_args):
Use 'gfc_sym_get_dummy_args'.
* trans-decl.c (build_function_decl,create_function_arglist,
build_entry_thunks,init_intent_out_dt,gfc_trans_deferred_vars,
add_argument_checking): Ditto.
* trans-expr.c (gfc_map_fcn_formal_to_actual,gfc_conv_procedure_call,
gfc_conv_statement_function): Ditto.
* trans-stmt.c (gfc_conv_elemental_dependencies): Ditto.
* trans-types.c (create_fn_spec,gfc_get_function_type): Ditto.
2013-01-29 Janus Weil <janus@gcc.gnu.org>
Mikael Morin <mikael@gcc.gnu.org>
PR fortran/54107
* gfortran.dg/proc_ptr_comp_36.f90: New.
Co-Authored-By: Mikael Morin <mikael@gcc.gnu.org>
From-SVN: r195562
Ian Lance Taylor [Tue, 29 Jan 2013 20:52:43 +0000 (20:52 +0000)]
libgo: Update Go library to master revision 15489/
921e53d4863c.
From-SVN: r195560
Oleg Endo [Tue, 29 Jan 2013 20:32:08 +0000 (20:32 +0000)]
Fix formatting in gcc/ChangeLog.
From-SVN: r195559
Oleg Endo [Tue, 29 Jan 2013 20:29:29 +0000 (20:29 +0000)]
re PR target/56121 ([SH] ICE in libgcc/unwind-dw2.c)
PR target/56121
* config/sh/sh.md (bclr_m2a, bset_m2a, bst_m2a, bld_m2a, bldsign_m2a,
bld_reg, *bld_regqi, band_m2a, bandreg_m2a, bor_m2a, borreg_m2a,
bxor_m2a, bxorreg_m2a): Add satisfies_constraint_K03 condition.
From-SVN: r195558
Greta Yorsh [Tue, 29 Jan 2013 18:43:26 +0000 (18:43 +0000)]
cortex-a7.md (cortex_a7_neon, [...]): Remove.
2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
* config/arm/cortex-a7.md (cortex_a7_neon, cortex_a7_all): Remove.
(cortex_a7_idiv): Use cortex_a7_both instead of cortex_a7_all.
From-SVN: r195555
Greta Yorsh [Tue, 29 Jan 2013 18:41:23 +0000 (18:41 +0000)]
arm.c (cortexa7_younger): Return true for TYPE_CALL.
2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
* config/arm/arm.c (cortexa7_younger): Return true for TYPE_CALL.
* config/arm/cortex-a7.md (cortex_a7_call): Update required units.
From-SVN: r195554
Greta Yorsh [Tue, 29 Jan 2013 18:39:43 +0000 (18:39 +0000)]
arm-protos.h (arm_mac_accumulator_is_result): New declaration.
2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
* config/arm/arm-protos.h (arm_mac_accumulator_is_result): New
declaration.
* config/arm/arm.c (arm_mac_accumulator_is_result): New function.
* config/arm/cortex-a7.md: New bypasses using
arm_mac_accumulator_is_result.
From-SVN: r195553
Greta Yorsh [Tue, 29 Jan 2013 18:36:53 +0000 (18:36 +0000)]
cortex-a7.md (cortex_a7_neon_mul): New reservation.
2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
* config/arm/cortex-a7.md (cortex_a7_neon_mul): New reservation.
(cortex_a7_neon_mla): Likewise.
(cortex_a7_fpfmad): New reservation.
(cortex_a7_fpmacs): Use ffmas and update required units.
(cortex_a7_fpmuld): Update required units and latency.
(cortex_a7_fpmacd): Likewise.
(cortex_a7_fdivs, cortex_a7_fdivd): Likewise.
(cortex_a7_neon). Likewise.
(bypass) Update participating units.
From-SVN: r195552
Greta Yorsh [Tue, 29 Jan 2013 18:34:12 +0000 (18:34 +0000)]
arm.md (type): Add ffmas and ffmad to "type" attribute.
2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
* config/arm/arm.md (type): Add ffmas and ffmad to "type" attribute.
* config/arm/vfp.md (fma,fmsub,fnmsub,fnmadd): Change type
from fmac to ffma.
* config/arm/vfp11.md (vfp_farith): Use ffmas.
(vfp_fmul): Use ffmad.
* config/arm/cortex-r4f.md (cortex_r4_fmacs): Use ffmas.
(cortex_r4_fmacd): Use ffmad.
* config/arm/cortex-m4-fpu.md (cortex_m4_fmacs): Use ffmas.
* config/arm/cortex-a9.md (cortex_a9_fmacs): Use ffmas.
(cortex_a9_fmacd): Use ffmad.
* config/arm/cortex-a8-neon.md (cortex_a8_vfp_macs): Use ffmas.
(cortex_a8_vfp_macd): Use ffmad.
* config/arm/cortex-a5.md (cortex_a5_fpmacs): Use ffmas.
(cortex_a5_fpmacd): Use ffmad.
* config/arm/cortex-a15-neon.md (cortex_a15_vfp_macs) Use ffmas.
(cortex_a15_vfp_macd): Use ffmad.
* config/arm/arm1020e.md (v10_fmul): Use ffmas and ffmad.
From-SVN: r195551
Jason Merrill [Tue, 29 Jan 2013 17:24:51 +0000 (12:24 -0500)]
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
gcc/
* varasm.c (default_assemble_visibility): Don't warn about
visibility on artificial decls.
gcc/cp/
* class.c (build_ctor_vtbl_group): Give construction vtables
hidden visibility.
libstdc++-v3/
* config/abi/pre/gnu.ver: Don't export construction vtables.
* config/abi/pre/gnu-versioned-namespace.ver: Likewise.
From-SVN: r195550
Arnaud Charlet [Tue, 29 Jan 2013 14:37:47 +0000 (15:37 +0100)]
[multiple changes]
2013-01-29 Ben Brosgol <brosgol@adacore.com>
* gnat_rm.texi: Fixed typos. Minor edits.
2013-01-29 Bob Duff <duff@adacore.com>
* a-convec.adb: Minor reformatting.
2013-01-29 Pascal Obry <obry@adacore.com>
* tempdir.adb, tempdir.ads (Use_Temp_Dir): Set wether to use the temp
directory.
From-SVN: r195548
Arnaud Charlet [Tue, 29 Jan 2013 14:36:28 +0000 (15:36 +0100)]
Update dependencies.
From-SVN: r195547
Arnaud Charlet [Tue, 29 Jan 2013 14:33:47 +0000 (15:33 +0100)]
[multiple changes]
2013-01-29 Ed Schonberg <schonberg@adacore.com>
* exp_ch5.adb (Expand_Iterator_Loop_Over_Array): Preserve loop
identifier only if it comes from source.
(Expand_N_Loop_Statement): If the domain of iteration is an
enumeration type with a representation clause, remove from
visibility the loop identifier before rewriting the loop as a
block with a declaration for said identifier.
* sem_util.adb (Remove_Homonym): Handle properly the default case.
2013-01-29 Vincent Celier <celier@adacore.com>
* prj-proc.adb: Minor comment spelling fix.
From-SVN: r195546
Pascal Obry [Tue, 29 Jan 2013 14:32:36 +0000 (14:32 +0000)]
prj-proc.adb (Process_Expression_Variable_Decl): Prepend Project_Path to current environment.
2013-01-29 Pascal Obry <obry@adacore.com>
* prj-proc.adb (Process_Expression_Variable_Decl): Prepend
Project_Path to current environment.
From-SVN: r195545
Arnaud Charlet [Tue, 29 Jan 2013 14:31:08 +0000 (15:31 +0100)]
[multiple changes]
2013-01-29 Thomas Quinot <quinot@adacore.com>
* sprint.adb (Sprint_Node_Actual): Output freeze nodes for
itypes even if Dump_Freeze_Null is not set.
2013-01-29 Robert Dewar <dewar@adacore.com>
* sem_util.adb: Minor reformatting.
* s-rident.ads: Minor comment fixes.
2013-01-29 Pascal Obry <obry@adacore.com>
* prj-env.ads, prj-env.adb (Add_Directories): Add parameter to
control if the path is prepended or appended.
From-SVN: r195544
Arnaud Charlet [Tue, 29 Jan 2013 14:26:54 +0000 (15:26 +0100)]
[multiple changes]
2013-01-29 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Analyze_Expression_Function): An expression
function declaration is not a subprogram declaration, and thus
cannot appear in a protected definition.
2013-01-29 Hristian Kirtchev <kirtchev@adacore.com>
* exp_util.adb (Insert_Actions): When new
actions come from the expression of the expression with actions,
then they must be added to the list of existing actions.
2013-01-29 Eric Botcazou <ebotcazou@adacore.com>
* sem_ch3.adb (Analyze_Subtype_Declaration) <Private_Kind>: For
the subtype of a constrained private type with discriminants
that has got a full view, show that the completion is a clone
of the full view.
From-SVN: r195543
Richard Biener [Tue, 29 Jan 2013 14:22:47 +0000 (14:22 +0000)]
re PR c/56113 (out of memory when compiling a function with many goto labels (50k > ))
2013-01-29 Richard Biener <rguenther@suse.de>
PR tree-optimization/56113
* tree-ssa-structalias.c (equiv_class_lookup): Also return
the bitmap leader.
(label_visit): Free duplicate bitmaps and record the leader instead.
(perform_var_substitution): Adjust.
From-SVN: r195541
Javier Miranda [Tue, 29 Jan 2013 14:21:40 +0000 (14:21 +0000)]
errout.ads, errout.adb (Get_Ignore_Errors): New subprogram.
2013-01-29 Javier Miranda <miranda@adacore.com>
* errout.ads, errout.adb (Get_Ignore_Errors): New subprogram.
* opt.ads (Warn_On_Overlap): Update documentation.
* sem_aggr.adb (Resolve_Aggregate, Resolve_Extension_Aggregate):
Check function writable actuals.
* sem_ch3.adb (Build_Derived_Record_Type,
Record_Type_Declaration): Check function writable actuals.
* sem_ch4.adb (Analyze_Range): Check function writable actuals.
* sem_ch5.adb (Analyze_Assignment): Remove code of the initial
implementation of AI05-0144.
* sem_ch6.adb (Analyze_Function_Return,
(Analyze_Procedure_Call.Analyze_Call_And_Resolve): Remove code
of the initial implementation of AI05-0144.
* sem_res.adb (Resolve): Remove code of the initial implementation.
(Resolve_Actuals): Call Check_Function_Writable_Actuals and remove call
of the initial implementation.
(Resolve_Arithmetic_Op, Resolve_Logical_Op,
Resolve_Membership_Op): Check function writable actuals.
* sem_util.ad[sb] (Actuals_In_Call): Removed
(Check_Order_Dependence): Removed (Save_Actual): Removed
(Check_Function_Writable_Actuals): New subprogram.
* usage.adb (Usage): Update documentation.
* warnsw.adb (Set_Warning_Switch): Enable warn_on_overlap when
setting all warnings.
From-SVN: r195540
Arnaud Charlet [Tue, 29 Jan 2013 14:17:44 +0000 (15:17 +0100)]
[multiple changes]
2013-01-29 Robert Dewar <dewar@adacore.com>
* a-calend-vms.adb: Minor comment fix.
2013-01-29 Robert Dewar <dewar@adacore.com>
* mlib-utl.adb, gnatlink.adb: Avoid reference to ASCII.Back_Slash
because of casing issues.
* sem_util.ads: Minor comment fix.
* style.adb (Check_Identifier): Set proper casing for entities
in ASCII.
* styleg.adb: Minor comment improvement.
* stylesw.ads (Style_Check_Standard): Fix bad comments.
2013-01-29 Hristian Kirtchev <kirtchev@adacore.com>
* sem_prag.adb: Add the grammar for pragmas Abstract_State and Global.
(Analyze_Pragma): Push the scope of the related subprogram and install
its formals once before starting the analysis of the [moded] global
list.
2013-01-29 Pascal Obry <obry@adacore.com>
* prj-proc.adb (Process_Expression_Variable_Decl): Always handle
relative paths in Project_Path as relative to the aggregate
project location. Note that this was what was documented.
2013-01-29 Vincent Celier <celier@adacore.com>
* gnatcmd.adb: For "gnat stub -P ...", do not check the naming
scheme for Ada, when Ada is not a language for the project.
From-SVN: r195539
Ed Schonberg [Tue, 29 Jan 2013 14:14:48 +0000 (14:14 +0000)]
sem_ch3.adb (Analyze_Subtype_Declaration): Inherit Is_Generic_Actual_Type flag in a nested instance.
2013-01-29 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Analyze_Subtype_Declaration): Inherit
Is_Generic_Actual_Type flag in a nested instance.
* sem_ch12.adb (Restore_Private_Views): Preserve
Is_Generic_Actual_Type flag if actual is a Generic_Actual_Type
of an enclosing instance.
* sem_util.adb (Corresponding_Generic_Type): Handle generic actual
which is an actual of an enclosing instance.
* sem_type.adb (Real_Actual): If a generic_actual_type is the
formal of an enclosing generic and thus renames the corresponding
actual, use the actual of the enclosing instance to resolve
spurious ambiguities in instantiations when two formals are
instantiated with the same actual.
From-SVN: r195538
Arnaud Charlet [Tue, 29 Jan 2013 14:13:37 +0000 (15:13 +0100)]
[multiple changes]
2013-01-29 Robert Dewar <dewar@adacore.com>
* gnat_rm.texi: Document all Ada 2005 and Ada 2012 pragmas as
being available as implementation-defined pragmas in earlier
versions of Ada.
2013-01-29 Vincent Celier <celier@adacore.com>
* clean.adb (Delete): On VMS, delete all versions of the file.
From-SVN: r195537
Arnaud Charlet [Tue, 29 Jan 2013 14:07:21 +0000 (15:07 +0100)]
[multiple changes]
2013-01-29 Robert Dewar <dewar@adacore.com>
* par-ch6.adb (No_Constraint_Maybe_Expr_Func): New procedure.
* par-util.adb (No_Constraint): Undo special handling, moved
to par-ch6.adb.
2013-01-29 Robert Dewar <dewar@adacore.com>
* aspects.ads: Aspect Warnings is implementation defined Add
some other missing entries to impl-defined list Mark Warnings
as GNAT pragma in main list.
* sem_ch8.adb: Process aspects for all cases of renaming
declarations.
2013-01-29 Robert Dewar <dewar@adacore.com>
* sem_ch6.adb (Analyze_Function_Call): Set In_Assertion flag.
* sem_elab.adb (Check_Internal_Call_Continue): Do not issue
warnings about possible elaboration error if call is within
an assertion.
* sinfo.ads, sinfo.adb (In_Assertion): New flag in N_Function_Call node.
2013-01-29 Robert Dewar <dewar@adacore.com>
* a-calend-vms.adb, g-eacodu-vms.adb, g-trasym-vms-alpha.adb,
* s-auxdec-vms-ia64.adb, s-mastop-vms.adb, s-osprim-vms.adb,
s-tasdeb-vms.adb: Replace pragma Interface by pragma Import.
2013-01-29 Robert Dewar <dewar@adacore.com>
* opt.ads (Ignore_Style_Checks_Pragmas): New flag.
* par-prag.adb (Par, case Style_Checks): Recognize
Ignore_Style_Checks_Pragmas.
* sem_prag.adb (Analyze_Pragma, case Style_Checks): Recognize
Ignore_Style_Checks_Pragmas.
* switch-c.adb: Recognize -gnateY switch.
* usage.adb: Add documentation for "-gnateY".
* vms_data.ads: Add IGNORE_STYLE_CHECKS_PRAGMAS (-gnateY).
2013-01-29 Vincent Celier <celier@adacore.com>
* clean.adb (Clean_Executables): Add Sid component when calling
Queue.Insert.
* make.adb: When inserting in the Queue, add the Source_Id
(Sid) when it is known (Start_Compile_If_Possible): When the
Source_Id is known (Sid), get the path name of the ALI file
(Full_Lib_File) from it, to avoid finding old ALI files in other
object directories.
* makeutl.ads (Source_Info): New Source_Id component Sid in
Format_Gnatmake variant.
2013-01-29 Robert Dewar <dewar@adacore.com>
* gnat_ugn.texi: Document -gnateY.
2013-01-29 Doug Rupp <rupp@adacore.com>
* s-osinte-vms.ads, s-taprop-vms.adb, system-vms_64.ads,
system-vms-ia64.ads: Replace pragma Interface by pragma Import.
From-SVN: r195536
Arnaud Charlet [Tue, 29 Jan 2013 14:01:21 +0000 (15:01 +0100)]
[multiple changes]
2013-01-29 Robert Dewar <dewar@adacore.com>
* atree.ads, atree.adb (Node30): New function.
(Set_Node30): New procedure.
(Num_Extension_Nodes): Change to 5 (activate new fields/flags).
* atree.h: Add macros for Field30 and Node30.
* einfo.ads, einfo.adb: Move some fields to avoid duplexing.
* treepr.adb (Print_Entity_Information): Print fields 30-35.
2013-01-29 Robert Dewar <dewar@adacore.com>
* sem_prag.adb (Analyze_Pragma, case Interface): Consider to
be a violation of No_Obsolescent_Features even in Ada 95. Also
generates a warning in -gnatwj mode.
(Analyze_Pragma, case Interface_Name): Generates a warning in -gnatwj
mode.
* gnat_ugn.texi: Additional documentation on -gnatwj and pragma
Interface[_Name].
2013-01-29 Vincent Celier <celier@adacore.com>
* snames.ads-tmpl: Add new standard name Trailing_Switches.
2013-01-29 Ed Schonberg <schonberg@adacore.com>
* sem_disp.adb (Check_Controlling_Type): If a designated type T
of an anonymous access type is a limited view of a tagged type,
it can be a controlling type only if the subprogram is in the
same scope as T.
2013-01-29 Vincent Celier <celier@adacore.com>
* gnatcmd.adb: Use the project where the config pragmas file is
declared to get its path.
2013-01-29 Vincent Celier <celier@adacore.com>
* prj-attr.adb: New attribute Linker'Trailing_Switches.
From-SVN: r195535
Ian Lance Taylor [Tue, 29 Jan 2013 13:58:18 +0000 (13:58 +0000)]
runtime: SPARCv9 fixes for lfstack.
From Rainer Orth.
From-SVN: r195534
Richard Biener [Tue, 29 Jan 2013 10:40:24 +0000 (10:40 +0000)]
re PR rtl-optimization/55270 (ICE in get_loop_body, at cfgloop.c:823)
2013-01-29 Richard Biener <rguenther@suse.de>
PR tree-optimization/55270
* tree-ssa-dom.c (eliminate_degenerate_phis): If we changed
the CFG, schedule loops for fixup.
* gcc.dg/torture/pr55270.c: New testcase.
From-SVN: r195533
Georg-Johann Lay [Tue, 29 Jan 2013 10:33:18 +0000 (10:33 +0000)]
re PR target/54222 ([avr] Implement fixed-point support)
PR target/54222
* config/avr/t-avr (LIB2FUNCS_EXCLUDE): Add:
_mulQQ, _mulHQ, _mulHA, _mulSA,
_mulUQQ, _mulUHQ, _mulUHA, _mulUSA,
_divQQ, _divHQ, _divHA, _divSA,
_divUQQ, _divUHQ, _divUHA, _divUSA.
From-SVN: r195532
Nick Clifton [Tue, 29 Jan 2013 09:00:35 +0000 (09:00 +0000)]
rl78.c (rl78_regno_mode_code_ok_for_base_p): Allow SP_REG.
* config/rl78/rl78.c (rl78_regno_mode_code_ok_for_base_p): Allow
SP_REG.
From-SVN: r195530
Ian Lance Taylor [Tue, 29 Jan 2013 00:28:09 +0000 (00:28 +0000)]
compiler: Correct initialization order determination.
From-SVN: r195526
GCC Administrator [Tue, 29 Jan 2013 00:18:44 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r195525
Jonathan Wakely [Mon, 28 Jan 2013 23:07:35 +0000 (23:07 +0000)]
re PR libstdc++/56112 (cannot create unordered_map from range of types convertible to value_type)
PR libstdc++/56112
* include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
to construct value_type explicitly before trying to extract the key.
* testsuite/23_containers/unordered_map/cons/56112.cc: New.
From-SVN: r195520
François Dumont [Mon, 28 Jan 2013 20:52:13 +0000 (20:52 +0000)]
hashtable_policy.h (_Local_iterator_base): Use _Hashtable_ebo_helper to embed functors into the local_iterator when necessary.
2013-01-28 François Dumont <fdumont@gcc.gnu.org>
* include/bits/hashtable_policy.h (_Local_iterator_base): Use
_Hashtable_ebo_helper to embed functors into the local_iterator
when necessary. Pass information about functors involved in hash
code by copy.
* include/bits/hashtable.h (__cache_default): Do not cache for
builtin integral types unless the hash functor is not noexcept
qualified or is not default constructible. Adapt static assertions
and local iterator instantiations.
* include/debug/unordered_set
(std::__debug::unordered_set<>::erase): Detect local iterators to
invalidate using contained node rather than generating a dummy
local_iterator instance.
(std::__debug::unordered_multiset<>::erase): Likewise.
* include/debug/unordered_map
(std::__debug::unordered_map<>::erase): Likewise.
(std::__debug::unordered_multimap<>::erase): Likewise.
* testsuite/performance/23_containers/insert_erase/41975.cc: Test
std::tr1 and std versions of unordered_set regardless of any
macro. Add test on default cache behavior.
* testsuite/performance/23_containers/insert/54075.cc: Likewise.
* testsuite/23_containers/unordered_set/instantiation_neg.cc:
Adapt line number.
* testsuite/23_containers/unordered_set/
not_default_constructible_hash_neg.cc: New.
* testsuite/23_containers/unordered_set/buckets/swap.cc: New.
From-SVN: r195517
Leif Ekblad [Mon, 28 Jan 2013 20:42:55 +0000 (20:42 +0000)]
config.gcc (i[34567]86-*-rdos*, [...]): New targets.
* config.gcc (i[34567]86-*-rdos*, x86_64-*-rdos*): New targets.
* config/i386/i386.h (TARGET_RDOS): New macro.
(DEFAULT_LARGE_SECTION_THRESHOLD): New macro.
* config/i386/i386.c (ix86_option_override_internal): For 64bit
TARGET_RDOS, set ix86_cmodel to CM_MEDIUM_PIC and flag_pic to 1.
* config/i386/i386.opt (mlarge-data-threshold): Initialize to
DEFAULT_LARGE_SECTION_THRESHOLD.
* config/i386/i386.md (R14_REG, R15_REG): New constants.
* config/i386/rdos.h: New file.
* config/i386/rdos64.h: New file.
From-SVN: r195516
Bernd Schmidt [Mon, 28 Jan 2013 20:03:26 +0000 (20:03 +0000)]
re PR other/54814 (ICE: unable to find a register to spill in class 'R0_REG')
PR other/54814
* reload.c (find_valid_class_1): Use in_hard_reg_set_p instead of
TEST_HARD_REG_BIT.
From-SVN: r195515
Jakub Jelinek [Mon, 28 Jan 2013 16:50:22 +0000 (17:50 +0100)]
re PR rtl-optimization/56117 (ICE: in cselib_subst_to_values, at cselib.c:1853 with -O2 -fsched2-use-superblocks and __builtin_prefetch())
PR rtl-optimization/56117
* sched-deps.c (sched_analyze_2) <case PREFETCH>: For use_cselib
call cselib_lookup_from_insn on the MEM before calling
add_insn_mem_dependence.
* gcc.dg/pr56117.c: New test.
From-SVN: r195513
Richard Biener [Mon, 28 Jan 2013 14:50:57 +0000 (14:50 +0000)]
tree-inline.c (remap_gimple_stmt): Do not assing a BLOCK to a stmt that didn't have one.
2013-01-28 Richard Biener <rguenther@suse.de>
* tree-inline.c (remap_gimple_stmt): Do not assing a BLOCK
to a stmt that didn't have one.
(copy_phis_for_bb): Likewise for PHI arguments.
(copy_debug_stmt): Likewise for debug stmts.
From-SVN: r195509
Richard Biener [Mon, 28 Jan 2013 14:45:46 +0000 (14:45 +0000)]
re PR tree-optimization/56034 (ICE: verify_gimple failed (invalid PHI argument) with -ftree-loop-distribution)
2013-01-28 Richard Biener <rguenther@suse.de>
PR tree-optimization/56034
* tree-loop-distribution.c (enum partition_kind): Add
PKIND_REDUCTION.
(partition_builtin_p): Adjust.
(generate_code_for_partition): Handle PKIND_REDUCTION. Assert
it is the last partition.
(rdg_flag_uses): Check SSA_NAME_IS_DEFAULT_DEF before looking
up the vertex for the definition.
(classify_partition): Classify whether a partition is a
PKIND_REDUCTION, thus has uses outside of the loop.
(ldist_gen): Inherit PKIND_REDUCTION when merging partitions.
Merge all PKIND_REDUCTION partitions into the last partition.
(tree_loop_distribution): Seed partitions from reductions as well.
* gcc.dg/torture/pr56034.c: New testcase.
From-SVN: r195508
Jakub Jelinek [Mon, 28 Jan 2013 14:43:03 +0000 (15:43 +0100)]
re PR tree-optimization/56125 (-O2 -ffast-math generates bad code when dividing a double by the square of another double.)
PR tree-optimization/56125
* tree-ssa-math-opts.c (gimple_expand_builtin_pow): Don't optimize
pow(x,c) into sqrt(x) * powi(x, n/2) or
1.0 / (sqrt(x) * powi(x, abs(n/2))) if c is an integer or when
optimizing for size.
Don't optimize pow(x,c) into powi(x, n/3) * powi(cbrt(x), n%3) or
1.0 / (powi(x, abs(n)/3) * powi(cbrt(x), abs(n)%3)) if 2c is an
integer.
* gcc.dg/pr56125.c: New test.
From-SVN: r195507
Tobias Burnus [Mon, 28 Jan 2013 14:37:20 +0000 (15:37 +0100)]
re PR fortran/53537 (Explicit IMPORT of renamed USE-associated symbol fails)
2013-01-28 Tobias Burnus <burnus@net-b.de>
Mikael Morin <mikael@gcc.gnu.org>
PR fortran/53537
* symbol.c (gfc_find_sym_tree): Don't look for the symbol outside an
interface block.
(gfc_get_ha_symtree): Let gfc_find_sym_tree lookup the parent namespace.
* decl.c (gfc_match_data_decl): Ditto.
(variable_decl): Remove undeclared type error.
(gfc_match_import): Use renamed instead of original name.
2013-01-28 Tobias Burnus <burnus@net-b.de>
Mikael Morin <mikael@gcc.gnu.org>
PR fortran/53537
* gfortran.dg/import2.f90: Adjust undeclared type error messages.
* gfortran.dg/import8.f90: Likewise.
* gfortran.dg/interface_derived_type_1.f90: Likewise.
* gfortran.dg/import10.f90: New test.
* gfortran.dg/import11.f90: Likewise
Co-Authored-By: Mikael Morin <mikael@gcc.gnu.org>
From-SVN: r195506