Commit Graph

117218 Commits

Author SHA1 Message Date
Jakub Jelinek c6133dbed2 dwarf2.def (DW_FORM_GNU_ref_alt, [...]): New forms.
* dwarf2.def (DW_FORM_GNU_ref_alt, DW_FORM_GNU_strp_alt): New
	forms.
	* dwarf2.h (enum dwarf_macro_record_type): Add
	DW_MACRO_GNU_define_indirect_alt, DW_MACRO_GNU_undef_indirect_alt
	and DW_MACRO_GNU_transparent_include_alt.

From-SVN: r188337
2012-06-08 20:48:46 +02:00
Georg-Johann Lay 102375cc16 avr.c (avr_case_values_threshold): Return 7.
* config/avr/avr.c (avr_case_values_threshold): Return 7.

From-SVN: r188336
2012-06-08 18:32:25 +00:00
Janus Weil 98cf47d1a5 re PR fortran/52552 ([OOP] ICE when trying to allocate non-allocatable object giving a dynamic type)
2012-06-08  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/52552
	* match.c (gfc_match_allocate): Modify order of checks. Change wording
	of error message. Remove FIXME note.
	* resolve.c (resolve_allocate_expr): Add a comment.

2012-06-08  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/52552
	* gfortran.dg/allocate_alloc_opt_1.f90: Modified.
	* gfortran.dg/allocate_class_1.f90: Modified.
	* gfortran.dg/allocate_with_typespec_4.f90: Modified.
	* gfortran.dg/allocate_class_2.f90: New.

From-SVN: r188335
2012-06-08 19:26:11 +02:00
Hans-Peter Nilsson ef0cd8fe8b Fix discrepancies in submitted patch vs.
Fix discrepancies in submitted patch vs. committed patch for CRIS
-march= fix change on 2012-05-31 and ditto typo ChangeLog.

From-SVN: r188324
2012-06-08 02:25:08 +00:00
GCC Administrator f53448204e Daily bump.
From-SVN: r188322
2012-06-08 00:18:06 +00:00
Hans-Peter Nilsson 8cb0d9b97f re PR middle-end/53535 (non-aligned memset on non-strict-alignment targets not optimized where aligned memset is)
PR middle-end/53535
	* gcc.dg/pr46647.c: xfail for cris-* and crisv32-*.

From-SVN: r188317
2012-06-07 20:44:01 +00:00
Thomas Koenig 1acbf7a1bf re PR fortran/52861 ((missed optimisation) missed transformation to memset with -O3)
2012-06-07  Thomas König  <tkoenig@gcc.gnu.org>

	PR fortran/52861
	* frontend-passes.c (optimize_assignment):  Don't set the
	length of an empty string for deferred-length character
	variables.

2012-06-07  Thomas König  <tkoenig@gcc.gnu.org>

	PR fortran/52861
	* gfortran.dg/string_assign_2.f90:  New test case.

From-SVN: r188305
2012-06-07 14:33:51 +00:00
Andreas Schwab 17c4f786f5 genhooks.c (main): Set progname.
* genhooks.c (main): Set progname.
(emit_documentation): Remove variable found_start, always bail out
when a place is missing.
* doc/tm.texi.in (C++ ABI): Add @hook
TARGET_CXX_DECL_MANGLING_CONTEXT.

From-SVN: r188302
2012-06-07 12:12:01 +00:00
Thomas Koenig 94d145bf5b re PR fortran/52861 ((missed optimisation) missed transformation to memset with -O3)
2012-06-07  Thomas König  <tkoenig@gcc.gnu.org>

	PR fortran/52861
	* frontend-passes (empty_string):  Add prototype.
	(optimize_assignment):  Set the length of an empty string
	constant to zero.

2012-06-07  Thomas König  <tkoenig@gcc.gnu.org>

	PR fortran/52861
	* gfortran.dg/string_assign_1.f90:  New test case.

