Age | Commit message (Collapse) | Author | Files | Lines |
|
before if.
* c-parser.c (c_parser_for_statement): Move initialization of
cond and incr before if.
From-SVN: r165592
|
|
* 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
|
|
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
|
|
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
|
|
In gcc/testsuite/:
2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/18255
* objc.dg/pr18255.m: New.
From-SVN: r165579
|
|
From-SVN: r165573
|
|
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
|
|
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
|
|
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
|
|
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 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
|
|
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
|
|
In gcc/testsuite/:
2010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/gnu-api-2-ivar.m: New.
From-SVN: r165543
|
|
* 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
|
|
* 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
|
|
* 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 Kai Tietz <kai.tietz@onevision.com>
* configure.ac: Make sure inhibit_libc remains false for mingw targets
as cross.
* configure: Regenerated.
From-SVN: r165538
|
|
From-SVN: r165537
|
|
In gcc/testsuite/:
2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/gnu-api-2-property.m: New.
From-SVN: r165532
|
|
From-SVN: r165530
|
|
In gcc/testsuite/:
2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/gnu-api-2-object.m: New.
From-SVN: r165529
|
|
In gcc/testsuite/:
2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/gnu-api-2-method.m: New.
From-SVN: r165526
|
|
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
|
|
* config/i386/i386.md (*movdfcc_1_rex64): Correct mode attribute.
(*movdfcc_1): ditto.
From-SVN: r165520
|
|
* 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
|
|
From-SVN: r165516
|
|
From-SVN: r165515
|
|
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
|
|
* doc/invoke.texi: Add -fstrict-volatile-bitfields to
Option Summary and Index.
From-SVN: r165512
|
|
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
|
|
* doc/extend.texi (Variable Length): Don't refer to VLAs not
conforming to C99.
From-SVN: r165509
|
|
* 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 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
|
|
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
|
|
* config/frv/frv.c (frv_option_optimization,
TARGET_OPTION_OPTIMIZATION): Remove.
* config/frv/frv.h (RCSP_SOFTWARE_PIPELINING): Remove.
From-SVN: r165505
|
|
From-SVN: r165504
|
|
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 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
|
|
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
|
|
* g++.dg/torture/stackalign/eh-vararg-2.C: Fix dg-options for
arm-eabi targets.
From-SVN: r165498
|
|
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
|
|
relocatable linking.
* lib/lto.exp (lto-link-and-maybe-run): Use the default linker
script when relocatable linking.
From-SVN: r165494
|
|
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
|
|
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
|
|
From-SVN: r165490
|
|
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
|
|
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
|
|
PR tree-optimization/46008
* tree-if-conv.c (predicate_bbs): Try to canonicalize c2
if possible.
From-SVN: r165476
|
|
2010-10-14 H.J. Lu <hongjiu.lu@intel.com>
* gcc.dg/pr45570.c: Fix typos. Also run for i?86-*-*.
From-SVN: r165474
|
|
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
|