Nick Clifton
983aea3412
* ia64-ic.tbl (fr-readers): Add mem-writers-fp.
...
* ia64-asmtab.c: Regenerate.
* gas/ia64/dependency-1.s: New file: Test read before write dependency.
* gas/ia64/dependency-1.d: New file: Expected assembly results.
* gas/ia64/ia64.exp: Run the new test.
2003-04-08 09:50:07 +00:00
Jim Wilson
c10d9d8fc3
Patch to update IA-64 port to SDM 2.1.
...
bfd/ChangeLog
* cpu-ia64-opc.c: Add operand constant "ar.csd".
gas/ChangeLog
* config/tc-ia64.c (pseudo_func): Add "@pause" constant for "hint"
instruction.
(emit_one_bundle): Handle "hint" instruction.
(operand_match): Match IA64_OPND_AR_CSD.
gas/testsuite/ChangeLog
* gas/ia64/opc-b.d: Update for instructions added by SDM2.1.
* gas/ia64/opc-b.s: Ditto.
* gas/ia64/opc-f.d: Ditto.
* gas/ia64/opc-f.s: Ditto.
* gas/ia64/opc-i.d: Ditto.
* gas/ia64/opc-i.s: Ditto.
* gas/ia64/opc-m.d: Ditto.
* gas/ia64/opc-m.s: Ditto.
* gas/ia64/opc-x.d: Ditto.
* gas/ia64/opc-x.s: Ditto.
include/opcode/ChangeLog
* ia64.h: Fix copyright message.
(IA64_OPND_AR_CSD): New operand kind.
opcodes/ChangeLog
* ia64-opc-d.c (ia64_opcodes_d): Add "hint" instruction.
* ia64-opc-b.c: Add "hint.b" instruction.
* ia64-opc-f.c: Add "hint.f" instruction.
* ia64-opc-i.c: Add "hint.i" instruction.
* ia64-opc-m.c: Add "hint.m", "fc.i", "ld16", "st16", and
"cmp8xchg16" instructions.
* ia64-opc-x.c: Add "hint.x" instruction.
* ia64-opc.h (AR_CSD): New macro.
* ia64-ic.tbl: Update according to SDM2.1.
* ia64-raw.tbl: Ditto.
* ia64-waw.tbl: Ditto.
* ia64-gen.c (in_iclass): Handle "hint" like "nop".
(lookup_regindex): Recognize AR[FCR], AR[EFLAG], AR[CSD],
AR[SSD], AR[CFLG], AR[FSR], AR[FIR], and AR[FDR].
* ia64-asmtab.c: Regenerate.
2002-12-05 02:08:02 +00:00
Richard Henderson
a823923bf6
include/opcode/
...
* ia64.h (enum ia64_opnd): Add IA64_OPND_LDXMOV.
bfd/
* cpu-ia64-opc.c (elf64_ia64_operands): Add ldxmov entry.
opcodes/
* ia64-opc-m.c: Add ld8.mov.
* ia64-asmtab.c: Regenerate.
gas/
* config/tc-ia64.c (operand_match): Add IA64_OPND_LDXMOV case.
gas/testsuite/
* gas/ia64/ldxmov-1.[ds]: New.
* gas/ia64/ldxmov-2.[ls]: New.
* gas/ia64/ia64.exp: Run them.
2002-12-03 18:15:48 +00:00
Nick Clifton
bde78a07b9
Convert ia64-gen to use getopt(). Add standard GNU options plus --srcdir.
...
Convert Makefile.am to pass --srcdir to ia64-gen. Fix compile time warnings.
2002-11-07 14:33:48 +00:00
H.J. Lu
ae66e5d720
2002-07-17 David Mosberger <davidm@hpl.hp.com>
...
* ia64-opc-b.c (bWhc): New macro.
(mWhc): Ditto.
(OpPaWhcD): Ditto.
(ia64_opcodes_b): Correct patterns for indirect call
instructions to use 3-bit "wh" field.
* ia64-asmtab.c: Regnerate.
2002-07-17 07:27:40 +00:00
Jim Wilson
f4bc6bb0c2
Fix 2 bugs with parsing the resource dependency tables.
...
* ia64-gen.c (fetch_insn_class): If xsect, then ignore comment and
notestr if larger than xsect.
(in_class): Handle format M5.
* ia64-asmtab.c: Regnerate.
2001-03-20 02:32:27 +00:00
H.J. Lu
b8e0eda247
2001-02-23 David Mosberger <davidm@hpl.hp.com>
...
* ia64-opc-a.c: Add missing pseudo-ops for "cmp" and "cmp4".
* ia64-asmtab.c: Regenerate.
2001-02-23 21:57:48 +00:00
Jim Wilson
87f8eb977e
Improve gas error messages for invalid instructions.
...
* cpu-ia64-opc.c (elf64_ia64_operands}: Fix typo: error string for
C8 said "1" instead of "8". Clarify error string for IMM22:
"signed integer" instead of just "integer".
* config/tc-ia64.c (enum operand_match_result): New type.
(operand_match): Change return type to operand_match_result.
Fix all returns appropriately, adding support for returning the
out-of-range result.
(parse_operands): New locals result, error_pos, out_of_range_pos,
curr_out_of_range_pos. Rewrite operand matching loop to give better
error messages.
* ia64-opc-d.c (ia64_opcodes_d): Break the "add" pattern into two
separate variants: one for IMM22 and the other for IMM14.
* ia64-asmtab.c: Regenerate.
2001-02-22 03:16:21 +00:00
Jim Wilson
42dc96cab8
Fix DV bug reported by Intel against the setf instruction.
...
* ia64-ic.tbl: Update from Intel. Add setf to fr-writers.
* ia64-asmtab.c: Regenerate.
2001-02-14 20:30:26 +00:00
Jim Wilson
e594303548
Revert accidental breakage from Nick's 2000-12-16 checkin.
...
* ia64-asmtab.c: Revert 2000-12-16 change.
2001-02-06 02:42:20 +00:00
Nick Clifton
099194551f
Regenerate files
2000-12-16 22:01:44 +00:00
Jim Wilson
514829c3af
Eliminate ia64 compiler warnings. Fix ia64 gas testsuite again.
...
* elfxx-ia64.c (get_dyn_sym_info): Cast %p argument to void *.
* config/tc-ia64.h (ia64_init): Add prototype.
* gas/ia64/dv-imply.d, gas/ia64/dv-mutex.d, gas/ia64/dv-safe.d,
gas/ia64/dv-srlz.d, gas/ia64/opc-m.d: Update.
* ia64-dis.c (print_insn_ia64): Cast away const on ia64_free_opcode
argument.
* ia64_gen.c (insert_deplist): Cast sizeof result to int.
(print_dependency_table): Print NULL if semantics field not set.
(insert_opcode_dependencies): Mark cmp parameter as unused.
(print_main_table): Use fprintf_vma to print long long fields.
(main): Mark argv paramter as unused. Convert to old style definition.
* ia64-opc.c (ia64_find_dependency): Cast sizeof result to int.
* ia64-asmtab.c: Regnerate.
2000-12-12 22:56:36 +00:00
Jim Wilson
afa680f89a
Minor DV table update, minor DV checking bug fix.
...
* config/tc-ia64.c (resources_match): Handle IA64_RS_PRr.
* ia64-ic.tbl: Update from Intel.
* ia64-asmtab.c: Regenerate.
2000-10-05 21:55:25 +00:00
Jim Wilson
d48ad4f3b6
Add missing fpcmp instructions, and add missing fcmp/fpcmp tests.
...
* gas/ia64/opc-f.pl: Add missing fcmp and fpcmp tests.
* gas/ia64/opc-f.s, gas/ia64/opc-f.d: Regenerate.
* ia64-opc-f.c (ia64_opcodes_f): Add fpcmp pseudo-ops for
gt, ge, ngt, and nge.
* ia64-asmtab.c: Regenerate.
2000-09-22 22:34:41 +00:00
Jim Wilson
139368c9f3
Fix ia64 gas testsuite. Update ia64 DV tables. Fix ia64 gas testsuite again.
...
gas/ChangeLog
* config/tc-ia64.c (dv_sem): Add "stop".
(specify_resource, case IA64_RS_PR): Only handles regs 1 to 15 now.
(specify_resource, case IA64_RS_PRr): New for regs 16 to 62.
(specify_resource, case IA64_RS_PR63): Reorder (note == 7) test to
match above.
(mark_resources): Check IA64_RS_PRr.
gas/testsuite/ChangeLog
* gas/ia64/dv-raw-err.s: Add new testcases for PR%, 16 - 62.
* gas/ia64/dv-waw-err.s: Likewise.
* gas/ia64/dv-imply.d: Regenerate.
* gas/ia64/dv-mutex.d, gas/ia64/dv-raw-err.l, gas/ia64/dv-safe.d,
gas/ia64/dv-srlz.d, gas/ia64/dv-war-err.l, gas/ia64/dv-waw-err.l,
gas/ia64/opc-f.d, gas/ia64/opc-i.d, gas/ia64/opc-m.d: Likewise.
include/opcode/ChangeLog
* ia64.h (enum ia64_dependency_semantics): Add IA64_DVS_STOP.
opcodes/ChangeLog
* ia64-dis.c (print_insn_ia64): Revert Aug 7 byte skip count change.
* ia64-gen.c (parse_semantics): Handle IA64_DVS_STOP.
(lookup_specifier): Handle "PR%, 1 to 15" and "PR%, 16 to 62".
* ia64-ic.tbl, ia64-raw.tbl, ia64-war.tbl, ia64-waw.tbl: Update.
* ia64-asmtab.c: Regnerate.
2000-09-22 19:43:50 +00:00
Jim Wilson
50b81f1903
Fix 3 DV bugs, and a few minor cleanups.
...
gas/
* config/tc-ia64.c (specify_resource, case IA64_RS_GR): Handle
postincrement modified registers. Handle IA64_OPND_R3_2 addl
source registers.
(note_register_values): Handle IA64_OPND_R3_2 operands.
gas/testsuite/
* gas/ia64/dv-raw-err.s: Add new tests for addl and postinc.
* gas/ia64/dv-raw-err.l: Likewise.
* gas/ia64/dv-waw-err.l: Update sed pattern.
* gas/ia64/opc-f.pl: Delete fpsub, and fpadd comment.
* gas/ia64/opc-f.s, gas/ia64/opc-f.d: Regenerate.
include/opcode/
* ia64.h (IA64_OPCODE_POSTINC): New.
opcodes/
* ia64-ic.tbl (pr-readers-nobr-nomovpr): Add addl, adds. Delete
break, mov-immediate, nop.
* ia64-opc-f.c: Delete fpsub instructions.
* ia64-opc-m.c: Add POSTINC to all instructions with postincrement
address operand. Rewrite using macros to avoid long lines.
* ia64-opc.h (POSTINC): Define.
* ia64-asmtab.c: Regenerate.
2000-08-16 23:20:15 +00:00
Nick Clifton
c1485d85e0
Replace defines with those from intl/libgettext.h to quieten gcc warnings.
2000-05-30 18:35:35 +00:00
Timothy Wall
aa170a07eb
Misc assembly/disassembly fixes.
2000-04-23 02:39:13 +00:00
Jim Wilson
800eeca487
IA-64 ELF support.
2000-04-21 20:22:24 +00:00