Commit Graph

103083 Commits

Author SHA1 Message Date
Daniel Kraft 8c91ab34b5 re PR fortran/38936 ([F03] ASSOCIATE construct / improved SELECT TYPE (a=>expr))
2010-09-23  Daniel Kraft  <d@domob.eu>

	PR fortran/38936
	PR fortran/44044
	PR fortran/45474
	* gfortran.h (gfc_check_vardef_context): New method.
	(struct symbol_attribute): New flag `select_type_temporary'.
	* primary.c (gfc_variable_attr): Clarify initialization of ref.
	(match_variable): Remove PROTECTED check and assignment check
	for PARAMETERs (this is now done later).
	* match.c (gfc_match_iterator): Remove INTENT(IN) check.
	(gfc_match_associate): Defer initialization of newAssoc->variable.
	(gfc_match_nullify): Remove PURE definability check.
	(select_type_set_tmp): Set new `select_type_temporary' flag.
	* expr.c (gfc_check_assign): Remove INTENT(IN) check here.
	(gfc_check_pointer_assign): Ditto (and other checks removed).
	(gfc_check_vardef_context): New method.
	* interface.c (compare_parameter_protected): Removed.
	(compare_actual_formal): Use `gfc_check_vardef_context' for checks
	related to INTENT([IN]OUT) arguments.
	* intrinsic.c (check_arglist): Check INTENT for intrinsics.
	* resolve.c (gfc_resolve_iterator): Use `gfc_check_vardef_context'.
	(remove_last_array_ref): New method.
	(resolve_deallocate_expr), (resolve_allocate_expr): Ditto.
	(resolve_allocate_deallocate): Ditto (for STAT and ERRMSG).
	(resolve_assoc_var): Remove checks for definability here.
	(resolve_select_type): Handle resolving of code->block here.
	(resolve_ordinary_assign): Remove PURE check.
	(resolve_code): Do not resolve code->blocks for SELECT TYPE here.
	Use `gfc_check_vardef_context' for assignments and pointer-assignments.

2010-09-23  Daniel Kraft  <d@domob.eu>

	PR fortran/38936
	PR fortran/44044
	PR fortran/45474
	* gfortran.dg/intrinsic_intent_1.f03: New test.
	* gfortran.dg/select_type_17.f03: New test.
	* gfortran.dg/associate_5.f03: More definability tests.
	* gfortran.dg/enum_2.f90: Check definability.
	* gfortran.dg/allocatable_dummy_2.f90: Change expected error message.
	* gfortran.dg/allocate_alloc_opt_2.f90: Ditto.
	* gfortran.dg/char_expr_2.f90: Ditto.
	* gfortran.dg/deallocate_alloc_opt_2.f90: Ditto.
	* gfortran.dg/enum_5.f90: Ditto.
	* gfortran.dg/equiv_constraint_8.f90: Ditto.
	* gfortran.dg/impure_assignment_2.f90: Ditto.
	* gfortran.dg/impure_assignment_3.f90: Ditto.
	* gfortran.dg/intent_out_1.f90: Ditto.
	* gfortran.dg/intent_out_3.f90: Ditto.
	* gfortran.dg/pointer_assign_7.f90: Ditto.
	* gfortran.dg/pointer_intent_3.f90: Ditto.
	* gfortran.dg/pr19936_1.f90: Ditto.
	* gfortran.dg/proc_ptr_comp_3.f90: Ditto.
	* gfortran.dg/simpleif_2.f90: Ditto.
	* gfortran.dg/protected_5.f90: Ditto.
	* gfortran.dg/protected_4.f90: Ditto and remove invalid error check.
	* gfortran.dg/protected_6.f90: Ditto.
	* gfortran.dg/protected_7.f90: Ditto.

From-SVN: r164550
2010-09-23 10:37:54 +02:00
Jerry DeLisle 42d9f9dd0f re PR fortran/45710 (Adjust format and padding for WRITE of NAMELIST group to internal file)
2010-09-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/45710
	* gfortran.dg/namelist_65.f90: New test.

From-SVN: r164548
2010-09-23 01:28:39 +00:00
Jerry DeLisle 4363c7a151 re PR fortran/45710 (Adjust format and padding for WRITE of NAMELIST group to internal file)
2010-09-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/45710
	* io/write.c (namelist_write_newline): Pad character array internal
	unit records with spaces.

From-SVN: r164543
2010-09-23 00:53:15 +00:00
GCC Administrator 7d98865eda Daily bump.
From-SVN: r164542
2010-09-23 00:18:26 +00:00
Eric Botcazou 40ea67af0a re PR java/44095 (massive java failures due to -findirect-dispatch breakage on sparc64-linux)
PR java/44095
	* config/sparc/linux.h (ASM_SPEC): Pass -K PIC if -findirect-dispatch
	is specified and the suffix of the file isn't ".c".
	* config/sparc/linux64.h (ASM_SPEC): Likewise.

From-SVN: r164534
2010-09-22 21:14:50 +00:00
Ralf Wildenhues ab940b73bf Improve formatting of manuals.
contrib/:
	* texi2pod.pl: Replace @@ before @{ and @}, for @samp{@@}.
	Also escape characters with grave accents, to be fixed ...
	(unmunge): ... here.
	(postprocess): Also handle @/ and @acronym{...}.

gcc/:
	* doc/contrib.texi (Contributors): Allow URL to wrap in PDF
	output.
	* doc/cppopts.texi: Fix markup of index entry.
	* doc/extend.texi (Constructing Calls): Fix markup of
	__builtin_va_arg_pack and __builtin_va_arg_pack_len definition.
	(Conditionals, C++ Comments, Pragmas, Unnamed Fields, Thread-Local)
	(Vague Linkage, C++ Attributes): Fix markup of index entries and
	keywords.
	* doc/invoke.texi (Option Summary): Fix spacing.  Rewrap to
	avoid long lines.
	(C Dialect Options, C++ Dialect Options, Warning Options)
	(Debugging Options, Spec Files, Darwin Options)
	(i386 and x86-64 Options, MIPS Options)
	(RS/6000 and PowerPC Options, Code Gen Options): Fix markup of
	index entries, avoid abbreviations, allow URLs to wrap, avoid
	long lines, avoid overlong pages from long @itemx lists.
	* doc/objc.texi (Garbage Collection): Allow URLs to wrap.
	* doc/standards.texi (Standards): Likewise.
	* doc/trouble.texi (Incompatibilities): Fix markup of index
	entry.

gcc/fortran/:
	* gfortran.texi (Argument list functions): Allow URL to wrap.
	* intrinsic.texi (GETGID, GETPID, GETUID, IMAGE_INDEX)
	(IS_IOSTAT_END, IS_IOSTAT_EOR, NUM_IMAGES, THIS_IMAGE)
	(ISO_FORTRAN_ENV): Fix markup in index entries, and a couple of
	code markups in the text.
	* invoke.texi (Fortran Dialect Options)
	(Error and Warning Options, Directory Options, Code Gen Options):
	Likewise.  Remove @code inside @smallexample.

From-SVN: r164533
2010-09-22 20:22:51 +00:00
Joseph Myers 60cf253a8b opts-common.c (prune_options): Make static.
* opts-common.c (prune_options): Make static.  Work with decoded
	options.
	(decode_cmdline_options_to_array): Call prune_options.  Don't
	resize option array here.
	* opts.h (prune_options): Remove prototype.
	* gcc.c (process_command): Take decoded options; don't call
	decode_cmdline_options_to_array here.  Use decoded options for
	argv[0].
	(main): Call decode_cmdline_options_to_array here instead of
	prune_options.  Update call to process_command.
	* config/darwin-driver.c: Include opts.h.
	(darwin_default_min_version): Work with decoded options.  Don't
	handle -b or -V here.
	* config/darwin.h (darwin_default_min_version): Update prototype.
	(GCC_DRIVER_HOST_INITIALIZATION): Update call to
	darwin_default_min_version.
	* config/i386/cygwin.h (mingw_scan): Update prototype.
	(GCC_DRIVER_HOST_INITIALIZATION): Update call to mingw_scan.
	* config/i386/cygwin1.c: Include opts.h.
	(mingw_scan): Work with decoded options.
	* config/i386/t-cygwin (cygwin1.o): Update dependencies.
	* config/t-darwin (darwin-driver.o): Update dependencies.

From-SVN: r164532
2010-09-22 21:19:39 +01:00
Joseph Myers e200444e3b common.opt (-assemble, [...]): New.
* common.opt (-assemble, -compile, -coverage, -debug, -dump,
	-dump=, -dumpbase, -dumpdir, -entry, -entry=, -extra-warnings,
	-for-assembler, -for-assembler=, -for-linker, -for-linker=,
	-force-link, -force-link=, -language, -language=,
	-library-directory, -library-directory=, -no-canonical-prefixes,
	-no-standard-libraries, -no-warnings, -optimize, -output,
	-output=, -pass-exit-codes, -pedantic, -pedantic-errors, -pie,
	-pipe, -prefix, -prefix=, -preprocess, -print-file-name,
	-print-file-name=, -print-libgcc-file-name,
	-print-multi-directory, -print-multi-lib,
	-print-multi-os-directory, -print-prog-name, -print-prog-name=,
	-print-search-dirs, -print-sysroot, -print-sysroot-headers-suffix,
	-profile, -save-temps, -shared, -specs, -specs=, -static,
	-symbolic, -time, -verbose, -param=, -sysroot, coverage, e, u,
	symbolic): New.
	(fhelp, fhelp=, ftarget-help, fversion): Make into aliases.
	* gcc.c (A Short Introduction to Adding a Command-Line Option):
	Remove comment.
	(cc1_options): Correct specs for passing down --help,
	--target-help and --help=*.  Add spec for passing down --version.
	(struct option_map, option_map, target_option_translations,
	translate_options): Remove.
	(driver_handle_option): Handle OPT__version, OPT__help, OPT__help_
	and OPT__target_help instead of OPT_fversion, OPT_fhelp,
	OPT_fhelp_ and OPT_ftarget_help.
	(process_command): Don't call translate_options.  Call
	decode_cmdline_options_to_array before checking for
	-no-canonical-prefixes using decoded options.
	* opts-common.c (tm.h): Update comment on #include.
	(find_opt): Allow abbreviations of long options.
	(struct option_map, option_map): New.
	(decode_cmdline_option): Use them instead of hardcoding -Wno, -fno
	and -mno handling.
	(target_option_translations): New.
	(decode_cmdline_options_to_array): Handle
	TARGET_OPTION_TRANSLATE_TABLE in driver.
	* opts.c (common_handle_option): Don't handle OPT_fhelp,
	OPT_ftarget_help, OPT_fhelp_ or OPT_fversion.

ada:
	* gcc-interface/lang.opt (-all-warnings, -include-barrier,
	-include-directory, -include-directory=, -no-standard-includes,
	-no-standard-libraries): New.

c-family:
	* c.opt (-all-warnings, -ansi, -assert, -assert=, -comments,
	-comments-in-macros, -define-macro, -define-macro=, -dependencies,
	-dump, -dump=, -imacros, -imacros=, -include, -include=,
	-include-barrier, -include-directory, -include-directory=,
	-include-directory-after, -include-directory-after=,
	-include-prefix, -include-prefix=, -include-with-prefix,
	-include-with-prefix=, -include-with-prefix-after,
	-include-with-prefix-after=, -include-with-prefix-before,
	-include-with-prefix-before=, -no-integrated-cpp,
	-no-line-commands, -no-standard-includes, -no-warnings, -output,
	-output=, -pedantic, -pedantic-errors, -preprocess,
	-print-missing-file-dependencies, -trace-includes, -traditional,
	-traditional-cpp, -trigraphs, -undefine-macro, -undefine-macro=,
	-user-dependencies, -verbose, -write-dependencies,
	-write-user-dependencies, no-integrated-cpp, traditional): New.

fortran:
	* gfortranspec.c (lang_specific_driver): Handle OPT__version and
	OPT__help instead of OPT_fversion and OPT_fhelp.
	* lang.opt (-all-warnings, -assert, -assert=, -comments,
	-comments-in-macros, -define-macro, -define-macro=, -dependencies,
	-dump, -dump=, -include-barrier, -include-directory,
	-include-directory=, -include-directory-after,
	-include-directory-after=, -include-prefix, -include-prefix=,
	-no-line-commands, -no-standard-includes, -output, -output=,
	-preprocess, -print-missing-file-dependencies, -trace-includes,
	-undefine-macro, -undefine-macro=, -user-dependencies, -verbose,
	-write-dependencies, -write-user-dependencies): New.

java:
	* jvspec.c (lang_specific_driver): Handle OPT__help instead of
	OPT_fhelp.
	* lang.opt (-CLASSPATH, -all-warnings, -bootclasspath, -classpath,
	-dependencies, -encoding, -extdirs, -include-directory,
	-include-directory=, -output-class-directory,
	-output-class-directory=, -resource, -resource=,
	-user-dependencies): New.

From-SVN: r164531
2010-09-22 21:12:06 +01:00
Paolo Carlini c98ca4c79c 2010-09-22 Paolo Carlini <paolo.carlini@oracle.com>
* Fix typo in last ChangeLog entry.

From-SVN: r164530
2010-09-22 19:46:06 +00:00
David Krauss 3531cf5ef3 re PR libstdc++/45628 (std::fstream::tellg invalidates I/O buffer)
2010-09-22  David Krauss  <potswa@mac.com>

	PR libstdc++/45628
	* include/bits/fstream.tcc (basic_filebuf::underflow): Add state
	transition to avoid modality requiring seekoff(0,ios::cur).
	(basic_filebuf::pbackfail): Likewise.
	(basic_filebuf::overflow): Likewise.
	(basic_filebuf::_M_seek): Avoid minor unnecessary conversion.
	(basic_filebuf::seekoff): Remove code to _M_get_ext_pos; make
	(0, ios::cur) a special case preserving buffer contents.
	(basic_filebuf::_M_get_ext_pos): New function to obtain status
	about codecvt extern_t buffer for overflow and seekoff.
	* include/std/fstream (basic_filebuf::_M_get_ext_pos): Likewise.
	* config/abi/pre/gnu.ver: Export new symbols.
	* testsuite/27_io/basic_filebuf/seekoff/char/45628-1.cc: New,
	verifies that seekoff(0, ios::cur) preserves buffers.
	* testsuite/27_io/basic_filebuf/seekoff/char/45628-2.cc: Likewise.
	for codecvt case. More lenient as it may still flush put area.
	* testsuite/27_io/basic_filebuf/seekoff/char/4.cc: Modify to
	check that seekoff is not required between read and write.
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Likewise.
	* testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc: Remove.
	* testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc: Likewise.
	* testsuite/util/testsuite_character.h (codecvt::do_length): Comply
	with 22.2.1.5.2/10 "Returns ... the LARGEST value in the range..."

From-SVN: r164529
2010-09-22 19:40:43 +00:00
Paolo Carlini 5d64ee190c functional_hash.h (__hash_base): Add.
2010-09-22  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/functional_hash.h (__hash_base): Add.
	(hash): Derive from __hash_base instead.
	* include/debug/bitset (hash): Likewise.
	* include/debug/vector (hash): Likewise.
	* include/std/system_error (hash): Likewise.
	* include/std/thread (hash): Likewise.
	* include/std/bitset (hash): Likewise.
	* include/profile/bitset (hash): Likewise.
	* include/profile/vector (hash): Likewise.
	* include/bits/basic_string.h (hash): Likewise.
	* include/bits/stl_bvector.h (hash): Likewise.
	* include/std/typeindex (hash): Do not derive from unary_function,
	add result_type and argument_type typedefs; trim includes.

From-SVN: r164528
2010-09-22 17:50:36 +00:00
Marcus Shawcroft 1cf2589d14 scanasm.exp (dg-function-on-line): Permit .fnstart to appear in the regexp pattern between the expected label and...
2010-09-22  Marcus Shawcroft  <marcus.shawcroft@arm.com>

	* lib/scanasm.exp(dg-function-on-line): Permit .fnstart to appear in
        the regexp pattern between the expected label and location string.

From-SVN: r164527
2010-09-22 16:31:19 +00:00
Richard Guenther 5d7b099c0a tree-inline.c (optimize_inline_calls): Schedule cleanups only if we inlined something.
2010-09-22  Richard Guenther  <rguenther@suse.de>

	* tree-inline.c (optimize_inline_calls): Schedule cleanups
	only if we inlined something.  Block compaction and conditional
	folding are done by cfg cleanup.  Schedule update-address-taken.
	(tree_function_versioning): Remove redundant call to number_blocks.
	* tree-optimize.c (execute_cleanup_cfg_post_optimizing): Conditional
	folding is done by cfg cleanup.
	* passes.c (init_optimization_passes): Remove update-address-taken
	pass after IPA inlining.

From-SVN: r164525
2010-09-22 14:44:13 +00:00
Chung-Lin Tang 27d5e204ca postreload.c (move2add_note_store): Add reg_symbol_ref[] checks to update conditions.
* postreload.c (move2add_note_store): Add reg_symbol_ref[] checks
	to update conditions. Fix reg_mode[] check.

From-SVN: r164524
2010-09-22 14:38:08 +00:00
Hariharan Sandanagobalane be6388e18a picochip.md (movhicc): Use expand to check whether movhicc is available and split it after reload.
* config/picochip/picochip.md (movhicc): Use expand to check whether
        movhicc is available and split it after reload.

From-SVN: r164523
2010-09-22 14:07:11 +00:00
Richard Guenther 736fe2d54b tree-ssanames.c (release_dead_ssa_names): Do not remove callee edges here.
2010-09-22  Richard Guenther  <rguenther@suse.de>

	* tree-ssanames.c (release_dead_ssa_names): Do not remove
	callee edges here.
	* passes.c (init_optimization_passes): Remove early CFG cleanup.
	* tree-optimize.c (execute_cleanup_cfg_pre_ipa): Remove.
	(pass_cleanup_cfg): Likewise.
	(execute_fixup_cfg): Cleanup.
	* tree-pass.h (pass_cleanup_cfg): Remove.

From-SVN: r164522
2010-09-22 12:15:56 +00:00
Paolo Carlini bafa9791ac typeindex: New.
2010-09-22  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/typeindex: New.
	* include/Makefile.am: Add.
	* include/Makefile.in: Regenerate.
	* include/precompiled/stdc++.h: Add.
	* testsuite/20_util/typeindex/comparison_operators.cc: New.
	* testsuite/20_util/typeindex/hash.cc: Likewise.
	* testsuite/20_util/typeindex/hash_code.cc: Likewise.
	* testsuite/20_util/typeindex/name.cc: Likewise.

	* testsuite/18_support/type_info/hash_code.cc: Tweak.

From-SVN: r164521
2010-09-22 12:04:08 +00:00
Marcus Shawcroft 7d0255bd9f pr28706.c: Typo fix to dg-require-effective-target lto.
2010-09-22  Marcus Shawcroft  <marcus.shawcroft@arm.com>

	* gcc.dg/pr28706.c: Typo fix to dg-require-effective-target lto.

From-SVN: r164520
2010-09-22 10:20:39 +00:00
Marcus Shawcroft ae0d6a88ea pr41893-1.c: Typo fix to dg-require-effective-target lto.
2010-09-22  Marcus Shawcroft  <marcus.shawcroft@arm.com>

        * gcc.dg/debug/pr41893-1.c: Typo fix to dg-require-effective-target lto.
        * gcc.dg/pr27898.c: Likewise.
        * gcc.dg/pr28712.c: Likewise.
        * gcc.dg/pr30762-1.c: Likewise.
        * gcc.dg/pr31529-1.c: Likewise.
        * gcc.dg/pr34457-1.c: Likewise.
        * gcc.dg/pr34668-1.c: Likewise.
        * gcc.dg/pr34989-1.c: Likewise.
        * gcc.dg/pr43557-1.c: Likewise.

From-SVN: r164519
2010-09-22 10:10:23 +00:00
Tristan Gingold a69d9775fc cplus-dem.c (ada_demangle): Add comments.
2010-09-22 Tristan Gingold  <gingold@adacore.com>

	* cplus-dem.c (ada_demangle): Add comments.
	Handle stream and controlled type operations.
	Decoding of some uppercase letters moved before separators.
	* testsuite/demangle-expected: Add tests.

From-SVN: r164518
2010-09-22 09:26:03 +00:00
Martin Jambor 23c1da7a37 gimple-fold.c (fold_gimple_call): New parameter inplace, do not fold builtins if it is true.
2010-09-22  Martin Jambor  <mjambor@suse.cz>

	* gimple-fold.c (fold_gimple_call): New parameter inplace, do not fold
	builtins if it is true.
	(fold_stmt_1): Call, fold_gimple_call always, pass inplace as a
	parameter.

From-SVN: r164517
2010-09-22 11:02:48 +02:00
Jakub Jelinek bbaee6884c re PR rtl-optimization/45739 (static evaluation of SSE intrinsics (pxor))
PR rtl-optimization/45739
	* gcc.target/i386/pr45739.c: Tighten up scan-assembler-not
	regexps.

From-SVN: r164516
2010-09-22 10:57:38 +02:00
Martin Jambor 9271a43cbf tree-sra.c (struct access): New field grp_no_warning.
2010-09-22  Martin Jambor  <mjambor@suse.cz>

	* tree-sra.c (struct access): New field grp_no_warning.
	(create_access_replacement): Set TREE_NO_WARNING according to
	 grp_no_warning.
	(create_artificial_child_access): Use build_ref_for_model and set
	grp_no_warning if build_user_friendly_ref_for_offset fails.
	(propagate_subaccesses_across_link): Likewise.

From-SVN: r164515
2010-09-22 10:48:17 +02:00
Eric Botcazou 77167b6f44 re PR target/35664 (unable to find a register to spill in class 'FP_REGS')
PR target/35664
	* config/sparc/constraints.md ('e'): Return NO_REGS if !TARGET_FPU.
	('f'): Likewise.

From-SVN: r164512
2010-09-22 08:31:14 +00:00
Tristan Gingold 50842acbc6 alpha.c (alpha_use_linkage): Initialize target field.
2010-09-22  Tristan Gingold  <gingold@adacore.com>

	* config/alpha/alpha.c (alpha_use_linkage): Initialize target field.

From-SVN: r164511
2010-09-22 08:21:14 +00:00
Paolo Carlini 33da99cb9c hash_bytes.cc: Move...
2010-09-22  Paolo Carlini  <paolo.carlini@oracle.com>

	* src/hash_bytes.cc: Move...
	* libsupc++/hash_bytes.cc: ... here.
	* src/Makefile.am: Adjust.
	* libsupc++/Makefile.am: Likewise.
	* config/abi/pre/gnu.ver: Likewise.
	* libsupc++/typeinfo (type_info::hash_code): Add in C++0x mode.
	* src/Makefile.in: Regenerate.
	* libsupc++/Makefile.am: Likewise.
	* testsuite/18_support/type_info/hash_code.cc: New.

From-SVN: r164510
2010-09-22 08:19:08 +00:00
Uros Bizjak c69fa2d460 i386.h (MAX_STRINGOP_ALGS): Fix typo in the name.
* config/i386/i386.h (MAX_STRINGOP_ALGS): Fix typo in the name.
	* config/i386/i386.c (decide_alg): Update for rename.

From-SVN: r164509
2010-09-22 09:41:13 +02:00
Nicola Pero ac1fc2fcac Fixed ChangeLog entry for a previous commit of mine
From-SVN: r164508
2010-09-22 07:20:32 +00:00
Jerry DeLisle 3bddec9b92 re PR libfortran/45723 (opening /dev/null for appending writes)
2010-09-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/45723
	* io/open.c (new_unit): On POSITION_APPEND don't seek if file length is
	zero.

From-SVN: r164507
2010-09-22 03:10:24 +00:00
GCC Administrator efd6aa2ff5 Daily bump.
From-SVN: r164506
2010-09-22 00:17:33 +00:00
Jason Merrill 6b9d99803e mangle.c (write_expression): Only do -fabi-version=1 special handling if we know the member.
* mangle.c (write_expression) [SCOPE_REF]: Only do -fabi-version=1
	special handling if we know the member.

From-SVN: r164502
2010-09-21 19:40:30 -04:00
Jakub Jelinek a82e045dea re PR rtl-optimization/45739 (static evaluation of SSE intrinsics (pxor))
PR rtl-optimization/45739
	* simplify-rtx.c (simplify_binary_operation_1): Optimize even
	vector mode | CONST0_RTX (mode) and ^ CONST0_RTX (mode).

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

From-SVN: r164501
2010-09-22 01:33:01 +02:00
Nicola Pero 29a80ea628 Fixed ChangeLog entries for my last commit
From-SVN: r164499
2010-09-21 22:27:43 +00:00
Nicola Pero 45547c7fca re PR objc/23710 (objc front-end should not "abort" after erroring out about method definition not in class context)
PR objc/23710
In gcc/:
        * c-family/c-common.h (objc_start_method_definition): Return bool
        instead of void.
        * c-family/stub-objc.c (objc_start_method_definition): Return bool
        instead of void.
        * c-parser.c (c_parser_objc_method_definition): Check the return
        value of objc_start_method_definition and if false is returned,
        parse the method definition but emit no code.
In gcc/objc/:
        * objc-act.c (objc_start_method_definition): Do not abort upon a
        'method definition not in @implementation context' error.  Return
        'false' instead.
In gcc/testsuite/:
       * objc.dg/invalid-method-1.m: New.

From-SVN: r164497
2010-09-21 20:47:04 +00:00
Jason Blevins ec5e67bf4f intrinsics.texi (HYPOT, [...]): Correct spelling.
2010-09-21  Jason Blevins  <jrblevin@sdf.org>

        * intrinsics.texi (HYPOT, IMAGE_INDEX, BESSEL_JN, BESSEL_YN,
        execute_command_line, IEOR, IOR, NORM2, NOT, NULL, PARITY):
        Correct spelling.

From-SVN: r164496
2010-09-21 21:12:44 +02:00
Mikael Morin 0b4f2770ff re PR fortran/45648 (Unnecessary temporary for transpose calls as actual argument.)
2010-09-21  Mikael Morin  <mikael@gcc.gnu.org>

	PR fortran/45648
	* trans-array.c (gfc_conv_expr_descriptor): Calculate dim out of n and
	info->dim.

	PR fortran/45648
	* trans-array.c (gfc_conv_expr_descriptor): Unset full if we are
	accessing dimensions in reversed order. 

	PR fortran/45648
	* trans-array.c (gfc_conv_expr_descriptor): Special case noncopying
	intrinsic function call. 

	* trans-array.c (gfc_conv_expr_descriptor): Remove ss lookup.
	Update asserts accordingly.

	PR fortran/45648
	* trans.h (gfc_se): New field force_tmp. 
	* trans-expr.c (gfc_conv_procedure_call): Check for argument alias
	and set parmse.force_tmp if some alias is found. 
	* trans-array.c (gfc_conv_expr_descriptor): Force a temporary creation
	if se->force_tmp is set. 

2010-09-21  Mikael Morin  <mikael@gcc.gnu.org>

	PR fortran/45648
	* gfortran.dg/inline_transpose_1.f90: Update temporary's locations
	and counts. Add non-elemental function call check.

	PR fortran/45648
	* gfortran.dg/inline_transpose_1.f90: Add function calls with aliasing
	arguments checks. Update temporary counts.
	* gfortran.dg/transpose_optimization_1.f90: New.

From-SVN: r164494
2010-09-21 19:04:09 +00:00
Anatoly Sokolov 5e68c77aff rs6000.h (OUTPUT_ADDR_CONST_EXTRA): Remove macros.
* config/rs6000/rs6000.h (OUTPUT_ADDR_CONST_EXTRA): Remove macros.
	* config/rs6000/rs6000-protos.h (rs6000_output_addr_const_extra):
	Remove.
	* config/rs6000/rs6000.c (rs6000_output_addr_const_extra): Make
	static.
	(TTARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.

From-SVN: r164493
2010-09-21 23:03:25 +04:00
Kai Tietz 7df82166ce Remove strayed semicolon.
From-SVN: r164492
2010-09-21 21:03:11 +02:00
Nicola Pero c0c24aa470 re PR objc/25965 (Allows duplicate member names in objc subclasses)
PR objc/25965
In gcc/objc/:
       * objc-act.c (objc_get_interface_ivars): New function.
       (objc_collecting_ivars): New variable.
       (continue_class): Set and reset objc_collecting_ivars for context.
In gcc/:
       * c-decl.c (detect_field_duplicates): If compiling Objective-C,
       call objc_get_interface_ivars ().
       * c-family/c-common.h (objc_get_interface_ivars): New declaration.
       * c-family/stub-objc.c (objc_get_interface_ivars): New stub.
In gcc/objcp/:
       * objcp-decl.c (objcp_finish_struct): Call
       objc_get_interface_ivars() and check for duplicate ivars.

In gcc/testsuite/:
       Merge from 'apple/trunk' branch on FSF servers.

       2005-10-11  Fariborz Jahanian <fjahanian@apple.com>

               Radar 4291785

               objc.dg/naming-4.m: New
               objc.dg/naming-5.m: New
               obj-c++.dg/naming-1.mm: New
               obj-c++.dg/naming-2.mm: New

From-SVN: r164491
2010-09-21 18:51:34 +00:00
Kai Tietz f997b875dd re PR target/45694 ([MinGW64] fortran host associated variables+optimization==failure?)
2010-09-21  Kai Tietz  <kai.tietz@onevision.com>

        PR target/45694
        * config/i386/i386.c (ix86_expand_prologue): Save r10 in case that
        static chain-register is used for 64-bit.

From-SVN: r164489
2010-09-21 19:58:32 +02:00
Richard Guenther 54394f4d8d dwarf2out.c (is_cu_die): New function.
2010-09-21  Richard Guenther  <rguenther@suse.de>

	* dwarf2out.c (is_cu_die): New function.
	(add_pubtype): Use it.
	(gen_subprogram_die): Likewise.
	(gen_struct_or_union_type_die): Likewise.
	(dwarf2out_finish): Likewise.
	(comp_unit_die): Rename to ...
	(single_comp_unit_die): ... this.
	(comp_unit_die): New function lazily constructing and
	returning single_comp_unit_die.
	(is_cxx, is_fortran, is_ada, debug_dwarf, break_out_comdat_types,
	base_type_die, subrange_type_die, modified_type_die,
	lower_bound_default, add_bound_info, add_prototyped_attribute,
	dwarf2out_vms_debug_main_pointer, scope_die_for, retry_incomplete_types,
	dwarf2out_abstract_function, gen_type_die_with_usage, get_context_die,
	force_decl_die, gen_namespace_die, dwarf2out_decl,
	dwarf2out_start_source_file, dwarf2out_end_source_file,
	prune_unused_types, dwarf2out_finish): Use it.
	(gen_compile_unit_die): For GNU GIMPLE derive DW_AT_language from
	the global list of translation-unit decls.
	(dwarf2out_init): Do not create single_comp_unit_die here.
	(force_decl_die): Handle TRANSLATION_UNIT_DECL.

From-SVN: r164484
2010-09-21 15:21:48 +00:00
Richard Guenther 9cad5fe7b5 dwarf2out.c (dwarf2out_decl): Do not always generate a DIE for bool for C++.
2010-09-21  Richard Guenther  <rguenther@suse.de>

	* dwarf2out.c (dwarf2out_decl): Do not always generate a DIE
	for bool for C++.

From-SVN: r164483
2010-09-21 15:19:02 +00:00
Iain Sandoe 5b50fc0c88 Makefile.in (libgcc-extra-parts): Check for static archives and invoke ranlib after installing them.
* Makefile.in (libgcc-extra-parts):  Check for static archives and
	invoke ranlib after installing them.
	(gcc-extra-parts): Likewise.
	(install-leaf): Likewise.

From-SVN: r164482
2010-09-21 14:43:59 +00:00
Iain Sandoe db50fe7da0 configure.ac (enable-lto): Add Darwin to the list of supported lto targets and amend comment.
* configure.ac (enable-lto): Add Darwin to the list of supported lto
	targets and amend comment.
	* configure: Regenerate.

From-SVN: r164481
2010-09-21 14:32:36 +00:00
Jonathan Wakely 5c0f24d0db re PR c++/45645 (pr44972.C fails with error: ‘__assert_fail’ was not declared in this scope)
2010-09-21  Jonathan Wakely  <redi@gcc.gnu.org>
	    Jack Howarth  <howarth@bromo.med.uc.edu>

	PR c++/45645
	* g++.dg/torture/pr44972.C: Use portable assert().


Co-Authored-By: Jack Howarth <howarth@bromo.med.uc.edu>

From-SVN: r164479
2010-09-21 14:12:58 +00:00
Jack Howarth d80148b8d4 configure.ac: Set LIBMATHSPEC to -lm except on darwin.
2010-09-21  Jack Howarth <howarth@bromo.med.uc.edu>

	* libjava/configure.ac: Set LIBMATHSPEC to -lm except on darwin.
	* libjava/libgcj.spec.in: Use LIBMATHSPEC.
	* libjava/configure: Regenerate.

From-SVN: r164478
2010-09-21 14:01:43 +00:00
Bernd Schmidt c9cdcaa590 iterators.md (qhs_extenddi_op): New mode_attr.
* config/arm/iterators.md (qhs_extenddi_op): New mode_attr.
	(qhs_extenddi_cstr): Likewise.
	* config/arm/arm.md (zero_extend<mode>di2, extend<mode>di2): Use
	them for the source operand.

From-SVN: r164477
2010-09-21 13:11:03 +00:00
Uros Bizjak 903c31ee41 i386.c (ix86_split_ashl): Rename single_width variable to half_width.
* config/i386/i386.c (ix86_split_ashl): Rename single_width variable
	to half_width.  Use GET_MODE_BITSIZE to calculate mode size.
	(ix86_split_ashr): Ditto.
	(ix86_split_lshr): Ditto.

From-SVN: r164476
2010-09-21 13:42:06 +02:00
Richard Guenther ce2b1d68a3 re PR tree-optimization/45580 (Building WebKit fails with compiler catching SIGSEGV in gimple_fold_obj_type_ref_known_binfo())
2010-09-21  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/45580
	* tree-ssa-propagate.c (substitute_and_fold): Always replace
	regular uses.
	* gimple-fold.c (gimple_fold_obj_type_ref): For a BINFO without
	virtuals fold the call into a regular indirect one.

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

From-SVN: r164474
2010-09-21 09:52:00 +00:00
GCC Administrator 1c7f2bc8dd Daily bump.
From-SVN: r164472
2010-09-21 00:19:32 +00:00