*/
 bool insn_has_rep_prefix(struct insn *insn)
 {
+       insn_byte_t p;
        int i;
 
        insn_get_prefixes(insn);
 
-       for (i = 0; i < insn->prefixes.nbytes; i++) {
-               insn_byte_t p = insn->prefixes.bytes[i];
-
+       for_each_insn_prefix(insn, i, p) {
                if (p == 0xf2 || p == 0xf3)
                        return true;
        }
 {
        int idx = INAT_SEG_REG_DEFAULT;
        int num_overrides = 0, i;
+       insn_byte_t p;
 
        insn_get_prefixes(insn);
 
        /* Look for any segment override prefixes. */
-       for (i = 0; i < insn->prefixes.nbytes; i++) {
+       for_each_insn_prefix(insn, i, p) {
                insn_attr_t attr;
 
-               attr = inat_get_opcode_attribute(insn->prefixes.bytes[i]);
+               attr = inat_get_opcode_attribute(p);
                switch (attr) {
                case INAT_MAKE_PREFIX(INAT_PFX_CS):
                        idx = INAT_SEG_REG_CS;