Commit Graph

1570 Commits

Author SHA1 Message Date
zhiliang wang
76863f977a Refine asm code format 2014-08-15 08:46:55 +08:00
zhiliang wang
b35f5797de Add x86 32/64bit asm code for Scc_hash 2014-08-14 18:41:52 +08:00
zhiliang wang
dc833e19f4 Add function define and init for SCC hash function 2014-08-14 14:20:07 +08:00
zhiliang wang
f2314151e8 Add x86 32/64bit asm code for SumOfBlocks. 2014-08-13 11:18:39 +08:00
ruil2
493d254a4a merge level table 2014-08-12 09:28:40 +08:00
ruil2
f7cd6e7aad use WelsEnc namespace instead of WelsSVCEnc 2014-08-11 16:08:49 +08:00
ruil2
febb3ebb9b fix an errors that for single slice mode, the number of slices should be 1 2014-08-11 13:58:33 +08:00
ruil2
5948e8af3f Merge pull request #1259 from mstorsjo/fix-singlecpu-tests
Remove a needless, no-op change of the number of threads
2014-08-11 13:31:57 +08:00
Martin Storsjö
2f6a986d7c Remove a needless, no-op change of the number of threads
If kiCpuCores < 2, then iCountThreadsNum (and iMultipleThreadIdc)
can't be >= 2, because they're initialized with
WELS_MIN (kiCpuCores, ...) just a few lines above.

If iMultipleThreadIdc is initially set to 0 by the caller, this
removed piece of code would change it to 1, if kiCpuCores < 2.

When iMultipleThreadIdc is changed from the originally set value,
a call to WelsEncoderParamAdjust with the original parameters
would reset the whole codec since iMultipleThreadIdc differs.

This fixes running EncoderInterfaceTest.TemporalLayerSettingTest
on machines where the detected number of cores is 1.
2014-08-08 22:26:59 +03:00
Martin Storsjö
38d2d64ede Explicitly add .syntax unified when building for iOS
This is the default when building with the clang built-in assembler,
but not if using the external assembler - thus always specify it,
for clarity.

Also use the three-operand for of a sub instruction in BS_NZC_CHECK.
The same is already done in the gnu version of the macro.

This fixes building most of the arm assembly with Apple's external
assembler. While this isn't a necessary goal in itself, there's no
harm in doing this either.
2014-08-08 14:09:37 +03:00
huili2
dacd22d695 Merge pull request #1254 from mstorsjo/alias-attribute
Add attributes incidating intentional data type aliasing, fix GetIntraPredictorTest on android
2014-08-08 17:36:07 +08:00
ruil2
af417b5ae4 re-allocate resource when threadIDC changes 2014-08-08 16:43:38 +08:00
Martin Storsjö
5f0ef6a5a9 Add attributes incidating intentional data type aliasing
Interpreting data of one type via a pointer of a different type is an
aliasing violating. This means that a compiler optimizer's analyzer
can assume that data loaded into an array as uint32_t isn't related
to data read out from the same array as uint64_t, and e.g. reorder
loads/stores.

Since these structs are intentionally used to load data via pointers
of a wrong size, tell the compiler that these accesses may alias
other reads.

