Szabolcs Nagy
c28eeff2ea
[ARM] Add ARMv8.3 VCMLA and VCADD instructions
...
Add support for VCMLA and VCADD advanced SIMD complex number instructions.
The command line option is -march=armv8.3-a+fp16+simd for enabling all
instructions.
In arm-dis.c the formatting syntax was abused a bit to select between
0 vs 90 or 180 vs 270 or 90 vs 270 based on a bit value instead of
duplicating entries in the opcode table.
gas/
* config/tc-arm.c (do_vcmla, do_vcadd): Define.
(neon_scalar_for_vcmla): Define.
(enum operand_parse_code): Add OP_IROT1 and OP_IROT2.
(NEON_ENC_TAB): Add DDSI and QQSI variants.
(insns): Add vcmla and vcadd.
* testsuite/gas/arm/armv8_3-a-simd.d: New.
* testsuite/gas/arm/armv8_3-a-simd.s: New.
* testsuite/gas/arm/armv8_3-a-simd-bad.d: New.
* testsuite/gas/arm/armv8_3-a-simd-bad.l: New.
* testsuite/gas/arm/armv8_3-a-simd-bad.s: New.
opcodes/
* arm-dis.c (coprocessor_opcodes): Add vcmla and vcadd.
(print_insn_coprocessor): Add 'V' format for neon D or Q regs.
2016-12-05 14:24:17 +00:00
..
2016-01-01 23:00:01 +10:30
2016-04-03 19:50:02 -04:00
2016-04-01 23:10:50 +10:30
2016-01-01 23:00:01 +10:30
2016-05-13 00:35:51 -04:00
2016-01-01 23:00:01 +10:30
2016-11-27 20:19:12 +10:30
2016-07-16 13:25:11 +09:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-05-13 15:58:07 +09:30
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-10-06 10:13:15 +10:30
2016-03-28 20:38:24 -04:00
2016-05-13 00:35:51 -04:00
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-02-22 14:11:27 +00:00
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-10-26 11:45:50 +10:30
2016-01-01 23:00:01 +10:30
2016-10-26 11:45:50 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-10-06 10:13:15 +10:30
2016-04-01 23:10:50 +10:30
2016-12-05 15:16:28 +01:00
2016-05-18 22:24:51 +01:00
2016-12-05 14:24:17 +00:00
2016-02-04 11:57:57 +00:00
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-07-16 13:25:11 +09:30
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-05-13 00:35:51 -04:00
2016-04-03 19:50:02 -04:00
2016-10-06 10:13:15 +10:30
2016-01-01 23:00:01 +10:30
2016-10-06 10:13:15 +10:30
2016-01-01 23:00:01 +10:30
2016-05-24 08:55:45 -04:00
2016-01-01 23:00:01 +10:30
2016-10-06 10:13:15 +10:30
2016-06-27 05:57:32 -04:00
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-04-01 23:10:50 +10:30
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-06-15 16:25:34 +01:00
2016-05-24 08:49:46 -04:00
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-10-06 10:13:15 +10:30
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-11-27 15:02:09 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-07-01 08:56:13 +02:00
2016-11-02 12:31:25 -07:00
2016-04-01 23:10:50 +10:30
2016-04-03 20:43:23 -04:00
2016-01-01 23:00:01 +10:30
2016-10-06 10:13:15 +10:30
2016-01-01 23:00:01 +10:30
2016-10-06 10:13:15 +10:30
2016-04-01 23:10:50 +10:30
2016-07-16 13:27:30 +09:30
2016-01-01 23:00:01 +10:30
2016-07-16 13:27:30 +09:30
2016-01-01 23:00:01 +10:30
2016-04-01 23:10:50 +10:30
2016-01-01 23:00:01 +10:30
2016-07-16 13:27:30 +09:30
2016-01-01 23:00:01 +10:30
2016-05-16 05:06:48 -04:00
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-02-25 16:55:21 +00:00
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-04-01 23:10:50 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-10-06 10:13:15 +10:30
2016-04-01 23:10:50 +10:30
2016-11-27 15:02:09 +10:30
2016-07-14 20:11:03 +01:00
2016-05-24 08:52:45 -04:00
2016-04-03 19:50:02 -04:00
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-11-13 07:37:02 -05:00
2016-01-01 23:00:01 +10:30
2016-05-16 05:01:52 -04:00
2016-02-03 09:21:51 -07:00
2016-10-06 09:39:56 +10:30
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-03-29 07:43:25 -04:00
2016-11-27 15:02:09 +10:30
2016-04-01 23:10:50 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-04-03 20:43:23 -04:00
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-06-15 16:25:34 +01:00
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-02-25 16:55:21 +00:00
2016-11-23 16:31:07 +08:00
2016-11-01 16:45:57 +00:00
2016-07-16 13:25:11 +09:30
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-11-04 20:18:35 +01:00
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-06-05 23:27:41 -04:00
2016-01-01 23:00:01 +10:30
2016-10-06 10:13:15 +10:30
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-05-23 01:20:09 -04:00
2016-01-01 23:00:01 +10:30
2016-10-06 10:13:15 +10:30
2016-01-01 23:00:01 +10:30
2016-05-13 00:35:51 -04:00
2016-01-01 23:00:01 +10:30
2016-05-13 00:35:51 -04:00
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-05-13 00:35:51 -04:00
2016-01-01 23:00:01 +10:30
2016-05-13 00:35:51 -04:00
2016-01-01 23:00:01 +10:30
2016-05-18 06:09:44 -04:00
2016-05-18 06:09:44 -04:00
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-10-06 10:13:15 +10:30
2016-01-01 23:00:01 +10:30
2016-04-03 20:43:23 -04:00
2016-01-01 23:00:01 +10:30
2016-08-05 11:26:13 +01:00
2016-11-27 15:02:09 +10:30
2016-10-06 10:13:15 +10:30
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-03-31 07:30:41 -04:00
2016-10-06 10:13:15 +10:30
2016-01-01 23:00:01 +10:30
2016-11-27 15:02:09 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-03-21 16:31:46 +00:00
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-01-01 23:00:01 +10:30
2016-05-13 00:35:51 -04:00
2016-06-01 21:19:53 -04:00