Commit Graph

141033 Commits

Author SHA1 Message Date
Ramana Radhakrishnan
33e767e26e [AArch64] Use default_elf_asm_named_section instead of special cased hook
* config/aarch64/aarch64-elf.h (TARGET_ASM_NAMED_SECTION): Delete.

From-SVN: r228397
2015-10-02 15:07:46 +00:00
Vladimir Makarov
599e1cf8b1 re PR rtl-optimization/67756 (ICE compiling Linux Kernel fs/namei.c on ARM)
2015-10-02  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/67756
	* lra-constraints.c (match_reload): Add a new parameter.  Use it
	for creating a pseudo with the same value.
	(curr_insn_transform): Pass a new argument to match_reload.

2015-10-02  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/67756
	* gcc.target/arm/pr67756.c: New.

From-SVN: r228396
2015-10-02 15:04:59 +00:00
Jiong Wang
0ff3ac5f44 [AArch64] Add more TLS local executable testcases
2015-10-02  Jiong Wang  <jiong.wang@arm.com>

	* gcc.target/aarch64/tlsle12_tiny_1.c: New testcase for tiny model.
	* gcc.target/aarch64/tlsle24_tiny_1.c: Likewise.
	* gcc.target/aarch64/tlsle_sizeadj_tiny_1.c: TLS size truncation test
	for tiny model.
	* gcc.target/aarch64/tlsle_sizeadj_small_1.c: TLS size truncation test
	for small model.

From-SVN: r228395
2015-10-02 14:47:34 +00:00
Kirill Yukhin
1edc26adde Update extract_even_odd w/ AVX-512BW insns.
gcc/
	* config/i386/i386.c (expand_vec_perm_even_odd_trunc): New.
	(expand_vec_perm_even_odd_1): Handle V64QImode.
	(ix86_expand_vec_perm_const_1): Try expansion with
	expand_vec_perm_even_odd_trunc as well.
	* config/i386/sse.md (VI124_AVX512F): Rename to ...
	(define_mode_iterator VI124_AVX2_24_AVX512F_1_AVX512BW): This. Extend
	to V54QI.
	(define_mode_iterator VI248_AVX2_8_AVX512F): Rename to ...
	(define_mode_iterator VI248_AVX2_8_AVX512F_24_AVX512BW): This. Extend
	to V32HI and V16SI.
	(define_insn "avx512bw_<code>v32hiv32qi2"): Unhide pattern name.
	(define_expand "vec_pack_trunc_<mode>"): Update iterator name.
	(define_expand "vec_unpacks_lo_<mode>"): Ditto.
	(define_expand "vec_unpacks_hi_<mode>"): Ditto.
	(define_expand "vec_unpacku_lo_<mode>"): Ditto.
	(define_expand "vec_unpacku_hi_<mode>"): Ditto.

gcc/testsuite/
	* gcc.target/i386/vect-pack-trunc-1.c: New test.
	* gcc.target/i386/vect-pack-trunc-2.c: Ditto.
	* gcc.target/i386/vect-perm-even-1.c: Ditto.
	* gcc.target/i386/vect-perm-odd-1.c: Ditto.
	* gcc.target/i386/vect-unpack-1.c: Ditto.
	* gcc.target/i386/vect-unpack-2.c: Ditto.

From-SVN: r228394
2015-10-02 14:36:41 +00:00
Kirill Yukhin
bea9065228 invoke.texi: Mention -mavx512vl, -mavx512bw, -mavx512dq, -mavx521vbmi, -mavx512ifma.
gcc/
	* doc/invoke.texi: Mention -mavx512vl, -mavx512bw, -mavx512dq,
	-mavx521vbmi, -mavx512ifma. Add missing opindex-es.

From-SVN: r228393
2015-10-02 14:29:44 +00:00
Jason Merrill
1d4afc04d0 re PR c/59218 (atomic transactions: accesses to volatiles not disallowed in transaction_safe code)
PR c/59218

	* trans-mem.c (volatile_lvalue_p): Rename from volatile_var_p.
	(diagnose_tm_1_op): Also diagnose volatile accesses in
	transaction_safe function.

