Commit Graph

137546 Commits

Author SHA1 Message Date
Kyrylo Tkachov cbea306a5e Revert:
2015-04-22  Gregor Richards  <gregor.richards@uwaterloo.ca>

	* config.gcc (LIBC_MUSL): New tm_defines macro.
	* config/linux.h (OPTION_MUSL): Define.
	(INCLUDE_DEFAULTS_MUSL_GPP, INCLUDE_DEFAULTS_MUSL_LOCAL,)
	(INCLUDE_DEFAULTS_MUSL_PREFIX, INCLUDE_DEFAULTS_MUSL_CROSS,)
	(INCLUDE_DEFAULTS_MUSL_TOOL, INCLUDE_DEFAULTS_MUSL_NATIVE): Define.

	* config/linux.opt (mmusl): New option.
	* configure.ac (gcc_cv_libc_provides_ssp): Add *-*-musl*.
	(gcc_cv_target_dl_iterate_phdr): Add *-linux-musl*.

	* configure: Regenerate.

From-SVN: r222330
2015-04-22 15:34:46 +00:00
Szabolcs Nagy 85da5c3024 libstdc++, libgfortran gthr workaround for musl
On behalf of szabolcs.nagy@arm.com

[libstdc++-v3/]
2015-04-22  Szabolcs Nagy  <szabolcs.nagy@arm.com>

	* config/os/generic/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK): Define.
	* configure.host (os_include_dir): Set to "os/generic" for linux-musl*.

[libgfortran/]
2015-04-22  Szabolcs Nagy  <szabolcs.nagy@arm.com>

	* acinclude.m4 (GTHREAD_USE_WEAK): Define as 0 for *-*-musl*.
	* configure: Regenerate.

From-SVN: r222329
2015-04-22 14:24:11 +00:00
Gregor Richards 15aa7b4472 unwind fix for musl
On behalf of szabolcs.nagy@arm.com

2015-04-22  Gregor Richards  <gregor.richards@uwaterloo.ca>
	    Szabolcs Nagy  <szabolcs.nagy@arm.com>

	* unwind-dw2-fde-dip.c (USE_PT_GNU_EH_FRAME): Define it on
	Linux if target provides dl_iterate_phdr.

Co-Authored-By: Szabolcs Nagy <szabolcs.nagy@arm.com>

From-SVN: r222328
2015-04-22 14:20:01 +00:00
Gregor Richards 218213dfd0 fixincludes update for musl support
On behalf of Szabolcs.Nagy@arm.com

2015-04-22  Gregor Richards  <gregor.richards@uwaterloo.ca>

	* mkfixinc.sh: Add *-musl* with no fixes.

From-SVN: r222327
2015-04-22 14:18:16 +00:00
Gregor Richards 513686a6a7 config changes for musl libc support
On behalf of Szabolcs.Nagy@arm.com

2015-04-22  Gregor Richards  <gregor.richards@uwaterloo.ca>

	* config.gcc (LIBC_MUSL): New tm_defines macro.
	* config/linux.h (OPTION_MUSL): Define.
	(INCLUDE_DEFAULTS_MUSL_GPP, INCLUDE_DEFAULTS_MUSL_LOCAL,)
	(INCLUDE_DEFAULTS_MUSL_PREFIX, INCLUDE_DEFAULTS_MUSL_CROSS,)
	(INCLUDE_DEFAULTS_MUSL_TOOL, INCLUDE_DEFAULTS_MUSL_NATIVE): Define.

	* config/linux.opt (mmusl): New option.
	* configure.ac (gcc_cv_libc_provides_ssp): Add *-*-musl*.
	(gcc_cv_target_dl_iterate_phdr): Add *-linux-musl*.

	* configure: Regenerate.

From-SVN: r222326
2015-04-22 14:16:41 +00:00
Gregor Richards 96ce40cbce libitm fixes for musl support
On behalf of Szabolcs.Nagy@arm.com

2015-04-22  Gregor Richards  <gregor.richards@uwaterloo.ca>

       * config/arm/hwcap.cc: Use fcntl.h instead of sys/fcntl.h.
       * config/linux/x86/tls.h: Only use __GLIBC_PREREQ if defined.

