From patchwork Sun Jul 2 12:32:36 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: John Cox X-Patchwork-Id: 42373 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:3b1e:b0:12b:9ae3:586d with SMTP id c30csp3714892pzh; Sun, 2 Jul 2023 05:34:09 -0700 (PDT) X-Google-Smtp-Source: APBJJlFM+KQWDjPYJyZpPc7SGve5rtE4yxxpHPk6UevP8S5fnDHK0fYQtnDKFwn2SfbtcAGG8vKa X-Received: by 2002:a17:906:3453:b0:974:771e:6bf0 with SMTP id d19-20020a170906345300b00974771e6bf0mr4559190ejb.56.1688301249674; Sun, 02 Jul 2023 05:34:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1688301249; cv=none; d=google.com; s=arc-20160816; b=MExTOuRgzqLbGBZyle1VUevgXCfxRJhz1/MX4Zk5JOnXMQs98TvvOYaJ7Ga9Hy4HLX /0lQJty67CEAD4UO/PpaC9cO41pFy0EV7BjYpXBplE8LZRhoyJsp2N4Zn7NdJD2E/oZo CmdoG2J7NqV+cKUDSm4v6UtOGRQa8s++S0CdFoI9+TmV3MK2QVJmQmR5wTPerstWkHoy GxhFvejGuMlsq8nqhBsj+DjVhIkGi6bNmd+GOkhxfOjsz3sTDuhlim5APXg5laiLa1xf cN+VvA7Z/mrxfmkH9HZ+FT7xxvYKDiamQ5Nu6eq5jWz5JeqvtCBe7YJNRKbnH0O9O91i t5HQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:delivered-to; bh=pVerx6Psiww/y7OXeU7omNQmy4mHleX9ybw4rId0XT0=; fh=2QQVLAqz5Dgp0O7PTQ7hb1i3rOEvtuxkp5BnHStC38U=; b=n0ibT3CsVihps4KOQslkEry/KVe8jFCIhwCGAPKAPzS9tP+db0pp0E+WF9004vW2rf ilNOYMlsYJ12WtItn2ui0ugwgI8mQDdFTdTCiXCjNJqspucsluukq8VRMcmyptu+Vm3k xl7DiQ6131IXNIGxRClI8wHO4ZSEcv+6MMIyN5X/KWUfmS9STA6IAiqXDsm8+Cb0mB5j EuARgssS0BXp5tlCLTy683O20qTkhO9+mbs1HmmEGp7hH20lVh7oY5/j/xbv7F8rTPB3 NHnF8rpjSjtzy+z1f000sjWA1RP2GAf2FmzvRBZQ/Mnp9KlBJaT8YHmxqACx0ojS+gvm zk+w== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@kynesim-co-uk.20221208.gappssmtp.com header.s=20221208 header.b=IQha7crt; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id f25-20020a170906049900b0099327749bddsi1408405eja.125.2023.07.02.05.34.09; Sun, 02 Jul 2023 05:34:09 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@kynesim-co-uk.20221208.gappssmtp.com header.s=20221208 header.b=IQha7crt; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id EC3E868C2EE; Sun, 2 Jul 2023 15:33:18 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr1-f50.google.com (mail-wr1-f50.google.com [209.85.221.50]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C790068C2BF for ; Sun, 2 Jul 2023 15:33:16 +0300 (EEST) Received: by mail-wr1-f50.google.com with SMTP id ffacd0b85a97d-3090d3e9c92so4941161f8f.2 for ; Sun, 02 Jul 2023 05:33:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kynesim-co-uk.20221208.gappssmtp.com; s=20221208; t=1688301196; x=1690893196; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=w3CBS6ChqvgGoB8egsttzaLTWOB20TnMyP6sgmBn6Ic=; b=IQha7crtrBi9SEAlVyQAHcBRFBbRjTTxeBWfaHdseKi29PfWHZS8Dqd24RMXrkAe8R qJalvxVquueYUh2MvIAMfAlICKThbsfpl7PUgJenM8cINoL5LIwWH4bx1rT8TufwoUln RPLNOJ+8YBXOq5haOzll2thYvfR5mguISAyCQBaxo6eRa7C7iNrZZpk4tTNfx2n0WaIr A7i2NTG+Yqsx8ErQyo9zu1qHm7b7hwOIdlbGLXXx+Jmid21ozzsnGoj5GeiM2g2ijEna Zt23NVDYn9IYbbZUnFDAk9ezu5nWze7mFV53ZGQDTG/q8yn6pt4tKT8z2ytQ2n5F0C0m o/LA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688301196; x=1690893196; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=w3CBS6ChqvgGoB8egsttzaLTWOB20TnMyP6sgmBn6Ic=; b=hGgGgUWZh8ZswLgTHTc7fxLrfxnACR0EzYHPgaE+Jms90Ef0EGbYGkzEl9g1Q8aQq5 WchemEDe3uI90VMdnpIgZtm9f65cZwmcnTd4Gzd7PfOGvDCgapUorgocBqXVOFgXt3b7 mwqZHJv+k30znALgV5qFO0q1ZKwWlz3qNUr2CpnIjmNyAHRWdKiypNuFfmm17lZi4vGy g3BlhHs4LIAEFOFgN1fleJpx8y3bGwaDWst7RaJzTmkdP619F6WABTuB/E0TNwjabpis 9RK6wuv71YLxRYDTUCck80k1NJ5ZmFz2FyXECXEZkpmsP0pUrVgQcgo9vxpDZ+cDmeZn vphg== X-Gm-Message-State: ABy/qLZJnsH/R+3dc+pDgYZEQjaJkl9CKLlPGBoi1EIxM3lhgCESPRw2 hbA53MxLh9tiM8TZA40TCH0ovLpKrkcGGoDowuw= X-Received: by 2002:a5d:56ce:0:b0:313:f86f:2857 with SMTP id m14-20020a5d56ce000000b00313f86f2857mr9236636wrw.6.1688301196015; Sun, 02 Jul 2023 05:33:16 -0700 (PDT) Received: from sucnaath.outer.uphall.net (cpc1-cmbg20-2-0-cust759.5-4.cable.virginm.net. [86.21.218.248]) by smtp.gmail.com with ESMTPSA id f12-20020a7bc8cc000000b003fbbe41fd78sm8816167wml.10.2023.07.02.05.33.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 02 Jul 2023 05:33:15 -0700 (PDT) From: John Cox To: ffmpeg-devel@ffmpeg.org Date: Sun, 2 Jul 2023 12:32:36 +0000 Message-Id: <20230702123242.232484-10-jc@kynesim.co.uk> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230702123242.232484-1-jc@kynesim.co.uk> References: <20230702123242.232484-1-jc@kynesim.co.uk> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v2 09/15] tests/checkasm: Add test for vf_bwdif filter_edge X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: thomas.mundt@hr.de, John Cox , martin@martin.st Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: jpDXCIrvVrxU Signed-off-by: John Cox --- tests/checkasm/vf_bwdif.c | 54 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/tests/checkasm/vf_bwdif.c b/tests/checkasm/vf_bwdif.c index 034bbabb4c..5fdba09fdc 100644 --- a/tests/checkasm/vf_bwdif.c +++ b/tests/checkasm/vf_bwdif.c @@ -83,6 +83,60 @@ void checkasm_check_vf_bwdif(void) report("bwdif10"); } + { + LOCAL_ALIGNED_16(uint8_t, prev0, [11*WIDTH]); + LOCAL_ALIGNED_16(uint8_t, prev1, [11*WIDTH]); + LOCAL_ALIGNED_16(uint8_t, next0, [11*WIDTH]); + LOCAL_ALIGNED_16(uint8_t, next1, [11*WIDTH]); + LOCAL_ALIGNED_16(uint8_t, cur0, [11*WIDTH]); + LOCAL_ALIGNED_16(uint8_t, cur1, [11*WIDTH]); + LOCAL_ALIGNED_16(uint8_t, dst0, [WIDTH*3]); + LOCAL_ALIGNED_16(uint8_t, dst1, [WIDTH*3]); + const int stride = WIDTH; + const int mask = (1<<8)-1; + int spat; + int parity; + + for (spat = 0; spat != 2; ++spat) { + for (parity = 0; parity != 2; ++parity) { + if (check_func(ctx_8.filter_edge, "bwdif8.edge.s%d.p%d", spat, parity)) { + + declare_func(void, void *dst1, void *prev1, void *cur1, void *next1, + int w, int prefs, int mrefs, int prefs2, int mrefs2, + int parity, int clip_max, int spat); + + randomize_buffers(prev0, prev1, mask, 11*WIDTH); + randomize_buffers(next0, next1, mask, 11*WIDTH); + randomize_buffers( cur0, cur1, mask, 11*WIDTH); + memset(dst0, 0xba, WIDTH * 3); + memset(dst1, 0xba, WIDTH * 3); + + call_ref(dst0 + stride, + prev0 + stride * 4, cur0 + stride * 4, next0 + stride * 4, WIDTH, + stride, -stride, stride * 2, -stride * 2, + parity, mask, spat); + call_new(dst1 + stride, + prev1 + stride * 4, cur1 + stride * 4, next1 + stride * 4, WIDTH, + stride, -stride, stride * 2, -stride * 2, + parity, mask, spat); + + if (memcmp(dst0, dst1, WIDTH*3) + || memcmp(prev0, prev1, WIDTH*11) + || memcmp(next0, next1, WIDTH*11) + || memcmp( cur0, cur1, WIDTH*11)) + fail(); + + bench_new(dst1 + stride, + prev1 + stride * 4, cur1 + stride * 4, next1 + stride * 4, WIDTH, + stride, -stride, stride * 2, -stride * 2, + parity, mask, spat); + } + } + } + + report("bwdif8.edge"); + } + if (check_func(ctx_8.filter_intra, "bwdif8.intra")) { LOCAL_ALIGNED_16(uint8_t, cur0, [11*WIDTH]); LOCAL_ALIGNED_16(uint8_t, cur1, [11*WIDTH]);