This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/52624] Missing __builtin_bswap16
- From: "ebotcazou at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 22 Mar 2012 08:05:52 +0000
- Subject: [Bug target/52624] Missing __builtin_bswap16
- Auto-submitted: auto-generated
- References: <bug-52624-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52624
Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
AssignedTo|unassigned at gcc dot |ebotcazou at gcc dot
|gnu.org |gnu.org
--- Comment #6 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2012-03-22 08:05:52 UTC ---
> Regarding new patterns - we need at least named expander, and the existing ones
> are strict_low_part types. They model the fact that higpart of the register is
> preserved, so ideal to implement bswap32.
I think that the builtin should be expanded into a rotate (left or right) if
they are available. On x86 this works out of the box since the rotates are
there.
> Can you please take the middle-end part of the generic implementation?
Yes, will do. In fact, I already have a sketch of an implementation because of
an internal project I'm working on.