From-SVN: r188300
2012-06-07 11:11:55 +00:00
Ian Lance Taylor d8a5e488d5 compiler: Fix taking address of field of local variable.
From-SVN: r188299
2012-06-07 08:06:08 +00:00
Jakub Jelinek 26127932dd re PR c/53580 (Internal Segmentation fault in nested "omp parallel", "omp parallel for" and "omp parallel for reduction" Directives)
PR middle-end/53580
	* omp-low.c (scan_omp): Change first argument to
	gimple_seq *, call walk_gimple_seq_mod instead of
	walk_gimple_seq.
	(scan_sharing_clauses, scan_omp_parallel, scan_omp_task,
	scan_omp_for, scan_omp_sections, scan_omp_single,
	execute_lower_omp): Adjust callers.
	(scan_omp_1_stmt): Likewise.  If check_omp_nesting_restrictions
	returns false, replace stmt with GIMPLE_NOP.
	(check_omp_nesting_restrictions): Instead of issuing warnings,
	issue errors and return false if any errors were reported.

	* gcc.dg/gomp/nesting-1.c: Expect errors rather than warnings.
	* gcc.dg/gomp/critical-4.c: Likewise.
	* gfortran.dg/gomp/appendix-a/a.35.1.f90: Likewise.
	* gfortran.dg/gomp/appendix-a/a.35.3.f90: Likewise.
	* gfortran.dg/gomp/appendix-a/a.35.4.f90: Likewise.
	* gfortran.dg/gomp/appendix-a/a.35.6.f90: Likewise.
	* c-c++-common/gomp/pr53580.c: New test.

	* testsuite/libgomp.c/pr26943-2.c: Remove #pragma omp barrier,
	use GOMP_barrier () call instead.
	* testsuite/libgomp.c/pr26943-3.c: Likewise.
	* testsuite/libgomp.c/pr26943-4.c: Likewise.
	* testsuite/libgomp.fortran/vla4.f90: Remove !$omp barrier,
	call GOMP_barrier instead.
	* testsuite/libgomp.fortran/vla5.f90: Likewise.

From-SVN: r188298
2012-06-07 08:36:55 +02:00
Ian Lance Taylor f3dbbfcedf runtime: Fix printing of names in stack dumps.
From-SVN: r188297
2012-06-07 06:34:52 +00:00
Ian Lance Taylor c59a4d0fa6 compiler: Fix unsafe.Sizeof for named structs with named struct fields.
From-SVN: r188295
2012-06-07 05:49:44 +00:00
Fabien Chêne cba0366cac re PR c++/51214 ([C++11] name lookup issue with c++11 enums)
gcc/testsuite/ChangeLog

2012-06-07  Fabien Chêne  <fabien@gcc.gnu.org>

	PR c++/51214
	* g++.dg/cpp0x/forw_enum11.C: New.

gcc/cp/ChangeLog

2012-06-07  Fabien Chêne  <fabien@gcc.gnu.org>

	PR c++/51214
	* cp-tree.h (insert_late_enum_def_into_classtype_sorted_fields):
	Declare.
	* class.c (insert_into_classtype_sorted_fields): New.
	(add_enum_fields_to_record_type): New.
	(count_fields): Adjust the comment.
	(add_fields_to_record_type): Likewise.
	(finish_struct_1): Move the code that inserts the fields for the
	sorted case, into insert_into_classtype_sorted_fields, and call
	it.
	(insert_late_enum_def_into_classtype_sorted_fields): Define.
	* decl.c (finish_enum_value_list): Call
	insert_late_enum_def_into_classtype_sorted_fields if a late enum
	definition is encountered.

