959 const char* timer_name(int idx); 960 961 public: 962 LinearScanTimers(); 963 964 void begin_method(); // called for each method when register allocation starts 965 void end_method(LinearScan* allocator); // called for each method when register allocation completed 966 void print(double total_time); // called before termination of VM to print global summary 967 968 elapsedTimer* timer(int idx) { return &(_timers[idx]); } 969 }; 970 971 972 #endif // ifndef PRODUCT 973 974 975 // Pick up platform-dependent implementation details 976 #ifdef TARGET_ARCH_x86 977 # include "c1_LinearScan_x86.hpp" 978 #endif 979 #ifdef TARGET_ARCH_sparc 980 # include "c1_LinearScan_sparc.hpp" 981 #endif 982 #ifdef TARGET_ARCH_arm 983 # include "c1_LinearScan_arm.hpp" 984 #endif 985 #ifdef TARGET_ARCH_ppc 986 # include "c1_LinearScan_ppc.hpp" 987 #endif 988 989 990 #endif // SHARE_VM_C1_C1_LINEARSCAN_HPP | 959 const char* timer_name(int idx); 960 961 public: 962 LinearScanTimers(); 963 964 void begin_method(); // called for each method when register allocation starts 965 void end_method(LinearScan* allocator); // called for each method when register allocation completed 966 void print(double total_time); // called before termination of VM to print global summary 967 968 elapsedTimer* timer(int idx) { return &(_timers[idx]); } 969 }; 970 971 972 #endif // ifndef PRODUCT 973 974 975 // Pick up platform-dependent implementation details 976 #ifdef TARGET_ARCH_x86 977 # include "c1_LinearScan_x86.hpp" 978 #endif 979 #ifdef TARGET_ARCH_aarch64 980 # include "c1_LinearScan_aarch64.hpp" 981 #endif 982 #ifdef TARGET_ARCH_sparc 983 # include "c1_LinearScan_sparc.hpp" 984 #endif 985 #ifdef TARGET_ARCH_arm 986 # include "c1_LinearScan_arm.hpp" 987 #endif 988 #ifdef TARGET_ARCH_ppc 989 # include "c1_LinearScan_ppc.hpp" 990 #endif 991 992 993 #endif // SHARE_VM_C1_C1_LINEARSCAN_HPP |