]> git.ipfire.org Git - thirdparty/gcc.git/commit
x86-64: Don't use temp for argument in a TImode register
authorH.J. Lu <hjl.tools@gmail.com>
Fri, 6 Sep 2024 12:24:07 +0000 (05:24 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Sun, 8 Sep 2024 23:01:32 +0000 (16:01 -0700)
commitfa7bbb065c63aa802e0bbb04d605407dad58cf94
tree809b44dc206b915f45c165ac2c2098b74335c854
parent1e17a11171dae2bc5d60380bf48c12ef49f59c7f
x86-64: Don't use temp for argument in a TImode register

Don't use temp for a PARALLEL BLKmode argument of an EXPR_LIST expression
in a TImode register.  Otherwise, the TImode variable will be put in
the GPR save area which guarantees only 8-byte alignment.

gcc/

PR target/116621
* config/i386/i386.cc (ix86_gimplify_va_arg): Don't use temp for
a PARALLEL BLKmode container of an EXPR_LIST expression in a
TImode register.

gcc/testsuite/

PR target/116621
* gcc.target/i386/pr116621.c: New test.

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
gcc/config/i386/i386.cc
gcc/testsuite/gcc.target/i386/pr116621.c [new file with mode: 0644]