openh264/codec/common/inc
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
..
copy_mb.h add arm64 MB COPY code and UT 2014-07-08 14:22:14 +08:00
cpu_core.h reoranize common to inc/src/x86/arm 2014-03-18 19:41:32 -07:00
cpu.h reoranize common to inc/src/x86/arm 2014-03-18 19:41:32 -07:00
crt_util_safe_x.h Manually define the SWelsTime struct on unix, don't rely on struct timeb 2014-07-16 21:32:18 +03:00
deblocking_common.h astyle all 2014-06-25 18:50:41 -07:00
expand_pic.h clean up expand picture. 2014-05-30 11:05:31 +08:00
ls_defines.h Add attributes incidating intentional data type aliasing 2014-08-08 11:34:45 +03:00
macros.h Remove the now unused macros __align16, ALIGNED_DECLARE_MATRIX_1D and ALIGNED_DECLARE_MATRIX_2D 2014-06-29 00:36:29 +03:00
mc_common.h Add Motion Compehension ARM64 Neon Code 2014-04-23 13:26:28 +08:00
measure_time.h Remove unused includes of sys/timeb.h 2014-07-16 21:31:07 +03:00
sad_common.h Add Sad arm64 code 2014-05-14 17:06:48 +08:00
typedefs.h add win 64 warnings remove 2014-06-19 18:31:39 -07:00
utils.h add encoder interface ut 2014-07-25 16:40:14 +08:00
version.h version-generate 2014-07-14 23:39:31 -07:00
version.h.template version-generate 2014-07-14 23:39:31 -07:00
wels_common_defs.h Move common tables and definitions into the common library 2014-06-30 09:03:10 +03:00
welsCodecTrace.h move trace related info to interface header 2014-06-11 17:05:40 +08:00
WelsThreadLib.h Remove the unused function WelsSleep 2014-04-01 11:18:48 +03:00