1e7310d48f
Instead of using RawObject* as keys, use Object*. Using handles eliminates any assumption about the underlying GC implementation (e.g. requiring that old objects don't move). Remove special handling of null_object by making HashMap more generic and allowing the trait to specify the value used to indicate an empty element. The goal is to use one unified, efficient implementation of the constant pool on all architectures that require one (x64, arm64, mips). R=vegorov@google.com, zra@google.com Review URL: https://codereview.chromium.org//848703002 git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42901 260f80e4-7a28-3924-810f-c04153c831b5
233 lines
11 KiB
Plaintext
233 lines
11 KiB
Plaintext
# Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
|
||
# for details. All rights reserved. Use of this source code is governed by a
|
||
# BSD-style license that can be found in the LICENSE file.
|
||
|
||
[ $compiler == dart2dart]
|
||
bool_from_environment2_test: Skip
|
||
bool_from_environment_default_value_test: Skip
|
||
bool_from_environment_test: Skip
|
||
from_environment_const_type_test: Skip
|
||
from_environment_const_type_undefined_test: Skip
|
||
int_from_environment2_test: Skip
|
||
int_from_environment3_test: Skip
|
||
int_from_environment_default_value_test: Skip
|
||
int_from_environment_test: Skip
|
||
string_from_environment2_test: Skip
|
||
string_from_environment3_test: Skip
|
||
string_from_environment_default_value: Skip
|
||
string_from_environment_test: Skip
|
||
|
||
[ $compiler == dart2dart && $builder_tag == new_backend ]
|
||
regexp/pcre_test: Crash # Issue 19953
|
||
|
||
[ $compiler == none && ($runtime == drt || $runtime == dartium || $runtime == ContentShellOnAndroid) ]
|
||
bool_from_environment2_test: Skip
|
||
bool_from_environment_default_value_test: Skip
|
||
bool_from_environment_test: Skip
|
||
from_environment_const_type_test: Skip
|
||
from_environment_const_type_undefined_test: Skip
|
||
int_from_environment2_test: Skip
|
||
int_from_environment3_test: Skip
|
||
int_from_environment_default_value_test: Skip
|
||
int_from_environment_test: Skip
|
||
string_from_environment2_test: Skip
|
||
string_from_environment3_test: Skip
|
||
string_from_environment_default_value: Skip
|
||
string_from_environment_test: Skip
|
||
|
||
[ $compiler == none ]
|
||
unicode_test: Fail # Bug 6706
|
||
compare_to2_test: Fail # Bug 4018
|
||
|
||
symbol_test/01: Fail, Pass # bug 11669
|
||
|
||
# #void should be a valid symbol.
|
||
[ $compiler == none || $compiler == dart2js || $compiler == dart2dart ]
|
||
symbol_reserved_word_test/02: CompileTimeError # bug 20191
|
||
symbol_reserved_word_test/05: CompileTimeError # bug 20191
|
||
|
||
[ $compiler == none && ($runtime == drt || $runtime == dartium || $runtime == ContentShellOnAndroid) ]
|
||
symbol_reserved_word_test/02: RuntimeError # bug 20191 / dartium/drt cannot detect CompileTimeErrors
|
||
symbol_reserved_word_test/05: RuntimeError # bug 20191 / dartium/drt cannot detect CompileTimeErrors
|
||
|
||
# new Symbol('void') should be allowed.
|
||
[ $compiler == dart2js ]
|
||
symbol_reserved_word_test/03: RuntimeError # bug 19972
|
||
int_parse_radix_test/01: Pass, Fail # JS implementations disagree on U+0085 being whitespace.
|
||
int_parse_radix_test/02: Fail # No bigints.
|
||
double_parse_test/01: Pass, Fail # JS implementations disagree on U+0085 being whitespace.
|
||
integer_to_radix_string_test: RuntimeError # issue 22045
|
||
|
||
# With the exception of 'void', const Symbol() should not accept reserved
|
||
# words.
|
||
[ $compiler == none || $compiler == dart2js || $compiler == dart2dart]
|
||
symbol_reserved_word_test/04: MissingCompileTimeError # bug 11669, 19972
|
||
symbol_reserved_word_test/07: MissingCompileTimeError # bug 11669, 19972
|
||
symbol_reserved_word_test/10: MissingCompileTimeError # bug 11669, 19972
|
||
|
||
[ $compiler == none && ($runtime == drt || $runtime == dartium || $runtime == ContentShellOnAndroid) ]
|
||
symbol_reserved_word_test/04: Fail # bug 11669, 19972 / dartium/drt cannot detect CompileTimeErrors
|
||
symbol_reserved_word_test/07: Fail # bug 11669, 19972 / dartium/drt cannot detect CompileTimeErrors
|
||
symbol_reserved_word_test/10: Fail # bug 11669, 19972 / dartium/drt cannot detect CompileTimeErrors
|
||
|
||
# With the exception of 'void', new Symbol() should not accept reserved words.
|
||
[ $compiler == none || $compiler == dart2dart ]
|
||
symbol_reserved_word_test/06: RuntimeError # bug 11669
|
||
symbol_reserved_word_test/09: RuntimeError # bug 11669
|
||
symbol_reserved_word_test/12: RuntimeError # bug 11669
|
||
|
||
[ $compiler == none && $runtime != dartium && $runtime != drt && $runtime != ContentShellOnAndroid ]
|
||
symbol_test/02: MissingCompileTimeError # bug 11669
|
||
symbol_test/03: MissingCompileTimeError # bug 11669
|
||
|
||
[ $compiler == none || $compiler == dart2dart ]
|
||
symbol_test/none: Fail # bug 11669
|
||
symbol_operator_test/03: Fail # bug 11669
|
||
string_case_test/01: Fail # Bug 18061
|
||
|
||
iterable_return_type_test/01: RuntimeError # Issue 13646
|
||
iterable_return_type_test/02: RuntimeError # Issue 13646
|
||
|
||
[ $compiler == none && ($runtime == drt || $runtime == dartium || $runtime == ContentShellOnAndroid) ]
|
||
main_test: Fail # Dartium needs to check for both main() and main(args).
|
||
|
||
[ $compiler == none && $runtime == ContentShellOnAndroid ]
|
||
core_runtime_types_test: Pass, Fail # Issue 20525
|
||
|
||
[ $runtime == ff || $runtime == jsshell ]
|
||
unicode_test: Fail
|
||
# Firefox takes advantage of the ECMAScript number parsing cop-out clause
|
||
# (presumably added to allow Mozilla's existing behavior)
|
||
# and only looks at the first 20 significant digits.
|
||
# The Dart VM and the other ECMAScript implementations follow the correct
|
||
# IEEE-754 rounding algorithm.
|
||
double_parse_test: Fail, OK
|
||
|
||
[ $runtime == jsshell || $runtime == safari || $runtime == safarimobilesim ]
|
||
double_round3_test: Fail, OK # Runtime rounds 0.49999999999999994 to 1.
|
||
double_round_to_double2_test: Fail, OK # Runtime rounds 0.49999999999999994 to 1.
|
||
|
||
[ $runtime == ff ]
|
||
double_round3_test: Pass, Fail, OK # Fails on ff 34, passes on ff 35. Runtime rounds 0.49999999999999994 to 1.
|
||
double_round_to_double2_test: Pass, Fail, OK # Fails on ff 34, passes on ff 35. Runtime rounds 0.49999999999999994 to 1.
|
||
|
||
[ $runtime == opera ]
|
||
core_runtime_types_test: Fail
|
||
null_nosuchmethod_test: Fail # Issue: 7413
|
||
unicode_test: Fail # Issue 14694
|
||
|
||
[ $compiler == dart2js ]
|
||
growable_list_test: RuntimeError # Fails to detect concurrent modification in addAll.
|
||
error_stack_trace1_test: RuntimeError # Issue 12399
|
||
hash_set_test/01: RuntimeError # Issue 11551
|
||
integer_to_string_test/01: RuntimeError # Issue 1533
|
||
iterable_return_type_test/01: RuntimeError # Issue 20085
|
||
iterable_return_type_test/02: RuntimeError # Dart2js does not support Uint64*.
|
||
|
||
big_integer_*: Skip # VM specific test.
|
||
bit_twiddling_bigint_test: RuntimeError # Requires bigint support.
|
||
compare_to2_test: RuntimeError, OK # Requires bigint support.
|
||
string_base_vm_test: RuntimeError, OK # VM specific test.
|
||
nan_infinity_test/01: Fail # Issue 11551
|
||
regexp/pcre_test: Pass, Slow # Issue 21593
|
||
regress_r21715_test: RuntimeError # Requires bigint support.
|
||
|
||
[ $compiler == dart2js && $runtime == none ]
|
||
*: Fail, Pass # TODO(ahe): Triage these tests.
|
||
|
||
[ $compiler == dart2js && $runtime == chromeOnAndroid ]
|
||
list_as_map_test: Pass, Slow # TODO(kasperl): Please triage.
|
||
|
||
[ $compiler == dart2js && ($runtime == firefox || $runtime == safari || $runtime == chrome || $runtime == drt) ]
|
||
|
||
[ $compiler == dart2js && ($runtime == safari || $runtime == safarimobilesim) ]
|
||
string_split_test: RuntimeError # Issue 21431
|
||
|
||
[ $compiler == dart2js && (($runtime == safari && $builder_tag == mac10_7) || $runtime == safarimobilesim) ]
|
||
list_test/01: Fail # Safari bug: Array(-2) seen as dead code.
|
||
string_trimlr_test/none: Fail
|
||
|
||
[ $compiler == dart2js && $runtime == ie10 ]
|
||
string_case_test/01: Fail, OK # Bug in IE.
|
||
string_case_test/02: Fail, OK # Bug in IE.
|
||
|
||
[ $compiler == dart2js && ($runtime == ff || $runtime == jsshell) ]
|
||
string_case_test/01: Fail, OK # Bug in Firefox.
|
||
|
||
[ $compiler == dart2js && $runtime == dartium ]
|
||
string_case_test/02: Fail, OK # Bug in dartium version of V8.
|
||
string_case_test/03: Fail, OK # Bug in dartium version of V8.
|
||
|
||
[ $compiler == dart2dart ]
|
||
compare_to2_test: Fail # inherited from VM
|
||
unicode_test: Fail # inherited from VM
|
||
|
||
[ $compiler == dart2dart && $minified ]
|
||
error_stack_trace1_test: Fail # Fails in minified mode, test depends on method names.
|
||
|
||
[ $compiler == dartanalyzer ]
|
||
from_environment_const_type_test: Skip # The -D option that defines a constant
|
||
# for the Dart vm is not accepted by the deprecated java dartanalyzer.
|
||
int_parse_radix_test: Fail, OK # Test contains errors but doesn’t mark them as expected
|
||
list_insert_test: Fail, OK # Test contains errors but doesn’t mark them as expected
|
||
list_removeat_test: Fail, OK # Test contains errors but doesn’t mark them as expected
|
||
|
||
# Issue 16391. These tests are supposed to produce a compile time
|
||
# error in checked mode, but they don't:
|
||
[ $compiler == dartanalyzer && $checked ]
|
||
from_environment_const_type_test/02: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_test/03: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_test/04: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_test/06: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_test/07: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_test/08: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_test/09: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_test/11: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_test/12: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_test/13: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_test/14: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_test/16: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_undefined_test/02: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_undefined_test/03: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_undefined_test/04: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_undefined_test/06: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_undefined_test/07: MissingCompileTimeError # Issue 16391
|
||
from_environment_const_type_undefined_test/08: MissingCompileTimeError # Issue 16391
|
||
|
||
# Analyzer's implementation of fromEnvironment assumes that undefined
|
||
# environment variables have an unspecified value (rather than being
|
||
# null) because it is expected that the user will supply a value when
|
||
# the code is run. This means that it produces slightly different
|
||
# error messages than the VM and Dart2js.
|
||
[ $compiler == dart2analyzer && $checked ]
|
||
from_environment_const_type_undefined_test/09: CompileTimeError
|
||
from_environment_const_type_undefined_test/11: CompileTimeError
|
||
from_environment_const_type_undefined_test/12: CompileTimeError
|
||
from_environment_const_type_undefined_test/13: CompileTimeError
|
||
from_environment_const_type_undefined_test/14: CompileTimeError
|
||
from_environment_const_type_undefined_test/16: CompileTimeError
|
||
|
||
[ $compiler == dart2analyzer ]
|
||
int_parse_radix_test: fail
|
||
list_insert_test: fail
|
||
list_removeat_test: fail
|
||
|
||
[ $compiler == dartanalyzer || $compiler == dart2analyzer ]
|
||
error_stack_trace_test: StaticWarning, OK # Test generates errors on purpose.
|
||
iterable_element_at_test: StaticWarning, OK # Test generates errors on purpose.
|
||
num_clamp_test: StaticWarning, OK # Test generates errors on purpose.
|
||
string_test: StaticWarning, OK # Test generates error on purpose.
|
||
|
||
[ $system == windows && $arch == x64 ]
|
||
stopwatch_test: Skip # Flaky test due to expected performance behaviour.
|
||
|
||
[ $runtime != d8 && $runtime != vm ]
|
||
# The regexp tests are not verified to work on non d8/vm platforms yet.
|
||
regexp/*: Skip
|
||
|
||
[ $runtime == vm ]
|
||
regexp/global_test: Skip # Timeout. Issue 21709 and 21708
|
||
|
||
[ $mode == debug ]
|
||
regexp/pcre_test: Pass, Slow # Timeout. Issue 22008
|