/**
* Return irp irgs in the desired order.
*/
-static ir_graph **arm_get_irg_list(const void *self, ir_graph **irg_list) {
+static ir_graph **arm_get_irg_list(const void *self, ir_graph ***irg_list) {
return NULL;
}
* @param irgs A flexible array ARR_F of length 0 where the backend cann append the desired irgs.
* @return A flexible array ARR_F containing all desired irgs in the desired order.
*/
- ir_graph **(*get_backend_irg_list)(const void *self, ir_graph **irgs);
+ ir_graph **(*get_backend_irg_list)(const void *self, ir_graph ***irgs);
};
#define arch_isa_get_n_reg_class(isa) ((isa)->impl->get_n_reg_class(isa))
be_dbg_types(env.db_handle);
/* backend may provide an ordered list of irgs where code should be generated for */
- irg_list = NEW_ARR_F(ir_graph *, 0);
- backend_irg_list = arch_isa_get_backend_irg_list(isa, irg_list);
+ irg_list = NEW_ARR_F(ir_graph *, 0);
+ backend_irg_list = arch_isa_get_backend_irg_list(isa, &irg_list);
/* we might need 1 birg more for instrumentation constructor */
num_birgs = backend_irg_list ? ARR_LEN(backend_irg_list) : get_irp_n_irgs();
ir_graph *irg = backend_irg_list ? backend_irg_list[i] : get_irp_irg(i);
initialize_birg(&birgs[i], irg, &env);
}
- /* TODO: DEL_ARR_F(irg_list) will break, if list was modified by Backend ?!?! */
- if (backend_irg_list)
- DEL_ARR_F(backend_irg_list);
- else
- DEL_ARR_F(irg_list);
+ DEL_ARR_F(irg_list);
/*
Get the filename for the profiling data.
/**
* Return irp irgs in the desired order.
*/
-static ir_graph **firm_get_irg_list(const void *self, ir_graph **irg_list) {
+static ir_graph **firm_get_irg_list(const void *self, ir_graph ***irg_list) {
return NULL;
}
/**
* Return irp irgs in the desired order.
*/
-static ir_graph **ia32_get_irg_list(const void *self, ir_graph **irg_list) {
+static ir_graph **ia32_get_irg_list(const void *self, ir_graph ***irg_list) {
return NULL;
}
/**
* Return irp irgs in the desired order.
*/
-static ir_graph **mips_get_irg_list(const void *self, ir_graph **irg_list) {
+static ir_graph **mips_get_irg_list(const void *self, ir_graph ***irg_list) {
return NULL;
}
/**
* Return irp irgs in the desired order.
*/
-static ir_graph **ppc32_get_irg_list(const void *self, ir_graph **irg_list) {
+static ir_graph **ppc32_get_irg_list(const void *self, ir_graph ***irg_list) {
return NULL;
}