From patchwork Sat Jun 6 22:05:36 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Max Filippov X-Patchwork-Id: 7053 Received: (qmail 107870 invoked by alias); 6 Jun 2015 22:06:07 -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 107861 invoked by uid 89); 6 Jun 2015 22:06:07 -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-f42.google.com Received: from mail-la0-f42.google.com (HELO mail-la0-f42.google.com) (209.85.215.42) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Sat, 06 Jun 2015 22:06:02 +0000 Received: by laew7 with SMTP id w7so74133945lae.1 for ; Sat, 06 Jun 2015 15:05:59 -0700 (PDT) X-Received: by 10.112.140.9 with SMTP id rc9mr9557218lbb.14.1433628359537; Sat, 06 Jun 2015 15:05:59 -0700 (PDT) Received: from octofox.metropolis ([5.19.183.212]) by mx.google.com with ESMTPSA id ky7sm2868672lab.37.2015.06.06.15.05.57 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 06 Jun 2015 15:05:58 -0700 (PDT) From: Max Filippov To: gdb-patches@sourceware.org Cc: Maxim Grigoriev , Woody LaRue , Marc Gauthier , Max Filippov Subject: [PATCH] xtensa: initialize call_abi in xtensa_tdep Date: Sun, 7 Jun 2015 01:05:36 +0300 Message-Id: <1433628336-24058-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. --- gdb/xtensa-tdep.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gdb/xtensa-tdep.h b/gdb/xtensa-tdep.h index adacaf8..3b6ea66 100644 --- a/gdb/xtensa-tdep.h +++ b/gdb/xtensa-tdep.h @@ -246,7 +246,8 @@ 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, \