Commit Graph

103797 Commits

Author SHA1 Message Date
Thomas Koenig d4d9b0a641 trans-io.c (gfc_build_io_library_fndecls): Array descriptor arguments to transfer_array can be dereferenced recursively.
2010-10-16  Thomas Koenig  <tkoenig@gcc.gnu.org>

	* trans-io.c (gfc_build_io_library_fndecls):
	Array descriptor arguments to transfer_array can be
	dereferenced recursively.

From-SVN: r165561
2010-10-16 18:47:55 +00:00
Jan Hubicka 844db5d09e cgraph.c (dump_cgraph_node): Dump same_comdat_group, only_called_at_startup and only_called_at_exit.
* cgraph.c (dump_cgraph_node): Dump same_comdat_group,
	only_called_at_startup and only_called_at_exit.
	(cgraph_propagate_frequency): Compute only_called_at_startup and 
	only_called_at_exit.
	* cgraph.h (struct cgraph_node): New fileds only_called_at_startup and
	only_called_at_exit.
	* lto-cgraph.c (lto_output_node, input_overwrite_node): Stream the new
	flags.
	* predict.c (compute_function_frequency): Initialize the new flags.

From-SVN: r165560
2010-10-16 16:59:07 +00:00
Thomas Koenig 6eb6875d7e re PR tree-optimization/20165 (Pointer does not really escape with write)
2010-10-16  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/20165
	PR fortran/31593
	PR fortran/43665
	* gfortran.map:  Add _gfortran_transfer_array_write,
	_gfortran_transfer_array_write, _gfortran_transfer_character_write,
	_gfortran_transfer_character_wide_write,
	_gfortran_transfer_complex_write,
	_gfortran_transfer_integer_write,
	_gfortran_transfer_logical_write and
	_gfortran_transfer_real_write.
	* io/transfer.c (transfer_integer_write):  Add prototype and
	function body as call to the original function, without the
	_write.
	(transfer_real_write):  Likewise.
	(transfer_logical_write):  Likewise.
	(transfer_character_write):  Likewise.
	(transfer_character_wide_write):  Likewise.
	(transfer_complex_write):  Likewise.
	(transfer_array_write):  Likewise.

2010-10-16  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/20165
	PR fortran/31593
	PR fortran/43665
	* trans-io.c (enum iocall): Add IOCALL_X_INTEGER_WRITE,
	IOCALL_X_LOGICAL_WRITE, IOCALL_X_CHARACTER_WRITE,
	IOCALL_X_CHARACTER_WIDE_WRIE, IOCALL_X_REAL_WRITE,
	IOCALL_X_COMPLEX_WRITE and IOCALL_X_ARRAY_WRITE.
	(gfc_build_io_library_fndecls):  Add corresponding function
	decls.
	(transfer_expr):  If the current transfer is a READ, use
	the iocall with the original version, otherwise the version
	with _WRITE.
	(transfer_array_desc):  Likewise.

From-SVN: r165559
2010-10-16 16:06:07 +00:00
Eric Botcazou 08d78391b7 gimplify.c (gimplify_type_sizes): If the type is to be ignored for debug info purposes...
* gimplify.c (gimplify_type_sizes) <ARRAY_TYPE>: If the type is to be
	ignored for debug info purposes, do not clear the DECL_IGNORED_P flag
	on the bounds of its domain.
	* tree.h (DECL_IGNORED_P): Document effect on TYPE_DECL specifically.

From-SVN: r165544
2010-10-16 14:35:59 +00:00
Nicola Pero 5b7cd33063 In gcc/testsuite/: 2010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/testsuite/:
2010-10-16  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc.dg/gnu-api-2-ivar.m: New.

From-SVN: r165543
2010-10-16 14:07:29 +00:00
Nicola Pero 1cde73d75d class.c (class_getSuperclass): Call __objc_resolve_class_links if the class is not resolved yet.
2010-10-16  Nicola Pero  <nicola.pero@meta-innovation.com>

        * class.c (class_getSuperclass): Call __objc_resolve_class_links
        if the class is not resolved yet.
        * ivars.c (class_getInstanceVariable): Use class_getSuperclass.

