Fix problems due to generating Neon instructions on non-Neon capable
commit16a6a1531e775c5361482deca0ca5b9514d3e263
authorJulian Seward <jseward@acm.org>
Wed, 4 Mar 2015 12:35:54 +0000 (4 12:35 +0000)
committerJulian Seward <jseward@acm.org>
Wed, 4 Mar 2015 12:35:54 +0000 (4 12:35 +0000)
treeaaa7338083baf9114bd13dd7f94bb73ba8a3ec67
parenta12b8636da77f2b1ed2be90e234c0013db9baddc
Fix problems due to generating Neon instructions on non-Neon capable
hosts:

* iselNeon64Expr, iselNeonExpr: assert that the host is actually
  Neon-capable.

* iselIntExpr_R_wrk, existing cases for Iop_GetElem8x8,
  Iop_GetElem16x4, Iop_GetElem32x2, Iop_GetElem8x16, Iop_GetElem16x8,
  Iop_GetElem32x4:
  Limit these to cases where the host is Neon capable, else we wind up
  generating code which can't run on the host.

* iselIntExpr_R_wrk: add alternative implementation for
  Iop_GetElem32x2 for non-Neon capable hosts.

git-svn-id: svn://svn.valgrind.org/vex/trunk@3098
VEX/priv/host_arm_isel.c