From-SVN: r222325
2015-04-22 14:11:25 +00:00
Renlin Li 04934297b8 [PATCH][libstc++v3]Add new dg-require-thread-fence directive.
libstdc++-v3/

2015-04-22  Renlin Li  <renlin.li@arm.com>

	* testsuite/lib/dg-options.exp (dg-require-thread-fence): New.
	* testsuite/lib/libstdc++.exp (check_v3_target_thread_fence): New.
	* testsuite/29_atomics/atomic_flag/clear/1.cc: Use it.
	* testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Likewise.
	* testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Likewise.

From-SVN: r222324
2015-04-22 14:01:02 +00:00
Yury Gribov 860503d8cc Allow wildcards in -fsanitize-sections.
2015-04-22  Yury Gribov  <y.gribov@samsung.com>

	Allow wildcards in -fsanitize-sections.

	gcc/
	* asan.c (set_sanitized_sections): Parse incoming arg.
	(section_sanitized_p): Support wildcards.
	* doc/invoke.texi (-fsanitize-sections): Update description.

	gcc/testsuite/
	* c-c++-common/asan/user-section-1.c: New test.
	* c-c++-common/asan/user-section-2.c: New test.
	* c-c++-common/asan/user-section-3.c: New test.

From-SVN: r222322
2015-04-22 11:44:26 +00:00
Tom de Vries 5cf3629251 Fix va_arg ap_copy nop detection
2015-04-22  Tom de Vries  <tom@codesourcery.com>

	PR tree-optimization/65823
	* gimplify.c (gimplify_modify_expr): Use operand_equal_p to test for
	equality between ap_copy and ap.

From-SVN: r222318
2015-04-22 09:03:01 +00:00
Bernhard Reutner-Fischer 2aa84d43ba PR target/47098 OBSD_LIB_SPEC on i686-openbsd3 missing
config-list.mk for i686-*-openbsd3.0 failed with:

gcc/config/openbsd.h:143:18: error: ‘OBSD_LIB_SPEC’ was not declared in this scope
 #define LIB_SPEC OBSD_LIB_SPEC
                  ^
gcc/gcc.c:879:31: note:
in expansion of macro ‘LIB_SPEC’
 static const char *lib_spec = LIB_SPEC;
                               ^
make[2]: *** [gcc.o] Error 1

i.e. openbsd-oldgas.h is only used on
i?86-*-openbsd2.*|i?86-*openbsd3.[0123] so add the OBSD_LIB_SPEC there

From-SVN: r222315
2015-04-22 10:41:13 +02:00
Bernhard Reutner-Fischer a42014a3f9 PR target/47122: vax-*-openbsd* config.gcc typo
Gerald / jsg typoed this in the initial r152218 a.k.a
8e6600a15374f9446d5026e8ef6b68e0d753fb6c

From-SVN: r222314
2015-04-22 10:30:15 +02:00
Bernhard Reutner-Fischer e08cf3453d re PR target/55144 (opening glibc-c.o: No such file or directory)
PR target/55144

building all-gcc for bfin-linux-uclibc resulted in

build/genchecksum cp/cp-lang.o c-family/stub-objc.o ... glibc-c.o \
libbackend.a .. > cc1plus-checksum.c.tmp
opening glibc-c.o: No such file or directory
make[2]: *** [cc1-checksum.c] Error 1

From-SVN: r222313
2015-04-22 10:25:40 +02:00
Bernhard Reutner-Fischer 07cb4ee604 tree-tailcall.c (suitable_for_tail_opt_p, [...]): Remove unneeded forward declarations.
2015-04-22  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>

	* tree-tailcall.c (suitable_for_tail_opt_p, find_tail_calls):
	Remove unneeded forward declarations.
	(suitable_for_tail_call_opt_p): Commentary typo fix.

From-SVN: r222312
2015-04-22 10:20:32 +02:00
Bernhard Reutner-Fischer 38b7a8dfc9 varasm.c (emit_bss): Remove redundant guard.
The whole emit_bss is wrapped in ifdef ASM_OUTPUT_ALIGNED_BSS

