[PATCH 0/9] DWARF Register Number Handling, Including RISC-V CSRs
Alan Modra
amodra@gmail.com
Mon Nov 25 11:53:00 GMT 2019
On Fri, Nov 22, 2019 at 12:10:24PM +0000, Andrew Burgess wrote:
> The aim of this series is to provide support for using RISC-V CSRs
> (Control Status Registers) in gas .cfi directives. The problem with
> this is that the DWARF register numbers for these registers are rather
> large, in the range 4096 - 8191, and the number space is only sparsely
> populated. The existing code for mapping DWARF register numbers to
> names is not really setup to handle this situation, and additionally,
> the default DWARF CIE version that gas uses only has a single byte
> return address column, which is overflowed by these CSRs.
>
> This series starts with some general code clean up (I think) in the
> area around DWARF register number handling, introduces a new mechanism
> for mapping from DWARF register numbers to names, and then adds
> support for RISC-V CSRs. Finally I make DWARF CIE version 3 the
> default for RISC-V, this should be largely invisible to consumers,
> except the return address column is now uleb128 instead of ubyte.
This all looks reasonable to me. One nit: binutils generally uses
tabs to indent. Please fix that before committing. (Of course,
testsuite .d and similar can use spaces to match output!)
I find the following in my .git/config helps me avoid whitespace
errors:
[core]
whitespace = indent-with-non-tab,space-before-tab,trailing-space
--
Alan Modra
Australia Development Lab, IBM
More information about the Binutils
mailing list