Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(305)

Side by Side Diff: test/mjsunit/asm/float64mul.js

Issue 762493006: [arm] Fix recognition of VNEG. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Fix Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 function Module(stdlib, foreign, heap) { 5 function Module(stdlib, foreign, heap) {
6 "use asm"; 6 "use asm";
7 function f1(i) { 7 function f1(i) {
8 i = +i; 8 i = +i;
9 return +(i * -1); 9 return +(i * -1);
10 } 10 }
11 function f2(i) { 11 function f2(i) {
12 i = +i; 12 i = +i;
13 return +(-1 * i); 13 return +(-1 * i);
14 } 14 }
15 return { f1: f1, f2: f2 }; 15 function f3(i) {
16 i = +i;
17 return +(-i);
18 }
19 return { f1: f1, f2: f2, f3: f3 };
16 } 20 }
17 21
18 var m = Module(this, {}, new ArrayBuffer(64 * 1024)); 22 var m = Module(this, {}, new ArrayBuffer(64 * 1024));
19 23
20 assertEquals(NaN, m.f1(NaN)); 24 assertEquals(NaN, m.f1(NaN));
21 assertEquals(NaN, m.f2(NaN)); 25 assertEquals(NaN, m.f2(NaN));
26 assertEquals(NaN, m.f3(NaN));
22 assertEquals(Infinity, 1 / m.f1(-0)); 27 assertEquals(Infinity, 1 / m.f1(-0));
23 assertEquals(Infinity, 1 / m.f2(-0)); 28 assertEquals(Infinity, 1 / m.f2(-0));
29 assertEquals(Infinity, 1 / m.f3(-0));
24 assertEquals(Infinity, m.f1(-Infinity)); 30 assertEquals(Infinity, m.f1(-Infinity));
25 assertEquals(Infinity, m.f2(-Infinity)); 31 assertEquals(Infinity, m.f2(-Infinity));
32 assertEquals(Infinity, m.f3(-Infinity));
26 assertEquals(-Infinity, 1 / m.f1(0)); 33 assertEquals(-Infinity, 1 / m.f1(0));
27 assertEquals(-Infinity, 1 / m.f2(0)); 34 assertEquals(-Infinity, 1 / m.f2(0));
35 assertEquals(-Infinity, 1 / m.f3(0));
28 assertEquals(-Infinity, m.f1(Infinity)); 36 assertEquals(-Infinity, m.f1(Infinity));
29 assertEquals(-Infinity, m.f2(Infinity)); 37 assertEquals(-Infinity, m.f2(Infinity));
38 assertEquals(-Infinity, m.f3(Infinity));
30 for (var i = -2147483648; i < 2147483648; i += 3999777) { 39 for (var i = -2147483648; i < 2147483648; i += 3999777) {
31 assertEquals(-i, m.f1(i)); 40 assertEquals(-i, m.f1(i));
32 assertEquals(-i, m.f2(i)); 41 assertEquals(-i, m.f2(i));
42 assertEquals(-i, m.f3(i));
33 } 43 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698