This is the mail archive of the gcc-cvs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

r120503 - in /trunk/gcc: fortran/ChangeLog fort...


Author: sayle
Date: Fri Jan  5 21:27:16 2007
New Revision: 120503

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120503
Log:

	* trans-expr.c (gfc_trans_assignment_1): New subroutine to scalarize
	array assignments split out from gfc_trans_assignment.
	(gfc_trans_array_copy): New function to implement array to array
	copies via calls to __builtin_memcpy.
	(copyable_array_p): New helper function to identify an array of
	simple/POD types, that may be copied/assigned using memcpy.
	(gfc_trans_assignment): Use gfc_trans_array_copy to handle simple
	whole array assignments considered suitable by copyable_array_p.
	Invoke gfc_trans_assignment_1 to perform the fallback scalarization.

	* gfortran.dg/array_memcpy_1.f90: New test case.
	* gfortran.dg/array_memcpy_2.f90: Likewise.


Added:
    trunk/gcc/testsuite/gfortran.dg/array_memcpy_1.f90
    trunk/gcc/testsuite/gfortran.dg/array_memcpy_2.f90
Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/trans-expr.c
    trunk/gcc/testsuite/ChangeLog


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]