OSDN Git Service
kkojima [Thu, 13 Aug 2009 22:16:07 +0000 (22:16 +0000)]
* config/sh/sh.c (sh_override_options): When flag_exceptions or
flag_unwind_tables is on, turn flag_reorder_blocks_and_partition
off.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150727
138bc75d-0d04-0410-961f-
82ee72b054a4
gshobaki [Thu, 13 Aug 2009 21:37:24 +0000 (21:37 +0000)]
2009-08-13 Ghassan Shobaki <ghassan.shobaki@amd.com>
* tree-ssa-loop-prefetch.c
(prune_ref_by_group_reuse): Enhance probabilistic analysis
for long-stride pruning.
(compute_miss_rate): New function to compute the probability
that two memory references access different cache lines.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150726
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Thu, 13 Aug 2009 19:46:46 +0000 (19:46 +0000)]
2009-08-13 Janus Weil <janus@gcc.gnu.org>
PR fortran/40941
* gfortran.h (gfc_typespec): Put 'derived' and 'cl' into union.
* decl.c (build_struct): Make sure 'cl' is only used
if type is BT_CHARACTER.
* symbol.c (gfc_set_default_type): Ditto.
* resolve.c (resolve_symbol, resolve_fl_derived): Ditto.
(resolve_equivalence,resolve_equivalence_derived): Make sure 'derived'
is only used if type is BT_DERIVED.
* trans-io.c (transfer_expr): Make sure 'derived' is only used if type
is BT_DERIVED or BT_INTEGER (special case: C_PTR/C_FUNPTR).
* array.c: Mechanical replacements to accomodate union in gfc_typespec.
* check.c: Ditto.
* data.c: Ditto.
* decl.c: Ditto.
* dump-parse-tree.c: Ditto.
* expr.c: Ditto.
* interface.c: Ditto.
* iresolve.c: Ditto.
* match.c: Ditto.
* misc.c: Ditto.
* module.c: Ditto.
* openmp.c: Ditto.
* parse.c: Ditto.
* primary.c: Ditto.
* resolve.c: Ditto.
* simplify.c: Ditto.
* symbol.c: Ditto.
* target-memory.c: Ditto.
* trans-array.c: Ditto.
* trans-common.c: Ditto.
* trans-const.c: Ditto.
* trans-decl.c: Ditto.
* trans-expr.c: Ditto.
* trans-intrinsic.c: Ditto.
* trans-io.c: Ditto.
* trans-stmt.c: Ditto.
* trans-types.c: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150725
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Thu, 13 Aug 2009 19:14:20 +0000 (19:14 +0000)]
* ChangeLog: Fix whitespace.
* testsuite/ChangeLog: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150724
138bc75d-0d04-0410-961f-
82ee72b054a4
janis [Thu, 13 Aug 2009 16:54:28 +0000 (16:54 +0000)]
PR c/41046
* decContext.c (decContextTestEndian): Call printf only if DECCHECK.
* decCommon.c ( decFloatShow): Define function only for DECCHECK
or DECTRACE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150720
138bc75d-0d04-0410-961f-
82ee72b054a4
davek [Thu, 13 Aug 2009 15:00:42 +0000 (15:00 +0000)]
* gcc/config/i386/cygwin.h (LINK_SPEC): Add --enable-auto-image-base.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150717
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Thu, 13 Aug 2009 11:16:16 +0000 (11:16 +0000)]
2009-08-13 Janus Weil <janus@gcc.gnu.org>
PR fortran/40995
* resolve.c (resolve_symbol): Move some checking code to
resolve_intrinsic, and call this from here.
(resolve_intrinsic): Some checking code moved here from resolve_symbol.
Make sure each intrinsic is only resolved once.
2009-08-13 Janus Weil <janus@gcc.gnu.org>
PR fortran/40995
* gfortran.dg/intrinsic_4.f90: New.
* gfortran.dg/intrinsic_subroutine.f90: An error message moved to a
different line.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150716
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 13 Aug 2009 08:19:10 +0000 (08:19 +0000)]
2009-08-13 Richard Guenther <rguenther@suse.de>
PR middle-end/41047
* tree-ssa-ccp.c (ccp_fold): When folding pointer additions
use the constant pointer type.
* gimplify.c (canonicalize_addr_expr): Canonicalize independent
of CV qualifiers on the target pointer type.
* tree-ssa.c (useless_type_conversion_p): Move incomplete pointer
conversion check before restrict check.
* gcc.dg/tree-ssa/ssa-ccp-27.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150715
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 13 Aug 2009 00:17:20 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150712
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Wed, 12 Aug 2009 22:26:13 +0000 (22:26 +0000)]
PR target/41029
* config/sh/sh.md (reload_outdf__RnFRm+4): Fix thinko.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150709
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Wed, 12 Aug 2009 22:23:49 +0000 (22:23 +0000)]
* config/sh/sh.c (sh_promote_function_mode): Add ATTRIBUTE_UNUSED.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150708
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Wed, 12 Aug 2009 22:05:50 +0000 (22:05 +0000)]
2009-08-12 Benjamin Kosnik <bkoz@redhat.com>
* src/compatibility-ldbl.cc: Add explicit namespace scope.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150707
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 12 Aug 2009 17:55:40 +0000 (17:55 +0000)]
2009-08-12 Richard Guenther <rguenther@suse.de>
PR tree-optimization/41011
* ipa-cp.c (ipcp_lattice_from_jfunc): Deal with failing fold
and reference constructing.
* gfortran.dg/pr41011.f: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150705
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Wed, 12 Aug 2009 17:33:41 +0000 (17:33 +0000)]
* inclhack.def (aix_complex): New fix.
* fixincl.x: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150704
138bc75d-0d04-0410-961f-
82ee72b054a4
davidxl [Wed, 12 Aug 2009 16:51:41 +0000 (16:51 +0000)]
Fix to PR41012
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150703
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Wed, 12 Aug 2009 16:34:00 +0000 (16:34 +0000)]
2009-08-12 Andrew Haley <aph@redhat.com>
* sysdep/arm/locks.h: Use atomic builtins For Linux EABI.
* configure.ac: Add ATOMICSPEC.
* libgcj.spec.in: Likewise.
* configure.host (arm*-linux*): Add -Wno-abi to cxxflags.
(testsuite/libjava.jvmti/jvmti-interp.exp): Likewise.
(testsuite/libjava.jvmti/jvmti.exp): Likewise.
(testsuite/libjava.jni/jni.exp): Likewise.
Set ATOMICSPEC.
Set LDFLAGS to work around libtool feature.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150702
138bc75d-0d04-0410-961f-
82ee72b054a4
bonzini [Wed, 12 Aug 2009 16:28:36 +0000 (16:28 +0000)]
2009-08-12 Richard Sandiford <rdsandiford@googlemail.com>
PR tree-optimization/41031
* tree-outof-ssa.c (insert_value_copy_on_edge): Use promote_decl_mode
on the partition variable rather than promote_mode on the source
type. Assert that the partition variable's type has the same
mode as the source value's.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150701
138bc75d-0d04-0410-961f-
82ee72b054a4
bonzini [Wed, 12 Aug 2009 16:23:12 +0000 (16:23 +0000)]
2009-08-12 Paolo Bonzini <bonzini@gnu.org>
* doc/tm.texi (TARGET_PROMOTE_FUNCTION_MODE): Add documentation
for for_return == 2.
* function.c (assign_parm_setup_reg): Use for_return == 2, improve
comments.
* calls.c (expand_call): Fix typo.
* explow.c (promote_decl_mode): Use for_return == 2 for RESULT_DECL
and PARM_DECL.
* stmt.c (expand_value_return): Use promote_function_mode to copy out
of pseudo.
* targhooks.c (default_promote_function_mode): Handle for_return == 2.
* config/cris/cris.c (cris_promote_function_mode): Likewise.
* config/mmix/mmix.c (mmix_promote_function_mode): Likewise.
* config/pa/pa.c (pa_promote_function_mode): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150700
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Wed, 12 Aug 2009 16:10:12 +0000 (16:10 +0000)]
2009-08-12 Andrew Haley <aph@redhat.com>
* builtins.c (compareAndSwapInt_builtin): Use
flag_use_atomic_builtins.
(compareAndSwapLong_builtin): Likewise.
(compareAndSwapObject_builtin): Likewise.
* jvspec.c: Add flag_use_atomic_builtins.
* gcj.texi: Likewise.
* java-tree.h: Likewise.
* lang.opt: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150699
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Wed, 12 Aug 2009 15:55:19 +0000 (15:55 +0000)]
2009-08-11 Andrew Haley <aph@redhat.com>
* gcc.target/arm/synchronize.c: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150698
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Wed, 12 Aug 2009 15:54:37 +0000 (15:54 +0000)]
2009-08-11 Andrew Haley <aph@redhat.com>
* config/arm/arm.c (arm_init_libfuncs): Add __sync_synchronize.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150697
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 12 Aug 2009 15:13:52 +0000 (15:13 +0000)]
Remove pragma GCC diagnostic warning "-Wc++-compat".
2009-08-12 Sebastian Pop <sebastian.pop@amd.com>
PR bootstrap/40103
* graphite.c: Remove pragma GCC diagnostic warning "-Wc++-compat".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150696
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 12 Aug 2009 15:10:47 +0000 (15:10 +0000)]
2009-08-12 Richard Guenther <rguenther@suse.de>
* alias.c (get_alias_set): Honor TYPE_STRUCTURAL_EQUALITY_P.
* gimplify.c (gimplify_modify_expr): Do not use
lang_hooks.types_compatible_p.
* tree-ssa.c (useless_type_conversion_p): For aggregates
just return false if the canonical types differ.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150695
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 12 Aug 2009 14:32:31 +0000 (14:32 +0000)]
Prepare expressions to be good phi arguments.
2009-08-11 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/40980
* sese.c (convert_for_phi_arg): New.
(add_guard_exit_phis): Use convert_for_phi_arg.
* testsuite/gfortran.dg/graphite/id-17.f: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150694
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 12 Aug 2009 14:31:21 +0000 (14:31 +0000)]
Dont add unknown subscript upper bounds.
2009-08-11 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (pdr_add_data_dimensions): Dont add
unknown subscript upper bounds.
* testsuite/gcc.dg/graphite/interchange-6.c: Un-XFAIL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150693
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 12 Aug 2009 14:30:06 +0000 (14:30 +0000)]
Reimplement interchange heuristic.
2009-08-11 Sebastian Pop <sebastian.pop@amd.com>
Pranav Garg <pranav.garg2107@gmail.com>
* graphite-interchange.c (gather_access_strides): Removed.
(ppl_max_for_le): New.
(build_linearized_memory_access): New.
(memory_stride_in_loop): New.
(pbb_interchange_profitable_p): Reimplemented.
* graphite-ppl.h (ppl_new_id_map): New.
(ppl_interchange): New.
* testsuite/gcc.dg/graphite/interchange-6.c: XFAILed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150692
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 12 Aug 2009 14:28:15 +0000 (14:28 +0000)]
Remove interchange heuristic.
2009-08-11 Sebastian Pop <sebastian.pop@amd.com>
* graphite-interchange.c (compute_subscript): Removed.
(compute_array_size_cstr): Removed.
(compute_array_size_poly): Removed.
(compute_array_size): Removed.
(gather_access_strides_poly): Removed.
(gather_access_strides): Empty.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150691
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 12 Aug 2009 14:27:33 +0000 (14:27 +0000)]
Add PDR->nb_subscripts.
2009-08-11 Sebastian Pop <sebastian.pop@amd.com>
* graphite-dependences.c (dependence_polyhedron_1): Replace
pdr_nb_subscripts with PDR_NB_SUBSCRIPTS.
(graphite_legal_transform_dr): Same.
(graphite_carried_dependence_level_k): Same.
* graphite-poly.c (new_poly_dr): Add a parameter nb_subscripts.
Initialize PDR_NB_SUBSCRIPTS.
(print_pdr_access_layout): Replace pdr_nb_subscripts with
PDR_NB_SUBSCRIPTS.
* graphite-poly.h (struct poly_dr): Add nb_subscripts field.
(PDR_NB_SUBSCRIPTS): New.
(pdr_nb_subscripts): Removed.
(pdr_dim): Simplified.
* graphite-sese-to-poly.c (build_poly_dr): Replace pdr_nb_subscripts
with PDR_NB_SUBSCRIPTS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150690
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 12 Aug 2009 14:26:42 +0000 (14:26 +0000)]
Undo changes to the PDR representation.
2009-08-11 Sebastian Pop <sebastian.pop@amd.com>
* graphite-interchange.c (compute_array_size): Remove use of
PDR_DATA_CONTAINER.
* graphite-poly.c (new_poly_dr): Remove argument data_container.
Do not initialize PDR_DATA_CONTAINER.
(print_pdr): Do not print PDR_DATA_CONTAINER.
* graphite-poly.h (struct poly_dr): Remove data_container field.
(PDR_DATA_CONTAINER): Removed.
* graphite-sese-to-poly.c (pdr_add_data_dimensions): Remove use of
PDR_DATA_CONTAINER.
(build_poly_dr): Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150689
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 12 Aug 2009 14:25:32 +0000 (14:25 +0000)]
Add interchange testcase.
2009-08-11 Sebastian Pop <sebastian.pop@amd.com>
* testsuite/gcc.dg/graphite/interchange-9.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150688
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 12 Aug 2009 14:24:01 +0000 (14:24 +0000)]
Fix memory leak in DD XFAILs some interchange testcases.
2009-08-05 Konrad Trifunovic <konrad.trifunovic@gmail.com>
Sebastian Pop <sebastian.pop@amd.com>
* graphite-dependences.c (graphite_legal_transform_dr): Work on a
copy of the dependence polyhedron. Free the temporary objects.
(graphite_carried_dependence_level_k): Free unused objects before
returning.
* testsuite/gcc.dg/graphite/interchange-1.c: XFAILed.
* testsuite/gcc.dg/graphite/interchange-2.c: XFAILed.
* testsuite/gcc.dg/graphite/interchange-3.c: XFAILed.
* testsuite/gcc.dg/graphite/interchange-4.c: XFAILed.
* testsuite/gcc.dg/graphite/interchange-7.c: XFAILed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150687
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 12 Aug 2009 14:23:01 +0000 (14:23 +0000)]
Restore original scattering when the transform is not legal.
2009-08-05 Sebastian Pop <sebastian.pop@amd.com>
* graphite-blocking.c (scop_do_strip_mine): Call store_scattering.
Early return without analyzing the data dependences if no
transform has been done. Call restore_scattering if the transform
is not legal.
(graphite-interchange.c): Same.
* graphite-poly.c (print_scattering_function): Test for PBB_TRANSFORMED.
(graphite_read_transforms): Initialize PBB_TRANSFORMED.
(apply_poly_transforms): Do not gcc_assert that
the transform is legal.
(new_poly_bb): Initialize PBB_TRANSFORMED, PBB_SAVED, and PBB_ORIGINAL.
Do not initialize PBB_NB_SCATTERING_TRANSFORM, PBB_NB_LOCAL_VARIABLES,
PBB_TRANSFORMED_SCATTERING, and PBB_ORIGINAL_SCATTERING.
(free_poly_dr): Free PBB_TRANSFORMED, PBB_SAVED, and PBB_ORIGINAL.
* graphite-poly.h (struct poly_scattering): New.
(struct poly_bb): Add original, transformed, and saved fields.
Remove transformed_scattering, original_scattering, nb_local_variables,
and nb_scattering_transform fields.
(PBB_ORIGINAL, PBB_TRANSFORMED, PBB_SAVED): New.
(poly_scattering_new): New.
(poly_scattering_free): New.
(poly_scattering_copy): New.
(store_scattering_pbb): New.
(store_scattering): New.
(restore_scattering_pbb): New.
(restore_scattering): New.
* graphite-sese-to-poly.c (build_pbb_scattering_polyhedrons):
Initialize PBB_TRANSFORMED and PBB_ORIGINAL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150686
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 12 Aug 2009 14:20:22 +0000 (14:20 +0000)]
Correctly parenthesize pretty print structures.
2009-08-05 Sebastian Pop <sebastian.pop@amd.com>
* graphite-poly.c (print_pbb): Add parentheses in the pretty print.
(print_scop): Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150685
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 12 Aug 2009 14:19:33 +0000 (14:19 +0000)]
Recompute profile after Graphite.
2009-08-05 Sebastian Pop <sebastian.pop@amd.com>
* Makefile.in (graphite.o): Depends on PREDICT_H.
* graphite.c: Include predict.h.
(graphite_finalize): Call tree_estimate_probability.
* predict.c (predict_loops): Do not call scev_initialize and
scev_finalize.
(tree_estimate_probability_bb): New.
(tree_estimate_probability): Do not initialize loops: move that
code to the driver. Call tree_estimate_probability_bb.
(tree_estimate_probability_driver): New.
(pass_profile): Use tree_estimate_probability_driver.
* predict.h (tree_estimate_probability): Declared.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150684
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 12 Aug 2009 14:18:17 +0000 (14:18 +0000)]
Measure time spent in DD analysis and in code gen.
2009-08-05 Sebastian Pop <sebastian.pop@amd.com>
* graphite-clast-to-gimple.c (gloog): Add time to TV_GRAPHITE_CODE_GEN.
* graphite-dependences.c (graphite_legal_transform): Add time to
TV_GRAPHITE_DATA_DEPS.
(dependency_between_pbbs_p): Same.
* timevar.def (TV_GRAPHITE_DATA_DEPS, TV_GRAPHITE_CODE_GEN): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150683
138bc75d-0d04-0410-961f-
82ee72b054a4
abel [Wed, 12 Aug 2009 11:50:22 +0000 (11:50 +0000)]
2009-08-12 Andrey Belevantsev <abel@ispras.ru>
PR rtl-optimization/41033
* alias.c (nonoverlapping_component_refs_p): Punt if strict aliasing is disabled.
2009-08-12 Richard Guenther <rguenther@suse.de>
PR rtl-optimization/41033
* gcc.dg/pr41033.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150680
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Wed, 12 Aug 2009 09:03:38 +0000 (09:03 +0000)]
2009-08-12 Tobias Burnus <burnus@net-b.de>
PR fortran/41034
* symbol.c (gfc_copy_attr): Merge bits instead of replace
bits in gfc_copy_attr.
* gfc_check_pointer_assign (gfc_check_pointer_assign):
Initialize ext_attr bits by zero.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150678
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 12 Aug 2009 08:33:15 +0000 (08:33 +0000)]
2009-08-12 Richard Guenther <rguenther@suse.de>
* trans-types.c (gfc_get_derived_type): Do not clear TYPE_CANONICAL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150676
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Wed, 12 Aug 2009 00:56:12 +0000 (00:56 +0000)]
2009-08-11 Benjamin Kosnik <bkoz@redhat.com>
* include/precompiled/extc++.h: Don't include TR1 if C++0x.
* include/precompiled/stdc++.h: Don't include cassert if
_GLIBCXX_NO_ASSERT defined.
* include/ext/cast.h (_GLIBCXX_BEGIN_NAMESPACE): Remove extra
semi-colon.
* include/ext/pointer.h (_GCC_CXX_POINTER_COMPARISON_OPERATION_SET):
Same.
* testsuite/17_intro/headers/all.cc: Move into dialect-specific
directory.
* testsuite/17_intro/headers/all_pedantic_errors.cc: Same.
* testsuite/17_intro/headers/all_assert_neg.cc: Same.
* testsuite/17_intro/headers/all_c++200x_compatibility.cc: Same.
* testsuite/17_intro/headers/c++1998/all.cc: Use extc++.h include.
* testsuite/17_intro/headers/c++1998/stdc++.cc: Converted all.cc,
use stdc++.h include.
* testsuite/17_intro/headers/c++1998/all_pedantic_errors.cc: Same.
* testsuite/17_intro/headers/c++1998/stdc++_assert_neg.cc: Same.
* testsuite/17_intro/headers/c++1998/all_c++200x_compatibility.cc: Same.
* testsuite/17_intro/headers/c++1998/all_no_exceptions.cc: New.
* testsuite/17_intro/headers/c++1998/all_multiple_inclusion.cc: To...
* testsuite/17_intro/headers/c++1998/stdc++_multiple_inclusion.cc
...this.
* testsuite/17_intro/headers/c++200x/all.cc: To...
* testsuite/17_intro/headers/c++200x/stdc++.cc: ..this.
* testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: To...
* testsuite/17_intro/headers/c++200x/stdc++_multiple_inclusion.cc:
...this.
* testsuite/17_intro/headers/c++200x/all_no_exceptions.cc: New.
* testsuite/17_intro/headers/c++200x/all_pedantic_errors.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150672
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 12 Aug 2009 00:17:07 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150671
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Tue, 11 Aug 2009 20:08:35 +0000 (20:08 +0000)]
2009-08-11 Janus Weil <janus@gcc.gnu.org>
PR fortran/41022
* trans-expr.c (gfc_conv_procedure_call): Handle procedure pointer
components as actual arguments.
2009-08-11 Janus Weil <janus@gcc.gnu.org>
PR fortran/41022
* gfortran.dg/proc_ptr_comp_14.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150665
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Tue, 11 Aug 2009 18:39:54 +0000 (18:39 +0000)]
Fix PR debug/40990
PR debug/40990
* lang.c (put_decl_node): Outputs different level of information
depending on the verbosity level.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150659
138bc75d-0d04-0410-961f-
82ee72b054a4
nemet [Tue, 11 Aug 2009 17:41:09 +0000 (17:41 +0000)]
* config/mips/predicates.md (qi_mask_operand, hi_mask_operand,
si_mask_operand, and_load_operand, low_bitmask_operand,
and_reg_operand, and_operand): New predicates.
* config/mips/constraints.md (Yb, Yh, Yw, Yz): New constraints.
* config/mips/mips.c (and_operands_ok): New function.
* config/mips/mips-protos.h (and_operands_ok): Declare it.
* config/mips/mips.md (move_type): Add ext_ins and logical.
(type): Handle them.
(and<mode>3): Use and_reg_operand as the second operand's
predicate.
(*and<mode>3): Add alternatives for lbu, lhu, lwu, <d>ext and
shift_shift. Remove commutative constraint modifier.
(*and<mode>3_mips16): Add alternatives for lbu, lhu, lwu and
shift_shift.
(*clear_upper32_dext): Remove define_insn_and_split.
(*clear_upper32): Turn this define_insn_and_split ...
(splitter for ANDing register with 0xffff_ffff): .. into this.
testsuite/
* gcc.target/mips/ext-5.c: New test.
* gcc.target/mips/ext-6.c: New test.
* gcc.target/mips/ext-7.c: New test.
* gcc.target/mips/ext-8.c: New test.
* gcc.target/mips/extend-2.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150657
138bc75d-0d04-0410-961f-
82ee72b054a4
nemet [Tue, 11 Aug 2009 17:31:09 +0000 (17:31 +0000)]
* combine.c (try_widen_shift_mode): Factor out code to check if an
integer constant is a low-order bitmask from here ...
* rtlanal.c (low_bitmask_len): ... to here.
* rtl.h (low_bitmask_len): Declare.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150656
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 11 Aug 2009 17:05:38 +0000 (17:05 +0000)]
PR target/8603
* config/alpha/alpha.md (addsi3): Remove expander.
(addsi3): Rename from *addsi3_internal insn pattern.
(subsi3): Remove expander.
(subsi3): Rename from *subsi3_internal insn pattern.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150654
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Tue, 11 Aug 2009 16:41:41 +0000 (16:41 +0000)]
* config/alpha/alpha.c (alpha_init_builtins): Nullify FWRITE and
FWRITE_UNLOCKED.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150653
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Tue, 11 Aug 2009 16:33:41 +0000 (16:33 +0000)]
* config/alpha/alpha.c (alpha_return_in_memory): On VMS, ensure
that records that fit in 64 bits are returned by immediate value,
as required by OpenVMS Calling Standard.
(function_value): Adjust for above modification.
(alpha_va_start) <TARGET_ABI_OPEN_VMS>: Use
virtual_incoming_args_rtx as base object, not next_arg.
* config/alpha/vms.h: (DEFAULT_PCC_STRUCT_RETURN): Define as 0.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150652
138bc75d-0d04-0410-961f-
82ee72b054a4
uweigand [Tue, 11 Aug 2009 13:56:52 +0000 (13:56 +0000)]
* reload.c (find_reloads_subreg_address): Check the original
req_equiv_mem address to detect the case where an address is
not valid in the outer mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150649
138bc75d-0d04-0410-961f-
82ee72b054a4
guerby [Tue, 11 Aug 2009 11:39:43 +0000 (11:39 +0000)]
2009-08-11 Richard Guenther <rguenther@suse.de>
PR bootstrap/40788
* builtins.c (gimplify_va_arg_expr): Do not call
SET_EXPR_LOCATION.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150648
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Tue, 11 Aug 2009 05:19:31 +0000 (05:19 +0000)]
* config/alpha/vms.h (OPTIMIZATION_OPTIONS): Remove
(OVERRIDE_OPTIONS): Incorporate removed OPTIMIZATION_OPTIONS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150647
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Tue, 11 Aug 2009 05:14:48 +0000 (05:14 +0000)]
* config/alpha/alpha.c (alpha_sa_size): Force procedure type to
PT_STACK when frame_pointer_needed on OpenVMS.
(alpha_pv_save_size, alpha_using_fp): Remove.
(alpha_vms_can_eliminate): New function. Support for CAN_ELIMINATE
with proper processing for PT_NULL.
(alpha_vms_initial_elimination_offset): New function. Support for
INITIAL_ELIMINATION_OFFSET with proper processing for PT_NULL.
(alpha_sa_size): Force procedure type to PT_STACK when
frame_pointer_needed on OpenVMS.
* config/alpha/alpha-protos.h (alpha_pv_save_size): Remove prototype.
(alpha_using_fp): Likewise.
(alpha_vms_can_eliminate): Add prototype.
(alpha_vms_initial_elimination_offset): Likewise.
* config/alpha/vms.h (CAN_ELIMINATE, INITIAL_ELIMINATION_OFFSET):
Call alpha_vms_can_eliminate and alpha_vms_initial_elimination_offset.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150646
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Tue, 11 Aug 2009 05:00:51 +0000 (05:00 +0000)]
* config/alpha/alpha.c (common_object_handler): New function.
(vms_attribute_table): Declare a single attribute "common_object".
(vms_output_aligned_decl_common): New global function.
(SECTION_VMS_OVERLAY): Delete.
(SECTION_VMS_GLOBAL): Likewise.
(SECTION_VMS_INITIALIZE): Likewise.
(vms_asm_named_section): Remove support for above flags.
(vms_section_type_flags): Delete.
(TARGET_SECTION_TYPE_FLAGS): Likewise.
* config/alpha/alpha-protos.h (vms_output_aligned_decl_common): New.
* config/alpha/vms.h (ASM_OUTPUT_ALIGNED_COMMON): Delete.
(ASM_OUTPUT_ALIGNED_DECL_COMMON): New macro.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150645
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Tue, 11 Aug 2009 04:30:35 +0000 (04:30 +0000)]
2009-08-10 Benjamin Kosnik <bkoz@redhat.com>
* include/std/future: Move error handling bits outside macro guard.
* src/future.cc: Adjust.
* include/precompiled/stdc++.h: Add future.
* doc/xml/manual/using.xml: Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150642
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Tue, 11 Aug 2009 01:24:59 +0000 (01:24 +0000)]
2009-08-10 Benjamin Kosnik <bkoz@redhat.com>
* src/hashtable.cc: Just definitions.
* src/hashtable_c++0x.cc: Compile C++0x versions.
* src/hash.cc: Same.
* src/hash_c++0x.cc: Same.
src/hash_tr1.cc: Compile TR1 versions.
src/hashtable_tr1.cc: Same.
* src/limits_c++0x.cc: Sync build error handling.
* src/Makefile.am (sources): Change hash.cc to hash_tr1.cc,
hashtable.cc to hashtable_tr1.cc.
* src/Makefile.in: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150641
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Tue, 11 Aug 2009 00:29:21 +0000 (00:29 +0000)]
2009-08-10 Benjamin Kosnik <bkoz@redhat.com>
* include/tr1_impl/functional: Doxygen markup.
* doc/html/*: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150640
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 11 Aug 2009 00:16:39 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150639
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Mon, 10 Aug 2009 20:57:35 +0000 (20:57 +0000)]
PR target/41015
* longlong.h [__sh__] (udiv_qrnnd): Add T register to clobber list.
(sub_ddmmss): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150635
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 10 Aug 2009 20:47:55 +0000 (20:47 +0000)]
Implement DR 757: It's OK for a decl to use a type without linkage
so long as the decl is defined in the current translation unit.
* decl2.c (no_linkage_decls): New vector.
(mark_used): Add decls that use types with no linkage.
(cp_write_global_declarations): Check that they are defined.
(decl_defined_p, no_linkage_error): New fns.
* cp-tree.h (DECL_NO_LINKAGE_CHECKED): New macro.
(struct lang_decl_base): Add flag.
* decl.c (grokfndecl): Don't check type linkage.
(grokvardecl): If the type has no linkage, just make sure
DECL_LANG_SPECIFIC is set.
* pt.c (check_instantiated_arg): Don't check type linkage.
* name-lookup.c (is_local_extern): New fn.
* name-lookup.h: Declare it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150634
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Mon, 10 Aug 2009 18:24:47 +0000 (18:24 +0000)]
2009-08-10 Benjamin Kosnik <bkoz@redhat.com>
* include/std/future: Fixes for -fno-exceptions.
* include/bits/functexcept.h: Same.
* libsupc++/exception_ptr.h: Same.
* src/pool_allocator.cc: Same.
* src/future.cc: Same.
* src/functexcept.cc: Same.
* config/abi/pre/gnu.ver: New exports.
* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Same.
* testsuite/30_threads/unique_future/cons/assign_neg.cc: Same.
* testsuite/30_threads/unique_future/cons/copy_neg.cc: Same.
* testsuite/30_threads/shared_future/cons/assign_neg.cc: Same.
* testsuite/30_threads/promise/cons/assign_neg.cc: Same.
* testsuite/30_threads/promise/cons/copy_neg.cc: Same.
* testsuite/23_containers/deque/operators/1.cc: Separate in two...
* testsuite/23_containers/deque/operators/2.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150633
138bc75d-0d04-0410-961f-
82ee72b054a4
andreast [Mon, 10 Aug 2009 18:23:57 +0000 (18:23 +0000)]
2009-08-10 Andreas Tobler <a.tobler@schweiz.org>
PR bootstrap/41018
* config/rs6000/freebsd.h: Define SVR4_ASM_SPEC. Adjust copyright
year.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150632
138bc75d-0d04-0410-961f-
82ee72b054a4
manu [Mon, 10 Aug 2009 17:10:50 +0000 (17:10 +0000)]
2009-08-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
testsuite/
* gcc.dg/dg.exp: Test also c-c++-common dir.
* g++.dg/dg.exp: Likewise.
* g++.dg/warn/Wconversion-real.C: Delete.
* gcc.dg/Wconversion-real.c: Move to ...
* c-c++-common/Wconversion-real.c: ... here.
* lib/target-supports.exp
(check_effective_target_c,check_effective_target_c++): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150627
138bc75d-0d04-0410-961f-
82ee72b054a4
uweigand [Mon, 10 Aug 2009 15:34:09 +0000 (15:34 +0000)]
PR target/37053
* reload1.c (reload_as_needed): Use cancel_changes to completely
undo a failed replacement attempt.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150626
138bc75d-0d04-0410-961f-
82ee72b054a4
nvachhar [Mon, 10 Aug 2009 14:57:24 +0000 (14:57 +0000)]
* Moved ChangeLog entry to the correct ChangeLog
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150625
138bc75d-0d04-0410-961f-
82ee72b054a4
guerby [Mon, 10 Aug 2009 10:52:37 +0000 (10:52 +0000)]
2009-08-10 Laurent GUERBY <laurent@guerby.net>
* make.adb: Handle multilib
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150623
138bc75d-0d04-0410-961f-
82ee72b054a4
domob [Mon, 10 Aug 2009 10:51:46 +0000 (10:51 +0000)]
2009-08-10 Daniel Kraft <d@domob.eu>
PR fortran/37425
* gfortran.dg/typebound_operator_1.f03: New test.
* gfortran.dg/typebound_operator_2.f03: New test.
2009-08-10 Daniel Kraft <d@domob.eu>
PR fortran/37425
* gfortran.h (struct gfc_namespace): New fields tb_uop_root and tb_op.
(gfc_find_typebound_user_op): New routine.
(gfc_find_typebound_intrinsic_op): Ditto.
(gfc_check_operator_interface): Now public routine.
* decl.c (gfc_match_generic): Match OPERATOR(X) or ASSIGNMENT(=).
* interface.c (check_operator_interface): Made public, renamed to
`gfc_check_operator_interface' accordingly and hand in the interface
as gfc_symbol rather than gfc_interface so it is useful for type-bound
operators, too. Return boolean result.
(gfc_check_interfaces): Adapt call to `check_operator_interface'.
* symbol.c (gfc_get_namespace): Initialize new field `tb_op'.
(gfc_free_namespace): Free `tb_uop_root'-based tree.
(find_typebound_proc_uop): New helper function.
(gfc_find_typebound_proc): Use it.
(gfc_find_typebound_user_op): New method.
(gfc_find_typebound_intrinsic_op): Ditto.
* resolve.c (resolve_tb_generic_targets): New helper function.
(resolve_typebound_generic): Use it.
(resolve_typebound_intrinsic_op), (resolve_typebound_user_op): New.
(resolve_typebound_procedures): Resolve operators, too.
(check_uop_procedure): New, code from gfc_resolve_uops.
(gfc_resolve_uops): Moved main code to new `check_uop_procedure'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150622
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 10 Aug 2009 09:22:47 +0000 (09:22 +0000)]
2009-08-10 Richard Guenther <rguenther@suse.de>
PR middle-end/41006
* tree-ssa.c (useless_type_conversion_p_1): Fold into ...
(useless_type_conversion_p): ... here. Require pointer targets
to be compatible.
* gcc.c-torture/compile/pr41006-1.c: New testcase.
* gcc.c-torture/compile/pr41006-2.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150621
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Mon, 10 Aug 2009 09:19:24 +0000 (09:19 +0000)]
2009-08-10 Janus Weil <janus@gcc.gnu.org>
PR fortran/40940
* decl.c (gfc_match_type_spec): Match CLASS statement and warn about
missing polymorphism.
* gfortran.h (gfc_typespec): Add field 'is_class'.
* misc.c (gfc_clear_ts): Initialize 'is_class' to zero.
* resolve.c (type_is_extensible): New function to check if a derived
type is extensible.
(resolve_fl_variable_derived): Add error checks for CLASS variables.
(resolve_typebound_procedure): Disallow non-polymorphic passed-object
dummy arguments, turning warning into error.
(resolve_fl_derived): Use 'type_is_extensible'. Disallow non-polymorphic
passed-object dummy arguments for procedure pointer components,
turning warning into error. Add error check for CLASS components.
2009-08-10 Janus Weil <janus@gcc.gnu.org>
PR fortran/40940
* gfortran.dg/class_1.f03: New.
* gfortran.dg/class_2.f03: New.
* gfortran.dg/proc_ptr_comp_pass_1.f90: Use CLASS instead of TYPE.
* gfortran.dg/proc_ptr_comp_pass_2.f90: Ditto.
* gfortran.dg/proc_ptr_comp_pass_3.f90: Ditto.
* gfortran.dg/typebound_call_10.f03: Ditto.
* gfortran.dg/typebound_call_2.f03: Ditto.
* gfortran.dg/typebound_call_3.f03: Ditto.
* gfortran.dg/typebound_call_4.f03: Ditto.
* gfortran.dg/typebound_generic_3.f03: Ditto.
* gfortran.dg/typebound_generic_4.f03: Ditto.
* gfortran.dg/typebound_proc_1.f08: Ditto.
* gfortran.dg/typebound_proc_5.f03: Ditto.
* gfortran.dg/typebound_proc_6.f03: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150620
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 10 Aug 2009 08:33:30 +0000 (08:33 +0000)]
2009-08-10 Vincent Celier <celier@adacore.com>
* prj-env.adb (Create_Config_Pragmas_File.Write_Temp_File): Do not use
the temporary file name in the error message when the temporary file
cannot be created.
2009-08-10 Yannick Moy <moy@adacore.com>
* gnat_ugn.texi: Fix typo
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150619
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 10 Aug 2009 08:25:49 +0000 (08:25 +0000)]
2009-08-10 Robert Dewar <dewar@adacore.com>
* exp_ch7.adb: Add ??? comment for last change
2009-08-10 Vincent Celier <celier@adacore.com>
* prj-env.adb (Add_To_Buffer): New procedure
(Create_Config_Pragmas_File): Write to temporary file in one shot
(Create_Mapping_File): Ditto
(Set_Ada_Paths): Ditto
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150618
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 10 Aug 2009 08:25:05 +0000 (08:25 +0000)]
2009-08-10 Vincent Celier <celier@adacore.com>
PR ada/17566
* xref_lib.adb (Print_Xref): Make sure that there is at least one space
between a declaration name and its type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150617
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Mon, 10 Aug 2009 07:16:08 +0000 (07:16 +0000)]
2009-08-10 Dodji Seketeli <dodji@redhat.com>
gcc/ChangeLog:
PR c++/40866
* tree-inline.c (copy_statement_list): The resulting copy shouldn't
loose the original type of the statement list.
gcc/testsuite/ChangeLog:
PR c++/40866
* g++.dg/expr/stmt-expr-1.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150615
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Mon, 10 Aug 2009 04:50:23 +0000 (04:50 +0000)]
* config/alpha/alpha.c: Include libfuncs.h
(avms_asm_output_extern): New function.
(alpha_init_libfuncs): Init some decc libfuncs.
* config/alpha/alpha-protos.h (avms_asm_output_external): Declare.
* config/alpha/vms.h (ASM_OUTPUT_EXTERNAL): Define.
(DO_CRTL_NAMES): Define.
(LIB_SPEC): Remove.
* config/alpha/vms64.h: (POINTERS_EXTEND_UNSIGNED): Remove undef.
(LONG_TYPE_SIZE): Define.
(TARGET_OS_CPP_BUILTINS): Define with __LONG_POINTERS=1
(SUBTARGET_SWITCHES): Define malloc64 switch.
(TARGET_DEFAULT): Default MASK_MALLOC64 set.
(MASK_RETURN_ADDR): Define.
doc/invoke.texi (mmalloc64): Document switch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150614
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Mon, 10 Aug 2009 04:38:02 +0000 (04:38 +0000)]
* config/alpha/alpha.c (struct machine_function): New flag for VMS,
uses_condition_handler.
(alpha_expand_builtin_establish_vms_condition_handler): New expander.
(alpha_expand_builtin_revert_vms_condition_handler): New expander.
(enum alpha_builtin): New ALPHA_BUILTIN_REVERT_VMS_CONDITION_HANDLER
and ALPHA_BUILTIN_ESTABLISH_VMS_CONDITION_HANDLER values.
(code_for_builtin): New insn codes for the new alpha_builtins.
(alpha_init_builtins): Register the new functions as BUILT_IN_MD.
(alpha_sa_size): Account for uses_condition_handler.
(alpha_expand_prologue): Likewise.
(alpha_start_function): Likewise.
(alpha_expand_epilogue): Likewise.
* config/alpha/alpha-protos.h: Prototype the new alpha.c builtin
establish/revert expanders.
* config/alpha/alpha.h (DWARF_FRAME_REGNUM): Define.
* config/alpha/alpha.md (builtin_establish_vms_condition_handler):
New expander, resorting to the alpha.c associated function.
(builtin_revert_vms_condition_handler): Likewise.
* config/alpha/vms-gcc_shell_handler.c: New file. Implements
__gcc_shell_handler, the static VMS condition handler used as
an indirection wrapper to the current dynamically established
handler.
* config/alpha/vms-unwind.h: Complete rewrite.
* config/alpha/t-vms (LIB2FUNCS_EXTRA): Add vms-gcc_shell_handler.c
* config/alpha/vms.h (MD_UNWIND_SUPPORT):
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150612
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Mon, 10 Aug 2009 04:12:45 +0000 (04:12 +0000)]
* config/alpha/alpha.c (alpha_links): Add 'target' field.
(alpha_need_linkage): Handle aliases. Return function symbol.
(alpha_use_linkage): Rename 'linkage' argument to 'func'.
Use ultimate alias target for the linkage name.
* config/alpha/alpha.md (movmemdi): Use the symbol returned
by alpha_need_linkage for the function symbol.
(setmemdi): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150611
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Mon, 10 Aug 2009 04:05:54 +0000 (04:05 +0000)]
* config/alpha/alpha.c (TARGET_ASM_UNALIGNED_*_OP): Define if on VMS.
* config/alpha/vms.h (OBJECT_FORMAT_ELF): Define.
(ASM_WEAKEN_LABEL): Define.
(CRT_CALL_STATIC_FUNCTION): Define.
(STARTFILE_SPEC): Add crtbegin.o crtbeginS.o.
(ENDFILE_SPEC): Define.
(INIT_SECTION_ASM_OP): Define.
* config/alpha/vms-dwarf2eh.asm (__EH_FRAME_BEGIN__): Remove.
* config/alpha/t-vms (EXTRA_PARTS): Add crtbegin.o crtbeginS.o
crtend.o crtendS.o.
(MULTILIB_OSDIRNAMES): Define.
(shlib_version): Define.
(SHLIB_EXT): Define.
(SHLIB_OBJS): Define.
(SHLIB_NAME): Define.
(SHLIB_MULTILIB): Define.
(SHLIB_INSTALL): Define.
(SHLIB_SYMVEC): Define.
(SHLIB_SYMVECX2): Define.
(SHLIB_LINK): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150610
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Mon, 10 Aug 2009 03:56:39 +0000 (03:56 +0000)]
* config/alpha/alpha.c (alpha_initialize_trampoline):
Initialize VMS trampoline IAW ABI for bounded procedure calls.
(alpha_start_function): Emit transfer address on nested functions
for VMS trampoline call.
* config/alpha/t-vms (LIB2FUNCS_EXTRA): Remove vms_tramp.asm
since no longer used.
* config/alpha/vms-tramp.asm: Remove.
* config/alpha/vms.h (TRAMPOLINE_TEMPLATE): Leave undefined
since now only data initialized at runtime.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150609
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Mon, 10 Aug 2009 03:26:59 +0000 (03:26 +0000)]
* config/alpha/vms.h (HANDLE_SYSV_PRAGMA): Define.
(LINK_GCC_C_SEQUENCE_SPEC): Define.
(MD_EXEC_PREFIX): Remove, no longer used.
(MD_STARTFILE_PREFIX): Likewise.
(INCLUDE_DEFAULTS): Likewise.
* config/alpha/t-vms:
(vms-dwarf2.o, vms-dwarf2eh.o): Use GCC_FOR_TARGET to compile.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150608
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 10 Aug 2009 00:16:46 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150603
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Sun, 9 Aug 2009 20:10:41 +0000 (20:10 +0000)]
2009-08-09 Richard Guenther <rguenther@suse.de>
PR tree-optimization/41016
* tree-ssa-ifcombine.c (get_name_for_bit_test): Fix tuplification
bug.
(operand_precision): Remove.
(integral_operand_p): Likewise.
(recognize_single_bit_test): Adjust.
* gcc.c-torture/compile/pr41016.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150595
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sun, 9 Aug 2009 18:38:04 +0000 (18:38 +0000)]
gcc/
* c-common.c (c_fully_fold_internal): Issue a warning if a binary
operation overflows. Likewise non-cast unary arithmetic.
If one arm of a conditional expression is always taken,
inhibit evaluation warnings for the other arm. Likewise inhibit
evaluation warnings for the second && or || operand if the first
operand is enough to determine the result.
* c-typeck.c (build_conditional_expr): Apply the same inhibition
rules here.
(build_binary_op): Prevent duplicate evaluation warnings.
gcc/testsuite/
* gcc.dg/overflow-warn-8.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150594
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sun, 9 Aug 2009 15:56:27 +0000 (15:56 +0000)]
gcc/
* tree-out-of-ssa.c (insert_value_copy_on_edge): If the source
and destination have different modes, Use promote_mode to
determine the signedness of the conversion. Assert that the
promoted source mode matches the destination mode. Don't pass
the destination and destination mode to expand_expr if the source
mode is different. Simplify conversion logic.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150592
138bc75d-0d04-0410-961f-
82ee72b054a4
irar [Sun, 9 Aug 2009 12:13:19 +0000 (12:13 +0000)]
PR tree-optimization/41008
* tree-vect-loop.c (vect_is_simple_reduction): Get operands
from condition only in case it's a comparison. Adjust checks.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150591
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sun, 9 Aug 2009 11:02:08 +0000 (11:02 +0000)]
PR libfortran/40549
* Makefile.in (LTLDFLAGS): Add -no-undefined.
* Makefile.am: Regenerate.
* libgfortran.h: Remove unused block of code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150590
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Sun, 9 Aug 2009 08:35:36 +0000 (08:35 +0000)]
2009-08-05 Tobias Burnus <burnus@net-b.de>
PR fortran/40955
* gfortran.h (ext_attr_id_t): Add typedef for this enum.
(gfc_add_ext_attribute): Use it.
* decl.c (gfc_match_gcc_attributes): Ditto.
* expr.c (gfc_check_pointer_assign): Ditto.
* symbol.c (gfc_add_ext_attribute): Ditto.
(gfc_copy_attr): Copy also ext_attr.
* resolve.c (resolve_fl_derived,resolve_symbol): Ditto.
* module.c (mio_symbol_attribute): Save ext_attr in the mod
* file.
2009-08-05 Tobias Burnus <burnus@net-b.de>
PR fortran/40955
* gfortran.dg/module_md5_1.f90: Update MD5 check sum.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150589
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Sun, 9 Aug 2009 07:59:12 +0000 (07:59 +0000)]
* tree-dfa.c (renumber_gimple_stmt_uids_in_blocks): New function.
* tree-flow.h (renumber_gimple_stmt_uids_in_blocks): Declare it.
* tree-ssa-loop-ivopts.c (comp_cost): Make COST an integer.
(enum iv_position): Add IP_AFTER_USE and IP_BEFORE_USE.
(dump_cand): Handle them.
(struct iv_cand): New members COST_STEP and AINC_USE.
(stmt_after_increment): Likewise.
(stmt_after_inc_pos): Renamed from stmt_after_ip_original_pos. All
callers changed. Use gimple_uid comparison instead of scanning.
(add_candidate_1): When looking for identical candidates, take
AINC_USE into account. Set it for new candidates.
(force_expr_to_var_cost): Cast target_spill_cost to int.
(get_address_cost): New arguments STMT_AFTER_INC and MAY_AUTOINC.
All callers changed. Check for availability of autoinc addressing
modes, both in general for a given mode, and in the specific use
case.
(get_computation_cost_at): New argument CAN_AUTOINC. All callers
changed.
(get_computation_cost): Likewise.
(autoinc_possible_for_pair, set_autoinc_for_original_candidates,
add_autoinc_candidates): New static functions.
(add_candidate): Call add_autoinc_candidates for candidates based on
a USE_ADDRESS use.
(find_iv_candidates): Call set_autoinc_for_original_candidates.
(determine_use_iv_cost_address): If we have an autoinc candidate at
the matching use, verify autoinc is possible and subtract the cost
of the candidate's step from the cost.
(determine_iv_cost): Record the cost of the increment in the COST_STEP
member of the candidate.
(tree_ssa_iv_optimize_loop): Swap the calls to determine_iv_costs and
determine_use_iv_costs. Call renumber_gimple_stmt_uids_in_blocks.
testsuite/
* gcc.target/bfin/loop-autoinc.c: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150588
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Sun, 9 Aug 2009 07:05:11 +0000 (07:05 +0000)]
* config.build (ia64-hp-*vms*): New target.
(alpha64-dec-*vms*,alpha*-dec-*vms*): Fix for config/vms and unify
with ia64-hp-*vms*.
* config.gcc (ia64-hp-*vms*): New target.
(alpha64-dec-*vms*,alpha*-dec-*vms*): Fix for config/vms and unify
with ia64-hp-*vms*.
* config.host (ia64-hp-*vms*): New target.
(alpha64-dec-*vms*,alpha*-dec-*vms*): Fix for config/vms and unify
with ia64-hp-*vms*.
* libgcc/config.host (ia64-hp-*vms*): New target.
(alpha64-dec-*vms*,alpha*-dec-*vms*): Fix for config/vms and unify
with ia64-hp-*vms*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150587
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 9 Aug 2009 00:17:07 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150584
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Sat, 8 Aug 2009 15:32:36 +0000 (15:32 +0000)]
2009-08-08 Richard Guenther <rguenther@suse.de>
PR tree-optimization/40991
* tree-ssa-pre.c (eliminate): Delay purging EH edges.
* g++.dg/torture/pr40991.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150580
138bc75d-0d04-0410-961f-
82ee72b054a4
guerby [Sat, 8 Aug 2009 11:35:44 +0000 (11:35 +0000)]
2009-08-08 Laurent GUERBY <laurent@guerby.net>
* ada/acats/support/impdef.a: Tweak timing constants. Add
Long_Minimum_Task_Switch and Long_Switch_To_New_Task.
* ada/acats/tests/c9/
c940005.a: Use new timing constants.
* ada/acats/tests/c9/
c940007.a: Likewise.
* ada/acats/tests/c9/
c94001c.ada: Likewise.
* ada/acats/tests/c9/
c94006a.ada: Likewise.
* ada/acats/tests/c9/
c94008c.ada: Likewise.
* ada/acats/tests/c9/
c951002.a: Likewise.
* ada/acats/tests/c9/
c954a01.a: Likewise.
* ada/acats/tests/c9/
c96001a.ada: Likewise.
* ada/acats/tests/c9/
c97307a.ada: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150579
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sat, 8 Aug 2009 08:32:24 +0000 (08:32 +0000)]
gcc/
* combine.c (gen_lowpart_or_truncate): Exclude CONST_INTs from
mode check. Do truncations in an integer mode.
(force_to_mode): Handle subregs for all mode types. Only do
arithmetic simplifications on integer modes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150578
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 8 Aug 2009 00:16:56 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150577
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 7 Aug 2009 17:02:43 +0000 (17:02 +0000)]
2009-08-07 Richard Guenther <rguenther@suse.de>
PR tree-optimization/40999
* tree-ssa-ccp.c (get_symbol_constant_value): Handle CONST_DECLs.
(maybe_fold_reference): Lookup constant initializers.
(fold_gimple_assign): Likewise.
* gfortran.dg/pr40999.f: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150572
138bc75d-0d04-0410-961f-
82ee72b054a4
dodji [Fri, 7 Aug 2009 13:13:12 +0000 (13:13 +0000)]
2009-08-07 Dodji Seketeli <dodji@redhat.com>
PR c++/39987
* gcc/testsuite/g++.dg/overload/defarg4.C: Oops, forgot to add
the testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150568
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Fri, 7 Aug 2009 10:13:44 +0000 (10:13 +0000)]
2009-08-07 Paolo Carlini <paolo.carlini@oracle.com>
* src/hash.cc (hash<string>::operator()(string),
hash<wstring>::operator()(wstring)): Do not decorate as throwing
nothing.
* include/bits/functional_hash.h (hash<error_code>::
operator()(error_code)): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150566
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 7 Aug 2009 09:58:18 +0000 (09:58 +0000)]
2009-08-07 Javier Miranda <miranda@adacore.com>
* exp_ch7.adb (Wrap_Transient_Expression): Add missing adjustment of
SCIL node.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150565
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 7 Aug 2009 09:55:42 +0000 (09:55 +0000)]
2009-08-07 Robert Dewar <dewar@adacore.com>
* sem_warn.adb (Warn_On_Unreferenced_Entity): Fix obvious typo.
2009-08-07 Vincent Celier <celier@adacore.com>
* gnatcmd.adb (GNATCmd): If -U is not used, one and only one main is
specified on the command line and there are switches in the Compiler
package of the project file, use these compilation switches to invoke
the tool.
2009-08-07 Ben Brosgol <brosgol@adacore.com>
* gnat_ugn.texi: Wordsmithing edits at beginning of gnatcheck chapter.
2009-08-07 Ed Schonberg <schonberg@adacore.com>
* sem_ch10.adb (Analyze_Proper_Body): Indicate name of missing subunit
even if not in main unit, to simplify debugging.
2009-08-07 Arnaud Charlet <charlet@adacore.com>
* gcc-interface/Makefile.in: Fix handling of GCC_FOR_TARGET.
* gcc-interface/Make-lang.in: Update dependencies.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150564
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 7 Aug 2009 09:42:01 +0000 (09:42 +0000)]
2009-08-07 Robert Dewar <dewar@adacore.com>
* types.ads: Minor reformatting
* sem_ch12.ads (Check_Generic_Child_Unit): Add missing documentation.
* frontend.adb, sem_warn.adb, sem_warn.ads: Fix spelling of
Output_Non_Modified_In_Out_Warnings.
* sem_ch13.adb: Remove ??? comment.
2009-08-07 Vincent Celier <celier@adacore.com>
* mlib-prj.adb (Build_Library): Include binder generate object file
for SAL when library name is only one character.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150563
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 7 Aug 2009 09:29:01 +0000 (09:29 +0000)]
2009-08-07 Thomas Quinot <quinot@adacore.com>
* targparm.adb: Minor reformatting
* sem.adb: Minor reformatting
* exp_ch4.adb (Expand_N_Conditional_Expression): Add comment.
2009-08-07 Emmanuel Briot <briot@adacore.com>
* prj-conf.adb: Remove duplicate directory separator in the output when
an object directory does not exist.
2009-08-07 Robert Dewar <dewar@adacore.com>
* exp_util.adb: Minor reformatting
2009-08-07 Vincent Celier <celier@adacore.com>
* mlib-prj.adb (Build_Library): Fixed bug in name of ALI file (wrong
length used).
2009-08-07 Ed Schonberg <schonberg@adacore.com>
* exp_ch9.adb (Expand_N_Protected_Type_Declaration): In Ravenscar mode,
detect non-static private components that will violate restriction
No_Implicit_Heap_Allocation.
2009-08-07 Ben Brosgol <brosgol@adacore.com>
* gnat_ugn.texi: Edited Rule Exemption section of gnatcheck chapter.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150562
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 7 Aug 2009 09:10:13 +0000 (09:10 +0000)]
* dwarf2out.c (output_fde): When doing hot/cold partitioning, use
fde->dw_fde_begin as begin label instead of hot/cold label.
Use LLSDAC label instead of LLSDA for second section lsda.
(dwarf2out_do_cfi_startproc): Add SECOND argument. Use LLSDAC
label instead of LLSDA if it is true.
(dwarf2out_begin_prologue, dwarf2out_switch_text_section): Adjust
callers.
* except.c (add_call_site, dw2_size_of_call_site_table): Add
SECTION argument. Use it as index into crtl->eh.call_site_record
array.
(dw2_output_call_site_table): Likewise. Add CS_FORMAT argument,
use it to determine how to print table entries instead of using
#ifdef HAVE_AS_LEB128. For SECTION > 0 use hot resp. cold
label instead of normal begin label as base.
(sjlj_assign_call_site_values): Adjust add_call_site caller.
(convert_to_eh_region_ranges): When doing hot/cold partitioning,
ensure no EH range spans between sections and that landing pads
are always in the corresponding section.
(sjlj_size_of_call_site_table, sjlj_output_call_site_table): Adjust
for crtl->eh.call_site_record being an array rather than scalar.
(output_one_function_exception_table): New function, copied
from output_function_exception_table. Adjust
dw2_size_of_call_site_table, dw2_output_call_site_table
callers. For SECOND section use *C suffixed labels.
(output_function_exception_table): Call
output_one_function_exception_table and, when doing hot/cold
partitioning, also another time for the second section.
* opts.c: Include except.h.
(decode_options): Allow -freorder-blocks-and-partition with
exceptions, unless SJLJ or TARGET_UNWIND_INFO.
* Makefile.in (opts.o): Depend on $(EXCEPT_H).
* function.h (struct rtl_eh): Change call_site_record from
scalar into array of 2 elements.
* g++.dg/tree-prof/partition1.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150560
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 7 Aug 2009 08:54:53 +0000 (08:54 +0000)]
2009-08-07 Richard Guenther <rguenther@suse.de>
* tree-ssa.c (useless_type_conversion_p_1): Only for types
that require structural equality defer to the langhook.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150559
138bc75d-0d04-0410-961f-
82ee72b054a4