70 public:
71 // creation
72 StubAssembler(CodeBuffer* code, const char * name, int stub_id);
73 void set_info(const char* name, bool must_gc_arguments);
74
75 void set_frame_size(int size);
76 void set_num_rt_args(int args);
77
78 // accessors
79 const char* name() const { return _name; }
80 bool must_gc_arguments() const { return _must_gc_arguments; }
81 int frame_size() const { return _frame_size; }
82 int num_rt_args() const { return _num_rt_args; }
83 int stub_id() const { return _stub_id; }
84
85 // runtime calls (return offset of call to be used by GC map)
86 int call_RT(Register oop_result1, Register metadata_result, address entry, int args_size = 0);
87 int call_RT(Register oop_result1, Register metadata_result, address entry, Register arg1);
88 int call_RT(Register oop_result1, Register metadata_result, address entry, Register arg1, Register arg2);
89 int call_RT(Register oop_result1, Register metadata_result, address entry, Register arg1, Register arg2, Register arg3);
90 };
91
92 #endif // SHARE_VM_C1_C1_MACROASSEMBLER_HPP
|
70 public:
71 // creation
72 StubAssembler(CodeBuffer* code, const char * name, int stub_id);
73 void set_info(const char* name, bool must_gc_arguments);
74
75 void set_frame_size(int size);
76 void set_num_rt_args(int args);
77
78 // accessors
79 const char* name() const { return _name; }
80 bool must_gc_arguments() const { return _must_gc_arguments; }
81 int frame_size() const { return _frame_size; }
82 int num_rt_args() const { return _num_rt_args; }
83 int stub_id() const { return _stub_id; }
84
85 // runtime calls (return offset of call to be used by GC map)
86 int call_RT(Register oop_result1, Register metadata_result, address entry, int args_size = 0);
87 int call_RT(Register oop_result1, Register metadata_result, address entry, Register arg1);
88 int call_RT(Register oop_result1, Register metadata_result, address entry, Register arg1, Register arg2);
89 int call_RT(Register oop_result1, Register metadata_result, address entry, Register arg1, Register arg2, Register arg3);
90
91 void prologue(const char* name, bool must_gc_arguments);
92 void epilogue();
93 };
94
95 #endif // SHARE_VM_C1_C1_MACROASSEMBLER_HPP
|