Commit Graph

127751 Commits

Author SHA1 Message Date
Jakub Jelinek
698da88a86 vect-simd-clone-10.c: Add dg-do run.
* gcc.dg/vect/vect-simd-clone-10.c: Add dg-do run.
	* gcc.dg/vect/vect-simd-clone-12.c: Likewise.

From-SVN: r206574
2014-01-13 10:13:15 +01:00
Jakub Jelinek
8175be9a83 re PR libgomp/59194 (tsan detects race for real variables in an OMP reduction clause)
PR libgomp/59194
	* omp-low.c (expand_omp_atomic_pipeline): Expand the initial
	load as __atomic_load_N if possible.

From-SVN: r206572
2014-01-13 08:56:40 +01:00
GCC Administrator
131241a395 Daily bump.
From-SVN: r206571
2014-01-13 00:17:02 +00:00
Eric Botcazou
2323a580f1 re PR ada/59772 (floating-point constants are not correctly encoded)
PR ada/59772
	* gcc-interface/cuintp.c (build_cst_from_int): Use 32-bit integer type
	as intermediate type.
	(UI_To_gnu): Likewise.

From-SVN: r206565
2014-01-12 14:29:12 +00:00
Janus Weil
a1b80ec7e0 re PR fortran/58026 ([F03] Bad error recovery for allocatable component of undeclared type)
2014-01-12  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/58026
	* decl.c (gfc_match_data_decl): Improve error recovery.


2014-01-12  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/58026
	* gfortran.dg/alloc_comp_basics_6.f90: New.

From-SVN: r206564
2014-01-12 12:08:31 +01:00
GCC Administrator
915afe4494 Daily bump.
From-SVN: r206563
2014-01-12 00:17:10 +00:00
Steven G. Kargl
e60c935b0e re PR fortran/59700 (Misleading/buggy runtime error message: Bad integer for item 0 in list input)
2014-01-11  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/59700
	* gfortran.dg/pr59700.f90: New test.

From-SVN: r206559
2014-01-11 21:38:30 +00:00
Jerry DeLisle
fde33df77c Missed file for previous commit.
From-SVN: r206558
2014-01-11 21:36:57 +00:00
Dominique d'Humieres
14817bebf0 re PR libfortran/59419 (Failing OPEN with FILE='xxx' and IOSTAT creates the file 'xxx' after revision 196783)
2014-01-11  Dominique d'Humieres  <dominiq@lps.ens.fr>

	* gfortran.dg/binding_label_tests_10_main.f03: Cleanup mod file.
	* gfortran.dg/use_only_3.f90: Likewise.
	* gfortran.dg/inquire_10.f90: Delete opened file.
	* gfortran.dg/inquire_15.f90: Likewise.
	* gfortran.dg/pr16597.f90: Likewise.
	* gfortran.dg/open_negative_unit_1.f90: Likewise + test
	for PR59419.

From-SVN: r206557
2014-01-11 21:30:43 +00:00
David Edelsohn
9c11136838 rs6000.c (rs6000_expand_mtfsf_builtin): Remove target parameter.
* config/rs6000/rs6000.c (rs6000_expand_mtfsf_builtin): Remove
        target parameter.
        (rs6000_expand_builtin): Adjust call.

From-SVN: r206555
2014-01-11 14:25:54 -05:00
David Edelsohn
c82846bc44 re PR target/58115 (testcase gcc.target/i386/intrinsics_4.c failure)
PR target/58115
        * config/rs6000/rs6000.h (SWITCHABLE_TARGET): Define.
        * config/rs6000/rs6000.c: Include target-globals.h.
        (rs6000_set_current_function): Instead of doing target_reinit
        unconditionally, use save_target_globals_default_opts and
        restore_target_globals.

        * config/rs6000/rs6000-builtin.def (mffs, mtfsf): Add builtins for
        FPSCR.
        * config/rs6000/rs6000.c (rs6000_expand_mtfsf_builtin): New.
        (rs6000_expand_builtin): Handle mffs and mtfsf.
        (rs6000_init_builtins): Define mffs and mtfsf.
        * config/rs6000/rs6000.md (UNSPECV_MFFS, UNSPECV_MTFSF): New.
        (rs6000_mffs): New pattern.
        (rs6000_mtfsf): New pattern.

