• Tamar Christina's avatar
    Add remainder of Em16 restrictions for AArch64 gas. · 3b5e60a4
    Tamar Christina authored
    This adds the missing Em16 constraints the rest of the instructions requiring them
    and also adds a testcase to test all the instructions so these are checked from
    now on.
    
    The Em16 operand constrains the valid registers to the lower 16 registers when used
    with a half precision qualifier.
    
    The list has been cross checked (by hand) through the Arm ARM version Ca.
    
    opcodes/
    
    	PR binutils/23192
    	* aarch64-tbl.h (sqdmlal, sqdmlal2, smlsl, smlsl2, sqdmlsl, sqdmlsl2,
    	mul, smull, smull2, sqdmull, sqdmull2, sqdmulh, sqrdmulh, mla, umlal,
    	umlal2, mls, umlsl, umlsl2, umull, umull2, sqdmlal, sqdmlsl, sqdmull,
    	sqdmulh, sqrdmulh): Use Em16.
    
    gas/
    
    	PR binutils/23192
    	* testsuite/gas/aarch64/illegal-by-element.s: New.
    	* testsuite/gas/aarch64/illegal-by-element.d: New.
    	* testsuite/gas/aarch64/illegal-by-element.l: New.
    
    (cherry picked from commit 45a28947f3fe5693560e9a1d6373807a9e82c04a)
    Signed-off-by: default avatarTamar Christina <tamar.christina@arm.com>
    3b5e60a4
Name
Last commit
Last update
bfd Loading commit data...
binutils Loading commit data...
config Loading commit data...
cpu Loading commit data...
elfcpp Loading commit data...
etc Loading commit data...
gas Loading commit data...
gdb Loading commit data...
gold Loading commit data...
gprof Loading commit data...
include Loading commit data...
intl Loading commit data...
ld Loading commit data...
libdecnumber Loading commit data...
libiberty Loading commit data...
opcodes Loading commit data...
readline Loading commit data...
sim Loading commit data...
texinfo Loading commit data...
zlib Loading commit data...
.cvsignore Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
COPYING Loading commit data...
COPYING.LIB Loading commit data...
COPYING.LIBGLOSS Loading commit data...
COPYING.NEWLIB Loading commit data...
COPYING3 Loading commit data...
COPYING3.LIB Loading commit data...
ChangeLog Loading commit data...
MAINTAINERS Loading commit data...
Makefile.def Loading commit data...
Makefile.in Loading commit data...
Makefile.tpl Loading commit data...
README Loading commit data...
README-maintainer-mode Loading commit data...
ar-lib Loading commit data...
compile Loading commit data...
config-ml.in Loading commit data...
config.guess Loading commit data...
config.rpath Loading commit data...
config.sub Loading commit data...
configure Loading commit data...
configure.ac Loading commit data...
depcomp Loading commit data...
djunpack.bat Loading commit data...
install-sh Loading commit data...
libtool.m4 Loading commit data...
ltgcc.m4 Loading commit data...
ltmain.sh Loading commit data...
ltoptions.m4 Loading commit data...
ltsugar.m4 Loading commit data...
ltversion.m4 Loading commit data...
lt~obsolete.m4 Loading commit data...
makefile.vms Loading commit data...
missing Loading commit data...
mkdep Loading commit data...
mkinstalldirs Loading commit data...
move-if-change Loading commit data...
setup.com Loading commit data...
src-release.sh Loading commit data...
symlink-tree Loading commit data...
test-driver Loading commit data...
ylwrap Loading commit data...