gcc.git
10 years agore PR c++/58477 (ice in cgraph_speculative_call_info)
Jan Hubicka [Sat, 14 Dec 2013 18:28:22 +0000 (19:28 +0100)]
re PR c++/58477 (ice in cgraph_speculative_call_info)

PR middle-end/58477
* cgraphclones.c (cgraph_clone_edge): Do not resolve speculative edges.

From-SVN: r205991

10 years agore PR fortran/59502 ([OOP] ICE on invalid on pointer assignment to non-pointer CLASS)
Janus Weil [Sat, 14 Dec 2013 17:47:22 +0000 (18:47 +0100)]
re PR fortran/59502 ([OOP] ICE on invalid on pointer assignment to non-pointer CLASS)

2013-12-14  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59502
* primary.c (gfc_match_varspec): Check for 'class_ok'.

2013-12-14  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59502
* gfortran.dg/class_57.f90: New.

From-SVN: r205990

10 years agoRestore flag_pic in ix86_function_specific_restore
H.J. Lu [Sat, 14 Dec 2013 17:01:49 +0000 (17:01 +0000)]
Restore flag_pic in ix86_function_specific_restore

gcc/

PR target/59492
* config/i386/i386.c (ix86_function_specific_restore): Don't
change -fPIC.

2013-12-14   H.J. Lu  <hongjiu.lu@intel.com>

PR target/59492
* g++.dg/other/pr59492.C: New file.

From-SVN: r205989

10 years agoFix the ChangeLog entries
H.J. Lu [Sat, 14 Dec 2013 16:59:34 +0000 (08:59 -0800)]
Fix the ChangeLog entries

From-SVN: r205988

10 years ago* g++.dg/cilk-plus/cilk-plus.exp: Fix last change.
Andreas Schwab [Sat, 14 Dec 2013 15:30:45 +0000 (15:30 +0000)]
* g++.dg/cilk-plus/cilk-plus.exp: Fix last change.

From-SVN: r205987

10 years ago* var-tracking.c (add_stores): Fix oversight in latest commit.
Eric Botcazou [Sat, 14 Dec 2013 15:24:58 +0000 (15:24 +0000)]
* var-tracking.c (add_stores): Fix oversight in latest commit.

From-SVN: r205986

10 years agoMore tests for ubsan.
Marek Polacek [Sat, 14 Dec 2013 13:31:04 +0000 (13:31 +0000)]
More tests for ubsan.

From-SVN: r205985

10 years agore PR sanitizer/59503 (Bogus integer-overflow error with long long with -m32)
Marek Polacek [Sat, 14 Dec 2013 12:19:56 +0000 (12:19 +0000)]
re PR sanitizer/59503 (Bogus integer-overflow error with long long with -m32)

PR sanitizer/59503
* internal-fn.c (ubsan_expand_si_overflow_addsub_check): Call
expand_binop with correct optab depending on code.
testsuite/
* c-c++-common/ubsan/pr59503.c: New test.

From-SVN: r205984

