Focus disabled optimizations on just BGRAConvolve2D, and only 32-bit.
Last CL accidentally disabled autovectorization on 64-bit builds too. This fixes that. BUG=skia:2575 R=rmistry@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/353823005
This commit is contained in:
parent
3da21d2b62
commit
2b8a3b8f26
@ -31,11 +31,6 @@
|
||||
],
|
||||
'msvs_disabled_warnings': [4244, 4267,4345, 4390, 4554, 4800],
|
||||
'conditions': [
|
||||
[ 'skia_arch_type == "x86"', {
|
||||
# GCC autovectorization makes some GMs flaky on 32-bit release builds.
|
||||
# skbug.com/2575. This bug is likely somewhere here in src/core.
|
||||
'cflags': [ '-fno-tree-vectorize' ]
|
||||
}],
|
||||
[ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "chromeos"]', {
|
||||
'link_settings': {
|
||||
'libraries': [
|
||||
|
@ -330,6 +330,11 @@ const SkConvolutionFilter1D::ConvolutionFixed* SkConvolutionFilter1D::GetSingleF
|
||||
return &fFilterValues[filter.fDataLocation];
|
||||
}
|
||||
|
||||
// There's a bug somewhere in here with GCC autovectorization (-ftree-vectorize) on 32 bit builds.
|
||||
// Dropping to -O2 disables -ftree-vectorize. http://skbug.com/2575
|
||||
#if defined(__i386) && SK_HAS_ATTRIBUTE(optimize)
|
||||
__attribute__((optimize("O2")))
|
||||
#endif
|
||||
void BGRAConvolve2D(const unsigned char* sourceData,
|
||||
int sourceByteRowStride,
|
||||
bool sourceHasAlpha,
|
||||
|
Loading…
Reference in New Issue
Block a user