From 51107bad1c326fc62760a92ac220b700c80f94ed Mon Sep 17 00:00:00 2001 From: "plind44@gmail.com" Date: Thu, 30 Jan 2014 18:04:33 +0000 Subject: [PATCH] Skip webkit/function-apply-aliased.js when running on simulators. The webkit/function-apply-aliased.js test fails on simulators (both MIPS and ARM) as the printed output does not match to the expected. The failing test forces a stack overflow exception and the ToString() operation of the exception object fails because of an other stack overflow and returns an empty string. The problem is that on hardware a common JS and C stack is used so the stack overflow can be caught in C functions also while on simulator separated JS and C stacks are used. This patch adds a "sim" condition to test .status files to skip tests only on simulator. LOG=N BUG=v8:3124 R=jkummerow@chromium.org, plind44@gmail.com Review URL: https://codereview.chromium.org/139233005 Patch from Balazs Kilvady . git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18959 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- test/webkit/webkit.status | 3 +++ tools/run-tests.py | 9 +++++++++ 2 files changed, 12 insertions(+) diff --git a/test/webkit/webkit.status b/test/webkit/webkit.status index 98935f7..298e575 100644 --- a/test/webkit/webkit.status +++ b/test/webkit/webkit.status @@ -42,4 +42,7 @@ 'reentrant-caching': [SKIP], 'sort-large-array': [SKIP], }], # 'mode == debug' +['simulator', { + 'function-apply-aliased': [SKIP], +}], # 'simulator' ] diff --git a/tools/run-tests.py b/tools/run-tests.py index f905c03..ec7021e 100755 --- a/tools/run-tests.py +++ b/tools/run-tests.py @@ -33,6 +33,7 @@ import multiprocessing import optparse import os from os.path import join +import platform import shlex import subprocess import sys @@ -387,6 +388,13 @@ def Execute(arch, mode, args, options, suites, workspace): options.no_i18n) # Find available test suites and read test cases from them. + machine = platform.machine() + if (machine and + (arch == "mipsel" or arch == "arm") and + not arch.startswith(machine)): + use_simulator = True + else: + use_simulator = False variables = { "arch": arch, "asan": options.asan, @@ -396,6 +404,7 @@ def Execute(arch, mode, args, options, suites, workspace): "mode": mode, "no_i18n": options.no_i18n, "system": utils.GuessOS(), + "simulator": use_simulator, } all_tests = [] num_tests = 0 -- 2.7.4