From-SVN: r188294
2012-06-07 07:36:18 +02:00
Ian Lance Taylor 0d7afaa749 runtime: Use dl_iterate_phdr to get TLS size.
From-SVN: r188290
2012-06-07 00:55:20 +00:00
GCC Administrator 079d26b9d6 Daily bump.
From-SVN: r188289
2012-06-07 00:18:57 +00:00
Sterling Augustine c265f413f4 Move Changelog entries to the right file.
From-SVN: r188284
2012-06-06 23:06:06 +00:00
Paolo Carlini 4b978f9691 re PR c++/53567 ("ICE: Error reporting routines re-entered" on missing enum entry)
/cp
2012-06-06  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/53567
	* typeck.c (cp_perform_integral_promotions): New, like
	perform_integral_promotions but also takes a tsubst_flags_t parameter.
	(pointer_diff): Add tsubst_flags_t parameter.
	(decay_conversion, cp_default_conversion, cp_build_array_ref,
	cp_build_binary_op, cp_build_unary_op, build_static_cast_1,
	build_reinterpret_cast_1, cp_build_modify_expr,
	convert_for_assignment): Adjust.
	* optimize.c (build_delete_destructor_body): Adjust.
	* init.c (expand_virtual_init, expand_default_init, build_new_1,
	build_new, build_vec_delete_1, build_vec_init, build_delete): Adjust.
	(construct_virtual_base): Adjust LOOKUP_COMPLAIN -> 0.
	* class.c (build_base_path): Adjust.
	* decl.c (compute_array_index_type, finish_destructor_body): Likewise.
	* method.c (synthesized_method_walk): Adjust flag and complain.
	* rtti.c (ifnonnull): Add tsubst_flags_t parameter.
	(build_typeid, build_dynamic_cast_1): Adjust.
	* except.c (initialize_handler_parm): Likewise.
	* typeck2.c (process_init_constructor_record): Likewise.
	* pt.c (tsubst_friend_class): Don't change flags.
	* semantics.c (finish_goto_stmt, handle_omp_for_class_iterator,
	finish_static_assert): Likewise.
	* parser.c (cp_parser_lookup_name): Just pass 0 as flags to
	lookup_name_real.
	* call.c (build_op_delete_call): Add tsubst_flags_t parameter.
	(convert_like_real, convert_arg_to_ellipsis, convert_for_arg_passing):
	Adjust.
	(standard_conversion): Adjust LOOKUP_COMPLAIN -> 0.
	(implicit_conversion): Mask out tf_error with a FIXME.
	(build_user_type_conversion_1, build_new_op_1, build_over_call): Use
	complain & tf_error instead of flags & LOOKUP_COMPLAIN.
	* cvt.c (cp_convert_to_pointer, convert_to_pointer_force,
	build_up_reference, convert_to_reference, cp_convert,
	cp_convert_and_check, ocp_convert, convert_force): Add tsubst_flags_t
	parameter.
	(convert_to_reference, ocp_convert): Use complain & tf_error instead
	of flags & LOOKUP_COMPLAIN.
	(convert_force): Adjust LOOKUP_COMPLAIN -> 0.
	* name-lookup.c (identifier_type_value_1, lookup_qualified_name,
	lookup_name_real, lookup_function_nonclass, lookup_name,
	lookup_name_prefer_type): Adjust LOOKUP_COMPLAIN -> 0.
	* cp-tree.h: Adjust prototypes; remove LOOKUP_COMPLAIN.

/testsuite
2012-06-06  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/53567
	* g++.dg/cpp0x/alias-decl-19.C: New.

From-SVN: r188283
2012-06-06 23:01:45 +00:00
Steven Bosscher 6f07a821c4 invoke.texi (fconserve-space): Remove documentation.
gcc/
	* doc/invoke.texi (fconserve-space): Remove documentation.

c-family/
	* c.opt (fconserve-space): Turn into a no-op.

cp/
	* decl.c: Do not include output.h.
	(start_decl): Remove code for flag_conserve_space.

testsuite/
	* g++.old-deja/g++.brendan/array1.C: Remove dg-options.

From-SVN: r188282
2012-06-06 21:38:20 +00:00
Jakub Jelinek 43fa5db598 re PR libgomp/52993 (gomp_init_nest_lock_25: possible bad call to memset)
PR libgomp/52993
	* config/linux/lock.c (gomp_init_nest_lock_25): Fix up last
	argument to memset call.

From-SVN: r188276
2012-06-06 20:31:06 +02:00
Uros Bizjak 3c6a5c3f07 avx-os-support.h (XCR_XFEATURE_ENABLED_MASK): New.
* gcc.target/i386/avx-os-support.h (XCR_XFEATURE_ENABLED_MASK): New.
	(XSTATE_FP): Ditto.
	(XSTATE_SSE): Ditto.
	(XSTATE_YMM): Ditto.
	(avx_os_support): Use new defines.

From-SVN: r188275
2012-06-06 20:11:39 +02:00
Edmar Wienskoski ce79b85757 rs6000-tables.opt: Regenerated.
2012-06-06  Edmar Wienskoski  <edmar@freescale.com>

	* config/rs6000/rs6000-tables.opt: Regenerated.

