From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 114353 invoked by alias); 21 Aug 2017 17:00:54 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 100682 invoked by uid 89); 21 Aug 2017 17:00:28 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.8 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_SOFTFAIL autolearn=no version=3.3.2 spammy= X-HELO: mail.baldwin.cx Received: from bigwig.baldwin.cx (HELO mail.baldwin.cx) (96.47.65.170) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 21 Aug 2017 17:00:26 +0000 Received: from ralph.baldwin.cx (c-73-231-226-104.hsd1.ca.comcast.net [73.231.226.104]) by mail.baldwin.cx (Postfix) with ESMTPSA id 2C1F410AB01; Mon, 21 Aug 2017 13:00:18 -0400 (EDT) From: John Baldwin To: Yao Qi Cc: gdb-patches@sourceware.org Subject: Re: [PATCH 03/22] Return X86_XSTATE_SSE_MASK instead of 0 in i386fbsd_core_read_xcr0 Date: Mon, 21 Aug 2017 17:00:00 -0000 Message-ID: <5227002.yF8gGOl3gB@ralph.baldwin.cx> User-Agent: KMail/4.14.10 (FreeBSD/11.1-STABLE; KDE/4.14.30; amd64; ; ) In-Reply-To: <86k21wswch.fsf@gmail.com> References: <1503329347-26711-1-git-send-email-yao.qi@linaro.org> <3145523.UstzfFeGMo@ralph.baldwin.cx> <86k21wswch.fsf@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-IsSubscribed: yes X-SW-Source: 2017-08/txt/msg00407.txt.bz2 On Monday, August 21, 2017 05:45:50 PM Yao Qi wrote: > John Baldwin writes: > > > I think this should actually be X86_XSTATE_MMX_MASK. Core dumps on FreeBSD/i386 > > s/X86_XSTATE_MMX_MASK/X86_XSTATE_X87_MASK/ ? Yes. > > only include the original 387 FPU state in .reg2, they do not write > > out SSE state > > in a separate note as Linux does. > > > > FAOD, the existing code (without my patches) get SSE target description > tdesc_i386 in default. If we should use MMX target description > tdesc_i386_mmx in this case, we can change it after my patch #4, in > which i386_target_description returns tdesc_i386_mmx for X86_XSTATE_X87_MASK. Yes, this is an old bug. I think it is fine to just reorder this after patch 4 so that returning X87_MASK will do the right thing. > > For i386 native FreeBSD (and probably other *BSD) targets the logic needs to > > similarly be a bit more complicated, though I can help. In particular, the > > 'static int have_ptrace_xmmregs' in i386-bsd-nat.c probably needs to be made > > non-static with an extern in 'i386-bsd-nat.h', and i386fbsd_read_description > > should try to use PT_GETXMMREGS once to probe it if it isn't set (it can just > > fetch the gdb process' registers to test the flag) and then select > > X86_XSTATE_SSE_MASK if there is no XSAVE support for PT_GETXMMREGS works, > > else use X86_XSTATE_MMX_MASK. Other BSD's don't have a target read description > > target method, so only i386-fbsd-nat.c would need to have its method updated. > > I could always work on this as a followup. > > To be clear, can I commit this patch as-is? Yes. -- John Baldwin