[Patch, AArch64] Support optional LSL #0 in 8-bit form MOVI as an architecture syntax instead of a programmer-friendly feature

Yufeng Zhang Yufeng.Zhang@arm.com
Mon Jan 14 23:07:00 GMT 2013


Hi,

This patch changes the AArch64 GAS and opcode to support the optional 
LSL #0 in 8-bit form MOVI instructions as an architecture syntax instead 
of a programmer-friendly feature.  This is to conform to the change in 
the latest ARMv8 ISA.

The patch has no effect on the tools' behaviour from the user's 
perspective, except for some diagnostics improvement in GAS in a couple 
of cases.

OK to commit?

Thanks,
Yufeng

include/opcode/

2013-01-14  Yufeng Zhang  <yufeng.zhang@arm.com>

         * aarch64.h (aarch64_op): Remove OP_V_MOVI_B.

opcodes/

2013-01-14  Yufeng Zhang  <yufeng.zhang@arm.com>

         * aarch64-asm.c (aarch64_ins_advsimd_imm_modified): Handle 
8-bit MOVI.
         * aarch64-dis.c (aarch64_ext_advsimd_imm_modified): Likewise.
         * aarch64-opc.c (operand_general_constraint_met_p): For
         AARCH64_MOD_LSL, move the range check on the shift amount 
before the
         alignment check; change to call set_sft_amount_out_of_range_error
         instead of set_imm_out_of_range_error.
         * aarch64-tbl.h (QL_SIMD_IMM_B): Replace NIL with LSL.
         (aarch64_opcode_table): Remove the OP enumerator from the asimdimm
         8-bit MOVI entry; change the 2nd operand from SIMD_IMM to
         SIMD_IMM_SFT.

gas/

2013-01-14  Yufeng Zhang  <yufeng.zhang@arm.com>

         * config/tc-aarch64.c (output_operand_error_record): Change to 
output
         the out-of-range error message as value-expected message if 
there is
         only one single value in the expected range.
         (programmer_friendly_fixup): Remove the handling of 8-bit MOVI with
         LSL #0 as a programmer-friendly feature.

gas/testsuite/

2013-01-14  Yufeng Zhang  <yufeng.zhang@arm.com>

         * gas/aarch64/diagnostic.l: Update.
         * gas/aarch64/movi.s: Add tests.
         * gas/aarch64/movi.d: Update.
         * gas/aarch64/programmer-friendly.s: Add comment.
~
-------------- next part --------------
A non-text attachment was scrubbed...
Name: movi-8bit.patch
Type: text/x-patch
Size: 29519 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20130114/342aaccb/attachment.bin>


More information about the Binutils mailing list