From-SVN: r165542
2010-10-16 14:03:42 +00:00
Anatoly Sokolov 4b0b4ab069 avr.h (PREFERRED_RELOAD_CLASS): Remove.
* config/avr/avr.h (PREFERRED_RELOAD_CLASS): Remove.
	* config/avr/avr-protos.h (preferred_reload_class): Remove.
	* config/avr/avr.c (preferred_reload_class): Remove.
	* config/pa/pa.h (PREFERRED_RELOAD_CLASS): Remove.
	* config/pa/pa.c (emit_move_sequence): Update comment
	* config/arc/arc.h (PREFERRED_RELOAD_CLASS): Remove.
	* config/crx/crx.h (PREFERRED_RELOAD_CLASS): Remove.
	* config/fr30/fr30.h (PREFERRED_RELOAD_CLASS): Remove.
	* config/frv/frv.h (PREFERRED_RELOAD_CLASS): Remove.
	* config/h8300/h8300.h (PREFERRED_RELOAD_CLASS): Remove.
	* config/lm32/lm32.h (PREFERRED_RELOAD_CLASS): Remove.
	* config/m32r/m32r.h (PREFERRED_RELOAD_CLASS): Remove.
	* config/moxie/moxie.h (PREFERRED_RELOAD_CLASS): Remove.
	* config/picochip/picochip.h (PREFERRED_RELOAD_CLASS): Remove.
	* config/rx/rx.h (PREFERRED_RELOAD_CLASS): Remove.
	* config/spu/spu.h (PREFERRED_RELOAD_CLASS): Remove.
	* config/v850/v850.h (PREFERRED_RELOAD_CLASS): Remove.
	* config/vax/vax.h (PREFERRED_RELOAD_CLASS): Remove.

From-SVN: r165541
2010-10-16 17:36:52 +04:00
Joseph Myers 7bb3487f8f opts.c (set_fast_math_flags, [...]): Make static.
* opts.c (set_fast_math_flags,
	set_unsafe_math_optimizations_flags): Make static.
	* toplev.h (set_fast_math_flags,
	set_unsafe_math_optimizations_flags): Remove prototypes.

From-SVN: r165540
2010-10-16 13:13:21 +01:00
Joseph Myers 0a587f6565 arm.c (arm_option_optimization): Set flag_section_anchors to 1 not 2.
* config/arm/arm.c (arm_option_optimization): Set
	flag_section_anchors to 1 not 2.
	* config/i386/i386.c (ix86_option_override_internal): Check
	global_options_set.x_flag_zee and
	global_options_set.x_flag_omit_frame_pointer.
	(ix86_option_optimization): Don't set flag_omit_frame_pointer and
	flag_zee to 2.
	* config/i386/sol2-10.h (SUBTARGET_OVERRIDE_OPTIONS): Check
	global_options_set.x_flag_omit_frame_pointer.
	* config/rs6000/rs6000.c (rs6000_option_init_struct): Set
	opts->x_flag_section_anchors to 1 not 2.
	* config/sh/sh.c (sh_option_optimization): Don't set
	flag_schedule_insns to 2.
	(sh_option_override): Check
	global_options_set.x_flag_schedule_insns.
	* opts.c (finish_options): Check opts_set->x_flag_section_anchors.

From-SVN: r165539
2010-10-16 13:12:24 +01:00
Kai Tietz e1dbd4c88c configure.ac: Make sure inhibit_libc remains false for mingw targets as cross.
2010-10-16  Kai Tietz  <kai.tietz@onevision.com>

        * configure.ac: Make sure inhibit_libc remains false for mingw targets
        as cross.
        * configure: Regenerated.

From-SVN: r165538
2010-10-16 13:00:16 +02:00
GCC Administrator e744db7f67 Daily bump.
From-SVN: r165537
2010-10-16 00:17:49 +00:00
Nicola Pero 3c44c190b6 In libobjc/: 2010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-10-16  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc/runtime.h (class_getIvarLayout): New.
        (class_getWeakIvarLayout): New.
        (class_setIvarLayout): New.
        (class_setWeakIvarLayout): New.
        * ivars.c (class_getIvarLayout): New.
        (class_getWeakIvarLayout): New.
        (class_setIvarLayout): New.
        (class_setWeakIvarLayout): New.

From-SVN: r165533
2010-10-16 00:04:37 +00:00
Nicola Pero 8dd6939deb In gcc/testsuite/: 2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/testsuite/:
2010-10-15  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc.dg/gnu-api-2-property.m: New.

