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]

Re: [PATCH,rs6000] make inline block move amount configurable


On Fri, Jul 16, 2010 at 1:49 PM, Nathan Froyd <froydnj@codesourcery.com> wrote:
> rs6000's expand_block_move only expands a move of up to 32 bytes (64 for
> 64-bit targets) into inline loads and stores. ?For some processors and
> some applications, this hard-coded limit is not useful and inhibits
> performance tuning.
>
> The patch below adds a new, rs6000-specific option to control that, with
> appropriate defaulting for Freescale's e500mc and e5500 (aka e500mc64)
> processors. ?There are testcases and documentation included.
>
> Tested with cross to powerpc-eabispe. ?OK to commit?
>
> -Nathan
>
> gcc/
> ? ? ? ?* config/rs6000/rs6000.opt (mblock-move-inline-limit): New option.
> ? ? ? ?* config/rs6000/rs6000.c (rs6000_override_options): Set
> ? ? ? ?rs6000_block_move_inline_limit appropriately.
> ? ? ? ?(expand_block_move): Use rs6000_block_move_inline_limit.
> ? ? ? ?* doc/invoke.texi (mblock-move-inline-limit): Document.
>
> gcc/testsuite/
> ? ? ? ?* gcc.target/powerpc/block-move-1.c: New test.
> ? ? ? ?* gcc.target/powerpc/block-move-2.c: New test.

Okay.

Thanks, David


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