2 jvm_create_class(const char * dir
, char * full_name
);
5 jvm_destroy_class(struct gen_class
* class);
8 jvm_create_proc(struct gen_class
* class);
13 jvm_generate_function_header(gen_proc_t
* p
, char * access
, char * name
, char * signature
);
16 jvm_generate_function_end(gen_proc_t
* p
);
19 jvm_new_label_id(gen_proc_t
* p
);
22 jvm_generate_label(gen_proc_t
* p
, int label_id
);
27 jvm_stack_push(gen_proc_t
* p
, unsigned size
);
30 jvm_stack_pop(gen_proc_t
* p
, unsigned size
);
35 jvm_generate(gen_proc_t
* p
, unsigned get
, unsigned push
, char * format
, ...);
38 jvm_generate_comment(gen_proc_t
* p
, char * format
, ...);
41 jvm_generate_push_int(gen_proc_t
* p
, int64_t i
);
44 jvm_generate_push_int_size(gen_proc_t
* p
, int64_t i
, int size
);
47 jvm_generate_push_float(gen_proc_t
* p
, double f
, int size
);
50 jvm_generate_push_string(gen_proc_t
* p
, char * str
, int char_size
);