26 #define SHARE_VM_JFR_WRITERS_JFRENCODERS_HPP 27 28 #include "memory/allocation.hpp" 29 #include "utilities/debug.hpp" 30 #include "utilities/globalDefinitions.hpp" 31 #ifdef TARGET_ARCH_x86 32 # include "bytes_x86.hpp" 33 #endif 34 #ifdef TARGET_ARCH_sparc 35 # include "bytes_sparc.hpp" 36 #endif 37 #ifdef TARGET_ARCH_zero 38 # include "bytes_zero.hpp" 39 #endif 40 #ifdef TARGET_ARCH_arm 41 # include "bytes_arm.hpp" 42 #endif 43 #ifdef TARGET_ARCH_ppc 44 # include "bytes_ppc.hpp" 45 #endif 46 47 // 48 // The Encoding policy prescribes a template 49 // method taking a first parameter of type T. 50 // This is the value to be encoded. The second 51 // parameter is a memory address - where to write 52 // the encoded value. 53 // The encoder method(s) should return the 54 // number of bytes encoded into that memory address. 55 // 56 // template <typename T> 57 // size_t encoder(T value, u1* dest); 58 // 59 // The caller ensures the destination 60 // address is not null and that T can be fitted 61 // in encoded form. 62 // 63 64 // Encoding policy classes 65 | 26 #define SHARE_VM_JFR_WRITERS_JFRENCODERS_HPP 27 28 #include "memory/allocation.hpp" 29 #include "utilities/debug.hpp" 30 #include "utilities/globalDefinitions.hpp" 31 #ifdef TARGET_ARCH_x86 32 # include "bytes_x86.hpp" 33 #endif 34 #ifdef TARGET_ARCH_sparc 35 # include "bytes_sparc.hpp" 36 #endif 37 #ifdef TARGET_ARCH_zero 38 # include "bytes_zero.hpp" 39 #endif 40 #ifdef TARGET_ARCH_arm 41 # include "bytes_arm.hpp" 42 #endif 43 #ifdef TARGET_ARCH_ppc 44 # include "bytes_ppc.hpp" 45 #endif 46 #ifdef TARGET_ARCH_aarch64 47 # include "bytes_aarch64.hpp" 48 #endif 49 50 // 51 // The Encoding policy prescribes a template 52 // method taking a first parameter of type T. 53 // This is the value to be encoded. The second 54 // parameter is a memory address - where to write 55 // the encoded value. 56 // The encoder method(s) should return the 57 // number of bytes encoded into that memory address. 58 // 59 // template <typename T> 60 // size_t encoder(T value, u1* dest); 61 // 62 // The caller ensures the destination 63 // address is not null and that T can be fitted 64 // in encoded form. 65 // 66 67 // Encoding policy classes 68 |