Closed Bug 703512 Opened 13 years ago Closed 6 years ago

Float4 arithmetic failures on ARM, possible register allocation issue

Categories

(Tamarin Graveyard :: Baseline JIT (CodegenLIR), defect, P3)

ARM
Linux
defect

Tracking

(Not tracked)

RESOLVED WONTFIX
Q2 12 - Cyril

People

(Reporter: wmaddox, Assigned: wmaddox)

References

Details

The following test case fails.  It is a reduced version of a failure in
test/acceptance/as3/Types/Float4/float4Operations.as, which has many
similar failure.  See also bug 700642, comment 2 and 4.  Note that the
incorrect value appears elsewhere in the computation, indicating that
a clobbered or misallocated register is likely the culprit.

// tr-float/deb32/shell/avmshell -Ojit tr-float/test/acceptance/as3/Types/Float4/fops.abc

class Flt4AnyOps {
    var _val;
    public function Flt4AnyOps(v){ _val = v; };
    public function add(value:float4):float4 { return _val+value; };
}

// This fails
function test1(){
    var obj:Flt4AnyOps = new Flt4AnyOps(float4(3.14f, -3.14f, 3.14f, -3.14f));
    trace(obj.add(float4(31.4f, -31.4f, -0f, 6.28f)));
}

// This works
function test2(){
    var val = float4(3.14f, -3.14f, 3.14f, -3.14f);
    trace(val + float4(31.4f, -31.4f, -0f, 6.28f));
}

// This works
function test3(){
    var val:float4 = float4(3.14f, -3.14f, 3.14f, -3.14f);
    trace(val + float4(31.4f, -31.4f, -0f, 6.28f));
}

// Print four lines, all of which should
// be identical to the first.

trace(float4(34.54f, -34.54f, 3.14f, 3.14f));
test1();
test2();
test3();

wmaddox@tamarin-panda:~/panda$ tr-float/deb32/shell/avmshell -Ojit tr-float/test/acceptance/as3/Types/Float4/fops.abc
34.540000915527344,-34.540000915527344,3.140000104904175,3.140000104904175
34.540000915527344,-34.540000915527344,3.140000104904175,34.540000915527344
34.540000915527344,-34.540000915527344,3.140000104904175,3.140000104904175
34.540000915527344,-34.540000915527344,3.140000104904175,3.140000104904175
Assignee: nobody → wmaddox
Blocks: float/float4
Status: NEW → ASSIGNED
Flags: in-testsuite+
Flags: flashplayer-triage+
Flags: flashplayer-qrb+
Flags: flashplayer-bug-
QA Contact: nanojit → brbaker
Priority: -- → P2
Target Milestone: --- → Q2 12 - Cyril
Priority: P2 → P3
changeset: 7146:2550c3baa3d7
user:      Brent Baker <brbaker@adobe.com>
summary:   Bug 692402, Bug 703512: update the failconfig file for proper bug references

http://hg.mozilla.org/tamarin-redux/rev/2550c3baa3d7
Tamarin is a dead project now. Mass WONTFIX.
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
Tamarin isn't maintained anymore. WONTFIX remaining bugs.
You need to log in before you can comment on or make changes to this bug.