Commit Graph

102355 Commits

Author SHA1 Message Date
Tobias Burnus
9a18b99ba9 re PR fortran/45295 (intrinsic.texi: SELECTED_CHAR_KIND should mention wide-char support)
2010-08-18  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45295
        * intrinsic.texi (selected_char_kind): Document ISO_10646
        support.

From-SVN: r163347
2010-08-18 20:05:58 +02:00
Nathan Froyd
c043ee4a3a re PR c++/45049 (ICE: tree check: expected tree that contains 'decl minimal' structure, have 'tree_list' in push_overloaded_decl, at cp/name-lookup.c:2160)
gcc/cp/
	PR c++/45049
	* name-lookup.c (push_overloaded_decl): Change DECL_CHAIN to
	TREE_CHAIN.

gcc/testsuite/
	PR c++/45049
	* g++.dg/pr45049-1.C: New test.
	* g++.dg/pr45049-2.C: New test.

From-SVN: r163344
2010-08-18 16:05:40 +00:00
Kostya Serebryany
3ff91293eb re PR libstdc++/45276 (Need to document _GLIBCXX_SYNCHRONIZATION_HAPPENS_BEFORE)
2010-08-18  Kostya Serebryany <kcc@google.com>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/45276
	* doc/xml/manual/debug.xml ([debug.races]): Add.

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>

From-SVN: r163342
2010-08-18 15:21:56 +00:00
Jie Zhang
1027c9c5b9 builtin-apply2.c (STACK_ARGUMENTS_SIZE): Define to 20 if __ARM_PCS is defined otherwise 64.
* gcc.dg/builtin-apply2.c (STACK_ARGUMENTS_SIZE): Define to
	20 if __ARM_PCS is defined otherwise 64.
	(bar): Use STACK_ARGUMENTS_SIZE for the third argument
	instead of hard coded 64.

From-SVN: r163341
2010-08-18 14:45:33 +00:00
Richard Guenther
480161b52b tree-ssa-uninit.c (find_uninit_use): Disregard debug stmts, use operand helpers.
2010-08-18  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-uninit.c (find_uninit_use): Disregard debug stmts,
	use operand helpers.

From-SVN: r163340
2010-08-18 14:18:51 +00:00
Paolo Bonzini
e5f5fa2da0 Expand pending pops before trying the optab.
2010-08-18  Paolo Bonzini  <bonzini@gnu.org>

	PR middle-end/45292
	* optabs.c (expand_bool_compare_and_swap): Expand pending
	pops before trying the optab.

From-SVN: r163339
2010-08-18 06:35:46 -07:00
Yao Qi
8019fcfb55 re PR target/45094 ([arm] wrong instructions for dword move in some cases)
gcc/
        PR target/45094
        * config/arm/arm.c (output_move_double): Fix typo generating 
        instructions ('ldr'->'str').

gcc/testsuite/

        PR target/45094
        * gcc.target/arm/pr45094.c: New test.

From-SVN: r163338
2010-08-18 12:33:43 +00:00
Maxim Kuvyrkov
38e3c1e18e * gcc.target/arm/mla-1.c: Use thumb-friendly architecture.
From-SVN: r163335
2010-08-18 10:36:09 +00:00
Maxim Kuvyrkov
c701e857d8 re PR rtl-optimization/42575 (arm-eabi-gcc 64-bit multiply weirdness)
gcc/
	PR rtl-optimization/42575
	* optabs.c (expand_doubleword_mult): Generate new pseudos to shorten
	live ranges.

	gcc/testsuite/
	PR rtl-optimization/42575
	* gcc.target/pr42575.c: New test.

From-SVN: r163334
2010-08-18 10:34:02 +00:00
Iain Sandoe
63d90a9630 test cse for emulated TLS targets.
* lib/target-supports.exp (check_effective_target_tls_emulated): New.
	* gcc.dg/tls/thr-cse-1.c: New.

