OSDN Git Service

10 years ago * config/i386/sse.md (sseintprefix): Rename from gthrfirstp.
uros [Sun, 23 Oct 2011 18:43:11 +0000 (18:43 +0000)]
* config/i386/sse.md (sseintprefix): Rename from gthrfirstp.
(<avx_avx2>_maskload<ssemodesuffix><avxsizesuffix>): Delete expander.
(<avx_avx2>_maskload<ssemodesuffix><avxsizesuffix>) Merge insn
pattern from *avx2_maskload<ssemodesuffix><avxsizesuffix> and
*avx_maskload<ssemodesuffix><avxsizesuffix> using V48_AVX mode
iterator.  Use sseintprefix mode attribute.
(<avx_avx2>_maskstore<ssemodesuffix><avxsizesuffix>): Delete expander.
(<avx_avx2>_maskstore<ssemodesuffix><avxsizesuffix>) Merge insn
pattern from *avx2_maskstore<ssemodesuffix><avxsizesuffix> and
*avx_maskstore<ssemodesuffix><avxsizesuffix> using V48_AVX mode
iterator.  Use sseintprefix mode attribute.
(*avx2_gathersi<mode>) Use sseintprefix and ssemodesuffix mode
(*avx2_gatherdi<mode>): Ditto.
(*avx2_gatherdi<mode>256): Ditto.
(VI48_AVX2): Remove mode iterator.
(gthrlastfp): Remove mode attribute.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180344 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago/c-family
paolo [Sun, 23 Oct 2011 18:34:45 +0000 (18:34 +0000)]
2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50810
* c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
Wnarrowing for C++0x and C++98.
* c.opt ([Wnarrowing]): Update.

2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50810
* typeck2.c (check_narrowing): Adjust OPT_Wnarrowing diagnostics.
(digest_init_r): Call check_narrowing irrespective of the C++ dialect.
* decl.c (check_initializer): Likewise.
* semantics.c (finish_compound_literal): Likewise.

2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50810
* g++.dg/cpp0x/warn_cxx0x2.C: New.
* g++.dg/cpp0x/warn_cxx0x3.C: Likewise.

2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50810
* doc/invoke.texi ([-Wnarrowing], [-Wc++0x-compat]): Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180343 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-23 Tom de Vries <tom@codesourcery.com>
vries [Sun, 23 Oct 2011 16:06:40 +0000 (16:06 +0000)]
2011-10-23  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/50763
* gcc.dg/pr50763.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180342 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-23 Tom de Vries <tom@codesourcery.com>
vries [Sun, 23 Oct 2011 16:06:32 +0000 (16:06 +0000)]
2011-10-23  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/50763
* tree-ssa-tail-merge.c (same_succ_flush_bb): New function, factored out
of ...
(same_succ_flush_bbs): Use same_succ_flush_bb.
(purge_bbs): Remove argument.  Remove calls to same_succ_flush_bbs,
release_last_vdef and delete_basic_block.
(unlink_virtual_phi): New function.
(update_vuses): Add and use vuse1_phi_args argument.  Set var to
SSA_NAME_VAR of vuse1 or vuse2, and use var.  Handle case that def_stmt2
is NULL.  Use phi result as phi arg in case vuse1 or vuse2 is NULL_TREE.
Replace uses of vuse1 if vuse2 is NULL_TREE.  Fix code to limit
replacement of uses.  Propagate phi argument for phis with a single
(replace_block_by): Update vops if phi_vuse1 or phi_vuse2 is NULL_TREE.
Set vuse1_phi_args if vuse1 is a phi defined in bb1.  Add vuse1_phi_args
as argument to call to update_vuses.  Call release_last_vdef,
same_succ_flush_bb, delete_basic_block.  Update CDI_DOMINATORS info.
(tail_merge_optimize): Remove argument in call to purge_bbs.  Remove
call to free_dominance_info.  Only call calculate_dominance_info once.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180341 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * fold-const.c (invert_tree_comparison): Always invert EQ_EXPR/NE_EXPR.
ebotcazou [Sun, 23 Oct 2011 15:57:09 +0000 (15:57 +0000)]
* fold-const.c (invert_tree_comparison): Always invert EQ_EXPR/NE_EXPR.

PR tree-optimization/44683
* tree-ssa-dom.c (record_edge_info): Record simple equivalences only if
we can be sure that there are no signed zeros involved.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180340 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * ipa-inline.c (estimate_badness): Scale up and handle overflows.
hubicka [Sun, 23 Oct 2011 14:30:24 +0000 (14:30 +0000)]
* ipa-inline.c (estimate_badness): Scale up and handle overflows.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180336 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR target/50788
uros [Sun, 23 Oct 2011 14:18:08 +0000 (14:18 +0000)]
PR target/50788
* config/i386/sse.md (avx2_maskload<ssemodesuffix><avxsizesuffix>):
Remove (match_dup 0).
(*avx2_maskload<ssemodesuffix><avxsizesuffix>): New insn pattern.
(*avx_maskload<ssemodesuffix><avxsizesuffix>): Ditto.
(*avx2_maskstore<ssemodesuffix><avxsizesuffix>): Ditto.
(*avx_maskstore<ssemodesuffix><avxsizesuffix>): Ditto.
(*avx2_maskmov<ssemodesuffix><avxsizesuffix>): Remove insn pattern.
(*avx_maskmov<ssemodesuffix><avxsizesuffix>): Ditto.


2011-10-23  Uros Bizjak  <ubizjak@gmail.com>

PR target/50788
* testsuite/gcc.target/i386/pr50788.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180335 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR tree-optimization/50819
irar [Sun, 23 Oct 2011 12:13:49 +0000 (12:13 +0000)]
    PR tree-optimization/50819
        * tree-vectorizer.h (vect_analyze_data_ref_dependences): Remove
        the last argument.
        * tree-vect-loop.c (vect_analyze_loop_2): Update call to
        * tree-vect-data-refs.c (vect_analyze_data_ref_dependence):
        Remove the last argument.  Check load-after-store dependence
        for unknown dependencies in basic blocks.
        (vect_analyze_data_ref_dependences): Update call to
        * tree-vect-patterns.c (vect_recog_widen_shift_pattern): Fix
        * tree-vect-slp.c (vect_bb_vectorizable_with_dependencies):
        (vect_slp_analyze_bb_1): Update call to
        vect_analyze_data_ref_dependences.  Don't call

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180334 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Sun, 23 Oct 2011 00:18:37 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180333 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR libstdc++/50196
redi [Sat, 22 Oct 2011 21:31:24 +0000 (21:31 +0000)]
PR libstdc++/50196
* acinclude.m4 (GLIBCXX_HAS_GTHREADS): Don't depend on _POSIX_TIMEOUTS.
* configure: Regenerate.
* include/std/mutex (timed_mutex, recursive_timed_mutex): Define
* testsuite/lib/libstdc++.exp (check_v3_target_gthreads_timed): Define.
* testsuite/lib/dg-options.exp (dg-require-gthreads-timed): Define.
* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
Use dg-require-gthreads-timed instead of dg-require-gthreads.
* testsuite/30_threads/recursive_timed_mutex/native_handle/
typesizes.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
* testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc:
* testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/timed_mutex/requirements/standard_layout.cc:
* testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180329 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix cpp_peek_token behaviour (PR bootstrap/50778)
dodji [Sat, 22 Oct 2011 17:49:18 +0000 (17:49 +0000)]
Fix cpp_peek_token behaviour (PR bootstrap/50778)


