289 AD.build_pipeline_enums(AD._HPP_file._fp); // .hpp
290 // output definition of class "State"
291 AD.defineStateClass(AD._HPP_file._fp); // .hpp
292 // file declaring the Mach* classes derived from MachOper and MachNode
293 AD.declareClasses(AD._HPP_file._fp);
294 // declare and define maps: in the .hpp and .cpp files respectively
295 AD.addSourceBlocks(AD._CPP_file._fp); // .cpp
296 AD.addHeaderBlocks(AD._HPP_file._fp); // .hpp
297 AD.buildReduceMaps(AD._HPP_file._fp, AD._CPP_file._fp);
298 AD.buildMustCloneMap(AD._HPP_file._fp, AD._CPP_file._fp);
299 // build CISC_spilling oracle and MachNode::cisc_spill() methods
300 AD.build_cisc_spill_instructions(AD._HPP_file._fp, AD._CPP_file._fp);
301 // define methods for machine dependent State, MachOper, and MachNode classes
302 AD.defineClasses(AD._CPP_file._fp);
303 AD.buildMachOperGenerator(AD._CPP_GEN_file._fp);// .cpp
304 AD.buildMachNodeGenerator(AD._CPP_GEN_file._fp);// .cpp
305 // define methods for machine dependent instruction matching
306 AD.buildInstructMatchCheck(AD._CPP_file._fp); // .cpp
307 // define methods for machine dependent frame management
308 AD.buildFrameMethods(AD._CPP_file._fp); // .cpp
309
310 // do this last:
311 AD.addPreprocessorChecks(AD._CPP_file._fp); // .cpp
312 AD.addPreprocessorChecks(AD._CPP_CLONE_file._fp); // .cpp
313 AD.addPreprocessorChecks(AD._CPP_EXPAND_file._fp); // .cpp
314 AD.addPreprocessorChecks(AD._CPP_FORMAT_file._fp); // .cpp
315 AD.addPreprocessorChecks(AD._CPP_GEN_file._fp); // .cpp
316 AD.addPreprocessorChecks(AD._CPP_MISC_file._fp); // .cpp
317 AD.addPreprocessorChecks(AD._CPP_PEEPHOLE_file._fp); // .cpp
318 AD.addPreprocessorChecks(AD._CPP_PIPELINE_file._fp); // .cpp
319
320 // define the finite automata that selects lowest cost production
321 AD.buildDFA(AD._DFA_file._fp);
322 // Add include guards for all .hpp files
323 AD.addIncludeGuardEnd(AD._HPP_file, "GENERATED_ADFILES_AD_HPP"); // .hpp
324 AD.addIncludeGuardEnd(AD._VM_file, "GENERATED_ADFILES_ADGLOBALS_HPP"); // .hpp
325
326 AD.close_files(0); // Close all input/output files
327
328 // Final printout and statistics
|
289 AD.build_pipeline_enums(AD._HPP_file._fp); // .hpp
290 // output definition of class "State"
291 AD.defineStateClass(AD._HPP_file._fp); // .hpp
292 // file declaring the Mach* classes derived from MachOper and MachNode
293 AD.declareClasses(AD._HPP_file._fp);
294 // declare and define maps: in the .hpp and .cpp files respectively
295 AD.addSourceBlocks(AD._CPP_file._fp); // .cpp
296 AD.addHeaderBlocks(AD._HPP_file._fp); // .hpp
297 AD.buildReduceMaps(AD._HPP_file._fp, AD._CPP_file._fp);
298 AD.buildMustCloneMap(AD._HPP_file._fp, AD._CPP_file._fp);
299 // build CISC_spilling oracle and MachNode::cisc_spill() methods
300 AD.build_cisc_spill_instructions(AD._HPP_file._fp, AD._CPP_file._fp);
301 // define methods for machine dependent State, MachOper, and MachNode classes
302 AD.defineClasses(AD._CPP_file._fp);
303 AD.buildMachOperGenerator(AD._CPP_GEN_file._fp);// .cpp
304 AD.buildMachNodeGenerator(AD._CPP_GEN_file._fp);// .cpp
305 // define methods for machine dependent instruction matching
306 AD.buildInstructMatchCheck(AD._CPP_file._fp); // .cpp
307 // define methods for machine dependent frame management
308 AD.buildFrameMethods(AD._CPP_file._fp); // .cpp
309 AD.generate_needs_clone_jvms(AD._CPP_file._fp);
310
311 // do this last:
312 AD.addPreprocessorChecks(AD._CPP_file._fp); // .cpp
313 AD.addPreprocessorChecks(AD._CPP_CLONE_file._fp); // .cpp
314 AD.addPreprocessorChecks(AD._CPP_EXPAND_file._fp); // .cpp
315 AD.addPreprocessorChecks(AD._CPP_FORMAT_file._fp); // .cpp
316 AD.addPreprocessorChecks(AD._CPP_GEN_file._fp); // .cpp
317 AD.addPreprocessorChecks(AD._CPP_MISC_file._fp); // .cpp
318 AD.addPreprocessorChecks(AD._CPP_PEEPHOLE_file._fp); // .cpp
319 AD.addPreprocessorChecks(AD._CPP_PIPELINE_file._fp); // .cpp
320
321 // define the finite automata that selects lowest cost production
322 AD.buildDFA(AD._DFA_file._fp);
323 // Add include guards for all .hpp files
324 AD.addIncludeGuardEnd(AD._HPP_file, "GENERATED_ADFILES_AD_HPP"); // .hpp
325 AD.addIncludeGuardEnd(AD._VM_file, "GENERATED_ADFILES_ADGLOBALS_HPP"); // .hpp
326
327 AD.close_files(0); // Close all input/output files
328
329 // Final printout and statistics
|