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]

[PATCH], PR 72853, Fix Power9 issue with scalar double Altivec d-form instructions


As we are starting to run the testsuite through the power9 simulator using a
compiler built with the --with-cpu=power9 configuration option, we discovered
that one of the tests (20021120-1.c) failed due to the wrong instruction being
generated.  It turns out that the wY constraint (which in turn calls
mem_operand_ds_form) was allowing indexed addresses.  Since the alternative for
STXSD (Ativec DS-form instruction occurred before STXSDX (VSX X-form
instruction), the STXSD was generated.

This patch fixes this problem and it causes no regressions.  Can I check it
into the trunk?  In addition, this bug shows up in GCC 6.2.  Assuming there are
no regressions after applying this patch, can I check it into the 6.2 branch as
well?

[gcc]
2016-08-09  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/72853
	* config/rs6000/rs6000.c (mem_operand_ds_form): Add check for op
	being an offsettable address.

[gcc/testsuite]
2016-08-09  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/72853
	* gcc.target/powerpc/pr72853.c: New test.

-- 
Michael Meissner, IBM
IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA
email: meissner@linux.vnet.ibm.com, phone: +1 (978) 899-4797

Attachment: pr72853.patch03b
Description: Text document


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