From-SVN: r206554
2014-01-11 13:57:56 -05:00
Jerry DeLisle
2558e2e838 re PR fortran/59700 (Misleading/buggy runtime error message: Bad integer for item 0 in list input)
2014-01-11  Jerry DeLisle  <jvdelisle@gcc.gnu>
	    Dominique d'Humieres  <dominiq@lps.ens.fr>
	    Steven G. Kargl  <kargl@gcc.gnu.org>

	PR libfortran/59700
	PR libfortran/59764
	* io/io.h (struct st_parameter_dt): Assign expanded_read flag to
	unused bit. Define new variable line_buffer_pos.
	* io/list_read.c (free_saved, next_char, l_push_char,
	read_logical, read_real): Replace use of item_count with
	line_buffer_pos for line_buffer look ahead.
	(read_logical, read_integer, parse_real, read_real, check_type):
	Adjust location of free_line to after generating error messages
	to retain the correct item count for the message.

Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>
Co-Authored-By: Steven G. Kargl <kargl@gcc.gnu.org>

From-SVN: r206553
2014-01-11 18:57:20 +00:00
Bin Cheng
2c40742689 tree-ssa-loop-ivopts.c (iv_ca_narrow): New parameter.
* tree-ssa-loop-ivopts.c (iv_ca_narrow): New parameter.
	Start narrowing with START.  Apply candidate-use pair
	and check overall cost in narrowing.
	(iv_ca_prune): Pass new argument.

From-SVN: r206552
2014-01-11 09:33:39 +00:00
GCC Administrator
730e409386 Daily bump.
From-SVN: r206548
2014-01-11 00:16:58 +00:00
Jeff Law
7e41c852e3 re PR middle-end/59743 (ICE: Segmentation fault)
PR middle-end/59743
	* ree.c (combine_reaching_defs): Ensure the defining statement
	occurs before the extension when optimizing extensions with
	different source and destination hard registers.

	PR middle-end/59743
	* gcc.c-torture/compile/pr59743.c: New test.

From-SVN: r206545
2014-01-10 15:13:18 -07:00
Jan Hubicka
b270b096a1 re PR middle-end/58585 (ICE in ipa with virtual inheritance)
PR ipa/58585
	* ipa-devirt.c (build_type_inheritance_graph): Also add types of vtables
	into the type inheritance graph.

	* g++.dg/torture/pr58585.C: New testcase.

From-SVN: r206543
2014-01-10 21:34:37 +00:00
Jakub Jelinek
0d6d7b9a20 re PR rtl-optimization/59754 ([ree.c] Incorrect merge while working with vector registers)
PR rtl-optimization/59754
	* ree.c (combine_reaching_defs): Disallow !SCALAR_INT_MODE_P
	modes in the REGNO != REGNO case.

From-SVN: r206542
2014-01-10 22:27:52 +01:00
Bill Schmidt
110132c131 rs6000-builtin.def: Fix pasto for VPKSDUS.
2014-01-10  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* config/rs6000/rs6000-builtin.def: Fix pasto for VPKSDUS.

From-SVN: r206541
2014-01-10 21:26:25 +00:00
Jakub Jelinek
4f87d581ad re PR tree-optimization/59745 (internal compiler error: tree check: expected tree that contains 'typed' structure, have '<invalid tree code>' in operand_equal_p, at fold-const.c:2492)
PR tree-optimization/59745
	* tree-predcom.c (tree_predictive_commoning_loop): Call
	free_affine_expand_cache if giving up because components is NULL.

From-SVN: r206540
2014-01-10 21:37:52 +01:00
Jakub Jelinek
5da969605f target-globals.c (save_target_globals): Allocate < 4KB structs using GC in payload of target_globals struct instead of...
* target-globals.c (save_target_globals): Allocate < 4KB structs using
	GC in payload of target_globals struct instead of allocating them on
	the heap and the larger structs separately using GC.
	* target-globals.h (struct target_globals): Make regs, hard_regs,
	reload, expmed, ira, ira_int and lra_fields GTY((atomic)) instead
	of GTY((skip)) and change type to void *.
	(reset_target_globals): Cast loads from those fields to corresponding
	types.

