From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32140 invoked by alias); 31 Jul 2002 21:04:59 -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 32132 invoked from network); 31 Jul 2002 21:04:58 -0000 Received: from unknown (HELO mx1.redhat.com) (66.187.233.31) by sources.redhat.com with SMTP; 31 Jul 2002 21:04:58 -0000 Received: from int-mx2.corp.redhat.com (nat-pool-rdu.redhat.com [172.16.52.200] (may be forged)) by mx1.redhat.com (8.11.6/8.11.6) with ESMTP id g6VKqYl20657 for ; Wed, 31 Jul 2002 16:52:35 -0400 Received: from potter.sfbay.redhat.com (potter.sfbay.redhat.com [172.16.27.15]) by int-mx2.corp.redhat.com (8.11.6/8.11.6) with ESMTP id g6VL4uu02040; Wed, 31 Jul 2002 17:04:56 -0400 Received: from romulus.sfbay.redhat.com (remus.sfbay.redhat.com [172.16.27.252]) by potter.sfbay.redhat.com (8.11.6/8.11.6) with ESMTP id g6VL4tm01179; Wed, 31 Jul 2002 14:04:55 -0700 Received: (from kev@localhost) by romulus.sfbay.redhat.com (8.11.6/8.11.6) id g6VL4qw23446; Wed, 31 Jul 2002 14:04:52 -0700 Date: Wed, 31 Jul 2002 15:40:00 -0000 From: Kevin Buettner Message-Id: <1020731210452.ZM23445@localhost.localdomain> To: ac131313@redhat.com Subject: [RFA] mips_push_arguments(): Make O64 ABI test explicit Cc: gdb-patches@sources.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-SW-Source: 2002-07/txt/msg00635.txt.bz2 Now that mips-tdep.c defines another ABI such that mips_default_saved_regsize == 8, it becomes necessary to revise one of the conditions in mips_push_arguments(). The comment above the test in question says: ... Also don't do this adjustment on EABI and O64 binaries. ... I believe that the expression ``MIPS_SAVED_REGSIZE < 8'' was being used to test to see if the O64 ABI was being used. I've changed the test so that it explicitly checks the tdep struct for the O64 ABI instead. This patch fixes the following failures for the N64 ABI: FAIL: gdb.base/call-ar-st.exp: print print_small_structs, pattern 4 FAIL: gdb.base/call-ar-st.exp: print print_small_structs from print_long_arg_list, pattern 4 Okay to commit? * mips-tdep.c (mips_push_arguments): Don't assume that ``MIPS_SAVED_REGSIZE < 8'' means that the o64 abi is in use. Instead, test for it explicitly. Index: mips-tdep.c =================================================================== RCS file: /cvs/src/src/gdb/mips-tdep.c,v retrieving revision 1.85 diff -u -p -r1.85 mips-tdep.c --- mips-tdep.c 31 Jul 2002 20:26:49 -0000 1.85 +++ mips-tdep.c 31 Jul 2002 20:48:49 -0000 @@ -2615,7 +2615,7 @@ mips_push_arguments (int nargs, such and GDB gets tweaked accordingly. */ if (!MIPS_EABI - && MIPS_SAVED_REGSIZE < 8 + && tdep->mips_abi != MIPS_ABI_O64 && TARGET_BYTE_ORDER == BFD_ENDIAN_BIG && partial_len < MIPS_SAVED_REGSIZE && (typecode == TYPE_CODE_STRUCT ||