Commit Graph

100030 Commits

Author SHA1 Message Date
Jakub Jelinek
1de12eab74 re PR debug/44028 (-fcompare-debug failure (length) with -O3 -fsched-pressure -fschedule-insns)
PR debug/44028
	* haifa-sched.c (schedule_insn): When clearing INSN_VAR_LOCATION_LOC,
	clear also INSN_REG_USE_LIST.

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

From-SVN: r159240
2010-05-10 20:28:03 +02:00
Rainer Orth
e472d6bf32 * config/mips/mips.c (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): Undef.
From-SVN: r159239
2010-05-10 18:26:12 +00:00
Daniel Franke
4e42ad6647 re PR fortran/27866 (Warn when casting, e.g. assigning a double precision to a real)
gcc/fortran/:
2010-05-10  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/27866
	PR fortran/35003
	PR fortran/42809
	* intrinsic.c (gfc_convert_type_warn): Be more discriminative
	about conversion warnings.

gcc/testsuite/:
2010-05-08  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/27866
	PR fortran/35003
	PR fortran/42809
	* gfortran.dg/array_constructor_type_17.f03: Updated match string.
	* gfortran.dg/warn_conversion.f90: New.

From-SVN: r159238
2010-05-10 13:10:53 -04:00
Jan Hubicka
6cd174f64a * lto-stramer-out.c (produce_asm_for_decls): Correct accidentally commited change.
From-SVN: r159234
2010-05-10 16:26:26 +00:00
Jan Hubicka
5c4f225fcf passes.c (ipa_write_summaries_1, [...]): Allocate encoders.
* passes.c (ipa_write_summaries_1, ipa_write_optimization_summaries): Allocate
	encoders.
	* lto-section-out.c (lto_new_out_decl_state): Do not allocate it here.
	* lto-streamer.c (lto_streamer_cache_insert_1): Use alloc pool.
	(lto_streamer_cache_create): Init alloc pool.
	(lto_streamer_cache_delete): Free alloc pool.
	* lto-streamer.h: Include alloc pool.
	(lto_streamer_cache_d): Use alloc pool.
	* lto-stramer-out.c (produce_asm_for_decls): Delete fn_out_states.

From-SVN: r159230
2010-05-10 16:13:52 +00:00
Jan Hubicka
de61f46712 Makefile.in (cgraphbuild.o): Add dependency on except.h.
* Makefile.in (cgraphbuild.o): Add dependency on except.h.
	* cgraphbuild.c: Include except.h
	(record_type_list, record_eh_tables): New function.
	(build_cgraph_edges, rebuild_cgraph_edges): Use it.

From-SVN: r159229
2010-05-10 16:00:40 +00:00
Jan Hubicka
e4fa83d33b crtstuff.c (force_to_data, [...]): Attribute as used rather than unused.
* crtstuff.c (force_to_data, __do_global_dtors_aux_fini_array_entry,
	__frame_dummy_init_array_entry, force_to_data): Attribute as used
	rather than unused.

From-SVN: r159228
2010-05-10 15:53:04 +00:00
Uros Bizjak
62e59133e3 ChangeLog: Fix whitespace.
* ChangeLog: Fix whitespace.
	* testsuite/ChangeLog: Ditto.

From-SVN: r159227
2010-05-10 17:23:29 +02:00
Michael Matz
8a9ecffd3f tree-ssa-reassoc.c (undistribute_ops_list): Use create_tmp_reg.
* tree-ssa-reassoc.c (undistribute_ops_list): Use create_tmp_reg.
	(can_reassociate_p): Use FLOAT_TYPE_P.
	* tree-vectorizer.h (vect_is_simple_reduction): Rename to ...
	(vect_force_simple_reduction): ... this.
	* tree-parloops.c (gather_scalar_reductions): Use 
	vect_force_simple_reduction.
	* tree-vect-loop.c (vect_is_simple_reduction_1): Rename from
	vect_is_simple_reduction, add modify argument, if true rewrite
	"a-b" into "a+(-b)".
	(vect_is_simple_reduction, vect_force_simple_reduction): New
	functions.
	(vect_analyze_scalar_cycles_1): Use vect_force_simple_reduction.

