From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com [IPv6:2a00:1450:4864:20::52e]) by sourceware.org (Postfix) with ESMTPS id 1F3163858C20 for ; Tue, 11 Oct 2022 11:30:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 1F3163858C20 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-ed1-x52e.google.com with SMTP id m15so19614637edb.13 for ; Tue, 11 Oct 2022 04:30:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=fNulkamQ68zARTj0gQu/5ksUwhmzyGp8gMOPbe4ebgQ=; b=A+RAcS91zUqOnDI+oQfdQDH2WmDLZdqiTJnvlsVZrewsxcsGdaNGThMMEa90pJNySm Q14henbe+Zl89kvyq+l0vc+iSR9aTtVbgbrB8rdoYITQC82oE2l+VWnVYI7KZFZ4iVvv A3lU2NGQjaqtITYXSfz92GwSjJCQmarJngJYPs5lL1v1zPT9eIchFj6lBwA4TBckTQtj 9GyPSi1TI6D2v0jGtWIRN2hByvtoEDir1ivqPJKRmdGsikJdsZcrtcSRZXed4SkkqDrE eeSnatyyGF2X+aiSo4lr9YtD9dLB/WwAtDQFWL/txwzR47H9cCENuSAGFsukJ45lfLCy q9SQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=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=fNulkamQ68zARTj0gQu/5ksUwhmzyGp8gMOPbe4ebgQ=; b=zQ8dU00LiZda94U01a/h0onaeOC81iCWV02XRfr7szIxBxa2QHGxVpBuKUINExtqtl 5Bix+dOtinJ1wk3iHSb4xLdFrwnD9kZQx3MOgz/c2L6kv7smFUh9KhX9ZBkg6oj/bsER KnSxLUqNY0OkyAebtG1sf/Na0B0IkaVJkbYfcy/nY1ByGRGMuFAtwhokPi+TNVVGhJcw ZdIRDtkgb91A4w3rHxS66QTitvUZyW7M3UmCESzxE68bYGy781iaQgzgw3ggVXx5IKLc KGwiFKwV28wWYLvUAt1rCqn/tkObtfRO+T0WcpvTapQ49eU0p9tf6swX70J51TUoCSYk 8jFg== X-Gm-Message-State: ACrzQf1MnaXTKEfbm2jb6RgopIj8/sIKLWCBfazrsWvDyimR2E5y0a5E xioT0wQIQPmvLESDf1QYT8/QTx0ZG4XvEy7DMpQFkhhXCwA= X-Google-Smtp-Source: AMsMyM5M+UEuvxkv5WsJ6rrHEB09eMCeVNBhGPwuJ0cyxu9LQA3WgJp7eNVNKgdgpjXJ0smmqszz2kTHlHmafMnYKl4= X-Received: by 2002:a05:6402:5256:b0:459:42b3:3d86 with SMTP id t22-20020a056402525600b0045942b33d86mr21538860edd.370.1665487800953; Tue, 11 Oct 2022 04:30:00 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Richard Biener Date: Tue, 11 Oct 2022 13:29:48 +0200 Message-ID: Subject: Re: [committed 0/6] amdgcn: Add V32, V16, V8, V4, and V2 vectors To: Andrew Stubbs Cc: gcc-patches@gcc.gnu.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP 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 Tue, Oct 11, 2022 at 1:03 PM Andrew Stubbs wrote: > > This patch series adds additional vector sizes for the amdgcn backend. > > The hardware supports any arbitrary vector length up to 64-lanes via > masking, but GCC cannot (yet) make full use of them due to middle-end > limitations. Adding smaller "virtual" vector sizes increases the > complexity of the backend a little, but opens up optimization > opportunities for the current middle-end implementation somewhat. In > particular, it enables many more cases of SLP optimization. > > The patchset gives aproximately 100 addtional test PASS and a few extra > FAIL. However, the failures are not new issues, but rather existing > problems that did not show up because the code did not previously > vectorize. Expanding the testcase to allow 64-lane vectors shows the > same problems there. > > I shall backport these patches to the OG12 branch shortly. I suppose until you change the related_vector_mode hook the PR107096 issue will not hit you but at least it's then latent ... > > Andrew > > Andrew Stubbs (6): > amdgcn: add multiple vector sizes > amdgcn: Resolve insn conditions at compile time > amdgcn: Add vec_extract for partial vectors > amdgcn: vec_init for multiple vector sizes > amdgcn: Add vector integer negate insn > amdgcn: vector testsuite tweaks > > gcc/config/gcn/gcn-modes.def | 82 ++ > gcc/config/gcn/gcn-protos.h | 24 +- > gcc/config/gcn/gcn-valu.md | 399 +++++-- > gcc/config/gcn/gcn.cc | 1063 +++++++++++------ > gcc/config/gcn/gcn.h | 24 + > gcc/testsuite/gcc.dg/pr104464.c | 2 + > gcc/testsuite/gcc.dg/signbit-2.c | 5 +- > gcc/testsuite/gcc.dg/signbit-5.c | 1 + > gcc/testsuite/gcc.dg/vect/bb-slp-68.c | 5 +- > gcc/testsuite/gcc.dg/vect/bb-slp-cond-1.c | 3 +- > .../gcc.dg/vect/bb-slp-subgroups-3.c | 5 +- > .../gcc.dg/vect/no-vfa-vect-depend-2.c | 3 +- > gcc/testsuite/gcc.dg/vect/pr33953.c | 3 +- > gcc/testsuite/gcc.dg/vect/pr65947-12.c | 3 +- > gcc/testsuite/gcc.dg/vect/pr65947-13.c | 3 +- > gcc/testsuite/gcc.dg/vect/pr80631-2.c | 3 +- > gcc/testsuite/gcc.dg/vect/slp-reduc-4.c | 3 +- > .../gcc.dg/vect/trapv-vect-reduc-4.c | 3 +- > gcc/testsuite/lib/target-supports.exp | 3 +- > 19 files changed, 1183 insertions(+), 454 deletions(-) > > -- > 2.37.0 >