stage4/generate_c/generate_var_list.cc
changeset 292 a1d9c206409e
parent 279 c0453b7f99df
child 300 092a6fa4926f
equal deleted inserted replaced
279:c0453b7f99df 292:a1d9c206409e
   108     typedef enum {
   108     typedef enum {
   109       none_vtc,
   109       none_vtc,
   110       variable_vtc,
   110       variable_vtc,
   111       external_vtc,
   111       external_vtc,
   112       located_input_vtc,
   112       located_input_vtc,
       
   113       located_memory_vtc,
   113       located_output_vtc,
   114       located_output_vtc,
   114       array_vtc,
   115       array_vtc,
   115       structure_vtc,
   116       structure_vtc,
   116       function_block_vtc
   117       function_block_vtc
   117     } vartypecategory_t;
   118     } vartypecategory_t;
   213         case external_vtc:
   214         case external_vtc:
   214           s4o.print("EXT");
   215           s4o.print("EXT");
   215           break;
   216           break;
   216         case located_input_vtc:
   217         case located_input_vtc:
   217           s4o.print("IN");
   218           s4o.print("IN");
       
   219           break;
       
   220         case located_memory_vtc:
       
   221           s4o.print("MEM");
   218           break;
   222           break;
   219         case located_output_vtc:
   223         case located_output_vtc:
   220           s4o.print("OUT");
   224           s4o.print("OUT");
   221           break;
   225           break;
   222         case array_vtc:
   226         case array_vtc:
   482     void *visit(global_var_spec_c *symbol) {
   486     void *visit(global_var_spec_c *symbol) {
   483       search_location_type_c search_location_type;
   487       search_location_type_c search_location_type;
   484 	  locationtype_t location_type = search_location_type.get_location_type(symbol->location);
   488 	  locationtype_t location_type = search_location_type.get_location_type(symbol->location);
   485 	  if (location_type == input_lt)
   489 	  if (location_type == input_lt)
   486         this->current_var_type_category = located_input_vtc;
   490         this->current_var_type_category = located_input_vtc;
       
   491       else if (location_type == memory_lt)
       
   492         this->current_var_type_category = located_memory_vtc;
   487       else if (location_type == output_lt)
   493       else if (location_type == output_lt)
   488         this->current_var_type_category = located_output_vtc;
   494         this->current_var_type_category = located_output_vtc;
   489 
   495 
   490       if (symbol->global_var_name != NULL)
   496       if (symbol->global_var_name != NULL)
   491         declare_variable(symbol->global_var_name);
   497         declare_variable(symbol->global_var_name);