VirtualBox

source: vbox/trunk/src/VBox/GuestHost/OpenGL/util/endian.c@ 24107

Last change on this file since 24107 was 15532, checked in by vboxsync, 16 years ago

crOpenGL: export to OSE

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 585 bytes
Line 
1#include "chromium.h"
2#include "cr_endian.h"
3
4char crDetermineEndianness( void )
5{
6 union {
7 struct {
8 char c1;
9 char c2;
10 char c3;
11 char c4;
12 } c;
13 unsigned int i;
14 } e_test;
15
16 e_test.c.c1 = 1;
17 e_test.c.c2 = 2;
18 e_test.c.c3 = 3;
19 e_test.c.c4 = 4;
20
21 if (e_test.i == 0x01020304)
22 {
23 return CR_BIG_ENDIAN;
24 }
25 return CR_LITTLE_ENDIAN;
26}
27
28double SWAPDOUBLE( double d )
29{
30 CR64BitType *ptr = (CR64BitType *) (&d);
31#ifdef __STDC__
32 CR64BitType swapped;
33 SWAP64( *ptr );
34 swapped = *ptr;
35#else
36 CR64BitType swapped = SWAP64( *ptr );
37#endif
38 return *((double *) (&swapped));
39}
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette