diff options
author | H.J. Lu <hjl@lucon.org> | 2006-02-23 00:17:24 +0000 |
---|---|---|
committer | H.J. Lu <hjl@lucon.org> | 2006-02-23 00:17:24 +0000 |
commit | f47e2ca325e17bedf461f57d63cbc11fb883582c (patch) | |
tree | 280bec0c3be99b2d0868e9b513b36eca279d4125 /gas/config/tc-ia64.c | |
parent | ce50215c9299c08d70681fc58aacae8598914b1c (diff) | |
download | binutils-redhat-f47e2ca325e17bedf461f57d63cbc11fb883582c.tar.gz |
gas/
2006-02-22 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-ia64.c (specify_resource): Add the rule 17 from
SDM 2.2.
gas/testsuite/
2006-02-22 H.J. Lu <hongjiu.lu@intel.com>
* gas/ia64/dv-raw-err.s: Add check for vmsw.0.
* gas/ia64/dv-raw-err.l: Updated.
* gas/ia64/opc-b.s: Add vmsw.0 and vmsw.1.
* gas/ia64/opc-b.d: Updated.
opcodes/
2006-02-22 H.J. Lu <hongjiu.lu@intel.com>
* ia64-gen.c (lookup_regindex): Handle ".vm".
(print_dependency_table): Handle '\"'.
* ia64-ic.tbl: Updated from SDM 2.2.
* ia64-raw.tbl: Likewise.
* ia64-waw.tbl: Likewise.
* ia64-asmtab.c: Regenerated.
* ia64-opc-b.c (ia64_opcodes_b): Add vmsw.0 and vmsw.1.
Diffstat (limited to 'gas/config/tc-ia64.c')
-rw-r--r-- | gas/config/tc-ia64.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gas/config/tc-ia64.c b/gas/config/tc-ia64.c index 2ac758660d..8a0d4033f0 100644 --- a/gas/config/tc-ia64.c +++ b/gas/config/tc-ia64.c @@ -8327,6 +8327,8 @@ depends_on (depind, idesc) IC:rse-writers. 15+16) Represents reserved instructions, which the assembler does not generate. + 17) CR[TPR] has a RAW dependency only between mov-to-CR-TPR and + mov-to-PSR-l or ssm instructions that set PSR.i, PSR.pp or PSR.up. Memory resources (i.e. locations in memory) are *not* marked or tracked by this code; there are no dependency violations based on memory access. @@ -9415,8 +9417,9 @@ dep->name, idesc->name, (rsrc_write?"write":"read"), note) break; case IA64_RS_CRX: - /* Handle all CR[REG] resources */ - if (note == 0 || note == 1) + /* Handle all CR[REG] resources. + ??? FIXME: The rule 17 isn't really handled correctly. */ + if (note == 0 || note == 1 || note == 17) { if (idesc->operands[!rsrc_write] == IA64_OPND_CR3) { |