Nicola Pero [Sun, 17 Oct 2010 19:33:19 +0000 (19:33 +0000)]
In gcc/: 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
* doc/objc.texi (GNU Objective-C runtime API): New section.
(Modern GNU Objective-C runtime API): New section.
(Traditional GNU Objective-C runtime API): New section.
(Executing code before main): Mention that this section is
specific to the GNU Objective-C runtime.
(Garbage Collection): Same.
In gcc/testsuite/:
2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
* obj-c++.dg/gnu-api-2-class.mm: New.
* obj-c++.dg/gnu-api-2-ivar.mm: New.
* obj-c++.dg/gnu-api-2-method.mm: New.
* obj-c++.dg/gnu-api-2-objc.mm: New.
* obj-c++.dg/gnu-api-2-object.mm: New.
* obj-c++.dg/gnu-api-2-property.mm: New.
* obj-c++.dg/gnu-api-2-protocol.mm: New.
* obj-c++.dg/gnu-api-2-sel.mm: New.
In libobjc/:
2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
* objc/message.h: Moved initial includes outside of extern "C".
* objc/runtime.h: Add extern "C" for Objective-C++.
From-SVN: r165595
Uros Bizjak [Sun, 17 Oct 2010 18:29:32 +0000 (20:29 +0200)]
c-parser.c (c_parser_for_statement): Move initialization of cond and incr before if.
* c-parser.c (c_parser_for_statement): Move initialization of
cond and incr before if.
From-SVN: r165592
Paolo Carlini [Sun, 17 Oct 2010 17:34:38 +0000 (17:34 +0000)]
forward_list.h (forward_list<>::erase_after): Return an iterator.
2010-10-17 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.h (forward_list<>::erase_after): Return
an iterator.
(_M_erase_after): Return _Fwd_list_node_base*.
* include/bits/forward_list.tcc: Likewise.
* include/debug/forward_list: Likewise.
* testsuite/23_containers/forward_list/modifiers/3.cc: Update
and extend.
* testsuite/util/exception/safety.h (erase_base<forward_list<>>):
Adjust.
* testsuite/23_containers/forward_list/requirements/dr438/
assign_neg.cc: Adjust dg-error line number.
* testsuite/23_containers/forward_list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_2_neg.cc: Likewise.
From-SVN: r165590
Anatoly Sokolov [Sun, 17 Oct 2010 15:27:53 +0000 (19:27 +0400)]
target.def (preferred_output_reload_class): New hook.
* target.def (preferred_output_reload_class): New hook.
* doc/tm.texi.in (TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Document.
* doc/tm.texi: Regenerate.
* targhooks.c (default_preferred_output_reload_class): New function.
* targhooks.h (default_preferred_output_reload_class): Declare.
* reload.c (find_dummy_reload): Change rclass argument type from
enum reg_class to reg_class_t. Change this_alternative array type
from enum reg_class to reg_class_t.
Use TARGET_PREFERRED_OUTPUT_RELOAD_CLASS target hook.
(push_reload): Change preferred_class variable type to reg_class_t.
Use TARGET_PREFERRED_OUTPUT_RELOAD_CLASS target hook.
* recog.c (reg_fits_class_p): Change result type to bool. Change cl
argument type from enum reg_class to reg_class_t. Use
HARD_REGISTER_NUM_P predicate.
* recog.h (reg_fits_class_p): Update prototype.
* config/i386/i386.h (PREFERRED_OUTPUT_RELOAD_CLASS): Remove.
* config/i386/i386-protos.h (ix86_preferred_output_reload_class): Remove.
* config/i386/i386.c (ix86_preferred_output_reload_class): Make
static. Change regclass argument and result types from enum reg_class
to reg_class_t.
(TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
From-SVN: r165588
Paolo Carlini [Sun, 17 Oct 2010 14:49:11 +0000 (14:49 +0000)]
re PR libstdc++/43554 (profile-mode version of forward_list missing)
2010-10-17 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/43554
* include/profile/forward_list: New file.
* include/std/forward_list: Include <profile/forward_list>.
* include/Makefile.am: Add.
* testsuite/23_containers/forward_list/capacity/1.cc: Adjust.
* include/Makefile.in: Regenerate.
From-SVN: r165587
Iain Sandoe [Sun, 17 Oct 2010 13:02:07 +0000 (13:02 +0000)]
add parse support for @package to ObjC*
gcc/c-family:
* c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
* c-common.h (enum rid): Add RID_AT_PACKAGE.
(objc_ivar_visibility_kind): New enum.
(objc_set_visibility): Adjust prototype to use visibility enum.
* stub-objc.c (objc_set_visibility): Adjust stub to use
visibility enum.
gcc/objc:
* objc-act.c: Rename 'objc_public_flag' to objc_ivar_visibility and
make its type 'objc_ivar_visibility_kind'.
(objc_start_class_interface): Update to use visibility enum.
(objc_start_class_implementation): Likewise.
(objc_set_visibility): Update to use visibility enum, warn that
@package is handle as per @public.
(add_instance_variable): Handle OBJC_IVAR_VIS_PACKAGE.
* objc-act.h: Rename 'objc_public_flag' to objc_ivar_visibility and
make its type 'objc_ivar_visibility_kind'.
gcc/cp:
* parser.c (cp_parser_objc_visibility_spec): Update to use visibility
enum, and handle @package.
gcc:
* c-parser.c (c_parser_objc_class_instance_variables): Update to use
visibility enum, and handle @package.
gcc/testsuite:
* objc.dg/fsf-package-0.m: New.
* obj-c++.dg/fsf-package-0.m: New.
From-SVN: r165585
Nicola Pero [Sun, 17 Oct 2010 11:01:31 +0000 (11:01 +0000)]
In libobjc/: 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
* init.c (objc_send_load): Do not wait for NXConstantString to be
registered before executing +load. There is no point if
-fconstant-string-class=xxx is used when compiling all modules,
as is the case for almost all users.
* linking.m (__objc_linking): Do not try to forcefully link in
NXConstantString.
In gcc/:
2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
* doc/objc.texi (What you can and what you cannot do in +load):
Document that sending messages to constant string objects in +load
is not guaranteed to work.
From-SVN: r165583
Nicola Pero [Sun, 17 Oct 2010 10:11:23 +0000 (10:11 +0000)]
In gcc/testsuite/: 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/testsuite/:
2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/18255
* objc.dg/pr18255.m: New.
From-SVN: r165579
GCC Administrator [Sun, 17 Oct 2010 00:17:24 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r165573
Jan Hubicka [Sat, 16 Oct 2010 23:47:08 +0000 (01:47 +0200)]
re PR middle-end/44206 (ICE: Inline clone with address taken)
PR middle-end/44206
* g++.dg/torture/pr44206.C: New.
* ipa.c (cgraph_remove_unreachable_nodes): Cleanup; check
existence of refrences before removing the function.
From-SVN: r165569
Nicola Pero [Sat, 16 Oct 2010 21:27:22 +0000 (21:27 +0000)]
In testsuite/: 2010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
In testsuite/:
2010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/gnu-api-2-class.m: New.
* objc.dg/gnu-api-2-objc.m: New.
From-SVN: r165564
Nicola Pero [Sat, 16 Oct 2010 21:26:59 +0000 (21:26 +0000)]
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: Updated comments.
(class_addMethod): New.
(class_addIvar): New.
(class_replaceMethod): New.
(objc_allocateClassPair): New.
(objc_registerClassPair): New.
(objc_disposeClassPair): New.
* class.c (objc_allocateClassPair): New.
(objc_registerClassPair): New.
(objc_disposeClassPair): New.
(class_getSuperclass): Return Nil if a class is in construction.
* init.c (__objc_exec_class): Call __objc_init_class.
(__objc_init_class): New.
* ivars.c (class_copyIvarList): Return NULL if class is in
construction. Do not lock the runtime mutex.
(class_getInstanceVariable): Return NULL if class is in
construction. Do not lock the runtime mutex.
(class_addIvar): New.
* sendmsg.c (class_addMethod): New.
(class_replaceMethod): New.
* objc-private/module-abi-8.h (__CLS_SETNOTINFO): New.
(_CLS_IN_CONSTRUCTION): New.
(CLS_IS_IN_CONSTRUCTION): New.
(CLS_SET_IN_CONSTRUCTION): New.
(CLS_SET_NOT_IN_CONSTRUCTION): New.
* objc-private/runtime.h (__objc_init_class): New.
From-SVN: r165563
Thomas Koenig [Sat, 16 Oct 2010 18:47:55 +0000 (18:47 +0000)]
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
Jan Hubicka [Sat, 16 Oct 2010 16:59:07 +0000 (18:59 +0200)]
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
Thomas Koenig [Sat, 16 Oct 2010 16:06:07 +0000 (16:06 +0000)]
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
Eric Botcazou [Sat, 16 Oct 2010 14:35:59 +0000 (14:35 +0000)]
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
Nicola Pero [Sat, 16 Oct 2010 14:07:29 +0000 (14:07 +0000)]
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
Nicola Pero [Sat, 16 Oct 2010 14:03:42 +0000 (14:03 +0000)]
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
Anatoly Sokolov [Sat, 16 Oct 2010 13:36:52 +0000 (17:36 +0400)]
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
Joseph Myers [Sat, 16 Oct 2010 12:13:21 +0000 (13:13 +0100)]
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
Joseph Myers [Sat, 16 Oct 2010 12:12:24 +0000 (13:12 +0100)]
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
Kai Tietz [Sat, 16 Oct 2010 11:00:16 +0000 (11:00 +0000)]
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
GCC Administrator [Sat, 16 Oct 2010 00:17:49 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r165537
Nicola Pero [Sat, 16 Oct 2010 00:04:37 +0000 (00:04 +0000)]
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
Nicola Pero [Fri, 15 Oct 2010 23:44:05 +0000 (23:44 +0000)]
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
Nicola Pero [Fri, 15 Oct 2010 23:42:02 +0000 (23:42 +0000)]
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
Xinliang David Li [Fri, 15 Oct 2010 23:16:59 +0000 (23:16 +0000)]
uninit var analysis enhancement
From-SVN: r165530
Nicola Pero [Fri, 15 Oct 2010 23:00:22 +0000 (23:00 +0000)]
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
Nicola Pero [Fri, 15 Oct 2010 22:28:28 +0000 (22:28 +0000)]
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
Nicola Pero [Fri, 15 Oct 2010 22:27:39 +0000 (22:27 +0000)]
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
Jason Merrill [Fri, 15 Oct 2010 21:15:13 +0000 (17:15 -0400)]
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
Uros Bizjak [Fri, 15 Oct 2010 21:13:24 +0000 (23:13 +0200)]
i386.md (*movdfcc_1_rex64): Correct mode attribute.
* config/i386/i386.md (*movdfcc_1_rex64): Correct mode attribute.
(*movdfcc_1): ditto.
From-SVN: r165520
Joseph Myers [Fri, 15 Oct 2010 19:19:05 +0000 (20:19 +0100)]
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
Nicola Pero [Fri, 15 Oct 2010 18:24:27 +0000 (18:24 +0000)]
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
Michael Meissner [Fri, 15 Oct 2010 18:00:30 +0000 (18:00 +0000)]
update changelog
From-SVN: r165516
Michael Meissner [Fri, 15 Oct 2010 17:42:05 +0000 (17:42 +0000)]
Add fma support
From-SVN: r165515
Paolo Carlini [Fri, 15 Oct 2010 17:14:57 +0000 (17:14 +0000)]
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
Jan Hubicka [Fri, 15 Oct 2010 15:31:39 +0000 (17:31 +0200)]
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
Jie Zhang [Fri, 15 Oct 2010 15:27:29 +0000 (15:27 +0000)]
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
Richard Guenther [Fri, 15 Oct 2010 15:17:06 +0000 (15:17 +0000)]
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
Joseph Myers [Fri, 15 Oct 2010 14:45:33 +0000 (15:45 +0100)]
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
Joseph Myers [Fri, 15 Oct 2010 12:45:58 +0000 (13:45 +0100)]
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
Tobias Burnus [Fri, 15 Oct 2010 12:42:39 +0000 (14:42 +0200)]
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
Joseph Myers [Fri, 15 Oct 2010 12:40:56 +0000 (13:40 +0100)]
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
Joseph Myers [Fri, 15 Oct 2010 12:40:07 +0000 (13:40 +0100)]
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
Michael Matz [Fri, 15 Oct 2010 12:22:28 +0000 (12:22 +0000)]
* cgraphunit.c (clone_of_p): Define unconditionally.
From-SVN: r165504
Richard Guenther [Fri, 15 Oct 2010 11:03:15 +0000 (11:03 +0000)]
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
Richard Guenther [Fri, 15 Oct 2010 10:56:13 +0000 (10:56 +0000)]
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
Nicola Pero [Fri, 15 Oct 2010 10:38:01 +0000 (10:38 +0000)]
Fixed date in my last changelog entry
From-SVN: r165501
Nicola Pero [Fri, 15 Oct 2010 10:37:33 +0000 (10:37 +0000)]
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
Nicola Pero [Fri, 15 Oct 2010 10:35:00 +0000 (10:35 +0000)]
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
Ramana Radhakrishnan [Fri, 15 Oct 2010 09:43:34 +0000 (09:43 +0000)]
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
Tristan Gingold [Fri, 15 Oct 2010 08:59:19 +0000 (08:59 +0000)]
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
Dave Korn [Fri, 15 Oct 2010 07:39:07 +0000 (07:39 +0000)]
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
Chung-Lin Tang [Fri, 15 Oct 2010 07:07:26 +0000 (07:07 +0000)]
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
Jie Zhang [Fri, 15 Oct 2010 06:53:42 +0000 (06:53 +0000)]
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
Yao Qi [Fri, 15 Oct 2010 04:03:10 +0000 (04:03 +0000)]
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
Jan Hubicka [Fri, 15 Oct 2010 01:20:55 +0000 (03:20 +0200)]
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
GCC Administrator [Fri, 15 Oct 2010 00:17:42 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r165490
Iain Sandoe [Thu, 14 Oct 2010 20:11:03 +0000 (20:11 +0000)]
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
Iain Sandoe [Thu, 14 Oct 2010 20:09:41 +0000 (20:09 +0000)]
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
Jakub Jelinek [Thu, 14 Oct 2010 19:34:16 +0000 (21:34 +0200)]
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
Douglas B Rupp [Thu, 14 Oct 2010 18:15:35 +0000 (18:15 +0000)]
MAINTAINERS (OS Port Maintainers): Add myself for VMS.
* MAINTAINERS (OS Port Maintainers): Add myself for VMS.
From-SVN: r165475
H.J. Lu [Thu, 14 Oct 2010 15:52:47 +0000 (15:52 +0000)]
Fix typos in gcc.dg/pr45570.c.
2010-10-14 H.J. Lu <hongjiu.lu@intel.com>
* gcc.dg/pr45570.c: Fix typos. Also run for i?86-*-*.
From-SVN: r165474
Richard Guenther [Thu, 14 Oct 2010 15:51:15 +0000 (15:51 +0000)]
re PR tree-optimization/44913 (-ftree-vectorize causes FAIL: gcc.dg/pr44838.c execution test)
2010-10-14 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44913
* tree-data-ref.c (disjoint_objects_p): Remove.
(dr_may_alias_p): Simplify. Only hand the base object to
the alias-oracle.
* tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Handle
some more trees, bail out instead of asserting.
(ptr_derefs_may_alias_p): Likewise. Export.
(refs_may_alias_p_1): Handle STRING_CSTs.
* tree-ssa-alias.h (ptr_derefs_may_alias_p): Declare.
* gcc.dg/torture/pr44913.c: New testcase.
From-SVN: r165473
Joseph Myers [Thu, 14 Oct 2010 15:48:52 +0000 (16:48 +0100)]
re PR c/45969 (ICE in build_binary_op, at c-typeck.c:9833)
PR c/45969
* c-typeck.c (build_binary_op): Don't try to compute a semantic
type with excess precision for boolean operations.
testsuite:
* gcc.c-torture/compile/pr45969-1.c: New test.
From-SVN: r165472
Richard Guenther [Thu, 14 Oct 2010 15:31:36 +0000 (15:31 +0000)]
re PR c++/45382 (internal compiler error: tree code ‘call_expr’ is not supported in gimple streams)
2010-10-14 Richard Guenther <rguenther@suse.de>
PR lto/45382
* g++.dg/lto/
20101014-2_0.C: New testcase.
From-SVN: r165471
Jeremie Salvucci [Thu, 14 Oct 2010 13:56:12 +0000 (15:56 +0200)]
gengtype.c: Include getopt.h and version.h.
2010-10-14 Jeremie Salvucci <jeremie.salvucci@free.fr>
Basile Starynkevitch <basile@starynkevitch.net>
* gcc/gengtype.c: Include getopt.h and version.h.
(lang_bitmap, struct outf, outf_p)
(get_output_file_with_visibility, oprintf): Definitions moved to
gengtype.h
(output_files, header_file, srcdir, srcdir_len, this_file)
(do_dump): No more static variables.
(do_debug): New.
(dbgprint_count_type_at): Added new function.
(gengtype_long_options): New.
(print_usage, print_version, parse_program_options): New.
(main): Call parse_program_options, and removed old option
handling code. Added some debug output.
* gcc/gengtype.h: Updated copyright year.
(lang_bitmap, struct outf, outf_p, header_file, oprintf)
(get_output_file_with_visibility, srcdir, srcdir_len, do_dump):
Moved from gengtype.c to here.
(do_debug, read_state_filename, write_state_filename): New
variables. (DBGPRINTF, DBGPRINT_COUNT_TYPE): New macros.
* gcc/Makefile.in:
(REVISION): Always defined.
(version.o): Removed ifdef REVISION_c.
(s-gtype): Pass arguments to build/gengtype program.
(build/version.o): Added building rule.
(build/gengtype$(build_exeext)): Added build/version.o.
Co-Authored-By: Basile Starynkevitch <basile@starynkevitch.net>
From-SVN: r165470
Iain Sandoe [Thu, 14 Oct 2010 13:45:28 +0000 (13:45 +0000)]
Partial merge of 'ObjC GC' from FSF apple 'trunk' branch.
* config/darwin-c.c (darwin_cpp_builtins): Define __weak and
__strong macros.
From-SVN: r165469
Eric Botcazou [Thu, 14 Oct 2010 13:39:18 +0000 (13:39 +0000)]
sched-deps.c (sched_insn_is_legitimate_for_speculation): Invoke may_trap_or_fault_p instead of may_trap_p predicate.
* sched-deps.c (sched_insn_is_legitimate_for_speculation): Invoke
may_trap_or_fault_p instead of may_trap_p predicate.
* tree.c (substitute_in_expr): Propagate the TREE_THIS_NOTRAP flag.
(substitute_placeholder_in_expr): Likewise.
* tree-inline.c (remap_gimple_op_r): Propagate the TREE_THIS_NOTRAP
flag on MEM_REF nodes.
(copy_tree_body_r): Propagate the TREE_READONLY and TREE_THIS_NOTRAP
flags on INDIRECT_REF nodes.
ada/
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Set
TREE_THIS_NOTRAP on the INDIRECT_REF node built for the template.
* gcc-interface/trans.c (Identifier_to_gnu): Set TREE_THIS_NOTRAP on
the INDIRECT_REF node built for objects used by reference.
* gcc-interface/utils2.c (build_binary_op): Add short-circuit for
constant result. Set TREE_THIS_NOTRAP on ARRAY_REF and ARRAY_RANGE_REF.
(gnat_stabilize_reference_1): Propagate the TREE_THIS_NOTRAP flag.
From-SVN: r165468
Eric Botcazou [Thu, 14 Oct 2010 13:31:09 +0000 (13:31 +0000)]
Fix long lines
From-SVN: r165467
H.J. Lu [Thu, 14 Oct 2010 13:05:46 +0000 (13:05 +0000)]
Add -mtune=generic to 256bit AVX tests.
2010-10-14 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/avx-copysign-vec.c: Add -mtune=generic.
* gcc.target/i386/avx-copysignf-vec.c: Likewise.
* gcc.target/i386/pr44130.c: Likewise.
* gcc.target/i386/pr44144.c: Likewise.
* gcc.target/i386/pr44180.c: Likewise.
* gcc.target/i386/recip-vec-divf-avx.c: Likewise.
* gcc.target/i386/recip-vec-sqrtf-avx.c: Likewise.
* gcc.target/i386/vect-sizes-1.c: Likewise.
* gcc.target/i386/vectorize4-avx.c: Likewise.
From-SVN: r165466
Eric Botcazou [Thu, 14 Oct 2010 12:43:37 +0000 (12:43 +0000)]
* lto-elf.c (SHN_XINDEX): Define if not already defined.
From-SVN: r165464
Nathan Froyd [Thu, 14 Oct 2010 12:35:43 +0000 (12:35 +0000)]
config.gcc (arm*-*-linux-*eabi): Add bpabi.h from libgcc.
gcc/
* config.gcc (arm*-*-linux-*eabi) <tm_file>: Add bpabi.h from
libgcc.
(arm*-*-uclinux*eabi) <tm_file>: Likewise.
(arm*-*-eabi*) <tm_file>: Likewise.
(frv-*-elf) <tm_file>: Add frv-abi.h from libgcc.
(frv-*-*linux*) <tm_file>: Likewise.
* config/arm/bpabi.h: Delete DECLARE_LIBRARY_RENAMES stanzas
and associated helper macros.
* config/frv/frv-abi.h: Delete.
libgcc/
* config/arm/bpabi.h: New file.
* config/frv/frv-abi.h: New file.
From-SVN: r165463
Richard Guenther [Thu, 14 Oct 2010 11:59:47 +0000 (11:59 +0000)]
re PR c++/44561 (using nullptr_t with -flto/-fwhopr causes ICE: tree code 'lang_type' is not supported in gimple streams)
2010-10-14 Richard Guenther <rguenther@suse.de>
PR lto/44561
* tree.def (NULLPTR_TYPE): New tree code.
* dbxout.c (dbxout_type): Handle NULLPTR_TYPE.
* dwarf2out.c (is_base_type): Likewise.
(gen_type_die_with_usage): Likewise.
* sdbout.c (plain_type_1): Likewise.
* tree.c (build_int_cst_wide): Likewise.
* gimple.c (gimple_types_compatible_p_1): NULLPTR_TYPE types
are equal.
cp/
* cp-tree.h (NULLPTR_TYPE_P): Adjust.
* decl.c (cxx_init_decl_processing): Build a NULLPTR_TYPE node,
use build_int_cst.
* error.c (dump_type): Handle NULLPTR_TYPE.
(dump_type_prefix): Likewise.
(dump_type_suffix): Likewise.
* mangle.c (write_type): Likewise.
* name-lookup.c (arg_assoc_type): Likewise.
* rtti.c (typeinfo_in_lib_p): Likewise.
* pt.c (tsubst): Likewise.
* g++.dg/lto/
20101010-3_0.C: New testcase.
* g++.dg/lto/
20101010-4_0.C: Likewise.
From-SVN: r165462
Iain Sandoe [Thu, 14 Oct 2010 10:40:07 +0000 (10:40 +0000)]
adjust recent tests for -fnext-runtime:
gcc/testsuite:
* objc.dg/pr45878.m: Update to include NSConstantString interface
for -fnext-runtime.
* objc.dg/pr23214.m: Use the Object1.m implementation to build m64 on
-fnext-runtime, XFAIL the m64 -fnext-runtime run.
* objc.dg/objc-foreach-4.m: Provide an NSConstantString dummy class
reference for m64 -fnext-runtime.
From-SVN: r165461
Joseph Myers [Thu, 14 Oct 2010 10:22:43 +0000 (11:22 +0100)]
params.c (params_finished): New.
* params.c (params_finished): New.
(add_params): Assert !params_finished.
(finish_params): New.
(set_param_value_internal): Take params and params_set
parameters. Assert params_finished.
(set_param_value, maybe_set_param_value): Take params and
params_set parameters. Update calls to set_param_value_internal.
(set_default_param_value): Assert !params_finished. Don't use
set_param_value_internal.
(default_param_value, init_param_values): New.
* params.h (struct param_info): Change value to default_value.
Remove set.
(set_param_value, maybe_set_param_value): Add params and
params_set parameters.
(PARAM_VALUE): Get parameters from global_options.
(PARAM_SET_P): Remove.
(finish_params, default_param_value, init_param_values): New.
* common.opt (param_values): New Variable.
* config/arm/arm.c (arm_option_override): Pass extra arguments to
maybe_set_param_value.
* config/i386/i386.c (ix86_option_override_internal): Pass extra
arguments to maybe_set_param_value.
* config/picochip/picochip.c (picochip_option_override): Pass
extra arguments to maybe_set_param_value.
* config/rs6000/rs6000.c (rs6000_option_override_internal): Pass
extra arguments to maybe_set_param_value.
* config/s390/s390.c (s390_option_override): Use
maybe_set_param_value instead of set_param_value. Pass extra
arguments to maybe_set_param_value.
* config/sparc/sparc.c (sparc_option_override): Pass extra
arguments to maybe_set_param_value.
* config/spu/spu.c (spu_option_override): Pass extra arguments to
maybe_set_param_value.
* opts.c (handle_param): Take opts and opts_set parameters.
Update call to set_param_value.
(initial_min_crossjump_insns,
initial_max_fields_for_field_sensitive,
initial_loop_invariant_max_bbs_in_loop): Remove.
(init_options_once): Don't set them.
(init_options_struct): Initialize parameters structures.
(default_options_optimization): Use default_param_value when
restoring defaults. Update calls to maybe_set_param_value.
(finish_options): Update calls to maybe_set_param_value.
(common_handle_option): Update calls to handle_param and
set_param_value.
* toplev.c (DEFPARAM): Update definition for changes to
param_info.
(general_init): Call finish_params.
From-SVN: r165460
Nick Clifton [Thu, 14 Oct 2010 09:12:50 +0000 (09:12 +0000)]
mn10300.h (CONSTANT_ALIGNMENT): Define.
* config/mn10300/mn10300.h (CONSTANT_ALIGNMENT): Define.
(DATA_ALIGNMENT, LOCAL_ALIGNMENT): Define.
(FIRST_PSEUDO_REGISTER): Increase by one.
(FIXED_REGISTERS, CALL_USED_REGISTERS): Update with CC_REG.
(HARD_REGNO_MODE_OK): Call mn10300_hard_regno_mode_ok.
(MODES_TIEABLE): Call mn10300_modes_tieable.
(REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGNO_REG_CLASS): Add
CC_REGS.
(LEGITIMATE_CONSTANT_P): Call mn10300_legitimate_constant_p.
(CC_OVERFLOW_UNUSABLE, CC_NO_CARRY, NOTICE_UPDATE_CC)
(SELECT_CC_MODE, REVERSIBLE_CC_MODE): Delete.
(REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Add CC register.
(ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Delete.
(mn10300_cc_status_mdep): Delete.
(CC_STATUS_MDEP, CC_STATUS_MDEP_INIT): Delete.
* config/mn10300/mn10300 (mn10300_option_override): Stop disabling
the combine-stack-adjust pass.
(print_operand): Use the mode of the comparison operation to
select the comparison suffix.
(notice_update_cc): Delete.
(mn10300_secondary_reload_class): Remove test for stack pointer
based arithmetic.
(output_tst): Rename to mn10300_output_cmp.
(impossible_plus_operand): Move into predicates.md.
(mn10300_legitimize_address): Make static.
(mn10300_legitimate_address_p): Make static. Only allow SI sized
constant pic operands.
(mn10300_legitimate_constant_p): New function.
(mn10300_case_values_threshold): Make static.
(mn10300_hard_regno_mode_ok): New function.
(mn10300_modes_tieable): New function.
(mn10300_select_cc_mode): New function.
* config/mn10300/predicates.md (impossible_plus_operand): Define.
* config/mn10300/mn10300-protos.h: Tidy.
(mn10300_legitimate_constant_p, mn10300_modes_tieable)
(mn10300_hard_regno_mode_ok, mn10300_select_cc_mode): Prototype.
* config/mn10300/mn10300.md (cc attribute): Delete. Replace
with clobbers or sets of CC_REG.
(CC_REG): Define.
(mov*): Remove use of CLR instruction.
(cbranch_si4_<code>): New pattern/split.
(integer_conditional_branch): New pattern.
(cbranch_sf4_<code>): New pattern/split.
(float_conditional_branch): New pattern.
(casesi): Use addsi3 pattern instead of movsi pattern to add and
move a value at the same time.
(cc0 peepholes): Remove.
From-SVN: r165459
H.J. Lu [Thu, 14 Oct 2010 08:49:27 +0000 (08:49 +0000)]
Add another 256bit vectorizer test.
2010-10-14 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/vect-sizes-1.c: New.
From-SVN: r165458
H.J. Lu [Thu, 14 Oct 2010 08:33:09 +0000 (08:33 +0000)]
Scan 256bit AVX register and xfail vectorize4-avx.c.
2010-10-14 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/46011
* gcc.target/i386/vectorize4-avx.c: Scan 256bit AVX register
and xfail.
From-SVN: r165457
H.J. Lu [Thu, 14 Oct 2010 08:19:32 +0000 (08:19 +0000)]
Scan 256bit AVX register.
2010-10-14 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/recip-vec-sqrtf-avx.c: Scan 256bit AVX
register.
* gcc.target/i386/recip-vec-divf-avx.c: Likewise.
From-SVN: r165456
Andrey Belevantsev [Thu, 14 Oct 2010 07:59:57 +0000 (11:59 +0400)]
sel-sched-ir.c (init_global_and_expr_for_insn): Set CANT_MOVE on RTX_FRAME_RELATED_P insns and the insn to which...
* sel-sched-ir.c (init_global_and_expr_for_insn): Set CANT_MOVE on RTX_FRAME_RELATED_P
insns and the insn to which NOTE_INSN_EPILOGUE_BEG is attached.
* sched-vis.c (print_value): Allow NULL value.
* gcc.target/ia64/
20101005.c: New test.
From-SVN: r165455
Andrey Belevantsev [Thu, 14 Oct 2010 07:56:47 +0000 (11:56 +0400)]
re PR rtl-optimization/45570 (ICE: in cfg_preds_1, at sel-sched-ir.c:4584)
PR rtl-optimization/45570
* sel-sched-ir.c (cfg_preds_1): When walking out of the region, assert
that we are pipelining outer loops. Allow returning zero predecessors.
* gcc.dg/pr45570.c: New test.
From-SVN: r165454
Andrey Belevantsev [Thu, 14 Oct 2010 07:39:07 +0000 (11:39 +0400)]
sel-sched-ir.c (maybe_tidy_empty_bb): Simplify comment.
* sel-sched-ir.c (maybe_tidy_empty_bb): Simplify comment.
(tidy_control_flow): Tidy vertical space.
(sel_remove_bb): New variable idx. Use it to remember the basic
block index before deleting the block.
(sel_remove_empty_bb): Remove dead code, simplify and insert to ...
(sel_merge_blocks): ... here.
* sel-sched-ir.h (sel_remove_empty_bb): Remove prototype.
From-SVN: r165453
Jakub Jelinek [Thu, 14 Oct 2010 07:17:54 +0000 (09:17 +0200)]
cse.c (is_dead_reg): Change into inline function that is not called through for_each_rtx.
* cse.c (is_dead_reg): Change into inline function that is not
called through for_each_rtx.
(set_live_p): Adjust caller.
(insn_live_p): Don't reset DEBUG_INSNs here.
(struct dead_debug_insn_data): New data.
(count_stores, is_dead_debug_insn, replace_dead_reg): New functions.
(delete_trivially_dead_insns): If there is just one setter for the
dead reg that is referenced by some DEBUG_INSNs, create a DEBUG_EXPR
and add DEBUG_INSN for it right before the removed setter and
use the DEBUG_EXPR instead of the dead pseudo.
From-SVN: r165452
Zdenek Dvorak [Thu, 14 Oct 2010 07:08:45 +0000 (09:08 +0200)]
et-forest.c (et_nca): Return NULL immediately when the dominance forest has disjoint components.
2010-10-14 Zdenek Dvorak <rakdver@kam.uniff.cz>
* et-forest.c (et_nca): Return NULL immediately when
the dominance forest has disjoint components.
From-SVN: r165451
Vladimir Makarov [Thu, 14 Oct 2010 03:07:59 +0000 (03:07 +0000)]
ira.c (setup_class_hard_regs): Fix typo in indexing ira_non_ordered_class_hard_regs and ira_class_hard_reg_index.
2010-10-13 Vladimir Makarov <vmakarov@redhat.com>
* ira.c (setup_class_hard_regs): Fix typo in indexing
ira_non_ordered_class_hard_regs and ira_class_hard_reg_index.
From-SVN: r165450
H.J. Lu [Thu, 14 Oct 2010 02:42:50 +0000 (02:42 +0000)]
Add more 256bit AVX testcases.
2010-10-13 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/recip-vec-sqrtf-avx.c: New.
* gcc.target/i386/recip-vec-divf-avx.c: Likewise.
* gcc.target/i386/vectorize4-avx.c: Likewise.
From-SVN: r165449
H.J. Lu [Thu, 14 Oct 2010 02:36:41 +0000 (02:36 +0000)]
Add testcases for 256bit AVX copysign.
2010-10-13 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/avx-copysign-vec.c: New.
* gcc.target/i386/avx-copysignf-vec.c: Likewise.
From-SVN: r165448
H.J. Lu [Thu, 14 Oct 2010 02:27:59 +0000 (02:27 +0000)]
Add a testcase for PR middle-end/44130.
2010-10-13 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/44130
* gcc.target/i386/pr44130.c: New.
From-SVN: r165447
H.J. Lu [Thu, 14 Oct 2010 02:22:09 +0000 (02:22 +0000)]
Add a testcase for PR middle-end/44144.
2010-10-13 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/44144
* gcc.target/i386/pr44144.c: New.
From-SVN: r165446
H.J. Lu [Thu, 14 Oct 2010 02:11:59 +0000 (02:11 +0000)]
Add a testcase for PR target/44180.
2010-10-13 H.J. Lu <hongjiu.lu@intel.com>
PR target/44180
* gcc.target/i386/pr44180.c: New.
From-SVN: r165445
Tijs Wiebe Lefering [Thu, 14 Oct 2010 01:48:43 +0000 (01:48 +0000)]
F^C the vcg dump bug.
From-SVN: r165444
Jason Merrill [Thu, 14 Oct 2010 00:50:26 +0000 (20:50 -0400)]
re PR c++/45984 (ICE: canonical types differ for identical types)
PR c++/45984
* class.c (fixup_attribute_variants): New fn.
* cp-tree.h: Declare it.
* pt.c (instantiate_class_template): Call it.
* semantics.c (begin_class_definition): Call it.
From-SVN: r165443
GCC Administrator [Thu, 14 Oct 2010 00:17:36 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r165442
Jonathan Wakely [Wed, 13 Oct 2010 22:52:25 +0000 (22:52 +0000)]
re PR libstdc++/45990 (28_regex/07_traits/char/isctype.cc XPASSes on Solaris 2/IRIX 6)
PR libstdc++/45990
* include/bits/regex.h (regex_traits::isctype): DR 1337.
From-SVN: r165438
Eric Botcazou [Wed, 13 Oct 2010 21:43:42 +0000 (21:43 +0000)]
re PR rtl-optimization/45912 (Patch for PR tree-optimization/44972 caused 2500+ FAILs on Solaris 2/SPARC)
PR rtl-optimization/45912
* ira-costs.c (ira_tune_allocno_costs_and_cover_classes): Test the
regno of registers instead of their index to compute the alignment.
From-SVN: r165437
H.J. Lu [Wed, 13 Oct 2010 21:20:07 +0000 (14:20 -0700)]
Addd 256bit AVX vectorizer patterns.
2010-10-13 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_build_const_vector): Check vector
mode instead of scalar mode.
(ix86_build_signbit_mask): Likewise.
(ix86_expand_fp_absneg_operator): Updated.
(ix86_expand_copysign): Likewise.
(ix86_expand_int_vcond): Likewise.
(ix86_emit_swdivsf): Likewise.
(ix86_sse_copysign_to_positive): Likewise.
(ix86_expand_sse_fabs): Likewise.
* config/i386/i386.md (fixuns_trunc<mode>si2): Likewise.
* config/i386/sse.md (copysign<mode>3): Likewise.
(sse2_cvtudq2ps): Likewise.
(vec_unpacku_float_hi_v4si): Likewise.
(vec_unpacku_float_lo_v4si): Likewise.
* config/i386/i386.c (ix86_builtins): Add
IX86_BUILTIN_CPYSGNPS256 and IX86_BUILTIN_CPYSGNPD256.
(bdesc_args): Likewise.
(ix86_builtin_vectorized_function): Support
IX86_BUILTIN_CPYSGNPS256, IX86_BUILTIN_CPYSGNPD256,
IX86_BUILTIN_SQRTPD256, IX86_BUILTIN_SQRTPS_NR256,
and IX86_BUILTIN_CVTPS2DQ256.
(ix86_builtin_reciprocal): Support IX86_BUILTIN_SQRTPS_NR256.
* config/i386/sse.md (STORENT_MODE): New.
(VEC_FLOAT_MODE): Likewise.
(VEC_EXTRACT_MODE): Likewise.
(*avx_cvtdq2pd256_2): Likewise.
(vec_pack_trunc_v4df): Likewise.
(vec_interleave_highv8sf): Likewise.
(vec_interleave_lowv8sf): Likewise.
(storent<mode>): Macroized.
(<code><mode>2: absneg): Likewise.
(copysign<mode>3): Likewise.
(vec_extract<mode>): Likewise.
PR target/44180
* config/i386/i386.c (expand_vec_perm_even_odd_1): Rewritten
for V8SFmode.
2010-10-13 Richard Guenther <rguenther@suse.de>
H.J. Lu <hongjiu.lu@intel.com>
* config/i386/sse.md (reduc_splus_v8sf): Add.
(reduc_splus_v4df): Likewise.
(vec_unpacks_hi_v8sf): Likewise.
(vec_unpacks_lo_v8sf): Likewise.
(*avx_cvtps2pd256_2): Likewise.
(vec_unpacks_float_hi_v8si): Likewise.
(vec_unpacks_float_lo_v8si): Likewise.
(vec_interleave_highv4df): Likewise.
(vec_interleave_lowv4df): Likewise.
From-SVN: r165436
Richard Guenther [Wed, 13 Oct 2010 20:30:10 +0000 (20:30 +0000)]
re PR objc/45878 (Can't compile even a trivial ObjC program with -fexceptions -O2)
2010-10-13 Richard Guenther <rguenther@suse.de>
PR objc/45878
* gimple-fold.c (gimple_fold_obj_type_ref): Leave OBJ_TYPE_REFs
alone if there are no virtual methods.
* objc.dg/pr45878.m: New testcase.
From-SVN: r165435
Richard Henderson [Wed, 13 Oct 2010 18:57:31 +0000 (11:57 -0700)]
Centralize knowledge of eh personality routines.
From-SVN: r165433