| 2007-04-24 Mike Stump <mrs@apple.com> |
| |
| Radar 5083137 |
| * gcc.c (PREFIX_PRIORITY_FIRST): Add. |
| (main): Add add_sysrooted_prefix should use SYSROOT_PRIORITY |
| instead of PREFIX_PRIORITY_LAST. |
| * config/darwin.h (GCC_DRIVER_HOST_INITIALIZATION1): Add. |
| (GCC_DRIVER_HOST_INITIALIZATION): Call |
| GCC_DRIVER_HOST_INITIALIZATION1 as well. |
| |
| 2007-04-24 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 5122634 |
| Backport from mainline: |
| 2007-04-24 Hui-May Chang <hm.chang@apple.com> |
| |
| * reload1.c (merge_assigned_reloads) : Do not merge a RELOAD_OTHER |
| instruction with a RELOAD_FOR_OPERAND_ADDRESS instruction. |
| |
| 2007-04-13 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4899595 |
| * c.opt (-fobjc-new-property) on by default. |
| * config/darwin-c.c (darwin_cpp_builtins): Define OBJC_NEW_PROPERTIES |
| when new property flag is on. |
| |
| 2007-03-12 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5023725 |
| * c-opts.c: Remove flag_objc_zerocost_exceptions check. |
| * config/darwin.h |
| (OBJC_FLAG_ZEROCOST_EXCEPTIONS): New macro to issue diagnostic. |
| (OBJC_FLAG_OBJC_ABI): Set -fobjc-zerocost-exceptions as |
| default for objc2 abi. |
| * config/darwin-c.c (darwin_cpp_builtins): Define OBJC_ZEROCOST_EXCEPTIONS |
| when zero-cost exception flag is on. |
| |
| 2007-04-18 Stuart Hastings <stuart@apple.com> |
| |
| Radar 5131847 |
| * gcc/config/i386/i386.md (movstrictqi_and): Add 64-bit support. |
| |
| 2007-04-17 Mike Stump <mrs@apple.com> |
| |
| Radar 5119788 |
| * gimplify.c (gimplify_init_ctor_eval): Handle VECTOR_TYPEs |
| better. |
| |
| 2007-04-10 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Fix bootstrap problem caused by radar 5096648. |
| * c-format.c (tm_p.h): Include it. |
| * config/darwin-protos.h: (objc_check_format_cfstring): Add decl. |
| |
| 2007-04-09 Eric Christopher <echristo@apple.com> |
| |
| * config/darwin.h: Remove prototypes from last checkin. |
| |
| 2007-04-09 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5096648 |
| * c-format.c (tm_p.h): header file include. |
| (format_type): cfstring_format_type enum added. |
| (format_kind_info): New entry for CFString format added. |
| (objc_check_nsformat_arg): Renamed to objc_check_cfformat_arg |
| and modified. |
| (check_format_info): Added support for CFString format. |
| (handle_format_attribute): Ditto. |
| * c-common.h (objc_NSString_format): decl removed. |
| * stub-objc.c (objc_NSString_format): def removed. |
| * config/darwin.h (TARGET_CFSTRING_P): Removed. |
| (CHECK_FORMAT_CFSTRING, CFSTRING_TYPE_NODE): Added. |
| * Makefile.in (tmp.h): c-format.o now depends on. |
| * config/darwin-c.c (objc_check_format_cfstring): New |
| |
| 2007-04-09 Mike Stump <mrs@apple.com> |
| |
| Radar 4401222 |
| * gsyslimits.h: Don't include_next <limits.h> here... |
| * limitx.h: instead, include_next <limits.h> here. |
| * limity.h: Simplify. |
| |
| 2006-12-19 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4792158 |
| * config/darwin-protos.h: Removed/added extern decls. |
| * config/darwin.c (machopic_select_section): New __objc_stringobj |
| section for objc2 ObjCString strings. |
| (machopic_select_section): Clean up and separation of objc2 and objc1 |
| sections. |
| * config/darwin.h: Renaming of OBJC2 segment names to __DATA |
| and some cleanup. |
| |
| 2007-03-26 Jon Ziegler <jonz@apple.com> |
| |
| Revert Radar 4964506 |
| * function.c: revert |
| * defaults.h: revert |
| * var-tracking.c: revert |
| * dwarf2out.c: revert |
| |
| 2007-03-19 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4947014 - objc atomic property |
| * c-common.h (RID_NONATOMIC): Add |
| * c-parse.in: Recognize 'nonatomic' as new property. |
| |
| 2006-12-13 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4697325 |
| * gcc.c (process_command): Move handling of |
| MACOSX_DEPLOYMENT_TARGET environment variable from here. |
| * config/darwin-driver.c: Remove. |
| |
| 2007-03-13 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4564694 |
| * c-parse.in: Add @package support to syntax. |
| * c-common.h (RID_AT_PACKAGE): Add |
| |
| 2007-03-06 Mike Stump <mrs@apple.com> |
| |
| Radar 5033355 |
| * c-incpath.c (merge_include_chains): Note framework include |
| directories. |
| |
| 2007-03-02 Eric Christopher <echristo@apple.com> |
| |
| * cfgexpand.c (tree_expand_cfg): Fix typo. |
| |
| 2007-02-28 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5028937 |
| * config/i386/darwin.h (DARWIN_MINVERSION_SPEC): Modified to handle |
| objc/objc++ prefixes. |
| * config/rs6000/darwin.h: Ditto |
| |
| 2007-02-16 Caroline Tice <ctice@apple.com> |
| |
| Radar 4964506 |
| Backport from mainline (some pieces missed previously): |
| |
| 2006-02-21 Alexandre Oliva <aoliva@redhat.com> |
| |
| * defaults.h (CFA_FRAME_BASE_OFFSET): Define. |
| |
| 2005-11-17 Richard Henderson <rth@redhat.com> |
| |
| * var-tracking.c (adjust_stack_reference): Use |
| FRAME_POINTER_CFA_OFFSET. |
| |
| 2005-09-07 Richard Henderson <rth@redhat.com> |
| |
| * function.c (ARG_POINTER_CFA_OFFSET): Move ... |
| * defaults.h (ARG_POINTER_CFA_OFFSET): ... here. |
| (INCOMING_FRAME_SP_OFFSET): Move from dwarf2out.c. |
| * dwarf2out.c (INCOMING_FRAME_SP_OFFSET): Move to defaults.h. |
| * var-tracking.c (frame_stack_adjust): Remove. |
| (prologue_stack_adjust): Remove. |
| (vt_stack_adjustments): Use INCOMING_FRAME_SP_OFFSET. |
| (adjust_stack_reference): Re-base memories to arg_pointer_rtx. |
| (set_frame_base_location): Remove. |
| (compute_bb_dataflow, emit_notes_in_bb): Don't call it. |
| (vt_add_function_parameters): Don't eliminate_regs. |
| (vt_initialize): Don't create frame_base_decl. |
| |
| 2007-02-16 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4985544 |
| * c-format.c (enum format_type): New entry for NSString format. |
| (format_typ): Has a new entry for NSString format. |
| (decode_format_attr): Error on use of NSString format on a |
| non-objective-c program. |
| (objc_check_nsformat_arg): New. |
| (check_format_info): Call back for NSString is objc_check_nsformat_arg |
| (handle_format_attribute): Use objc_check_format_nsstring for |
| NSString format. |
| * c-common.h (objc_NSString_format): New decl. |
| (objc_check_format_nsstring): New decl. |
| * stub-objc.c (objc_NSString_format, objc_check_format_nsstring): New |
| stubs. |
| * config/darwin-protos.h (darwin_cfstring_type_node): New decl. |
| * config/darwin.c (darwin_cfstring_type_node): New |
| * config/darwin.h (TARGET_CFSTRING_P): New macro |
| |
| 2007-02-15 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4992792 |
| * dwarf2.h: Modify DW_AT_APPLE_flags value. |
| |
| 2007-02-13 Caroline Tice <ctice@apple.com> |
| |
| Radar 4964506 |
| Backport from mainline: |
| 2006-09-11 Alexandre Oliva <aoliva@redhat.com> |
| |
| * var-tracking.c (dump_dataflow_set): Start dumping at |
| register zero. |
| (clobber_variable_part): Kill only the variable part in |
| registers holding it, leaving other variables alone. |
| |
| 2006-08-09 Alexandre Oliva <aoliva@redhat.com> |
| |
| * var-tracking.c (enum micro_operation_type): Add MO_COPY. |
| (var_debug_decl): New function. |
| (var_reg_set): Follow debug decl link. Add location even if |
| reg is already known to hold some other variable. |
| (var_mem_set): Follow debug decl link. |
| (var_reg_delete_and_set, var_mem_delete_and_set): Follow debug |
| decl link. Delete other known locations of the variable part |
| if requested. |
| (var_reg_delete, var_mem_delete): Delete other known locations |
| of the variable part if requested. |
| (same_variable_part_p): New function. |
| (add_stores): Select MO_COPY when appropriate. |
| (vt_initialize): Handle it. |
| (compute_bb_dataflow, emit_notes_in_bb): Likewise. Delete |
| known locations for MO_SET and MO_CLOBBER. |
| (find_variable_location_part): New function. |
| (set_variable_part, delete_variable_part): Use it. |
| (clobber_variable_part): New function. |
| |
| 2006-05-23 Alexandre Oliva <aoliva@redhat.com> |
| |
| * var-tracking.c (struct micro_operation_def): Document that, |
| for modify micro operations, insn is the subsequent instruction. |
| (var_reg_delete_and_set, var_mem_delete_and_set): Split into... |
| (var_reg_set, var_mem_set): ... new functions. |
| (add_stores): Record subsequent insn. |
| (compute_bb_dataflow): Use new functions for MO_USE. |
| (emit_notes_in_bb): Use new functions for MO_USE. Emit use |
| notes after the insn, and modify notes before the insn known |
| to be the subsequent one. |
| (vt_initialize): Invert sorting of MO_CLOBBERs and MO_SETs. |
| |
| 2006-01-31 Marcin Dalecki <martin@dalecki.de> |
| |
| * var-tracking.c: Use XNEW/XCNEW allocation wrappers. |
| |
| 2005-10-21 Janis Johnson <janis187@us.ibm.com> |
| |
| * var-tracking.c (vt_initialize): Initialize post. |
| |
| 2005-06-07 Jakub Jelinek <jakub@redhat.com> |
| |
| * var-tracking.c: Include regs.h and expr.h. |
| (emit_note_insn_var_location): Skip over pieces where offset |
| is smaller than previous offset plus previous piece mode size. |
| Optimize adjacent hard registers or memory locations. |
| |
| 2005-03-10 Nathan Sidwell <nathan@codesourcery.com> |
| |
| * var-tracking.c (stack_adjust_offset_pre_post, |
| variable_htab_free, variable_union, dataflow_set_different_2, |
| count_uses, variable_was_changed, set_frame_base_location, |
| set_variable_part, emit_note_insn_var_location, vt_emit_notes, |
| vt_add_function_parameters): Use gcc_assert and gcc_unreachable. |
| |
| 2007-02-12 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4965989 |
| * c-parse.in: Add supprt for anonymous category syntax. |
| |
| 2007-02-12 Eric Christopher <echristo@apple.com> |
| |
| Radar 4940834 |
| Backport from mainline: |
| 2005-06-30 Andrew Pinski <pinskia@physics.uc.edu> |
| |
| * config/rs6000/darwin.h (STARTING_FRAME_OFFSET): |
| Set to 0 for FRAME_GROWS_DOWNWARD. |
| (REGISTER_NAMES): Add sfp. |
| |
| 2005-06-30 Andrew Pinski <pinskia@physics.uc.edu> |
| |
| * config/rs6000/darwin.h (FRAME_POINTER_REGNUM): Rename to ... |
| (HARD_FRAME_POINTER_REGNUM): this. |
| |
| 2005-06-26 Jakub Jelinek <jakub@redhat.com> |
| |
| * defaults.h (FRAME_GROWS_DOWNWARD): Define to 0 if not defined. |
| * function.c (get_func_frame_size): Use if (FRAME_GROWS_DOWNWARD) |
| instead of preprocessor conditionals. |
| (assign_stack_local_1, assign_stack_temp_for_type): Likewise. |
| * cfgexpand.c (FRAME_GROWS_DOWNWARD): Don't redefine to 1 or 0 |
| depending on if it was or was not defined previously. |
| * config/i386/i386.h (FRAME_GROWS_DOWNWARD): Define to 1. |
| |
| 2005-07-28 Kaz Kojima <kkojima@gcc.gnu.org> |
| |
| * df.c (df_uses_record): Handle SCRATCH. |
| |
| 2005-06-27 Richard Henderson <rth@redhat.com> |
| |
| * c-cppbuiltin.c (c_cpp_builtins): Add __SSP_ALL__ and __SSP__. |
| * cfgexpand.c: Include params.h. |
| (has_protected_decls, has_short_buffer): New. |
| (expand_stack_vars): Take a predicate to determine what to expand. |
| (defer_stack_allocation): True when flag_stack_protect on. |
| (SPCT_HAS_LARGE_CHAR_ARRAY, SPCT_HAS_SMALL_CHAR_ARRAY): New. |
| (SPCT_HAS_ARRAY, SPCT_HAS_AGGREGATE): New. |
| (stack_protect_classify_type, stack_protect_decl_phase): New. |
| (stack_protect_decl_phase_1, stack_protect_decl_phase_2): New. |
| (add_stack_protection_conflicts, create_stack_guard): New. |
| (expand_used_vars): Add stack protection logic. |
| (tree_expand_cfg): Likewise. |
| * common.opt (Wstack-protector): New. |
| (fstack-protector, fstack-protector-all): New. |
| * function.c: Include predict.h. |
| (assign_parm_adjust_stack_rtl): Zap stack_parm when stack protect |
| wants to copy the parameter into the stack frame. |
| (stack_protect_prologue, stack_protect_epilogue): New. |
| (expand_function_end): Call stack_protect_epilogue. Do |
| sjlj_emit_function_exit_after after naked_return_label. |
| * function.h (struct function): Add stack_protect_guard. |
| * params.def (PARAM_SSP_BUFFER_SIZE): New. |
| * toplev.c (process_options): Disable flag_stack_protect and/or |
| warn_stack_protect based on FRAME_GROWS_DOWNWARD. |
| * tree.h (stack_protect_prologue): Declare. |
| |
| * target-def.h (TARGET_STACK_PROTECT_GUARD): New. |
| (TARGET_STACK_PROTECT_FAIL): New. |
| (TARGET_INITIALIZER): Add them. |
| * target.h (struct gcc_target): Add stack_protect_guard and |
| stack_protect_fail. |
| * targhooks.c: Include ggc.h, gty header. |
| (stack_chk_guard_decl, default_stack_protect_guard): New. |
| (stack_chk_fail_decl, default_external_stack_protect_fail): New. |
| (default_hidden_stack_protect_fail): New. |
| * targhooks.h (default_stack_protect_guard): Declare. |
| (default_external_stack_protect_fail): Declare. |
| (default_hidden_stack_protect_fail): Declare. |
| * config/i386/i386.md (UNSPEC_SP_SET, UNSPEC_SP_TEST): New. |
| (trap): Use ud2. |
| (conditional_trap, conditional_trap_1): Remove. |
| (stack_protect_set, stack_protect_set_si, stack_protect_set_di): New. |
| (stack_protect_test, stack_protect_test_si, stack_protect_test_di): New. |
| |
| 2004-04-14 Richard Henderson <rth@redhat.com> |
| |
| * config/i386/i386.c (x86_cmpxchg, x86_xadd): New. |
| (ix86_compare_emitted): New. |
| (ix86_expand_compare): Use ix86_compare_emitted if set. |
| (ix86_expand_setcc): Only emit REG_EQUAL if both ix86_compare_op0 |
| and ix86_compare_op0 are set. |
| * config/i386/i386.h (ix86_compare_emitted): Declare. |
| |
| 2005-06-30 Jakub Jelinek <jakub@redhat.com> |
| |
| * function.c (stack_protect_epilogue): Pass label to |
| stack_protect_test, assume it emitted also the conditional |
| branch. |
| * doc/md.texi (stack_protect_test): Adjust documentation. |
| * config/i386/i386.md (stack_protect_test): Add third argument, |
| emit beq with operands[2]. |
| * config/rs6000/rs6000.h (FRAME_GROWS_DOWNWARD): Define to |
| flag_stack_protect != 0. |
| (STARTING_FRAME_OFFSET): Set to 0 for FRAME_GROWS_DOWNWARD. |
| * config/rs6000/rs6000.md (UNSPEC_SP_SET, UNSPEC_SP_TEST): New |
| constants. |
| (stack_protect_set, stack_protect_test): New expanders. |
| (stack_protect_setsi, stack_protect_setdi, stack_protect_testsi, |
| stack_protect_testdi): New insns. |
| * config/rs6000/rs6000.c (rs6000_stack_protect_fail): New function. |
| (TARGET_STACK_PROTECT_FAIL): Define. |
| (rs6000_generate_compare): Handle UNSPEC_SP_TEST. |
| (rs6000_stack_info): Handle FRAME_GROWS_DOWNWARD. |
| * config/rs6000/rs6000.h (FIRST_PSEUDO_REGISTER): Increment. |
| (DWARF_FRAME_REGISTERS, DWARF_REG_TO_UNWIND_COLUMN): Adjust, so |
| that addition of sfp doesn't change these. |
| (FIXED_REGISTERS, CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS, |
| REG_ALLOC_ORDER): Add sfp. |
| (INT_REGNO_P): Include FRAME_POINTER_REGNUM. |
| (FRAME_POINTER_REGNUM): Define to 113. |
| (HARD_FRAME_POINTER_REGNUM): Define to 31. |
| (REG_CLASS_CONTENTS, REGNO_REG_CLASS): Add sfp. |
| (STARTING_FRAME_OFFSET): Set to 0 for FRAME_GROWS_DOWNWARD. |
| (ELIMINABLE_REGS): Never eliminate to |
| FRAME_POINTER_REGNUM, but HARD_FRAME_POINTER_REGNUM |
| instead. Add eliminations from FRAME_POINTER_REGNUM. |
| (REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P, INT_REG_OK_FOR_INDEX_P): |
| Include FRAME_POINTER_REGNUM. |
| (REGISTER_NAMES): Add sfp. |
| * config/rs6000/rs6000.c (rs6000_reg_names): Add sfp. |
| (alt_reg_names): Likewise. |
| (rs6000_stack_info): Handle FRAME_GROWS_DOWNWARD. |
| (rs6000_emit_prologue): Use HARD_FRAME_POINTER_REGNUM |
| instead of FRAME_POINTER_REGNUM. |
| (rs6000_initial_elimination_offset): Never eliminate to |
| FRAME_POINTER_REGNUM, but HARD_FRAME_POINTER_REGNUM |
| instead. Add elimination offsets from FRAME_POINTER_REGNUM. |
| |
| 2007-02-08 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Removed objc2 hybrid abi |
| * c-parse.in: removed flag_objc_abi == 3. |
| * config/darwin-c.c: Removed checking for |
| hybrid abi. |
| * config/darwin.c: Ditto. |
| * config/darwin.h: Issue error if use of hybrid abi is |
| attempted. Removed checking for hybrid abi. |
| |
| 2007-02-07 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4981913 |
| * config/i386/i386.c (override_options): Make |
| -fomit-frame-pointer setting work for -fast. |
| |
| 2007-02-05 Paolo Bonzini <bonzini@gnu.org> |
| Stuart Hastings <stuart@apple.com> |
| |
| Radar 4134510 |
| Partial backport from FSF 4.2 (revision 109961): |
| 2006-01-19 Paolo Bonzini <bonzini@gnu.org> |
| * combine.c (try_combine): Do not worry about MEMs wrapped by USEs. |
| (expand_compound_operation, expand_field_assignment): Fail if the |
| bit lengths of an extract operation are out of range. |
| (make_extraction): Compute wanted_inner_mode based on the position |
| and length of the extraction. Make it extraction_mode for non-constant |
| positions, and do not modify offset in that case. When generating a |
| new MEM, use a mode that can hold the extraction while keeping correct |
| alignment. Remove code that supported MEMs wrapped by USEs. |
| (simplify_shift_const_1, force_to_mode) <case USE>: Remove. |
| * gcc/combine.c (make_extraction): Compute wanted_inner_mode based on the position |
| and length of the extraction. |
| |
| 2007-02-05 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4957887 |
| * dwarf2out.c (dwarf2out_finish): Optionally add DW_AT_APPLE_flags |
| attribute to compilation unit. |
| * dwarf2.h (enum dwarf_attribute): Add DW_AT_APPLE_flags. |
| * toplev.c (get_arguments): New. |
| * toplev.h (get_arguments): New. |
| |
| 2007-02-02 Jason Merrill <jason@redhat.com> |
| Stuart Hastings <stuart@apple.com> |
| |
| Radar 4950109 |
| Backport from mainline: 2006-02-12 |
| PR c++/24996 |
| * except.c (build_throw): Add a CLEANUP_POINT_EXPR inside the |
| TRY_CATCH_EXPR or MUST_NOT_THROW_EXPR. |
| |
| 2007-01-25 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4134510 |
| * gcc/config/i386/i386.md (cmpstrsi): Prefer libcall for |
| indefinite or length > 30. |
| |
| 2007-01-25 Eric Christopher <echristo@apple.com> |
| |
| Radar 4940862 |
| Backport from mainline: |
| 2005-06-27 Jakub Jelinek <jakub@redhat.com> |
| |
| * builtin-attrs.def (DEF_ATTR_FOR_INT): Add for 5 and 6. |
| (DEF_LIST_INT_INT): Add for 4,0, 4,5, 5,0, 5,6. |
| (ATTR_NOTHROW_NONNULL_4, ATTR_NOTHROW_NONNULL_5): Define. |
| (ATTR_FORMAT_PRINTF_4_0, ATTR_FORMAT_PRINTF_4_5, |
| ATTR_FORMAT_PRINTF_5_0, ATTR_FORMAT_PRINTF_5_6): Define. |
| * builtins.c: Include tree-flow.h. |
| (expand_builtin_mempcpy, expand_builtin_memmove): Comment fixes. |
| (expand_builtin_object_size, expand_builtin_memory_chk, |
| maybe_emit_chk_warning, maybe_emit_sprintf_chk_warning, |
| compute_object_offset, compute_builtin_object_size, |
| fold_builtin_object_size): New functions. |
| (expand_builtin): Handle BUILT_IN_OBJECT_SIZE and BUILT_IN_*_CHK. |
| (fold_builtin_1): Likewise. Handle BUILT_IN_{,V}{,F}PRINTF |
| and BUILT_IN_{,F}PRINTF_UNLOCKED. |
| (fold_builtin_memory_chk, fold_builtin_stxcpy_chk, |
| fold_builtin_strncpy_chk, fold_builtin_strcat_chk, |
| fold_builtin_strncat_chk, fold_builtin_sprintf_chk, |
| fold_builtin_snprintf_chk, fold_builtin_printf, fold_builtin_fprintf): |
| New functions. |
| * builtins.def (BUILT_IN_OBJECT_SIZE, BUILT_IN_MEMCPY_CHK, |
| BUILT_IN_MEMMOVE_CHK, BUILT_IN_MEMPCPY_CHK, BUILT_IN_MEMSET_CHK, |
| BUILT_IN_STPCPY_CHK, BUILT_IN_STRCAT_CHK, BUILT_IN_STRCPY_CHK, |
| BUILT_IN_STRNCAT_CHK, BUILT_IN_STRNCPY_CHK, BUILT_IN_SNPRINTF_CHK, |
| BUILT_IN_SPRINTF_CHK, BUILT_IN_VSNPRINTF_CHK, BUILT_IN_VSPRINTF_CHK, |
| BUILT_IN_FPRINTF_CHK, BUILT_IN_PRINTF_CHK, BUILT_IN_VFPRINTF_CHK, |
| BUILT_IN_VPRINTF_CHK): New builtins. |
| * builtin-types.def (DEF_FUNCTION_TYPE_5, DEF_FUNCTION_TYPE_VAR_4): |
| Document. |
| (BT_FN_SIZE_CONST_PTR_INT, BT_FN_INT_INT_CONST_STRING_VALIST_ARG, |
| BT_FN_PTR_PTR_CONST_PTR_SIZE_SIZE, BT_FN_PTR_PTR_INT_SIZE_SIZE, |
| BT_FN_STRING_STRING_CONST_STRING_SIZE_SIZE, |
| BT_FN_INT_FILEPTR_INT_CONST_STRING_VALIST_ARG, |
| BT_FN_INT_STRING_INT_SIZE_CONST_STRING_VALIST_ARG, |
| BT_FN_INT_STRING_SIZE_INT_SIZE_CONST_STRING_VALIST_ARG, |
| BT_FN_INT_INT_CONST_STRING_VAR, BT_FN_INT_FILEPTR_INT_CONST_STRING_VAR, |
| BT_FN_INT_STRING_INT_SIZE_CONST_STRING_VAR, |
| BT_FN_INT_STRING_SIZE_INT_SIZE_CONST_STRING_VAR): New types. |
| * c-common.c (DEF_FUNCTION_TYPE_5, DEF_FUNCTION_TYPE_6, |
| DEF_FUNCTION_TYPE_VAR_4, DEF_FUNCTION_TYPE_VAR_5): Define. |
| * Makefile.in (OBJS-common): Add tree-object-size.o. |
| (tree-object-size.o): Add dependencies. |
| * tree-pass.h (pass_object_sizes): Add. |
| * tree-optimize.c (init_tree_optimization_passes): Add |
| pass_object_sizes. |
| * tree-object-size.c: New file. |
| * tree.h (fold_builtin_memory_chk, fold_builtin_stxcpy_chk, |
| fold_builtin_strncpy_chk, fold_builtin_snprintf_chk, |
| compute_builtin_object_size, init_object_sizes, fini_object_sizes): |
| New prototypes. |
| * tree-ssa-ccp.c (get_strlen): Rename to ... |
| (get_maxval_strlen): ...this function. Handle also computing of maximum |
| string length and maximum integral value. |
| (ccp_fold_builtin): Handle BUILT_IN_*_CHK. Use get_maxval_strlen |
| instead of get_strlen. Pass CALLEE and ARGLIST variables to the |
| folding functions instead of computing them again. |
| (execute_fold_all_builtins): Retry ccp_fold_builtin if a builtin changed |
| into some other builtin. |
| * doc/extend.texi (Object Size Checking): Document. |
| |
| 2007-01-24 Eric Christopher <echristo@apple.com> |
| |
| Radar 4156101 |
| Backport from mainline: |
| 2006-01-10 Stuart Hastings <stuart@apple.com> |
| |
| * config/i386/i386.md (set_got): Update. |
| (set_got_labelled): New. |
| (UNSPEC_LD_MPIC): New. |
| (builtin_setjmp_receiver): Mach-O support. |
| * config/i386/darwin.h (TARGET_ASM_FILE_END) Define. |
| (GOT_SYMBOL_NAME): Define. |
| (FORCE_PREFERRED_STACK_BOUNDARY_IN_MAIN): New. |
| (TARGET_DEEP_BRANCH_PREDICTION): Remove. |
| * config/i386/i386.c (override_options): Revise for Darwin. |
| (USE_HIDDEN_LINKONCE): Enable for Mach-O. |
| (ix86_file_end): Mach-O support. |
| (darwin_x86_file_end): New. |
| (output_set_got): Add label parameter, revise for Mach-O. |
| (x86_output_mi_thunk): Likewise. |
| * config/i386/i386-protos.h (output_set_got): Likewise. |
| * config/darwin.c (machopic_legitimize_pic_address): Update regs_ever_live[]. |
| |
| 2007-01-24 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4949034 |
| * c.opt: Update -fobjc-call-cxx-cdtors settings. |
| * c-opts.c: Remove flag_objc_call_cxx_cdtors setting. |
| * c-common.c: Removed flag_objc_call_cxx_cdtors decl. |
| |
| 2007-01-22 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 2848255 |
| * c-parse.in: Add grammar for @catch(...) |
| * c.opt: Add -fobjc-zerocost-exceptions option. |
| * c-opts.c (c_common_post_options): Set the flags for |
| -fobjc-zerocost-exceptions. |
| * c-common.h: Add some declarations. |
| * stub-objc.c (objc2_valid_objc_catch_type, objc2_build_throw_call): |
| New stubs. |
| * config/darwin.h (OBJC_FLAG_OBJC_ABI): Check for proper |
| use of -fobjc-zerocost-exceptions option. |
| |
| 2007-01-15 Eric Christopher <echristo@apple.com> |
| |
| Radar 4924023 |
| Backport from mainline: |
| 2007-01-15 Eric Christopher <echristo@apple.com> |
| |
| * config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Add umbrella. |
| (LINK_COMMAND_SPEC): Add -u. |
| (LINK_SPEC): Fix umbrella for above. |
| |
| 2007-01-15 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4905666 |
| Backport from mainline: |
| 2005-11-07 Ian Lance Taylor <ian@airs.com> |
| * config/i386/i386.c (legitimize_pic_address): If constant operand |
| to PLUS is too large, put it in a register. |
| |
| 2007-01-05 Josh Conner <jconner@apple.com> |
| |
| Radar 4908494 |
| Backport from mainline: |
| 2007-01-03 Josh Conner <jconner@apple.com> |
| PR middle-end/29683 |
| * calls.c (compute_argument_addresses): Set stack and stack_slot |
| for partial args, too. |
| (store_one_arg): Use locate.size.constant for the size when |
| generating a save_area. |
| |
| 2006-12-23 Mike Stump <mrs@apple.com> |
| |
| Radar 4527353 |
| * libgcc2.c (__eprintf): Ensure backwards compatibility to 10.3.9. |
| |
| 2006-12-22 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4639472 |
| * gcc/config/i386/i386.c (ix86_expand_convert_uns_SI2SF_sse): New. |
| (x86_emit_floatuns): Use it. |
| * gcc/config/i386/i386-protos.h (ix86_expand_convert_uns_SI2SF_sse): |
| Declare. |
| |
| 2006-12-18 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4840357 |
| * gcc/opts.h, gcc/opts.c (no_unit_at_a_time_default): New. |
| * gcc/java/lang.c (no_unit_at_a_time_default): Set it. |
| (flag_unit_at_a_time): Enable at -O1 and above. |
| |
| 2006-12-13 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4697325 |
| * gcc.c (process_command): Move handling of |
| MACOSX_DEPLOYMENT_TARGET environment variable from here. |
| * config/darwin-driver.c: Remove. |
| |
| 2006-12-13 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4874204 |
| Backport from mainline: |
| 2006-01-19 Paolo Bonzini <bonzini@gnu.org> |
| * combine.c (make_extraction): Compute wanted_inner_mode |
| based on the position and length of the extraction. |
| |
| 2006-12-08 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4531086 |
| * config/darwin.h (OBJC_WARN_OBJC2_FEATURES): New macro. |
| |
| 2006-12-08 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4861528 |
| * config/i386/i386.c (ix86_function_regparm): The number of |
| register parameters should be 2 instead of 3 when a function |
| realigns its stack pointer through %ecx. |
| |
| 2006-12-08 Dale Johannesen <dalej@apple.com> |
| |
| radar 4228828 |
| * gimplify.c (gimplify_modify_expr): Evaluate RHS before |
| pointee when LHS is a store through a pointer. |
| |
| 2006-12-07 Eric Christopher <echristo@apple.com> |
| |
| Radar 4869218 |
| * doc/extend.texi: Replace mni with ssse3. |
| * doc/invoke.texi: Ditto. |
| |
| 2006-12-05 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4862848 |
| * common.opt (flag_objc_abi): Defaulted to -1 |
| * config/darwin.h (OBJC_FLAG_OBJC_ABI): New macro. |
| |
| 2006-12-01 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4700932 |
| * gcc/config/i386/i386.c (optimization_options): Insist that |
| RC_FORCE_SSE3 == "YES". |
| |
| 2006-11-30 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4850442 |
| Backport from mainline: |
| 2005-09-18 Jan Hubicka <jh@suse.cz> |
| * calls.c (flags_from_decl_or_type): Do not set ECF_LIBCALL_BLOCK. |
| |
| 2006-11-16 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4841447 |
| * c.opt (-fobjc-new-property): Modified its language description |
| |
| 2006-11-15 Eric Christopher <echristo@apple.com> |
| |
| Radar 4839411 |
| * config/i386/tmmintrin.h: Depend on SSSE3. |
| |
| 2006-11-15 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4827197 |
| * doc/extend.texi (align=power): Document actual |
| behavior and workaround for existing code. |
| |
| 2006-11-15 Eric Christopher <echristo@apple.com> |
| |
| * config/darwin.h (LINK_COMMAND_SPEC): Remove {u*} from |
| options passed through. |
| |
| 2006-11-14 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4812082 |
| * doc/invoke.texi (-fast): Describe Intel options, fix typos. |
| * config/i386/i386.c (override_options): Change -fast options. |
| |
| 2006-11-09 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4810609 |
| * c.opt (-fobjc-gc-only): New option |
| * doc/invoke.texi (Objective-C GC Options): Add -fobjc-gc-only. |
| |
| 2006-11-09 Eric Christopher <echristo@apple.com> |
| |
| Radar 4574849 |
| * t-slibgcc-darwin: Pass -install_name directly. |
| * config/darwin.h (LINK_COMMAND_SPEC): Use ld, not libtool. |
| Fix up argument passthrough accordingly. |
| (STARTFILE_SPEC): Ditto. |
| |
| 2006-11-07 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4611086 |
| * gcc/config/rs6000/rs6000.c (rs6000_stack_info): Include |
| vrsave_size in stack size computation. |
| |
| 2006-11-06 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4781080 (part 2) |
| * targhooks.c (default_objc_fpreturn_msgcall): Takes 2nd argument. |
| * targhooks.h (default_objc_fpreturn_msgcall): Changed Decl. |
| * target.h (objc_fpreturn_msgcall): Changed Decl. |
| * config/i386/i386.h (OBJC_FPRETURN_MSGCALL): Changed Decl. |
| * config/i386/i386-protos.h (ix86_objc_fpreturn_msgcall): Changed Decl. |
| * config/i386/i386.c (ix86_objc_fpreturn_msgcall): Changed definition. |
| |
| 2006-11-06 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4781080 |
| * targhooks.c (default_objc_fpreturn_msgcall): New |
| * targhooks.h (default_objc_fpreturn_msgcall): Declare |
| * target.h (objc_fpreturn_msgcall): New field declaration. |
| * target-def.h (TARGET_OBJC_FPRETURN_MSGCALL): New macro |
| * config/i386/i386.h (OBJC_FPRETURN_MSGCALL): New macro |
| * config/i386/i386-protos.h (ix86_objc_fpreturn_msgcall): |
| New declaration. |
| * config/i386/i386.c (ix86_objc_fpreturn_msgcall): New definition |
| |
| 2006-11-06 Stuart Hastings <stuart@apple.com> |
| |
| * gcc/global.c (expand_preferences): Move another APPLE LOCAL. |
| |
| 2006-11-06 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4805365 |
| * gcc/config/rs6000/rs6000.c (lwa_operand): Check the alignment of |
| a memory operand is 32 bits aligned or not. |
| |
| 2006-11-03 Stuart Hastings <stuart@apple.com> |
| |
| * gcc/global.c (expand_preferences): Move APPLE LOCAL. |
| |
| 2006-11-03 Josh Conner <jconner@apple.com> |
| |
| Radar 4815483 |
| Backport from mainline: |
| 2005-08-02 Diego Novillo <dnovillo@redhat.com> |
| PR 23192 |
| * tree-ssa-alias.c (add_pointed_to_var): If VALUE is of the |
| form &(*PTR), take points-to information from PTR. |
| Give up if VALUE by marking PTR as pointing anywhere if VALUE |
| is not recognized. |
| |
| 2006-11-02 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4253848 |
| * gcc/convert.c (convert_to_vector): Generate |
| VIEW_CONVERT_EXPR. |
| * gcc/c-typechk.c (digest_init): Treat VIEW_CONVERT_EXPR like |
| NOP_EXPR. |
| * gcc/c-common.c (vector_types_convertible_p, lvalue_or_else): |
| Treat VIEW_CONVERT_EXPR like NOP_EXPR. |
| * gcc/global.c (expand_preferences): Pseudo regs that die in |
| the current instruction are tied to the destination psuedo on |
| two-address opcodes (e.g. x86). |
| (pseudo_preference_transitivity): New. |
| |
| Radar 4517311 |
| * gcc/config/i386/i386.c (ix86_expand_convert_uns_DF2SI_sse, |
| ix86_expand_convert_uns_SF2SI_sse): Use gen_sse2_stored() to |
| avoid useless MOVs. |
| |
| 2006-11-01 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4805321 (new property). |
| * c-common.h (RID_AT_SYNTHESIZE, RID_AT_DYNAMIC, |
| RID_READWRITE, RID_ASSIGN, RID_RETAIN, RID_COPY): New enums. |
| (OBJC_IS_NEW_PATTR_KEYWORD): New macro. |
| (OBJC_IS_NEW_AT_KEYWORD): New macro. |
| * stub-objc.c: (objc_declare_property_impl): New stub. |
| * c.opt (fobjc-new-property): New command-line option. |
| * c-parse.in: New grammar added for recognition of new property |
| syntax. |
| |
| 2006-10-31 Caroline Tice <ctice@apple.com> |
| |
| * dwarf2out.c (size_of_pubnames): Only add DWARF_OFFSET_SIZE for entries |
| in table that will actually be written out. |
| * testsuite/gcc.apple/pubtypes-2.c: Fix size in "Length of Public Type |
| Names Info" line. |
| * testsuite/gcc.apple/pubtypes-3.c: Likewise. |
| * testsuite/gcc.apple/pubtypes-4.c: Likewise. |
| |
| 2006-10-27 Eric Christopher <echristo@apple.com> |
| |
| Radar 4806229 |
| * config/darwin-driver.c (main): Don't set ima_is_used if we're |
| only compiling. |
| |
| 2006-10-26 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4603883 |
| Backport from mainline: |
| 2005-08-17 James E Wilson <wilson@specifix.com> |
| * c-decl.c (grokdeclarator): Use TYPE_SIZE_UNIT not TYPE_SIZE in |
| array size check. |
| |
| 2006-10-25 Eric Christopher <echristo@apple.com> |
| |
| Temporarily revert: |
| 2006-09-25 Eric Christopher <echristo@apple.com> |
| |
| Radar 4574849 |
| * config/t-slibgcc-darwin (SHLIB_LINK): Use |
| -dylib_install_name. |
| * config/darwin.h (LINK_COMMAND_SPEC): Remove use |
| of libtool. |
| (LINK_SPEC): Adjust options for above. |
| (STARTFILE_SPEC): Ditto. |
| |
| 2006-10-19 Caroline Tice <ctice@apple.com> |
| |
| * dwarf2out.c (pubname_entry): Add DEF_VEC_GC_O statement for this |
| type. |
| (pubname_table): Redefine as a vector. |
| (pubtype_table): New static global variable, defined as a vector. |
| (pubname_table_allocated): Remove static global variable. |
| (pubname_table_in_use): Remove static global variable. |
| (PUBNAME_TABLE_INCREMENT): Remove constant. |
| (size_of_pubnames): Add parameter to deal with either pubnames or |
| pubtypes, and change code to deal with table being a vector. |
| (add_pubname): Change to deal with table being a vector. |
| (add_pubtype): New function. |
| (output_pubnames): Add parameter to deal with either pubnames or |
| pubtypes, and change code to deal with table being a vector. |
| (gen_array_type_die): Add call to add_pubtype. |
| (gen_enumeration_type_die): Add call to add_pubtype. |
| (gen_struct_or_union_type_die): Add call to add_pubtype. |
| (gen_subroutine_type_die): Add call to add_pubtype. |
| (gen_typedef_die): Add call to add_pubtype. |
| (dwarf2out_init): Add code to initialize pubname_table and |
| pubtype_table vectors. |
| (prune_unused_types): Change to deal with pubnames being a vector. |
| (dwarf2out_finish): Change to deal with pubnames being a vector; add |
| pubnames table to call to output_pubnames; Add code to output pubtypes |
| table if DEBUG_PUBTYPES_SECTION is defined. |
| * config/darwin.c (darwin_file_start): Add DEBUG_PUBTYPES_SECTION to |
| debugnames. |
| * config/darwin.h (DEBUG_PUBTYPES_SECTION): Define new global variable. |
| * testsuite/gcc.dg/pubtypes-1.c: New file/testcase. |
| * testsuite/gcc.dg/pubtypes-2.c: New file/testcase. |
| * testsuite/gcc.dg/pubtypes-3.c: New file/testcase. |
| * testsuite/gcc.dg/pubtypes-4.c: New file/testcase. |
| * testsuite/g++.dg/pubtypes.C: New file/testcase. |
| |
| 2006-10-18 Mike Stump <mrs@apple.com> |
| |
| Radar 4094959 |
| * c-opts.c (c_common_handle_option): Handle language specific |
| target options. |
| * opts.c (handle_option): Verify language for target options, if |
| any are given. |
| * opth-gen.awk: Add CL_LANG_ALL. |
| * config/darwin.opt (iframework): Add. |
| * config/darwin.h (TARGET_HANDLE_C_OPTION): Add. |
| * config/darwin-c.c (add_system_framework_path): Export. |
| (darwin_handle_c_option): Add. |
| * config/darwin-protos.h (darwin_handle_c_option): Add. |
| * doc/invoke.texi (Darwin Options): Add -iframework. |
| |
| 2006-10-17 Mike Stump <mrs@apple.com> |
| |
| Radar 4197305 |
| * c-lex.c (c_lex_with_flags): Arrange for tokens to not be |
| over-written while peeking forward for Objective-C languages. |
| |
| 2006-10-13 Stuart Hastings <stuart@apple.com> |
| |
| * Radar 4740805, 4741439 |
| * gcc/loop.c (LOOP_REG_LIFETIME, LOOP_REG_GLOBAL_P): Remove commentary. |
| |
| 2006-10-11 Mike Stump <mrs@apple.com> |
| |
| Radar 4197305 |
| * c-lex.c (c_lex_with_flags): Prefer _cpp_backup_tokens over iasm_saved_token. |
| Avoid fetching extra characters. |
| |
| 2006-10-10 Mike Stump <mrs@apple.com> |
| |
| Radar 4739936 |
| * c-parse.in (_yylex): Restore error for invalid integer suffixes. |
| |
| 2006-10-06 Stuart Hastings <stuart@apple.com> |
| |
| * Radar 4740805, 4741439 |
| * gcc/loop.c (LOOP_REG_LIFETIME, LOOP_REG_GLOBAL_P): Revert APPLE LOCAL. |
| |
| 2006-10-09 Caroline Tice <ctice@apple.com. |
| |
| Radar 4771255 |
| * dwarf2out.c (struct inlined_calls, inlined_calls_list, |
| file_table_last_lookup): Move to a point in the file outside |
| the #ifdef DWARF2_DEBUGGING_INFO clause. |
| |
| 2006-10-06 Eric Christopher <echristo@apple.com> |
| |
| Radar 4755586 |
| * config/i386/i386.h: Rename mni to ssse3. |
| * config/i386/i386.md: Ditto. |
| * config/i386/tmmintrin.h: Ditto. |
| * config/i386/i386.c: Ditto. |
| * config/i386/sse.md: Ditto. |
| |
| 2006-10-05 Dale Johannesen <dalej@apple.com> |
| |
| * opts.c (restore_func_cl_pf_opts_mapping): Reset |
| align_loops_log, align_jumps_log, align_labels_log, |
| align_labels_max_skip in code. |
| * flags.h (align_loops_max_skip, align_jumps_max_skip): |
| Remove declarations. |
| * common.opt (align_loops_max_skip, align_jumps_max_skip): |
| Make PerFunc and VarUint. |
| * config/darwin-c.c (darwin_set_flags_from_pragma): New. |
| (darwin_pragma_opt_level): Call it. |
| (darwin_opt_size): Ditto. |
| * config/rs6000/rs6000.c (reset_optimization_options): |
| Reset align_jumps, align_loops, align_jumps_max_skip, |
| align_loops_max_skip. |
| * config/i386/i386.c (reset_optimization_options): |
| Reset ix86_cost, align_loops, align_jumps, |
| align_jumps_max_skip, align_loops_max_skip. |
| (override_options): Move processor_table_target to |
| file scope. |
| |
| 2006-10-03 Dale Johannesen <dalej@apple.com> |
| |
| * doc/extend.texi (x86 Vector Extensions): Change |
| di to v1di throughout. Add builtins psllwi, pslldi, |
| psrlwi, psrldi, psrawi, psradi. Remove builtin pmulhuq. |
| * config/i386/i386.h (VALID_MMX_REG_MODE): Add V1DImode. |
| * config/i386/i386-modes.def: Add V1DImode, V1SImode. |
| * config/i386/mmx.md (MMXMODEI): Add V1DImode. |
| (MMXMODE): Add V1DImode. |
| (MMXMODE124): New (same as former MMXMODE). |
| (MMXMODE248): New. |
| (mmxvecsize): Change DI to V1DI. |
| (mmx_adddi3, mmx_subdi3, mmx_ashldi3, mmx_ashldi2si, mmx_lshrdi3, |
| mmx_lshrdi2si): Remove. |
| (mmx_psadbw, sse_movntdi, mmx_ashr<mode>3): Change DI to V1DI. |
| (sse2_umulsidi3): Change DI to V1DI, SI to V1SI. |
| (mmx_lshr<mode>3, mmx_ashl<mode>3): Change DI to V1DI. |
| Change MMXMODE24 to MMXMODE248. |
| (mmx_lshr<mode>2si, mmx_ashl<mode>2si, mmx_ashr<mode>2si): New. |
| (mmx_eq<mode>3, mmx_gt<mode>3): Change MMXMODEI to MMXMODE124. |
| (*mov<mode>_internal_rex64): Remove * constraint in ym->y case. |
| * config/i386/xmmintrin.h (_mm_stream_pi): Remove casts in |
| movntq call. |
| * config/i386/mmintrin.h (_mm_add_si64, _mm_sub_si64, _mm_sll_pi16, |
| _mm_sll_pi32, _mm_sll_si64, _mm_slli_si64, _mm_sra_pi16, _mm_sra_pi32, |
| _mm_srl_pi16, _mm_srl_pi32, _mm_srl_si64, _mm_srli_si64): |
| Remove casts in calls. |
| (_mm_slli_pi16, _mm_slli_pi32, _mm_srai_pi16, _mm_srai_pi32, |
| _mm_srli_pi16, _mm_srli_pi32): Call -i form of builtin. |
| * config/i386/sse.md (mni_psign<mode>3, mni_pabs<mode>2): |
| Change MMXMODEI to MMXMODE124. |
| (mni_palignrdi): Change to mni_palignrv1di. Change DI to V1DI. |
| * config/i386/i386.c (type_natural_mode): Treat V1DI as DI in |
| 32-bit calling sequence. |
| (builtin_description bdesc_2arg): Change PADDQ to use mmx_addv1di3. |
| Change PSUBQ to use mmx_subv1di3. Change PSLLWI to use ashlv4hi2si. |
| Change PSLLDI to use ashlv2si2si. Change PSLLQ to use ashlv1di3. |
| Change PSLLQI to use mmx_ashlv1di2si. Change PSRLWI to use |
| mmx_lshrv4hi2si. Change PSRLDI to use lshrv2si2si. Change |
| PSRLQ to use lshrv1di3. Change PSRLQI to use mmx_lshrv1di2si. |
| Change PSRAWI to use mmx_ashrv4hi3. Change PSRADI to use |
| mmx_ashrv2si2si. |
| (ix86_init_mmx_sse_builtins): Add V1DI_type_node. |
| Rename pdi_type_node to pv1di_type_node, adjust arguments. |
| Rename v4hi_ftype_v4hi_di to v4hi_ftype_v4hi_v1di, adjust. |
| Rename v2si_ftype_v2si_di to v2si_ftype_v2si_v1di, adjust. |
| v2si_ftype_v2si_int: New. |
| Rename void_ftype_pdi_di to void_ftype_pv1di_v1di, adjust. |
| Rename di_ftype_di_di to v1di_ftype_v1di_v1di, adjust. |
| Rename di_ftype_di_int to v1di_ftype_v1di_int, adjust. |
| Rename di_ftype_di_di_int to v1di_ftype_v1di_v1di_int, adjust. |
| Rename di_ftype_v8qi_v8qi to v1di_ftype_v8qi_v8qi, adjust. |
| Use v4hi_ftype_v4hi_v1di for builtin psllw. Add builtin psllwi. |
| Use v2si_ftype_v2si_v1di for builtin pslld. Add builtin pslldi. |
| Use v1di_ftype_v1di_v1di for builtin psllq. |
| Use v1d1_ftype_v1di_int for builtin psllqi. |
| Use v4hi_ftype_v4hi_v1di for psrlw builtin. Add psrlwi builtin. |
| Use v2si_ftype_v2si_v1di for psrld builtin. Add psrldi builtin. |
| Use v1di_ftype_v1di_v1di for psrlq builtin. |
| Use v1di_ftype_v1di_int for psrlqi builtin. |
| Use v4hi_ftype_v4hi_v1di for psraw builtin. Add psrawi builtin. |
| Use v2si_ftype_v2si_v1di for psrad builtin. Add psradi builtin. |
| Use void_ftype_pv1di_v1di for movntq builtin. |
| Use v1di_ftype_v8qi_v8qi for psadbw builtin. |
| Use v1di_ftype_v2si_v2si for pmuludq builtin. |
| Use v1di_ftype_v1di_v1di_int for palignr builtin. |
| Use CODE_FOR_sse_movntv1di for movntq builtin. |
| Use CODE_FOR_mni_palignrv1di for palignr builtin. |
| |
| 2006-09-29 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4736174 |
| Backport from mainline: |
| 2005-08-27 Richard Guenther <rguenther@suse.de> |
| PR target/23575 |
| * config/i386/sse.md (sse2_movsd): Add missing closing |
| braces. |
| |
| 2006-09-27 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4412214, 4172200 |
| * config/sse.md (sse2_stored): Add 'r' constraint to the |
| destination operand. |
| |
| 2006-09-26 Eric Christopher <echristo@apple.com> |
| |
| Radar 4106877 |
| * config/darwin-driver.c (main): Remove dependence on -o |
| option. Fix comment spelling. |
| |
| 2006-09-26 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4733555 |
| *config/darwin.c (darwin_handle_weak_import_attribute): Ignore 'weak_import' |
| on objc methods. |
| |
| 2006-09-26 Dale Johannesen <dalej@apple.com> |
| |
| * config/i386/mmx.md (mmx_lshrdi2si): New. |
| (mmx_ashldi2si): New. |
| (*vec_extractv2si_0): Allow mmx->int reg moves. |
| * config/i386/i386.c (bdesc_2arg): Use mmx_ashldi2si |
| for IX86_BUILTIN_PSLLQI. Use mmx_lshrdi2si for |
| IX86_BUILITN_PSRLQI. |
| (ix86_init_mmx_sse_builtins): Add di_ftype_di_int. |
| Add __builtin_ia32_psllqi, __builtin_ia32_psrlqi. |
| * config/i386/mmintrin.h (_mm_slli_si64): Use |
| __builtin_ia32_psllqi. |
| (_mm_srli_si64): Use __builtin_ia32_psrlqi. |
| * doc/extend.texi: Document new builtins. |
| |
| 2006-09-25 Eric Christopher <echristo@apple.com> |
| |
| Radar 4740850 |
| * config.gcc: Add apple as i386 cpu variant. |
| * config/i386/i386.h (TARGET_CPU_DEFAULT_apple): New. |
| (TARGET_CPU_DEFAULT_NAMES): Add apple. |
| (processor_type): Add PROCESSOR_APPLE. |
| * config/i386/i386.c (apple_cost): New. |
| (override_options): Use. Add apple cpu. Move default |
| SSE options to 64-bit default init section. |
| |
| 2006-09-25 Eric Christopher <echristo@apple.com> |
| |
| Radar 4574849 |
| * config/t-slibgcc-darwin (SHLIB_LINK): Use |
| -dylib_install_name. |
| * config/darwin.h (LINK_COMMAND_SPEC): Remove use |
| of libtool. |
| (LINK_SPEC): Adjust options for above. |
| (STARTFILE_SPEC): Ditto. |
| |
| 2006-09-25 Bill Wendling <wendling@apple.com> |
| |
| PR c/23576 |
| * c-decl.c (grokdeclarator): Don't write to fields |
| of error_mark_node. |
| |
| 2006-09-22 Mike Stump <mrs@apple.com> |
| |
| Radar 4736998 |
| * config/i386/i386.c (iasm_x86_canonicalize_operands): Avoid |
| outputting arguments for movs, as the assembler can mis-assemble |
| it. |
| |
| 2006-09-19 Josh Conner <jconner@apple.com> |
| |
| Radar 4727273 |
| * flow.c (initialize_uninitialized_subregs): Only do something |
| if TARGET_MUST_INIT_SUBREG is set. |
| |
| 2006-09-18 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4667060 |
| * c-gimplify.c (gimplify_c_loop): Add support for |
| setting of foreach loop controlling variable to 'nil' on |
| normal loop exit. |
| |
| 2006-09-15 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4727659 |
| * c-common.c (handle_noreturn_attribute): Handle method_decl |
| nodes as well. |
| |
| 2006-09-14 Bill Wendling <wendling@apple.com> |
| |
| Radar 4731660 |
| * config/darwin.h (REDO_SECTION_INFO_P): Removed |
| |
| 2006-09-11 Josh Conner <jconner@apple.com> |
| |
| Radar 4658012 |
| * calls.c (expand_call): Don't set keep bit on temps for holding |
| structure return values. |
| * integrate.c (copy_decl_for_inlining): Add is_result |
| parameter, add handling for DECL_BY_REFERENCE. |
| * integrate.h (copy_decl_for_inlining): Add is_result parameter. |
| * tree-inline.c (remap_decl): Adjust call for above. |
| (setup_one_parameter): Likewise. |
| (mark_local_for_remap_r): Likewise. |
| (declare_return_variable): Likewise. Add bind_expr parameter. |
| Add handling for DECL_BY_REFERENCE. |
| (expand_call_inline): Adjust call to declare_return_variable |
| for additional parameter. |
| |
| 2006-09-08 Stuart Hastings <stuart@hastings.org> |
| |
| Radar 4664847 |
| * gcc/config/i386/i386.md (fixuns_trunc_<mode>si2): Check for |
| TARGET_SSE2. |
| * gcc/config/i386/i386.c (ix86_expand_convert_uns_DF2SI_sse, |
| ix86_expand_convert_uns_SF2SI_sse, ix86_expand_convert_uns_DI2DF_sse): |
| Add to commentary. |
| |
| 2006-09-07 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4577796 |
| * config/i386/i386.c : Redefine global constant x86_use_incdec. |
| |
| 2006-09-07 Stuart Hastings <stuart@hastings.org> |
| |
| * gcc/config/i386/i386.c (processor_alias_table): Delete APPLE |
| LOCAL comment. |
| |
| 2006-09-06 Caroline Tice <ctice@apple.com> |
| |
| Radar 4707854 |
| * dwarf2out.c (dwar2out_abstract_function): Remove call_site test |
| from condition determining if an abstract origin die needs to be |
| generated. |
| |
| 2006-09-06 Stuart Hastings <stuart@hastings.org> |
| |
| Radar 4515157 |
| * gcc/config/i386/i386.c (processor_alias_table): Enable SSE3 |
| for nocona. (override_options): Turn SSE3 off for 32-bit |
| Mach-O unless explicitly enabled on command line. |
| |
| 2006-09-05 Mike Stump <mrs@apple.com> |
| |
| Radar 4699545 |
| * config/i386/i386.c (iasm_indirect): Avoid doing bad things with |
| ARRAY_TYPEs. |
| (iasm_canonicalize_bracket): Handle [var][edx+edx]. |
| (iasm_canonicalize_bracket_1): Allow edx+edx to have a type so |
| that we can pass it to the optimizer. |
| |
| 006-09-01 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4712269 |
| * c-common.h (objc_build_incr_decr_setter_call): New decl. |
| * stub-objc.c (objc_build_incr_decr_setter_call): New stub. |
| * c-typeck.c (build_unary_op): Call objc_build_incr_decr_setter_call |
| for potential ince/decr pre/post expressions involving properties. |
| |
| 2006-08-31 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4697411 |
| * c-common.h (objc_volatilize_component_ref): New decl. |
| * c-typeck.c (build_component_ref): Call objc_volatilize_component_ref. |
| * stub-objc.c (objc_volatilize_component_ref): New stub. |
| |
| 2006-08-29 Mike Stump <mrs@apple.com> |
| |
| Radar 4699524 |
| * config/i386/i386.c (iasm_x86_canonicalize_operands): Add |
| pushfd/popfd. |
| |
| 2006-08-29 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4705250 |
| * c.opt (fobjc-atdefs): Add |
| * c-parse.in: No error on use of @defs with -fobjc-atdefs |
| |
| 2006-08-28 Bill Wendling <wendling@apple.com> |
| |
| Radar 4679943 |
| * doc/extend.texi (Structure-Packing Pragmas): Changed #pragma pack |
| documentation to reflect Apple's implementation. |
| * config/darwin-c.c (push_field_alignment, darwin_pragma_pack): |
| If #pragma pack([N]), don't clear out the natural alignment flag |
| on PPC64. |
| |
| 2006-08-25 Fariborz Jahanian <fjahanian@apple.com> |
| |
| PR c/28418 |
| * c-gimplify.c (gimplify_compound_literal_expr): Don't add |
| variable again if DECL_SEEN_IN_BIND_EXPR_P. |
| |
| 2006-08-24 Mike Stump <mrs@apple.com> |
| |
| Radar 4682427 |
| * c-common.c (iasm_stmt): Fix jmp/call. |
| * config/i386/i386.c (iasm_x86_canonicalize_operands): Likewise. |
| |
| 2006-08-24 Bill Wendling <wendling@apple.com> |
| |
| Radar 4699019 |
| * doc/invoke.texi (C Language Options, Linker Options, |
| Warning Options): Removed -Wpragma-once, -no-c++filt, |
| and -Wpragma-once options' documentation. |
| * gcc/common.opt (fppc): Removed fppc flag. |
| * gcc/toplev.c (flag_fppc): Removed flag_fppc variable. |
| |
| 2006-08-22 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4287182 |
| * i386.h : Redefine SLOW_BYTE_ACCESS. |
| |
| 2006-08-18 Fariborz Jahanian |
| |
| Reverted patch for radar 4674757 |
| * config/i386/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): |
| Remove darwin_constant_cfstrings setting. |
| |
| 2006-08-18 Fariborz Jahanian |
| |
| Radar 4674757 |
| * config/i386/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): |
| Set darwin_constant_cfstrings. |
| |
| 2006-08-17 Fariborz Jahanian |
| |
| Radar 4590221 |
| * c.opt (flag_objc_direct_dispatch): default to -1. |
| * config/rs6000/darwin.h (OFFS_MSGSEND_FAST, OFFS_ASSIGNIVAR_FAST, |
| HAVE_OFFS_MSGSEND_FAST): objective-c macro definitions. |
| |
| 2006-08-15 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4106131 |
| * gcc/config/i386/darwin.h (TARGET_DEEP_BRANCH_PREDICTION): |
| Remove NOCONA. |
| * gcc/testsuite/gcc.apple/execute/picbase-1.c (xsqrt): Replace |
| references to __builtin functions with their portable |
| equivalents. |
| |
| 2006-08-15 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4424891 |
| * gcc/config/i386/i386.c: APPLE LOCAL fixups. |
| |
| 2006-08-14 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4424891 |
| * gcc/config/i386/i386.md (fixuns_trunc<mode>si2) Call |
| ix86_expand_convert_uns_<MODE>2SI_sse. |
| (floatdidf2): Call ix86_expand_convert_sign_DI2DF_sse. |
| (floatunssidf2): New. |
| * gcc/config/i386/i386-protos.h (ix86_expand_convert_DF2SI_sse, |
| ix86_expand_convert_SF2SI_sse, ix86_expand_convert_DI2DF_sse): |
| Update names to ix86_expand_convert_uns_DF2SI_sse, |
| ix86_expand_convert_uns_SF2SI_sse, ix86_expand_convert_uns_DI2DF_sse. |
| (ix86_expand_convert_uns_SI2DF_sse, |
| ix86_expand_convert_sign_DI2DF_sse): New. |
| * gcc/config/i386/i386.c (x86_expand_convert_DF2SI_sse, |
| ix86_expand_convert_SF2SI_sse, ix86_expand_convert_DI2DF_sse): |
| Update names to ix86_expand_convert_uns_DF2SI_sse, |
| ix86_expand_convert_uns_SF2SI_sse, ix86_expand_convert_uns_DI2DF_sse. |
| (ix86_expand_convert_uns_SI2DF_sse, |
| ix86_expand_convert_sign_DI2DF_sse): New. |
| (x86_emit_floatuns): Use new functions, tolerate SFmode target. |
| |
| 2006-08-14 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4645709 |
| * config/i386/i386.md (movstrictqi_and): Update the whole register |
| for a byte operand. |
| |
| 2006-08-11 Caroline Tice <ctice@apple.com>' |
| |
| Radar 4591706 |
| * dwarf2out.c (dwarf2out_abstract_function): Make sure the abstract |
| die, with DW_AT_inline, exists before adding the inlined call site |
| information. |
| (gen_inlined_subroutine_die): Change code so it no longer relies on |
| matching function names to find correct call site information. Also, |
| generate an internal error if it can't find the call site information |
| for an inlined subroutine. |
| |
| 2006-08-11 Josh Conner <jconner@apple.com> |
| |
| Radar 4674871 |
| * gcc.c (process_command): Increment n_infiles for the |
| weak-l command-line option. |
| |
| 2006-08-04 Jon Ziegler <jonz@apple.com> |
| |
| Radar 4674934 |
| Revert patch for 4424891 due to it breaking the build. |
| |
| 2006-08-04 Mike Stump <mrs@apple.com> |
| |
| Radar 4669052 |
| * Makefile.in (LIBGCC_DEPS): Don't depend on LANGUAGES. |
| (c-parse.y): Ensure that we don't rebuild. |
| |
| 2006-08-04 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4106131 |
| * config/i386/darwin.h (TARGET_DEEP_BRANCH_PREDICTION): Override default. |
| |
| 2006-07-31 Mike Stump <mrs@apple.com> |
| |
| Radar 4660333 |
| * toplev.c (general_init): Don't try and catch SIGKILL. |
| |
| 2006-07-28 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4424891 |
| * gcc/config/i386/i386.md (fixuns_trunc<mode>si2): Update. |
| (floatdidf2): Call ix86_expand_convert_sign_DI2DF_sse. |
| (floatunssidf2): New. |
| * config/i386/i386-protos.h (ix86_expand_convert_uns_DF2SI_sse, |
| ix86_expand_convert_uns_SF2SI_sse, ix86_expand_convert_uns_DI2DF_sse): New names. |
| (ix86_expand_convert_uns_SI2DF_sse, ix86_expand_convert_sign_DI2DF_sse): New. |
| * config/i386/i386.c (ix86_expand_convert_uns_DF2SI_sse, |
| ix86_expand_convert_uns_SF2SI_sse, ix86_expand_convert_uns_DI2DF_sse): New names. |
| (ix86_expand_convert_uns_SI2DF_sse, ix86_expand_convert_sign_DI2DF_sse): New. |
| |
| 2006-07-28 Mike Stump <mrs@apple.com> |
| |
| Radar 4653181 |
| * c-common.c (iasm_stmt): Don't clabber edx when edx is used |
| as an operand. Ensure that it is an input output operand, if |
| used. |
| |
| 2006-07-25 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4643646 |
| * gcc/config/i386/i386.c (ix86_expand_vector_init_duplicate): |
| Omit TARGET_SSE check. |
| |
| 2006-07-26 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4629695 |
| * builtins.c (fold_builtin_1): Fix APPLE LOCAL markers. |
| |
| 2006-07-25 Hui-May Chang <hm.chang@apple.com> |
| Radar 4629695 |
| * builtins.c (fold_builtin_1): Check if the callee declaration is |
| available. |
| |
| 2006-07-18 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4592503 |
| * c-decl.c (finish_struct): Check on illegal use of __weak |
| on struct fields. |
| * decl.c (start_decl): Check on illegal use of __weak on |
| variable declarations. |
| * stub-objc.c (objc_checkon_weak_attribute): New stub. |
| * c-common.h (objc_checkon_weak_attribute): New decl. |
| |
| 2006-07-18 Mike Stump <mrs@apple.com> |
| |
| Radar 4636974 |
| * c-parse.in: Remove extraneous commas on tokens. |
| |
| 2006-07-18 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4430340 |
| Backport from mainline: |
| 2006-06-09 Mike Stump <mrs@apple.com> |
| * c-typeck.c (c_begin_vm_scope): Fix file_scope processing. |
| |
| 2006-07-18 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4538899 |
| * gcc/tree-ssa-threadupdate.c |
| (rediscover_loops_after_threading): Tweak another APPLE LOCAL comment. |
| |
| 2006-07-17 Eric Christopher <echristo@apple.com> |
| |
| Radar 4633168 |
| Radar 4630878 |
| * config/t-slibgcc-darwin (stmp-lipo): Remove. |
| Rewrite libgcc_s.1.dylib dependencies. |
| |
| 2006-07-17 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4538899 |
| * gcc/tree-ssa-threadupdate.c |
| (rediscover_loops_after_threading): Tweak APPLE LOCAL comment. |
| |
| 2006-07-14 Mike Stump <mrs@apple.com> |
| |
| Radar 4630911 |
| * config/darwin-driver.c (is_x_file): Add. |
| (resolve_path_to_executable): Use is_x_file instead. |
| |
| 2006-07-14 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4621020 |
| * c-parse.in: Added 'weak' attribute keyword for @property. |
| * c-common.h: 'weak' related declarations. |
| |
| 2006-07-13 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4538899 |
| * config/rs6000/rs6000.c (SMALL_INT): Fix cast. |
| * testsuite/gcc.dg/20060713-1.c: New. |
| |
| 2006-07-13 Jeff Law <law@redhat.com> |
| Stuart Hastings <stuart@apple.com> |
| |
| Radar 4538899 |
| original FSF patch dated 2005-03-04 |
| * basic-block.h (rediscover_loops_after_threading): Declare. |
| * tree-ssa-dom.c: Include cfgloop.h. |
| (tree_ssa_dominator_optimize): Discover loops and some basic |
| properties. Remove forwarder blocks recreated by loop header |
| canonicalization. Also mark backedges in the CFG. |
| * tree-ssa-threadupdate.c: Include cfgloop.h |
| (rediscover_loops_after_threading): Define. |
| (struct local_info): New field, JUMP_THREADED. |
| (prune_undesirable_thread_requests): New function. |
| (redirect_edges): Clear EDGE_ABNORMAL. If edges were threaded |
| then record that fact for the callers of redirct_edges. |
| (thread_block): If BB has incoming backedges, then call |
| prune_undesirable_thraed_requests. Note when we are |
| going to have to rediscover loop information. Return a |
| boolean indicating if any jumps were threaded. |
| (thread_through_all_blocks): Bubble up boolean indicating |
| if any jumps were threaded. |
| * Makefile.in (tree-ssa-dom.o): Depend on cfgloop.h |
| (tree-ssa-threadupdate.o): Similarly. |
| |
| 2006-07-14 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4614623 |
| * config/i386/i386.c (ix86_expand_vector_move): Set cfun->uses_vector to 1 |
| to honor the alignment requirement of vector instructions. |
| |
| 2006-07-13 Mike Stump <mrs@apple.com> |
| |
| Radar 4515069 |
| * c-common.c (iasm_print_operand): Arrange for local variables to |
| not be promoted to static duration. |
| * gimplify.c (gimplify_init_constructor): Likewise. |
| * tree.h (DECL_IASM_DONT_PROMOTE_TO_STATIC): Add. |
| (struct tree_decl): Add iasm_dont_promote_to_static. |
| |
| 2006-07-12 Eric Christopher <echristo@apple.com> |
| |
| Radar 4624477 |
| * config/t-slibgcc-darwin: Import from mainline. Add x86_64 libgcc_s.1.dylib |
| support. |
| |
| 2006-07-11 Eric Christopher <echristo@apple.com> |
| |
| Radar 4522154 |
| * config/t-slibgcc-darwin: Add extra dependency to stmp-lipo. |
| |
| 2006-07-07 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4585769 |
| * config/darwin-protos.h: New declarations. |
| * config/darwin.c (machopic_select_section): New sections |
| for objc1 extensions. |
| * config/darwin.h: Declaration of __class_ext, __property |
| and __protocol_ext sections. |
| |
| 2006-06-29 Mike Stump <mrs@apple.com> |
| |
| Radar 4560301 |
| * c-common.c (iasm_stmt): Fix argument numbers for repeated arguments. |
| * config/asm.h: Likewise. |
| |
| 2006-06-26 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4591909 |
| * c-parse.in: New/modified grammar for new attributes in |
| properties. |
| (yylexname): Change to recognize new attribute terminals. |
| * c-common.h (RID_DYNAMIC): New enum declaration. |
| |
| 2006-06-27 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4600999 |
| * config/darwin.c (darwin_handle_objc_gc_attribute): Fix main variant |
| after attribute insertion. |
| |
| 2006-06-23 Mike Stump <mrs@apple.com> |
| |
| * config/i386/mmintrin.h: Simplifiy use of __nodebug__. |
| * config/i386/xmmintrin.h: Likewise. |
| * config/i386/emmintrin.h: Likewise. |
| * config/i386/pmmintrin.h: Likewise. |
| |
| 2006-06-22 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4597080 |
| * dwarf2out.c (dwarf2out_finish): Move output_line_info call |
| after debug_info output. |
| |
| 2006-06-22 Mike Stump <mrs@apple.com> |
| |
| Radar 4336222 |
| * c-decl.c (merge_decls): block-scope extern doesn't mean extern |
| at file-scope. |
| |
| 2006-06-21 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4594955 |
| * dwarf2out.c (struct source_loc_list): Use location_s directly, |
| rather than source_locus. |
| (dwarf2out_abstract_function): Use GC to allocate struct |
| source_loc_list. |
| (gen_inlined_subroutine_die): Update for changes to |
| struct source_loc_list. |
| |
| 2006-06-20 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4594280 |
| * dwarf2out.c (struct inlined_calls): Mark for GC; change field |
| 'file_index' to be a 'struct dwarf_file_data *'. |
| (inlined_calls_list): Mark for GC. |
| (add_to_global_inlined_calls_list): Take a |
| 'struct dwarf_file_data *' as the call_file parameter. Allocate |
| struct inlined_calls using GC. Update for file data structure |
| changes. |
| (gen_inlined_subroutine_die): Update for file data structure |
| changes. |
| |
| 2006-06-19 Mike Stump <mrs@apple.com> |
| |
| Radar 4336222 |
| * tree.c (variably_modified_type_p): VM arguments don't make the |
| type a VM type. |
| |
| 2006-06-18 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4286110 |
| * config/i386/emmintrin.h (_mm_set1_epi16): Redefine. |
| |
| 2006-06-18 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4534621 |
| * reload.c (find_reload_address) : Indexed ([reg+reg]) memory |
| address for TImode is not supported on powerpc. Need to load |
| [reg+reg] to a register first before addressing the memory. |
| |
| 2006-06-14 Mike Stump <mrs@apple.com> |
| |
| Radar 4586112 |
| * configure.ac (HAVE_GAS_LITERAL16): Add. |
| * config/darwin.c (HAVE_GAS_LITERAL16): Default to 0. |
| * config/i386/t-darwin: Don't assume we can always build x86_64 multilib. |
| |
| 2006-06-12 Devang Patel <dpatel@apple.com> |
| |
| Radar 4580289 |
| * config/darwin-driver.c (resolve_symlink, resolve_path_to_executable, |
| get_prog_name_len): New. |
| (main): Find appropriate program. |
| |
| 2006-06-12 Devang Patel <dpatel@apple.com> |
| |
| Radar 4208510 |
| * doc/invoke.texi (fopt-diary): Document. |
| * tree-vectorizer.c (debug.h): Include. |
| (vectorize_loops): Add opt diary entry to note vectorized loops. |
| * sdbout.c (sdb_debug_hooks): Add debug_nothing_od_msg_loc. |
| * vmsdbgout.c (vmsdbg_debug_hooks): Same. |
| * dbxout.c (dbx_debug_hooks, xcoff_debug_hooks): Same. |
| * debug.c (do_nothing_hooks): Same. |
| (debug_nothing_od_msg_loc): New. |
| * common.opt (fopt-diary): Add. |
| * debug.h (debug_od_msg, debug_od_category): New. |
| (gcc_debug_hooks): Add opt_diary_entry hook. |
| (debug_nothing_od_msg_loc): New. |
| * Makefile.in (tree-vectorizer.o): Depend on debug.h |
| * dwarf2out.c (dwarf2out_od_entry, dwarf2out_od_category, |
| dwarf2out_od_version, gen_new_od_entry_die): New. |
| (dwarf_tag_name): Handle DW_TAG_GNU_OD_entry. |
| (dwarf_attr_name): Handle DW_AT_GNU_OD_msg, DW_AT_GNU_OD_category |
| and DW_AT_GNU_OD_version. |
| (add_src_coords_attributes_locus): New. |
| (add_src_coords_attributes): Use add_src_coords_attributes_locus. |
| (dwarf2out_init): Record opt diary version. |
| * dwarf2.h (dwarf_tag): Add DW_TAG_GNU_OD_entry. |
| (dwarf_attributes): Add DW_AT_GNU_OD_msg, DW_AT_GNU_OD_category, |
| DW_AT_GNU_OD_version. |
| |
| 2006-06-09 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4084991 |
| * fold-const.c (fold_cond_expr_with_comparison): Check for |
| Objective-C++ same as C++. |
| |
| 2006-06-07 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4571747 |
| * rs6000.c (const struct bdesc_altivec_preds) |
| Rename CODE_FOR_altivec_predicate_* to work with new descriptions in |
| altivec.md. |
| * altivec.md |
| Expand nine altivec predicate vcmp* instructions. |
| |
| 2006-06-06 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4314956 |
| Import from mainline: |
| 2005-08-31 Richard Henderson <rth@redhat.com> |
| |
| * config/i386/i386.c (ix86_function_ok_for_sibcall): Fix |
| test for fp return matching. |
| |
| 2005-08-11 Richard Guenther <rguenther@suse.de> |
| |
| PR target/23289 |
| * config/i386/i386.c (ix86_function_ok_for_sibcall): Handle |
| cases where we call to/from functions returning void. |
| |
| 2006-06-01 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4570979 |
| * config/darwin.h: Change certain 'type' of objc2 sections |
| to 'regular' from 'literal_pointers' (reversing radar |
| 4561264).. |
| |
| 2006-06-01 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4469713 |
| * i386.c (ix86_init_mmx_sse_builtins) |
| The return type of builtin function, __builtin_ia32_vec_ext_v8hi, |
| should be an unsigned instead of a signed type. |
| |
| 2006-05-30 Roger Sayle <roger@eyesopen.com> |
| Stuart Hastings <stuart@apple.com> |
| |
| Radar 4561329 |
| PR middle-end/26557 |
| * stmt.c (emit_case_nodes): Handle the case where the index is a |
| CONST_INT, where the comparison mode is specified by the index type. |
| |
| 2006-05-26 Paolo Bonzini <bonzini@gnu.org> |
| Dale Johannesen <dalej@apple.com> |
| Stuart Hastings <stuart@apple.com> |
| |
| Fragment from this FSF trunk patch: |
| PR target/19653 |
| * config/i386/i386.c (ix86_preferred_reload_class): Force |
| using SSE registers (and return NO_REGS for floating-point |
| constants) if math is done with SSE. |
| |
| 2006-05-26 Fariborz Jahanian <fjahanian@apple.com> |
| |
| radar 4563012 |
| * config/darwin.c (darwin_construct_objc_string): Clear out the |
| ggc'able cfstring_descriptor node. |
| |
| 2006-05-25 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4561264 |
| * config/darwin.h: Change certain 'type' of objc2 sections |
| to 'literal_pointers' from 'regular'. |
| |
| 2006-05-18 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 3334812 |
| * config/darwin.h (NO_IMPLICIT_EXTERN_C): Define. |
| |
| 2006-05-23 Caroline Tice <ctice@apple.com> |
| |
| * passes.c (rest_of_compilation): Add apple local markers. |
| |
| 2006-05-18 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4548636 (objc attributes on class) |
| * c-parse.in: Add attribute non-terminal before |
| AT_INTERFACE. |
| * c-common.h (objc_start_class_interface): New argument added. |
| * stub-objc.c (objc_start_class_interface): Ditto. |
| |
| 2006-05-19 Caroline Tice <ctice@apple.com |
| |
| * dwarf2out.c (gen_inlined_subroutine_die): Added type-cast to |
| assignment and removed declaration of unused variable. |
| |
| 2006-05-18 Devang Patel <dpatel@apple.com> |
| |
| Radar 4509291 |
| * Undo Radar 4509280 |
| |
| 2006-05-18 Caroline Tice <ctice@apple.com> |
| |
| Radar 4548482 |
| * sdbout.c (sdb_debug_hooks): Change do_nothing function for |
| outlining_inline_function to have a second parameter, a source locus. |
| * vmsdbgout.c (vmsdbgout_abstract_function): Add secord (NULL) |
| argument to outlining_inline_function call. |
| * debug.c (do_nothing_debug_hooks): Change do_nothing function for |
| outlining_inline_function to have a second parameter, a source locus. |
| (debug_nothing_tree_loc): New function. |
| * debug.h (struct gcc_debug_hooks): Add a second parameter, a |
| source_locus, to outlining_inling_function. |
| (debug_nothing_tree_loc): New extern declaration. |
| * tree-inline.c (expand_call_inline): Add second argument, |
| input_location, to outlining_inline_function call. |
| * dbxout.c (dbx_debug_hooks): Change do_nothing function for |
| outlining_inline_function to have a second paramenter, a source_locus. |
| (xcoff_debug_hooks): Likewise. |
| * passes.c (rest_of_compilation): Add a second argument, NULL, to |
| the call to outlining_inline_function. |
| * dwarf2out.c (dwarf2out_abstract_function): Add second parameter, a |
| source locus. Add code to check to see if a call site location was |
| passed in, and if so to append the call site location to the list of |
| inlined call sites attached to the abstract origin die. |
| (struct source_loc_list): New struct. |
| (struct die_struct): Add new field, inlined_call_sites. |
| (struct inlined_calls): New struct. |
| (inlined_calls_list): New global variable. |
| (add_to_global_inlined_calls_list): New function. |
| (gen_inlined_subroutine_die): Add second argument, NULL, to call to |
| dwarf2out_abstract_function. Add code to look for appropriate call |
| site record, either in list attached to abstract origin, or in |
| global list, and if found, to add DW_AT_call_file and DW_AT_call_line |
| to inlined subroutine die. |
| (gen_decl_die): Add second argument, NULL, to calls to |
| dwarf2out_abstract_function. |
| (add_abstract_origin_attribute): Likewise. |
| * c-decl.c (merge_decls): Likewise. |
| * testsuite/gcc.apple/dwarf-inlining.c: New file (test). |
| |
| 2006-05-17 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4550582 |
| * c-parse.in: Reset objc_foreach_context to 0. |
| |
| 2006-05-16 Devang Patel <dpatel@apple.com> |
| |
| Radar 4547137 |
| * dbxout.c (dbxout_end_source_file): Check current_file. |
| |
| 2006-05-16 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4547045 |
| * c-gimplify.c (obj_reuse_bc_block): Removed. |
| (objc_pop_label, objc_push_label): New. |
| (gimplify_c_loop): Fix up foreach's innerloop break label. |
| |
| 2006-05-15 Fariborz Jahanian <fjahanian@apple.com> |
| |
| radar 4529765 |
| * c-format.c (format_type_warning): Compensate for two hidden |
| arguments in objc messaging when warning. |
| |
| 2006-05-11 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4506977 |
| * gcc/tree-cfg.c (fold_cond_expr_cond): Un-static it. |
| * gcc/tree-flow.h (fold_cond_expr_cond) Extern it. |
| * gcc/tree-optimize.c (execute_cleanup_cfg_post_optimizing): Call it. |
| * gcc/config/rs6000/darwin.md (movdf_low_si): Rewrite to avoid pic-base reference. |
| * gcc/config/rs6000/rs6000.md (zero_reg_mem_operand): New predicate. |
| (extenddftf2_internal): Use it. |
| |
| 2006-05-09 Fariborz Jahanian <fjahanian@apple.com> |
| |
| radar 4529200 |
| * c-parse.in (yylexname): Add '[' as another token |
| that can follow 'in'. |
| |
| 2006-05-08 Fariborz Jahanian <fjahanian@apple.com> |
| |
| radar 4535676 |
| * config/darwin-protos.h: New declarations. |
| * config/darwin.c (machopic_select_section): Code to generate |
| new section __super_refs. |
| * config/darwin.h: Macros for new section declarations. |
| |
| 2006-05-05 Fariborz Jahanian <fjahanian@apple.com> |
| |
| radar 4533974 - ObjC new protocol |
| * c-parse.in: New grammar production. |
| * c-common.h: New declarations. |
| * stub-objc.c (objc_protocol_implementation): New stub. |
| * config/darwin-protos.h: New declarations. |
| * config/darwin.c (machopic_select_section): Code to generate |
| new sections __protocol_list and __protocol_refs. |
| * config/darwin.h: Macros for new section declarations. |
| |
| 2006-05-01 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4512786 |
| * doc/invoke.texi (fobjc-sjlj-exceptions): Replaces |
| fobjc-exceptions. |
| |
| 2006-04-28 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4512786 |
| * doc/invoke.texi (fobjc-exceptions): Say it is |
| on by default. |
| |
| 2006-04-26 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 3803157 (method attributes) |
| * c-parse.in: Add grammar support for declaring |
| attribute for objc methods. |
| * c-common.c (handle_deprecated_attribute): Recognize |
| objc methods as valid declarations. |
| (handle_unavailable_attribute): Ditto. |
| * c-common.h: Bunch of new extern declarations. |
| * stub-objc.c (objc_add_method_declaration, objc_start_method_definition): |
| Added new argument. |
| (objc_method_decl): New stub. |
| |
| 2006-04-13 Devang Patel <dpatel@apple.com> |
| |
| Radar 4503682 |
| * c-lex.c (c_lex_with_flags): CPP_BINCL and CPP_EINCL tokens do not block PCH. |
| |
| 2006-04-12 Devang Patel <dpatel@apple.com> |
| |
| Radar 4509280 |
| * tree-vectorizer.c (vectorize_loops): Print vectorized loop count in opt |
| diary only if count is more then zero. |
| * flags.h (opt_diary_filename): New. |
| * tree-pass.h (TODO_proposal_1): New. |
| * tree-sra.c (pass_sra): Add TODO_proposal_1 in todo_flags_finish. |
| * tree-ssa-forwprop.c (pass_forwprop): Same. |
| * tree-ssa-dce.c (pass_dce, pass_cd_dce): Same. |
| * tree-ssa-ccp.c (pass_ccp): Same. |
| * tree-ssa-loop.c (pass_lim, pass_unswitch, pass_vectorize, pass_linear_transform, |
| pass_loop_prefetch, pass_iv_canon, pass_complete_unroll, pass_iv_optimize): Same. |
| * common.opt (fopt-diary-proposal-1): New. |
| * toplev.c (opt-diary.h): Include. |
| (opt_diary_filename): new. |
| (do_compile): Open and close opt diary. |
| * tree-optimize.c (opt-diary.h): Include. |
| (execute_one_pass): Redir dump_file to opt diary and restore it back. |
| Insert annotation header tag in opt diary. |
| * Makefile.in (opt-diary.o): New rule. |
| (tree-cfg.o, tree-optimize.o, toplev.o): Depend on opt-diary.h |
| * tree-cfg.c (opt-diary.h): Include. |
| (dump_function_to_file): Do not dump function into opt diary. |
| * opts.c (common_handle_option): Handle OPT_fopt_diary_proposal_1_. |
| * tree-ssa-opearnds. (get_indirect_ref_operands): Suppress flow sensitive alias |
| info dump in optimization diary. |
| * opt-diary.c: New file. |
| * opt-diary.h: New file. |
| |
| 2006-04-13 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4502236 |
| * c-parse.in (c99_block_lineno_labeled_stmt): Pass same flags to |
| c_end_compound_stmt to match c_begin_compound_stmt. |
| |
| 2006-04-12 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4507230 |
| * c-common.h (objc_type_valid_for_messaging): Declare. |
| * stub-objc.c (objc_type_valid_for_messaging): New stub. |
| |
| 2006-04-06 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4436866 |
| (Missing copies attribute) |
| * c-parse.in: Add grammer for 'copies' attribute. |
| * c-common.h (RID_COPIES): New enumerator. |
| |
| 2006-04-04 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4498373 |
| (Metadata for objective-c properties) |
| * config/darwin.c (machopic_select_section): Put metadata |
| name/attribute strings in .data section. |
| |
| 2006-03-29 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4493912 |
| * config/darwin.c (darwin_init_cfstring_builtins): Make type of |
| CFString.length 'long'. |
| (darwin_init_cfstring_builtins): Initialize CFString.length to |
| a 'long' value. |
| |
| 2006-03-27 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4133425 |
| * c-common.h (objc_diagnose_private_ivar): New decl. |
| * stub-objc.c (objc_diagnose_private_ivar): New stub. |
| * c-decl.c (undeclared_variable): Issue disnostic on |
| private 'ivar' access. |
| |
| 2006-03-27 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4491608 |
| * c-typeck.c (convert_arguments): function name must come from 'selector' |
| when diagnosing 'too many arguments'. |
| |
| 2006-03-24 Devang Patel <dpatel@apple.com> |
| |
| Radar 4485223 |
| * opts.c (decode_options): Issue warning if -ftree-vectorize |
| overrides -fno-strict-aliasing. |
| |
| 2006-03-23 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4193359 |
| * c-typeck.c (convert_for_assignment): Remove Objective-C EH machinery |
| 'volatile' qualifier before doing type comparison. |
| |
| 2006-03-22 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4255172 |
| * config/rs6000/darwin.h (PEG_ALIGN_FOR_MAC68K): Move to here from |
| config/darwin.h. Don't test TARGET_ALTIVEC. |
| * config/darwin.h [RS6000_VECTOR_ALIGNMENT] (PEG_ALIGN_FOR_MAC68K): |
| Move this definition to config/rs6000/darwin.h. |
| * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Don't define |
| Altivec PIM macros unless -faltivec. |
| * config/rs6000/rs6000.c (rs6000_override_options): Don't allow |
| special Altivec vector initialisation unless -faltivec. |
| |
| 2006-03-22 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4436866 |
| * c-parse.in: Add all the needed grammar and lexical support for |
| objective-c @property. |
| * c-typeck.c (build_component_ref): Call objc_build_getter_call. |
| (build_modify_expr): Call objc_build_setter_call. |
| * tree.h (CALL_EXPR_OBJC_PROPERTY_GETTER): New macro. |
| * c-common.h: Several new declarations in support of |
| objective-c's @property. |
| * stub-objc.c (objc_set_property_attr, objc_add_property_variable, |
| objc_build_getter_call, objc_build_setter_call): New stubs. |
| |
| 2006-03-16 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4293709 |
| * c-typeck.c (digest_init): Check for protocol match in |
| initialization of two otherwise matching pointers. |
| |
| 2006-03-13 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4472881 |
| * c-parse.in: Change grammar code as needed to allow |
| declaration in objective-c's foreach for-loop loop header. |
| |
| 2006-03-08 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4468456 |
| * c-gimplify.c (gimplify_c_loop): 'continue' label is generated |
| as in normal case and belongs to current loop. |
| |
| 2006-03-07 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4468498 |
| * c-parse.in (for_objc_collection): Add grammar for non-declarative |
| form of foreach-statement. |
| |
| 2006-02-28 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4441049 |
| * c-common.h (objc_v2_bitfield_ivar_bitpos): New decl. |
| * expr.h (objc_v2_bitfield_ivar_bitpos): New decl. |
| * stub-objc.c (objc_v2_bitfield_ivar_bitpos): New stub. |
| * expr.c (get_inner_reference): Compute ivar's bitfield bit offset. |
| |
| 2006-02-28 Devang Patel <dpatel@apple.com> |
| Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 4137741 |
| * Makefile.in (c-lex.o): Revert langhooks.h dependency. |
| (langhooks.o): Revert debug.h dependency. |
| * c-lex.c: Do not include langhooks.h. |
| (fe_file_change): Revert lang_hooks calls; issue debug_hooks |
| calls only if defer_file_change_debug_hooks flag is cleared. |
| (c_lex_with_flags): Propagate line number information for |
| CPP_BINCL and CPP_EINCL tokens. |
| * langhooks-def.h: Revert Radar 4133801 changes. |
| * langhooks.c: Likewise. |
| * langhooks.h: Likewise. |
| |
| 2006-02-15 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4445586 |
| * c-common.def (DO_STMT): Takes an extra argument. |
| |
| 2006-02-15 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4441551 |
| * c-parse.in (component_decl_list2): Issue warning for @defs as needed. |
| * c-typeck.c (build_c_cast): Call diagnose_selector_cast. |
| * common.opt: New -Wobjc2 option. |
| * c-common.h (diagnose_selector_cast): New decl. |
| * stub-objc.c (diagnose_selector_cast): New stub. |
| * config/darwin-c.c (darwin_cpp_builtins): Define __OBJC2__ for |
| objc's new abi. |
| |
| 2006-02-14 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4441049 |
| * c-common.h (objc_v2_component_ref_field_offset): New decl. |
| * stub-objc.c (objc_v2_component_ref_field_offset): New stub. |
| * expr.c (component_ref_field_offset): May get the bitfield |
| byte-offset from a variable for the new objc abi. |
| * expr.h (objc_v2_component_ref_field_offset): New decl. |
| * config/darwin.c (machopic_select_section): Explicitly use .data |
| section for global class/metaclass metadata. |
| |
| 2006-02-08 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4437670 (new abi stuff) |
| * common.opt: New -fobjc-nilcheck option. |
| * config/darwin-protos.h: Stuff for new __OBJC2, __protocol section. |
| * config/darwin.c: Ditto. |
| * config/darwin.h: Ditto. |
| |
| 2006-02-07 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4426814 |
| * c-parse.in (cast_expr): Minor fix. |
| |
| 2006-02-02 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4426814 |
| * c-parse.in (cast_expr): generate objc_read_weak call on |
| each __weak object in the expession. |
| * c-typeck.c (build_modify_expr): Undo the call to objc_read_weak |
| on LHS expression. |
| * c-objc-common.c (c_objc_common_truthvalue_conversion): Generate |
| objc_read_weak call before generating tree for !exp, etc. |
| * c-common.h (objc_generate_weak_read, objc_remove_weak_read): New decl. |
| * stub-objc.c (objc_generate_weak_read, objc_remove_weak_read): New stubs. |
| |
| 2006-01-30 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4386773 |
| * c-common.h (RID_AT_OPTIONAL, RID_AT_REQUIRED): Two new |
| objective-c keywords. |
| (objc_set_method_opt): New declaration. |
| * stub-objc.c (objc_set_method_opt): New stub. |
| |
| 2006-01-26 Devang Patel <dpatel@apple.com> |
| |
| Radar 4388369 |
| * dbxout.c (dbxout_complete_type): Handle internally volatized |
| types for Objective-C EH mechanism. |
| |
| 2006-01-23 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4391705 |
| * config/darwin-protos.h |
| (objc_v2_selector_refs_section): New declaration. |
| * config/darwin.c: use section __OBJC2,__selector_refs for |
| @selector expressions in new-ABI and hybrid-ABI. |
| * config/darwin.h: Initialization of __OBJC2,__selector_refs |
| section and inclusion of hybrid abi for __OBJC2 sections |
| initializations. |
| |
| 2006-01-18 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4294910 |
| * c-parse.in: Add grammar supprt for the foreach initialization |
| part. |
| * c-gimplify.c (obj_reuse_bc_block): New function. |
| (gimplify_c_loop): Has a new argument to recgognize nested |
| do-while statement part of foreach-statement synthesis. Use |
| existing continue/break labels for this loop. |
| * c-common.h (DO_FOREACH): New field for a do-while statement. |
| (objc_finish_foreach_loop, objc_build_component_ref, |
| objc_build_foreach_components): New declarations. |
| * stub-objc.c: New stubs. |
| |
| 2006-01-18 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4391705 |
| * config/darwin-protos.h: New declarations for new sections. |
| * config/darwin.c: Generate new symbols in OBJC2 segment in |
| new sections __category_list, __class_refs, __nonlazy_class |
| and __nonlazy_catgry. |
| * config/darwin.h: Define and initialize the above new sections. |
| |
| 2006-01-02 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4391705 |
| * config/darwin.h: Change segment and section name of class meta |
| data. |
| (objc_section_init): Initialize OBJC2 sections for new abi only. |
| |
| 2005-12-15 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4229905 |
| * c-typeck.c (build_conditional_expr): Call objc_have_common_type when |
| looking for objective-c common pointer types. |
| * c-common.h objc_have_common_type): New declaration. |
| * stub-objc.c (objc_have_common_type): New stub. |
| |
| 2005-12-06 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4360146 |
| * c-common.h (objc_v2_build_ivar_ref): New declaration. |
| * stub-objc.c (objc_v2_build_ivar_ref): New stub. |
| * c-typeck.c (build_component_ref): Generate the new ivar reference |
| tree. |
| |
| 2006-07-05 Hui-May Chang <hm.chang@apple.com> |
| |
| * doc/extend.texi: Fixed the unmatched APPLE LOCAL marker introduced by |
| the previous checkin for radar 4395773. |
| |
| 2006-06-26 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4395773 |
| * doc/extend.texi: Document SSE2 built-in functions and other new functions. |
| |
| 2006-06-26 Eric Christopher <echristo@apple.com> |
| |
| Radar 4512244 |
| * config/t-slibgcc-darwin (SHLIB_SUFFIX): Depend only on ppc64 |
| for suffix. |
| |
| 2006-06-14 Mike Stump <mrs@apple.com> |
| |
| Radar 4586112 |
| * configure.ac (HAVE_GAS_LITERAL16): Add. |
| * config/darwin.c (HAVE_GAS_LITERAL16): Default to 0. |
| * config/i386/t-darwin: Don't assume we can always build x86_64 multilib. |
| |
| 2006-06-26 Eric Christopher <echristo@apple.com> |
| |
| Radar 4601627 |
| * config/t-slibgcc-darwin (SHLIB_MAPFILES): Revert previous patch. |
| |
| 2006-06-26 Eric Christopher <echristo@apple.com> |
| |
| Radar 4601584 |
| * config.gcc: Revert part of previous patch. |
| * config/t-darwin: Ditto. |
| |
| 2006-06-23 Eric Christopher <echristo@apple.com> |
| |
| Radar 4476324 |
| * config/i386/i386.c (standard_sse_mode_p): New. |
| (standard_sse_constant_p): Use. |
| * config/i386/predicates.md (vector_move_operand): Revert |
| patch for 4283414. |
| (nonimmediate_or_sse_const_operand): Define. |
| * config/i386/sse.md (*mov<mode>_internal): Use. |
| (*movv4sf_internal): Ditto. |
| (*movv2df_internal): Ditto. |
| |
| 2006-06-23 Mike Stump <mrs@apple.com> |
| |
| Radar 4591284 |
| * config/i386/tmmintrin.h: Add __always_inline__ and __nodebug__. |
| |
| 2006-06-22 Eric Christopher <echristo@apple.com> |
| |
| Radar 4512244 |
| * config.gcc (*-*-darwin*): Add crt3.o to extra_parts. |
| (powerpc-*-darwin*): Add ${extra_parts}. |
| * config/t-darwin (EXTRA_MULTILIB_PARTS): Remove. |
| * config/t-slibgcc-darwin: Rewrite libgcc_s.1.dylib handling. |
| |
| 2006-06-22 Eric Christopher <echristo@apple.com> |
| |
| Radar 4598165 |
| * config/i386/i386.c (ix86_preferred_reload_class): Bring in |
| rest of patch for 3501055 from mainline. |
| * config/i386/i386.h (IS_STACK_MODE): Ditto. |
| |
| 2006-06-22 Mike Stump <mrs@apple.com> |
| |
| Radar 4535822 |
| * c-common.c (iasm_stmt): Update for new assembler. |
| (iasm_print_operand): Likewise. |
| * config/asm.h: Likewise. |
| * config/i386/i386.c (iasm_x86_canonicalize_operands): Likewise. |
| * config/i386/i386.h (TARGET_IASM_OP_CONSTRAINT): Fix constraints |
| for lldt and ltr. |
| |
| 2006-06-05 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4469713 |
| * i386.c (ix86_init_mmx_sse_builtins) |
| The return type of builtin function, __builtin_ia32_vec_ext_v8hi, |
| should be an unsigned instead of a signed type. |
| |
| 2006-06-05 Eric Christopher <echristo@apple.com> |
| |
| Radar 4560266 |
| * config/i386/darwin.h (OPTION_DEFAULT_SPECS): Remove port |
| specific version. |
| |
| 2006-05-30 Eric Christopher <echristo@apple.com> |
| |
| Radar 4555787 |
| * config/darwin-protos.h (literal16_section): Prototype. |
| * config/darwin.h (EXTRA_SECTION): Define. |
| (EXTRA_SECTION_FUNCTIONS): Define. |
| * config/darwin.c (machopic_select_section): Use. |
| Conditionalize on TARGET_64BIT. |
| (machopic_select_rtx_section): Ditto. |
| (darwin_set_section_for_var_p): Ditto. |
| |
| 2006-05-26 Paolo Bonzini <bonzini@gnu.org> |
| Dale Johannesen <dalej@apple.com> |
| Stuart Hastings <stuart@apple.com> |
| |
| Fragment from this FSF trunk patch: |
| PR target/19653 |
| * config/i386/i386.c (ix86_preferred_reload_class): Force |
| using SSE registers (and return NO_REGS for floating-point |
| constants) if math is done with SSE. |
| |
| 2006-05-11 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4525731 |
| * gcc/config/i386/i386.c (ix86_handle_cconv_attribute): |
| Diagnose force_align_arg_pointer versus regparm collisions. |
| (ix86_function_regparm): Reduce number of regparms available |
| when force_align_arg_pointer in use. |
| |
| 2006-05-10 Eric Christopher <echristo@apple.com> |
| H.J. Lu <hongjiu.lu@intel.com> |
| |
| Radar 4424835 |
| * config.gcc (i[34567]86-*-*): Add tmmintrin.h to extra_headers. |
| (x86_64-*-*): Likewise. |
| * config/i386/i386.c (pta_flags): Add PTA_MNI. |
| (override_options): Check MNI. |
| (ix86_builtins): Add IX86_BUILTIN_PHADDW, IX86_BUILTIN_PHADDD, |
| IX86_BUILTIN_PHADDSW, IX86_BUILTIN_PHSUBW, IX86_BUILTIN_PHSUBD, |
| IX86_BUILTIN_PHSUBSW, IX86_BUILTIN_PMADDUBSW, |
| IX86_BUILTIN_PMULHRSW, IX86_BUILTIN_PSHUFB, |
| IX86_BUILTIN_PSIGNB, IX86_BUILTIN_PSIGNW, IX86_BUILTIN_PSIGND, |
| IX86_BUILTIN_PALIGNR, IX86_BUILTIN_PABSB, IX86_BUILTIN_PABSW, |
| IX86_BUILTIN_PABSD, IX86_BUILTIN_PHADDW128, |
| IX86_BUILTIN_PHADDD128, IX86_BUILTIN_PHADDSW128, |
| IX86_BUILTIN_PHSUBW128, IX86_BUILTIN_PHSUBD128, |
| IX86_BUILTIN_PHSUBSW128, IX86_BUILTIN_PMADDUBSW128, |
| IX86_BUILTIN_PMULHRSW128, IX86_BUILTIN_PSHUFB128, |
| IX86_BUILTIN_PSIGNB128, IX86_BUILTIN_PSIGNW128, |
| IX86_BUILTIN_PSIGND128, IX86_BUILTIN_PALIGNR128, |
| IX86_BUILTIN_PABSB128, IX86_BUILTIN_PABSW128 and |
| IX86_BUILTIN_PABSD128. |
| (bdesc_2arg): Add MNI. |
| (bdesc_1arg): Likewise. |
| (ix86_init_mmx_sse_builtins): Support MNI. |
| (ix86_expand_builtin): Likewise. |
| * config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Likewise. |
| * config/i386/i386.md (UNSPEC_PSHUFB): New. |
| (UNSPEC_PSIGN): Likewise. |
| (UNSPEC_PALIGNR): Likewise. |
| Include mmx.md before sse.md. |
| * config/i386/i386.opt: Add -mmni. |
| * config/i386/sse.md (mni_phaddwv8hi3): New pattern for MNI. |
| (mni_phaddwv4hi3): Likewise. |
| (mni_phadddv4si3): Likewise. |
| (mni_phadddv2si3): Likewise. |
| (mni_phaddswv8hi3): Likewise. |
| (mni_phaddswv4hi3): Likewise. |
| (mni_phsubwv8hi3): Likewise. |
| (mni_phsubwv4hi3): Likewise. |
| (mni_phsubdv4si3): Likewise. |
| (mni_phsubdv2si3): Likewise. |
| (mni_phsubswv8hi3): Likewise. |
| (mni_phsubswv4hi3): Likewise. |
| (mni_pmaddubswv8hi3): Likewise. |
| (mni_pmaddubswv4hi3): Likewise. |
| (mni_pmulhrswv8hi3): Likewise. |
| (mni_pmulhrswv4hi3): Likewise. |
| (mni_pshufbv16qi3): Likewise. |
| (mni_pshufbv8qi3): Likewise. |
| (mni_psign<mode>3): Likewise. |
| (mni_psign<mode>3): Likewise. |
| (mni_palignrti): Likewise. |
| (mni_palignrdi): Likewise. |
| (mni_pabs<mode>2): Likewise. |
| (mni_pabs<mode>2): Likewise. |
| * config/i386/tmmintrin.h: New file. |
| * doc/extend.texi: Document MNI built-in functions. |
| * doc/invoke.texi: Document -mmni/-mno-mni switches. |
| |
| 2006-05-10 Eric Christopher <echristo@apple.com> |
| |
| Radar 4541111 |
| * config/i386/i386.c (override_options): Disable |
| -fomit-frame-pointer. |
| |
| 2005-05-06 Eric Christopher <echristo@apple.com> |
| |
| Radar 4539437 |
| * config/i386/i386.c (processor_alias_table): Remove |
| PTA_SSE3 for nocona. |
| |
| 2006-05-05 Eric Christopher <echristo@apple.com> |
| Nate Begeman <nbegeman@apple.com> |
| |
| Radar 4434601 |
| Backport from mainline: |
| 2006-01-19 Jan Hubicka <jh@suse.cz> |
| H.J. Lu <hongjiu.lu@intel.com> |
| Evandro Menezes <evandro.menezes@amd.com> |
| |
| * invoke.texi (generic): Document |
| (i686) Update. |
| * config.gcc: Make x86_64-* and i686-* default to generic tuning. |
| * i386.h (TARGET_GENERIC32, TARGET_GENERIC64, TARGET_GENERIC, |
| TARGET_USE_INCDEC, TARGET_PAD_RETURNS): New macros. |
| (x86_use_incdec, x86_pad_returns): New variables |
| (TARGET_CPU_DEFAULT_generic): New constant |
| (TARGET_CPU_DEFAULT_NAMES): Add generic. |
| (enum processor_type): Add generic32 and generic64. |
| * i386.md (cpu attribute): Add generic32/generic64 |
| (movhi splitter): Behave sanely when both partial_reg_dependency and |
| partial_reg_stall are set. |
| (K8 splitters): Enable for generic as well. |
| * predicates.md (incdec_operand): Use TARGET_INCDEC |
| (aligned_operand): Avoid memory mismatch stalls. |
| * athlon.md: Enable for generic64, new patterns for 128bit moves. |
| * ppro.md: Enable for generic32 |
| * i386.c (generic64_cost, generic32_cost): New. |
| (m_GENERIC32, m_GENERIC64, m_GENERIC): New macros. |
| (x86_use_leave): Enable for generic64. (x86_use_sahf, |
| x86_ext_80387_constants): Enable for generic32. (x86_push_memory, |
| x86_movx, x86_unroll_strlen, x86_deep_branch, x86_use_simode_fiop, |
| x86_use_cltd, x86_promote_QImode, x86_sub_esp_4, x86_sub_esp_8, |
| x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves, |
| x86_partial_reg_dependency, x86_memory_mismatch_stall, |
| x86_accumulate_outgoing_args, x86_prologue_using_move, |
| x86_epilogue_using_move, x86_arch_always_fancy_math_387, |
| x86_sse_partial_reg_dependency, x86_four_jump_limit, x86_schedule): |
| Enable for generic. |
| (x86_use_incdec, x86_pad_returns): New. |
| (override_options): Add generic32 and generic64, translate "generic" |
| to generic32/generic64 and "i686" to "generic32", refuse |
| "generic32"/"generic64" as arch target. |
| (ix86_issue_rate, ix86_adjust_cost): Handle generic as athlon. |
| (ix86_reorg): Honor PAD_RETURNS. |
| |
| 2006-05-02 Eric Christopher <echristo@apple.com> |
| |
| Radar 4534752 |
| * config/i386/i386.h (MACHOPIC_UNDEFINED_FUNCTION): Remove define. |
| * config/i386/i386.c (output_pic_addr_const): Bracket machopic routines |
| with TARGET_MACHO. |
| * config/darwin.h (MACHOPIC_INDIRECT): Undef before defining. |
| (MACHOPIC_PURE): Ditto. |
| |
| 2006-05-02 Eric Christopher <echristo@apple.com> |
| |
| Radar 4534752 |
| * config/rs6000/rs6000.c (reset_optimization_options): Bracket by TARGET_MACHO. |
| * config/i386/i386.c (reset_optimization_options): Ditto. |
| (ix86_file_end): Ditto. |
| * config/i386/i386.h (MACHOPIC_INDIRECT): Define to 0. |
| (MACHOPIC_UNDEFINED_FUNCTION): Ditto. |
| (MACHOPIC_PURE): Ditto. |
| |
| 2006-05-02 Eric Christopher <echristo@apple.com> |
| |
| Radar 4533898 |
| * global.c (flag_cw_asm_blocks): Change to |
| flag_iasm_blocks. |
| * config/i386/i386.h (IASM_VALID_PIC): Move... |
| * config/i386/darwin.h: ... here. |
| |
| 2006-05-01 Eric Christopher <echristo@apple.com> |
| |
| Radar 4533757 |
| * global.c (flag_cw_asm_blocks): Declare. |
| |
| 2006-04-10 Eric Christopher <echristo@apple.com> |
| |
| Radar 4467352 |
| * config/i386/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Disable |
| mdynamic-no-pic for 64-bit. |
| |
| 2006-04-04 Eric Albert <ejalbert@apple.com> |
| |
| Radar 4502551 |
| * config/darwin.h (PREFERRED_DEBUGGING_TYPE): Default to stabs for all |
| configurations. |
| |
| 2006-03-27 Eric Christopher <echristo@apple.com> |
| |
| Radar 4446385 |
| * config/darwin-driver.c (get_arch_name): Rewrite. |
| |
| 2006-06-14 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4587142 |
| * dwarf2out.c (dwarf_file_data): New. |
| (enum dw_val_class): Add dw_val_class_file. |
| (struct dw_val_struct): Add val_file. |
| (file_table): Change to a hash table. |
| (file_table_emitted): Delete. |
| (file_table_last_lookup_index): Delete. |
| (emitcount): Delete. |
| (last_emitted_file): New. |
| (lookup_filename): Change prototype to return a struct dwarf_file_data. |
| (init_file_table): Delete. |
| (maybe_emit_file): Change prototype to take a struct dwarf_file_data. |
| (AT_addr): Add comment. |
| (add_AT_file): New. |
| (AT_file): New. |
| (get_AT_file): New. |
| (print_die): Handle dw_val_class_file. |
| (print_dwarf_line_table): Update for new file table structure. |
| (attr_checksum): Do checksum a filename. |
| (same_dw_val_p, same_attr_p): Do compare a filename. |
| (size_of_die): Handle dw_val_class_file. |
| (value_format): Likewise. |
| (output_die): Likewise. Also, call maybe_emit_file here. |
| (struct file_info): Constify filenames. Make file_idx a pointer |
| to a struct dwarf_file_data. |
| (struct dir_info): Constify directory names. Remove 'used' field. |
| (struct file_name_acquire_data): New. |
| (file_name_acquire): New. |
| (output_file_names): Modify to handle new file data structures. |
| (add_src_coords_attributes): Use add_AT_file. |
| (add_call_src_coords_attributes): Likewise. |
| (dwarf2out_imported_module_or_decl): Likewise. |
| (gen_subprogram_die): Modify for new file data structures. |
| (gen_variable_die): Likewise. |
| (file_table_eq): New. |
| (file_table_hash): New. |
| (file_table_last_lookup): New. |
| (lookup_filename): Rewrite to handle new file data structures. |
| (maybe_emit_file): Rewrite to handle new file data structures. |
| (dwarf2out_source_line): Always call lookup_filename and |
| maybe_emit_file. |
| (dwarf2out_init): Create file_table here. |
| (prune_unused_types_walk_attribs): Don't call maybe_emit_file here. |
| (file_table_relative_p): New. |
| (dwarf2out_finish): Change detection of relative filenames |
| to work with new file data structures. |
| |
| 2006-06-05 Roger Sayle <roger@eyesopen.com> |
| Stuart Hastings <stuart@apple.com> |
| |
| Radar 4561329 |
| PR middle-end/26557 |
| * stmt.c (emit_case_nodes): Handle the case where the index is a |
| CONST_INT, where the comparison mode is specified by the index type. |
| |
| 2006-05-30 Mike Stump <mrs@apple.com> |
| |
| Rarar 4527214 |
| * c-common.c (iasm_stmt): Fix clobbers for mul/imul/div/idiv. |
| |
| 2006-05-18 Mike Stump <mrs@apple.com> |
| |
| Radar 4501833 |
| * c-common.c (iasm_delete_blr): Add. |
| (iasm_saw_frfree_blr): Add. |
| (iasm_ensure_blr_last): Add. |
| (iasm_stmt): Add logic to ensure that blr follows frfree and that |
| blr is last. Manage line numbes better. Only allow fralloc and |
| frfree on ppc. |
| * c-parse.in (compstmt_nostart): Use iasm_end_block to end inline |
| assmebly blocks. |
| (iasm_compstmt): Likewise. |
| (iasm_compstmt_nostart): Likewise. |
| * config/asm.h (iasm_end_block): Add. |
| * function.c (assign_parm_setup_reg): Don't spill to memory for a |
| frameless asm function. |
| |
| 2006-05-03 Mike Stump <mrs@apple.com> |
| |
| Radar 4529651 |
| * doc/invoke.texi (Optimize Options): Improve -fast documentation |
| a little. |
| |
| 2006-05-01 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4222119 |
| * gcc/doc/invoke.texi: Document -mlong-branch. |
| |
| 2006-04-27 Eric Christopher <echristo@apple.com> |
| |
| Radar 4454599 |
| Radar 4481146 |
| * stor-layout.c (update_alignment_for_field): Unconditionalize |
| ms_bitfield_layout_p code. Handle non-bitfield fields. Remove |
| extra alignment code. |
| (place_field): Don't realign if ms_bitfield_layout_p. Unconditionalize |
| ms_bitfield_layout_p code. Rewrite handling of structure fields. |
| Rewrite bitfield reversal handling. |
| |
| 2006-04-27 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4314956 |
| Revert 2006-04-26 patch. |
| |
| 2006-04-27 Mike Stump <mrs@apple.com> |
| |
| Radar 4529992 |
| * c-common.c (pointer_int_sum): Only form ARRAY_REF for ARRAY_TYPEs. |
| (iasm_maybe_force_mem): Ensure that we only use DECL_HARD_REGISTER on |
| VAR_DECLs. |
| * c-typeck.c (iasm_c_build_component_ref): Move [eax].16 code up, |
| to avoid calling lookup_name on [eax]. |
| |
| 2006-04-26 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4491613 |
| * loop.c (general_induction_var) : If an induction variable |
| may trap, it shouldn't be a general induction variable. |
| |
| 2006-04-26 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4314956 |
| Import from mainline: |
| 2005-08-31 Richard Henderson <rth@redhat.com> |
| * config/i386/i386.c (ix86_function_ok_for_sibcall): Fix test for |
| fp return matching. |
| |
| 2006-04-26 Mike Stump <mrs@apple.com> |
| |
| Radar 4505697 |
| * config/i386/i386.c (iasm_x86_canonicalize_operands): Fix movzx handling. |
| |
| 2006-04-26 Mike Stump <mrs@apple.com> |
| |
| Radar 4505741 |
| * c-common.c (iasm_print_operand): Fix .machine all for ppc64. |
| |
| (iasm_addr): Add. |
| (pointer_int_sum): Handle ptr+4 correctly. |
| (iasm_stmt): Set up the line number correctly for C. |
| (IASM_VALID_PIC): Add. |
| (iasm_type_for): Move to i386.h |
| (iasm_maybe_force_mem): Add. |
| (iasm_print_operand): Split code out to new functions. |
| Add warnings for non-pic code when in PIC mode. |
| Add ARRAY_REF handling. |
| * i386/i386-protos.h (iasm_raise_reg): Add |
| * i386/i386.c: |
| Rename x86_canonicalize_operands to iasm_x86_canonicalize_operands. |
| (iasm_type_for): Add. |
| (iasm_raise_reg): Add. |
| (iasm_default_conv): Add. |
| (iasm_is_offset): Imrove support for ADDR_EXPR. |
| (iasm_canonicalize_bracket_1): Handle constants better. |
| Ensure that stack based addresses occur as one argument to the asm. |
| Ensure that expressions form adderess exrepssions. |
| (iasm_indirect): Add. |
| (iasm_add): Add. |
| (iasm_canonicalize_bracket): Split out code. |
| Ensure that stack based addresses occur as one argument to the asm. |
| Ensure that expressions form adderess exrepssions. |
| (iasm_x86_canonicalize_operands): Handle ARRAY_REF. |
| (iasm_warn_extra_reg): Add. |
| (iasm_print_op): Don't indirect here. |
| Handle address constant memory expressions. |
| Add warnings for extra registers. |
| Handle ADDR_EXPR better. |
| * i386/i386.h (IASM_VALID_PIC): Add. |
| |
| Rename cw_ to iasm_: |
| * c-common.c: |
| Rename flag_cw_asm_blocks to flag_iasm_blocks. |
| Rename cw_asm_states to iasm_states. |
| Rename cw_asm_state to iasm_state. |
| Rename cw_asm_in_decl to iasm_in_decl. |
| Rename inside_cw_asm_block to inside_iasm_block. |
| Rename cw_asm_at_bol to iasm_at_bol. |
| Rename cw_asm_in_operands to iasm_in_operands. |
| Rename cw_split_next to iasm_split_next. |
| Rename cw_asm_buffer to iasm_buffer. |
| Rename cw_asm_labels to iasm_labels. |
| Rename cw_asm_labels_uniq to iasm_labels_uniq. |
| Rename cw_asm_identifier to iasm_identifier. |
| Rename cw_memory_clobber to iasm_memory_clobber. |
| Rename get_cw_asm_label to iasm_get_label. |
| Rename cw_get_mode to iasm_get_mode. |
| Rename cw_ptr_conv to iasm_ptr_conv. |
| Rename cw_build_bracket to iasm_build_bracket. |
| Rename cw_asm_default_function_conversion to iasm_default_function_conversion. |
| Rename cw_is_pseudo to iasm_is_pseudo. |
| Rename cw_op_constraint to iasm_op_constraint. |
| Rename TARGET_CW_OP_CONSTRAINT to TARGET_IASM_OP_CONSTRAINT. |
| Rename cw_op_comp to iasm_op_comp. |
| Rename TARGET_CW_REORDER_ARG to TARGET_IASM_REORDER_ARG. |
| Rename CW_SYNTH_CONSTRAINTS to IASM_SYNTH_CONSTRAINTS. |
| Rename cw_constraint_for to iasm_constraint_for. |
| Rename cw_process_arg to iasm_process_arg. |
| Rename CW_CANONICALIZE_OPERANDS to IASM_CANONICALIZE_OPERANDS. |
| Rename CW_IS_PREFIX to IASM_IS_PREFIX. |
| Rename CW_PRINT_PREFIX to IASM_PRINT_PREFIX. |
| Rename cw_is_prefix to iasm_is_prefix. |
| Rename cw_num_constraints_1 to iasm_num_constraints_1. |
| Rename cw_num_constraints to iasm_num_constraints. |
| Rename cw_set_constraints_1 to iasm_set_constraints_1. |
| Rename cw_set_constraints to iasm_set_constraints. |
| Rename CW_MAX_CLOBBERS to IASM_MAX_CLOBBERS. |
| Rename cw_op_clobber to iasm_op_clobber. |
| Rename cw_op_clobber_comp to iasm_op_clobber_comp. |
| Rename TARGET_CW_EXTRA_CLOBBERS to TARGET_IASM_EXTRA_CLOBBERS. |
| Rename cw_extra_clobbers to iasm_extra_clobbers. |
| Rename cw_asm_stmt to iasm_stmt. |
| Rename cw_asm_field_offset to iasm_field_offset. |
| Rename cw_simple_expr to iasm_simple_expr. |
| Rename cw_asm_expr_val to iasm_expr_val. |
| Rename TARGET_CW_PRINT_OP to TARGET_IASM_PRINT_OP. |
| Rename CW_IMMED_PREFIX to IASM_IMMED_PREFIX. |
| Rename CW_OFFSET_PREFIX to IASM_OFFSET_PREFIX. |
| Rename CW_HIDE_REG to IASM_HIDE_REG. |
| Rename CW_SEE_IMMEDIATE to IASM_SEE_IMMEDIATE. |
| Rename CW_SEE_NO_IMMEDIATE to IASM_SEE_NO_IMMEDIATE. |
| Rename CW_FUNCTION_MODIFIER to IASM_FUNCTION_MODIFIER. |
| Rename cw_force_constraint to iasm_force_constraint. |
| Rename print_cw_asm_operand to iasm_print_operand. |
| Rename cw_asm_get_register_var to iasm_get_register_var. |
| Rename cw_asm_reg_name to iasm_reg_name. |
| Rename cw_asm_label to iasm_label. |
| Rename cw_get_identifier to iasm_get_identifier. |
| Rename clear_cw_asm_labels to iasm_clear_labels. |
| Rename cw_ha16 to iasm_ha16. |
| Rename cw_hi16 to iasm_hi16. |
| Rename cw_lo16 to iasm_lo16. |
| Rename cw_do_id to iasm_do_id. |
| Rename cw_asm_build_register_offset to iasm_build_register_offset. |
| Rename cw_asm_entry to iasm_entry. |
| * c-lex.c: Likewise |
| Rename cw_skip_to_eol to iasm_skip_to_eol. |
| Rename cw_asm_saved_token to iasm_saved_token. |
| Rename cw_insert_saved_token to iasm_insert_saved_token. |
| * c-parse.in: Likewise. |
| Rename CW_ASM_KEYWORD to IASM_ASM_KEYWORD. |
| Rename CW_ASM_BOL to IASM_BOL. |
| Rename CW_ASM_EOL to IASM_EOL. |
| Rename cw_asm_lineno to iasm_lineno. |
| Rename CW_SEE_OPCODE to IASM_SEE_OPCODE. |
| Rename c_parse_cw_maybe_prefix to c_parse_iasm_maybe_prefix. |
| Rename cw_save_location to iasm_save_location. |
| Rename cw_asm_stmt_nobol to iasm_stmt_nobol. |
| Rename cw_asm_stmt_list to iasm_stmt_list. |
| Rename cw_maybe_comment to iasm_maybe_comment. |
| Rename cw_identifier to iasm_identifier. |
| Rename cw_identifier1 to iasm_identifier1. |
| Rename cw_maybe_prefix to iasm_maybe_prefix. |
| Rename single_cw_asm_stmt to single_iasm_stmt. |
| Rename cw_asm_stmts to iasm_stmts. |
| Rename cw_asm_compstmt_start to iasm_compstmt_start. |
| Rename cw_asm_compstmt to iasm_compstmt. |
| Rename cw_asm_compstmt_nostart to iasm_compstmt_nostart. |
| Rename cw_asm_compstmt_contents_nonempty to iasm_compstmt_contents_nonempty. |
| Rename cw_asm_operands to iasm_operands. |
| Rename cw_nonnull_asm_operands to iasm_nonnull_operands. |
| Rename cw_asm_operand to iasm_operand. |
| Rename cw_asm_expr_no_commas to iasm_expr_no_commas. |
| Rename cw_asm_unary_expr to iasm_unary_expr. |
| Rename cw_asm_primary to iasm_primary. |
| Rename cw_asm_specbit to iasm_asm_specbit. |
| Rename cw_asm_typename_or_reserved to iasm_typename_or_reserved. |
| Rename cw_asm_c_build_component_ref to iasm_c_build_component_ref. |
| * config/asm.h: Likewise. |
| Rename cw_asm_none to iasm_none. |
| Rename cw_asm_decls to iasm_decls. |
| Rename cw_asm_asm to iasm_asm. |
| Rename CW_MAX_ARG to IASM_MAX_ARG. |
| Rename TARGET_CW_EXTRA_INFO to TARGET_IASM_EXTRA_INFO. |
| Rename cw_md_Extra_info to iasm_md_Extra_info. |
| Rename cw_md_extra_info to iasm_md_extra_info. |
| * config/darwin-protos.h: Likewise. |
| Rename CW_ASM_SPECIAL_LABEL to IASM_SPECIAL_LABEL. |
| * config/darwin.c: Likewise. |
| Rename darwin_cw_asm_special_label to darwin_iasm_special_label. |
| * i386/darwin.h: Likewise. |
| Rename CW_ASM_REGISTER_NAME to IASM_REGISTER_NAME. |
| * i386/i386-protos.h: Likewise. |
| * i386/i386.c: Likewise. |
| Rename cw_reg_comp to iasm_reg_comp. |
| Rename i386_cw_asm_register_name to i386_iasm_register_name. |
| Rename cw_x86_needs_swapping to iasm_x86_needs_swapping. |
| Rename x86_swap_operands to iasm_x86_swap_operands. |
| Rename cw_is_offset to iasm_is_offset. |
| Rename cw_combine_type to iasm_combine_type. |
| Rename cw_canonicalize_bracket_1 to iasm_canonicalize_bracket_1. |
| Rename cw_canonicalize_bracket to iasm_canonicalize_bracket. |
| Rename x86_canonicalize_operands to iasm_x86_canonicalize_operands. |
| Rename CW_PREFIX_SEP to IASM_PREFIX_SEP. |
| Rename x86_cw_print_prefix to iasm_x86_print_prefix. |
| Rename cw_print_op to iasm_print_op. |
| * i386/i386.h: Likewise. |
| * rs6000/rs6000-protos.h: Likewise. |
| * rs6000/rs6000.c: Likewise. |
| Rename rs6000_cw_asm_register_name to rs6000_iasm_register_name. |
| * rs6000/rs6000.h: Likewise. |
| * rs6000/rs6000.md: Likewise. |
| * function.c: Likewise. |
| * function.h: Likewise. |
| Rename cw_asm_function to iasm_asm_function. |
| Rename cw_asm_noreturn to iasm_noreturn. |
| Rename cw_asm_frame_size to iasm_frame_size. |
| * gimple-low.c: Likewise. |
| * global.c: Likewise. |
| * print-tree.c: Likewise. |
| * reload1.c: Likewise. |
| * scan-decls.c: Likewise. |
| * stmt.c: Likewise. |
| * tree-inline.c: Likewise. |
| * tree.h: Likewise. |
| Rename cw_asm_function_flag to iasm_asm_function_flag. |
| Rename cw_asm_noreturn_flag to iasm_noreturn_flag. |
| |
| 2006-04-25 Devang Patel <dpatel@apple.com> |
| |
| Radar 4505813 |
| * config/i386/mmintrin.h (__m64): Update def. |
| |
| 2005-04-21 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4506160 |
| Bring in Joern Rennecke's fix from mainline: |
| PR middle-end/23135 |
| * reload.c (find_reloads_subreg_address): Pass down TYPE |
| unchanged. Change all callers except find_reloads_toplev. |
| |
| 2006-04-18 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4505290 |
| * config/rs6000/rs6000.c (rs6000_initialize_trampoline): Use |
| pmode for SYMBOL_REFs. |
| |
| 2006-04-18 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4516827 |
| * tree-ssa-loop-ivopts.c (find_interesting_uses_address): |
| Apply Zdenek's fix from mainline (PR 26643). |
| |
| 2006-04-18 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4505290 |
| * config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): New. |
| * config/t-darwin (crt3.o): Use it. |
| * config/rs6000/rs6000.md (call_indirect_nonlocal_sysv, |
| call_nonlocal_sysv, call_value_indirect_nonlocal_sysv, |
| call_value_nonlocal_sysv, sibcall_nonlocal_sysv, |
| sibcall_value_nonlocal_sysv): Use the P macro for 32/64 support. |
| |
| 2006-04-18 Devang Patel <dpatel@apple.com> |
| |
| Radar 4475058 |
| * tree-ssa-forwprop.c (all_uses_are_replacable): Processing of one |
| worklist stmt may remove casts from another worklist item. |
| |
| 2006-04-17 Devang Patel <dpatel@apple.com> |
| |
| Radar 4499790 |
| * c-lex.c (lex_string): Enable pascal strings for wchars. |
| |
| 2006-04-12 Mike Stump <mrs@apple.com> |
| |
| Radar 4477426 4466768 4498501 |
| * c-common.c (cw_is_pseudo): Add. |
| (cw_asm_stmt): Handle _emit, opword and .machine better. |
| (print_cw_asm_operand): Handle .machine better. |
| * config/asm.h (struct cw_md_Extra_info, no_label_map): Add |
| (cw_is_pseudo): Add. |
| * i386/i386.c (cw_x86_needs_swapping): Handle pseduo instructions better. |
| (x86_canonicalize_operands): Likewise. |
| * i386/i386.h (TARGET_CW_EXTRA_INFO): Add. |
| (CW_IMMED_PREFIX): Handle pseduo instructions better. |
| (TARGET_CW_OP_CONSTRAINT): Add missing cmp.*{pd,ps,sd,ss} instructions. |
| |
| 2006-04-06 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4499627 |
| * gcc/config/i386/i386.md (gen_fix_trunc<mode>_i386_fisttp): |
| Remove 4209085 peephole. |
| |
| 2006-03-30 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4493694 |
| * c-opts.c (c_common_handle_option): Ignore -fsave-repository |
| when not using STABS. |
| |
| 2006-03-28 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4321213 |
| * doc/include/sourcecode.texi (Source Code): Rewrite for Subversion. |
| |
| 2006-03-28 Stuart Hastings <stuart@apple.com> |
| |
| * gcc/config/i386/i386.c (preferred_stack_boundary): Add APPLE |
| LOCAL mainline comments. (ix86_function_regparm): Move APPLE |
| LOCAL comments. |
| |
| 2006-03-24 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4443946 |
| * gcc/global.c (global_alloc): Allow -fasm-blocks to clobber |
| the frame pointer. |
| |
| 2006-03-24 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4474259 |
| * gcc/config/i386/i386.c (cw_reg_comp): Use strcasecmp. |
| (x86_canonicalize_operands): Exception for movd. |
| |
| 2006-03-22 Eric Christopher <echristo@apple.com> |
| Eric Albert <ejalbert@apple.com> |
| |
| Radar 4485288 |
| * config/i386/darwin.h (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Emit a |
| @GOTPCREL expression for x86_64. |
| |
| 2006-03-22 Eric Christopher <echristo@apple.com> |
| Devang Patel <dpatel@apple.com> |
| |
| * config/darwin-driver.c (get_arch_name): If arch exists in |
| table do not call NXGetLocalArchInfo(). |
| |
| 2006-03-19 Eric Christopher <echristo@apple.com> |
| Eric Albert <ejalbert@apple.com> |
| |
| * config/i386/darwin.h (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Copy from |
| config/darwin.h and disable for x86_64. |
| * config/rs6000/darwin.h (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Copy from |
| config/darwin.h. |
| * config/darwin.h (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Remove. |
| |
| 2006-03-19 Eric Albert <ejalbert@apple.com> |
| |
| * config/i386/darwin.h (FUNCTION_PROFILER): Disable stub generation |
| for 64-bit. |
| |
| 2006-03-12 Eric Christopher <echristo@apple.com> |
| |
| * config.gcc: Remove x86_64 specific changes. |
| * config/i386/darwin32.h: Remove. |
| * config/i386/darwin64.h: Ditto. |
| * config/i386/t-darwin32: Ditto. |
| * config/i386/t-darwin64: Ditto. |
| * config/i386/t-darwin: Add m64 multilib. |
| * config/i386/darwin.h: Revert previous x86_64 specific changes. |
| (TARGET_64BIT): Define. |
| (PTRDIFF_TYPE): Ditto. |
| (MAX_BITS_PER_WORD): Ditto. |
| (TARGET_OS_CPP_BUILTINS): Add 64-bit support. |
| (ASM_SPEC): Ditto. |
| (SUBTARGET_EXTRA_SPECS): Ditto. |
| (ASM_QUAD): Define. |
| * config/i386/i386.c (processor_alias_table): Add 64bit to possible |
| pentium-m and prescott chips. |
| * config/darwin-driver.c (arch_config_guess_map): Move x86_64 to i686 |
| processor. |
| |
| 2006-03-03 Eric Christopher <echristo@apple.com> |
| |
| * config/i386/i386.h (JUMP_TABLES_IN_TEXT_SECTION): Fix typo. |
| * config/i386/darwin64.h (SIZE_TYPE): Redefine. |
| (PTRDIFF_TYPE): Ditto. |
| (WCHAR_TYPE): Ditto. |
| (WCHAR_TYPE_SIZE): Ditto. |
| * config/i386/i386.c (override_options): Clean up flag_pic. |
| (ix86_function_ok_for_sibcall): Fix conditional for TARGET_MACHO. |
| (ix86_expand_move): Ditto. |
| |
| 2006-03-22 Eric Christopher <echristo@apple.com> |
| |
| Radar 4473966 |
| * config/darwin-driver.c (fnasm_seen): Remove. |
| (do_nasm): Ditto. |
| (main): Remove check for fnasm. Remove call. |
| |
| 2006-03-22 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4484188 |
| * config/darwin.h (STARTFILE_SPEC): Don't use -l for crt3.o. |
| * config/darwin-crt3.c: Rewrite entire file. |
| |
| 2006-03-15 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 3992198 |
| * config/i386/darwin.h (C_COMMON_OVERRIDE_OPTIONS): New. |
| * config/rs6000/darwin.h (C_COMMON_OVERRIDE_OPTIONS): Call |
| SUBTARGET_C_COMMON_OVERRIDE_OPTIONS. |
| * config/darwin.h (SUBTARGET_C_COMMON_OVERRIDE_OPTIONS): NEw. |
| * config/darwin-crt3.c: Be empty if __PIC__ is not defined. |
| |
| 2006-03-15 Devang Patel <dpatel@apple.com> |
| |
| Radar 4479522 |
| * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Do not |
| enable Altivec by default when deployment target is Mac OSX 10.5 |
| or higher. |
| |
| 2006-03-13 Mike Stump <mrs@apple.com> |
| |
| Radar 4230099 |
| * c.opt (fvisibility-ms-compat): Add. |
| * doc/invoke.texi (-fvisibility-ms-compat): Add. |
| |
| 2006-03-13 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4474655 |
| * gcc/config/i386/i386.c (override_options): Remove |
| APPLE LOCAL for ix86_preferred_stack_boundary. |
| |
| 2006-03-07 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4457939 |
| * gcc/config/i386/i386.c (ix86_darwin_init_expanders): New. |
| * gcc/config/i386/darwin.h (ix86_darwin_init_expanders): Declare. |
| (INIT_EXPANDERS): Define. |
| |
| 2006-03-07 Mike Stump <mrs@apple.com> |
| |
| Radar 4408780 |
| * c-common.c (cw_type_for): Add support for r*, x* and m* registers. |
| * config/i386/i386.h (TARGET_CW_OP_CONSTRAINT): Add or fix up |
| addps, addsd, addss, addsubpd, addsubps, andnpd, andnps, andpd, |
| andps, comisd, comiss, cvtdq2pd, cvtdq2ps, cvtpd2dq, cvtpd2pi, |
| cvtpd2ps, cvtpi2pd, cvtpi2ps, cvtps2dq, cvtps2pd, cvtps2pi, |
| cvtsd2ss, cvtsi2sd, cvtsi2ss, cvtss2sd, cvttpd2dq, cvttpd2pi, |
| cvttps2dq, cvttps2pi, divpd, divps, divsd, divss, fidivl, fidivrl, |
| paddq, pextrw, pinsrw, psubq, psubsb, psubsw, psubw, shld and |
| shrd. |
| |
| 2006-03-03 Stuart Hastings <stuart@apple.com> |
| |
| * Radar 4425360 |
| * gcc/tree-ssa-dse.c (dse_optimize_stmt): Update from FSF trunk (see below). |
| |
| 2005-12-16 Jeff Law <law@redhat.com> |
| |
| * tree-ssa-dse.c (dse_optimize_stmt): Correctly handle PHI nodes which |
| represent a use and definition of the same SSA_NAME. |
| |
| 2006-02-28 Stuart Hastings <stuart@apple.com> |
| |
| * gcc/function.c (APPLE LOCAL) Fix. |
| * gcc/config/i386/darwin.h (BASIC_STACK_BOUNDARY): Delete. |
| * gcc/config/i386/i386.c (BASIC_STACK_BOUNDARY): Delete. |
| (APPLE LOCAL) Fix. |
| |
| 2006-02-28 Devang Patel <dpatel@apple.com> |
| Dorit Nuzman <dorit@apple.com> |
| |
| Radar 4375453 |
| * targhooks.h (vector_alignment_reachable): New. |
| * targhooks.c (default_vector_alignment_reachable): New. |
| * target.h (gcc_target): Add vector_alignment_reachable. |
| * target-def.h (TARGET_VECTOR_ALIGNMENT_REACHABLE): New. |
| * tree-vect-analyze.c (vect_enhance_data_refs_alignment): Avoid |
| peeling when natural alignment is not reachable due to known |
| misalignment. Use target hook to check unknown alignment. |
| * config/rs6000.c (TARGET_VECTOR_ALIGNMENT_REACHABLE, |
| rs6000_vector_alignment_reachable): New. |
| |
| 2006-02-27 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4356747 |
| (marked APPLE LOCAL "4356747 stack realign") |
| * gcc/config/i386/i386.c |
| (ix86_force_align_arg_pointer_string): Tweak decl. |
| |
| 2006-02-27 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4356747 |
| (marked APPLE LOCAL "4356747 stack realign") |
| * gcc/rtl.h (gen_tmp_stack_mem): Declare. |
| Fix up previous ChangeLog entry. |
| |
| 2006-02-27 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4356747 |
| (marked APPLE LOCAL "4356747 stack realign") |
| * doc/extend.texi (force_align_arg_pointer): Document. |
| * doc/invoke.texi (-mstackrealign): Document. |
| * config/i386/i386.h (TARGET_OPTIONS): Add -mstackrealgin. |
| * config/i386/i386.c (ix86_force_align_arg_pointer): New. |
| (ix86_force_align_arg_pointer_string): New. |
| (ix86_attribute_table): Add "force_align_arg_pointer" attribute. |
| (ix86_function_regparm): Compensate for new attribute. |
| (ix86_internal_arg_pointer): Check for new attribute. |
| |
| 2005-11-02 Richard Henderson <rth@redhat.com> |
| |
| (marked APPLE LOCAL "mainline 2006-02-17 4356747 stack realign") |
| PR target/9350 |
| PR target/24374 |
| * dwarf2out.c (dwarf2out_reg_save_reg): New. |
| (dwarf2out_frame_debug_expr): Return after dwarf_handle_frame_unspec. |
| * function.c (assign_parms): Use calls.internal_arg_pointer. |
| (expand_main_function): Remove FORCE_PREFERRED_STACK_BOUNDARY_IN_MAIN |
| code. |
| * target-def.h (TARGET_INTERNAL_ARG_POINTER): New. |
| (TARGET_CALLS): Add it. |
| * target.h (struct gcc_target): Add calls.internal_arg_pointer. |
| * targhooks.c (default_internal_arg_pointer): New. |
| * targhooks.h (default_internal_arg_pointer): Declare. |
| * tree.h (dwarf2out_reg_save_reg): Declare. |
| * doc/tm.texi (FORCE_PREFERRED_STACK_BOUNDARY_IN_MAIN): Remove. |
| * config/i386/i386.c (dbx_register_map): Add return column. |
| (dbx64_register_map, svr4_dbx_register_map): Likewise. |
| (TARGET_INTERNAL_ARG_POINTER, ix86_internal_arg_pointer): New. |
| (TARGET_DWARF_HANDLE_FRAME_UNSPEC, ix86_dwarf_handle_frame_unspec): New. |
| (ix86_function_ok_for_sibcall): Disable if force_align_arg_pointer. |
| (ix86_save_reg): Save force_align_arg_pointer. |
| (ix86_emit_save_regs): Make regno unsigned. |
| (ix86_emit_save_regs_using_mov): Likewise. |
| (ix86_expand_prologue): Handle force_align_arg_pointer. |
| (ix86_expand_epilogue): Likewise. |
| * config/i386/i386.h: (dbx_register_map): Update. |
| (dbx64_register_map, svr4_dbx_register_map): Update. |
| (struct machine_function): Add force_align_arg_pointer. |
| * config/i386/i386.md (UNSPEC_REG_SAVE, UNSPEC_DEF_CFA): New. |
| (UNSPEC_TP, UNSPEC_TLS_GD, UNSPEC_TLS_LD_BASE): Renumber. |
| (TARGET_PUSH_MEMORY peepholes): Disable if RTX_FRAME_RELATED_P. |
| |
| 2006-02-27 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4448096 |
| * gcc/config/i386/i386.md (fixuns_truncdfsi2, |
| fixuns_truncsfsi2, floatunsdidf2): Disable for 4-byte aligned stack. |
| * gcc/config/i386/i386.c (override_options): Set 4-byte |
| aligned stack for -fapple-kext. |
| (ix86_expand_convert_DF2SI_sse, ix86_expand_convert_SF2SI_sse, |
| ix86_expand_convert_DI2DF_sse): assert a 16-byte aligned stack. |
| * gcc/doc/invoke.texi (-fapple-kext): Document new |
| -fapple-kext behavior. |
| |
| 2006-02-24 Mike Stump <mrs@apple.com> |
| |
| Radar 4456673 |
| * c-common.c (print_cw_asm_operand): Revert change from |
| Radar 4399388 as it breaks C++ ppc. |
| |
| 2006-02-24 Mike Stump <mrs@apple.com> |
| |
| Radar 4298040 |
| * config/i386/i386.h (TARGET_CW_OP_CONSTRAINT): Improve fdivr, |
| fiadd, ficom, ficomp, fidiv, fidivr fild, fimul, fist, fistp, |
| fisttp, fisub, fisubr, fmul, idiv, inc, lds, les, lfs, lgs, lss. |
| Remove fildl, fildll, fistpll, fisttpll. |
| * config/i386/i386.c (x86_canonicalize_operands): Add DImode |
| support. Allow mov to be used on floats. |
| * c-common.c (m1, m2, m4, m2m4): Remove. |
| (m64, m16m32, m16m32m64, r16r32, r16r32r64): Add. |
| (rm64, rm8rm16rm32rm64): Add. |
| (print_cw_asm_operand, case INDIRECT_REF): Handle all |
| INDIRECT_REFs uniformly. |
| |
| 2006-02-23 Eric Christopher <echristo@apple.com> |
| |
| Radar 4081414 |
| * global.c (local_reg_weight): Make HOST_WIDE_INT. |
| (global_alloc): Remove casts to double for local_reg_weight. |
| (find_reg): Use integer temporary for weight computation. |
| |
| 2006-02-21 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4444941 |
| * dwarf2out.c (gen_subprogram_die): Add DW_AT_MIPS_linkage_name |
| when it might not have been added previously. |
| |
| 2006-02-16 Mike Stump <mrs@apple.com> |
| |
| Radar 4419735 |
| * c-common.c (cw_build_bracket): Add support for [word ptr esi]. |
| (cw_ptr_conv): Likewise. |
| * config/i386/i386.c (cw_canonicalize_bracket): Likewise. |
| (cw_canonicalize_bracket_1): Likewise. |
| (cw_combine_type): Add. |
| |
| (x86_canonicalize_operands): Don't add a modifier for |
| fstcw/fnstcw. |
| |
| 2006-02-14 Eric Christopher <echristo@apple.com> |
| |
| Radar 4331439 |
| * config/rs6000/rs6000.c (rs6000_handle_longcall_attribute): |
| Disable for 64-bit Mach-O. |
| * config/rs6000/darwin.h (SUBTARGET_OPTIONS): Disable longcall |
| only for Mach-O. |
| |
| 2006-02-14 Mike Stump <mrs@apple.com> |
| |
| Radar 4443942 |
| * config/i386/i386.c (x86_canonicalize_operands): Don't add a |
| modifier for movq/movntq. |
| |
| 2006-02-14 Mike Stump <mrs@apple.com> |
| |
| Radar 4415216 |
| * config/i386/i386.c (additional_names): Add. |
| (cw_reg_comp): Add. |
| (i386_cw_asm_register_name): Add support for upper case register |
| names. |
| |
| 2006-02-14 Josh Conner <jconner@apple.com> |
| |
| Radar 4373419 |
| PR target/25376 |
| * varasm.c (function_section): Don't call select_section if a |
| section name is present. |
| |
| 2006-02-13 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4408439 |
| * opts.c (set_debug_level): DWARF is now best for GDB. |
| |
| 2006-02-10 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4420531 |
| * doc/invoke.texi: Warn that -ftree-loop-linear is buggy. |
| |
| 2006-02-10 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4430139 4431497 |
| * tree.h: Remove reversed_flag. |
| (record_layout_info_s): Add among_reversed_bitfields, |
| reversed_bitfield_type_size, reversed_bitfield_bitpos. |
| * stor-layout.c (place_field): Rewrite |
| reversed-bitfield logic to use them. |
| |
| 2006-02-09 Devang Patel <dpatel@apple.com> |
| |
| Radar 4435472 |
| * config/darwin-driver.c (main.c): Check --save-temps. |
| |
| 2006-02-09 Mike Stump <mrs@apple.com> |
| |
| Radar 4399388 |
| * config/i386/i386.c (cw_canonicalize_bracket_1): Add. |
| (cw_canonicalize_bracket): Improve. |
| (cw_is_offset): Add NEGATE_EXPR support. |
| (cw_print_op): Improve BRACKET_EXPR handling. |
| * c-common.c (print_cw_asm_operand): Add parens around |
| NEGATE_EXPR. |
| |
| 2006-02-08 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4176531 (revised version of 27jan06 patch) |
| * config/i386/i386.md (fixuns_trunc<mode>si2, |
| fixuns_truncdfhi2, fixuns_truncsfhi2): New. |
| (floatunsdidf2): Allow for 32-bit when optimize_size is off. |
| * config/i386/i386-protos.h |
| (ix86_expand_convert_DF2SI_sse, ix86_expand_convert_SF2SI_sse, |
| ix86_expand_convert_DI2DF_sse): New. |
| * config/i386/i386.c (ix86_expand_vector_move2, |
| gen_2_4_rtvec, ix86_expand_convert_DF2SI_sse, |
| ix86_expand_convert_SF2SI_sse, ix86_expand_convert_DI2DF_sse): New. |
| (x86_emit_floatuns): Call ix86_expand_convert_DI2DF_sse. |
| |
| 2006-02-08 Mike Stump <mrs@apple.com> |
| |
| Radar 4407059 |
| * c-lex.c (c_lex_with_flags): Only recognize "offset" when doing |
| x86 assembly. |
| |
| 2006-02-03 Mike Stump <mrs@apple.com> |
| |
| Radar 4432782 |
| * config/i386/i386.c (x86_canonicalize_operands): A movz with 2 |
| operands of the same size is converted to a normal mov. |
| |
| 2006-02-02 Mike Stump <mrs@apple.com> |
| |
| Radar 4433955 |
| * c-common.c (cw_asm_get_register_var): Remove static. |
| (pointer_int_sum): Build up ARRAY_REFs when possible. |
| * config/i386/i386.c (cw_canonicalize_bracket): Let forms with |
| pointer types through to optimizer and print_operand. |
| (cw_print_op): Likewise. |
| * config/asm.h (cw_asm_get_register_var): Add. |
| * c-common.c (pointer_int_sum): Strip NOPs for C++. |
| |
| 2006-02-01 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4429317 |
| (SWB regressions; back out patch for Radar 4176531.) |
| * config/i386/i386.md (fixuns_trunc<mode>si2, |
| fixuns_truncdfhi2, fixuns_truncsfhi2): Remove. |
| (floatunsdidf2): Restore to previous. |
| * config/i386/i386-protos.h |
| (ix86_expand_convert_DF2SI_sse, ix86_expand_convert_SF2SI_sse, |
| ix86_expand_convert_DI2DF_sse): Remove. |
| * config/i386/i386.c (ix86_expand_vector_move2, |
| gen_2_4_rtvec, ix86_expand_convert_DF2SI_sse, |
| ix86_expand_convert_SF2SI_sse, ix86_expand_convert_DI2DF_sse): Remove. |
| (x86_emit_floatuns): Remove call to ix86_expand_convert_DI2DF_sse. |
| |
| 2006-02-01 Devang Patel <dpatel@apple.com> |
| |
| Radar 4208007 |
| * tree-vectorizer.c (vect_print_dump_info): Add vect_dump check. |
| |
| 2006-01-31 Devang Patel <dpatel@apple.com> |
| |
| Radar 4382844 |
| * tree-data-ref.c (analyze_array, init_data_ref, |
| find_data_references_in_loop): Set DR_TYPE. |
| * tree-data-ref.h (data_ref_type): New. |
| (struct data_reference): New member, data reference type. |
| (DR_TYPE): New. |
| * tree-vect-analyze.c (record_ptr_differ_p, |
| vect_base_object_differ_p): New. |
| (vect_base_addr_differ_p): Check base objects. |
| |
| 2006-01-30 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4176531 |
| * config/i386/i386.c (ix86_expand_convert_DF2SI_sse): |
| Fixes for -Werror. |
| |
| 2006-01-28 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4420068 |
| * stor-layout.c (place_field): don't adjust |
| rli->bitpos and rli->offset after a non-bitfield |
| whose type is zero-sized. |
| |
| 2006-01-27 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4176531 |
| * config/i386/i386.md (fixuns_trunc<mode>si2, |
| fixuns_truncdfhi2, fixuns_truncsfhi2): New. |
| (floatunsdidf2): Allow for 32-bit when optimize_size is off. |
| * config/i386/i386-protos.h |
| (ix86_expand_convert_DF2SI_sse, ix86_expand_convert_SF2SI_sse, |
| ix86_expand_convert_DI2DF_sse): New. |
| * config/i386/i386.c (ix86_expand_vector_move2, |
| gen_2_4_rtvec, ix86_expand_convert_DF2SI_sse, |
| ix86_expand_convert_SF2SI_sse, ix86_expand_convert_DI2DF_sse): New. |
| (x86_emit_floatuns): Call ix86_expand_convert_DI2DF_sse. |
| |
| 2006-01-23 Devang Patel <dpatel@apple.com> |
| |
| Radar 4334498 |
| * dbxout.c (dbxout_init): Queue void type. |
| |
| 2006-01-23 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4390273 |
| * cfgloopmanip.c (create_loop_notes): Handle case |
| where we move a block outside the loop into the loop, |
| but the preceding block (the latch) was not moved. |
| |
| 2006-01-20 Mike Stump <mrs@apple.com> |
| |
| Radar 4381918 |
| * c-decl.c (start_function): Avoid warnings about lack of return |
| in asm functions. |
| * config/i386/i386.c (ix86_save_reg): Don't save any registers for |
| asm functions. |
| (ix86_expand_prologue): Don't adjust the stack for asm functions. |
| (ix86_expand_epilogue): Don't generate most of the epilogue for an |
| asm function, but do generate a ret. |
| * function.c (assign_parms): Don't avoid doing work for asm |
| functions. |
| (expand_function_start): We don't need DECL_RTL for asm functions. |
| (expand_function_end): Use a naked return for asm functions. |
| (expand_function_end): |
| * gimple-low.c (lower_function_body): Don't generate a return; for |
| asm functions. |
| * tree-inline.c (inline_forbidden_p): Don't inline asm functions on ppc. |
| |
| 2006-01-18 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4405429 |
| * global.c (find_tied_stack_pseudo): Insist on a valid |
| memory address (no pseudos). |
| |
| 2006-01-17 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4383509 |
| * dwarf2out.c (debug_frame_section): New. |
| (output_call_frame_info): Use debug_frame_section. Pass it to |
| dw2_asm_output_offset. |
| (output_die): Pass appropriate section to dw2_asm_output_offset. |
| (output_compilation_unit_header): Likewise. |
| (output_pubnames): Likewise. |
| (output_aranges): Likewise. |
| * dwarf2asm.h (dw2_asm_output_offset): Add section parameter. |
| * dwarf2asm.c (dw2_asm_output_offset): Add base section parameter. |
| Pass to ASM_OUTPUT_DWARF_OFFSET. |
| * doc/tm.texi (SDB and DWARF): Add extra parameter to |
| ASM_OUTPUT_DWARF_OFFSET. Use @var to indicate metavariables. |
| |
| 2006-01-13 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4386531 |
| * stab.def (N_OSO): New. |
| * dbxout.c (dbxout_init): Output N_OSO stab always. |
| |
| 2006-01-13 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4386991 |
| * cp/typeck2.c (split_nonconstant_init): Remove APPLE LOCAL 4285232. |
| |
| 2006-01-13 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4401223 4401224 |
| * tree.h (record_layout_info_s): Add bitfield_seen. |
| * stor-layout.c (start_record_layout): Initialize it. |
| (place_field): When reversing bitfields: consider |
| rli->offset when computing current alignment; |
| maintain rli->bitfield_seen; adjust rli->bitpos and |
| rli_offset after a non-bitfield, but not if we saw |
| a bitfield earlier. |
| |
| 2006-01-03 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4392520 |
| * config/darwin.h (FRAME_BEGIN_LABEL): Use Lname if not for EH. |
| |
| 2005-12-22 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4387676 4388773 |
| * tree.h (TREE_FIELDS_REVERSED): Remove. |
| * varasm.c (output_constructor): Remove reference to it. |
| * stor-layout.c (place_field): Ditto. |
| |
| 2005-12-22 Stuart Hastings <stuart@apple.com> |
| |
| * config/darwin.c (machopic_force_indirect_call_target): |
| Remove extra APPLE LOCAL marker. |
| * config/rs6000/rs6000.c (output_call): Remove blank line. |
| |
| 2005-12-21 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4380289, 4299630 |
| * config/rs6000/rs6000.c (add_compiler_branch_island): |
| Remove one parameter. (rs6000_output_mi_thunk): Update call |
| to add_compiler_branch_island. (macho_branch_islands): |
| Rewrite. (output_call): Rewrite. |
| * config/darwin-protos.h |
| (machopic_force_indirect_call_target): New. |
| * config/darwin.c (machopic_force_stub): New. |
| (machopic_force_indirect_call_target): Use it. |
| (machopic_indirect_call_target): Ditto. |
| |
| 2005-12-20 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4385068 |
| * global.c (expand_preferences): Reduce aggressiveness |
| of previous preference enhancement on x86, and disable |
| altogether on ppc. |
| |
| 2005-12-15 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4370117 |
| * config/darwin.h (DEBUG_FRAME_SECTION): Mark as 'regular,debug'; |
| move to __DWARF segment. |
| (DEBUG_INFO_SECTION): Move to __DWARF segment. |
| (DEBUG_ABBREV_SECTION): Move to __DWARF segment. |
| (DEBUG_ARANGES_SECTION): Move to __DWARF segment. |
| (DEBUG_MACINFO_SECTION): Move to __DWARF segment. |
| (DEBUG_LINE_SECTION): Move to __DWARF segment. |
| (DEBUG_LOC_SECTION): Move to __DWARF segment. |
| (DEBUG_PUBNAMES_SECTION): Move to __DWARF segment. |
| (DEBUG_STR_SECTION): Move to __DWARF segment. |
| (DEBUG_RANGES_SECTION): Move to __DWARF segment. |
| * config/darwin.c (darwin_emit_unwind_label): Don't emit global |
| symbols in debug sections. |
| |
| 2005-12-14 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4278774 |
| * c-common.def: Add new expression code AT_ENCODE_EXPR. |
| |
| 2005-12-14 Eric Christopher <echristo@apple.com> |
| |
| Radar 4363479 |
| * tree-ssa-forwprop.c (all_uses_are_replacable): Fold replaced |
| statements. |
| |
| 2005-12-14 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4271691 (partial) |
| * global.c (expand_preferences): Enhance pseudo |
| preferences for vectors. |
| * reload1.c (reload): Make sure reused stack slots |
| are expanded correctly. |
| |
| 2005-12-13 Mike Stump <mrs@apple.com> |
| |
| * Revert 2005-12-07 Devang Patel <dpatel@apple.com> Radar 4137741 |
| |
| 2005-12-13 Stuart Hastings <stuart@apple.com> |
| |
| * config/rs6000/rs6000.c (macho_branch_islands): Add APPLE LOCAL. |
| |
| 2005-12-12 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4373486 |
| |
| * config/darwin.h (objc_section_init): Remove initialization of |
| C* sections. |
| |
| 2005-12-12 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4261575 |
| |
| * config/i386/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Undid the setting for |
| darwin_constant_cfstrings. Tests need be modified instead. |
| |
| 2005-12-12 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4261575 |
| |
| * config/i386/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Set default value |
| for darwin_constant_cfstrings |
| |
| 2005-12-09 Mike Stump <mrs@apple.com> |
| |
| Radar 4371551 |
| * c-common.c (print_cw_asm_operand): Handle complex operands better. |
| (cw_simple_expr): New. |
| * c-typeck.c (build_array_ref): Also handle exprs with no type. |
| * config/i386/i386.c (cw_canonicalize_bracket): Add support for |
| more complex offsets. |
| |
| 2005-12-09 Zdenek Dvorak <rakdver@gcc.gnu.org> |
| Dale Johannesen <dalej@apple.com> |
| |
| Radar 3791237 |
| * toplev.c (process_options): Make -funroll-loops |
| turn on -fweb. |
| * doc/invoke.texi (-fsplit-ivs-in-unroller, -fweb, |
| -funroll-loops): Document this behavior. |
| |
| 2005-12-09 Zdenek Dvorak <rakdver@gcc.gnu.org> |
| |
| Radar 4233898 |
| * tree-chrec.c (chrec_fold_multiply_poly_poly): Associate chrecs |
| correctly. |
| |
| 2005-12-09 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4299630 |
| * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Fixed APPLE LOCAL. |
| |
| 2005-12-08 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4285232 |
| * cp/typeck2.c (split_nonconstant_init): Don't |
| zero out object which is fully initialized. |
| |
| 2005-12-08 Devang Patel <dpatel@apple.com> |
| Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4298879 |
| * config/rs6000/darwin.h (PROCESSOR_DEFAULT): Tune for G5 instructions |
| by default when not optimizing for size. |
| (SUBTARGET_OVERRIDE_OPTIONS): Enable Altivec by default when deployment |
| target is Mac OSX 10.5 or higher. |
| |
| 2005-12-07 Devang Patel <dpatel@apple.com> |
| |
| Radar 4333194 |
| * tree-vect-analyze.c (vect_compute_data_ref_alignment): Check |
| misalignment where natural alignment is not reachable using loop |
| peeling. |
| |
| 2005-12-07 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4370117 |
| * config/darwin.h (DEBUG_INFO_SECTION): Mark as 'debug'. |
| (DEBUG_ABBREV_SECTION): Mark as 'debug'. |
| (DEBUG_ARANGES_SECTION): Mark as 'debug'. |
| (DEBUG_MACINFO_SECTION): Mark as 'debug'. |
| (DEBUG_LINE_SECTION): Mark as 'debug'. |
| (DEBUG_LOC_SECTION): Mark as 'debug'. |
| (DEBUG_PUBNAMES_SECTION): Mark as 'debug'. |
| (DEBUG_STR_SECTION): Mark as 'debug'. |
| (DEBUG_RANGES_SECTION): Mark as 'debug'. |
| |
| 2005-12-07 Devang Patel <dpatel@apple.com> |
| Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 4137741 |
| * Makefile.in (c-lex.o): Revert langhooks.h dependency. |
| (langhooks.o): Revert debug.h dependency. |
| * c-lex.c: Do not include langhooks.h. |
| (fe_file_change): Revert lang_hooks calls; issue debug_hooks |
| calls only if defer_file_change_debug_hooks flag is cleared. |
| (c_lex_with_flags): Propagate line number information for |
| CPP_BINCL and CPP_EINCL tokens. |
| * langhooks-def.h: Revert Radar 4133801 changes. |
| * langhooks.c: Likewise. |
| * langhooks.h: Likewise. |
| |
| 2005-12-07 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4349512 |
| * tree-ssa-forwprop.c (substitute_single_use_vars): |
| Check that COND_EXPRs being substituted into have the |
| expected form. |
| |
| 2005-12-06 Stuart Hastings <stuart@apple.com> |
| |
| * config/rs6000/rs6000.md (longjump): New pattern. |
| * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Use it. |
| |
| 2005-12-06 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4332318 |
| * config/i386/sse.md (sse_movhlps): Reverse operands for |
| 2nd and 3rd alternatives. |
| |
| 2005-12-05 Mike Stump <mrs@apple.com> |
| |
| Radar 4357979 |
| * doc/invoke.texi (C Dialect Options): Improve -fnested-functions wording. |
| * doc/extend.texi (Nested Functions): Note that on darwin nested |
| functions are off by default. |
| |
| 2005-12-03 Mike Stump <mrs@apple.com> |
| |
| * c-parse.in (nested_function): Don't give two errors for nested functions. |
| (notype_nested_function): Likewise. |
| |
| 2005-12-02 Mike Stump <mrs@apple.com> |
| |
| Radar 4363798 |
| * config/i386/i386.c (x86_canonicalize_operands): Break out |
| bracket canonicalization from here... |
| * config/i386/i386.c (cw_canonicalize_bracket): to here. Add more |
| canonicalizations. |
| (cw_is_offset): Add offsets built with PLUS_EXPR and MINUS_EXPR. |
| |
| 2005-12-01 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4350099 |
| * stor-layout.c (place_field): Keep TREE_FIELDS_REVERSED |
| in the field nodes, not the RECORD node. |
| * varasm.c (output_constructor): Ditto. |
| |
| 2005-12-01 Alan Modra <amodra@bigpond.net.au> |
| |
| Radar 4345871 |
| ` PR middle-end/24950 |
| * expmed.c (store_bit_field): Don't attempt to insv a field |
| larger than the reg. |
| |
| 2005-11-30 Mike Stump <mrs@apple.com> |
| |
| Radar 4357979 |
| * c-parse.in (nested_function): Add -fnested-functions to turn on |
| nested function support. |
| (notype_nested_function): Likewise. |
| * c.opt (-fnested-functions): Likewise. |
| * doc/invoke.texi (C Dialect Options): Likewise. |
| * config/darwin.h (LINK_COMMAND_SPEC): Pass -allow_stack_execute |
| when nested functions are on. |
| |
| 2005-11-30 Dale Johannesen <dalej@apple.com> |
| Andrew Pinski <pinskia@physics.uc.edu> |
| |
| Radar 4347034 |
| * combine.c (find_split_point): Sign extend bitmask |
| when changing bitfield assignment to IOR of AND. |
| |
| 2005-11-29 Mike Stump <mrs@apple.com> |
| |
| Radar 4358678 |
| * config/i386/i386.h (TARGET_CW_OP_CONSTRAINT): Add "r" to jmp constraint. |
| |
| 2005-11-28 Mike Stump <mrs@apple.com> |
| |
| Radar 4357008 |
| * varasm.c (darwin_constant_cfstring_p): Add. |
| * config/i386/i386.c (legitimate_constant_p): Fix C building on linux. |
| (legitimate_address_p): Likewise. |
| (legitimize_address): Likewise. |
| (ix86_expand_move): Likewise. |
| (x86_field_alignment): Likewise. |
| |
| 2005-11-18 Eric Christopher <echristo@apple.com> |
| |
| Radar 4324160 |
| * config/i386/i386.md (*zero_extendqihi2_movzbw): Avoid partial |
| register stalls by zero extending to the full register. |
| |
| 2005-11-17 Devang Patel <dpatel@apple.com> |
| |
| Radar 4343764 |
| * objc/lang-specs.h: Process asm specs while creating symbol repository. |
| * objcp/lang-specs.h: Process asm specs while creating symbol repository. |
| * cp/lang-specs.h: Process asm specs while creating symbol repository. |
| |
| 2005-11-17 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4321079 |
| * global.c (remove_invalidated_death_notes): New. |
| * reload1.c (reload): Call it. |
| |
| 2005-11-15 Mike Stump <mrs@apple.com> |
| |
| Radar 4344359 |
| * c-common.c (cw_extra_clobbers): Add. |
| (struct cw_op_clobber): Add. |
| (CW_MAX_CLOBBERS): Add. |
| (TARGET_CW_EXTRA_CLOBBERS): Add. |
| (cw_op_clobber_comp): Add. |
| (cw_asm_stmt): Add call to cw_extra_clobbers. |
| * config/i386/i386.h (TARGET_CW_EXTRA_CLOBBERS): Add. |
| |
| 2005-11-15 Dale Johannesen <dalej@apple.com> |
| |
| * config/darwin-c.c (darwin_pragma_call_on_load): |
| Give an error for 64-bit targets. |
| (darwin_pragma_call_on_unload): Ditto. |
| |
| 2005-11-15 Dale Johannesen <dalej@apple.com> |
| |
| * cfghooks.c (split_block): Copy loop_father. |
| * cfgloopmanip.c (create_loops_notes): Create preheaders. |
| |
| 2005-11-14 Dale Johannesen <dalej@apple.com> |
| |
| * expmed.c (store_bit_field): Add offset unconditionally for |
| memory targets. |
| (extract_bit_field): Don't force extzv or extv operand into |
| a register if field is too big. |
| |
| 2005-11-11 Evan Cheng <evan.cheng@apple.com> |
| |
| Radar 4299173 |
| * loop-invariant.c (find_invariant_insn): Find more loop |
| invariant insns. |
| |
| 2005-11-10 Mike Stump <mrs@apple.com> |
| |
| Radar 4300193 |
| * c-common.c (cw_num_constraints): Add. |
| (cw_set_constraints): Add. |
| (cw_asm_stmt): Call cw_set_constraints to update contraints. |
| (cw_type_for): Add. |
| (print_cw_asm_operand): Transform registers into VAR_DECLs for x86. |
| |
| * config/i386/i386.h (TARGET_CW_OP_CONSTRAINT): xchg's 2nd arg is an update. |
| |
| 2005-11-10 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4321079 |
| * local-alloc.c (block_alloc): Disable local RA for vectors. |
| * global.c (pseudo_preferences): New. |
| (TEST_PSEUDO_PREF): New. |
| (SET_PSEUDO_PREF): New. |
| (CLEAR_PSEUDO_PREF): New. |
| (global_alloc): Allocate, free pseudo_preferences. Mark pseudo- |
| preferenced regs as nonconflicting when each is assigned to just once. |
| (expand_preferences): Apply transitive property to pseudo_preferences. |
| (find_reg): Propagate pseudo_preferences when a pseudo is assigned a |
| register. |
| (mirror_conflicts): Make pseudo_preferences symmetrical, like conflicts. |
| (set_preference): Look under SUBREG for vector-vector copies. Treat |
| these as creating a preference. |
| (find_tied_stack_pseudo): New. |
| (dump_conflicts): Dump pseudo_preferences and copy preferences. |
| * reload1.c (from_global): New. |
| (reload): Save it. |
| (alter_reg): Use it. Ask GRA for a stack slot already used by a |
| pseudo-preferenced register, before creating a new one. |
| |
| 2005-11-10 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4321079 |
| * cfgloopmanip.c: Include option.h. |
| (straighten_blocks): New. |
| (create_loop_notes): Call it. Look for and straighten |
| a specific 2-block loop pattern. |
| * Makefile.in (cfgloopmanip.o): Add options.h dependency. |
| |
| 2005-11-08 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4330422 |
| |
| * c-common.h (objc_non_volatilized_type): New declaration |
| * stub-objc.c (objc_non_volatilized_type): New stub. |
| |
| 2005-11-03 Evan Cheng <evan.cheng@apple.com> |
| |
| * config/i386/i386-protos.h (standard_sse_constant_opcode) Declare |
| * config/i386/i386.c (standard_sse_constant_p) Check for vector |
| constant -1. |
| (standard_sse_constant_opcode) New function to return the opcode |
| associated with standard_sse_constant_p. |
| (ix86_expand_vector_move) Use standard_sse_constant_p. |
| * config/i386/predicates.md (vector_move_operand) Use |
| standard_sse_constant_p. |
| (nonimmediate_or_0_operand) Return true if operand is a nonimmediate |
| or a constant zero. |
| * config/i386/sse.md (*mov<mode>_internal) Use |
| standard_sse_constant_opcode. |
| (*movv4sf_internal) Use standard_sse_constant_opcode. |
| (*movv2df_internal) Use standard_sse_constant_opcode. |
| (sse_movlhps) Replace vector_move_operand with |
| nonimmediate_or_0_operand. |
| (*sse_concatv2sf) Replace vector_move_operand with |
| nonimmediate_or_0_operand. |
| (*vec_setv4sf_0) Replace vector_move_operand with |
| nonimmediate_or_0_operand. |
| (sse2_loadlpd) Replace vector_move_operand with |
| nonimmediate_or_0_operand. |
| (*vec_concatv2df) Replace vector_move_operand with |
| nonimmediate_or_0_operand. |
| (sse2_loadld) Replace vector_move_operand with |
| nonimmediate_or_0_operand. |
| (*vec_concatv2di) Replace vector_move_operand with |
| nonimmediate_or_0_operand. |
| * testsuite/gcc.apple/4283414.c: New. |
| |
| 2005-11-01 Fariborz Jahanian <fjahanian@apple.com> |
| |
| objc new meta-data definitions - part 1 |
| |
| * common.opt: Add new -fobjc-abi-version=n option. |
| |
| 2005-11-01 Evan Cheng <evan.cheng@apple.com> |
| |
| Radar 4317709 |
| * stor-layout.c (place_field) A bitfield field cannot straddle |
| multiple units. |
| |
| 2005-11-01 Stuart Hastings <stuart@apple.com> |
| |
| * config/darwin.h (fix-and-continue): Added APPLE LOCAL for comma. |
| |
| 2005-11-01 Stuart Hastings <stuart@apple.com> |
| |
| * config/i386/i386.h (Unused): Fix gratuitous APPLE LOCAL change. |
| |
| 2005-10-31 Devang Patel <dpatel@apple.com> |
| |
| Radar 4053179 |
| Backport from Mainline. |
| 2005-04-14 Richard Henderson <rth@redhat.com> |
| * config/i386/i386.c (ix86_prepare_sse_fp_compare_args): Split ... |
| (ix86_expand_sse_fp_minmax): ... from ... |
| (ix86_expand_fp_movcc): ... here. |
| (ix86_expand_sse_movcc): Rewrite from ix86_split_sse_movcc. |
| * config/i386/i386-protos.h: Update. |
| * config/i386/i386.md (UNSPEC_IEEE_MIN, UNSPEC_IEEE_MAX): New. |
| (sse_setccsf, sse_setccdf): Allow before reload. |
| (movsfcc_1_sse_min, movsfcc_1_sse_max, movsfcc_1_sse): Remove. |
| (movdfcc_1_sse_min, movdfcc_1_sse_max, movdfcc_1_sse): Remove. |
| (ieee_sminsf3, ieee_smaxsf3, ieee_smindf3, ieee_smaxdf3): New. |
| * config/i386/sse.md (andsf3, nandsf3, iorsf3, xorsf3): New. |
| (anddf3, nanddf3, iordf3, xordf3): New. |
| * config/i386/i386.c (ix86_expand_sse_cmp): Split out from ... |
| (ix86_expand_sse_movcc): ... here. Take cmp as a pre-computed |
| register. |
| (ix86_expand_fp_movcc): Update to match. |
| (ix86_expand_fp_vcond, ix86_expand_int_vcond): New. |
| * config/i386/i386-protos.h: Update. |
| * config/i386/sse.md (vcondv4sf, vcondv2df): New. |
| (vcond<SSEMODE124>, vcondu<SSEMODE12>): New. |
| |
| 2005-10-31 Devang Patel <dpatel@apple.com> |
| |
| Radar 4310696 |
| * dbxout.c (stabstr_I): Truncate anonymous aggregate names |
| in C++ and Objective-c++. |
| |
| 2005-10-25 Evan Cheng <evan.cheng@apple.com> |
| |
| Radar 4209085 |
| * config/i386/i386.md (fix_trunc<mode>_i387_fisttp peephole2): Emit |
| fisttp for double signed integer conversion if source operand is in |
| ST(0). |
| * testsuite/gcc.apple/4209085.c: New. |
| |
| 2005-10-25 Eric Christopher <echristo@apple.com> |
| |
| Import from mainline: |
| 2005-09-28 Mark Mitchell <mark@codesourcery.com> |
| |
| PR 17886 |
| * expmed.c (expand_shift): Move logic to reverse rotation |
| direction when rotating by constants ... |
| * optabs.c (expand_binop): ... here. |
| * config/i386/i386.md (rotrdi3): Handle 32-bit mode. |
| (ix86_rotrdi3): New pattern. |
| (rotldi3): Handle 32-bit mode. |
| (ix86_rotldi3): New pattern. |
| |
| 2005-10-19 Eric Christopher <echristo@apple.com> |
| |
| Radar 3907496 |
| Import from mainline: |
| 2005-08-10 Eric Christopher <echristo@apple.com> |
| |
| * config/rs6000/rs6000.c (mems_ok_for_quad_peep): Rewrite. |
| * config/rs6000/rs6000.md (*lfq_power2, *stfq_power2): Use |
| V2DFmode. |
| |
| 2005-10-10 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4301047 |
| |
| * c-parse.in (objc_quals): Build objc qualifier list same way |
| as gcc-3.3 |
| |
| 2005-10-11 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4271575 |
| * config/rs6000/darwin.h (DARWIN_CRT2_SPEC): New. |
| (SUBTARGET_EXTRA_SPECS): Define %(darwin_crt2). |
| * config/i386/darwin.h (SUBTARGET_EXTRA_SPECS): Define %(darwin_crt2) |
| as empty. |
| * config/darwin.h (STARTFILE_SPEC): Use %(darwin_crt2) to possibly |
| link in crt2.o. |
| |
| 2005-10-12 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4291785 |
| |
| * c-common.h (objc_get_interface_ivars): New declaration |
| (objc_detect_field_duplicates): Ditto. |
| * c-decl.c (finish_struct): Check for duplicate among |
| flattened fields if objective-c. |
| * stub-objc.c (objc_get_interface_ivars): New stub. |
| (objc_detect_field_duplicates): Ditto. |
| |
| 2005-10-07 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4204796 |
| * c-parse.in (typespec_nonreserved_nonattr): Remove volatile from |
| 'volatalized' type used in a typeof operator. |
| |
| 2005-10-04 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4281748 |
| * c-common.h (objc_check_global_decl): New declaration. |
| * stub-objc.c (objc_check_global_decl): New stub. |
| * c-decl.c (start_decl): Check for redeclaration of class name. |
| * c-parse.in (after_type_declarator): Recognize CLASSNAME. |
| |
| 2005-10-17 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4122763 |
| * libgcc2.c [LIBCC_KEXT] (panic): Declare properly. |
| [LIBCC_KEXT] (abort): Don't abort with no string. |
| |
| 2005-10-28 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4164563 |
| * config/darwin.c (darwin_macho_att_stub, |
| darwin_macho_att_stub_switch): New. |
| * config/darwin.h (-matt-stubs): New flag. |
| (machopic_picsymbol_stub3_section): New __IMPORT section. |
| (MACHOPIC_NL_SYMBOL_PTR_SECTION): New. |
| (machopic_nl_symbol_ptr_section): Move non-lazy pointers to |
| __IMPORT section. |
| * config/i386/darwin.h (-matt-stubs): New flag. |
| (SUBTARGET_OVERRIDE_OPTIONS): Handle -matt-stubs. |
| * config/i386/i386.c (macho_output_stub): Generate AT&T style |
| (self-modifying) stubs. |
| * config/i386/i386.h (MACHOPIC_NL_SYMBOL_PTR_SECTION): Override |
| machopic_nl_symbol_ptr_section with new __IMPORT section. |
| |
| 2005-10-28 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4318818 |
| * varasm.c (output_constructor): Do not check |
| DECL_BIT_FIELD when reversing initializer list for |
| types with reversed_flag set. |
| |
| 2005-10-28 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4319602 |
| * cfgloopmanip.c (create_loop_notes): Add code to move |
| code logically inside a loop but physically outside, |
| to a place physically inside. |
| * ifcvt.c (find_if_case_1): Adjust cost test for ppc. |
| (find_if_case_2): Ditto. |
| |
| 2005-10-21 Dale Johannesen <dalej@apple.com> |
| |
| * opts.c (set_flags_from_O): Revert 10-17 change. |
| * regrename.c (regrename_optimize): Ditto. |
| * ifcvt.c (find_if_case_1, find_if_case_2): Ditto. |
| * cfgloopmanip.c (create_loop_notes): Ditto, also |
| 10-19 and 10-20 changes. |
| |
| 2005-10-20 Devang Patel <dpatel@apple.com> |
| |
| Radar 4307634 |
| * dbxout.c (struct typeinf): New member, q_type_number. |
| (struct qualified_typeinf): New. |
| (q_typevec, q_typevec_len, q_type_number); New. |
| (dbxout_reusable_type, dbxout_note_q_type, |
| dbxout_next_q_type_number): New. |
| (dbxout_init): Initialize q_typevec. |
| (dbxout_type_index): Check reusable type. |
| (dbxout_partial_type): Remove dbxout_next_type_number call. |
| Use dbxout_note_q_type(). |
| (dbxout_complete_type): Remove dbxout_next_type_number call. |
| (dbxout_pointer_type): Same. |
| (dbxout_file_type): Same. |
| (dbxout_function_type): Same. |
| (dbxout_reference_type): Same. |
| |
| 2005-10-20 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4307420 |
| * cfgloopmanip.c (create_loop_notes): Handle fallthru to EXIT_BLOCK. |
| |
| 2005-10-19 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4307392 |
| * cfgloopmanip.c (create_loop_notes): Handle jump tables. |
| |
| 2005-10-17 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4203984 |
| * ifcvt.c (find_if_case_1): Adjust cost test for ppc. |
| (find_if_case_2): Ditto. |
| * regrename.c (regrename_optimize): Change to do more |
| renaming. |
| * opts.c (set_flags_from_O): Reenable regrename at -O3. |
| * cfgloopmanip.c (create_loop_notes): Add code to move |
| code logically inside a loop but physically outside, |
| to a place physically inside. |
| |
| 2005-10-14 Eric Christopher <echristo@apple.com> |
| |
| Radar 4302779 |
| * config/darwin-driver.c (do_nasm): Include -o in |
| explicit args. |
| |
| 2005-10-14 Eric Christopher <echristo@apple.com> |
| |
| Radar 4302595 |
| * config/darwin-driver.c (do_nasm): Specify all |
| arguments to nasm explicitly. |
| |
| 2005-10-14 Devang Patel <dpatel@apple.com> |
| |
| Radar 4300871 |
| * dbxout.c (dbxout_start_source_file): Flush type queue. |
| |
| 2005-10-13 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4278461 |
| * config/darwin.c (machopic_legitimize_pic_address): Set |
| regs_ever_live[current_PIC_reg]. |
| |
| 2005-10-13 Devang Patel <dpatel@apple.com> |
| |
| R4281384 |
| * dbxout.c (dbxout_partial_type): Partially describe method types. |
| |
| 2005-10-11 Evan Cheng <evan.cheng@apple.com> |
| |
| Radar 4228294 |
| Radar 4296479 |
| * varasm.c (output_constructor): Reverse initializer list for |
| types with reversed_flag set (revision). |
| |
| 2005-10-12 Devang Patel <dpatel@apple.com> |
| |
| Radar 4278903 |
| * gcc.c (invoke_as): Process ASM_SPEC when -fsave-repository |
| is seen. |
| |
| 2005-10-11 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4134111 |
| * config/i386/i386.md (cmpstrsi): Modify for Darwin. |
| (darwin_cmpstrqi_nz_1): New. |
| (*darwin_cmpstrqi_nz_1): New. |
| (darwin_cmpstrqi_1): New. |
| (*darwin_cmpstrqi_nz_1): New. |
| |
| 2005-10-11 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 4276161 |
| * config/darwin.h (REAL_LIBGCC_SPEC): Link in shared libgcc depending |
| on -mmacosx-version-min setting. |
| |
| 2005-10-11 Devang Patel <dpatel@apple.com> |
| |
| Radar 4117876 |
| * config/rs6000.c (expand_block_clear, expand_block_move): Remove |
| vectorized memset/memcpy warning. |
| |
| 2005-10-10 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4271187 |
| * config/rs6000/rs6000.c (macho_branch_islands): Avoid fixed-size buffers. |
| |
| 2005-10-07 Evan Cheng <evan.cheng@apple.com> |
| |
| Radar 4109832 |
| * config/i386/xmmintrin.h (_MM_TRANSPOSE4_PS): Rewrite using high/low |
| moves and unpack to speed up. |
| |
| 2005-10-07 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4205103 |
| * config/i386/i386.c (ix86_value_regno): Moved APPLE LOCAL marker. |
| |
| 2005-10-06 Devang Patel <dpatel@apple.com> |
| |
| Radar 4257091 |
| * c-common.c (vector_types_compatible_p): Check REAL_TYPE's precision. |
| |
| 2005-10-06 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4284121 |
| * function.c (assign_parms): Fix RETURN_POPS_ARGS call. |
| |
| 2005-10-04 Devang Patel <dpatel@apple.com> |
| |
| Radar 4278470 |
| * dbxout.c (dbxut_init): Flush type queue. |
| (type_queue, type_queue_index, type_queue_size): GTY'ed. |
| (dbxout_queue_type): Use ggc_realloc. |
| (dbxout_free_type_queue): Use ggc_free. |
| |
| 2005-01-03 Devang Patel <dpatel@apple.com> |
| |
| Radar 4278903 |
| * gcc.c (invoke_as): Supply -arch when -fsave-repository is seen. |
| |
| 2005-01-03 Devang Patel <dpatel@apple.com> |
| |
| Radar 4135682 |
| * invoke.texi: Avoid using specific version number. |
| |
| 2005-10-01 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4279065 |
| * config/i386/sse.md (sse_storeqv4si): Remove subreg. |
| |
| 2005-09-30 Devang Patel <dpatel@apple.com> |
| |
| Radar 4274611 |
| * config/darwin-driver.c (do_nasm): New. |
| (fasm_seen): New variable. |
| (main): Check -fnasm. |
| |
| 2005-09-28 Devang Patel <dpatel@apple.com> |
| |
| Radar 4263352 |
| * config/darwin-driver.c (GTY): Define empty macro. |
| |
| 2005-09-29 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 4136489 |
| * config/darwin-c.c (darwin_cpp_builtins): Define a '__weak' |
| macro if Objective-C GC is being used. |
| * config/darwin.c (darwin_handle_objc_gc_attribute): Correctly |
| propagate GC attribute to ..._TYPE nodes, even for functions |
| and arrays. |
| * config/darwin.h (SUBTARGET_ATTRIBUTE_TABLE): Restrict use of |
| GC attribute to ..._TYPE nodes. |
| * doc/invoke.texi: Document '-fobjc-gc' switch. |
| |
| 2005-09-28 Devang Patel <dpatel@apple.com> |
| |
| Radar 4263352 |
| * config/darwin.h (darwin_reverse_bitfields): Add GTY marker. |
| |
| 2005-09-28 Devang Patel <dpatel@apple.com> |
| |
| Radar 4258406 |
| * c-parse.in (nested_function): Report an error, instead of a warning. |
| (nontype_nested_function): Same. |
| * c.opt (Wnested-funcs): Remove. |
| * doc/invoke.texi: Remove Wnested-funcs documentations. |
| |
| 2005-09-28 Dale Johannesen <dalej@apple.com> |
| |
| Radar 4228294 (revision) |
| * stor-layout.c (layout_type): Move setting of TREE_FIELDS_REVERSED... |
| (place_field): ...to here. |
| |
| 2005-09-26 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 4232445 |
| * dbxout.c (dbxout_partial_type): Insert missing |
| TYPE_STUB_DECL accessor. |
| (dbxout_partial_type): Use TYPE_NAME instead of DECL_NAME |
| when accessing a ..._TYPE node. |
| |
| 2005-09-26 Fariborz Jahanian <fjahanian@apple.com> |
| |
| PR target/23847 |
| Radar 4263935 |
| * config/rs6000/rs6000.c (rs6000_function_value): Parallel pattern |
| for __complex__ double in -mcpu=G5 mode. |
| |
| 2005-09-26 Stuart Hastings <stuart@apple.com> |
| |
| * config/i386/i386.c (ix86_comp_type_attributes): Moved APPLE LOCAL marker. |
| |
| 2005-09-26 Mike Stump <mrs@apple.com> |
| |
| Radar 4273781 |
| * c-common.c (cw_asm_stmt): Add prefix support. |
| (cw_is_prefix): Add. |
| (cw_do_id): Add. |
| (get_cw_asm_label): Make static. |
| * c-common.h (cw_asm_stmt): Move to asm.h |
| (cw_asm_build_register_offset): Likewise. |
| (cw_asm_label): Likewise. |
| (prepend_char_identifier): Likewise. |
| (clear_cw_asm_labels): Likewise. |
| (cw_asm_reg_name): Likewise. |
| (get_cw_asm_label): Likewise. |
| (cw_asm_entry): Likewise. |
| (cw_asm_typename_or_reserved): Likewise. |
| (cw_asm_c_build_component_ref): Likewise. |
| (cw_get_identifier): Likewise. |
| (cw_build_bracket): Likewise. |
| (flag_cw_asm_blocks): Likewise. |
| * config/asm.h: Move various declarations to here. |
| * c-parse.in (c_parse_cw_maybe_prefix): Add. |
| (cw_skip_to_eol): Move decl to asm.h. |
| (cw_maybe_prefix): Add. |
| (single_cw_asm_stmt): Add prefix support. |
| * c-typeck.c (build_external_ref): Move some logic to cw_do_id. |
| * config/i386/i386.h (CW_SYNTH_CONSTRAINTS): Remove trailing ;. |
| (CW_IS_PREFIX): Add. |
| * config/i386/i386-protos.h (x86_cw_print_prefix): Add. |
| * config/i386/i386.c (x86_cw_print_prefix): Add. |
| |
| Radar 4271787 |
| * c-common.c (CW_CANONICALIZE_OPERANDS): Arrange to save the |
| opcode before translation for constraint lookups. |
| (cw_asm_stmt): Likewise. |
| * config/i386/i386.c (CW_CANONICALIZE_OPERANDS): Likewise. |
| |
| 2005-09-24 Mike Stump <mrs@apple.com> |
| |
| Radar 4248159 |
| * config/i386/i386.c (x86_canonicalize_operands): Add (a+b) and |
| (a-b) support for memory references. |
| |
| 2005-09-23 Fariborz Jahanian <fjahanian@apple.com> |
| |
| * Radar 4266982 |
| * combine.c (make_extraction): Check for valid use of subreg. |
| |
| 2005-09-23 Mike Stump <mrs@apple.com> |
| |
| Radar 4259442 |
| * c-common.c (cw_split_next): Add. |
| (print_cw_asm_operand): Add extra * parameter. |
| (cw_asm_get_register_var): Likewise. |
| (struct Extra): Add. |
| (cw_x86_needs_swapping): Split out from canonicalize_operands. |
| (canonicalize_operands): Handle %st(i) style references for x86. |
| Add code to support opcode modifiers based upon arguments. |
| Rewrite movsx to movs. |
| Rewrite movzx to movz. |
| (cw_constraint_for): Pass number of arguments. |
| Add checking code to ensure that opcode table is sorted. |
| Handle option second opcode. |
| (cw_process_arg): Add extra * and op_num parameters. |
| Allow contrainst to be constructed from context. |
| (cw_asm_stmt): Add extra data structure and pass it around to |
| callees. |
| (print_cw_asm_operand): Add extra * parameter. |
| Prefix constants with "$" unless they are part of an offset. |
| Double up % on register names. |
| Don't track ST(i) lifetimes yet. |
| Handle .+24 as we do for .-24. |
| Ensure that offsets are not output with "$". |
| Track context information and set constraints appropriately. |
| Don't use labels for non-labels like lo16, hi16 and ha16. |
| * config/asm.h: Add. |
| * c-common.h (cw_split_next): Add. |
| (cw_insert_saved_token): Add. |
| * c-lex.c (cw_insert_saved_token): Add. |
| (c_lex_with_flags): When starting a decl, we don't need a BOL to |
| see the start of an instruction. When switching to cw_asm_asm, |
| also arrange for a BOL token to be returned. Arrange to split |
| [.+-] from opcode when PREV_WHITE. |
| * cp-parse.in (cw_identifier1): Add. |
| (cw_identifier): Add trailing ' ' on identifiers to split out |
| [.+-] from opcode. |
| (cw_asm_compstmt): Handle opcode int. |
| (cw_asm_primary): Add '.'. |
| (yylexname): Handle opcode int. |
| * c-typeck.c (cw_asm_typename_or_reserved): Likewise. |
| * config/i386/i386.c (i386_cw_asm_register_name): Don't double up |
| on '%' as a register prefix, as then it doesn't match a register |
| name. |
| (cw_memory_clobber): Move to here. |
| (cw_x86_needs_swapping): Likewise. |
| (x86_swap_operands): Likewise. |
| (x86_canonicalize_operands): Likewise. |
| (cw_is_offset): Likewise. |
| (cw_print_op): Split out from print_cw_asm_operand. |
| * config/i386/i386.h (TARGET_CW_OP_CONSTRAINT): Massive fixups, |
| switch operand ordering. |
| (TARGET_CW_EXTRA_INFO): Add. |
| (TARGET_CW_EXTRA_INFO): Add. |
| (CW_SYNTH_CONSTRAINTS): Add. |
| (TARGET_CW_PRINT_OP): Add. |
| (CW_CANONICALIZE_OPERANDS): Add. |
| (CW_SEE_OPCODE): Add. |
| (CW_IMMED_PREFIX): Add. |
| (CW_HIDE_REG): Add. |
| (CW_SEE_OFFSET): Add. |
| (CW_SEE_NO_OFFSET): Add. |
| * doc/extend.texi (Asm Blocks and Functions): Update for x86. |
| * tree-cfg.c (set_bb_for_stmt): Handle label rewritting anywhere in opcode. |
| |
| 2005-09-22 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4231761 |
| * doc/invoke.texi: Tweak documentation for -Oz. |
| |
| 2005-09-22 Stuart Hastings <stuart@apple.com> |
| |
| Radar 4205103 |
| * config/i386/i386.c (ix86_function_value, ix86_value_regno): Backport new |
| three-argument versions from FSF mainline, add support for __attribute__ ((regparmandstackparm)). |
| (ix86_handle_cdecl_attribute, ix86_handle_regparm_attribute, ix86_handle_cconv_attribute): |
| Replace the first two with the third, from FSF mainline; added support for |
| __attribute__ ((regparmandstackparm)). |
| (ix86_function_regparm): Check for __attribute__ ((regparmandstackparm)). |
| (ix86_function_sseregparm): Backported from FSF mainline, add check for |
| __attribute__ ((regparmandstackparm)). |
| (ix86_comp_type_attributes, init_cumulative_args, function_arg_advance, function_arg, |
| TARGET_FUNCTION_VALUE): Backport changes from FSF mainline. |
| (ix86_function_ok_for_sibcall): Backport new version from FSF mainline. |
| (ix86_darwin_make_regparmandstackparmee, ix86_darwin_regparmandstackparm_mangle_name, |
| ix86_darwin_regparmandstackparm_dup_fndecl, ix86_darwin_regparmandstackparm_extern_decl, |
| ix86_darwin_redirect_calls, ix86_darwin_re_context_1, ix86_darwin_re_context, |
| ix86_darwin_regparmandstackparm_wrapper): New. |
| (ix86_darwin_handle_regparmandstackparm, ix86_darwin_redirect_calls): New; support for |
| __attribute__ ((regparmandstackparm)). |
| * cgraphunit.c (cgraph_finalize_function): Use ix86_darwin_handle_regparmandstackparm. |
| (cgraph_finalize_compilation_unit): Use ix86_darwin_redirect_calls. |
| * config/i386/i386-protos.h(ix86_function_value): Updated extern decl. |
| * config/i386/i386.h (MASK_SSEREGPARM, TARGET_SSEREGPARM): New. |
| (FUNCTION_VALUE): Backported three-argument version from FSF mainline. |
| (struct ix86_args): Backported float_in_sse field from FSF mainline. |
| (SSE_REGPARM_MAX): Added Darwin/x86-specific support for __attribute__ ((regparmandstackparm)). |
| (ix86_darwin_handle_regparmandstackparm, ix86_darwin_redirect_calls): Declare. |
| * doc/extend.texi (regparmandstackparm): Documentation for __attribute__ ((regparmandstackparm)). |
| |
| 2005-09-21 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4043818 (pr19653) |
| * /config/i386/mmx.md (mov<mode>_internal): Make cost of 'y' (mmx_regs) |
| computable. |
| |
| 2005-08-31 Richard Henderson <rth@redhat.com> |
| |
| Radar 4043818 (pr19653) |
| * expr.c (expand_expr_real_1) <VIEW_CONVERT_EXPR>: Force subregs |
| into a pseudo before applying gen_lowpart. |
| |
| 2005-08-30 Richard Henderson <rth@redhat.com> |
| |
| Radar 4043818 (pr19653) |
| PR target/23630 |
| * expr.c (expand_expr_real_1) <VIEW_CONVERT_EXPR>: Use gen_lowpart |
| whenever the mode sizes match. |
| |
| 2005-08-23 Paolo Bonzini <bonzini@gnu.org> |
| |
| Radar 4043818 (pr19653) |
| PR middle-end/23517 |
| * fold-const.c (fold_convert): Use VIEW_CONVERT_EXPR to convert |
| between vectors. |
| * convert.c (convert_to_integer, convert_to_vector): Likewise. |
| |
| 2005-09-19 Devang Patel <dpatel@apple.com> |
| |
| Radar 4252541 |
| * config/rs6000/rs6000.c (rs6000_expand_binop_builtin, |
| rs6000_expand_ternop_builtin, rs6000_expand_unop_builtin): Check expr |
| arguments. |
| |
| 2005-09-16 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4232296 |
| * config/rs600.c (rs6000_emit_move): Check for a valid symbol_ref |
| before attempt to generate indirect pic stub. |
| |
| 2005-09-15 Devang Patel <dpatel@apple.com> |
| |
| dbxout_type rewrite. |
| * dbxout.c (enum typestatus): Add TYPE_QUEUED. |
| (dbxout_type):Rewrite. Use dbxout_partial_type and dbxout_complete_type |
| to do actual work. |
| (dbxout_partial_type, dbxout_complete_type, dbxout_type_xref, |
| dbxout_pointer_type, dbxout_void_type, dbxout_integer_type, |
| dbxout_real_type, dbxout_char_type, dbxout_complex_type, |
| |