From-SVN: r165532
2010-10-15 23:44:05 +00:00
Nicola Pero 8437e063bc In libobjc/: 2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-10-15  Nicola Pero  <nicola.pero@meta-innovation.com>
        
        * objc/runtime.h (class_copyPropertyList): New.
        (class_getProperty): New.
        (property_getAttributes): New.
        (property_getName): New.
        * ivars.c (class_copyPropertyList): New.
        (class_getProperty): New.
        (property_getAttributes): New.
        (property_getName): New.

From-SVN: r165531
2010-10-15 23:42:02 +00:00
Xinliang David Li 2edb37a65e uninit var analysis enhancement
From-SVN: r165530
2010-10-15 23:16:59 +00:00
Nicola Pero d527c90aa5 In gcc/testsuite/: 2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/testsuite/:
2010-10-15  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc.dg/gnu-api-2-object.m: New.

From-SVN: r165529
2010-10-15 23:00:22 +00:00
Nicola Pero 28395a0239 In gcc/testsuite/: 2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/testsuite/:
2010-10-15  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc.dg/gnu-api-2-method.m: New.

From-SVN: r165526
2010-10-15 22:28:28 +00:00
Nicola Pero 51194e8eb5 In libobjc/: 2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-10-15  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc-private/runtime.h (__objc_update_classes_with_methods): New.
        * class.c (__objc_update_classes_with_methods): New.
        (objc_getClassList): Do not lock the class lock.
        * methods.c (method_exchangeImplementations): New.
        (method_setImplementation): New.
        * objc/runtime.h (method_setImplementation): New.
        (method_exchangeImplementations): New.

From-SVN: r165525
2010-10-15 22:27:39 +00:00
Jason Merrill ef7659966d re PR c++/45983 (ICE: tree code 'template_parm_index' is not supported in gimple streams with -lto)
PR c++/45983
	* tree.c (cp_build_qualified_type_real): Don't reuse a variant
	with a different typedef variant of the element type.

From-SVN: r165521
2010-10-15 17:15:13 -04:00
Uros Bizjak ba49275257 i386.md (*movdfcc_1_rex64): Correct mode attribute.
* config/i386/i386.md (*movdfcc_1_rex64): Correct mode attribute.
	(*movdfcc_1): ditto.

From-SVN: r165520
2010-10-15 23:13:24 +02:00
Joseph Myers 7e4aae92f2 target.def (target_option.init_struct): New hook.
* target.def (target_option.init_struct): New hook.
	* doc/tm.texi.in (TARGET_OPTION_INIT_STRUCT): New @hook.
	* doc/tm.texi: Regenerate.
	* hooks.c (hook_void_gcc_optionsp): New.
	* hooks.h (hook_void_gcc_optionsp): Declare.
	* langhooks-def.h (lhd_init_options_struct): Remove.
	(LANG_HOOKS_INIT_OPTIONS_STRUCT): Define to
	hook_void_gcc_optionsp.
	* langhooks.c (lhd_init_options_struct): Remove.
	* opts.c (init_options_struct): Also call
	targetm.target_option.init_struct.
	* config/i386/i386.c (ix86_option_init_struct,
	TARGET_OPTION_INIT_STRUCT): New.
	(ix86_option_optimization): Move some settings to
	ix86_option_init_struct.
	* config/pdp11/pdp11.c (pdp11_option_init_struct,
	TARGET_OPTION_INIT_STRUCT): New.
	(pdp11_option_optimization): Move some settings to
	pdp11_option_init_struct.
	* config/rs6000/rs6000.c (rs6000_option_optimization): Replace by
	rs6000_option_init_struct.  Use options structure pointer.
	(TARGET_OPTION_OPTIMIZATION): Replace by
	TARGET_OPTION_INIT_STRUCT.
	* config/s390/s390.c (s390_option_init_struct,
	TARGET_OPTION_INIT_STRUCT): New.
	(s390_option_optimization): Don't set
	flag_asynchronous_unwind_tables here.
	* config/sh/sh.c (sh_option_init_struct,
	TARGET_OPTION_INIT_STRUCT): New.
	(sh_option_optimization): Don't set flag_finite_math_only here.
	* config/spu/spu.c (spu_option_optimization): Replace by
	spu_option_optimization.  Use options structure pointer.
	(TARGET_OPTION_OPTIMIZATION): Replace by
	TARGET_OPTION_INIT_STRUCT.