From-SVN: r163330
2010-08-18 09:01:22 +00:00
Jack Howarth
618d48304d configure.ac (THREADLIBS): Don't set on Darwin.
2010-08-18  Jack Howarth <howarth@bromo.med.uc.edu>

	    * libjava/configure.ac (THREADLIBS): Don't set on Darwin.
	    (THREADSPEC): Likwise.
	    * libjava/configure: Regenerate.
	    * libjava/Makefile.am: Define LIBJAVA_LDFLAGS_LIBMATH as
	    -lm only if USING_DARWIN_CRT undefined.
	    (libgcj_tools_la_LIBADD): Replace '-lm' with $(LIBJAVA_LDFLAGS_LIBMATH).
	    * libjava/Makefile.in: Regenerate.

From-SVN: r163329
2010-08-18 08:51:57 +00:00
Marcus Shawcroft
029e79eb86 For Marcus - Implement sync primitives inline for ARM.
2010-08-18  Marcus Shawcroft  <marcus.shawcroft@arm.com>

	* config/arm/arm-protos.h (arm_expand_sync): New.
	(arm_output_memory_barrier, arm_output_sync_insn): New.
	(arm_sync_loop_insns): New.
	* config/arm/arm.c (FL_ARCH7): New.
	(FL_FOR_ARCH7): Include FL_ARCH7.
	(arm_arch7): New.
	(arm_print_operand): Support %C markup.
	(arm_legitimize_sync_memory): New.
	(arm_emit, arm_insn_count, arm_count, arm_output_asm_insn): New.
	(arm_process_output_memory_barrier, arm_output_memory_barrier): New.
	(arm_ldrex_suffix, arm_output_ldrex, arm_output_strex): New.
	(arm_output_op2, arm_output_op3, arm_output_sync_loop): New.
	(arm_get_sync_operand, FETCH_SYNC_OPERAND): New.
	(arm_process_output_sync_insn, arm_output_sync_insn): New.
	(arm_sync_loop_insns,arm_call_generator, arm_expand_sync): New.
	* config/arm/arm.h (struct arm_sync_generator): New.
	(TARGET_HAVE_DMB, TARGET_HAVE_DMB_MCR): New.
	(TARGET_HAVE_MEMORY_BARRIER): New.
	(TARGET_HAVE_LDREX, TARGET_HAVE_LDREXBHD): New.
	* config/arm/arm.md: Include sync.md.
	(UNSPEC_MEMORY_BARRIER): New.
	(VUNSPEC_SYNC_COMPARE_AND_SWAP, VUNSPEC_SYNC_LOCK): New.
	(VUNSPEC_SYNC_OP):New.
	(VUNSPEC_SYNC_NEW_OP, VUNSPEC_SYNC_OLD_OP): New.
	(sync_result, sync_memory, sync_required_value): New attributes.
	(sync_new_value, sync_t1, sync_t2): Likewise.
	(sync_release_barrier, sync_op): Likewise.
	(length): Add logic to length attribute defintion to call
	arm_sync_loop_insns when appropriate.
	* config/arm/sync.md: New file.

From-SVN: r163327
2010-08-18 08:25:33 +00:00
Iain Sandoe
257f5167d8 re PR debug/42487 (FAIL: gcc.dg/debug/dwarf2/aranges-fnsec-1.c scan-assembler DW_AT_ranges)
PR debug/42487
	* lib/target-supports.exp
	(check_effective_target_function_sections): New.
	* gcc.dg/debug/dwarf2/aranges-fnsec-1.c: Check that the target supports
	function sections before proceding.

From-SVN: r163326
2010-08-18 08:21:43 +00:00
GCC Administrator
566ea2d10e Daily bump.
From-SVN: r163323
2010-08-18 00:17:06 +00:00
Jakub Jelinek
a085a55ae2 tree.h (host_integerp): Add ATTRIBUTE_PURE when not ENABLE_TREE_CHECKING.
* tree.h (host_integerp): Add ATTRIBUTE_PURE when not
	ENABLE_TREE_CHECKING.
	(tree_low_cst): Add inline version for !ENABLE_TREE_CHECKING
	and GCC >= 4.3.

From-SVN: r163313
2010-08-17 20:10:20 +02:00
Jakub Jelinek
47b914698d re PR fortran/45308 ([F2003] DATE_AND_TIME does _not_ blank-pad strings)
PR fortran/45308
	* intrinsics/date_and_time.c (date_and_time): Pass __{zone,time,date}_len
	instead of {ZONE,TIME,DATE}_LEN as second argument to fstrcpy.  Drop
	asserts.  Adjust comment to the F2003 wording from the F95 wording.

	* gfortran.dg/pr45308.f03: New test.

