+static const char*
+ins_cnt6a (const struct ia64_operand *self, ia64_insn value,
+ ia64_insn *code)
+{
+ if (value < 1 || value > 64)
+ return "value must be between 1 and 64";
+ return ins_immu (self, value - 1, code);
+}
+
+static const char*
+ext_cnt6a (const struct ia64_operand *self, ia64_insn code,
+ ia64_insn *valuep)
+{
+ const char *result;
+
+ result = ext_immu (self, code, valuep);
+ if (result)
+ return result;
+
+ *valuep = *valuep + 1;
+ return 0;
+}
+
+static const char*
+ins_strd5b (const struct ia64_operand *self, ia64_insn value,
+ ia64_insn *code)
+{
+ if ( value & 0x3f )
+ return "value must be a multiple of 64";
+ return ins_imms_scaled (self, value, code, 6);
+}
+
+static const char*
+ext_strd5b (const struct ia64_operand *self, ia64_insn code,
+ ia64_insn *valuep)
+{
+ return ext_imms_scaled (self, code, valuep, 6);
+}
+
+