X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fbackends%2Fjvm%2Fgenerator-jvm.h;h=3095a49070d204df2acb0fb2fa7a89ddfc9abc2a;hb=51a1ab2543ec5c221d4a3a9ab89968ae7dd39981;hp=d5abe38fe3fa39a99a0ce38bdd363ea7d3f91bae;hpb=f89bbec89e4dd5c7cd15954f0c02370fb9127518;p=dsw-obn.git diff --git a/src/backends/jvm/generator-jvm.h b/src/backends/jvm/generator-jvm.h index d5abe38..3095a49 100644 --- a/src/backends/jvm/generator-jvm.h +++ b/src/backends/jvm/generator-jvm.h @@ -19,11 +19,19 @@ struct gen_stack struct gen_class { + char * full_name; FILE * fp; gen_proc_t * p; + struct gen_class * base; }; - +enum gen_storage +{ + JVM_STORAGE_UNKNOWN, + JVM_STORAGE_REGISTER, + JVM_STORAGE_STATIC, + JVM_STORAGE_FIELD +}; struct gen_proc_t @@ -42,12 +50,10 @@ struct gen_type_t struct gen_var_t { + enum gen_storage storage; int reg; -}; - -struct gen_block_t -{ - + char * full_name; + char * desc; }; struct gen_context_t @@ -60,3 +66,8 @@ struct gen_module_t struct gen_class * class; int rec_id; }; + +struct gen_label_t +{ + int id; +};