Don't pass/return vectors in registers for IAMCU
commitb0f200d550a8fc5538e78b7c53128eee8ac373de
authorhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 8 Jul 2015 16:19:06 +0000 (8 16:19 +0000)
committerhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 8 Jul 2015 16:19:06 +0000 (8 16:19 +0000)
tree40332ccc182cc332f0362a5fbc2bae56a291b642
parentae18d4cb61366420b942a9121a45f26575d33b42
Don't pass/return vectors in registers for IAMCU

Vectors should be passed in memory for IAMCU.  No warning for vector ABI
change for IAMCU since IAMCU ABI won't change.

gcc/

PR target/66806
* config/i386/i386.c (type_natural_mode): Don't warn vector ABI
change for IAMCU.
(function_arg_advance_32): Don't pass vectors in registers for
IAMCU.
(function_arg_32): Likewise.
(ix86_return_in_memory): Don't return vectors in registers for
IAMCU.

gcc/testsuite/

PR target/66806
* gcc.target/i386/pr66806.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225564 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/config/i386/i386.c
gcc/testsuite/gcc.target/i386/pr66806.c [new file with mode: 0644]