   0  getfield_gc_r_pure %r0, FieldDescr<pypy.module._rawffi.buffer.RawFFIBuffer.inst_datainstance> -> %r0
   5  -live- %r0
   5  guard_class %r0 -> %i0
   8  getfield_raw_i %i0, FieldDescr<pypy.module._rawffi.interp_rawffi.W_DataInstance_vtable.cls_getrawsize> -> %i0
  13  -live- %i0, %r0
  13  switch %i0, <SwitchDictDescr 0:L1, 1:L2, 2:L3>
  17  unreachable
  18  ---
  18  L1:
  18  -live-
  18  raise $<* struct object>
  20  ---
  20  L2:
  20  -live- %r0
  20  getfield_gc_r %r0, FieldDescr<pypy.module._rawffi.structure.W_StructureInstance.inst_shape> -> %r0
  25  getfield_gc_i %r0, FieldDescr<pypy.module._rawffi.interp_rawffi.W_DataShape.inst_size> -> %i0
  30  int_return %i0
  32  ---
  32  L3:
  32  -live- %r0
  32  getfield_gc_r %r0, FieldDescr<pypy.module._rawffi.array.W_ArrayInstance.inst_shape> -> %r1
  37  getfield_gc_i %r1, FieldDescr<pypy.module._rawffi.interp_rawffi.W_DataShape.inst_size> -> %i0
  42  getfield_gc_i %r0, FieldDescr<pypy.module._rawffi.array.W_ArrayInstance.inst_length> -> %i1
  47  int_mul %i0, %i1 -> %i0
  51  int_return %i0
