OSDN Git Service

2006-10-21 H.J. Lu <hongjiu.lu@intel.com>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index c1803fb..8f2f384 100644 (file)
@@ -1,3 +1,325 @@
+2006-10-21  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/i386/i386.md (UNSPEC_LDQQU): Renamed to ...
+       (UNSPEC_LDDQU): This.
+       * config/i386/sse.md (sse3_lddqu): Updated.
+
+2006-10-21  Richard Guenther  <rguenther@suse.de>
+
+       * builtins.c (expand_builtin_int_roundingfn_2): New function.
+       (expand_builtin): Use it to expand lrint instead of
+       expand_builtin_mathfn.
+
+2006-10-21  Uros Bizjak  <uros@kss-loka.si>
+
+       PR middle-end/28252
+       * builtins.c (fold_builtin): Fold pow(x,1.0/3.0) as cbrt(x) if
+       flag_unsafe_math_optimizations is set.
+
+2006-10-21  Uros Bizjak  <uros@kss-loka.si>
+
+       PR target/19398
+       * config/i386/i386.md (fix_trunc?f?i_sse): Add peephole2
+       patterns to use memory input operand in x87->mem->XMM
+       reload sequences.  Skip transformation for TARGET_K8.
+
+2006-10-21  Uros Bizjak  <uros@kss-loka.si>
+
+       * config/i386/i386.md (extendsfdf2, extendsfxf2, extenddfxf2): Do not
+       force operand1 to register if both operands are memory operands.
+       (*extendsfdf2_mixed, *extendsfdf2_sse, *extendsfdf2_i387)
+       (*extendsfxf2_i387, *extenddfxf2_i387): Do not disable pattern
+       if both operands are memory operands.
+       (truncdfsf2): Do not force operand1 to register if both operands
+       are memory operands.
+
+2006-10-21  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * Makefile.in (LIBS): Add $(GMPLIBS).
+       * doc/install.texi: Update GMP and MPFR requirements.
+       * doc/sourcebuild.texi (need_gmp): Delete.
+
+2006-10-21  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/3511
+       * tree-ssa-pre.c (phi_translate): Fold CALL_EXPRs that
+       got new invariant arguments during PHI translation.
+
+2006-10-21  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/26898
+       * fold-const.c (fold_comparison): Fold signed comparisons
+       of the form X +- C1 CMP Y +- C2.
+
+2006-10-21  Richard Guenther  <rguenther@suse.de>
+
+       PR target/19116
+       * config/i386/i386.c (override_options): Do not set MASK_IEEE_FP
+       if flag_unsafe_math_optimizations is specified.  We have
+       flag_finite_math_only for that.
+       * config/i386/i386.md (sqrtxf2): Do not require TARGET_IEEE_FP
+       or flag_unsafe_math_optimizations.
+
+2006-10-21  Richard Guenther  <rguenther@suse.de>
+
+       * builtins.c (fold_builtin_classify): Fix typo.
+
+2006-10-21  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/28796
+       * simplify-rtx.c (simplify_const_relational_operation):
+       Do not constant-fold ORDERED and UNORDERED for
+       flag_unsafe_math_optimizations but only we do not need to
+       honor NaNs for the given mode.
+
+2006-10-21  Richard Guenther  <rguenther@suse.de>
+
+       PR target/29512
+       * config/i386/i386.c (classify_argument): Remove redundant
+       walking of the BINFOs.
+       (contains_128bit_aligned_vector_p): Likewise.
+
+2006-10-20  Mark Mitchell  <mark@codesourcery.com>
+
+       * BASE-VER: Set to 4.3.0.
+
+2006-10-20  Daniel Berlin  <dberlin@dberlin.org>
+
+       * tree.h (DECL_PTA_ARTIFICIAL): Remove.
+       (tree_decl_with_vis): Remove artificial_pta_var flag.
+       * tree-flow.h (referenced_var_check_and_insert): Expose.
+       (nonlocal_all): New prototype.
+       * tree-ssa-structalias.c (nonlocal_for_type): Remove.
+       (nonlocal_all): Make global.
+       (nonlocal_lookup): Remove.
+       (nonlocal_insert): Ditto.
+       (create_nonlocal_var): Do not call nonlocal_insert.
+       (get_nonlocal_id_for_type): Remove.
+       (find_global_initializers): Mark new vars we find for renaming.
+       (intra_create_variable_infos): Only create one nonlocal.
+       (expand_nonlocal_solutions): Remove.
+       (compute_points_to_sets): Don't call it.
+       (ipa_pta_execute): Ditto.
+       (init_alias_heapvars): Don't create nonlocal_for_type.
+       (delete_alias_heapvars): Don't remove it.
+       * tree-ssa-operands.c (access_can_touch_variable): Don't prune
+       nonlocal_all.
+
+2006-10-19  Brooks Moses  <bmoses@stanford.edu>
+
+       * doc/install.texi (Downloading GCC): Clarify mention of
+       Fortran in the "full distribution" description.
+
+2006-10-19  Daniel Berlin  <dberlin@dberlin.org>
+
+       Fix PR tree-optimization/28778
+       Fix PR tree-optimization/29156
+       Fix PR tree-optimization/29415
+       * tree.h (DECL_PTA_ARTIFICIAL): New macro.
+       (tree_decl_with_vis): Add artificial_pta_var flag.
+       * tree-ssa-alias.c (is_escape_site): Remove alias info argument,
+       pushed into callers.
+       * tree-ssa-structalias.c (nonlocal_for_type): New variable.
+       (nonlocal_all): Ditto.
+       (struct variable_info): Add directly_dereferenced member.
+       (var_escaped_vars): New variable.
+       (escaped_vars_tree): Ditto.
+       (escaped_vars_id): Ditto.
+       (nonlocal_vars_id): Ditto.
+       (new_var_info): Set directly_dereferenced.
+       (graph_size): New variable
+       (build_constraint_graph): Use graph_size.
+       (solve_graph): Don't process constraints that cannot change the
+       solution, don't try to propagate an empty solution to our
+       successors.
+       (process_constraint): Set directly_dereferenced.
+       (could_have_pointers): New function.
+       (get_constraint_for_component_ref): Don't process STRING_CST.
+       (nonlocal_lookup): New function.
+       (nonlocal_insert): Ditto.
+       (create_nonlocal_var): Ditto.
+       (get_nonlocal_id_for_type): Ditto.
+       (get_constraint_for): Allow results vector to be empty in the case
+       of string constants.
+       Handle results of calls properly.
+       (update_alias_info): Update alias info stats on number and type of
+       calls.
+       (find_func_aliases): Use could_have_pointers.
+       (make_constraint_from_escaped): Renamed from
+       make_constraint_to_anything, and changed to make constraints from
+       escape variable.
+       (make_constraint_to_escaped): New function.
+       (find_global_initializers): Ditto.
+       (create_variable_info_for): Make constraint from escaped to any
+       global variable, and from any global variable to the set of
+       escaped vars.
+       (intra_create_variable_infos): Deal with escaped instead of
+       pointing to anything.
+       (set_uids_in_ptset): Do type pruning on directly dereferenced
+       variables.
+       (find_what_p_points_to): Adjust call to set_uids_with_ptset.
+       (init_base_vars): Fix comment, and initialize escaped_vars.
+       (need_to_solve): Removed.
+       (find_escape_constraints): New function.
+       (expand_nonlocal_solutions): Ditto.
+       (compute_points_to_sets): Call find_escape_constraints and
+       expand_nonlocal_solutions.
+       (delete_points_to_sets): Don't fall off the end of the graph.
+       (init_alias_heapvars): Initialize nonlocal_for_type and
+       nonlocal_all.
+       (delete_alias_heapvars): Free nonlocal_for_type and null out
+       nonlocal_all. 
+
+2006-10-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * fold-const.c (add_double): Rename to add_double_with_sign.
+       Add 'unsigned_p' parameter and take it into account for the overflow.
+       (mul_double): Rename to mul_double_with_sign. 
+       Add 'unsigned_p' parameter and take it into account for the overflow.
+       (fold_div_compare): Call add_double_with_sign instead of add_double
+       and mul_double_with_sign instead of mul_double, passing them the
+       unsignedness of the type.
+       * tree.h (add_double): Macroize.
+       (add_double_with_sign): New prototype.
+       (mul_double): Macroize.
+       (mul_double_with_sign): New prototype.
+
+2006-10-19  Chen Liqin  <liqin@sunnorth.com.cn>
+
+        * config/score/crti.asm: New file.
+        * config/score/crtn.asm: New file.
+        * config/score/elf.h: New file.
+        * config/score/mac.md: New file.
+        * config/score/misc.md: New file.
+        * config/score/mul-div.S: New file.
+        * config/score/predicates.md: New file.
+        * config/score/score7.md: New file.
+        * config/score/score.c: New file.
+        * config/score/score-conv.h: New file.
+        * config/score/score.h: New file.
+        * config/score/score.md: New file.
+        * config/score/score-mdaux.c: New file.
+        * config/score/score-mdaux.h: New file.
+        * config/score/score-modes.def: New file.
+        * config/score/score.opt: New file.
+        * config/score/score-protos.h: New file.
+        * config/score/score-version.h: New file.
+        * config/score/t-score-elf: New file.
+        * config.gcc: Add score*-*-* configurations(Update before).
+        * doc/invoke.texi (Score Options): New section.
+        * doc/md.texi (Score family): New section to document constraints.
+
+2006-10-19  Nick Clifton  <nickc@redhat.com>
+
+       * config/arm/arm.c: Fix spelling typo.
+
+2006-10-18  Tom Tromey  <tromey@redhat.com>
+
+       * doc/install.texi (Prerequisites): Mention automake 1.9.6.
+
+2006-10-18  Jan Hubicka  <jh@suse.cz>
+
+       PR middle-end/29299
+       * cfgexpand.c (expand_used_vars_for_block): Vars marked used by user
+       are used.
+
+2006-10-18  Marcin Dalecki  <martin@dalecki.de>
+
+       * omp-low.c (expand_parallel_call): Use BSI_SAME_STMT instead of
+       TSI_SAME_STMT, since that's the desired entity.
+
+2006-10-17  Wolfgang Gellerich  <gellerich@de.ibm.com>
+
+       * config/s390/contraints.md: New file.
+        * config/s390/s390-protos.h (s390_mem_constraint, 
+       s390_O_constraint_str, s390_N_constraint_str, 
+       s390_float_const_zero_p): Function prototypes added.
+       * config/s390/s390.c (s390_extra_constraint_str, 
+       s390_const_double_ok_for_constraint_p, 
+       s390_const_ok_for_constraint_p): Functions removed.
+        (s390_mem_constraint, s390_O_constraint_str, s390_N_constraint_str,
+       s390_float_const_zero_p): New functions.
+       * config/s390/s390.h (REG_CLASS_FROM_LETTER, CONST_OK_FOR_CONSTRAINT_P,
+       CONST_DOUBLE_OK_FOR_CONSTRAINT_P, EXTRA_CONSTRAINT_STR, 
+       EXTRA_MEMORY_CONSTRAINT, EXTRA_ADDRESS_CONSTRAINT, CONSTRAINT_LEN): 
+       Macro definitions removed.
+       (s390_const_ok_for_constraint_p, s390_const_double_ok_for_constraint_p,
+       s390_extra_constraint_str): Functions removed.
+
+2006-10-17  Andrew Pinsiki  <pinskia@gmail.com>
+           Richard Sandiford  <richard@codesourcery.com>
+
+       PR target/29413
+       * config/mips/linux.h (SUBTARGET_CC1_SPEC): Override.
+       * config/mips/mips.h (CC1_SPEC): Override any earlier definition.
+
+2006-10-16  Geoffrey Keating  <geoffk@apple.com>
+
+       * config/rs6000/sysv4.h (DBX_REGISTER_NUMBER): Move to rs6000.h.
+       (DWARF2_FRAME_REG_OUT): Likewise.
+       * config/rs6000/rs6000.h (DBX_REGISTER_NUMBER): Move from sysv4.h.
+       (DWARF2_FRAME_REG_OUT): Likewise.
+
+2006-10-17  Paul Brook  <paul@codesourcery.com>
+
+       * config/arm/arm.c (arm_rtx_costs_1): Handle multiply-accumulate.
+
+2006-10-16  Brooks Moses  <bmoses@stanford.edu>
+
+       * doc/contrib.texi, doc/install.texi, doc/standards.texi:
+       Standardize on "GNU Fortran" as the official name of the Fortran
+       compiler.
+
+2006-10-16  Mike Stump  <mrs@apple.com>
+
+       * doc/invoke.texi (Darwin Options): Document -mkernel.
+       * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Add
+       -mkernel support.
+       (C_COMMON_OVERRIDE_OPTIONS): Add -mkernel support.  Add
+       SUBTARGET_C_COMMON_OVERRIDE_OPTIONS callout.
+       (CC1_SPEC): Don't turn on -fPIC when -mkernel is given.
+       (OS_MISSING_ALTIVEC): Add.
+       * config/i386/i386.c (override_options): Add
+       SUBSUBTARGET_OVERRIDE_OPTIONS callout.
+       * config/i386/darwin.h (CC1_SPEC): Don't turn on -fPIC when
+       -mkernel, -static or -mdynamic-no-pic is given.
+       (C_COMMON_OVERRIDE_OPTIONS): Add.
+       * config/darwin.opt (fapple-kext): Add.
+       (mkernel): Add.
+       * config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Add
+       -fapple-kext, -findirect-virtual-calls, -fterminated-vtables and
+       -mkernel support.
+       (SUBSUBTARGET_OVERRIDE_OPTIONS): Add.
+       (SUBTARGET_C_COMMON_OVERRIDE_OPTIONS): Add.
+       (CPP_SPEC): Move defines for __DYNAMIC__ and __STATIC__ from here...
+       (SUBTARGET_ATTRIBUTE_TABLE): Add apple_kext_compatibility.
+       (TARGET_CXX_CDTOR_RETURNS_THIS): Add.
+       (flag_mkernel): Add.
+       (flag_apple_kext): Add.
+       (TARGET_KEXTABI): Add.
+       * config/darwin.c (darwin_handle_kext_attribute): Add.
+       (DARWIN_VTABLE_P): Add.
+       (darwin_binds_local_p): Add partial support for rebinding vtables
+       in kexts.
+       (darwin_kextabi_p): Add.
+       (darwin_override_options): Add.
+       * config/darwin-protos.h (darwin_handle_kext_attribute): Add.
+       (darwin_kextabi_p): Add.
+       (darwin_override_options): Add.
+       * config/darwin-c.c (darwin_cpp_builtins): ... move defines for
+       __DYNAMIC__ and __STATIC__ here.
+
+2006-10-16  Brooks Moses  <bmoses@stanford.edu>
+
+       * doc/sourcebuild.texi, doc/makefile.texi, doc/install.texi:
+       Added mention of "make pdf" target, and Texinfo requirements for
+       same.
+
+2006-10-16  DJ Delorie  <dj@redhat.com>
+
+       * config/s390/s390.c (s390_decompose_address): Allow symbol+offset
+       into the GOT in case we need a subreg of the address.
+
 2006-10-16  Richard Guenther  <rguenther@suse.de>
 
        PR target/25519