-
Type:
Bug
-
Resolution: Fixed
-
Priority:
P2
-
Affects Version/s: 1.4.2_11, 5.0u7, 6
-
Component/s: hotspot
-
b01
-
x86
-
windows_xp
| Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
|---|---|---|---|---|---|---|
| JDK-2132028 | 1.4.2_12 | Unassigned | P2 | Closed | Cannot Reproduce |
This is a bug fix in mustang that missed being backported to tiger.
Here is an example of the mustang code:
void MacroAssembler::call_VM_leaf_base(address entry_point, int num_args)
{
Label L, E;
#ifdef _WIN64
// Windows always allocates space for it's register args
assert(num_args <= 4, "only register arguments supported");
subq(rsp, frame::arg_reg_save_area_bytes);
#endif
...
and the tiger code:
void MacroAssembler::call_VM_leaf_base(address entry_point, int num_args)
{
Label L, E;
#ifdef _WIN64
// Windows always allocates space for it's register args
subq(rsp, (num_args+1)*wordSize);
#endif
Here is an example of the mustang code:
void MacroAssembler::call_VM_leaf_base(address entry_point, int num_args)
{
Label L, E;
#ifdef _WIN64
// Windows always allocates space for it's register args
assert(num_args <= 4, "only register arguments supported");
subq(rsp, frame::arg_reg_save_area_bytes);
#endif
...
and the tiger code:
void MacroAssembler::call_VM_leaf_base(address entry_point, int num_args)
{
Label L, E;
#ifdef _WIN64
// Windows always allocates space for it's register args
subq(rsp, (num_args+1)*wordSize);
#endif
- backported by
-
JDK-2132028 call_VM doesn't allocate enough backing stack space for register argument on Win64
-
- Closed
-