From-SVN: r228392
2015-10-02 09:44:41 -04:00
Jonathan Wakely
5f62fa6d69 * system.h (malloc.h): Don't include obsolete header.
From-SVN: r228391
2015-10-02 14:30:03 +01:00
Ramana Radhakrishnan
899de23a3c [AArch64] Use default_elf_asm_named_section instead of special cased hook
Hi,

The hook for TARGET_ASM_NAMED_SECTION was defined separately in
the backend around the time frame for GCC 4.7 under the assumption
that '@' would be used as a comment character in the binutils port.

This was indeed true in versions of the AArch64 port that never made it
into the FSF tree. However this practice was killed
before the binutils port made it upstream. Doing archaeology into
various revisions including the first commit of upstream binutils,
talking to Marcus about the history of this and actually testing the
first commit of binutils, I can confidently say that the upstream binutils
port never had any use of '@' as a comment character for AArch64
However we never got rid of the special cased handling in
GCC and the duplication of code in the AArch64 backend.

This was found when I was playing with Virtual Table verification
on ARM and AArch64 and discovered ICEs which were similar but manifested
in different places begging the obvious question.

Tested on aarch64-none-elf with no regressions.

Ok to apply ?

Ramana

2015-10-02  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

	* config/aarch64/aarch64.c (aarch64_elf_asm_named_section): Delete.
	(TLS_SECTION_ASM_FLAG): Delete.

From-SVN: r228390
2015-10-02 13:08:43 +00:00
Marek Polacek
3e3b8d63e5 re PR c/64249 (Missing warning for if (A) else if (A))
PR c/64249
	* c-common.c (warn_duplicated_cond_add_or_warn): New function.
	* c-common.h (warn_duplicated_cond_add_or_warn): Declare.
	* c.opt (Wduplicated-cond): New option.

	* c-parser.c (c_parser_statement_after_labels): Add CHAIN parameter
	and pass it down to c_parser_if_statement.
	(c_parser_else_body): Add CHAIN parameter and pass it down to
	c_parser_statement_after_labels.
	(c_parser_if_statement): Add CHAIN parameter.  Add code to warn about
	duplicated if-else-if conditions.

	* parser.c (cp_parser_statement): Add CHAIN parameter and pass it
	down to cp_parser_selection_statement.
	(cp_parser_selection_statement): Add CHAIN parameter.  Add code to
	warn about duplicated if-else-if conditions.
	(cp_parser_implicitly_scoped_statement): Add CHAIN parameter and pass
	it down to cp_parser_statement.

	* doc/invoke.texi: Document -Wduplicated-cond.
	* Makefile.in (insn-latencytab.o): Use -Wno-duplicated-cond.
	(insn-dfatab.o): Likewise.
	* genemit.c (gen_exp): Rewrite condition to avoid -Wduplicated-cond
	warning.

	* c-c++-common/Wduplicated-cond-1.c: New test.
	* c-c++-common/Wduplicated-cond-2.c: New test.
	* c-c++-common/Wduplicated-cond-3.c: New test.
	* c-c++-common/Wduplicated-cond-4.c: New test.
	* c-c++-common/Wmisleading-indentation.c (fn_37): Avoid
	-Wduplicated-cond warning.

From-SVN: r228388
2015-10-02 12:56:17 +00:00
Renlin Li
0f6ca79c15 [PATCH][AARCH64]Add csneg3_uxtw_insn pattern
gcc/

2015-10-02  Renlin Li <renlin.li@arm.com>

	* config/aarch64/aarch64.md (csneg3_uxtw_insn): New pattern.

gcc/testsuite/

2015-10-02  Renlin Li <renlin.li@arm.com>

	* gcc.target/aarch64/csneg-1.c: Update test.

From-SVN: r228387
2015-10-02 12:52:36 +00:00
Oleg Endo
b03e67ad92 sh.md: Add new unnamed split pattern to handle movt-movt sequences.
gcc/
	* config/sh/sh.md: Add new unnamed split pattern to handle movt-movt
	sequences.

