This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH v2 6/7] arc: Change max instruction length to 64-bits


Hi Graham,

> gas/ChangeLog:
> 
> 	* config/tc-arc.c (struct arc_insn): Change type of insn field.
> 	(md_number_to_chars_midend): Support 6- and 8-byte values.
> 	(emit_insn0): Update debug output.
> 	(find_opcode_match): Likewise.
> 	(build_fake_opcode_hash_entry): Delete.
> 	(find_special_case_long_opcode): Delete.
> 	(find_special_case): Remove long format special case handling.
> 	(insert_operand): Change instruction type and update debug print
> 	format.
> 	(assemble_insn): Change instruction type, update debug print
> 	formats, and remove unneeded assert.
> 
> include/ChangeLog:
> 
> 	* opcode/arc.h (struct arc_opcode): Change type of opcode and mask
> 	fields.
> 	(struct arc_long_opcode): Delete.
> 	(struct arc_operand): Change types for insert and extract
> 	handlers.
> 
> opcodes/ChangeLog:
> 
> 	* arc-dis.c (struct arc_operand_iterator): Remove all fields
> 	relating to long instruction processing, add new limm field.
> 	(OPCODE): Rename to...
> 	(OPCODE_32BIT_INSN): ...this.
> 	(OPCODE_AC): Delete.
> 	(skip_this_opcode): Handle different instruction lengths, update
> 	macro name.
> 	(special_flag_p): Update parameter type.
> 	(find_format_from_table): Update for more instruction lengths.
> 	(find_format_long_instructions): Delete.
> 	(find_format): Update for more instruction lengths.
> 	(arc_insn_length): Likewise.
> 	(extract_operand_value): Update for more instruction lengths.
> 	(operand_iterator_next): Remove code relating to long
> 	instructions.
> 	(arc_opcode_to_insn_type): New function.
> 	(print_insn_arc):Update for more instructions lengths.
> 	* arc-ext.c (extInstruction_t): Change argument type.
> 	* arc-ext.h (extInstruction_t): Change argument type.
> 	* arc-fxi.h: Change type unsigned to unsigned long long
> 	extensively throughout.
> 	* arc-nps400-tbl.h: Add long instructions taken from
> 	arc_long_opcodes table in arc-opc.c.
> 	* arc-opc.c: Update parameter types on insert/extract handlers.
> 	(arc_long_opcodes): Delete.
> 	(arc_num_long_opcodes): Delete.
> 	(arc_opcode_len): Update for more instruction lengths.
 
Approved - please apply.

Cheers
  Nick


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]