mie: ir: op: keep a pointer to the block that contains the op
This commit is contained in:
@@ -55,6 +55,7 @@ struct mie_op {
|
|||||||
const struct mie_dialect *op_dialect;
|
const struct mie_dialect *op_dialect;
|
||||||
const struct mie_op_definition *op_info;
|
const struct mie_op_definition *op_info;
|
||||||
|
|
||||||
|
struct mie_block *op_container;
|
||||||
struct mie_file_span op_name_span;
|
struct mie_file_span op_name_span;
|
||||||
/* only valid if the F_RESOLVED flag is NOT set */
|
/* only valid if the F_RESOLVED flag is NOT set */
|
||||||
char *op_name;
|
char *op_name;
|
||||||
|
|||||||
@@ -4,7 +4,15 @@
|
|||||||
|
|
||||||
struct mie_op *mie_block_add_op(struct mie_block *block)
|
struct mie_op *mie_block_add_op(struct mie_block *block)
|
||||||
{
|
{
|
||||||
return mie_vector_emplace_back(block->b_ops, NULL);
|
struct mie_op *op = mie_vector_emplace_back(block->b_ops, NULL);
|
||||||
|
if (!op) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
mie_op_init(op);
|
||||||
|
op->op_container = block;
|
||||||
|
|
||||||
|
return op;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct mie_register *mie_block_add_param(struct mie_block *block)
|
struct mie_register *mie_block_add_param(struct mie_block *block)
|
||||||
|
|||||||
Reference in New Issue
Block a user