testsuite/
	* gcc.dg/vect/fast-math-vect-reduc-8.c: New test.

From-SVN: r159226
2010-05-10 14:31:37 +00:00
H.J. Lu
46044dd988 Nullify regno_allocno_map of the removed allocno.
gcc/

2010-05-10  H.J. Lu<hongjiu.lu@intel.com>
	    Vladimir Makarov<vmakarov@redhat.com>

	PR rtl-optimization/44012
	* ira-build.c (remove_unnecessary_allocnos): Nullify
	regno_allocno_map of the removed allocno.

gcc/testsuite/

2010-05-10  H.J. Lu  <hongjiu.lu@intel.com>

	PR rtl-optimization/44012
	* gcc.dg/pr44012.c: New.

From-SVN: r159223
2010-05-10 07:02:43 -07:00
Rainer Orth
6aaf13579f lto.exp (lto_prune_vis_warns): Renamed to lto_prune_warns.
* lib/lto.exp (lto_prune_vis_warns): Renamed to lto_prune_warns.
	Log text on entry and exit.
	Prune Sun ld warnings for common symbols with differing sizes.
	(lto-link-and-maybe-run): Change caller.

From-SVN: r159222
2010-05-10 13:45:23 +00:00
Rainer Orth
2e2b183b23 configure.ac (gcc_cv_ld_eh_gc_sections): Redirect objdump errors to /dev/null.
* configure.ac (gcc_cv_ld_eh_gc_sections): Redirect objdump errors
	to /dev/null.
	* configure: Regenerate.

From-SVN: r159220
2010-05-10 13:36:36 +00:00
Rainer Orth
a93e18990b sol2.c (solaris_assemble_visibility): Declare decl, vis unused.
* config/sol2.c (solaris_assemble_visibility): Declare decl, vis
	unused.
	Define visibility_types, name, type inside HAVE_GAS_HIDDEN.
	* configure.ac (gcc_cv_ld_hidden): Explain stages of visibility
	support in Sun ld.
	* configure: Regenerate.

From-SVN: r159218
2010-05-10 13:01:58 +00:00
Janus Weil
f5dbb57cce re PR fortran/44044 ([OOP] SELECT TYPE with class-valued function)
2010-05-10  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/44044
	* match.c (gfc_match_select_type): Move error message to
	resolve_select_type.
	* resolve.c (resolve_select_type): Error message moved here from
	gfc_match_select_type. Correctly set type of temporary.


2010-05-10  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/44044
	* gfortran.dg/class_7.f03: Modified.
	* gfortran.dg/select_type_1.f03: Modified.
	* gfortran.dg/select_type_12.f03: New.

From-SVN: r159217
2010-05-10 14:54:25 +02:00
Richard Guenther
571943de9a lto-symtab.c (lto_symtab_entry_marked_p): Make entry marked if the entry identifier is marked.
2010-05-10  Richard Guenther  <rguenther@suse.de>

	* lto-symtab.c (lto_symtab_entry_marked_p): Make entry
	marked if the entry identifier is marked.

From-SVN: r159216
2010-05-10 11:28:38 +00:00
Richard Guenther
0b7b376d89 c-common.c (struct c_common_attributes): Add fnspec attribute.
2010-05-10  Richard Guenther  <rguenther@suse.de>

	* c-common.c (struct c_common_attributes): Add fnspec attribute.
	(handle_fnspec_attribute): New function.
	* gimple.h (gimple_call_return_flags): Declare.
	(gimple_call_arg_flags): Likewise.
	* gimple.c (gimple_call_arg_flags): New function.
	(gimple_call_return_flags): Likewise.
	* tree.h (EAF_DIRECT, EAF_NOCLOBBER, EAF_NOESCAPE, EAF_UNUSED):
	New argument flags.
	(ERF_RETURN_ARG_MASK, ERF_RETURNS_ARG, ERF_NOALIAS): New function
	return value flags.
	* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Skip unused args.
	* tree-ssa-structalias.c (make_constraint_from_heapvar): Split
	main work to ...
	(make_heapvar_for): ... this new function.
	(handle_rhs_call): Handle fnspec attribute argument specifiers.
	(handle_lhs_call): Likewise.
	(find_func_aliases): Adjust.

	fortran/
	* trans-decl.c (gfc_build_library_function_decl): Split out
	worker to ...
	(build_library_function_decl_1): ... this new function.
	Set a fnspec attribute if a specification was provided.
	(gfc_build_library_function_decl_with_spec): New function.
	(gfc_build_intrinsic_function_decls): Annotate internal_pack
	and internal_unpack.