From-SVN: r206539
2014-01-10 21:25:05 +01:00
Hans-Peter Nilsson
322b9977d2 * gcc.dg/pr46309.c: Disable for cris*-*-*.
From-SVN: r206537
2014-01-10 19:18:34 +00:00
Steve Ellcey
1aa26aacc4 re PR plugins/59335 (Plugin doesn't build on trunk)
2014-01-10  Steve Ellcey  <sellcey@mips.com>

	PR plugins/59335
	* Makefile.in (PLUGIN_HEADERS): Add gimplify.h, gimple-iterator.h,
	gimple-ssa.h, fold-const.h, tree-cfg.h, tree-into-ssa.h,
	tree-ssanames.h, print-tree.h, varasm.h, and context.h.

From-SVN: r206535
2014-01-10 17:54:10 +00:00
Eric Botcazou
8566e0e726 * gcc.target/arm/neon-nested-apcs.c: Tweak dg directives.
From-SVN: r206532
2014-01-10 16:10:37 +00:00
Richard Earnshaw
7783a24674 re PR target/59744 (miscompilation of unsigned comparison on aarch64)
PR target/59744
Fix ChangeLog typos in previous commit (r206529).

From-SVN: r206530
2014-01-10 15:21:21 +00:00
Richard Earnshaw
1c992d1e6b re PR c++/9744 (Explicit parameterization of templated return value fails within templated function)
PR target/9744

gcc:
	* aarch64-modes.def (CC_Zmode): New flags mode.
	* aarch64.c (aarch64_select_cc_mode): Only allow NEG when the condition
	represents an equality.
	(aarch64_get_condition_code0): Handle CC_Zmode.
	* aarch64.md (compare_neg<mode>): Restrict to equality operations.

gcc/testsuite:
	* gcc.target/aarch64/cmn-neg.c: Use equality comparisons.
	* gcc.target/aarch64/cmn-neg2.c: New test.

From-SVN: r206529
2014-01-10 15:12:03 +00:00
Andreas Krebbel
86464cbd91 s390.c (s390_expand_tbegin): Remove jump over CC extraction in good case.
2014-01-10  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/s390/s390.c (s390_expand_tbegin): Remove jump over CC
	extraction in good case.

From-SVN: r206527
2014-01-10 14:59:41 +00:00
Jonathan Wakely
48c7451eee re PR libstdc++/59699 (Effective C++ has moved)
PR libstdc++/59699
	* doc/xml/manual/support.xml (std.support.types.null): Update links.

From-SVN: r206526
2014-01-10 14:30:32 +00:00
Jonathan Wakely
b1fb52ca2e re PR libstdc++/59687 (The description of ios::noreplace is hilarious)
PR libstdc++/59687
	* doc/xml/manual/backwards_compatibility.xml
	(backwards.third.nocreate_noreplace): Correct and expand.

From-SVN: r206525
2014-01-10 14:30:27 +00:00
Jonathan Wakely
92bf138207 re PR libstdc++/59698 (The type of NULL is described elsewhere)
PR libstdc++/59698
	* doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
	and stylistic improvements.
	* doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
	and update for C++11.
	* doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.

From-SVN: r206524
2014-01-10 14:30:21 +00:00
Richard Biener
5e6667b25b re PR tree-optimization/59374 (-ftree-slp-vectorize breaks unique_ptr's move constructor)
2014-01-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/59374
	* tree-vect-slp.c (vect_slp_analyze_bb_1): Move dependence
	checking after SLP discovery.  Mark stmts not participating
	in any SLP instance properly.

	* gcc.dg/torture/pr59374-3.c: New testcase.

From-SVN: r206523
2014-01-10 13:07:42 +00:00
Kyrylo Tkachov
5619162cdb arm.c (arm_new_rtx_costs): Use destination mode when handling a SET rtx.
2014-01-10  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm.c (arm_new_rtx_costs): Use destination mode
	when handling a SET rtx.

From-SVN: r206521
2014-01-10 11:48:37 +00:00
Kyrylo Tkachov
2d17b99fe3 arm-cores.def (cortex-a53): Specify FL_CRC32.
2014-01-10  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm-cores.def (cortex-a53): Specify FL_CRC32.
	(cortex-a57): Likewise.
	(cortex-a57.cortex-a53): Likewise. Remove redundant flags.

From-SVN: r206520
2014-01-10 11:47:04 +00:00
Kyrylo Tkachov
4b6af762b4 [gcc/testsuite/]
2014-01-10  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* lib/target-supports.exp
	(check_effective_target_arm_crypto_ok_nocache): New.
	(check_effective_target_arm_crypto_ok): Use above procedure.
	(add_options_for_arm_crypto): Use et_arm_crypto_flags.

From-SVN: r206519
2014-01-10 11:43:48 +00:00
Kyrylo Tkachov
bcca645ce1 arm.c (arm_init_iwmmxt_builtins): Skip non-iwmmxt builtins.
2014-01-10  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm.c (arm_init_iwmmxt_builtins): Skip
	non-iwmmxt builtins.

From-SVN: r206518
2014-01-10 11:42:03 +00:00
Tom de Vries
91db35373a Note that pass_pre destroys PROP_no_crit_edges
2014-01-09  Tom de Vries  <tom@codesourcery.com>

	* tree-ssa-pre.c (pass_data_pre): Add comment about PROP_no_crit_edges
	in properties_required.  Add PROP_no_crit_edges to properties_destroyed.
	* tree-ssa-sink.c (pass_data_sink_code): Remove PROP_no_crit_edges
	from properties_required.

From-SVN: r206517
2014-01-10 10:37:22 +00:00
Jan Hubicka
a3788dde0e re PR c++/58252 (ice in gimple_get_virt_method_for_binfo with -O2)
PR ipa/58252
	PR ipa/59226
	* ipa-devirt.c record_target_from_binfo): Take as argument
	stack of binfos and lookup matching one for virtual inheritance.
	(possible_polymorphic_call_targets_1): Update.

	* g++.dg/ipa/devirt-20.C: New testcase.	
	* g++.dg/torture/pr58252.C: Likewise.
	* g++.dg/torture/pr59226.C: Likewise.

From-SVN: r206516
2014-01-10 09:33:24 +00:00
Max Ostapenko
6606b43e46 no-asan-stack.c: New test.
2014-01-10  Max Ostapenko  <m.ostapenko@partner.samsung.com>

	* c-c++-common/asan/no-asan-stack.c: New test.

From-SVN: r206515
2014-01-10 11:16:39 +02:00
Huacai Chen
87ed883e4a driver-native.c (host_detect_local_cpu): Handle new kernel strings for Loongson-2E/2F/3A.
gcc/
2014-01-10  Huacai Chen  <chenhc@lemote.com>

	* config/mips/driver-native.c (host_detect_local_cpu): Handle new
	kernel strings for Loongson-2E/2F/3A.

From-SVN: r206512
2014-01-10 08:51:40 +00:00
Ian Lance Taylor
6ddb62884f compiler: Use backend interface for slice info.
From-SVN: r206509
2014-01-10 06:42:08 +00:00
GCC Administrator
7f003d8337 Daily bump.
From-SVN: r206507
2014-01-10 00:16:59 +00:00
Jonathan Wakely
4bc0ec3261 re PR libstdc++/59680 (Compile error in thread.cc)
PR libstdc++/59680
	* src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.

From-SVN: r206504
2014-01-09 23:39:31 +00:00
Jakub Jelinek
cd4447e235 re PR middle-end/59670 (ICE: expected gimple_call(error_mark), have gimple_assign(plus_expr) in gimple_call_internal_p, at gimple.h:2432)
PR middle-end/59670
	* tree-vect-data-refs.c (vect_analyze_data_refs): Check
	is_gimple_call before calling gimple_call_internal_p.

	* gcc.dg/pr59670.c: New test.

From-SVN: r206503
2014-01-10 00:39:06 +01:00
Ian Lance Taylor
4bc44ceb91 compiler: Add flattening pass
From-SVN: r206502
2014-01-09 23:28:10 +00:00
Ian Lance Taylor
abd471378c runtime: fix 32-bit malloc for pointers >= 0x80000000
The spans array is allocated in runtime_mallocinit.  On a
32-bit system the number of entries in the spans array is
MaxArena32 / PageSize, which (2U << 30) / (1 << 12) == (1 << 19).
So we are allocating an array that can hold 19 bits for an
index that can hold 20 bits.  According to the comment in the
function, this is intentional: we only allocate enough spans
(and bitmaps) for a 2G arena, because allocating more would
probably be wasteful.

But since the span index is simply the upper 20 bits of the
memory address, this scheme only works if memory addresses are
limited to the low 2G of memory.  That would be OK if we were
careful to enforce it, but we're not.  What we are careful to
enforce, in functions like runtime_MHeap_SysAlloc, is that we
always return addresses between the heap's arena_start and
arena_start + MaxArena32.

We generally get away with it because we start allocating just
after the program end, so we only run into trouble with
programs that allocate a lot of memory, enough to get past
address 0x80000000.

This changes the code that computes a span index to subtract
arena_start on 32-bit systems just as we currently do on
64-bit systems.

From-SVN: r206501
2014-01-09 23:16:56 +00:00
Steve Ellcey
3fadf78ac8 Makefile.in (TREE_FLOW_H): Remove.
2014-01-09  Steve Ellcey  <sellcey@mips.com>

	* Makefile.in (TREE_FLOW_H): Remove.
	(TREE_SSA_H): Add file names from tree-flow.h.
	* doc/tree-ssa.texi (Annotations): Remove reference to tree-flow.h
	* tree.h: Remove tree-flow.h reference.
	* hash-table.h: Remove tree-flow.h reference.
	* tree-ssa-loop-niter.c (dump_affine_iv): Replace tree-flow.h
	reference with tree-ssa-loop.h.

From-SVN: r206496
2014-01-09 21:02:43 +00:00
Steve Ellcey
7f216cb269 delay-slot-1.c: Restrict -mabi=64 to 64 bit processors.
2014-01-09  Steve Ellcey  <sellcey@mips.com>

	* gcc.dg/delay-slot-1.c: Restrict -mabi=64 to 64 bit processors.

From-SVN: r206495
2014-01-09 21:00:42 +00:00
Bill Schmidt
6edc217dc1 invoke.texi: Add -maltivec={be,le} options...
2014-01-09  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* doc/invoke.texi: Add -maltivec={be,le} options, and document
	default element-order behavior for -maltivec.
	* config/rs6000/rs6000.opt: Add -maltivec={be,le} options.
	* config/rs6000/rs6000.c (rs6000_option_override_internal): Ensure
	that -maltivec={le,be} implies -maltivec; disallow -maltivec=le
	when targeting big endian, at least for now.
	* config/rs6000/rs6000.h: Add #define of VECTOR_ELT_ORDER_BIG.

From-SVN: r206494
2014-01-09 20:30:50 +00:00
Jakub Jelinek
3396aba538 re PR middle-end/47735 (Unnecessary adjustments to stack pointer)
PR middle-end/47735
	* cfgexpand.c (expand_one_var): For SSA_NAMEs, if the underlying
	var satisfies use_register_for_decl, just take into account type
	alignment, rather than decl alignment.

	* gcc.target/i386/pr47735.c: New test.

From-SVN: r206493
2014-01-09 21:12:36 +01:00
Jakub Jelinek
a70e9985fd re PR tree-optimization/59622 (internal compiler error: verify_gimple failed)
PR tree-optimization/59622
	* gimple-fold.c (gimple_fold_call): Fix a typo in message.  For
	__builtin_unreachable replace the OBJ_TYPE_REF call with a call to
	__builtin_unreachable and add if needed a setter of the lhs SSA_NAME.
	Don't devirtualize for inplace at all.  For targets.length () == 1,
	if the call is noreturn and cfun isn't in SSA form yet, clear lhs.

	* g++.dg/opt/pr59622-2.C: New test.
	* g++.dg/opt/pr59622-3.C: New test.
	* g++.dg/opt/pr59622-4.C: New test.
	* g++.dg/opt/pr59622-5.C: New test.

From-SVN: r206492
2014-01-09 21:09:33 +01:00
Richard Sandiford
94c13a0911 Fix up ChangeLog Copyright dates.
From-SVN: r206491
2014-01-09 21:08:22 +01:00