Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(538)

Issue 1766263002: X87: Disable the test-run-profiler/Inlining test case for X87. (Closed)

Created:
4 years, 9 months ago by zhengxing.li
Modified:
4 years, 9 months ago
CC:
v8-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

X87: Disable the test-run-profiler/Inlining test case for X87. The CL #34376 (https://codereview.chromium.org/1740073002 ) added the Inlining test case and X87 failed at it. The reason is: For TEST(Inlining) test case, when level3 function is inlined, the key optimized crankshaft code will like below code normally: ............ 0x21d53b7f 63 ff571b call [edi+0x1b] <----------- should call action() here ;;; <@32,#27> lazy-bailout ;;; <@36,#31> ---- B3 ---- ;;; <@37,#31> gap 0x21d53b82 66 89c1 mov ecx,eax <----------- Both the inlined function’s pc_offset from DeoptimizationInputData and the pc_offset from sample stack points to here, the same pc address ............ So the TEST(Inlining) test case can get the expected inlined code entry and pass.. In fact, the exact code sequence should like the following in crankshaft: ............ 0x21d53b7f 63 ff571b call [edi+0x1b] <----------- should call action() 0xxxxxxxxx xxxx GenerateBodyInstructionPost() <----------- the pc_offset from sample stack points to here ;;; <@32,#27> lazy-bailout ;;; <@36,#31> ---- B3 ---- ;;; <@37,#31> gap 0x21d53b82 66 89c1 mov ecx,eax <----------- the inlined function’s pc_offset from DeoptimizationInputData points to here. ............ For most of architectures in V8, the GenerateBodyInstructionPost() is empty, so both the inlined function’s pc_offset from DeoptimizationInputData and the pc_offset from sample stack points to the same pc address . But if some architecture has special requirement and need to put some instruction after call instruction, the GenerateBodyInstructionPost() will do that work and generate instructions, the inlined function’s pc_offset from DeoptimizationInputData and The pc_offset from sample stack will points to the different pc address, the TEST(Inlining) test case can’t get the expected inlined code entry and failed. For all current architectures in v8, only x87 have this requirement. After communicated with Alexei Filippov <alph@chromium.org>; in E-mail, we decided to disable the Inlining test case for x87 now and try to find a solution. BUG= Committed: https://crrev.com/e906c9caefdb5f740f54bdfc73b62e37b3a2ef6a Cr-Commit-Position: refs/heads/master@{#34544}

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1 line, -0 lines) Patch
M test/cctest/cctest.status View 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 9 (3 generated)
zhengxing.li
PTAL, thanks!
4 years, 9 months ago (2016-03-07 06:10:06 UTC) #2
titzer
lgtm. Thanks for the detailed explanation.
4 years, 9 months ago (2016-03-07 14:29:24 UTC) #3
zhengxing.li
On 2016/03/07 14:29:24, titzer wrote: > lgtm. Thanks for the detailed explanation. Thanks, titzer!
4 years, 9 months ago (2016-03-07 14:36:51 UTC) #4
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1766263002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1766263002/1
4 years, 9 months ago (2016-03-07 14:37:13 UTC) #6
commit-bot: I haz the power
Committed patchset #1 (id:1)
4 years, 9 months ago (2016-03-07 14:56:40 UTC) #7
commit-bot: I haz the power
4 years, 9 months ago (2016-03-07 14:57:12 UTC) #9
Message was sent while issue was closed.
Patchset 1 (id:??) landed as
https://crrev.com/e906c9caefdb5f740f54bdfc73b62e37b3a2ef6a
Cr-Commit-Position: refs/heads/master@{#34544}

Powered by Google App Engine
This is Rietveld 408576698