From-SVN: r222311
2015-04-22 10:16:17 +02:00
Jakub Jelinek a497da4c73 * gennews (files): Add files for GCC 5.
From-SVN: r222309
2015-04-22 10:14:03 +02:00
Bernhard Reutner-Fischer baa59cde37 c6x: handle c6x unk_isa in TARGET_CPU_CPP_BUILTINS
Fixes all-gcc for c6x config-list.mk that complained about

error: enumeration value ‘unk_isa’ not handled in switch

Maybe seeing unk_isa in the cpu switch statement should
__builtin_abort() but be conservative to just allow all-gcc of config-list.mk
to compile

From-SVN: r222308
2015-04-22 10:10:18 +02:00
Bernhard Reutner-Fischer 0828c47bb4 bfin: handle BFIN_CPU_UNKNOWN in TARGET_CPU_CPP_BUILTINS
gcc/c-family/c-cppbuiltin.c
In file included from ./tm.h:21:0,
                 from
../../../../../../home/me/src/gcc-5.0.mine/gcc/c-family/c-cppbuiltin.c:23:
../../../../../../home/me/src/gcc-5.0.mine/gcc/c-family/c-cppbuiltin.c:
In function ‘void c_cpp_builtins(cpp_reader*)’:
../../../../../../home/me/src/gcc-5.0.mine/gcc/config/bfin/bfin.h:43:14:
error: enumeration value ‘BFIN_CPU_UNKNOWN’ not handled in switch
[-Werror=switch]
       switch (bfin_cpu_type)   \
              ^
../../../../../../home/me/src/gcc-5.0.mine/gcc/c-family/c-cppbuiltin.c:1243:3:
note: in expansion of macro ‘TARGET_CPU_CPP_BUILTINS’
   TARGET_CPU_CPP_BUILTINS ();
   ^
cc1plus: all warnings being treated as errors
make[2]: *** [c-family/c-cppbuiltin.o] Error 1

Maybe seeing BFIN_CPU_UNKNOWN in the cpu switch statement should
__builtin_abort() but be conservative to just allow all-gcc of config-list.mk
to compile