From-SVN: r163312
2010-08-17 20:08:05 +02:00
Jakub Jelinek
35d3d688fc re PR fortran/45304 (Functions/subroutines without arguments always treated like varargs)
PR fortran/45304
	* trans-decl.c (build_library_function_decl_1): Chain on
	void_list_node instead of creating a new TREE_LIST.
	* trans-intrinsic.c (gfc_get_intrinsic_lib_fndecl): Likewise.
	* trans-types.c (gfc_get_function_type): Likewise.  Set
	typelist to void_list_node for the main program.

From-SVN: r163311
2010-08-17 20:06:18 +02:00
H.J. Lu
1c111d0a58 Try to avoid lea if possible.
2010-08-17  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.c (ix86_lea_for_add_ok): For !TARGET_OPT_AGU
	or optimizing for size, always avoid lea if possible.

	* config/i386/i386.md (*add<mode>_1): Always avoid lea if
	possible.

From-SVN: r163310
2010-08-17 08:49:32 -07:00
Iain Sandoe
e2a1fcf0ad only use _darwin10_Unwind_FindEnclosingFunction on darwin >= 10
gcc:
	* unwind-dw2-fde-darwin.c (_darwin10_Unwind_FindEnclosingFunction):
	Dunmmy function with NULL return unless the target is 
	OSX >= 10.6 (Darwin10).
libjava:
	* include/posix.h: Make substitution of 
	_darwin10_Unwind_FindEnclosingFunction conditional on 
	OSX >= 10.6 (Darwin10).

From-SVN: r163309
2010-08-17 14:54:10 +00:00
Jack Howarth
2642f659a6 gcc.c (spec_function): Add remove-outfile.
2010-08-17  Jack Howarth <howarth@bromo.med.uc.edu>

	* gcc.c (spec_function): Add remove-outfile.
	(remove_outfile_spec_function): New function.
	* config/darwin.h (LINK_SPEC): Add removal of
	-ldl, -lm and -lpthread.
	* invoke.texi (replace-outfile): Document.

From-SVN: r163305
2010-08-17 13:22:28 +00:00
Paolo Carlini
a85615d28a re PR libstdc++/45300 (in cstdio/cstdlib keyword restrict is used instead of __restrict)
2010-08-17  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/45300
	* include/c_std/cwchar: Replace 'restrict' -> '__restrict'.
	* include/c_global/cwchar: Likewise.

From-SVN: r163304
2010-08-17 13:15:41 +00:00
Uros Bizjak
2c65142a27 re PR target/45296 (register long double ICE at -O2, -Os, -O3)
PR target/45296
	* reginfo.c (globalize_reg): Reject stack registers.

testsuite/ChangeLog:

	PR target/45296
	* gcc.target/i386/pr45296.c: New test.

From-SVN: r163303
2010-08-17 14:25:24 +02:00
Richard Guenther
fd4a760e5e tree-ssa-dom.c (struct edge_info): Use a VEC for the list of conditional equivalences.
2010-08-17  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-dom.c (struct edge_info): Use a VEC for the
	list of conditional equivalences.
	(free_all_edge_infos): Adjust.
	(record_equivalences_from_incoming_edge): Likewise.
	(record_cond): Likewise.
	(build_and_record_new_cond): Likewise.
	(record_conditions): Likewise.
	(dom_opt_leave_block): Likewise.

From-SVN: r163302
2010-08-17 09:55:04 +00:00
Kai Tietz
b17b584fe1 invoke.texi (ms-extension): Add documentation.
2010-08-17  Kai Tietz  <kai.tietz@onevision.com>

        * doc/invoke.texi (ms-extension): Add documentation.

From-SVN: r163301
2010-08-17 11:54:12 +02:00
Kai Tietz
8ce1235bfa class.c (note_name_declared_in_class): Make in 'extern "C"' blocks...
2010-08-17  Kai Tietz  <kai.tietz@onevision.com>

        * class.c (note_name_declared_in_class): Make in 'extern "C"' blocks,
        or if -fms-extensions is enabled check, check permissive.

