add alignment to enable store merging in strict-alignment targets
authorAlexandre Oliva <oliva@adacore.com>
Wed, 6 Jan 2021 11:05:40 +0000 (08:05 -0300)
committerAlexandre Oliva <oliva@gnu.org>
Wed, 6 Jan 2021 11:05:40 +0000 (08:05 -0300)
commit758abf1ae3139a5e3d556fd2cc5636c813629547
treeed4c960a1f597766ad1a1b39621810a86ac6779f
parentcecf8c662de09c5db14d1e5a4006ab6147980546
add alignment to enable store merging in strict-alignment targets

In g++.dg/opt/store-merging-2.C, the natural alignment of types T and
S is a single byte, so we shouldn't expect store merging on
strict-alignment platforms.  Indeed, without something like the
adjust-alignment pass to bump up the alignment of the automatic
variable, as in GCC 10, the optimization does not occur.

This patch adjusts the test so that the required alignment is
expressly stated, and so we don't rely on its accidentally being there
to get the desired optimization.

for  gcc/testsuite/ChangeLog

* g++.dg/opt/store-merging-2.C: Add the required alignment.
gcc/testsuite/g++.dg/opt/store-merging-2.C