From patchwork Thu Aug 20 12:52:40 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Max Filippov X-Patchwork-Id: 8316 Received: (qmail 100340 invoked by alias); 20 Aug 2015 12:53:05 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 100327 invoked by uid 89); 20 Aug 2015 12:53:04 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.7 required=5.0 tests=AWL, BAYES_00, FREEMAIL_FROM, FROM_LOCAL_NOVOWEL, HK_RANDOM_ENVFROM, HK_RANDOM_FROM, RCVD_IN_DNSWL_LOW, SPF_PASS autolearn=no version=3.3.2 X-HELO: mail-la0-f49.google.com Received: from mail-la0-f49.google.com (HELO mail-la0-f49.google.com) (209.85.215.49) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Thu, 20 Aug 2015 12:53:03 +0000 Received: by lalv9 with SMTP id v9so21846649lal.0 for ; Thu, 20 Aug 2015 05:53:00 -0700 (PDT) X-Received: by 10.112.137.164 with SMTP id qj4mr2726155lbb.105.1440075180078; Thu, 20 Aug 2015 05:53:00 -0700 (PDT) Received: from octofox.metropolis ([5.19.183.212]) by smtp.gmail.com with ESMTPSA id n6sm1195803laf.18.2015.08.20.05.52.58 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 20 Aug 2015 05:52:59 -0700 (PDT) From: Max Filippov To: gdb-patches@sourceware.org Cc: Maxim Grigoriev , Woody LaRue , Marc Gauthier , Joel Brobecker , Max Filippov Subject: [PATCH v2] xtensa: initialize call_abi in xtensa_tdep Date: Thu, 20 Aug 2015 15:52:40 +0300 Message-Id: <1440075160-13310-1-git-send-email-jcmvbkbc@gmail.com> Use XSHAL_ABI value provided by xtensa-config.h to correctly initialize xtensa_tdep.call_abi This fixes calls to functions from GDB that otherwise fail with the following assertion in call0 configuration: gdb/regcache.c:602: internal-error: regcache_raw_read: Assertion `regnum >= 0 && regnum < regcache->descr->nr_raw_registers' failed. gdb/ * xtensa-tdep.h (XTENSA_GDBARCH_TDEP_INSTANTIATE): Initialize call_abi using XSHAL_ABI macro. --- Changes v1 -> v2: - fix call_abi code formatting. gdb/xtensa-tdep.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gdb/xtensa-tdep.h b/gdb/xtensa-tdep.h index adacaf8..ff090f3 100644 --- a/gdb/xtensa-tdep.h +++ b/gdb/xtensa-tdep.h @@ -246,7 +246,9 @@ struct gdbarch_tdep .spill_location = -1, \ .spill_size = (spillsz), \ .unused = 0, \ - .call_abi = 0, \ + .call_abi = (XSHAL_ABI == XTHAL_ABI_CALL0 \ + ? CallAbiCall0Only \ + : CallAbiDefault), \ .debug_interrupt_level = XCHAL_DEBUGLEVEL, \ .icache_line_bytes = XCHAL_ICACHE_LINESIZE, \ .dcache_line_bytes = XCHAL_DCACHE_LINESIZE, \