From-SVN: r159215
2010-05-10 09:43:17 +00:00
Richard Guenther
1755aad094 re PR tree-optimization/44050 (Wrong code is produced with -fipa-pta -fno-tree-pta)
2010-05-10  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/44050
	* tree-inline.c (tree_function_versioning): Clone the ipa-pta
	flag.

	* gcc.dg/torture/pr44050.c: New testcase.

From-SVN: r159214
2010-05-10 08:55:32 +00:00
Wei Guozhi
333b67a9f1 thumb2.md (thumb2_tlobits_cbranch): New insn pattern.
* config/arm/thumb2.md (thumb2_tlobits_cbranch): New insn pattern.

	* gcc.target/arm/pr42879.c: New testcase.

From-SVN: r159212
2010-05-10 07:26:04 +00:00
GCC Administrator
4af3ff4194 Daily bump.
From-SVN: r159211
2010-05-10 00:17:08 +00:00
Joseph Myers
c1644066c8 re PR testsuite/44051 (FAIL: gcc.dg/anon-struct-9.c (test for excess errors))
PR c/44051
	* gcc.dg/anon-struct-9.c: Avoid generating identifier i386.

From-SVN: r159207
2010-05-09 22:01:38 +01:00
Joseph Myers
0fb96aa428 re PR c/10676 (Using unnamed fields in initializers)
PR c/10676
	* c-typeck.c (lookup_field): Take a type directly.  Update
	recursive calls.
	(build_component_ref): Update call to lookup_field.
	(set_init_label): Use lookup_field to find initialized field.
	Handle returned list of fields like a sequence of designators.

testsuite:
	* gcc.dg/anon-struct-10.c: New test.

From-SVN: r159206
2010-05-09 21:39:39 +01:00
Richard Guenther
3d7a712a1e re PR c/44024 (missed optimization)
2010-05-09  Richard Guenther  <rguenther@suse.de>

	PR middle-end/44024
	* fold-const.c (tree_single_nonzero_warnv_p): Properly
	handle &FUNCTION_DECL.

	* gcc.dg/pr44024.c: New testcase.

From-SVN: r159205
2010-05-09 18:17:33 +00:00
Joseph Myers
492fc0eec5 re PR c/4784 (Anonymous structs issues)
PR c/4784
	* c-decl.c (detect_field_duplicates_hash): New.  Handle anonymous
	structures and unions recursively.
	(detect_field_duplicates): Move duplicate detection with a hash to
	detect_field_duplicates_hash.  Always use a hash if anonymous
	structures or unions are present.
	* doc/extend.texi (Unnamed Fields): Document that duplicate fields
	give errors.

testsuite:
	* gcc.dg/anon-struct-9.c: New test.

From-SVN: r159204
2010-05-09 17:19:28 +01:00
H.J. Lu
44f276c65f Properly detect Atom, Core 2 and Core i7.
2010-05-09  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/44046
	* config/i386/driver-i386.c (host_detect_local_cpu): Properly
	detect Atom, Core 2 and Core i7.

From-SVN: r159202
2010-05-09 07:49:53 -07:00
Richard Guenther
d620518576 gcc.c (store_arg): Handle temporary file deletion for joined arguments.
2010-05-09  Richard Guenther  <rguenther@suse.de>

	* gcc.c (store_arg): Handle temporary file deletion for
	joined arguments.

