Bug 156160

Summary: REGRESSION(r198981): It made 3 JSC stress test fail on ARM Thumb2
Product: WebKit Reporter: Csaba Osztrogonác <ossy>
Component: JavaScriptCoreAssignee: Yusuke Suzuki <ysuzuki>
Status: RESOLVED DUPLICATE    
Severity: Normal CC: ossy, saam, ysuzuki
Priority: P2    
Version: Other   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 108645, 156072    

Description Csaba Osztrogonác 2016-04-04 02:10:51 PDT
https://trac.webkit.org/changeset/198981 made 3 JSC stress test fail
on ARM Thumb2 Linux in all configurations. (Maybe on iOS too, but who
knows, there is no public iOS JSC tester buildbot ...)

JSCOnly ARM Thumb2 Linux bot:
https://build.webkit.org/builders/JSCOnly%20Linux%20ARMv7%20Thumb2%20Release/builds/141

(Note: These tests don't fail on the GTK ARM bot, but it's Thumb2, as far as I know.)

New failures on ARM Thumb2 after r198981:
stress/sink-arguments-past-invalid-check-int32-dfg.js.always-trigger-copy-phase
stress/sink-arguments-past-invalid-check-int32-dfg.js.default
stress/sink-arguments-past-invalid-check-int32-dfg.js.dfg-eager
stress/sink-arguments-past-invalid-check-int32-dfg.js.dfg-eager-no-cjit-validate
stress/sink-arguments-past-invalid-check-int32-dfg.js.dfg-maximal-flush-validate-no-cjit
stress/sink-arguments-past-invalid-check-int32-dfg.js.no-cjit-validate-phases
stress/sink-arguments-past-invalid-check-int32-dfg.js.no-llint
stress/sink-arguments-past-invalid-check-int32.js.always-trigger-copy-phase
stress/sink-arguments-past-invalid-check-int32.js.default
stress/sink-arguments-past-invalid-check-int32.js.dfg-eager
stress/sink-arguments-past-invalid-check-int32.js.dfg-eager-no-cjit-validate
stress/sink-arguments-past-invalid-check-int32.js.dfg-maximal-flush-validate-no-cjit
stress/sink-arguments-past-invalid-check-int32.js.no-cjit-validate-phases
stress/sink-arguments-past-invalid-check-int32.js.no-llint
stress/sink-object-past-invalid-check-int32.js.always-trigger-copy-phase
stress/sink-object-past-invalid-check-int32.js.default
stress/sink-object-past-invalid-check-int32.js.dfg-eager
stress/sink-object-past-invalid-check-int32.js.dfg-eager-no-cjit-validate
stress/sink-object-past-invalid-check-int32.js.dfg-maximal-flush-validate-no-cjit
stress/sink-object-past-invalid-check-int32.js.no-cjit-validate-phases
stress/sink-object-past-invalid-check-int32.js.no-llint
Comment 1 Yusuke Suzuki 2016-04-05 06:37:14 PDT
The patch is completely unrelated to stress/sink-arguments-past-invalid-check-int32-dfg.js tests.
But I guessed that the incorrect build is done; sink-arguments-past-invalid-check-int32-dfg.js uses Int32 checking Intrinsic. And my patch adds new intrinsic. So the index of the Int32 checking intrinsic is changed. If the rebuild is not done correctly, we may misbehave here.

To ensure that, I pressed force-rebuild button on the build-slave.
And it seems that rebuilt one does not pose this problem.

https://build.webkit.org/builders/JSCOnly%20Linux%20ARMv7%20Thumb2%20Release/builds/153

Could you ensure that?
Comment 2 Csaba Osztrogonác 2016-04-05 09:32:27 PDT
It seesm it is a dup of bug155790.

*** This bug has been marked as a duplicate of bug 155790 ***