Djordje Pesut
0f595db60c
MIPS: dspr2: Added optimization for some convert functions
...
affected functions:
VP8LConvertBGRAToRGB_C
VP8LConvertBGRAToRGBA_C
Change-Id: I5f25795c385688f2432d0710296e589f3793cb2b
2015-02-23 17:44:06 +01:00
Djordje Pesut
8a218b4a96
MIPS: [mips32|dspr2]: GetResidualCost rebased
...
Change-Id: Ie15524c773f7a8c79e002097881a508187ca7cc6
2015-02-23 10:43:42 +01:00
Vikas Arora
ef98750027
Speedup method StoreImageToBitMask by 5%.
...
Speedup method StoreImageToBitMask by replacing the code to find histogram
index and Huffman tree codes at every iteration to a more optimal code that
updates these only when the current pixel (to write) crosses the histogram
tile-row boundary.
This change speeds up the StoreImageToBitMask method by 5%.
Change-Id: If01a1ccd7820f9a3a3e5bc449d070defa51be14b
2015-02-20 09:46:19 -08:00
James Zern
602a00f93f
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
2015-02-19 12:16:58 -08:00
Pascal Massimino
2382050748
1-2% faster encoding by removing an indirection in GetResidualCost()
...
The MIPS code for cost is not updated yet, that's why i keep Residual::*cost
around for now. Should be removed in favor of *costs later.
Change-Id: Id1d09a8c37ea8c5b34ad5eb8811d6a3ec6c4d89f
2015-02-19 08:44:35 +01:00
Djordje Pesut
eddb7e70be
MIPS: dspr2: added otpimization for DC8uv, DC8uvNoTop and DC8uvNoLeft
...
added macros for load/store
Change-Id: I151d4d49bf1fab87fc3a82cb8e8e0835fe10b690
2015-02-18 18:24:10 +01:00
Djordje Pesut
73ba29158f
MIPS: dspr2: added optimization for functions RD4 and LD4
...
Change-Id: I71216c1300f4eb254de4ae940ea9dcdba50aa080
2015-02-18 15:11:34 +01:00
Pascal Massimino
c7129da5b6
Merge "4-5% faster encoding using SSE2 for GetResidualCost"
2015-02-18 04:46:53 -08:00
Djordje Pesut
94380d00d9
MIPS: dspr2: added optimizaton for functions VE4 and DC4
...
Change-Id: I118adc6d3872742d8b1f9dbac438cba6fc90b7a9
2015-02-18 11:25:08 +01:00
Pascal Massimino
2a407092ab
4-5% faster encoding using SSE2 for GetResidualCost
...
new file: cost_sse2.c
Change-Id: I4896c07f5ff2443ef743f4435fe2758d95a672ed
2015-02-18 09:41:02 +01:00
James Zern
17e1986214
Merge "MIPS: dspr2: added optimization for simple filtering functions"
2015-02-17 14:57:05 -08:00
pascal massimino
3ec404c47a
Merge "dsp: normalize WEBP_TSAN_IGNORE_FUNCTION usage"
2015-02-14 01:57:08 -08:00
James Zern
b969f5dfac
dsp: normalize WEBP_TSAN_IGNORE_FUNCTION usage
...
the attribute is only necessary in one location; remove it from the
prototypes.
Change-Id: I3820a3c34fbb029fd7ac69a1b0a9b76091bdbde2
2015-02-13 15:23:40 -08:00
Djordje Pesut
d7b8e71126
MIPS: dspr2: added optimization for simple filtering functions
...
affected functions: SimpleVFilter16, SimpleHFilter16,
SimpleVFilter16i and SimpleHFilter16i
noticed bug in FilterLoop26 (fix included in this patch)
Change-Id: I72d9c1e45cbac6393eba52bb549b04924d463e30
2015-02-13 11:18:43 +01:00
pascal massimino
235f774e5f
Merge "MIPS: dspr2: Added optimization for function VP8LTransformColorInverse_C"
2015-02-13 00:12:52 -08:00
Djordje Pesut
42a8a6280c
MIPS: dspr2: Added optimization for function VP8LTransformColorInverse_C
...
Change-Id: I8b60e22c9f6c0badab6267a33751dfc28750f457
2015-02-13 08:57:20 +01:00
pascal massimino
b442bef320
Merge "ApplyFiltersAndEncode: only copy lossless stats"
2015-02-12 23:47:55 -08:00
James Zern
b510fbfe3b
doc/webp-container-spec: note MSB order for chunk diagrams
...
addresses question in issue #241
Change-Id: Iff6a172d5822f6ec8b9bc0951a1c9cd3f98c9251
2015-02-12 20:18:58 -08:00
James Zern
9bc0f922aa
ApplyFiltersAndEncode: only copy lossless stats
...
this avoids a race with multi-threaded lossy + alpha compression
Change-Id: Ie437105f5a899ed28b9c8885b6ca5431092ce8f5
2015-02-12 19:44:25 -08:00
James Zern
3030f11525
Merge "dsp/mips: add some missing TSan annotations"
2015-02-12 14:55:32 -08:00
pascal massimino
dfcf4593fe
Merge "MIPS: dspr2: Added optimization for function VP8LAddGreenToBlueAndRed_C"
2015-02-12 14:48:17 -08:00
James Zern
55c75a25f0
dsp/mips: add some missing TSan annotations
...
Change-Id: I3c832aefdeac26c6c75c35b19b45c1a2f67493c5
2015-02-12 14:36:33 -08:00
Djordje Pesut
2cb879f0c6
MIPS: dspr2: Added optimization for function VP8LAddGreenToBlueAndRed_C
...
Change-Id: If897c6c2f1c4b8405789298e135d6a1e4bf13012
2015-02-12 09:06:49 +01:00
James Zern
e15560107c
move some cost tables from enc/ to dsp/
...
removes circular dependency between dsp and enc.
since:
a987fae
MIPS: dspr2: added optimization for function GetResidualCost
Change-Id: Ifeb8fc02de89e2ba982ed7ffacd925d649bfec3c
2015-02-11 16:10:06 -08:00
pascal massimino
c3a031686a
Merge "picture_csp: fix build w/USE_GAMMA_COMPRESSION undefined"
2015-02-10 00:09:03 -08:00
pascal massimino
39537d7cfe
Merge "VP8LDspInitMIPSdspR2: add missing TSan annotation"
2015-02-10 00:02:41 -08:00
James Zern
1dd419ced5
picture_csp: fix build w/USE_GAMMA_COMPRESSION undefined
...
kGammaFix is now only defined with USE_GAMMA_COMPRESSION;
fixes:
use of undeclared identifier 'kGammaFix'
Change-Id: Ib1e2f410eff9b83be065894f88181f91dd2776e1
2015-02-09 23:57:14 -08:00
James Zern
43fd3543df
VP8LDspInitMIPSdspR2: add missing TSan annotation
...
Change-Id: Ic0d84e95daf063976b40fb5ba1e94d3547e2afba
2015-02-09 23:55:30 -08:00
pascal massimino
c7233dfcdc
Merge "VP8LDspInit: remove memcpy"
2015-02-09 23:48:44 -08:00
James Zern
0ec4da960d
picture_csp::InitGammaTables*: add missing TSan annotations
...
Change-Id: I66ca5b3e7b1614f861a9b68bd437f58b24cb1ebb
2015-02-09 23:44:47 -08:00
James Zern
35579a4902
VP8LDspInit: remove memcpy
...
without this change the TSan annotation is useless
Change-Id: Ief511379f3aad75889815d4fe8362aed5c1abac7
2015-02-09 23:41:24 -08:00
James Zern
97f6aff874
VP8YUVInit: add missing TSan annotation
...
Change-Id: I7f8868de425e1aac3721b3e328844725104d14db
2015-02-09 22:50:31 -08:00
James Zern
f9016d6662
dsp/enc::InitTables: add missing TSan annotation
...
Change-Id: I262b9071417a0ec502c7c0380f27da6413cc74e4
2015-02-09 22:40:45 -08:00
James Zern
e3d9771aa1
VP8EncDspCostInit*: add missing TSan annotations
...
Change-Id: I4cdb84bc8c9a8c6aa34b5773c8fb69e5810a9809
2015-02-09 22:39:14 -08:00
James Zern
d97c143da6
Merge "doc/webp-container-spec: cosmetics"
2015-02-09 14:37:45 -08:00
Djordje Pesut
309b790867
MIPS: mips32: Added optimization for function SetResidualCoeffs
...
Change-Id: If67c10285df71ba7dd1aff6c24c2145c280dd2bf
2015-02-09 13:17:49 +01:00
Pascal Massimino
a987faedfa
MIPS: dspr2: added optimization for function GetResidualCost
...
set/get residual C functions moved to new file in src/dsp
mips32 version of GetResidualCost moved to new file
Change-Id: I7cebb7933a89820ff28c187249a9181f281081d2
2015-02-07 02:13:26 -08:00
James Zern
e7d3df2314
doc/webp-container-spec: cosmetics
...
partially normalize indent, vertical whitespace and capitalization with
the copy used on developers.google.com/speed/webp
Change-Id: I8044418eeb9eaf5bd5c799675c74f6f845d503d6
2015-02-06 15:18:32 -08:00
pascal massimino
be6635e91d
Merge "VP8TBufferClear: remove some misleading const's"
2015-02-06 02:01:15 -08:00
pascal massimino
02971e7228
Merge "VP8EmitTokens: remove unnecessary param void cast"
2015-02-06 02:00:16 -08:00
James Zern
3b77e5a735
VP8TBufferClear: remove some misleading const's
...
the input to the function is non-const and the pointer being operated is
being free'd; removes an unnecessary cast in the process
Change-Id: Ic515ed672ddf7f8e4e36eeac696ff7aa8a3652f7
2015-02-05 23:56:26 -08:00
James Zern
aa139c8f1a
VP8EmitTokens: remove unnecessary param void cast
...
'final_pass' is used within the function
Change-Id: I81be1a6e18cafaa6ae685ed8ad2b107fa7ed29cf
2015-02-05 23:56:26 -08:00
James Zern
c24d8f144f
cosmetics: upsampling_sse2: add const to some casts
...
source pointers are often cast to __m128*, retain the const in those
cases
Change-Id: Ia6df6690c85f580b20f19ce85cc6ec7b52620aee
2015-02-05 23:51:57 -08:00
James Zern
1829c42c58
cosmetics: lossless_sse2: add const to some casts
...
source pointers are often cast to __m128*, retain the const in those
cases
Change-Id: I2405b18c6bb829b76c3a9814057ccbe6e14220d9
2015-02-05 23:51:44 -08:00
James Zern
183168f332
cosmetics: enc_sse2: add const to some casts
...
source pointers are often cast to __m128*, retain the const in those
cases
Change-Id: Ib85d63abbb9fc33096f893c2524d3ce8ae3ebd03
2015-02-05 23:51:29 -08:00
James Zern
860badcacc
cosmetics: dec_sse2: add const to some casts
...
source pointers are often cast to __m128*, retain the const in those
cases
Change-Id: I77decb55f1382bea4b646a11b77dfa40bf1ef94d
2015-02-05 23:51:16 -08:00
James Zern
0254db9793
cosmetics: argb_sse2: add const to some casts
...
source pointers are often cast to __m128*, retain the const in those
cases
Change-Id: I87fa2de11dafcc77767aab64e13b8c5585ebf5cd
2015-02-05 23:51:07 -08:00
James Zern
1aadf856c9
cosmetics: alpha_processing_sse2: add const to some casts
...
source pointers are often cast to __m128*, retain the const in those
cases
Change-Id: I00ba15af2f43d125ceb2620e82fd43d420fbb9d3
2015-02-05 23:50:39 -08:00
James Zern
1579de3cae
vwebp: clear canvas at the beginning of each loop
...
this is in line with the recommendation in the spec, cf.,
5603947
webp-container-spec: clarify background clear on loop
Change-Id: Id3910395b05a1a1f2804be841b61f97bd4bac593
2015-02-05 22:52:09 -08:00
pascal massimino
4b9fa5d0e2
Merge "webp-container-spec: clarify background clear on loop"
2015-02-05 14:44:27 -08:00