[PATCH, binutils/ARM] Add missing ARMv8-M special registers

Thomas Preudhomme thomas.preudhomme@foss.arm.com
Thu Aug 25 13:42:00 GMT 2016


Hi,

Current GAS support for ARMv8-M is missing the following special register for 
MSR and MRS instructions:

* msplim/msplim_ns
* psplim/psplim_ns
* primask_ns
* basepri_ns
* faultmask_ns
* control_ns
* sp_ns

and their capitalized form. See ARMv8-M Architecture Reference manual (document 
ARM DDI 0553A.b) on http://infocenter.arm.com for details.

The patch in attachment adds support for all these special registers. ChangeLog 
entries are as follow:

*** gas/ChangeLog ***

2016-08-25  Thomas Preud'homme  <thomas.preudhomme@arm.com>

         * config/tc-arm.c (v7m_psrs): Add MSPLIM, PSPLIM, MSPLIM_NS,
         PSPLIM_NS, PRIMASK_NS, BASEPRI_NS, FAULTMASK_NS, CONTROL_NS, SP_NS and
         their lowecase counterpart special registers.  Write register
         identifier in hex.
         * testsuite/gas/arm/archv8m-cmse-msr.s: Reorganize tests per
         operation, special register and then case.  Use different register for
         each operation.  Add tests for new special registers.
         * testsuite/gas/arm/archv8m-cmse-msr-base.d: Adapt expected result
         accordingly.
         * testsuite/gas/arm/archv8m-cmse-msr-main.d: Likewise.
         * testsuite/gas/arm/archv8m-main-dsp-4.d: Likewise.


*** opcodes/ChangeLog ***

2016-08-25  Thomas Preud'homme  <thomas.preudhomme@arm.com>

         * arm-dis.c (psr_name): Use hex as case labels.  Add detection for
         MSPLIM, PSPLIM, MSPLIM_NS, PSPLIM_NS, PRIMASK_NS, BASEPRI_NS,
         FAULTMASK_NS, CONTROL_NS and SP_NS special registers.


Testsuite does not have any regression.

Is this ok for trunk?

Best regards,

Thomas
-------------- next part --------------
A non-text attachment was scrubbed...
Name: add_missing_msr_special_regs.patch
Type: text/x-patch
Size: 17132 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20160825/1bdeca93/attachment.bin>


More information about the Binutils mailing list