Commit Graph

100017 Commits

Author SHA1 Message Date
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
Janne Blomqvist
bb408e876c Remove free_mem
From-SVN: r159160
2010-05-07 18:55:59 +03:00
Richard Guenther
5cd0e96b0e re PR lto/43857 (-fresolution causes an ICE)
2010-05-07  Richard Guenther <rguenther@suse.de>

	* gcc.c (LINK_COMMAND_SPEC): Provide a resolution file to
	the linker plugin.
	(store_arg): Queue temp_filename for deletion instead of
	the whole argument.

	lto/
	PR lto/43857
	PR lto/43371
	* lang.opt (fresolution): Change to ...
	(fresolution=): ... this.
	* lto-lang.c (lto_handle_option): Adjust.

	lto-plugin/
	* lto-plugin.c (free_2): Do not free resolution_file.
	(write_resolution): Check that we were passed a resolution file.
	(all_symbols_read_handler): Adjust.
	(cleanup_handler): Do not remove the resolution file.
	(process_option): Handle -fresolution=.

From-SVN: r159159
2010-05-07 15:53:40 +00:00
Fabien Chêne
40bb78ad24 re PR c++/43951 (Revision 158918 miscompiled 483.xalancbmk in SPEC CPU 2006)
PR c++/43951
	* init.c (diagnose_uninitialized_cst_or_ref_member_1): Returns the
	error count. Emit errors only if compain is true.
	(build_new_1): Do not return error_mark_node if
	diagnose_uninitialized_cst_or_ref_member_1 does not diagnose any
	errors. Delay the check for user-provided constructor.
	(perform_member_init): Adjust.
	* cp-tree.h (diagnose_uninitialized_cst_or_ref_member): Change the
	prototype.

From-SVN: r159158
2010-05-07 11:52:06 -04:00
Richard Biener
48cf395bdb lto-wrapper.c (DUMPBASE_SUFFIX): Define.
2010-05-07  Richard Guenther  <rguenther@suse.de>

	* lto-wrapper.c (DUMPBASE_SUFFIX): Define.
	(run_gcc): Handle LTRANS phase invocation.
	* collect2.c (maybe_run_lto_and_relink): Do not set
	WPA_SAVE_LTRANS.

	lto/
	* lto.c (DUMPBASE_SUFFIX): Remove.
	(lto_execute_ltrans): Move functionality to lto-wrapper.c.
	Rename to ...
	(lto_write_ltrans_list): ... only output the list of ltrans files.
	(lto_maybe_unlink): Remove.
	(do_whole_program_analysis): Do not execute LTRANS phase
	from here.

From-SVN: r159157
2010-05-07 15:52:01 +00:00
Jakub Jelinek
86b2c5b637 tree.h (TREE_ADDRESSABLE): Adjust comment to say that this is also meaningful on PARM_DECLs and RESULT_DECLs.
* tree.h (TREE_ADDRESSABLE): Adjust comment to say that
	this is also meaningful on PARM_DECLs and RESULT_DECLs.

From-SVN: r159156
2010-05-07 17:47:52 +02:00
Daniel Franke
db7d7dc173 re PR fortran/40728 (Bogus error "Error: Can't convert UNKNOWN to REAL(8) at (1)")
gcc/fortran/:
2010-05-07  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/40728
	* intrinc.c (gfc_is_intrinsic): Do not prematurely mark symbol
        as external


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

        PR fortran/40728
        * gfortran.dg/coarray_1.f90: Fixed error message.
        * gfortran.dg/selected_char_kind_3.f90: Fixed error message.
        * gfortran.dg/intrinsic_std_1.f90: Fixed bogus message.
        * gfortran.dg/intrinsic_std_5.f90: New.

From-SVN: r159155
2010-05-07 11:36:45 -04:00
Jason Merrill
2cd5965fa3 * g++.dg/cpp0x/nullptr20.C: Use sprintf.
From-SVN: r159153
2010-05-07 09:53:46 -04:00
Rainer Orth
c4e1e0b1f5 * config/mips/iris6.h (LINK_SPEC): Don't pass -init, -fini with -r.
From-SVN: r159151
2010-05-07 12:36:58 +00:00
Richard Guenther
a7d4562a9d re PR middle-end/44020 (Failed to build 200.sixtrack in SPEC CPU 2K)
2010-05-07  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/44020
	* tree-ssa-pre.c (execute_pre): Do not remove dead inserted
	code when PRE is not yet initialized.

From-SVN: r159150
2010-05-07 11:55:21 +00:00
Eric Botcazou
e196071223 re PR c/40989 (-Werror= and #pragma diagnostics do not work with group flags)
PR 40989
	* gcc-interface/misc.c (gnat_handle_option): Fix long line.

From-SVN: r159149
2010-05-07 10:25:54 +00:00
Rainer Orth
a6b02ef3f8 dbxmdebug.h: Remove.
* config/mips/dbxmdebug.h: Remove.
	* config.gcc (mips-sgi-irix6.5*): Remove mips/dbxmdebug.h.

From-SVN: r159147
2010-05-07 09:21:23 +00:00
Rainer Orth
9009be85ea 20100423-2_0.c: Include <stdio.h>.
* gcc.dg/lto/20100423-2_0.c: Include <stdio.h>.
	(size_t, stderr): Remove.
	(read_error): Replaced __builtin_fprintf by fprintf.

From-SVN: r159146
2010-05-07 09:11:31 +00:00
Shujing Zhao
d42ba3b80a c-typeck.c (build_binary_op): Warn ordered comparison of pointer with null pointer and also warn about...
gcc/
2010-05-07  Shujing Zhao  <pearly.zhao@oracle.com>

        * c-typeck.c (build_binary_op): Warn ordered comparison of pointer
        with null pointer and also warn about ordered comparison of zero
        with pointer if -Wextra.

gcc/testsuite/
2010-05-07  Shujing Zhao  <pearly.zhao@oracle.com>

        * gcc.dg/ordered-comparison-1.c: New test.
        * gcc.dg/ordered-comparison-2.c: New test.
        * gcc.dg/ordered-comparison-3.c: New test.
        * gcc.dg/ordered-comparison-4.c: New test.

From-SVN: r159145
2010-05-07 08:18:06 +00:00