This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] [SPARC] callfuncs.exp: avoid spurious register differences in sparc64 targets.


On 11/19/2015 04:02 PM, Jose E. Marchesi wrote:
> 
> Hi all!  Ok to commit?
> 
> commit 50fa72dabc43ba7fabbd5d213013d78cd22e2342
> Author: Jose E. Marchesi <jose.marchesi@oracle.com>
> Date:   Thu Nov 19 10:55:06 2015 -0500
> 
>     callfuncs.exp: avoid spurious register differences in sparc64 targets.
>     
>     The Linux kernel disables the FPU upon returning to userland.  This
>     introduces spurious failures in the register preservation tests in
>     callfuncs.exp, since the pstate.PEF bit gets cleared after system calls.

> +	-re  "^pstate\[ \t\]+\[^\r\n\]+\r\n" {
> +	    if [istarget "sparc64-*-linux-gnu"] {
> +		# Filter out the pstate register, since in sparc64
> +		# targets the Linux kernel disables pstate.PEF when
> +		# returning from traps, giving spurious differences.

Isn't this a kernel bug?  It sounds like it's impossible to debug FPU
code if you e.g. step over FPU instructions?

> +	    } else {
> +		lappend all_registers_lines $expect_out(0,string)
> +	    }
> +	    exp_continue
> +	}

Thanks,
Pedro Alves


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]