2008-07-07 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/64/_divtc3-compat.c: Moved to ...
* config/i386/64/_divtc3.c: Here.
* config/i386/64/_multc3-compat.c: Moved to ...
* config/i386/64/_multc3.c: Here.
* config/i386/64/_powitf2-compat.c: Moved to ...
* config/i386/64/_powitf2.c: Here.
* config/i386/64/t-softfp-compat (libgcc2-tf-compats): Add
.c suffix instead of -compat.c.
From-SVN: r137579
2008-07-07 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (struct variable_info): Add is_full_var flag.
(new_var_info): Set it to false.
(solution_set_add): Correctly handle pointers outside a var and
inside a field.
(type_safe): Treat variables with is_full_var properly.
(do_sd_constraint): Likewise.
(do_ds_constraint): Likewise.
(process_constraint): Remove zeroing offset for !use_field_sensitive.
(get_constraint_for_ptr_offset): New function.
(get_constraint_for_component_ref): For addresses at least include
the last field of the variable. Handle is_full_vars properly.
(get_constraint_for_1): Factor common code, handle POINTER_PLUS_EXPR.
(handle_ptr_arith): Remove.
(find_func_aliases): Simplify assignment handling.
(create_function_info_for): For parameter and result varinfos set
is_full_var flag.
(create_variable_info_for): Set is_full_var flag whenever we
just created a single varinfo for a decl.
(init_alias_vars): Initialize use_field_sensitive from
max-fields-for-field-sensitive parameter.
* gcc.dg/torture/pta-ptrarith-1.c: New testcase.
* gcc.dg/torture/pta-ptrarith-2.c: Likewise.
* gcc.dg/torture/ipa-pta-1.c: Likewise.
From-SVN: r137573
2008-07-07 Richard Guenther <rguenther@suse.de>
PR tree-optimization/36713
* tree-flow-inline.h (is_call_used): New function.
* tree-nrv.c (dest_safe_for_nrv_p): Use it.
* tree-tailcall.c (suitable_for_tail_opt_p): Likewise.
* tree-outof-ssa.c (create_temp): Set call-used flag if required.
From-SVN: r137571
2008-07-06 H.J. Lu <hongjiu.lu@intel.com>
PR target/36720
* config/ia64/ia64.c (ia64_split_tmode): Fix typo in TImode
constant for little endian.
From-SVN: r137547
gcc/
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Check
mips_base_mips16 instead of TARGET_MIPS16.
(mips_base_mips16): Declare.
* config/mips/mips.c (mips_base_mips16): Make global.
(was_mips16_p): Remove GTY marker.
(was_mips16_pch_p): New variable.
(mips_set_mips16_mode): Check both was_mips16_p and was_mips16_pch_p.
(mips_override_options): Force to non-MIPS16 mode initially.
Do not complain about MIPS16 PIC incompatibilities here.
Only allow -mgpopt if -mexplicit-relocs is in force for
non-MIPS16 code.
gcc/testsuite/
* gcc.target/mips/gcc-have-sync-compare-and-swap-1.c: Expect the
macros to be defined for MIPS16 too.
* gcc.target/mips/gcc-have-sync-compare-and-swap-2.c: Likewise.
* gcc.target/mips/gcc-have-sync-compare-and-swap-3.c: New test.
* gcc.target/mips/gcc-have-sync-compare-and-swap-4.c: Likewise.
From-SVN: r137539
2008-07-06 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (struct variable_info): Remove has_union.
(new_var_info): Deal with it.
(solution_set_add): Likewise.
(bitpos_of_field): Make signed, fix.
(struct fieldoff): Remove type and decl fields. Make size field
unsigned HOST_WIDE_INT. Add has_unknown_size and may_have_pointers
flags.
(fieldoff_compare): Deal with it.
(push_fields_onto_fieldstack): Remove has_union argument, glob
adjacent non-pointer fields together.
(create_function_info_for): Do not set has_union.
(create_variable_info_for): Simplify.
* gcc.dg/tree-ssa/pta-callused.c: Adjust testcase.
From-SVN: r137530
* include/std/system_error (is_error_code_enum): Use identifier
_Tp instead of _T to avoid conflict with system macro on Darwin.
(is_error_condition_enum): Likewise.
From-SVN: r137529
2008-07-05 Andrew Pinski <andrew_pinski@playstation.sony.com>
* g++.dg/tree-ssa/ptrmemfield.C: New testcase.
2008-07-05 Andrew Pinski <andrew_pinski@playstation.sony.com>
* fold-const.c (fold_convert_const): Treat OFFSET_TYPE the same as
integral and pointer types.
From-SVN: r137510
2008-07-05 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/postypes.h: Do not include <stdint.h>.
* include/Makefile.am: Reorder.
From-SVN: r137505
* config/rs6000/host-darwin.c (darwin_rs6000_extra_siganls): Cast
the "void*" result of xmalloc to "char*" to fix bootstrap breakage.
From-SVN: r137500
* safe-ctype.h: Remove #error when detecting that ctype.h has been
included. Redefine the various macros provided by ctype.h as
undefined variables.
From-SVN: r137480
* crontab: Remove 4.1 snapshots job.
* update_version: Remove.
* gcc_release: Remove support for g77 and release status in
version.c.
* update_version_svn: Ignore 4.1 branch. Remove support for
updating files other than DATESTAMP.
* update_web_docs_svn: Remove support for g77 manual.
From-SVN: r137462
* tree-switch-conversion.c (build_one_array, gen_def_assigns): Use
build_gimple_modify_stmt.
(build_arrays, gen_inbound_check): Likewise. Force RHS to be
gimple operand. Use fold_build* instead of build*.
From-SVN: r137454
2008-07-04 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (lookup_vi_for_tree): Declare.
(do_sd_constraint): Handle a dereference of ESCAPED and CALLUSED
properly to compute the reachability set if we do field-sensitive PTA.
* invoke.texi (max-fields-for-field-sensitive): Document default.
* opts.c (decode_options): Set max-fields-for-field-sensitive to
100 for optimize >= 2.
* gcc.dg/tree-ssa/pta-callused.c: New testcase.
From-SVN: r137453
PR target/36634
* config/rs6000/rs6000.md (call, call_value): Don't arrange for
pic_offset_table_rtx to be marked as used here.
(call_nonlocal_sysv, call_value_nonlocal_sysv): Add split for
TARGET_SECURE_PLT to "use" pic_offset_table_rtx.
(call_nonlocal_sysv_secure, call_value_nonlocal_sysv_secure): New insn.
(sibcall_nonlocal_sysv, sibcall_value_nonlocal_sysv): Assert
!TARGET_SECURE_PLT.
From-SVN: r137447
* tree-flow.h (loop_only_exit_p): Declare.
* tree-ssa-loop-niter.c (loop_only_exit_p): Make public.
* tree-ssa-loop-ivopts.c (may_eliminate_iv): Reinstate direct check on
the number of iterations if it is constant. Otherwise, if this is the
only possible exit of the loop, use the conservative estimate on the
number of iterations of the entire loop if available.
From-SVN: r137437