git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2 5/6] bswap.h: Remove optimized x86 version of bswap32/64

From
Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
Date
Jul 15, 2025, 19:02 UTC
Message-ID
<20250715190229.ed-A7kgh@breakpoint.cc>
In-Reply-To
<e00dff7e-1920-45b6-85d2-49e6a1218882@app.fastmail.com>
On 2025-06-26 17:55:43 [+0200], Kristoffer Haugsbakk wrote:
Show 24 quoted lines
> On Thu, Jun 12, 2025, at 00:14, Sebastian Andrzej Siewior wrote:
> > On x86 the bswap32/64 macro is implemenated based on the x86 opcode wich
> 
> s/implemenated/implemented/
> 
> s/wich/which/
> 
> > performs the required shifting in just one opcode.
> > The other CPUs fallback to the generic shifting as implemented by
> > default_swab32() and default_bswap64() if needed.
> >
> > I've been looking at how good a compiler is at recognizing the default
> > shift and emitting an optimized operation:
> > - x86, arm64 msvc v19.20
> >   default_swab32() optimized
> >   default_bswap64() shifts
> >   _byteswap_uint64() otimized
> >
> > - x86, arm64 msvc v19.37
> >   default_swab32() optimized
> >   default_bswap64() optimized
> >   _byteswap_uint64() otimized
> 
> Is it supposed to say `otimized` twice?
Nope. Fixed. Thank you.
Sebastian
Previous: Kristoffer HaugsbakkNext: Sebastian Andrzej Siewior
Message 12 of 20 in “bswap.h: Rework ntohl handling”
  1. 0/6 bswap.h: Rework ntohl handlingSebastian Andrzej Siewior, Jun 11, 2025
  2. 2/6 bswap.h: Add support for __BYTE_ORDER__Sebastian Andrzej Siewior, Jun 11, 2025
  3. brian m. carlsonJun 12, 2025
  4. Collin FunkJun 12, 2025
  5. Junio C HamanoJun 12, 2025
  6. 1/6 Revert "bswap.h: add support for built-in bswap functions"Sebastian Andrzej Siewior, Jun 11, 2025
  7. Junio C HamanoJun 12, 2025
  8. 3/6 bswap.h: Define GIT_LITTLE_ENDIAN on msvc as little endianSebastian Andrzej Siewior, Jun 11, 2025
  9. Junio C HamanoJun 12, 2025
  10. 5/6 bswap.h: Remove optimized x86 version of bswap32/64Sebastian Andrzej Siewior, Jun 11, 2025
  11. Kristoffer HaugsbakkJun 26, 2025
  12. Sebastian Andrzej SiewiorJul 15, 2025
  13. 6/6 bswap.h: Provide a built-in based version of bswap32/64 if possibleSebastian Andrzej Siewior, Jun 11, 2025
  14. 5/6 bswap: Remove optimized x86 version of bswap32/64Sebastian Andrzej Siewior, Jun 11, 2025
  15. 4/6 bswap.h: Always overwrite ntohl/ ntohll macrosSebastian Andrzej Siewior, Jun 11, 2025
  16. brian m. carlsonJun 12, 2025
  17. Junio C HamanoJun 12, 2025
  18. Junio C HamanoJun 12, 2025
  19. Junio C HamanoJul 7, 2025
  20. Sebastian Andrzej SiewiorJul 9, 2025

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.