From-SVN: r228386
2015-10-02 12:30:05 +00:00
Renlin Li
1d3e6ed315 [PATCH][AARCH64][PR66776]Add cmovdi_insn_uxtw pattern.
gcc/

2015-10-02  Renlin Li  <renlin.li@arm.com>

	PR target/66776
	* config/aarch64/aarch64.md (cmovdi_insn_uxtw): New pattern.

gcc/testsuite/

2015-10-02  Renlin Li  <renlin.li@arm.com>

	PR target/66776
	* gcc.target/aarch64/pr66776.c: New.

From-SVN: r228384
2015-10-02 11:55:04 +00:00
Florian Weimer
bec93d4075 MAINTAINERS: Update email address.
From-SVN: r228383
2015-10-02 12:13:48 +02:00
Doug Rupp
4d928625a4 lang.opt (fbuiltin-printf): Accept.
* gcc-interface/lang.opt (fbuiltin-printf): Accept.
	* gcc-interface/misc.c (gnat_handle_option): Ignore it.
	* gcc-interface/lang-specs.h (@ada, @adawhy, @adascil): Propagate -f*
	flags as -g* and -m* flags past -gnatez.

Co-Authored-By: Olivier Hainque <hainque@adacore.com>

From-SVN: r228381
2015-10-02 09:45:45 +00:00
Louis Krupp
0487f06dd1 MAINTAINERS (Write After Approval): Add myself.
2015-10-02  Louis Krupp <louis.krupp@zoho.com>

	* MAINTAINERS  (Write After Approval): Add myself.

From-SVN: r228380
2015-10-02 09:29:32 +00:00
Eric Botcazou
0cec1c2da3 trans.c (Pragma_to_gnu): Replace linear search with call to find_opt and issue warnings if...
* gcc-interface/trans.c (Pragma_to_gnu) <Pragma_Warnings>: Replace
	linear search with call to find_opt and issue warnings if the -W
	switch is not appropriate.

From-SVN: r228379
2015-10-02 09:28:56 +00:00
Louis Krupp
e0512e8dc4 Back out improper commit
From-SVN: r228378
2015-10-02 09:26:40 +00:00
Eric Botcazou
1ddde8dca2 ada-tree.h (DECL_RESTRICTED_ALIASING_P): New flag.
* gcc-interface/ada-tree.h (DECL_RESTRICTED_ALIASING_P): New flag.
	* gcc-interface/decl.c (gnat_to_gnu_param): For parameters passed by
	reference but whose type isn't by-ref and whose mechanism hasn't been
	forced to by-ref, set the DECL_RESTRICTED_ALIASING_P flag directly on
	them instead of changing their type.
	* gcc-interface/trans.c (scan_rhs_r): New helper function.
	(independent_iterations_p): New predicate.
	(Loop_Statement_to_gnu): For a loop with an iteration scheme, set an
	ivdep pragma if the iterations are independent.

From-SVN: r228377
2015-10-02 09:18:34 +00:00
Louis Krupp
7262aee978 Delete undesirable svn:executable property
From-SVN: r228376
2015-10-02 08:41:13 +00:00
Kyrylo Tkachov
6b7e867187 [RTL ifcvt] PR 67786, 67787: Check that intermediate instructions in the basic block don't clobber a reg used in condition
PR rtl-optimization/67786
        PR rtl-optimization/67787
        * ifcvt.c (bb_valid_for_noce_process_p): Reject basic block if
        it modifies a reg used in the condition calculation.

        * gcc.dg/pr67786.c: New test.
        * gcc.dg/pr67787.c: Likewise.

From-SVN: r228375
2015-10-02 08:36:45 +00:00
James Greenhalgh
c0233c783d [Patch AArch64] Improve SIMD concatenation with zeroes
gcc/

	* config/aarch64/aarch64-simd.md (*aarch64_combinez<mode>): Add
	alternatives for reads from memory and moves from general-purpose
	registers.
	(*aarch64_combinez_be<mode>): Likewise.

