diff options
author | Aaron Sawdey <acsawdey@linux.ibm.com> | 2018-04-10 22:05:41 +0000 |
---|---|---|
committer | Aaron Sawdey <acsawdey@gcc.gnu.org> | 2018-04-10 17:05:41 -0500 |
commit | 6f47ccff0e9c4dab5e9929affa99927e91c51c3c (patch) | |
tree | 22aa66f3c37311907ae2fcc35544c3daa487e71d | |
parent | a2919888d58a11626638aad09e924b5b9d818a38 (diff) | |
download | gcc-6f47ccff0e9c4dab5e9929affa99927e91c51c3c.zip gcc-6f47ccff0e9c4dab5e9929affa99927e91c51c3c.tar.gz gcc-6f47ccff0e9c4dab5e9929affa99927e91c51c3c.tar.bz2 |
re PR target/85321 (Missing documentation and option misc for ppc64le)
2018-04-10 Aaron Sawdey <acsawdey@linux.ibm.com>
PR target/85321
* doc/invoke.texi (RS/6000 and PowerPC Options): Document options
-mblock-compare-inline-limit, -mblock-compare-inline-loop-limit,
and -mstring-compare-inline-limit.
From-SVN: r259302
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/doc/invoke.texi | 28 |
2 files changed, 35 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 107c6d99..846fc1e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2018-04-10 Aaron Sawdey <acsawdey@linux.ibm.com> + + PR target/85321 + * doc/invoke.texi (RS/6000 and PowerPC Options): Document options + -mblock-compare-inline-limit, -mblock-compare-inline-loop-limit, + and -mstring-compare-inline-limit. + 2018-04-10 Segher Boessenkool <segher@kernel.crashing.org> PR target/85287 diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index a8e2672..705cbf7 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -1080,6 +1080,9 @@ See RS/6000 and PowerPC Options. -maix-struct-return -msvr4-struct-return @gol -mabi=@var{abi-type} -msecure-plt -mbss-plt @gol -mblock-move-inline-limit=@var{num} @gol +-mblock-compare-inline-limit=@var{num} @gol +-mblock-compare-inline-loop-limit=@var{num} @gol +-mstring-compare-inline-limit=@var{num} @gol -misel -mno-isel @gol -misel=yes -misel=no @gol -mpaired @gol @@ -24142,6 +24145,31 @@ copies) less than or equal to @var{num} bytes. The minimum value for @var{num} is 32 bytes on 32-bit targets and 64 bytes on 64-bit targets. The default value is target-specific. +@item -mblock-compare-inline-limit=@var{num} +@opindex mblock-compare-inline-limit +Generate non-looping inline code for all block compares (such as calls +to @code{memcmp} or structure compares) less than or equal to @var{num} +bytes. If @var{num} is 0, all inline expansion (non-loop and loop) of +block compare is disabled. The default value is target-specific. + +@item -mblock-compare-inline-loop-limit=@var{num} +@opindex mblock-compare-inline-loop-limit +Generate an inline expansion using loop code for all block compares that +are less than or equal to @var{num} bytes, but greater than the limit +for non-loop inline block compare expansion. If the block length is not +constant, at most @var{num} bytes will be compared before @code{memcmp} +is called to compare the remainder of the block. The default value is +target-specific. + +@item -mstring-compare-inline-limit=@var{num} +@opindex mstring-compare-inline-limit +Generate at most @var{num} pairs of load instructions to compare the +string inline. If the difference or end of string is not found at the +end of the inline compare a call to @code{strcmp} or @code{strncmp} will +take care of the rest of the comparison. The default is 8 pairs of +loads, which will compare 64 bytes on a 64-bit target and 32 bytes on a +32-bit target. + @item -G @var{num} @opindex G @cindex smaller data references (PowerPC) |