shithub: scc

ref: 3aa27c3da9cf49c6f8082f09a295b7cf241c9a65
dir: /src/libmach/objread.c/

View raw version
#include <stdio.h>

#include <scc/mach.h>

#include "libmach.h"

extern readfun_t readv[];

int
objread(Obj *obj, FILE *fp)
{
	int fmt;
	readfun_t fn;

	fmt = FORMAT(obj->type);
	if (fmt >= NFORMATS)
		return -1;

	fn = readv[fmt];
	if ((*fn)(obj, fp) < 0)
		return -1;
	return 0;
}