From nobody Thu Nov 13 17:44:03 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1581639249981610.2379570615473; Thu, 13 Feb 2020 16:14:09 -0800 (PST) Received: from localhost ([::1]:32992 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j2OcS-0005s3-Hj for importer@patchew.org; Thu, 13 Feb 2020 19:14:08 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42551) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j2ObV-0004Wi-Oh for qemu-devel@nongnu.org; Thu, 13 Feb 2020 19:13:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j2ObU-0006wn-Ig for qemu-devel@nongnu.org; Thu, 13 Feb 2020 19:13:09 -0500 Received: from mail-wm1-x343.google.com ([2a00:1450:4864:20::343]:50326) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j2ObU-0006vZ-C2 for qemu-devel@nongnu.org; Thu, 13 Feb 2020 19:13:08 -0500 Received: by mail-wm1-x343.google.com with SMTP id a5so8214327wmb.0 for ; Thu, 13 Feb 2020 16:13:08 -0800 (PST) Received: from x1w.redhat.com (78.red-88-21-202.staticip.rima-tde.net. [88.21.202.78]) by smtp.gmail.com with ESMTPSA id a16sm4679230wrx.87.2020.02.13.16.13.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 13 Feb 2020 16:13:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=zf3PhdUFbvcfneYdRj7vR71aYgxGRLP50x8FK7k3NmM=; b=Gpm8ei4PXPy4sTI7Lr2b+e5Zdo6EzbMQzEVDq3Cpowhhllw2VPMnBFUYCUZin8eXmk cCS1p5eCLkyWNCA3UDG5Z9LTx+Nn49fg+ozUTOUKcx+dvlMziBBMF3nDwVHAMvt1jDYU zgoJ7oovMT9rNVmT07WId0eX8wdTQba6/Dqvt5/ejx0IPQ8Uk+AyKTCM6dEsO4S9XKW9 zzYEwE2CDC5eEbLyV1KznuHfJbOikZxNhpTtzH5qvj2miZFwX4HJ9dpkVinRIfVCPw4m lyMY2atncTdwt5f79E1XUnJIPP5cvxEYcXVrZSHJOCpg13KqSBT/eBCczugaUZd+k7ge jPjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=zf3PhdUFbvcfneYdRj7vR71aYgxGRLP50x8FK7k3NmM=; b=GQWoAoABSZo9lVyTZ99grEQ7MxghM/Xs+0mdI43oH2+KYR5z1LOXD81ySKuIHbSxaW BHESv8d0Y6XWDjFIzzpelwxmI4B4IRRXoE93gJwLk2XMompcS0c5tsoSfqGpkEM9omGL /0FxkW2hy7ETZSRHRe81H5kPsThmWvC6dDeMjVWKfqtuTk2r+BZUIP7DKqiXijz+uNYn Pqnzn5X/ztM7c/HPAikbejSZtPJsVHtsTZdkh6VOdhyrzy798VNw1P7OOTGV64k+xy0j bJMRPVFVP4vTZGvrHcHHYdF/cWo+GMPRu/S+VjuZwTuI5NYVO7ZdzkU2O75EgyDjECrB 5anA== X-Gm-Message-State: APjAAAW2j/CWrybrejUfxKCfRFPIrRBlYBu6MzgVO8GsuDYzFI5suBsZ bArDswtKXgTZUdoSC985ERc= X-Google-Smtp-Source: APXvYqxTsS3EfD97FXZK79cm0JlFMR7dwrBk8jPthBh5PyLMpnB9jaMeL4tlWg3Q+b8Sj7F3TiIOqw== X-Received: by 2002:a7b:c93a:: with SMTP id h26mr667551wml.83.1581639187339; Thu, 13 Feb 2020 16:13:07 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Helge Deller , qemu-devel@nongnu.org, Sven Schnelle Subject: [PATCH 1/5] hw/display/artist: Move trace event to draw_line() Date: Fri, 14 Feb 2020 01:12:58 +0100 Message-Id: <20200214001303.12873-2-f4bug@amsat.org> X-Mailer: git-send-email 2.21.1 In-Reply-To: <20200214001303.12873-1-f4bug@amsat.org> References: <20200214001303.12873-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::343 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Gerd Hoffmann , Richard Henderson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Instead of emitting the trace event before each call to draw_line(), call it once at draw_line() entrance. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Acked-by: Sven Schnelle --- hw/display/artist.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/hw/display/artist.c b/hw/display/artist.c index 65be9e3554..abacb0e27d 100644 --- a/hw/display/artist.c +++ b/hw/display/artist.c @@ -557,90 +557,91 @@ static void fill_window(ARTISTState *s, int startx, i= nt starty, static void draw_line(ARTISTState *s, int x1, int y1, int x2, int y2, bool update_start, int skip_pix, int max_pix) { struct vram_buffer *buf; uint8_t color =3D artist_get_color(s); int dx, dy, t, e, x, y, incy, diago, horiz; bool c1; uint8_t *p; =20 + trace_artist_draw_line(x1, y1, x2, y2); =20 if (update_start) { s->vram_start =3D (x2 << 16) | y2; } =20 buf =3D &s->vram_buffer[ARTIST_BUFFER_AP]; =20 c1 =3D false; incy =3D 1; =20 if (x2 > x1) { dx =3D x2 - x1; } else { dx =3D x1 - x2; } if (y2 > y1) { dy =3D y2 - y1; } else { dy =3D y1 - y2; } if (dy > dx) { t =3D y2; y2 =3D x2; x2 =3D t; =20 t =3D y1; y1 =3D x1; x1 =3D t; =20 t =3D dx; dx =3D dy; dy =3D t; =20 c1 =3D true; } =20 if (x1 > x2) { t =3D y2; y2 =3D y1; y1 =3D t; =20 t =3D x1; x1 =3D x2; x2 =3D t; } =20 horiz =3D dy << 1; diago =3D (dy - dx) << 1; e =3D (dy << 1) - dx; =20 if (y1 <=3D y2) { incy =3D 1; } else { incy =3D -1; } x =3D x1; y =3D y1; =20 do { if (c1) { p =3D buf->data + x * s->width + y; } else { p =3D buf->data + y * s->width + x; } =20 if (skip_pix > 0) { skip_pix--; } else { artist_rop8(s, p, color); } =20 if (e > 0) { artist_invalidate_lines(buf, y, 1); y +=3D incy; e +=3D diago; } else { e +=3D horiz; } x++; } while (x <=3D x2 && (max_pix =3D=3D -1 || --max_pix > 0)); } @@ -648,13 +649,12 @@ static void draw_line(ARTISTState *s, int x1, int y1,= int x2, int y2, static void draw_line_pattern_start(ARTISTState *s) { =20 int startx =3D artist_get_x(s->vram_start); int starty =3D artist_get_y(s->vram_start); int endx =3D artist_get_x(s->blockmove_size); int endy =3D artist_get_y(s->blockmove_size); int pstart =3D s->line_pattern_start >> 16; =20 - trace_artist_draw_line(startx, starty, endx, endy); draw_line(s, startx, starty, endx, endy, false, -1, pstart); s->line_pattern_skip =3D pstart; } @@ -662,15 +662,14 @@ static void draw_line_pattern_start(ARTISTState *s) static void draw_line_pattern_next(ARTISTState *s) { =20 int startx =3D artist_get_x(s->vram_start); int starty =3D artist_get_y(s->vram_start); int endx =3D artist_get_x(s->blockmove_size); int endy =3D artist_get_y(s->blockmove_size); int line_xy =3D s->line_xy >> 16; =20 - trace_artist_draw_line(startx, starty, endx, endy); draw_line(s, startx, starty, endx, endy, false, s->line_pattern_skip, s->line_pattern_skip + line_xy); s->line_pattern_skip +=3D line_xy; s->image_bitmap_op ^=3D 2; } @@ -678,84 +677,81 @@ static void draw_line_pattern_next(ARTISTState *s) static void draw_line_size(ARTISTState *s, bool update_start) { =20 int startx =3D artist_get_x(s->vram_start); int starty =3D artist_get_y(s->vram_start); int endx =3D artist_get_x(s->line_size); int endy =3D artist_get_y(s->line_size); =20 - trace_artist_draw_line(startx, starty, endx, endy); draw_line(s, startx, starty, endx, endy, update_start, -1, -1); } =20 static void draw_line_xy(ARTISTState *s, bool update_start) { =20 int startx =3D artist_get_x(s->vram_start); int starty =3D artist_get_y(s->vram_start); int sizex =3D artist_get_x(s->blockmove_size); int sizey =3D artist_get_y(s->blockmove_size); int linexy =3D s->line_xy >> 16; int endx, endy; =20 endx =3D startx; endy =3D starty; =20 if (sizex > 0) { endx =3D startx + linexy; } =20 if (sizex < 0) { endx =3D startx; startx -=3D linexy; } =20 if (sizey > 0) { endy =3D starty + linexy; } =20 if (sizey < 0) { endy =3D starty; starty -=3D linexy; } =20 if (startx < 0) { startx =3D 0; } =20 if (endx < 0) { endx =3D 0; } =20 if (starty < 0) { starty =3D 0; } =20 if (endy < 0) { endy =3D 0; } =20 =20 if (endx < 0) { return; } =20 if (endy < 0) { return; } =20 - trace_artist_draw_line(startx, starty, endx, endy); draw_line(s, startx, starty, endx, endy, false, -1, -1); } =20 static void draw_line_end(ARTISTState *s, bool update_start) { =20 int startx =3D artist_get_x(s->vram_start); int starty =3D artist_get_y(s->vram_start); int endx =3D artist_get_x(s->line_end); int endy =3D artist_get_y(s->line_end); =20 - trace_artist_draw_line(startx, starty, endx, endy); draw_line(s, startx, starty, endx, endy, update_start, -1, -1); } =20 --=20 2.21.1