]> git.ipfire.org Git - thirdparty/gcc.git/commit
rs6000: add option -mblock-ops-unaligned-vsx
authorAaron Sawdey <acsawdey@linux.ibm.com>
Fri, 24 Jul 2020 19:13:48 +0000 (14:13 -0500)
committerGiuliano Belinassi <giuliano.belinassi@usp.br>
Mon, 17 Aug 2020 16:19:34 +0000 (13:19 -0300)
commitb3e25f9782c470a6ec1901bb9c29f5f868a3023f
tree9ba38f60df149e19ee67597bd7f6f290d881a303
parent58db9173f82c137cac6453494717e8fdd5277c43
rs6000: add option -mblock-ops-unaligned-vsx

This option is mostly being added to provide -mno-block-ops-unaligned-vsx.
The default is set the same as -mefficient-unaligned-vsx. This option will
control the use of unaligned VSX loads/stores in the inline expansion
of memcpy() and memmove(). The use case for this would be if you're
compiling code that is doing a memcpy to memory mapped device memory
that is cache-inhibited. On some powerpc processors this requires the
unaligned vsx ops to be emulated by the kernel which is very slow.

gcc/ChangeLog:

* config/rs6000/rs6000.c (rs6000_option_override_internal):
Set the default value for -mblock-ops-unaligned-vsx.
* config/rs6000/rs6000.opt: Add -mblock-ops-unaligned-vsx.
* doc/invoke.texi: Document -mblock-ops-unaligned-vsx.
gcc/config/rs6000/rs6000.c
gcc/config/rs6000/rs6000.opt
gcc/doc/invoke.texi