diff options
author | Yufeng Zhang <yufeng.zhang@arm.com> | 2013-11-05 20:54:22 +0000 |
---|---|---|
committer | Yufeng Zhang <yufeng.zhang@arm.com> | 2013-11-05 20:54:22 +0000 |
commit | 49eec19300ff80969c1e9a19e971b48ffa59ef16 (patch) | |
tree | 74bfa52d6d6fd41bac6df92700f9b519b27a4d3a /gas/config | |
parent | 68a642838267d9971f77f9eb487d32044a499c82 (diff) | |
download | gdb-49eec19300ff80969c1e9a19e971b48ffa59ef16.zip gdb-49eec19300ff80969c1e9a19e971b48ffa59ef16.tar.gz gdb-49eec19300ff80969c1e9a19e971b48ffa59ef16.tar.bz2 |
gas/
* config/tc-aarch64.c (parse_sys_reg): Update to use aarch64_sys_reg;
call aarch64_sys_reg_deprecated_p and warn about the deprecated
system registers.
gas/testsuite/
* gas/aarch64/deprecated.d: New file.
* gas/aarch64/deprecated.l: New file.
* gas/aarch64/deprecated.s: New file.
* gas/aarch64/sysreg-1.s: Add tests.
* gas/aarch64/sysreg-1.d: Add tests.
include/opcode/
* aarch64.h (aarch64_sys_reg): New typedef.
(aarch64_sys_regs): Change to define with the new type.
(aarch64_sys_reg_deprecated_p): Declare.
opcodes/
* aarch64-opc.c (F_DEPRECATED): New macro.
(aarch64_sys_regs): Update; flag "spsr_svc" and "spsr_hyp" with
F_DEPRECATED.
(aarch64_print_operand): Call aarch64_sys_reg_deprecated_p on
AARCH64_OPND_SYSREG.
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/tc-aarch64.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c index 4febbdc..c230b1e 100644 --- a/gas/config/tc-aarch64.c +++ b/gas/config/tc-aarch64.c @@ -3277,7 +3277,7 @@ parse_sys_reg (char **str, struct hash_control *sys_regs, int imple_defined_p) { char *p, *q; char buf[32]; - const struct aarch64_name_value_pair *o; + const aarch64_sys_reg *o; int value; p = buf; @@ -3313,7 +3313,12 @@ parse_sys_reg (char **str, struct hash_control *sys_regs, int imple_defined_p) } } else - value = o->value; + { + if (aarch64_sys_reg_deprecated_p (o)) + as_warn (_("system register name '%s' is deprecated and may be " +"removed in a future release"), buf); + value = o->value; + } *str = q; return value; |