i386: Fix ix86_hard_regno_mode_ok for TDmode on 32bit targets [PR101346]
authorUros Bizjak <ubizjak@gmail.com>
Thu, 15 Jul 2021 20:34:25 +0000 (22:34 +0200)
committerUros Bizjak <ubizjak@gmail.com>
Thu, 15 Jul 2021 20:40:30 +0000 (22:40 +0200)
commitf364cdffa47af574f90f671b2dcf5afa91442741
tree3b721531d4c564e51e18dd8476b20f26fb67a1be
parent478cc962ad174bfc64c573152a0658935651fce3
i386: Fix ix86_hard_regno_mode_ok for TDmode on 32bit targets [PR101346]

General regs on 32bit targets do not support 128bit modes,
including TDmode.

gcc/

2021-07-15  Uroš Bizjak  <ubizjak@gmail.com>

PR target/101346
* config/i386/i386.h (VALID_SSE_REG_MODE): Add TDmode.
(VALID_INT_MODE_P): Add SDmode and DDmode.
Add TDmode for TARGET_64BIT.
(VALID_DFP_MODE_P): Remove.
* config/i386/i386.c (ix86_hard_regno_mode_ok):
Do not use VALID_DFP_MODE_P.

gcc/testsuite/

2021-07-15  Uroš Bizjak  <ubizjak@gmail.com>

PR target/101346
* gcc.target/i386/pr101346.c: New test.
gcc/config/i386/i386.c
gcc/config/i386/i386.h
gcc/testsuite/gcc.target/i386/pr101346.c [new file with mode: 0644]