gcc/testsuite/

	* gcc.target/aarch64/vect_combine_zeroes_1.c: New.

From-SVN: r228374
2015-10-02 08:32:12 +00:00
Eric Botcazou
547bbe4977 trans.c (find_loop_for): Use FOR_EACH_VEC_ELT_REVERSE.
* gcc-interface/trans.c (find_loop_for): Use FOR_EACH_VEC_ELT_REVERSE.
	(Loop_Statement_to_gnu): Use FOR_EACH_VEC_ELT.
	(finalize_nrv): Use FOR_EACH_VEC_SAFE_ELT and initialize field.
	(build_stmt_group): Add blank lines.

From-SVN: r228373
2015-10-02 08:10:46 +00:00
Kai Tietz
a87926c15d re PR target/51726 (LTO and attribute 'selectany')
PR target/51726
        * g++.dg/ext/selectany2.C: Allow uninitialized variable case.

From-SVN: r228371
2015-10-02 10:08:38 +02:00
Kai Tietz
63578ef993 re PR target/51726 (LTO and attribute 'selectany')
PR target/51726
	* config/i386/winnt.c (ix86_handle_selectany_attribute): Handle
	selectany within this function without need to keep attribute.
	(i386_pe_encode_section_info): Remove selectany-code.

From-SVN: r228370
2015-10-02 10:06:52 +02:00
Richard Biener
6a8b77b2fa tree-ssa-sccvn.c (has_VN_INFO): New function.
2015-10-02  Richard Biener  <rguenther@suse.de>

	* tree-ssa-sccvn.c (has_VN_INFO): New function.
	(free_scc_vn): Use it.
	(visit_use): Remove dead code and refactor to use gassign
	and use less indentation.

From-SVN: r228369
2015-10-02 07:34:53 +00:00
Louis Krupp
d751beac55 [multiple changes]
2015-10-01  Louis Krupp <louis.krupp@zoho.com>

	PR fortran/62242
	PR fortran/52332
	* trans-array.c
	(store_backend_decl): Create new gfc_charlen instance if requested
	(get_array_ctor_all_strlen): Call store_backend_decl requesting
	new gfc_charlen
	(trans_array_constructor): Call store_backend_decl requesting
	new gfc_charlen if get_array_ctor_strlen was called
	(gfc_add_loop_ss_code): Don't try to convert non-constant length

2015-10-01  Louis Krupp     <louis.krupp@zoho.com>

	PR fortran/62242
	PR fortran/52332
	* gfortran.dg/string_array_constructor_1.f90: New.
	* gfortran.dg/string_array_constructor_2.f90: New.
	* gfortran.dg/string_array_constructor_3.f90: New.

From-SVN: r228368
2015-10-02 04:03:34 +00:00
Louis Krupp
5a4d7a169f Approved by FX
From-SVN: r228367
2015-10-02 01:54:37 +00:00
Segher Boessenkool
636172b5be rs6000: Add "cannot_copy" attribute, use it (PR67788, PR67789)
After the shrink-wrapping patches the prologue will often be pushed
"deeper" into the function, which in turn means the software trace cache
pass will more often want to duplicate the basic block containing the
prologue.  This caused failures for 32-bit SVR4 with -msecure-plt PIC.

This configuration uses the load_toc_v4_PIC_1 instruction, which creates
assembler labels without using the normal machinery for that.  If now
the compiler decides to duplicate the insn, it will emit the same label
twice.  Boom.

It isn't so easy to fix this to use labels the compiler knows about (let
alone test that properly).  Instead, this patch wires up a "cannot_copy"
attribute to be used by TARGET_CANNOT_COPY_P, and sets that attribute on
these insns we do not want copied.


2015-10-01  Segher Boessenkool  <segher@kernel.crashing.org>

	PR target/67788
	PR target/67789
	* config/rs6000/rs6000.c (TARGET_CANNOT_COPY_INSN_P): New.
	(rs6000_cannot_copy_insn_p): New function.
	* config/rs6000/rs6000.md (cannot_copy): New attribute.
	(load_toc_v4_PIC_1_normal): Set cannot_copy.
	(load_toc_v4_PIC_1_476): Ditto.

