]> git.ipfire.org Git - thirdparty/gcc.git/commit
Lower complex type move to enable vectorization for complex type load&store.
authorliuhongt <hongtao.liu@intel.com>
Tue, 19 Jul 2022 09:24:52 +0000 (17:24 +0800)
committerliuhongt <hongtao.liu@intel.com>
Wed, 20 Jul 2022 08:06:25 +0000 (16:06 +0800)
commitf9d4c3b45c5ed5f45c8089c990dbd4e181929c3d
tree6785500e7fe62d500fed3513a561100da35b767c
parent68871a008e686dbe56ff0b502f2864176a140716
Lower complex type move to enable vectorization for complex type load&store.

2022-07-20  Richard Biener  <richard.guenther@gmail.com>
    Hongtao Liu  <hongtao.liu@intel.com>

gcc/ChangeLog:

PR tree-optimization/106010
* tree-complex.cc (init_dont_simulate_again): Lower complex
type move.
(expand_complex_move): Also expand COMPLEX_CST for rhs.

gcc/testsuite/ChangeLog:

* gcc.target/i386/pr106010-1a.c: New test.
* gcc.target/i386/pr106010-1b.c: New test.
* gcc.target/i386/pr106010-1c.c: New test.
* gcc.target/i386/pr106010-2a.c: New test.
* gcc.target/i386/pr106010-2b.c: New test.
* gcc.target/i386/pr106010-2c.c: New test.
* gcc.target/i386/pr106010-3a.c: New test.
* gcc.target/i386/pr106010-3b.c: New test.
* gcc.target/i386/pr106010-3c.c: New test.
* gcc.target/i386/pr106010-4a.c: New test.
* gcc.target/i386/pr106010-4b.c: New test.
* gcc.target/i386/pr106010-4c.c: New test.
* gcc.target/i386/pr106010-5a.c: New test.
* gcc.target/i386/pr106010-5b.c: New test.
* gcc.target/i386/pr106010-5c.c: New test.
* gcc.target/i386/pr106010-6a.c: New test.
* gcc.target/i386/pr106010-6b.c: New test.
* gcc.target/i386/pr106010-6c.c: New test.
* gcc.target/i386/pr106010-7a.c: New test.
* gcc.target/i386/pr106010-7b.c: New test.
* gcc.target/i386/pr106010-7c.c: New test.
* gcc.target/i386/pr106010-8a.c: New test.
* gcc.target/i386/pr106010-8b.c: New test.
* gcc.target/i386/pr106010-8c.c: New test.
* gcc.target/i386/pr106010-9a.c: New test.
* gcc.target/i386/pr106010-9b.c: New test.
* gcc.target/i386/pr106010-9c.c: New test.
* gcc.target/i386/pr106010-9d.c: New test.
29 files changed:
gcc/testsuite/gcc.target/i386/pr106010-1a.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-1b.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-1c.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-2a.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-2b.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-2c.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-3a.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-3b.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-3c.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-4a.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-4b.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-4c.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-5a.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-5b.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-5c.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-6a.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-6b.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-6c.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-7a.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-7b.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-7c.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-8a.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-8b.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-8c.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-9a.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-9b.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-9c.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr106010-9d.c [new file with mode: 0644]
gcc/tree-complex.cc