]> git.ipfire.org Git - thirdparty/gcc.git/commit
rs6000: ICE when using an MMA type as a function param or return value [PR96506]
authorPeter Bergner <bergner@linux.ibm.com>
Thu, 13 Aug 2020 18:40:39 +0000 (13:40 -0500)
committerGiuliano Belinassi <giuliano.belinassi@usp.br>
Mon, 17 Aug 2020 18:08:10 +0000 (15:08 -0300)
commit8e6c081b89e0595e73fd42f3c27bdb37a14ed5f9
tree5659192ef8b54024085e9ec4743e5cadc4321e3a
parentc491a6e17b94f42c9b5ef3b3840a0d7c2ffb7102
rs6000: ICE when using an MMA type as a function param or return value [PR96506]

PR96506 shows a problem where we ICE on illegal usage, namely using MMA
types for function arguments and return values.  The solution is to flag
these illegal usages as errors early, before we ICE.

2020-08-13  Peter Bergner  <bergner@linux.ibm.com>

gcc/
PR target/96506
* config/rs6000/rs6000-call.c (rs6000_promote_function_mode): Disallow
MMA types as return values.
(rs6000_function_arg): Disallow MMA types as function arguments.

gcc/testsuite/
PR target/96506
* gcc.target/powerpc/pr96506.c: New test.
gcc/config/rs6000/rs6000-call.c
gcc/testsuite/gcc.target/powerpc/pr96506.c [new file with mode: 0644]