PR 24142
* tree-vrp.c (vrp_meet): Fix call to range_includes_zero_p in
case of anti-ranges.
testsuite/
PR 24142
* gcc.c-torture/execute/pr24142.c: New test.
From-SVN: r104874
2005-10-02 Andrew Pinski <pinskia@physics.uc.edu>
PR c/18851
* c-typeck.c (tagged_tu_seen): Rename to ...
(tagged_tu_seen_cache): this and add val field.
(comptypes): Move functional to comptypes_internal
and free tagged_tu_seen.
(comptypes_internal): New function and call comptypes_internal
instead of comptypes. Speed up by sibcalling
tagged_types_tu_compatible_p.
(alloc_tagged_tu_seen): New function
(free_all_tagged_tu_seen_up_to): New function.
(tagged_types_tu_compatible_p): Return the val of the seen two
types.
Add that the two types are the same to tagged_tu_seen_base
if they are and call comptypes_internal instead of comptypes.
<case UNION_TYPE>: Speed up common type where the fields are
in the same order.
(function_types_compatible_p): Call comptypes_internal instead of
comptypes.
(type_lists_compatible_p): Likewise.
(all functions): s/tagged_tu_seen/tagged_tu_seen_cache/.
From-SVN: r104873
2005-10-02 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/24054
* include/tr1/hashtable (erase(const key_type&)): Return the
number of elements erased.
* testsuite/tr1/6_containers/unordered/hashtable/24054.cc: New.
From-SVN: r104867
PR 24141
* tree-vrp.c (vrp_meet): Clear VR0->EQUIV when building a
non-null range as a last resort.
testsuite/
PR 24141
* gcc.c-torture/execute/pr24141.c: New test.
From-SVN: r104859
PR 23604
* tree-vrp.c (extract_range_from_assert): For !=
assertions, only build an anti-range if LIMIT is a
single-valued range.
testsuite/
PR 23604
* gcc.c-torture/execute/pr23604.c: New test.
Co-Authored-By: Diego Novillo <dnovillo@redhat.com>
From-SVN: r104858
2005-10-01 Paul Thomas <pault@gcc.gnu.org>
PR fortran/16404
PR fortran/20835
PR fortran/20890
PR fortran/20899
PR fortran/20900
PR fortran/20901
PR fortran/20902
* gfortran.h: Prototype for gfc_add_in_equivalence.
* match.c (gfc_match_equivalence): Make a structure component
an explicit,rather than a syntax, error in an equivalence
group. Call gfc_add_in_equivalence to add the constraints
imposed in check_conflict.
* resolve.c (resolve_symbol): Add constraints: No public
structures with private-type components and no public
procedures with private-type dummy arguments.
(resolve_equivalence_derived): Add constraint that prevents
a structure equivalence member from having a default
initializer.
(sequence_type): New static function to determine whether an
object is default numeric, default character, non-default
or mixed sequence. Add corresponding enum typespec.
(resolve_equivalence): Add constraints to equivalence groups
or their members: No more than one initialized member and
that different types are not equivalenced for std=f95. All
the simple constraints have been moved to check_conflict.
* symbol.c (check_conflict): Simple equivalence constraints
added, including those removed from resolve_symbol.
(gfc_add_in_equivalence): New function to interface calls
match_equivalence to check_conflict.
2005-10-01 Paul Thomas <pault@gcc.gnu.org>
PR fortran/16404
PR fortran/20835
PR fortran/20890
PR fortran/20899
PR fortran/20900
PR fortran/20901
PR fortran/20902
gfortran.dg/equiv_constraint_1.f90: New test.
gfortran.dg/equiv_constraint_2.f90: New test.
gfortran.dg/equiv_constraint_3.f90: New test.
gfortran.dg/equiv_constraint_4.f90: New test.
gfortran.dg/equiv_constraint_5.f90: New test.
gfortran.dg/equiv_constraint_6.f90: New test.
gfortran.dg/equiv_constraint_7.f90: New test.
gfortran.dg/equiv_constraint_8.f90: New test.
gfortran.dg/private_type_1.f90: New test.
gfortran.dg/private_type_2.f90: New test.
gfortran.dg/g77/980628-2.f, 980628-3.f, 980628-9.f,
980628-10.f: Assert std=gnu to permit mixing of
types in equivalence statements.
From-SVN: r104850
* configure.ac (pthread.h): Use AC_CHECK_HEADERS instead of
AC_CHECK_HEADER.
(target_thread_file): New. Set from sed'ed gcc output.
(posix_threads): New. Set from target_thread_file. Use instead of
ac_have_pthread_h.
(pthread_create_version): Move initialization before code using it.
* configure: Regenerate.
From-SVN: r104838
* arm.md (movqi): On thumb when optimizing, handle loading from
memory by describing this as taking a subreg of a zero-extended load
into an SImode register.
(movhi): Likewise.
From-SVN: r104836
* config/t-slibgcc-darwin (libgcc_s_%.dylib): Remove old symlinks
before creating new ones. Do symlinks before creating the actual
targets.
From-SVN: r104826
2005-09-30 Andrew Macleod <amacleod@redat.com>
PR tree-optimization/21430
* tree-ssa-operands.c (set_virtual_use_link): New. Link new virtual
use operands, and set stmt pointer if need be.
(FINALIZE_CORRECT_USE: New. Macro to call appropriate use fixup routine.
tree-ssa-opfinalize.h (FINALIZE_FUNC): Call FINALIZE_CORRECT_USE if
present.
From-SVN: r104816
PR middle-end/24109
* c-decl.c (c_write_global_declarations_1): If any
wrapup_global_declaration_2 call returned true, restart the loop.
* gcc.c-torture/execute/20050929-1.c: New test.
From-SVN: r104794
2005-09-29 Daniel Berlin <dberlin@dberlin.org>
Fix PR tree-optimization/24117
* tree-ssa-structalias.c (find_func_aliases): Strip nops
before considering whether to use anyoffset.
From-SVN: r104791
2005-09-15 Paolo Bonzini <bonzini@gnu.org>
* optabs.c (expand_binop): Use swap_commutative_operands_with_target
to order operands.
(swap_commutative_operands_with_target): New.
From-SVN: r104775
gcc:
2005-09-29 Paolo Bonzini <bonzini@gnu.org>
PR c/21419
* gimplify.c (gimplify_asm_expr): Raise an error if an output is
read-only.
testsuite:
2005-09-29 Paolo Bonzini <bonzini@gnu.org>
PR c/21419
* gcc.dg/pr21419.c: New test.
From-SVN: r104774