This is the mail archive of the gcc-help@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]

Re: BLK mode move pattern ?


On 10/13/2016 08:05 AM, Martien de Jong wrote:
Hi,


Sorry to bother you again, but I am stuck.

First, movmem is only invoked if move_by_pieces gives up,
which means it will expand using DImode moves before attempting
movmem. I have tweaked MOVE_RATIO for now, but that is far
from optimal (! by_pieces, ! memmov => libcall).
Right. That's the path I expected you to be able to exploit. I'd expect you to have to twiddle MOVE_RATIO and perhaps code in the expanders.


Second, can I use TI mode in my movti_internal? I guess reload will have
trouble handling any TI register (and I have seen some reload failures
in my experiments,) since it will look for movti in vain.
If I can't use TI mode, how do I tell the register allocator the size
of the quad register?
Yes, you should be able to use TImode in movti_internal. You may need to tweak other things that direct reload but as long as you don't have a movti named pattern, much of the pain can be avoided.

This is all going to take some hacking on your part.

jeff


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