mirror of
https://github.com/webmproject/libwebp.git
synced 2024-11-20 04:18:26 +01:00
fix iOS arm64 build with Xcode 6.3
the standard vtbl functions are available there [1][2]. based on a patch from: aaroncrespo fixes issue #243. [1] http://adcdownload.apple.com//Developer_Tools/Xcode_6.3_beta/Xcode_6.3_beta_Release_Notes.pdf [2] Apple LLVM Compiler Version 6.1 - Xcode 6.3 updates the Apple LLVM compiler to version 6.1.0. [...] Support for the arm64 architecture has been significantly revised to align with ARM's implementation, where the most visible impact is that a few of the vector intrinsics have changed to match ARM's specifications. Change-Id: I79a0016f44b9dbe36d0373f7f00a50ab3c2ca447
This commit is contained in:
parent
2382050748
commit
602a00f93f
@ -856,9 +856,10 @@ static int QuantizeBlock(int16_t in[16], int16_t out[16],
|
||||
const int16x8_t out0 = Quantize(in, mtx, 0);
|
||||
const int16x8_t out1 = Quantize(in, mtx, 8);
|
||||
uint8x8x4_t shuffles;
|
||||
// vtbl4_u8 is marked unavailable for iOS arm64, use wider versions there.
|
||||
// vtbl?_u8 are marked unavailable for iOS arm64 with Xcode < 6.3, use
|
||||
// non-standard versions there.
|
||||
#if defined(__APPLE__) && defined(__aarch64__) && \
|
||||
defined(__apple_build_version__)
|
||||
defined(__apple_build_version__) && (__apple_build_version__< 6020037)
|
||||
uint8x16x2_t all_out;
|
||||
INIT_VECTOR2(all_out, vreinterpretq_u8_s16(out0), vreinterpretq_u8_s16(out1));
|
||||
INIT_VECTOR4(shuffles,
|
||||
|
@ -259,9 +259,10 @@ static uint32_t Predictor13(uint32_t left, const uint32_t* const top) {
|
||||
//------------------------------------------------------------------------------
|
||||
// Subtract-Green Transform
|
||||
|
||||
// vtbl?_u8 are marked unavailable for iOS arm64, use wider versions there.
|
||||
// vtbl?_u8 are marked unavailable for iOS arm64 with Xcode < 6.3, use
|
||||
// non-standard versions there.
|
||||
#if defined(__APPLE__) && defined(__aarch64__) && \
|
||||
defined(__apple_build_version__)
|
||||
defined(__apple_build_version__) && (__apple_build_version__< 6020037)
|
||||
#define USE_VTBLQ
|
||||
#endif
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user