From d10458c9e27a5901ab2bc74059fde99f7ff3c267 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A5ns=20Rullg=C3=A5rd?= Date: Thu, 18 Feb 2010 13:40:19 +0000 Subject: [PATCH] Add alias-safe union typedefs Originally committed as revision 21877 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavutil/intreadwrite.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/libavutil/intreadwrite.h b/libavutil/intreadwrite.h index 81ba82de5c..57fa83c3a6 100644 --- a/libavutil/intreadwrite.h +++ b/libavutil/intreadwrite.h @@ -22,6 +22,28 @@ #include #include "config.h" #include "bswap.h" +#include "common.h" + +typedef union { + uint64_t u64; + uint32_t u32[2]; + uint16_t u16[4]; + uint8_t u8 [8]; + double f64; + float f32[2]; +} av_alias av_alias64; + +typedef union { + uint32_t u32; + uint16_t u16[2]; + uint8_t u8 [4]; + float f32; +} av_alias av_alias32; + +typedef union { + uint16_t u16; + uint8_t u8 [2]; +} av_alias av_alias16; /* * Arch-specific headers can provide any combination of