gcc/testsuite/
	PR target/67788
	PR target/67789
	* gcc.target/powerpc/pr67789.c: New testcase.

From-SVN: r228366
2015-10-02 03:29:26 +02:00
Steven G. Kargl
d30ecc9c2b PR fortran.67802
2015-10-01  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran.67802
	* decl.c (add_init_expr_to_sym): Numeric constant for character
	length must be an INTEGER.

2015-10-01  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran.67802
	* gfortran.dg/pr67802.f90: New test.

From-SVN: r228365
2015-10-02 00:53:00 +00:00
Steven G. Kargl
220ab6b433 re PR fortran/66979 (gfortran internal compiler error with malformed FLUSH statement)
2015-10-01  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66979
	* io.c (gfc_resolve_filepos): Check for a UNIT number.  Add a nearby
	missing 'return false'.

2015-10-01  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66979
	gfortran.dg/pr66979.f90: new test.

From-SVN: r228364
2015-10-02 00:49:28 +00:00
Steven G. Kargl
b64c3d0696 re PR fortran/67616 (ICE on data initialization of type variable in block)
2015-10-01  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/67616
	* primary.c (gfc_match_structure_constructor): Use a possibly
	host-associated symtree to prevent ICE.

2015-10-01  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/67616
	* gfortran.dg/pr67616.f90: New test.

From-SVN: r228363
2015-10-02 00:45:59 +00:00
GCC Administrator
88a2711ce9 Daily bump.
From-SVN: r228362
2015-10-02 00:16:15 +00:00
Aditya Kumar
0afd32be3c use sese_l throughout scop-detection
Use sese_l throughout SCoP detection and create vec<scop_p> at the very end when
all SCoPs have been identified. 'struct sese_l' is very lightweight (two
pointers) compared to 'struct scop'.

No functional change intended. Passes regtest and bootstrap.

gcc/ChangeLog:

2015-10-01  Aditya Kumar  <hiraditya@msn.com>

        * graphite-scop-detection.c (struct sese_l): New conversion constructor
          so that this type can be pushed into a vec.
        (class scop_builder): use sese_l to collect scops.
        (get_scops): New getter function.
        (remove_intersecting_scops): Use sese_l instead of scops_p.
        (intersects): Same.
        (add_scop): Same.
        (subsumes): Same.
        (remove_subscops): Same.
        (build_scops): Add scops to vec<scops_p> once all the scops have been
        detected.

From-SVN: r228359
2015-10-01 22:04:20 +00:00
Aditya Kumar
65ef70d695 Rename gimple_bb to gimple_poly_bb
Renaming gimple_bb to gimple_poly_bb because there is a function gimple_bb
by the same name in gimple.h. No functional change intended.
Passes regtest and bootstrap.

gcc/ChangeLog:

2015-10-01  Aditya Kumar  <hiraditya@msn.com>

        * graphite-isl-ast-to-gimple.c (class translate_isl_ast_to_gimple):
	Renamed type from gimple_bb_p to gimple_poly_bb_p.
        (translate_isl_ast_node_user): Same.
        * graphite-poly.c (new_poly_bb): Same.
        * graphite-poly.h (gbb_from_bb): Same.
        * sese.h: Same.
        * graphite-sese-to-poly.c (new_gimple_bb): gimple_bb_p -> gimple_poly_bb_p
        (build_scop_scattering): Same.
        (find_params_in_bb): Same.
        (add_conditions_to_domain): Same.
        (sese_dom_walker::before_dom_children): Same.
        (analyze_drs_in_stmts): Same.
        (new_pbb_from_pbb): Same.
        (free_data_refs_aux): New pointer to type base_alias_pair.
        * graphite-sese-to-poly.h: Same.
        * sese.c (if_region_set_false_region): Fixed Indentation.
        (move_sese_in_condition): Same.

