[lkml]   [2003]   [May]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [Linux-fbdev-devel] Re: [BK FBDEV] String drawing optim
On 16 May 03 at 10:24, Geert Uytterhoeven wrote:
> On Thu, 15 May 2003, James Simmons wrote:
> > > What about getting rid of one-char putc, implementing it in terms of
> > > putcs? I'm doing it in matroxfb patches, and nobody complained yet, and
> > > with current length of {fbcon,accel}_putc{s,} I was not able to find
> > > measurable speed difference between putc and putc through putcs variants.
> >
> > Hm. I compressed all the image drawing functions into accel_putcs which is
> > used in many places. I then placed accel_putc() into fbcon_putc(). I could
> > have accel_putcs() called in fbcon_putc(). The advantage is smaller
> > amount of code. The offset is a big more overhead plus a function call.
> > What do people think here?
> putc() is almost never called, IIRC. We did our best to combine as much data as
> possible and call putcs().
> A quick grep showed ->con_putc() is called only in drivers/char/vt.c for:
> - Complementing the pointer position (for gpm)
> - Inserting/deleting single characters
> - Softcursor

Insert and Delete char are especially funny, as they do:

scr_memsetw(p, video_erase_char, nr * 2);
attr = video_erase_char >> 8;
while (nr--) {
video_erase_char, y,
attr = oldattr;

so we can turn whole loop into one single putcs() call, asking
for painting 'nr' characters from 'p' at y,video_num_columns-nr,
which will definitely help... And I believe that vc's attr is not
used by putc/putcs anymore, we always pass color explicit (in upper
bits of character).
Petr Vandrovec

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-03-22 13:35    [W:0.069 / U:0.540 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site