* include/internal.h (_cpp_remaining_tokens_num_in_context): Take the
context to act upon.
* lex.c (_cpp_remaining_tokens_num_in_context): Likewise.  Update
(cpp_token_from_context_at): Likewise.
(cpp_peek_token): Use the context to peek tokens from.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180328 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoUpdate Go library to r60.3 release.
ian [Sat, 22 Oct 2011 16:19:46 +0000 (16:19 +0000)]
Update Go library to r60.3 release.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180327 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoRemove unused functions from sparc backend.
davem [Sat, 22 Oct 2011 08:01:58 +0000 (08:01 +0000)]
Remove unused functions from sparc backend.

* config/sparc/sparc.c (short_branch, reg_unused_after): Delete.
* config/sparc/sparc-protos.h (short_branch, reg_unused_after):
Get rid of declarations.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180325 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoMake sparc's "struct processor_costs" private to sparc.c
davem [Sat, 22 Oct 2011 07:30:12 +0000 (07:30 +0000)]
Make sparc's "struct processor_costs" private to sparc.c

* config/sparc/sparc.h (sparc_costs): Remove extern decl.
(struct processor_costs): Move from here..
* config/sparc/sparc.c (struct processor_costs): To here.
(sparc_costs): Mark static.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180324 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoConvert sparc over to TARGET_SECONDARY_RELOAD.
davem [Sat, 22 Oct 2011 07:05:32 +0000 (07:05 +0000)]
Convert sparc over to TARGET_SECONDARY_RELOAD.


