From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pf1-x42e.google.com (mail-pf1-x42e.google.com [IPv6:2607:f8b0:4864:20::42e]) by sourceware.org (Postfix) with ESMTPS id 82D3B3858D1E for ; Mon, 19 Jun 2023 23:40:42 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 82D3B3858D1E Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-pf1-x42e.google.com with SMTP id d2e1a72fcca58-668723729c5so1279982b3a.3 for ; Mon, 19 Jun 2023 16:40:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687218041; x=1689810041; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=qv1vjGiLNK7An3tkLvyo3lnXYJr2mSsoCyeiyixqYOE=; b=lpQXzJiwv08WEVEltk2iKQ6M0thGRnf8UgwM8yaB6zO4Zn8IwzTA5BpriPW1DiFWkK 5PfvTStHuBSYiTKCirIMxqYQoKqISaJuSLHoDQfy8wV1Fvfn4dcBZnWdJdBXLaUHy2hj iHtNzzG8ISslCxz04YEMHBZnb6prMoEeRzjBBDQgERr5ofRGN3FoRelyF1phTpn7DakU bOYfC5ncIlhlVYmqhUVOgNdKySi8fqPcU1c5RjLZI4wBeSCxYasFY0tQeJOHw/ztXRAK S0M2lIJlRKTCGCYSzhbGniRR0LgaBCVllqRu22tnk+lJEmF26xhD0MKZyyo0n2RpPvQc PnPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687218041; x=1689810041; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qv1vjGiLNK7An3tkLvyo3lnXYJr2mSsoCyeiyixqYOE=; b=LCmTM0Nnbmb3Vump8Ka+CKhkkoYRe1tt9rZMRB2U7Wh4nIYXtYjyfJIDSgClyqIPH0 FVVQ4IEzmItQDavEoZTITVv+maPXAdvu/Q1dnQjiKMbeI9gb7fXq00IU40HSuyAitLya iArIT1Ej64/XLSlzIDPVLcoul7prL5tliN1HDBIj5Wo9rYcdYFlZH9aY6Ixmw9vrPjx/ 8I/Os1U6ja5/HOvNTp3j5F5tqtc9ldNRgpSpPL84ViaeSoCZUudN5SlrrMttidM0ouBp DwmgDV++7HvnfYFyv/hN3fi7ImbJj4xxfLXVNFToM/tD3YJPv2bJjRwd6+eVF0Qk85NH sC5g== X-Gm-Message-State: AC+VfDw9yoOaeQm+sZ2fVJECUye+xkObL97KVGz/jVSh74Jg80zg+J92 6NT8HridcRY5yhL14+G865Zidok0uFkPoocCxUo= X-Google-Smtp-Source: ACHHUZ4cEGMX4qX3gBKBPkl5v2eacsP3LX6BoX0im+trY4Fy3hTY9/3YYLoArEpVRHB0MhdU201td6IzGu+Ixow/IBE= X-Received: by 2002:a05:6a21:329e:b0:11d:24c1:c599 with SMTP id yt30-20020a056a21329e00b0011d24c1c599mr11708395pzb.5.1687218041258; Mon, 19 Jun 2023 16:40:41 -0700 (PDT) MIME-Version: 1.0 References: <20230525123550.1072506-1-manolis.tsamis@vrull.eu> <20230525123550.1072506-3-manolis.tsamis@vrull.eu> <5836d561-2986-484c-8d9a-744c948e8602@gmail.com> <87ttv3xud1.fsf@linaro.org> In-Reply-To: <87ttv3xud1.fsf@linaro.org> From: Andrew Pinski Date: Mon, 19 Jun 2023 16:40:28 -0700 Message-ID: Subject: Re: [PATCH 2/2] cprop_hardreg: Enable propagation of the stack pointer if possible. To: Thiago Jung Bauermann Cc: Manolis Tsamis , Jeff Law , Philipp Tomsich , Richard Biener , Palmer Dabbelt , Kito Cheng , gcc-patches@gcc.gnu.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,KAM_SHORT,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Mon, Jun 19, 2023 at 9:58=E2=80=AFAM Thiago Jung Bauermann via Gcc-patch= es wrote: > > > Hello Manolis, > > Philipp Tomsich writes: > > > On Thu, 8 Jun 2023 at 00:18, Jeff Law wrote: > >> > >> On 5/25/23 06:35, Manolis Tsamis wrote: > >> > Propagation of the stack pointer in cprop_hardreg is currenty forbid= den > >> > in all cases, due to maybe_mode_change returning NULL. Relax this > >> > restriction and allow propagation when no mode change is requested. > >> > > >> > gcc/ChangeLog: > >> > > >> > * regcprop.cc (maybe_mode_change): Enable stack pointer pro= pagation. > >> Thanks for the clarification. This is OK for the trunk. It looks > >> generic enough to have value going forward now rather than waiting. > > > > Rebased, retested, and applied to trunk. Thanks! > > Our CI found a couple of tests that started failing on aarch64-linux > after this commit. I was able to confirm manually that they don't happen > in the commit immediately before this one, and also that these failures > are still present in today's trunk. > > I have testsuite logs for last good commit, first bad commit and current > trunk here: > > https://people.linaro.org/~thiago.bauermann/gcc-regression-6a2e8dcbbd4b/ > > Could you please check? > > These are the new failures: > > Running gcc:gcc.target/aarch64/aarch64.exp ... > FAIL: gcc.target/aarch64/stack-check-cfa-3.c scan-assembler-times mov\\tx= 11, sp 1 So for the above before this change we had: ``` (insn:TI 597 596 598 2 (set (reg:DI 11 x11) (reg/f:DI 31 sp)) "stack-check-prologue-16.c":16:1 65 {*movdi_aarch= 64} (nil)) (insn 598 597 599 2 (set (mem:BLK (scratch) [0 A8]) (unspec:BLK [ (reg:DI 11 x11) (reg/f:DI 31 sp) ] UNSPEC_PRLG_STK)) "stack-check-prologue-16.c":16:1 1169 {stack_tie} (expr_list:REG_DEAD (reg:DI 11 x11) (nil))) ``` After we get: ``` (insn 598 596 599 2 (set (mem:BLK (scratch) [0 A8]) (unspec:BLK [ (reg:DI 31 sp [11]) repeated x2 ] UNSPEC_PRLG_STK)) "stack-check-prologue-16.c":16:1 1169 {stack_tie} (nil)) ``` Which seems to be ok, except we still have: .cfi_def_cfa_register 11 That is because on: (insn/f 596 595 598 2 (set (reg:DI 12 x12) (plus:DI (reg:DI 12 x12) (const_int 272 [0x110]))) "stack-check-prologue-16.c":16:1 153 {*adddi3_aarch64} (expr_list:REG_CFA_DEF_CFA (reg:DI 11 x11) (nil))) We record x11 but never update it though that came before the mov for x11 ... So it seems like cprop_hardreg had no idea it needed to update it. I suspect the other testcases are just propagation of sp into the stores and such and just needed update. But the above testcase seems getting broken cfi though I don't know how to fix it. Thanks, Andrew Pinski > > Running gcc:gcc.target/aarch64/sve/pcs/aarch64-sve-pcs.exp ... > FAIL: gcc.target/aarch64/sve/pcs/args_1.c -march=3Darmv8.2-a+sve -fno-sta= ck-protector check-function-bodies caller_pred > FAIL: gcc.target/aarch64/sve/pcs/args_2.c -march=3Darmv8.2-a+sve -fno-sta= ck-protector scan-assembler \\tmov\\t(z[0-9]+\\.b), #8\\n.*\\tst1b\\t\\1, = p[0-7], \\[x4\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_3.c -march=3Darmv8.2-a+sve -fno-sta= ck-protector scan-assembler \\tmov\\t(z[0-9]+\\.b), #8\\n.*\\tst1b\\t\\1, = p[0-7], \\[x4\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_4.c -march=3Darmv8.2-a+sve -fno-sta= ck-protector scan-assembler \\tfmov\\t(z[0-9]+\\.h), #8\\.0.*\\tst1h\\t\\1= , p[0-7], \\[x4\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_be_bf16.c -march=3Darmv8.2-a+sve = -fno-stack-protector scan-assembler \\tld2h\\t{(z[0-9]+\\.h) - z[0-9]+\\.h= }.*\\tst1h\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_be_f16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2h\\t{(z[0-9]+\\.h) - z[0-9]+\\.h}= .*\\tst1h\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_be_f32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2w\\t{(z[0-9]+\\.s) - z[0-9]+\\.s}= .*\\tst1w\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_be_f64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2d\\t{(z[0-9]+\\.d) - z[0-9]+\\.d}= .*\\tst1d\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_be_s16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2h\\t{(z[0-9]+\\.h) - z[0-9]+\\.h}= .*\\tst1h\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_be_s32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2w\\t{(z[0-9]+\\.s) - z[0-9]+\\.s}= .*\\tst1w\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_be_s64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2d\\t{(z[0-9]+\\.d) - z[0-9]+\\.d}= .*\\tst1d\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_be_s8.c -march=3Darmv8.2-a+sve -f= no-stack-protector scan-assembler \\tld2b\\t{(z[0-9]+\\.b) - z[0-9]+\\.b}.= *\\tst1b\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_be_u16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2h\\t{(z[0-9]+\\.h) - z[0-9]+\\.h}= .*\\tst1h\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_be_u32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2w\\t{(z[0-9]+\\.s) - z[0-9]+\\.s}= .*\\tst1w\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_be_u64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2d\\t{(z[0-9]+\\.d) - z[0-9]+\\.d}= .*\\tst1d\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_be_u8.c -march=3Darmv8.2-a+sve -f= no-stack-protector scan-assembler \\tld2b\\t{(z[0-9]+\\.b) - z[0-9]+\\.b}.= *\\tst1b\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_le_bf16.c -march=3Darmv8.2-a+sve = -fno-stack-protector scan-assembler \\tld2h\\t{(z[0-9]+)\\.h - z[0-9]+\\.h= }.*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_le_f16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2h\\t{(z[0-9]+)\\.h - z[0-9]+\\.h}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_le_f32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2w\\t{(z[0-9]+)\\.s - z[0-9]+\\.s}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_le_f64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2d\\t{(z[0-9]+)\\.d - z[0-9]+\\.d}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_le_s16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2h\\t{(z[0-9]+)\\.h - z[0-9]+\\.h}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_le_s32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2w\\t{(z[0-9]+)\\.s - z[0-9]+\\.s}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_le_s64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2d\\t{(z[0-9]+)\\.d - z[0-9]+\\.d}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_le_s8.c -march=3Darmv8.2-a+sve -f= no-stack-protector scan-assembler \\tld2b\\t{(z[0-9]+)\\.b - z[0-9]+\\.b}.= *\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_le_u16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2h\\t{(z[0-9]+)\\.h - z[0-9]+\\.h}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_le_u32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2w\\t{(z[0-9]+)\\.s - z[0-9]+\\.s}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_le_u64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld2d\\t{(z[0-9]+)\\.d - z[0-9]+\\.d}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_5_le_u8.c -march=3Darmv8.2-a+sve -f= no-stack-protector scan-assembler \\tld2b\\t{(z[0-9]+)\\.b - z[0-9]+\\.b}.= *\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_bf16.c -march=3Darmv8.2-a+sve = -fno-stack-protector scan-assembler \\tld1h\\t(z[0-9]+\\.h), p[0-7]/z, \\[= x0, #5, mul vl\\]\\n.*\\tst1h\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_bf16.c -march=3Darmv8.2-a+sve = -fno-stack-protector scan-assembler \\tld4h\\t{(z[0-9]+\\.h) - z[0-9]+\\.h= }.*\\tst1h\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_f16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1h\\t(z[0-9]+\\.h), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1h\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_f16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4h\\t{(z[0-9]+\\.h) - z[0-9]+\\.h}= .*\\tst1h\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_f32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1w\\t(z[0-9]+\\.s), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1w\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_f32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4w\\t{(z[0-9]+\\.s) - z[0-9]+\\.s}= .*\\tst1w\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_f64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1d\\t(z[0-9]+\\.d), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1d\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_f64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4d\\t{(z[0-9]+\\.d) - z[0-9]+\\.d}= .*\\tst1d\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_s16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1h\\t(z[0-9]+\\.h), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1h\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_s16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4h\\t{(z[0-9]+\\.h) - z[0-9]+\\.h}= .*\\tst1h\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_s32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1w\\t(z[0-9]+\\.s), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1w\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_s32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4w\\t{(z[0-9]+\\.s) - z[0-9]+\\.s}= .*\\tst1w\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_s64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1d\\t(z[0-9]+\\.d), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1d\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_s64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4d\\t{(z[0-9]+\\.d) - z[0-9]+\\.d}= .*\\tst1d\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_s8.c -march=3Darmv8.2-a+sve -f= no-stack-protector scan-assembler \\tld1b\\t(z[0-9]+\\.b), p[0-7]/z, \\[x0= , #5, mul vl\\]\\n.*\\tst1b\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_s8.c -march=3Darmv8.2-a+sve -f= no-stack-protector scan-assembler \\tld4b\\t{(z[0-9]+\\.b) - z[0-9]+\\.b}.= *\\tst1b\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_u16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1h\\t(z[0-9]+\\.h), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1h\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_u16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4h\\t{(z[0-9]+\\.h) - z[0-9]+\\.h}= .*\\tst1h\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_u32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1w\\t(z[0-9]+\\.s), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1w\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_u32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4w\\t{(z[0-9]+\\.s) - z[0-9]+\\.s}= .*\\tst1w\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_u64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1d\\t(z[0-9]+\\.d), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1d\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_u64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4d\\t{(z[0-9]+\\.d) - z[0-9]+\\.d}= .*\\tst1d\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_u8.c -march=3Darmv8.2-a+sve -f= no-stack-protector scan-assembler \\tld1b\\t(z[0-9]+\\.b), p[0-7]/z, \\[x0= , #5, mul vl\\]\\n.*\\tst1b\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_be_u8.c -march=3Darmv8.2-a+sve -f= no-stack-protector scan-assembler \\tld4b\\t{(z[0-9]+\\.b) - z[0-9]+\\.b}.= *\\tst1b\\t\\1, p[0-7], \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_bf16.c -march=3Darmv8.2-a+sve = -fno-stack-protector scan-assembler \\tld1h\\t(z[0-9]+\\.h), p[0-7]/z, \\[= x0, #5, mul vl\\]\\n.*\\tst1h\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_bf16.c -march=3Darmv8.2-a+sve = -fno-stack-protector scan-assembler \\tld4h\\t{(z[0-9]+)\\.h - z[0-9]+\\.h= }.*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_f16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1h\\t(z[0-9]+\\.h), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1h\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_f16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4h\\t{(z[0-9]+)\\.h - z[0-9]+\\.h}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_f32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1w\\t(z[0-9]+\\.s), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1w\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_f32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4w\\t{(z[0-9]+)\\.s - z[0-9]+\\.s}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_f64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1d\\t(z[0-9]+\\.d), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1d\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_f64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4d\\t{(z[0-9]+)\\.d - z[0-9]+\\.d}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_s16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1h\\t(z[0-9]+\\.h), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1h\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_s16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4h\\t{(z[0-9]+)\\.h - z[0-9]+\\.h}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_s32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1w\\t(z[0-9]+\\.s), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1w\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_s32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4w\\t{(z[0-9]+)\\.s - z[0-9]+\\.s}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_s64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1d\\t(z[0-9]+\\.d), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1d\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_s64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4d\\t{(z[0-9]+)\\.d - z[0-9]+\\.d}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_s8.c -march=3Darmv8.2-a+sve -f= no-stack-protector scan-assembler \\tld1b\\t(z[0-9]+\\.b), p[0-7]/z, \\[x0= , #5, mul vl\\]\\n.*\\tst1b\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_s8.c -march=3Darmv8.2-a+sve -f= no-stack-protector scan-assembler \\tld4b\\t{(z[0-9]+)\\.b - z[0-9]+\\.b}.= *\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_u16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1h\\t(z[0-9]+\\.h), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1h\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_u16.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4h\\t{(z[0-9]+)\\.h - z[0-9]+\\.h}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_u32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1w\\t(z[0-9]+\\.s), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1w\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_u32.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4w\\t{(z[0-9]+)\\.s - z[0-9]+\\.s}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_u64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld1d\\t(z[0-9]+\\.d), p[0-7]/z, \\[x= 0, #5, mul vl\\]\\n.*\\tst1d\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_u64.c -march=3Darmv8.2-a+sve -= fno-stack-protector scan-assembler \\tld4d\\t{(z[0-9]+)\\.d - z[0-9]+\\.d}= .*\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_u8.c -march=3Darmv8.2-a+sve -f= no-stack-protector scan-assembler \\tld1b\\t(z[0-9]+\\.b), p[0-7]/z, \\[x0= , #5, mul vl\\]\\n.*\\tst1b\\t\\1, p[0-7], \\[x2\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_6_le_u8.c -march=3Darmv8.2-a+sve -f= no-stack-protector scan-assembler \\tld4b\\t{(z[0-9]+)\\.b - z[0-9]+\\.b}.= *\\tstr\\t\\1, \\[x1\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/args_8.c -march=3Darmv8.2-a+sve -fno-sta= ck-protector scan-assembler \\tmov\\t(z[0-9]+\\.b), #42\\n.*\\tst1b\\t\\1,= p[0-7], \\[x4\\]\\n > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_1.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_1 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_1.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_3 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_1.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_4 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_1.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_5 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_1.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_6 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_1.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_7 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_2.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_1 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_2.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_10 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_2.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_11 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_2.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_2 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_2.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_3 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_2.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_4 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_2.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_5 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_2.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_6 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_2.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_7 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_2.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_8 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_2.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_9 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_3.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_1 > FAIL: gcc.target/aarch64/sve/pcs/stack_clash_3.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies test_2 > FAIL: gcc.target/aarch64/sve/pcs/varargs_1.c -march=3Darmv8.2-a+sve -fno-= stack-protector check-function-bodies caller_0 > FAIL: gcc.target/aarch64/sve/pcs/varargs_1.c -march=3Darmv8.2-a+sve -fno-= stack-protector check-function-bodies caller_1 > FAIL: gcc.target/aarch64/sve/pcs/varargs_1.c -march=3Darmv8.2-a+sve -fno-= stack-protector check-function-bodies caller_7 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_f16.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_0 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_f16.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_1 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_f16.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_7 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_f32.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_0 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_f32.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_1 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_f32.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_7 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_f64.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_0 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_f64.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_1 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_f64.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_7 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_s16.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_0 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_s16.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_1 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_s16.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_7 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_s32.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_0 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_s32.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_1 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_s32.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_7 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_s64.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_0 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_s64.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_1 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_s64.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_7 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_s8.c -march=3Darmv8.2-a+sve -f= no-stack-protector check-function-bodies caller_0 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_s8.c -march=3Darmv8.2-a+sve -f= no-stack-protector check-function-bodies caller_1 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_s8.c -march=3Darmv8.2-a+sve -f= no-stack-protector check-function-bodies caller_7 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_u16.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_0 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_u16.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_1 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_u16.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_7 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_u32.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_0 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_u32.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_1 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_u32.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_7 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_u64.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_0 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_u64.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_1 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_u64.c -march=3Darmv8.2-a+sve -= fno-stack-protector check-function-bodies caller_7 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_u8.c -march=3Darmv8.2-a+sve -f= no-stack-protector check-function-bodies caller_0 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_u8.c -march=3Darmv8.2-a+sve -f= no-stack-protector check-function-bodies caller_1 > FAIL: gcc.target/aarch64/sve/pcs/varargs_2_u8.c -march=3Darmv8.2-a+sve -f= no-stack-protector check-function-bodies caller_7 > > -- > Thiago