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

Issue 1030253002: Fix missing symbols for pre-linking of the Cast sender library for iOS. (Closed)

Created:
5 years, 9 months ago by jfroy
Modified:
5 years, 8 months ago
Reviewers:
Nico, miu, DaleCurtis
CC:
chromium-reviews, feature-media-reviews_chromium.org, erikwright+watch_chromium.org, miu+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Fix missing symbols for pre-linking of the Cast sender library for iOS. When pre-linking the Cast sender library for the iOS simulator, a number of symbols are reported as undefined, even though the functions using them are dead code and the whole chain should disappear under dead code elimination. The same problem does not occur when targetting iOS hardware, which suggests a bug in the Intel linker. This patch either defines those missing symbols or prevents their use. Specifically, the patch adds dummy definitions for native_library and process_metrics under iOS which do nothing, and disables the assembly code path in yuv_convert when compiling for iOS (gyp is unable to build the simd code properly for target_subarch=both). Otherwise yuv_convert is functional via its normal CPU code path and is added to the media_for_ios_cast target to support VideoFrame methods. BUG=470602 R=miu@chromium.org Committed: https://crrev.com/32be1d41c5fff2548c3dbe7406cc082a78b3a004 Cr-Commit-Position: refs/heads/master@{#323267}

Patch Set 1 #

Total comments: 1

Patch Set 2 : Add native_library_ios.mm to base/BUILD.gn. #

Total comments: 6

Patch Set 3 : Review suggestions in native_library_ios. #

Patch Set 4 : Document why the create frame methods are not available in media for cast ios. #

Patch Set 5 : Add NOTIMPLEMENTED annotations and stub out yuv assembly path on iOS instead of removing VideoFrame… #

Patch Set 6 : Import base/logging.h in process_metrics_ios.cc for NOTIMPLEMENTED. #

Patch Set 7 : Update media/base/BUILD.gn. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+86 lines, -3 lines) Patch
M base/BUILD.gn View 1 1 chunk +1 line, -0 lines 0 comments Download
M base/base.gypi View 2 chunks +2 lines, -0 lines 0 comments Download
A base/native_library_ios.mm View 1 2 3 4 1 chunk +40 lines, -0 lines 0 comments Download
M base/process/process_metrics_ios.cc View 1 2 3 4 5 3 chunks +13 lines, -0 lines 0 comments Download
M media/base/BUILD.gn View 1 2 3 4 5 6 1 chunk +10 lines, -0 lines 0 comments Download
M media/base/yuv_convert.cc View 1 2 3 4 1 chunk +3 lines, -2 lines 0 comments Download
M media/media.gyp View 1 2 3 4 2 chunks +17 lines, -1 line 0 comments Download

Messages

