ObjFW  Diff

Differences From Artifact [92c862e4a0]:

To Artifact [0c7fd6a945]:


43
44
45
46
47
48
49

50

51
52



53

54
55
56
57



58

59
60
61
62
63
64
65
66

67
68
69
70
71
72
73
# elif defined(__ppc__) || defined(__PPC__)
#  define OF_PPC_ASM
# elif defined(__arm__) || defined(__ARM__)
#  define OF_ARM_ASM
# endif
#endif


#define OF_BSWAP16_CONST(i)					\

	(((uint16_t)(i) & UINT16_C(0xFF00)) >> 8 |		\
	 ((uint16_t)(i) & UINT16_C(0x00FF)) << 8)



#define OF_BSWAP32_CONST(i)					\

	(((uint32_t)(i) & UINT32_C(0xFF000000)) >> 24 |		\
	 ((uint32_t)(i) & UINT32_C(0x00FF0000)) >>  8 |		\
	 ((uint32_t)(i) & UINT32_C(0x0000FF00)) <<  8 |		\
	 ((uint32_t)(i) & UINT32_C(0x000000FF)) << 24)



#define OF_BSWAP64_CONST(i)					\

	(((uint64_t)(i) & UINT64_C(0xFF00000000000000)) >> 56 |	\
	 ((uint64_t)(i) & UINT64_C(0x00FF000000000000)) >> 40 |	\
	 ((uint64_t)(i) & UINT64_C(0x0000FF0000000000)) >> 24 |	\
	 ((uint64_t)(i) & UINT64_C(0x000000FF00000000)) >>  8 |	\
	 ((uint64_t)(i) & UINT64_C(0x00000000FF000000)) <<  8 |	\
	 ((uint64_t)(i) & UINT64_C(0x0000000000FF0000)) << 24 |	\
	 ((uint64_t)(i) & UINT64_C(0x000000000000FF00)) << 40 |	\
	 ((uint64_t)(i) & UINT64_C(0x00000000000000FF)) << 56)


static OF_INLINE uint16_t
OF_BSWAP16_NONCONST(uint16_t i)
{
#if defined(OF_X86_ASM) || defined(OF_AMD64_ASM)
	__asm__ ("xchgb	%h0, %b0" : "=Q"(i) : "0"(i));
#elif defined(OF_PPC_ASM)







>
|
>
|
|
>
>
>
|
>
|
|
|
|
>
>
>
|
>
|
|
|
|
|
|
|
|
>







43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# elif defined(__ppc__) || defined(__PPC__)
#  define OF_PPC_ASM
# elif defined(__arm__) || defined(__ARM__)
#  define OF_ARM_ASM
# endif
#endif

static OF_INLINE uint16_t
OF_BSWAP16_CONST(uint16_t i)
{
	return (i & UINT16_C(0xFF00)) >> 8 |
	    (i & UINT16_C(0x00FF)) << 8;
}

static OF_INLINE uint32_t
OF_BSWAP32_CONST(uint32_t i)
{
	return (i & UINT32_C(0xFF000000)) >> 24 |
	    (i & UINT32_C(0x00FF0000)) >>  8 |
	    (i & UINT32_C(0x0000FF00)) <<  8 |
	    (i & UINT32_C(0x000000FF)) << 24;
}

static OF_INLINE uint64_t
OF_BSWAP64_CONST(uint64_t i)
{
	return (i & UINT64_C(0xFF00000000000000)) >> 56 |
	    (i & UINT64_C(0x00FF000000000000)) >> 40 |
	    (i & UINT64_C(0x0000FF0000000000)) >> 24 |
	    (i & UINT64_C(0x000000FF00000000)) >>  8 |
	    (i & UINT64_C(0x00000000FF000000)) <<  8 |
	    (i & UINT64_C(0x0000000000FF0000)) << 24 |
	    (i & UINT64_C(0x000000000000FF00)) << 40 |
	    (i & UINT64_C(0x00000000000000FF)) << 56;
}

static OF_INLINE uint16_t
OF_BSWAP16_NONCONST(uint16_t i)
{
#if defined(OF_X86_ASM) || defined(OF_AMD64_ASM)
	__asm__ ("xchgb	%h0, %b0" : "=Q"(i) : "0"(i));
#elif defined(OF_PPC_ASM)