From f23585f174e491dcf8fbb274a0e407cc2cc64886 Mon Sep 17 00:00:00 2001 From: Robert Dewar Date: Wed, 26 Sep 2007 12:42:59 +0200 Subject: exp_ch5.adb: Activate memmove type processing if debug flag d.s is set 2007-09-26 Robert Dewar * exp_ch5.adb: Activate memmove type processing if debug flag d.s is set * debug.adb: Add d.s flag. From-SVN: r128787 --- gcc/ada/debug.adb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'gcc/ada/debug.adb') diff --git a/gcc/ada/debug.adb b/gcc/ada/debug.adb index 8b3ff39..363cc07 100644 --- a/gcc/ada/debug.adb +++ b/gcc/ada/debug.adb @@ -111,7 +111,7 @@ package body Debug is -- d.p -- d.q -- d.r - -- d.s + -- d.s Disable expansion of slice move, use memmove -- d.t Disable static allocation of library level dispatch tables -- d.u -- d.v @@ -514,6 +514,11 @@ package body Debug is -- main source (this corresponds to a previous behavior of -gnatl and -- is used for running the ACATS tests). + -- d.s Normally the compiler expands slice moves into loops if overlap + -- might be possible. This debug flag inhibits that expansion, and + -- the back end is expected to use an appropriate routine to handle + -- overlap, based on Forward_OK and Backwards_OK flags. + -- d.t The compiler has been modified (a fairly extensive modification) -- to generate static dispatch tables for library level tagged types. -- This debug switch disables this modification and reverts to the -- cgit v1.1