Total messages: 29 (4 generated)
jfroy
5 years, 9 months ago (2015-03-25 18:31:00 UTC) #2
jfroy
5 years, 9 months ago (2015-03-25 18:31:37 UTC) #4
Nico
https://codereview.chromium.org/1030253002/diff/1/media/base/video_frame.cc File media/base/video_frame.cc (right): https://codereview.chromium.org/1030253002/diff/1/media/base/video_frame.cc#newcode483 media/base/video_frame.cc:483: scoped_refptr<VideoFrame> VideoFrame::CreateColorFrame( So you use this class in cast, ...
5 years, 9 months ago (2015-03-25 18:35:39 UTC) #5
jfroy
On 2015/03/25 18:35:39, Nico wrote: > https://codereview.chromium.org/1030253002/diff/1/media/base/video_frame.cc > File media/base/video_frame.cc (right): > > https://codereview.chromium.org/1030253002/diff/1/media/base/video_frame.cc#newcode483 > ...
5 years, 9 months ago (2015-03-25 18:40:21 UTC) #6
miu
https://codereview.chromium.org/1030253002/diff/20001/base/native_library_ios.mm File base/native_library_ios.mm (right): https://codereview.chromium.org/1030253002/diff/20001/base/native_library_ios.mm#newcode21 base/native_library_ios.mm:21: delete library; Rather than delete library, consider: DCHECK(!library); Since ...
5 years, 9 months ago (2015-03-27 21:26:26 UTC) #7
jfroy
https://codereview.chromium.org/1030253002/diff/20001/media/base/video_frame.cc File media/base/video_frame.cc (right): https://codereview.chromium.org/1030253002/diff/20001/media/base/video_frame.cc#newcode483 media/base/video_frame.cc:483: scoped_refptr<VideoFrame> VideoFrame::CreateColorFrame( On 2015/03/27 21:26:26, miu wrote: > I ...
5 years, 9 months ago (2015-03-27 21:33:26 UTC) #8
miu
On 2015/03/27 21:33:26, jfroy wrote: > FillYUV is defined in yuv_convert.cc, which will select CPU-optimized ...
5 years, 9 months ago (2015-03-27 22:05:07 UTC) #9
jfroy
On 2015/03/27 22:05:07, miu wrote: > On 2015/03/27 21:33:26, jfroy wrote: > > FillYUV is ...
5 years, 9 months ago (2015-03-27 22:21:36 UTC) #10
jfroy
https://codereview.chromium.org/1030253002/diff/20001/base/native_library_ios.mm File base/native_library_ios.mm (right): https://codereview.chromium.org/1030253002/diff/20001/base/native_library_ios.mm#newcode21 base/native_library_ios.mm:21: delete library; On 2015/03/27 21:26:26, miu wrote: > Rather ...
5 years, 8 months ago (2015-03-30 18:12:50 UTC) #11
miu
On 2015/03/27 22:21:36, jfroy wrote: > On 2015/03/27 22:05:07, miu wrote: > > On 2015/03/27 ...
5 years, 8 months ago (2015-03-31 01:42:48 UTC) #12
miu
lgtm, assuming the module containing FillYUV() is creating linkage problems even though there's no direct ...
5 years, 8 months ago (2015-03-31 01:44:21 UTC) #13
jfroy
On 2015/03/31 01:42:48, miu wrote: > On 2015/03/27 22:21:36, jfroy wrote: > > On 2015/03/27 ...
5 years, 8 months ago (2015-03-31 01:49:39 UTC) #14
miu
On 2015/03/31 01:49:39, jfroy wrote: > The issue is not FillYUV > itself, but the ...
5 years, 8 months ago (2015-03-31 01:56:39 UTC) #15
Nico
lgtm nit: Should the stubbed out base functions have NOTIMPLEMENTED()s, or "// Not implemented." comments?
5 years, 8 months ago (2015-03-31 16:26:00 UTC) #16
DaleCurtis
lgtm
5 years, 8 months ago (2015-03-31 18:17:16 UTC) #17
miu
still lgtm
5 years, 8 months ago (2015-03-31 19:35:23 UTC) #18
miu
On 2015/03/31 19:35:23, miu wrote: > still lgtm Whoops! Wrong review. But, assuming you plan ...
5 years, 8 months ago (2015-03-31 19:37:13 UTC) #19
jfroy
I wrote another revision that changes yuv_convert to disable the assembly functions for OS_IOS. I ...
5 years, 8 months ago (2015-03-31 19:40:38 UTC) #20
jfroy
Since I changed a few things since the last round of lgtm, I'm going to ...
5 years, 8 months ago (2015-03-31 21:01:34 UTC) #21
Nico
base still lgtm
5 years, 8 months ago (2015-03-31 21:45:58 UTC) #22
miu
PS6 lgtm.
5 years, 8 months ago (2015-03-31 23:34:04 UTC) #23
DaleCurtis
lgtm
5 years, 8 months ago (2015-04-01 16:03:02 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1030253002/120001
5 years, 8 months ago (2015-04-01 17:06:05 UTC) #27
commit-bot: I haz the power
Committed patchset #7 (id:120001)
5 years, 8 months ago (2015-04-01 17:10:41 UTC) #28
commit-bot: I haz the power
5 years, 8 months ago (2015-04-01 17:11:54 UTC) #29
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/32be1d41c5fff2548c3dbe7406cc082a78b3a004
Cr-Commit-Position: refs/heads/master@{#323267}

Powered by Google App Engine
This is Rietveld 408576698