From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4808 invoked by alias); 24 Jul 2007 17:01:18 -0000 Received: (qmail 4782 invoked by uid 22791); 24 Jul 2007 17:01:16 -0000 X-Spam-Check-By: sourceware.org Received: from shell4.BAYAREA.NET (HELO shell4.bayarea.net) (209.128.82.1) by sourceware.org (qpsmtpd/0.31) with ESMTP; Tue, 24 Jul 2007 17:01:11 +0000 Received: (qmail 5102 invoked from network); 24 Jul 2007 10:01:07 -0700 Received: from 209-128-106-254.bayarea.net (HELO ?192.168.20.7?) (209.128.106.254) by shell4.bayarea.net with SMTP; 24 Jul 2007 10:01:07 -0700 Message-ID: <46A63051.7060208@eagercon.com> Date: Tue, 24 Jul 2007 17:08:00 -0000 From: Michael Eager User-Agent: Thunderbird 1.5.0.9 (X11/20070102) MIME-Version: 1.0 To: gdb@sources.redhat.com Subject: frame cache Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2007-07/txt/msg00170.txt.bz2 I have a couple questions about the _frame_cache structure and functions. 1) This appears to be a single-entry cache. Why not keep multiple entries? 2) The data in the frame cache seems to be of two different types: a) Fixed, based on analyzing the code: register offsets, stack alignment, framelessness, etc. b) Variable, based on the call: return pc, frame base It looks to me that the object code is analyzed repeatedly and this fixed information is discarded along with the variable information. Why not keep a persistent cache of function specific fixed data and only discard the call-specific data when the frame cache is cleared? Is there any documentation about what target-specific data the frame cache is supposed to contain or how the functions are supposed to work? -- Michael Eager eager@eagercon.com 1960 Park Blvd., Palo Alto, CA 94306 650-325-8077