From-SVN: r188274
2012-06-06 18:09:18 +00:00
Georg-Johann Lay 9ee5885b86 Fix comments
From-SVN: r188270
2012-06-06 16:40:06 +00:00
Georg-Johann Lay 560c33e0ba Fix comments
From-SVN: r188269
2012-06-06 16:39:52 +00:00
Richard Guenther c9846ff91e re PR fortran/32380 (misaligned stores don't get vectorized)
2012-06-06  Richard Guenther  <rguenther@suse.de>

	PR testsuite/32380
	* gfortran.dg/vect/pr32380.f: Adjust number of expected vectorized
	loops.

From-SVN: r188266
2012-06-06 12:53:30 +00:00
Marek Polacek 9adf6490fc The new mklog script prints three spaces after the date part, which is wrong.
The new mklog script prints three spaces after the date part, which
is wrong.  Thus fixed by adjusting the split pattern.  Tested manually.

2012-05-31  Marek Polacek  <polacek@redhat.com>

       * mklog: Prevent printing three spaces after the date.

From-SVN: r188265
2012-06-06 08:50:55 -04:00
Richard Biener ce6d2586b5 re PR c++/52841 (error: type 'Solvable' is not a base type for type 'Resolvable')
2012-06-06  Fabien Chene  <fabien@gcc.gnu.org>

	PR c++/52841
	* parser.c (cp_parser_alias_declaration): Return earlier
	if an error occured.

	* g++.dg/cpp0x/pr52841.C: New testcase.

From-SVN: r188264
2012-06-06 12:22:16 +00:00
Richard Guenther d0582dc181 re PR tree-optimization/53081 (memcpy/memset loop recognition)
2012-06-06  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/53081
	* tree-data-ref.h (adjacent_store_dr_p): Rename to ...
	(adjacent_dr_p): ... this and make it work for reads, too.
	* tree-loop-distribution.c (enum partition_kind): Add PKIND_MEMCPY.
	(struct partition_s): Change main_stmt to main_dr, add
	secondary_dr member.
	(build_size_arg_loc): Change to date data-reference and not
	gimplify here.
	(build_addr_arg_loc): New function split out from ...
	(generate_memset_builtin): ... here.  Use it and simplify.
	(generate_memcpy_builtin): New function.
	(generate_code_for_partition): Adjust.
	(classify_partition): Streamline pattern detection.  Detect
	memcpy.
	(ldist_gen): Adjust.
	(tree_loop_distribution): Adjust seed statements for memcpy
	recognition.

	* gcc.dg/tree-ssa/ldist-20.c: New testcase.
	* gcc.dg/tree-ssa/loop-19.c: Add -fno-tree-loop-distribute-patterns.

From-SVN: r188261
2012-06-06 09:45:27 +00:00
Matt Turner 4ad4fa6334 For Matt Turner.
2012-06-06  Matt Turner  <mattst88@gmail.com>

	* config/arm/mmintrin.h (_mm_empty): New.
	 (_m_empty): New.

From-SVN: r188259
2012-06-06 09:32:23 +00:00
Richard Sandiford c881de027c invoke.texi (sched-pressure-algorithm): Document new --param.
gcc/
	* doc/invoke.texi (sched-pressure-algorithm): Document new --param.
	* common.opt (fsched-pressure-algorithm=): Remove.
	* flag-types.h (sched_pressure_algorithm): Move to...
	* sched-int.h (sched_pressure_algorithm): ...here.
	* params.def (sched-pressure-algorithm): New param.
	* haifa-sched.c (sched_init): Use it to initialize sched_pressure.
	* common/config/s390/s390-common.c (s390_option_optimization_table):
	Remove OPT_fsched_pressure_algorithm_ entry.
	* config/s390/s390.c (s390_option_override): Set a default value for
	PARAM_SCHED_PRESSURE_ALGORITHM.

From-SVN: r188258
2012-06-06 09:12:58 +00:00
GCC Administrator 14ae3cbc62 Daily bump.
From-SVN: r188257
2012-06-06 00:18:51 +00:00
Michael Meissner d7685183c1 re PR target/53487 (Unrecognizable insn for conditional move)
[gcc]
2012-06-04  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/53487
	* config/rs6000/rs6000.c (rs6000_generate_compare): If we are
	doing an unsigned compare, make sure the second argument is not a
	negative constant.
	(rs6000_emit_cmove): Don't allow floating point comparisons when
	generating ISEL moves.

[gcc/testsuite]
2012-06-04  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* gcc.target/powerpc/pr53487.c: New test.

From-SVN: r188248
2012-06-05 19:40:34 +00:00
Pat Haugen 951c68fac8 lhs-1.c: Use parm instead of stack space.
* gcc.target/powerpc/lhs-1.c: Use parm instead of stack space.

From-SVN: r188247
2012-06-05 19:06:57 +00:00
Edmar Wienskoski a6dac809f8 2012-06-05 Edmar Wienskoski <edmar@freescale.com>
* Fixed date in ChangeLog

From-SVN: r188245
2012-06-05 16:12:00 +00:00
Edmar Wienskoski 683ed19e9f e5500.md: New file.
2012-06-01  Edmar Wienskoski  <edmar@freescale.com>

	* config/rs6000/e5500.md: New file.
	* config/rs6000/e6500.md: New file.
	* config/rs6000/rs6000.c (processor_costs): Add new costs for
	e5500 and e6500.
	(rs6000_option_override_internal): Altivec and Spe options not
	allowed with e5500. Spe options not allowed with e6500. Increase
	move inline limit for e5500 and e6500. Disable string instructions
	for e5500 and e6500. Enable branch targets alignment for e5500 and
	e6500. Initialize rs6000_cost for e5500 and e6500.
	(rs6000_adjust_cost): Add extra scheduling cycles between compare
	and brnach for e5500 and e6500.
	(rs6000_issue_rate): Set issue rate for e5500 and e6500.
	* config/rs6000/rs6000-cpus.def: Add cpu definitions for e5500 and
	e6500.
	* config/rs6000/rs6000.h (ASM_CPU_SPEC): Add e5500 and e6500.
	* config/rs6000/rs6000.md (define_attr "cpu"): Add ppce5500 and
	ppce6500.
	Include e5500.md and e6500.md.
	* config/rs6000/rs6000-opt.h (processor_type): Add
	PROCESSOR_PPCE5500 and PROCESSOR_PPCE6500.
	* config.gcc (cpu_is_64bit): Add new cores e5500, e6500.
	(powerpc*-*-*): Add new cores e5500, e6500.
	* doc/invoke.texi: (item -mcpu): Add e5500 and e6500 to list of cpus.

gcc/testsuite
2012-06-01  Edmar Wienskoski  <edmar@freescale.com>

	* gcc.dg/tree-ssa/vector-3.c: Adjust regular expression.

From-SVN: r188244
2012-06-05 16:05:16 +00:00
Richard Guenther d4d5e1468f tree-vect-data-refs.c (vect_analyze_data_refs): Fix last change.
2012-06-05  Richard Guenther  <rguenther@suse.de>

	* tree-vect-data-refs.c (vect_analyze_data_refs): Fix last
	change.

From-SVN: r188243
2012-06-05 14:30:35 +00:00
Dimitrios Apostolou d86d21192b line-map.c (linemap_enter_macro): Don't zero max_column_hint in every macro.
* line-map.c (linemap_enter_macro): Don't zero max_column_hint in
 	every macro. This improves performance by reducing the number of
 	reallocations when track-macro-expansion is on.

From-SVN: r188242
2012-06-05 10:25:46 -04:00
H.J. Lu 9287b16892 Select x32 run-time library for --with-abi={x32|mx32}
PR target/53575
	* config.gcc: Select x32 run-time library if --with-abi={x32|mx32}
	is used for x86_64-*-*.

From-SVN: r188240
2012-06-05 06:12:52 -07:00
Ian Lance Taylor 9bb40b3b23 runtime: Comment out code adding TLS size to stack size.
From-SVN: r188238
2012-06-05 13:12:13 +00:00
Richard Guenther 1aedeafec2 re PR middle-end/30442 (Expanded array initialization can use memset builtin function)
2012-06-05  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/30442
	* tree-vect-data-refs.c (vect_analyze_data_refs): For basic-block
	vectorization stop analysis at the first stmt we cannot compute
	a data-reference for instead of giving up completely.

	* gcc.dg/vect/bb-slp-30.c: New testcase.

From-SVN: r188235
2012-06-05 12:38:26 +00:00
Richard Guenther 7ad672e46e tree-loop-distribution.c (struct partition_s): Add has_writes member.
2012-06-05  Richard Guenther  <rguenther@suse.de>

	* tree-loop-distribution.c (struct partition_s): Add has_writes
	member.
	(partition_alloc): Initialize it.
	(partition_has_writes): New function.
	(rdg_flag_uses): Adjust.
	(rdg_flag_vertex): Likewise.
	(rdg_flag_vertex_and_dependent): Likewise.
	(rdg_flag_loop_exits): Likewise.
	(build_rdg_partition_for_component): Likewise.
	(rdg_build_partitions): Likewise.

From-SVN: r188233
2012-06-05 11:27:30 +00:00
Richard Guenther b6dd52618f re PR tree-optimization/53081 (memcpy/memset loop recognition)
2012-06-05  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/53081
	* tree-loop-distribution.c (generate_memset_builtin): Handle all
	kinds of byte-sized stores.
	(classify_partition): Likewise.
	(tree_loop_distribution): Adjust seed statements used for
	!flag_tree_loop_distribution.

	* gcc.dg/tree-ssa/ldist-19.c: New testcase.
	* gcc.c-torture/execute/builtins/builtins.exp: Always pass
	-fno-tree-loop-distribute-patterns.

From-SVN: r188232
2012-06-05 09:24:43 +00:00
Ian Lance Taylor 44072af5b0 runtime: Fix call to _dl_get_tls_static_info for i386.
From-SVN: r188230
2012-06-05 06:19:19 +00:00
Ian Lance Taylor 70b9f51628 mksysinfo: Fix for recent change to glibc <sys/resource.h>.
From-SVN: r188228
2012-06-05 05:32:54 +00:00
Mike Stump c11965508b Fix typo.
From-SVN: r188227
2012-06-05 03:11:59 +00:00
Mike Stump 5751cb9c6d Fix typo.
From-SVN: r188226
2012-06-05 02:46:52 +00:00
Alan Modra 46f714c862 rs6000.c (ptr_regno_for_savres): Comment.
gcc/
	* config/rs6000/rs6000.c (ptr_regno_for_savres): Comment.
	(rs6000_emit_prologue): Ensure register used for inline saves
	of vector regs is not the static chain register.  Revise comment.
gcc/testsuite/
	* gcc.target/powerpc/savres.c: Add -mdynamic-no-pic for darwin.
	Check static chain in nested funcs.

From-SVN: r188225
2012-06-05 11:29:14 +09:30
Oleg Endo 6d1f6affb2 md.texi (Standard Pattern Names For Generation): Document sincos pattern.
* doc/md.texi (Standard Pattern Names For Generation): Document
	sincos pattern.

From-SVN: r188219
2012-06-05 00:51:04 +00:00
Diego Novillo 4da37205ac Add ChangeLog entry for previous commit.
From-SVN: r188218
2012-06-04 20:36:08 -04:00
Diego Novillo 831315d08c Extend validate_failures.py to run outside the build directory.
This patch adds three new arguments to validate_failures.py so
it can be used outside the build directory:

--ignore_missing_failures
    When a failure is expected in the manifest but it is not found in
    the actual results, the script produces a note alerting to this
    fact. This means that the expected failure has been fixed, or it
    did not run, or it may simply be flaky.

    With this option, one can ask the script not to show the missing
    failures.

--manifest
    Name of the manifest file to use.  By default, the script will
    look for the manifest file in the source directory associated with
    this build.  With this option, one can point to any arbitrary
    manifest file.  I renamed the old --manifest flag to
    --produce_manifest.

--results
    Space-separated list of .sum files with the testing results to
    check. The only content needed from these files are the lines
    starting with FAIL, XPASS or UNRESOLVED.

From-SVN: r188217
2012-06-04 20:28:56 -04:00