[DFG] Compare operations do not respect negative zeros
Created attachment 336024 [details] Patch
Comment on attachment 336024 [details] Patch Attachment 336024 [details] did not pass jsc-ews (mac): Output: http://webkit-queues.webkit.org/results/7016235 New failing tests: stress/fold-based-on-int32-proof-mul.js.dfg-eager stress/fold-based-on-int32-proof-mul-branch.js.ftl-eager-no-cjit stress/fold-based-on-int32-proof-mul.js.ftl-no-cjit-no-put-stack-validate stress/fold-based-on-int32-proof-mul-branch.js.no-cjit-validate-phases stress/fold-based-on-int32-proof-mul-branch.js.no-cjit-collect-continuously stress/fold-based-on-int32-proof-mul-branch.js.ftl-no-cjit-no-put-stack-validate stress/fold-based-on-int32-proof-mul-branch.js.ftl-no-cjit-no-inline-validate stress/fold-based-on-int32-proof-mul-branch.js.default stress/fold-based-on-int32-proof-mul.js.ftl-eager-no-cjit-b3o1 stress/fold-based-on-int32-proof-mul.js.no-cjit-collect-continuously stress/fold-based-on-int32-proof-mul.js.ftl-no-cjit-b3o1 stress/fold-based-on-int32-proof-mul-branch.js.ftl-no-cjit-small-pool stress/fold-based-on-int32-proof-mul.js.ftl-no-cjit-small-pool stress/fold-based-on-int32-proof-mul-branch.js.no-llint stress/fold-based-on-int32-proof-mul.js.ftl-eager stress/fold-based-on-int32-proof-mul-branch.js.dfg-eager stress/fold-based-on-int32-proof-mul-branch.js.ftl-eager stress/fold-based-on-int32-proof-mul-branch.js.dfg-eager-no-cjit-validate stress/fold-based-on-int32-proof-mul-branch.js.ftl-no-cjit-b3o1 stress/fold-based-on-int32-proof-mul-branch.js.no-ftl stress/fold-based-on-int32-proof-mul.js.no-cjit-validate-phases stress/fold-based-on-int32-proof-mul-branch.js.ftl-eager-no-cjit-b3o1 stress/fold-based-on-int32-proof-mul.js.ftl-no-cjit-validate-sampling-profiler stress/fold-based-on-int32-proof-mul-branch.js.ftl-no-cjit-validate-sampling-profiler stress/fold-based-on-int32-proof-mul.js.dfg-eager-no-cjit-validate stress/fold-based-on-int32-proof-mul.js.ftl-no-cjit-no-inline-validate stress/fold-based-on-int32-proof-mul.js.ftl-eager-no-cjit
(In reply to Build Bot from comment #2) > Comment on attachment 336024 [details] > Patch > > Attachment 336024 [details] did not pass jsc-ews (mac): > Output: http://webkit-queues.webkit.org/results/7016235 > > New failing tests: > stress/fold-based-on-int32-proof-mul.js.dfg-eager > stress/fold-based-on-int32-proof-mul-branch.js.ftl-eager-no-cjit > stress/fold-based-on-int32-proof-mul.js.ftl-no-cjit-no-put-stack-validate > stress/fold-based-on-int32-proof-mul-branch.js.no-cjit-validate-phases > stress/fold-based-on-int32-proof-mul-branch.js.no-cjit-collect-continuously > stress/fold-based-on-int32-proof-mul-branch.js.ftl-no-cjit-no-put-stack- > validate > stress/fold-based-on-int32-proof-mul-branch.js.ftl-no-cjit-no-inline-validate > stress/fold-based-on-int32-proof-mul-branch.js.default > stress/fold-based-on-int32-proof-mul.js.ftl-eager-no-cjit-b3o1 > stress/fold-based-on-int32-proof-mul.js.no-cjit-collect-continuously > stress/fold-based-on-int32-proof-mul.js.ftl-no-cjit-b3o1 > stress/fold-based-on-int32-proof-mul-branch.js.ftl-no-cjit-small-pool > stress/fold-based-on-int32-proof-mul.js.ftl-no-cjit-small-pool > stress/fold-based-on-int32-proof-mul-branch.js.no-llint > stress/fold-based-on-int32-proof-mul.js.ftl-eager > stress/fold-based-on-int32-proof-mul-branch.js.dfg-eager > stress/fold-based-on-int32-proof-mul-branch.js.ftl-eager > stress/fold-based-on-int32-proof-mul-branch.js.dfg-eager-no-cjit-validate > stress/fold-based-on-int32-proof-mul-branch.js.ftl-no-cjit-b3o1 > stress/fold-based-on-int32-proof-mul-branch.js.no-ftl > stress/fold-based-on-int32-proof-mul.js.no-cjit-validate-phases > stress/fold-based-on-int32-proof-mul-branch.js.ftl-eager-no-cjit-b3o1 > stress/fold-based-on-int32-proof-mul.js.ftl-no-cjit-validate-sampling- > profiler > stress/fold-based-on-int32-proof-mul-branch.js.ftl-no-cjit-validate-sampling- > profiler > stress/fold-based-on-int32-proof-mul.js.dfg-eager-no-cjit-validate > stress/fold-based-on-int32-proof-mul.js.ftl-no-cjit-no-inline-validate > stress/fold-based-on-int32-proof-mul.js.ftl-eager-no-cjit It shows the existing bug. CompareEq(Int32Only, NonIntAsdouble) is converted to false. But NonIntAsdouble includes `-0`.
Created attachment 336026 [details] Patch
Comment on attachment 336026 [details] Patch r=me
Committed r232567: <https://trac.webkit.org/changeset/232567>
<rdar://problem/40878198>