mirror of
https://github.com/autc04/Retro68.git
synced 2026-04-25 20:18:50 +00:00
binutils 2.39
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
// elfcpp_swap.h -- Handle swapping for elfcpp -*- C++ -*-
|
||||
|
||||
// Copyright (C) 2006-2018 Free Software Foundation, Inc.
|
||||
// Copyright (C) 2006-2022 Free Software Foundation, Inc.
|
||||
// Written by Ian Lance Taylor <iant@google.com>.
|
||||
|
||||
// This file is part of elfcpp.
|
||||
@@ -46,15 +46,19 @@
|
||||
|
||||
#ifdef HAVE_BYTESWAP_H
|
||||
#include <byteswap.h>
|
||||
#else
|
||||
#endif // defined(HAVE_BYTESWAP_H)
|
||||
|
||||
// Provide our own versions of the byteswap functions.
|
||||
inline uint16_t
|
||||
#if !HAVE_DECL_BSWAP_16
|
||||
static inline uint16_t
|
||||
bswap_16(uint16_t v)
|
||||
{
|
||||
return ((v >> 8) & 0xff) | ((v & 0xff) << 8);
|
||||
}
|
||||
#endif // !HAVE_DECL_BSWAP16
|
||||
|
||||
inline uint32_t
|
||||
#if !HAVE_DECL_BSWAP_32
|
||||
static inline uint32_t
|
||||
bswap_32(uint32_t v)
|
||||
{
|
||||
return ( ((v & 0xff000000) >> 24)
|
||||
@@ -62,8 +66,10 @@ bswap_32(uint32_t v)
|
||||
| ((v & 0x0000ff00) << 8)
|
||||
| ((v & 0x000000ff) << 24));
|
||||
}
|
||||
#endif // !HAVE_DECL_BSWAP32
|
||||
|
||||
inline uint64_t
|
||||
#if !HAVE_DECL_BSWAP_64
|
||||
static inline uint64_t
|
||||
bswap_64(uint64_t v)
|
||||
{
|
||||
return ( ((v & 0xff00000000000000ULL) >> 56)
|
||||
@@ -75,7 +81,7 @@ bswap_64(uint64_t v)
|
||||
| ((v & 0x000000000000ff00ULL) << 40)
|
||||
| ((v & 0x00000000000000ffULL) << 56));
|
||||
}
|
||||
#endif // !defined(HAVE_BYTESWAP_H)
|
||||
#endif // !HAVE_DECL_BSWAP64
|
||||
|
||||
// gcc 4.3 and later provides __builtin_bswap32 and __builtin_bswap64.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user