Commit 12e0c905 authored by Martin Storsjö's avatar Martin Storsjö Committed by Janne Grunau

arm64: Work around a clang/LLVM misoptimization

This avoids a misoptimization in clang,
https://bugs.llvm.org/show_bug.cgi?id=39550, where the root cause
has been around for a number of years, but a change in LLVM 6.0
allowed for better optimizations, exposing this bug. This bug is
on good track to be fixed in LLVM for the 8.0 release and hopefully
also for backporting into 7.0.1. It is however present in 6.0, 6.0.1
and 7.0, and other downstream users such as Xcode 10.0/10.1.
parent 241dafa0
......@@ -301,8 +301,8 @@ static INLINE int is_global_mv_block(const MB_MODE_INFO *const mbmi,
const BLOCK_SIZE bsize = mbmi->sb_type;
const int block_size_allowed =
AOMMIN(block_size_wide[bsize], block_size_high[bsize]) >= 8;
return (mode == GLOBALMV || mode == GLOBAL_GLOBALMV) && type > TRANSLATION &&
block_size_allowed;
return block_size_allowed && type > TRANSLATION &&
(mode == GLOBALMV || mode == GLOBAL_GLOBALMV);
}
typedef struct {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment