* src/powerpc/ffi_darwin.c (ffi_prep_args): Copy abi and nargs to
local variables.
(aix_adjust_aggregate_sizes): New function.
(ffi_prep_cif_machdep): Call it.
From-SVN: r155492
2009-12-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Daniel Kraft <d@domob.eu>
PR fortran/22552
* lang.opt (Wimplicit-procedure): New option.
* gfortran.h (struct gfc_option_t): New member `warn_implicit_procedure'
* options.c (gfc_handle_option): Handle -Wimplicit-procedure.
* interface.c (gfc_procedure_use): Warn about procedure never
explicitly declared if requested by the new flag.
* invoke.texi: Document new flag -Wimplicit-procedure.
2009-12-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Daniel Kraft <d@domob.eu>
PR fortran/22552
* gfortran.dg/warn_implicit_procedure_1.f90: New test.
Co-Authored-By: Daniel Kraft <d@domob.eu>
From-SVN: r155479
2009-12-26 Andreas Tobler <a.tobler@schweiz.org>
* configure.ac: Define FFI_MMAP_EXEC_WRIT for the given targets.
* configure: Regenerate.
* fficonfig.h.in: Likewise.
* src/closures.c: Remove the FFI_MMAP_EXEC_WRIT definition for
Solaris/x86.
From-SVN: r155475
* src/powerpc/ffi.c (ffi_prep_args_SYSV): Advance intarg_count
when a float arguments is passed in memory.
(ffi_closure_helper_SYSV): Mark general registers as used up when
a 64bit or soft-float long double argument is passed in memory.
From-SVN: r155473
PR c++/41305, DR 384
* name-lookup.c (arg_assoc_class): Split out arg_assoc_class_only
and arg_assoc_bases.
(friend_of_associated_class_p): Remove.
(arg_assoc_namespace): Don't call it.
(arg_assoc_template_arg): Use arg_assoc_class_only for member
template context.
(arg_assoc_type): Handle UNION_TYPE and ENUMERAL_TYPE properly.
* name-lookup.c (arg_assoc): Handle TEMPLATE_ID_EXPR properly.
From-SVN: r155461
2009-12-24 Andy Hutchinson <hutchinsonandy@gcc.gnu.org>
PR target/42457
* config/avr/avr.c (avr_extra_arch_macro): Remove static.
(avr_cpu_cpp_builtins): Remove.
* config/avr/avr.h (avr_extra_arch_macro): Add prototype.
* config/avr/avr-c.c: New File.
(avr_cpu_cpp_builtins) : Add.
* config/avr/t-avr: Add make information for avr-c.
* config.gcc (avr-*-*): Include avr-c.o as c and cpp object.
From-SVN: r155460
as mov immediates for Thumb1.
2009-12-23 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/40670
* config/arm/arm.md: Split for Thumb1 as well.
* gcc.target/arm/pr40670.c: New test.
From-SVN: r155427
Fix PR42180.
2009-12-18 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/42180
* graphite-sese-to-poly.c (split_reduction_stmt): Do not split blocks
that contain only one statement.
From-SVN: r155422
Fix PR42205.
2009-12-17 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/42205
* graphite-sese-to-poly.c (translate_scalar_reduction_to_array_for_stmt):
Insert the reduction copy in the same block as the phi node.
(follow_ssa_with_commutative_ops): Handle GIMPLE_NOPs.
* testsuite/gcc.dg/graphite/pr42205-1.c: New.
* testsuite/gcc.dg/graphite/pr42205-2.c: New.
From-SVN: r155419
2009-12-15 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/42178
PR middle-end/42334
* graphite-interchange.c (lst_perfect_nestify): Reset to NULL the LSTs
that are empty.
(lst_do_interchange_1): Renamed lst_interchange_select_inner.
(lst_try_interchange): Reimplemented.
(lst_interchange_select_inner): Same.
(lst_do_interchange): Renamed lst_interchange_select_outer.
Reimplemented.
(scop_do_interchange): Update use of lst_interchange_select_outer.
* graphite-interchange.c (lst_try_interchange): Do not increment the
the OUTER index when there is no AFTER kernel. Do not increment the
OUTER index for after processing the AFTER kernel.
(lst_interchange_select_inner): Call lst_try_interchange only on loops.
(lst_interchange_select_outer): Do not pass in a pointer to the OUTER
index. Do not pass to lst_interchange_select_inner the OUTER index.
(scop_do_interchange): Update use of lst_interchange_select_outer.
* graphite-interchange.c (lst_try_interchange): Do not modify OUTER
index. Call lst_interchange_select_inner only once.
(lst_interchange_select_inner): Update use of lst_try_interchange.
(lst_interchange_select_outer): Update.
* testsuite/g++.dg/graphite/pr42130.C: Add -fgraphite-identity.
* testsuite/gcc.dg/graphite/block-0.c: Un-XFAILed.
* testsuite/gcc.dg/graphite/pr42211.c: New.
* testsuite/gfortran.dg/graphite/pr42334.f90: New.
* testsuite/gfortran.dg/graphite/graphite.exp
(DEFAULT_FLAGS_GRAPHITE_IDENTITY): Remove -fdump-tree-graphite-all.
* testsuite/gfortran.dg/graphite/interchange-1.f: Add comment. Clean
the graphite dump file.
* testsuite/gfortran.dg/graphite/interchange-2.f: Same.
* testsuite/gfortran.dg/graphite/pr42334-1.f: New.
From-SVN: r155418
2009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
gcc/
PR target/41605
* lib/g++.exp: Provide -B options to allow for link spec %s
substitutions for static libraries.
libstdc++-v3/
PR target/41605
* testsuite/libstdc++-abi/abi.exp: Provide -B options to allow for
link spec %s substitutions for static libraries.
* testsuite/lib/libstdc++.exp: Ditto
libgomp/
PR target/41605
* testsuite/lib/libgomp.exp: Provide -B options to allow for
link spec %s substitutions for static libraries.
From-SVN: r155408