OSDN Git Service

* tree.h (struct tree_struct_field_tag): Move field
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index e872005..806240f 100644 (file)
@@ -1,3 +1,195 @@
+2007-11-07  Diego Novillo  <dnovillo@google.com>
+
+       * tree.h (struct tree_struct_field_tag): Move field
+       in_nested_struct ...
+       (struct tree_memory_tag): ... here.
+
+2007-11-07  Diego Novillo  <dnovillo@google.com>
+
+       PR 33870
+       * tree.h (struct tree_struct_field_tag): Add field in_nested_struct.
+       (SFT_IN_NESTED_STRUCT): Define.
+       * tree-dfa.c (dump_subvars_for): Show offset of each
+       sub-var.
+       * tree-flow.h (struct fieldoff): Add field in_nested_struct.
+       * tree-ssa-structalias.c (struct variable_info): Likewise.
+       (push_fields_onto_fieldstack): If OFFSET is positive,
+       set in_nested_struct.
+       (create_variable_info_for): Copy setting of
+       in_nested_struct from the field offset object.
+       (set_uids_in_ptset): Set SFT_IN_NESTED_STRUCT from the
+       variable info object.
+       * tree-ssa-operands.c (add_vars_for_offset): If VAR
+       belongs to a nested structure, adjust OFFSET by
+       SFT_OFFSET(VAR).
+
+2007-11-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR rtl-optimization/33737
+       * cfgcleanup.c (try_crossjump_to_edge): Add count and frequency of
+       target block after computing the probabilities of outgoing edges.
+       Cap the frequency to BB_FREQ_MAX.
+       * tree-ssa-threadupdate.c (redirect_edges): Also adjust count and
+       frequency of the basic block if it has been reused.
+
+2007-11-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR rtl-optimization/33822
+       * rtl.h (REG_OFFSET): Fix comment.
+       * var-tracking.c (INT_MEM_OFFSET): New macro.
+       (var_mem_set): Use it.
+       (var_mem_delete_and_set): Likewise.
+       (var_mem_delete): Likewise.
+       (same_variable_part_p): Likewise.
+       (vt_get_decl_and_offset): Likewise.
+       (offset_valid_for_tracked_p): New predicate.
+       (count_uses): Do not track locations with invalid offsets.
+       (add_uses): Likewise.
+       (add_stores): Likewise.
+
+2007-11-07  Tom Tromey  <tromey@redhat.com>
+
+       * Makefile.in (tree-ssa-structalias.o): Depend on $(FUNCTION_H)
+       (BASIC_BLOCK_H): Add vec.h, $(FUNCTION_H).
+
+2007-11-07  Dmitry Zhurikhin  <zhur@ispras.ru>
+           Andrey Belevantsev  <abel@ispras.ru>
+
+       * modulo-sched.c (sms_order_nodes, permute_partial_schedule,
+       generate_prolog_epilog, duplicate_insns_of_cycles): Fix prototypes.
+       (calculate_order_params, sms_order_nodes): New parameter pmax_asap.
+       Save calculated max_asap in it.         
+       (sms_schedule): Calculate maxii using max_asap.
+
+2007-11-07  Andreas Krebbel  <krebbel1@de.ibm.com>
+
+       * doc/invoke.texi: Replace rs6000 dfp switches -mdfp/-mno-dfp
+       with -mhard-dfp/-mno-hard-dfp.
+
+2007-11-07  Maxim Kuvyrkov  <maxim@codesourcery.com>
+           Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/33670
+       * haifa-sched.c (check_sched_flags): Remove.
+       (sched_init): Don't call it.
+
+2007-11-06  Diego Novillo  <dnovillo@google.com>
+
+       * tree-flow.h (struct fieldoff): Reformat comment.
+       Document fields.
+       * tree-ssa-operands.c: Tidy top-level comments.
+       (add_vop): Likewise.
+       (add_vars_for_offset): Tidy parameter formatting..
+       (get_addr_dereference_operands): Likewise.
+       (get_indirect_ref_operands): Likewise.
+       (get_expr_operands) <OMP_ATOMIC_LOAD>: Reformat.
+       <OMP_ATOMIC_STORE>: Likewise.
+
+2007-11-06  Rask Ingemann Lambertsen  <rask@sygehus.dk>
+
+       PR target/32787
+       * config/i386/driver-i386.c: Test for __GNUC__ instead of
+       GCC_VERSION which is always defined.
+
+2007-11-06  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       PR target/30961
+       * reload1.c (find_reloads): Also check in_reg when handling a
+       simple move with an input reload and a destination of a hard
+       register.
+
+2007-11-06  Maxim Kuvyrkov  <maxim@codesourcery.com>
+
+       * config/m68k/m68k.c (sched-int.h, insn-codes.h): New includes.
+       (TARGET_SCHED_ADJUST_COST, TARGET_SCHED_VARIABLE_ISSUE,
+       TARGET_SCHED_INIT_GLOBAL, TARGET_SCHED_FINISH_GLOBAL,
+       TARGET_SCHED_INIT, TARGET_SCHED_DFA_PRE_ADVANCE_CYCLE,
+       TARGET_SCHED_DFA_POST_ADVANCE_CYCLE): Redefine.
+       (m68k_sched_attr_type2): New function.
+       (sched_adjust_cost_state): New static variable.
+       (m68k_sched_adjust_cost): New static function implementing
+       scheduler hook.
+       (sched_ib_size, sched_ib_filled, sched_ib_insn, sched_mem_unit_code):
+       New static variables.
+       (m68k_sched_variable_issue): New static function implementing
+       scheduler hook.
+       (sched_dump_class_def, sched_dump_class_func_t): New typedefs.
+       (sched_dump_split_class): New static function.
+       (sched_dump_dfa_guess_unit_code, sched_dump_dfa_state): New static
+       variables.
+       (sched_dump_dfa_class, m68k_sched_dump): New static function.
+       (m68k_sched_md_init_global, m68k_sched_md_finish_global,
+       m68k_sched_md_init, m68k_sched_dfa_pre_advance_cycle,
+       m68k_sched_dfa_post_advance_cycle): New static functions implementing
+       scheduler hooks.
+
+       * config/m68k/m68k.h (m68k_sched_attr_type2): Declare.
+       (CPU_UNITS_QUERY): Define.
+
+       * config/m68k/cf.md: New file.
+       * config/m68k/m68.md (cf.md): New include.
+
+2007-11-06  Tom Tromey  <tromey@redhat.com>
+
+       PR c++/32256, PR c++/32368:
+       * function.c (saved_in_system_header): New global.
+       (push_cfun): Save in_system_header.
+       (pop_cfun): Restore in_system_header.
+       (push_struct_function): Save in_system_header.
+
+2007-11-06  Douglas Gregor  <doug.gregor@gmail.com>
+
+       PR c++/33977
+       PR c++/33886
+       * c-common.c (c_build_qualified_type): Moved to c-typeck.c.
+       (complete_array_type): Set canonical type appropriately.
+       * c-typeck.c (c_build_qualified_type): Moved from c-common.c. The
+       C and C++ front ends now have different versions of this function,
+       because the C++ version needs to maintain canonical types here.
+
+2007-11-04  Razya Ladelsky  <razya@il.ibm.com>
+       
+       * tree-parloops.c (reduction_info): Remove reduction_init field.
+       (initialize_reductions): Remove creation of the reduction_init variable.
+       (struct data_arg): Remove.
+       (add_field_for_reduction, create_stores_for_reduction): New functions.
+       (add_field_for_name): Remove reduction handling.
+       (separate_decls_in_loop): Call add_field_for_reduction, 
+       create_stores_for_reduction.
+
+2007-11-06  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/33458
+       * tree-inline.c (copy_phis_for_bb): If PHI arg substitution creates
+       !is_gimple_val PHI argument, gimplify it and insert it on edge.
+
+       PR tree-optimization/33993
+       * tree-vect-transform.c (vect_get_constant_vectors): Use build_vector
+       rather than build_constructor_from_list if all list values are
+       constants.
+       (get_initial_def_for_induction): Use build_vector instead of
+       build_constructor_from_list.
+
+2007-11-05  Mark Mitchell  <mark@codesourcery.com>
+
+       PR target/33579
+       * tree.h (DECL_INIT_PRIORITY): Do not require
+       DECL_HAS_INIT_PRIORITY_P.
+       (DECL_FINI_PRIORITY): Likewise.
+       * tree.c (decl_init_priority_lookup): Remove assert.
+       (decl_fini_priority_insert): Likewise.
+       * cgraphunit.c (static_ctors): Make it a VEC.
+       (static_dtors): Likewise.
+       (record_cdtor_fn): Adjust accordingly.
+       (build_cdtor): Generate multiple functions for each initialization
+       priority.
+       (compare_ctor): New function.
+       (compare_dtor): Likewise.
+       (cgraph_build_cdtor_fns): Sort the functions by priority before
+       calling build_cdtor.
+       (cgraph_build_static_cdtor): Put the priority in the function's
+       name.
+
 2007-11-05  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR driver/32632
 
        * config/xtensa/xtensa.c (xtensa_expand_nonlocal_goto): Do not
        replace references to virtual_stack_vars_rtx in goto_handler.
