]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Enable move coalescing for Neon (vector) moves. Reduces code
authorJulian Seward <jseward@acm.org>
Thu, 22 Sep 2011 21:33:27 +0000 (21:33 +0000)
committerJulian Seward <jseward@acm.org>
Thu, 22 Sep 2011 21:33:27 +0000 (21:33 +0000)
size by about 10% for Neon-heavy code; gark.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2203

VEX/priv/host_arm_defs.c

index 38ed9b5206533d0d2f9e21276b8709f9c3fff450..95236074d8ecfd4bf40eb44fb0b9f66f4a15bf36 100644 (file)
@@ -2353,11 +2353,17 @@ Bool isMove_ARMInstr ( ARMInstr* i, HReg* src, HReg* dst )
             return True;
          }
          break;
+      case ARMin_NUnary:
+         if (i->ARMin.NUnary.op == ARMneon_COPY) {
+            *src = i->ARMin.NUnary.src;
+            *dst = i->ARMin.NUnary.dst;
+            return True;
+         }
+         break;
       default:
          break;
    }
 
-   // todo: float, vector moves
    return False;
 }