Bug 152901 - FTL B3 fails to realize that binary snippets might choose to omit their fast path
Summary: FTL B3 fails to realize that binary snippets might choose to omit their fast ...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: All All
: P2 Normal
Assignee: Filip Pizlo
URL:
Keywords:
Depends on:
Blocks: 150279
  Show dependency treegraph
 
Reported: 2016-01-08 10:49 PST by Filip Pizlo
Modified: 2016-01-08 11:03 PST (History)
5 users (show)

See Also:


Attachments
the patch (3.46 KB, patch)
2016-01-08 10:59 PST, Filip Pizlo
mark.lam: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Filip Pizlo 2016-01-08 10:49:27 PST
Patch forthcoming.
Comment 1 Filip Pizlo 2016-01-08 10:59:41 PST
Created attachment 268552 [details]
the patch

After this patch we only have a handful of test failures:

** The following JSC stress test failures have been introduced:
	jsc-layout-tests.yaml/js/script-tests/dfg-constant-fold-misprediction.js.layout-ftl-eager-no-cjit
	profiler-test.yaml/tests/sunspider-1.0/crypto-sha1.js.profiler
	regress/script-tests/call-spread-apply.js.ftl-no-cjit-no-inline-validate
	regress/script-tests/call-spread-call.js.ftl-no-cjit-no-inline-validate
	regress/script-tests/getter-richards-try-catch.js.default-ftl
	regress/script-tests/getter-richards-try-catch.js.ftl-no-cjit-validate
	regress/script-tests/richards-try-catch.js.default-ftl
	regress/script-tests/richards-try-catch.js.ftl-eager
	regress/script-tests/richards-try-catch.js.ftl-eager-no-cjit
	regress/script-tests/richards-try-catch.js.ftl-no-cjit-no-put-stack-validate
	regress/script-tests/richards-try-catch.js.ftl-no-cjit-validate
	regress/script-tests/varargs-strict-mode.js.ftl-no-cjit-no-inline-validate
	stress/ftl-try-catch-oom-error-lazy-slow-path.js.default-ftl
	stress/ftl-try-catch-oom-error-lazy-slow-path.js.ftl-eager
	stress/ftl-try-catch-oom-error-lazy-slow-path.js.ftl-eager-no-cjit
	stress/ftl-try-catch-oom-error-lazy-slow-path.js.ftl-no-cjit-no-inline-validate
	stress/ftl-try-catch-oom-error-lazy-slow-path.js.ftl-no-cjit-no-put-stack-validate
	stress/ftl-try-catch-oom-error-lazy-slow-path.js.ftl-no-cjit-small-pool
	stress/ftl-try-catch-oom-error-lazy-slow-path.js.ftl-no-cjit-validate
	stress/ftl-try-catch-patchpoint-with-volatile-registers.js.default-ftl
	stress/ftl-try-catch-patchpoint-with-volatile-registers.js.ftl-eager-no-cjit
	stress/ftl-try-catch-patchpoint-with-volatile-registers.js.ftl-no-cjit-no-inline-validate
	stress/ftl-try-catch-patchpoint-with-volatile-registers.js.ftl-no-cjit-no-put-stack-validate
	stress/ftl-try-catch-patchpoint-with-volatile-registers.js.ftl-no-cjit-validate
	stress/load-varargs-then-inlined-call-and-exit-strict.js.ftl-no-cjit-no-inline-validate
	stress/op_negate.js.ftl-no-cjit
	stress/reflect-apply.js.ftl-eager-no-cjit
	stress/tail-call-varargs-no-stack-overflow.js.default-ftl
	stress/tail-call-varargs-no-stack-overflow.js.ftl-eager
	stress/tail-call-varargs-no-stack-overflow.js.ftl-eager-no-cjit
	stress/tail-call-varargs-no-stack-overflow.js.ftl-no-cjit-no-inline-validate
	stress/tail-call-varargs-no-stack-overflow.js.ftl-no-cjit-no-put-stack-validate
	stress/tail-call-varargs-no-stack-overflow.js.ftl-no-cjit-small-pool
	stress/tail-call-varargs-no-stack-overflow.js.ftl-no-cjit-validate
	stress/varargs-varargs-inlined-exit-strict-mode.js.ftl-no-cjit-no-inline-validate
Comment 2 WebKit Commit Bot 2016-01-08 11:01:35 PST
Attachment 268552 [details] did not pass style-queue:


ERROR: Source/JavaScriptCore/ftl/FTLLowerDFGToLLVM.cpp:7591:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 1 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Mark Lam 2016-01-08 11:01:41 PST
Comment on attachment 268552 [details]
the patch

r=me
Comment 4 Filip Pizlo 2016-01-08 11:03:27 PST
Landed in http://trac.webkit.org/changeset/194773