blob: 7757645a133956efdea47fb67b6a0e4bf0de9e42 [file] [log] [blame]
#define NULL (void *)0
struct block
{
void *function;
const struct block *superblock;
};
struct global_block
{
struct block block;
void *compunit_symtab;
};
extern const struct block *block_global_block (const struct block *block);
void *
block_objfile (const struct block *block)
{
const struct global_block *global_block;
if (block->function != NULL)
return block->function;
global_block = (struct global_block *) block_global_block (block);
return global_block->compunit_symtab;
}
const struct block *
block_global_block (const struct block *block)
{
if (block == NULL)
return NULL;
while (block->superblock != NULL)
block = block->superblock;
return block;
}