From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24720 invoked by alias); 16 Jun 2010 18:57:10 -0000 Received: (qmail 24707 invoked by uid 22791); 16 Jun 2010 18:57:09 -0000 X-SWARE-Spam-Status: No, hits=-2.0 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,SPF_HELO_PASS,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from smtp-out.google.com (HELO smtp-out.google.com) (74.125.121.35) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 16 Jun 2010 18:56:49 +0000 Received: from wpaz17.hot.corp.google.com (wpaz17.hot.corp.google.com [172.24.198.81]) by smtp-out.google.com with ESMTP id o5GIuj2v031889 for ; Wed, 16 Jun 2010 11:56:45 -0700 Received: from vws4 (vws4.prod.google.com [10.241.21.132]) by wpaz17.hot.corp.google.com with ESMTP id o5GIui0V006762 for ; Wed, 16 Jun 2010 11:56:44 -0700 Received: by vws4 with SMTP id 4so7651979vws.21 for ; Wed, 16 Jun 2010 11:56:44 -0700 (PDT) MIME-Version: 1.0 Received: by 10.220.80.75 with SMTP id s11mr5193144vck.198.1276714604040; Wed, 16 Jun 2010 11:56:44 -0700 (PDT) Received: by 10.220.189.201 with HTTP; Wed, 16 Jun 2010 11:56:43 -0700 (PDT) In-Reply-To: <201006142319.33577.pedro@codesourcery.com> References: <201006071700.28706.pedro@codesourcery.com> <201006141215.41726.pedro@codesourcery.com> <831vc9jzg1.fsf@gnu.org> <201006142319.33577.pedro@codesourcery.com> Date: Wed, 16 Jun 2010 18:57:00 -0000 Message-ID: Subject: Re: [NEWS/RFA] Re: [gdbserver] x86 agent expression bytecode compiler (speed up conditional tracepoints) From: Doug Evans To: Pedro Alves Cc: gdb-patches@sourceware.org, Eli Zaretskii , tromey@redhat.com Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-System-Of-Record: true X-IsSubscribed: yes 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 X-SW-Source: 2010-06/txt/msg00370.txt.bz2 On Mon, Jun 14, 2010 at 3:19 PM, Pedro Alves wrote: >> > Thanks. =A0I've checked the whole thing in. I'm getting build failures that go away when compiling linux-x86-low.c with= -g. gcc is optimizing out the skipped over stuff I believe. /* Our general strategy for emitting code is to avoid specifying raw bytes whenever possible, and instead copy a block of inline asm that is embedded in the function. This is a little messy, because we need to keep the compiler from discarding what looks like dead code, plus suppress various warnings. */ #define EMIT_ASM(NAME,INSNS) \ { extern unsigned char start_ ## NAME, end_ ## NAME; \ add_insns (&start_ ## NAME, &end_ ## NAME - &start_ ## NAME); \ if (always_true ()) \ goto skipover ## NAME; \ __asm__ ("start_" #NAME ":\n\t" INSNS "\n\tend_" #NAME ":\n\t"); \ skipover ## NAME: \ ; }