10 years agore PR fortran/59450 ([OOP] ICE for type-bound-procedure expression in module procedur...
Janus Weil [Sat, 14 Dec 2013 10:31:56 +0000 (11:31 +0100)]
re PR fortran/59450 ([OOP] ICE for type-bound-procedure expression in module procedure interface)

2013-12-14  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59450
* module.c (mio_expr): Handle type-bound function expressions.

2013-12-14  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59450
* gfortran.dg/typebound_proc_31.f90: New.

From-SVN: r205983

10 years agoFix REG_PARM_STACK_SPACE usage in expand_call
Tom de Vries [Sat, 14 Dec 2013 08:06:22 +0000 (08:06 +0000)]
Fix REG_PARM_STACK_SPACE usage in expand_call

2013-12-14  Tom de Vries  <tom@codesourcery.com>

* calls.c (expand_call): Fix REG_PARM_STACK_SPACE comparison.

From-SVN: r205982

10 years ago* config/rl78/rl78-expand.md (one_cmplqi2): Make constant signed.
DJ Delorie [Sat, 14 Dec 2013 03:45:14 +0000 (22:45 -0500)]
* config/rl78/rl78-expand.md (one_cmplqi2): Make constant signed.

From-SVN: r205981

10 years agoDaily bump.
GCC Administrator [Sat, 14 Dec 2013 00:16:27 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r205980

10 years agomsp430.md (movqi): replace general_operand with msp_general_operand and nonimmediate_...
DJ Delorie [Fri, 13 Dec 2013 21:58:29 +0000 (16:58 -0500)]
msp430.md (movqi): replace general_operand with msp_general_operand and nonimmediate_operand with...

* config/msp430/msp430.md (movqi): replace general_operand with
msp_general_operand and nonimmediate_operand with
msp_nonimmediate_operand to allow volatile operands.
(movhi): Likewise.
(movpsi): Likewise.
(addpsi3): Likewise.
(addhi3): Likewise.
(addhi3_cy): Likewise.
(addchi4_cy): Likewise.
(xor<mode>3): Likewise.
(ome_cmpl<mode>2): Likewise.
(extendqihi2): Likewise.
(zero_extendqihi2): Likewise.
(zero_extendhipsi2): Likewise.
(truncpsihi2): Likewise.
(srai_1): Likewise.

From-SVN: r205977

10 years agoFix g++.dg/cilk-plus/cilk-plus.exp
Rainer Orth [Fri, 13 Dec 2013 21:52:21 +0000 (21:52 +0000)]
Fix g++.dg/cilk-plus/cilk-plus.exp

        * g++.dg/cilk-plus/cilk-plus.exp: Properly set ld_library_path.
        Use TEST_EXTRA_LIBS instead of ALWAYS_CFLAGS.

From-SVN: r205976

10 years agoconfigure.ac: Add user-friendly check for native x86_64-linux multilibs.
Francois-Xavier Coudert [Fri, 13 Dec 2013 21:42:02 +0000 (21:42 +0000)]
configure.ac: Add user-friendly check for native x86_64-linux multilibs.

* configure.ac: Add user-friendly check for native x86_64-linux
multilibs.
* configure: Regenerate.

From-SVN: r205975

10 years agoira.h (struct ira_reg_equiv): Rename to ira_reg_equiv_s.
Vladimir Makarov [Fri, 13 Dec 2013 20:47:19 +0000 (20:47 +0000)]
ira.h (struct ira_reg_equiv): Rename to ira_reg_equiv_s.

2013-12-13  Vladimir Makarov  <vmakarov@redhat.com>

* ira.h (struct ira_reg_equiv): Rename to ira_reg_equiv_s.
* ira.c: Ditto.
* lra-int.h (lra_init_equiv): New prototype.
* lra-constraints.c (lra_init_equiv, update_equiv): New functions.
(loc_equivalence_callback): Use the 3rd arg.
(lra_constraints): Update equivalences.  Pass curr_insn to
simplify_replace_fn_rtx.
* lra.c (lra): Call lra_init_equiv.

From-SVN: r205974

10 years agogenmodes.c (emit_max_int): Fixed missing parens.
Kenneth Zadeck [Fri, 13 Dec 2013 19:04:14 +0000 (19:04 +0000)]
genmodes.c (emit_max_int): Fixed missing parens.

2013-12-13  Kenneth Zadeck  <zadeck@naturalbridge.com>

* genmodes.c (emit_max_int): Fixed missing parens.

From-SVN: r205970

10 years agore PR tree-optimization/59149 (diagnose_tm_1 calls flags_from_decl_or_type on an...
Aldy Hernandez [Fri, 13 Dec 2013 17:50:18 +0000 (17:50 +0000)]
re PR tree-optimization/59149 (diagnose_tm_1 calls flags_from_decl_or_type on an ADDR_EXPR)

PR tree-optimization/59149
* calls.c (flags_from_decl_or_type): Fail on non decl or type.
* trans-mem.c (diagnose_tm_1): Do not call flags_from_decl_or_type
if no type or decl.

From-SVN: r205967

10 years agoEnabled Usage of _Cilk_spawn and _Cilk_sync in Cilk Runtime (libcilkrts).
Balaji V. Iyer [Fri, 13 Dec 2013 16:44:02 +0000 (16:44 +0000)]
Enabled Usage of _Cilk_spawn and _Cilk_sync in Cilk Runtime (libcilkrts).

+2013-12-13  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * Makefile.am (GENERAL_FLAGS): Removed undefining of Cilk keywords.
+       * Makefile.in: Reconfigure.
+       * runtime/symbol_test.c: Added a #define to clear out _Cilk_for.
+

From-SVN: r205965

10 years agoarc.h (BITS_PER_UNIT): Removed.
Kenneth Zadeck [Fri, 13 Dec 2013 16:38:53 +0000 (16:38 +0000)]
arc.h (BITS_PER_UNIT): Removed.

2013-12-13  Kenneth Zadeck  <zadeck@naturalbridge.com>

* config/arc/arc.h (BITS_PER_UNIT): Removed.
* config/bfin/bfin.h (BITS_PER_UNIT): Removed.
* config/lm32/lm32.h (BITS_PER_UNIT): Removed.
* config/m32c/m32c.h (BITS_PER_UNIT): Removed.
* config/microblaze/microblaze.h (BITS_PER_UNIT): Removed.
* config/picochip/picochip.h (BITS_PER_UNIT): Removed.
* config/spu/spu.h (BITS_PER_UNIT): Removed.
* defaults.h (BITS_PER_UNIT): Removed.
* config/i386/i386-modes.def (MAX_BITSIZE_MODE_ANY_INT): New.
* doc/rtl (BITS_PER_UNIT): Moved from tm.texi.
(MAX_BITSIZE_MODE_ANY_INT): Updated.
* doc/tm.texi (BITS_PER_UNIT): Removed.
* doc/tm.texi.in (BITS_PER_UNIT): Removed.
* genmodes.c (bits_per_unit, max_bitsize_mode_any_int): New.
(create_modes): Added code to set bits_per_unit and
max_bitsize_mode_any_int.
(emit_max_int): Changed code generation.
* mkconfig.sh: Added insn-modes.h.

From-SVN: r205964

10 years agore PR tree-optimization/45685 (missed conditional move opportunity in loop)
Jeff Law [Fri, 13 Dec 2013 16:34:39 +0000 (09:34 -0700)]
re PR tree-optimization/45685 (missed conditional move opportunity in loop)

PR tree-optimization/45685
* tree-ssa-phiopt.c (neg_replacement): New function.
(tree_ssa_phiopt_worker): Call it.

PR tree-optimization/45685
* gcc.dg/tree-ssa/pr45685.c: New test.

From-SVN: r205963

10 years agoUpdate HImode imul cost for Silvermont
Yuri Rumyantsev [Fri, 13 Dec 2013 16:11:41 +0000 (16:11 +0000)]
Update HImode imul cost for Silvermont

2013-12-13  Yuri Rumyantsev  <ysrumyan@gmail.com>

* config/i386/i386.c (slm_cost): Fix imul cost for HI.

From-SVN: r205962

10 years agore PR tree-optimization/58296 (ivopts is unable to handle some loops altered by the...
Bin Cheng [Fri, 13 Dec 2013 11:36:22 +0000 (11:36 +0000)]
re PR tree-optimization/58296 (ivopts is unable to handle some loops altered by the loop header copying pass)

PR tree-optimization/58296
PR tree-optimization/41488
* tree-scalar-evolution.c: Include necessary header files.
(simplify_peeled_chrec): New function.
(analyze_evolution_in_loop): New static variable.
Call simplify_peeled_chrec.
* tree-ssa-loop-ivopts.c (mark_bivs): Don't mark peeled IV as biv.
(add_old_iv_candidates): Don't add candidate for peeled IV.
* tree-affine.h (aff_combination_zero_p): New function.

PR tree-optimization/58296
PR tree-optimization/41488
* gcc.dg/tree-ssa/scev-7.c: New test.
* gcc.dg/pr41488.c: New test.
* g++.dg/pr59445.C: New test.

From-SVN: r205959

10 years agomsp430.c (is_wakeup_func): New function.
Nick Clifton [Fri, 13 Dec 2013 10:00:40 +0000 (10:00 +0000)]
msp430.c (is_wakeup_func): New function.

* config/msp430/msp430.c (is_wakeup_func): New function.  Returns
true if the current function has the wakeup attribute.
(msp430_start_function): Note if the function has the wakeup
attribute.
(msp430_attribute_table): Add wakeup attribute.
(msp430_expand_epilogue): Add support for wakeup functions.
* config/msp430/msp430.md (disable_interrupts): Emit a NOP after
the DINT instruction.
* doc/extend.texi: Document the wakeup attribute.

From-SVN: r205958

10 years agore PR c++/57897 (Target x86_64-w64-mingw32 failed with '-mno-fentry isn't compatible...
Kai Tietz [Fri, 13 Dec 2013 09:24:16 +0000 (09:24 +0000)]
re PR c++/57897 (Target x86_64-w64-mingw32 failed with '-mno-fentry isn't compatible with SEH')

       PR c++/57897
       * config/i386/i386.c (ix86_option_override_internal): Set for
       x64 target flag_unwind_tables, if flag_asynchronous_unwind_tables
       was explicit set.

From-SVN: r205957

10 years agoUpdate to copy of current master Go testsuite.
Ian Lance Taylor [Fri, 13 Dec 2013 05:23:14 +0000 (05:23 +0000)]
Update to copy of current master Go testsuite.

From-SVN: r205955

10 years agocomment
Jason Merrill [Fri, 13 Dec 2013 03:58:54 +0000 (22:58 -0500)]
comment

From-SVN: r205953

10 years agore PR c++/58954 (accessing a private member function in decltype of a friend class...
Jason Merrill [Fri, 13 Dec 2013 03:58:48 +0000 (22:58 -0500)]
re PR c++/58954 (accessing a private member function in decltype of a friend class causes access control error)

PR c++/58954
* pt.c (resolve_overloaded_unification): Use instantiate_template.

From-SVN: r205952

10 years agoDaily bump.
GCC Administrator [Fri, 13 Dec 2013 00:16:59 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r205951

10 years ago* gcc-interface/Makefile.in (ARM linux, GNU eabi): Tweak regexp.
Eric Botcazou [Thu, 12 Dec 2013 22:59:35 +0000 (22:59 +0000)]
* gcc-interface/Makefile.in (ARM linux, GNU eabi): Tweak regexp.

From-SVN: r205948

10 years agoFix date
Eric Botcazou [Thu, 12 Dec 2013 22:52:25 +0000 (22:52 +0000)]
Fix date

From-SVN: r205946

10 years agore PR ada/55946 (wrong tools used for build of gnattools [native-cross])
Eric Botcazou [Thu, 12 Dec 2013 22:50:07 +0000 (22:50 +0000)]
re PR ada/55946 (wrong tools used for build of gnattools [native-cross])

PR ada/55946
gnattools/
* Makefile.in (host): Define.
(host_alias): Likewise.
(TOOLS_FLAGS_TO_PASS_RE): Add LDFLAGS.
(GNATMAKE_FOR_HOST): Define.
(GNATLINK_FOR_HOST): Likewise.
(GNATBIND_FOR_HOST): Likewise.
(GNATLS_FOR_HOST): Likewise.
(RTS_DIR): Move around and use GNATLS_FOR_HOST.
(TOOLS_FLAGS_TO_PASS_CROSS): Use the other *_HOST variables.
gcc/ada/
* gcc-interface/Make-lang.in (ada/doctools/xgnatugn): Use gnatmake.
* gcc-interface/Makefile.in (GCC_LINK): Add LDFLAGS.
(../../gnatmake): Remove LDFLAGS.
(../../gnatlink): Likewise.

Co-Authored-By: Iain Sandoe <iain@codesourcery.com>
From-SVN: r205945

10 years agocompiler: Better error messages for { on line after if/for/switch.
Ian Lance Taylor [Thu, 12 Dec 2013 21:35:02 +0000 (21:35 +0000)]
compiler: Better error messages for { on line after if/for/switch.

From-SVN: r205944

10 years agoi386.md (simple LEA peephole2): Add missing mode to zero_extend for zero-extended...
Jeff Law [Thu, 12 Dec 2013 21:19:20 +0000 (14:19 -0700)]
i386.md (simple LEA peephole2): Add missing mode to zero_extend for zero-extended MULT simple LEA pattern.

* i386.md (simple LEA peephole2): Add missing mode to zero_extend
for zero-extended MULT simple LEA pattern.

From-SVN: r205943

10 years agocompiler: Check for nil when slicing pointer to array.
Ian Lance Taylor [Thu, 12 Dec 2013 21:03:10 +0000 (21:03 +0000)]
compiler: Check for nil when slicing pointer to array.

From-SVN: r205942

10 years agocompiler: Tweak untyped nil error message.
Ian Lance Taylor [Thu, 12 Dec 2013 20:42:24 +0000 (20:42 +0000)]
compiler: Tweak untyped nil error message.

From-SVN: r205941

10 years agoruntime: Fix defer of unlock thread at program startup.
Ian Lance Taylor [Thu, 12 Dec 2013 20:13:58 +0000 (20:13 +0000)]
runtime: Fix defer of unlock thread at program startup.

Don't free stack allocated defer block.  Also ensure we have a
Go context in a few more places before freeing the block.

From-SVN: r205940

10 years agore PR fortran/59440 (ICE in force_decl_die, at dwarf2out.c:20111 with -g)
Tobias Burnus [Thu, 12 Dec 2013 19:41:11 +0000 (20:41 +0100)]
re PR fortran/59440 (ICE in force_decl_die, at dwarf2out.c:20111 with -g)

2013-12-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/59440
        * trans-decl.c (generate_namelist_decl): Ensure debug DIE
        is created by setting DECL_IGNORED_P to 0.

2013-12-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/59440
        * gfortran.dg/namelist_83.f90: New.
        * gfortran.dg/namelist_83_2.f90: New.

From-SVN: r205939

10 years agocompiler: Don't permit importing a package as "init".
Ian Lance Taylor [Thu, 12 Dec 2013 19:25:29 +0000 (19:25 +0000)]
compiler: Don't permit importing a package as "init".

From-SVN: r205938

10 years agocompiler: Don't compare structs with blank non-comparable fields.
Ian Lance Taylor [Thu, 12 Dec 2013 18:45:24 +0000 (18:45 +0000)]
compiler: Don't compare structs with blank non-comparable fields.

From-SVN: r205937

10 years agore PR middle-end/59470 (libstdc++ miscompilation after r205709)
Jakub Jelinek [Thu, 12 Dec 2013 17:55:44 +0000 (18:55 +0100)]
re PR middle-end/59470 (libstdc++ miscompilation after r205709)

PR middle-end/59470
* g++.dg/opt/pr59470.C: New test.

From-SVN: r205934

10 years agoreflect: Fix MakeFunc returning float32 or float64 on 386.
Ian Lance Taylor [Thu, 12 Dec 2013 17:44:01 +0000 (17:44 +0000)]
reflect: Fix MakeFunc returning float32 or float64 on 386.

From-SVN: r205932

10 years agore PR middle-end/59470 (libstdc++ miscompilation after r205709)
Vladimir Makarov [Thu, 12 Dec 2013 15:51:49 +0000 (15:51 +0000)]
re PR middle-end/59470 (libstdc++ miscompilation after r205709)

2013-12-12  Vladimir Makarov  <vmakarov@redhat.com>

PR middle-end/59470
* lra-coalesce.c (lra_coalesce): Invalidate inheritance pseudo
values if necessary.

From-SVN: r205930

10 years agore PR c++/58627 (crash during compilation of boost testsuite)
Jakub Jelinek [Thu, 12 Dec 2013 13:35:21 +0000 (14:35 +0100)]
re PR c++/58627 (crash during compilation of boost testsuite)

PR c++/58627
* call.c (add_template_candidate_real): Don't call ggc_free on targs.

From-SVN: r205927

10 years agofree_race2.c: New file.
Max Ostapenko [Thu, 12 Dec 2013 11:44:23 +0000 (13:44 +0200)]
free_race2.c: New file.

2013-12-12  Max Ostapenko  <m.ostapenko@partner.samsung.com>

* c-c++-common/tsan/free_race2.c: New file.
* c-c++-common/tsan/race_on_barrier2.c: Likewise.
* c-c++-common/tsan/race_on_mutex.c: Likewise.
* c-c++-common/tsan/race_on_mutex2.c: Likewise.
* c-c++-common/tsan/simple_race.c: Likewise.
* c-c++-common/tsan/simple_stack.c: Likewise.
* g++.dg/tsan/aligned_vs_unaligned_race.C: Likewise. Test applies only on x86_64-linux targets.
* g++.dg/tsan/atomic_free.C: Likewise.
* g++.dg/tsan/atomic_free2.C: Likewise.
* g++.dg/tsan/benign_race.C: Likewise.
* g++.dg/tsan/cond_race.C: Likewise.
* g++.dg/tsan/default_options.C: Likewise.
* g++.dg/tsan/fd_close_norace.C: Likewise.
* g++.dg/tsan/fd_close_norace2.C: Likewise.
* g++-dg/tsan/tsan.exp: Modified to run additional C++ tests.

From-SVN: r205925

10 years agoMinor fixes
Eric Botcazou [Thu, 12 Dec 2013 10:13:18 +0000 (10:13 +0000)]
Minor fixes

From-SVN: r205924

10 years agore PR libgomp/59467 (copyprivate in the fortran testsuite)
Jakub Jelinek [Thu, 12 Dec 2013 08:52:06 +0000 (09:52 +0100)]
re PR libgomp/59467 (copyprivate in the fortran testsuite)

PR libgomp/59467
* gimplify.c (omp_check_private): Add copyprivate argument, if it
is true, don't check omp_privatize_by_reference.
(gimplify_scan_omp_clauses): For OMP_CLAUSE_COPYPRIVATE verify
decl is private in outer context.  Adjust omp_check_private caller.

* gfortran.dg/gomp/pr59467.f90: New test.
* c-c++-common/gomp/pr59467.c: New test.

* testsuite/libgomp.fortran/crayptr2.f90: Add private (d) clause to
!$omp parallel.

From-SVN: r205922

10 years agore PR testsuite/59442 (movapd tests fail if built with -fstack-protector-strong/all)
Ryan Mansfield [Thu, 12 Dec 2013 07:49:42 +0000 (08:49 +0100)]
re PR testsuite/59442 (movapd tests fail if built with -fstack-protector-strong/all)

PR testsuite/59442
* gcc.target/i386/sse2-movapd-1.c: Fix alignment attributes.
* gcc.target/i386/sse2-movapd-2.c: Likewise.
* gcc.target/i386/avx-vmovapd-256-1.c: Likewise.
* gcc.target/i386/avx-vmovapd-256-2.c: Likewise.

From-SVN: r205919

10 years agoconfig.host (arm*-*-uclinux*): Move t-arm before t-bpabi.
Zhenqiang Chen [Thu, 12 Dec 2013 05:48:08 +0000 (05:48 +0000)]
config.host (arm*-*-uclinux*): Move t-arm before t-bpabi.

2013-12-12  Zhenqiang Chen  <zhenqiang.chen@arm.com>

* config.host (arm*-*-uclinux*): Move t-arm before t-bpabi.

From-SVN: r205917

10 years agogo-lang.c (go_langhook_post_options): Disable sibling calls by default.
Ian Lance Taylor [Thu, 12 Dec 2013 02:24:20 +0000 (02:24 +0000)]
go-lang.c (go_langhook_post_options): Disable sibling calls by default.

* go-lang.c (go_langhook_post_options): Disable sibling calls by
default.

From-SVN: r205915

10 years agocompiler, reflect, runtime: Implement method values in reflect.
Ian Lance Taylor [Thu, 12 Dec 2013 01:08:52 +0000 (01:08 +0000)]
compiler, reflect, runtime: Implement method values in reflect.

From-SVN: r205913

10 years agoDaily bump.
GCC Administrator [Thu, 12 Dec 2013 00:16:27 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r205912

10 years agoreflect, runtime: Let reflect.MakeFunc functions call recover.
Ian Lance Taylor [Wed, 11 Dec 2013 23:43:16 +0000 (23:43 +0000)]
reflect, runtime: Let reflect.MakeFunc functions call recover.

From-SVN: r205908

10 years agocompiler: Minor fixes for recover thunks.
Ian Lance Taylor [Wed, 11 Dec 2013 22:42:20 +0000 (22:42 +0000)]
compiler: Minor fixes for recover thunks.

Avoid name collisions when a method calls recover.

Don't crash if a method with an unnamed receiver calls
recover.

From-SVN: r205906

10 years agore PR rtl-optimization/59446 (loop2_doloop creates constant comparison and dead jump)
Jeff Law [Wed, 11 Dec 2013 22:15:14 +0000 (15:15 -0700)]
re PR rtl-optimization/59446 (loop2_doloop creates constant comparison and dead jump)

PR rtl-optimization/59446
* tree-ssa-threadupdate.c (mark_threaded_blocks): Properly
test for crossing a loop header.

From-SVN: r205905

10 years agore PR target/59390 (presence of __attribute__((target("fma"))) declaration breaks...
Sriraman Tallam [Wed, 11 Dec 2013 20:06:46 +0000 (20:06 +0000)]
re PR target/59390 (presence of  __attribute__((target("fma"))) declaration breaks __builtin_fma)

2013-12-11  Sriraman Tallam  <tmsriram@google.com>

PR target/59390
* config/i386/i386.c (get_builtin): New function.
(ix86_builtin_vectorized_function): Replace all instances of
ix86_builtins[...] with get_builtin(...).
(ix86_builtin_reciprocal): Ditto.

PR target/59390
* gcc.target/i386/pr59390.c: New test.
* gcc.target/i386/pr59390_1.c: New test.
* gcc.target/i386/pr59390_2.c: New test.

Tested boot-strap on all languages and test parity on x86_64 and with -m32.

From-SVN: r205904

10 years agofpu-387.h (sigill_hdlr, [...]): Emit
Tobias Burnus [Wed, 11 Dec 2013 19:50:56 +0000 (20:50 +0100)]
fpu-387.h (sigill_hdlr, [...]): Emit

2013-12-11  Tobias Burnus  <burnus@net-b.de>

        * config/fpu-387.h (sigill_hdlr, get_fpu_rounding_mode): Emit
        * SSE
        instructions when __SSE_MATH__ is defined.

From-SVN: r205903

10 years agoAdded Compiler Support for _Cilk_spawn and _Cilk_sync for C++.
Balaji V. Iyer [Wed, 11 Dec 2013 18:23:27 +0000 (18:23 +0000)]
Added Compiler Support for _Cilk_spawn and _Cilk_sync for C++.

gcc/c-family/ChangeLog
2013-12-11  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * cilk.c (cilk_outline): Made this function non-static.
(gimplify_cilk_spawn): Removed pre_p and post_p arguments.
(create_cilk_wrapper): Added a new parameter: a function pointer.
(c_install_body_w_frame_cleanup): Remove
(extract_free_variables): Added VEC_INIT_EXPR and CONSTRUCTOR case.
        * c-common.h (cilk_outline): New prototype.
(gimplify_cilk_spawn): Removed two parameters.
        (cilk_install_body_with_frame_cleanup): New prototype.
* c-gimplify.c (c_gimplify_expr): Added MODIFY_EXPR, CALL_EXPR and
CILK_SPAWN_STMT case.

gcc/c/ChangeLog
2013-12-11  Balaji V. Iyer  <balaji.v.iyer@intel.com>

* c-objc-common.h (LANG_HOOKS_CILKPLUS_FRAME_CLEANUP): Remove.
(LANG_HOOKS_CILKPLUS_DETECT_SPAWN_AND_UNWRAP): Likewise.
(LANG_HOOKS_CILKPLUS_CILKPLUS_GIMPLIFY_SPAWN): Likewise.
* c-typeck.c (cilk_install_body_with_frame_cleanup): New function.

gcc/ChangeLog
2013-12-11  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * langhooks.h (lang_hooks_for_decls): Remove lang_hooks_for_cilkplus.
(lang_hooks_for_cilkplus): Remove.
* langhooks.c (lhd_cilk_detect_spawn): Likewise.
(lhd_install_body_with_frame_cleanup): Likewise.
* langhooks-def.h (LANG_HOOKS_CILKPLUS_FRAME_CLEANUP): Likewise.
(LANG_HOOKS_CILKPLUS_DETECT_SPAWN_AND_UNWRAP): Likewise.
(LANG_HOOKS_CILKPLUS_CILKPLUS_GIMPLIFY_SPAWN): Likewise.
(LANG_HOOKS_CILKPLUS): Likewise.
(LANG_HOOKS_DECLS): Remove LANG_HOOKS_CILKPLUS.
* gimplify.c (gimplify_expr): Removed CILK_SPAWN_STMT case.
(gimplify_modify_expr): Removed handling of _Cilk_spawn in expr.
(gimplify_call_expr): Likewise.

gcc/cp/ChangeLog
2013-12-11  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * cp-tree.h (cilk_valid_spawn): New prototype.
        (gimplify_cilk_spawn): Likewise.
        (create_try_catch_expr): Likewise.
        * decl.c (finish_function): Insert Cilk function-calls when a
        _Cilk_spawn is used in a function.
        * parser.c (cp_parser_postfix_expression): Added RID_CILK_SPAWN and
        RID_CILK_SYNC cases.
        * cp-cilkplus.c (set_cilk_except_flag): New function.
        (set_cilk_except_data): Likewise.
        (cilk_install_body_with_frame_cleanup): Likewise.
        * except.c (create_try_catch_expr): Likewise.
        * parser.h (IN_CILK_SPAWN): New #define.
        * pt.c (tsubst_expr): Added CILK_SPAWN_STMT and CILK_SYNC_STMT cases.
        * semantics.c (potential_constant_expression_1): Likewise.
        * typeck.c (cp_build_compound_expr): Reject a spawned function in a
        compound expression.
        (check_return_expr): Reject a spawned function in a return expression.
* cp-gimplify.c (cp_gimplify_expr): Added a CILK_SPAWN_STMT and
CALL_EXPR case.  Added handling of spawned function in MODIFY_EXPR
and INIT_EXPR.

gcc/testsuite/ChangeLog
2013-12-11  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * g++.dg/cilk-plus/CK/catch_exc.cc: New test case.
        * g++.dg/cilk-plus/CK/const_spawn.cc: Likewise.
        * g++.dg/cilk-plus/CK/fib-opr-overload.cc: Likewise.
        * g++.dg/cilk-plus/CK/fib-tplt.cc: Likewise.
        * g++.dg/cilk-plus/CK/lambda_spawns.cc: Likewise.
        * g++.dg/cilk-plus/CK/lambda_spawns_tplt.cc: Likewise.
        * g++.dg/cilk-plus/cilk-plus.exp: Added support to run Cilk Keywords
        test stored in c-c++-common.  Also, added the Cilk runtime's library
        to the ld_library_path.

From-SVN: r205902

10 years agoexpr.c (expand_assignment): Remove dependency on flag_strict_volatile_bitfields.
Bernd Edlinger [Wed, 11 Dec 2013 17:15:44 +0000 (17:15 +0000)]
expr.c (expand_assignment): Remove dependency on flag_strict_volatile_bitfields.

2013-12-11  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * expr.c (expand_assignment): Remove dependency on
        flag_strict_volatile_bitfields. Always set the memory
        access mode.
        (expand_expr_real_1): Likewise.

From-SVN: r205899

10 years agore PR middle-end/59134 (infinite loop between store_fixed_bit_field and store_split_b...
Bernd Edlinger [Wed, 11 Dec 2013 17:09:17 +0000 (17:09 +0000)]
re PR middle-end/59134 (infinite loop between store_fixed_bit_field and store_split_bit_field with STRICT_ALIGNMENT)

2013-12-11  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR middle-end/59134
        * expmed.c (store_bit_field): Use narrow_bit_field_mem and
        store_fixed_bit_field_1 for -fstrict-volatile-bitfields.
        (store_fixed_bit_field): Split up.  Call store_fixed_bit_field_1
        to do the real work.
        (store_fixed_bit_field_1): New function.
        (store_split_bit_field): Limit the unit size to the memory mode size,
        to prevent recursion.

testsuite:
        * gcc.c-torture/compile/pr59134.c: New test.
        * gnat.dg/misaligned_volatile.adb: New test.

From-SVN: r205898

10 years agore PR middle-end/23623 (volatile keyword changes bitfield access size from 32bit...
Bernd Edlinger [Wed, 11 Dec 2013 16:59:24 +0000 (16:59 +0000)]
re PR middle-end/23623 (volatile keyword changes bitfield access size from 32bit to 8bit)

2013-12-11  Bernd Edlinger  <bernd.edlinger@hotmail.de>
            Sandra Loosemore  <sandra@codesourcery.com>

        PR middle-end/23623
        PR middle-end/48784
        PR middle-end/56341
        PR middle-end/56997
        * expmed.c (strict_volatile_bitfield_p): Add bitregion_start
        and bitregion_end parameters.  Test for compliance with C++
        memory model.
        (store_bit_field): Adjust call to strict_volatile_bitfield_p.
        Add fallback logic for cases where -fstrict-volatile-bitfields
        is supposed to apply, but cannot.
        (extract_bit_field): Likewise. Use narrow_bit_field_mem and
        extract_fixed_bit_field_1 to do the extraction.
        (extract_fixed_bit_field): Revert to previous mode selection algorithm.
        Call extract_fixed_bit_field_1 to do the real work.
        (extract_fixed_bit_field_1): New function.

testsuite:
        * gcc.dg/pr23623.c: Update to test interaction with C++
        memory model.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r205897

10 years agore PR middle-end/23623 (volatile keyword changes bitfield access size from 32bit...
Sandra Loosemore [Wed, 11 Dec 2013 16:50:05 +0000 (11:50 -0500)]
re PR middle-end/23623 (volatile keyword changes bitfield access size from 32bit to 8bit)

2013-12-11  Sandra Loosemore  <sandra@codesourcery.com>

        PR middle-end/23623
        PR middle-end/48784
        PR middle-end/56341
        PR middle-end/56997

        gcc/
        * expmed.c (strict_volatile_bitfield_p): New function.
        (store_bit_field_1): Don't special-case strict volatile
        bitfields here.
        (store_bit_field): Handle strict volatile bitfields here instead.
        (store_fixed_bit_field): Don't special-case strict volatile
        bitfields here.
        (extract_bit_field_1): Don't special-case strict volatile
        bitfields here.
        (extract_bit_field): Handle strict volatile bitfields here instead.
        (extract_fixed_bit_field): Don't special-case strict volatile
        bitfields here.  Simplify surrounding code to resemble that in
        store_fixed_bit_field.
        * doc/invoke.texi (Code Gen Options): Update
        -fstrict-volatile-bitfields description.

        gcc/testsuite/
        * gcc.dg/pr23623.c: New test.
        * gcc.dg/pr48784-1.c: New test.
        * gcc.dg/pr48784-2.c: New test.
        * gcc.dg/pr56341-1.c: New test.
        * gcc.dg/pr56341-2.c: New test.
        * gcc.dg/pr56997-1.c: New test.
        * gcc.dg/pr56997-2.c: New test.
        * gcc.dg/pr56997-3.c: New test.

From-SVN: r205896

10 years agore PR fortran/58916 ([F03] Allocation of scalar with array source not rejected)
Janus Weil [Wed, 11 Dec 2013 14:02:44 +0000 (15:02 +0100)]
re PR fortran/58916 ([F03] Allocation of scalar with array source not rejected)

2013-12-11  Janus Weil  <janus@gcc.gnu.org>

PR fortran/58916
* resolve.c (conformable_arrays): Treat scalar 'e2'.
(resolve_allocate_expr): Check rank also for unlimited-polymorphic
variables.

2013-12-11  Janus Weil  <janus@gcc.gnu.org>

PR fortran/58916
* gfortran.dg/allocate_with_source_4.f90: New.

From-SVN: r205894

10 years agoRegenerate gcc/configure and gcc/config.in
Christophe Lyon [Wed, 11 Dec 2013 13:13:43 +0000 (14:13 +0100)]
Regenerate gcc/configure and gcc/config.in

From-SVN: r205892

10 years agoconfigure.ac: Add check for aarch64 assembler -mabi support.
Kugan Vivekanandarajah [Wed, 11 Dec 2013 12:57:08 +0000 (12:57 +0000)]
configure.ac: Add check for aarch64 assembler -mabi support.

2013-12-11  Kugan Vivekanandarajah  <kuganv@linaro.org>

* configure.ac: Add check for aarch64 assembler -mabi support.
* configure: Regenerate.
* config.in: Regenerate.
* config/aarch64/aarch64-elf.h (ASM_MABI_SPEC): New define.
(ASM_SPEC): Update to substitute -mabi with ASM_MABI_SPEC.
* config/aarch64/aarch64.h (aarch64_override_options): Issue error
if assembler does not support -mabi and option ilp32 is selected.
* doc/install.texi: Added note that building gcc 4.9 and after
with pre 2.24 binutils will not support -mabi=ilp32.

From-SVN: r205891

10 years agoAdd a missing tree code to a switch.
Bernd Schmidt [Wed, 11 Dec 2013 12:40:08 +0000 (12:40 +0000)]
Add a missing tree code to a switch.

* c-common.c (c_fully_fold_internal): Handle ADDR_SPACE_CONVERT_EXPR.

From-SVN: r205890

10 years agoRemove an unused global tree, last used by objc some years ago.
Bernd Schmidt [Wed, 11 Dec 2013 12:40:00 +0000 (12:40 +0000)]
Remove an unused global tree, last used by objc some years ago.

        * c-common.h (enum c_tree_index): Remove CTI_INT_ARRAY_TYPE.
        (int_array_type_node): Remove.
        * c-common.c (c_common_nodes_and_builtins): Don't build it.

From-SVN: r205889

10 years agore PR middle-end/59399 (ICE in expand_expr_real_1 with -m64 -fsanitize=signed-integer...
Marek Polacek [Wed, 11 Dec 2013 12:25:05 +0000 (12:25 +0000)]
re PR middle-end/59399 (ICE in expand_expr_real_1 with -m64 -fsanitize=signed-integer-overflow)

PR sanitizer/59399
* expr.c (expand_expr_real_1): Remove assert dealing with
internal calls and turn that into a condition instead.

From-SVN: r205888

10 years agoarm.opt (mlra): Enable LRA by default.
Yvan Roux [Wed, 11 Dec 2013 12:04:09 +0000 (12:04 +0000)]
arm.opt (mlra): Enable LRA by default.

2013-12-11  Yvan Roux  <yvan.roux@linaro.org>

        * config/arm/arm.opt (mlra): Enable LRA by default.

From-SVN: r205887

10 years agore PR tree-optimization/59417 (ICE in determine_value_range, at tree-ssa-loop-niter...
Jakub Jelinek [Wed, 11 Dec 2013 09:19:41 +0000 (10:19 +0100)]
re PR tree-optimization/59417 (ICE in determine_value_range, at tree-ssa-loop-niter.c:176)

PR tree-optimization/59417
* tree-ssa-copy.c (fini_copy_prop): If copy_of[i].value is defined
in a different bb rhan var, only duplicate points-to info and
not alignment info and don't duplicate range info.
* tree-ssa-loop-niter.c (determine_value_range): Instead of
assertion failure handle inconsistencies in range info by only
using var's range info and not PHI result range infos.

* gcc.c-torture/compile/pr59417.c: New test.

From-SVN: r205884

10 years agore PR tree-optimization/59386 (ICE on valid code at -O2 and -O3 on x86_64-linux-gnu...
Jakub Jelinek [Wed, 11 Dec 2013 09:18:33 +0000 (10:18 +0100)]
re PR tree-optimization/59386 (ICE on valid code at -O2 and -O3 on x86_64-linux-gnu in 64-bit mode)

PR tree-optimization/59386
* tree-inline.c (remap_gimple_stmt): If not id->do_not_unshare,
unshare_expr (id->retval) before passing it to gimple_build_assign.

* gcc.c-torture/compile/pr59386.c: New test.

From-SVN: r205883

10 years agorevert: re PR tree-optimization/41488 (IVOpts cannot coalesce multiple induction...
Bin Cheng [Wed, 11 Dec 2013 00:58:35 +0000 (00:58 +0000)]
revert: re PR tree-optimization/41488 (IVOpts cannot coalesce multiple induction variables)

Reverted:
2013-12-10  Bin Cheng  <bin.cheng@arm.com>
PR tree-optimization/41488
* tree-ssa-loop-ivopts.c (add_old_iv_candidates): Don't add cand
for PEELED_CHREC kind IV.
* tree-scalar-evolution.c: Include necessary header files.
(peeled_chrec_map, simplify_peeled_chrec): New.
(analyze_evolution_in_loop): New static variable.
Call simplify_peeled_chrec.
(scev_initialize): Initialize peeled_chrec_map.
(scev_reset, scev_finalize): Reset and release peeled_chrec_map.

Reverted:
2013-12-10  Bin Cheng  <bin.cheng@arm.com>
PR tree-optimization/41488
* gcc.dg/tree-ssa/scev-7.c: New test.
* gcc.dg/pr41488.c: New test.

From-SVN: r205880

10 years agoDaily bump.
GCC Administrator [Wed, 11 Dec 2013 00:16:56 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r205879

10 years agoProperly handle alternative 13 in *movsf_internal
H.J. Lu [Tue, 10 Dec 2013 23:21:06 +0000 (23:21 +0000)]
Properly handle alternative 13 in *movsf_internal

PR target/59458
* config/i386/i386.md (*movsf_internal): Set mode to SI for
alternative 13.

From-SVN: r205876

10 years agore PR rtl-optimization/58295 (Missed zero-extension elimination in the combiner)
Eric Botcazou [Tue, 10 Dec 2013 22:58:37 +0000 (22:58 +0000)]
re PR rtl-optimization/58295 (Missed zero-extension elimination in the combiner)

PR rtl-optimization/58295
* simplify-rtx.c (simplify_truncation): Restrict the distribution for
WORD_REGISTER_OPERATIONS targets.

From-SVN: r205874

10 years agore PR fortran/35831 ([F95] Shape mismatch check missing for dummy procedure argument)
Janus Weil [Tue, 10 Dec 2013 21:41:43 +0000 (22:41 +0100)]
re PR fortran/35831 ([F95] Shape mismatch check missing for dummy procedure argument)

2013-12-10  Janus Weil  <janus@gcc.gnu.org>

PR fortran/35831
* interface.c (check_dummy_characteristics): Add checks for several
attributes.

2013-12-10  Janus Weil  <janus@gcc.gnu.org>

PR fortran/35831
* gfortran.dg/c_by_val_5.f90: Modified.
* gfortran.dg/dummy_procedure_10.f90: New.

From-SVN: r205873

10 years agoMake-lang.in (check_go_parallelize): Test go-test.exp r* tests separately.
Ian Lance Taylor [Tue, 10 Dec 2013 20:55:41 +0000 (20:55 +0000)]
Make-lang.in (check_go_parallelize): Test go-test.exp r* tests separately.

* Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
separately.

From-SVN: r205872

10 years agogfortran.texi: Add possible kind values (and default) for DOUBLE PRECISION.
Janus Weil [Tue, 10 Dec 2013 20:33:12 +0000 (21:33 +0100)]
gfortran.texi: Add possible kind values (and default) for DOUBLE PRECISION.

2013-12-10  Janus Weil  <janus@gcc.gnu.org>

* gfortran.texi: Add possible kind values (and default) for
DOUBLE PRECISION.
* invoke.texi: Correct documentation of -fdefault-integer-8,
-fdefault-real-8 and -fdefault-double-8.

From-SVN: r205871

10 years agogenrecog.c (validate_pattern): Treat all messages except missing modes as errors.
Richard Sandiford [Tue, 10 Dec 2013 18:28:51 +0000 (18:28 +0000)]
genrecog.c (validate_pattern): Treat all messages except missing modes as errors.

gcc/
* genrecog.c (validate_pattern): Treat all messages except missing
modes as errors.
* config/epiphany/epiphany.md: Remove constraints from
define_peephole2s.
* config/h8300/h8300.md: Remove constraints from define_splits.
* config/msp430/msp430.md: Likewise.
* config/mcore/mcore.md (movdi_i, movsf_i, movdf_k): Use
nonimmediate_operand rather than general_operand for operand 0.
* config/moxie/moxie.md (*movsi, *movqi, *movhi): Likewise.
* config/pdp11/predicates.md (float_operand, float_nonimm_operand):
Use match_operator rather than match_test to invoke general_operand.
* config/v850/v850.md (*movqi_internal, *movhi_internal)
(*movsi_internal_v850e, *movsi_internal, *movsf_internal): Likewise.

From-SVN: r205870

10 years agotilegx.md (insn_ld_add<bitsuffix>): Use register_operand rather than pointer_operand.
Richard Sandiford [Tue, 10 Dec 2013 18:17:30 +0000 (18:17 +0000)]
tilegx.md (insn_ld_add<bitsuffix>): Use register_operand rather than pointer_operand.

gcc/
* config/tilegx/tilegx.md (insn_ld_add<bitsuffix>): Use
register_operand rather than pointer_operand.  Add modes to the
operands.
(insn_ldna_add<bitsuffix>): Likewise.
(insn_ld<I124MODE:n><s>_add<I48MODE:bitsuffix>): Likewise.
(insn_ldnt_add<bitsuffix>): Likewise.
(insn_ldnt<I124MODE:n><s>_add<I48MODE:bitsuffix>): Likewise.
(insn_ld_add_L2<bitsuffix>): Likewise.
(insn_ldna_add_L2<bitsuffix>): Likewise.
(insn_ld<I124MODE:n><s>_add_L2<I48MODE:bitsuffix>): Likewise.
(insn_ldnt_add_L2<bitsuffix>): Likewise.
(insn_ldnt<I124MODE:n><s>_add_L2<I48MODE:bitsuffix>): Likewise.
(insn_ld_add_miss<bitsuffix>): Likewise.
(insn_ldna_add_miss<bitsuffix>): Likewise.
(insn_ld<I124MODE:n><s>_add_miss<I48MODE:bitsuffix>): Likewise.
(insn_ldnt_add_miss<bitsuffix>): Likewise.
(insn_ldnt<I124MODE:n><s>_add_miss<I48MODE:bitsuffix>): Likewise.
(insn_st_add<bitsuffix>): Likewise.
(insn_st<I124MODE:n>_add<I48MODE:bitsuffix>): Likewise.
(*insn_st<I124MODE:n>_add<I48MODE:bitsuffix>): Likewise.
(insn_stnt_add<bitsuffix>): Likewise.
(insn_stnt<I124MODE:n>_add<I48MODE:bitsuffix>): Likewise.
(*insn_stnt<I124MODE:n>_add<I48MODE:bitsuffix>): Likewise.
(vec_pack_<pack_optab>_v4hi): Use register_operand rather than
reg_or_0_operand for operand 0.
(insn_v2<pack_insn>): Likewise.
(vec_pack_hipart_v4hi): Likewise.
(insn_v2packh): Likewise.
(vec_pack_ssat_v2si): Likewise.
(insn_v4packsc): Likewise.

From-SVN: r205868

10 years agoPut back typedef for gcov_working_set_t/gcov_bucket_type
H.J. Lu [Tue, 10 Dec 2013 17:48:42 +0000 (17:48 +0000)]
Put back typedef for gcov_working_set_t/gcov_bucket_type

* basic-block.h (gcov_working_set_t): Put back typedef.
* gcov-io.h (gcov_bucket_type): Likewise.
(gcov_working_set_info, gcov_working_set_t): Likewise.

From-SVN: r205866

10 years agoRemove gcc/ from filenames
H.J. Lu [Tue, 10 Dec 2013 17:47:12 +0000 (09:47 -0800)]
Remove gcc/ from filenames

From-SVN: r205865

10 years agocgraph.h (cgraph_node_set_iterator, [...]): Remove typedef.
Oleg Endo [Tue, 10 Dec 2013 16:48:44 +0000 (16:48 +0000)]
cgraph.h (cgraph_node_set_iterator, [...]): Remove typedef.

* gcc/cgraph.h (cgraph_node_set_iterator, varpool_node_set_iterator):
Remove typedef.
(cgraph_inline_failed_enum, cgraph_inline_failed_t): Remove typedef and
rename to cgraph_inline_failed_t.
* gcc/tree-ssa-alias.h (ao_ref_s, ao_ref): Remove typedef and rename
to ao_ref.
* gcc/reload.h (reg_equivs_s, reg_equivs_t): Remove typedef and rename
to reg_equivs_t.
* gcc/conditions.h (CC_STATUS): Remove typedef.
* gcc/bitmap.h (bitmap_obstack): Remove typedef.
(bitmap_element_def, bitmap_element): Remove typedef and rename to
bitmap_element.
(bitmap_head_def, bitmap_head): Remove typedef and rename to
bitmap_head.
(bitmap_iterator): Remove typedef.
* gcc/target.h (cumulative_args_t, print_switch_type,
secondary_reload_info): Remove typedef.
* gcc/dwarf2out.h (dw_cfi_oprnd_struct, dw_cfi_oprnd): Remove
dw_cfi_oprnd_struct alias.
(dw_cfi_struct, dw_cfi_node): Remove typedef and rename to dw_cfi_node.
(dw_fde_struct, dw_fde_node): Remove typedef and rename to dw_fde_node.
(cfa_loc, dw_cfa_location): Remove typedef and rename to
dw_cfa_location.
(dw_vec_struct, dw_vec_const): Remove typedef and rename to
dw_vec_const.
(dw_val_struct, dw_val_node): Remove typedef and rename to dw_val_node.
(dw_loc_descr_struct, dw_loc_descr_node): Remove typedef and rename to
dw_loc_descr_node.
* gcc/params.h (param_info, compiler_param): Remove typedef.
* gcc/opts.h (cl_deferred_param): Remove typedef.
* gcc/sreal.h (sreal): Remove typedef.
* gcc/ddg.h (dep_type, dep_data_type): Remove typedef.
* gcc/graphite-clast-to-gimple.h (cloog_prog_clast, bb_pbb_def): Remove
typedef.
* gcc/lto-streamer.h (lto_decl_stream_e_t, lto_encoder_entry,
lto_symtab_encoder_iterator, res_pair): Remove typedef.
* gcc/tree-affine.h (affine_tree_combination, aff_tree): Remove typedef
and rename to aff_tree.
* gcc/sched-int.h (region): Remove typedef.
* gcc/diagnostic.h (diagnostic_info,
diagnostic_classification_change_t): Remove typedef.
* gcc/tree-ssa-loop.h (affine_iv_d): Remove typedef and rename to
affine_iv.
* gcc/sbitmap.h (sbitmap_iterator): Remove typedef.
* gcc/ssa-iterators.h (immediate_use_iterator_d, imm_use_iterator):
Remove typedef and rename to imm_use_iterator.
(ssa_operand_iterator_d, ssa_op_iter): Remove typedef and rename to
ssa_op_iter.
* gcc/ggc-internal.h (ggc_statistics): Remove typedef.
* gcc/cselib.h (cselib_val_struct, cselib_val): Remove typedef and
rename to cselib_val.
* gcc/tree-core.h (alias_pair): Remove typedef.
(constructor_elt_d, constructor_elt): Remove typedef and rename to
constructor_elt.
(ssa_use_operand_d, ssa_use_operand_t): Remove typedef and rename to
ssa_use_operand_t.
* gcc/graphite-sese-to-poly.h (base_alias_pair): Remove typedef.
* gcc/tree-data-ref.h (conflict_function): Remove typedef.
* gcc/tree-inline.h (copy_body_data): Remove typedef.
* gcc/ipa-inline.h (condition, size_time_entry, inline_param_summary_t,
edge_growth_cache_entry): Remove typedef.
* gcc/regrename.h (operand_rr_info, insn_rr_info): Remove typedef.
* gcc/gimple-iterator.h (gimple_stmt_iterator_d, gimple_stmt_iterator):
Remove typedef and rename to gimple_stmt_iterator.
* gcc/basic-block.h (ce_if_block, ce_if_block_t): Remove typedef and
rename to ce_if_block.
(edge_iterator): Remove typedef.
* gcc/ipa-prop.h (ipa_agg_jf_item, ipa_agg_jf_item_t): Remove typedef
and rename to ipa_agg_jf_item.
(ipa_agg_jump_function_t, ipa_param_descriptor_t, ipa_node_params_t,
ipa_parm_adjustment_t): Remove typedef.
(ipa_jump_func, ipa_jump_func_t): Remove typedef and rename to
ipa_jump_func.
(ipa_edge_args, ipa_edge_args_t): Remove typedef and rename to
ipa_edge_args.
* gcc/gcov-io.h (gcov_bucket_type): Remove typedef.
(gcov_working_set_info, gcov_working_set_t): Remove typedef and rename
to gcov_working_set_t.
* gcc/ira-int.h (minmax_set_iterator, ira_allocno_iterator,
ira_object_iterator, ira_allocno_object_iterator, ira_pref_iterator,
ira_copy_iterator, ira_object_conflict_iterator): Remove typedef.
* gcc/tree-iterator.h (tree_stmt_iterator): Remove typedef.
* gcc/rtl.h (addr_diff_vec_flags, mem_attrs, reg_attrs,
replace_label_data): Remove typedef.
(rtunion_def, rtunion): Remove typedef and rename to rtunion.
* gcc/hard-reg-set.h (hard_reg_set_iterator): Remove typedef.
* gcc/sel-sched-ir.h (_list_iterator, sel_global_bb_info_def,
sel_region_bb_info_def, succ_iterator): Remove typedef.
(deps_where_def, deps_where_t): Remove typedef and rename to
deps_where_t.
* gcc/coretypes.h: Adapt forward declarations.
* gcc/tree-scalar-evolution.h: Likewise.
* gcc/tree-ssa-address.h: Likewise.
* gcc/tree-ssa-operands.h: Likewise.
* gcc/function.h: Likewise.
* gcc/config/frv/frv-protos.h: Likewise.
* gcc/targhooks.h: Likewise.
* gcc/basic_block.h: Likewise.
* gcc/rtl.def: Adapt documentation.
* gcc/doc/tm.texi: Likewise.
* gcc/ipa-cp.c: Adapt uses.
* gcc/bitmap.c: Likewise.
* gcc/dwarf2out.c: Likewise.
* gcc/target.def: Likewise.
* gcc/ipa-inline-analysis.c: Likewise.
* gcc/dwarf2cfi.c: Likewise.
* gcc/tree-ssa-loop-ivopts.c: Likewise.
* gcc/lto-cgraph.c: Likewise.
* gcc/config/frv/frv.c: Likewise.
* gcc/ifcvt.c: Likewise.
* gcc/ipa-prop.c: Likewise.

From-SVN: r205863

10 years agogfortran.texi: Modify documentation of kind type parameters.
Janus Weil [Tue, 10 Dec 2013 16:44:04 +0000 (17:44 +0100)]
gfortran.texi: Modify documentation of kind type parameters.

2013-12-10  Janus Weil  <janus@gcc.gnu.org>

* gfortran.texi: Modify documentation of kind type parameters.
* invoke.texi: Extend documentation of -fdefault-integer-8 and
-fdefault-real-8.

From-SVN: r205862

10 years agore PR target/56807 (mingw32: Conflict between stack realignment and stack probe destr...
Kai Tietz [Tue, 10 Dec 2013 16:36:53 +0000 (17:36 +0100)]
re PR target/56807 (mingw32: Conflict between stack realignment and stack probe destroys function argument in EAX)

    PR target/56807
    * config/i386/i386.c (ix86_expand_prologue): Address saved
    registers stack-relative, not via frame-pointer.

From-SVN: r205860

10 years agotsan.exp: Added missing call to torture-finish.
Yury Gribov [Tue, 10 Dec 2013 15:51:55 +0000 (15:51 +0000)]
tsan.exp: Added missing call to torture-finish.

2013-12-10  Yury Gribov  <y.gribov@samsung.com>

* gcc-dg/tsan/tsan.exp: Added missing call to torture-finish.
* g++-dg/tsan/tsan.exp: Likewise.

From-SVN: r205858

10 years agore PR middle-end/38474 (compile time explosion in dataflow_set_preserve_mem_locs...
Richard Biener [Tue, 10 Dec 2013 12:31:39 +0000 (12:31 +0000)]
re PR middle-end/38474 (compile time explosion in dataflow_set_preserve_mem_locs at -O3)

2013-12-10  Richard Biener  <rguenther@suse.de>

PR middle-end/38474
* tree-ssa-structalias.c (solution_set_expand): Expand into
a different possibly cached bitmap and return the result.
(set_union_with_increment): Pass in a shared expanded bitmap
and adjust.
(do_sd_constraint): Likewise.
(do_ds_constraint): Likewise.
(do_complex_constraint): Likewise.
(solve_graph): Manage the shared expanded bitmap.

* gcc.dg/ipa/ipa-pta-14.c: Un-XFAIL.

From-SVN: r205857

10 years agotree-vectorizer.h (struct _loop_vec_info): Add scalar_loop field.
Jakub Jelinek [Tue, 10 Dec 2013 11:46:01 +0000 (12:46 +0100)]
tree-vectorizer.h (struct _loop_vec_info): Add scalar_loop field.

* tree-vectorizer.h (struct _loop_vec_info): Add scalar_loop field.
(LOOP_VINFO_SCALAR_LOOP): Define.
(slpeel_tree_duplicate_loop_to_edge_cfg): Add scalar_loop argument.
* config/i386/sse.md (maskload<mode>, maskstore<mode>): New expanders.
* tree-data-ref.c (get_references_in_stmt): Handle MASK_LOAD and
MASK_STORE.
* internal-fn.def (LOOP_VECTORIZED, MASK_LOAD, MASK_STORE): New
internal fns.
* tree-if-conv.c: Include expr.h, optabs.h, tree-ssa-loop-ivopts.h and
tree-ssa-address.h.
(release_bb_predicate): New function.
(free_bb_predicate): Use it.
(reset_bb_predicate): Likewise.  Don't unallocate bb->aux
just to immediately allocate it again.
(add_to_predicate_list): Add loop argument.  If basic blocks that
dominate loop->latch don't insert any predicate.
(add_to_dst_predicate_list): Adjust caller.
(if_convertible_phi_p): Add any_mask_load_store argument, if true,
handle it like flag_tree_loop_if_convert_stores.
(insert_gimplified_predicates): Likewise.
(ifcvt_can_use_mask_load_store): New function.
(if_convertible_gimple_assign_stmt_p): Add any_mask_load_store
argument, check if some conditional loads or stores can't be
converted into MASK_LOAD or MASK_STORE.
(if_convertible_stmt_p): Add any_mask_load_store argument,
pass it down to if_convertible_gimple_assign_stmt_p.
(predicate_bbs): Don't return bool, only check if the last stmt
of a basic block is GIMPLE_COND and handle that.  Adjust
add_to_predicate_list caller.
(if_convertible_loop_p_1): Only call predicate_bbs if
flag_tree_loop_if_convert_stores and free_bb_predicate in that case
afterwards, check gimple_code of stmts here.  Replace is_predicated
check with dominance check.  Add any_mask_load_store argument,
pass it down to if_convertible_stmt_p and if_convertible_phi_p,
call if_convertible_phi_p only after all if_convertible_stmt_p
calls.
(if_convertible_loop_p): Add any_mask_load_store argument,
pass it down to if_convertible_loop_p_1.
(predicate_mem_writes): Emit MASK_LOAD and/or MASK_STORE calls.
(combine_blocks): Add any_mask_load_store argument, pass
it down to insert_gimplified_predicates and call predicate_mem_writes
if it is set.  Call predicate_bbs.
(version_loop_for_if_conversion): New function.
(tree_if_conversion): Adjust if_convertible_loop_p and combine_blocks
calls.  Return todo flags instead of bool, call
version_loop_for_if_conversion if if-conversion should be just
for the vectorized loops and nothing else.
(main_tree_if_conversion): Adjust caller.  Don't call
tree_if_conversion for dont_vectorize loops if if-conversion
isn't explicitly enabled.
* tree-vect-data-refs.c (vect_check_gather): Handle
MASK_LOAD/MASK_STORE.
(vect_analyze_data_refs, vect_supportable_dr_alignment): Likewise.
* gimple.h (gimple_expr_type): Handle MASK_STORE.
* internal-fn.c (expand_LOOP_VECTORIZED, expand_MASK_LOAD,
expand_MASK_STORE): New functions.
* tree-vectorizer.c: Include tree-cfg.h and gimple-fold.h.
(vect_loop_vectorized_call, fold_loop_vectorized_call): New functions.
(vectorize_loops): Don't try to vectorize loops with
loop->dont_vectorize set.  Set LOOP_VINFO_SCALAR_LOOP for if-converted
loops, fold LOOP_VECTORIZED internal call depending on if loop
has been vectorized or not.
* tree-vect-loop-manip.c (slpeel_duplicate_current_defs_from_edges):
New function.
(slpeel_tree_duplicate_loop_to_edge_cfg): Add scalar_loop argument.
If non-NULL, copy basic blocks from scalar_loop instead of loop, but
still to loop's entry or exit edge.
(slpeel_tree_peel_loop_to_edge): Add scalar_loop argument, pass it
down to slpeel_tree_duplicate_loop_to_edge_cfg.
(vect_do_peeling_for_loop_bound, vect_do_peeling_for_loop_alignment):
Adjust callers.
(vect_loop_versioning): If LOOP_VINFO_SCALAR_LOOP, perform loop
versioning from that loop instead of LOOP_VINFO_LOOP, move it to the
right place in the CFG afterwards.
* tree-vect-loop.c (vect_determine_vectorization_factor): Handle
MASK_STORE.
* cfgloop.h (struct loop): Add dont_vectorize field.
* tree-loop-distribution.c (copy_loop_before): Adjust
slpeel_tree_duplicate_loop_to_edge_cfg caller.
* optabs.def (maskload_optab, maskstore_optab): New optabs.
* passes.def: Add a note that pass_vectorize must immediately follow
pass_if_conversion.
* tree-predcom.c (split_data_refs_to_components): Give up if
DR_STMT is a call.
* tree-vect-stmts.c (vect_mark_relevant): Don't crash if lhs
is NULL.
(exist_non_indexing_operands_for_use_p): Handle MASK_LOAD
and MASK_STORE.
(vectorizable_mask_load_store): New function.
(vectorizable_call): Call it for MASK_LOAD or MASK_STORE.
(vect_transform_stmt): Handle MASK_STORE.
* tree-ssa-phiopt.c (cond_if_else_store_replacement): Ignore
DR_STMT where lhs is NULL.
* optabs.h (can_vec_perm_p): Fix up comment typo.
(can_vec_mask_load_store_p): New prototype.
* optabs.c (can_vec_mask_load_store_p): New function.

* gcc.dg/vect/vect-cond-11.c: New test.
* gcc.target/i386/vect-cond-1.c: New test.
* gcc.target/i386/avx2-gather-5.c: New test.
* gcc.target/i386/avx2-gather-6.c: New test.
* gcc.dg/vect/vect-mask-loadstore-1.c: New test.
* gcc.dg/vect/vect-mask-load-1.c: New test.

From-SVN: r205856

10 years agoexpr.c (expand_expr_real_1): Always return 0 for the extraction of a bit-field of...
Eric Botcazou [Tue, 10 Dec 2013 11:07:28 +0000 (11:07 +0000)]
expr.c (expand_expr_real_1): Always return 0 for the extraction of a bit-field of null size.

* expr.c (expand_expr_real_1) <normal_inner_ref>: Always return 0 for
the extraction of a bit-field of null size.

From-SVN: r205855

10 years agore PR sanitizer/59437 (ICE in for g++ -S -fvtable-verify=std -fsanitize=null)
Marek Polacek [Tue, 10 Dec 2013 10:49:39 +0000 (10:49 +0000)]
re PR sanitizer/59437 (ICE in for g++ -S -fvtable-verify=std -fsanitize=null)

PR sanitizer/59437
* vtable-verify.c (var_is_used_for_virtual_call_p): Check the
return value of gimple_call_fn.  Use is_gimple_call/is_gimple_assign
instead of gimple_code.
testsuite/
* g++.dg/ubsan/pr59437.C: New test.

From-SVN: r205854

10 years agothread_leak2.c: `dg-skip-if' removed.
Max Ostapenko [Tue, 10 Dec 2013 10:36:40 +0000 (12:36 +0200)]
thread_leak2.c: `dg-skip-if' removed.

2013-12-10  Max Ostapenko  <m.ostapenko@partner.samsung.com>

* c-c++-common/tsan/thread_leak2.c: `dg-skip-if' removed.
* gcc-dg/tsan/tsan.exp: Run only with '-O0' and '-O2' options.
* g++-dg/tsan/tsan.exp: Likewise.

From-SVN: r205853

10 years agopr58508.c: XFAIL for vect_no_align.
Eric Botcazou [Tue, 10 Dec 2013 10:11:50 +0000 (10:11 +0000)]
pr58508.c: XFAIL for vect_no_align.

* gcc.dg/vect/pr58508.c: XFAIL for vect_no_align.
* gcc.dg/vect/vect-reduc-pattern-3.c: Require vect_int_mult.

From-SVN: r205852

10 years agovalue.cc: Add test.
Paolo Carlini [Tue, 10 Dec 2013 09:48:50 +0000 (09:48 +0000)]
value.cc: Add test.

2013-12-10  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/20_util/is_base_of/value.cc: Add test.

* include/std/fstream: Tiny formatting tweak.

From-SVN: r205851

10 years agoFix mips64-linux and s390x-linux builds.
Maxim Kuvyrkov [Tue, 10 Dec 2013 08:24:10 +0000 (08:24 +0000)]
Fix mips64-linux and s390x-linux builds.

* config.gcc (mips*-mti-linux*, mips64*-*-linux*):
Add android definitions.
(s390x-*-linux*): Use linux-protos.h.

From-SVN: r205849

10 years agore PR tree-optimization/41488 (IVOpts cannot coalesce multiple induction variables)
Bin Cheng [Tue, 10 Dec 2013 06:31:41 +0000 (06:31 +0000)]
re PR tree-optimization/41488 (IVOpts cannot coalesce multiple induction variables)

PR tree-optimization/41488
* tree-ssa-loop-ivopts.c (add_old_iv_candidates): Don't add cand
for PEELED_CHREC kind IV.
* tree-scalar-evolution.c: Include necessary header files.
(peeled_chrec_map, simplify_peeled_chrec): New.
(analyze_evolution_in_loop): New static variable.
Call simplify_peeled_chrec.
(scev_initialize): Initialize peeled_chrec_map.
(scev_reset, scev_finalize): Reset and release peeled_chrec_map.

PR tree-optimization/41488
* gcc.dg/tree-ssa/scev-7.c: New test.
* gcc.dg/pr41488.c: New test.

From-SVN: r205848

10 years agore PR preprocessor/55715 (bogus overflow warning for #if A-B when A<0 & B==minimum...
Joseph Myers [Tue, 10 Dec 2013 01:23:37 +0000 (01:23 +0000)]
re PR preprocessor/55715 (bogus overflow warning for #if A-B when A<0 & B==minimum integer)

PR preprocessor/55715
libcpp:
* expr.c (num_binary_op): Implement subtraction directly rather
than with negation and falling through into addition case.

gcc/testsuite:
* gcc.dg/cpp/expr-overflow-1.c: New test.

From-SVN: r205846

10 years agoffitarget.h: Import from upstream.
Alan Modra [Tue, 10 Dec 2013 00:42:14 +0000 (11:12 +1030)]
ffitarget.h: Import from upstream.

* src/powerpc/ffitarget.h: Import from upstream.
* src/powerpc/ffi_powerpc.h: Likewise.
* src/powerpc/ffi.c: Likewise.
* src/powerpc/ffi_sysv.c: Likewise.
* src/powerpc/ffi_linux64.c: Likewise.
* src/powerpc/sysv.S: Likewise.
* src/powerpc/ppc_closure.S: Likewise.
* src/powerpc/linux64.S: Likewise.
* src/powerpc/linux64_closure.S: Likewise.
* src/types.c: Likewise.
* Makefile.am (EXTRA_DIST): Add new src/powerpc files.
(nodist_libffi_la_SOURCES <POWERPC, POWERPC_FREEBSD>): Likewise.
* configure.ac (HAVE_LONG_DOUBLE_VARIANT): Define for powerpc.
* include/ffi.h.in (ffi_prep_types): Declare.
* src/prep_cif.c (ffi_prep_cif_core): Call ffi_prep_types.
* configure: Regenerate.
* fficonfig.h.in: Regenerate.
* Makefile.in: Regenerate.
* man/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.

From-SVN: r205844

10 years agot-aarch64 (MULTILIB_OPTIONS): Fix definition so that options are conflicting ones.
Andrew Pinski [Tue, 10 Dec 2013 00:19:03 +0000 (00:19 +0000)]
t-aarch64 (MULTILIB_OPTIONS): Fix definition so that options are conflicting ones.

2013-12-09  Andrew Pinski  <apinski@cavium.com>

* config/aarch64/t-aarch64 (MULTILIB_OPTIONS): Fix definition so
that options are conflicting ones.

From-SVN: r205843

10 years agoDaily bump.
GCC Administrator [Tue, 10 Dec 2013 00:16:46 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r205842

10 years agoinvoke.texi: Add -freal-4-real-16.
Janus Weil [Mon, 9 Dec 2013 23:41:23 +0000 (00:41 +0100)]
invoke.texi: Add -freal-4-real-16.

2013-12-10  Janus Weil  <janus@gcc.gnu.org>

* invoke.texi: Add -freal-4-real-16. Rearrange kind promotion options.

From-SVN: r205839