diff options
author | Matthew Gretton-Dann <matthew.gretton-dann@arm.com> | 2010-09-17 10:42:04 +0000 |
---|---|---|
committer | Matthew Gretton-Dann <matthew.gretton-dann@arm.com> | 2010-09-17 10:42:04 +0000 |
commit | 59b42a0df4c14288bd6bc922c187a9e218323d3d (patch) | |
tree | 64e51df54782eda1c5504c11643acbbce552220d /gas/config/tc-arm.c | |
parent | db472d6ff0f438a21b357249a9b48e4b74498076 (diff) | |
download | gdb-59b42a0df4c14288bd6bc922c187a9e218323d3d.zip gdb-59b42a0df4c14288bd6bc922c187a9e218323d3d.tar.gz gdb-59b42a0df4c14288bd6bc922c187a9e218323d3d.tar.bz2 |
2010-09-17 Tejas Belagod <tejas.belagod@arm.com>
* config/tc-arm.c (parse_psr): Add condition for matching "APSR" on
non-M-arch cpus.
(psrs): Add entry for PSR flags, g, nzcvq, nzcvqg.
2010-09-17 Tejas Belagod <tejas.belagod@arm.com>
* gas/arm/msr-reg.s: New file.
* gas/arm/msr-reg.d: Likewise.
* gas/arm/msr-imm.s: Likewise.
* gas/arm/msr-imm.d: Likewise.
* gas/arm/msr-imm-bad.d: Likewise.
* gas/arm/msr-imm-bad.l: Likewise.
* gas/arm/msr-reg-bad.d: Likewise.
* gas/arm/msr-imm-bad.d: Likewise.
* gas/arm/msr-reg-thumb.d: Likewise.
* gas/arm/arch7.s: Add tests for xpsr.
* gas/arm/arch7.d: Likewise.
Diffstat (limited to 'gas/config/tc-arm.c')
-rw-r--r-- | gas/config/tc-arm.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index cebf2df..9bba5e4 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -5321,7 +5321,9 @@ parse_psr (char **str) p = *str; if (strncasecmp (p, "SPSR", 4) == 0) psr_field = SPSR_BIT; - else if (strncasecmp (p, "CPSR", 4) == 0) + else if (strncasecmp (p, "CPSR", 4) == 0 + || (strncasecmp (p, "APSR", 4) == 0 + && !ARM_CPU_HAS_FEATURE (selected_cpu, arm_ext_m))) psr_field = 0; else { @@ -16214,6 +16216,8 @@ static const struct asm_psr psrs[] = {"c", PSR_c}, {"x", PSR_x}, {"s", PSR_s}, + {"g", PSR_s}, + /* Combinations of flags. */ {"fs", PSR_f | PSR_s}, {"fx", PSR_f | PSR_x}, @@ -16275,6 +16279,10 @@ static const struct asm_psr psrs[] = {"csxf", PSR_c | PSR_s | PSR_x | PSR_f}, {"cxfs", PSR_c | PSR_x | PSR_f | PSR_s}, {"cxsf", PSR_c | PSR_x | PSR_s | PSR_f}, + + /* APSR flags */ + {"nzcvq", PSR_f}, + {"nzcvqg", PSR_s | PSR_f} }; /* Table of V7M psr names. */ |