# game-music-emu: blargg\_endian.h: fix GET\_LE32 inline asm for gcc powerpc

**URL:** <https://discourse.libsdl.org/t/game-music-emu-blargg-endian-h-fix-get-le32-inline-asm-for-gcc-powerpc/46404>\
**Category:** SDL Commits\
**Created:** [October 5, 2023, 12:40pm UTC](https://discourse.libsdl.org/t/game-music-emu-blargg-endian-h-fix-get-le32-inline-asm-for-gcc-powerpc/46404 "2023-10-05T12:40:32Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![SDLPushPostBot](https://discourse.libsdl.org/user_avatar/discourse.libsdl.org/sdlpushpostbot/32/4370_2.png) [@SDLPushPostBot](https://discourse.libsdl.org/u/SDLPushPostBot)\
**Post date:** [October 5, 2023, 12:40pm UTC](https://discourse.libsdl.org/t/game-music-emu-blargg-endian-h-fix-get-le32-inline-asm-for-gcc-powerpc/46404/1 "2023-10-05T12:40:32Z")

</div>

> <https://github.com/libsdl-org/game-music-emu/commit/f8b277220069cf605e947a91604bab433f51dbeb>

```diff
From f8b277220069cf605e947a91604bab433f51dbeb Mon Sep 17 00:00:00 2001
From: Ozkan Sezer <[EMAIL REDACTED]>
Date: Thu, 5 Oct 2023 00:04:56 +0300
Subject: [PATCH] blargg_endian.h: fix GET_LE32 inline asm for gcc powerpc

---
 gme/blargg_endian.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gme/blargg_endian.h b/gme/blargg_endian.h
index 46e58e2..0f1e7a6 100644
--- a/gme/blargg_endian.h
+++ b/gme/blargg_endian.h
@@ -142,7 +142,7 @@ inline void set_be32( void* p, blargg_ulong n )
 				#define SET_LE32( addr, in ) (__stwbrx( in, addr, 0 ))
 			#elif defined ( __GNUC__ )
 				#define GET_LE16( addr ) ({unsigned short ppc_lhbrx_; __asm__ volatile( "lhbrx %0,0,%1" : "=r" (ppc_lhbrx_) : "r" (addr) : "memory" ); ppc_lhbrx_;})
- #define GET_LE32( addr ) ({unsigned short ppc_lwbrx_; __asm__ volatile( "lwbrx %0,0,%1" : "=r" (ppc_lwbrx_) : "r" (addr) : "memory" ); ppc_lwbrx_;})
+ #define GET_LE32( addr ) ({unsigned int ppc_lwbrx_; __asm__ volatile( "lwbrx %0,0,%1" : "=r" (ppc_lwbrx_) : "r" (addr) : "memory" ); ppc_lwbrx_;})
 				#define SET_LE16( addr, in ) ({ __asm__ volatile( "sthbrx %0,0,%1" : : "r" (in), "r" (addr) : "memory" );})
 				#define SET_LE32( addr, in ) ({ __asm__ volatile( "stwbrx %0,0,%1" : : "r" (in), "r" (addr) : "memory" );})
 			#endif

```
