This is the mail archive of the gcc-patches@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] |
On targets without the equivalent of memmove (such as for the AAMP target), the recently added code for handling possible overlaps on array assignments involving variables with address clauses unnecessarily takes effect when the right-hand side is an aggregate. This treatment is now suppressed for this case, generating code on AAMP that is similarly efficient to other targets. Tested on x86_64-pc-linux-gnu, committed on trunk 2009-04-20 Gary Dismukes <dismukes@adacore.com> * exp_ch5.adb (Expand_Assign_Array): For the case where the assignment involves a target that has a specified address, don't set Forward_OK and Backward_OK to False if the rhs is an aggregate, since overlap can't occur.
Attachment:
difs
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |