diff options
author | Daniel Gutson <dgutson@codesourcery.com> | 2010-01-04 00:39:28 +0000 |
---|---|---|
committer | Daniel Gutson <dgutson@codesourcery.com> | 2010-01-04 00:39:28 +0000 |
commit | 88714cb802597c5a3214076769b304a04de84af7 (patch) | |
tree | 7f60ffb38dff870b1a90409489e2ae039f9d5811 /gas/testsuite/gas | |
parent | dbe1c97fd4a7a48eb52e5b70e4488ca6c7ca564e (diff) | |
download | ppe42-binutils-88714cb802597c5a3214076769b304a04de84af7.tar.gz ppe42-binutils-88714cb802597c5a3214076769b304a04de84af7.zip |
2010-01-03 Daniel Gutson <dgutson@codesourcery.com>
gas/
* config/tc-arm.c (struct arm_it): New flag 'is_neon'.
(NEON_ENC_*): Macros renamed to _NEON_ENC_*.
(NEON_ENCODE): New macro.
(check_neon_suffixes): New macro.
(do_vfp_cond_or_thumb): Set the 'is_neon' flag.
(do_vfp_nsyn_opcode): Likewise.
(do_vfp_nsyn_nmul): Use the new 'NEON_ENCODE' macro.
(do_vfp_nsyn_cmp): Likewise.
(do_neon_shl_imm): Likewise.
(do_neon_qshl_imm): Likewise.
(neon_dyadic_misc): Likewise.
(do_neon_mac_maybe_scalar): Likewise.
(do_neon_qdmulh): Likewise.
(do_neon_qmovn): Likewise.
(do_neon_qmovun): Likewise.
(do_neon_movn): Likewise.
(neon_mac_reg_scalar_long): Likewise.
(do_neon_vmull): Likewise.
(do_neon_trn): Likewise.
(do_neon_ldx_stx): Likewise.
(neon_dp_fixup): Changed signature and set the flag.
(neon_three_same): Call the above with new signature.
(neon_two_same): Likewise.
(neon_imm_shift): Likewise.
(neon_mul_mac): Likewise.
(do_neon_abs_neg): Likewise.
(neon_mixed_length): Likewise.
(do_neon_ext): Likewise.
(do_neon_mov): Likewise.
(do_neon_tbl_tbx): Likewise.
(do_neon_logic): Likewise, and use the new 'NEON_ENCODE' macro.
(neon_compare): Likewise.
(do_neon_shll): Likewise.
(do_neon_cvt): Likewise.
(do_neon_mvn): Likewise.
(do_neon_dup): Likewise.
(md_assemble): Call check_neon_suffixes ().
gas/testsuite/
* gas/arm/neon-suffix-bad.d: New test case.
* gas/arm/neon-suffix-bad.s: New file.
* gas/arm/neon-suffix-bad.l: New file.
Diffstat (limited to 'gas/testsuite/gas')
-rw-r--r-- | gas/testsuite/gas/arm/neon-suffix-bad.d | 3 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/neon-suffix-bad.l | 7 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/neon-suffix-bad.s | 12 |
3 files changed, 22 insertions, 0 deletions
diff --git a/gas/testsuite/gas/arm/neon-suffix-bad.d b/gas/testsuite/gas/arm/neon-suffix-bad.d new file mode 100644 index 0000000000..36bb986092 --- /dev/null +++ b/gas/testsuite/gas/arm/neon-suffix-bad.d @@ -0,0 +1,3 @@ +# name: Bad suffix for non-Neon mnemonic +# as: -mfpu=neon +# error-output: neon-suffix-bad.l diff --git a/gas/testsuite/gas/arm/neon-suffix-bad.l b/gas/testsuite/gas/arm/neon-suffix-bad.l new file mode 100644 index 0000000000..4c44f6b1cb --- /dev/null +++ b/gas/testsuite/gas/arm/neon-suffix-bad.l @@ -0,0 +1,7 @@ +[^:]*: Assembler messages: +[^:]*:3: Error: invalid neon suffix for non neon instruction +[^:]*:4: Error: invalid neon suffix for non neon instruction +[^:]*:5: Error: invalid neon suffix for non neon instruction +[^:]*:8: Error: invalid neon suffix for non neon instruction +[^:]*:9: Error: invalid neon suffix for non neon instruction +[^:]*:10: Error: invalid neon suffix for non neon instruction diff --git a/gas/testsuite/gas/arm/neon-suffix-bad.s b/gas/testsuite/gas/arm/neon-suffix-bad.s new file mode 100644 index 0000000000..288dba762b --- /dev/null +++ b/gas/testsuite/gas/arm/neon-suffix-bad.s @@ -0,0 +1,12 @@ +.syntax unified +.arm +add.f32 r0, r0, r0 +faddd.f32 d0, d0, d0 +faddd.f64 d0, d0, d0 + +.thumb +add.f32 r0, r0, r0 +faddd.f32 d0, d0, d0 +faddd.f64 d0, d0, d0 + + |