gcc/
2006-12-20 Carlos O'Donell <carlos@codesourcery.com>
PR bootstrap/30242
* gcc/c-incpath.c (add_standard_paths): Only relocate paths that
begin with the configured prefix.
From-SVN: r120088
2006-12-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/30190
* trans-array.c (gfc_conv_array_ref): Remove gfc_evaluate_now
from the -fbounds-check branch.
2006-12-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/30190
* gfortran.dg/bounds_check_5.f90: New test.
From-SVN: r120084
2006-12-20 Andrew Pinski <pinskia@gmail.com>
PR middle-end/30143
* omp-low.c (init_tmp_var): New function.
(save_tmp_var): New function.
(lower_omp_1): Use them for VAR_DECL.
2006-12-20 Andrew Pinski <pinskia@gmail.com>
PR middle-end/30143
* gcc.dg/gomp/complex-1.c: New testcase.
From-SVN: r120080
* trans-expr.c (is_zero_initializer_p): Determine whether a given
constant expression is a zero initializer.
(gfc_trans_zero_assign): New function to attempt to optimize
"a(:) = 0.0" as a call to __builtin_memset (a, 0, sizeof(a));
(gfc_trans_assignment): Special case array assignments to a
zero initializer constant, using gfc_trans_zero_assign.
* gfortran.dg/array_memset_1.f90: New test case.
From-SVN: r120078
2006-12-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29992
* interface.c (check_sym_interfaces): Module procedures in a
generic must be use associated or contained in the module.
* decl.c (gfc_match_modproc): Set attribute mod_proc.
* gfortran.h (symbol_attribute): Add mod_proc atribute.
PR fortran/30081
* resolve.c (resolve_generic_f, resolve_generic_s): Use
gfc_intrinsic_name to find out if the function is intrinsic
because it does not have to be a generic intrinsic to be
overloaded.
2006-12-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29992
* gfortran.dg/generic_9.f90: New test.
PR fortran/30081
* gfortran.dg/generic_10.f90: New test.
From-SVN: r120072
2006-12-19 Andrew Pinski <pinskia@gmail.com>
PR tree-opt/30045
* tree-vrp.c (nonnull_arg_p): Treat the static decl as always
non null.
2006-12-19 Andrew Pinski <pinskia@gmail.com>
PR tree-opt/30045
* gcc.dg/pr30045.c: New test
From-SVN: r120069
2006-12-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/30236
* interface.c (compare_interfaces): Handle NULL symbols.
(count_types_test): Count NULL symbols, which correspond to
alternate returns.
(check_interface1): Change final argument from int to bool
in the function and all references.
2006-12-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/30236
* gfortran.dg/altreturn_3.f90: New test.
* gfortran.dg/char_result_12.f90: Fix comment typos.
From-SVN: r120052
2006-12-19 Paolo Bonzini <bonzini@gnu.org>
* configure.in: Remove "$build" case for powerpc-*-darwin* since
it only affects bootstrap and could be tested on "$host" as well.
* configure: Regenerate.
* config/mh-ppc-darwin: Add to the stage1 cflags here.
From-SVN: r120049
2006-12-18 Andrew Pinski <pinskia@gmail.com>
PR target/29779
* config/rs6000/rs6000.c (altivec_init_builtins): Change to set
READONLY on __builtin_altivec_mask_for_load instead of adding
the attribute.
From-SVN: r120045
2006-12-18 Roger Sayle <roger@eyesopen.com>
Eric Christopher <echristo@apple.com>
PR target/29302
* real.c (real_maxval): Correctly handle IBM extended double format.
Co-Authored-By: Eric Christopher <echristo@apple.com>
From-SVN: r120040
./: * c.opt (Wmissing-declarations): Add C++ and ObjC++.
* doc/invoke.texi (Warning Options): -Wmissing-declarations now
works for C++.
cp/:
* decl.c (start_preparsed_function): Add support for
-Wmissing-declarations.
testsuite:
* g++.dg/warn/Wmissing-declarations-1.C: New test.
From-SVN: r120012
2006-12-18 Andrew MacLeod <amacleod@redhat.com>
* tree-ssa-operands.h (struct vdef_optype_d): Rename to voptype_d.
(struct vuse_optype_d): Delete.
(SSA_OPERAND_MEMORY_SIZE): Delete.
(struct ssa_operand_memory_d): Change mem array to size one.
(NUM_VOP_FREE_BUCKETS): Define.
(free_vuses, free_vdefs): Replace with vop_free_buckets array.
(vdef_ops, vuse_ops, struct ssa_operand_iterator_d): Use voptype_d type.
* tree-pretty-print.c (dump_vops): Use voptype_d type.
* tree-ssa-operands.c (vop_free_bucket_size): New. Number of operands
which fit into a chunk of memory from a specific bucket.
(vop_free_bucket_index): New. Find correct size memory bucket.
(init_vop_buckets): New. Initialize VOP free memory buckets.
(add_vop_to_freelist): New. Add a VOP to the correct free list.
(ssa_operand_mem_size): New. Current size of an operand memory chunk.
(init_ssa_operands): Initialize operand memory and free lists.
(fini_ssa_operands): Remove references to free_vuses and free_vdefs.
(ssa_operand_alloc): Use graduated size memory allocation.
(APPEND_OP_AFTER, MOVE_HEAD_AFTER, MOVE_HEAD_TO_FREELIST,
INITIALIZE_USE): Remove.
(alloc_vop): New. Allocate a virtual operand.
(alloc_vdef, alloc_vuse): Delete.
(add_def_op, add_use_op): Directly setup pointers.
(add_vop): New. Add a virtual operand.
(add_vuse_op, add_vdef_op): Call add_vop.
(realloc_vop): New. Reallocate a virtual operand.
(realloc_vdef, realloc_vuse): Call realloc_vop.
(finalize_ssa_def_ops): Delete. Move content to finalize_ssa_defs.
(finalize_ssa_defs): Optimize for common case, remove code based on
sorted pointers which was a waste of time.
(finalize_ssa_use_ops): Delete. Move content to finalize_ssa_uses.
(finalize_ssa_uses): Update last pointer.
(finalize_ssa_vdef_ops): Delete. Move content to finalize_ssa_vdefs.
(finalize_ssa_vdefs, finalize_ssa_vuse_ops): Use voptype_d and
directly manipulate pointers.
(copy_virtual_operands): Use voptype_d, and no need to update pointers.
From-SVN: r120009
2006-12-18 Adam Megacz <megacz@cs.berkeley.edu>
* Makefile.am: remove @X_CFLAGS@ from AM_CXXFLAGS; it causes
-I/usr/include to wind up in cross-builds
* configure: Regenerate.
From-SVN: r120006
* cselib.c (struct cselib_val_struct): Make val_rtx its
own field, remove the union that contained it.
* cselib.c: Update accordingly where necessary.
From-SVN: r119994
* cse.c (have_eh_succ_edges): New function.
(cse_insn): Don't remove dead EH edges here
(cse_extended_basic_block): Do it here.
(rest_of_handle_cse, rest_of_handle_cse2): Don't assert
that we have removed all dead edges.
From-SVN: r119993
2006-12-17 Roger Sayle <roger@eyesopen.com>
Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/30207
* dependency.c (gfc_full_array_ref_p): New function to test whether
the given array ref specifies the entire array.
(gfc_dep_resolver): Use gfc_full_array_ref_p to analyze AR_FULL
array refs against AR_SECTION array refs, and vice versa.
* dependency.h (gfc_full_array_ref_p): Prototype here.
* trans-array.c (gfc_conv_expr_descriptor): Use gfc_full_array_ref_p.
* gfortran.fortran-torture/execute/where21.f90: New test.
From-SVN: r119990