[PATCH 39/57][Arm][OBJDUMP] Add support for MVE instructions: vpt, vpst and vcmp

Andre Vieira (lists) andre.simoesdiasvieira@arm.com
Wed May 1 17:39:00 GMT 2019


Hi,

This patch adds support for MVE instructions VPT, VPST, and VCMP.

This patch also adds a framework to parse VPT/VPST blocks and 
instructions therein.

opcodes/ChangeLog:

2019-05-01  Andre Vieira  <andre.simoesdiasvieira@arm.com>
             Michael Collison <michael.collison@arm.com>

	* arm-dis.c (enum mve_instructions): Add new instructions.
	(enum mve_unpredictable): Add new values.
         (mve_opcodes): Add new instructions.
         (vec_condnames): New array with vector conditions.
         (mve_predicatenames): New array with predicate suffixes.
         (mve_vec_sizename): New array with vector sizes.
         (enum vpt_pred_state): New enum with vector predication states.
	(struct vpt_block): New struct type for vpt blocks.
         (vpt_block_state): Global struct to keep track of state.
	(mve_extract_pred_mask): New helper function.
	(num_instructions_vpt_block): Likewise.
	(mark_outside_vpt_block): Likewise.
	(mark_inside_vpt_block): Likewise.
	(invert_next_predicate_state): Likewise.
	(update_next_predicate_state): Likewise.
	(update_vpt_block_state): Likewise.
	(is_vpt_instruction): Likewise.
	(is_mve_encoding_conflict): Add entries for new instructions.
	(is_mve_unpredictable): Likewise.
	(print_mve_unpredictable): Handle new cases.
	(print_instruction_predicate): Likewise.
	(print_mve_size): New function.
	(print_vec_condition): New function.
	(print_insn_mve): Handle vpt blocks and new print operands.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 39.patch
Type: text/x-patch
Size: 20230 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20190501/c39dc430/attachment.bin>


More information about the Binutils mailing list