From-SVN: r159201
2010-05-09 14:14:27 +00:00
Richard Guenther
5588864d54 re PR tree-optimization/44043 (sorry, unimplemented: inlining failed in call to 'dst_output': optimizing for size and code size would grow)
2010-05-09  Richard Guenther  <rguenther@suse.de>

	PR middle-end/44043
	* ipa-inline.c (estimate_function_body_sizes): Return after
	disregarding inline limits.

	* gcc.c-torture/compile/pr44043.c: New testcase.

From-SVN: r159200
2010-05-09 14:13:25 +00:00
Richard Guenther
64ed87b4f8 ipa-pta-11.c: Make p and q referenced.
2010-05-09  Richard Guenther  <rguenther@suse.de>

	* gcc.dg/ipa/ipa-pta-11.c: Make p and q referenced.

From-SVN: r159199
2010-05-09 13:12:24 +00:00
Eric Botcazou
d10380d26c * gnat.dg/lto6.adb: Remove superfluous -gnat05 switch.
From-SVN: r159198
2010-05-09 10:32:36 +00:00
Richard Guenther
aa34f42ce2 gcc.c (store_arg): Revert last change.
2010-05-09  Richard Guenther  <rguenther@suse.de>

	* gcc.c (store_arg): Revert last change.

From-SVN: r159197
2010-05-09 10:31:14 +00:00
GCC Administrator
619d3256fa Daily bump.
From-SVN: r159195
2010-05-09 00:17:14 +00:00
Eric Botcazou
0dbe2a64d9 lto[12456].adb: Add "target lto" marker.
* gnat.dg/lto[12456].adb: Add "target lto" marker.
	* gnat.dg/specs/lto3.ads: Likewise.

From-SVN: r159191
2010-05-08 17:31:23 +00:00
Sandra Loosemore
844381e5bc re PR middle-end/28685 (Multiple comparisons are not simplified)
2010-05-08  Sandra Loosemore  <sandra@codesourcery.com>

	PR middle-end/28685

	gcc/
	* tree-ssa-reassoc.c (eliminate_redundant_comparison): New function.
	(optimize_ops_list): Call it.

	gcc/testsuite/
	* gcc.dg/pr28685-1.c: New file.

From-SVN: r159189
2010-05-08 11:53:59 -04:00
Janne Blomqvist
4a79741bd2 Fix typo
From-SVN: r159188
2010-05-08 17:43:56 +03:00
Janne Blomqvist
68cb9e8a47 Fix typo in symbol visibility specification
From-SVN: r159187
2010-05-08 17:43:32 +03:00
Richard Guenther
43896afb8b re PR tree-optimization/44030 (error: SSA name in freelist but still referenced)
2010-05-08  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/44030
	* tree-ssa-pre.c (eliminate): Copy NECESSARY flag.  Set
	NECESSARY flag if we propagate from a inserted expression.

	* gcc.c-torture/compile/pr44030.c: New testcase.

From-SVN: r159186
2010-05-08 13:12:56 +00:00
Eric Botcazou
f56000ede5 gimple.c (gimple_types_compatible_p): Treat bounds of domain types as equal if they are both PLACEHOLDER_EXPRs.
* gimple.c (gimple_types_compatible_p) <ARRAY_TYPE>: Treat bounds of
	domain types as equal if they are both PLACEHOLDER_EXPRs.

From-SVN: r159185
2010-05-08 12:06:57 +00:00
Eric Botcazou
901ad63f30 exp_disp.adb (Make_Tags): Mark the imported view of dispatch tables.
* exp_disp.adb (Make_Tags): Mark the imported view of dispatch tables.
	* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Make imported
	constants really constant.
	<E_Record_Subtype>: Strip the suffix for dispatch table entities.