-       
+
 2007-11-05  Paul Brook  <paul@codesourcery.com>
 
-       * Makefile.target: Add ssd0303.o, pl022.o and ssd0323.o.
-       * vl.c (register_machines): Add lm3s6965evb_machine.
-       * vl.h (armv7m_init): Add.
-       (lm3s6965evb_machine): Declare.
-       (pl022_init): New prototype.
-       (ssd0323_xfer_ssi, ssd0323_init): New prototype.
-       * hw/ssd0323.c: New file.
-       * hw/armv7m.c (armv7m_init): Remove board init code.
-       (lm3s811evb_machine): Remove.
-       * hw/osram_oled.c: Rename...
-       * hw/ssd0303.c: ... to this.
-       * hw/pl022.c: New file.
-       * hw/stellaris.c: Define and use stellaris_boards.
-       (lm3s811evb_machine, lm3s6965evb_machine): New.
+       * config.gcc (arm*-*-*): Set c_target_objs and cxx_target_objs.
+       * config/arm/arm.c (arm_lang_output_object_attributes_hook): New.
+       (arm_file_start): Don't set Tag_ABI_PCS_wchar_t.  Call
+       arm_lang_output_object_attributes_hook.
+       * config/arm/arm.h (arm_lang_output_object_attributes_hook): Declare.
+       (REGISTER_TARGET_PRAGMAS): Call arm_lang_object_attributes_init.
+       * config/arm/arm-protos.h (arm_lang_object_attributes_init): Add
+       prototype.
+       * config/arm/t-arm.c (arm.o): New rule.
+       * config/arm/arm-c.c: New file.
 
 2007-11-05  Nick Clifton  <nickc@redhat.com>
            Sebastian Pop  <sebastian.pop@amd.com>