From-SVN: r228358
2015-10-01 22:04:14 +00:00
Sebastian Pop
6652875ffe correctly handle non affine data references
2015-10-01  Sebastian Pop  <s.pop@samsung.com>
            Aditya Kumar  <aditya.k7@samsung.com>
        PR tree-optimization/66980
        * graphite-scop-detection.c (stmt_has_simple_data_refs_p): Return false
        when data reference analysis has failed.

Co-Authored-By: Aditya Kumar <aditya.k7@samsung.com>

From-SVN: r228357
2015-10-01 22:04:07 +00:00
Ville Voutilainen
55fec44def re PR c++/54430 ([C++11] For-Loop: Scope of iterating variable begins too early)
PR c++/54430

/cp
2015-10-01  Ville Voutilainen  <ville.voutilainen@gmail.com>

	PR c++/54430
	* name-lookup.c (push_binding): Make non-static.
	* name-lookup.h (push_binding): Declare it.
	* parser.c (cp_parser_range_for): Use it, get the range
	declaration away from the scope until the range expression
	has been parsed, then restore the declaration.

/testsuite
2015-10-01  Ville Voutilainen  <ville.voutilainen@gmail.com>

	PR c++/54430
	* g++.dg/cpp0x/range-for30.C: New.

From-SVN: r228354
2015-10-01 22:22:08 +03:00
Joseph Myers
0d1a8f7517 Do not describe -std=c11 etc. as experimental in c.opt help text.
I noticed that c.opt still described -std=c11 and related options as
experimental in the --help text.  This patch fixes this.

Bootstrapped with no regressions on x86_64-pc-linux-gnu.

	* c.opt (std=c11): Do not describe as experimental.
	(std=gnu11): Likewise.
	(std=iso9899:2011): Likewise.

From-SVN: r228349
2015-10-01 18:00:14 +01:00
Jonathan Wakely
7b8089a3c6 * doc/html/manual/errno.html: Add new file.
From-SVN: r228348
2015-10-01 17:02:54 +01:00
Sebastian Pop
95ad241797 call scev analysis in scop-detection as in sese-to-poly
Before our rewrite of the scop detection, we used to not have a valid SESE
region under hand, and so we used to do more ad-hoc analysis of data references
by trying to prove that at all levels of a loop nest the data references would
be still valid.

Now that we have a valid SESE region, we can call the scev analysis in the same
way on the same computed loop nest in the scop-detection as in the sese-to-poly.

Next step will be to cache the data references analyzed in the scop detection
and not compute the same info in sese-to-poly.

The patch fixes block-1.f90 that used to ICE on x86_64-linux when compiled with
-m32.  Patch passed bootstrap with BOOT_CFLAGS="-g -O2 -fgraphite-identity
-floop-nest-optimize" and check on x86_64-linux using ISL-0.15.

2015-09-28  Sebastian Pop  <s.pop@samsung.com>
	Aditya Kumar  <aditya.k7@samsung.com>

	PR tree-optimization/67754
	* graphite-scop-detection.c (stmt_has_simple_data_refs_p): Call
	scev analysis on the same loop nest as analyze_drs_in_stmts.
	* graphite-sese-to-poly.c (outermost_loop_in_sese_1): Moved and renamed...
	(try_generate_gimple_bb): Call outermost_loop_in_sese.
	(analyze_drs_in_stmts): Same.
	* sese.c (outermost_loop_in_sese): ...here.

Co-Authored-By: Aditya Kumar <aditya.k7@samsung.com>

From-SVN: r228347
2015-10-01 15:17:58 +00:00
Sebastian Pop
cf72400ff3 add recursion on the inner loops
We now check that all data references in the current loop and inner loops
contained within loop are valid in an outer region before declaring that the
outer loop is a valid scop.

2015-09-30  Sebastian Pop  <s.pop@samsung.com>
	    Aditya Kumar  <aditya.k7@samsung.com>

	PR tree-optimization/67754
	* graphite-scop-detection.c (loop_body_is_valid_scop): Add missing
	recursion on the inner loops.

Co-Authored-By: Aditya Kumar <aditya.k7@samsung.com>

