src/cpu/zero/vm/sharedRuntime_zero.cpp

Print this page
rev 5188 : 8024344: PPC64 (part 112): C argument in register AND stack slot.
Summary: On PPC, the first 13 floating point arguments to C calls are passed in floating point registers. Also, all but the first 8 arguments are passed on the stack. So there can be floating point arguments that are passed on the stack and in a register. We duplicate the regs datastructure in c_calling_convention() to represent this.


 118 static DeoptimizationBlob* generate_empty_deopt_blob() {
 119   return CAST_FROM_FN_PTR(DeoptimizationBlob*,zero_stub);
 120 }
 121 
 122 
 123 void SharedRuntime::generate_deopt_blob() {
 124   _deopt_blob = generate_empty_deopt_blob();
 125 }
 126 
 127 SafepointBlob* SharedRuntime::generate_handler_blob(address call_ptr, int poll_type) {
 128   return generate_empty_safepoint_blob();
 129 }
 130 
 131 RuntimeStub* SharedRuntime::generate_resolve_blob(address destination, const char* name) {
 132   return generate_empty_runtime_stub("resolve_blob");
 133 }
 134 
 135 
 136 int SharedRuntime::c_calling_convention(const BasicType *sig_bt,
 137                                          VMRegPair *regs,

 138                                          int total_args_passed) {
 139   ShouldNotCallThis();
 140   return 0;
 141 }


 118 static DeoptimizationBlob* generate_empty_deopt_blob() {
 119   return CAST_FROM_FN_PTR(DeoptimizationBlob*,zero_stub);
 120 }
 121 
 122 
 123 void SharedRuntime::generate_deopt_blob() {
 124   _deopt_blob = generate_empty_deopt_blob();
 125 }
 126 
 127 SafepointBlob* SharedRuntime::generate_handler_blob(address call_ptr, int poll_type) {
 128   return generate_empty_safepoint_blob();
 129 }
 130 
 131 RuntimeStub* SharedRuntime::generate_resolve_blob(address destination, const char* name) {
 132   return generate_empty_runtime_stub("resolve_blob");
 133 }
 134 
 135 
 136 int SharedRuntime::c_calling_convention(const BasicType *sig_bt,
 137                                          VMRegPair *regs,
 138                                          VMRegPair *regs2,
 139                                          int total_args_passed) {
 140   ShouldNotCallThis();
 141   return 0;
 142 }