* config/sparc/sparc.h (SECONDARY_INPUT_RELOAD_CLASS,
* config/sparc/sparc.c (TARGET_SECONDARY_RELOAD): Redefine.
(sparc_secondary_reload): New function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180323 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago* obstack.h [!GNUC] (obstack_free): Avoid cast to int.
dj [Sat, 22 Oct 2011 01:35:29 +0000 (01:35 +0000)]
* obstack.h [!GNUC] (obstack_free): Avoid cast to int.
* ansidecl.h (ENUM_BITFIELD): Always use enum in C++

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180321 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Sat, 22 Oct 2011 00:19:07 +0000 (00:19 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180320 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-20 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Fri, 21 Oct 2011 22:48:39 +0000 (22:48 +0000)]
2011-10-20  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/50821
* check.c (gfc_check_ishftc): Check args are constant before
extracting the integer.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180316 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/c6x/c6x.c (c6x_asm_emit_except_personality,
bernds [Fri, 21 Oct 2011 21:04:13 +0000 (21:04 +0000)]
* config/c6x/c6x.c (c6x_asm_emit_except_personality,
c6x_asm_init_sections): New functions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180314 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * unwind-arm-common.inc: Handle ID3/4 unwinding data.
bernds [Fri, 21 Oct 2011 21:00:11 +0000 (21:00 +0000)]
* unwind-arm-common.inc: Handle ID3/4 unwinding data.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180313 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago/cp
paolo [Fri, 21 Oct 2011 20:01:31 +0000 (20:01 +0000)]
2011-10-21  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/45385
* init.c (build_vec_init): Early return error_mark_node if
maxindex is -1.

2011-10-21  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/45385
* c-common.c (conversion_warning): Remove code looking for
artificial operands.

2011-10-21  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/45385
* g++.dg/warn/Wconversion4.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180312 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR target/50813
jakub [Fri, 21 Oct 2011 19:32:20 +0000 (19:32 +0000)]
PR target/50813
* config/i386/i386.c (expand_vec_perm_even_odd_1): Handle
V4DImode and V8SImode for !TARGET_AVX2.

* gcc.dg/torture/vshuf-32.inc: Add broadcast permutation
from element other than first and reverse permutation.
* gcc.dg/torture/vshuf-16.inc: Likewise.
* gcc.dg/torture/vshuf-8.inc: Likewise.
* gcc.dg/torture/vshuf-4.inc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180311 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR bootstrap/50825
bernds [Fri, 21 Oct 2011 18:38:44 +0000 (18:38 +0000)]
PR bootstrap/50825
* sched-deps.c (add_dependence): If not doing predication, promote

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180310 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago/cp
paolo [Fri, 21 Oct 2011 18:18:55 +0000 (18:18 +0000)]
2011-10-21  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/31423
* typeck2.c (cxx_incomplete_type_diagnostic): Improve error message
for invalid use of member function.

2011-10-21  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/31423
* g++.dg/parse/error43.C: New.
* g++.dg/parse/error44.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180309 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/avr/avr.h (LEGITIMIZE_RELOAD_ADDRESS): Pass address of X
gjl [Fri, 21 Oct 2011 15:46:32 +0000 (15:46 +0000)]
* config/avr/avr.h (LEGITIMIZE_RELOAD_ADDRESS): Pass address of X
instead of X to avr_legitimize_reload_address.
* config/avr/avr-protos.h (avr_legitimize_reload_address): Change
first argument's type from rtx to rtx*.
* config/avr/avr.c (avr_legitimize_reload_address): Ditto.
Pass PX to push_reload instead of &X.  Change log messages for
better distinction.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180308 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-21 Roland Stigge <stigge@antcom.de>
paolo [Fri, 21 Oct 2011 14:55:42 +0000 (14:55 +0000)]
2011-10-21  Roland Stigge  <stigge@antcom.de>

PR translation/47064
* params.def: Fix typo "compilatoin" -> "compilation".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180307 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * ChangeLog: Add missing PR reference.
uros [Fri, 21 Oct 2011 14:34:51 +0000 (14:34 +0000)]
* ChangeLog: Add missing PR reference.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180305 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR target/50740
uros [Fri, 21 Oct 2011 14:32:32 +0000 (14:32 +0000)]
PR target/50740
* config/i386/driver-i386.c (host_detect_local_cpu): Do cpuid 7 only
if max_level allows that.


PR target/50740
* gcc.target/i386/avx2-check.h (main): Check CPUID level correctly.
* gcc.target/i386/bmi2-check.h: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180304 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * reg-notes.def (DEP_CONTROL): New.
bernds [Fri, 21 Oct 2011 13:35:44 +0000 (13:35 +0000)]
* reg-notes.def (DEP_CONTROL): New.
* sched-ebb.c (add_deps_for_risky_insns): Add a REG_DEP_CONTROL when
not doing speculation.
* rtlanal.c (record_hard_reg_sets, find_all_hard_reg_sets,
record_hard_reg_uses_1, record_hard_reg_uses): New functions.
* function.c (record_hard_reg_sets, record_hard_reg_uses,
record_hard_reg_uses_1): Remove; move to rtlanal.c.
* lists.c (copy_INSN_LIST, concat_INSN_LIST): New functions.
* haifa-sched.c: Swap includes of "rtl.h" and "hard-reg-set.h".
(real_insn_for_shadow): New function.
(cond_clobbered_p, recompute_todo_spec, check_clobbered_conditions,
toggle_cancelled_flags): New static functions.
(schedule_insn): Relax an assert to only check for empty hard back
dependencies.  Skip cancelled dependencies.  Call
(copy_insn_list): Remove function, renamed moved to lists.c.
(save_backtrack_point): Use new spelling copy_INSN_LIST.
(unschedule_insns_until): Ensure TODO_SPEC is reset properly.
(restore_last_backtrack_point): Likewise.  Call toggle_cancelled_flags.
(estimate_insn_tick): Ignore cancelled dependencies.
(haifa_speculate_insn): Move declaration.
(try_ready): Move code into recompute_todo_spec and call it.  Tweak
some asserts.  Ensure predicated patterns are restored if necessary.
Dump DEP_CONTROL flag.
(haifa_change_pattern): Merge with sched_change_pattern.
(sched_change_pattern): Remove function.
* sched-deps.c (NON_FLUSH_JUMP_KIND, NON_FLUSH_JUMP): Remove.  All
uses changed to simply not test NON_FLUSH_JUMP_P.
(ds_to_dk, dk_to_ds, dump_dep, ds_to_dt, dump_ds, check_dep): Handle
(dep_spec_p): If DO_PREDICATION, REG_DEP_CONTROL is speculative.
(reg_pending_control_uses, control_dependency_cache): New static
(sched_get_reverse_condition_uncached): New function.
(sd_find_dep_between): Remove pointless assert.  Look in
(ask_dependency_caches, set_dependency_caches, sd_delete_dep,
extend_dependency_caches, sched_deps_finish): Handle REG_DEP_CONTROL
and control_dependency_cache.
(sd_unresolve_dep): Use dep_spec_p.
(add_dependence): Now a wrapper around add_dependence_1, handling
REG_DEP_CONTROL specially.
(flush_pending_lists): Clear pending_jump_insns.
(sched_analyze_1): Handle pending_jump_insns like a memory flush.
(sched_analyze_2): Unconditionally add to pending memory flushes,
keep previous behaviour but apply it to pending_jump_insns instead.
(sched_analyze_insn): Defer adding jump reg dependencies using
reg_pending_control_uses; add them to the control_uses list.  Handle
pending_jump_insns and control_uses when adding dependence lists.
(deps_analyze_insn): Update INSN_COND_DEPS.
(deps_analyze_insn): Add jumps to pending_jump_insns rather than
(init_deps): Initialize pending_jump_insns.
(free_deps): Free control_uses.
(remove_from_deps): Remove from pending_jump_insns.
(init_deps_global): Allocate reg_pending_control_uses).
(finish_deps_global): Free it.
(add_dependence_1): Renamed from add_dependence.  Handle
* rtl.h (record_hard_reg_uses, find_all_hard_reg_sets): Declare.
(copy_INSN_LIST, concat_INSN_LIST): Declare.
* sched-int.h (struct deps_reg): Add control_uses.
(struct deps_desc): Add pending_jump_insns.
(struct _haifa_deps_insn_data): Add cond_deps.
(struct _haifa_insn_data): Add must_recompute_spec and predicated_pat.
(BITS_PER_DEP_WEAK): Adjust for two extra bits in the word.
(DEP_CONTROL): New macro.
(DEP_TYPES): Include it.
(HARD_DEP): Adjust definition.
(DEP_CANCELLED): New macro.
(sched_get_reverse_condition_uncached, real_insn_for_shadow): Declare.
* sched-rgn.c (concat_INSN_LIST): Remove function.
(deps_join): Handle pending_jump_insns.
(free_pending_lists): Likewise.
* config/c6x/c6x.c (c6x_set_sched_flags): Set DO_PREDICATION for final

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180302 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/50811
jason [Fri, 21 Oct 2011 13:31:21 +0000 (13:31 +0000)]
PR c++/50811
* parser.c (cp_parser_class_head): Parse virt-specifiers
regardless of whether an id is present

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180301 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix gnat.dg testing with linker plugin check
ro [Fri, 21 Oct 2011 12:53:09 +0000 (12:53 +0000)]
Fix gnat.dg testing with linker plugin check

* lib/gcc-dg.exp (GCC_UNDER_TEST): Set before calling

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180300 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR target/50820
gjl [Fri, 21 Oct 2011 12:48:04 +0000 (12:48 +0000)]
PR target/50820
* config/avr/libgcc.S (__EIND__): New define to 0x3C.
(__tablejump__): Consistently use EIND for indirect jump/call.
(__tablejump_elpm__): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180299 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/c6x/c6x.md (attr "op_pattern"): New.
bernds [Fri, 21 Oct 2011 11:54:25 +0000 (11:54 +0000)]
* config/c6x/c6x.md (attr "op_pattern"): New.
(load_sdata_pic, mov<mode>_insn for QIHIM and SISFVM): Set it.
* config/c6x/c6x-mult.md.in (mulhi3_VARIANT_, mulhisi3_insn_VARIANT_):
* config/c6x/c6x-mult.md: Regenerate.
* config/c6x/c6x.c: Include "regrename.h".
(unit_req_table): New typedef.
(unit_reqs): Use it for the declaration.
(unit_req_factor, get_unit_reqs, merge_unit_reqs, unit_req_imbalance,
get_unit_operand_masks, try_rename_operands, reshuffle_units): New
static functions.
(count_unit_reqs): New arg reqs.  All callers changed.  Use
get_unit_reqs, and don't merge here.
(res_mii): New arg reqs.  All callers changed.  Rewrite to use a loop
using unit_req_factor.
(hwloop_optimize): Call reshuffle_units.  Call merge_unit_reqs after
(c6x_reorg): Add reg notes problem, and call df_analyze.
* Makefile.in ($(out_object_file)): Depend on regrename.h.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180296 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * gcc.target/i386/branch-cost1.c: New test.
ktietz [Fri, 21 Oct 2011 11:50:42 +0000 (11:50 +0000)]
    * gcc.target/i386/branch-cost1.c: New test.
        * gcc.target/i386/branch-cost2.c: New test.
        * gcc.target/i386/branch-cost3.c: New test.
        * gcc.target/i386/branch-cost4.c: New test.

        * fold-const.c (simple_operand_p_2): Handle integral
        casts from boolean-operands.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180295 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix several ChangeLog errors.
ro [Fri, 21 Oct 2011 11:41:15 +0000 (11:41 +0000)]
Fix several ChangeLog errors.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180294 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * cgraph.c (dump_cgraph_node): Dump alias flag.
hubicka [Fri, 21 Oct 2011 11:04:20 +0000 (11:04 +0000)]
* cgraph.c (dump_cgraph_node): Dump alias flag.
* cgraphunit.c (handle_alias_pairs): Handle weakrefs with no destination.
(get_alias_symbol): New function.
(output_weakrefs): Output also weakrefs with no destinatoin.
(lto_output_node): Output weakref alias flag when at function boundary.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180292 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-21 Andrew Stubbs <ams@codesourcery.com>
ams [Fri, 21 Oct 2011 10:31:48 +0000 (10:31 +0000)]
2011-10-21  Andrew Stubbs  <ams@codesourcery.com>

PR target/50809

* config/arm/driver-arm.c (vendors): Make static.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180289 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/i386/i386.c (ix86_emit_swdivsf): Force b into register.
uros [Fri, 21 Oct 2011 07:30:24 +0000 (07:30 +0000)]
* config/i386/i386.c (ix86_emit_swdivsf): Force b into register.
(ix86_emit_swsqrtsf): Force a into register.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180287 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * regcprop.c (copyprop_hardreg_forward_1): Update recog_data
mrs [Fri, 21 Oct 2011 02:14:32 +0000 (02:14 +0000)]
* regcprop.c (copyprop_hardreg_forward_1): Update recog_data
after validate_change wipes it out.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180284 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/spu/spu.md ("vec_permv16qi"): Reduce selector modulo 32
uweigand [Fri, 21 Oct 2011 01:27:36 +0000 (01:27 +0000)]
* config/spu/spu.md ("vec_permv16qi"): Reduce selector modulo 32
before using the shufb instruction.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180283 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Fri, 21 Oct 2011 00:19:02 +0000 (00:19 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180282 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-20 Steve Ellcey <sje@cup.hp.com>
sje [Thu, 20 Oct 2011 21:29:20 +0000 (21:29 +0000)]
2011-10-20  Steve Ellcey  <sje@cup.hp.com>

* gcc.dg/vect/vect-120.c: Add vect_floatint_cvt requirement.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180278 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-20 Steve Ellcey <sje@cup.hp.com>
sje [Thu, 20 Oct 2011 21:26:01 +0000 (21:26 +0000)]
2011-10-20  Steve Ellcey  <sje@cup.hp.com>

PR testsuite/50722
* gcc.dg/pr49994-3.c: Skip on HP-UX.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180277 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * gcc.dg/lto/pr46940_0.c (ASMNAME, ASMNAME2, STRING): Define.
jsm28 [Thu, 20 Oct 2011 21:09:48 +0000 (21:09 +0000)]
* gcc.dg/lto/pr46940_0.c (ASMNAME, ASMNAME2, STRING): Define.
(_moz_foo, EXT__foo): Use ASMNAME.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180276 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * lib/lto.exp (lto-execute): Use .exe suffix for test executable
jsm28 [Thu, 20 Oct 2011 20:39:36 +0000 (20:39 +0000)]
* lib/lto.exp (lto-execute): Use .exe suffix for test executable

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180272 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix operands order in BMI2 patterns.
hjl [Thu, 20 Oct 2011 20:37:32 +0000 (20:37 +0000)]
Fix operands order in BMI2 patterns.


2011-10-20  Kirill Yukhin  <kirill.yukhin@intel.com>

PR target/50766
* config/i386/i386.md (bmi_bextr_<mode>): Update register/
memory operand order.
(bmi2_bzhi_<mode>3): Ditto.
(bmi2_pdep_<mode>3): Ditto.
(bmi2_pext_<mode>3): Ditto.


2011-10-20  Kirill Yukhin  <kirill.yukhin@intel.com>

PR target/50766
* gcc.target/i386/pr50766.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180271 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * target.def (vec_perm_const_ok): Rename from builtin_vec_perm_ok.
rth [Thu, 20 Oct 2011 20:10:05 +0000 (20:10 +0000)]
* target.def (vec_perm_const_ok): Rename from builtin_vec_perm_ok.
* optabs.c (can_vec_perm_expr_p): Update to match.
(expand_vec_perm_expr): Likewise.
* config/i386/i386.c (TARGET_VECTORIZE_VEC_PERM_CONST_OK): Rename
* doc/tm.texi.in: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180270 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoChange Atom align_loops_max_skip to 15.
hjl [Thu, 20 Oct 2011 19:29:52 +0000 (19:29 +0000)]
Change Atom align_loops_max_skip to 15.

2011-10-20  Sergey Ostanevich  <sergos.gnu@gmail.com>

PR target/50572
* config/i386/i386.c (processor_target_table): Change Atom
align_loops_max_skip to 15.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180268 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/41449
jason [Thu, 20 Oct 2011 19:13:51 +0000 (19:13 +0000)]
PR c++/41449
* typeck2.c (split_nonconstant_init_1): Handle EH cleanup of
initialized subobjects.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180267 138bc75d-0d04-0410-961f-82ee72b054a4

rth [Thu, 20 Oct 2011 19:07:41 +0000 (19:07 +0000)]

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180266 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-20 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Thu, 20 Oct 2011 18:07:10 +0000 (18:07 +0000)]
2011-10-20  Steven G. Kargl  <kargl@gcc.gnu.org>

* gfortran.dg/ishft_3.f90:  Update test.

2011-10-20  Steven G. Kargl  <kargl@gcc.gnu.org>

* check.c (less_than_bitsize1): Check |shift| <= bit_size(i).
(gfc_check_ishftc):  Check |shift| <= bit_size(i) and check
that size is positive.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180264 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-15 Steven G. Kargl <kargl@gcc.gcu.org>
kargl [Thu, 20 Oct 2011 17:15:06 +0000 (17:15 +0000)]
2011-10-15  Steven G. Kargl  <kargl@gcc.gcu.org>

PR fortran/50524
* resolve.c (resolve_ref): Check return value of resolve_substring().

2011-10-15  Steven G. Kargl  <kargl@gcc.gcu.org>

PR fortran/50524
* gfortran.dg/substring_integer_index.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180262 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-16 Steven G. Kargl<kargl@gcc.gnu.org>
kargl [Thu, 20 Oct 2011 17:04:53 +0000 (17:04 +0000)]
2011-10-16  Steven G. Kargl<kargl@gcc.gnu.org>

* io.c (match_dt_format): Match a user-defined operator or a kind
type prefixed string.

2011-10-16  Steven G. Kargl<kargl@gcc.gnu.org>

* gfortran.dg/format_string.f: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180261 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix building ggc-zone.c
dodji [Thu, 20 Oct 2011 15:22:17 +0000 (15:22 +0000)]
Fix building ggc-zone.c

* ggc-zone.c (ggc_internal_alloc_zone_stat): Rename
ggc_alloced_size_order_for_request into ggc_round_alloc_size like
it was done in ggc-page.c.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180258 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * gcc.dg/ipa/ipa-sra-2.c: Add dg-require-effective-target
uros [Thu, 20 Oct 2011 15:20:34 +0000 (15:20 +0000)]
   * gcc.dg/ipa/ipa-sra-2.c: Add dg-require-effective-target
       * gcc.dg/ipa/ipa-sra-6.c: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180257 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR target/47989
uros [Thu, 20 Oct 2011 15:13:30 +0000 (15:13 +0000)]
PR target/47989
* config/i386/i386.h (RECIP_MASK_DEFAULT): New define.
* config/i386/i386.op (recip_mask): Initialize with RECIP_MASK_DEFAULT.
* doc/invoke.texi (ix86 Options, -mrecip): Document that GCC
implements vectorized single float division and vectorized sqrtf(x)
with reciprocal sequence with additional Newton-Raphson step with

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180256 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-17 Paul Brook <paul@codesourcery.com>
doko [Thu, 20 Oct 2011 13:57:21 +0000 (13:57 +0000)]
2011-10-17  Paul Brook  <paul@codesourcery.com>
            Matthias Klose  <doko@ubuntu.com>

        * exception.c (parse_lsda_header): hardcode ttype_encoding for older
        ARM EABI toolchains.
        (get_ttype_entry) Remove __ARM_EABI_UNWINDER__ variant.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180255 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-17 Paul Brook <paul@codesourcery.com>
doko [Thu, 20 Oct 2011 13:56:12 +0000 (13:56 +0000)]
2011-10-17  Paul Brook  <paul@codesourcery.com>

        * exception.cc (parse_lsda_header): hardcode ttype_encoding for older
        ARM EABI toolchains.
        (get_ttype_entry) Remove __ARM_EABI_UNWINDER__ variant.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180254 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * gcc.target/i386/pr40906-1.c, gcc.target/i386/pr40906-2.c,
jsm28 [Thu, 20 Oct 2011 13:04:34 +0000 (13:04 +0000)]
* gcc.target/i386/pr40906-1.c, gcc.target/i386/pr40906-2.c,
gcc.target/i386/pr46226.c: Do not use

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180252 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * gcc.dg/tree-prof/val-prof-7.c: Declare bzero instead of
jsm28 [Thu, 20 Oct 2011 13:03:56 +0000 (13:03 +0000)]
* gcc.dg/tree-prof/val-prof-7.c: Declare bzero instead of
including <strings.h>.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180251 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoUse @smallexample instead of @quotation in cppopts.texi
dodji [Thu, 20 Oct 2011 12:36:55 +0000 (12:36 +0000)]
Use @smallexample instead of @quotation in cppopts.texi

PR other/50659
* doc/cppopts.texi: Use @smallexample/@end smallexample in
documentation for -fdebug-cpp instead of @quotation/@end quotation
that is not supported by contrib/texi2pod.pl.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180250 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * ipa-inline.c (inline_small_functions): Always update all calles after
hubicka [Thu, 20 Oct 2011 12:18:56 +0000 (12:18 +0000)]
* ipa-inline.c (inline_small_functions): Always update all calles after

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180249 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * lto.c (node_cmp, varpool_node_cmp): New functions.
hubicka [Thu, 20 Oct 2011 11:49:31 +0000 (11:49 +0000)]
* lto.c (node_cmp, varpool_node_cmp): New functions.
(lto_balanced_map): Honnor -fno-toplevel-reorder of vars&functions.
(cmp_partitions): Rename to ...
(cmp_partitions_size): ... this one.
(cmp_partitions_order): New function.
(lto_wpa_write_files): Sort partitions by order when
-fno-toplevel-reorder is used.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180248 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR bootstrap/50709
hubicka [Thu, 20 Oct 2011 11:46:08 +0000 (11:46 +0000)]
PR bootstrap/50709
* ipa-inline.c (inline_small_functions): Fix checking code to not make
effect on fibheap stability.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180247 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * gcc-interface/Make-lang.in (GNATLIBFLAGS, GNATLIBCFLAGS, THREAD_KIND,
ebotcazou [Thu, 20 Oct 2011 11:33:35 +0000 (11:33 +0000)]
TRACE): Reintroduce.
(ada/tracebak.o, ada/targext.o, ada/cio.o, ada/init.o,
ada/initialize.o, ada/raise.o): Reintroduce explicit compilation rules.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180246 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * lib/lto.exp (lto_init): Test slib lto and no-liker-plugin path.
hubicka [Thu, 20 Oct 2011 11:33:07 +0000 (11:33 +0000)]
* lib/lto.exp (lto_init): Test slib lto and no-liker-plugin path.
* lto/gcc-dg.exp (check_effective_target_lto): Likewise.
* lto/c-torture.exp: Likewise.
* execute/bultins/strstr-asm.c: Force fat LTO.
* gcc.c-torture/compile/sync-1.c: Likewise.
* gcc.c-torture/compile/sync-1.c: Likewise.
* gcc.c-torture/compile/sync-3.c: Likewise.
* gcc.dg/noncompile/invalid_asm.c: Likewise.
* gcc.dg/noncompile/920507-1.c: Likewise.
* gcc.dg/torture/pr36400.c: Likewise.
* g++.dg/torture/pr34850.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180245 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago gcc/
jules [Thu, 20 Oct 2011 11:29:56 +0000 (11:29 +0000)]
* config/m68k/t-linux (M68K_MLIB_CPU): Add ColdFire CPUs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180244 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * gcc-interface/trans.c (lhs_or_actual_p): New predicate.
ebotcazou [Thu, 20 Oct 2011 11:03:54 +0000 (11:03 +0000)]
* gcc-interface/trans.c (lhs_or_actual_p): New predicate.
(unchecked_conversion_nop): Use it.
(gnat_to_gnu): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180243 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * back_end.adb (Call_Back_End): Pass the maximum logical line number
ebotcazou [Thu, 20 Oct 2011 10:56:08 +0000 (10:56 +0000)]
* back_end.adb (Call_Back_End): Pass the maximum logical line number
instead of the maximum physical line number to gigi.
* gcc-interface/trans.c (Sloc_to_locus): Cope with line zero.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180242 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-20 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
ramana [Thu, 20 Oct 2011 09:07:30 +0000 (09:07 +0000)]
2011-10-20  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

       PR target/50106
       * config/arm/arm.c (thumb_unexpanded_epilogue): Handle return
reg size from 1-3.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180240 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix thinko in _cpp_remaining_tokens_num_in_context
dodji [Thu, 20 Oct 2011 08:49:29 +0000 (08:49 +0000)]
Fix thinko in _cpp_remaining_tokens_num_in_context


* lex.c (_cpp_remaining_tokens_num_in_context): Fix computation of
number of tokens.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180239 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-20 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 20 Oct 2011 07:57:48 +0000 (07:57 +0000)]
2011-10-20  Richard Guenther  <rguenther@suse.de>

