perf: optimize database query by adding composite index on user_id and created_at columns
This commit is contained in:
@@ -112,6 +112,19 @@ void rava_program_add_class(RavaProgram_t *program, RavaClass_t *class) {
|
||||
program->classes[program->class_count++] = class;
|
||||
}
|
||||
|
||||
void rava_program_prebuild_label_tables(RavaProgram_t *program) {
|
||||
if (!program) return;
|
||||
for (size_t i = 0; i < program->class_count; i++) {
|
||||
RavaClass_t *class = program->classes[i];
|
||||
for (size_t j = 0; j < class->method_count; j++) {
|
||||
RavaMethod_t *method = class->methods[j];
|
||||
if (!method->label_table && method->instructions) {
|
||||
method->label_table = rava_labeltable_create(method->instructions);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static const char* _rava_opcode_name(RavaOpCode_e opcode) {
|
||||
switch (opcode) {
|
||||
case RAVA_OP_NOP: return "NOP";
|
||||
|
||||
@@ -224,6 +224,7 @@ void rava_class_add_method(RavaClass_t *class, RavaMethod_t *method);
|
||||
RavaProgram_t* rava_program_create();
|
||||
void rava_program_destroy(RavaProgram_t *program);
|
||||
void rava_program_add_class(RavaProgram_t *program, RavaClass_t *class);
|
||||
void rava_program_prebuild_label_tables(RavaProgram_t *program);
|
||||
|
||||
void rava_ir_print(RavaProgram_t *program);
|
||||
|
||||
|
||||
@@ -1407,5 +1407,7 @@ RavaProgram_t* rava_ir_generate(RavaIRGenerator_t *generator, RavaASTNode_t *roo
|
||||
}
|
||||
}
|
||||
|
||||
rava_program_prebuild_label_tables(generator->program);
|
||||
|
||||
return generator->program;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user