Commit 3a457381 authored by yangguo@chromium.org's avatar yangguo@chromium.org

Update test262 expectations concerning 64-bit precision double.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/9540010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10883 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent a8980079
...@@ -70,8 +70,8 @@ S7.8.4_A7.2_T6: FAIL_OK ...@@ -70,8 +70,8 @@ S7.8.4_A7.2_T6: FAIL_OK
# Linux and Mac defaults to extended 80 bit floating point format in the FPU. # Linux and Mac defaults to extended 80 bit floating point format in the FPU.
# We follow the other major JS engines by keeping this default. # We follow the other major JS engines by keeping this default.
S8.5_A2.2: PASS, FAIL if $system == linux, FAIL if $system == macos S8.5_A2.2: PASS if ($system != linux || $arch == x64), FAIL_OK if ($system == linux && $arch != x64)
S8.5_A2.1: PASS, FAIL if $system == linux, FAIL if $system == macos S8.5_A2.1: PASS if ($system != linux || $arch == x64), FAIL_OK if ($system == linux && $arch != x64)
############################ SKIPPED TESTS ############################# ############################ SKIPPED TESTS #############################
......
#!/usr/bin/env python #!/usr/bin/env python
# #
# Copyright 2008 the V8 project authors. All rights reserved. # Copyright 2012 the V8 project authors. All rights reserved.
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are # modification, are permitted provided that the following conditions are
# met: # met:
...@@ -850,6 +850,9 @@ class Operation(Expression): ...@@ -850,6 +850,9 @@ class Operation(Expression):
elif self.op == '==': elif self.op == '==':
inter = self.left.GetOutcomes(env, defs).Intersect(self.right.GetOutcomes(env, defs)) inter = self.left.GetOutcomes(env, defs).Intersect(self.right.GetOutcomes(env, defs))
return not inter.IsEmpty() return not inter.IsEmpty()
elif self.op == '!=':
inter = self.left.GetOutcomes(env, defs).Intersect(self.right.GetOutcomes(env, defs))
return inter.IsEmpty()
else: else:
assert self.op == '&&' assert self.op == '&&'
return self.left.Evaluate(env, defs) and self.right.Evaluate(env, defs) return self.left.Evaluate(env, defs) and self.right.Evaluate(env, defs)
...@@ -932,6 +935,9 @@ class Tokenizer(object): ...@@ -932,6 +935,9 @@ class Tokenizer(object):
elif self.Current(2) == '==': elif self.Current(2) == '==':
self.AddToken('==') self.AddToken('==')
self.Advance(2) self.Advance(2)
elif self.Current(2) == '!=':
self.AddToken('!=')
self.Advance(2)
else: else:
return None return None
return self.tokens return self.tokens
...@@ -984,7 +990,7 @@ def ParseAtomicExpression(scan): ...@@ -984,7 +990,7 @@ def ParseAtomicExpression(scan):
return None return None
BINARIES = ['=='] BINARIES = ['==', '!=']
def ParseOperatorExpression(scan): def ParseOperatorExpression(scan):
left = ParseAtomicExpression(scan) left = ParseAtomicExpression(scan)
if not left: return None if not left: return None
...@@ -1006,7 +1012,7 @@ def ParseConditionalExpression(scan): ...@@ -1006,7 +1012,7 @@ def ParseConditionalExpression(scan):
right = ParseOperatorExpression(scan) right = ParseOperatorExpression(scan)
if not right: if not right:
return None return None
left= Operation(left, 'if', right) left = Operation(left, 'if', right)
return left return left
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment