All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] qemu/bswap: Let cpu_to_endian() functions handle constant expressions
@ 2020-09-17 16:31 Philippe Mathieu-Daudé
  2020-09-17 16:31 ` [PATCH 1/4] qemu/bswap: Move const_le() definitions around Philippe Mathieu-Daudé
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-09-17 16:31 UTC (permalink / raw)
  To: qemu-devel; +Cc: Peter Maydell, Richard Henderson, Philippe Mathieu-Daudé

Stefan Hajnoczi suggested we can use __builtin_constant_p()
in the cpu_to_ENDIAN()/ENDIAN_to_cpu() functions to check if
expression is constant, and if so use the const_ENDIAN() macros.

This series modifies cpu_to_ENDIAN() to use const_ENDIAN() when
possible.

Philippe Mathieu-Daudé (4):
  qemu/bswap: Move const_le() definitions around
  qemu/bswap: add const_be16() and const_be32()
  qemu/bswap: Add const_le64() and const_be64()
  qemu/bswap: Let cpu_to_endian() functions handle constant expressions

 include/qemu/bswap.h | 75 +++++++++++++++++++++++++++++++-------------
 1 file changed, 54 insertions(+), 21 deletions(-)

-- 
2.26.2



^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2020-09-17 21:33 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-17 16:31 [PATCH 0/4] qemu/bswap: Let cpu_to_endian() functions handle constant expressions Philippe Mathieu-Daudé
2020-09-17 16:31 ` [PATCH 1/4] qemu/bswap: Move const_le() definitions around Philippe Mathieu-Daudé
2020-09-17 16:31 ` [PATCH 2/4] qemu/bswap: add const_be16() and const_be32() Philippe Mathieu-Daudé
2020-09-17 16:31 ` [PATCH 3/4] qemu/bswap: Add const_le64() and const_be64() Philippe Mathieu-Daudé
2020-09-17 21:19   ` Richard Henderson
2020-09-17 16:31 ` [PATCH 4/4] qemu/bswap: Let cpu_to_endian() functions handle constant expressions Philippe Mathieu-Daudé
2020-09-17 21:29   ` Richard Henderson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.