31 // definition. See stubRoutines.hpp for a description on how to
32 // extend it.
33
34 static bool returns_to_call_stub(address return_pc) {
35 return return_pc == _call_stub_return_address;
36 }
37
38 // emit enum used to size per-blob code buffers
39
40 #define DEFINE_BLOB_SIZE(blob_name, size) \
41 _ ## blob_name ## _code_size = size,
42
43 enum platform_dependent_constants {
44 STUBGEN_ARCH_BLOBS_DO(DEFINE_BLOB_SIZE)
45 };
46
47 #undef DEFINE_BLOB_SIZE
48
49 class riscv {
50 friend class StubGenerator;
51 #if INCLUDE_JVMCI
52 friend class JVMCIVMStructs;
53 #endif
54
55 // declare fields for arch-specific entries
56
57 #define DECLARE_ARCH_ENTRY(arch, blob_name, stub_name, field_name, getter_name) \
58 static address STUB_FIELD_NAME(field_name) ;
59
60 #define DECLARE_ARCH_ENTRY_INIT(arch, blob_name, stub_name, field_name, getter_name, init_function) \
61 DECLARE_ARCH_ENTRY(arch, blob_name, stub_name, field_name, getter_name)
62
63 private:
64 STUBGEN_ARCH_ENTRIES_DO(DECLARE_ARCH_ENTRY, DECLARE_ARCH_ENTRY_INIT)
65
66 #undef DECLARE_ARCH_ENTRY_INIT
67 #undef DECLARE_ARCH_ENTRY
68
69 static bool _completed;
70
|
31 // definition. See stubRoutines.hpp for a description on how to
32 // extend it.
33
34 static bool returns_to_call_stub(address return_pc) {
35 return return_pc == _call_stub_return_address;
36 }
37
38 // emit enum used to size per-blob code buffers
39
40 #define DEFINE_BLOB_SIZE(blob_name, size) \
41 _ ## blob_name ## _code_size = size,
42
43 enum platform_dependent_constants {
44 STUBGEN_ARCH_BLOBS_DO(DEFINE_BLOB_SIZE)
45 };
46
47 #undef DEFINE_BLOB_SIZE
48
49 class riscv {
50 friend class StubGenerator;
51 friend class StubRoutines;
52 #if INCLUDE_JVMCI
53 friend class JVMCIVMStructs;
54 #endif
55
56 // declare fields for arch-specific entries
57
58 #define DECLARE_ARCH_ENTRY(arch, blob_name, stub_name, field_name, getter_name) \
59 static address STUB_FIELD_NAME(field_name) ;
60
61 #define DECLARE_ARCH_ENTRY_INIT(arch, blob_name, stub_name, field_name, getter_name, init_function) \
62 DECLARE_ARCH_ENTRY(arch, blob_name, stub_name, field_name, getter_name)
63
64 private:
65 STUBGEN_ARCH_ENTRIES_DO(DECLARE_ARCH_ENTRY, DECLARE_ARCH_ENTRY_INIT)
66
67 #undef DECLARE_ARCH_ENTRY_INIT
68 #undef DECLARE_ARCH_ENTRY
69
70 static bool _completed;
71
|