arm: move more opcodes that use ARMv6 instructions
authorDavid Schleef <ds@schleef.org>
Wed, 21 Jul 2010 00:07:41 +0000 (17:07 -0700)
committerDavid Schleef <ds@schleef.org>
Wed, 21 Jul 2010 00:07:41 +0000 (17:07 -0700)
Noticed by Brad <brad@comstyle.com>.

orc/orcrules-arm.c

index ddb3336..e4ac404 100644 (file)
@@ -1504,16 +1504,9 @@ orc_compiler_orc_arm_register_rules (OrcTarget *target)
   orc_rule_register (rule_set, "andnb", arm_rule_andnX, NULL);
   orc_rule_register (rule_set, "avgsb", arm_rule_avgX, (void *)3);
   orc_rule_register (rule_set, "avgub", arm_rule_avgX, (void *)0);
-  orc_rule_register (rule_set, "cmpeqb", arm_rule_cmpeqX, (void *)1);
   orc_rule_register (rule_set, "cmpgtsb", arm_rule_cmpgtsX, (void *)1);
   orc_rule_register (rule_set, "copyb", arm_rule_copyX, NULL);
-  FAIL orc_rule_register (rule_set, "maxsb", arm_rule_maxsb, NULL);
-  FAIL orc_rule_register (rule_set, "maxub", arm_rule_maxub, NULL);
-  FAIL orc_rule_register (rule_set, "minsb", arm_rule_minsb, NULL);
-  FAIL orc_rule_register (rule_set, "minub", arm_rule_minub, NULL);
   orc_rule_register (rule_set, "orb", arm_rule_orX, NULL);
-  orc_rule_register (rule_set, "shlb", arm_rule_shlX, (void *)1);
-  FAIL orc_rule_register (rule_set, "shrsb", arm_rule_shrsX, (void *)1);
   FAIL orc_rule_register (rule_set, "shrub", arm_rule_shruX, (void *)1);
   FAIL orc_rule_register (rule_set, "signb", arm_rule_signX, (void *)0);
   orc_rule_register (rule_set, "subb", arm_rule_subb, NULL);
@@ -1529,16 +1522,10 @@ orc_compiler_orc_arm_register_rules (OrcTarget *target)
   orc_rule_register (rule_set, "andnw", arm_rule_andnX, NULL);
   FAIL orc_rule_register (rule_set, "avgsw", arm_rule_avgX, (void *)2);
   orc_rule_register (rule_set, "avguw", arm_rule_avgX, (void *)1);
-  orc_rule_register (rule_set, "cmpeqw", arm_rule_cmpeqX, (void *)2);
   orc_rule_register (rule_set, "cmpgtsw", arm_rule_cmpgtsX, (void *)2);
   orc_rule_register (rule_set, "copyw", arm_rule_copyX, NULL);
-  FAIL orc_rule_register (rule_set, "maxsw", arm_rule_maxsw, NULL);
-  FAIL orc_rule_register (rule_set, "maxuw", arm_rule_maxuw, NULL);
-  FAIL orc_rule_register (rule_set, "minsw", arm_rule_minsw, NULL);
-  FAIL orc_rule_register (rule_set, "minuw", arm_rule_minuw, NULL);
   orc_rule_register (rule_set, "orw", arm_rule_orX, NULL);
   orc_rule_register (rule_set, "shlw", arm_rule_shlX, (void *)2);
-  FAIL orc_rule_register (rule_set, "shrsw", arm_rule_shrsX, (void *)2);
   orc_rule_register (rule_set, "shruw", arm_rule_shruX, (void *)2);
   FAIL orc_rule_register (rule_set, "signw", arm_rule_signX, (void *)1);
   orc_rule_register (rule_set, "subw", arm_rule_subw, NULL);
@@ -1595,10 +1582,23 @@ orc_compiler_orc_arm_register_rules (OrcTarget *target)
   orc_rule_register (rule_set, "addb", arm_rule_addb, NULL);
   orc_rule_register (rule_set, "addssb", arm_rule_addssb, NULL);
   orc_rule_register (rule_set, "addusb", arm_rule_addusb, NULL);
+  orc_rule_register (rule_set, "cmpeqb", arm_rule_cmpeqX, (void *)1);
+  FAIL orc_rule_register (rule_set, "maxsb", arm_rule_maxsb, NULL);
+  FAIL orc_rule_register (rule_set, "maxub", arm_rule_maxub, NULL);
+  FAIL orc_rule_register (rule_set, "minsb", arm_rule_minsb, NULL);
+  FAIL orc_rule_register (rule_set, "minub", arm_rule_minub, NULL);
+  orc_rule_register (rule_set, "shlb", arm_rule_shlX, (void *)1);
+  FAIL orc_rule_register (rule_set, "shrsb", arm_rule_shrsX, (void *)1);
 
   orc_rule_register (rule_set, "addw", arm_rule_addw, NULL);
   orc_rule_register (rule_set, "addssw", arm_rule_addssw, NULL);
   orc_rule_register (rule_set, "addusw", arm_rule_addusw, NULL);
+  orc_rule_register (rule_set, "cmpeqw", arm_rule_cmpeqX, (void *)2);
+  FAIL orc_rule_register (rule_set, "maxsw", arm_rule_maxsw, NULL);
+  FAIL orc_rule_register (rule_set, "maxuw", arm_rule_maxuw, NULL);
+  FAIL orc_rule_register (rule_set, "minsw", arm_rule_minsw, NULL);
+  FAIL orc_rule_register (rule_set, "minuw", arm_rule_minuw, NULL);
+  FAIL orc_rule_register (rule_set, "shrsw", arm_rule_shrsX, (void *)2);
 
   orc_rule_register (rule_set, "convsuswb", arm_rule_convsuswb, NULL);
   orc_rule_register (rule_set, "convssswb", arm_rule_convssswb, NULL);