From-SVN: r222307
2015-04-22 10:05:20 +02:00
Hale Wang eefe4e49f4 re PR rtl-optimization/64818 (User specified register don't work correctly in inline-asm operands.)
gcc/ChangeLog:
2015-04-22  Hale Wang  <hale.wang@arm.com>
            Terry Guo  <terry.guo@arm.com>

       PR rtl-optimization/64818
       * combine.c (can_combine_p): Don't combine user-specified
       register if it is in an asm input.

gcc/testsuite/ChangeLog
2015-04-22  Hale Wang  <hale.wang@arm.com>
            Terry Guo  <terry.guo@arm.com>

       PR rtl-optimization/64818
       * gcc.target/arm/pr64818.c: New test.

Co-Authored-By: Terry Guo <terry.guo@arm.com>

From-SVN: r222306
2015-04-22 07:21:35 +00:00
Jan Hubicka 5a33401eab re PR ipa/65076 (16% tramp3d-v4.cpp compile time regression)
PR ipa/65076
	* passes.def (early_optimizations): Add pass_dse.

	* g++.dg/tree-ssa/pr61034.C: Update template.
	* g++.dg/warn/Warray-bounds.C: Harden for DSE.
	* gcc.dg/Warray-bounds-11.c: Likewise.
	* gcc.dg/Warray-bounds.c: Likewise.

From-SVN: r222305
2015-04-22 01:32:14 +00:00
Trevor Saunders 6e37129a8d add default for INSN_REFERENCES_ARE_DELAYED
gcc/ChangeLog:

2015-04-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* defaults.h (INSN_REFERENCES_ARE_DELAYED): New definition.
	* reorg.c (redundant_insn): Remove ifdef
	INSN_REFERENCES_ARE_DELAYED.
	* resource.c (mark_referenced_resources): Likewise.

From-SVN: r222304
2015-04-22 00:45:20 +00:00
Trevor Saunders 0923e946fb provide default for INSN_SETS_ARE_DELAYED
gcc/ChangeLog:

2015-04-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* defaults.h (INSN_SETS_ARE_DELAYED): New definition.
	* reorg.c (redundant_insn): Remove ifdef INSN_SETS_ARE_DELAYED.
	* resource.c (mark_set_resources): Likewise.

From-SVN: r222303
2015-04-22 00:45:11 +00:00
Trevor Saunders 618f407374 remove more ifdefs for HAVE_cc0
gcc/ChangeLog:

2015-04-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* caller-save.c (insert_one_insn): Remove ifdef HAVE_cc0.
	* cfgcleanup.c (flow_find_cross_jump): Likewise.
	(flow_find_head_matching_sequence): Likewise.
	(try_head_merge_bb): Likewise.
	* combine.c (can_combine_p): Likewise.
	(try_combine): Likewise.
	(distribute_notes): Likewise.
	* df-problems.c (can_move_insns_across): Likewise.
	* final.c (final): Likewise.
	* gcse.c (insert_insn_end_basic_block): Likewise.
	* ira.c (find_moveable_pseudos): Likewise.
	* reorg.c (try_merge_delay_insns): Likewise.
	(fill_simple_delay_slots): Likewise.
	(fill_slots_from_thread): Likewise.
	* sched-deps.c (sched_analyze_2): Likewise.

From-SVN: r222302
2015-04-22 00:45:06 +00:00
Trevor Saunders faa7b0dee6 remove #if for PIC_OFFSET_TABLE_REGNUM
gcc/ChangeLog:

2015-04-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* df-scan.c (df_get_entry_block_def_set): Remove #ifdef
	PIC_OFFSET_TABLE_REGNUM.

From-SVN: r222301
2015-04-22 00:44:59 +00:00
Trevor Saunders c3e080363d reduce conditional compilation for HARD_FRAME_POINTER_IS_FRAME_POINTER
gcc/ChangeLog:

2015-04-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* alias.c (init_alias_target): Remove ifdef
	* HARD_FRAME_POINTER_IS_FRAME_POINTER.
	* df-scan.c (df_insn_refs_collect): Likewise.
	(df_get_regular_block_artificial_uses): Likewise.
	(df_get_eh_block_artificial_uses): Likewise.
	(df_get_entry_block_def_set): Likewise.
	(df_get_exit_block_use_set): Likewise.
	* emit-rtl.c (gen_rtx_REG): Likewise.
	* ira.c (ira_setup_eliminable_regset): Likewise.
	* reginfo.c (init_reg_sets_1): Likewise.
	* regrename.c (rename_chains): Likewise.
	* reload1.c (reload): Likewise.
	(eliminate_regs_in_insn): Likewise.
	* resource.c (mark_referenced_resources): Likewise.
	(init_resource_info): Likewise.

From-SVN: r222300
2015-04-22 00:44:54 +00:00
Trevor Saunders cbc7d031c4 provide default for MASK_RETURN_ADDR
gcc/ChangeLog:

2015-04-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* defaults.h (MASK_RETURN_ADDR): New definition.
	* except.c (expand_builtin_extract_return_addr): Remove ifdef
	MASK_RETURN_ADDR.

From-SVN: r222299
2015-04-22 00:44:48 +00:00
Trevor Saunders a8a6b3dfd3 provide default for RETURN_ADDR_OFFSET
gcc/ChangeLog:

2015-04-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* defaults.h (RETURN_ADDR_OFFSET): New definition.
	* except.c (expand_builtin_extract_return_addr): Remove ifdef
	RETURN_ADDR_OFFSET.
	(expand_builtin_frob_return_addr): Likewise.

From-SVN: r222298
2015-04-22 00:44:43 +00:00
Trevor Saunders 058eb3b07a make some HAVE_cc0 code always compiled
gcc/ChangeLog:

2015-04-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* cfgrtl.c (rtl_merge_blocks): Change #if HAVE_cc0 to if (HAVE_cc0)
	(try_redirect_by_replacing_jump): Likewise.
	(rtl_tidy_fallthru_edge): Likewise.
	* combine.c (insn_a_feeds_b): Likewise.
	(find_split_point): Likewise.
	(simplify_set): Likewise.
	* cprop.c (cprop_jump): Likewise.
	* cse.c (cse_extended_basic_block): Likewise.
	* df-problems.c (can_move_insns_across): Likewise.
	* function.c (emit_use_return_register_into_block): Likewise.
	* haifa-sched.c (sched_init): Likewise.
	* ira.c (find_moveable_pseudos): Likewise.
	* loop-invariant.c (find_invariant_insn): Likewise.
	* lra-constraints.c (curr_insn_transform): Likewise.
	* postreload.c (reload_combine_recognize_const_pattern):
	* Likewise.
	* reload.c (find_reloads): Likewise.
	* reorg.c (delete_scheduled_jump): Likewise.
	(steal_delay_list_from_target): Likewise.
	(steal_delay_list_from_fallthrough): Likewise.
	(redundant_insn): Likewise.
	(fill_simple_delay_slots): Likewise.
	(fill_slots_from_thread): Likewise.
	(delete_computation): Likewise.
	* sched-rgn.c (add_branch_dependences): Likewise.

From-SVN: r222297
2015-04-22 00:44:37 +00:00
Trevor Saunders f1e52ed6b2 always define HAVE_cc0
gcc/ChangeLog:

2015-04-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* genconfig.c (main): Always define HAVE_cc0.
	* caller-save.c (insert_one_insn): Change ifdef HAVE_cc0 to #if
	HAVE_cc0.
	* cfgcleanup.c (flow_find_cross_jump): Likewise.
	(flow_find_head_matching_sequence): Likewise.
	(try_head_merge_bb): Likewise.
	* cfgrtl.c (rtl_merge_blocks): Likewise.
	(try_redirect_by_replacing_jump): Likewise.
	(rtl_tidy_fallthru_edge): Likewise.
	* combine.c (do_SUBST_MODE): Likewise.
	(insn_a_feeds_b): Likewise.
	(combine_instructions): Likewise.
	(can_combine_p): Likewise.
	(try_combine): Likewise.
	(find_split_point): Likewise.
	(subst): Likewise.
	(simplify_set): Likewise.
	(distribute_notes): Likewise.
	* cprop.c (cprop_jump): Likewise.
	* cse.c (cse_extended_basic_block): Likewise.
	* df-problems.c (can_move_insns_across): Likewise.
	* final.c (final): Likewise.
	(final_scan_insn): Likewise.
	* function.c (emit_use_return_register_into_block): Likewise.
	* gcse.c (insert_insn_end_basic_block): Likewise.
	* haifa-sched.c (sched_init): Likewise.
	* ira.c (find_moveable_pseudos): Likewise.
	* loop-invariant.c (find_invariant_insn): Likewise.
	* lra-constraints.c (curr_insn_transform): Likewise.
	* optabs.c (prepare_cmp_insn): Likewise.
	* postreload.c (reload_combine_recognize_const_pattern):
	* Likewise.
	* reload.c (find_reloads): Likewise.
	(find_reloads_address_1): Likewise.
	* reorg.c (delete_scheduled_jump): Likewise.
	(steal_delay_list_from_target): Likewise.
	(steal_delay_list_from_fallthrough): Likewise.
	(try_merge_delay_insns): Likewise.
	(redundant_insn): Likewise.
	(fill_simple_delay_slots): Likewise.
	(fill_slots_from_thread): Likewise.
	(delete_computation): Likewise.
	(relax_delay_slots): Likewise.
	* sched-deps.c (sched_analyze_2): Likewise.
	* sched-rgn.c (add_branch_dependences): Likewise.

From-SVN: r222296
2015-04-22 00:44:27 +00:00
Trevor Saunders 176cb568dc remove more ifdef HAVE_cc0
gcc/ChangeLog:

2015-04-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* combine.c (find_single_use): Remove HAVE_cc0 ifdef for code
	that is trivially ded on non cc0 targets.
	(simplify_set): Likewise.
	(mark_used_regs_combine): Likewise.
	* cse.c (new_basic_block): Likewise.
	(fold_rtx): Likewise.
	(cse_insn): Likewise.
	(cse_extended_basic_block): Likewise.
	(set_live_p): Likewise.
	* rtlanal.c (canonicalize_condition): Likewise.
	* simplify-rtx.c (simplify_binary_operation_1): Likewise.

From-SVN: r222295
2015-04-22 00:44:20 +00:00
Trevor Saunders 8a90eeb6a8 remove some ifdef HAVE_cc0
gcc/ChangeLog:

2015-04-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* conditions.h: Define macros even if HAVE_cc0 is undefined.
	* emit-rtl.c: Define functions even if HAVE_cc0 is undefined.
	* final.c: Likewise.
	* jump.c: Likewise.
	* recog.c: Likewise.
	* recog.h: Declare functions even when HAVE_cc0 is undefined.
	* sched-deps.c (sched_analyze_2): Always compile case for cc0.

From-SVN: r222294
2015-04-22 00:44:15 +00:00
Trevor Saunders 9a52250502 add default definition of EH_RETURN_DATA_REGNO
gcc/ChangeLog:

2015-04-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* defaults.h: New definition of EH_RETURN_DATA_REGNO.
	* except.c: Remove definition of EH_RETURN_DATA_REGNO.
	* builtins.c (expand_builtin): Remove check if
	EH_RETURN_DATA_REGNO is defined.
	* df-scan.c (df_bb_refs_collect): Likewise.
	(df_get_exit_block_use_set): Likewise.
	* haifa-sched.c (initiate_bb_reg_pressure_info): Likewise.
	* ira-lives.c (process_bb_node_lives): Likewise.
	* lra-lives.c (process_bb_lives): Likewise.

From-SVN: r222293
2015-04-22 00:44:08 +00:00
GCC Administrator 858d4a15b7 Daily bump.
From-SVN: r222292
2015-04-22 00:16:19 +00:00
Jerry DeLisle eb09db463a re PR libfortran/65234 (Output descriptor (*(1E15.7)) not accepted)
2015-04-21 Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/65234
	* gfortran.dg/fmt_unlimited.f90: New test.

From-SVN: r222276
2015-04-21 18:28:39 +00:00
Jerry DeLisle 72cb12b077 re PR libfortran/65234 (Output descriptor (*(1E15.7)) not accepted)
2015-04-21 Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/65234
	* io/format.c (parse_format_list): Set the seen_dd flag in all
	cases where a data descriptor has been seen.

From-SVN: r222274
2015-04-21 18:23:20 +00:00
Andreas Tobler dfce59eba3 avx512bw-vpermi2w-2.c: Fix includes to use actual headers.
* gcc.target/i386/avx512bw-vpermi2w-2.c: Fix includes to use actual
    headers.
    * gcc.target/i386/avx512bw-vpermt2w-2.c: Likewise.
    * gcc.target/i386/avx512bw-vpmaddubsw-2.c: Likewise.
    * gcc.target/i386/avx512bw-vpmaddwd-2.c: Likewise.
    * gcc.target/i386/avx512dq-vfpclasspd-2.c: Likewise.
    * gcc.target/i386/avx512dq-vfpclassps-2.c: Likewise.
    * gcc.target/i386/avx512vbmi-vpermi2b-2.c: Likewise.
    * gcc.target/i386/avx512vbmi-vpermt2b-2.c: Likewise.

From-SVN: r222273
2015-04-21 18:53:23 +02:00
Jerry DeLisle 3007f7e40f re PR fortran/56743 (Namelist bug with comment and no blank)
2015-04-21 Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/56743
	* gfortran.dg/namelist_87.f90: New test.

From-SVN: r222272
2015-04-21 16:33:27 +00:00
Jerry DeLisle b45fe62d45 re PR fortran/56743 (Namelist bug with comment and no blank)
2015-04-21 Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/56743
	* io/list_read.c (CASE_SEPARATORS): Add case for '!'.
	(is_separator): Add condition for '!'.
	(eat_separator): Use notify_std to warn or errord if '!' is
	encountered before a proper separator.

From-SVN: r222271
2015-04-21 16:13:54 +00:00
Uros Bizjak 05416670a6 i386.md (ARGP_REG, [...]): New.
* config/i386/i386.md (ARGP_REG, FRAME_REG, BND2_REG, BND3_REG,
	FIRST_PSEUDO_REG): New.
	* config/i386/i386.h (STACK_POINTER_REGNUM): Define to SP_REG.
	(ARG_POINTER_REGNUM): Define to ARGP_REG.
	(FRAME_POINTER_REGNUM): Define to FRAME_REG.
	(HARD_FRAME_POINTER_REGNUM): Define to BP_REG.
	(FIRST_PSEUDO_REGISTER): Define to FIRST_PSEUDO_REG.
	(FIRST_INT_REG): New.
	(LAST_INT_REG): New.
	(FIRST_*_REG): Define using *_REG.
	(LAST_*_REG): Ditto.
	(QI_REGNO_P): Define using FIRST_QU_REG and LAST_QI_REG.
	(LEGACY_INT_REGNO_P): Define using FIRST_INT_REG and LAST_INT_REG.
	(FIRST_FLOAT_REG): Define to FIRST_STACK_REG.

From-SVN: r222269
2015-04-21 15:30:56 +02:00
Kyrylo Tkachov 35430ca0c6 [expmed] Properly account for the cost and latency of shift+add ops when synthesizing mults
* expmed.c: (synth_mult): Only assume overlapping
        shift with previous steps in alg_sub_t_m2 case.

        * gcc.target/aarch64/mult-synth_1.c: New test.
        * gcc.target/aarch64/mult-synth_2.c: Likewise.
        * gcc.target/aarch64/mult-synth_3.c: Likewise.
        * gcc.target/aarch64/mult-synth_4.c: Likewise.
        * gcc.target/aarch64/mult-synth_5.c: Likewise.
        * gcc.target/aarch64/mult-synth_6.c: Likewise.

From-SVN: r222268
2015-04-21 12:56:39 +00:00
Richard Biener 0ff093d855 re PR tree-optimization/65650 (CCP does not propgate copies)
2015-04-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/65650
	* tree-ssa-ccp.c (valid_lattice_transition): Allow lattice
	transitions involving copies.
	(set_lattice_value): Adjust for copy lattice state.
	(ccp_lattice_meet): Do not merge UNDEFINED and a copy to the copy
	if that doesn't dominate the merge point.
	(bit_value_unop): Adjust what we treat as varying mask.
	(bit_value_binop): Likewise.
	(bit_value_assume_aligned): Likewise.
	(evaluate_stmt): When we simplified to a SSA name record a copy
	instead of dropping to varying.
	(visit_assignment): Simplify.

	* gimple-match.h (gimple_simplify): Add another callback.
	* gimple-fold.c (fold_stmt_1): Adjust caller.
	(gimple_fold_stmt_to_constant_1): Likewise - pass valueize
	for the 2nd callback.
	* gimple-match-head.c (gimple_simplify): Add a callback that is
	used to valueize the stmt operands and use it that way.

	* gcc.dg/tree-ssa/ssa-ccp-37.c: New testcase.
	* gcc.dg/tree-ssa/forwprop-11.c: Adjust.
	* gcc.dg/tree-ssa/ssa-fre-3.c: Likewise.
	* gcc.dg/tree-ssa/ssa-fre-4.c: Likewise.
	* gcc.dg/tree-ssa/ssa-fre-5.c: Likewise.
	* gcc.dg/tree-ssa/ssa-fre-32.c: Likewise.

From-SVN: r222267
2015-04-21 12:52:43 +00:00
Richard Biener 9588d24871 re PR middle-end/65788 (416.gamess in SPEC CPU 2006 failed to build)
2015-04-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/65788
	* tree-ssa-ccp.c (evaluate_stmt): Evaluate to UNDEFINED early.

From-SVN: r222266
2015-04-21 12:38:32 +00:00
Richard Biener 908c55f161 i386.c (ix86_builtin_vectorization_cost): Scale vec_construct cost by vec_stmt_cost.
2015-04-21  Richard Biener  <rguenther@suse.de>

	* config/i386/i386.c (ix86_builtin_vectorization_cost): Scale
	vec_construct cost by vec_stmt_cost.

From-SVN: r222265
2015-04-21 12:21:21 +00:00
Richard Biener c4d281b29a cfghooks.h (create_basic_block): Replace with two overloads for RTL and GIMPLE.
2015-04-21  Richard Biener  <rguenther@suse.de>

	* cfghooks.h (create_basic_block): Replace with two overloads
	for RTL and GIMPLE.
	(split_block): Likewise.
	* cfghooks.c (split_block): Rename to ...
	(split_block_1): ... this.
	(split_block): Add two type-safe overloads for RTL and GIMPLE.
	(split_block_after_labels): Call split_block_1.
	(create_basic_block): Rename to ...
	(create_basic_block_1): ... this.
	(create_basic_block): Add two type-safe overloads for RTL and GIMPLE.
	(create_empty_bb): Call create_basic_block_1.
	* cfgrtl.c (fixup_fallthru_exit_predecessor): Use
	split_block_after_labels.
	* omp-low.c (expand_parallel_call): Likewise.
	(expand_omp_target): Likewise.
	(simd_clone_adjust): Likewise.
	* tree-chkp.c (chkp_get_entry_block): Likewise.
	* cgraphunit.c (init_lowered_empty_function): Use the GIMPLE
	create_basic_block overload.
	(cgraph_node::expand_thunk): Likewise.
	* tree-cfg.c (make_blocks): Likewise.
	(handle_abnormal_edges): Likewise.
	* tree-inline.c (copy_bb): Likewise.

From-SVN: r222264
2015-04-21 11:40:46 +00:00
Kyrylo Tkachov 8409e468a5 [AArch64] Add zero_extend variants of logical+not ops
* config/aarch64/aarch64.md (*<NLOGICAL:optab>_one_cmplsidi3_ze):
	New pattern.
	(*xor_one_cmplsidi3_ze): Likewise.

From-SVN: r222263
2015-04-21 11:24:05 +00:00
Jonathan Wakely 8a29fdfd23 configure.xml: Update descriptions of options affecting dual ABI and add cross-references.
* doc/xml/manual/configure.xml: Update descriptions of options
	affecting dual ABI and add cross-references.
	* doc/xml/manual/strings.xml: Clarify that string isn't COW now.
	* doc/xml/manual/using.xml: Document ABI transition.
	* doc/html/*: Regenerate.

From-SVN: r222262
2015-04-21 11:38:43 +01:00
Jonathan Wakely 0ee59f1f05 abi.xml: Use uppercase for C++ Standard Library.
* doc/xml/manual/abi.xml: Use uppercase for C++ Standard Library.
	* doc/xml/manual/using.xml: Document newer -std options. Use better
	examples of nested namespaces.

From-SVN: r222261
2015-04-21 11:27:18 +01:00
Thomas Preud'homme 8f252203d8 df-core.c (df_finish_pass): Iterate over df->problems_by_index[] and use df_remove_problem rather than...
2015-04-21  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    * df-core.c (df_finish_pass): Iterate over df->problems_by_index[] and
    use df_remove_problem rather than manually removing problems, leaving
    holes in df->problems_in_order[].

From-SVN: r222260
2015-04-21 10:23:25 +00:00
Tom de Vries 22fe969f2c Mark ifn_va_arg with ECF_NOTHROW
2015-04-21  Tom de Vries  <tom@codesourcery.com>

	PR tree-optimization/65802
	* internal-fn.def (VA_ARG): Add ECF_NOTROW to flags.

	* g++.dg/pr65802.C: New test.

From-SVN: r222259
2015-04-21 08:43:07 +00:00
Kyrylo Tkachov efb25f5443 [AArch64] Increase static buffer size in aarch64_rewrite_selected_cpu
* common/config/aarch64/aarch64-common.c (AARCH64_CPU_NAME_LENGTH):
	Increase to 128.
	(aarch64_rewrite_selected_cpu): Do not chop off extensions starting
	at '.'.  Assert that there's enough space for everything.

From-SVN: r222258
2015-04-21 08:14:22 +00:00
Uros Bizjak d60dbb52fc re PR tree-optimization/64950 (postpone expanding va_arg till pass_stdarg)
PR tree-optimization/64950
	Revert:
	2010-08-02  Uros Bizjak  <ubizjak@gmail.com>

	PR target/41089
	* config/alpha/alpha.c (alpha_build_builtin_va_list): Mark __offset
	as volatile.

From-SVN: r222257
2015-04-21 08:29:37 +02:00