From-SVN: r165519
2010-10-15 20:19:05 +01:00
Nicola Pero ae422ccd65 In libobjc/: 2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-10-15  Nicola Pero  <nicola.pero@meta-innovation.com>

        * Protocol.m: Include objc/runtime.h and
        objc-private/module-abi-8.h instead of objc/objc-api.h.  Do not
        repeat Protocol's instance variables.
        (struct objc_method_description_list): Do not define here.
        ([-conformsTo:]): Reimplemented on top of protocol_conformsTo().
        ([descriptionForInstanceMethod:]): Use sel_isEqual() to compare
        selectors directly instead of getting names and then using strcmp.
        ([descriptionForClassMethod:]): Same change.
        ([-isEqual:]): Reimplemented on top of protocol_isEqual().
        * protocols.c (protocol_getMethodDescription): Use sel_isEqual()
        to compare selectors directly instead of getting names and then
        using strcmp.
        * objc/Protocol.h: Updated comments.

From-SVN: r165517
2010-10-15 18:24:27 +00:00
Michael Meissner e2e1d4d8c8 update changelog
From-SVN: r165516
2010-10-15 18:00:30 +00:00
Michael Meissner 1b1562a559 Add fma support
From-SVN: r165515
2010-10-15 17:42:05 +00:00
Paolo Carlini e74bf53a08 functional (function<>::operator==, operator!=): Remove, per LWG 1240.
2010-10-15  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/functional (function<>::operator==, operator!=):
	Remove, per LWG 1240.
	* testsuite/20_util/function/cmp/cmp_neg.cc: Adjust dg-* directives.

From-SVN: r165514
2010-10-15 17:14:57 +00:00
Jan Hubicka 695c3817fa lto-streamer-out.c (write_symbol): Use pointer set of seen objects instead of bitmap.
* lto-streamer-out.c (write_symbol): Use pointer set of seen
	objects instead of bitmap.
	(produce_symtab): Likewise; output defined symbols first.

From-SVN: r165513
2010-10-15 15:31:39 +00:00
Jie Zhang c1721efbbb invoke.texi: Add -fstrict-volatile-bitfields to Option Summary and Index.
* doc/invoke.texi: Add -fstrict-volatile-bitfields to
	Option Summary and Index.

From-SVN: r165512
2010-10-15 15:27:29 +00:00
Richard Guenther 638fd1e513 tree.c (free_lang_data_in_decl): Clear DECL_INITIAL for automatic variables again.
2010-10-15  Richard Guenther  <rguenther@suse.de>

	* tree.c (free_lang_data_in_decl): Clear DECL_INITIAL
	for automatic variables again.

	* g++.dg/lto/20101015-1_0.C: New testcase.

From-SVN: r165511
2010-10-15 15:17:06 +00:00
Joseph Myers fbdaa0b24c extend.texi (Variable Length): Don't refer to VLAs not conforming to C99.
* doc/extend.texi (Variable Length): Don't refer to VLAs not
	conforming to C99.

From-SVN: r165509
2010-10-15 15:45:33 +01:00
Joseph Myers a32b99ad60 rx.c (rx_option_optimization): Change to rx_override_options_after_change.
* config/rx/rx.c (rx_option_optimization): Change to
	rx_override_options_after_change.  Don't change
	flag_lto_compression_level.  Don't check for changes to whether
	FPU instructions can be used.  Check and set only
	flag_finite_math_only, not other fast-math flags.
	(rx_option_override): Call rx_override_options_after_change.
	(TARGET_OPTION_OPTIMIZATION): Remove.
	(TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE): Define.

From-SVN: r165508
2010-10-15 13:45:58 +01:00
Tobias Burnus 55bd9c35eb re PR fortran/45186 (Gfortran 4.5.0 emits wrong linenumbers)
2010-10-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45186
        * trans.h (gfc_add_modify_loc, gfc_evaluate_now_loc): New
        * prototypes.
        (gfc_trans_runtime_error_vararg): Remove prototype.
        * trans.c (gfc_add_modify_loc, gfc_evaluate_now_loc): New
        * functions.
        (gfc_add_modify, gfc_evaluate_now): Use them.
        (trans_runtime_error_vararg): Renamed from
        gfc_trans_runtime_error_vararg, made static and use locus.
        (gfc_trans_runtime_error): Use it.
        (gfc_trans_runtime_check): Ditto and make use of locus.
        * trans-stmt.c (gfc_trans_if_1, gfc_trans_simple_do,
        gfc_trans_do, gfc_trans_do_while): Improve line number
        associated with generated expressions.