* tree-ssa-loop-im.c (stmt_cost): Add WIDEN_*, FMA_EXPR
and rotates to the set of expensive operations.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180237 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix minor issues
ebotcazou [Thu, 20 Oct 2011 06:18:09 +0000 (06:18 +0000)]
Fix minor issues

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180236 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoUse can_create_pseudo_p() in the sparc backend.
davem [Thu, 20 Oct 2011 04:16:45 +0000 (04:16 +0000)]
Use can_create_pseudo_p() in the sparc backend.


* config/sparc/sparc.c (sparc_expand_move): Use
(sparc_emit_set_const32): Likewise.
(sparc_emit_set_const64_longway): Likewise.
(sparc_emit_set_const64): Likewise.
(sparc_legitimize_pic_address): Likewise.
(memory_ok_for_ldd): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180235 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-20 Dehao Chen <dehao@google.com>
dehao [Thu, 20 Oct 2011 00:39:12 +0000 (00:39 +0000)]
2011-10-20  Dehao Chen  <dehao@google.com>

* profile.c (compute_branch_probabilities): Compute and dump the
overlap between the static estimation and the instrumentation profile.
(OVERLAP_BASE): New macro.
(compute_frequency_overlap): New function

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180233 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Thu, 20 Oct 2011 00:18:36 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180232 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago/cp
paolo [Wed, 19 Oct 2011 22:45:58 +0000 (22:45 +0000)]
2011-10-19  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/13657
* class.c (instantiate_type): Fix error message.