From-SVN: r159184
2010-05-08 11:50:18 +00:00
Eric Botcazou
9c026b8767 * gcc-interface/decl.c (make_aligning_type): Declare the type.
From-SVN: r159183
2010-05-08 11:38:26 +00:00
Eric Botcazou
35e2a4b842 decl.c (gnat_to_gnu_entity): Create variables for size expressions of variant part of record types declared...
* gcc-interface/decl.c (gnat_to_gnu_entity): Create variables for size
	expressions of variant part of record types declared at library level.

From-SVN: r159182
2010-05-08 11:31:31 +00:00
Eric Botcazou
da01bfee1a gigi.h (create_field_decl): Move PACKED parameter.
* gcc-interface/gigi.h (create_field_decl): Move PACKED parameter.
	* gcc-interface/utils.c (create_field_decl): Move PACKED parameter.
	(rest_of_record_type_compilation): Adjust call to create_field_decl.
	(make_descriptor_field): Likewise and pass correctly typed constants.
	(build_unc_object_type): Likewise.
	(unchecked_convert): Likewise.
	* gcc-interface/decl.c (elaborate_expression_2): New static function.
	(gnat_to_gnu_entity): Use it to make alignment factors explicit.
	Adjust call to create_field_decl.
	(make_aligning_type): Likewise.
	(make_packable_type): Likewise.
	(maybe_pad_type): Likewise.
	(gnat_to_gnu_field): Likewise.
	(components_to_record): Likewise.
	(create_field_decl_from): Likewise.
	(create_variant_part_from): Remove superfluous test.
	* gcc-interface/trans.c (gigi): Adjust call to create_field_decl.

From-SVN: r159181
2010-05-08 11:17:57 +00:00
Eric Botcazou
928dfa4bd0 gigi.h (build_unc_object_type): Add DEBUG_INFO_P param.
* gcc-interface/gigi.h (build_unc_object_type): Add DEBUG_INFO_P param.
	(build_unc_object_type_from_ptr): Likewise.
	* gcc-interface/utils.c (build_unc_object_type): Add DEBUG_INFO_P param
	and pass it to create_type_decl.  Declare the type.  Simplify.
	(build_unc_object_type_from_ptr): Add DEBUG_INFO_P parameter and pass
	it to build_unc_object_type.
	* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust to above change.
	* gcc-interface/trans.c (Attribute_to_gnu): Likewise.
	(gnat_to_gnu): Likewise.
	* gcc-interface/utils2.c (build_allocator): Likewise.

From-SVN: r159180
2010-05-08 11:02:08 +00:00
GCC Administrator
d5a8e96fa1 Daily bump.
From-SVN: r159179
2010-05-08 00:17:05 +00:00
Richard Guenther
1522167d7c lto-wrapper.c (run_gcc): Remove linker output from command line for LTRANS invocation.
2010-05-08  Richard Guenther  <rguenther@suse.de>

	* lto-wrapper.c (run_gcc): Remove linker output from
	command line for LTRANS invocation.

From-SVN: r159174
2010-05-07 22:13:14 +00:00
Steven Bosscher
c082f9f317 configure.ac (--enable-lto): Add x86_64-apple-darwin* as a platform that supports LTO.
ChangeLog:
	* configure.ac (--enable-lto): Add x86_64-apple-darwin* as
	a platform that supports LTO.
	* configure: Regenerate.

