(iOS) Take out forcibly hacking out all ARM ASM code for iOS port

This commit is contained in:
twinaphex 2014-05-10 23:37:01 +02:00
parent 2a65fd9067
commit b5d1e9aa83
3 changed files with 7 additions and 8 deletions

View File

@ -379,7 +379,7 @@ static void process_sinc(rarch_sinc_resampler_t *resamp, float *out_buffer)
// movehl { X, R, X, L } == { X, R, X, R }
_mm_store_ss(out_buffer + 1, _mm_movehl_ps(sum, sum));
}
#elif defined(HAVE_NEON) && !defined(__MACH__)
#elif defined(HAVE_NEON)
#if SINC_COEFF_LERP
#error "NEON asm does not support SINC lerp."
@ -473,7 +473,7 @@ static void *resampler_sinc_new(double bandwidth_mod)
}
// Be SIMD-friendly.
#if (defined(__AVX__) && ENABLE_AVX) || defined(HAVE_NEON) && !defined(__MACH__)
#if (defined(__AVX__) && ENABLE_AVX) || defined(HAVE_NEON)
re->taps = (re->taps + 7) & ~7;
#else
re->taps = (re->taps + 3) & ~3;
@ -499,7 +499,7 @@ static void *resampler_sinc_new(double bandwidth_mod)
RARCH_LOG("Sinc resampler [AVX]\n");
#elif defined(__SSE__)
RARCH_LOG("Sinc resampler [SSE]\n");
#elif defined(HAVE_NEON) && !defined(__MACH__)
#elif defined(HAVE_NEON)
unsigned cpu = rarch_get_cpu_features();
process_sinc_func = cpu & RETRO_SIMD_NEON ? process_sinc_neon : process_sinc_C;
RARCH_LOG("Sinc resampler [%s]\n", cpu & RETRO_SIMD_NEON ? "NEON" : "C");

View File

@ -140,7 +140,7 @@ void audio_convert_float_to_s16_altivec(int16_t *out,
else
audio_convert_float_to_s16_C(out, in, samples);
}
#elif defined(HAVE_NEON) && !defined(__MACH__)
#elif defined(HAVE_NEON)
void audio_convert_s16_float_asm(float *out, const int16_t *in, size_t samples, const float *gain); // Avoid potential hard-float/soft-float ABI issues.
static void audio_convert_s16_to_float_neon(float *out, const int16_t *in, size_t samples,
float gain)
@ -264,7 +264,7 @@ void audio_convert_float_to_s16_ALLEGREX(int16_t *out,
void audio_convert_init_simd(void)
{
#if defined HAVE_NEON && !defined(__MACH__)
#if defined HAVE_NEON
unsigned cpu = rarch_get_cpu_features();
audio_convert_s16_to_float_arm = cpu & RETRO_SIMD_NEON ?
audio_convert_s16_to_float_neon : audio_convert_s16_to_float_C;

View File

@ -275,7 +275,8 @@ static uint64_t xgetbv_x86(uint32_t index)
}
#endif
#if defined(HAVE_NEON) && !defined(__MACH__)
#if defined(HAVE_NEON)
/* TODO/FIX - does this work on iOS? */
static void arm_enable_runfast_mode(void)
{
// RunFast mode. Enables flush-to-zero and some floating point optimizations.
@ -425,9 +426,7 @@ uint64_t rarch_get_cpu_features(void)
RARCH_LOG("[CPUID]: NEON: %u\n", !!(cpu & RETRO_SIMD_NEON));
#elif defined(HAVE_NEON)
cpu |= RETRO_SIMD_NEON;
#ifndef __MACH__
arm_enable_runfast_mode();
#endif
RARCH_LOG("[CPUID]: NEON: %u\n", !!(cpu & RETRO_SIMD_NEON));
#elif defined(__ALTIVEC__)
cpu |= RETRO_SIMD_VMX;