2011-10-19  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/13657
* g++.dg/parse/error42.C: New.
* g++.old-deja/g++.other/ptrmem7.C: Tweak dg-errors.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180228 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/50793
jason [Wed, 19 Oct 2011 22:29:15 +0000 (22:29 +0000)]
PR c++/50793
* tree.c (bot_manip): Propagate AGGR_INIT_ZERO_FIRST.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180227 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/i386/i386.c (expand_vec_perm_vpshufb2_vpermq_even_odd): Use
jakub [Wed, 19 Oct 2011 22:08:21 +0000 (22:08 +0000)]
* config/i386/i386.c (expand_vec_perm_vpshufb2_vpermq_even_odd): Use
d->op1 instead of d->op0 for the second vpshufb.
(expand_vec_perm_even_odd_1): For V8SImode fix vpshufd immediates.
(ix86_expand_vec_perm_const): If mask indicates two operands are
needed, but both are the same and expanding them as d.op0 == d.op1
failed, retry with d.op0 != d.op1.
(ix86_expand_vec_perm_builtin): Likewise.  Handle sorry printing
also for d.nelt == 32.

* gcc.dg/torture/vshuf-32.inc: Add interleave permutations.
* gcc.dg/torture/vshuf-16.inc: Likewise.
* gcc.dg/torture/vshuf-8.inc: Likewise.
* gcc.dg/torture/vshuf-4.inc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180212 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-19 Ed Smith-Rowland <3dw4rd@verizon.net>
bkoz [Wed, 19 Oct 2011 22:05:26 +0000 (22:05 +0000)]
2011-10-19  Ed Smith-Rowland  <3dw4rd@verizon.net>

