This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [testsuite] gcc.dg/torture/stackalign: make compile lines unique in test summary
On Tue, Jun 12, 2012 at 7:59 AM, Janis Johnson <janis_johnson@mentor.com> wrote:
> On 06/11/2012 09:05 PM, H.J. Lu wrote:
>> On Mon, Jun 11, 2012 at 7:41 PM, Janis Johnson <janis_johnson@mentor.com> wrote:
>>> The tests in gcc.dg/torture/stackalign use two sets of torture options:
>>> the usual optimization sets used as default for torture tests, and up to
>>> four sets of options that are specific to stack alignment. ?Currently
>>> the stack alignment options are passed via an option that is used by the
>>> dg-test option dg_extra_tool_flags, which doesn't become part of the
>>> test messages in summary files the way the other torture options do,
>>> leading to non-unique compilation messages in the test summary.
>>>
>>> This patch uses existing support to combine multiple sets of torture
>>> options for use in a single set of tests, in this case the usual
>>> optimization torture options plus the stack alignment options. ?Options
>>> used in all of the stack alignment testing on x86 targets are used in
>>> default options rather than as part of torture options, to reduce noise
>>> in test summaries. ?Tests that currently use dg-options now use
>>> dg-additional-options instead to append to, rather than replace, the
>>> default flags.
>>>
>>> H.J., I'm pretty sure this now does what you want for the seven tests
>>> that specify different options.
>>>
>>> Tested on i686-pc-linux-gnu and arm-none-eabi. ?OK for mainline?
>>>
>>> Janis
>>
>> Why is -mmmx added to -msse2? ?-mno-mmx is added explicitly
>> to disable MMX.
>>
>
> Because without it I get:
>
> In file included from /scratch/janisjo/fsf-i686-linux-2/obj/test-mainline-0-i686-pc-linux-gnu/host-i686-pc-linux-gnu/fsf-mainline/lib/gcc/i686-pc-linux-gnu/4.8.0/include/xmmintrin.h:36:0,^M
> ? ? ? ? ? ? ? ? from /scratch/janisjo/fsf-i686-linux-2/obj/test-mainline-0-i686-pc-linux-gnu/host-i686-pc-linux-gnu/fsf-mainline/lib/gcc/i686-pc-linux-gnu/4.8.0/include/emmintrin.h:36,^M
> ? ? ? ? ? ? ? ? from /scratch/janisjo/fsf-i686-linux-2/src/gcc-mainline/gcc/testsuite/gcc.dg/torture/stackalign/alloca-2.c:7:^M
> /scratch/janisjo/fsf-i686-linux-2/obj/test-mainline-0-i686-pc-linux-gnu/host-i686-pc-linux-gnu/fsf-mainline/lib/gcc/i686-pc-linux-gnu/4.8.0/include/mmintrin.h:32:3: error: #error "MMX instruction set not enabled"^M
>
> Remember that without my changes to stackalign.exp the -mno-mmx option
> was not used for the tests that use dg-options.
>
> If it makes a difference, I can changes the four tests that use -msse2
> so that they don't use the default flags that include -mno-mmx, but use
> the other options from that list.
>
In this case, -mxmm with -msse2 is fine.
Thanks.
--
H.J.