Nicola Pero [Tue, 21 Dec 2010 22:49:37 +0000 (22:49 +0000)]
In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
PR libobjc/18764
* class.c (__objc_add_class_to_hash): Return YES if the class was
added, and NO if it already existed.
* init.c (__objc_init_class): If __objc_add_class_to_hash returns
NO, then abort the program with an error message.
* objc-private/runtime.h (__objc_add_class_to_hash): Updated
declaration.
Nicola Pero [Tue, 21 Dec 2010 22:17:52 +0000 (22:17 +0000)]
In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
* init.c (_objc_load_callback): Initialize with 0.
(__objc_call_callback): Renamed to __objc_call_load_callback.
Check _objc_load_callback only once, and if it is not set, return
immediately.
(objc_send_load): Updated call to __objc_call_callback.
Ira Rosen [Tue, 21 Dec 2010 15:42:11 +0000 (15:42 +0000)]
re PR tree-optimization/47001 (segmentation fault in vect_mark_slp_stmts)
PR tree-optimization/47001
* tree-vect-slp.c (vect_supported_load_permutation_p): Check
that the loads in reduction are different and there are no gaps
between them.
Nicola Pero [Tue, 21 Dec 2010 15:34:19 +0000 (15:34 +0000)]
In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
PR libobjc/16110
* init.c (__objc_send_message_in_list): Renamed to
__objc_send_load_using_method_list. Do not take an 'op' argument.
Register the 'load' selector if needed.
(__objc_send_load): Do not register the 'load' selector. Updated
call to __objc_send_message_in_list.
(__objc_create_classes_tree): Add the class of any claimed
category that was loaded in the module to the list of classes for
which we try to execute +load.
In gcc/testsuite/:
2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
Nicola Pero [Tue, 21 Dec 2010 14:56:18 +0000 (14:56 +0000)]
In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-private/common.h: When DEBUG is defined, include <stdio.h>.
Updated comments.
* init.c (__objc_tree_insert_class): Use %p, not %x, when printing
a pointer using DEBUG_PRINTF.
Nicola Pero [Tue, 21 Dec 2010 13:44:04 +0000 (13:44 +0000)]
In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
PR libobjc/45953
* selector.c (__sel_register_typed_name): When registering a new
selector with the same name as an existing one, reuse the existing
name string. Also updated types, casts and comments in the whole
function.
In gcc/testsuite/:
2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
PR libobjc/45953
* objc.dg/libobjc-selector-1.m: New test.
Nicola Pero [Tue, 21 Dec 2010 12:49:26 +0000 (12:49 +0000)]
In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-private/module-abi-8.h (struct objc_symtab): Declare 'refs'
to be 'struct objc_selector *' and not 'SEL'.
* init.c (__objc_exec_class): Call
__objc_register_selectors_from_module instead of iterating over
each selector and calling __sel_register_typed_name for each.
* objc-private/selector.h: Declare
__objc_register_selectors_from_module instead of
__sel_register_typed_name.
* selector.c (__objc_register_selectors_from_module): New.
(__sel_register_typed_name): Made static.
Nicola Pero [Tue, 21 Dec 2010 11:50:14 +0000 (11:50 +0000)]
In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-private/runtime.h (DEBUG_PRINTF): Moved from here ...
* objc-private/common.h (DEBUG_PRINTF): To here.
* hash.c: Do not include objc-private/runtime.h and objc/thr.h.
* config/mn10300/mn10300.c (mn10300_legitimize_pic_address): Generate
UNSPEC patterns by hand, with the proper mode; use gen_const_mem.
* config/mn10300/mn10300.md (call, call_value): Generate UNSPEC_PLT
by hand, with the proper mode.
(symGOT2reg, symGOT2reg_i, symGOTOFF2reg): Remove.
(symGOTOFF2reg_i, sym2PIC, sym2PLT): Remove.
Sanjin Liu [Mon, 20 Dec 2010 17:48:51 +0000 (17:48 +0000)]
arm-cores.def: Add Faraday CPU support - fa526/fa626/fa606te/fa626te/fmp626/fa726te.
2010-12-20 Sanjin Liu <scliu@faraday-tech.com>
Mingfeng Wu <mingfeng@faraday-tech.com>
* config/arm/arm-cores.def: Add Faraday CPU support -
fa526/fa626/fa606te/fa626te/fmp626/fa726te.
* config/arm/arm-tune.md: Regenerate.
* config/arm/arm.c (arm_fa726te_tune): New tune_params for fa726te
(fa726te_sched_adjust_cost): New cost function for fa726te.
(arm_issue_rate): Add fa726te.
* config/arm/arm.md (generic_sched): Add Faraday cores to generic_sched
and include machine description files.
* config/arm/bpabi.h (TARGET_FIX_V4BX_SPEC): Add fa526 and fa626.
* config/arm/t-arm (MD_INCLUDES): Include machine description files for
Faraday cores.
* config/arm/t-arm-elf: Add multilib option for Faraday cores.
* config/arm/t-linux-eabi: Add multilib option for Faraday cores except
fa526 and fa626.
* doc/invoke.texi: Document -mcpu for Faraday cores.
* config/arm/fa526.md: New file.
* config/arm/fa606te.md: New file.
* config/arm/fa626te.md: New file.
* config/arm/fmp626.md: New file.
* config/arm/fa726te.md: New file.
Iain Sandoe [Mon, 20 Dec 2010 10:01:02 +0000 (10:01 +0000)]
re PR c++/46904 (g++.dg/tree-prof/(indir-call-prof.C|inline_mismatch_args.C) fail on powerpc-apple-darwin9)
PR c++/46904
PR middle-end/46916
PR target/46950
* config/darwin.c (generating_for_darwin_version): New var.
(darwin_text_section): Remove.
(darwin_rodata_section): Do not check function section here.
(darwin_emit_unwind_label): Do not emit for Darwin >= 9.
Emit distinct labels for successive calls for the same decl.
(darwin_override_options): Set generating_for_darwin_version.
Add FIXME and disable -freorder-blocks-and-partition.
Suppress automatic asynchronous unwind tables for m32.
Switch off -freorder-blocks-and-partition when unwind tables
will be generated. Update to use generating_for_darwin_version.
(darwin_function_section): Check for cases that need to be placed
in coalesced sections.
* config/darwin-sections.def: Define hot, cold, startup and exit sections
for both coalesced and regular code.
* config/darwin.h (USE_SELECT_SECTION_FOR_FUNCTIONS): Delete.
* config/darwin10.h (TARGET_ASM_EMIT_UNWIND_LABEL): Delete.
Nicola Pero [Sun, 19 Dec 2010 15:13:54 +0000 (15:13 +0000)]
In gcc/testsuite/: 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/testsuite/:
2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/gnu-api-2-objc.m: Fixed test to test objc_lookUpClass,
not objc_lookupClass.
* obj-c++.dg/gnu-api-2-objc.mm: Same change.
In libobjc/:
2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
* class.c (objc_lookupClass): Renamed to objc_lookUpClass.
* protocols.c: Updated all calls to objc_lookupClass to call
objc_lookUpClass instead.
* sendmsg.c (objc_lookupClass): Do not declare.
(get_imp): Update call to objc_lookupClass to call
objc_lookUpClass instead.
* objc/runtime.h (objc_lookupClass): Renamed to objc_lookUpClass.
Eric Botcazou [Sun, 19 Dec 2010 12:19:12 +0000 (12:19 +0000)]
re PR target/46729 (32-bit 30_threads execution tests fail on Solaris 10/SPARC with Sun as)
PR target/46729
* config/sparc/sparc.h (GLOBAL_OFFSET_TABLE_REGNUM): New macro.
(PIC_OFFSET_TABLE_REGNUM): Rewrite in terms of above macro.
* config/sparc/sparc.c (pic_helper_needed): Delete.
(global_offset_table): Likewise.
(pic_helper_symbol): Rename to...
(got_helper_rtx): ...this.
(global_offset_table_rtx): New global variable.
(sparc_got_symbol): Likewise.
(sparc_got): New static function.
(check_pic): Use local variable and call sparc_got.
(sparc_tls_symbol): Initialize to NULL_RTX.
(sparc_tls_got): In non-PIC mode, reload the GOT register for Sun TLS
and 32-bit ABI and copy the GOT symbol to a new register otherwise.
(get_pc_thunk_name): Rename local variable.
(gen_load_pcrel_sym): New wrapper around load_pcrel_sym{si,di}.
(load_pic_register): Rename to...
(load_got_register): ...this. Adjust and call gen_load_pcrel_sym.
(sparc_expand_prologue): Do not test flag_pic.
(sparc_output_mi_thunk): Use pic_offset_table_rtx directly.
(sparc_file_end): Test got_helper_rtx instead of pic_helper_needed.
Rename local variable and do not call get_pc_thunk_name again.
* config/sparc/sparc.md (load_pcrel_sym): Add operand #3.
Dave Korn [Sun, 19 Dec 2010 11:14:19 +0000 (11:14 +0000)]
re PR middle-end/46674 (Weak alias is mistakenly optimized away)
PR middle-end/46674
PR middle-end/46221
* varasm.c (symbol_alias_set_t): New typedef for derived pointer_set
wrapper class.
(symbol_alias_set_create): New wrapper function.
(symbol_alias_set_destroy): Likewise.
(symbol_alias_set_contains): Likewise.
(symbol_alias_set_insert): Likewise.
(compute_visible_aliases): Use the above and return symbol_alias_set_t,
not a pointer_set.
(remove_unreachable_alias_pairs): Adjust likewise to match.
(finish_aliases_1): Likewise.
gcc/
* config/arm/arm.c (arm_legitimate_index_p): Add VFP load/store
index range case. Change to SF/DFmode tests to avoid capturing HFmode.
(thumb2_legitimate_index_p): Same.
gcc/testsuite/
* gcc.target/arm/vfp-1.c (test_ldst): New test for VFP
load/store immediate indexes.
Nicola Pero [Sun, 19 Dec 2010 01:29:09 +0000 (01:29 +0000)]
In gcc/testsuite/: 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/testsuite/:
2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/gnu-api-2-resolve-method.m: Include objc/message.h.
* obj-c++.dg/gnu-api-2-resolve-method.m: Include objc/message.h.
In libobjc/:
2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
* Makefile.in (OBJC_DEPRECATED_H): Added objc_msg_sendv.h.
* objc/deprecated/objc_msg_sendv.h: New.
* objc/message.h: Do not define retval_t, apply_t, arglist,
arglist_t, objc_msg_sendv, now in
objc/deprecated/objc_msg_sendv.h.
* objc/objc.h: Do not include message.h; include
objc/deprecated/objc_msg_sendv.h instead. Tidied up comments.
* sendmsg.c: Include objc/message.h.
* thr.c: Include objc/message.h.
Nicola Pero [Sun, 19 Dec 2010 00:54:27 +0000 (00:54 +0000)]
In libobjc/: 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
* Protocol.m: Moved all methods, with the exception of -isEqual:,
into the 'Deprecated' category.
* objc/Protocol.h: Removed all methods, moved to
objc/deprecated/Protocol.h. Include objc/deprecated/Protocol.h.
* objc/deprecated/Protocol.h: New.
* Makefile.in (OBJC_DEPRECATED_H): Added Protocol.h.
Nicola Pero [Sun, 19 Dec 2010 00:28:52 +0000 (00:28 +0000)]
In libobjc/: 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
* init.c: Include objc-private/selector.h. Do not declare
__sel_register_typed_name.
* objc-private/selector.h (__sel_register_typed_name): Declare.
* selector.c: Include objc-private/selector.h.
Jakub Jelinek [Sat, 18 Dec 2010 21:07:12 +0000 (22:07 +0100)]
re PR tree-optimization/46969 (-fcompare-debug failure with -O -ftree-vectorize -ftree-parallelize-loops=2)
PR tree-optimization/46969
* tree-parloops.c (struct reduction_info): Add reduc_version.
(reduction_info_hash): Return reduc_version field.
(reduction_phi): Set reduc_version to gimple_uid (phi).
(build_new_reduction): Set reduc_version to SSA_NAME_VERSION of
phi result.
(set_reduc_phi_uids): New function.
(gather_scalar_reductions): Call it at the end through htab_traverse.
In gcc/objc/:
2010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (objc_init): Call using_eh_for_cleanups.
(objc_init_exceptions): Renamed to objc_maybe_warn_exceptions. Do
not call using_eh_for_cleanups.
(objc_begin_try_stmt): Do not call objc_init_exceptions.
(objc_build_throw_stmt): Updated call to
objc_maybe_warn_exceptions.
In gcc/testsuite/:
2010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
re PR target/46915 (Wrong code is generated for conditional branch followed by zero length asm)
PR target/46915
* config/pa/pa.c (branch_to_delay_slot_p): Use next_active_insn instead
of next_real_insn. Search forward checking for both ASM_INPUT and
ASM_OPERANDS asms until exit condition is found.
(branch_needs_nop_p): Likewise.
(use_skip_p): New function.
(output_cbranch): Use use_skip_p.
(output_bb, output_bvb): Likewise.
Iain Sandoe [Sat, 18 Dec 2010 11:28:46 +0000 (11:28 +0000)]
objc-act.c (objc_eh_personality): Select personality name on runtime.
gcc/objc:
* objc/objc-act.c (objc_eh_personality): Select personality name on
runtime.
(objc_init_exceptions): New.
(objc_begin_try_stmt): Use objc_init_exceptions.
(objc_build_throw_stmt): Likewise.
Kai Tietz [Sat, 18 Dec 2010 10:16:13 +0000 (10:16 +0000)]
re PR target/36834 (structure return ABI for windows targets differs from native MSVC)
2010-12-18 Kai Tietz <kai.tietz@onevision.com>
PR target/36834
* config/i386/i386.c (ix86_keep_aggregate_return_pointer):
New local function.
(ix86_return_pops_args): Use ix86_keep_aggregate_return_pointer
function instead of KEEP_AGGREGATE_RETURN_POINTER.
(ix86_handle_callee_pop_aggregate_return): New handler.
(ix86_attribute_table): Add new attribute
callee_pop_aggregate_return.
* doc/extend.texi (callee_pop_aggregate_return): Add
attribute documentation.