* include/tr2/bool_set (bool_set): New.
* include/tr2/bool_set.tcc: New.
* include/tr2/dynamic_bitset (dynamic_bitset): New.
* include/tr2/ratio (kibi, mebi, gibi, tebi, pebi, exbi): New.
* include/Makefile.am: Add files.
* include/Makefile.in: Regenerate.

2011-10-19  Benjamin Kosnik  <bkoz@redhat.com>

* doc/doxygen/user.cfg.in: Add tr2 files.
* testsuite/tr2/headers/all.cc: New.
* testsuite/tr2/headers/using_namespace_std_tr2.cc: New.

* include/tr2/type_traits: Tweak.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180211 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-19 Janus Weil <janus@gcc.gnu.org>
janus [Wed, 19 Oct 2011 22:05:23 +0000 (22:05 +0000)]
2011-10-19  Janus Weil  <janus@gcc.gnu.org>

PR fortran/47023
* check.c (gfc_check_sizeof): Reject procedures as argument of SIZEOF.
* intrinsinc.texi (SIZEOF): Document it.
(STORAGE_SIZE): Fix special characters. Fix line breaks.

2011-10-19  Janus Weil  <janus@gcc.gnu.org>

PR fortran/47023
* gfortran.dg/sizeof_proc.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180210 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * g++.dg/compat/struct-layout-1_generate.c: Also pass -mno-mmx
jsm28 [Wed, 19 Oct 2011 21:25:52 +0000 (21:25 +0000)]
* g++.dg/compat/struct-layout-1_generate.c: Also pass -mno-mmx
-Wno-abi for i?86-*-mingw32* x86_64-*-mingw32* i?86-*-cygwin*.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180208 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR testsuite/50796
uros [Wed, 19 Oct 2011 21:05:23 +0000 (21:05 +0000)]
PR testsuite/50796
* gcc.dg/plugin/plugindir?.c Update dg_prune_output.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180207 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/50787
jason [Wed, 19 Oct 2011 20:42:50 +0000 (20:42 +0000)]
PR c++/50787
* g++.dg/init/ref20.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180206 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR middle-end/50754
jakub [Wed, 19 Oct 2011 19:31:14 +0000 (19:31 +0000)]
PR middle-end/50754
* cfgexpand.c (expand_debug_expr): Handle WIDEN_LSHIFT_EXPR, ignore

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180201 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR middle-end/50795
ktietz [Wed, 19 Oct 2011 17:44:35 +0000 (17:44 +0000)]
    PR middle-end/50795
        * gcc.dg/tree-ssa/builtin-expect-1.c: Adjust test.
        * gcc.dg/tree-ssa/builtin-expect-2.c: Adjust test.
        * gcc.dg/tree-ssa/builtin-expect-3.c: Adjust test.
        * gcc.dg/tree-ssa/builtin-expect-4.c: Adjust test.
        * gcc.dg/tree-ssa/builtin-expect-5.c: Adjust test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180200 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * regrename.h: New file.
