Closed GoogleCodeExporter closed 8 years ago
the libyuv.gyp disabled the libyuv_neon library. enabling it, there are build
errors on ios
GYP_DEFINES="OS=ios target_arch=armv7 target_subarch=64" GYP_CROSSCOMPILE=1
GYP_GENERATOR_FLAGS="output_dir=out_ios" ./gyp_libyuv -f ninja --depth=.
libyuv_test.gyp
bash-3.2$ ninja -j7 -C out_ios/Debug-iphoneos libyuv_unittest
ninja: Entering directory `out_ios/Debug-iphoneos'
[7/127] CXX obj/source/libyuv_neon.rotate_neon64.armv7s.o
FAILED: c++ -MMD -MF obj/source/libyuv_neon.rotate_neon64.armv7s.o.d
-DV8_DEPRECATION_WARNINGS -DBLINK_SCALE_FILTERS_AT_RECORD_TIME -DDISABLE_NACL
-DCHROMIUM_BUILD -DCR_CLANG_REVISION=209387 -DUSE_LIBJPEG_TURBO=1
-DENABLE_CONFIGURATION_POLICY -DDISCARDABLE_MEMORY_ALWAYS_SUPPORTED_NATIVELY
-DSYSTEM_NATIVELY_SIGNALS_MEMORY_PRESSURE -DENABLE_EGLIMAGE=1 -DCLD_VERSION=1
-DCLD_DATA_FROM_STATIC -DENABLE_SPELLCHECK=1 -DDISABLE_FTP_SUPPORT=1
-DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -Igen
-I../../include -I../.. -isysroot
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
/SDKs/iPhoneOS7.1.sdk -O0 -gdwarf-2 -fvisibility=hidden -Wnewline-eof
-miphoneos-version-min=6.0 -arch armv7s -Wendif-labels -Wno-unused-parameter
-Wno-missing-field-initializers -Wheader-hygiene -Wno-c++11-narrowing
-Wno-char-subscripts -Wno-unneeded-internal-declaration
-Wno-covered-switch-default -Wstring-conversion -Wno-deprecated-register
-Wno-selector-type-mismatch -Wno-unknown-warning-option -std=gnu++0x -fno-rtti
-fno-exceptions -fvisibility-inlines-hidden -fno-threadsafe-statics
-fcolor-diagnostics -fstack-protector-all -c ../../source/rotate_neon64.cc -o
obj/source/libyuv_neon.rotate_neon64.armv7s.o
../../source/rotate_neon64.cc:20:2: error: unterminated conditional directive
#if !defined(LIBYUV_DISABLE_NEON) && defined(__aarch64__)
^
../../source/rotate_neon64.cc:540:7: error: expected '}'
#endif
^
../../source/rotate_neon64.cc:17:12: note: to match this '{'
extern "C" {
^
../../source/rotate_neon64.cc:540:7: error: expected '}'
#endif
^
../../source/rotate_neon64.cc:16:18: note: to match this '{'
namespace libyuv {
^
3 errors generated.
Original comment by fbarch...@chromium.org
on 10 Sep 2014 at 9:40
Fixing the ifdefs there are errors in the 64 bit code.
Here are 2 examples
../../source/row_neon64.cc:859:6: error: unrecognized instruction mnemonic
"bgt 1b \n"
^
<inline asm>:10:1: note: instantiated into assembly here
bgt 1b
^
../../source/row_neon64.cc:878:6: error: ',' expected
"ld1 {v0.8b-v3.8b}, [%0], #32 \n" // load 32
^
Original comment by fbarch...@chromium.org
on 12 Sep 2014 at 1:17
r1081 fixes ifdefs so arm64 will be compiled, but armv7 32 bit will not.
A gyp change to enable arm64 is not checked in, as there are compile errors
that need to be resolved.
Follow Getting Started ios arm64 instructions to repro.
Original comment by fbarch...@chromium.org
on 12 Sep 2014 at 1:58
More complete list of errors:
bash-3.2$ GYP_DEFINES="OS=ios target_arch=armv7 target_subarch=64"
GYP_CROSSCOMPILE=1 GYP_GENERATOR_FLAGS="output_dir=out_ios" ./gyp_libyuv -f
ninja --depth=. libyuv_test.gyp
Updating projects from gyp files...
bash-3.2$ ninja -j7 -C out_ios/Debug-iphoneos libyuv_unittest
ninja: Entering directory `out_ios/Debug-iphoneos'
[98/289] CXX obj/source/libyuv_neon.compare_neon.arm64.o
FAILED: c++ -MMD -MF obj/source/libyuv_neon.compare_neon.arm64.o.d
-DV8_DEPRECATION_WARNINGS -DBLINK_SCALE_FILTERS_AT_RECORD_TIME -DDISABLE_NACL
-DCHROMIUM_BUILD -DCR_CLANG_REVISION=209387 -DUSE_LIBJPEG_TURBO=1
-DENABLE_CONFIGURATION_POLICY -DDISCARDABLE_MEMORY_ALWAYS_SUPPORTED_NATIVELY
-DSYSTEM_NATIVELY_SIGNALS_MEMORY_PRESSURE -DENABLE_EGLIMAGE=1 -DCLD_VERSION=1
-DCLD_DATA_FROM_STATIC -DENABLE_SPELLCHECK=1 -DDISABLE_FTP_SUPPORT=1
-DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -Igen
-I../../include -I../.. -isysroot
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
/SDKs/iPhoneOS7.1.sdk -O0 -gdwarf-2 -fvisibility=hidden -Wnewline-eof
-miphoneos-version-min=6.0 -arch arm64 -Wendif-labels -Wno-unused-parameter
-Wno-missing-field-initializers -Wheader-hygiene -Wno-c++11-narrowing
-Wno-char-subscripts -Wno-unneeded-internal-declaration
-Wno-covered-switch-default -Wstring-conversion -Wno-deprecated-register
-Wno-selector-type-mismatch -Wno-unknown-warning-option -std=gnu++0x -fno-rtti
-fno-exceptions -fvisibility-inlines-hidden -fno-threadsafe-statics
-fcolor-diagnostics -fstack-protector-all -c ../../source/compare_neon.cc -o
obj/source/libyuv_neon.compare_neon.arm64.o
../../source/compare_neon.cc:83:6: error: unrecognized instruction mnemonic
"bgt 1b \n"
^
<inline asm>:18:1: note: instantiated into assembly here
bgt 1b
^
1 error generated.
[98/289] CXX obj/source/libyuv_neon.scale_neon64.arm64.o
FAILED: c++ -MMD -MF obj/source/libyuv_neon.scale_neon64.arm64.o.d
-DV8_DEPRECATION_WARNINGS -DBLINK_SCALE_FILTERS_AT_RECORD_TIME -DDISABLE_NACL
-DCHROMIUM_BUILD -DCR_CLANG_REVISION=209387 -DUSE_LIBJPEG_TURBO=1
-DENABLE_CONFIGURATION_POLICY -DDISCARDABLE_MEMORY_ALWAYS_SUPPORTED_NATIVELY
-DSYSTEM_NATIVELY_SIGNALS_MEMORY_PRESSURE -DENABLE_EGLIMAGE=1 -DCLD_VERSION=1
-DCLD_DATA_FROM_STATIC -DENABLE_SPELLCHECK=1 -DDISABLE_FTP_SUPPORT=1
-DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -Igen
-I../../include -I../.. -isysroot
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
/SDKs/iPhoneOS7.1.sdk -O0 -gdwarf-2 -fvisibility=hidden -Wnewline-eof
-miphoneos-version-min=6.0 -arch arm64 -Wendif-labels -Wno-unused-parameter
-Wno-missing-field-initializers -Wheader-hygiene -Wno-c++11-narrowing
-Wno-char-subscripts -Wno-unneeded-internal-declaration
-Wno-covered-switch-default -Wstring-conversion -Wno-deprecated-register
-Wno-selector-type-mismatch -Wno-unknown-warning-option -std=gnu++0x -fno-rtti
-fno-exceptions -fvisibility-inlines-hidden -fno-threadsafe-statics
-fcolor-diagnostics -fstack-protector-all -c ../../source/scale_neon64.cc -o
obj/source/libyuv_neon.scale_neon64.arm64.o
../../source/scale_neon64.cc:548:6: error: unrecognized instruction mnemonic
"beq 100f \n"
^
<inline asm>:2:1: note: instantiated into assembly here
beq 100f
^
../../source/scale_neon64.cc:551:6: error: unrecognized instruction mnemonic
"beq 75f \n"
^
<inline asm>:5:1: note: instantiated into assembly here
beq 75f
^
../../source/scale_neon64.cc:553:6: error: unrecognized instruction mnemonic
"beq 50f \n"
^
<inline asm>:7:1: note: instantiated into assembly here
beq 50f
^
../../source/scale_neon64.cc:555:6: error: unrecognized instruction mnemonic
"beq 25f \n"
^
<inline asm>:9:1: note: instantiated into assembly here
beq 25f
^
../../source/scale_neon64.cc:574:6: error: unrecognized instruction mnemonic
"bgt 1b \n"
^
<inline asm>:26:1: note: instantiated into assembly here
bgt 1b
^
../../source/scale_neon64.cc:588:6: error: unrecognized instruction mnemonic
"bgt 25b \n"
^
<inline asm>:38:1: note: instantiated into assembly here
bgt 25b
^
../../source/scale_neon64.cc:601:6: error: unrecognized instruction mnemonic
"bgt 50b \n"
^
<inline asm>:49:1: note: instantiated into assembly here
bgt 50b
^
../../source/scale_neon64.cc:615:6: error: unrecognized instruction mnemonic
"bgt 75b \n"
^
<inline asm>:61:1: note: instantiated into assembly here
bgt 75b
^
../../source/scale_neon64.cc:625:6: error: unrecognized instruction mnemonic
"bgt 100b \n"
^
<inline asm>:69:1: note: instantiated into assembly here
bgt 100b
^
9 errors generated.
[98/289] CXX obj/source/libyuv_neon.row_neon64.arm64.o
FAILED: c++ -MMD -MF obj/source/libyuv_neon.row_neon64.arm64.o.d
-DV8_DEPRECATION_WARNINGS -DBLINK_SCALE_FILTERS_AT_RECORD_TIME -DDISABLE_NACL
-DCHROMIUM_BUILD -DCR_CLANG_REVISION=209387 -DUSE_LIBJPEG_TURBO=1
-DENABLE_CONFIGURATION_POLICY -DDISCARDABLE_MEMORY_ALWAYS_SUPPORTED_NATIVELY
-DSYSTEM_NATIVELY_SIGNALS_MEMORY_PRESSURE -DENABLE_EGLIMAGE=1 -DCLD_VERSION=1
-DCLD_DATA_FROM_STATIC -DENABLE_SPELLCHECK=1 -DDISABLE_FTP_SUPPORT=1
-DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -Igen
-I../../include -I../.. -isysroot
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
/SDKs/iPhoneOS7.1.sdk -O0 -gdwarf-2 -fvisibility=hidden -Wnewline-eof
-miphoneos-version-min=6.0 -arch arm64 -Wendif-labels -Wno-unused-parameter
-Wno-missing-field-initializers -Wheader-hygiene -Wno-c++11-narrowing
-Wno-char-subscripts -Wno-unneeded-internal-declaration
-Wno-covered-switch-default -Wstring-conversion -Wno-deprecated-register
-Wno-selector-type-mismatch -Wno-unknown-warning-option -std=gnu++0x -fno-rtti
-fno-exceptions -fvisibility-inlines-hidden -fno-threadsafe-statics
-fcolor-diagnostics -fstack-protector-all -c ../../source/row_neon64.cc -o
obj/source/libyuv_neon.row_neon64.arm64.o
../../source/row_neon64.cc:1317:10: warning: value size does not match register
size specified by the constraint and modifier [-Wasm-operand-widths]
"+r"(stride_yuy2), // %1
^
../../source/row_neon64.cc:1317:10: warning: value size does not match register
size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/row_neon64.cc:1347:10: warning: value size does not match register
size specified by the constraint and modifier [-Wasm-operand-widths]
"+r"(stride_uyvy), // %1
^
../../source/row_neon64.cc:1347:10: warning: value size does not match register
size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/row_neon64.cc:1374:10: warning: value size does not match register
size specified by the constraint and modifier [-Wasm-operand-widths]
"+r"(src_uv_stride), // %1
^
../../source/row_neon64.cc:1374:10: warning: value size does not match register
size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/row_neon64.cc:1374:10: warning: value size does not match register
size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/row_neon64.cc:834:6: error: unrecognized instruction mnemonic
"bgt 1b \n"
^
<inline asm>:10:1: note: instantiated into assembly here
bgt 1b
^
../../source/row_neon64.cc:859:6: error: unrecognized instruction mnemonic
"bgt 1b \n"
^
<inline asm>:10:1: note: instantiated into assembly here
bgt 1b
^
../../source/row_neon64.cc:878:6: error: ',' expected
"ld1 {v0.8b-v3.8b}, [%0], #32 \n" // load 32
^
<inline asm>:4:18: note: instantiated into assembly here
ld1 {v0.8b-v3.8b}, [x9], #32
^
../../source/row_neon64.cc:881:6: error: ',' expected
"st1 {v0.8b-v3.8b}, [%1], #32 \n" // store 32
^
<inline asm>:7:18: note: instantiated into assembly here
st1 {v0.8b-v3.8b}, [x0], #32
^
../../source/row_neon64.cc:882:6: error: unrecognized instruction mnemonic
"bgt 1b \n"
^
<inline asm>:8:1: note: instantiated into assembly here
bgt 1b
^
../../source/row_neon64.cc:901:6: error: unrecognized instruction mnemonic
"bgt 1b \n"
^
<inline asm>:6:1: note: instantiated into assembly here
bgt 1b
^
../../source/row_neon64.cc:939:6: error: unrecognized instruction mnemonic
"bgt 1b \n"
^
<inline asm>:13:1: note: instantiated into assembly here
bgt 1b
^
../../source/row_neon64.cc:968:6: error: unrecognized instruction mnemonic
"bgt 1b \n"
^
<inline asm>:14:1: note: instantiated into assembly here
bgt 1b
^
../../source/row_neon64.cc:996:6: error: unrecognized instruction mnemonic
"bgt 1b \n"
^
<inline asm>:13:1: note: instantiated into assembly here
bgt 1b
^
../../source/row_neon64.cc:1013:6: error: ',' expected
"ld3 {v1.8b-v3.8b}, [%0], #24 \n" // load 8 pixels of RGB24.
^
<inline asm>:5:18: note: instantiated into assembly here
ld3 {v1.8b-v3.8b}, [x9], #24
^
../../source/row_neon64.cc:1016:6: error: ',' expected
"st4 {v1.8b-v4.8b}, [%1], #32 \n" // store 8 pixels of ARGB.
^
<inline asm>:8:18: note: instantiated into assembly here
st4 {v1.8b-v4.8b}, [x0], #32
^
../../source/row_neon64.cc:1017:6: error: unrecognized instruction mnemonic
"bgt 1b \n"
^
<inline asm>:9:1: note: instantiated into assembly here
bgt 1b
^
../../source/row_neon64.cc:1034:6: error: ',' expected
"ld3 {v0.8b-v2.8b}, [%0], #24 \n" // read r g b
^
<inline asm>:5:18: note: instantiated into assembly here
ld3 {v0.8b-v2.8b}, [x9], #24
^
../../source/row_neon64.cc:1036:6: error: invalid operand for instruction
"mov v3.8b, v1.8b \n" // move g
^
<inline asm>:7:12: note: instantiated into assembly here
mov v3.8b, v1.8b
^
../../source/row_neon64.cc:1037:6: error: invalid operand for instruction
"mov v4.8b, v0.8b \n" // move r
^
<inline asm>:8:12: note: instantiated into assembly here
mov v4.8b, v0.8b
^
../../source/row_neon64.cc:1039:6: error: ',' expected
"st4 {v2.8b-v5.8b}, [%1], #32 \n" // store b g r a
^
<inline asm>:10:18: note: instantiated into assembly here
st4 {v2.8b-v5.8b}, [x0], #32
^
../../source/row_neon64.cc:1040:6: error: unrecognized instruction mnemonic
"bgt 1b \n"
^
<inline asm>:11:1: note: instantiated into assembly here
bgt 1b
^
../../source/row_neon64.cc:1173:6: error: ',' expected
"ld4 {v1.8b-v4.8b}, [%0], #32 \n" // load 8 pixels of ARGB.
^
<inline asm>:4:18: note: instantiated into assembly here
ld4 {v1.8b-v4.8b}, [x9], #32
^
../../source/row_neon64.cc:1176:6: error: ',' expected
"st3 {v1.8b-v3.8b}, [%1], #24 \n" // store 8 pixels of RGB24.
^
<inline asm>:7:18: note: instantiated into assembly here
st3 {v1.8b-v3.8b}, [x0], #24
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
7 warnings and 20 errors generated.
ninja: build stopped: subcommand failed.
Original comment by fbarch...@chromium.org
on 15 Sep 2014 at 6:25
Breaks into 4 issues:
bgt -> b.gt
v1.8b-v3.8b -> use , not -
mov v1,v2 -> use or v1, v2, v2
stride -> cast to ptrdiff_t
Original comment by fbarch...@chromium.org
on 15 Sep 2014 at 6:26
branches fixed in r1084
Original comment by fbarch...@google.com
on 15 Sep 2014 at 10:46
These are the current errors for clang
bash-3.2$ ninja -j7 -C out_ios/Debug-iphoneos libyuv_unittest
ninja: Entering directory `out_ios/Debug-iphoneos'
[8/47] CXX obj/source/libyuv_neon.scale_neon64.arm64.o
FAILED: c++ -MMD -MF obj/source/libyuv_neon.scale_neon64.arm64.o.d
-DV8_DEPRECATION_WARNINGS -DBLINK_SCALE_FILTERS_AT_RECORD_TIME -DDISABLE_NACL
-DCHROMIUM_BUILD -DCR_CLANG_REVISION=209387 -DUSE_LIBJPEG_TURBO=1
-DENABLE_CONFIGURATION_POLICY -DDISCARDABLE_MEMORY_ALWAYS_SUPPORTED_NATIVELY
-DSYSTEM_NATIVELY_SIGNALS_MEMORY_PRESSURE -DENABLE_EGLIMAGE=1 -DCLD_VERSION=1
-DCLD_DATA_FROM_STATIC -DENABLE_SPELLCHECK=1 -DDISABLE_FTP_SUPPORT=1
-DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -Igen
-I../../include -I../.. -isysroot
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
/SDKs/iPhoneOS7.1.sdk -O0 -gdwarf-2 -fvisibility=hidden -Wnewline-eof
-miphoneos-version-min=6.0 -arch arm64 -Wendif-labels -Wno-unused-parameter
-Wno-missing-field-initializers -Wheader-hygiene -Wno-c++11-narrowing
-Wno-char-subscripts -Wno-unneeded-internal-declaration
-Wno-covered-switch-default -Wstring-conversion -Wno-deprecated-register
-Wno-selector-type-mismatch -Wno-unknown-warning-option -std=gnu++0x -fno-rtti
-fno-exceptions -fvisibility-inlines-hidden -fno-threadsafe-statics
-fcolor-diagnostics -fstack-protector-all -c ../../source/scale_neon64.cc -o
obj/source/libyuv_neon.scale_neon64.arm64.o
../../source/scale_neon64.cc:125:10: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
"+r"(dst_width), // %2
^
../../source/scale_neon64.cc:125:10: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/scale_neon64.cc:424:21: error: invalid use of a cast in a inline
asm context requiring an l-value: remove the cast or build with
-fheinous-gnu-extensions
"+r"((ptrdiff_t)src_stride), // %3
~~~~~~~~~~~^~~~~~~~~~
../../source/scale_neon64.cc:423:10: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
"+r"(dst_width), // %2
^
../../source/scale_neon64.cc:423:10: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/scale_neon64.cc:534:21: error: invalid use of a cast in a inline
asm context requiring an l-value: remove the cast or build with
-fheinous-gnu-extensions
"+r"((ptrdiff_t)src_stride) // %3
~~~~~~~~~~~^~~~~~~~~~
../../source/scale_neon64.cc:533:10: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
"+r"(dst_width), // %2
^
../../source/scale_neon64.cc:533:10: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
6 warnings and 2 errors generated.
[8/47] CXX obj/source/libyuv_neon.row_neon64.arm64.o
FAILED: c++ -MMD -MF obj/source/libyuv_neon.row_neon64.arm64.o.d
-DV8_DEPRECATION_WARNINGS -DBLINK_SCALE_FILTERS_AT_RECORD_TIME -DDISABLE_NACL
-DCHROMIUM_BUILD -DCR_CLANG_REVISION=209387 -DUSE_LIBJPEG_TURBO=1
-DENABLE_CONFIGURATION_POLICY -DDISCARDABLE_MEMORY_ALWAYS_SUPPORTED_NATIVELY
-DSYSTEM_NATIVELY_SIGNALS_MEMORY_PRESSURE -DENABLE_EGLIMAGE=1 -DCLD_VERSION=1
-DCLD_DATA_FROM_STATIC -DENABLE_SPELLCHECK=1 -DDISABLE_FTP_SUPPORT=1
-DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -Igen
-I../../include -I../.. -isysroot
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
/SDKs/iPhoneOS7.1.sdk -O0 -gdwarf-2 -fvisibility=hidden -Wnewline-eof
-miphoneos-version-min=6.0 -arch arm64 -Wendif-labels -Wno-unused-parameter
-Wno-missing-field-initializers -Wheader-hygiene -Wno-c++11-narrowing
-Wno-char-subscripts -Wno-unneeded-internal-declaration
-Wno-covered-switch-default -Wstring-conversion -Wno-deprecated-register
-Wno-selector-type-mismatch -Wno-unknown-warning-option -std=gnu++0x -fno-rtti
-fno-exceptions -fvisibility-inlines-hidden -fno-threadsafe-statics
-fcolor-diagnostics -fstack-protector-all -c ../../source/row_neon64.cc -o
obj/source/libyuv_neon.row_neon64.arm64.o
../../source/row_neon64.cc:1036:6: error: invalid operand for instruction
"mov v3.8b, v1.8b \n" // move g
^
<inline asm>:7:12: note: instantiated into assembly here
mov v3.8b, v1.8b
^
../../source/row_neon64.cc:1037:6: error: invalid operand for instruction
"mov v4.8b, v0.8b \n" // move r
^
<inline asm>:8:12: note: instantiated into assembly here
mov v4.8b, v0.8b
^
../../source/row_neon64.cc:1195:6: error: invalid operand for instruction
"mov v4.8b, v2.8b \n" // mov g
^
<inline asm>:6:12: note: instantiated into assembly here
mov v4.8b, v2.8b
^
../../source/row_neon64.cc:1196:6: error: invalid operand for instruction
"mov v5.8b, v1.8b \n" // mov b
^
<inline asm>:7:12: note: instantiated into assembly here
mov v5.8b, v1.8b
^
../../source/row_neon64.cc:1463:6: error: invalid operand for instruction
"mov v2.8b, v1.8b \n"
^
<inline asm>:5:12: note: instantiated into assembly here
mov v2.8b, v1.8b
^
../../source/row_neon64.cc:1493:6: error: invalid operand for instruction
"mov v3.8b, v2.8b \n"
^
<inline asm>:5:12: note: instantiated into assembly here
mov v3.8b, v2.8b
^
../../source/row_neon64.cc:1685:5: error: too few operands for instruction
"movi v20.8h, #112 / 2 \n" // UB / VR 0.875 coefficient
^
<inline asm>:1:2: note: instantiated into assembly here
movi v20.8h, #112 / 2
^
../../source/row_neon64.cc:1686:6: error: too few operands for instruction
"movi v21.8h, #74 / 2 \n" // UG -0.5781 coefficient
^
<inline asm>:2:1: note: instantiated into assembly here
movi v21.8h, #74 / 2
^
../../source/row_neon64.cc:1687:6: error: too few operands for instruction
"movi v22.8h, #38 / 2 \n" // UR -0.2969 coefficient
^
<inline asm>:3:1: note: instantiated into assembly here
movi v22.8h, #38 / 2
^
../../source/row_neon64.cc:1688:6: error: too few operands for instruction
"movi v23.8h, #18 / 2 \n" // VB -0.1406 coefficient
^
<inline asm>:4:1: note: instantiated into assembly here
movi v23.8h, #18 / 2
^
../../source/row_neon64.cc:1689:6: error: too few operands for instruction
"movi v24.8h, #94 / 2 \n" // VG -0.7344 coefficient
^
<inline asm>:5:1: note: instantiated into assembly here
movi v24.8h, #94 / 2
^
../../source/row_neon64.cc:1735:5: error: too few operands for instruction
"movi v20.8h, #112 / 2 \n" // UB / VR 0.875 coefficient
^
<inline asm>:1:2: note: instantiated into assembly here
movi v20.8h, #112 / 2
^
../../source/row_neon64.cc:1736:6: error: too few operands for instruction
"movi v21.8h, #74 / 2 \n" // UG -0.5781 coefficient
^
<inline asm>:2:1: note: instantiated into assembly here
movi v21.8h, #74 / 2
^
../../source/row_neon64.cc:1737:6: error: too few operands for instruction
"movi v22.8h, #38 / 2 \n" // UR -0.2969 coefficient
^
<inline asm>:3:1: note: instantiated into assembly here
movi v22.8h, #38 / 2
^
../../source/row_neon64.cc:1738:6: error: too few operands for instruction
"movi v23.8h, #18 / 2 \n" // VB -0.1406 coefficient
^
<inline asm>:4:1: note: instantiated into assembly here
movi v23.8h, #18 / 2
^
../../source/row_neon64.cc:1739:6: error: too few operands for instruction
"movi v24.8h, #94 / 2 \n" // VG -0.7344 coefficient
^
<inline asm>:5:1: note: instantiated into assembly here
movi v24.8h, #94 / 2
^
../../source/row_neon64.cc:2751:6: error: invalid operand for instruction
"ld4 {v0.8b,v1.8b,v2.8b,v3.8b}[0], [%0], #4 \n" // load 1 pixel ARGB0.
^
<inline asm>:30:37: note: instantiated into assembly here
ld4 {v0.8b,v1.8b,v2.8b,v3.8b}[0], [x9], #4
^
../../source/row_neon64.cc:2753:6: error: invalid operand for instruction
"ld4 {v4.8b,v5.8b,v6.8b,v7.8b}[0], [%1], #4 \n" // load 1 pixel ARGB1.
^
<inline asm>:32:37: note: instantiated into assembly here
ld4 {v4.8b,v5.8b,v6.8b,v7.8b}[0], [x0], #4
^
../../source/row_neon64.cc:2769:6: error: invalid operand for instruction
"st4 {v0.8b,v1.8b,v2.8b,v3.8b}[0], [%2], #4 \n" // store 1 pixel.
^
<inline asm>:48:37: note: instantiated into assembly here
st4 {v0.8b,v1.8b,v2.8b,v3.8b}[0], [x1], #4
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[8/47] CXX obj/testing/gtest/src/gtest.gtest-port.armv7.o
ninja: build stopped: subcommand failed.
bash-3.2$
Original comment by fbarch...@chromium.org
on 16 Sep 2014 at 4:24
movi expects a constant, not an expression
mov doesnt work - use orr
index expects no register size. e.g. "ld4 {v0.b,v1.b,v2.b,v3.b}[0],
[%0], #4 \n" // load 1 pixel ARGB0.
strides need to be assigned to an lvalue.
width value issue unknown - works in most cases?
../../source/scale_neon64.cc:533:10: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
"+r"(dst_width), // %2
Original comment by fbarch...@chromium.org
on 16 Sep 2014 at 6:31
Frank, I could compile example code with ld1 {v1.8b-v3.8b} inline assembly on
clang 3.5. clang 3.5 seems to support the extensions used in row_neon64.cc
code. Which version of clang is being used for iOS build?
Original comment by ashok.b...@gmail.com
on 16 Sep 2014 at 11:34
Current libyuv chromium deps pull in clang 3.4
bash-3.2$ c++ --version
Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn)
Target: x86_64-apple-darwin13.3.0
Thread model: posix
Original comment by fbarch...@google.com
on 17 Sep 2014 at 4:19
It would be best if code can work on clang 3.4 but if its not possible the
following check could be added to row.h
// clang >= 3.5.0 required for Arm64.
#if defined(__clang__) && defined(__aarch64__) && !defined(LIBYUV_DISABLE_NEON)
#if (__clang_major__ > 3) || (__clang_major__ == 3 && (__clang_minor__ >= 5))
#define LIBYUV_DISABLE_NEON
#endif // clang >= 3.5
#endif // __clang__
Original comment by fbarch...@chromium.org
on 17 Sep 2014 at 5:19
Since the changes required for clang 3.4 are not too many, we can support clang
3.4. However, if possible it may be a good idea to migrate iOS to use clang 3.5
in future.
Original comment by ashok.b...@gmail.com
on 18 Sep 2014 at 3:40
Current full list of errors is:
bash-3.2$ ninja -j7 -C out_ios/Debug-iphoneos libyuv_unittest
ninja: Entering directory `out_ios/Debug-iphoneos'
[26/295] CXX obj/source/libyuv_neon.rotate_neon64.arm64.o
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
"+r"(width) // %3
^
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:241:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:526:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
"+r"(width) // %4
^
../../source/rotate_neon64.cc:526:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
19 warnings generated.
[30/295] CXX obj/source/libyuv_neon.row_neon64.arm64.o
FAILED: c++ -MMD -MF obj/source/libyuv_neon.row_neon64.arm64.o.d
-DV8_DEPRECATION_WARNINGS -DDISABLE_NACL -DCHROMIUM_BUILD
-DCR_CLANG_REVISION=214024 -DUSE_LIBJPEG_TURBO=1 -DENABLE_CONFIGURATION_POLICY
-DDISCARDABLE_MEMORY_ALWAYS_SUPPORTED_NATIVELY
-DSYSTEM_NATIVELY_SIGNALS_MEMORY_PRESSURE -DENABLE_EGLIMAGE=1 -DCLD_VERSION=1
-DENABLE_SPELLCHECK=1 -DDISABLE_FTP_SUPPORT=1 -DDYNAMIC_ANNOTATIONS_ENABLED=1
-DWTF_USE_DYNAMIC_ANNOTATIONS=1 -Igen -I../../include -I../.. -isysroot
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
/SDKs/iPhoneOS7.1.sdk -O0 -gdwarf-2 -fvisibility=hidden -Wnewline-eof
-miphoneos-version-min=7.0 -arch arm64 -Wendif-labels -Wno-unused-parameter
-Wno-missing-field-initializers -Wno-selector-type-mismatch
-Wno-unknown-warning-option -Wheader-hygiene -Wno-char-subscripts
-Wno-unneeded-internal-declaration -Wno-covered-switch-default
-Wstring-conversion -Wno-c++11-narrowing -Wno-deprecated-register -std=gnu++0x
-stdlib=libstdc++ -fno-rtti -fno-exceptions -fvisibility-inlines-hidden
-fno-threadsafe-statics -fno-slp-vectorize -fcolor-diagnostics
-fstack-protector-all -Wno-undefined-bool-conversion
-Wno-tautological-undefined-compare -c ../../source/row_neon64.cc -o
obj/source/libyuv_neon.row_neon64.arm64.o
../../source/row_neon64.cc:1036:6: error: invalid operand for instruction
"mov v3.8b, v1.8b \n" // move g
^
<inline asm>:7:12: note: instantiated into assembly here
mov v3.8b, v1.8b
^
../../source/row_neon64.cc:1037:6: error: invalid operand for instruction
"mov v4.8b, v0.8b \n" // move r
^
<inline asm>:8:12: note: instantiated into assembly here
mov v4.8b, v0.8b
^
../../source/row_neon64.cc:1195:6: error: invalid operand for instruction
"mov v4.8b, v2.8b \n" // mov g
^
<inline asm>:6:12: note: instantiated into assembly here
mov v4.8b, v2.8b
^
../../source/row_neon64.cc:1196:6: error: invalid operand for instruction
"mov v5.8b, v1.8b \n" // mov b
^
<inline asm>:7:12: note: instantiated into assembly here
mov v5.8b, v1.8b
^
../../source/row_neon64.cc:1463:6: error: invalid operand for instruction
"mov v2.8b, v1.8b \n"
^
<inline asm>:5:12: note: instantiated into assembly here
mov v2.8b, v1.8b
^
../../source/row_neon64.cc:1493:6: error: invalid operand for instruction
"mov v3.8b, v2.8b \n"
^
<inline asm>:5:12: note: instantiated into assembly here
mov v3.8b, v2.8b
^
../../source/row_neon64.cc:1685:5: error: too few operands for instruction
"movi v20.8h, #56 \n" // UB / VR 0.875 / 2 coefficient
^
<inline asm>:1:2: note: instantiated into assembly here
movi v20.8h, #56
^
../../source/row_neon64.cc:1686:6: error: too few operands for instruction
"movi v21.8h, #37 \n" // UG -0.5781 / 2 coefficient
^
<inline asm>:2:1: note: instantiated into assembly here
movi v21.8h, #37
^
../../source/row_neon64.cc:1687:6: error: too few operands for instruction
"movi v22.8h, #19 \n" // UR -0.2969 / 2 coefficient
^
<inline asm>:3:1: note: instantiated into assembly here
movi v22.8h, #19
^
../../source/row_neon64.cc:1688:6: error: too few operands for instruction
"movi v23.8h, #9 \n" // VB -0.1406 / 2 coefficient
^
<inline asm>:4:1: note: instantiated into assembly here
movi v23.8h, #9
^
../../source/row_neon64.cc:1689:6: error: too few operands for instruction
"movi v24.8h, #47 \n" // VG -0.7344 / 2 coefficient
^
<inline asm>:5:1: note: instantiated into assembly here
movi v24.8h, #47
^
../../source/row_neon64.cc:1735:5: error: too few operands for instruction
"movi v20.8h, #56 \n" // UB / VR 0.875 / 2 coefficient
^
<inline asm>:1:2: note: instantiated into assembly here
movi v20.8h, #56
^
../../source/row_neon64.cc:1736:6: error: too few operands for instruction
"movi v21.8h, #37 \n" // UG -0.5781 / 2 coefficient
^
<inline asm>:2:1: note: instantiated into assembly here
movi v21.8h, #37
^
../../source/row_neon64.cc:1737:6: error: too few operands for instruction
"movi v22.8h, #19 \n" // UR -0.2969 / 2 coefficient
^
<inline asm>:3:1: note: instantiated into assembly here
movi v22.8h, #19
^
../../source/row_neon64.cc:1738:6: error: too few operands for instruction
"movi v23.8h, #9 \n" // VB -0.1406 / 2 coefficient
^
<inline asm>:4:1: note: instantiated into assembly here
movi v23.8h, #9
^
../../source/row_neon64.cc:1739:6: error: too few operands for instruction
"movi v24.8h, #47 \n" // VG -0.7344 / 2 coefficient
^
<inline asm>:5:1: note: instantiated into assembly here
movi v24.8h, #47
^
../../source/row_neon64.cc:2918:6: error: invalid operand for instruction
"mov v1.8b, v0.8b \n" // G
^
<inline asm>:13:12: note: instantiated into assembly here
mov v1.8b, v0.8b
^
../../source/row_neon64.cc:2919:6: error: invalid operand for instruction
"mov v2.8b, v0.8b \n" // R
^
<inline asm>:14:12: note: instantiated into assembly here
mov v2.8b, v0.8b
^
../../source/row_neon64.cc:3161:6: error: invalid operand for instruction
"mov v1.8b, v0.8b \n"
^
<inline asm>:10:12: note: instantiated into assembly here
mov v1.8b, v0.8b
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[30/295] OBJC
obj.host/testing/iossim/third_party/class-dump/src/class-dump.CDClassDump.o
ninja: build stopped: subcommand failed.
Original comment by fbarch...@chromium.org
on 22 Sep 2014 at 11:02
updated chromium deps but does not change ios behavior. A verbose build shows
xcode command line is used
ninja -j7 -v -C out_ios/Debug-iphoneos libyuv_unittest
bash-3.2$ c++ --version
Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn)
Target: x86_64-apple-darwin13.4.0
Thread model: posix
Original comment by fbarch...@chromium.org
on 23 Sep 2014 at 8:25
xcode 6.0.1 uses a newer version:
$ c++ --version
Apple LLVM version 6.0 (clang-600.0.51) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin13.4.0
Thread model: posix
But the build is broken for xcode 6
Original comment by fbarch...@chromium.org
on 24 Sep 2014 at 3:16
The problem seems to be with the xcode as it has problems with proper AArch64
assembly code. For example, ARM ARM, in Section C.1.2.4, says range syntax for
load/store is valid. However xcode has problems with ld1 {v0.8b-v3.8b} syntax.
From what I can see, the issue is not with gcc or clang as such.
Original comment by ashok.b...@gmail.com
on 24 Sep 2014 at 2:37
This is the build error with updated xcode 6
ninja: error:
'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/D
eveloper/Library/PrivateFrameworks/DVTiPhoneSimulatorRemoteClient.framework/Vers
ions/Current/DVTiPhoneSimulatorRemoteClient', needed by
'obj.host/chromium/src/testing/iossim/iossim.gen/iossim/DVTiPhoneSimulatorRemote
Client.h', missing and no known rule to make it
bash
Original comment by fbarch...@google.com
on 26 Sep 2014 at 11:40
Other changes needed to work with xcode
Instead of mov v0.8b, v1.8b, Use orr v0.8b, v1.8b, v1.8b
Instead of movi v1.8h, #10 Use movi v1.8h, #10, LSL #0
No change required when loading constant to .8b or .16b using movi
Original comment by ashok.b...@gmail.com
on 1 Oct 2014 at 6:33
Hi Frank,
Any update on this issue? Did my previous patch fix some/all of the issues?
Original comment by ashok.b...@gmail.com
on 8 Oct 2014 at 12:47
xcode 5.1.1 appears to build with warnings:
bash-3.2$ ninja -j7 -C out_ios/Debug-iphoneos libyuv_unittest
ninja: Entering directory `out_ios/Debug-iphoneos'
[92/294] ACTION(host) Generating DVTiPhoneSimulatorRemoteClient.h
2014-10-13 13:28:08.636 class-dump[27217:507] Unknown load command: 0x00000024
2014-10-13 13:28:08.639 class-dump[27217:507] Unknown load command: 0x0000002a
2014-10-13 13:28:08.639 class-dump[27217:507] Unknown load command: 0x00000026
2014-10-13 13:28:08.640 class-dump[27217:507] Unknown load command: 0x00000029
2014-10-13 13:28:08.640 class-dump[27217:507] Unknown load command: 0x0000002b
[105/294] CXX obj/source/libyuv_neon.rotate_neon64.arm64.o
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
"+r"(width) // %3
^
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:240:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
../../source/rotate_neon64.cc:525:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
"+r"(width) // %4
^
../../source/rotate_neon64.cc:525:12: warning: value size does not match
register size specified by the constraint and modifier [-Wasm-operand-widths]
19 warnings generated.
[130/294] LIBTOOL-STATIC libyuv_neon.a, POSTBUILDS
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv_neon.armv7.a(libyuv_neon.compare_neon64.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv_neon.armv7.a(libyuv_neon.rotate_neon64.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv_neon.armv7.a(libyuv_neon.row_neon64.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv_neon.armv7.a(libyuv_neon.scale_neon64.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv_neon.armv7s.a(libyuv_neon.compare_neon64.armv7s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv_neon.armv7s.a(libyuv_neon.rotate_neon64.armv7s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv_neon.armv7s.a(libyuv_neon.row_neon64.armv7s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv_neon.armv7s.a(libyuv_neon.scale_neon64.armv7s.o) has no symbols
[211/294] LIBTOOL-STATIC libyuv.a, POSTBUILDS
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv.armv7.a(libyuv.compare_posix.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv.armv7.a(libyuv.compare_win.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv.armv7.a(libyuv.convert_jpeg.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv.armv7.a(libyuv.mjpeg_decoder.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv.armv7.a(libyuv.rotate_mips.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv.armv7.a(libyuv.row_mips.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv.armv7.a(libyuv.row_posix.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv.armv7.a(libyuv.row_win.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv.armv7.a(libyuv.scale_mips.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv.armv7.a(libyuv.scale_posix.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7 file:
arch/libyuv.armv7.a(libyuv.scale_win.armv7.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv.armv7s.a(libyuv.compare_posix.armv7s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv.armv7s.a(libyuv.compare_win.armv7s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv.armv7s.a(libyuv.convert_jpeg.armv7s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv.armv7s.a(libyuv.mjpeg_decoder.armv7s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv.armv7s.a(libyuv.rotate_mips.armv7s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv.armv7s.a(libyuv.row_mips.armv7s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv.armv7s.a(libyuv.row_posix.armv7s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv.armv7s.a(libyuv.row_win.armv7s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv.armv7s.a(libyuv.scale_mips.armv7s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv.armv7s.a(libyuv.scale_posix.armv7s.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/u
sr/bin/libtool: for architecture: armv7s file:
arch/libyuv.armv7s.a(libyuv.scale_win.armv7s.o) has no symbols
[294/294] STAMP libyuv_unittest.app
Original comment by fbarch...@google.com
on 13 Oct 2014 at 9:10
Fixed in r1120
Builds with xcode 5.1.1 on ios.
Original comment by fbarch...@google.com
on 14 Oct 2014 at 12:27
Apple may require 64 bit shortly
http://www.engadget.com/2014/10/20/apple-to-require-64-bit-ios-apps/
Original comment by fbarch...@google.com
on 21 Oct 2014 at 3:32
Original issue reported on code.google.com by
fbarch...@google.com
on 10 Sep 2014 at 5:23