X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fbackends%2Fjvm%2Fgenerator-jvm-abi.h;h=82b3d35cb75595487d81129d0008d8cdd650d153;hb=d54469555328facc1c3b20e741b0bc3d2061685d;hp=01bfefcde6548b20f8aa0f108b4fdc3038dcb7ea;hpb=55d9ee92b95dd306ac80fb643ed21d3b733395d7;p=dsw-obn.git diff --git a/src/backends/jvm/generator-jvm-abi.h b/src/backends/jvm/generator-jvm-abi.h index 01bfefc..82b3d35 100644 --- a/src/backends/jvm/generator-jvm-abi.h +++ b/src/backends/jvm/generator-jvm-abi.h @@ -1,4 +1,4 @@ -void +void jvm_generate_ldst_prepare(gen_proc_t * p, gen_var_t * v); void @@ -7,23 +7,38 @@ jvm_generate_load(gen_proc_t * p, gen_var_t * src); void jvm_generate_store(gen_proc_t * p, gen_var_t * dst); +gen_var_t * +jvm_create_class_var(struct gen_class * class, enum gen_storage storage, char * name, gen_type_t * t); + +gen_var_t * +jvm_create_function_var(gen_proc_t * p, enum gen_storage storage, char * name, gen_type_t * t); + +gen_var_t * +jvm_create_function_temp_var(gen_proc_t * p, gen_type_t * t); + void -jvm_generate_and_init_global_var(struct gen_class * class, gen_var_t * v, char * name, gen_type_t * t); +jvm_generate_var(gen_var_t * v); void -jvm_generate_and_init_field(struct gen_class * class, gen_var_t * v, char * name, gen_type_t * t); +jvm_generate_var_initialization(gen_proc_t * p, gen_var_t * v); void -jvm_generate_and_init_local_var(gen_proc_t * p, gen_var_t * v, gen_type_t * t); +jvm_generate_procedure_frame(oberon_object_t * proc); void -jvm_generate_and_init_named_local_var(gen_proc_t * p, gen_var_t * v, char * name, gen_type_t * t); +jvm_generate_frame_initialization(gen_proc_t * p); + +char * +jvm_get_procedure_signature(oberon_type_t * proc); + +char * +jvm_get_local_procedure_signature(oberon_object_t * proc); void -jvm_generate_and_init_var_param(gen_proc_t * p, gen_var_t * v, char * name, gen_type_t * t); +jvm_generate_staticlinks(oberon_object_t * proc); void -jvm_generate_variable_initialization(gen_proc_t * p, gen_var_t * v); +jvm_create_static_links(oberon_object_t * proc); void -jvm_generate_param_initialization(gen_proc_t * p, gen_var_t * v); +jvm_generate_push_static_links(gen_proc_t * p, oberon_object_t * proc);