Mercurial > hg > graal-jvmci-8
comparison src/cpu/x86/vm/assembler_x86.cpp @ 3336:2e038ad0c1d0
7009361: JSR 292 Invalid value on stack on solaris-sparc with -Xcomp
Reviewed-by: kvn, twisti
author | never |
---|---|
date | Mon, 02 May 2011 18:53:37 -0700 |
parents | 732454aaf5cb |
children | f7d55ea6ee56 |
comparison
equal
deleted
inserted
replaced
3335:49d67a090fe2 | 3336:2e038ad0c1d0 |
---|---|
6037 pass_arg1(this, arg_1); | 6037 pass_arg1(this, arg_1); |
6038 pass_arg0(this, arg_0); | 6038 pass_arg0(this, arg_0); |
6039 call_VM_leaf(entry_point, 3); | 6039 call_VM_leaf(entry_point, 3); |
6040 } | 6040 } |
6041 | 6041 |
6042 void MacroAssembler::super_call_VM_leaf(address entry_point, Register arg_0) { | |
6043 pass_arg0(this, arg_0); | |
6044 MacroAssembler::call_VM_leaf_base(entry_point, 1); | |
6045 } | |
6046 | |
6047 void MacroAssembler::super_call_VM_leaf(address entry_point, Register arg_0, Register arg_1) { | |
6048 | |
6049 LP64_ONLY(assert(arg_0 != c_rarg1, "smashed arg")); | |
6050 pass_arg1(this, arg_1); | |
6051 pass_arg0(this, arg_0); | |
6052 MacroAssembler::call_VM_leaf_base(entry_point, 2); | |
6053 } | |
6054 | |
6055 void MacroAssembler::super_call_VM_leaf(address entry_point, Register arg_0, Register arg_1, Register arg_2) { | |
6056 LP64_ONLY(assert(arg_0 != c_rarg2, "smashed arg")); | |
6057 LP64_ONLY(assert(arg_1 != c_rarg2, "smashed arg")); | |
6058 pass_arg2(this, arg_2); | |
6059 LP64_ONLY(assert(arg_0 != c_rarg1, "smashed arg")); | |
6060 pass_arg1(this, arg_1); | |
6061 pass_arg0(this, arg_0); | |
6062 MacroAssembler::call_VM_leaf_base(entry_point, 3); | |
6063 } | |
6064 | |
6065 void MacroAssembler::super_call_VM_leaf(address entry_point, Register arg_0, Register arg_1, Register arg_2, Register arg_3) { | |
6066 LP64_ONLY(assert(arg_0 != c_rarg3, "smashed arg")); | |
6067 LP64_ONLY(assert(arg_1 != c_rarg3, "smashed arg")); | |
6068 LP64_ONLY(assert(arg_2 != c_rarg3, "smashed arg")); | |
6069 pass_arg3(this, arg_3); | |
6070 LP64_ONLY(assert(arg_0 != c_rarg2, "smashed arg")); | |
6071 LP64_ONLY(assert(arg_1 != c_rarg2, "smashed arg")); | |
6072 pass_arg2(this, arg_2); | |
6073 LP64_ONLY(assert(arg_0 != c_rarg1, "smashed arg")); | |
6074 pass_arg1(this, arg_1); | |
6075 pass_arg0(this, arg_0); | |
6076 MacroAssembler::call_VM_leaf_base(entry_point, 4); | |
6077 } | |
6078 | |
6042 void MacroAssembler::check_and_handle_earlyret(Register java_thread) { | 6079 void MacroAssembler::check_and_handle_earlyret(Register java_thread) { |
6043 } | 6080 } |
6044 | 6081 |
6045 void MacroAssembler::check_and_handle_popframe(Register java_thread) { | 6082 void MacroAssembler::check_and_handle_popframe(Register java_thread) { |
6046 } | 6083 } |