From-SVN: r163300
2010-08-17 11:52:30 +02:00
Kai Tietz
f9abf412e2 uow-1.C: New.
2010-08-17  Kai Tietz  <kai.tietz@onevision.com>

        * g++.dg/ext/uow-1.C: New.
        * g++.dg/ext/uow-2.C: New.
        * g++.dg/ext/uow-3.C: New.
        * g++.dg/ext/uow-4.C: New.

From-SVN: r163299
2010-08-17 11:50:38 +02:00
Richard Guenther
743ad76e9e fold-const.c (fold_comparison): Strip nops inside POINTER_PLUS_EXPR.
2010-08-17  Richard Guenther  <rguenther@suse.de>

	* fold-const.c (fold_comparison): Strip nops inside
	POINTER_PLUS_EXPR.

From-SVN: r163298
2010-08-17 09:50:12 +00:00
Richard Guenther
470301c5f6 re PR testsuite/45266 (FAIL: gfortran.dg/array_memcpy_3.f90)
2010-08-17  Richard Guenther  <rguenther@suse.de>

	PR testsuite/45266
	* gfortran.dg/array_memcpy_3.f90: Adjust pattern.

From-SVN: r163297
2010-08-17 09:47:44 +00:00
Shujing Zhao
51f4ec6669 re PR c/40563 (-Wc++-compat does not warn about uninitialized const field in struct)
/gcc
2010-08-17  Shujing Zhao  <pearly.zhao@oracle.com>

        PR c/40563
	* c-decl.c (diagnose_uninitialized_cst_member): New function.
	(finish_decl): Use it to issue a -Wc++-compat warning about
	uninitialized const field in struct or union.
	
	(finish_struct): Use strip_array_types.
	
/gcc/testsuite
2010-08-17  Shujing Zhao  <pearly.zhao@oracle.com>

	PR c/40563
	* gcc.dg/Wcxx-compat-20.c: New test.

