Hello,

This is the equivalent to <byteswap.h> and bswap_32(x) on Linux.

-- 
Jean-Sébastien Pédron
From 48fd41784d4c39059c68ecfc4e01197555ec48dc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-S=C3=A9bastien=20P=C3=A9dron?=
 <jean-sebast...@yakaz.com>
Date: Fri, 14 Jun 2013 17:39:31 +0200
Subject: [PATCH 9/9] Use <sys/endian.h> and bswap32(x) on FreeBSD

This replaces <byteswap.h> and bswap_32(x) on Linux.
---
 src/gallium/drivers/r600/r600_asm.c          | 5 +++++
 src/gallium/drivers/r600/r600_shader.c       | 5 +++++
 src/gallium/drivers/r600/r600_state_common.c | 5 +++++
 src/gallium/drivers/radeonsi/r600_buffer.c   | 5 +++++
 src/mesa/main/compiler.h                     | 3 +++
 5 files changed, 23 insertions(+)

diff --git a/src/gallium/drivers/r600/r600_asm.c b/src/gallium/drivers/r600/r600_asm.c
index 08fe24e..a4f6eac 100644
--- a/src/gallium/drivers/r600/r600_asm.c
+++ b/src/gallium/drivers/r600/r600_asm.c
@@ -27,7 +27,12 @@
 #include "r600d.h"
 
 #include <errno.h>
+#if defined(__linux__)
 #include <byteswap.h>
+#elif defined(__FreeBSD__)
+#include <sys/endian.h>
+#define bswap_32(x)	bswap32((x))
+#endif
 #include "util/u_dump.h"
 #include "util/u_memory.h"
 #include "pipe/p_shader_tokens.h"
diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c
index 81ed3ce..856aad1 100644
--- a/src/gallium/drivers/r600/r600_shader.c
+++ b/src/gallium/drivers/r600/r600_shader.c
@@ -37,7 +37,12 @@
 #include "util/u_memory.h"
 #include <stdio.h>
 #include <errno.h>
+#if defined(__linux__)
 #include <byteswap.h>
+#elif defined(__FreeBSD__)
+#include <sys/endian.h>
+#define bswap_32(x)	bswap32((x))
+#endif
 
 /* CAYMAN notes 
 Why CAYMAN got loops for lots of instructions is explained here.
diff --git a/src/gallium/drivers/r600/r600_state_common.c b/src/gallium/drivers/r600/r600_state_common.c
index 4995c81..b36f2f9 100644
--- a/src/gallium/drivers/r600/r600_state_common.c
+++ b/src/gallium/drivers/r600/r600_state_common.c
@@ -33,7 +33,12 @@
 #include "util/u_memory.h"
 #include "util/u_upload_mgr.h"
 #include "tgsi/tgsi_parse.h"
+#if defined(__linux__)
 #include <byteswap.h>
+#elif defined(__FreeBSD__)
+#include <sys/endian.h>
+#define bswap_32(x)	bswap32((x))
+#endif
 
 #define R600_PRIM_RECTANGLE_LIST PIPE_PRIM_MAX
 
diff --git a/src/gallium/drivers/radeonsi/r600_buffer.c b/src/gallium/drivers/radeonsi/r600_buffer.c
index 3d295e8..866b9cb 100644
--- a/src/gallium/drivers/radeonsi/r600_buffer.c
+++ b/src/gallium/drivers/radeonsi/r600_buffer.c
@@ -25,7 +25,12 @@
  *      Corbin Simpson <mostawesomed...@gmail.com>
  */
 
+#if defined(__linux__)
 #include <byteswap.h>
+#elif defined(__FreeBSD__)
+#include <sys/endian.h>
+#define bswap_32(x)	bswap32((x))
+#endif
 
 #include "pipe/p_screen.h"
 #include "util/u_format.h"
diff --git a/src/mesa/main/compiler.h b/src/mesa/main/compiler.h
index 1e10f27..72a567f 100644
--- a/src/mesa/main/compiler.h
+++ b/src/mesa/main/compiler.h
@@ -172,6 +172,9 @@ extern "C" {
 #if defined(__linux__)
 #include <byteswap.h>
 #define CPU_TO_LE32( x )	bswap_32( x )
+#elif defined(__FreeBSD__)
+#include <sys/endian.h>
+#define CPU_TO_LE32( x )	bswap32( x )
 #elif defined(__APPLE__)
 #include <CoreFoundation/CFByteOrder.h>
 #define CPU_TO_LE32( x )	CFSwapInt32HostToLittle( x )
-- 
1.8.3.1

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to