qiqian / webp

Automatically exported from code.google.com/p/webp
0 stars 0 forks source link

upsampling_neon.c fails to build with Apple (IOS) / armv7 toolchain #140

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
$ git describe
v0.2.1-192-gf112221

From ios-build.sh at least iPhoneOS-V7 fails to build:

iOS SDK Version 5.1
+ export 
DEVROOT=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/D
eveloper
+ 
DEVROOT=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/D
eveloper
+ export 
SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/D
eveloper/SDKs/iPhoneOS5.1.sdk
+ 
SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/D
eveloper/SDKs/iPhoneOS5.1.sdk
+ export 'CFLAGS=-arch armv7 -pipe -isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
/SDKs/iPhoneOS5.1.sdk'
+ CFLAGS='-arch armv7 -pipe -isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
/SDKs/iPhoneOS5.1.sdk'
+ export 'CXXFLAGS=-arch armv7 -pipe -isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
/SDKs/iPhoneOS5.1.sdk'
+ CXXFLAGS='-arch armv7 -pipe -isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
/SDKs/iPhoneOS5.1.sdk'
+ export 'LDFLAGS=-arch armv7 -pipe -isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
/SDKs/iPhoneOS5.1.sdk'
+ LDFLAGS='-arch armv7 -pipe -isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
/SDKs/iPhoneOS5.1.sdk'
+ ./configure --host=armv7-apple-darwin --prefix=iosbuild/iPhoneOS-5.1-armv7 
--build=x86_64-apple-darwin12.2.0 --disable-shared --enable-static 
--enable-libwebpdecoder --enable-swap-16bit-csp

---

src/dsp/upsampling_neon.c:69:32: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c: In function 'Upsample16Pixels':
src/dsp/upsampling_neon.c:69: error: 'vst2_u8' undeclared (first use in this 
function)
src/dsp/upsampling_neon.c:69: error: (Each undeclared identifier is reported 
only once
src/dsp/upsampling_neon.c:69: error: for each function it appears in.)
src/dsp/upsampling_neon.c:69:32: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:242:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c: In function 'UpsampleRgbLinePairNEON':
src/dsp/upsampling_neon.c:242: error: 'vst2_u8' undeclared (first use in this 
function)
src/dsp/upsampling_neon.c:242:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:242:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:242:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:242:1: error: macro "vst3_u8" passed 4 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:242: error: 'vst3_u8' undeclared (first use in this 
function)
src/dsp/upsampling_neon.c:242:1: error: macro "vst3_u8" passed 4 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:243:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c: In function 'UpsampleBgrLinePairNEON':
src/dsp/upsampling_neon.c:243: error: 'vst2_u8' undeclared (first use in this 
function)
src/dsp/upsampling_neon.c:243:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:243:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:243:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:243:1: error: macro "vst3_u8" passed 4 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:243: error: 'vst3_u8' undeclared (first use in this 
function)
src/dsp/upsampling_neon.c:243:1: error: macro "vst3_u8" passed 4 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:244:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c: In function 'UpsampleRgbaLinePairNEON':
src/dsp/upsampling_neon.c:244: error: 'vst2_u8' undeclared (first use in this 
function)
src/dsp/upsampling_neon.c:244:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:244:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:244:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:244:1: error: macro "vst4_u8" passed 5 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:244: error: 'vst4_u8' undeclared (first use in this 
function)
src/dsp/upsampling_neon.c:244:1: error: macro "vst4_u8" passed 5 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:245:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c: In function 'UpsampleBgraLinePairNEON':
src/dsp/upsampling_neon.c:245: error: 'vst2_u8' undeclared (first use in this 
function)
src/dsp/upsampling_neon.c:245:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:245:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:245:1: error: macro "vst2_u8" passed 3 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:245:1: error: macro "vst4_u8" passed 5 arguments, but 
takes just 2
src/dsp/upsampling_neon.c:245: error: 'vst4_u8' undeclared (first use in this 
function)
src/dsp/upsampling_neon.c:245:1: error: macro "vst4_u8" passed 5 arguments, but 
takes just 2
make[1]: *** [libwebpdsp_la-upsampling_neon.lo] Error 1

Original issue reported on code.google.com by jz...@chromium.org on 26 Jan 2013 at 2:34

GoogleCodeExporter commented 9 years ago
I didn't look any further into the warnings, just posting to see if it's 
reproducible for others...

Original comment by jz...@google.com on 26 Jan 2013 at 2:35

GoogleCodeExporter commented 9 years ago
This is related to constructs such as:

  vst2_u8(out,      (uint8x8x2_t){{ a, b }});                           \
  vst2_u8(out + 32, (uint8x8x2_t){{ c, d }});                           \

https://code.google.com/p/webp/issues/detail?id=140

Original comment by jz...@google.com on 26 Jan 2013 at 3:41

GoogleCodeExporter commented 9 years ago
This has been fixed.

https://gerrit.chromium.org/gerrit/#/c/42082/

27f8f74 upsampling_neon.c: fix build

Original comment by jz...@google.com on 4 Feb 2013 at 7:28