gas/
authorYufeng Zhang <yufeng.zhang@arm.com>
Fri, 15 Nov 2013 23:40:34 +0000 (23:40 +0000)
committerYufeng Zhang <yufeng.zhang@arm.com>
Fri, 15 Nov 2013 23:40:34 +0000 (23:40 +0000)
commit75468c93c14e9f14dd9020712538c5303a455876
tree2f070794ed0d90a0b6a1c6a2105fb1e968a70447
parent650948f9dcb6428693c9d7046c51f3234e3d7eb9
gas/

* config/tc-aarch64.c (set_other_error): New function.
(parse_sys_reg): Add new parameter 'sys_reg' and if non-NULL set
the variable to which it points with 'o'.
(parse_operands): Update; check for write to read-only system
registers or read from write-only ones.

gas/testsuite/

* gas/aarch64/diagnostic.s: Add tests.
* gas/aarch64/diagnostic.l: Update.
* gas/aarch64/tracereg-illegal.d: New file.
* gas/aarch64/tracereg-illegal.l: Ditto.
* gas/aarch64/tracereg-illegal.s: Ditto.
* gas/aarch64/tracereg.d: Ditto.
* gas/aarch64/tracereg.s: Ditto.

include/opcode

* aarch64.h (aarch64_sys_reg_readonly_p): New declaration.
(aarch64_sys_reg_writeonly_p): Ditto.

opcodes/

* aarch64-opc.c (CPENT): New define.
(F_READONLY, F_WRITEONLY): Likewise.
(aarch64_sys_regs): Add trace unit registers.
(aarch64_sys_reg_readonly_p): New function.
(aarch64_sys_reg_writeonly_p): Ditto.
14 files changed:
gas/ChangeLog
gas/config/tc-aarch64.c
gas/testsuite/ChangeLog
gas/testsuite/gas/aarch64/diagnostic.l
gas/testsuite/gas/aarch64/diagnostic.s
gas/testsuite/gas/aarch64/tracereg-illegal.d [new file with mode: 0644]
gas/testsuite/gas/aarch64/tracereg-illegal.l [new file with mode: 0644]
gas/testsuite/gas/aarch64/tracereg-illegal.s [new file with mode: 0644]
gas/testsuite/gas/aarch64/tracereg.d [new file with mode: 0644]
gas/testsuite/gas/aarch64/tracereg.s [new file with mode: 0644]
include/opcode/ChangeLog
include/opcode/aarch64.h
opcodes/ChangeLog
opcodes/aarch64-opc.c