bernds [Wed, 19 Oct 2011 17:26:26 +0000 (17:26 +0000)]
* regrename.h: New file.
* regrename.c: Include it.  Also include "emit-rtl.h".
(struct du_head, struct du_chain, du_head_p DEF_VEC and
DEF_VEC_ALLOC_P): Move to regrename.h.
(do_replace): Remove declaration.
(insn_rr): New variable.
(cur_operand): New static variable.
(regrename_chain_from_id): Renamed from chain_from_id and no longer
static.  All callers changed.
(record_operand_use): New static function.
(scan_rtx_reg): Use it.
(find_best_rename_reg): New function, broken out of rename_chains.
(rename_chains): Use it.  Don't update chain regno and nregs here, ...
(regrename_do_replace): ... do it here instead.  Renamed from
do_replace, and no longer static.  All callers changed.
(regrename_analyze): No longer static.  New arg bb_mask.
All callers changed.  If bb_mask is nonzero, use it to limit the
number of basic blocks we analyze.  If we failed to analyze a block,
clear insn operand data.
(record_out_operands): New arg insn_info.  Update cur_operand if it is
(build_def_use): If insn_rr is nonnull, pass an insn_info to
record_out_operands, and update cur_operand here as well.
(regrename_init, regrename_finish): New functions.
(regrename_optimize): Use them.
* Makefile.in (regrename.o): Adjust dependencies.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180198 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-19 Tom de Vries <tom@codesourcery.com>
vries [Wed, 19 Oct 2011 16:29:42 +0000 (16:29 +0000)]
2011-10-19  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/50769
* tree-ssa-tail-merge.c (replace_block_by): Calculate phi_vuse2
unconditionally.  Handle case that phi_vuse2 is not an SSA_NAME.  Add
dummy argument .MEM to phi when increasing number of arguments of phi by
redirecting edges to the block with phi.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180197 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoProperly test for madvise on Solaris 10 (PR bootstrap/50777)
ro [Wed, 19 Oct 2011 16:02:30 +0000 (16:02 +0000)]
Properly test for madvise on Solaris 10 (PR bootstrap/50777)

PR bootstrap/50777
* configure.ac: Save and restore CXXFLAGS around
gcc_AC_CHECK_DECLS uses.
Check for madvise() declaration with g++ if --enable-build-with-cxx.
* configure: Regenerate.
* config.in: Regenerate.
* ggc-page.c (USING_MADVISE): Also check HAVE_DECL_MADVISE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180195 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoPR debug/49310
aoliva [Wed, 19 Oct 2011 15:50:00 +0000 (15:50 +0000)]
PR debug/49310
* var-tracking.c (loc_exp_dep, onepart_aux): New structs.
(variable_part): Replace offset with union.
(enum onepart_enum, onepart_enum_t): New.
(variable_def): Drop cur_loc_changed, add onepart.
(value_chain_def, const_value_chain): Remove.
(VAR_PART_OFFSET, VAR_LOC_1PAUX): New macros, with checking.
(value_chain_pool, value_chains): Remove.
(dropped_values): New.
(struct parm_reg): Only if HAVE_window_save.
(vt_stack_adjustments): Don't record register arguments.
(dv_as_rtx): New.
(dv_onepart_p): Return a onepart_enum_t.
(onepart_pool): New.
(dv_pool): Remove.
(dv_from_rtx): New.
(variable_htab_free): Release onepart aux data.  Reset flags.
(value_chain_htab_hash, value_chain_htab_eq): Remove.
(unshare_variable): Use onepart field.  Propagate onepart aux
data or offset.  Drop cur_loc_changed.
(val_store): Cope with NULL insn.  Rephrase dump output.  Check
for unsuitable locs.  Add FIXME on using cselib locs.
(val_reset): Remove FIXME of unfounded concerns.
(val_resolve): Check for unsuitable locs.  Add FIXME on using
cselib locs.
(variable_union): Use onepart field, adjust access to offset.
(NO_LOC_P): New.
(set_dv_changed): Clear NO_LOC_P when changed.
(find_loc_in_1pdv): Use onepart field.
(intersect_loc_chains): Likewise.
(unsuitable_loc): New.
(loc_cmp): Keep ENTRY_VALUEs at the end of the loc list.
(add_value_chain, add_value_chains): Remove.
(add_cselib_value_chains, remove_value_chain): Likewise.
(remove_value_chains, remove_cselib_value_chains): Likewise.
(canonicalize_loc_order_check): Use onepart.  Drop cur_loc_changed.
(canonicalize_values_star, canonicalize_vars_star): Use onepart.
(variable_merge_over_cur): Likewise.  Adjust access to offset.
Drop cur_loc_changed.
(variable_merge_over_src): Use onepart field.
(remove_duplicate_values): Likewise.
(variable_post_merge_new_vals): Likewise.
(find_mem_expr_in_1pdv): Likewise.
(dataflow_set_preserve_mem_locs): Likewise.  Drop cur_loc_changed
and value chains.
(dataflow_set_remove_mem_locs): Likewise.  Use VAR_LOC_FROM.
(variable_different_p): Use onepart field.  Move onepart test out
of the loop.
(argument_reg_set): Drop.
(add_uses, add_stores): Preserve but do not record in dynamic
tables equivalences for ENTRY_VALUEs and CFA_based addresses.
Avoid unsuitable address expressions.
(EXPR_DEPTH): Unlimit.
(prepare_call_arguments): Use DECL_RTL_IF_SET.
(dump_var): Adjust access to offset.
(variable_from_dropped, recover_dropped_1paux): New.
(variable_was_changed): Drop cur_loc_changed.  Use onepart.
Preserve onepart aux in empty_var.  Recover empty_var and onepart
aux from dropped_values.
(find_variable_location_part): Special-case onepart.  Adjust
access to offset.
(set_slot_part): Use onepart.  Drop cur_loc_changed.  Adjust
access to offset.  Initialize onepaux.  Drop value chains.
(delete_slot_part): Drop value chains.  Use VAR_LOC_FROM.
(VEC (variable, heap), VEC (rtx, stack)): Define.
(expand_loc_callback_data): Drop dummy, cur_loc_changed,
ignore_cur_loc.  Add expanding, pending, depth.
(loc_exp_dep_alloc, loc_exp_dep_clear): New.
(loc_exp_dep_insert, loc_exp_dep_set): New.
(notify_dependents_of_resolved_value): New.
(update_depth, vt_expand_var_loc_chain): New.
(vt_expand_loc_callback): Revamped.
(resolve_expansions_pending_recursion): New.
(vt_expand_loc): Use the new macros above.  Drop ignore_cur_loc
parameter, adjust all callers.
(vt_expand_loc_dummy): Drop.
(vt_expand_1pvar): New.
(emit_note_insn_var_location): Operate on non-debug decls only.
Revamp multi-part cur_loc recomputation and one-part expansion.
Drop cur_loc_changed.  Adjust access to offset.
(VEC (variable, heap)): Drop.
(changed_variables_stack, changed_values_stack): Drop.
(check_changed_vars_0, check_changed_vars_1): Remove.
(check_changed_vars_2, check_changed_vars_3): Remove.
(values_to_stack, remove_value_from_changed_variables): New.
(notify_dependents_of_changed_value, process_changed_values): New.
(emit_notes_for_changes): Revamp onepart updates.
(emit_notes_for_differences_1): Use onepart.  Drop cur_loc_changed
and value chains.  Propagate onepaux.  Recover empty_var and onepaux
from dropped_values.
(emit_notes_for_differences_2): Drop value chains.
(emit_notes_in_bb): Adjust.
(vt_emit_notes): Drop value chains, changed_variables_stack.
Initialize and release dropped_values.
(create_entry_value): Revamp.
(vt_add_function_parameter): Use new interface.
(note_register_arguments): Remove.
(vt_initialize): Drop value chains and register arguments.
(vt_finalize): Drop value chains.  Release windowed_parm_regs only
if HAVE_window_save.
* rtl.h: Document various pass-local uses of RTL flags.
* tree.h (DECL_RTL_KNOWN_SET): New.
* doc/invoke.texi (param max-vartrack-expr-depth): Update
description and default.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180194 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR target/50447
gjl [Wed, 19 Oct 2011 14:59:00 +0000 (14:59 +0000)]
PR target/50447
* config/avr/avr.md (cc): New alternative out_plus_noclobber.
(adjust_len): Ditto.
(addhi3): Don't pipe through short; use gen_int_mode instead.
Prior to reload, expand to gen_addhi3_clobber.
(*addhi3): Use avr_out_plus_noclobber if applicable, use
out_plus_noclobber in cc and adjust_len attribute.
(addhi3_clobber): 2 new RTL peepholes.
(addhi3_clobber): New insn.
* config/avr/avr-protos.h: (avr_out_plus_noclobber): New prototype.
* config/avr/avr.c (avr_out_plus_noclobber): New function.
(notice_update_cc): Handle CC_OUT_PLUS_NOCLOBBER.
(avr_out_plus_1): Tweak if only MSB is +/-1 and other bytes are 0.
Set cc0 to set_zn for adiw on 16-bit values.
(adjust_insn_length): Handle ADJUST_LEN_OUT_PLUS_NOCLOBBER.
(expand_epilogue): No need to add 0 to frame_pointer_rtx.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180193 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-19 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 19 Oct 2011 14:54:34 +0000 (14:54 +0000)]
2011-10-19  Richard Guenther  <rguenther@suse.de>

