ruil2
325c63d0ca
Merge pull request #1047 from mstorsjo/cpufeatures-armv8
...
Update the generic 32 bit arm linux cpu feature detection to support 64 bit kernels
2014-07-01 14:53:52 +08:00
Martin Storsjö
04c6c95577
Update the generic 32 bit arm linux cpu feature detection to support 64 bit kernels
...
On 64 bit kernels, /proc/cpuinfo doesn't list the same old features
as on 32 bit kernels, since most of them are mandatory on 64 bit arm
systems, see [1] for details.
If running a 32 bit arm binary on such a kernel, we need to detect
the features slightly differently, either by using other names
listed in the Features field on these devices, by checking the
"CPU architecture" field and always enabling these if the architecture
is >= 8, or by parsing /proc/self/auxv or using the getauxval function.
[1] http://marc.info/?l=linux-arm-kernel&m=139087240101974
2014-06-30 09:51:49 +03:00
Martin Storsjö
4af37a7d21
Move common tables and definitions into the common library
2014-06-30 09:03:10 +03:00
zhilwang
2b038fa73b
Merge pull request #1037 from mstorsjo/unify-align-macros
...
Unify macros for alignment
2014-06-30 10:09:05 +08:00
zhilwang
1780a81a1d
Merge pull request #1042 from mstorsjo/avoid-ios-build-warnings
...
Avoid warnings when building for iOS
2014-06-30 10:06:52 +08:00
zhilwang
eb221eb3d1
Merge pull request #1030 from mstorsjo/cpuid-32bit-param
...
Don't load undefined bits into rcx before calling the cpuid instruction
2014-06-30 10:05:26 +08:00
zhilwang
58349156b1
Merge pull request #1035 from mstorsjo/aarch64-cpufeatures
...
Implement WelsCPUFeatureDetect for AArch64
2014-06-30 10:04:03 +08:00
Martin Storsjö
68b4b09ae6
Don't load undefined bits into rcx before calling the cpuid instruction
...
The pFeatureC pointer is an uint32_t pointer, therefore only
load 32 bits into ecx.
This avoids loading potentially uninitialized data into the upper
half of the rcx register, fixing valgrind warnings in some build
setups (depending on how the compiler chooses to layout the stack
in the calling function).
2014-06-29 20:46:55 +03:00
Martin Storsjö
b5407915cc
Avoid warnings when building for iOS
...
Get rid of warnings by avoiding mixing data types unnecessarily,
and by adding casts.
2014-06-29 16:03:34 +03:00
Martin Storsjö
263833b3bf
Remove the now unused macros __align16, ALIGNED_DECLARE_MATRIX_1D and ALIGNED_DECLARE_MATRIX_2D
2014-06-29 00:36:29 +03:00
Martin Storsjö
66deed24b8
Implement WelsCPUFeatureDetect for AArch64
...
Previously it actually didn't return any cpu flags at all.
2014-06-27 23:57:42 +03:00
Martin Storsjö
b406f4471a
Fix a typo in arm64 assembly macros, ARCH64 -> AARCH64
2014-06-27 23:52:20 +03:00
ruil2
1ffcd36c70
change void* to explicit type definition
2014-06-27 11:34:47 +08:00
huili2
dc3fae4477
astyle all
2014-06-25 18:50:41 -07:00
Haibo Zhu
daf67d607f
add win 64 warnings remove
2014-06-19 18:31:39 -07:00
Martin Storsjö
720f8dcc52
Fix building the deblocking aarch64 assembly with gnu binutils
2014-06-17 10:10:50 +03:00
Martin Storsjö
b9477cdb94
Unify the copyright header in the aarch64 deblocking assembly
...
This file was the only one that had a differently formatted
copyright header.
2014-06-17 10:02:57 +03:00
Martin Storsjö
062937ac5a
Unify the indentation of the new aarch64 assembly
2014-06-17 10:01:23 +03:00
Martin Storsjö
d15534ecb8
Get rid of mixed tabs and spaces in the aarch64 assembly
2014-06-17 10:00:07 +03:00
ruil2
1111757977
Merge pull request #967 from dongzha/Deblock_AArch64
...
add arm 64 deblock code and Unit Test code
2014-06-16 17:19:25 +08:00
huili2
91cd93e5d0
Merge pull request #962 from dongzha/UseIntInRC
...
Use Int instead of Double in Rate Control and Modify anchor SHA1 value
2014-06-13 10:59:50 +08:00
dongzha
f6ce43f83b
Use Int instead of Double in Rate Control and Modify anchor SHA1 value
2014-06-12 17:30:13 +08:00
ruil2
44b048edd6
move trace related info to interface header
2014-06-11 17:05:40 +08:00
Martin Storsjö
dc91e0958b
Integrate the lone function from logging.cpp into welsCodecTrace.cpp
2014-06-11 08:08:56 +03:00
Martin Storsjö
6e5f31214a
Add a method for overriding the logging function in welsCodecTrace
2014-06-11 08:08:56 +03:00
Martin Storsjö
ce8065fe68
Don't use global variables in welsCodecTrace
...
This allows actually honoring the requested log level
properly if there are multiple codec instances within
the same process.
2014-06-11 08:08:56 +03:00
Martin Storsjö
cb5ee6c239
Remove the global log callback function
...
Now all logging should use a non-null log context, allowing to
pass the messages to the right recipient.
2014-06-11 08:08:56 +03:00
Martin Storsjö
8bac9315e6
Expose a SLogContext from welsCodecTrace
2014-06-11 08:08:29 +03:00
Martin Storsjö
4e428ab020
Add a log context to the encoder and decoder contexts
...
This will allow setting non-global logging callbacks, that
are different for each encoder or decoder instance.
2014-06-11 08:08:29 +03:00
Martin Storsjö
c8b81b4239
Only keep one single trace function pointer in welsCodecTrace
2014-06-11 08:08:29 +03:00
Martin Storsjö
20e889fadb
Change CM_WELS_TRACE to take a plain string, not a format and variadic arguments
...
The format string was always "%s" anyway.
2014-06-11 08:08:29 +03:00
Martin Storsjö
5e22d5366e
Remove the unused level parameter to welsStderrLevelTrace
2014-06-11 08:08:29 +03:00
Martin Storsjö
cfc9367610
Remove WelsStderrSetTraceLevel
...
The logging level is checked in welsCodecTrace anyway.
Previously, error logging wasn't ever shown if the trace
level was set to WELS_LOG_ERROR (as it was by default),
since welsStderrLevelTrace required the message level to
be strictly lower than the trace level.
2014-06-11 08:08:29 +03:00
Martin Storsjö
90be3d8215
Don't treat log levels as a bitmask
...
All use of log levels in the library just do a numerical
greater-than comparison between the set log level and the
level of the current message.
2014-06-11 08:08:29 +03:00
Martin Storsjö
4f1ea1c4f8
Remove some unused typedefs
2014-06-11 08:08:29 +03:00
Martin Storsjö
cc65a1d76c
Don't include a [ENCODER]: prefix in all logging
...
The same trace module is used for the decoder now as well.
2014-06-10 10:52:26 +03:00
Martin Storsjö
17fc6bd66e
Remove the unnecessary method WelsTraceModuleIsExist(), which always returned true
2014-06-10 10:52:26 +03:00
Martin Storsjö
d93488448e
Remove some commented out lines
2014-06-10 10:52:26 +03:00
Martin Storsjö
968d87045d
Remove an unnecessary local function
2014-06-10 10:52:26 +03:00
Martin Storsjö
40af75c19d
Remove the unnecessary WelsSet/GetLogLevel functions
...
Nothing actually used the variable that these functions
handled.
2014-06-10 10:52:06 +03:00
Martin Storsjö
ba1de16ac2
Make internal logging variables static
...
This avoids polluting the global namespace.
2014-06-10 09:28:45 +03:00
Martin Storsjö
ab4fe3fdf4
Remove an unused variable
2014-06-10 09:27:54 +03:00
dongzhang
0e0c8b5569
add arm 64 deblock code and Unit Test code
2014-06-10 11:23:51 +08:00
ruil2
4c12f8970c
cleanup trace module
2014-06-10 10:24:45 +08:00
Martin Storsjö
7bc3e944ad
Get rid of uneven spacing after WELS_EXTERN
2014-06-09 11:03:25 +03:00
Martin Storsjö
57f6bcc4b0
Convert all tabs to spaces in assembly sources, unify indentation
...
Previously the assembly sources had mixed indentation consisting
of both spaces and tabs, making it quite hard to read unless
the right tab size was used in the editor.
Tabs have been interpreted as 4 spaces in most cases, matching
the surrounding code.
2014-06-01 01:35:43 +03:00
Martin Storsjö
faaf62afad
Get rid of double spaces in macro declarations
2014-06-01 01:13:01 +03:00
Martin Storsjö
ac03b8b503
Avoid unnecessary tabs in macro declarations
2014-06-01 01:13:01 +03:00
Martin Storsjö
932a38abc0
Reformat the copyright header of deblocking_neon.S
...
This makes it identical to the ones in the other files.
2014-05-31 13:44:21 +03:00
ruil2
14e5d740cd
clean up expand picture.
2014-05-30 11:05:31 +08:00