public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc(refs/users/ibuclaw/heads/gdc)] d: Move Port::valcpy to D
@ 2021-10-14 20:47 Iain Buclaw
0 siblings, 0 replies; only message in thread
From: Iain Buclaw @ 2021-10-14 20:47 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:e5a67458da39de7db8971cc5ec017fa6199a08c1
commit e5a67458da39de7db8971cc5ec017fa6199a08c1
Author: Iain Buclaw <ibuclaw@gdcproject.org>
Date: Wed Oct 13 21:46:14 2021 +0200
d: Move Port::valcpy to D
Diff:
---
gcc/d/d-port.cc | 28 ----------------------------
gcc/d/dmd/root/port.d | 12 +++++++++++-
2 files changed, 11 insertions(+), 29 deletions(-)
diff --git a/gcc/d/d-port.cc b/gcc/d/d-port.cc
index 58b3fe138b2..d8020a12780 100644
--- a/gcc/d/d-port.cc
+++ b/gcc/d/d-port.cc
@@ -139,31 +139,3 @@ Port::readlongBE (const void *buffer)
| ((unsigned) p[2] << 8)
| (unsigned) p[3]);
}
-
-/* Write an SZ-byte sized VALUE to BUFFER, ignoring endian-ness. */
-
-void
-Port::valcpy (void *buffer, uint64_t value, size_t sz)
-{
- switch (sz)
- {
- case 1:
- *(uint8_t *) buffer = (uint8_t) value;
- break;
-
- case 2:
- *(uint16_t *) buffer = (uint16_t) value;
- break;
-
- case 4:
- *(uint32_t *) buffer = (uint32_t) value;
- break;
-
- case 8:
- *(uint64_t *) buffer = (uint64_t) value;
- break;
-
- default:
- gcc_unreachable ();
- }
-}
diff --git a/gcc/d/dmd/root/port.d b/gcc/d/dmd/root/port.d
index 7fc0d881b99..f6ab376ba4b 100644
--- a/gcc/d/dmd/root/port.d
+++ b/gcc/d/dmd/root/port.d
@@ -43,5 +43,15 @@ extern (C++) struct Port
// Big endian
static uint readwordBE(scope const void* buffer) pure;
- static void valcpy(scope void *dst, ulong val, size_t size) pure;
+ static void valcpy(scope void *dst, ulong val, size_t size) pure
+ {
+ switch (size)
+ {
+ case 1: *cast(ubyte *)dst = cast(ubyte)val; break;
+ case 2: *cast(ushort *)dst = cast(ushort)val; break;
+ case 4: *cast(uint *)dst = cast(uint)val; break;
+ case 8: *cast(ulong *)dst = cast(ulong)val; break;
+ default: assert(0);
+ }
+ }
}
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-10-14 20:47 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-14 20:47 [gcc(refs/users/ibuclaw/heads/gdc)] d: Move Port::valcpy to D Iain Buclaw
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).