From-SVN: r163296
2010-08-17 08:25:20 +00:00
Daniel Kraft
571d54deb6 re PR fortran/38936 ([F03] ASSOCIATE construct / improved SELECT TYPE (a=>expr))
2010-08-17  Daniel Kraft  <d@domob.eu>

	PR fortran/38936
	* gfortran.h (struct gfc_association_list): New member `where'.
	(gfc_is_associate_pointer) New method.
	* match.c (gfc_match_associate): Remember locus for each associate
	name matched and do not try to set variable flag.
	* parse.c (parse_associate): Use remembered locus for symbols.
	* primary.c (match_variable): Instead of variable-flag check for
	associate names set it for all such names used.
	* symbol.c (gfc_is_associate_pointer): New method.
	* resolve.c (resolve_block_construct): Don't generate assignments
	to give associate-names their values.
	(resolve_fl_var_and_proc): Allow associate-names to be deferred-shape.
	(resolve_symbol): Set some more attributes for associate variables,
	set variable flag here and check it and don't try to build an
	explicitely shaped array-spec for array associate variables.
	* trans-expr.c (gfc_conv_variable): Dereference in case of association
	to scalar variable.
	* trans-types.c (gfc_is_nodesc_array): Handle array association symbols.
	(gfc_sym_type): Return pointer type for association to scalar vars.
	* trans-decl.c (gfc_get_symbol_decl): Defer association symbols.
	(trans_associate_var): New method.
	(gfc_trans_deferred_vars): Handle association symbols.

2010-08-17  Daniel Kraft  <d@domob.eu>

	PR fortran/38936
	* gfortran.dg/associate_1.f03: Extended to test newly supported
	features like association to variables.
	* gfortran.dg/associate_3.f03: Removed check for illegal change
	of associate-name here...
	* gfortran.dg/associate_5.f03: ...and added it here.
	* gfortran.dg/associate_6.f03: No longer XFAIL'ed.
	* gfortran.dg/associate_7.f03: New test.

From-SVN: r163295
2010-08-17 10:20:03 +02:00
Jakub Jelinek
3373692b59 function.c (block_fragments_nreverse, [...]): New functions.
* function.c (block_fragments_nreverse, blocks_nreverse_all): New
	functions.
	(reorder_blocks): Use blocks_nreverse_all instead of blocks_nreverse.
	(reorder_blocks_1): Assert BLOCK_FRAGMENT_ORIGIN is NULL.  Don't
	call block_nreverse here.
	(blocks_nreverse): Rename decl temporary to block.

From-SVN: r163292
2010-08-17 08:49:20 +02:00
GCC Administrator
4681303cfd Daily bump.
From-SVN: r163291
2010-08-17 00:17:12 +00:00
Paolo Carlini
f2871ffddb re PR libstdc++/45300 (in cstdio/cstdlib keyword restrict is used instead of __restrict)
2010-08-16  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/45300
	* include/c_std/cstdlib: Replace 'restrict' -> '__restrict'.
	* include/c_std/cstdio: Likewise.
	* include/c_global/cstdlib: Likewise.
	* include/c_global/cstdio: Likewise.

From-SVN: r163283
2010-08-16 19:01:35 +00:00
Chris Moller
7bf7b578b7 printers.py (StdVectorPrinter): Added stuff to handle pretty-printing of std::vector<bool>.
2010-08-16  Chris Moller  <cmoller@redhat.com>

	http://sourceware.org/bugzilla/show_bug.cgi?id=11874
	* python/libstdcxx/v6/printers.py (StdVectorPrinter): Added stuff
	to handle pretty-printing of std::vector<bool>.

From-SVN: r163282
2010-08-16 18:48:27 +00:00
Bernd Schmidt
c29e2982e4 thumb2.md (thumb2_notsi_shiftsi, [...]): Delete.
* config/arm/thumb2.md (thumb2_notsi_shiftsi,
	thumbsi_notsi_shiftsi_compare0, thumb2_not_shiftsi_compare0_scratch,
	thumb2_cmpsi_shiftsi, thumb2_cmpsi_shiftsi_swp, thumb2_arith_shiftsi,
	thumb2_arith_shiftsi splitter, thumb2_arith_shiftsi_compare0,
	thumb2_arith_shiftsi_compare0_scratch, thumb2_sub_shiftsi,
	thumb2_sub_shiftsi_compare0, thumb2_sub_shiftsi_compare0_scratch,
	thumb2_iorsi3): Delete.
	(orsi_notsi_si): No longer a named pattern.
	(orsi_not_shiftsi_si): Renamed from thumb_orsi_not_shiftsi_si.
	* config/arm/predicates.md (shift_amount_operand): New.
	(mult_operator): New.
	* config/arm/arm.md (attr arch, attr arch_enabled, attr insn_enabled,
	attr enabled): New.
	(iorsi3_insn): Renamed from arm_iorsi3.  Handle a new alternative if
	arch matches t2.
	(not_shiftsi): Renamed from arm_notsi_shiftsi.  Handle Thumb2 variant.
	(not_shiftsi_compare0): Likewise, renamed from
	arm_notsi_shiftsi_compare0.
	(not_shiftsi_compare0_scratch): Likweise, renamed from
	arm_notsi_shiftsi_compare0_scratch.
	(cmpsi_shiftsi): Likewise, renamed from arm_cmpsi_shiftsi.
	(cmpsi_shiftsi_swp): Likewise, renamed from arm_cmpsi_shiftsi_swp.
	(arith_shiftsi): Handle Thumb2 variant.  Set insn_enabled attribute
	so that the register alternative is disabled when the shift_operator
	is MULT.  Use "M" as the constraint for constants.
	(arith_shiftsi splitter): Enable for TARGET_32BIT.
	(arith_shiftsi_compare0): Handle Thumb2 variant.  Use "M" as the
	constraint for constants.
	(arith_shiftsi_compare0_scratch): Likewise.
	(sub_shiftsi, sub_shiftsi_compare0, sub_shiftsi_compare0_scratch):
	Handle Thumb2 alternative.

From-SVN: r163281
2010-08-16 10:25:28 +00:00
Joseph Myers
c878765bbf options.texi (NoDriverArg): Document.
* doc/options.texi (NoDriverArg): Document.
	* gcc.c (cpp_unique_options): Generate -MD and -MMD instead of
	-MDX and -MMDX.
	* opt-functions.awk (switch_flags): Handle NoDriverArg.
	* opts-common.c (decode_cmdline_option): Ignore CL_SEPARATE
	marking for CL_NO_DRIVER_ARG options when in the driver.
	* opts.h (CL_NO_DRIVER_ARG): Define.
	(CL_PARAMS, CL_WARNING, CL_OPTIMIZATION, CL_DRIVER, CL_TARGET,
	CL_COMMON): Update values.

c-family:
	* c.opt (MDX): Change back to MD.  Mark NoDriverArg instead of
	RejectDriver.
	(MMDX): Change back to MMD.  Mark NoDriverArg instead of
	RejectDriver.
	* c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
	instead of OPT_MDX and OPT_MMDX.

fortran:
	* lang.opt (MDX): Change back to MD.  Mark NoDriverArg instead of
	RejectDriver.
	(MMDX): Change back to MMD.  Mark NoDriverArg instead of
	RejectDriver.
	* cpp.c (gfc_cpp_handle_option): Use OPT_MD and OPT_MMD instead of
	OPT_MDX and OPT_MMDX.

From-SVN: r163280
2010-08-16 11:17:07 +01:00
Joseph Myers
603349bf3d common.opt: Add driver options.
* common.opt: Add driver options.
	(auxbase, auxbase-strip, quiet, version): Mark RejectDriver.
	* doc/options.texi (Driver, RejectDriver): Document.
	* gcc.c (pass_exit_codes, print_search_dirs, print_file_name,
	print_prog_name, print_multi_directory, print_sysroot,
	print_multi_os_directory, print_multi_lib,
	print_sysroot_headers_suffix, report_times, combine_flag,
	use_pipes, wrapper_string): Remove.
	(save_switch, driver_unknown_option_callback,
	driver_wrong_lang_callback, driver_post_handling_callback,
	driver_handle_option): New.
	(spec_lang, last_language_n_infiles): Make file-scope static
	instead of local to process_command.
	(process_command): Use decode_cmdline_options_to_array and
	read_cmdline_option for option processing.  Compute have_c in
	prescan of decoded options.
	* opt-functions.awk (switch_flags): Handle Driver and
	RejectDriver.
	(var_type, var_type_struct): Handle Separate options as generating
	const char * variables.
	* opts-common.c (decode_cmdline_option): Expect CL_COMMON and
	CL_TARGET to be passed by caller if required.
	(decode_cmdline_options_to_array): Update comment.
	* opts.c (complain_wrong_lang): Handle options only valid for the
	driver.
	(decode_options): Update call to decode_cmdline_options_to_array.
	(print_filtered_help): Ignore driver-only options.
	(print_specific_help): Ignore CL_DRIVER.
	(common_handle_option): Don't call print_specific_help for
	CL_DRIVER.
	* opts.h (CL_DRIVER, CL_REJECT_DRIVER): Define.
	(CL_PARAMS, CL_WARNING, CL_OPTIMIZATION, CL_TARGET, CL_COMMON):
	Update values.

c-family:
	* c.opt (MDX, MMDX, lang-asm): Mark RejectDriver.

fortran:
	* lang.opt (MDX, MMDX): Mark RejectDriver.

java:
	* lang.opt (MD_, MMD_, version): Mark RejectDriver.

From-SVN: r163279
2010-08-16 11:15:15 +01:00
Richard Guenther
4b228e61a9 tree-cfg.c (verify_types_in_gimple_reference): Verify TARGET_MEM_REF a bit.
2010-08-16  Richard Guenther  <rguenther@suse.de>

	* tree-cfg.c (verify_types_in_gimple_reference): Verify
	TARGET_MEM_REF a bit.
	* tree-ssa-address.c (addr_for_mem_ref): Adjust.
	(create_mem_ref_raw): Always create TMR_OFFSET, store the
	alias pointer type via it.
	(copy_mem_ref_info): Adjust.
	(maybe_fold_tmr): Likewise.
	* tree.c (mem_ref_offset): Also handle TARGET_MEM_REF.
	(reference_alias_ptr_type): Likewise.
	* tree.def (TARGET_MEM_REF): Remove TMR_ORIGINAL operand,
	adjust documentation of TMR_OFFSET operand.
	* alias.c (get_alias_set): Do not look at TMR_ORIGINAL but
	use the alias pointer type.
	* expr.c (expand_expr_real_1): Do not use TMR_ORIGINAL to
	initialize mem attrs but the TMR itself.
	* tree-eh.c (tree_could_trap_p): Handle TARGET_MEM_REF
	similar to MEM_REF.
	* tree-pretty-print.c (dump_generic_node): Do not dump TMR_ORIGINAL.
	* tree-ssa-loop-ivopts.c (idx_remove_ssa_names): Remove.
	(unshare_and_remove_ssa_names): Likewise.
	(copy_ref_info): Adjust.
	* tree-ssa-pre.c (create_component_ref_by_pieces_1): Simplify
	TARGET_MEM_REF case.
	* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Do not look
	at TMR_ORIGINAL.
	* tree.h (TMR_ORIGINAL): Remove.
	* gimple.c (get_base_address): For TARGET_MEM_REF with a
	symbol return that.
	* tree-dfa.c (get_ref_base_and_extent): Handle TARGET_MEM_REF
	with a symbol.
	(get_addr_base_and_unit_offset): Likewise.
	* tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Handle
	TARGET_MEM_REFs.
	(indirect_ref_may_alias_decl_p): Likewise.
	(refs_may_alias_p_1): Do not bail out for TARGET_MEM_REFs.

From-SVN: r163278
2010-08-16 09:55:54 +00:00
Mingjie Xing
fa4e6c7b4b Added myself to MAINTAINERS (write after approval)
From-SVN: r163276
2010-08-16 01:24:55 +00:00
GCC Administrator
f0fe0d785c Daily bump.
From-SVN: r163275
2010-08-16 00:17:03 +00:00
Kaz Kojima
7418461d88 pr42585.c: Skip dump scan on sh.
* gcc.dg/tree-ssa/pr42585.c: Skip dump scan on sh.

From-SVN: r163271
2010-08-16 00:09:35 +00:00
Janus Weil
d44d2f9a97 trans-expr.c (gfc_trans_assign_vtab_procs): Clean up (we don't have vtabs for generics any more).
2010-08-15  Janus Weil  <janus@gcc.gnu.org>

	* trans-expr.c (gfc_trans_assign_vtab_procs): Clean up (we don't have
	vtabs for generics any more).

From-SVN: r163270
2010-08-15 23:41:34 +02:00
Uros Bizjak
ef7e003500 invoke.texi (-fomit-frame-pointer): Document that starting with GCC version 4.6...
* doc/invoke.texi (-fomit-frame-pointer): Document that starting
	with GCC version 4.6, the default setting (when not optimizing
	for size) for 32-bit Linux x86 and 32-bit Darwin x86 targets has
	been changed to -fomit-frame-pointer.

From-SVN: r163269
2010-08-15 23:25:58 +02:00
Daniel Kraft
52bf62f96b re PR fortran/38936 ([F03] ASSOCIATE construct / improved SELECT TYPE (a=>expr))
2010-08-15  Daniel Kraft  <d@domob.eu>

	PR fortran/38936
	* gfortran.h (gfc_find_proc_namespace): New method.
	* expr.c (gfc_build_intrinsic_call): No need to build symtree messing
	around with namespace.
	* symbol.c (gfc_find_proc_namespace): New method.
	* trans-decl.c (gfc_build_qualified_array): Use it for correct
	value of nest.
	* primary.c (gfc_match_varspec): Handle associate-names as arrays.
	* parse.c (parse_associate): Removed assignment-generation here...
	* resolve.c (resolve_block_construct): ...and added it here.
	(resolve_variable): Handle names that are arrays but were not parsed
	as such because of association.
	(resolve_code): Fix BLOCK resolution.
	(resolve_symbol): Generate array-spec for associate-names.

2010-08-15  Daniel Kraft  <d@domob.eu>

	PR fortran/38936
	* gfortran.dg/associate_1.f03: Enable test for array expressions.
	* gfortran.dg/associate_3.f03: Clarify comment.
	* gfortran.dg/associate_5.f03: New test.
	* gfortran.dg/associate_6.f03: New test.

From-SVN: r163268
2010-08-15 21:46:21 +02:00
Iain Sandoe
5fc265c14f rationalize libgcc stub & static lib linkage on Darwin 9 & 10.
* config/darwin.h (REAL_LIBGCC_SPEC): Remove libgcc_s.10.5 stub for 
	Darwin10.  Do not link libgcc.a for Darwin >= 9.

From-SVN: r163267
2010-08-15 19:15:55 +00:00
Gerald Pfeifer
09ccff9f3d invoke.texi (Warning Options): Fix terminology and markup in the description of how unknown warning options...
* doc/invoke.texi (Warning Options): Fix terminology and markup
	in the description of how unknown warning options are handled.

From-SVN: r163266
2010-08-15 18:26:01 +00:00
Tobias Burnus
ba3721c1c2 re PR fortran/45211 (C interoperable error when compiling BIND(C) function in a module.)
2010-08-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45211
        * decl.c (verify_c_interop_param): Remove superfluous space (" ").
        (verify_c_interop): Handle unresolved DT with bind(C).

2010-08-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45211
        * gfortran.dg/bind_c_usage_21.f90: New.
        * gfortran.dg/bind_c_dts_3.f03: Update dg-error.

From-SVN: r163264
2010-08-15 18:20:56 +02:00
Tobias Burnus
08857b6111 trans-expr.c (gfc_conv_expr_present): Regard nullified pointer arrays as absent.
2010-08-15  Tobias Burnus  <burnus@net-b.de>

        * trans-expr.c (gfc_conv_expr_present): Regard nullified
        pointer arrays as absent.
        (gfc_conv_procedure_call): Handle EXPR_NULL for non-pointer
        dummys as absent argument.
        * interface.c (compare_actual_formal,compare_parameter):
        Ditto.

2010-08-15  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/optional_absent_1.f90: New.
        * gfortran.dg/null_actual.f90: New.

From-SVN: r163263
2010-08-15 18:04:49 +02:00
Tobias Burnus
7d54ef80fe interface.c (compare_pointer, ): Allow passing TARGETs to pointers dummies with intent(in).
2010-08-15  Tobias Burnus  <burnus@net-b.de>

        * interface.c (compare_pointer, ): Allow passing TARGETs to
        pointers dummies with intent(in).

2010-08-15  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/pointer_target_1.f90: New.
        * gfortran.dg/pointer_target_2.f90: New.
        * gfortran.dg/pointer_target_3.f90: New.

From-SVN: r163262
2010-08-15 17:47:11 +02:00
Daniel Kraft
e6c148988c re PR fortran/45197 ([F2008] Allow IMPURE elemental procedures)
2010-08-15  Daniel Kraft  <d@domob.eu>

	PR fortran/45197
	* decl.c (gfc_match_prefix): Match IMPURE prefix and mark ELEMENTAL
	routines not IMPURE also as PURE.
	* intrinsic.c (enum klass): New class `CLASS_PURE' and renamed
	`NO_CLASS' in `CLASS_IMPURE'.
	(add_sym): Set symbol-attributes `pure' and `elemental' correctly.
	(add_sym_0s): Renamed `NO_CLASS' in `CLASS_IMPURE'.
	(add_functions): Ditto.
	(add_subroutines): Ditto and mark `MOVE_ALLOC' as CLASS_PURE.
	* resolve.c (gfc_pure): Do not treat ELEMENTAL as automatically PURE.
	(resolve_formal_arglist): Check that arguments to ELEMENTAL procedures
	are not ALLOCATABLE and have their INTENT specified.

2010-08-15  Daniel Kraft  <d@domob.eu>

	PR fortran/45197
	* gfortran.dg/elemental_args_check_3.f90: New test.
	* gfortran.dg/impure_1.f08: New test.
	* gfortran.dg/impure_2.f08: New test.
	* gfortran.dg/impure_3.f90: New test.
	* gfortran.dg/typebound_proc_6.f03: Changed expected error message.

From-SVN: r163261
2010-08-15 17:28:10 +02:00