Closed Bug 469616 Opened 16 years ago Closed 16 years ago

tail call optimization will cause several testcase failed on sparc.

Categories

(Tamarin Graveyard :: Virtual Machine, defect)

Sun
Solaris
defect
Not set
normal

Tracking

(Not tracked)

VERIFIED WORKSFORME

People

(Reporter: leon.sha, Assigned: leon.sha)

References

Details

Attachments

(1 obsolete file)

ecma3/Array/splice1.abc : exhaustive splice w/no optional args 1 = false FAILED! expected: true ecma3/Array/splice2.abc : exhaustive splice w/2 optional args 1 = false FAILED! expected: true The problem is caused by the tail call optimization for String::concatStrings. After the optimization the arg rightStr is not on the stack. So there is a chance that rightStr is released while there are still other functions using its data. I believe this is a all platform bug.
Attached patch Patch (obsolete) — Splinter Review
I believe this is a all platform bug. So I removed the #ifdef part for win 64. Also I tried it on try server, everything looks OK. http://tamarin-builds.mozilla.org/sandbox/builders/windows64/builds/5 The thing I do is to put rightStr on stack and break the tail optimization. Also I need some input of the comments for this. Another solution would be addref for rightStr, but I don't know where to deref it.
Attachment #352995 - Flags: review?(stejohns)
Leon, we're concerned there's a more general problem here (ie, the use of interior pointers might bite us elsewhere as well)... I've added other folks to the cc list, and while your patch looks OK as-is I'm going to hold off review+ for now since a more sweeping fix might be called for.
Ok, Thanks. If this general problem fixed, I'll close this bug.
Blocks: 469836
Tommy says it's a GC issue that is also biting hard on https://bugzilla.mozilla.org/show_bug.cgi?id=465506. Probably this bug is a dup of that.
Depends on: 465506
This bug is not reproduced any more. I am not sure if it is a duplicate bug of 465506. So just mark it as "works for me".
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → WORKSFORME
Attachment #352995 - Attachment is obsolete: true
Attachment #352995 - Flags: review?(stejohns)
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: