comparison src/share/vm/adlc/main.cpp @ 14909:4ca6dc0799b6

Backout jdk9 merge
author Gilles Duboscq <duboscq@ssw.jku.at>
date Tue, 01 Apr 2014 13:57:07 +0200
parents abec000618bf
children 52b4284cb496
comparison
equal deleted inserted replaced
14908:8db6e76cb658 14909:4ca6dc0799b6
27 27
28 //------------------------------Prototypes------------------------------------- 28 //------------------------------Prototypes-------------------------------------
29 static void usage(ArchDesc& AD); // Print usage message and exit 29 static void usage(ArchDesc& AD); // Print usage message and exit
30 static char *strip_ext(char *fname); // Strip off name extension 30 static char *strip_ext(char *fname); // Strip off name extension
31 static char *base_plus_suffix(const char* base, const char *suffix);// New concatenated string 31 static char *base_plus_suffix(const char* base, const char *suffix);// New concatenated string
32 static char *prefix_plus_base_plus_suffix(const char* prefix, const char* base, const char *suffix);// New concatenated string
32 static int get_legal_text(FileBuff &fbuf, char **legal_text); // Get pointer to legal text 33 static int get_legal_text(FileBuff &fbuf, char **legal_text); // Get pointer to legal text
33 34
34 ArchDesc* globalAD = NULL; // global reference to Architecture Description object 35 ArchDesc* globalAD = NULL; // global reference to Architecture Description object
35 36
36 const char* get_basename(const char* filename) { 37 const char* get_basename(const char* filename) {
240 #endif 241 #endif
241 #ifdef TARGET_ARCH_arm 242 #ifdef TARGET_ARCH_arm
242 AD.addInclude(AD._CPP_file, "nativeInst_arm.hpp"); 243 AD.addInclude(AD._CPP_file, "nativeInst_arm.hpp");
243 AD.addInclude(AD._CPP_file, "vmreg_arm.inline.hpp"); 244 AD.addInclude(AD._CPP_file, "vmreg_arm.inline.hpp");
244 #endif 245 #endif
245 #ifdef TARGET_ARCH_ppc
246 AD.addInclude(AD._CPP_file, "assembler_ppc.inline.hpp");
247 AD.addInclude(AD._CPP_file, "nativeInst_ppc.hpp");
248 AD.addInclude(AD._CPP_file, "vmreg_ppc.inline.hpp");
249 #endif
250 AD.addInclude(AD._HPP_file, "memory/allocation.hpp"); 246 AD.addInclude(AD._HPP_file, "memory/allocation.hpp");
251 AD.addInclude(AD._HPP_file, "opto/machnode.hpp"); 247 AD.addInclude(AD._HPP_file, "opto/machnode.hpp");
252 AD.addInclude(AD._HPP_file, "opto/node.hpp"); 248 AD.addInclude(AD._HPP_file, "opto/node.hpp");
253 AD.addInclude(AD._HPP_file, "opto/regalloc.hpp"); 249 AD.addInclude(AD._HPP_file, "opto/regalloc.hpp");
254 AD.addInclude(AD._HPP_file, "opto/subnode.hpp"); 250 AD.addInclude(AD._HPP_file, "opto/subnode.hpp");
269 AD.addInclude(AD._CPP_PEEPHOLE_file, "adfiles", get_basename(AD._HPP_file._name)); 265 AD.addInclude(AD._CPP_PEEPHOLE_file, "adfiles", get_basename(AD._HPP_file._name));
270 AD.addInclude(AD._CPP_PIPELINE_file, "precompiled.hpp"); 266 AD.addInclude(AD._CPP_PIPELINE_file, "precompiled.hpp");
271 AD.addInclude(AD._CPP_PIPELINE_file, "adfiles", get_basename(AD._HPP_file._name)); 267 AD.addInclude(AD._CPP_PIPELINE_file, "adfiles", get_basename(AD._HPP_file._name));
272 AD.addInclude(AD._DFA_file, "precompiled.hpp"); 268 AD.addInclude(AD._DFA_file, "precompiled.hpp");
273 AD.addInclude(AD._DFA_file, "adfiles", get_basename(AD._HPP_file._name)); 269 AD.addInclude(AD._DFA_file, "adfiles", get_basename(AD._HPP_file._name));
274 AD.addInclude(AD._DFA_file, "opto/cfgnode.hpp"); // Use PROB_MAX in predicate.
275 AD.addInclude(AD._DFA_file, "opto/matcher.hpp"); 270 AD.addInclude(AD._DFA_file, "opto/matcher.hpp");
276 AD.addInclude(AD._DFA_file, "opto/opcodes.hpp"); 271 AD.addInclude(AD._DFA_file, "opto/opcodes.hpp");
277 // Make sure each .cpp file starts with include lines: 272 // Make sure each .cpp file starts with include lines:
278 // files declaring and defining generators for Mach* Objects (hpp,cpp) 273 // files declaring and defining generators for Mach* Objects (hpp,cpp)
279 // Generate the result files: 274 // Generate the result files:
303 AD.buildMachNodeGenerator(AD._CPP_GEN_file._fp);// .cpp 298 AD.buildMachNodeGenerator(AD._CPP_GEN_file._fp);// .cpp
304 // define methods for machine dependent instruction matching 299 // define methods for machine dependent instruction matching
305 AD.buildInstructMatchCheck(AD._CPP_file._fp); // .cpp 300 AD.buildInstructMatchCheck(AD._CPP_file._fp); // .cpp
306 // define methods for machine dependent frame management 301 // define methods for machine dependent frame management
307 AD.buildFrameMethods(AD._CPP_file._fp); // .cpp 302 AD.buildFrameMethods(AD._CPP_file._fp); // .cpp
308 AD.generate_needs_clone_jvms(AD._CPP_file._fp);
309 303
310 // do this last: 304 // do this last:
311 AD.addPreprocessorChecks(AD._CPP_file._fp); // .cpp 305 AD.addPreprocessorChecks(AD._CPP_file._fp); // .cpp
312 AD.addPreprocessorChecks(AD._CPP_CLONE_file._fp); // .cpp 306 AD.addPreprocessorChecks(AD._CPP_CLONE_file._fp); // .cpp
313 AD.addPreprocessorChecks(AD._CPP_EXPAND_file._fp); // .cpp 307 AD.addPreprocessorChecks(AD._CPP_EXPAND_file._fp); // .cpp