45 // MethodHandles adapters
46 enum method_handles_platform_dependent_constants {
47 method_handles_adapters_code_size = 5000
48 };
49
50 #define CRC32_COLUMN_SIZE 256
51 #define CRC32_BYFOUR
52 #ifdef CRC32_BYFOUR
53 #define CRC32_TABLES 8
54 #else
55 #define CRC32_TABLES 1
56 #endif
57
58 // Comapct string intrinsics: Translate table for string inflate intrinsic. Used by trot instruction.
59 #define TROT_ALIGNMENT 8 // Required by instruction,
60 // guaranteed by jlong table element type.
61 #define TROT_COLUMN_SIZE (256*sizeof(jchar)/sizeof(jlong))
62
63 class zarch {
64 friend class StubGenerator;
65
66 public:
67 enum { nof_instance_allocators = 10 };
68
69 // allocator lock values
70 enum {
71 unlocked = 0,
72 locked = 1
73 };
74
75 // declare fields for arch-specific entries
76
77 #define DECLARE_ARCH_ENTRY(arch, blob_name, stub_name, field_name, getter_name) \
78 static address STUB_FIELD_NAME(field_name) ;
79
80 #define DECLARE_ARCH_ENTRY_INIT(arch, blob_name, stub_name, field_name, getter_name, init_function) \
81 DECLARE_ARCH_ENTRY(arch, blob_name, stub_name, field_name, getter_name)
82
83 private:
84 STUBGEN_ARCH_ENTRIES_DO(DECLARE_ARCH_ENTRY, DECLARE_ARCH_ENTRY_INIT)
|
45 // MethodHandles adapters
46 enum method_handles_platform_dependent_constants {
47 method_handles_adapters_code_size = 5000
48 };
49
50 #define CRC32_COLUMN_SIZE 256
51 #define CRC32_BYFOUR
52 #ifdef CRC32_BYFOUR
53 #define CRC32_TABLES 8
54 #else
55 #define CRC32_TABLES 1
56 #endif
57
58 // Comapct string intrinsics: Translate table for string inflate intrinsic. Used by trot instruction.
59 #define TROT_ALIGNMENT 8 // Required by instruction,
60 // guaranteed by jlong table element type.
61 #define TROT_COLUMN_SIZE (256*sizeof(jchar)/sizeof(jlong))
62
63 class zarch {
64 friend class StubGenerator;
65 friend class StubRoutines;
66
67 public:
68 enum { nof_instance_allocators = 10 };
69
70 // allocator lock values
71 enum {
72 unlocked = 0,
73 locked = 1
74 };
75
76 // declare fields for arch-specific entries
77
78 #define DECLARE_ARCH_ENTRY(arch, blob_name, stub_name, field_name, getter_name) \
79 static address STUB_FIELD_NAME(field_name) ;
80
81 #define DECLARE_ARCH_ENTRY_INIT(arch, blob_name, stub_name, field_name, getter_name, init_function) \
82 DECLARE_ARCH_ENTRY(arch, blob_name, stub_name, field_name, getter_name)
83
84 private:
85 STUBGEN_ARCH_ENTRIES_DO(DECLARE_ARCH_ENTRY, DECLARE_ARCH_ENTRY_INIT)
|