diff options
author | Qing Zhao <qing.zhao@oracle.com> | 2021-11-10 17:59:31 +0000 |
---|---|---|
committer | Qing Zhao <qing.zhao@oracle.com> | 2021-11-10 17:59:31 +0000 |
commit | 1c04af34c9c66d8ed9f6c12c97dd064238ddfa20 (patch) | |
tree | e13afa30218858a13fe76edadab4dab944d9bc31 /gcc/cppdefault.c | |
parent | 1200e211a823816e47a9312efab61a60e12e33e5 (diff) | |
download | gcc-1c04af34c9c66d8ed9f6c12c97dd064238ddfa20.zip gcc-1c04af34c9c66d8ed9f6c12c97dd064238ddfa20.tar.gz gcc-1c04af34c9c66d8ed9f6c12c97dd064238ddfa20.tar.bz2 |
Apply pattern initialization only when have_insn_for return true.
For -ftrivial-auto-var-init=pattern, initialize the variable with patterns only
when have_insn_for (SET, mode) return true. Otherwise initialize it with zeros.
with this change, _Complex long double on X86 is initialized to zero for
pattern initialization.
gcc/ChangeLog:
2021-11-10 qing zhao <qing.zhao@oracle.com>
* internal-fn.c (expand_DEFERRED_INIT): Apply pattern initialization
only when have_insn_for return true for the mode. Fix a memory leak.
gcc/testsuite/ChangeLog:
2021-11-10 qing zhao <qing.zhao@oracle.com>
* gcc.target/i386/auto-init-6.c: _Complex long double is initialized
to zero now with -ftrivial-auto-var-init=pattern.
Diffstat (limited to 'gcc/cppdefault.c')
0 files changed, 0 insertions, 0 deletions