Split the ARM Crypto ISA extensions for AES and SHA1+2 into their own options (+aes...
authorTamar Christina <tamar.christina@arm.com>
Thu, 9 Nov 2017 11:21:31 +0000 (11:21 +0000)
committerNick Clifton <nickc@redhat.com>
Thu, 9 Nov 2017 11:21:31 +0000 (11:21 +0000)
commitb6b9ca0c3ec9589d0dd40b2b86ba748a361b48eb
tree2c4abe3fa1daf67b9c26fb249689cd78b2b7d8df
parent21b81e67c73368dbbc9f6356ac5a7eb274789a32
Split the ARM Crypto ISA extensions for AES and SHA1+2 into their own options (+aes and +sha2).  The reason for the split is because with the introduction of Armv8.4-a the implementation of AES has explicitly been made independent of the implementation of the other crypto extensions.

gas * config/tc-aarch64.c (aarch64_arch_option_table): Add armv8.4-a.
(aarch64_features): Added SM4 and SHA3.

include * opcode/aarch64.h:
(AARCH64_FEATURE_V8_4, AARCH64_FEATURE_SM4): New.
(AARCH64_ARCH_V8_4, AARCH64_FEATURE_SHA3): New.

opcodes * aarch64-tbl.h
(aarch64_feature_v8_4, aarch64_feature_crypto_v8_2): New.
(aarch64_feature_sm4, aarch64_feature_sha3): New.
(aarch64_feature_fp_16_v8_2): New.
(ARMV8_4, SHA3, SM4, CRYPTO_V8_2, FP_F16_V8_2): New.
(V8_4_INSN, CRYPTO_V8_2_INSN): New.
(SHA3_INSN, SM4_INSN, FP16_V8_2_INSN): New.
gas/ChangeLog
gas/config/tc-aarch64.c
include/ChangeLog
include/opcode/aarch64.h
opcodes/ChangeLog
opcodes/aarch64-tbl.h