PR middle-end/50780
* tree-ssa-forwprop.c (forward_propagate_into_cond): Verify
the condition is properly gimple before using it.
* tree-eh (stmt_could_throw_1_p): Properly extract the
operation type from comparisons.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180192 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-19 Roland Stigge <stigge@antcom.de>
paolo [Wed, 19 Oct 2011 13:20:22 +0000 (13:20 +0000)]
2011-10-19  Roland Stigge  <stigge@antcom.de>

PR translation/48638
* plugin.c (add_new_plugin): Fix typo in fatal_error message.

2011-10-19  Roland Stigge  <stigge@antcom.de>

PR translation/49517
* config/rx/rx.c (rx_print_operand): Fix typo in warning message.

2011-10-19  Roland Stigge  <stigge@antcom.de>

PR translation/49704
* semantics.c (potential_constant_expression_1): Use "AST" instead of
"ast" in sorry message.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180188 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-19 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 19 Oct 2011 12:59:21 +0000 (12:59 +0000)]
2011-10-19  Richard Guenther  <rguenther@suse.de>

PR middle-end/50768
* gimple-fold.c (gimplify_and_update_call_from_tree): Rewrite.

* gcc.dg/torture/pr50768.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180187 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-19 Andrey Belevantsev <abel@ispras.ru>
amonakov [Wed, 19 Oct 2011 12:46:44 +0000 (12:46 +0000)]
2011-10-19  Andrey Belevantsev  <abel@ispras.ru>

PR rtl-optimization/50340
* sel-sched-ir.c (update_target_availability): LHS register
availability is not known if the unavailable LHS of the other
expression is a different register.

* gcc.dg/pr50340.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180186 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2011-10-19 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 19 Oct 2011 12:46:42 +0000 (12:46 +0000)]
2011-10-19  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/38761
PR c++/40872
* decl.c (duplicate_decls, make_typename_type, grokdeclarator): Use
G_() in error message strings to facilitate translation.
* semantics.c (finish_id_expression): Likewise.
* parser.c (cp_parser_nested_name_specifier_opt,
cp_parser_parameter_declaration): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180185 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR target/50310
uweigand [Wed, 19 Oct 2011 12:17:35 +0000 (12:17 +0000)]
PR target/50310
* config/spu/spu.c (spu_emit_vector_compare): Support unordered
floating-point comparisons.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180184 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoOops, old revision of patch..
hubicka [Wed, 19 Oct 2011 11:39:00 +0000 (11:39 +0000)]
Oops, old revision of patch..

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180182 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * cgraphunit.c (handle_alias_pairs): Also handle wekref with destination
hubicka [Wed, 19 Oct 2011 10:27:50 +0000 (10:27 +0000)]
* cgraphunit.c (handle_alias_pairs): Also handle wekref with destination
(output_weakrefs): New function.
* varpool.c (varpool_create_variable_alias): Handle external aliases.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180181 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * dwarf2out.c (loc_descriptor): For SUBREG pass SUBREG_REG's mode as
jakub [Wed, 19 Oct 2011 08:43:09 +0000 (08:43 +0000)]
* dwarf2out.c (loc_descriptor): For SUBREG pass SUBREG_REG's mode as
second argument instead of mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180178 138bc75d-0d04-0410-961f-82ee72b054a4