From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1291 invoked by alias); 14 Mar 2002 21:31:45 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 1225 invoked from network); 14 Mar 2002 21:31:42 -0000 Received: from unknown (HELO potter.sfbay.redhat.com) (209.249.29.60) by sources.redhat.com with SMTP; 14 Mar 2002 21:31:42 -0000 Received: from dot.sfbay.redhat.com (dot.sfbay.redhat.com [205.180.230.224]) by potter.sfbay.redhat.com (8.11.6/8.11.6) with ESMTP id g2ELPvh29492 for ; Thu, 14 Mar 2002 13:25:57 -0800 Received: (from rth@localhost) by dot.sfbay.redhat.com (8.11.6/8.11.6) id g2ELVg725200 for gdb-patches@sources.redhat.com; Thu, 14 Mar 2002 13:31:42 -0800 X-Authentication-Warning: dot.sfbay.redhat.com: rth set sender to rth@redhat.com using -f Date: Thu, 14 Mar 2002 13:31:00 -0000 From: Richard Henderson To: gdb-patches@sources.redhat.com Subject: DW_FORM_data8 Message-ID: <20020314133141.A25197@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5.1i X-SW-Source: 2002-03/txt/msg00218.txt.bz2 The dwarf2 reader doesn't believe that DW_FORM_data8 holds a constant value. Fixed thus. Ok? r~ PS: Not sure what generated this form -- certainly gcc should be emitting the smaller forms when the array bounds allow. Perhaps it's output from an older gcc... Anyway, it shows up on an ia64 installation I have here. * dwarf2read.c (read_array_type): Accept DW_FORM_data8 as a constant array bound. Index: dwarf2read.c =================================================================== RCS file: /cvs/src/src/gdb/dwarf2read.c,v retrieving revision 1.49 diff -c -p -d -r1.49 dwarf2read.c *** dwarf2read.c 2002/02/28 11:21:16 1.49 --- dwarf2read.c 2002/03/14 21:28:59 *************** read_array_type (struct die_info *die, s *** 2538,2544 **** else if (attr->form == DW_FORM_udata || attr->form == DW_FORM_data1 || attr->form == DW_FORM_data2 ! || attr->form == DW_FORM_data4) { low = DW_UNSND (attr); } --- 2538,2545 ---- else if (attr->form == DW_FORM_udata || attr->form == DW_FORM_data1 || attr->form == DW_FORM_data2 ! || attr->form == DW_FORM_data4 ! || attr->form == DW_FORM_data8) { low = DW_UNSND (attr); } *************** read_array_type (struct die_info *die, s *** 2564,2570 **** else if (attr->form == DW_FORM_udata || attr->form == DW_FORM_data1 || attr->form == DW_FORM_data2 ! || attr->form == DW_FORM_data4) { high = DW_UNSND (attr); } --- 2565,2572 ---- else if (attr->form == DW_FORM_udata || attr->form == DW_FORM_data1 || attr->form == DW_FORM_data2 ! || attr->form == DW_FORM_data4 ! || attr->form == DW_FORM_data8) { high = DW_UNSND (attr); }