Age | Commit message (Collapse) | Author |
|
BUG=webm:1290
Change-Id: Ia27e58521eba5a4852b50381c56746fa5767f6d6
|
|
Combine test MatchesReferenceSubpixelFilter and
MatchesReferenceAveragingSubpixelFilter.
Change-Id: I75f96befbbb118cdc6b8c6001b4cdda8d88fbbd3
|
|
applied against a x86_64 configure with and without
--enable-vp9-highbitdepth
clang-tidy-3.7.1 \
-checks='-*,google-readability-braces-around-statements' \
-header-filter='.*' -fix
+ clang-format afterward
Change-Id: Ia2993ec64cf1eb3505d3bfb39068d9e44cfbce8d
|
|
Change-Id: I0d9ab85855eb723f653a7bb09b3d0d31dd6cfd2f
|
|
* changes:
configure: remove x86inc.asm distinction
test: remove x86inc.asm distinction
vpx_dsp: remove x86inc.asm distinction
|
|
BUG=b:29583530
Change-Id: I296a0b81755e3086bc0a40cb126d0200ff03c095
|
|
CONVERT_TO_BYTEPTR(x) was corrected in:
003a9d2 Port metric computation changes from nextgenv2
to use the more common (x) within the expansion. offsets should occur
after converting the pointer to the desired type.
+ factorized some common expressions
Change-Id: I171c3faaa5606d098e984baa9aa74bb36042f57f
|
|
Add a cast.
BUG=webm:1225
Change-Id: I34ea18ee816569485c1f1046a81fd2a0ce527ac8
|
|
Add a cast.
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1216
Change-Id: I40627de387bc9cfba37860e7a0a4f2d4524f3431
|
|
Brings f03e238f to master.
Change-Id: I7f7754e7d1288b103a4510303d10afc68a7d8ca8
|
|
Change-Id: Iff8b0d77234f78bf407676891bccad92825bfcc6
|
|
single-threaded:
swanky (silvermont): ~1% faster overall
peppy (celeron,haswell): ~1.5% faster overall
Change-Id: Ib74f014374c63c9eaf2d38191cbd8e2edcc52073
|
|
Change-Id: Iccb4cdc23c1845cf9cb7d69101c9f4f43675d368
|
|
and FUN_CONV_2D macros. The predict lut now handles
this case. The encoder now calls vpx_scaled_2d() instead
of vpx_convolve8() for scaling.
Change-Id: Ia1c8af8a31e4cb4887a587143108cb45835f7df7
|
|
It in essence refactors the code for both the interpolation
filtering and the convolution. This change includes the moving
of all the files as well as the changing of the code from vp9_
prefix to vpx_ prefix accordingly, for underneath architectures:
(1) x86;
(2) arm/neon; and
(3) mips/msa.
The work on mips/drsp2 will be done in a separate change list.
Change-Id: Ic3ce7fb7f81210db7628b373c73553db68793c46
|
|
Change-Id: I9582a8d74990125b71e8fe620f7f3f2585a30798
|
|
This test places 128 in positions that would not be found
in the VP9 filter tables. The ssse3 code packs this table
into chars and uses the pmaddubsw instruction, which treats
the value as signed. The ssse3 code checks for 128 in
position 3, skipping the ssse3 code if found, and calls
vp9_convolve8_c(). vp9_convolve8_c() is also used for scaling.
ChangeFilterWorks breaks the ssse3 scaling code found in other
commits.
Change-Id: I1f5a76834bc35180b9094c48f9421bdb19d3d1cb
|
|
expose filter_kernels[] and do the table lookup directly
Change-Id: I0b10bff0327c3e01a723736141a9ffd377cd3d20
|
|
Change-Id: I374fcd8fb45a6893dcdeac6896671be142a99f06
|
|
average improvement ~4x-6x
Change-Id: I7c8b4f2334491be8a859592606e568bc95d019aa
|
|
average improvement ~5x-8x
Change-Id: I179a69ec620fbd69979bd128f05d18113618aab4
|
|
average improvement ~4x-6x
Change-Id: Ia2e6f770da46416ebec31fdcea5cc7878879a9d9
|
|
Updated sources according to improved version of common MSA macros.
Enabled respective convolve MSA hooks and tests.
Overall, this is just upgrading the code with styling changes.
Change-Id: If5ad6ef8ea7ca47feed6d2fc9f34f0f0e8b6694d
|
|
Done little restructuring/styling changes to the sources like generic macro definitions, their use to reduce code lines, better code alignments etc.
Disabled all MSA hooks and tests
Change-Id: Ic6f2dce0b501f46b80c06c46c0fe2043d557b190
|
|
|
|
average improvement ~3x-5x
Change-Id: I422e4c33ea7e6d6783ba40029438ccf21b0e76bb
|
|
vestigial. replace instances with memcpy() which they already were being
defined to.
Change-Id: Icfd1b0bc5d95b70efab91b9ae777ace1e81d2d7c
|
|
average improvement ~6x-8x
Change-Id: I7c91eec41aada3b0a5231dda7869b3b968f3ad18
|
|
average improvement ~5x-8x
Change-Id: I3214734cb3716e742907ce0d2d7a042d953df82b
|
|
average improvement ~6x-10x
Change-Id: Ie3f3ab3a9005be84935919701e56b404e420affa
|
|
Assembly tests should clear system state, as we have no
expectation of proper system state in between test runs..
Change-Id: I0f591996c1f17ef2a5a8572a6b445f757223a144
|
|
Add vp9_convolve8_neon.c
- vp9_convolve8_horiz_neon
- vp9_convolve8_vert_neon
Change-Id: I0bdd99ff72d275223fe211ac7243c25a5a60cf87
Signed-off-by: James Yu <james.yu@linaro.org>
|
|
Add vp9_convolve8_avg_neon.c
- vp9_convolve8_avg_horiz_neon
- vp9_convolve8_avg_vert_neon
Change-Id: I617971e37b02186fec5aca181f4f9622050ea2df
Signed-off-by: James Yu <james.yu@linaro.org>
|
|
Add vp9_copy_neon.c
- vp9_convolve_copy_neon
Change-Id: I291fc5423d06240876411bbceab03eae5ef585be
Signed-off-by: James Yu <james.yu@linaro.org>
|
|
Add vp9_avg_neon.c
- vp9_convolve_avg_neon
Change-Id: Id2c9d5bcfa37cff1a16417aba1656ff07bdf10fd
Signed-off-by: James Yu <james.yu@linaro.org>
|
|
Change-Id: Ic9438031282e63e627550f7e4cdeda36e43e647b
|
|
Change-Id: I3b5a478d198868c2796366f0ac59d0e2036308b8
|
|
Uses highbd_ prefix convention consistently.
Change-Id: I58f7f799a7ff8e32701bcd71c955bcf1cdd4581e
|
|
Incorporates the WRAPLOW macro into the non-highbitdepth transforms
to aid hardware verification between a software C model and an
intended hardware implementation though the use of the configure
options: --enable-experimental --enable-emulate-hardware.
Note that to avoid further discrepancies between the sse/sse2
implementations of the transforms and the C implementation, when the
emulate hardware option is invoked, we also disable sse/sse2/etc.
Also incudes some minor cleanups/renaming etc.
Change-Id: Ib864d8493313927d429cce402982f1c8e45b3287
|
|
warning: comparison between signed and unsigned integer expressions.
Change-Id: Ib6ee7500fe910983f290fc321ad89c0ab9989455
|
|
Change-Id: Ie51c352a6b250547207cbc1ebba833a01ed053e3
|
|
Adds various high bitdepth transform functions and tests.
Much of the changes are related to using typedefs tran_low_t
and tran_high_t for the final transform cofficients and intermediate
stages of the transform computation respectively rather than fixed
types int16_t/int. When vp9_highbitdepth configure flag is off,
these map tp int16_t/int32_t, but when the flag is on, they map
to int32_t/int64_t to make space for needed extra precision.
Change-Id: I3c56de79e15b904d6f655b62ffae170729befdd8
|
|
If optimizations use more than one cpu feature, allow
specifying them so that '--disable-X' still works
https://code.google.com/p/webm/issues/detail?id=854
Change-Id: I3108ea37b397371a2be84dd5f2380b304db23f18
|
|
A bug in Microsoft compiler was found in the function
vp9_filter_block1d16_v8_avx2 and a workaround applied.
the bug occur when there was 4 consecutive maddubs + min + adds
intrinsic instructions.
Change-Id: I83499faeb70971e650e5663fd2490360ddb1a51b
|
|
_t is reserved by posix
+ switch to camelcase
http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml#Type_Names
Change-Id: I2a22ffc36e9f88781bc7db0d5a28a7ed924bab1a
|
|
used to wrap API functions to ensure full environment consistency as
opposed to the renamed ASM_REGISTER_STATE_CHECK which is used with
assembly functions.
currently checks the FPU tag word in x86/x86_64 gcc builds to ensure
emms has been called.
Change-Id: Ie241772dbf903d33d516a1add4c8c6783f2e1490
|
|
tests failing under Win32/Win64
Change-Id: I5d49d11911bcda3a832b14efe5500d22597bedcf
|
|
This patch turned on unit tests for AVX2 convolve functions.
Change-Id: I51b8bfdaa290fb22862c68af61abf2394d00d47c
|
|
The intepolation filter functions can be better tested withe extreme
values, especially given the optimization functions are prone to
overflow signed 16 bit intermediate value when operation order is
wrong.
Change-Id: I712142b0bc1e5969c692c0486a57ffa37c9742b5
|
|
Change-Id: Id401da740b0a0141caaef9e1bcccd981e5cef4a4
|