Re: [PATCH 2/5] hw/display/artist: Remove pointless initialization

2020-02-15 Thread Sven Schnelle
On Fri, Feb 14, 2020 at 01:12:59AM +0100, Philippe Mathieu-Daudé wrote:
> We are initializating incy inconditionally:
> 
> if (y1 <= y2) {
> incy = 1;
> } else {
> incy = -1;
> }
> 
> Signed-off-by: Philippe Mathieu-Daudé 
> ---
>  hw/display/artist.c | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/hw/display/artist.c b/hw/display/artist.c
> index abacb0e27d..47f0e9f0bc 100644
> --- a/hw/display/artist.c
> +++ b/hw/display/artist.c
> @@ -557,91 +557,90 @@ static void fill_window(ARTISTState *s, int startx, int 
> 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 = artist_get_color(s);
>  int dx, dy, t, e, x, y, incy, diago, horiz;
>  bool c1;
>  uint8_t *p;
>  
>  trace_artist_draw_line(x1, y1, x2, y2);
>  
>  if (update_start) {
>  s->vram_start = (x2 << 16) | y2;
>  }
>  
>  buf = >vram_buffer[ARTIST_BUFFER_AP];
>  
>  c1 = false;
> -incy = 1;
>  
>  if (x2 > x1) {
>  dx = x2 - x1;
>  } else {
>  dx = x1 - x2;
>  }
>  if (y2 > y1) {
>  dy = y2 - y1;
>  } else {
>  dy = y1 - y2;
>  }
>  if (dy > dx) {
>  t = y2;
>  y2 = x2;
>  x2 = t;
>  
>  t = y1;
>  y1 = x1;
>  x1 = t;
>  
>  t = dx;
>  dx = dy;
>  dy = t;
>  
>  c1 = true;
>  }
>  
>  if (x1 > x2) {
>  t = y2;
>  y2 = y1;
>  y1 = t;
>  
>  t = x1;
>  x1 = x2;
>  x2 = t;
>  }
>  
>  horiz = dy << 1;
>  diago = (dy - dx) << 1;
>  e = (dy << 1) - dx;
>  
>  if (y1 <= y2) {
>  incy = 1;
>  } else {
>  incy = -1;
>  }
>  x = x1;
>  y = y1;
>  
>  do {
>  if (c1) {
>  p = buf->data + x * s->width + y;
>  } else {
>  p = buf->data + y * s->width + x;
>  }
>  
>  if (skip_pix > 0) {
>  skip_pix--;
>  } else {
>  artist_rop8(s, p, color);
>  }
>  
>  if (e > 0) {
>  artist_invalidate_lines(buf, y, 1);
>  y  += incy;
>  e  += diago;
>  } else {
>  e += horiz;
>  }
>  x++;
>  } while (x <= x2 && (max_pix == -1 || --max_pix > 0));
>  }
> -- 
> 2.21.1
> 

Acked-by: Sven Schnelle 



[PATCH 2/5] hw/display/artist: Remove pointless initialization

2020-02-13 Thread Philippe Mathieu-Daudé
We are initializating incy inconditionally:

if (y1 <= y2) {
incy = 1;
} else {
incy = -1;
}

Signed-off-by: Philippe Mathieu-Daudé 
---
 hw/display/artist.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/hw/display/artist.c b/hw/display/artist.c
index abacb0e27d..47f0e9f0bc 100644
--- a/hw/display/artist.c
+++ b/hw/display/artist.c
@@ -557,91 +557,90 @@ static void fill_window(ARTISTState *s, int startx, int 
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 = artist_get_color(s);
 int dx, dy, t, e, x, y, incy, diago, horiz;
 bool c1;
 uint8_t *p;
 
 trace_artist_draw_line(x1, y1, x2, y2);
 
 if (update_start) {
 s->vram_start = (x2 << 16) | y2;
 }
 
 buf = >vram_buffer[ARTIST_BUFFER_AP];
 
 c1 = false;
-incy = 1;
 
 if (x2 > x1) {
 dx = x2 - x1;
 } else {
 dx = x1 - x2;
 }
 if (y2 > y1) {
 dy = y2 - y1;
 } else {
 dy = y1 - y2;
 }
 if (dy > dx) {
 t = y2;
 y2 = x2;
 x2 = t;
 
 t = y1;
 y1 = x1;
 x1 = t;
 
 t = dx;
 dx = dy;
 dy = t;
 
 c1 = true;
 }
 
 if (x1 > x2) {
 t = y2;
 y2 = y1;
 y1 = t;
 
 t = x1;
 x1 = x2;
 x2 = t;
 }
 
 horiz = dy << 1;
 diago = (dy - dx) << 1;
 e = (dy << 1) - dx;
 
 if (y1 <= y2) {
 incy = 1;
 } else {
 incy = -1;
 }
 x = x1;
 y = y1;
 
 do {
 if (c1) {
 p = buf->data + x * s->width + y;
 } else {
 p = buf->data + y * s->width + x;
 }
 
 if (skip_pix > 0) {
 skip_pix--;
 } else {
 artist_rop8(s, p, color);
 }
 
 if (e > 0) {
 artist_invalidate_lines(buf, y, 1);
 y  += incy;
 e  += diago;
 } else {
 e += horiz;
 }
 x++;
 } while (x <= x2 && (max_pix == -1 || --max_pix > 0));
 }
-- 
2.21.1