This fixes the GetIntraPredictorTest tests of WelsI4x4LumaPredV_c
and WelsI4x4LumaPredH_c. (The compiler optimizer did the wrong thing
as long as WelsFillingPred8to16_c or WelsFillingPred8x2to16_c were
inlined into the calling function.)
2014-08-08 11:34:45 +03:00
HFVideoMac
84f33aa8e4 Disable failed UT and Fix Build Error onAndroid 2014-08-08 10:53:23 +08:00
HFVideoMac
cff49f5e45 add arm 32/64 code and UT for SVC SCC motion estimation 2014-08-06 17:24:36 +08:00
huili2
3aec3a2606 Merge pull request #1245 from zhilwang/processing_sad
Add sad arm64 code to processing.
2014-08-06 09:31:22 +08:00
huili2
0dd0b06287 Merge pull request #1243 from ruil2/comment
add parameter verification
2014-08-05 14:58:01 +08:00
zhiliang wang
3139fe7a88 Add sad arm64 code to processing. 2014-08-05 11:23:38 +08:00
ruil2
5356249100 if dynamic slice mode, this limitation should be removed 2014-08-01 16:10:11 +08:00
ruil2
059e19074a add parameter verification 2014-08-01 12:39:29 +08:00
ruil2
11f0a11177 Merge pull request #1242 from huili2/test_dataformat
setget_dataformat_ut
2014-08-01 12:27:38 +08:00
HaiboZhu
aa41dc43bd Merge pull request #1241 from ruil2/comment
fix typo
2014-07-31 16:52:04 +08:00
ruil2
2ec91a0bbe fix typo 2014-07-31 15:14:10 +08:00
ruil2
f68b0811f0 update recontruct frame output 2014-07-31 15:10:12 +08:00
Martin Storsjö
8c663ffe66 Use the common stdint typedefs in processing as well
This fixes building test/processing/ProcessUT_AdaptiveQuantization.cpp
with MSVC.
2014-07-30 13:53:54 +03:00
huili2
e8fdd4cf75 setget_dataformat_ut 2014-07-28 18:41:58 -07:00
ruil2
eff4b3ae4d add a judgment 2014-07-29 09:37:14 +08:00
Martin Storsjö
ae62909aab Unify the indentation in the new aarch64 assembly files 2014-07-28 09:23:36 +03:00
Martin Storsjö
3240a14baa Add a missing .endm in the gnu version of macros 2014-07-28 09:01:24 +03:00
Martin Storsjö
79276c38dd Clear the executable bit for new arm64 assembly source files 2014-07-28 08:29:01 +03:00
HaiboZhu
39d490b23d Merge pull request #1224 from huili2/ec_flag_modif
modify EC API name and remove useless flag
2014-07-28 13:06:23 +08:00
huili2
933c477717 modify EC API name and remove useless flag 2014-07-27 21:35:26 -07:00
huili2
8e2d92e5c9 Merge pull request #1218 from zhilwang/arm64_vaa
Arm64 vaa
2014-07-28 09:30:16 +08:00
ruil2
e58de20f3a add encoder interface ut 2014-07-25 16:40:14 +08:00
zhilwang
b1a76aa936 Merge pull request #1215 from mstorsjo/x86-asm-noexec-stack
Mark the x86 assembly object files as not requiring an executable stack
2014-07-25 14:15:17 +08:00
zhiliang wang
7932845674 Refine code style. 2014-07-25 14:07:24 +08:00
zhiliang wang
de624c0972 Add arm64 code for vaa. 2014-07-25 14:07:24 +08:00
zhilwang
6ba537bee5 Merge pull request #1203 from dongzha/AddAQArm64
add ARM64 Adaptative Quantization code and UT
2014-07-25 13:46:10 +08:00
ruil2
1c42743999 fix crash bugs that too large size local varialbe will cause stack overflow 2014-07-25 09:55:41 +08:00
ruil2
7624b360f0 Merge pull request #1214 from mstorsjo/use-min-qp
Actually use iMinQp in WelRcPictureInitBufferBasedQp
2014-07-25 09:47:15 +08:00
huili2
a8286234bb Merge pull request #1204 from syureyi/mobile_AT
Mobile at
2014-07-25 08:52:20 +08:00
Martin Storsjö
d5a45ec513 Mark the x86 assembly object files as not requiring an executable stack
This avoids having to add extra linker flags in order to specify this.

This is similar to how this already is handled for the arm assembly.
2014-07-25 00:56:39 +03:00
Martin Storsjö
d215a5f879 Actually use iMinQp in WelRcPictureInitBufferBasedQp
This fixes a warning in certain builds, about the variable iMinQp
being set but not used. This also probably is what was intended originally.
2014-07-25 00:46:35 +03:00
huili2
470246c20f Merge pull request #1195 from mstorsjo/msvc-unify-linker-opts
Set MSVC linker debug options consistently in the project files
2014-07-23 13:29:14 +08:00
HFVideoMac
910c64ef22 add ARM64 Adaptative Quantization code and UT 2014-07-22 15:07:25 +08:00
zhiliang wang
e2425df06c Add arm64 downsample code to processing project 2014-07-22 10:16:55 +08:00
syureyi
9b11f25300 also format the file 2014-07-21 16:26:33 +08:00
syureyi
a555639dd2 check in the code for do codec performance testing on mobile 2014-07-21 15:31:43 +08:00
HFVideoMac
0d1699b67f Add Unit Test and ARM64 code for block_add 2014-07-21 14:37:52 +08:00
zhilwang
9ac7cd2816 Merge pull request #1191 from mstorsjo/merge-encdemo-include-paths
Set the encDemo header paths on the target level
2014-07-18 17:01:46 +08:00