From-SVN: r165507
2010-10-15 14:42:39 +02:00
Joseph Myers b534dca561 rs6000.c (rs6000_option_optimization): Don't disable section anchors for lang_hooks.name[4] != 'O'.
* config/rs6000/rs6000.c (rs6000_option_optimization): Don't
	disable section anchors for lang_hooks.name[4] != 'O'.

From-SVN: r165506
2010-10-15 13:40:56 +01:00
Joseph Myers 25b0dd68f0 frv.c (frv_option_optimization, [...]): Remove.
* config/frv/frv.c (frv_option_optimization,
	TARGET_OPTION_OPTIMIZATION): Remove.
	* config/frv/frv.h (RCSP_SOFTWARE_PIPELINING): Remove.

From-SVN: r165505
2010-10-15 13:40:07 +01:00
Michael Matz 936fcef153 * cgraphunit.c (clone_of_p): Define unconditionally.
From-SVN: r165504
2010-10-15 12:22:28 +00:00
Richard Guenther 4069d5fbd1 re PR tree-optimization/46021 (3 tree-ssa tests XPASS almost everywhere)
2010-10-15  Richard Guenther  <rguenther@suse.de>

	PR testsuite/46021
	* gcc.dg/tree-ssa/20031106-3.c: Remove XFAIL.
	* gcc.dg/tree-ssa/fre-vce-1.c: Likewise.

From-SVN: r165503
2010-10-15 11:03:15 +00:00
Richard Guenther 7a1a20d1c9 re PR tree-optimization/45957 (g++.dg/ext/fnname3.C FAILs with -flto/-fwhopr)
2010-10-15  Richard Guenther  <rguenther@suse.de>

	PR lto/45957
	* tree.c (free_lang_data_in_decl): Do not clear DECL_INITIAL
	of vars.

	* g++.dg/lto/20101014-1_0.C: New testcase.

From-SVN: r165502
2010-10-15 10:56:13 +00:00
Nicola Pero 977647538d Fixed date in my last changelog entry
From-SVN: r165501
2010-10-15 10:38:01 +00:00
Nicola Pero 28c3bb954a In gcc/testsuite/: 2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/testsuite/:
2010-10-15  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc.dg/gnu-api-2-protocol.m: New.
        * objc.dg/gnu-api-2-sel.m: New.

From-SVN: r165500
2010-10-15 10:37:33 +00:00
Nicola Pero f7185d4791 In libobjc/: 2010-10-14 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-10-14  Nicola Pero  <nicola.pero@meta-innovation.com>

        * init.c (__objc_init_protocol): New function which fixes up a
        protocol's class pointer, registers it with the runtime, register
        all protocol selectors and registers associated protocols too.
        (objc_init_statics): Detect if we are initializing protocols, and
        if so, use __objc_init_protocol instead of only fixing up the
        class pointer.
        (__objc_init_protocls): Use __objc_init_protocol.
        * objc-private/module-abi-8.h: Updated comments.
        * objc-private/runtime.h
        (__objc_register_selectors_from_description_list): New.
        * selector.c (__objc_register_selectors_from_description_list):
        New.  (struct objc_method_description_list): Declare.
        * Protocol.m ([-descriptionForInstanceMethod:]): Use sel_get_name
        when accessing the name of a method, which is now correctly a SEL.
        ([-descriptionForClassMethod:]): Same change.
        * protocols.c (protocol_getMethodDescription): Same change.
        * objc/runtime.h: Updated comments.
        (sel_registerTypedName): Fixed typo in function name.

From-SVN: r165499
2010-10-15 10:35:00 +00:00
Ramana Radhakrishnan fbbf834e27 eh-vararg-2.C: Fix dg-options for arm-eabi targets.
* g++.dg/torture/stackalign/eh-vararg-2.C: Fix dg-options for
       arm-eabi targets.

From-SVN: r165498
2010-10-15 09:43:34 +00:00
Tristan Gingold 02db6bbaf3 MAINTAINERS (OS Port Maintainers): Add myself for VMS.
2010-10-15  Tristan Gingold  <gingold@adacore.com>

	* MAINTAINERS (OS Port Maintainers): Add myself for VMS.

From-SVN: r165497
2010-10-15 08:59:19 +00:00
Dave Korn f24a1469f0 Sync LD plugin patch series (part 1/6) with src/include/.
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.

From-SVN: r165496
2010-10-15 07:39:07 +00:00
Chung-Lin Tang 034c987cda ifcvt.c (find_active_insn_before): New function.
2010-10-15  Chung-Lin Tang  <cltang@codesourcery.com>

	* ifcvt.c (find_active_insn_before): New function.
	(find_active_insn_after): New function.
	(cond_exec_process_if_block): Use new functions to replace
	prev_active_insn() and next_active_insn().

	testsuite/
	* gcc.dg/20101010-1.c: New testcase.

From-SVN: r165495
2010-10-15 07:07:26 +00:00
Jie Zhang af41386e7c lto.exp (lto-link-and-maybe-run): Use the default linker script when relocatable linking.
* lib/lto.exp (lto-link-and-maybe-run): Use the default linker
	script when relocatable linking.

From-SVN: r165494
2010-10-15 06:53:42 +00:00
Yao Qi 56f01f0b41 re PR debug/45447 (ICE with `-g -femit-struct-debug-baseonly')
gcc/

        PR target/45447
        * config/arm/arm.c (arm_build_builtin_va_list): Assign
        va_list_name to TYPE_STUB_DECL (va_list_type).

gcc/testsuite/

        PR target/45447
        * gcc.target/arm/pr45447.c: New test.

From-SVN: r165493
2010-10-15 04:03:10 +00:00
Jan Hubicka 97ba0040a8 re PR rtl-optimization/45621 (ICE: verify_cgraph_node failed: inlined_to pointer is set but no predecessors found with -fipa-cp-clone -flto)
PR middle-end/45621
	* g++.dg/lto/pr45621.h : New.
	* g++.dg/lto/pr45621_0.C: New.
	* g++.dg/lto/pr45621_1.C: New.
	* cgraph.c (cgraph_update_edges_for_call_stmt_node): When new call is
	redirected to clone, be happy.
	* cgraph.h (cgraph node): Enable former_clone_of unconditinally.
	* cgraphunit.c (verify_cgraph_node, cgraph_materialize_clone): Handle
	former_clone_of unconditinally.

From-SVN: r165492
2010-10-15 01:20:55 +00:00
GCC Administrator 23ac8b8d6a Daily bump.
From-SVN: r165490
2010-10-15 00:17:42 +00:00
Iain Sandoe e2673f71ca add ObjC* @property - tests
add ObjC* @property - tests
gcc/testsuite:

	* objc.dg/property: New.
	* objc.dg/property/fsf-property-basic.m: New.
	* objc.dg/property/fsf-property-method-access.m: New.
	* objc.dg/property/fsf-property-named-ivar.m: New.
	* objc.dg/property/property-1.m: New.
	* objc.dg/property/property-2.m: New.
	* objc.dg/property/property-3.m: New.
	* objc.dg/property/property-neg-1.m: New.
	* objc.dg/property/property-neg-2.m: New.
	* objc.dg/property/property-neg-3.m: New.
	* objc.dg/property/property-neg-4.m: New.
	* objc.dg/property/property-neg-5.m: New.
	* objc.dg/property/property-neg-6.m: New.
	* objc.dg/property/property-neg-7.m: New.
	* objc.dg/property/property.exp: New.
	* obj-c++.dg/property
	* obj-c++.dg/property/fsf-property-basic.mm
	* obj-c++.dg/property/fsf-property-method-access.mm
	* obj-c++.dg/property/fsf-property-named-ivar.mm
	* obj-c++.dg/property/property-0.mm
	* obj-c++.dg/property/property-1.mm
	* obj-c++.dg/property/property-2.mm
	* obj-c++.dg/property/property-3.mm
	* obj-c++.dg/property/property-neg-1.mm
	* obj-c++.dg/property/property-neg-2.mm
	* obj-c++.dg/property/property-neg-3.mm
	* obj-c++.dg/property/property-neg-4.mm
	* obj-c++.dg/property/property-neg-5.mm
	* obj-c++.dg/property/property-neg-6.mm
	* obj-c++.dg/property/property-neg-7.mm
	* obj-c++.dg/property/property.exp

From-SVN: r165480
2010-10-14 20:11:03 +00:00
Iain Sandoe 668ea4b110 add @property to ObjC*
merge from FSF apple 'trunk' branch. 
	2006 Fariborz Jahanian <fjahanian@apple.com>
	
	Radars 4436866, 4505126, 4506903, 4517826

gcc/c-family: 

	* c-common.c (c_common_resword): Define @property and its attributes.
	* c-common.h: Define property attribute enum entries.
	(OBJC_IS_PATTR_KEYWORD): New.
	(objc_property_attribute_kind): New enum.
	Declare objc_set_property_attr (), objc_add_property_variable (),
	objc_build_getter_call () and objc_build_setter_call ().
	* stub-objc.c (objc_set_property_attr): New stub.
	(objc_add_property_variable): Likewise.
	(objc_build_getter_call): Likewise.
	(objc_build_setter_call) Likewise.

gcc:

	* c-parser.c (c_parser, objc_property_attr_context) New flag.
	(c_lex_one_token): Handle property attributes.
	(c_parser_external_declaration): Handle @property.
	(c_parser_declaration_or_fndef): Warn on invalid attributes before
	@alias, @class, @end and @property objc keywords.
	(c_parser_objc_methodprotolist): Handle @property.
	(c_parser_objc_property_attrlist): New.
	(c_parser_objc_at_property): New.
	* c-typeck.c (build_component_ref): Handle CLASS.property syntax.
	(build_modify_expr): Likewise.

gcc/cp:

	* typeck.c (finish_class_member_access_expr): Handle CLASS.property
	syntax. 
	(cp_build_modify_expr): Likewise.
	* parser.c (cp_parser_objc_method_prototype_list): Handle @property.
	(cp_parser_objc_method_definition_list): Likewise.
	(cp_parser_objc_property_decl): New.
	(cp_parser_objc_property_attrlist): New.
	(cp_parser_objc_at_property): New.

gcc/objc:

	* objc-act.c (CALL_EXPR_OBJC_PROPERTY_GETTER): New.
	property_readonly, property_getter, property_setter, property_ivar,
	property_copies, in_objc_property_setter_name_context: New vars.
	(objc_set_property_attr): New.
	(objc_add_property_variable): New.
	(lookup_property_in_list): New.
	(lookup_property): New.
	(objc_build_getter_call): New.
	(objc_setter_func_call): New.
	(get_selector_from_reference): New.
	(objc_build_setter_call): New.
	(is_property): New.
	(build_property_reference): New.
	(objc_finish_message_expr): Detect readonly property and warn.
	(objc_build_property_ivar_name): New.
	(objc_build_property_setter_name): New.
	(objc_gen_one_property_datum): New.
	(objc_process_getter_setter): New.
	(objc_synthesize_getter): New.
	(objc_synthesize_setter): New.
	(objc_gen_property_data): New.
	(finish_class): Generate property data.
	(comp_proto_with_proto): Separated from ...
	(match_proto_with_proto): ... New.
	(objc_lookup_ivar): Handle properties.
	* objc-tree.def (PROPERTY_DECL): New tree code.
	* objc-act.h: CLASS_LANG_SLOT_ELTS, PROTOCOL_LANG_SLOT_ELTS update size.
	(METHOD_PROPERTY_CONTEXT): New.
	(PROPERTY_NAME): New.
	(PROPERTY_GETTER_NAME): New.
	(PROPERTY_SETTER_NAME): New.
	(PROPERTY_IVAR_NAME): New.
	(PROPERTY_READONLY): New.
	(PROPERTY_COPIES): New.
	(TOTAL_CLASS_RAW_IVARS): New.
	(CLASS_PROPERTY_DECL): New.
	(IMPL_PROPERTY_DECL): New.
	* objc-lang.c (objc_init_ts): Update fields for property_decl.

gcc/objcp:

	* objcp-lang.c (objcxx_init_ts): Update for property_decl.

From-SVN: r165479
2010-10-14 20:09:41 +00:00
Jakub Jelinek e05eee4908 re PR tree-optimization/46008 (Floating point condexpr not vectorized)
PR tree-optimization/46008
	* tree-if-conv.c (predicate_bbs): Try to canonicalize c2
	if possible.

From-SVN: r165476
2010-10-14 21:34:16 +02:00