Lines Matching refs:mlp

37 static void switch_on_type(struct mlist *mlp, struct tdesc *tdp,
40 static void print_intrinsic(struct mlist *mlp, struct tdesc *tdp,
42 static void print_forward(struct mlist *mlp, struct tdesc *tdp,
44 static void print_pointer(struct mlist *mlp, struct tdesc *tdp,
46 static void print_array(struct mlist *mlp, struct tdesc *tdp,
48 static void print_function(struct mlist *mlp, struct tdesc *tdp,
50 static void print_union(struct mlist *mlp, struct tdesc *tdp,
52 static void print_enum(struct mlist *mlp, struct tdesc *tdp,
54 static void print_forward(struct mlist *mlp, struct tdesc *tdp,
56 static void print_typeof(struct mlist *mlp, struct tdesc *tdp,
58 static void print_struct(struct mlist *mlp, struct tdesc *tdp,
60 static void print_volatile(struct mlist *mlp, struct tdesc *tdp,
80 struct mlist *mlp; in genassym_do_sou() local
101 for (mlp = tdp->data.members.forw; mlp != NULL; mlp = mlp->next) { in genassym_do_sou()
106 if (mlp->name == NULL) in genassym_do_sou()
108 chp = find_child(np, mlp->name); in genassym_do_sou()
115 if (mlp->fdesc == NULL) in genassym_do_sou()
117 switch_on_type(mlp, mlp->fdesc, format, 0); in genassym_do_sou()
138 switch_on_type(struct mlist *mlp, struct tdesc *tdp, char *format, int level) in switch_on_type() argument
144 format = uc(mlp->name); in switch_on_type()
149 print_intrinsic(mlp, tdp, format, level); in switch_on_type()
152 print_pointer(mlp, tdp, format, level); in switch_on_type()
155 print_array(mlp, tdp, format, level); in switch_on_type()
158 print_function(mlp, tdp, format, level); in switch_on_type()
161 print_union(mlp, tdp, format, level); in switch_on_type()
164 print_enum(mlp, tdp, format, level); in switch_on_type()
167 print_forward(mlp, tdp, format, level); in switch_on_type()
170 print_typeof(mlp, tdp, format, level); in switch_on_type()
173 print_struct(mlp, tdp, format, level); in switch_on_type()
176 print_volatile(mlp, tdp, format, level); in switch_on_type()
189 print_forward(struct mlist *mlp, struct tdesc *tdp, char *format, int level) in print_forward() argument
191 fprintf(stderr, "%s never defined\n", mlp->name); in print_forward()
196 print_typeof(struct mlist *mlp, struct tdesc *tdp, char *format, int level) in print_typeof() argument
198 switch_on_type(mlp, tdp->data.tdesc, format, level); in print_typeof()
202 print_volatile(struct mlist *mlp, struct tdesc *tdp, char *format, int level) in print_volatile() argument
204 switch_on_type(mlp, tdp->data.tdesc, format, level); in print_volatile()
208 print_intrinsic(struct mlist *mlp, struct tdesc *tdp, in print_intrinsic() argument
229 } else if (mlp->size != 0 && in print_intrinsic()
230 ((mlp->size % 8) != 0 || (mlp->offset % mlp->size) != 0)) { in print_intrinsic()
233 offset = (mlp->offset / 32) * 4; in print_intrinsic()
234 shift = 32 - ((mlp->offset % 32) + mlp->size); in print_intrinsic()
235 mask = ((int)pow(2, mlp->size) - 1) << shift; in print_intrinsic()
240 } else if (mlp->name != NULL) { in print_intrinsic()
241 printf("#define\t%s 0x%x\n", format, mlp->offset / 8); in print_intrinsic()
246 print_pointer(struct mlist *mlp, struct tdesc *tdp, char *format, int level) in print_pointer() argument
264 printf("#define\t%s 0x%x\n", format, mlp->offset / 8); in print_pointer()
269 print_array(struct mlist *mlp, struct tdesc *tdp, char *format, int level) in print_array() argument
276 inc = (mlp->size / items) / 8; in print_array()
277 printf("#define\t%s 0x%x\n", format, mlp->offset / 8); in print_array()
283 print_function(struct mlist *mlp, struct tdesc *tdp, char *format, int level) in print_function() argument
290 print_struct(struct mlist *mlp, struct tdesc *tdp, char *format, int level) in print_struct() argument
295 printf("#define\t%s 0x%x\n", format, mlp->offset / 8); in print_struct()
299 print_union(struct mlist *mlp, struct tdesc *tdp, char *format, int level) in print_union() argument
304 printf("#define\t%s 0x%x\n", format, mlp->offset / 8); in print_union()
308 print_enum(struct mlist *mlp, struct tdesc *tdp, char *format, int level) in print_enum() argument
313 printf("#define\t%s 0x%x\n", format, mlp->offset / 8); in print_enum()