From patchwork Mon Jul 3 19:04:06 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: John Cox X-Patchwork-Id: 42402 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:3b1e:b0:12b:9ae3:586d with SMTP id c30csp4574301pzh; Mon, 3 Jul 2023 12:05:17 -0700 (PDT) X-Google-Smtp-Source: APBJJlHJmk11CuxKNbBFWKHLCfdXzFmOK4Iq3COIMmjM8W1JSvjNCeuhx2StjI/hroyW4/hrQMeI X-Received: by 2002:aa7:c507:0:b0:51d:d3d4:d02f with SMTP id o7-20020aa7c507000000b0051dd3d4d02fmr8448218edq.8.1688411117485; Mon, 03 Jul 2023 12:05:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1688411117; cv=none; d=google.com; s=arc-20160816; b=dhJ3VEChn8BQeq4onef67ofLYTED97ZKTqRINt++dw4/wK18TQi4wz8+4d9EgLPaWn Fi4i8U22sdkqna3/Oz/w3bY2QRymcahH6yCmQu6OasikQPQqta/xROborEOdZ3rkXf4c Os4BoVEXzQxltylgFCvlb/2WozqFqO+h/5R5b0SPlp6MVReVndwSYNCENCvndHi2BBWE rzKiHArWp0B3khSWYFk5U3nag2h4YMfk0alvtLYZwmMQ5fM1Ycm9J0HJ7Vb1xwXzduC+ s17NS4dBFfXptFNLwXEKWFQaF0qUCEsNRWqRVlkejN9A4Pqkj3irJ/qmU7Kpo8IwG9Ef 3z+Q== 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=FH6Z3F2IvjILhL3ZEriNTLP6lOd4MKdpjWgr/Cvc1xlM/Mb2pPoBz98nO3PjAcBsBb J58fEnfleb3hq7WcLqmLNJwHkJBOOzy02Tt1yEqb79SJFbnUu9B9RhPUHT1Y+PjRXzPL LG3c9TDKrA3TWH665aA+TwziRKm9ZXbIiVq6lXTO1qyp6uBWX82PptNpGfHh79+A72+d 4NJ3EHUsRO+b+n1ScbU/APPwCaXn9pSmIG7mJEYPRUeqdSUGkLy3Uyz0cQ7t4BhDMEet LG8RJ1/F0LTmNXvmVbMnpGoFvtNcatemNIADB1kcIK9azUBZKqJYsh7l/2BRT73hwt+8 UiYA== 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=cI6qlCG1; 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 u8-20020aa7d888000000b0051d8114ae0fsi11507168edq.530.2023.07.03.12.05.17; Mon, 03 Jul 2023 12:05:17 -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=cI6qlCG1; 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 3BD0468C577; Mon, 3 Jul 2023 22:04:45 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr1-f52.google.com (mail-wr1-f52.google.com [209.85.221.52]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AD3AC68C56D for ; Mon, 3 Jul 2023 22:04:36 +0300 (EEST) Received: by mail-wr1-f52.google.com with SMTP id ffacd0b85a97d-313f3a6db22so5510586f8f.3 for ; Mon, 03 Jul 2023 12:04:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kynesim-co-uk.20221208.gappssmtp.com; s=20221208; t=1688411076; x=1691003076; 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=cI6qlCG156lBND1RMSKsMzG486MuBMjjHmFxRMc0E+KpuU6hglQ5aZsRHB2Rntoc4A REx6EgT9IzbFaaYA4WRRlw3wDhuJgQIziYkBkSm9RIAl9298Q4WOJXlEZUx1xzZtSLyY I8kLQHQ5TP0s/ZaQaFc46aYyreYBbz4wy1VJCidPCsF3KpXjN4YVBL2mI6OGFjKyQoS5 rHg+kru/eSOE5BlTvd07bUukaqZklUoGlNzftmbkANGDIdPIqIaJ4qOe0xk6iz6DF+6o EDtno/W2iAt8HbRdoKYe7bbB9ITAb1o5CNhn5o/HG+2TQdYOewQYjshNeBVGf1zfAtci LkoA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688411076; x=1691003076; 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=CVVIQYXs0mztwHYLlc/2gKEhhlmI8iUuXr+XdVQzZ+fgGaypMVOd8eYSeXbrPgXlYx pPd0dNbMOLTPeEhudJd/pVQH9+ZZbqlBdlSG3l+ElwumCgSd4DYKqzl88jZuBHhk/Meg gtRPHkNRMKv4h5y7UXFjpbG8pnQ2wQc1j/1aGqtQy/p/RNkGNd1P7BvKImGIvfCe7s53 Tk1/wccE0T5ddF1s/u+zYr8XsHNWD3ZpwvylAxtJixEM2aJUNQdTsQYb/sunnkk4d5P3 9pQIHcrICKOksGxzqyrnZv8Bs7rGF+QY4Lqs/lP4dTfliTvXfAdPjNRSvPdlSPtRQ81g cudw== X-Gm-Message-State: ABy/qLZDmiPL1OW0MLMaGQAzodgoCp8TZHYgvUEP1Uwr9KLAUBnuoLi8 8Jt25UCMVTDCN1aLZUUTgxHQJsnNvFvkgXexBTA= X-Received: by 2002:adf:f74c:0:b0:314:91d:58b5 with SMTP id z12-20020adff74c000000b00314091d58b5mr10304181wrp.65.1688411076129; Mon, 03 Jul 2023 12:04:36 -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 o18-20020a056000011200b00313f9085119sm18972035wrx.113.2023.07.03.12.04.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Jul 2023 12:04:35 -0700 (PDT) From: John Cox To: ffmpeg-devel@ffmpeg.org Date: Mon, 3 Jul 2023 19:04:06 +0000 Message-Id: <20230703190410.237473-4-jc@kynesim.co.uk> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230703190410.237473-1-jc@kynesim.co.uk> References: <20230703190410.237473-1-jc@kynesim.co.uk> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v3 3/7] 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: R7sT2nAdFfR3 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]);