Lines Matching refs:index

585         idx = types.index(self.type)
704 index = (start + field.start) // 32
705 if index not in dwords:
706 dwords[index] = self.DWord()
711 dwords[index].fields.append(clone)
714 # assert dwords[index].address == None
715 dwords[index].addresses.append(clone)
721 while index < (start + field.end) // 32:
722 if index + 1 in dwords and not dwords[index] == dwords[index + 1]:
723 dwords[index].fields.extend(dwords[index + 1].fields)
724 dwords[index].addresses.extend(dwords[index + 1].addresses)
725 dwords[index].size = 64
726 dwords[index + 1] = dwords[index]
727 index = index + 1
736 # index we've seen plus one.
747 for index in range(length):
749 if index not in dwords:
751 print(" dw[%d] = 0;" % index)
757 dw = dwords[index]
758 if index > 0 and index - 1 in dwords and dw == dwords[index - 1]:
770 % (self.parser.gen_prefix(safe_name(field.type)), index, field.name))
779 print(" uint32_t v%d_%d;" % (index, field_index))
781 % (self.parser.gen_prefix(safe_name(field.type)), index, field_index, field.name))
785 dword_start = index * 32
790 print(" dw[%d] =" % index)
792 v = "v%d" % index
824 % (index, field_index, field.start - dword_start,
838 % (index, addr.name, addr.shift, addr.start - dword_start,
854 print(" dw[%d] = %s | %s;" % (index, v_accumulated_addr, v))
855 print(" dw[%d] = (%s >> 32) | (%s >> 32);" % (index + 1, v_accumulated_addr, v))
860 print(" dw[%d] = %s;" % (index, v))
861 print(" dw[%d] = %s >> 32;" % (index + 1, v))
864 for index in range(length):
866 if index not in dwords:
872 dw = dwords[index]
873 if index > 0 and index - 1 in dwords and dw == dwords[index - 1]:
885 print(" %s_unpack(data, &dw[%d], &values->%s);" % (prefix, index, field.name))
888 dword_start = index * 32
891 v = "dw[%d]" % index
893 v = "v%d" % index
894 print(" const uint%d_t %s = dw[%d] | ((uint64_t)dw[%d] << 32);" % (dw.size, v, index, index + 1))
901 vname = "v%d_%d" % (index, field_index)