From-SVN: r228346
2015-10-01 15:17:51 +00:00
Trevor Saunders
526ceb6836 remove many typedefs
gcc/ChangeLog:

2015-10-01  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* cfganal.c, compare-elim.c, coverage.c, cprop.c, df-scan.c,
	function.c, read-rtl.c, statistics.c, trans-mem.c, tree-if-conv.c,
	tree-into-ssa.c, tree-loop-distribution.c, tree-ssa-coalesce.c,
	tree-ssa-loop-ivopts.c, tree-ssa-reassoc.c, tree-ssa-strlen.c,
	tree-ssa-tail-merge.c, tree-vrp.c, var-tracking.c: Remove
unneeded typedefs.

From-SVN: r228344
2015-10-01 15:12:31 +00:00
Marek Polacek
f6f69fb09c re PR c/65345 (ICE with _Generic selection on _Atomic int)
PR c/65345
	* config/i386/i386.c (ix86_atomic_assign_expand_fenv): Adjust to use
	create_tmp_var_raw rather than create_tmp_var.

	* gcc.dg/atomic/pr65345-4.c: New test.
	* gcc.dg/pr65345-3.c: New test.

From-SVN: r228343
2015-10-01 14:53:10 +00:00
Ian Lance Taylor
209919e2fd re PR go/66870 (split stack issues on ppc64le and ppc64)
PR go/66870
	* gospec.c (lang_specific_driver): Only look for OPT_m32 if
	TARGET_CAN_SPLIT_STACK_64BIT is defined.

From-SVN: r228342
2015-10-01 14:43:57 +00:00
Marek Polacek
9edaabf3d2 re PR tree-optimization/67769 (VRP pass does wrong optimization)
PR tree-optimization/67769
	* tree-ssa-phiopt.c (conditional_replacement): Call
	reset_flow_sensitive_info_in_bb.
	(minmax_replacement): Likewise.
	(abs_replacement): Likewise.

	* gcc.dg/torture/pr67769.c: New test.

From-SVN: r228341
2015-10-01 14:25:42 +00:00
Nathan Sidwell
4812613802 builtins.c: Don't include gomp-constants.h.
* builtins.c: Don't include gomp-constants.h.
	(fold_builtin_1): Don't fold acc_on_device here.
	* gimple-fold.c: Include gomp-constants.h.
	(gimple_fold_builtin_acc_on_device): New.
	(gimple_fold_builtin): Call it.

From-SVN: r228340
2015-10-01 14:13:30 +00:00
H.J. Lu
d878e79bf8 Enable bt and and movzx for Lakemont
* config/i386/x86-tune.def (X86_TUNE_USE_BT): Enable for
	Lakemont.
	(X86_TUNE_ZERO_EXTEND_WITH_AND): Disable for Lakemont.

From-SVN: r228337
2015-10-01 06:34:49 -07:00
Uros Bizjak
91470073d6 pr55113_0.c: Skip on all x86 targets.
* gcc.dg/lto/pr55113_0.c: Skip on all x86 targets.

From-SVN: r228334
2015-10-01 14:46:19 +02:00
Oleg Endo
7e623de550 Fix typo in ChangeLog.
From-SVN: r228333
2015-10-01 12:38:28 +00:00
Oleg Endo
298b0f3f70 re PR target/54236 ([SH] Improve addc and subc insn utilization)
gcc/testsuite/
	PR target/54236
	* gcc.target/sh/pr54236-6.c: Fix assembler-no string.

From-SVN: r228332
2015-10-01 12:36:15 +00:00
Jonathan Wakely
f14decafae Save-and-restore errno more carefully in libstdc++
* doc/xml/manual/diagnostics.xml: Document use of errno.
	* doc/html/*: Regenerate.
	* config/locale/generic/c_locale.cc (_Save_errno): New helper.
	(__convert_to_v): Use _Save_errno.
	* include/ext/string_conversions.h (__stoa): Only restore errno when
	it isn't set to non-zero.

From-SVN: r228328
2015-10-01 12:23:39 +01:00