gcc/ChangeLog:
	* config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*): Add
	lto-macho as lto_binary_reader.
	* target.h (struct gcc_target): New hooks lto_start and	lto_end.
	* target-def.h (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Define.
	* cgraphunit.c (ipa_passes): Wrap LTO assembler output generation
	in lto_start and lto_end calls.
	(is_elf_or_coff): Rename to maybe_lto_object_file.  Add Mach-O
	magic numbers.
	(scan_prog_file): Update is_elf_or_coff call.
	* doc/tm.text (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Document.

	* collect2.c (main): Fix enum comparison.

	* config/darwin-protos.h (darwin_asm_lto_start, darwin_asm_lto_end):
	Add prototypes.
	* darwin9.h (LINK_COMMAND_SPEC): Pass -flto and -fwhopr to the linker.
	* darwin.h (LINK_COMMAND_SPEC): Likewise.  Define TARGET_ASM_LTO_START
	and TARGET_ASM_LTO_END.
	* darwin.c: Include obstack.h and lto-streamer.h.
	(lto_section_names_offset, lto_section_names_obstack,
	lto_asm_out_file, lto_asm_out_name, saved_asm_out_file): New static
	global variables.
	(LTO_SEGMENT_NAME, LTO_NAMES_SECTION): New defines.
	(darwin_asm_lto_start): New function.  Redirect output to asm_out_file
	to a temporary file.
	(darwin_asm_lto_end): New function.  Restore asm_out_file.
	(darwin_asm_named_section): For LTO sections, replace the name with
	the offset of the section name in a string table, and build this
	table.
	(darwin_file_start): Initialize global vars for LTO support.
	(darwin_file_end): If output to asm_out_file was redirected, append it
	to the proper asm_out_file here.  Add the section names section.

lto/ChangeLog:
	* lto.h (struct lto_file_struct): Document offset member.
	* lto-endian.h: New file.
	* lto-macho.h: New file.
	* lto-macho.c: New file.
	* Make-lang.in: Add rule for lto-macho.o.

From-SVN: r159173
2010-05-07 21:37:43 +00:00
Steven Bosscher
18bc5398c1 c-pragma.c (pending_weak_d, [...]): New.
* c-pragma.c (pending_weak_d, pending_weak): New.
	(pending_weaks): Change the type to VEC((pending_weak,gc) *.
	(maybe_apply_pragma_weak, maybe_apply_pending_pragma_weaks,
	handle_pragma_weak): Update the uses of pending_weaks.

From-SVN: r159172
2010-05-07 20:49:29 +00:00
Ralf Wildenhues
0f590a2d73 Fix link to outdated cxx0x status page.
gcc/:
        PR documentation/44016
        * doc/standards.texi (Standards): Link to unversioned
        cxx0x_status.html page.

From-SVN: r159168
2010-05-07 20:10:09 +00:00
Iain Sandoe
3bd5cdeb0e re PR target/43708 (gcc.dg/pragma-darwin.c "set not used", not working with pragma)
PR target/43708
	* config/darwin-c.c (darwin_pragma_unused): Set DECL_READ_P
	in addition to TREE_USED, to avoid "set but unused" warnings.

From-SVN: r159164
2010-05-07 17:34:31 +00:00
Changpeng Fang
9bf4598b0d Define the TRIP_COUNT_TO_AHEAD_RATIO heuristic.
2010-05-07  Changpeng Fang  <changpeng.fang@amd.com>

	* tree-ssa-loop-prefetch.c (TRIP_COUNT_TO_AHEAD_RATIO): New.
	(is_loop_prefetching_profitable): Do not insert prefetches
	when the trip count is not at least TRIP_COUNT_TO_AHEAD_RATIO
	times the prefetch ahead distance.

From-SVN: r159163
2010-05-07 17:26:02 +00:00
Changpeng Fang
ccacf0e193 Account for loop unrolling in the insn-to-prefetch ratio heuristic.
2010-05-07  Changpeng Fang  <changpeng.fang@amd.com>

	* tree-ssa-loop-prefetch.c (is_loop_prefetching_profitable):
	Account for loop unrolling in the insn-to-prefetch ratio heuristic.
	(loop_prefetch_arrays): Pass to is_loop_prefetching_profitable
	the unroll_factor.

From-SVN: r159162
2010-05-07 16:15:52 +00:00
Changpeng Fang
55e5a2ebc0 Dump a diagnostic info when the insn-to-mem ratio is too small.
2010-05-07  Changpeng Fang  <changpeng.fang@amd.com>

	* tree-ssa-loop-prefetch.c (is_loop_prefetching_profitable): Dump
	a diagnostic info when the insn-to-mem ratio is too small.

From-SVN: r159161
2010-05-07 16:15:45 +00:00