differences, why cris-elf sees the (raw move) ref-all
alternative instead of (call to __builtin_)memcpy, but since the
test-case is expected to allow for it, and the final assembly
looks ok (__builtin_memcpy-matching targets expanded to raw
insns as well) I guess that's ok.
> 2010-08-17 Richard Guenther <rguenther@suse.de>
>
> PR testsuite/45266
> * gfortran.dg/array_memcpy_3.f90: Adjust pattern.
>
> Index: gcc/testsuite/gfortran.dg/array_memcpy_3.f90
> ===================================================================
> --- gcc/testsuite/gfortran.dg/array_memcpy_3.f90 (revision 163281)
> +++ gcc/testsuite/gfortran.dg/array_memcpy_3.f90 (working copy)
> @@ -11,5 +11,5 @@ subroutine bar(x)
> x = (/ 3, 1, 4, 1 /)
> end subroutine
>
> -! { dg-final { scan-tree-dump-times "memcpy|(ref-all.*ref-all)" 2 "original" } }
> +! { dg-final { scan-tree-dump-times "memcpy|ref-all.*ref-all" 2 "original" } }
> ! { dg-final { cleanup-tree-dump "original" } }
Follow-up fix committed as obvious (after verifying on cris-elf
and native x86_64-guess-what) after the following tclsh session
(I observed the same behavior for tcl-8.4).
gcc/testsuite:
PR testsuite/45545
* gfortran.dg/array_memcpy_3.f90: Correct pattern for
ref-all-matching targets.
===================================================================
@@ -11,5 +11,5 @@ subroutine bar(x)
x = (/ 3, 1, 4, 1 /)
end subroutine
-! { dg-final { scan-tree-dump-times "memcpy|ref-all.*ref-all" 2 "original" } }
+! { dg-final { scan-tree-dump-times "memcpy|ref-all\[^\\n\]*ref-all" 2 "original" } }
! { dg-final { cleanup-tree-dump "original" } }