From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17103 invoked by alias); 7 Jan 2015 19:30:41 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 17092 invoked by uid 89); 7 Jan 2015 19:30:40 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.7 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,SPF_PASS,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 X-HELO: mail-oi0-f51.google.com Received: from mail-oi0-f51.google.com (HELO mail-oi0-f51.google.com) (209.85.218.51) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Wed, 07 Jan 2015 19:30:39 +0000 Received: by mail-oi0-f51.google.com with SMTP id h136so4287884oig.10 for ; Wed, 07 Jan 2015 11:30:37 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=mJdHSELov6IEPA7AwUuQJUH+3nXdARgrOngioJAOlI8=; b=NbKwx1s7NCm6akvyOoxIr25mUxrmSWH8Ea7QRjLKuyxEnrnWL5VJsFpGlOhAhRH6T1 Fz81rf83Lp19QCX298a54NVHD3d7QJGYwdRTykUdD3MAL+mFm6KBfwXDke1QFTr1eyiE dyftF2ut4YIhW8AfwwYKRtiUj3bM03LcSoYC9i9sp8ZQQIbDp6JaoOv5iExo+B0ug1S3 Y9JWT2fcUiEZ6PmHa3pp+iCdaa1YK2GVzPq55qpc+L9EqXi87ZL0pyp62DGi73oWefCT 1IFyfwWsM3MwuD6DHOP7wX+Sp0tKy6RhiHLkgwJkh1Sx6CdqxYE79k3iQ3HSPLRBAb8o U2WQ== X-Gm-Message-State: ALoCoQlRZak4LapA9Wy5tdWngDbULKe5hN43akQASFtqfjIpnOrIuPkD5b5+lqKtm7WjsOT0Qvp7 MIME-Version: 1.0 X-Received: by 10.60.144.194 with SMTP id so2mr3104403oeb.65.1420659037709; Wed, 07 Jan 2015 11:30:37 -0800 (PST) Received: by 10.182.222.98 with HTTP; Wed, 7 Jan 2015 11:30:37 -0800 (PST) In-Reply-To: <83bnma75yt.fsf@gnu.org> References: <83zj9v7urq.fsf@gnu.org> <83sifn7mpt.fsf@gnu.org> <83h9w278a9.fsf@gnu.org> <83bnma75yt.fsf@gnu.org> Date: Wed, 07 Jan 2015 19:30:00 -0000 Message-ID: Subject: Re: [PATCH] Speed up "gdb -tui" output From: Doug Evans To: Eli Zaretskii Cc: gdb-patches Content-Type: text/plain; charset=UTF-8 X-IsSubscribed: yes X-SW-Source: 2015-01/txt/msg00139.txt.bz2 On Wed, Jan 7, 2015 at 11:20 AM, Eli Zaretskii wrote: >> Date: Wed, 7 Jan 2015 11:08:41 -0800 >> From: Doug Evans >> Cc: gdb-patches >> >> On Wed, Jan 7, 2015 at 10:30 AM, Eli Zaretskii wrote: >> > The problem is not Windows per se, it's the Windows console driver >> > implemented as part of ncurses. >> > >> >> So one way to go, and again, this is just a possibility, >> >> is to not send tui_puts a character at a time. >> > >> > This means a major redesign of how ui-file and friends work, much more >> > than the energy and time I have to spend on this issue. >> >> Depends on how one approaches it. > > If you have ideas how to do that without a major effort, please tell. > I was talking based on several hours of staring at that stuff, but > perhaps I missed something. I can't promise to have a patch ready before 7.9, but I'll put it on my todo list. >> Note that while we do explicitly call *_unfiltered with single characters, >> unfiltered output is not in itself broken up into single characters. > > Not sure what you mean by that. fputs_maybe_filtered, which is the > workhorse of most of the output functions, explicitly writes out the > stuff it gets one character at a time, by calling fputc_unfiltered. > How's that not breaking output? fputs_maybe_filtered is the workhorse for filtered output, and it early exists for a number of things, like stream != gdb_stdout. Most unfiltered output goes straight to fputs_unfiltered (which is the wrapper around the ui-file to_fputs method). I see there is fputstr{,n}_unfiltered which does things a character at a time but it looks like it is only used by MI.